@ionos-cloud/n8n-nodes-ionos-cloud 1.0.1 → 1.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/README.md +22 -16
  2. package/dist/nodes/IonosCloudCertificateManager/resources/autoCertificate/index.js +12 -0
  3. package/dist/nodes/IonosCloudCertificateManager/resources/autoCertificate/index.js.map +1 -1
  4. package/dist/nodes/IonosCloudCertificateManager/resources/certificate/index.js +13 -0
  5. package/dist/nodes/IonosCloudCertificateManager/resources/certificate/index.js.map +1 -1
  6. package/dist/nodes/IonosCloudCertificateManager/resources/provider/index.js +13 -0
  7. package/dist/nodes/IonosCloudCertificateManager/resources/provider/index.js.map +1 -1
  8. package/dist/nodes/IonosCloudCloudApi/IonosCloudCloudApi.node.js +6 -0
  9. package/dist/nodes/IonosCloudCloudApi/IonosCloudCloudApi.node.js.map +1 -1
  10. package/dist/nodes/IonosCloudCloudApi/resources/applicationLoadBalancer/applicationLoadBalancer.js +353 -5
  11. package/dist/nodes/IonosCloudCloudApi/resources/applicationLoadBalancer/applicationLoadBalancer.js.map +1 -1
  12. package/dist/nodes/IonosCloudCloudApi/resources/applicationLoadBalancer/index.js +26 -0
  13. package/dist/nodes/IonosCloudCloudApi/resources/applicationLoadBalancer/index.js.map +1 -1
  14. package/dist/nodes/IonosCloudCloudApi/resources/natGateway/index.js +26 -0
  15. package/dist/nodes/IonosCloudCloudApi/resources/natGateway/index.js.map +1 -1
  16. package/dist/nodes/IonosCloudCloudApi/resources/natGateway/natGateway.js +314 -5
  17. package/dist/nodes/IonosCloudCloudApi/resources/natGateway/natGateway.js.map +1 -1
  18. package/dist/nodes/IonosCloudCloudApi/resources/networkLoadBalancer/index.js +26 -0
  19. package/dist/nodes/IonosCloudCloudApi/resources/networkLoadBalancer/index.js.map +1 -1
  20. package/dist/nodes/IonosCloudCloudApi/resources/networkLoadBalancer/networkLoadBalancer.js +445 -5
  21. package/dist/nodes/IonosCloudCloudApi/resources/networkLoadBalancer/networkLoadBalancer.js.map +1 -1
  22. package/dist/nodes/IonosCloudCloudApi/resources/nodePool/nodePool.js +29 -5
  23. package/dist/nodes/IonosCloudCloudApi/resources/nodePool/nodePool.js.map +1 -1
  24. package/dist/nodes/IonosCloudCloudApi/resources/pcc/index.js +13 -0
  25. package/dist/nodes/IonosCloudCloudApi/resources/pcc/index.js.map +1 -1
  26. package/dist/nodes/IonosCloudCloudApi/resources/request/index.d.ts +4 -0
  27. package/dist/nodes/IonosCloudCloudApi/resources/request/index.js +57 -0
  28. package/dist/nodes/IonosCloudCloudApi/resources/request/index.js.map +1 -0
  29. package/dist/nodes/IonosCloudCloudApi/resources/request/request.d.ts +2 -0
  30. package/dist/nodes/IonosCloudCloudApi/resources/request/request.js +220 -0
  31. package/dist/nodes/IonosCloudCloudApi/resources/request/request.js.map +1 -0
  32. package/dist/nodes/IonosCloudCloudApi/resources/securityGroup/index.js +19 -0
  33. package/dist/nodes/IonosCloudCloudApi/resources/securityGroup/index.js.map +1 -1
  34. package/dist/nodes/IonosCloudCloudApi/resources/securityGroup/securityGroup.js +212 -5
  35. package/dist/nodes/IonosCloudCloudApi/resources/securityGroup/securityGroup.js.map +1 -1
  36. package/dist/nodes/IonosCloudCloudApi/resources/targetGroup/index.d.ts +1 -3
  37. package/dist/nodes/IonosCloudCloudApi/resources/targetGroup/index.js +16 -3
  38. package/dist/nodes/IonosCloudCloudApi/resources/targetGroup/index.js.map +1 -1
  39. package/dist/nodes/IonosCloudCloudApi/resources/targetGroup/targetGroup.js +33 -0
  40. package/dist/nodes/IonosCloudCloudApi/resources/targetGroup/targetGroup.js.map +1 -1
  41. package/dist/package.json +1 -1
  42. package/dist/tsconfig.tsbuildinfo +1 -1
  43. package/package.json +1 -1
  44. package/dist/credentials/IonosCloudAiModelHubApi.credentials.d.ts +0 -10
  45. package/dist/credentials/IonosCloudAiModelHubApi.credentials.js +0 -39
  46. package/dist/credentials/IonosCloudAiModelHubApi.credentials.js.map +0 -1
package/README.md CHANGED
@@ -30,11 +30,11 @@ The package provides comprehensive integration with key IONOS Cloud services, en
30
30
 
31
31
  This package provides five separate nodes for different IONOS Cloud services:
32
32
 
33
- 1. **Ionos Cloud (Infrastructure)** - Core infrastructure management
34
- 2. **Ionos Cloud (Certificate Manager)** - SSL/TLS certificate management
35
- 3. **Ionos Cloud (Cloud DNS)** - Domain name system management
36
- 4. **Ionos Cloud (CDN)** - Content delivery network management
37
- 5. **Ionos Cloud (AI Model Hub)** - AI model inference and RAG capabilities
33
+ 1. **IONOS Cloud (Infrastructure)** - Core infrastructure management
34
+ 2. **IONOS Cloud (Certificate Manager)** - SSL/TLS certificate management
35
+ 3. **IONOS Cloud (Cloud DNS)** - Domain name system management
36
+ 4. **IONOS Cloud (CDN)** - Content delivery network management
37
+ 5. **IONOS Cloud (AI Model Hub)** - AI model inference and RAG capabilities
38
38
 
