export const permissions = { settingsManage: "settings.manage", usersManage: "users.manage", projectsManage: "projects.manage", contentEdit: "content.edit", contentPublish: "content.publish", contentView: "content.view", }; const rolePermissions = { system_admin: Object.values(permissions), admin: [ permissions.usersManage, permissions.projectsManage, permissions.contentEdit, permissions.contentPublish, permissions.contentView, ], editor: [permissions.contentEdit, permissions.contentPublish, permissions.contentView], viewer: [permissions.contentView], user: [permissions.contentView], }; export function hasPermission(user, permission) { if (!user) return false; return Boolean(rolePermissions[user.role]?.includes(permission)); } export function publicPermissions(user) { return rolePermissions[user?.role] ?? []; }