@admin_programini/n8n-nodes-monitorix360 0.1.0

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 (129) hide show
  1. package/LICENSE.md +19 -0
  2. package/README.md +132 -0
  3. package/dist/credentials/Monitorix360IntegrationApi.credentials.d.ts +10 -0
  4. package/dist/credentials/Monitorix360IntegrationApi.credentials.js +49 -0
  5. package/dist/credentials/Monitorix360IntegrationApi.credentials.js.map +1 -0
  6. package/dist/credentials/Monitorix360PingApi.credentials.d.ts +10 -0
  7. package/dist/credentials/Monitorix360PingApi.credentials.js +49 -0
  8. package/dist/credentials/Monitorix360PingApi.credentials.js.map +1 -0
  9. package/dist/nodes/Monitorix360/Monitorix360.node.d.ts +14 -0
  10. package/dist/nodes/Monitorix360/Monitorix360.node.js +234 -0
  11. package/dist/nodes/Monitorix360/Monitorix360.node.js.map +1 -0
  12. package/dist/nodes/Monitorix360/Monitorix360.node.json +18 -0
  13. package/dist/nodes/Monitorix360/helpers/binaryFilePostReceive.d.ts +4 -0
  14. package/dist/nodes/Monitorix360/helpers/binaryFilePostReceive.js +16 -0
  15. package/dist/nodes/Monitorix360/helpers/binaryFilePostReceive.js.map +1 -0
  16. package/dist/nodes/Monitorix360/helpers/loadTeamOptions.d.ts +2 -0
  17. package/dist/nodes/Monitorix360/helpers/loadTeamOptions.js +40 -0
  18. package/dist/nodes/Monitorix360/helpers/loadTeamOptions.js.map +1 -0
  19. package/dist/nodes/Monitorix360/helpers/loadWebsiteServerOptions.d.ts +2 -0
  20. package/dist/nodes/Monitorix360/helpers/loadWebsiteServerOptions.js +69 -0
  21. package/dist/nodes/Monitorix360/helpers/loadWebsiteServerOptions.js.map +1 -0
  22. package/dist/nodes/Monitorix360/helpers/resource.d.ts +10 -0
  23. package/dist/nodes/Monitorix360/helpers/resource.js +14 -0
  24. package/dist/nodes/Monitorix360/helpers/resource.js.map +1 -0
  25. package/dist/nodes/Monitorix360/helpers/routing.d.ts +18 -0
  26. package/dist/nodes/Monitorix360/helpers/routing.js +80 -0
  27. package/dist/nodes/Monitorix360/helpers/routing.js.map +1 -0
  28. package/dist/nodes/Monitorix360/helpers/slaReportPostReceive.d.ts +1 -0
  29. package/dist/nodes/Monitorix360/helpers/slaReportPostReceive.js +6 -0
  30. package/dist/nodes/Monitorix360/helpers/slaReportPostReceive.js.map +1 -0
  31. package/dist/nodes/Monitorix360/monitorix360.dark.svg +907 -0
  32. package/dist/nodes/Monitorix360/monitorix360.svg +907 -0
  33. package/dist/nodes/Monitorix360/operationParameters.d.ts +6 -0
  34. package/dist/nodes/Monitorix360/operationParameters.js +36 -0
  35. package/dist/nodes/Monitorix360/operationParameters.js.map +1 -0
  36. package/dist/nodes/Monitorix360/operations/alert/alertOperations.d.ts +4 -0
  37. package/dist/nodes/Monitorix360/operations/alert/alertOperations.js +49 -0
  38. package/dist/nodes/Monitorix360/operations/alert/alertOperations.js.map +1 -0
  39. package/dist/nodes/Monitorix360/operations/expiringSecret/expiringSecretOperations.d.ts +5 -0
  40. package/dist/nodes/Monitorix360/operations/expiringSecret/expiringSecretOperations.js +70 -0
  41. package/dist/nodes/Monitorix360/operations/expiringSecret/expiringSecretOperations.js.map +1 -0
  42. package/dist/nodes/Monitorix360/operations/monitoredTask/monitoredTaskOperations.d.ts +6 -0
  43. package/dist/nodes/Monitorix360/operations/monitoredTask/monitoredTaskOperations.js +272 -0
  44. package/dist/nodes/Monitorix360/operations/monitoredTask/monitoredTaskOperations.js.map +1 -0
  45. package/dist/nodes/Monitorix360/operations/notifications/notificationsOperations.d.ts +6 -0
  46. package/dist/nodes/Monitorix360/operations/notifications/notificationsOperations.js +69 -0
  47. package/dist/nodes/Monitorix360/operations/notifications/notificationsOperations.js.map +1 -0
  48. package/dist/nodes/Monitorix360/operations/query/gridifyOperation.d.ts +2 -0
  49. package/dist/nodes/Monitorix360/operations/query/gridifyOperation.js +286 -0
  50. package/dist/nodes/Monitorix360/operations/query/gridifyOperation.js.map +1 -0
  51. package/dist/nodes/Monitorix360/operations/server/serverOperations.d.ts +5 -0
  52. package/dist/nodes/Monitorix360/operations/server/serverOperations.js +172 -0
  53. package/dist/nodes/Monitorix360/operations/server/serverOperations.js.map +1 -0
  54. package/dist/nodes/Monitorix360/operations/server/serverReportOperations.d.ts +5 -0
  55. package/dist/nodes/Monitorix360/operations/server/serverReportOperations.js +88 -0
  56. package/dist/nodes/Monitorix360/operations/server/serverReportOperations.js.map +1 -0
  57. package/dist/nodes/Monitorix360/operations/server/serverSlaOperations.d.ts +6 -0
  58. package/dist/nodes/Monitorix360/operations/server/serverSlaOperations.js +110 -0
  59. package/dist/nodes/Monitorix360/operations/server/serverSlaOperations.js.map +1 -0
  60. package/dist/nodes/Monitorix360/operations/server/serverUsageOperations.d.ts +5 -0
  61. package/dist/nodes/Monitorix360/operations/server/serverUsageOperations.js +103 -0
  62. package/dist/nodes/Monitorix360/operations/server/serverUsageOperations.js.map +1 -0
  63. package/dist/nodes/Monitorix360/operations/task/teamTaskOperations.d.ts +5 -0
  64. package/dist/nodes/Monitorix360/operations/task/teamTaskOperations.js +49 -0
  65. package/dist/nodes/Monitorix360/operations/task/teamTaskOperations.js.map +1 -0
  66. package/dist/nodes/Monitorix360/operations/team/teamOperations.d.ts +4 -0
  67. package/dist/nodes/Monitorix360/operations/team/teamOperations.js +87 -0
  68. package/dist/nodes/Monitorix360/operations/team/teamOperations.js.map +1 -0
  69. package/dist/nodes/Monitorix360/operations/user/userPreferenceOperations.d.ts +4 -0
  70. package/dist/nodes/Monitorix360/operations/user/userPreferenceOperations.js +78 -0
  71. package/dist/nodes/Monitorix360/operations/user/userPreferenceOperations.js.map +1 -0
  72. package/dist/nodes/Monitorix360/operations/webhook/webhookOperations.d.ts +7 -0
  73. package/dist/nodes/Monitorix360/operations/webhook/webhookOperations.js +83 -0
  74. package/dist/nodes/Monitorix360/operations/webhook/webhookOperations.js.map +1 -0
  75. package/dist/nodes/Monitorix360/operations/website/websiteOperations.d.ts +5 -0
  76. package/dist/nodes/Monitorix360/operations/website/websiteOperations.js +146 -0
  77. package/dist/nodes/Monitorix360/operations/website/websiteOperations.js.map +1 -0
  78. package/dist/nodes/Monitorix360/operations/website/websiteReportOperations.d.ts +7 -0
  79. package/dist/nodes/Monitorix360/operations/website/websiteReportOperations.js +194 -0
  80. package/dist/nodes/Monitorix360/operations/website/websiteReportOperations.js.map +1 -0
  81. package/dist/nodes/Monitorix360/operations/website/websiteSlaOperations.d.ts +6 -0
  82. package/dist/nodes/Monitorix360/operations/website/websiteSlaOperations.js +110 -0
  83. package/dist/nodes/Monitorix360/operations/website/websiteSlaOperations.js.map +1 -0
  84. package/dist/nodes/Monitorix360/options/expiringSecretIdOptions.d.ts +2 -0
  85. package/dist/nodes/Monitorix360/options/expiringSecretIdOptions.js +23 -0
  86. package/dist/nodes/Monitorix360/options/expiringSecretIdOptions.js.map +1 -0
  87. package/dist/nodes/Monitorix360/options/monitoredTaskIdOptions.d.ts +2 -0
  88. package/dist/nodes/Monitorix360/options/monitoredTaskIdOptions.js +23 -0
  89. package/dist/nodes/Monitorix360/options/monitoredTaskIdOptions.js.map +1 -0
  90. package/dist/nodes/Monitorix360/options/optionalTeamIdOptions.d.ts +2 -0
  91. package/dist/nodes/Monitorix360/options/optionalTeamIdOptions.js +18 -0
  92. package/dist/nodes/Monitorix360/options/optionalTeamIdOptions.js.map +1 -0
  93. package/dist/nodes/Monitorix360/options/reportIdOptions.d.ts +2 -0
  94. package/dist/nodes/Monitorix360/options/reportIdOptions.js +19 -0
  95. package/dist/nodes/Monitorix360/options/reportIdOptions.js.map +1 -0
  96. package/dist/nodes/Monitorix360/options/serverOptions.d.ts +2 -0
  97. package/dist/nodes/Monitorix360/options/serverOptions.js +34 -0
  98. package/dist/nodes/Monitorix360/options/serverOptions.js.map +1 -0
  99. package/dist/nodes/Monitorix360/options/slaConfigurationIdOptions.d.ts +2 -0
  100. package/dist/nodes/Monitorix360/options/slaConfigurationIdOptions.js +24 -0
  101. package/dist/nodes/Monitorix360/options/slaConfigurationIdOptions.js.map +1 -0
  102. package/dist/nodes/Monitorix360/options/taskIdOptions.d.ts +2 -0
  103. package/dist/nodes/Monitorix360/options/taskIdOptions.js +23 -0
  104. package/dist/nodes/Monitorix360/options/taskIdOptions.js.map +1 -0
  105. package/dist/nodes/Monitorix360/options/teamOptions.d.ts +2 -0
  106. package/dist/nodes/Monitorix360/options/teamOptions.js +67 -0
  107. package/dist/nodes/Monitorix360/options/teamOptions.js.map +1 -0
  108. package/dist/nodes/Monitorix360/options/webhookIdOptions.d.ts +2 -0
  109. package/dist/nodes/Monitorix360/options/webhookIdOptions.js +19 -0
  110. package/dist/nodes/Monitorix360/options/webhookIdOptions.js.map +1 -0
  111. package/dist/nodes/Monitorix360/options/webhookServerFilterOptions.d.ts +2 -0
  112. package/dist/nodes/Monitorix360/options/webhookServerFilterOptions.js +18 -0
  113. package/dist/nodes/Monitorix360/options/webhookServerFilterOptions.js.map +1 -0
  114. package/dist/nodes/Monitorix360/options/webhookWebsiteFilterOptions.d.ts +2 -0
  115. package/dist/nodes/Monitorix360/options/webhookWebsiteFilterOptions.js +18 -0
  116. package/dist/nodes/Monitorix360/options/webhookWebsiteFilterOptions.js.map +1 -0
  117. package/dist/nodes/Monitorix360/options/websiteOptions.d.ts +2 -0
  118. package/dist/nodes/Monitorix360/options/websiteOptions.js +32 -0
  119. package/dist/nodes/Monitorix360/options/websiteOptions.js.map +1 -0
  120. package/dist/nodes/Monitorix360Ping/Monitorix360Ping.node.d.ts +4 -0
  121. package/dist/nodes/Monitorix360Ping/Monitorix360Ping.node.js +150 -0
  122. package/dist/nodes/Monitorix360Ping/Monitorix360Ping.node.js.map +1 -0
  123. package/dist/nodes/Monitorix360Ping/Monitorix360Ping.node.json +18 -0
  124. package/dist/nodes/Monitorix360Ping/helpers/pingPostReceive.d.ts +2 -0
  125. package/dist/nodes/Monitorix360Ping/helpers/pingPostReceive.js +17 -0
  126. package/dist/nodes/Monitorix360Ping/helpers/pingPostReceive.js.map +1 -0
  127. package/dist/package.json +52 -0
  128. package/dist/tsconfig.tsbuildinfo +1 -0
  129. package/package.json +52 -0
