Variable PERMISSIONSConst
PERMISSIONS: {
ADMIN: readonly [
"checkin",
"attendance",
"reports",
"students.add",
"students.edit",
"students.delete",
"students.search",
"users.view",
"users.create",
"users.edit",
"users.deactivate",
"users.resetPassword",
"settings",
"import-export",
"sessions.add",
"sessions.edit",
"nuclei.manage",
"classes.manage",
];
ADMINISTRATIVO_KIDS: readonly [
"students.read_full",
"students.add",
"students.edit",
"reports.full",
"volunteers.manage",
"sessions.add",
"sessions.edit",
"nuclei.manage",
"classes.manage",
"attendance",
"students.search",
];
CADASTRO: readonly [
"students.add",
"students.search",
"sessions.add",
"sessions.edit",
"nuclei.manage",
"classes.manage",
];
CHAMADOR: readonly ["checkin", "attendance", "students.search"];
COORDENACAO_KIDS: readonly [
"students.read_full",
"reports.consolidated",
"students.search",
"attendance",
"sessions.view_basic",
];
RELATORIOS: readonly ["reports", "students.search"];
RESPONSAVEL: readonly ["students.read_own", "students.write_limited"];
VOLUNTARIO: readonly [
"students.read_basic",
"sessions.view_basic",
"attendance",
];
} = ...
Type Declaration
-
ReadonlyADMIN: readonly [
"checkin",
"attendance",
"reports",
"students.add",
"students.edit",
"students.delete",
"students.search",
"users.view",
"users.create",
"users.edit",
"users.deactivate",
"users.resetPassword",
"settings",
"import-export",
"sessions.add",
"sessions.edit",
"nuclei.manage",
"classes.manage",
]
-
ReadonlyADMINISTRATIVO_KIDS: readonly [
"students.read_full",
"students.add",
"students.edit",
"reports.full",
"volunteers.manage",
"sessions.add",
"sessions.edit",
"nuclei.manage",
"classes.manage",
"attendance",
"students.search",
]
-
ReadonlyCADASTRO: readonly [
"students.add",
"students.search",
"sessions.add",
"sessions.edit",
"nuclei.manage",
"classes.manage",
]
-
ReadonlyCHAMADOR: readonly ["checkin", "attendance", "students.search"]
-
ReadonlyCOORDENACAO_KIDS: readonly [
"students.read_full",
"reports.consolidated",
"students.search",
"attendance",
"sessions.view_basic",
]
-
ReadonlyRELATORIOS: readonly ["reports", "students.search"]
-
ReadonlyRESPONSAVEL: readonly ["students.read_own", "students.write_limited"]
-
ReadonlyVOLUNTARIO: readonly ["students.read_basic", "sessions.view_basic", "attendance"]
Shared permissions definition — SINGLE SOURCE OF TRUTH.
Both frontend (Vite) and worker (Wrangler) import from this package.
Adding a new role = one entry in this map. The UserRole type updates automatically — no separate type definition to maintain.