diff --git a/packages/strapi-admin/admin/src/containers/AdminPage/index.js b/packages/strapi-admin/admin/src/containers/AdminPage/index.js index bb302fcff8..a4ffe76d70 100644 --- a/packages/strapi-admin/admin/src/containers/AdminPage/index.js +++ b/packages/strapi-admin/admin/src/containers/AdminPage/index.js @@ -185,6 +185,10 @@ export class AdminPage extends React.Component { const header = this.showLeftMenu() ?
: ''; const style = this.showLeftMenu() ? {} : { width: '100%' }; + if (adminPage.isLoading) { + return
; + } + return (
{this.showLeftMenu() && ( diff --git a/packages/strapi-admin/admin/src/containers/AdminPage/reducer.js b/packages/strapi-admin/admin/src/containers/AdminPage/reducer.js index e1152f0390..b32fd475dd 100644 --- a/packages/strapi-admin/admin/src/containers/AdminPage/reducer.js +++ b/packages/strapi-admin/admin/src/containers/AdminPage/reducer.js @@ -16,6 +16,7 @@ import { const initialState = fromJS({ allowGa: true, currentEnvironment: 'development', + isLoading: true, layout: Map({}), strapiVersion: '3', }); @@ -23,7 +24,9 @@ const initialState = fromJS({ function adminPageReducer(state = initialState, action) { switch (action.type) { case GET_CURR_ENV_SUCCEEDED: - return state.update('currentEnvironment', () => action.currentEnvironment); + return state + .update('isLoading', () => false) + .update('currentEnvironment', () => action.currentEnvironment); case GET_GA_STATUS_SUCCEEDED: return state.update('allowGa', () => action.allowGa); case GET_LAYOUT_SUCCEEDED: diff --git a/packages/strapi-plugin-content-type-builder/admin/src/containers/Form/utils/attributeValidations.js b/packages/strapi-plugin-content-type-builder/admin/src/containers/Form/utils/attributeValidations.js index a6feab4cce..eadf3d6031 100644 --- a/packages/strapi-plugin-content-type-builder/admin/src/containers/Form/utils/attributeValidations.js +++ b/packages/strapi-plugin-content-type-builder/admin/src/containers/Form/utils/attributeValidations.js @@ -5,7 +5,7 @@ export default function checkAttributeValidations(errors) { const attributeIndex = split(this.props.hash, '::')[3]; const sameAttributes = filter(this.props.contentTypeData.attributes, (attr) => attr.name === this.props.modifiedDataAttribute.name); const sameParamsKey = filter(this.props.contentTypeData.attributes, (attr) => - attr.params.key === this.props.modifiedDataAttribute.params.key && attr.params.target === this.props.modifiedDataAttribute.params.target); + attr.params.key !== '-' && attr.params.key === this.props.modifiedDataAttribute.params.key && attr.params.target === this.props.modifiedDataAttribute.params.target); const sameParamsKeyAndName = filter(this.props.contentTypeData.attributes, (attr) => attr.name === this.props.modifiedDataAttribute.params.key); const formErrors = concat(errors, hasNestedValue(this.props.modifiedDataAttribute)); const isEditingParamsKey = this.props.modifiedDataAttribute.params.key !== get(this.props.contentTypeData.attributes, [attributeIndex, 'params', 'key']); diff --git a/packages/strapi-plugin-users-permissions/admin/src/components/PopUpForm/index.js b/packages/strapi-plugin-users-permissions/admin/src/components/PopUpForm/index.js index 8b3ebba020..7f9ccbb40c 100644 --- a/packages/strapi-plugin-users-permissions/admin/src/components/PopUpForm/index.js +++ b/packages/strapi-plugin-users-permissions/admin/src/components/PopUpForm/index.js @@ -104,7 +104,7 @@ class PopUpForm extends React.Component { // eslint-disable-line react/prefer-st {}} onBlur={includes(value, 'callback') || includes(value, 'redirect_uri') ? this.handleBlur : false} onChange={this.props.onChange} @@ -163,7 +163,7 @@ class PopUpForm extends React.Component { // eslint-disable-line react/prefer-st didCheckErrors={this.props.didCheckErrors} errors={get(this.props.formErrors, [findIndex(this.props.formErrors, ['name', value]), 'errors'], [])} label={{ id: `users-permissions.PopUpForm.Email.${value}.label` }} - name={`${dataToEdit}.${value}`} + name={`${settingType}.${dataToEdit}.${value}`} onChange={this.props.onChange} placeholder={`users-permissions.PopUpForm.Email.${value}.placeholder`} type={includes(value, 'email') ? 'email' : 'text'} @@ -179,7 +179,7 @@ class PopUpForm extends React.Component { // eslint-disable-line react/prefer-st didCheckErrors={this.props.didCheckErrors} errors={get(this.props.formErrors, [findIndex(this.props.formErrors, ['name', value]), 'errors'], [])} label={{ id: `users-permissions.PopUpForm.Email.${value}.label` }} - name={`${dataToEdit}.${value}`} + name={`${settingType}.${dataToEdit}.${value}`} inputDescription={{ id: includes(value, 'object') ? 'users-permissions.PopUpForm.Email.email_templates.inputDescription' : '', params, diff --git a/packages/strapi-plugin-users-permissions/admin/src/containers/HomePage/index.js b/packages/strapi-plugin-users-permissions/admin/src/containers/HomePage/index.js index 0101d68a94..3de8ed4342 100755 --- a/packages/strapi-plugin-users-permissions/admin/src/containers/HomePage/index.js +++ b/packages/strapi-plugin-users-permissions/admin/src/containers/HomePage/index.js @@ -124,8 +124,8 @@ export class HomePage extends React.Component { handleSubmit = (e) => { e.preventDefault(); - const modifiedObject = get(this.props.modifiedData, this.props.dataToEdit); - const initObject = get(this.props.initialData, this.props.dataToEdit); + const modifiedObject = get(this.props.modifiedData, [this.getEndPoint(), this.props.dataToEdit]); + const initObject = get(this.props.initialData, [this.getEndPoint(), this.props.dataToEdit]); const formErrors = checkFormValidity(this.props.match.params.settingType, modifiedObject, this.props.dataToEdit); if (isEqual(initObject, modifiedObject)) { @@ -168,13 +168,10 @@ export class HomePage extends React.Component { noButton={noButtonList} onButtonClick={this.handleButtonClick} settingType={match.params.settingType} - values={modifiedData} + values={get(modifiedData, this.getEndPoint(), {})} /> ); - console.log(this.props.match); - console.log(modifiedData) - console.log(this.props.endPoint); return (
e.preventDefault()}> @@ -196,7 +193,7 @@ export class HomePage extends React.Component { onChange={this.props.onChange} onSubmit={this.handleSubmit} settingType={match.params.settingType} - values={modifiedData[dataToEdit] || {}} + values={get(modifiedData,[this.getEndPoint(), dataToEdit], {})} />
diff --git a/packages/strapi-plugin-users-permissions/admin/src/containers/HomePage/reducer.js b/packages/strapi-plugin-users-permissions/admin/src/containers/HomePage/reducer.js index 3655096b68..11a8123a65 100755 --- a/packages/strapi-plugin-users-permissions/admin/src/containers/HomePage/reducer.js +++ b/packages/strapi-plugin-users-permissions/admin/src/containers/HomePage/reducer.js @@ -48,7 +48,7 @@ function homePageReducer(state = initialState, action) { .set('deleteEndPoint', action.deleteEndPoint); case DELETE_DATA_SUCCEEDED: return state - .update('data', list => list.splice(action.indexDataToDelete, 1)) + .updateIn(['data', state.get('endPoint')], list => list.splice(action.indexDataToDelete, 1)) .set('deleteEndPoint', '') .set('dataToDelete', Map({})) .update('didDeleteData', (v) => !v); diff --git a/packages/strapi-plugin-users-permissions/admin/src/containers/HomePage/saga.js b/packages/strapi-plugin-users-permissions/admin/src/containers/HomePage/saga.js index e46be640a9..0c3e887fd4 100755 --- a/packages/strapi-plugin-users-permissions/admin/src/containers/HomePage/saga.js +++ b/packages/strapi-plugin-users-permissions/admin/src/containers/HomePage/saga.js @@ -28,8 +28,8 @@ export function* dataDelete() { try { const allData = yield select(makeSelectAllData()); const dataToDelete = yield select(makeSelectDataToDelete()); - const indexDataToDelete = findIndex(allData, ['name', dataToDelete.name]); const endPointAPI = yield select(makeSelectDeleteEndPoint()); + const indexDataToDelete = findIndex(allData[endPointAPI], ['name', dataToDelete.name]); if (indexDataToDelete !== -1) { const id = dataToDelete.id;