39
39
  ---
40
40
 
@@ -68,23 +68,24 @@ Follow the [installation guide](https://docs.n8n.io/integrations/community-nodes
68
68
 
69
69
  | Node | Resources | Operations | Description |
70
70
  |------|-----------|------------|-------------|
71
- | **Infrastructure** | 20 | 145 | Complete infrastructure management (compute, networking, storage, Kubernetes) |
71
+ | **Infrastructure** | 21 | 153 | Complete infrastructure management (compute, networking, storage, Kubernetes) |
72
72
  | **Certificate Manager** | 3 | 15 | SSL/TLS certificate lifecycle management with ACME support |
73
73
  | **Cloud DNS** | 7 | 28 | DNS zones, records (15 types), DNSSEC, zone transfers |
74
74
  | **CDN** | 2 | 7 | Content delivery with custom routing and geo-restrictions |
75
75
  | **AI Model Hub** | 4 | 20 | Foundation model inference, RAG capabilities, and OpenAI-compatible API |
76
76
 
77
- > **✨ v1.0.0**: First stable release with comprehensive support for the included IONOS Cloud services.
77
+ > **✨ v1.0.2**: Patch release with enhanced subresource support for load balancers, NAT gateways, security groups, and target groups. Added request monitoring capabilities.
78
78
 
79
79
 
80
80
  <details>
81
81
  <summary><b>Infrastructure - Detailed Operations</b></summary>
82
82
 
83
- #### Account & Global Resources (9 operations)
83
+ #### Account & Global Resources (12 operations)
84
84
  - **Contract** (1): Get Many
85
85
  - **Location** (2): Get, Get Many
86
86
  - **Image** (2): Get, Get Many
87
87
  - **IP Block** (4): Create, Delete, Get, Get Many
88
+ - **Request** (3): Get, Get All, Get Status
88
89
 
89
90
  #### Core Infrastructure (10 operations)
90
91
  - **Datacenter** (5): Create, Delete, Get, Get Many, Update
@@ -105,12 +106,17 @@ Follow the [installation guide](https://docs.n8n.io/integrations/community-nodes
105
106
  - **Private Cross-Connect** (5): Create, Delete, Get, Get Many, Update
106
107
  - **Load Balancer** (9): Attach/Detach NIC, Create, Delete, Get (+ Balanced NIC/NICs), Get Many, Update
107
108
  - **Network Load Balancer** (5): Create, Delete, Get, Get Many, Update
109
+ - Full support for Flow Logs and Forwarding Rules subresources
108
110
  - **Application Load Balancer** (5): Create, Delete, Get, Get Many, Update
111
+ - Full support for Flow Logs and Forwarding Rules subresources with HTTP rules
109
112
  - **Target Group** (5): Create, Delete, Get, Get Many, Update
113
+ - Enhanced with location and protocolVersion properties
110
114
  - **NAT Gateway** (5): Create, Delete, Get, Get Many, Update
115
+ - Full support for Flow Logs and Rules subresources
111
116
 
112
117
  #### Security (5 operations)
113
118
  - **Security Group** (5): Create, Delete, Get, Get Many, Update
119
+ - Full support for Rules subresource with comprehensive rule properties
114
120
 
115
121
  </details>
116
122
 
@@ -232,11 +238,11 @@ Use OpenAI-compatible API endpoints for standardized AI interactions.
232
238
 
233
239
  ## Credentials
234
240
 
235
- All nodes in this package share a single credential type: **Ionos Cloud API**
241
+ All nodes in this package share a single credential type: **IONOS Cloud API**
236
242
 
237
243
  Authentication uses the [Cloud API Bearer token](https://docs.ionos.com/cloud/set-up-ionos-cloud/management/identity-access-management/token-manager).
238
244
 
239
- The same token works across these IONOS Cloud services (Infrastructure, Certificate Manager, DNS, CDN, and AI Model Hub).
245
+ The same token works across all IONOS Cloud services (Infrastructure, Certificate Manager, DNS, CDN, and AI Model Hub).
240
246
 
241
247
  ## Compatibility
242
248
 
@@ -245,34 +251,34 @@ Tested against n8n version 2.1.5+
245
251
  ## Usage
246
252
 
247
253
  ### Authentication
248
- 1. Create new credentials in n8n and select "Ionos Cloud API"
254
+ 1. Create new credentials in n8n and select "IONOS Cloud API"
249
255
  2. Provide your API token (generated from IONOS Cloud Console)
250
256
  3. The same credential works for all five nodes
251
257
 
252
258
  ### Using the Nodes
253
259
 
254
260
  #### Infrastructure
255
- * Add the "Ionos Cloud (Infrastructure)" node to your workflow
261
+ * Add the "IONOS Cloud (Infrastructure)" node to your workflow
256
262
  * Select the resource (e.g., Server, Volume, Datacenter)
257
263
  * Choose the operation and configure the required fields
258
264
 
259
265
  #### Certificate Manager
260
- * Add the "Ionos Cloud (Certificate Manager)" node to your workflow
266
+ * Add the "IONOS Cloud (Certificate Manager)" node to your workflow
261
267
  * Select the resource (Certificate, AutoCertificate, or Provider)
262
268
  * Configure certificate properties, domains, and ACME providers
263
269
 
264
270
  #### DNS
265
- * Add the "Ionos Cloud (Cloud DNS)" node to your workflow
271
+ * Add the "IONOS Cloud (Cloud DNS)" node to your workflow
266
272
  * Select the resource (Zone, Record, SecondaryZone, etc.)
267
273
  * Configure DNS zones, records, and DNSSEC settings
268
274
 
269
275
  #### CDN
270
- * Add the "Ionos Cloud (CDN)" node to your workflow
276
+ * Add the "IONOS Cloud (CDN)" node to your workflow
271
277
  * Select the resource (Distribution or Ip)
272
278
  * Configure CDN distributions with routing rules and upstream origins
273
279
 
274
280
  #### AI Model Hub
275
- * Add the "Ionos Cloud (AI Model Hub)" node to your workflow
281
+ * Add the "IONOS Cloud (AI Model Hub)" node to your workflow
276
282
  * Select the resource (Model, Collection, Document, or OpenAI Compatible)
277
283
  * **Model**: AI inference with native IONOS API
278
284
  * **Collection**: Vector database management for RAG
@@ -81,6 +81,18 @@ exports.autoCertificateOperations = [
81
81
  request: {
82
82
  method: 'PATCH',
83
83
  url: '=/auto-certificates/{{$parameter.autoCertificateId}}',
84
+ }, send: {
85
+ preSend: [
86
+ async function (requestOptions) {
87
+ if (requestOptions.body && typeof requestOptions.body === 'object') {
88
+ const body = requestOptions.body;
89
+ if (body.properties && typeof body.properties === 'object') {
90
+ requestOptions.body = body.properties;
91
+ }
92
+ }
93
+ return requestOptions;
94
+ },
95
+ ],
84
96
  },
85
97
  },
86
98
  },
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../nodes/IonosCloudCertificateManager/resources/autoCertificate/index.ts"],"names":[],"mappings":";;;AAEA,MAAM,cAAc,GAAG;IACtB,IAAI,EAAE;QACL,QAAQ,EAAE,CAAC,iBAAiB,CAAC;KAC7B;CACD,CAAC;AAEW,QAAA,yBAAyB,GAAsB;IAC3D;QACC,WAAW,EAAE,WAAW;QACxB,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,SAAS;QACf,gBAAgB,EAAE,IAAI;QACtB,cAAc;QACd,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,QAAQ;gBACf,WAAW,EAAE,4BAA4B;gBACzC,MAAM,EAAE,4BAA4B;gBACpC,OAAO,EAAE;oBACR,OAAO,EAAE;wBACR,MAAM,EAAE,MAAM;wBACd,GAAG,EAAE,oBAAoB;qBACzB;iBACD;aACD;YACD;gBACC,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,QAAQ;gBACf,WAAW,EAAE,4BAA4B;gBACzC,MAAM,EAAE,4BAA4B;gBACpC,OAAO,EAAE;oBACR,OAAO,EAAE;wBACR,MAAM,EAAE,QAAQ;wBAChB,GAAG,EAAE,sDAAsD;qBAC3D;oBACD,MAAM,EAAE;wBACP,WAAW,EAAE;4BACZ;gCACC,IAAI,EAAE,KAAK;gCACX,UAAU,EAAE;oCACX,KAAK,EAAE,4BAA4B;iCACnC;6BACD;yBACD;qBACD;iBACD;aACD;YACD;gBACC,IAAI,EAAE,KAAK;gBACX,KAAK,EAAE,KAAK;gBACZ,WAAW,EAAE,yBAAyB;gBACtC,MAAM,EAAE,yBAAyB;gBACjC,OAAO,EAAE;oBACR,OAAO,EAAE;wBACR,MAAM,EAAE,KAAK;wBACb,GAAG,EAAE,sDAAsD;qBAC3D;iBACD;aACD;YACD;gBACC,IAAI,EAAE,UAAU;gBAChB,KAAK,EAAE,QAAQ;gBACf,WAAW,EAAE,4BAA4B;gBACzC,MAAM,EAAE,4BAA4B;gBACpC,OAAO,EAAE;oBACR,OAAO,EAAE;wBACR,MAAM,EAAE,KAAK;wBACb,GAAG,EAAE,oBAAoB;qBACzB;iBACD;aACD;YACD;gBACC,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,QAAQ;gBACf,WAAW,EAAE,4BAA4B;gBACzC,MAAM,EAAE,4BAA4B;gBACpC,OAAO,EAAE;oBACR,OAAO,EAAE;wBACR,MAAM,EAAE,OAAO;wBACf,GAAG,EAAE,sDAAsD;qBAC3D;iBACD;aACD;SACD;QACD,OAAO,EAAE,QAAQ;KACjB;CACD,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../nodes/IonosCloudCertificateManager/resources/autoCertificate/index.ts"],"names":[],"mappings":";;;AAEA,MAAM,cAAc,GAAG;IACtB,IAAI,EAAE;QACL,QAAQ,EAAE,CAAC,iBAAiB,CAAC;KAC7B;CACD,CAAC;AAEW,QAAA,yBAAyB,GAAsB;IAC3D;QACC,WAAW,EAAE,WAAW;QACxB,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,SAAS;QACf,gBAAgB,EAAE,IAAI;QACtB,cAAc;QACd,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,QAAQ;gBACf,WAAW,EAAE,4BAA4B;gBACzC,MAAM,EAAE,4BAA4B;gBACpC,OAAO,EAAE;oBACR,OAAO,EAAE;wBACR,MAAM,EAAE,MAAM;wBACd,GAAG,EAAE,oBAAoB;qBACzB;iBACD;aACD;YACD;gBACC,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,QAAQ;gBACf,WAAW,EAAE,4BAA4B;gBACzC,MAAM,EAAE,4BAA4B;gBACpC,OAAO,EAAE;oBACR,OAAO,EAAE;wBACR,MAAM,EAAE,QAAQ;wBAChB,GAAG,EAAE,sDAAsD;qBAC3D;oBACD,MAAM,EAAE;wBACP,WAAW,EAAE;4BACZ;gCACC,IAAI,EAAE,KAAK;gCACX,UAAU,EAAE;oCACX,KAAK,EAAE,4BAA4B;iCACnC;6BACD;yBACD;qBACD;iBACD;aACD;YACD;gBACC,IAAI,EAAE,KAAK;gBACX,KAAK,EAAE,KAAK;gBACZ,WAAW,EAAE,yBAAyB;gBACtC,MAAM,EAAE,yBAAyB;gBACjC,OAAO,EAAE;oBACR,OAAO,EAAE;wBACR,MAAM,EAAE,KAAK;wBACb,GAAG,EAAE,sDAAsD;qBAC3D;iBACD;aACD;YACD;gBACC,IAAI,EAAE,UAAU;gBAChB,KAAK,EAAE,QAAQ;gBACf,WAAW,EAAE,4BAA4B;gBACzC,MAAM,EAAE,4BAA4B;gBACpC,OAAO,EAAE;oBACR,OAAO,EAAE;wBACR,MAAM,EAAE,KAAK;wBACb,GAAG,EAAE,oBAAoB;qBACzB;iBACD;aACD;YACD;gBACC,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,QAAQ;gBACf,WAAW,EAAE,4BAA4B;gBACzC,MAAM,EAAE,4BAA4B;gBACpC,OAAO,EAAE;oBACR,OAAO,EAAE;wBACR,MAAM,EAAE,OAAO;wBACf,GAAG,EAAE,sDAAsD;qBAC3D,EAAM,IAAI,EAAE;wBACZ,OAAO,EAAE;4BACR,KAAK,WAAiB,cAAc;gCACnC,IAAI,cAAc,CAAC,IAAI,IAAI,OAAO,cAAc,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oCACtE,MAAM,IAAI,GAAG,cAAc,CAAC,IAA+B,CAAC;oCAC1D,IAAI,IAAI,CAAC,UAAU,IAAI,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;wCAC5D,cAAc,CAAC,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC;oCACvC,CAAC;gCACF,CAAC;gCACD,OAAO,cAAc,CAAC;4BACvB,CAAC;yBACD;qBACD;iBAAM;aACR;SACD;QACD,OAAO,EAAE,QAAQ;KACjB;CACD,CAAC"}
@@ -82,6 +82,19 @@ exports.certificateOperations = [
82
82
  method: 'PATCH',
83
83
  url: '=/certificates/{{$parameter.certificateId}}',
84
84
  },
85
+ send: {
86
+ preSend: [
87
+ async function (requestOptions) {
88
+ if (requestOptions.body && typeof requestOptions.body === 'object') {
89
+ const body = requestOptions.body;
90
+ if (body.properties && typeof body.properties === 'object') {
91
+ requestOptions.body = body.properties;
92
+ }
93
+ }
94
+ return requestOptions;
95
+ },
96
+ ],
97
+ },
85
98
  },
86
99
  },
