32 lines
881 B
TypeScript
32 lines
881 B
TypeScript
import type { UserWarren } from '~/shared/types/warrens';
|
|
|
|
export type UserWarrenPermissionKey =
|
|
| 'canListFiles'
|
|
| 'canReadFiles'
|
|
| 'canModifyFiles'
|
|
| 'canDeleteFiles';
|
|
|
|
export function getUserWarrenPermissions(
|
|
userWarren: UserWarren
|
|
): [UserWarrenPermissionKey, boolean][] {
|
|
return [
|
|
['canListFiles', userWarren.canListFiles],
|
|
['canReadFiles', userWarren.canReadFiles],
|
|
['canModifyFiles', userWarren.canModifyFiles],
|
|
['canDeleteFiles', userWarren.canDeleteFiles],
|
|
];
|
|
}
|
|
|
|
const PERMISSION_NAMES: Record<UserWarrenPermissionKey, string> = {
|
|
canListFiles: 'List files',
|
|
canReadFiles: 'Read files',
|
|
canModifyFiles: 'Modify files',
|
|
canDeleteFiles: 'Delete files',
|
|
};
|
|
|
|
export function getUserWarrenPermissionName(
|
|
permission: UserWarrenPermissionKey
|
|
): string {
|
|
return PERMISSION_NAMES[permission];
|
|
}
|