From a60399883bbac18341f5993da0946b03699c07b5 Mon Sep 17 00:00:00 2001 From: Anthony LC Date: Wed, 10 Jul 2024 12:54:02 +0200 Subject: [PATCH] =?UTF-8?q?=F0=9F=8F=B7=EF=B8=8F(frontend)=20improve=20pro?= =?UTF-8?q?ps=20currentDocRole?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit props of currentDocRole is now more accurate. --- .../impress/src/features/docs/doc-management/utils.ts | 8 ++++---- .../src/features/docs/doc-tools/components/DocToolBox.tsx | 2 +- .../src/features/docs/docs-grid/components/DocsGrid.tsx | 4 +++- .../docs/members/members-grid/components/MemberGrid.tsx | 2 +- 4 files changed, 9 insertions(+), 7 deletions(-) diff --git a/src/frontend/apps/impress/src/features/docs/doc-management/utils.ts b/src/frontend/apps/impress/src/features/docs/doc-management/utils.ts index c1437e2f..be1105d3 100644 --- a/src/frontend/apps/impress/src/features/docs/doc-management/utils.ts +++ b/src/frontend/apps/impress/src/features/docs/doc-management/utils.ts @@ -1,11 +1,11 @@ import { Doc, Role } from './types'; -export const currentDocRole = (doc: Doc): Role => { - return doc.abilities.destroy +export const currentDocRole = (abilities: Doc['abilities']): Role => { + return abilities.destroy ? Role.OWNER - : doc.abilities.manage_accesses + : abilities.manage_accesses ? Role.ADMIN - : doc.abilities.partial_update + : abilities.partial_update ? Role.EDITOR : Role.READER; }; diff --git a/src/frontend/apps/impress/src/features/docs/doc-tools/components/DocToolBox.tsx b/src/frontend/apps/impress/src/features/docs/doc-tools/components/DocToolBox.tsx index b9324693..44d9104c 100644 --- a/src/frontend/apps/impress/src/features/docs/doc-tools/components/DocToolBox.tsx +++ b/src/frontend/apps/impress/src/features/docs/doc-tools/components/DocToolBox.tsx @@ -115,7 +115,7 @@ export const DocToolBox = ({ doc }: DocToolBoxProps) => { setIsModalAddMembersOpen(false)} doc={doc} - currentRole={currentDocRole(doc)} + currentRole={currentDocRole(doc.abilities)} /> )} {isModalPDFOpen && ( diff --git a/src/frontend/apps/impress/src/features/docs/docs-grid/components/DocsGrid.tsx b/src/frontend/apps/impress/src/features/docs/docs-grid/components/DocsGrid.tsx index 9d63d472..6eca072b 100644 --- a/src/frontend/apps/impress/src/features/docs/docs-grid/components/DocsGrid.tsx +++ b/src/frontend/apps/impress/src/features/docs/docs-grid/components/DocsGrid.tsx @@ -162,7 +162,9 @@ export const DocsGrid = () => { renderCell: ({ row }) => { return ( - {transRole(currentDocRole(row))} + + {transRole(currentDocRole(row.abilities))} + ); }, diff --git a/src/frontend/apps/impress/src/features/docs/members/members-grid/components/MemberGrid.tsx b/src/frontend/apps/impress/src/features/docs/members/members-grid/components/MemberGrid.tsx index db331f62..2f9b19f4 100644 --- a/src/frontend/apps/impress/src/features/docs/members/members-grid/components/MemberGrid.tsx +++ b/src/frontend/apps/impress/src/features/docs/members/members-grid/components/MemberGrid.tsx @@ -110,7 +110,7 @@ export const MemberGrid = ({ doc }: MemberGridProps) => { ); },