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
{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 (
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;