mirror of
https://github.com/elyby/accounts-frontend.git
synced 2024-11-23 08:32:59 +05:30
Create app namespace for all absolute requires of app modules. Move all packages under packages yarn workspace
This commit is contained in:
parent
d8d2df0702
commit
f9d3bb4e20
@ -1,4 +1,3 @@
|
||||
flow-typed
|
||||
dist
|
||||
dll
|
||||
node_modules
|
||||
|
@ -24,7 +24,7 @@ module.exports = {
|
||||
|
||||
overrides: [
|
||||
{
|
||||
files: ['webpack-utils/**', 'scripts/**', 'jest/**'],
|
||||
files: ['packages/webpack-utils/**', 'packages/scripts/**', 'jest/**'],
|
||||
env: {
|
||||
node: true,
|
||||
},
|
||||
|
@ -2,7 +2,7 @@
|
||||
/* eslint-disable @typescript-eslint/no-var-requires */
|
||||
/* eslint-env node */
|
||||
const path = require('path');
|
||||
const { transform } = require('../../webpack-utils/intl-loader');
|
||||
const { transform } = require('webpack-utils/intl-loader');
|
||||
|
||||
module.exports = {
|
||||
/**
|
||||
|
@ -1,4 +1,4 @@
|
||||
import 'polyfills';
|
||||
import 'app/polyfills';
|
||||
import { configure } from 'enzyme';
|
||||
import Adapter from 'enzyme-adapter-react-16';
|
||||
|
||||
|
59
package.json
59
package.json
@ -1,7 +1,6 @@
|
||||
{
|
||||
"name": "@elyby/accounts-frontend",
|
||||
"description": "",
|
||||
"main": "src/index.js",
|
||||
"author": "SleepWalker <mybox@udf.su>",
|
||||
"private": true,
|
||||
"maintainers": [
|
||||
@ -20,31 +19,30 @@
|
||||
"node": ">=10.0.0"
|
||||
},
|
||||
"workspaces": [
|
||||
"webpack-utils",
|
||||
"scripts",
|
||||
"packages/*",
|
||||
"tests-e2e"
|
||||
],
|
||||
"scripts": {
|
||||
"start": "yarn run clean && yarn run build:dll && NODE_PATH=./src webpack-dev-server --colors",
|
||||
"start": "yarn run clean && yarn run build:dll && webpack-dev-server --colors",
|
||||
"clean": "rm -rf ./dist && mkdir ./dist",
|
||||
"e2e": "yarn --cwd ./tests-e2e test",
|
||||
"test": "NODE_PATH=./src jest",
|
||||
"test": "jest",
|
||||
"test:watch": "yarn test --watch",
|
||||
"lint": "eslint --fix --quiet .",
|
||||
"lint:check": "eslint --quiet .",
|
||||
"prettier": "prettier --write \"{src/**/*,scripts/**/*,tests-e2e/**/*,webpack-utils/**/*,jest/**/*,config/**/*,*}.{js,ts,tsx,json,md,scss,css}\"",
|
||||
"prettier:check": "prettier --check \"{src/**/*,scripts/**/*,tests-e2e/**/*,webpack-utils/**/*,jest/**/*,config/**/*,*}.{js,ts,tsx,json,md,scss,css}\"",
|
||||
"prettier": "prettier --write \"{packages/**/*,tests-e2e/**/*,jest/**/*,config/**/*,*}.{js,ts,tsx,json,md,scss,css}\"",
|
||||
"prettier:check": "prettier --check \"{packages/**/*,tests-e2e/**/*,jest/**/*,config/**/*,*}.{js,ts,tsx,json,md,scss,css}\"",
|
||||
"ts:check": "tsc",
|
||||
"ci:check": "yarn lint:check && yarn ts:check && yarn test",
|
||||
"analyze": "yarn run clean && yarn run build:webpack --analyze",
|
||||
"i18n:collect": "babel-node ./scripts/i18n-collect.js",
|
||||
"i18n:push": "babel-node ./scripts/i18n-crowdin.js push",
|
||||
"i18n:pull": "babel-node ./scripts/i18n-crowdin.js pull",
|
||||
"i18n:collect": "babel-node ./packages/scripts/i18n-collect.js",
|
||||
"i18n:push": "babel-node ./packages/scripts/i18n-crowdin.js push",
|
||||
"i18n:pull": "babel-node ./packages/scripts/i18n-crowdin.js pull",
|
||||
"build": "yarn run clean && yarn run build:webpack",
|
||||
"build:install": "yarn install",
|
||||
"build:webpack": "NODE_PATH=./src webpack --colors -p --bail",
|
||||
"build:webpack": "webpack --colors -p --bail",
|
||||
"build:quiet": "yarn run clean && yarn run build:webpack --quiet",
|
||||
"build:dll": "node ./scripts/build-dll.js",
|
||||
"build:dll": "node ./packages/scripts/build-dll.js",
|
||||
"build:serve": "http-server --proxy https://dev.account.ely.by ./dist"
|
||||
},
|
||||
"husky": {
|
||||
@ -65,7 +63,7 @@
|
||||
},
|
||||
"jest": {
|
||||
"roots": [
|
||||
"<rootDir>/src/"
|
||||
"<rootDir>/packages/app"
|
||||
],
|
||||
"setupFilesAfterEnv": [
|
||||
"<rootDir>/jest/setupAfterEnv.js"
|
||||
@ -86,38 +84,7 @@
|
||||
"^.+\\.[tj]sx?$": "babel-jest"
|
||||
}
|
||||
},
|
||||
"dependencies": {
|
||||
"@formatjs/intl-pluralrules": "^1.3.7",
|
||||
"@formatjs/intl-relativetimeformat": "^4.4.6",
|
||||
"@hot-loader/react-dom": "^16.11.0",
|
||||
"@types/react-redux": "^7.1.5",
|
||||
"@types/react-router-dom": "^5.1.3",
|
||||
"classnames": "^2.2.6",
|
||||
"copy-to-clipboard": "^3.0.8",
|
||||
"debounce": "^1.0.0",
|
||||
"flag-icon-css": "^3.4.5",
|
||||
"intl": "^1.2.5",
|
||||
"promise.prototype.finally": "3.1.1",
|
||||
"prop-types": "^15.6.2",
|
||||
"raf": "^3.4.1",
|
||||
"raven-js": "^3.27.0",
|
||||
"react": "^16.12.0",
|
||||
"react-dom": "^16.12.0",
|
||||
"react-helmet": "^5.0.0",
|
||||
"react-hot-loader": "^4.12.18",
|
||||
"react-intl": "^3.7.0",
|
||||
"react-motion": "^0.5.0",
|
||||
"react-redux": "^7.1.3",
|
||||
"react-router-dom": "^5.1.2",
|
||||
"react-textarea-autosize": "^7.1.2",
|
||||
"react-transition-group": "^4.3.0",
|
||||
"redux": "^4.0.4",
|
||||
"redux-localstorage": "^0.4.1",
|
||||
"redux-thunk": "^2.0.0",
|
||||
"url-search-params-polyfill": "^7.0.0",
|
||||
"webfontloader": "^1.6.26",
|
||||
"whatwg-fetch": "^3.0.0"
|
||||
},
|
||||
"dependencies": {},
|
||||
"devDependencies": {
|
||||
"@babel/cli": "^7.7.4",
|
||||
"@babel/core": "^7.7.4",
|
||||
@ -155,8 +122,6 @@
|
||||
"cssnano": "^4.1.10",
|
||||
"dotenv": "^8.2.0",
|
||||
"eager-imports-webpack-plugin": "^1.0.0",
|
||||
"enzyme": "^3.8.0",
|
||||
"enzyme-adapter-react-16": "^1.15.1",
|
||||
"eslint": "^6.7.1",
|
||||
"eslint-config-prettier": "^6.7.0",
|
||||
"eslint-plugin-jsdoc": "^18.1.5",
|
||||
|
@ -2,11 +2,11 @@ import React from 'react';
|
||||
import { hot } from 'react-hot-loader/root';
|
||||
import { Provider as ReduxProvider } from 'react-redux';
|
||||
import { Router, Route, Switch } from 'react-router-dom';
|
||||
import { IntlProvider } from 'components/i18n';
|
||||
import { IntlProvider } from 'app/components/i18n';
|
||||
import { Store } from 'redux';
|
||||
import AuthFlowRoute from 'containers/AuthFlowRoute';
|
||||
import RootPage from 'pages/root/RootPage';
|
||||
import SuccessOauthPage from 'pages/auth/SuccessOauthPage';
|
||||
import AuthFlowRoute from 'app/containers/AuthFlowRoute';
|
||||
import RootPage from 'app/pages/root/RootPage';
|
||||
import SuccessOauthPage from 'app/pages/auth/SuccessOauthPage';
|
||||
|
||||
const App = ({
|
||||
store,
|
@ -1,5 +1,5 @@
|
||||
import React from 'react';
|
||||
import { omit, debounce } from 'functions';
|
||||
import { omit, debounce } from 'app/functions';
|
||||
|
||||
/**
|
||||
* MeasureHeight is a component that allows you to measure the height of elements wrapped.
|
@ -3,12 +3,12 @@ import { connect } from 'react-redux';
|
||||
import classNames from 'classnames';
|
||||
import { Link } from 'react-router-dom';
|
||||
import { FormattedMessage as Message } from 'react-intl';
|
||||
import loader from 'services/loader';
|
||||
import { SKIN_DARK, COLOR_WHITE, Skin } from 'components/ui';
|
||||
import { Button } from 'components/ui/form';
|
||||
import { authenticate, revoke } from 'components/accounts/actions';
|
||||
import { getActiveAccount, Account } from 'components/accounts/reducer';
|
||||
import { RootState } from 'reducers';
|
||||
import loader from 'app/services/loader';
|
||||
import { SKIN_DARK, COLOR_WHITE, Skin } from 'app/components/ui';
|
||||
import { Button } from 'app/components/ui/form';
|
||||
import { authenticate, revoke } from 'app/components/accounts/actions';
|
||||
import { getActiveAccount, Account } from 'app/components/accounts/reducer';
|
||||
import { RootState } from 'app/reducers';
|
||||
|
||||
import styles from './accountSwitcher.scss';
|
||||
import messages from './AccountSwitcher.intl.json';
|
@ -1,8 +1,8 @@
|
||||
@import '~components/ui/colors.scss';
|
||||
@import '~components/ui/fonts.scss';
|
||||
@import '~app/components/ui/colors.scss';
|
||||
@import '~app/components/ui/fonts.scss';
|
||||
|
||||
// TODO: эту константу можно заимпортить из panel.scss, но это приводит к странным ошибкам
|
||||
//@import '~components/ui/panel.scss';
|
||||
//@import '~app/components/ui/panel.scss';
|
||||
$bodyLeftRightPadding: 20px;
|
||||
|
||||
$lightBorderColor: #eee;
|
||||
@ -150,7 +150,7 @@ $lightBorderColor: #eee;
|
||||
}
|
||||
|
||||
.accountIcon {
|
||||
composes: minecraft-character from '~components/ui/icons.scss';
|
||||
composes: minecraft-character from '~app/components/ui/icons.scss';
|
||||
|
||||
float: left;
|
||||
|
||||
@ -184,7 +184,7 @@ $lightBorderColor: #eee;
|
||||
}
|
||||
|
||||
.addIcon {
|
||||
composes: plus from '~components/ui/icons.scss';
|
||||
composes: plus from '~app/components/ui/icons.scss';
|
||||
|
||||
color: $green;
|
||||
position: relative;
|
||||
@ -193,7 +193,7 @@ $lightBorderColor: #eee;
|
||||
}
|
||||
|
||||
.nextIcon {
|
||||
composes: arrowRight from '~components/ui/icons.scss';
|
||||
composes: arrowRight from '~app/components/ui/icons.scss';
|
||||
|
||||
position: relative;
|
||||
float: right;
|
||||
@ -212,7 +212,7 @@ $lightBorderColor: #eee;
|
||||
}
|
||||
|
||||
.logoutIcon {
|
||||
composes: exit from '~components/ui/icons.scss';
|
||||
composes: exit from '~app/components/ui/icons.scss';
|
||||
|
||||
color: #cdcdcd;
|
||||
float: right;
|
@ -1,15 +1,15 @@
|
||||
import expect from 'test/unexpected';
|
||||
import expect from 'app/test/unexpected';
|
||||
import sinon from 'sinon';
|
||||
import { browserHistory } from 'services/history';
|
||||
import { InternalServerError } from 'services/request';
|
||||
import { sessionStorage } from 'services/localStorage';
|
||||
import * as authentication from 'services/api/authentication';
|
||||
import { browserHistory } from 'app/services/history';
|
||||
import { InternalServerError } from 'app/services/request';
|
||||
import { sessionStorage } from 'app/services/localStorage';
|
||||
import * as authentication from 'app/services/api/authentication';
|
||||
import {
|
||||
authenticate,
|
||||
revoke,
|
||||
logoutAll,
|
||||
logoutStrangers,
|
||||
} from 'components/accounts/actions';
|
||||
} from 'app/components/accounts/actions';
|
||||
import {
|
||||
add,
|
||||
ADD,
|
||||
@ -17,11 +17,11 @@ import {
|
||||
ACTIVATE,
|
||||
remove,
|
||||
reset,
|
||||
} from 'components/accounts/actions/pure-actions';
|
||||
import { SET_LOCALE } from 'components/i18n/actions';
|
||||
import { updateUser, setUser } from 'components/user/actions';
|
||||
import { setLogin, setAccountSwitcher } from 'components/auth/actions';
|
||||
import { Dispatch, RootState } from 'reducers';
|
||||
} from 'app/components/accounts/actions/pure-actions';
|
||||
import { SET_LOCALE } from 'app/components/i18n/actions';
|
||||
import { updateUser, setUser } from 'app/components/user/actions';
|
||||
import { setLogin, setAccountSwitcher } from 'app/components/auth/actions';
|
||||
import { Dispatch, RootState } from 'app/reducers';
|
||||
|
||||
import { Account } from './reducer';
|
||||
|
@ -1,17 +1,17 @@
|
||||
import { getJwtPayloads } from 'functions';
|
||||
import { sessionStorage } from 'services/localStorage';
|
||||
import { getJwtPayloads } from 'app/functions';
|
||||
import { sessionStorage } from 'app/services/localStorage';
|
||||
import {
|
||||
validateToken,
|
||||
requestToken,
|
||||
logout,
|
||||
} from 'services/api/authentication';
|
||||
import { relogin as navigateToLogin } from 'components/auth/actions';
|
||||
import { updateUser, setGuest } from 'components/user/actions';
|
||||
import { setLocale } from 'components/i18n/actions';
|
||||
import { setAccountSwitcher } from 'components/auth/actions';
|
||||
import { getActiveAccount } from 'components/accounts/reducer';
|
||||
import logger from 'services/logger';
|
||||
import { ThunkAction } from 'reducers';
|
||||
} from 'app/services/api/authentication';
|
||||
import { relogin as navigateToLogin } from 'app/components/auth/actions';
|
||||
import { updateUser, setGuest } from 'app/components/user/actions';
|
||||
import { setLocale } from 'app/components/i18n/actions';
|
||||
import { setAccountSwitcher } from 'app/components/auth/actions';
|
||||
import { getActiveAccount } from 'app/components/accounts/reducer';
|
||||
import logger from 'app/services/logger';
|
||||
import { ThunkAction } from 'app/reducers';
|
||||
|
||||
import { Account } from './reducer';
|
||||
import {
|
@ -1,4 +1,4 @@
|
||||
import expect from 'test/unexpected';
|
||||
import expect from 'app/test/unexpected';
|
||||
|
||||
import { updateToken } from './actions';
|
||||
import {
|
@ -3,9 +3,9 @@
|
||||
*/
|
||||
import PropTypes from 'prop-types';
|
||||
import React from 'react';
|
||||
import AuthError from 'components/auth/authError/AuthError';
|
||||
import { userShape } from 'components/user/User';
|
||||
import { FormModel } from 'components/ui/form';
|
||||
import AuthError from 'app/components/auth/authError/AuthError';
|
||||
import { userShape } from 'app/components/user/User';
|
||||
import { FormModel } from 'app/components/ui/form';
|
||||
import { RouteComponentProps } from 'react-router-dom';
|
||||
|
||||
export default class BaseAuthBody extends React.Component<
|
@ -1,7 +1,7 @@
|
||||
import React from 'react';
|
||||
import { AccountsState } from 'components/accounts';
|
||||
import { AuthState } from 'components/auth';
|
||||
import { User } from 'components/user';
|
||||
import { AccountsState } from 'app/components/accounts';
|
||||
import { AuthState } from 'app/components/auth';
|
||||
import { User } from 'app/components/user';
|
||||
import PropTypes from 'prop-types';
|
||||
import { connect } from 'react-redux';
|
||||
import { TransitionMotion, spring } from 'react-motion';
|
||||
@ -10,18 +10,18 @@ import {
|
||||
PanelBody,
|
||||
PanelFooter,
|
||||
PanelHeader,
|
||||
} from 'components/ui/Panel';
|
||||
import { getLogin } from 'components/auth/reducer';
|
||||
import { Form } from 'components/ui/form';
|
||||
import MeasureHeight from 'components/MeasureHeight';
|
||||
import defaultHelpLinksStyles from 'components/auth/helpLinks.scss';
|
||||
import panelStyles from 'components/ui/panel.scss';
|
||||
import icons from 'components/ui/icons.scss';
|
||||
import authFlow from 'services/authFlow';
|
||||
import { userShape } from 'components/user/User';
|
||||
} from 'app/components/ui/Panel';
|
||||
import { getLogin } from 'app/components/auth/reducer';
|
||||
import { Form } from 'app/components/ui/form';
|
||||
import MeasureHeight from 'app/components/MeasureHeight';
|
||||
import defaultHelpLinksStyles from 'app/components/auth/helpLinks.scss';
|
||||
import panelStyles from 'app/components/ui/panel.scss';
|
||||
import icons from 'app/components/ui/icons.scss';
|
||||
import authFlow from 'app/services/authFlow';
|
||||
import { userShape } from 'app/components/user/User';
|
||||
|
||||
import * as actions from './actions';
|
||||
import { RootState } from 'reducers';
|
||||
import { RootState } from 'app/reducers';
|
||||
|
||||
const opacitySpringConfig = { stiffness: 300, damping: 20 };
|
||||
const transformSpringConfig = { stiffness: 500, damping: 50, precision: 0.5 };
|
@ -1,8 +1,8 @@
|
||||
import PropTypes from 'prop-types';
|
||||
import React from 'react';
|
||||
import { FormattedMessage as Message, MessageDescriptor } from 'react-intl';
|
||||
import { User } from 'components/user';
|
||||
import { userShape } from 'components/user/User';
|
||||
import { User } from 'app/components/user';
|
||||
import { userShape } from 'app/components/user/User';
|
||||
|
||||
interface Props {
|
||||
isAvailable?: (context: Context) => boolean;
|
@ -3,9 +3,9 @@ import React from 'react';
|
||||
import { FormattedMessage as Message } from 'react-intl';
|
||||
import { Link } from 'react-router-dom';
|
||||
|
||||
import icons from 'components/ui/icons.scss';
|
||||
import BaseAuthBody from 'components/auth/BaseAuthBody';
|
||||
import appInfo from 'components/auth/appInfo/AppInfo.intl.json';
|
||||
import icons from 'app/components/ui/icons.scss';
|
||||
import BaseAuthBody from 'app/components/auth/BaseAuthBody';
|
||||
import appInfo from 'app/components/auth/appInfo/AppInfo.intl.json';
|
||||
|
||||
import styles from './acceptRules.scss';
|
||||
import messages from './AcceptRules.intl.json';
|
@ -1,4 +1,4 @@
|
||||
@import '~components/ui/colors.scss';
|
||||
@import '~app/components/ui/colors.scss';
|
||||
|
||||
.descriptionText {
|
||||
font-size: 15px;
|
@ -1,7 +1,7 @@
|
||||
import sinon from 'sinon';
|
||||
import expect from 'test/unexpected';
|
||||
import expect from 'app/test/unexpected';
|
||||
|
||||
import request from 'services/request';
|
||||
import request from 'app/services/request';
|
||||
|
||||
import {
|
||||
setLoadingState,
|
||||
@ -14,7 +14,7 @@ import {
|
||||
requirePermissionsAccept,
|
||||
login,
|
||||
setLogin,
|
||||
} from 'components/auth/actions';
|
||||
} from 'app/components/auth/actions';
|
||||
|
||||
const oauthData = {
|
||||
clientId: '',
|
@ -1,26 +1,26 @@
|
||||
import { browserHistory } from 'services/history';
|
||||
import logger from 'services/logger';
|
||||
import localStorage from 'services/localStorage';
|
||||
import loader from 'services/loader';
|
||||
import history from 'services/history';
|
||||
import { browserHistory } from 'app/services/history';
|
||||
import logger from 'app/services/logger';
|
||||
import localStorage from 'app/services/localStorage';
|
||||
import loader from 'app/services/loader';
|
||||
import history from 'app/services/history';
|
||||
import {
|
||||
updateUser,
|
||||
acceptRules as userAcceptRules,
|
||||
} from 'components/user/actions';
|
||||
import { authenticate, logoutAll } from 'components/accounts/actions';
|
||||
import { getActiveAccount } from 'components/accounts/reducer';
|
||||
} from 'app/components/user/actions';
|
||||
import { authenticate, logoutAll } from 'app/components/accounts/actions';
|
||||
import { getActiveAccount } from 'app/components/accounts/reducer';
|
||||
import {
|
||||
login as loginEndpoint,
|
||||
forgotPassword as forgotPasswordEndpoint,
|
||||
recoverPassword as recoverPasswordEndpoint,
|
||||
OAuthResponse,
|
||||
} from 'services/api/authentication';
|
||||
import oauth, { OauthData, Client, Scope } from 'services/api/oauth';
|
||||
import signup from 'services/api/signup';
|
||||
import dispatchBsod from 'components/ui/bsod/dispatchBsod';
|
||||
import { create as createPopup } from 'components/ui/popup/actions';
|
||||
import ContactForm from 'components/contact/ContactForm';
|
||||
import { ThunkAction, Dispatch } from 'reducers';
|
||||
} from 'app/services/api/authentication';
|
||||
import oauth, { OauthData, Client, Scope } from 'app/services/api/oauth';
|
||||
import signup from 'app/services/api/signup';
|
||||
import dispatchBsod from 'app/components/ui/bsod/dispatchBsod';
|
||||
import { create as createPopup } from 'app/components/ui/popup/actions';
|
||||
import ContactForm from 'app/components/contact/ContactForm';
|
||||
import { ThunkAction, Dispatch } from 'app/reducers';
|
||||
|
||||
import { getCredentials } from './reducer';
|
||||
|
||||
@ -31,14 +31,14 @@ type ValidationError =
|
||||
payload: { [key: string]: any };
|
||||
};
|
||||
|
||||
export { updateUser } from 'components/user/actions';
|
||||
export { updateUser } from 'app/components/user/actions';
|
||||
export {
|
||||
authenticate,
|
||||
logoutAll as logout,
|
||||
remove as removeAccount,
|
||||
activate as activateAccount,
|
||||
} from 'components/accounts/actions';
|
||||
import { Account } from 'components/accounts/reducer';
|
||||
} from 'app/components/accounts/actions';
|
||||
import { Account } from 'app/components/accounts/reducer';
|
||||
|
||||
/**
|
||||
* Reoutes user to the previous page if it is possible
|
@ -3,9 +3,9 @@ import React from 'react';
|
||||
|
||||
import { FormattedMessage as Message } from 'react-intl';
|
||||
|
||||
import { Input } from 'components/ui/form';
|
||||
import { Input } from 'app/components/ui/form';
|
||||
|
||||
import BaseAuthBody from 'components/auth/BaseAuthBody';
|
||||
import BaseAuthBody from 'app/components/auth/BaseAuthBody';
|
||||
import styles from './activation.scss';
|
||||
import messages from './Activation.intl.json';
|
||||
|
@ -1,11 +1,11 @@
|
||||
@import '~components/ui/colors.scss';
|
||||
@import '~components/ui/fonts.scss';
|
||||
@import '~app/components/ui/colors.scss';
|
||||
@import '~app/components/ui/fonts.scss';
|
||||
|
||||
.description {
|
||||
}
|
||||
|
||||
.descriptionImage {
|
||||
composes: envelope from '~components/ui/icons.scss';
|
||||
composes: envelope from '~app/components/ui/icons.scss';
|
||||
|
||||
font-size: 100px;
|
||||
color: $blue;
|
@ -1,7 +1,7 @@
|
||||
import React from 'react';
|
||||
import { FormattedMessage as Message } from 'react-intl';
|
||||
import { Button } from 'components/ui/form';
|
||||
import { FooterMenu } from 'components/footerMenu';
|
||||
import { Button } from 'app/components/ui/form';
|
||||
import { FooterMenu } from 'app/components/footerMenu';
|
||||
|
||||
import styles from './appInfo.scss';
|
||||
import messages from './AppInfo.intl.json';
|
@ -1,5 +1,5 @@
|
||||
@import '~components/ui/colors.scss';
|
||||
@import '~components/ui/fonts.scss';
|
||||
@import '~app/components/ui/colors.scss';
|
||||
@import '~app/components/ui/fonts.scss';
|
||||
|
||||
.appInfo {
|
||||
max-width: 270px;
|
@ -1,8 +1,8 @@
|
||||
import PropTypes from 'prop-types';
|
||||
import React from 'react';
|
||||
|
||||
import errorsDict from 'services/errorsDict';
|
||||
import { PanelBodyHeader } from 'components/ui/Panel';
|
||||
import errorsDict from 'app/services/errorsDict';
|
||||
import { PanelBodyHeader } from 'app/components/ui/Panel';
|
||||
|
||||
let autoHideTimer;
|
||||
function resetTimer() {
|
@ -2,8 +2,8 @@ import React from 'react';
|
||||
|
||||
import { FormattedMessage as Message } from 'react-intl';
|
||||
|
||||
import BaseAuthBody from 'components/auth/BaseAuthBody';
|
||||
import { AccountSwitcher } from 'components/accounts';
|
||||
import BaseAuthBody from 'app/components/auth/BaseAuthBody';
|
||||
import { AccountSwitcher } from 'app/components/accounts';
|
||||
|
||||
import styles from './chooseAccount.scss';
|
||||
import messages from './ChooseAccount.intl.json';
|
@ -1,5 +1,5 @@
|
||||
@import '~components/ui/panel.scss';
|
||||
@import '~components/ui/fonts.scss';
|
||||
@import '~app/components/ui/panel.scss';
|
||||
@import '~app/components/ui/fonts.scss';
|
||||
|
||||
.accountSwitcherContainer {
|
||||
margin-left: -$bodyLeftRightPadding;
|
@ -1,11 +1,11 @@
|
||||
import React from 'react';
|
||||
import { Button } from 'components/ui/form';
|
||||
import { Button } from 'app/components/ui/form';
|
||||
import RejectionLink, {
|
||||
RejectionLinkProps,
|
||||
} from 'components/auth/RejectionLink';
|
||||
import AuthTitle from 'components/auth/AuthTitle';
|
||||
} from 'app/components/auth/RejectionLink';
|
||||
import AuthTitle from 'app/components/auth/AuthTitle';
|
||||
import { MessageDescriptor } from 'react-intl';
|
||||
import { Color } from 'components/ui';
|
||||
import { Color } from 'app/components/ui';
|
||||
|
||||
/**
|
||||
* @param {object} options
|
@ -2,9 +2,9 @@ import React from 'react';
|
||||
import { connect } from 'react-redux';
|
||||
import { FormattedMessage as Message } from 'react-intl';
|
||||
import Helmet from 'react-helmet';
|
||||
import { Button } from 'components/ui/form';
|
||||
import copy from 'services/copy';
|
||||
import { RootState } from 'reducers';
|
||||
import { Button } from 'app/components/ui/form';
|
||||
import copy from 'app/services/copy';
|
||||
import { RootState } from 'app/reducers';
|
||||
|
||||
import messages from './Finish.intl.json';
|
||||
import styles from './finish.scss';
|
@ -1,5 +1,5 @@
|
||||
@import '~components/ui/colors.scss';
|
||||
@import '~components/ui/fonts.scss';
|
||||
@import '~app/components/ui/colors.scss';
|
||||
@import '~app/components/ui/fonts.scss';
|
||||
|
||||
.finishPage {
|
||||
font-family: $font-family-title;
|
||||
@ -20,12 +20,12 @@
|
||||
}
|
||||
|
||||
.successBackground {
|
||||
composes: checkmark from '~components/ui/icons.scss';
|
||||
composes: checkmark from '~app/components/ui/icons.scss';
|
||||
@extend .iconBackground;
|
||||
}
|
||||
|
||||
.failBackground {
|
||||
composes: close from '~components/ui/icons.scss';
|
||||
composes: close from '~app/components/ui/icons.scss';
|
||||
@extend .iconBackground;
|
||||
}
|
||||
|
@ -2,10 +2,10 @@ import React from 'react';
|
||||
|
||||
import { FormattedMessage as Message } from 'react-intl';
|
||||
|
||||
import { Input, Captcha } from 'components/ui/form';
|
||||
import { getLogin } from 'components/auth/reducer';
|
||||
import { PanelIcon } from 'components/ui/Panel';
|
||||
import BaseAuthBody from 'components/auth/BaseAuthBody';
|
||||
import { Input, Captcha } from 'app/components/ui/form';
|
||||
import { getLogin } from 'app/components/auth/reducer';
|
||||
import { PanelIcon } from 'app/components/ui/Panel';
|
||||
import BaseAuthBody from 'app/components/auth/BaseAuthBody';
|
||||
|
||||
import styles from './forgotPassword.scss';
|
||||
import messages from './ForgotPassword.intl.json';
|
@ -1,4 +1,4 @@
|
||||
@import '~components/ui/colors.scss';
|
||||
@import '~app/components/ui/colors.scss';
|
||||
|
||||
.descriptionText {
|
||||
font-size: 15px;
|
||||
@ -8,11 +8,11 @@
|
||||
}
|
||||
|
||||
.login {
|
||||
composes: email from '~components/auth/password/password.scss';
|
||||
composes: email from '~app/components/auth/password/password.scss';
|
||||
}
|
||||
|
||||
.editLogin {
|
||||
composes: pencil from '~components/ui/icons.scss';
|
||||
composes: pencil from '~app/components/ui/icons.scss';
|
||||
|
||||
position: relative;
|
||||
bottom: 1px;
|
@ -1,6 +1,6 @@
|
||||
import React from 'react';
|
||||
import { Input } from 'components/ui/form';
|
||||
import BaseAuthBody from 'components/auth/BaseAuthBody';
|
||||
import { Input } from 'app/components/ui/form';
|
||||
import BaseAuthBody from 'app/components/auth/BaseAuthBody';
|
||||
|
||||
import messages from './Login.intl.json';
|
||||
|
@ -1,8 +1,8 @@
|
||||
import React from 'react';
|
||||
import { FormattedMessage as Message } from 'react-intl';
|
||||
import { PanelIcon } from 'components/ui/Panel';
|
||||
import { Input } from 'components/ui/form';
|
||||
import BaseAuthBody from 'components/auth/BaseAuthBody';
|
||||
import { PanelIcon } from 'app/components/ui/Panel';
|
||||
import { Input } from 'app/components/ui/form';
|
||||
import BaseAuthBody from 'app/components/auth/BaseAuthBody';
|
||||
|
||||
import styles from './mfa.scss';
|
||||
import messages from './Mfa.intl.json';
|
@ -1,10 +1,9 @@
|
||||
import React from 'react';
|
||||
import icons from 'app/components/ui/icons.scss';
|
||||
import { Input, Checkbox } from 'app/components/ui/form';
|
||||
import BaseAuthBody from 'app/components/auth/BaseAuthBody';
|
||||
import authStyles from 'app/components/auth/auth.scss';
|
||||
|
||||
import icons from 'components/ui/icons.scss';
|
||||
import { Input, Checkbox } from 'components/ui/form';
|
||||
import BaseAuthBody from 'components/auth/BaseAuthBody';
|
||||
|
||||
import authStyles from 'components/auth/auth.scss';
|
||||
import styles from './password.scss';
|
||||
import messages from './Password.intl.json';
|
||||
|
@ -1,4 +1,4 @@
|
||||
@import '~components/ui/fonts.scss';
|
||||
@import '~app/components/ui/fonts.scss';
|
||||
|
||||
.avatar {
|
||||
width: 90px;
|
@ -1,10 +1,8 @@
|
||||
import React from 'react';
|
||||
|
||||
import { FormattedMessage as Message } from 'react-intl';
|
||||
|
||||
import icons from 'components/ui/icons.scss';
|
||||
import { PanelBodyHeader } from 'components/ui/Panel';
|
||||
import BaseAuthBody from 'components/auth/BaseAuthBody';
|
||||
import icons from 'app/components/ui/icons.scss';
|
||||
import { PanelBodyHeader } from 'app/components/ui/Panel';
|
||||
import BaseAuthBody from 'app/components/auth/BaseAuthBody';
|
||||
|
||||
import styles from './permissions.scss';
|
||||
import messages from './Permissions.intl.json';
|
@ -1,5 +1,5 @@
|
||||
@import '~components/ui/colors.scss';
|
||||
@import '~components/ui/fonts.scss';
|
||||
@import '~app/components/ui/colors.scss';
|
||||
@import '~app/components/ui/fonts.scss';
|
||||
|
||||
.authInfo {
|
||||
// Отступы сверху и снизу разные т.к. мы ужимаем высоту линии строки с логином на 2 пикселя и из-за этого теряем отступ снизу
|
@ -3,8 +3,8 @@ import React from 'react';
|
||||
|
||||
import { FormattedMessage as Message } from 'react-intl';
|
||||
|
||||
import { Input } from 'components/ui/form';
|
||||
import BaseAuthBody from 'components/auth/BaseAuthBody';
|
||||
import { Input } from 'app/components/ui/form';
|
||||
import BaseAuthBody from 'app/components/auth/BaseAuthBody';
|
||||
|
||||
import styles from './recoverPassword.scss';
|
||||
import messages from './RecoverPassword.intl.json';
|
@ -1,4 +1,4 @@
|
||||
@import '~components/ui/colors.scss';
|
||||
@import '~app/components/ui/colors.scss';
|
||||
|
||||
.descriptionText {
|
||||
font-size: 15px;
|
@ -1,4 +1,4 @@
|
||||
import expect from 'test/unexpected';
|
||||
import expect from 'app/test/unexpected';
|
||||
import auth from './reducer';
|
||||
import {
|
||||
setLogin,
|
@ -1,13 +1,11 @@
|
||||
import React from 'react';
|
||||
|
||||
import { FormattedMessage as Message } from 'react-intl';
|
||||
import { Link } from 'react-router-dom';
|
||||
import { Input, Checkbox, Captcha } from 'app/components/ui/form';
|
||||
import BaseAuthBody from 'app/components/auth/BaseAuthBody';
|
||||
|
||||
import { Input, Checkbox, Captcha } from 'components/ui/form';
|
||||
import BaseAuthBody from 'components/auth/BaseAuthBody';
|
||||
import passwordMessages from 'components/auth/password/Password.intl.json';
|
||||
|
||||
import styles from 'components/auth/auth.scss';
|
||||
import passwordMessages from '../password/Password.intl.json';
|
||||
import styles from '../auth.scss';
|
||||
import messages from './Register.intl.json';
|
||||
|
||||
// TODO: password and username can be validate for length and sameness
|
@ -1,11 +1,9 @@
|
||||
import React from 'react';
|
||||
|
||||
import { FormattedMessage as Message } from 'react-intl';
|
||||
import { Input, Captcha } from 'app/components/ui/form';
|
||||
|
||||
import { Input, Captcha } from 'components/ui/form';
|
||||
import registerMessages from 'components/auth/register/Register.intl.json';
|
||||
|
||||
import BaseAuthBody from 'components/auth/BaseAuthBody';
|
||||
import BaseAuthBody from '../BaseAuthBody';
|
||||
import registerMessages from '../register/Register.intl.json';
|
||||
import styles from './resendActivation.scss';
|
||||
import messages from './ResendActivation.intl.json';
|
||||
|
@ -1,4 +1,4 @@
|
||||
@import '~components/ui/fonts.scss';
|
||||
@import '~app/components/ui/fonts.scss';
|
||||
|
||||
.description {
|
||||
font-family: $font-family-title;
|
@ -1,10 +1,10 @@
|
||||
import React from 'react';
|
||||
import expect from 'test/unexpected';
|
||||
import expect from 'app/test/unexpected';
|
||||
import sinon from 'sinon';
|
||||
import { shallow, mount } from 'enzyme';
|
||||
import { IntlProvider } from 'react-intl';
|
||||
import feedback from 'services/api/feedback';
|
||||
import { User } from 'components/user';
|
||||
import feedback from 'app/services/api/feedback';
|
||||
import { User } from 'app/components/user';
|
||||
|
||||
import { ContactForm } from './ContactForm';
|
||||
|
@ -9,13 +9,13 @@ import {
|
||||
Form,
|
||||
FormModel,
|
||||
Dropdown,
|
||||
} from 'components/ui/form';
|
||||
import feedback from 'services/api/feedback';
|
||||
import icons from 'components/ui/icons.scss';
|
||||
import popupStyles from 'components/ui/popup/popup.scss';
|
||||
import { RootState } from 'reducers';
|
||||
import logger from 'services/logger';
|
||||
import { User } from 'components/user';
|
||||
} from 'app/components/ui/form';
|
||||
import feedback from 'app/services/api/feedback';
|
||||
import icons from 'app/components/ui/icons.scss';
|
||||
import popupStyles from 'app/components/ui/popup/popup.scss';
|
||||
import { RootState } from 'app/reducers';
|
||||
import logger from 'app/services/logger';
|
||||
import { User } from 'app/components/user';
|
||||
|
||||
import styles from './contactForm.scss';
|
||||
import messages from './contactForm.intl.json';
|
@ -1,6 +1,6 @@
|
||||
import React from 'react';
|
||||
import { connect } from 'react-redux';
|
||||
import { create as createPopup } from 'components/ui/popup/actions';
|
||||
import { create as createPopup } from 'app/components/ui/popup/actions';
|
||||
import ContactForm from './ContactForm';
|
||||
|
||||
type Props = React.AnchorHTMLAttributes<HTMLAnchorElement> & {
|
@ -1,11 +1,11 @@
|
||||
@import '~components/ui/colors.scss';
|
||||
@import '~components/ui/fonts.scss';
|
||||
@import '~components/ui/popup/popup.scss';
|
||||
@import '~app/components/ui/colors.scss';
|
||||
@import '~app/components/ui/fonts.scss';
|
||||
@import '~app/components/ui/popup/popup.scss';
|
||||
|
||||
/* Form state */
|
||||
|
||||
.contactForm {
|
||||
composes: popupWrapper from '~components/ui/popup/popup.scss';
|
||||
composes: popupWrapper from '~app/components/ui/popup/popup.scss';
|
||||
|
||||
@include popupBounding(500px);
|
||||
}
|
||||
@ -46,13 +46,13 @@
|
||||
/* Success State */
|
||||
|
||||
.successState {
|
||||
composes: popupWrapper from '~components/ui/popup/popup.scss';
|
||||
composes: popupWrapper from '~app/components/ui/popup/popup.scss';
|
||||
|
||||
@include popupBounding(320px);
|
||||
}
|
||||
|
||||
.successBody {
|
||||
composes: body from '~components/ui/popup/popup.scss';
|
||||
composes: body from '~app/components/ui/popup/popup.scss';
|
||||
|
||||
text-align: center;
|
||||
}
|
||||
@ -64,7 +64,7 @@
|
||||
}
|
||||
|
||||
.successIcon {
|
||||
composes: checkmark from '~components/ui/icons.scss';
|
||||
composes: checkmark from '~app/components/ui/icons.scss';
|
||||
|
||||
font-size: 90px;
|
||||
color: #aaa;
|
@ -2,10 +2,10 @@ import React from 'react';
|
||||
import classNames from 'classnames';
|
||||
import { FormattedMessage as Message } from 'react-intl';
|
||||
import { Helmet } from 'react-helmet';
|
||||
import { LinkButton } from 'components/ui/form';
|
||||
import { COLOR_GREEN, COLOR_BLUE } from 'components/ui';
|
||||
import { ContactLink } from 'components/contact';
|
||||
import { OauthAppResponse } from 'services/api/oauth';
|
||||
import { LinkButton } from 'app/components/ui/form';
|
||||
import { COLOR_GREEN, COLOR_BLUE } from 'app/components/ui';
|
||||
import { ContactLink } from 'app/components/contact';
|
||||
import { OauthAppResponse } from 'app/services/api/oauth';
|
||||
|
||||
import styles from './applicationsIndex.scss';
|
||||
import messages from './ApplicationsIndex.intl.json';
|
@ -1,7 +1,7 @@
|
||||
import oauth from 'services/api/oauth';
|
||||
import { Dispatch } from 'redux';
|
||||
import { OauthAppResponse } from 'services/api/oauth';
|
||||
import { User } from 'components/user';
|
||||
import { OauthAppResponse } from 'app/services/api/oauth';
|
||||
import oauth from 'app/services/api/oauth';
|
||||
import { User } from 'app/components/user';
|
||||
|
||||
import { Apps } from './reducer';
|
||||
|
@ -2,14 +2,17 @@ import React from 'react';
|
||||
import { FormattedMessage as Message } from 'react-intl';
|
||||
import { Helmet } from 'react-helmet';
|
||||
import { MessageDescriptor } from 'react-intl';
|
||||
import { OauthAppResponse } from 'services/api/oauth';
|
||||
import { ApplicationType } from 'components/dev/apps';
|
||||
import { Form, FormModel, Button } from 'components/ui/form';
|
||||
import { BackButton } from 'components/profile/ProfileForm';
|
||||
import { COLOR_GREEN } from 'components/ui';
|
||||
import { TYPE_APPLICATION, TYPE_MINECRAFT_SERVER } from 'components/dev/apps';
|
||||
import styles from 'components/profile/profileForm.scss';
|
||||
import logger from 'services/logger';
|
||||
import { OauthAppResponse } from 'app/services/api/oauth';
|
||||
import { ApplicationType } from 'app/components/dev/apps';
|
||||
import { Form, FormModel, Button } from 'app/components/ui/form';
|
||||
import { BackButton } from 'app/components/profile/ProfileForm';
|
||||
import { COLOR_GREEN } from 'app/components/ui';
|
||||
import {
|
||||
TYPE_APPLICATION,
|
||||
TYPE_MINECRAFT_SERVER,
|
||||
} from 'app/components/dev/apps';
|
||||
import styles from 'app/components/profile/profileForm.scss';
|
||||
import logger from 'app/services/logger';
|
||||
import messages from './ApplicationForm.intl.json';
|
||||
|
||||
import ApplicationTypeSwitcher from './ApplicationTypeSwitcher';
|
@ -1,8 +1,8 @@
|
||||
import React from 'react';
|
||||
import { ApplicationType } from 'components/dev/apps';
|
||||
import { ApplicationType } from 'app/components/dev/apps';
|
||||
import { MessageDescriptor } from 'react-intl';
|
||||
import { SKIN_LIGHT } from 'components/ui';
|
||||
import { Radio } from 'components/ui/form';
|
||||
import { SKIN_LIGHT } from 'app/components/ui';
|
||||
import { Radio } from 'app/components/ui/form';
|
||||
|
||||
import styles from './applicationTypeSwitcher.scss';
|
||||
|
@ -1,9 +1,9 @@
|
||||
import React from 'react';
|
||||
import { FormattedMessage as Message } from 'react-intl';
|
||||
import { OauthAppResponse } from 'services/api/oauth';
|
||||
import { Input, FormModel } from 'components/ui/form';
|
||||
import { SKIN_LIGHT } from 'components/ui';
|
||||
import styles from 'components/profile/profileForm.scss';
|
||||
import { OauthAppResponse } from 'app/services/api/oauth';
|
||||
import { Input, FormModel } from 'app/components/ui/form';
|
||||
import { SKIN_LIGHT } from 'app/components/ui';
|
||||
import styles from 'app/components/profile/profileForm.scss';
|
||||
|
||||
import messages from './ApplicationForm.intl.json';
|
||||
|
@ -1,9 +1,9 @@
|
||||
import React from 'react';
|
||||
import { FormattedMessage as Message } from 'react-intl';
|
||||
import { Input, TextArea, FormModel } from 'components/ui/form';
|
||||
import { OauthAppResponse } from 'services/api/oauth';
|
||||
import { SKIN_LIGHT } from 'components/ui';
|
||||
import styles from 'components/profile/profileForm.scss';
|
||||
import { Input, TextArea, FormModel } from 'app/components/ui/form';
|
||||
import { OauthAppResponse } from 'app/services/api/oauth';
|
||||
import { SKIN_LIGHT } from 'app/components/ui';
|
||||
import styles from 'app/components/profile/profileForm.scss';
|
||||
|
||||
import messages from './ApplicationForm.intl.json';
|
||||
|
@ -1,5 +1,5 @@
|
||||
@import '~components/ui/fonts.scss';
|
||||
@import '~components/ui/colors.scss';
|
||||
@import '~app/components/ui/fonts.scss';
|
||||
@import '~app/components/ui/colors.scss';
|
||||
|
||||
.container {
|
||||
max-width: 500px;
|
||||
@ -157,7 +157,7 @@
|
||||
}
|
||||
|
||||
.appItemToggleIcon {
|
||||
composes: arrowRight from '~components/ui/icons.scss';
|
||||
composes: arrowRight from '~app/components/ui/icons.scss';
|
||||
|
||||
position: relative;
|
||||
left: 0;
|
||||
@ -203,7 +203,7 @@ $appDetailsContainerRightLeftPadding: 30px;
|
||||
}
|
||||
|
||||
.pencilIcon {
|
||||
composes: pencil from '~components/ui/icons.scss';
|
||||
composes: pencil from '~app/components/ui/icons.scss';
|
||||
|
||||
font-size: 14px;
|
||||
position: relative;
|
||||
@ -248,7 +248,7 @@ $appDetailsContainerRightLeftPadding: 30px;
|
||||
}
|
||||
|
||||
.continueActionLink {
|
||||
composes: textLink from '~index.scss';
|
||||
composes: textLink from '~app/index.scss';
|
||||
|
||||
font-family: $font-family-title;
|
||||
font-size: 14px;
|
Before Width: | Height: | Size: 357 B After Width: | Height: | Size: 357 B |
Before Width: | Height: | Size: 888 B After Width: | Height: | Size: 888 B |
Before Width: | Height: | Size: 730 B After Width: | Height: | Size: 730 B |
@ -2,10 +2,10 @@ import React from 'react';
|
||||
import { FormattedMessage as Message } from 'react-intl';
|
||||
import { Link } from 'react-router-dom';
|
||||
import classNames from 'classnames';
|
||||
import { SKIN_LIGHT, COLOR_BLACK, COLOR_RED } from 'components/ui';
|
||||
import { Input, Button } from 'components/ui/form';
|
||||
import { OauthAppResponse } from 'services/api/oauth';
|
||||
import Collapse from 'components/ui/collapse';
|
||||
import { SKIN_LIGHT, COLOR_BLACK, COLOR_RED } from 'app/components/ui';
|
||||
import { Input, Button } from 'app/components/ui/form';
|
||||
import { OauthAppResponse } from 'app/services/api/oauth';
|
||||
import Collapse from 'app/components/ui/collapse';
|
||||
|
||||
import styles from '../applicationsIndex.scss';
|
||||
import messages from '../ApplicationsIndex.intl.json';
|
@ -1,9 +1,9 @@
|
||||
import React from 'react';
|
||||
import { restoreScroll } from 'components/ui/scroll/scroll';
|
||||
import { restoreScroll } from 'app/components/ui/scroll/scroll';
|
||||
import { FormattedMessage as Message } from 'react-intl';
|
||||
import { LinkButton } from 'components/ui/form';
|
||||
import { COLOR_GREEN } from 'components/ui';
|
||||
import { OauthAppResponse } from 'services/api/oauth';
|
||||
import { LinkButton } from 'app/components/ui/form';
|
||||
import { COLOR_GREEN } from 'app/components/ui';
|
||||
import { OauthAppResponse } from 'app/services/api/oauth';
|
||||
|
||||
import messages from '../ApplicationsIndex.intl.json';
|
||||
import styles from '../applicationsIndex.scss';
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user