UNPKG

n8n-nodes-netbox

Version:

n8n community node for NetBox API integration with comprehensive DCIM, IPAM, and data center management operations

415 lines (414 loc) 12.4 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.roleFields = exports.roleOperations = void 0; const baseProperties_1 = require("../baseProperties"); // Role Operations exports.roleOperations = { ...baseProperties_1.baseProperties, displayName: 'Operation', name: 'operation', type: 'options', noDataExpression: true, displayOptions: { show: { domain: ['ipam'], resource: ['roles'], }, }, options: [ { name: 'List', value: 'list', description: 'Get all roles', action: 'List all roles', }, { name: 'Get', value: 'get', description: 'Get a specific role by ID, name, or slug', action: 'Get a role', }, { name: 'Create', value: 'create', description: 'Create a new role', action: 'Create a role', }, { name: 'Update', value: 'update', description: 'Update an existing role', action: 'Update a role', }, { name: 'Delete', value: 'delete', description: 'Delete a role', action: 'Delete a role', }, ], default: 'list', }; // Role Fields exports.roleFields = [ // List operation fields { ...baseProperties_1.returnAllOption, displayOptions: { show: { domain: ['ipam'], resource: ['roles'], operation: ['list'], }, }, }, { ...baseProperties_1.limitOption, displayOptions: { show: { domain: ['ipam'], resource: ['roles'], operation: ['list'], returnAll: [false], }, }, }, { displayName: 'Filters', name: 'filters', type: 'collection', placeholder: 'Add Filter', default: {}, displayOptions: { show: { domain: ['ipam'], resource: ['roles'], operation: ['list'], }, }, options: [ { displayName: 'Name', name: 'name', type: 'string', default: '', description: 'Filter by role name', }, { displayName: 'Name (Contains)', name: 'name__ic', type: 'string', default: '', description: 'Filter by roles containing this name', }, { displayName: 'Name (Exact Match)', name: 'name__ie', type: 'string', default: '', description: 'Filter by exact role name', }, { displayName: 'Name (Starts With)', name: 'name__isw', type: 'string', default: '', description: 'Filter by roles starting with name', }, { displayName: 'Name (Ends With)', name: 'name__iew', type: 'string', default: '', description: 'Filter by roles ending with name', }, { displayName: 'Slug', name: 'slug', type: 'string', default: '', description: 'Filter by role slug', }, { displayName: 'Slug (Contains)', name: 'slug__ic', type: 'string', default: '', description: 'Filter by roles containing this slug', }, { displayName: 'Slug (Exact Match)', name: 'slug__ie', type: 'string', default: '', description: 'Filter by exact role slug', }, { displayName: 'Description', name: 'description', type: 'string', default: '', description: 'Filter by description', }, { displayName: 'Description (Contains)', name: 'description__ic', type: 'string', default: '', description: 'Filter by roles containing this description', }, { displayName: 'ID', name: 'id', type: 'string', default: '', description: 'Filter by role ID (comma-separated for multiple)', }, { displayName: 'Created Before', name: 'created__lt', type: 'dateTime', default: '', description: 'Filter by created date (before)', }, { displayName: 'Created After', name: 'created__gt', type: 'dateTime', default: '', description: 'Filter by created date (after)', }, { displayName: 'Last Updated Before', name: 'last_updated__lt', type: 'dateTime', default: '', description: 'Filter by last updated date (before)', }, { displayName: 'Last Updated After', name: 'last_updated__gt', type: 'dateTime', default: '', description: 'Filter by last updated date (after)', }, { displayName: 'Tag', name: 'tag', type: 'string', default: '', description: 'Filter by tag (comma-separated for multiple)', }, { displayName: 'Search Query', name: 'q', type: 'string', default: '', description: 'Search query', }, { displayName: 'Ordering', name: 'ordering', type: 'options', options: [ { name: 'Name (A-Z)', value: 'name', }, { name: 'Name (Z-A)', value: '-name', }, { name: 'Slug (A-Z)', value: 'slug', }, { name: 'Slug (Z-A)', value: '-slug', }, { name: 'Weight (Low to High)', value: 'weight', }, { name: 'Weight (High to Low)', value: '-weight', }, { name: 'Description', value: 'description', }, { name: 'Created (Oldest First)', value: 'created', }, { name: 'Created (Newest First)', value: '-created', }, { name: 'Last Updated (Oldest First)', value: 'last_updated', }, { name: 'Last Updated (Newest First)', value: '-last_updated', }, ], default: 'name', description: 'Order of the results', }, ], }, // Get operation fields { displayName: 'Role ID, Name, or Slug', name: 'roleId', type: 'string', required: true, default: '', displayOptions: { show: { domain: ['ipam'], resource: ['roles'], operation: ['get', 'update', 'delete'], }, }, description: 'ID of the role, role name, or slug', }, // Create operation fields { displayName: 'Name', name: 'name', type: 'string', required: true, default: '', displayOptions: { show: { domain: ['ipam'], resource: ['roles'], operation: ['create'], }, }, description: 'Name of the role', }, { displayName: 'Slug', name: 'slug', type: 'string', required: false, default: '', displayOptions: { show: { domain: ['ipam'], resource: ['roles'], operation: ['create'], }, }, description: 'Slug of the role (auto-generated if empty)', }, { displayName: 'Additional Fields', name: 'additionalFields', type: 'collection', placeholder: 'Add Field', default: {}, displayOptions: { show: { domain: ['ipam'], resource: ['roles'], operation: ['create'], }, }, options: [ { displayName: 'Description', name: 'description', type: 'string', default: '', description: 'Description of the role', }, { displayName: 'Weight', name: 'weight', type: 'number', default: 1000, description: 'Weight determines processing order in various operations', }, { displayName: 'Tags', name: 'tags', type: 'string', default: '', description: 'Comma-separated list of tag IDs or tag names', }, { displayName: 'Custom Fields', name: 'custom_fields', type: 'json', default: '{}', description: 'Custom fields as JSON object', }, ], }, // Update operation fields { displayName: 'Update Fields', name: 'updateFields', type: 'collection', placeholder: 'Add Field', default: {}, displayOptions: { show: { domain: ['ipam'], resource: ['roles'], operation: ['update'], }, }, options: [ { displayName: 'Name', name: 'name', type: 'string', default: '', description: 'Name of the role', }, { displayName: 'Slug', name: 'slug', type: 'string', default: '', description: 'Slug of the role', }, { displayName: 'Description', name: 'description', type: 'string', default: '', description: 'Description of the role', }, { displayName: 'Weight', name: 'weight', type: 'number', default: 1000, description: 'Weight determines processing order in various operations', }, { displayName: 'Tags', name: 'tags', type: 'string', default: '', description: 'Comma-separated list of tag IDs or tag names', }, { displayName: 'Custom Fields', name: 'custom_fields', type: 'json', default: '{}', description: 'Custom fields as JSON object', }, ], }, ];