diff --git a/frontend/app/layouts/default.vue b/frontend/app/layouts/default.vue index 28cd990..0ee27a6 100644 --- a/frontend/app/layouts/default.vue +++ b/frontend/app/layouts/default.vue @@ -1,9 +1,17 @@ + @@ -16,10 +24,10 @@ + class="flex flex-1 flex-col overflow-y-auto overflow-x-hidden bg-white px-4 pb-10 sm:px-6 lg:px-12 xl:px-[170px]"> + class="pointer-events-none sticky top-0 z-30 h-[47px] flex-shrink-0 bg-white"/> diff --git a/frontend/i18n/locales/fr.json b/frontend/i18n/locales/fr.json index 4d08443..3d35703 100644 --- a/frontend/i18n/locales/fr.json +++ b/frontend/i18n/locales/fr.json @@ -85,12 +85,19 @@ }, "empty": "Aucune activité enregistrée", "no_results": "Aucun résultat pour ces filtres", + "error": { + "title": "Erreur", + "message": "Impossible de charger le journal d'audit. Vérifiez les filtres ou réessayez." + }, "timeline": { "empty": "Aucun historique", "load_more": "Voir plus" }, "filters": { + "title": "Filtres", + "apply": "Voir les résultats", "reset": "Réinitialiser", + "date_range": "Date à date", "date_from": "Du", "date_to": "Au", "entity_type": "Type d'entité", diff --git a/frontend/modules/commercial/pages/commercial.vue b/frontend/modules/commercial/pages/commercial.vue index ac3c6f9..675419e 100644 --- a/frontend/modules/commercial/pages/commercial.vue +++ b/frontend/modules/commercial/pages/commercial.vue @@ -1,7 +1,7 @@ - {{ $t('commercial.title') }} - {{ $t('commercial.welcome') }} + {{ $t('commercial.title') }} + {{ $t('commercial.welcome') }} diff --git a/frontend/modules/core/components/PermissionAccordion.vue b/frontend/modules/core/components/PermissionAccordion.vue new file mode 100644 index 0000000..ddf4949 --- /dev/null +++ b/frontend/modules/core/components/PermissionAccordion.vue @@ -0,0 +1,71 @@ + + + + + + + emit('toggle-all', group.module, val)" + /> + + emit('toggle', perm.id, val)" + /> + + + + + + + diff --git a/frontend/modules/core/components/PermissionGroup.vue b/frontend/modules/core/components/PermissionGroup.vue deleted file mode 100644 index 8eb589f..0000000 --- a/frontend/modules/core/components/PermissionGroup.vue +++ /dev/null @@ -1,66 +0,0 @@ - - - - - - - {{ selectedCount }}/{{ permissions.length }} - - - - - - togglePermission(perm.id, val)" - /> - - - - - diff --git a/frontend/modules/core/components/RoleDrawer.vue b/frontend/modules/core/components/RoleDrawer.vue index cc76aaa..a357251 100644 --- a/frontend/modules/core/components/RoleDrawer.vue +++ b/frontend/modules/core/components/RoleDrawer.vue @@ -1,11 +1,17 @@ - + + + {{ isEditMode ? t('admin.roles.editRole') : t('admin.roles.createRole') }} + + + {{ t('admin.roles.permissions.noPermissions') }} - - - + - - - - - - + + + + + + + diff --git a/frontend/modules/core/pages/admin/roles.vue b/frontend/modules/core/pages/admin/roles.vue index 179dcc6..15d2e20 100644 --- a/frontend/modules/core/pages/admin/roles.vue +++ b/frontend/modules/core/pages/admin/roles.vue @@ -1,22 +1,20 @@ - - - - {{ t('admin.roles.title') }} - - - + + {{ t('admin.roles.title') }} + + + + - - - - {{ t('admin.users.title') }} - - + {{ t('admin.users.title') }} - {{ $t('dashboard.title') }} - {{ $t('dashboard.welcome') }} + {{ $t('dashboard.title') }} + {{ $t('dashboard.welcome') }} diff --git a/frontend/modules/sites/components/SiteDrawer.vue b/frontend/modules/sites/components/SiteDrawer.vue index 86fd26e..87b2dea 100644 --- a/frontend/modules/sites/components/SiteDrawer.vue +++ b/frontend/modules/sites/components/SiteDrawer.vue @@ -1,11 +1,17 @@ - + + + {{ isEditMode ? t('admin.sites.editSite') : t('admin.sites.createSite') }} + + + - - - - - - + + + + + + + diff --git a/frontend/modules/sites/pages/admin/sites.vue b/frontend/modules/sites/pages/admin/sites.vue index 468ba3e..c30abfc 100644 --- a/frontend/modules/sites/pages/admin/sites.vue +++ b/frontend/modules/sites/pages/admin/sites.vue @@ -1,22 +1,20 @@ - - - - {{ t('admin.sites.title') }} - - - + + {{ t('admin.sites.title') }} + + + + + + + + + + + + + + diff --git a/frontend/shared/types/rbac.ts b/frontend/shared/types/rbac.ts index 8213a87..a6a496f 100644 --- a/frontend/shared/types/rbac.ts +++ b/frontend/shared/types/rbac.ts @@ -43,3 +43,12 @@ export interface EffectivePermission { module: string sources: string[] } + +/** + * Groupement de permissions par module pour l'affichage en accordeon. + * Construit cote consommateur a partir de la liste plate /api/permissions. + */ +export interface PermissionModule { + module: string + permissions: Permission[] +}
{{ $t('commercial.welcome') }}
{{ $t('dashboard.welcome') }}