package/LICENSE.md ADDED
@@ -0,0 +1,19 @@
1
+ Copyright 2022 n8n
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining a copy of
4
+ this software and associated documentation files (the "Software"), to deal in
5
+ the Software without restriction, including without limitation the rights to
6
+ use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
7
+ of the Software, and to permit persons to whom the Software is furnished to do
8
+ so, subject to the following conditions:
9
+
10
+ The above copyright notice and this permission notice shall be included in all
11
+ copies or substantial portions of the Software.
12
+
13
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
19
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,132 @@
1
+ # n8n-nodes-monitorix360
2
+
3
+ [n8n](https://n8n.io/) community nodes for **Monitorix360** — manage teams, websites, servers, reports, SLA, usage, and notifications via the Monitorix integration API (same style of credentials as the Monitorix360 Zapier app).
4
+
5
+ [Installation](#installation) · [Nodes](#nodes) · [Credentials](#credentials) · [Development](#development) · [Publishing](#publish-to-npm) · [License](#license)
6
+
7
+ ## Installation
8
+
9
+ Install as a [community node](https://docs.n8n.io/integrations/community-nodes/installation/) from npm:
10
+
11
+ - Package name: `n8n-nodes-monitorix360`
12
+
13
+ In the n8n UI: **Settings → Community nodes → Install** and enter the package name, or follow the CLI/docker instructions in the n8n docs for your deployment.
14
+
15
+ ## Nodes
16
+
17
+ This package includes two community nodes:
18
+
19
+ | Node | Purpose |
20
+ | ---- | ------- |
21
+ | **Monitorix 360** | Full integration API — teams, websites, servers, reports, SLA, alerts, webhooks, and more. |
22
+ | **Monitorix 360 Ping** | Heartbeat pings for monitored tasks (`start`, `success`, `fail`). |
23
+
24
+ ## Credentials
25
+
26
+ ### Monitorix360 Integration API
27
+
28
+ Used by the **Monitorix 360** node.
29
+
30
+ | Field | Description |
31
+ | ----- | ----------- |
32
+ | **Base URL** | Root URL of your Monitorix API instance (no trailing slash). |
33
+ | **API Key** | Integration API key; sent as `Authorization: Monitorix-Integration {key}`. |
34
+
35
+ Use **Test** to call `GET /users/profile` and verify the key and URL.
36
+
37
+ ### Monitorix360 Ping API
38
+
39
+ Used by the **Monitorix 360 Ping** node.
40
+
41
+ | Field | Description |
42
+ | ----- | ----------- |
43
+ | **Base URL** | Root URL of your Monitorix API instance (no trailing slash). |
44
+ | **Ping Secret** | Optional value sent as `X-Monitorix-Ping-Secret` when the monitored task requires ping authentication. |
45
+
46
+ ## Operations
47
+
48
+ ### Monitorix 360
49
+
50
+ Configure **Resource** and **Operation** in the node panel. Available resources:
51
+
52
+ - **Alert** — list and manage alerts
53
+ - **Expiring Secret** — list expiring secrets
54
+ - **Monitored Task** — list monitored tasks
55
+ - **Notification** — list notifications
56
+ - **Server** — CRUD and list servers
57
+ - **Server Report** — generate and download server reports (PDF)
58
+ - **Server SLA** — SLA configurations and breach reports
59
+ - **Server Usage** — server usage metrics
60
+ - **Team** — list teams
61
+ - **Team Task** — list team tasks
62
+ - **User Preference** — read user preferences
63
+ - **Webhook** — list and manage webhooks
64
+ - **Website** — CRUD and list websites
65
+ - **Website Report** — generate and download website reports (PDF)
66
+ - **Website SLA** — SLA configurations and breach reports
67
+
68
+ Many list operations support **Gridify**-style query parameters (filter, sort, page) when enabled on the operation.
69
+
70
+ ### Monitorix 360 Ping
71
+
72
+ Send heartbeat pings for a monitored task using its **Ping Token**:
73
+
74
+ | Operation | Endpoint |
75
+ | --------- | -------- |
76
+ | **Start** | `POST` or `GET` `/ping/{token}/start` |
77
+ | **Success** | `POST` or `GET` `/ping/{token}/success` |
78
+ | **Fail** | `POST` or `GET` `/ping/{token}/fail` |
79
+
80
+ `POST` is recommended. You can optionally attach a JSON object or array body (max 4 KB) on `POST` requests.
81
+
82
+ ## Compatibility
83
+
84
+ - Intended for current n8n community node requirements (`n8nNodesApiVersion` 1).
85
+ - Requires a running Monitorix Web API that supports the integration endpoints used by this package.
86
+
87
+ ## Development
88
+
89
+ Prerequisites: Node.js (LTS recommended) and npm.
90
+
91
+ ```bash
92
+ npm install
93
+ npm run dev
94
+ ```
95
+
96
+ Other scripts:
97
+
98
+ | Script | Description |
99
+ | ---------------- | ------------------ |
100
+ | `npm run build` | Production build to `dist/` |
101
+ | `npm run lint` | Lint |
102
+ | `npm run lint:fix` | Lint with fixes |
103
+ | `npm run release` | Version bump, tag, push (triggers publish workflow) |
104
+
105
+ ## Publish to npm
106
+
107
+ Publishing runs from [`.github/workflows/publish.yml`](.github/workflows/publish.yml) on version tags, with npm provenance (required for n8n community nodes from May 1, 2026).
108
+
109
+ ### One-time setup
110
+
111
+ In [npmjs.com](https://www.npmjs.com) package settings → **Publish access → Trusted Publishers**, add:
112
+
113
+ - **Repository owner**: `vmagprogramini` (or your GitHub user/org)
114
+ - **Repository name**: `n8n-nodes-monitorix360`
115
+ - **Workflow name**: `publish.yml`
116
+
117
+ You can omit `NPM_TOKEN` if you use trusted publishing (OIDC). Alternatively, set an npm granular token as the `NPM_TOKEN` repository secret; see comments in `publish.yml`.
118
+
119
+ ### Release
120
+
121
+ ```bash
122
+ npm run release
123
+ ```
124
+
125
+ ## Resources
126
+
127
+ - [n8n community nodes documentation](https://docs.n8n.io/integrations/community-nodes/)
128
+ - [This repository](https://github.com/vmagprogramini/n8n-nodes-monitorix360)
129
+
130
+ ## License
131
+
132
+ [MIT](LICENSE.md)
@@ -0,0 +1,10 @@
1
+ import type { IAuthenticateGeneric, ICredentialTestRequest, ICredentialType, Icon, INodeProperties } from 'n8n-workflow';
2
+ export declare class Monitorix360IntegrationApi implements ICredentialType {
3
+ name: string;
4
+ displayName: string;
5
+ icon: Icon;
6
+ documentationUrl: string;
7
+ properties: INodeProperties[];
8
+ authenticate: IAuthenticateGeneric;
9
+ test: ICredentialTestRequest;
10
+ }
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Monitorix360IntegrationApi = void 0;
4
+ class Monitorix360IntegrationApi {
5
+ constructor() {
6
+ this.name = 'monitorix360IntegrationApi';
7
+ this.displayName = 'Monitorix360 Integration API';
8
+ this.icon = {
9
+ light: 'file:../nodes/Monitorix360/monitorix360.svg',
10
+ dark: 'file:../nodes/Monitorix360/monitorix360.dark.svg',
11
+ };
12
+ this.documentationUrl = 'https://github.com/vmagprogramini/n8n-nodes-monitorix360#credentials';
13
+ this.properties = [
14
+ {
15
+ displayName: 'Base URL',
16
+ name: 'baseUrl',
17
+ type: 'string',
18
+ default: 'https://api.dev.monitorix360.com',
19
+ placeholder: 'https://api.dev.monitorix360.com',
20
+ description: 'Root URL of the Api instance (no trailing slash).',
21
+ },
22
+ {
23
+ displayName: 'API Key',
24
+ name: 'apiKey',
25
+ type: 'string',
26
+ typeOptions: { password: true },
27
+ default: '',
28
+ description: 'Integration API key sent as Authorization: Monitorix-Integration followed by the key value.',
29
+ },
30
+ ];
31
+ this.authenticate = {
32
+ type: 'generic',
33
+ properties: {
34
+ headers: {
35
+ Authorization: '=Monitorix-Integration {{$credentials.apiKey}}',
36
+ },
37
+ },
38
+ };
39
+ this.test = {
40
+ request: {
41
+ baseURL: '={{$credentials.baseUrl}}',
42
+ url: '/users/profile',
43
+ method: 'GET',
44
+ },
45
+ };
46
+ }
47
+ }
48
+ exports.Monitorix360IntegrationApi = Monitorix360IntegrationApi;
49
+ //# sourceMappingURL=Monitorix360IntegrationApi.credentials.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Monitorix360IntegrationApi.credentials.js","sourceRoot":"","sources":["../../credentials/Monitorix360IntegrationApi.credentials.ts"],"names":[],"mappings":";;;AAQA,MAAa,0BAA0B;IAAvC;QACC,SAAI,GAAG,4BAA4B,CAAC;QAEpC,gBAAW,GAAG,8BAA8B,CAAC;QAE7C,SAAI,GAAS;YACZ,KAAK,EAAE,6CAA6C;YACpD,IAAI,EAAE,kDAAkD;SACxD,CAAC;QAEF,qBAAgB,GACf,sEAAsE,CAAC;QAExE,eAAU,GAAsB;YAC/B;gBACC,WAAW,EAAE,UAAU;gBACvB,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,kCAAkC;gBAC3C,WAAW,EAAE,kCAAkC;gBAC/C,WAAW,EACV,mDAAmD;aACpD;YACD;gBACC,WAAW,EAAE,SAAS;gBACtB,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;gBAC/B,OAAO,EAAE,EAAE;gBACX,WAAW,EACV,6FAA6F;aAC9F;SACD,CAAC;QAEF,iBAAY,GAAyB;YACpC,IAAI,EAAE,SAAS;YACf,UAAU,EAAE;gBACX,OAAO,EAAE;oBACR,aAAa,EAAE,gDAAgD;iBAC/D;aACD;SACD,CAAC;QAEF,SAAI,GAA2B;YAC9B,OAAO,EAAE;gBACR,OAAO,EAAE,2BAA2B;gBACpC,GAAG,EAAE,gBAAgB;gBACrB,MAAM,EAAE,KAAK;aACb;SACD,CAAC;IACH,CAAC;CAAA;AAlDD,gEAkDC"}
@@ -0,0 +1,10 @@
1
+ import type { IAuthenticateGeneric, ICredentialTestRequest, ICredentialType, Icon, INodeProperties } from 'n8n-workflow';
2
+ export declare class Monitorix360PingApi implements ICredentialType {
3
+ name: string;
4
+ displayName: string;
5
+ icon: Icon;
6
+ documentationUrl: string;
7
+ properties: INodeProperties[];
8
+ authenticate: IAuthenticateGeneric;
9
+ test: ICredentialTestRequest;
10
+ }
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Monitorix360PingApi = void 0;
4
+ class Monitorix360PingApi {
5
+ constructor() {
6
+ this.name = 'monitorix360PingApi';
7
+ this.displayName = 'Monitorix360 Ping API';
8
+ this.icon = {
9
+ light: 'file:../nodes/Monitorix360/monitorix360.svg',
10
+ dark: 'file:../nodes/Monitorix360/monitorix360.dark.svg',
11
+ };
12
+ this.documentationUrl = 'https://github.com/vmagprogramini/n8n-nodes-monitorix360#credentials';
13
+ this.properties = [
14
+ {
15
+ displayName: 'Base URL',
16
+ name: 'baseUrl',
17
+ type: 'string',
18
+ default: 'https://api.dev.monitorix360.com',
19
+ placeholder: 'https://api.dev.monitorix360.com',
20
+ description: 'Root URL of the API instance (no trailing slash).',
21
+ },
22
+ {
23
+ displayName: 'Ping Secret',
24
+ name: 'pingSecret',
25
+ type: 'string',
26
+ typeOptions: { password: true },
27
+ default: '',
28
+ description: 'Optional secret sent as X-Monitorix-Ping-Secret when the monitored task requires ping authentication.',
29
+ },
30
+ ];
31
+ this.authenticate = {
32
+ type: 'generic',
33
+ properties: {
34
+ headers: {
35
+ 'X-Monitorix-Ping-Secret': '={{$credentials.pingSecret || undefined}}',
36
+ },
37
+ },
38
+ };
39
+ this.test = {
40
+ request: {
41
+ baseURL: '={{$credentials.baseUrl}}',
42
+ url: '/',
43
+ method: 'GET',
44
+ },
45
+ };
46
+ }
47
+ }
48
+ exports.Monitorix360PingApi = Monitorix360PingApi;
49
+ //# sourceMappingURL=Monitorix360PingApi.credentials.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Monitorix360PingApi.credentials.js","sourceRoot":"","sources":["../../credentials/Monitorix360PingApi.credentials.ts"],"names":[],"mappings":";;;AAQA,MAAa,mBAAmB;IAAhC;QACC,SAAI,GAAG,qBAAqB,CAAC;QAE7B,gBAAW,GAAG,uBAAuB,CAAC;QAEtC,SAAI,GAAS;YACZ,KAAK,EAAE,6CAA6C;YACpD,IAAI,EAAE,kDAAkD;SACxD,CAAC;QAEF,qBAAgB,GACf,sEAAsE,CAAC;QAExE,eAAU,GAAsB;YAC/B;gBACC,WAAW,EAAE,UAAU;gBACvB,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,kCAAkC;gBAC3C,WAAW,EAAE,kCAAkC;gBAC/C,WAAW,EAAE,mDAAmD;aAChE;YACD;gBACC,WAAW,EAAE,aAAa;gBAC1B,IAAI,EAAE,YAAY;gBAClB,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;gBAC/B,OAAO,EAAE,EAAE;gBACX,WAAW,EACV,uGAAuG;aACxG;SACD,CAAC;QAEF,iBAAY,GAAyB;YACpC,IAAI,EAAE,SAAS;YACf,UAAU,EAAE;gBACX,OAAO,EAAE;oBACR,yBAAyB,EAAE,2CAA2C;iBACtE;aACD;SACD,CAAC;QAEF,SAAI,GAA2B;YAC9B,OAAO,EAAE;gBACR,OAAO,EAAE,2BAA2B;gBACpC,GAAG,EAAE,GAAG;gBACR,MAAM,EAAE,KAAK;aACb;SACD,CAAC;IACH,CAAC;CAAA;AAjDD,kDAiDC"}
@@ -0,0 +1,14 @@
1
+ import { type ILoadOptionsFunctions, type INodeType, type INodeTypeDescription } from 'n8n-workflow';
2
+ export declare class Monitorix360 implements INodeType {
3
+ methods: {
4
+ loadOptions: {
5
+ getTeams(this: ILoadOptionsFunctions): Promise<import("n8n-workflow").INodePropertyOptions[]>;
6
+ getWebsites(this: ILoadOptionsFunctions): Promise<import("n8n-workflow").INodePropertyOptions[]>;
7
+ getServers(this: ILoadOptionsFunctions): Promise<import("n8n-workflow").INodePropertyOptions[]>;
8
+ getMonitoredTasks(this: ILoadOptionsFunctions): Promise<import("n8n-workflow").INodePropertyOptions[]>;
9
+ getExpiringSecrets(this: ILoadOptionsFunctions): Promise<import("n8n-workflow").INodePropertyOptions[]>;
10
+ getTeamTasks(this: ILoadOptionsFunctions): Promise<import("n8n-workflow").INodePropertyOptions[]>;
11
+ };
12
+ };
13
+ description: INodeTypeDescription;
14
+ }
@@ -0,0 +1,234 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Monitorix360 = void 0;
4
+ const n8n_workflow_1 = require("n8n-workflow");
5
+ const loadTeamOptions_1 = require("./helpers/loadTeamOptions");
6
+ const loadWebsiteServerOptions_1 = require("./helpers/loadWebsiteServerOptions");
7
+ const teamOperations_1 = require("./operations/team/teamOperations");
8
+ const websiteOperations_1 = require("./operations/website/websiteOperations");
9
+ const serverOperations_1 = require("./operations/server/serverOperations");
10
+ const websiteSlaOperations_1 = require("./operations/website/websiteSlaOperations");
11
+ const teamOptions_1 = require("./options/teamOptions");
12
+ const serverOptions_1 = require("./options/serverOptions");
13
+ const websiteOptions_1 = require("./options/websiteOptions");
14
+ const reportIdOptions_1 = require("./options/reportIdOptions");
15
+ const slaConfigurationIdOptions_1 = require("./options/slaConfigurationIdOptions");
16
+ const websiteReportOperations_1 = require("./operations/website/websiteReportOperations");
17
+ const serverReportOperations_1 = require("./operations/server/serverReportOperations");
18
+ const serverUsageOperations_1 = require("./operations/server/serverUsageOperations");
19
+ const serverSlaOperations_1 = require("./operations/server/serverSlaOperations");
20
+ const notificationsOperations_1 = require("./operations/notifications/notificationsOperations");
21
+ const gridifyOperation_1 = require("./operations/query/gridifyOperation");
22
+ const userPreferenceOperations_1 = require("./operations/user/userPreferenceOperations");
23
+ const monitoredTaskOperations_1 = require("./operations/monitoredTask/monitoredTaskOperations");
24
+ const expiringSecretOperations_1 = require("./operations/expiringSecret/expiringSecretOperations");
25
+ const alertOperations_1 = require("./operations/alert/alertOperations");
26
+ const teamTaskOperations_1 = require("./operations/task/teamTaskOperations");
27
+ const webhookOperations_1 = require("./operations/webhook/webhookOperations");
28
+ const optionalTeamIdOptions_1 = require("./options/optionalTeamIdOptions");
29
+ const monitoredTaskIdOptions_1 = require("./options/monitoredTaskIdOptions");
30
+ const expiringSecretIdOptions_1 = require("./options/expiringSecretIdOptions");
31
+ const taskIdOptions_1 = require("./options/taskIdOptions");
32
+ const webhookIdOptions_1 = require("./options/webhookIdOptions");
33
+ const webhookServerFilterOptions_1 = require("./options/webhookServerFilterOptions");
34
+ const webhookWebsiteFilterOptions_1 = require("./options/webhookWebsiteFilterOptions");
35
+ const CREDENTIAL_TYPE = 'monitorix360IntegrationApi';
36
+ async function getBaseUrlAndCredentialType() {
37
+ var _a;
38
+ const credentials = await this.getCredentials(CREDENTIAL_TYPE);
39
+ const baseUrl = String((_a = credentials.baseUrl) !== null && _a !== void 0 ? _a : '').replace(/\/$/, '');
40
+ return { baseUrl, credentialType: CREDENTIAL_TYPE };
41
+ }
42
+ class Monitorix360 {
43
+ constructor() {
44
+ this.methods = {
45
+ loadOptions: {
46
+ async getTeams() {
47
+ const { baseUrl, credentialType } = await getBaseUrlAndCredentialType.call(this);
48
+ const response = await this.helpers.httpRequestWithAuthentication.call(this, credentialType, {
49
+ method: 'GET',
50
+ baseURL: baseUrl,
51
+ url: '/users/profile',
52
+ headers: {
53
+ Accept: 'application/json',
54
+ },
55
+ json: true,
56
+ });
57
+ return (0, loadTeamOptions_1.mapTeamsFromProfileResponse)(response);
58
+ },
59
+ async getWebsites() {
60
+ var _a;
61
+ const teamId = String((_a = this.getCurrentNodeParameter('teamId')) !== null && _a !== void 0 ? _a : '').trim();
62
+ if (!teamId)
63
+ return [];
64
+ const { baseUrl, credentialType } = await getBaseUrlAndCredentialType.call(this);
65
+ const response = await this.helpers.httpRequestWithAuthentication.call(this, credentialType, {
66
+ method: 'GET',
67
+ baseURL: baseUrl,
68
+ url: `/teams/${teamId}/websites`,
69
+ headers: {
70
+ Accept: 'application/json',
71
+ },
72
+ json: true,
73
+ });
74
+ return (0, loadWebsiteServerOptions_1.mapWebsiteServerListResponse)(response);
75
+ },
76
+ async getServers() {
77
+ var _a;
78
+ const teamId = String((_a = this.getCurrentNodeParameter('teamId')) !== null && _a !== void 0 ? _a : '').trim();
79
+ if (!teamId)
80
+ return [];
81
+ const { baseUrl, credentialType } = await getBaseUrlAndCredentialType.call(this);
82
+ const response = await this.helpers.httpRequestWithAuthentication.call(this, credentialType, {
83
+ method: 'GET',
84
+ baseURL: baseUrl,
85
+ url: `/teams/${teamId}/servers`,
86
+ headers: {
87
+ Accept: 'application/json',
88
+ },
89
+ json: true,
90
+ });
91
+ return (0, loadWebsiteServerOptions_1.mapWebsiteServerListResponse)(response);
92
+ },
93
+ async getMonitoredTasks() {
94
+ var _a;
95
+ const teamId = String((_a = this.getCurrentNodeParameter('teamId')) !== null && _a !== void 0 ? _a : '').trim();
96
+ if (!teamId)
97
+ return [];
98
+ const { baseUrl, credentialType } = await getBaseUrlAndCredentialType.call(this);
99
+ const response = await this.helpers.httpRequestWithAuthentication.call(this, credentialType, {
100
+ method: 'GET',
101
+ baseURL: baseUrl,
102
+ url: `/teams/${teamId}/monitored-tasks`,
103
+ headers: {
104
+ Accept: 'application/json',
105
+ },
106
+ json: true,
107
+ });
108
+ return (0, loadWebsiteServerOptions_1.mapWebsiteServerListResponse)(response);
109
+ },
110
+ async getExpiringSecrets() {
111
+ var _a;
112
+ const teamId = String((_a = this.getCurrentNodeParameter('teamId')) !== null && _a !== void 0 ? _a : '').trim();
113
+ if (!teamId)
114
+ return [];
115
+ const { baseUrl, credentialType } = await getBaseUrlAndCredentialType.call(this);
116
+ const response = await this.helpers.httpRequestWithAuthentication.call(this, credentialType, {
117
+ method: 'GET',
118
+ baseURL: baseUrl,
119
+ url: `/teams/${teamId}/expiring-secrets`,
120
+ headers: {
121
+ Accept: 'application/json',
122
+ },
123
+ json: true,
124
+ });
125
+ return (0, loadWebsiteServerOptions_1.mapWebsiteServerListResponse)(response);
126
+ },
127
+ async getTeamTasks() {
128
+ var _a;
129
+ const teamId = String((_a = this.getCurrentNodeParameter('teamId')) !== null && _a !== void 0 ? _a : '').trim();
130
+ if (!teamId)
131
+ return [];
132
+ const { baseUrl, credentialType } = await getBaseUrlAndCredentialType.call(this);
133
+ const response = await this.helpers.httpRequestWithAuthentication.call(this, credentialType, {
134
+ method: 'GET',
135
+ baseURL: baseUrl,
136
+ url: `/teams/${teamId}/tasks`,
137
+ headers: {
138
+ Accept: 'application/json',
139
+ },
140
+ json: true,
141
+ });
142
+ return (0, loadWebsiteServerOptions_1.mapWebsiteServerListResponse)(response);
143
+ },
144
+ },
145
+ };
146
+ this.description = {
147
+ displayName: 'Monitorix 360',
148
+ name: 'monitorix360',
149
+ icon: {
150
+ light: 'file:monitorix360.svg',
151
+ dark: 'file:monitorix360.dark.svg',
152
+ },
153
+ group: ['transform'],
154
+ version: 3,
155
+ subtitle: '={{ $parameter["operation"] + ": " + $parameter["resource"] }}',
156
+ description: 'Call the Monitorix Web.Api — websites, servers and teams (integration API key, same credentials as Monitorix360 Zapier app).',
157
+ defaults: {
158
+ name: 'Monitorix 360',
159
+ },
160
+ usableAsTool: true,
161
+ inputs: [n8n_workflow_1.NodeConnectionTypes.Main],
162
+ outputs: [n8n_workflow_1.NodeConnectionTypes.Main],
163
+ credentials: [
164
+ {
165
+ name: CREDENTIAL_TYPE,
166
+ required: true,
167
+ },
168
+ ],
169
+ requestDefaults: {
170
+ baseURL: '={{$credentials.baseUrl}}',
171
+ headers: {
172
+ Accept: 'application/json',
173
+ 'Content-Type': 'application/json',
174
+ },
175
+ },
176
+ properties: [
177
+ {
178
+ displayName: 'Resource',
179
+ name: 'resource',
180
+ type: 'options',
181
+ noDataExpression: true,
182
+ options: [
183
+ { name: 'Alert', value: 'alert' },
184
+ { name: 'Expiring Secret', value: 'expiringSecret' },
185
+ { name: 'Monitored Task', value: 'monitoredTask' },
186
+ { name: 'Notification', value: 'notifications' },
187
+ { name: 'Server', value: 'server' },
188
+ { name: 'Server Report', value: 'serverReport' },
189
+ { name: 'Server SLA', value: 'serverSla' },
190
+ { name: 'Server Usage', value: 'serverUsage' },
191
+ { name: 'Team', value: 'team' },
192
+ { name: 'Team Task', value: 'teamTask' },
193
+ { name: 'User Preference', value: 'userPreference' },
194
+ { name: 'Webhook', value: 'webhook' },
195
+ { name: 'Website', value: 'website' },
196
+ { name: 'Website Report', value: 'websiteReport' },
197
+ { name: 'Website SLA', value: 'websiteSla' },
198
+ ],
199
+ default: 'website',
200
+ },
201
+ teamOperations_1.teamOperation,
202
+ websiteOperations_1.websiteOperation,
203
+ serverOperations_1.serverOperation,
204
+ websiteSlaOperations_1.websiteSlaOperation,
205
+ websiteReportOperations_1.websiteReportOperation,
206
+ serverReportOperations_1.serverReportOperation,
207
+ serverUsageOperations_1.serverUsageOperation,
208
+ serverSlaOperations_1.serverSlaOperation,
209
+ notificationsOperations_1.notificationsOperation,
210
+ userPreferenceOperations_1.userPreferenceOperation,
211
+ monitoredTaskOperations_1.monitoredTaskOperation,
212
+ expiringSecretOperations_1.expiringSecretOperation,
213
+ alertOperations_1.alertOperation,
214
+ teamTaskOperations_1.teamTaskOperation,
215
+ webhookOperations_1.webhookOperation,
216
+ teamOptions_1.teamOption,
217
+ websiteOptions_1.websiteOption,
218
+ serverOptions_1.serverOption,
219
+ reportIdOptions_1.reportIdOption,
220
+ slaConfigurationIdOptions_1.slaConfigurationIdOption,
221
+ optionalTeamIdOptions_1.optionalTeamIdOption,
222
+ monitoredTaskIdOptions_1.monitoredTaskIdOption,
223
+ expiringSecretIdOptions_1.expiringSecretIdOption,
224
+ taskIdOptions_1.taskIdOption,
225
+ webhookIdOptions_1.webhookIdOption,
226
+ webhookServerFilterOptions_1.webhookServerFilterOption,
227
+ webhookWebsiteFilterOptions_1.webhookWebsiteFilterOption,
228
+ ...gridifyOperation_1.gridifyQueryProperties,
229
+ ],
230
+ };
231
+ }
232
+ }
233
+ exports.Monitorix360 = Monitorix360;
234
+ //# sourceMappingURL=Monitorix360.node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Monitorix360.node.js","sourceRoot":"","sources":["../../../nodes/Monitorix360/Monitorix360.node.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ {
2
+ "node": "n8n-nodes-monitorix360",
3
+ "nodeVersion": "1.0",
4
+ "codexVersion": "1.0",
5
+ "categories": ["Productivity", "Development"],
6
+ "resources": {
7
+ "credentialDocumentation": [
8
+ {
9
+ "url": "https://github.com/vmagprogramini/n8n-nodes-monitorix360#credentials"
10
+ }
11
+ ],
12
+ "primaryDocumentation": [
13
+ {
14
+ "url": "https://github.com/vmagprogramini/n8n-nodes-monitorix360#readme"
15
+ }
16
+ ]
17
+ }
18
+ }
@@ -0,0 +1,4 @@
1
+ import type { IExecuteSingleFunctions, IN8nHttpFullResponse, INodeExecutionData } from 'n8n-workflow';
2
+ export declare function createBinaryFilePostReceive(fileName: string, fallbackMimeType?: string): (this: IExecuteSingleFunctions, _items: INodeExecutionData[], responseData: IN8nHttpFullResponse) => Promise<INodeExecutionData[]>;
3
+ export declare const pdfReportPostReceive: (this: IExecuteSingleFunctions, _items: INodeExecutionData[], responseData: IN8nHttpFullResponse) => Promise<INodeExecutionData[]>;
4
+ export declare const excelReportPostReceive: (this: IExecuteSingleFunctions, _items: INodeExecutionData[], responseData: IN8nHttpFullResponse) => Promise<INodeExecutionData[]>;
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.excelReportPostReceive = exports.pdfReportPostReceive = void 0;
4
+ exports.createBinaryFilePostReceive = createBinaryFilePostReceive;
5
+ function createBinaryFilePostReceive(fileName, fallbackMimeType = 'application/octet-stream') {
6
+ return async function binaryFilePostReceive(_items, responseData) {
7
+ var _a, _b;
8
+ const body = responseData.body;
9
+ const contentType = (_b = (_a = responseData.headers) === null || _a === void 0 ? void 0 : _a['content-type']) !== null && _b !== void 0 ? _b : fallbackMimeType;
10
+ const binaryData = await this.helpers.prepareBinaryData(body, fileName, contentType);
11
+ return [{ json: {}, binary: { data: binaryData } }];
12
+ };
13
+ }
14
+ exports.pdfReportPostReceive = createBinaryFilePostReceive('report.pdf', 'application/pdf');
15
+ exports.excelReportPostReceive = createBinaryFilePostReceive('security-report.xlsx', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
16
+ //# sourceMappingURL=binaryFilePostReceive.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"binaryFilePostReceive.js","sourceRoot":"","sources":["../../../../nodes/Monitorix360/helpers/binaryFilePostReceive.ts"],"names":[],"mappings":";;;AAMA,kEAYC;AAZD,SAAgB,2BAA2B,CAAC,QAAgB,EAAE,gBAAgB,GAAG,0BAA0B;IAC1G,OAAO,KAAK,UAAU,qBAAqB,CAE1C,MAA4B,EAC5B,YAAkC;;QAElC,MAAM,IAAI,GAAG,YAAY,CAAC,IAAc,CAAC;QACzC,MAAM,WAAW,GAChB,MAAC,MAAA,YAAY,CAAC,OAAO,0CAAG,cAAc,CAAwB,mCAAI,gBAAgB,CAAC;QACpF,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;QACrF,OAAO,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,CAAC,CAAC;IACrD,CAAC,CAAC;AACH,CAAC;AAEY,QAAA,oBAAoB,GAAG,2BAA2B,CAAC,YAAY,EAAE,iBAAiB,CAAC,CAAC;AAEpF,QAAA,sBAAsB,GAAG,2BAA2B,CAChE,sBAAsB,EACtB,mEAAmE,CACnE,CAAC"}
@@ -0,0 +1,2 @@
1
+ import type { INodePropertyOptions } from 'n8n-workflow';
2
+ export declare function mapTeamsFromProfileResponse(response: unknown): INodePropertyOptions[];
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.mapTeamsFromProfileResponse = mapTeamsFromProfileResponse;
4
+ function mapTeamItem(team) {
5
+ var _a, _b;
6
+ const id = (_b = (_a = team.id) !== null && _a !== void 0 ? _a : team.teamId) !== null && _b !== void 0 ? _b : team.uuid;
7
+ if (id === undefined || id === null)
8
+ return null;
9
+ const value = String(id);
10
+ const name = typeof team.name === 'string' && team.name.length > 0
11
+ ? team.name
12
+ : typeof team.title === 'string' && team.title.length > 0
13
+ ? team.title
14
+ : typeof team.displayName === 'string' && team.displayName.length > 0
15
+ ? team.displayName
16
+ : value;
17
+ return {
18
+ name,
19
+ value,
20
+ action: name,
21
+ description: `Team ID: ${value}`,
22
+ };
23
+ }
24
+ function mapTeamsFromProfileResponse(response) {
25
+ if (!response || typeof response !== 'object')
26
+ return [];
27
+ const teams = response.teams;
28
+ if (!Array.isArray(teams))
29
+ return [];
30
+ const options = [];
31
+ for (const item of teams) {
32
+ if (!item || typeof item !== 'object')
33
+ continue;
34
+ const opt = mapTeamItem(item);
35
+ if (opt)
36
+ options.push(opt);
37
+ }
38
+ return options.sort((a, b) => String(a.name).localeCompare(String(b.name)));
39
+ }
40
+ //# sourceMappingURL=loadTeamOptions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loadTeamOptions.js","sourceRoot":"","sources":["../../../../nodes/Monitorix360/helpers/loadTeamOptions.ts"],"names":[],"mappings":";;AAyBA,kEAWC;AAlCD,SAAS,WAAW,CAAC,IAAiB;;IACrC,MAAM,EAAE,GAAG,MAAA,MAAA,IAAI,CAAC,EAAE,mCAAI,IAAI,CAAC,MAAM,mCAAI,IAAI,CAAC,IAAI,CAAC;IAC/C,IAAI,EAAE,KAAK,SAAS,IAAI,EAAE,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACjD,MAAM,KAAK,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;IACzB,MAAM,IAAI,GACT,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC;QACpD,CAAC,CAAC,IAAI,CAAC,IAAI;QACX,CAAC,CAAC,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;YACxD,CAAC,CAAC,IAAI,CAAC,KAAK;YACZ,CAAC,CAAC,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC;gBACpE,CAAC,CAAC,IAAI,CAAC,WAAW;gBAClB,CAAC,CAAC,KAAK,CAAC;IACZ,OAAO;QACN,IAAI;QACJ,KAAK;QACL,MAAM,EAAE,IAAI;QACZ,WAAW,EAAE,YAAY,KAAK,EAAE;KAChC,CAAC;AACH,CAAC;AAKD,SAAgB,2BAA2B,CAAC,QAAiB;IAC5D,IAAI,CAAC,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ;QAAE,OAAO,EAAE,CAAC;IACzD,MAAM,KAAK,GAAI,QAAwB,CAAC,KAAK,CAAC;IAC9C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACrC,MAAM,OAAO,GAA2B,EAAE,CAAC;IAC3C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QAC1B,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,SAAS;QAChD,MAAM,GAAG,GAAG,WAAW,CAAC,IAAmB,CAAC,CAAC;QAC7C,IAAI,GAAG;YAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC5B,CAAC;IACD,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAC7E,CAAC"}
@@ -0,0 +1,2 @@
1
+ import type { INodePropertyOptions } from 'n8n-workflow';
2
+ export declare function mapWebsiteServerListResponse(response: unknown): INodePropertyOptions[];