diff --git a/packages/strapi-admin/admin/src/containers/NotFoundPage/index.js b/packages/strapi-admin/admin/src/containers/NotFoundPage/index.js
index 0013c9db28..9c379c3d72 100644
--- a/packages/strapi-admin/admin/src/containers/NotFoundPage/index.js
+++ b/packages/strapi-admin/admin/src/containers/NotFoundPage/index.js
@@ -30,16 +30,15 @@ export default class NotFound extends React.Component { // eslint-disable-line r
+ />
);
}
diff --git a/packages/strapi-admin/admin/src/translations/en.json b/packages/strapi-admin/admin/src/translations/en.json
index 0ab4c348a2..725671d08b 100644
--- a/packages/strapi-admin/admin/src/translations/en.json
+++ b/packages/strapi-admin/admin/src/translations/en.json
@@ -9,5 +9,6 @@
"app.components.LeftMenuLinkContainer.listPlugins": "List plugins",
"app.components.LeftMenuLinkContainer.noPluginsInstalled": "No plugins installed yet",
"app.components.LeftMenuLinkContainer.plugins": "Plugins",
- "app.components.NotFoundPage.description": ""
+ "app.components.NotFoundPage.description": "Not Found",
+ "app.components.NotFoundPage.back": "Back to homepage"
}
diff --git a/packages/strapi-admin/admin/src/translations/fr.json b/packages/strapi-admin/admin/src/translations/fr.json
index b175c73266..c5bf22d06e 100644
--- a/packages/strapi-admin/admin/src/translations/fr.json
+++ b/packages/strapi-admin/admin/src/translations/fr.json
@@ -9,5 +9,6 @@
"app.components.LeftMenuLinkContainer.listPlugins": "Liste des plugins",
"app.components.LeftMenuLinkContainer.noPluginsInstalled": "Aucun plugin installé",
"app.components.LeftMenuLinkContainer.plugins": "Plugins",
- "app.components.NotFoundPage.description": "Page introuvable"
+ "app.components.NotFoundPage.description": "Page introuvable",
+ "app.components.NotFoundPage.back": "Retourner à la page d'accueil"
}
diff --git a/packages/strapi-admin/package.json b/packages/strapi-admin/package.json
index 668f89d2f1..831b2f60c7 100644
--- a/packages/strapi-admin/package.json
+++ b/packages/strapi-admin/package.json
@@ -33,12 +33,12 @@
"eslint": "^4.7.2",
"eslint-config-airbnb": "^15.1.0",
"eslint-config-airbnb-base": "^11.3.2",
- "eslint-config-prettier": "^2.5.0",
+ "eslint-config-prettier": "^2.6.0",
"eslint-import-resolver-webpack": "^0.8.3",
"eslint-plugin-babel": "^4.1.2",
"eslint-plugin-import": "^2.7.0",
"eslint-plugin-jsx-a11y": "^6.0.2",
- "eslint-plugin-react": "^7.3.0",
+ "eslint-plugin-react": "^7.4.0",
"eslint-plugin-redux-saga": "^0.4.0",
"extract-text-webpack-plugin": "^1.0.1",
"html-loader": "^0.4.3",
diff --git a/packages/strapi-helper-plugin/lib/src/utils/cleanData.js b/packages/strapi-helper-plugin/lib/src/utils/cleanData.js
index 5b3f7468c6..ca4b8099b9 100644
--- a/packages/strapi-helper-plugin/lib/src/utils/cleanData.js
+++ b/packages/strapi-helper-plugin/lib/src/utils/cleanData.js
@@ -1,19 +1,13 @@
-import { isArray } from 'lodash';
+import { isArray, isObject } from 'lodash';
-function cleanData(value, key, secondKey) {
+const cleanData = (value, key, secondKey) => {
if (isArray(value)) {
- return value.map(obj => {
- if (obj[key]) {
- return obj[key];
- }
-
- return obj;
- });
- } else if (_.isObject(value)) {
+ return value.map(obj => obj[key] ? obj[key] : obj);
+ } else if (isObject(value)) {
return value[key] || value[secondKey];
+ } else {
+ return value;
}
-
- return value;
}
export default cleanData;
diff --git a/packages/strapi-helper-plugin/lib/src/utils/request.js b/packages/strapi-helper-plugin/lib/src/utils/request.js
index a5ef761ec7..c040c04d1c 100644
--- a/packages/strapi-helper-plugin/lib/src/utils/request.js
+++ b/packages/strapi-helper-plugin/lib/src/utils/request.js
@@ -8,12 +8,7 @@ import 'whatwg-fetch';
* @return {object} The parsed JSON from the request
*/
function parseJSON(response) {
- if (response.json) {
- return response.json();
- }
-
- return response;
-}
+ return response.json : response.json() : response;
/**
* Checks if a network request came back fine, and throws an error if not
diff --git a/packages/strapi-plugin-content-manager/admin/src/components/SelectMany/index.js b/packages/strapi-plugin-content-manager/admin/src/components/SelectMany/index.js
index 10357d4a3d..308b2a4bdd 100644
--- a/packages/strapi-plugin-content-manager/admin/src/components/SelectMany/index.js
+++ b/packages/strapi-plugin-content-manager/admin/src/components/SelectMany/index.js
@@ -55,6 +55,9 @@ class SelectMany extends React.Component { // eslint-disable-line react/prefer-s
}];
return { options };
+ })
+ .catch(() => {
+ window.Strapi.notification.error('An error occurred during relationship fetch.');
});
}
diff --git a/packages/strapi-plugin-content-manager/admin/src/components/SelectOne/index.js b/packages/strapi-plugin-content-manager/admin/src/components/SelectOne/index.js
index 00721ded5f..0290151566 100644
--- a/packages/strapi-plugin-content-manager/admin/src/components/SelectOne/index.js
+++ b/packages/strapi-plugin-content-manager/admin/src/components/SelectOne/index.js
@@ -55,6 +55,9 @@ class SelectOne extends React.Component { // eslint-disable-line react/prefer-st
}];
return {options};
+ })
+ .catch(() => {
+ window.Strapi.notification.error('An error occurred during relationship fetch.');
});
}
diff --git a/packages/strapi-plugin-content-manager/admin/src/containers/App/sagas.js b/packages/strapi-plugin-content-manager/admin/src/containers/App/sagas.js
index b19dd4fa7f..1e08e990a3 100644
--- a/packages/strapi-plugin-content-manager/admin/src/containers/App/sagas.js
+++ b/packages/strapi-plugin-content-manager/admin/src/containers/App/sagas.js
@@ -9,25 +9,22 @@ import { LOAD_MODELS, LOADED_MODELS } from './constants';
import { makeSelectModels } from './selectors';
export const generateMenu = function () {
- try {
- return request(`${window.Strapi.apiUrl}/content-manager/models`, {
- method: 'GET',
+ return request(`${window.Strapi.apiUrl}/content-manager/models`, {
+ method: 'GET',
+ })
+ .then(response => generateSchema(response))
+ .then(displayedModels => {
+ return [{
+ name: 'Content Types',
+ links: _.map(displayedModels, (model, key) => ({
+ label: model.labelPlural || model.label || key,
+ destination: key,
+ })),
+ }];
})
- .then(response => generateSchema(response))
- .then(displayedModels => {
- return [{
- name: 'Content Types',
- links: _.map(displayedModels, (model, key) => ({
- label: model.labelPlural || model.label || key,
- destination: key,
- })),
- }];
- });
- } catch (err) {
- window.Strapi.notification.error(
- 'An error occurred during models config fetch.'
- );
- }
+ .catch(() => {
+ window.Strapi.notification.error('error.model.fetch');
+ });
}
export function* getModels() {
@@ -39,9 +36,7 @@ export function* getModels() {
yield put(loadedModels(response));
} catch (err) {
- window.Strapi.notification.error(
- 'An error occurred during models config fetch.'
- );
+ window.Strapi.notification.error('error.model.fetch');
}
}
@@ -52,9 +47,7 @@ export function* modelsLoaded() {
try {
schema = generateSchema(models);
} catch (err) {
- window.Strapi.notification.error(
- 'An error occurred during schema generation.'
- );
+ window.Strapi.notification.error('error.schema.generation');
throw new Error(err);
}
diff --git a/packages/strapi-plugin-content-manager/admin/src/containers/Edit/sagas.js b/packages/strapi-plugin-content-manager/admin/src/containers/Edit/sagas.js
index b2d06393e7..f001767a17 100644
--- a/packages/strapi-plugin-content-manager/admin/src/containers/Edit/sagas.js
+++ b/packages/strapi-plugin-content-manager/admin/src/containers/Edit/sagas.js
@@ -32,7 +32,7 @@ export function* getRecord(params) {
yield put(recordLoaded(response));
} catch (err) {
- window.Strapi.notification.error('An error occurred during record fetch.');
+ window.Strapi.notification.error('error.record.fetch');
}
}
@@ -60,14 +60,10 @@ export function* editRecord() {
});
yield put(recordEdited());
- window.Strapi.notification.success(
- `Saved`
- );
+ window.Strapi.notification.success('content-manager.success.record.save');
} catch (err) {
yield put(recordEditError());
- window.Strapi.notification.error(
- `An error occurred during record ${isCreating ? 'creation' : 'update'}.`
- );
+ window.Strapi.notification.error(isCreating ? 'content-manager.error.record.create' : 'content-manager.error.record.update');
}
}
@@ -82,17 +78,13 @@ export function* deleteRecord({ id, modelName }) {
});
yield put(recordDeleted(id));
- window.Strapi.notification.success(
- 'Deleted'
- );
+ window.Strapi.notification.success('success.record.delete');
// Redirect to the list page.
router.push(`/plugins/content-manager/${modelName}`);
} catch (err) {
yield put(recordDeleteError());
- window.Strapi.notification.error(
- 'An error occurred during record deletion.'
- );
+ window.Strapi.notification.error('error.record.delete');
}
}
diff --git a/packages/strapi-plugin-content-manager/admin/src/containers/List/sagas.js b/packages/strapi-plugin-content-manager/admin/src/containers/List/sagas.js
index 7347ade1b8..3200c3ab7e 100644
--- a/packages/strapi-plugin-content-manager/admin/src/containers/List/sagas.js
+++ b/packages/strapi-plugin-content-manager/admin/src/containers/List/sagas.js
@@ -50,7 +50,7 @@ export function* getRecords() {
yield put(loadedRecord(response));
} catch (err) {
- window.Strapi.notification.error('An error occurred during records fetch.');
+ window.Strapi.notification.error('error.records.fetch');
}
}
@@ -65,9 +65,7 @@ export function* getCount() {
yield put(loadedCount(response.count));
} catch (err) {
- window.Strapi.notification.error(
- 'An error occurred during count records fetch.'
- );
+ window.Strapi.notification.error('error.records.count');
}
}
diff --git a/packages/strapi-plugin-content-manager/admin/src/translations/en.json b/packages/strapi-plugin-content-manager/admin/src/translations/en.json
index 15233984fd..928be6b748 100644
--- a/packages/strapi-plugin-content-manager/admin/src/translations/en.json
+++ b/packages/strapi-plugin-content-manager/admin/src/translations/en.json
@@ -12,6 +12,14 @@
"components.LimitSelect.itemsPerPage": "Items per page",
"containers.List.errorFetchRecords": "Error",
+ "error.schema.generation": "An error occurred during schema generation.",
+ "error.records.count": "An error occurred during count records fetch.",
+ "error.records.fetch": "An error occurred during records fetch.",
+ "error.record.fetch": "An error occurred during record fetch.",
+ "error.record.create": "An error occurred during record creation.",
+ "error.record.update": "An error occurred during record update.",
+ "error.record.delete": "An error occurred during record deletion.",
+ "error.model.fetch": "An error occurred during models config fetch.",
"error.validation.required": "This value input is required.",
"error.validation.regex": "The value not match the regex.",
"error.validation.max": "The value is too high.",
@@ -24,6 +32,9 @@
"error.attribute.sameKeyAndName": "Can't be equals",
"error.validation.minSupMax": "Can't be superior",
+ "success.record.delete": "Deleted",
+ "success.record.save": "Saved",
+
"pageNotFound": "Page not found",
"popUpWarning.button.cancel": "Cancel",
diff --git a/packages/strapi-plugin-content-manager/admin/src/translations/fr.json b/packages/strapi-plugin-content-manager/admin/src/translations/fr.json
index cf6c3e2131..196fb41f68 100644
--- a/packages/strapi-plugin-content-manager/admin/src/translations/fr.json
+++ b/packages/strapi-plugin-content-manager/admin/src/translations/fr.json
@@ -13,6 +13,14 @@
"components.LimitSelect.itemsPerPage": "Éléments par page",
"containers.List.errorFetchRecords": "Erreur",
+ "error.schema.generation": "Une erreur est survenue lors de la génération du schéma.",
+ "error.records.count": "Une erreur est survenue lors de la réception du nombre d'entrées.",
+ "error.records.fetch": "Une erreur est survenue lors de la réception des entrées.",
+ "error.record.fetch": "Une erreur est survenue lors de la réception de l'entrée.",
+ "error.record.create": "Une erreur est survenue lors de la création de l'entrée.",
+ "error.record.update": "Une erreur est survenue lors de la modification de l'entrée.",
+ "error.record.delete": "Une erreur est survenue lors de la suppression de l'entrée.",
+ "error.model.fetch": "Une erreur est survenue lors de la réception des modèles.",
"error.validation.required": "Ce champ est obligatoire.",
"error.validation.regex": "La valeur ne correspond pas au format attendu.",
"error.validation.max": "La valeur est trop grande.",
@@ -25,6 +33,9 @@
"error.attribute.sameKeyAndName": "Ne peuvent pas être égaux",
"error.validation.minSupMax": "Ne peut pas être plus grand",
+ "success.record.delete": "Supprimé",
+ "success.record.save": "Sauvegardé",
+
"popUpWarning.button.cancel": "Annuler",
"popUpWarning.button.confirm": "Confirmer",
"popUpWarning.title": "Confirmation requise",
diff --git a/packages/strapi-plugin-content-manager/package.json b/packages/strapi-plugin-content-manager/package.json
index 392b74b4f9..c567291cf1 100644
--- a/packages/strapi-plugin-content-manager/package.json
+++ b/packages/strapi-plugin-content-manager/package.json
@@ -52,12 +52,12 @@
"eslint": "^4.7.2",
"eslint-config-airbnb": "^15.1.0",
"eslint-config-airbnb-base": "^11.3.2",
- "eslint-config-prettier": "^2.5.0",
+ "eslint-config-prettier": "^2.6.0",
"eslint-import-resolver-webpack": "^0.8.3",
"eslint-plugin-babel": "^4.1.2",
"eslint-plugin-import": "^2.7.0",
"eslint-plugin-jsx-a11y": "^6.0.2",
- "eslint-plugin-react": "^7.3.0",
+ "eslint-plugin-react": "^7.4.0",
"eslint-plugin-redux-saga": "^0.4.0",
"plop": "^1.8.1",
"prettier": "^1.7.0",
diff --git a/packages/strapi-plugin-settings-manager/package.json b/packages/strapi-plugin-settings-manager/package.json
index 94b706d72e..fb29b41a3b 100644
--- a/packages/strapi-plugin-settings-manager/package.json
+++ b/packages/strapi-plugin-settings-manager/package.json
@@ -38,12 +38,12 @@
"eslint": "^4.7.2",
"eslint-config-airbnb": "^15.1.0",
"eslint-config-airbnb-base": "^11.3.2",
- "eslint-config-prettier": "^2.5.0",
+ "eslint-config-prettier": "^2.6.0",
"eslint-import-resolver-webpack": "^0.8.3",
"eslint-plugin-babel": "^4.1.2",
"eslint-plugin-import": "^2.7.0",
"eslint-plugin-jsx-a11y": "^6.0.2",
- "eslint-plugin-react": "^7.3.0",
+ "eslint-plugin-react": "^7.4.0",
"eslint-plugin-redux-saga": "^0.4.0",
"plop": "^1.8.1",
"prettier": "^1.7.0",