Feat: role applicability controls (#14239)

Closes [#1404](https://github.com/twentyhq/core-team-issues/issues/1404)

---------

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
This commit is contained in:
Abdul Rahman
2025-09-04 08:58:50 +05:30
committed by GitHub
parent 052f91cff1
commit 79bcd90d8d
72 changed files with 1889 additions and 344 deletions
@@ -15,6 +15,11 @@ const rolesMock: Role[] = [
canUpdateAllSettings: true,
canAccessAllTools: true,
isEditable: false,
canBeAssignedToUsers: true,
canBeAssignedToAgents: true,
canBeAssignedToApiKeys: true,
agents: [],
apiKeys: [],
workspaceMembers: [mockWorkspaceMembers[0]],
permissionFlags: [
{
@@ -48,6 +53,11 @@ const rolesMock: Role[] = [
canUpdateAllSettings: false,
canAccessAllTools: false,
isEditable: true,
canBeAssignedToUsers: true,
canBeAssignedToAgents: true,
canBeAssignedToApiKeys: true,
agents: [],
apiKeys: [],
workspaceMembers: [mockWorkspaceMembers[1]],
permissionFlags: [],
objectPermissions: [
@@ -59,9 +59,14 @@ export const BASE_ROLE_MOCK_GRANTS_ALL: Role = {
canSoftDeleteAllObjectRecords: true,
canDestroyAllObjectRecords: true,
canUpdateAllSettings: true,
canBeAssignedToUsers: true,
canBeAssignedToAgents: true,
canBeAssignedToApiKeys: true,
id: MOCK_ROLE_ID_GRANTS_ALL,
isEditable: true,
label: 'Role grants all',
agents: [],
apiKeys: [],
workspaceMembers: [],
fieldPermissions: [
{ ...BASE_FIELD_PERMISSION, roleId: MOCK_ROLE_ID_GRANTS_ALL },
@@ -84,9 +89,14 @@ export const BASE_ROLE_MOCK_REVOKES_ALL: Role = {
canSoftDeleteAllObjectRecords: false,
canDestroyAllObjectRecords: false,
canUpdateAllSettings: true,
canBeAssignedToUsers: true,
canBeAssignedToAgents: true,
canBeAssignedToApiKeys: true,
id: MOCK_ROLE_ID_REVOKES_ALL,
isEditable: true,
label: 'Role revokes all',
agents: [],
apiKeys: [],
workspaceMembers: [],
fieldPermissions: [
{ ...BASE_FIELD_PERMISSION, roleId: MOCK_ROLE_ID_REVOKES_ALL },