{
+ useEffect(() => {
+ console.error(
+ 'This component will soon be removed, please check out the PageTemplate in the storybook'
+ );
+ }, []);
+
if (!canRead) {
return (
diff --git a/packages/plugins/users-permissions/admin/src/pages/Roles/ListPage/index.js b/packages/plugins/users-permissions/admin/src/pages/Roles/ListPage/index.js
index 2267957e65..3f9873c1b6 100644
--- a/packages/plugins/users-permissions/admin/src/pages/Roles/ListPage/index.js
+++ b/packages/plugins/users-permissions/admin/src/pages/Roles/ListPage/index.js
@@ -14,6 +14,7 @@ import {
Th,
TableLabel,
useNotifyAT,
+ ContentLayout,
} from '@strapi/parts';
import { AddIcon, EditIcon } from '@strapi/icons';
@@ -23,8 +24,9 @@ import {
SettingsPageTitle,
CheckPermissions,
useNotification,
- CustomContentLayout,
useRBAC,
+ NoPermissions,
+ LoadingIndicatorPage,
} from '@strapi/helper-plugin';
import { useHistory } from 'react-router-dom';
import { useQuery } from 'react-query';
@@ -59,7 +61,10 @@ const RoleListPage = () => {
isLoading: isLoadingForData,
data: { roles },
isFetching,
- } = useQuery('get-roles', () => fetchData(toggleNotification, notifyStatus), { initialData: {} });
+ } = useQuery('get-roles', () => fetchData(toggleNotification, notifyStatus), {
+ initialData: {},
+ enabled: canRead,
+ });
const isLoading = isLoadingForData || isFetching;
@@ -73,7 +78,7 @@ const RoleListPage = () => {
defaultMessage: 'Roles',
});
- const handleClickEdit = (id) => {
+ const handleClickEdit = id => {
push(`/settings/${pluginId}/roles/${id}`);
};
@@ -104,70 +109,74 @@ const RoleListPage = () => {
}
/>
-
-
-
-
- |
-
- {formatMessage({ id: getTrad('Roles.name'), defaultMessage: 'Name' })}
-
- |
-
-
- {formatMessage({
- id: getTrad('Roles.description'),
- defaultMessage: 'Description',
- })}
-
- |
-
-
- {formatMessage({
- id: getTrad('Roles.users'),
- defaultMessage: 'Users',
- })}
-
- |
-
-
-
- {roles &&
- roles.map((role) => (
-
- |
- {role.name}
- |
-
- {role.description}
- |
-
-
- {`${role.nb_users} ${formatMessage({
- id: getTrad('Roles.users'),
- defaultMessage: 'users',
- }).toLowerCase()}`}
-
- |
-
-
- handleClickEdit(role.id)}
- noBorder
- icon={}
- label="Edit"
- />
-
- |
-
- ))}
-
-
-
+ {!canRead && }
+ {(isLoading || isLoadingForPermissions) && }
+ {canRead && roles && roles.length && (
+
+
+
+ |
+
+ {formatMessage({ id: getTrad('Roles.name'), defaultMessage: 'Name' })}
+
+ |
+
+
+ {formatMessage({
+ id: getTrad('Roles.description'),
+ defaultMessage: 'Description',
+ })}
+
+ |
+
+
+ {formatMessage({
+ id: getTrad('Roles.users'),
+ defaultMessage: 'Users',
+ })}
+
+ |
+
+
+
+ {roles &&
+ roles.map(role => (
+
+ |
+ {role.name}
+ |
+
+ {role.description}
+ |
+
+
+ {`${role.nb_users} ${formatMessage({
+ id: getTrad('Roles.users'),
+ defaultMessage: 'users',
+ }).toLowerCase()}`}
+
+ |
+
+
+ handleClickEdit(role.id)}
+ noBorder
+ icon={}
+ label="Edit"
+ />
+
+ |
+
+ ))}
+
+
+ )}
+
);
diff --git a/packages/plugins/users-permissions/admin/src/pages/Roles/ListPage/tests/index.test.js b/packages/plugins/users-permissions/admin/src/pages/Roles/ListPage/tests/index.test.js
index 7f320f9848..35b49f9e9f 100644
--- a/packages/plugins/users-permissions/admin/src/pages/Roles/ListPage/tests/index.test.js
+++ b/packages/plugins/users-permissions/admin/src/pages/Roles/ListPage/tests/index.test.js
@@ -91,6 +91,11 @@ describe('Admin | containers | RoleListPage', () => {
padding-left: 56px;
}
+ .c10 {
+ padding-right: 56px;
+ padding-left: 56px;
+ }
+
.c5 {
display: -webkit-box;
display: -webkit-flex;
@@ -136,11 +141,6 @@ describe('Admin | containers | RoleListPage', () => {
outline: none;
}
- .c10 {
- padding-right: 56px;
- padding-left: 56px;
- }
-
.c13 {
border: 0;
-webkit-clip: rect(0 0 0 0);