Files
CRM_Montzar/apps/web/src/lib/assign-access.ts
T
MahdiandCursor 534dae45b2 feat(roles): let each section decide who may assign work to others
Section access now only creates a record for yourself. Assigning it to a colleague requires a separate permission on that section.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-11-03 13:15:21 +03:30

21 lines
507 B
TypeScript

import {
ASSIGN_SECTION_PERMISSION,
type AssignSection,
type RolePermissionKey,
} from '@mento/shared';
export function canAssignToOthers(
user:
| {
role?: string | null;
permissions?: Array<RolePermissionKey | string> | null;
}
| null
| undefined,
section: AssignSection,
): boolean {
if (!user) return false;
if (user.role === 'owner' || user.role === 'admin') return true;
return (user.permissions ?? []).includes(ASSIGN_SECTION_PERMISSION[section]);
}