n8n-nodes-netbox
Version:
n8n community node for NetBox API integration with comprehensive DCIM, IPAM, Virtualization, Circuits, Wireless, and data center management operations
357 lines (356 loc) • 9.35 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.ipsecPoliciesFields = exports.ipsecPolicyFiltersField = exports.ipsecPolicyLimitField = exports.ipsecPolicyReturnAllField = exports.ipsecPolicyUpdateFields = exports.ipsecPolicyAdditionalFields = exports.ipsecPolicyPfsGroupField = exports.ipsecPolicyNameField = exports.ipsecPolicyIdField = exports.ipsecPoliciesOperations = void 0;
const baseProperties_1 = require("../baseProperties");
exports.ipsecPoliciesOperations = {
...baseProperties_1.baseProperties,
displayName: 'Operation',
name: 'operation',
type: 'options',
noDataExpression: true,
displayOptions: {
show: {
domain: ['vpn'],
resource: ['ipsec-policies'],
},
},
options: [
{
name: 'List',
value: 'list',
description: 'Get all IPSec policies',
action: 'List all IPSec policies',
},
{
name: 'Get',
value: 'get',
description: 'Get an IPSec policy by ID',
action: 'Get an IPSec policy',
},
{
name: 'Create',
value: 'create',
description: 'Create a new IPSec policy',
action: 'Create an IPSec policy',
},
{
name: 'Update',
value: 'update',
description: 'Update an IPSec policy',
action: 'Update an IPSec policy',
},
{
name: 'Delete',
value: 'delete',
description: 'Delete an IPSec policy',
action: 'Delete an IPSec policy',
},
],
default: 'list',
};
exports.ipsecPolicyIdField = {
displayName: 'IPSec Policy ID',
name: 'ipsecPolicyId',
type: 'string',
required: true,
displayOptions: {
show: {
domain: ['vpn'],
resource: ['ipsec-policies'],
operation: ['get', 'update', 'delete'],
},
},
default: '',
description: 'The ID of the IPSec policy',
noDataExpression: false,
};
exports.ipsecPolicyNameField = {
displayName: 'Name',
name: 'ipsecPolicyName',
type: 'string',
required: true,
displayOptions: {
show: {
domain: ['vpn'],
resource: ['ipsec-policies'],
operation: ['create'],
},
},
default: '',
description: 'Name of the IPSec policy',
noDataExpression: false,
};
exports.ipsecPolicyPfsGroupField = {
displayName: 'PFS Group',
name: 'pfs_group',
type: 'options',
displayOptions: {
show: {
domain: ['vpn'],
resource: ['ipsec-policies'],
operation: ['create'],
},
},
options: [
{
name: 'Group 1',
value: 1,
},
{
name: 'Group 2',
value: 2,
},
{
name: 'Group 5',
value: 5,
},
{
name: 'Group 14',
value: 14,
},
{
name: 'Group 15',
value: 15,
},
{
name: 'Group 16',
value: 16,
},
{
name: 'Group 19',
value: 19,
},
{
name: 'Group 20',
value: 20,
},
{
name: 'Group 21',
value: 21,
},
],
default: 14,
description: 'Perfect Forward Secrecy group',
noDataExpression: false,
};
exports.ipsecPolicyAdditionalFields = {
displayName: 'Additional Fields',
name: 'additionalFields',
type: 'collection',
placeholder: 'Add Field',
default: {},
displayOptions: {
show: {
domain: ['vpn'],
resource: ['ipsec-policies'],
operation: ['create'],
},
},
options: [
{
displayName: 'Description',
name: 'ipsecPolicyDescription',
type: 'string',
default: '',
description: 'Description of the IPSec policy',
},
{
displayName: 'Comments',
name: 'comments',
type: 'string',
default: '',
description: 'Comments for the IPSec policy',
},
{
displayName: 'Tags',
name: 'tags',
type: 'string',
default: '',
description: 'Comma-separated list of tag names or IDs',
},
{
displayName: 'Custom Fields',
name: 'custom_fields',
type: 'string',
default: '',
description: 'Custom fields as JSON object',
},
],
};
exports.ipsecPolicyUpdateFields = {
displayName: 'Update Fields',
name: 'updateFields',
type: 'collection',
placeholder: 'Add Field',
default: {},
displayOptions: {
show: {
domain: ['vpn'],
resource: ['ipsec-policies'],
operation: ['update'],
},
},
options: [
{
displayName: 'Name',
name: 'ipsecPolicyName',
type: 'string',
default: '',
description: 'Name of the IPSec policy',
},
{
displayName: 'PFS Group',
name: 'pfs_group',
type: 'options',
options: [
{
name: 'Group 1',
value: 1,
},
{
name: 'Group 2',
value: 2,
},
{
name: 'Group 5',
value: 5,
},
{
name: 'Group 14',
value: 14,
},
{
name: 'Group 15',
value: 15,
},
{
name: 'Group 16',
value: 16,
},
{
name: 'Group 19',
value: 19,
},
{
name: 'Group 20',
value: 20,
},
{
name: 'Group 21',
value: 21,
},
],
default: 14,
description: 'Perfect Forward Secrecy group',
},
{
displayName: 'Description',
name: 'ipsecPolicyDescription',
type: 'string',
default: '',
description: 'Description of the IPSec policy',
},
{
displayName: 'Comments',
name: 'comments',
type: 'string',
default: '',
description: 'Comments for the IPSec policy',
},
{
displayName: 'Tags',
name: 'tags',
type: 'string',
default: '',
description: 'Comma-separated list of tag names or IDs',
},
{
displayName: 'Custom Fields',
name: 'custom_fields',
type: 'string',
default: '',
description: 'Custom fields as JSON object',
},
],
};
exports.ipsecPolicyReturnAllField = {
displayName: 'Return All',
name: 'returnAll',
type: 'boolean',
displayOptions: {
show: {
domain: ['vpn'],
resource: ['ipsec-policies'],
operation: ['list'],
},
},
default: false,
description: 'Whether to return all results or only up to the limit',
noDataExpression: false,
};
exports.ipsecPolicyLimitField = {
displayName: 'Limit',
name: 'limit',
type: 'number',
displayOptions: {
show: {
domain: ['vpn'],
resource: ['ipsec-policies'],
operation: ['list'],
returnAll: [false],
},
},
typeOptions: {
minValue: 1,
},
default: 50,
description: 'Max number of results to return',
noDataExpression: false,
};
exports.ipsecPolicyFiltersField = {
displayName: 'Filters',
name: 'filters',
type: 'collection',
placeholder: 'Add Filter',
default: {},
displayOptions: {
show: {
domain: ['vpn'],
resource: ['ipsec-policies'],
operation: ['list'],
},
},
options: [
{
displayName: 'Name',
name: 'name',
type: 'string',
default: '',
description: 'Filter by name',
},
{
displayName: 'PFS Group',
name: 'pfs_group',
type: 'number',
default: '',
description: 'Filter by PFS group',
},
{
displayName: 'Tag',
name: 'tag',
type: 'string',
default: '',
description: 'Filter by tag name',
},
],
};
exports.ipsecPoliciesFields = [
exports.ipsecPolicyIdField,
exports.ipsecPolicyNameField,
exports.ipsecPolicyPfsGroupField,
exports.ipsecPolicyAdditionalFields,
exports.ipsecPolicyUpdateFields,
exports.ipsecPolicyReturnAllField,
exports.ipsecPolicyLimitField,
exports.ipsecPolicyFiltersField,
];