UNPKG

n8n-nodes-arubacentral

Version:

n8n community node for Aruba Central API integration with comprehensive monitoring, configuration, and management capabilities

91 lines (87 loc) 3.12 kB
import { INodeProperties } from 'n8n-workflow'; import { addDescriptions } from '../../../helpers/deduplicate'; import { listSitesDescription } from './operations/listSites.descriptions'; import { createSiteDescription } from './operations/createSite.descriptions'; import { getSiteDetailsDescription } from './operations/getSiteDetails.descriptions'; import { updateSiteDescription } from './operations/updateSite.descriptions'; import { associateSiteToDeviceDescription } from './operations/associateSiteToDevice.descriptions'; import { unassociateSiteFromDeviceDescription } from './operations/unassociateSiteFromDevice.descriptions'; import { associateSiteToDevicesDescription } from './operations/associateSiteToDevices.descriptions'; import { unassociateSiteFromDevicesDescription } from './operations/unassociateSiteFromDevices.descriptions'; /** * Operation selector for the site resource */ export const siteOperationSelector: INodeProperties = { displayName: 'Operation', name: 'operation', type: 'options', noDataExpression: true, displayOptions: { show: { resource: ['site'], domain: ['monitoring'], }, }, options: [ { name: 'List Sites', value: 'listSites', description: 'Get a list of all sites', action: 'List sites', }, { name: 'Create Site', value: 'createSite', description: 'Create a new site', action: 'Create site', }, { name: 'Get Site Details', value: 'getSiteDetails', description: 'Get details of a specific site', action: 'Get site details', }, { name: 'Update Site', value: 'updateSite', description: 'Update a site', action: 'Update site', }, { name: 'Associate Site to Device', value: 'associateSiteToDevice', description: 'Associate a site to a device', action: 'Associate site to device', }, { name: 'Unassociate Site from Device', value: 'unassociateSiteFromDevice', description: 'Remove a site association from a device', action: 'Unassociate site from device', }, { name: 'Associate Site to Devices', value: 'associateSiteToDevices', description: 'Associate a site to multiple devices', action: 'Associate site to devices', }, { name: 'Unassociate Site from Devices', value: 'unassociateSiteFromDevices', description: 'Remove a site association from multiple devices', action: 'Unassociate site from devices', }, ], default: 'listSites', }; // Combined descriptions for all operations in this resource export const siteDescriptions: INodeProperties[] = [siteOperationSelector]; // Add each operation's descriptions addDescriptions(siteDescriptions, listSitesDescription); addDescriptions(siteDescriptions, createSiteDescription); addDescriptions(siteDescriptions, getSiteDetailsDescription); addDescriptions(siteDescriptions, updateSiteDescription); addDescriptions(siteDescriptions, associateSiteToDeviceDescription); addDescriptions(siteDescriptions, unassociateSiteFromDeviceDescription); addDescriptions(siteDescriptions, associateSiteToDevicesDescription); addDescriptions(siteDescriptions, unassociateSiteFromDevicesDescription);