diff --git a/packages/strapi-admin/admin/src/containers/LeftMenu/index.js b/packages/strapi-admin/admin/src/containers/LeftMenu/index.js
index 968864d53a..af4a861acd 100644
--- a/packages/strapi-admin/admin/src/containers/LeftMenu/index.js
+++ b/packages/strapi-admin/admin/src/containers/LeftMenu/index.js
@@ -116,15 +116,12 @@ const LeftMenu = forwardRef(({ version, plugins }, ref) => {
getModels,
}));
- // console.log({ generalSectionLinks });
-
useEffect(() => {
const getLinksPermissions = async () => {
const generalSectionLinksArrayOfPromises = generateArrayOfPromises(generalSectionLinks);
const pluginsSectionLinksArrayOfPromises = generateArrayOfPromises(pluginsSectionLinks);
await getModels();
- // TODO check permissions form models
const generalSectionResults = await Promise.all(generalSectionLinksArrayOfPromises);
const pluginsSectionResults = await Promise.all(pluginsSectionLinksArrayOfPromises);
diff --git a/packages/strapi-admin/admin/src/containers/SettingsPage/index.js b/packages/strapi-admin/admin/src/containers/SettingsPage/index.js
index f5b3d8d762..8de06a9b33 100644
--- a/packages/strapi-admin/admin/src/containers/SettingsPage/index.js
+++ b/packages/strapi-admin/admin/src/containers/SettingsPage/index.js
@@ -57,7 +57,7 @@ function SettingsPage() {
[pluginsGlobalLinks]
);
- const pluginsLinksRoute = useMemo(() => {
+ const pluginsLinksRoutes = useMemo(() => {
return menu.reduce((acc, current) => {
if (current.id === 'global') {
return acc;
@@ -126,7 +126,7 @@ function SettingsPage() {
{createdRoutes}
- {pluginsLinksRoute}
+ {pluginsLinksRoutes}
diff --git a/packages/strapi-admin/admin/src/hooks/useSettingsMenu/index.js b/packages/strapi-admin/admin/src/hooks/useSettingsMenu/index.js
index 685454b577..3fa2866d77 100644
--- a/packages/strapi-admin/admin/src/hooks/useSettingsMenu/index.js
+++ b/packages/strapi-admin/admin/src/hooks/useSettingsMenu/index.js
@@ -1,17 +1,15 @@
import { useContext, useEffect, useReducer } from 'react';
-import { useIntl } from 'react-intl';
import { useGlobalContext, hasPermissions, UserContext } from 'strapi-helper-plugin';
import reducer, { initialState } from './reducer';
import init from './init';
const useSettingsMenu = () => {
- const { formatMessage } = useIntl();
const permissions = useContext(UserContext);
- const { plugins, settingsBaseURL } = useGlobalContext();
+ const { plugins } = useGlobalContext();
const [{ isLoading, menu }, dispatch] = useReducer(reducer, initialState, () =>
- init(initialState, plugins, formatMessage, settingsBaseURL)
+ init(initialState, plugins)
);
useEffect(() => {
diff --git a/packages/strapi-admin/admin/src/hooks/useSettingsMenu/init.js b/packages/strapi-admin/admin/src/hooks/useSettingsMenu/init.js
index edcec85897..e41e092d97 100644
--- a/packages/strapi-admin/admin/src/hooks/useSettingsMenu/init.js
+++ b/packages/strapi-admin/admin/src/hooks/useSettingsMenu/init.js
@@ -1,21 +1,22 @@
import { retrieveGlobalLinks, retrievePluginsMenu, sortLinks } from '../../utils';
+import { SETTINGS_BASE_URL } from '../../config';
import formatLinks from './utils/formatLinks';
-const init = (initialState, plugins, formatMessage, settingsBaseURL) => {
+const init = (initialState, plugins) => {
// Retrieve the links that will be injected into the global section
const pluginsGlobalLinks = retrieveGlobalLinks(plugins);
// Sort the links by name
const sortedGlobalLinks = sortLinks([
{
- title: formatMessage({ id: 'Settings.webhooks.title' }),
- to: `${settingsBaseURL}/webhooks`,
+ title: { id: 'Settings.webhooks.title' },
+ to: `${SETTINGS_BASE_URL}/webhooks`,
name: 'webhooks',
isDisplayed: false,
permissions: [
- { action: 'admin::webhook.create', subject: null },
- { action: 'admin::webhook.read', subject: null },
- { action: 'admin::webhook.update', subject: null },
- { action: 'admin::webhook.delete', subject: null },
+ { action: 'admin::webhooks.create', subject: null },
+ { action: 'admin::webhooks.read', subject: null },
+ { action: 'admin::webhooks.update', subject: null },
+ { action: 'admin::webhooks.delete', subject: null },
],
},
...pluginsGlobalLinks,
@@ -35,8 +36,8 @@ const init = (initialState, plugins, formatMessage, settingsBaseURL) => {
title: 'Settings.permissions',
links: [
{
- title: formatMessage({ id: 'Settings.permissions.menu.link.roles.label' }),
- to: `${settingsBaseURL}/roles`,
+ title: { id: 'Settings.permissions.menu.link.roles.label' },
+ to: `${SETTINGS_BASE_URL}/roles`,
name: 'roles',
isDisplayed: false,
permissions: [
@@ -47,9 +48,9 @@ const init = (initialState, plugins, formatMessage, settingsBaseURL) => {
],
},
{
- title: formatMessage({ id: 'Settings.permissions.menu.link.users.label' }),
+ title: { id: 'Settings.permissions.menu.link.users.label' },
// Init the search params directly
- to: `${settingsBaseURL}/users?pageSize=10&page=1&_sort=firstname%3AASC`,
+ to: `${SETTINGS_BASE_URL}/users?pageSize=10&page=1&_sort=firstname%3AASC`,
name: 'users',
isDisplayed: false,
permissions: [
diff --git a/packages/strapi-admin/admin/src/hooks/useSettingsMenu/utils/tests/formatLinks.test.js b/packages/strapi-admin/admin/src/hooks/useSettingsMenu/utils/tests/formatLinks.test.js
new file mode 100644
index 0000000000..16df23f4aa
--- /dev/null
+++ b/packages/strapi-admin/admin/src/hooks/useSettingsMenu/utils/tests/formatLinks.test.js
@@ -0,0 +1,30 @@
+import formatLinks from '../formatLinks';
+
+describe('ADMIN | hooks | useSettingsMenu | utils | formatLinks', () => {
+ it('should add the isDisplayed key to all sections links', () => {
+ const menu = [
+ {
+ links: [{ name: 'link 1' }, { name: 'link 2' }],
+ },
+ {
+ links: [{ name: 'link 3' }, { name: 'link 4' }],
+ },
+ ];
+ const expected = [
+ {
+ links: [
+ { name: 'link 1', isDisplayed: false },
+ { name: 'link 2', isDisplayed: false },
+ ],
+ },
+ {
+ links: [
+ { name: 'link 3', isDisplayed: false },
+ { name: 'link 4', isDisplayed: false },
+ ],
+ },
+ ];
+
+ expect(formatLinks(menu)).toEqual(expected);
+ });
+});
diff --git a/packages/strapi-admin/admin/src/utils/fakePermissionsData.js b/packages/strapi-admin/admin/src/utils/fakePermissionsData.js
index 62805f4a8a..a851280c1b 100644
--- a/packages/strapi-admin/admin/src/utils/fakePermissionsData.js
+++ b/packages/strapi-admin/admin/src/utils/fakePermissionsData.js
@@ -248,38 +248,38 @@ const data = {
// },
// Admin webhooks
- // {
- // action: 'admin::webhooks.create',
- // subject: null,
- // fields: null,
- // conditions: [],
- // },
- // {
- // action: 'admin::webhooks.read',
- // subject: null,
- // fields: null,
- // conditions: [],
- // },
- // {
- // action: 'admin::webhooks.update',
- // subject: null,
- // fields: null,
- // conditions: [],
- // },
- // {
- // action: 'admin::webhooks.delete',
- // subject: null,
- // fields: null,
- // conditions: [],
- // },
+ {
+ action: 'admin::webhooks.create',
+ subject: null,
+ fields: null,
+ conditions: [],
+ },
+ {
+ action: 'admin::webhooks.read',
+ subject: null,
+ fields: null,
+ conditions: [],
+ },
+ {
+ action: 'admin::webhooks.update',
+ subject: null,
+ fields: null,
+ conditions: [],
+ },
+ {
+ action: 'admin::webhooks.delete',
+ subject: null,
+ fields: null,
+ conditions: [],
+ },
// // Admin users
- // {
- // action: 'admin::users.create',
- // subject: null,
- // fields: null,
- // conditions: [],
- // },
+ {
+ action: 'admin::users.create',
+ subject: null,
+ fields: null,
+ conditions: [],
+ },
// {
// action: 'admin::users.read',
// subject: null,
diff --git a/packages/strapi-plugin-upload/admin/src/index.js b/packages/strapi-plugin-upload/admin/src/index.js
index 6e1f920fd0..b46017a7c4 100644
--- a/packages/strapi-plugin-upload/admin/src/index.js
+++ b/packages/strapi-plugin-upload/admin/src/index.js
@@ -55,8 +55,6 @@ export default strapi => {
},
],
},
-
- mainComponent: SettingsPage,
},
trads,
menu: {