87
100
  ],
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../nodes/IonosCloudCertificateManager/resources/certificate/index.ts"],"names":[],"mappings":";;;AAEA,MAAM,cAAc,GAAG;IACtB,IAAI,EAAE;QACL,QAAQ,EAAE,CAAC,aAAa,CAAC;KACzB;CACD,CAAC;AAEW,QAAA,qBAAqB,GAAsB;IACvD;QACC,WAAW,EAAE,WAAW;QACxB,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,SAAS;QACf,gBAAgB,EAAE,IAAI;QACtB,cAAc;QACd,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,QAAQ;gBACf,WAAW,EAAE,sBAAsB;gBACnC,MAAM,EAAE,sBAAsB;gBAC9B,OAAO,EAAE;oBACR,OAAO,EAAE;wBACR,MAAM,EAAE,MAAM;wBACd,GAAG,EAAE,eAAe;qBACpB;iBACD;aACD;YACD;gBACC,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,QAAQ;gBACf,WAAW,EAAE,sBAAsB;gBACnC,MAAM,EAAE,sBAAsB;gBAC9B,OAAO,EAAE;oBACR,OAAO,EAAE;wBACR,MAAM,EAAE,QAAQ;wBAChB,GAAG,EAAE,6CAA6C;qBAClD;oBACD,MAAM,EAAE;wBACP,WAAW,EAAE;4BACZ;gCACC,IAAI,EAAE,KAAK;gCACX,UAAU,EAAE;oCACX,KAAK,EAAE,4BAA4B;iCACnC;6BACD;yBACD;qBACD;iBACD;aACD;YACD;gBACC,IAAI,EAAE,KAAK;gBACX,KAAK,EAAE,KAAK;gBACZ,WAAW,EAAE,mBAAmB;gBAChC,MAAM,EAAE,mBAAmB;gBAC3B,OAAO,EAAE;oBACR,OAAO,EAAE;wBACR,MAAM,EAAE,KAAK;wBACb,GAAG,EAAE,6CAA6C;qBAClD;iBACD;aACD;YACD;gBACC,IAAI,EAAE,UAAU;gBAChB,KAAK,EAAE,QAAQ;gBACf,WAAW,EAAE,uBAAuB;gBACpC,MAAM,EAAE,uBAAuB;gBAC/B,OAAO,EAAE;oBACR,OAAO,EAAE;wBACR,MAAM,EAAE,KAAK;wBACb,GAAG,EAAE,eAAe;qBACpB;iBACD;aACD;YACD;gBACC,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,QAAQ;gBACf,WAAW,EAAE,sBAAsB;gBACnC,MAAM,EAAE,sBAAsB;gBAC9B,OAAO,EAAE;oBACR,OAAO,EAAE;wBACR,MAAM,EAAE,OAAO;wBACf,GAAG,EAAE,6CAA6C;qBAClD;iBACD;aACD;SACD;QACD,OAAO,EAAE,QAAQ;KACjB;CACD,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../nodes/IonosCloudCertificateManager/resources/certificate/index.ts"],"names":[],"mappings":";;;AAEA,MAAM,cAAc,GAAG;IACtB,IAAI,EAAE;QACL,QAAQ,EAAE,CAAC,aAAa,CAAC;KACzB;CACD,CAAC;AAEW,QAAA,qBAAqB,GAAsB;IACvD;QACC,WAAW,EAAE,WAAW;QACxB,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,SAAS;QACf,gBAAgB,EAAE,IAAI;QACtB,cAAc;QACd,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,QAAQ;gBACf,WAAW,EAAE,sBAAsB;gBACnC,MAAM,EAAE,sBAAsB;gBAC9B,OAAO,EAAE;oBACR,OAAO,EAAE;wBACR,MAAM,EAAE,MAAM;wBACd,GAAG,EAAE,eAAe;qBACpB;iBACD;aACD;YACD;gBACC,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,QAAQ;gBACf,WAAW,EAAE,sBAAsB;gBACnC,MAAM,EAAE,sBAAsB;gBAC9B,OAAO,EAAE;oBACR,OAAO,EAAE;wBACR,MAAM,EAAE,QAAQ;wBAChB,GAAG,EAAE,6CAA6C;qBAClD;oBACD,MAAM,EAAE;wBACP,WAAW,EAAE;4BACZ;gCACC,IAAI,EAAE,KAAK;gCACX,UAAU,EAAE;oCACX,KAAK,EAAE,4BAA4B;iCACnC;6BACD;yBACD;qBACD;iBACD;aACD;YACD;gBACC,IAAI,EAAE,KAAK;gBACX,KAAK,EAAE,KAAK;gBACZ,WAAW,EAAE,mBAAmB;gBAChC,MAAM,EAAE,mBAAmB;gBAC3B,OAAO,EAAE;oBACR,OAAO,EAAE;wBACR,MAAM,EAAE,KAAK;wBACb,GAAG,EAAE,6CAA6C;qBAClD;iBACD;aACD;YACD;gBACC,IAAI,EAAE,UAAU;gBAChB,KAAK,EAAE,QAAQ;gBACf,WAAW,EAAE,uBAAuB;gBACpC,MAAM,EAAE,uBAAuB;gBAC/B,OAAO,EAAE;oBACR,OAAO,EAAE;wBACR,MAAM,EAAE,KAAK;wBACb,GAAG,EAAE,eAAe;qBACpB;iBACD;aACD;YACD;gBACC,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,QAAQ;gBACf,WAAW,EAAE,sBAAsB;gBACnC,MAAM,EAAE,sBAAsB;gBAC9B,OAAO,EAAE;oBACR,OAAO,EAAE;wBACR,MAAM,EAAE,OAAO;wBACf,GAAG,EAAE,6CAA6C;qBAClD;oBACD,IAAI,EAAE;wBACL,OAAO,EAAE;4BACR,KAAK,WAAiB,cAAc;gCACnC,IAAI,cAAc,CAAC,IAAI,IAAI,OAAO,cAAc,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oCACtE,MAAM,IAAI,GAAG,cAAc,CAAC,IAA+B,CAAC;oCAC1D,IAAI,IAAI,CAAC,UAAU,IAAI,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;wCAC5D,cAAc,CAAC,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC;oCACvC,CAAC;gCACF,CAAC;gCACD,OAAO,cAAc,CAAC;4BACvB,CAAC;yBACD;qBACD;iBACD;aACD;SACD;QACD,OAAO,EAAE,QAAQ;KACjB;CACD,CAAC"}
@@ -82,6 +82,19 @@ exports.providerOperations = [
82
82
  method: 'PATCH',
83
83
  url: '=/providers/{{$parameter.providerId}}',
84
84
  },
