UNPKG

n8n-nodes-arubacentralnextgen

Version:

n8n community node for Aruba Central NextGen API integration with modern monitoring and management capabilities

671 lines (670 loc) 40.4 kB
"use strict"; // descriptions/configuration/rolesPolicy.descriptions.ts Object.defineProperty(exports, "__esModule", { value: true }); exports.rolesPolicyFields = exports.rolesPolicyOperations = void 0; /** * Roles & Policy Configuration Operations * Resource for managing Policy Groups, Roles, Policies, Role GPIDs, and Role ACLs * API Reference: https://developer.arubanetworks.com/new-central-config/reference * * This resource includes: * - Policy Groups: Groupings of policies for configuration management * - Roles: User role definitions * - Policies: Network policy configurations * - Role GPIDs: Roles with group policy identifiers * - Role ACLs: Access control lists for roles */ exports.rolesPolicyOperations = { displayName: 'Operation', name: 'operation', type: 'options', noDataExpression: true, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], }, }, options: [ // ============================================================================ // Policy Groups Operations // ============================================================================ { name: 'Get All Policy Groups', value: 'getAllPolicyGroups', description: 'Read all policy groups', action: 'Get all policy groups', }, { name: 'Create Policy Group', value: 'createPolicyGroup', description: 'Create a new policy group', action: 'Create policy group', }, { name: 'Update Policy Group', value: 'updatePolicyGroup', description: 'Update an existing policy group', action: 'Update policy group', }, { name: 'Delete Policy Group', value: 'deletePolicyGroup', description: 'Delete a policy group', action: 'Delete policy group', }, // ============================================================================ // Roles Operations // ============================================================================ { name: 'Get All Roles', value: 'getAllRoles', description: 'Read all roles', action: 'Get all roles', }, { name: 'Get Role', value: 'getRole', description: 'Read a specific role by name', action: 'Get a role', }, { name: 'Create Role', value: 'createRole', description: 'Create a new role by unique name', action: 'Create role', }, { name: 'Update Role', value: 'updateRole', description: 'Update an existing role', action: 'Update role', }, { name: 'Delete Role', value: 'deleteRole', description: 'Delete a role by name', action: 'Delete role', }, // ============================================================================ // Policies Operations // ============================================================================ { name: 'Get All Policies', value: 'getAllPolicies', description: 'Read all policies', action: 'Get all policies', }, { name: 'Get Policy', value: 'getPolicy', description: 'Read a specific policy by name', action: 'Get a policy', }, { name: 'Create Policy', value: 'createPolicy', description: 'Create a new policy by unique name', action: 'Create policy', }, { name: 'Update Policy', value: 'updatePolicy', description: 'Update an existing policy', action: 'Update policy', }, { name: 'Delete Policy', value: 'deletePolicy', description: 'Delete a policy by name', action: 'Delete policy', }, // ============================================================================ // Role GPIDs Operations // ============================================================================ { name: 'Get All Role GPIDs', value: 'getAllRoleGpids', description: 'Read all roles with group policy identifiers', action: 'Get all role gpids', }, { name: 'Get Role GPID', value: 'getRoleGpid', description: 'Read a specific role GPID by name', action: 'Get a role gpid', }, { name: 'Create Role GPID', value: 'createRoleGpid', description: 'Create a new role with GPID', action: 'Create role gpid', }, { name: 'Update Role GPID', value: 'updateRoleGpid', description: 'Update an existing role GPID', action: 'Update role gpid', }, { name: 'Delete Role GPID', value: 'deleteRoleGpid', description: 'Delete a role GPID by name', action: 'Delete role gpid', }, // ============================================================================ // Role ACLs Operations // ============================================================================ { name: 'Get All Role ACLs', value: 'getAllRoleAcls', description: 'Read all role access control lists', action: 'Get all role acls', }, { name: 'Get Role ACL', value: 'getRoleAcl', description: 'Read a specific role ACL by name', action: 'Get a role acl', }, { name: 'Create Role ACL', value: 'createRoleAcl', description: 'Add a new role ACL', action: 'Create role acl', }, { name: 'Update Role ACL', value: 'updateRoleAcl', description: 'Update an existing role ACL', action: 'Update role acl', }, { name: 'Delete Role ACL', value: 'deleteRoleAcl', description: 'Delete a role ACL by name', action: 'Delete role acl', }, ], default: 'getAllPolicyGroups', }; // ============================================================================ // Policy Groups Fields // ============================================================================ const getAllPolicyGroupsFields = [ { displayName: 'Limit', name: 'limit', type: 'number', required: true, default: 100, description: 'Limit for pagination', typeOptions: { minValue: 1, maxValue: 1000, }, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['getAllPolicyGroups'], }, }, }, { displayName: 'Offset', name: 'offset', type: 'number', required: true, default: 0, description: 'Offset for pagination', typeOptions: { minValue: 0, }, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['getAllPolicyGroups'], }, }, }, { displayName: 'Additional Fields', name: 'additionalFields', type: 'collection', placeholder: 'Add Field', default: {}, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['getAllPolicyGroups'], }, }, options: [ { displayName: 'View Type', name: 'viewType', type: 'options', default: 'LIBRARY', description: 'LIBRARY - Returns shared objects in library. LOCAL - Returns configurations for a scope and persona.', options: [ { name: 'Library', value: 'LIBRARY' }, { name: 'Local', value: 'LOCAL' }, ], }, { displayName: 'Object Type', name: 'objectType', type: 'options', default: 'SHARED', description: 'Retrieves LOCAL or SHARED or both configuration objects', options: [ { name: 'Local', value: 'LOCAL' }, { name: 'Shared', value: 'SHARED' }, { name: 'Both', value: 'BOTH' }, ], }, { displayName: 'Scope ID', name: 'scopeId', type: 'string', default: '', description: 'Scope ID (mandatory for view_type = LOCAL)', placeholder: 'scope-123', }, { displayName: 'Persona', name: 'persona', type: 'string', default: '', description: 'Filters configuration specific to given persona type', }, { displayName: 'Detailed', name: 'detailed', type: 'boolean', default: false, description: 'Whether to include annotations in the returned json', }, { displayName: 'Effective', name: 'effective', type: 'boolean', default: false, description: 'Whether to return effective configuration (hierarchically merged)', }, ], }, ]; const createPolicyGroupFields = [ { displayName: 'Body', name: 'body', type: 'json', required: true, default: '{}', description: 'Policy group configuration in JSON format', displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['createPolicyGroup'], }, }, }, { displayName: 'Additional Fields', name: 'additionalFields', type: 'collection', placeholder: 'Add Field', default: {}, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['createPolicyGroup'], }, }, options: [ { displayName: 'Object Type', name: 'objectType', type: 'options', default: 'SHARED', description: 'LOCAL - To create local objects. SHARED - To create shared objects.', options: [ { name: 'Local', value: 'LOCAL' }, { name: 'Shared', value: 'SHARED' }, ], }, { displayName: 'Scope ID', name: 'scopeId', type: 'string', default: '', description: 'Scope ID (mandatory for object_type = LOCAL)', placeholder: 'scope-123', }, { displayName: 'Persona', name: 'persona', type: 'string', default: '', description: 'Persona (mandatory for object_type = LOCAL)', }, ], }, ]; const updatePolicyGroupFields = [ { displayName: 'Body', name: 'body', type: 'json', required: true, default: '{}', description: 'Policy group configuration in JSON format', displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['updatePolicyGroup'], }, }, }, { displayName: 'Additional Fields', name: 'additionalFields', type: 'collection', placeholder: 'Add Field', default: {}, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['updatePolicyGroup'], }, }, options: [ { displayName: 'Object Type', name: 'objectType', type: 'options', default: 'SHARED', description: 'LOCAL - To update local objects. SHARED - To update shared objects.', options: [ { name: 'Local', value: 'LOCAL' }, { name: 'Shared', value: 'SHARED' }, ], }, { displayName: 'Scope ID', name: 'scopeId', type: 'string', default: '', description: 'Scope ID (mandatory for object_type = LOCAL)', placeholder: 'scope-123', }, { displayName: 'Persona', name: 'persona', type: 'string', default: '', description: 'Persona (mandatory for object_type = LOCAL)', }, ], }, ]; const deletePolicyGroupFields = [ { displayName: 'Additional Fields', name: 'additionalFields', type: 'collection', placeholder: 'Add Field', default: {}, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['deletePolicyGroup'], }, }, options: [ { displayName: 'Object Type', name: 'objectType', type: 'options', default: 'SHARED', description: 'LOCAL - To delete local objects. SHARED - To delete shared objects.', options: [ { name: 'Local', value: 'LOCAL' }, { name: 'Shared', value: 'SHARED' }, ], }, { displayName: 'Scope ID', name: 'scopeId', type: 'string', default: '', description: 'Scope ID (mandatory for object_type = LOCAL)', placeholder: 'scope-123', }, { displayName: 'Persona', name: 'persona', type: 'string', default: '', description: 'Persona (mandatory for object_type = LOCAL)', }, ], }, ]; // ============================================================================ // Roles Fields // ============================================================================ const getAllRolesFields = [ { displayName: 'Limit', name: 'limit', type: 'number', required: true, default: 100, description: 'Limit for pagination', typeOptions: { minValue: 1, maxValue: 1000 }, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['getAllRoles'] } }, }, { displayName: 'Offset', name: 'offset', type: 'number', required: true, default: 0, description: 'Offset for pagination', typeOptions: { minValue: 0 }, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['getAllRoles'] } }, }, { displayName: 'Additional Fields', name: 'additionalFields', type: 'collection', placeholder: 'Add Field', default: {}, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['getAllRoles'] } }, options: [ { displayName: 'View Type', name: 'viewType', type: 'options', default: 'LIBRARY', options: [{ name: 'Library', value: 'LIBRARY' }, { name: 'Local', value: 'LOCAL' }] }, { displayName: 'Object Type', name: 'objectType', type: 'options', default: 'SHARED', options: [{ name: 'Local', value: 'LOCAL' }, { name: 'Shared', value: 'SHARED' }, { name: 'Both', value: 'BOTH' }] }, { displayName: 'Scope ID', name: 'scopeId', type: 'string', default: '', placeholder: 'scope-123' }, { displayName: 'Persona', name: 'persona', type: 'string', default: '' }, { displayName: 'Detailed', name: 'detailed', type: 'boolean', default: false }, { displayName: 'Effective', name: 'effective', type: 'boolean', default: false }, ], }, ]; const getRoleFields = [ { displayName: 'Name', name: 'name', type: 'string', required: true, default: '', description: 'Unique name of the role', placeholder: 'my-role', displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['getRole'] } }, }, { displayName: 'Additional Fields', name: 'additionalFields', type: 'collection', placeholder: 'Add Field', default: {}, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['getRole'] } }, options: [ { displayName: 'View Type', name: 'viewType', type: 'options', default: 'LIBRARY', options: [{ name: 'Library', value: 'LIBRARY' }, { name: 'Local', value: 'LOCAL' }] }, { displayName: 'Object Type', name: 'objectType', type: 'options', default: 'SHARED', options: [{ name: 'Local', value: 'LOCAL' }, { name: 'Shared', value: 'SHARED' }, { name: 'Both', value: 'BOTH' }] }, { displayName: 'Scope ID', name: 'scopeId', type: 'string', default: '', placeholder: 'scope-123' }, { displayName: 'Persona', name: 'persona', type: 'string', default: '' }, { displayName: 'Detailed', name: 'detailed', type: 'boolean', default: false }, { displayName: 'Effective', name: 'effective', type: 'boolean', default: false }, ], }, ]; const createRoleFields = [ { displayName: 'Name', name: 'name', type: 'string', required: true, default: '', description: 'Unique name of the role', placeholder: 'my-role', displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['createRole'] } }, }, { displayName: 'Body', name: 'body', type: 'json', required: true, default: '{}', description: 'Role configuration in JSON format', displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['createRole'] } }, }, { displayName: 'Additional Fields', name: 'additionalFields', type: 'collection', placeholder: 'Add Field', default: {}, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['createRole'] } }, options: [ { displayName: 'Object Type', name: 'objectType', type: 'options', default: 'SHARED', options: [{ name: 'Local', value: 'LOCAL' }, { name: 'Shared', value: 'SHARED' }] }, { displayName: 'Scope ID', name: 'scopeId', type: 'string', default: '', placeholder: 'scope-123' }, { displayName: 'Persona', name: 'persona', type: 'string', default: '' }, ], }, ]; const updateRoleFields = [ { displayName: 'Name', name: 'name', type: 'string', required: true, default: '', description: 'Unique name of the role', placeholder: 'my-role', displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['updateRole'] } }, }, { displayName: 'Body', name: 'body', type: 'json', required: true, default: '{}', description: 'Role configuration in JSON format', displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['updateRole'] } }, }, { displayName: 'Additional Fields', name: 'additionalFields', type: 'collection', placeholder: 'Add Field', default: {}, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['updateRole'] } }, options: [ { displayName: 'Object Type', name: 'objectType', type: 'options', default: 'SHARED', options: [{ name: 'Local', value: 'LOCAL' }, { name: 'Shared', value: 'SHARED' }] }, { displayName: 'Scope ID', name: 'scopeId', type: 'string', default: '', placeholder: 'scope-123' }, { displayName: 'Persona', name: 'persona', type: 'string', default: '' }, ], }, ]; const deleteRoleFields = [ { displayName: 'Name', name: 'name', type: 'string', required: true, default: '', description: 'Unique name of the role', placeholder: 'my-role', displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['deleteRole'] } }, }, { displayName: 'Additional Fields', name: 'additionalFields', type: 'collection', placeholder: 'Add Field', default: {}, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['deleteRole'] } }, options: [ { displayName: 'Object Type', name: 'objectType', type: 'options', default: 'SHARED', options: [{ name: 'Local', value: 'LOCAL' }, { name: 'Shared', value: 'SHARED' }] }, { displayName: 'Scope ID', name: 'scopeId', type: 'string', default: '', placeholder: 'scope-123' }, { displayName: 'Persona', name: 'persona', type: 'string', default: '' }, ], }, ]; // ================================================================== // Policies, Role GPIDs, and Role ACLs (using compact syntax for efficiency) // ================================================================== // Note: These use condensed TypeScript syntax - all fields follow the same pattern as above const getAllPoliciesFields = [{ displayName: 'Limit', name: 'limit', type: 'number', required: true, default: 100, typeOptions: { minValue: 1, maxValue: 1000 }, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['getAllPolicies'] } } }, { displayName: 'Offset', name: 'offset', type: 'number', required: true, default: 0, typeOptions: { minValue: 0 }, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['getAllPolicies'] } } }, { displayName: 'Additional Fields', name: 'additionalFields', type: 'collection', placeholder: 'Add Field', default: {}, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['getAllPolicies'] } }, options: [{ displayName: 'View Type', name: 'viewType', type: 'options', default: 'LIBRARY', options: [{ name: 'Library', value: 'LIBRARY' }, { name: 'Local', value: 'LOCAL' }] }, { displayName: 'Object Type', name: 'objectType', type: 'options', default: 'SHARED', options: [{ name: 'Local', value: 'LOCAL' }, { name: 'Shared', value: 'SHARED' }, { name: 'Both', value: 'BOTH' }] }, { displayName: 'Scope ID', name: 'scopeId', type: 'string', default: '', placeholder: 'scope-123' }, { displayName: 'Persona', name: 'persona', type: 'string', default: '' }, { displayName: 'Detailed', name: 'detailed', type: 'boolean', default: false }, { displayName: 'Effective', name: 'effective', type: 'boolean', default: false }] }]; const getPolicyFields = [{ displayName: 'Name', name: 'name', type: 'string', required: true, default: '', placeholder: 'my-policy', displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['getPolicy'] } } }, { displayName: 'Additional Fields', name: 'additionalFields', type: 'collection', placeholder: 'Add Field', default: {}, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['getPolicy'] } }, options: [{ displayName: 'View Type', name: 'viewType', type: 'options', default: 'LIBRARY', options: [{ name: 'Library', value: 'LIBRARY' }, { name: 'Local', value: 'LOCAL' }] }, { displayName: 'Object Type', name: 'objectType', type: 'options', default: 'SHARED', options: [{ name: 'Local', value: 'LOCAL' }, { name: 'Shared', value: 'SHARED' }, { name: 'Both', value: 'BOTH' }] }, { displayName: 'Scope ID', name: 'scopeId', type: 'string', default: '', placeholder: 'scope-123' }, { displayName: 'Persona', name: 'persona', type: 'string', default: '' }, { displayName: 'Detailed', name: 'detailed', type: 'boolean', default: false }, { displayName: 'Effective', name: 'effective', type: 'boolean', default: false }] }]; const createPolicyFields = [{ displayName: 'Name', name: 'name', type: 'string', required: true, default: '', placeholder: 'my-policy', displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['createPolicy'] } } }, { displayName: 'Body', name: 'body', type: 'json', required: true, default: '{}', displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['createPolicy'] } } }, { displayName: 'Additional Fields', name: 'additionalFields', type: 'collection', placeholder: 'Add Field', default: {}, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['createPolicy'] } }, options: [{ displayName: 'Object Type', name: 'objectType', type: 'options', default: 'SHARED', options: [{ name: 'Local', value: 'LOCAL' }, { name: 'Shared', value: 'SHARED' }] }, { displayName: 'Scope ID', name: 'scopeId', type: 'string', default: '', placeholder: 'scope-123' }, { displayName: 'Persona', name: 'persona', type: 'string', default: '' }] }]; const updatePolicyFields = [{ displayName: 'Name', name: 'name', type: 'string', required: true, default: '', placeholder: 'my-policy', displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['updatePolicy'] } } }, { displayName: 'Body', name: 'body', type: 'json', required: true, default: '{}', displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['updatePolicy'] } } }, { displayName: 'Additional Fields', name: 'additionalFields', type: 'collection', placeholder: 'Add Field', default: {}, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['updatePolicy'] } }, options: [{ displayName: 'Object Type', name: 'objectType', type: 'options', default: 'SHARED', options: [{ name: 'Local', value: 'LOCAL' }, { name: 'Shared', value: 'SHARED' }] }, { displayName: 'Scope ID', name: 'scopeId', type: 'string', default: '', placeholder: 'scope-123' }, { displayName: 'Persona', name: 'persona', type: 'string', default: '' }] }]; const deletePolicyFields = [{ displayName: 'Name', name: 'name', type: 'string', required: true, default: '', placeholder: 'my-policy', displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['deletePolicy'] } } }, { displayName: 'Additional Fields', name: 'additionalFields', type: 'collection', placeholder: 'Add Field', default: {}, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['deletePolicy'] } }, options: [{ displayName: 'Object Type', name: 'objectType', type: 'options', default: 'SHARED', options: [{ name: 'Local', value: 'LOCAL' }, { name: 'Shared', value: 'SHARED' }] }, { displayName: 'Scope ID', name: 'scopeId', type: 'string', default: '', placeholder: 'scope-123' }, { displayName: 'Persona', name: 'persona', type: 'string', default: '' }] }]; const getAllRoleGpidsFields = [{ displayName: 'Limit', name: 'limit', type: 'number', required: true, default: 100, typeOptions: { minValue: 1, maxValue: 1000 }, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['getAllRoleGpids'] } } }, { displayName: 'Offset', name: 'offset', type: 'number', required: true, default: 0, typeOptions: { minValue: 0 }, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['getAllRoleGpids'] } } }, { displayName: 'Additional Fields', name: 'additionalFields', type: 'collection', placeholder: 'Add Field', default: {}, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['getAllRoleGpids'] } }, options: [{ displayName: 'View Type', name: 'viewType', type: 'options', default: 'LIBRARY', options: [{ name: 'Library', value: 'LIBRARY' }, { name: 'Local', value: 'LOCAL' }] }, { displayName: 'Object Type', name: 'objectType', type: 'options', default: 'SHARED', options: [{ name: 'Local', value: 'LOCAL' }, { name: 'Shared', value: 'SHARED' }, { name: 'Both', value: 'BOTH' }] }, { displayName: 'Scope ID', name: 'scopeId', type: 'string', default: '', placeholder: 'scope-123' }, { displayName: 'Persona', name: 'persona', type: 'string', default: '' }, { displayName: 'Detailed', name: 'detailed', type: 'boolean', default: false }, { displayName: 'Effective', name: 'effective', type: 'boolean', default: false }] }]; const getRoleGpidFields = [{ displayName: 'Name', name: 'name', type: 'string', required: true, default: '', placeholder: 'my-role-gpid', displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['getRoleGpid'] } } }, { displayName: 'Additional Fields', name: 'additionalFields', type: 'collection', placeholder: 'Add Field', default: {}, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['getRoleGpid'] } }, options: [{ displayName: 'View Type', name: 'viewType', type: 'options', default: 'LIBRARY', options: [{ name: 'Library', value: 'LIBRARY' }, { name: 'Local', value: 'LOCAL' }] }, { displayName: 'Object Type', name: 'objectType', type: 'options', default: 'SHARED', options: [{ name: 'Local', value: 'LOCAL' }, { name: 'Shared', value: 'SHARED' }, { name: 'Both', value: 'BOTH' }] }, { displayName: 'Scope ID', name: 'scopeId', type: 'string', default: '', placeholder: 'scope-123' }, { displayName: 'Persona', name: 'persona', type: 'string', default: '' }, { displayName: 'Detailed', name: 'detailed', type: 'boolean', default: false }, { displayName: 'Effective', name: 'effective', type: 'boolean', default: false }] }]; const createRoleGpidFields = [{ displayName: 'Name', name: 'name', type: 'string', required: true, default: '', placeholder: 'my-role-gpid', displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['createRoleGpid'] } } }, { displayName: 'Body', name: 'body', type: 'json', required: true, default: '{}', displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['createRoleGpid'] } } }, { displayName: 'Additional Fields', name: 'additionalFields', type: 'collection', placeholder: 'Add Field', default: {}, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['createRoleGpid'] } }, options: [{ displayName: 'Object Type', name: 'objectType', type: 'options', default: 'SHARED', options: [{ name: 'Local', value: 'LOCAL' }, { name: 'Shared', value: 'SHARED' }] }, { displayName: 'Scope ID', name: 'scopeId', type: 'string', default: '', placeholder: 'scope-123' }, { displayName: 'Persona', name: 'persona', type: 'string', default: '' }] }]; const updateRoleGpidFields = [{ displayName: 'Name', name: 'name', type: 'string', required: true, default: '', placeholder: 'my-role-gpid', displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['updateRoleGpid'] } } }, { displayName: 'Body', name: 'body', type: 'json', required: true, default: '{}', displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['updateRoleGpid'] } } }, { displayName: 'Additional Fields', name: 'additionalFields', type: 'collection', placeholder: 'Add Field', default: {}, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['updateRoleGpid'] } }, options: [{ displayName: 'Object Type', name: 'objectType', type: 'options', default: 'SHARED', options: [{ name: 'Local', value: 'LOCAL' }, { name: 'Shared', value: 'SHARED' }] }, { displayName: 'Scope ID', name: 'scopeId', type: 'string', default: '', placeholder: 'scope-123' }, { displayName: 'Persona', name: 'persona', type: 'string', default: '' }] }]; const deleteRoleGpidFields = [{ displayName: 'Name', name: 'name', type: 'string', required: true, default: '', placeholder: 'my-role-gpid', displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['deleteRoleGpid'] } } }, { displayName: 'Additional Fields', name: 'additionalFields', type: 'collection', placeholder: 'Add Field', default: {}, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['deleteRoleGpid'] } }, options: [{ displayName: 'Object Type', name: 'objectType', type: 'options', default: 'SHARED', options: [{ name: 'Local', value: 'LOCAL' }, { name: 'Shared', value: 'SHARED' }] }, { displayName: 'Scope ID', name: 'scopeId', type: 'string', default: '', placeholder: 'scope-123' }, { displayName: 'Persona', name: 'persona', type: 'string', default: '' }] }]; const getAllRoleAclsFields = [{ displayName: 'Limit', name: 'limit', type: 'number', required: true, default: 100, typeOptions: { minValue: 1, maxValue: 1000 }, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['getAllRoleAcls'] } } }, { displayName: 'Offset', name: 'offset', type: 'number', required: true, default: 0, typeOptions: { minValue: 0 }, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['getAllRoleAcls'] } } }, { displayName: 'Additional Fields', name: 'additionalFields', type: 'collection', placeholder: 'Add Field', default: {}, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['getAllRoleAcls'] } }, options: [{ displayName: 'View Type', name: 'viewType', type: 'options', default: 'LIBRARY', options: [{ name: 'Library', value: 'LIBRARY' }, { name: 'Local', value: 'LOCAL' }] }, { displayName: 'Object Type', name: 'objectType', type: 'options', default: 'SHARED', options: [{ name: 'Local', value: 'LOCAL' }, { name: 'Shared', value: 'SHARED' }, { name: 'Both', value: 'BOTH' }] }, { displayName: 'Scope ID', name: 'scopeId', type: 'string', default: '', placeholder: 'scope-123' }, { displayName: 'Persona', name: 'persona', type: 'string', default: '' }, { displayName: 'Detailed', name: 'detailed', type: 'boolean', default: false }, { displayName: 'Effective', name: 'effective', type: 'boolean', default: false }] }]; const getRoleAclFields = [{ displayName: 'Name', name: 'name', type: 'string', required: true, default: '', placeholder: 'my-role-acl', displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['getRoleAcl'] } } }, { displayName: 'Additional Fields', name: 'additionalFields', type: 'collection', placeholder: 'Add Field', default: {}, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['getRoleAcl'] } }, options: [{ displayName: 'View Type', name: 'viewType', type: 'options', default: 'LIBRARY', options: [{ name: 'Library', value: 'LIBRARY' }, { name: 'Local', value: 'LOCAL' }] }, { displayName: 'Object Type', name: 'objectType', type: 'options', default: 'SHARED', options: [{ name: 'Local', value: 'LOCAL' }, { name: 'Shared', value: 'SHARED' }, { name: 'Both', value: 'BOTH' }] }, { displayName: 'Scope ID', name: 'scopeId', type: 'string', default: '', placeholder: 'scope-123' }, { displayName: 'Persona', name: 'persona', type: 'string', default: '' }, { displayName: 'Detailed', name: 'detailed', type: 'boolean', default: false }, { displayName: 'Effective', name: 'effective', type: 'boolean', default: false }] }]; const createRoleAclFields = [{ displayName: 'Name', name: 'name', type: 'string', required: true, default: '', placeholder: 'my-role-acl', displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['createRoleAcl'] } } }, { displayName: 'Body', name: 'body', type: 'json', required: true, default: '{}', displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['createRoleAcl'] } } }, { displayName: 'Additional Fields', name: 'additionalFields', type: 'collection', placeholder: 'Add Field', default: {}, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['createRoleAcl'] } }, options: [{ displayName: 'Object Type', name: 'objectType', type: 'options', default: 'SHARED', options: [{ name: 'Local', value: 'LOCAL' }, { name: 'Shared', value: 'SHARED' }] }, { displayName: 'Scope ID', name: 'scopeId', type: 'string', default: '', placeholder: 'scope-123' }, { displayName: 'Persona', name: 'persona', type: 'string', default: '' }] }]; const updateRoleAclFields = [{ displayName: 'Name', name: 'name', type: 'string', required: true, default: '', placeholder: 'my-role-acl', displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['updateRoleAcl'] } } }, { displayName: 'Body', name: 'body', type: 'json', required: true, default: '{}', displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['updateRoleAcl'] } } }, { displayName: 'Additional Fields', name: 'additionalFields', type: 'collection', placeholder: 'Add Field', default: {}, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['updateRoleAcl'] } }, options: [{ displayName: 'Object Type', name: 'objectType', type: 'options', default: 'SHARED', options: [{ name: 'Local', value: 'LOCAL' }, { name: 'Shared', value: 'SHARED' }] }, { displayName: 'Scope ID', name: 'scopeId', type: 'string', default: '', placeholder: 'scope-123' }, { displayName: 'Persona', name: 'persona', type: 'string', default: '' }] }]; const deleteRoleAclFields = [{ displayName: 'Name', name: 'name', type: 'string', required: true, default: '', placeholder: 'my-role-acl', displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['deleteRoleAcl'] } } }, { displayName: 'Additional Fields', name: 'additionalFields', type: 'collection', placeholder: 'Add Field', default: {}, displayOptions: { show: { domain: ['configuration'], resource: ['rolesPolicy'], operation: ['deleteRoleAcl'] } }, options: [{ displayName: 'Object Type', name: 'objectType', type: 'options', default: 'SHARED', options: [{ name: 'Local', value: 'LOCAL' }, { name: 'Shared', value: 'SHARED' }] }, { displayName: 'Scope ID', name: 'scopeId', type: 'string', default: '', placeholder: 'scope-123' }, { displayName: 'Persona', name: 'persona', type: 'string', default: '' }] }]; // Export all field definitions exports.rolesPolicyFields = [ ...getAllPolicyGroupsFields, ...createPolicyGroupFields, ...updatePolicyGroupFields, ...deletePolicyGroupFields, ...getAllRolesFields, ...getRoleFields, ...createRoleFields, ...updateRoleFields, ...deleteRoleFields, ...getAllPoliciesFields, ...getPolicyFields, ...createPolicyFields, ...updatePolicyFields, ...deletePolicyFields, ...getAllRoleGpidsFields, ...getRoleGpidFields, ...createRoleGpidFields, ...updateRoleGpidFields, ...deleteRoleGpidFields, ...getAllRoleAclsFields, ...getRoleAclFields, ...createRoleAclFields, ...updateRoleAclFields, ...deleteRoleAclFields, ];