n8n-nodes-arubacentralnextgen
Version:
n8n community node for Aruba Central NextGen API integration with modern monitoring and management capabilities
445 lines (444 loc) • 13 kB
JavaScript
"use strict";
// descriptions/baseProperties.ts
Object.defineProperty(exports, "__esModule", { value: true });
exports.resourceOptions = exports.domainOptions = void 0;
// Define domain options
exports.domainOptions = {
displayName: 'Domain',
name: 'domain',
type: 'options',
options: [
{
name: 'Monitoring',
value: 'monitoring',
description: 'Monitor devices, clients, and sites',
},
{
name: 'Configuration',
value: 'configuration',
description: 'Configure devices, groups, and profiles',
},
{
name: 'Interfaces',
value: 'interfaces',
description: 'Configure ethernet interfaces, port channels, LACP, loopback, and LLDP',
},
{
name: 'Routing',
value: 'routing',
description: 'Configure static routes, OSPFv2, BGP, and VRF',
},
{
name: 'Network Services',
value: 'networkServices',
description: 'Configure DHCP and QoS profiles',
},
{
name: 'Security',
value: 'security',
description: 'Configure firewall, port security, and MAC authentication',
},
{
name: 'Management',
value: 'management',
description: 'Manage config checkpoints, persona assignments, firmware policies, and HA',
},
{
name: 'System',
value: 'system',
description: 'Manage config assignments, NTP, SNMP, syslog, and system settings',
},
],
default: 'monitoring',
required: true,
description: 'API domain to interact with',
};
// Define resources based on selected domain
exports.resourceOptions = {
displayName: 'Resource',
name: 'resource',
type: 'options',
options: [
// ===================== Monitoring resources =====================
{
name: 'Device',
value: 'devices',
description: 'Network devices like APs, switches, and gateways',
displayOptions: {
show: {
domain: ['monitoring'],
},
},
},
{
name: 'Access Points',
value: 'aps',
description: 'Wireless access points and related metrics',
displayOptions: {
show: {
domain: ['monitoring'],
},
},
},
{
name: 'Client',
value: 'clients',
description: 'Clients connected to the network',
displayOptions: {
show: {
domain: ['monitoring'],
},
},
},
{
name: 'Site',
value: 'sites',
description: 'Physical locations in the network',
displayOptions: {
show: {
domain: ['monitoring'],
},
},
},
{
name: 'Site Health',
value: 'siteHealth',
description: 'Site health information and device health overview',
displayOptions: {
show: {
domain: ['monitoring'],
},
},
},
{
name: 'Gateway',
value: 'gateways',
description: 'Network gateways and their metrics',
displayOptions: {
show: {
domain: ['monitoring'],
},
},
},
{
name: 'Site Collection',
value: 'siteCollections',
description: 'Collections of sites',
displayOptions: {
show: {
domain: ['monitoring'],
},
},
},
// ===================== Configuration resources =====================
{
name: 'Scope Management',
value: 'scopeManagement',
description: 'Manage sites, site collections, device groups, device collections, and hierarchy',
displayOptions: {
show: {
domain: ['configuration'],
},
},
},
{
name: 'AP Profiles',
value: 'profiles',
description: 'Manage AP system profiles',
displayOptions: {
show: {
domain: ['configuration'],
},
},
},
{
name: 'VLANs & Networks',
value: 'vlansNetworks',
description: 'Manage VLANs and network protocols (VRRP, MVRP, STP, Smartlink, Loop Protect)',
displayOptions: {
show: {
domain: ['configuration'],
},
},
},
{
name: 'Roles & Policy',
value: 'rolesPolicy',
description: 'Manage policy groups, roles, policies, role GPIDs, and role ACLs',
displayOptions: {
show: {
domain: ['configuration'],
},
},
},
{
name: 'Wireless',
value: 'wireless',
description: 'Manage wireless profiles (ALG, ANQP, Hotspot2, H2QP, IDS, Mesh, Passpoint, Radio, WLAN)',
displayOptions: {
show: {
domain: ['configuration'],
},
},
},
{
name: 'Named Object',
value: 'namedObject',
description: 'Manage network address aliases and net service definitions',
displayOptions: {
show: {
domain: ['configuration'],
},
},
},
{
name: 'Configuration Health',
value: 'configHealth',
description: 'Monitor configuration health and issues for devices',
displayOptions: {
show: {
domain: ['configuration'],
},
},
},
// ===================== Interfaces resources =====================
{
name: 'Ethernet Interface',
value: 'ethernetInterface',
description: 'Manage ethernet interface profiles',
displayOptions: {
show: {
domain: ['interfaces'],
},
},
},
{
name: 'Port Channel',
value: 'portChannel',
description: 'Manage port channel profiles',
displayOptions: {
show: {
domain: ['interfaces'],
},
},
},
{
name: 'LACP',
value: 'lacp',
description: 'Manage LACP profiles',
displayOptions: {
show: {
domain: ['interfaces'],
},
},
},
{
name: 'Loopback Interface',
value: 'loopback',
description: 'Manage loopback interface profiles',
displayOptions: {
show: {
domain: ['interfaces'],
},
},
},
{
name: 'LLDP',
value: 'lldp',
description: 'Manage LLDP profiles',
displayOptions: {
show: {
domain: ['interfaces'],
},
},
},
// ===================== Routing resources =====================
{
name: 'Static Route',
value: 'staticRoute',
description: 'Manage static route profiles',
displayOptions: {
show: {
domain: ['routing'],
},
},
},
{
name: 'OSPFv2',
value: 'ospfv2',
description: 'Manage OSPFv2 profiles',
displayOptions: {
show: {
domain: ['routing'],
},
},
},
{
name: 'BGP',
value: 'bgp',
description: 'Manage BGP profiles',
displayOptions: {
show: {
domain: ['routing'],
},
},
},
{
name: 'VRF',
value: 'vrf',
description: 'Manage VRF profiles',
displayOptions: {
show: {
domain: ['routing'],
},
},
},
// ===================== Network Services resources =====================
{
name: 'DHCP',
value: 'dhcp',
description: 'Manage DHCP profiles',
displayOptions: {
show: {
domain: ['networkServices'],
},
},
},
{
name: 'QoS',
value: 'qos',
description: 'Manage QoS profiles',
displayOptions: {
show: {
domain: ['networkServices'],
},
},
},
// ===================== Security resources =====================
{
name: 'Firewall',
value: 'firewall',
description: 'Manage firewall profiles',
displayOptions: {
show: {
domain: ['security'],
},
},
},
{
name: 'Port Security',
value: 'portSecurity',
description: 'Manage port security profiles',
displayOptions: {
show: {
domain: ['security'],
},
},
},
{
name: 'MAC Authentication',
value: 'macAuth',
description: 'Manage MAC authentication profiles',
displayOptions: {
show: {
domain: ['security'],
},
},
},
// ===================== Management resources =====================
{
name: 'Config Checkpoint',
value: 'configCheckpoint',
description: 'Manage configuration checkpoints',
displayOptions: {
show: {
domain: ['management'],
},
},
},
{
name: 'Persona Assignment',
value: 'personaAssignment',
description: 'Manage persona assignments',
displayOptions: {
show: {
domain: ['management'],
},
},
},
{
name: 'Firmware Policy',
value: 'firmwarePolicy',
description: 'Manage firmware policies',
displayOptions: {
show: {
domain: ['management'],
},
},
},
{
name: 'HA',
value: 'ha',
description: 'Manage high availability configurations',
displayOptions: {
show: {
domain: ['management'],
},
},
},
// ===================== System resources =====================
{
name: 'Config Assignment',
value: 'configAssignment',
description: 'Map configuration profiles to scopes and device functions',
displayOptions: {
show: {
domain: ['system'],
},
},
},
{
name: 'NTP',
value: 'ntp',
description: 'Manage NTP server profiles',
displayOptions: {
show: {
domain: ['system'],
},
},
},
{
name: 'SNMP',
value: 'snmp',
description: 'Manage SNMP profiles',
displayOptions: {
show: {
domain: ['system'],
},
},
},
{
name: 'Syslog',
value: 'syslog',
description: 'Manage syslog profiles',
displayOptions: {
show: {
domain: ['system'],
},
},
},
{
name: 'Dump Server',
value: 'dumpServer',
description: 'Manage dump server profiles',
displayOptions: {
show: {
domain: ['system'],
},
},
},
],
default: 'devices',
required: true,
description: 'Resource to interact with',
};