import type { UserWarren } from '~/shared/types/warrens'; export type UserWarrenPermissionKey = | 'canListFiles' | 'canReadFiles' | 'canModifyFiles' | 'canDeleteFiles' | 'canListShares' | 'canListShares' | 'canCreateShares' | 'canModifyShares' | 'canDeleteShares'; export function getUserWarrenPermissions( userWarren: UserWarren ): [UserWarrenPermissionKey, boolean][] { return [ ['canListFiles', userWarren.canListFiles], ['canReadFiles', userWarren.canReadFiles], ['canModifyFiles', userWarren.canModifyFiles], ['canDeleteFiles', userWarren.canDeleteFiles], ['canListShares', userWarren.canListShares], ['canCreateShares', userWarren.canCreateShares], ['canModifyShares', userWarren.canModifyShares], ['canDeleteShares', userWarren.canDeleteShares], ]; } const PERMISSION_NAMES: Record = { canListFiles: 'List files', canReadFiles: 'Read files', canModifyFiles: 'Modify files', canDeleteFiles: 'Delete files', canListShares: 'List shares', canCreateShares: 'Create shares', canModifyShares: 'Modify shares', canDeleteShares: 'Delete shares', }; export function getUserWarrenPermissionName( permission: UserWarrenPermissionKey ): string { return PERMISSION_NAMES[permission]; }