85
+ send: {
86
+ preSend: [
87
+ async function (requestOptions) {
88
+ if (requestOptions.body && typeof requestOptions.body === 'object') {
89
+ const body = requestOptions.body;
90
+ if (body.properties && typeof body.properties === 'object') {
91
+ requestOptions.body = body.properties;
92
+ }
93
+ }
94
+ return requestOptions;
95
+ },
96
+ ],
97
+ },
85
98
  },
86
99
  },
87
100
  ],
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../nodes/IonosCloudCertificateManager/resources/provider/index.ts"],"names":[],"mappings":";;;AAEA,MAAM,cAAc,GAAG;IACtB,IAAI,EAAE;QACL,QAAQ,EAAE,CAAC,UAAU,CAAC;KACtB;CACD,CAAC;AAEW,QAAA,kBAAkB,GAAsB;IACpD;QACC,WAAW,EAAE,WAAW;QACxB,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,SAAS;QACf,gBAAgB,EAAE,IAAI;QACtB,cAAc;QACd,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,QAAQ;gBACf,WAAW,EAAE,mBAAmB;gBAChC,MAAM,EAAE,mBAAmB;gBAC3B,OAAO,EAAE;oBACR,OAAO,EAAE;wBACR,MAAM,EAAE,MAAM;wBACd,GAAG,EAAE,YAAY;qBACjB;iBACD;aACD;YACD;gBACC,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,QAAQ;gBACf,WAAW,EAAE,mBAAmB;gBAChC,MAAM,EAAE,mBAAmB;gBAC3B,OAAO,EAAE;oBACR,OAAO,EAAE;wBACR,MAAM,EAAE,QAAQ;wBAChB,GAAG,EAAE,uCAAuC;qBAC5C;oBACD,MAAM,EAAE;wBACP,WAAW,EAAE;4BACZ;gCACC,IAAI,EAAE,KAAK;gCACX,UAAU,EAAE;oCACX,KAAK,EAAE,4BAA4B;iCACnC;6BACD;yBACD;qBACD;iBACD;aACD;YACD;gBACC,IAAI,EAAE,KAAK;gBACX,KAAK,EAAE,KAAK;gBACZ,WAAW,EAAE,gBAAgB;gBAC7B,MAAM,EAAE,gBAAgB;gBACxB,OAAO,EAAE;oBACR,OAAO,EAAE;wBACR,MAAM,EAAE,KAAK;wBACb,GAAG,EAAE,uCAAuC;qBAC5C;iBACD;aACD;YACD;gBACC,IAAI,EAAE,UAAU;gBAChB,KAAK,EAAE,QAAQ;gBACf,WAAW,EAAE,oBAAoB;gBACjC,MAAM,EAAE,oBAAoB;gBAC5B,OAAO,EAAE;oBACR,OAAO,EAAE;wBACR,MAAM,EAAE,KAAK;wBACb,GAAG,EAAE,YAAY;qBACjB;iBACD;aACD;YACD;gBACC,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,QAAQ;gBACf,WAAW,EAAE,mBAAmB;gBAChC,MAAM,EAAE,mBAAmB;gBAC3B,OAAO,EAAE;oBACR,OAAO,EAAE;wBACR,MAAM,EAAE,OAAO;wBACf,GAAG,EAAE,uCAAuC;qBAC5C;iBACD;aACD;SACD;QACD,OAAO,EAAE,QAAQ;KACjB;CACD,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../nodes/IonosCloudCertificateManager/resources/provider/index.ts"],"names":[],"mappings":";;;AAEA,MAAM,cAAc,GAAG;IACtB,IAAI,EAAE;QACL,QAAQ,EAAE,CAAC,UAAU,CAAC;KACtB;CACD,CAAC;AAEW,QAAA,kBAAkB,GAAsB;IACpD;QACC,WAAW,EAAE,WAAW;QACxB,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,SAAS;QACf,gBAAgB,EAAE,IAAI;QACtB,cAAc;QACd,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,QAAQ;gBACf,WAAW,EAAE,mBAAmB;gBAChC,MAAM,EAAE,mBAAmB;gBAC3B,OAAO,EAAE;oBACR,OAAO,EAAE;wBACR,MAAM,EAAE,MAAM;wBACd,GAAG,EAAE,YAAY;qBACjB;iBACD;aACD;YACD;gBACC,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,QAAQ;gBACf,WAAW,EAAE,mBAAmB;gBAChC,MAAM,EAAE,mBAAmB;gBAC3B,OAAO,EAAE;oBACR,OAAO,EAAE;wBACR,MAAM,EAAE,QAAQ;wBAChB,GAAG,EAAE,uCAAuC;qBAC5C;oBACD,MAAM,EAAE;wBACP,WAAW,EAAE;4BACZ;gCACC,IAAI,EAAE,KAAK;gCACX,UAAU,EAAE;oCACX,KAAK,EAAE,4BAA4B;iCACnC;6BACD;yBACD;qBACD;iBACD;aACD;YACD;gBACC,IAAI,EAAE,KAAK;gBACX,KAAK,EAAE,KAAK;gBACZ,WAAW,EAAE,gBAAgB;gBAC7B,MAAM,EAAE,gBAAgB;gBACxB,OAAO,EAAE;oBACR,OAAO,EAAE;wBACR,MAAM,EAAE,KAAK;wBACb,GAAG,EAAE,uCAAuC;qBAC5C;iBACD;aACD;YACD;gBACC,IAAI,EAAE,UAAU;gBAChB,KAAK,EAAE,QAAQ;gBACf,WAAW,EAAE,oBAAoB;gBACjC,MAAM,EAAE,oBAAoB;gBAC5B,OAAO,EAAE;oBACR,OAAO,EAAE;wBACR,MAAM,EAAE,KAAK;wBACb,GAAG,EAAE,YAAY;qBACjB;iBACD;aACD;YACD;gBACC,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,QAAQ;gBACf,WAAW,EAAE,mBAAmB;gBAChC,MAAM,EAAE,mBAAmB;gBAC3B,OAAO,EAAE;oBACR,OAAO,EAAE;wBACR,MAAM,EAAE,OAAO;wBACf,GAAG,EAAE,uCAAuC;qBAC5C;oBACD,IAAI,EAAE;wBACL,OAAO,EAAE;4BACR,KAAK,WAAiB,cAAc;gCACnC,IAAI,cAAc,CAAC,IAAI,IAAI,OAAO,cAAc,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oCACtE,MAAM,IAAI,GAAG,cAAc,CAAC,IAA+B,CAAC;oCAC1D,IAAI,IAAI,CAAC,UAAU,IAAI,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;wCAC5D,cAAc,CAAC,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC;oCACvC,CAAC;gCACF,CAAC;gCACD,OAAO,cAAc,CAAC;4BACvB,CAAC;yBACD;qBACD;iBACD;aACD;SACD;QACD,OAAO,EAAE,QAAQ;KACjB;CACD,CAAC"}
@@ -23,6 +23,7 @@ const applicationLoadBalancer_1 = require("./resources/applicationLoadBalancer")
23
23
  const loadBalancer_1 = require("./resources/loadBalancer");
