Create app namespace for all absolute requires of app modules. Move all packages under packages yarn workspace

This commit is contained in:
SleepWalker 2019-12-07 21:02:00 +02:00
parent d8d2df0702
commit f9d3bb4e20
404 changed files with 758 additions and 742 deletions

View File

@ -1,4 +1,3 @@
flow-typed
dist
dll
node_modules

View File

@ -24,7 +24,7 @@ module.exports = {
overrides: [
{
files: ['webpack-utils/**', 'scripts/**', 'jest/**'],
files: ['packages/webpack-utils/**', 'packages/scripts/**', 'jest/**'],
env: {
node: true,
},

View File

@ -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 = {
/**

View File

@ -1,4 +1,4 @@
import 'polyfills';
import 'app/polyfills';
import { configure } from 'enzyme';
import Adapter from 'enzyme-adapter-react-16';

View File

@ -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",

View File

@ -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,

View File

@ -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.

View File

@ -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';

View File

@ -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;

View File

@ -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';

View File

@ -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 {

View File

@ -1,4 +1,4 @@
import expect from 'test/unexpected';
import expect from 'app/test/unexpected';
import { updateToken } from './actions';
import {

View File

@ -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<

View File

@ -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 };

View File

@ -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;

View File

@ -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';

View File

@ -1,4 +1,4 @@
@import '~components/ui/colors.scss';
@import '~app/components/ui/colors.scss';
.descriptionText {
font-size: 15px;

View File

@ -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: '',

View File

@ -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

View File

@ -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';

View File

@ -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;

View File

@ -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';

View File

@ -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;

View File

@ -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() {

View File

@ -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';

View File

@ -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;

View File

@ -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

View File

@ -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';

View File

@ -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;
}

View File

@ -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';

View File

@ -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;

View File

@ -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';

View File

@ -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';

View File

@ -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';

View File

@ -1,4 +1,4 @@
@import '~components/ui/fonts.scss';
@import '~app/components/ui/fonts.scss';
.avatar {
width: 90px;

View File

@ -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';

View File

@ -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 пикселя и из-за этого теряем отступ снизу

View File

@ -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';

View File

@ -1,4 +1,4 @@
@import '~components/ui/colors.scss';
@import '~app/components/ui/colors.scss';
.descriptionText {
font-size: 15px;

View File

@ -1,4 +1,4 @@
import expect from 'test/unexpected';
import expect from 'app/test/unexpected';
import auth from './reducer';
import {
setLogin,

View File

@ -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

View File

@ -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';

View File

@ -1,4 +1,4 @@
@import '~components/ui/fonts.scss';
@import '~app/components/ui/fonts.scss';
.description {
font-family: $font-family-title;

View File

@ -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';

View File

@ -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';

View File

@ -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> & {

View File

@ -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;

View File

@ -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';

View File

@ -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';

View File

@ -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';

View File

@ -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';

View File

@ -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';

View File

@ -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';

View File

@ -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;

View File

Before

Width:  |  Height:  |  Size: 357 B

After

Width:  |  Height:  |  Size: 357 B

View File

Before

Width:  |  Height:  |  Size: 888 B

After

Width:  |  Height:  |  Size: 888 B

View File

Before

Width:  |  Height:  |  Size: 730 B

After

Width:  |  Height:  |  Size: 730 B

View File

@ -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';

View File

@ -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