24
24
  const pcc_1 = require("./resources/pcc");
25
25
  const targetGroup_1 = require("./resources/targetGroup");
26
+ const request_1 = require("./resources/request");
26
27
  class IonosCloudCloudApi {
27
28
  constructor() {
28
29
  this.description = {
@@ -71,6 +72,10 @@ class IonosCloudCloudApi {
71
72
  name: 'IP Block',
72
73
  value: 'ipBlock',
73
74
  },
75
+ {
76
+ name: 'Request',
77
+ value: 'request',
78
+ },
74
79
  {
75
80
  name: 'Datacenter',
76
81
  value: 'datacenter',
@@ -142,6 +147,7 @@ class IonosCloudCloudApi {
142
147
  ...location_1.locationDescription,
143
148
  ...image_1.imageDescription,
144
149
  ...ipBlock_1.ipBlockDescription,
150
+ ...request_1.requestDescription,
145
151
  ...datacenter_1.datacenterDescription,
146
152
  ...lan_1.lanDescription,
147
153
  ...server_1.serverDescription,
@@ -1 +1 @@
1
- {"version":3,"file":"IonosCloudCloudApi.node.js","sourceRoot":"","sources":["../../../nodes/IonosCloudCloudApi/IonosCloudCloudApi.node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IonosCloudCloudApi.node.js","sourceRoot":"","sources":["../../../nodes/IonosCloudCloudApi/IonosCloudCloudApi.node.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.applicationLoadBalancerDescriptions = void 0;
4
- const showForApplicationLoadBalancerId = {
5
- operation: ['get', 'update', 'delete'],
6
- resource: ['applicationLoadBalancer'],
7
- };
8
4
  const showForApplicationLoadBalancerCreateOrUpdate = {
9
5
  operation: ['create', 'update'],
10
6
  resource: ['applicationLoadBalancer'],
@@ -13,6 +9,14 @@ const showOnlyForApplicationLoadBalancerGetMany = {
13
9
  operation: ['getAll'],
14
10
  resource: ['applicationLoadBalancer'],
15
11
  };
12
+ const showForFlowLogId = {
13
+ operation: ['getFlowLog', 'updateFlowLog', 'deleteFlowLog'],
14
+ resource: ['applicationLoadBalancer'],
15
+ };
16
+ const showForForwardingRuleId = {
17
+ operation: ['getForwardingRule', 'updateForwardingRule', 'deleteForwardingRule'],
18
+ resource: ['applicationLoadBalancer'],
19
+ };
16
20
  exports.applicationLoadBalancerDescriptions = [
17
21
  {
18
22
  displayName: 'Datacenter ID',
@@ -28,10 +32,47 @@ exports.applicationLoadBalancerDescriptions = [
28
32
  name: 'applicationLoadBalancerId',
29
33
  type: 'string',
30
34
  required: true,
31
- displayOptions: { show: showForApplicationLoadBalancerId },
35
+ displayOptions: {
36
+ show: {
37
+ resource: ['applicationLoadBalancer'],
38
+ operation: [
39
+ 'get',
40
+ 'update',
41
+ 'delete',
42
+ 'createFlowLog',
43
+ 'getFlowLogs',
44
+ 'getFlowLog',
45
+ 'updateFlowLog',
46
+ 'deleteFlowLog',
47
+ 'createForwardingRule',
48
+ 'getForwardingRules',
49
+ 'getForwardingRule',
50
+ 'updateForwardingRule',
51
+ 'deleteForwardingRule',
52
+ ],
53
+ },
54
+ },
32
55
  default: '',
33
56
  description: 'The ID of the Application Load Balancer',
34
57
  },
58
+ {
59
+ displayName: 'Flow Log ID',
60
+ name: 'flowLogId',
61
+ type: 'string',
62
+ required: true,
63
+ displayOptions: { show: showForFlowLogId },
64
+ default: '',
65
+ description: 'The ID of the flow log',
66
+ },
67
+ {
68
+ displayName: 'Forwarding Rule ID',
69
+ name: 'forwardingRuleId',
70
+ type: 'string',
71
+ required: true,
72
+ displayOptions: { show: showForForwardingRuleId },
73
+ default: '',
74
+ description: 'The ID of the forwarding rule',
75
+ },
35
76
  {
36
77
  displayName: 'Limit',
37
78
  name: 'limit',
@@ -198,5 +239,312 @@ exports.applicationLoadBalancerDescriptions = [
198
239
  },
199
240
  ],
200
241
  },
242
+ {
243
+ displayName: 'Flow Log Properties',
244
+ name: 'flowLogProperties',
245
+ type: 'collection',
246
+ placeholder: 'Add Flow Log Property',
247
+ default: {},
248
+ displayOptions: {
249
+ show: {
250
+ resource: ['applicationLoadBalancer'],
251
+ operation: ['createFlowLog', 'updateFlowLog'],
252
+ },
253
+ },
254
+ options: [
255
+ {
256
+ displayName: 'Name',
257
+ name: 'name',
258
+ type: 'string',
259
+ default: '',
260
+ description: 'The resource name',
261
+ routing: {
262
+ send: {
263
+ type: 'body',
264
+ property: 'properties.name',
265
+ },
266
+ },
267
+ },
268
+ {
269
+ displayName: 'Action',
270
+ name: 'action',
271
+ type: 'options',
272
+ default: 'ALL',
273
+ options: [
274
+ {
275
+ name: 'ACCEPTED',
276
+ value: 'ACCEPTED',
277
+ },
278
+ {
279
+ name: 'REJECTED',
280
+ value: 'REJECTED',
281
+ },
282
+ {
283
+ name: 'ALL',
284
+ value: 'ALL',
285
+ },
286
+ ],
287
+ description: 'Specifies the traffic action pattern',
288
+ routing: {
289
+ send: {
290
+ type: 'body',
291
+ property: 'properties.action',
292
+ },
293
+ },
294
+ },
295
+ {
296
+ displayName: 'Direction',
297
+ name: 'direction',
298
+ type: 'options',
299
+ default: 'BIDIRECTIONAL',
300
+ options: [
301
+ {
302
+ name: 'INGRESS',
303
+ value: 'INGRESS',
304
+ },
305
+ {
306
+ name: 'EGRESS',
307
+ value: 'EGRESS',
308
+ },
309
+ {
310
+ name: 'BIDIRECTIONAL',
311
+ value: 'BIDIRECTIONAL',
312
+ },
313
+ ],
314
+ description: 'Specifies the traffic direction pattern',
315
+ routing: {
316
+ send: {
317
+ type: 'body',
318
+ property: 'properties.direction',
319
+ },
320
+ },
321
+ },
322
+ {
323
+ displayName: 'Bucket',
324
+ name: 'bucket',
325
+ type: 'string',
326
+ default: '',
327
+ description: 'The bucket name of an existing IONOS Cloud Object storage bucket',
328
+ routing: {
329
+ send: {
330
+ type: 'body',
331
+ property: 'properties.bucket',
332
+ },
333
+ },
334
+ },
335
+ ],
336
+ },
337
+ {
338
+ displayName: 'Forwarding Rule Properties',
339
+ name: 'forwardingRuleProperties',
340
+ type: 'collection',
341
+ placeholder: 'Add Forwarding Rule Property',
342
+ default: {},
343
+ displayOptions: {
344
+ show: {
345
+ resource: ['applicationLoadBalancer'],
346
+ operation: ['createForwardingRule', 'updateForwardingRule'],
347
+ },
348
+ },
349
+ options: [
350
+ {
351
+ displayName: 'Client Timeout',
352
+ name: 'clientTimeout',
353
+ type: 'number',
354
+ default: 50000,
355
+ description: 'The maximum time in milliseconds to wait for the client to acknowledge or send data. Default is 50,000 (50 seconds).',
356
+ routing: {
357
+ send: {
358
+ type: 'body',
359
+ property: 'properties.clientTimeout',
360
+ value: '={{ $value || undefined }}',
361
+ },
362
+ },
363
+ },
364
+ {
365
+ displayName: 'HTTP Rules',
366
+ name: 'httpRules',
367
+ type: 'fixedCollection',
368
+ typeOptions: {
369
+ multipleValues: true,
370
+ },
371
+ default: {},
372
+ placeholder: 'Add HTTP Rule',
373
+ description: 'HTTP routing rules for the forwarding rule. Rules are processed in order except FORWARD type rules which are processed last.',
374
+ options: [
375
+ {
376
+ name: 'rules',
377
+ displayName: 'Rules',
378
+ values: [
379
+ {
380
+ displayName: 'Content Type',
381
+ name: 'contentType',
382
+ type: 'string',
383
+ default: 'text/html',
384
+ description: 'The content type for STATIC type rules',
385
+ },
386
+ {
387
+ displayName: 'Drop Query',
388
+ name: 'dropQuery',
389
+ type: 'boolean',
390
+ default: false,
391
+ description: 'Whether to drop query string during redirect',
392
+ },
393
+ {
394
+ displayName: 'Location',
395
+ name: 'location',
396
+ type: 'string',
397
+ default: '',
398
+ description: 'The location URL for REDIRECT type rules',
399
+ },
400
+ {
401
+ displayName: 'Name',
402
+ name: 'name',
403
+ type: 'string',
404
+ default: '',
405
+ description: 'The name of the HTTP rule',
406
+ },
407
+ {
408
+ displayName: 'Response Message',
409
+ name: 'responseMessage',
410
+ type: 'string',
411
+ default: '',
412
+ description: 'The response message body for STATIC type rules',
413
+ },
414
+ {
415
+ displayName: 'Status Code',
416
+ name: 'statusCode',
417
+ type: 'number',
418
+ default: 200,
419
+ description: 'HTTP status code for STATIC type rules',
420
+ },
421
+ {
422
+ displayName: 'Target Group',
423
+ name: 'targetGroup',
424
+ type: 'string',
425
+ default: '',
426
+ description: 'The UUID of the target group for FORWARD type rules',
427
+ },
428
+ {
429
+ displayName: 'Type',
430
+ name: 'type',
431
+ type: 'options',
432
+ default: 'FORWARD',
433
+ options: [
434
+ {
435
+ name: 'FORWARD',
436
+ value: 'FORWARD',
437
+ },
438
+ {
439
+ name: 'STATIC',
440
+ value: 'STATIC',
441
+ },
442
+ {
443
+ name: 'REDIRECT',
444
+ value: 'REDIRECT',
445
+ },
446
+ ],
447
+ description: 'The type of HTTP rule action',
448
+ },
449
+ ],
450
+ },
451
+ ],
452
+ routing: {
453
+ send: {
454
+ preSend: [
455
+ async function (requestOptions) {
456
+ const httpRules = this.getNodeParameter('forwardingRuleProperties.httpRules');
457
+ if ((httpRules === null || httpRules === void 0 ? void 0 : httpRules.rules) && Array.isArray(httpRules.rules) && httpRules.rules.length > 0) {
458
+ const body = requestOptions.body;
459
+ if (!body.properties) {
460
+ body.properties = {};
461
+ }
462
+ body.properties.httpRules = httpRules.rules;
463
+ }
464
+ return requestOptions;
465
+ },
466
+ ],
467
+ },
468
+ },
469
+ },
470
+ {
471
+ displayName: 'Listener IP',
472
+ name: 'listenerIp',
473
+ type: 'string',
474
+ default: '',
475
+ description: 'The listening (inbound) IP',
476
+ routing: {
477
+ send: {
478
+ type: 'body',
479
+ property: 'properties.listenerIp',
480
+ },
481
+ },
482
+ },
483
+ {
484
+ displayName: 'Listener Port',
485
+ name: 'listenerPort',
486
+ type: 'number',
487
+ default: 8080,
488
+ typeOptions: {
489
+ minValue: 1,
490
+ maxValue: 65535,
491
+ },
492
+ description: 'The listening (inbound) port number; valid range is 1 to 65535',
493
+ routing: {
494
+ send: {
495
+ type: 'body',
496
+ property: 'properties.listenerPort',
497
+ },
498
+ },
499
+ },
500
+ {
501
+ displayName: 'Name',
502
+ name: 'name',
503
+ type: 'string',
504
+ default: '',
505
+ description: 'The name of the Application Load Balancer forwarding rule',
506
+ routing: {
507
+ send: {
508
+ type: 'body',
509
+ property: 'properties.name',
510
+ },
511
+ },
512
+ },
513
+ {
514
+ displayName: 'Protocol',
515
+ name: 'protocol',
516
+ type: 'options',
517
+ default: 'HTTP',
518
+ options: [
519
+ {
520
+ name: 'HTTP',
521
+ value: 'HTTP',
522
+ },
523
+ ],
524
+ description: 'The balancing protocol. Only HTTP is supported for Application Load Balancers (immutable - only used during creation).',
525
+ routing: {
526
+ send: {
527
+ type: 'body',
528
+ property: 'properties.protocol',
529
+ },
530
+ },
531
+ },
532
+ {
533
+ displayName: 'Server Certificates',
534
+ name: 'serverCertificates',
535
+ type: 'string',
536
+ default: '',
537
+ placeholder: 'certificate-uuid-1, certificate-uuid-2',
538
+ description: 'Comma-separated list of server certificate UUIDs for HTTPS support',
539
+ routing: {
540
+ send: {
541
+ type: 'body',
542
+ property: 'properties.serverCertificates',
543
+ value: '={{ $value ? $value.split(",").map(v => v.trim()).filter(v => v) : undefined }}',
544
+ },
545
+ },
546
+ },
547
+ ],
548
+ },
201
549
  ];
202
550
  //# sourceMappingURL=applicationLoadBalancer.js.map