n8n-nodes-base 1.118.1 → 1.119.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.
- package/dist/credentials/HttpMultipleHeadersAuth.credentials.d.ts +10 -0
- package/dist/credentials/HttpMultipleHeadersAuth.credentials.d.ts.map +1 -0
- package/dist/credentials/HttpMultipleHeadersAuth.credentials.js +62 -0
- package/dist/credentials/HttpMultipleHeadersAuth.credentials.js.map +1 -0
- package/dist/known/credentials.json +4 -0
- package/dist/nodes/Airtop/Airtop.node.d.ts.map +1 -1
- package/dist/nodes/Airtop/Airtop.node.js +7 -1
- package/dist/nodes/Airtop/Airtop.node.js.map +1 -1
- package/dist/nodes/Airtop/actions/agent/Agent.resource.d.ts +5 -0
- package/dist/nodes/Airtop/actions/agent/Agent.resource.d.ts.map +1 -0
- package/dist/nodes/Airtop/actions/agent/Agent.resource.js +62 -0
- package/dist/nodes/Airtop/actions/agent/Agent.resource.js.map +1 -0
- package/dist/nodes/Airtop/actions/agent/run.operation.d.ts +4 -0
- package/dist/nodes/Airtop/actions/agent/run.operation.d.ts.map +1 -0
- package/dist/nodes/Airtop/actions/agent/run.operation.js +126 -0
- package/dist/nodes/Airtop/actions/agent/run.operation.js.map +1 -0
- package/dist/nodes/Airtop/actions/node.type.d.ts +1 -0
- package/dist/nodes/Airtop/actions/node.type.d.ts.map +1 -1
- package/dist/nodes/Airtop/actions/router.d.ts.map +1 -1
- package/dist/nodes/Airtop/actions/router.js +4 -0
- package/dist/nodes/Airtop/actions/router.js.map +1 -1
- package/dist/nodes/Airtop/constants.d.ts +3 -0
- package/dist/nodes/Airtop/constants.d.ts.map +1 -1
- package/dist/nodes/Airtop/constants.js +4 -1
- package/dist/nodes/Airtop/constants.js.map +1 -1
- package/dist/nodes/Airtop/transport/index.js +1 -1
- package/dist/nodes/Airtop/transport/index.js.map +1 -1
- package/dist/nodes/Code/Code.node.d.ts.map +1 -1
- package/dist/nodes/Code/Code.node.js +1 -12
- package/dist/nodes/Code/Code.node.js.map +1 -1
- package/dist/nodes/Compression/Compression.node.d.ts.map +1 -1
- package/dist/nodes/Compression/Compression.node.js +6 -2
- package/dist/nodes/Compression/Compression.node.js.map +1 -1
- package/dist/nodes/Evaluation/Evaluation/Description.node.js +1 -1
- package/dist/nodes/Evaluation/Evaluation/Description.node.js.map +1 -1
- package/dist/nodes/Form/utils/utils.d.ts.map +1 -1
- package/dist/nodes/Form/utils/utils.js +36 -0
- package/dist/nodes/Form/utils/utils.js.map +1 -1
- package/dist/nodes/Merge/v1/MergeV1.node.d.ts.map +1 -1
- package/dist/nodes/Merge/v1/MergeV1.node.js +0 -1
- package/dist/nodes/Merge/v1/MergeV1.node.js.map +1 -1
- package/dist/nodes/Schedule/GenericFunctions.d.ts +2 -1
- package/dist/nodes/Schedule/GenericFunctions.d.ts.map +1 -1
- package/dist/nodes/Schedule/GenericFunctions.js +27 -0
- package/dist/nodes/Schedule/GenericFunctions.js.map +1 -1
- package/dist/nodes/Schedule/ScheduleTrigger.node.d.ts.map +1 -1
- package/dist/nodes/Schedule/ScheduleTrigger.node.js +11 -1
- package/dist/nodes/Schedule/ScheduleTrigger.node.js.map +1 -1
- package/dist/nodes/Slack/V2/SlackV2.node.d.ts +1 -1
- package/dist/nodes/Slack/V2/SlackV2.node.d.ts.map +1 -1
- package/dist/nodes/Slack/V2/SlackV2.node.js +9 -4
- package/dist/nodes/Slack/V2/SlackV2.node.js.map +1 -1
- package/dist/nodes/StickyNote/StickyNote.node.js +1 -1
- package/dist/nodes/StickyNote/StickyNote.node.js.map +1 -1
- package/dist/nodes/Webhook/Webhook.node.d.ts.map +1 -1
- package/dist/nodes/Webhook/Webhook.node.js +35 -0
- package/dist/nodes/Webhook/Webhook.node.js.map +1 -1
- package/dist/typecheck.tsbuildinfo +1 -1
- package/dist/types/credentials.json +1 -0
- package/dist/types/nodes.json +8 -8
- package/package.json +8 -6
- package/dist/nodes/Code/js.svg +0 -4
- package/dist/nodes/Code/python.svg +0 -3
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { IAuthenticate, ICredentialType, INodeProperties, Icon } from 'n8n-workflow';
|
|
2
|
+
export declare class HttpMultipleHeadersAuth implements ICredentialType {
|
|
3
|
+
name: string;
|
|
4
|
+
displayName: string;
|
|
5
|
+
documentationUrl: string;
|
|
6
|
+
icon: Icon;
|
|
7
|
+
properties: INodeProperties[];
|
|
8
|
+
authenticate: IAuthenticate;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=HttpMultipleHeadersAuth.credentials.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HttpMultipleHeadersAuth.credentials.d.ts","sourceRoot":"","sources":["../../credentials/HttpMultipleHeadersAuth.credentials.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAE1F,qBAAa,uBAAwB,YAAW,eAAe;IAC9D,IAAI,SAA6B;IAEjC,WAAW,SAA2B;IAEtC,gBAAgB,SAAiB;IAEjC,IAAI,EAAE,IAAI,CAAqC;IAE/C,UAAU,EAAE,eAAe,EAAE,CAkC3B;IAEF,YAAY,EAAE,aAAa,CAkBzB;CACF"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.HttpMultipleHeadersAuth = void 0;
|
|
4
|
+
class HttpMultipleHeadersAuth {
|
|
5
|
+
name = 'httpMultipleHeadersAuth';
|
|
6
|
+
displayName = 'Multiple Headers Auth';
|
|
7
|
+
documentationUrl = 'httprequest';
|
|
8
|
+
icon = 'node:n8n-nodes-base.httpRequest';
|
|
9
|
+
properties = [
|
|
10
|
+
{
|
|
11
|
+
displayName: 'Headers',
|
|
12
|
+
name: 'headers',
|
|
13
|
+
type: 'fixedCollection',
|
|
14
|
+
default: { values: [{ name: '', value: '' }] },
|
|
15
|
+
typeOptions: {
|
|
16
|
+
multipleValues: true,
|
|
17
|
+
},
|
|
18
|
+
placeholder: 'Add Header',
|
|
19
|
+
options: [
|
|
20
|
+
{
|
|
21
|
+
displayName: 'Header',
|
|
22
|
+
name: 'values',
|
|
23
|
+
values: [
|
|
24
|
+
{
|
|
25
|
+
displayName: 'Name',
|
|
26
|
+
name: 'name',
|
|
27
|
+
type: 'string',
|
|
28
|
+
default: '',
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
displayName: 'Value',
|
|
32
|
+
name: 'value',
|
|
33
|
+
type: 'string',
|
|
34
|
+
default: '',
|
|
35
|
+
typeOptions: {
|
|
36
|
+
password: true,
|
|
37
|
+
},
|
|
38
|
+
},
|
|
39
|
+
],
|
|
40
|
+
},
|
|
41
|
+
],
|
|
42
|
+
},
|
|
43
|
+
];
|
|
44
|
+
authenticate = async (credentials, requestOptions) => {
|
|
45
|
+
const values = credentials.headers
|
|
46
|
+
.values;
|
|
47
|
+
const headers = values.reduce((acc, cur) => {
|
|
48
|
+
acc[cur.name] = cur.value;
|
|
49
|
+
return acc;
|
|
50
|
+
}, {});
|
|
51
|
+
const newRequestOptions = {
|
|
52
|
+
...requestOptions,
|
|
53
|
+
headers: {
|
|
54
|
+
...requestOptions.headers,
|
|
55
|
+
...headers,
|
|
56
|
+
},
|
|
57
|
+
};
|
|
58
|
+
return await Promise.resolve(newRequestOptions);
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
exports.HttpMultipleHeadersAuth = HttpMultipleHeadersAuth;
|
|
62
|
+
//# sourceMappingURL=HttpMultipleHeadersAuth.credentials.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HttpMultipleHeadersAuth.credentials.js","sourceRoot":"","sources":["../../credentials/HttpMultipleHeadersAuth.credentials.ts"],"names":[],"mappings":";;;AAIA,MAAa,uBAAuB;IACnC,IAAI,GAAG,yBAAyB,CAAC;IAEjC,WAAW,GAAG,uBAAuB,CAAC;IAEtC,gBAAgB,GAAG,aAAa,CAAC;IAEjC,IAAI,GAAS,iCAAiC,CAAC;IAE/C,UAAU,GAAsB;QAC/B;YACC,WAAW,EAAE,SAAS;YACtB,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,iBAAiB;YACvB,OAAO,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,EAAE;YAC9C,WAAW,EAAE;gBACZ,cAAc,EAAE,IAAI;aACpB;YACD,WAAW,EAAE,YAAY;YACzB,OAAO,EAAE;gBACR;oBACC,WAAW,EAAE,QAAQ;oBACrB,IAAI,EAAE,QAAQ;oBACd,MAAM,EAAE;wBACP;4BACC,WAAW,EAAE,MAAM;4BACnB,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,QAAQ;4BACd,OAAO,EAAE,EAAE;yBACX;wBACD;4BACC,WAAW,EAAE,OAAO;4BACpB,IAAI,EAAE,OAAO;4BACb,IAAI,EAAE,QAAQ;4BACd,OAAO,EAAE,EAAE;4BACX,WAAW,EAAE;gCACZ,QAAQ,EAAE,IAAI;6BACd;yBACD;qBACD;iBACD;aACD;SACD;KACD,CAAC;IAEF,YAAY,GAAkB,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,EAAE;QACnE,MAAM,MAAM,GAAI,WAAW,CAAC,OAA8D;aACxF,MAAM,CAAC;QACT,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAC5B,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YACZ,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC;YAC1B,OAAO,GAAG,CAAC;QACZ,CAAC,EACD,EAA4B,CAC5B,CAAC;QACF,MAAM,iBAAiB,GAAG;YACzB,GAAG,cAAc;YACjB,OAAO,EAAE;gBACR,GAAG,cAAc,CAAC,OAAO;gBACzB,GAAG,OAAO;aACV;SACD,CAAC;QACF,OAAO,MAAM,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACjD,CAAC,CAAC;CACF;AAhED,0DAgEC"}
|
|
@@ -1239,6 +1239,10 @@
|
|
|
1239
1239
|
"webhook"
|
|
1240
1240
|
]
|
|
1241
1241
|
},
|
|
1242
|
+
"httpMultipleHeadersAuth": {
|
|
1243
|
+
"className": "HttpMultipleHeadersAuth",
|
|
1244
|
+
"sourcePath": "dist/credentials/HttpMultipleHeadersAuth.credentials.js"
|
|
1245
|
+
},
|
|
1242
1246
|
"httpCustomAuth": {
|
|
1243
1247
|
"className": "HttpCustomAuth",
|
|
1244
1248
|
"sourcePath": "dist/credentials/HttpCustomAuth.credentials.js",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Airtop.node.d.ts","sourceRoot":"","sources":["../../../nodes/Airtop/Airtop.node.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"Airtop.node.d.ts","sourceRoot":"","sources":["../../../nodes/Airtop/Airtop.node.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAUvF,qBAAa,MAAO,YAAW,SAAS;IACvC,WAAW,EAAE,oBAAoB,CA8D/B;IAEI,OAAO,CAAC,IAAI,EAAE,iBAAiB;CAGrC"}
|
|
@@ -35,6 +35,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
36
|
exports.Airtop = void 0;
|
|
37
37
|
const n8n_workflow_1 = require("n8n-workflow");
|
|
38
|
+
const agent = __importStar(require("./actions/agent/Agent.resource"));
|
|
38
39
|
const extraction = __importStar(require("./actions/extraction/Extraction.resource"));
|
|
39
40
|
const file = __importStar(require("./actions/file/File.resource"));
|
|
40
41
|
const interaction = __importStar(require("./actions/interaction/Interaction.resource"));
|
|
@@ -48,7 +49,7 @@ class Airtop {
|
|
|
48
49
|
icon: 'file:airtop.svg',
|
|
49
50
|
group: ['transform'],
|
|
50
51
|
defaultVersion: 1,
|
|
51
|
-
version: [1],
|
|
52
|
+
version: [1, 1.1],
|
|
52
53
|
subtitle: '={{ $parameter["operation"] + ": " + $parameter["resource"] }}',
|
|
53
54
|
description: 'Scrape and control any site with Airtop',
|
|
54
55
|
usableAsTool: true,
|
|
@@ -70,6 +71,10 @@ class Airtop {
|
|
|
70
71
|
type: 'options',
|
|
71
72
|
noDataExpression: true,
|
|
72
73
|
options: [
|
|
74
|
+
{
|
|
75
|
+
name: 'Agent',
|
|
76
|
+
value: 'agent',
|
|
77
|
+
},
|
|
73
78
|
{
|
|
74
79
|
name: 'Extraction',
|
|
75
80
|
value: 'extraction',
|
|
@@ -93,6 +98,7 @@ class Airtop {
|
|
|
93
98
|
],
|
|
94
99
|
default: 'session',
|
|
95
100
|
},
|
|
101
|
+
...agent.description,
|
|
96
102
|
...session.description,
|
|
97
103
|
...window.description,
|
|
98
104
|
...file.description,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Airtop.node.js","sourceRoot":"","sources":["../../../nodes/Airtop/Airtop.node.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAmD;AAGnD,qFAAuE;AACvE,mEAAqD;AACrD,wFAA0E;AAC1E,6CAA0C;AAC1C,4EAA8D;AAC9D,yEAA2D;AAE3D,MAAa,MAAM;IAClB,WAAW,GAAyB;QACnC,WAAW,EAAE,QAAQ;QACrB,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,iBAAiB;QACvB,KAAK,EAAE,CAAC,WAAW,CAAC;QACpB,cAAc,EAAE,CAAC;QACjB,OAAO,EAAE,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"Airtop.node.js","sourceRoot":"","sources":["../../../nodes/Airtop/Airtop.node.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAmD;AAGnD,sEAAwD;AACxD,qFAAuE;AACvE,mEAAqD;AACrD,wFAA0E;AAC1E,6CAA0C;AAC1C,4EAA8D;AAC9D,yEAA2D;AAE3D,MAAa,MAAM;IAClB,WAAW,GAAyB;QACnC,WAAW,EAAE,QAAQ;QACrB,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,iBAAiB;QACvB,KAAK,EAAE,CAAC,WAAW,CAAC;QACpB,cAAc,EAAE,CAAC;QACjB,OAAO,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC;QACjB,QAAQ,EAAE,gEAAgE;QAC1E,WAAW,EAAE,yCAAyC;QACtD,YAAY,EAAE,IAAI;QAClB,QAAQ,EAAE;YACT,IAAI,EAAE,QAAQ;SACd;QACD,MAAM,EAAE,CAAC,kCAAmB,CAAC,IAAI,CAAC;QAClC,OAAO,EAAE,CAAC,kCAAmB,CAAC,IAAI,CAAC;QACnC,WAAW,EAAE;YACZ;gBACC,IAAI,EAAE,WAAW;gBACjB,QAAQ,EAAE,IAAI;aACd;SACD;QACD,UAAU,EAAE;YACX;gBACC,WAAW,EAAE,UAAU;gBACvB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,SAAS;gBACf,gBAAgB,EAAE,IAAI;gBACtB,OAAO,EAAE;oBACR;wBACC,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE,OAAO;qBACd;oBACD;wBACC,IAAI,EAAE,YAAY;wBAClB,KAAK,EAAE,YAAY;qBACnB;oBACD;wBACC,IAAI,EAAE,MAAM;wBACZ,KAAK,EAAE,MAAM;qBACb;oBACD;wBACC,IAAI,EAAE,aAAa;wBACnB,KAAK,EAAE,aAAa;qBACpB;oBACD;wBACC,IAAI,EAAE,SAAS;wBACf,KAAK,EAAE,SAAS;qBAChB;oBACD;wBACC,IAAI,EAAE,QAAQ;wBACd,KAAK,EAAE,QAAQ;qBACf;iBACD;gBACD,OAAO,EAAE,SAAS;aAClB;YACD,GAAG,KAAK,CAAC,WAAW;YACpB,GAAG,OAAO,CAAC,WAAW;YACtB,GAAG,MAAM,CAAC,WAAW;YACrB,GAAG,IAAI,CAAC,WAAW;YACnB,GAAG,UAAU,CAAC,WAAW;YACzB,GAAG,WAAW,CAAC,WAAW;SAC1B;KACD,CAAC;IAEF,KAAK,CAAC,OAAO;QACZ,OAAO,MAAM,eAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;CACD;AApED,wBAoEC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Agent.resource.d.ts","sourceRoot":"","sources":["../../../../../nodes/Airtop/actions/agent/Agent.resource.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEpD,OAAO,KAAK,GAAG,MAAM,iBAAiB,CAAC;AAEvC,OAAO,EAAE,GAAG,EAAE,CAAC;AAEf,eAAO,MAAM,WAAW,EAAE,eAAe,EAsBxC,CAAC"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.description = exports.run = void 0;
|
|
37
|
+
const run = __importStar(require("./run.operation"));
|
|
38
|
+
exports.run = run;
|
|
39
|
+
exports.description = [
|
|
40
|
+
{
|
|
41
|
+
displayName: 'Operation',
|
|
42
|
+
name: 'operation',
|
|
43
|
+
type: 'options',
|
|
44
|
+
noDataExpression: true,
|
|
45
|
+
displayOptions: {
|
|
46
|
+
show: {
|
|
47
|
+
resource: ['agent'],
|
|
48
|
+
},
|
|
49
|
+
},
|
|
50
|
+
options: [
|
|
51
|
+
{
|
|
52
|
+
name: 'Run',
|
|
53
|
+
value: 'run',
|
|
54
|
+
description: 'Run an Airtop agent',
|
|
55
|
+
action: 'Run an agent',
|
|
56
|
+
},
|
|
57
|
+
],
|
|
58
|
+
default: 'run',
|
|
59
|
+
},
|
|
60
|
+
...run.description,
|
|
61
|
+
];
|
|
62
|
+
//# sourceMappingURL=Agent.resource.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Agent.resource.js","sourceRoot":"","sources":["../../../../../nodes/Airtop/actions/agent/Agent.resource.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,qDAAuC;AAE9B,kBAAG;AAEC,QAAA,WAAW,GAAsB;IAC7C;QACC,WAAW,EAAE,WAAW;QACxB,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,SAAS;QACf,gBAAgB,EAAE,IAAI;QACtB,cAAc,EAAE;YACf,IAAI,EAAE;gBACL,QAAQ,EAAE,CAAC,OAAO,CAAC;aACnB;SACD;QACD,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,KAAK;gBACX,KAAK,EAAE,KAAK;gBACZ,WAAW,EAAE,qBAAqB;gBAClC,MAAM,EAAE,cAAc;aACtB;SACD;QACD,OAAO,EAAE,KAAK;KACd;IACD,GAAG,GAAG,CAAC,WAAW;CAClB,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { IExecuteFunctions, INodeExecutionData, INodeProperties } from 'n8n-workflow';
|
|
2
|
+
export declare const description: INodeProperties[];
|
|
3
|
+
export declare function execute(this: IExecuteFunctions, index: number): Promise<INodeExecutionData[]>;
|
|
4
|
+
//# sourceMappingURL=run.operation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run.operation.d.ts","sourceRoot":"","sources":["../../../../../nodes/Airtop/actions/agent/run.operation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEX,iBAAiB,EAEjB,kBAAkB,EAClB,eAAe,EACf,MAAM,cAAc,CAAC;AActB,eAAO,MAAM,WAAW,EAAE,eAAe,EA2CxC,CAAC;AA8EF,wBAAsB,OAAO,CAC5B,IAAI,EAAE,iBAAiB,EACvB,KAAK,EAAE,MAAM,GACX,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAoD/B"}
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.description = void 0;
|
|
4
|
+
exports.execute = execute;
|
|
5
|
+
const n8n_workflow_1 = require("n8n-workflow");
|
|
6
|
+
const constants_1 = require("../../constants");
|
|
7
|
+
const GenericFunctions_1 = require("../../GenericFunctions");
|
|
8
|
+
const transport_1 = require("../../transport");
|
|
9
|
+
const displayOptions = {
|
|
10
|
+
show: {
|
|
11
|
+
resource: ['agent'],
|
|
12
|
+
operation: ['run'],
|
|
13
|
+
},
|
|
14
|
+
};
|
|
15
|
+
exports.description = [
|
|
16
|
+
{
|
|
17
|
+
displayName: 'Webhook URL',
|
|
18
|
+
name: 'webhookUrl',
|
|
19
|
+
type: 'string',
|
|
20
|
+
required: true,
|
|
21
|
+
default: '',
|
|
22
|
+
description: 'Webhook URL to invoke the Airtop agent. Visit <a href="https://portal.airtop.ai/agents" target="_blank">Airtop Agents</a> for more information.',
|
|
23
|
+
displayOptions,
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
displayName: 'Parameters',
|
|
27
|
+
name: 'agentParameters',
|
|
28
|
+
type: 'json',
|
|
29
|
+
required: true,
|
|
30
|
+
default: '{}',
|
|
31
|
+
description: 'Agent\'s input parameters in JSON format. Visit <a href="https://portal.airtop.ai/agents" target="_blank">Airtop Agents</a> for more information.',
|
|
32
|
+
displayOptions,
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
displayName: 'Await Agent',
|
|
36
|
+
name: 'awaitExecution',
|
|
37
|
+
type: 'boolean',
|
|
38
|
+
default: true,
|
|
39
|
+
description: 'Whether to wait for the agent to complete its execution',
|
|
40
|
+
displayOptions,
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
displayName: 'Timeout',
|
|
44
|
+
name: 'timeout',
|
|
45
|
+
type: 'number',
|
|
46
|
+
default: 600,
|
|
47
|
+
description: 'Timeout in seconds to wait for the agent to finish',
|
|
48
|
+
displayOptions: {
|
|
49
|
+
show: {
|
|
50
|
+
resource: ['agent'],
|
|
51
|
+
operation: ['run'],
|
|
52
|
+
awaitExecution: [true],
|
|
53
|
+
},
|
|
54
|
+
},
|
|
55
|
+
},
|
|
56
|
+
];
|
|
57
|
+
function throwOperationErrorIf(statement, message, node) {
|
|
58
|
+
if (statement) {
|
|
59
|
+
throw new n8n_workflow_1.NodeOperationError(node, message);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Extracts the agent ID from the webhook URL
|
|
64
|
+
* Format: https://api.airtop.ai/api/hooks/agents/<agentId>/webhooks/...
|
|
65
|
+
*/
|
|
66
|
+
function extractAgentId(webhookUrl, node) {
|
|
67
|
+
const match = webhookUrl.match(/\/agents\/([^/]+)\//);
|
|
68
|
+
throwOperationErrorIf(!match?.[1], constants_1.ERROR_MESSAGES.AGENT_INVALID_WEBHOOK_URL, node);
|
|
69
|
+
return match?.[1] ?? '';
|
|
70
|
+
}
|
|
71
|
+
async function getAgentStatus(agentId, invocationId) {
|
|
72
|
+
const resultUrl = `https://api.airtop.ai/api/hooks/agents/${agentId}/invocations/${invocationId}/result`;
|
|
73
|
+
const response = await transport_1.apiRequest.call(this, 'GET', resultUrl);
|
|
74
|
+
return response;
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Polls the agent execution status until it completes or fails
|
|
78
|
+
*/
|
|
79
|
+
async function pollAgentStatus(agentId, invocationId, timeoutSeconds) {
|
|
80
|
+
const airtopNode = this.getNode();
|
|
81
|
+
const startTime = Date.now();
|
|
82
|
+
const timeoutMs = timeoutSeconds * 1000;
|
|
83
|
+
let response;
|
|
84
|
+
this.logger.info(`[${airtopNode.name}] Polling agent status for invocationId: ${invocationId}`);
|
|
85
|
+
while (!response?.output && !response?.error) {
|
|
86
|
+
const elapsed = Date.now() - startTime;
|
|
87
|
+
throwOperationErrorIf(elapsed >= timeoutMs, constants_1.ERROR_MESSAGES.TIMEOUT_REACHED, airtopNode);
|
|
88
|
+
response = await getAgentStatus.call(this, agentId, invocationId);
|
|
89
|
+
if (response?.output || response?.error) {
|
|
90
|
+
return response;
|
|
91
|
+
}
|
|
92
|
+
// Wait one second before next poll
|
|
93
|
+
await new Promise((resolve) => setTimeout(resolve, 1000));
|
|
94
|
+
}
|
|
95
|
+
return {
|
|
96
|
+
status: 'Unknown',
|
|
97
|
+
output: {},
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
async function execute(index) {
|
|
101
|
+
const airtopNode = this.getNode();
|
|
102
|
+
const webhookUrl = GenericFunctions_1.validateRequiredStringField.call(this, index, 'webhookUrl', 'Webhook URL');
|
|
103
|
+
const agentParametersJson = GenericFunctions_1.validateRequiredStringField.call(this, index, 'agentParameters', 'Parameters');
|
|
104
|
+
const agentId = extractAgentId(webhookUrl, airtopNode);
|
|
105
|
+
const awaitExecution = this.getNodeParameter('awaitExecution', index, true);
|
|
106
|
+
const timeout = this.getNodeParameter('timeout', index, 600);
|
|
107
|
+
// Validate timeout
|
|
108
|
+
throwOperationErrorIf(timeout < constants_1.AGENT_MIN_TIMEOUT_SECONDS, constants_1.ERROR_MESSAGES.AGENT_TIMEOUT_INVALID, airtopNode);
|
|
109
|
+
const invocationResponse = await transport_1.apiRequest.call(this, 'POST', webhookUrl, (0, n8n_workflow_1.jsonParse)(agentParametersJson));
|
|
110
|
+
const invocationId = invocationResponse.invocationId;
|
|
111
|
+
throwOperationErrorIf(!invocationId, "No 'invocationId' received from agent webhook response", airtopNode);
|
|
112
|
+
if (!awaitExecution) {
|
|
113
|
+
return this.helpers.returnJsonArray({
|
|
114
|
+
invocationId,
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
// Poll for agent's execution status
|
|
118
|
+
const result = await pollAgentStatus.call(this, agentId, invocationId, timeout);
|
|
119
|
+
throwOperationErrorIf(Boolean(result?.error), `${result?.error ?? 'Unknown error'}. Agent Invocation ID: ${invocationId}`, airtopNode);
|
|
120
|
+
return this.helpers.returnJsonArray({
|
|
121
|
+
invocationId,
|
|
122
|
+
status: result?.status ?? 'Unknown',
|
|
123
|
+
output: result?.output ?? {},
|
|
124
|
+
});
|
|
125
|
+
}
|
|
126
|
+
//# sourceMappingURL=run.operation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run.operation.js","sourceRoot":"","sources":["../../../../../nodes/Airtop/actions/agent/run.operation.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.type.d.ts","sourceRoot":"","sources":["../../../../nodes/Airtop/actions/node.type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,KAAK,OAAO,GAAG;IACd,OAAO,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;IACzC,MAAM,EAAE,QAAQ,GAAG,OAAO,GAAG,gBAAgB,GAAG,MAAM,CAAC;IACvD,UAAU,EAAE,cAAc,GAAG,OAAO,GAAG,QAAQ,CAAC;IAChD,WAAW,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;IACjD,IAAI,EAAE,SAAS,GAAG,KAAK,GAAG,YAAY,GAAG,QAAQ,GAAG,MAAM,CAAC;CAC3D,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"node.type.d.ts","sourceRoot":"","sources":["../../../../nodes/Airtop/actions/node.type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,KAAK,OAAO,GAAG;IACd,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;IACzC,MAAM,EAAE,QAAQ,GAAG,OAAO,GAAG,gBAAgB,GAAG,MAAM,CAAC;IACvD,UAAU,EAAE,cAAc,GAAG,OAAO,GAAG,QAAQ,CAAC;IAChD,WAAW,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;IACjD,IAAI,EAAE,SAAS,GAAG,KAAK,GAAG,YAAY,GAAG,QAAQ,GAAG,MAAM,CAAC;CAC3D,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../../../nodes/Airtop/actions/router.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../../../nodes/Airtop/actions/router.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAa1E,wBAAsB,MAAM,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAkErF"}
|
|
@@ -35,6 +35,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
36
|
exports.router = router;
|
|
37
37
|
const n8n_workflow_1 = require("n8n-workflow");
|
|
38
|
+
const agent = __importStar(require("./agent/Agent.resource"));
|
|
38
39
|
const output_utils_1 = require("./common/output.utils");
|
|
39
40
|
const extraction = __importStar(require("./extraction/Extraction.resource"));
|
|
40
41
|
const file = __importStar(require("./file/File.resource"));
|
|
@@ -56,6 +57,9 @@ async function router() {
|
|
|
56
57
|
for (let i = 0; i < items.length; i++) {
|
|
57
58
|
try {
|
|
58
59
|
switch (airtopNodeData.resource) {
|
|
60
|
+
case 'agent':
|
|
61
|
+
responseData = await agent[airtopNodeData.operation].execute.call(this, i);
|
|
62
|
+
break;
|
|
59
63
|
case 'session':
|
|
60
64
|
responseData = await session[airtopNodeData.operation].execute.call(this, i);
|
|
61
65
|
break;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"router.js","sourceRoot":"","sources":["../../../../nodes/Airtop/actions/router.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"router.js","sourceRoot":"","sources":["../../../../nodes/Airtop/actions/router.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,6 +10,7 @@ export declare const SESSION_STATUS: {
|
|
|
10
10
|
readonly RUNNING: "running";
|
|
11
11
|
};
|
|
12
12
|
export declare const OPERATION_TIMEOUT: number;
|
|
13
|
+
export declare const AGENT_MIN_TIMEOUT_SECONDS = 10;
|
|
13
14
|
export type TScrollingMode = 'manual' | 'automatic';
|
|
14
15
|
export declare const ERROR_MESSAGES: {
|
|
15
16
|
readonly SESSION_ID_REQUIRED: "Please fill the 'Session ID' parameter";
|
|
@@ -18,6 +19,8 @@ export declare const ERROR_MESSAGES: {
|
|
|
18
19
|
readonly PROFILE_NAME_INVALID: "'Profile Name' should only contain letters, numbers and dashes";
|
|
19
20
|
readonly TIMEOUT_MINUTES_INVALID: "Timeout must be between 1 and 10080 minutes";
|
|
20
21
|
readonly TIMEOUT_REACHED: "Timeout reached while waiting for the operation to complete";
|
|
22
|
+
readonly AGENT_TIMEOUT_INVALID: "Timeout must be at least 10 seconds";
|
|
23
|
+
readonly AGENT_INVALID_WEBHOOK_URL: "Invalid agent webhook URL. Expected format: https://api.airtop.ai/api/hooks/agents/<agentId>/webhooks/...";
|
|
21
24
|
readonly URL_INVALID: "'URL' must start with 'http' or 'https'";
|
|
22
25
|
readonly PROFILE_NAME_REQUIRED: "'Profile Name' is required when 'Save Profile' is enabled";
|
|
23
26
|
readonly REQUIRED_PARAMETER: "Please fill the '{{field}}' parameter";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../nodes/Airtop/constants.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,aAAa,QAAO,MAchC,CAAC;AAEF,eAAO,MAAM,WAAW,QAAkB,CAAC;AAE3C,eAAO,MAAM,QAAQ,QAAgE,CAAC;AAGtF,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAC1C,eAAO,MAAM,mBAAmB,IAAI,CAAC;AACrC,eAAO,MAAM,mBAAmB,QAAQ,CAAC;AACzC,eAAO,MAAM,gCAAgC,KAAK,CAAC;AACnD,eAAO,MAAM,cAAc;;;CAGjB,CAAC;AAGX,eAAO,MAAM,iBAAiB,QAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../nodes/Airtop/constants.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,aAAa,QAAO,MAchC,CAAC;AAEF,eAAO,MAAM,WAAW,QAAkB,CAAC;AAE3C,eAAO,MAAM,QAAQ,QAAgE,CAAC;AAGtF,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAC1C,eAAO,MAAM,mBAAmB,IAAI,CAAC;AACrC,eAAO,MAAM,mBAAmB,QAAQ,CAAC;AACzC,eAAO,MAAM,gCAAgC,KAAK,CAAC;AACnD,eAAO,MAAM,cAAc;;;CAGjB,CAAC;AAGX,eAAO,MAAM,iBAAiB,QAAgB,CAAC;AAC/C,eAAO,MAAM,yBAAyB,KAAK,CAAC;AAG5C,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,WAAW,CAAC;AAGpD,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;CAoBjB,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ERROR_MESSAGES = exports.OPERATION_TIMEOUT = exports.SESSION_STATUS = exports.DEFAULT_DOWNLOAD_TIMEOUT_SECONDS = exports.MAX_TIMEOUT_MINUTES = exports.MIN_TIMEOUT_MINUTES = exports.DEFAULT_TIMEOUT_MINUTES = exports.BASE_URL = exports.N8N_VERSION = exports.getN8NVersion = void 0;
|
|
3
|
+
exports.ERROR_MESSAGES = exports.AGENT_MIN_TIMEOUT_SECONDS = exports.OPERATION_TIMEOUT = exports.SESSION_STATUS = exports.DEFAULT_DOWNLOAD_TIMEOUT_SECONDS = exports.MAX_TIMEOUT_MINUTES = exports.MIN_TIMEOUT_MINUTES = exports.DEFAULT_TIMEOUT_MINUTES = exports.BASE_URL = exports.N8N_VERSION = exports.getN8NVersion = void 0;
|
|
4
4
|
const fs_1 = require("fs");
|
|
5
5
|
const n8n_workflow_1 = require("n8n-workflow");
|
|
6
6
|
const path_1 = require("path");
|
|
@@ -34,6 +34,7 @@ exports.SESSION_STATUS = {
|
|
|
34
34
|
};
|
|
35
35
|
// Operations
|
|
36
36
|
exports.OPERATION_TIMEOUT = 5 * 60 * 1000; // 5 mins
|
|
37
|
+
exports.AGENT_MIN_TIMEOUT_SECONDS = 10;
|
|
37
38
|
// Error messages
|
|
38
39
|
exports.ERROR_MESSAGES = {
|
|
39
40
|
SESSION_ID_REQUIRED: "Please fill the 'Session ID' parameter",
|
|
@@ -42,6 +43,8 @@ exports.ERROR_MESSAGES = {
|
|
|
42
43
|
PROFILE_NAME_INVALID: "'Profile Name' should only contain letters, numbers and dashes",
|
|
43
44
|
TIMEOUT_MINUTES_INVALID: `Timeout must be between ${exports.MIN_TIMEOUT_MINUTES} and ${exports.MAX_TIMEOUT_MINUTES} minutes`,
|
|
44
45
|
TIMEOUT_REACHED: 'Timeout reached while waiting for the operation to complete',
|
|
46
|
+
AGENT_TIMEOUT_INVALID: `Timeout must be at least ${exports.AGENT_MIN_TIMEOUT_SECONDS} seconds`,
|
|
47
|
+
AGENT_INVALID_WEBHOOK_URL: 'Invalid agent webhook URL. Expected format: https://api.airtop.ai/api/hooks/agents/<agentId>/webhooks/...',
|
|
45
48
|
URL_INVALID: "'URL' must start with 'http' or 'https'",
|
|
46
49
|
PROFILE_NAME_REQUIRED: "'Profile Name' is required when 'Save Profile' is enabled",
|
|
47
50
|
REQUIRED_PARAMETER: "Please fill the '{{field}}' parameter",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../nodes/Airtop/constants.ts"],"names":[],"mappings":";;;AAAA,2BAAkC;AAElC,+CAAyC;AACzC,+BAAqC;AAErC,iEAAiE;AAC1D,MAAM,aAAa,GAAG,GAAW,EAAE;IACzC,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;QAC7B,OAAO,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;IAChC,CAAC;IAED,IAAI,CAAC;QACJ,MAAM,WAAW,GAAG,IAAA,cAAO,EAAC,SAAS,EAAE,WAAW,CAAC,CAAC;QACpD,MAAM,eAAe,GAAG,IAAA,WAAI,EAAC,WAAW,EAAE,cAAc,CAAC,CAAC;QAC1D,MAAM,cAAc,GAAG,IAAA,wBAAS,EAAkB,IAAA,iBAAY,EAAC,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC;QACzF,OAAO,cAAc,CAAC,OAAO,CAAC;IAC/B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,mBAAmB;QACnB,OAAO,OAAO,CAAC;IAChB,CAAC;AACF,CAAC,CAAC;AAdW,QAAA,aAAa,iBAcxB;AAEW,QAAA,WAAW,GAAG,IAAA,qBAAa,GAAE,CAAC;AAE9B,QAAA,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,8BAA8B,CAAC;AAEtF,qBAAqB;AACR,QAAA,uBAAuB,GAAG,EAAE,CAAC;AAC7B,QAAA,mBAAmB,GAAG,CAAC,CAAC;AACxB,QAAA,mBAAmB,GAAG,KAAK,CAAC;AAC5B,QAAA,gCAAgC,GAAG,EAAE,CAAC;AACtC,QAAA,cAAc,GAAG;IAC7B,YAAY,EAAE,cAAc;IAC5B,OAAO,EAAE,SAAS;CACT,CAAC;AAEX,aAAa;AACA,QAAA,iBAAiB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,SAAS;
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../nodes/Airtop/constants.ts"],"names":[],"mappings":";;;AAAA,2BAAkC;AAElC,+CAAyC;AACzC,+BAAqC;AAErC,iEAAiE;AAC1D,MAAM,aAAa,GAAG,GAAW,EAAE;IACzC,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;QAC7B,OAAO,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;IAChC,CAAC;IAED,IAAI,CAAC;QACJ,MAAM,WAAW,GAAG,IAAA,cAAO,EAAC,SAAS,EAAE,WAAW,CAAC,CAAC;QACpD,MAAM,eAAe,GAAG,IAAA,WAAI,EAAC,WAAW,EAAE,cAAc,CAAC,CAAC;QAC1D,MAAM,cAAc,GAAG,IAAA,wBAAS,EAAkB,IAAA,iBAAY,EAAC,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC;QACzF,OAAO,cAAc,CAAC,OAAO,CAAC;IAC/B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,mBAAmB;QACnB,OAAO,OAAO,CAAC;IAChB,CAAC;AACF,CAAC,CAAC;AAdW,QAAA,aAAa,iBAcxB;AAEW,QAAA,WAAW,GAAG,IAAA,qBAAa,GAAE,CAAC;AAE9B,QAAA,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,8BAA8B,CAAC;AAEtF,qBAAqB;AACR,QAAA,uBAAuB,GAAG,EAAE,CAAC;AAC7B,QAAA,mBAAmB,GAAG,CAAC,CAAC;AACxB,QAAA,mBAAmB,GAAG,KAAK,CAAC;AAC5B,QAAA,gCAAgC,GAAG,EAAE,CAAC;AACtC,QAAA,cAAc,GAAG;IAC7B,YAAY,EAAE,cAAc;IAC5B,OAAO,EAAE,SAAS;CACT,CAAC;AAEX,aAAa;AACA,QAAA,iBAAiB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,SAAS;AAC5C,QAAA,yBAAyB,GAAG,EAAE,CAAC;AAK5C,iBAAiB;AACJ,QAAA,cAAc,GAAG;IAC7B,mBAAmB,EAAE,wCAAwC;IAC7D,kBAAkB,EAAE,uCAAuC;IAC3D,YAAY,EAAE,iCAAiC;IAC/C,oBAAoB,EAAE,gEAAgE;IACtF,uBAAuB,EAAE,2BAA2B,2BAAmB,QAAQ,2BAAmB,UAAU;IAC5G,eAAe,EAAE,6DAA6D;IAC9E,qBAAqB,EAAE,4BAA4B,iCAAyB,UAAU;IACtF,yBAAyB,EACxB,2GAA2G;IAC5G,WAAW,EAAE,yCAAyC;IACtD,qBAAqB,EAAE,2DAA2D;IAClF,kBAAkB,EAAE,uCAAuC;IAC3D,kBAAkB,EAAE,uCAAuC;IAC3D,iBAAiB,EAAE,+CAA+C;IAClE,yBAAyB,EACxB,8EAA8E;IAC/E,wBAAwB,EACvB,gGAAgG;IACjG,mBAAmB,EAAE,mEAAmE;CAC/E,CAAC"}
|
|
@@ -13,7 +13,7 @@ async function apiRequest(method, endpoint, body = {}, query = {}) {
|
|
|
13
13
|
method,
|
|
14
14
|
body,
|
|
15
15
|
qs: query,
|
|
16
|
-
url: `${constants_1.BASE_URL}${endpoint}`,
|
|
16
|
+
url: endpoint.startsWith('http') ? endpoint : `${constants_1.BASE_URL}${endpoint}`,
|
|
17
17
|
json: true,
|
|
18
18
|
};
|
|
19
19
|
if (Object.keys(body).length === 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../nodes/Airtop/transport/index.ts"],"names":[],"mappings":";;AAiBA,gCAyBC;AAjCD,4CAAqD;AAErD,MAAM,cAAc,GAAG;IACtB,cAAc,EAAE,kBAAkB;IAClC,0BAA0B,EAAE,KAAK;IACjC,sBAAsB,EAAE,uBAAW;CACnC,CAAC;AAEK,KAAK,UAAU,UAAU,CAE/B,MAA2B,EAC3B,QAAgB,EAChB,OAAoB,EAAE,EACtB,QAAqB,EAAE;IAEvB,MAAM,OAAO,GAAwB;QACpC,OAAO,EAAE,cAAc;QACvB,MAAM;QACN,IAAI;QACJ,EAAE,EAAE,KAAK;QACT,GAAG,EAAE,GAAG,oBAAQ,GAAG,QAAQ,EAAE;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../nodes/Airtop/transport/index.ts"],"names":[],"mappings":";;AAiBA,gCAyBC;AAjCD,4CAAqD;AAErD,MAAM,cAAc,GAAG;IACtB,cAAc,EAAE,kBAAkB;IAClC,0BAA0B,EAAE,KAAK;IACjC,sBAAsB,EAAE,uBAAW;CACnC,CAAC;AAEK,KAAK,UAAU,UAAU,CAE/B,MAA2B,EAC3B,QAAgB,EAChB,OAAoB,EAAE,EACtB,QAAqB,EAAE;IAEvB,MAAM,OAAO,GAAwB;QACpC,OAAO,EAAE,cAAc;QACvB,MAAM;QACN,IAAI;QACJ,EAAE,EAAE,KAAK;QACT,GAAG,EAAE,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,oBAAQ,GAAG,QAAQ,EAAE;QACtE,IAAI,EAAE,IAAI;KACV,CAAC;IAEF,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpC,OAAO,OAAO,CAAC,IAAI,CAAC;IACrB,CAAC;IAED,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,6BAA6B,CAAC,IAAI,CAI1D,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;AAC/B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Code.node.d.ts","sourceRoot":"","sources":["../../../nodes/Code/Code.node.ts"],"names":[],"mappings":"AAIA,OAAO,EAKN,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,SAAS,EACd,KAAK,oBAAoB,EACzB,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"Code.node.d.ts","sourceRoot":"","sources":["../../../nodes/Code/Code.node.ts"],"names":[],"mappings":"AAIA,OAAO,EAKN,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,SAAS,EACd,KAAK,oBAAoB,EACzB,MAAM,cAAc,CAAC;AAwBtB,qBAAa,IAAK,YAAW,SAAS;IACrC,WAAW,EAAE,oBAAoB,CA8E/B;IAEI,OAAO,CAAC,IAAI,EAAE,iBAAiB;CAoIrC"}
|
|
@@ -24,22 +24,11 @@ class PythonDisabledError extends n8n_workflow_1.UserError {
|
|
|
24
24
|
super('This instance disallows Python execution because it has the environment variable `N8N_PYTHON_ENABLED` set to `false`. To restore Python execution, remove this environment variable or set it to `true` and restart the instance.');
|
|
25
25
|
}
|
|
26
26
|
}
|
|
27
|
-
function iconForLanguage(lang) {
|
|
28
|
-
switch (lang) {
|
|
29
|
-
case 'python':
|
|
30
|
-
case 'pythonNative':
|
|
31
|
-
return 'file:python.svg';
|
|
32
|
-
case 'javaScript':
|
|
33
|
-
return 'file:js.svg';
|
|
34
|
-
default:
|
|
35
|
-
return 'file:code.svg';
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
27
|
class Code {
|
|
39
28
|
description = {
|
|
40
29
|
displayName: 'Code',
|
|
41
30
|
name: 'code',
|
|
42
|
-
icon:
|
|
31
|
+
icon: 'file:code.svg',
|
|
43
32
|
group: ['transform'],
|
|
44
33
|
version: [1, 2],
|
|
45
34
|
defaultVersion: 2,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Code.node.js","sourceRoot":"","sources":["../../../nodes/Code/Code.node.ts"],"names":[],"mappings":";;;;;;AAAA,yEAAyE;AACzE,wCAA6D;AAC7D,gCAAoC;AACpC,qDAA6B;AAC7B,+CASsB;AAItB,wFAAqF;AACrF,gFAA6E;AAC7E,2DAAwD;AACxD,+DAA4D;AAC5D,6FAAsF;AACtF,mDAAgD;AAChD,uEAAoE;AACpE,uCAA8C;AAC9C,mCAAqE;AAErE,MAAM,EAAE,kBAAkB,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;AAE3C,MAAM,mBAAoB,SAAQ,wBAAS;IAC1C;QACC,KAAK,CACJ,mOAAmO,CACnO,CAAC;IACH,CAAC;CACD;AAED,
|
|
1
|
+
{"version":3,"file":"Code.node.js","sourceRoot":"","sources":["../../../nodes/Code/Code.node.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Compression.node.d.ts","sourceRoot":"","sources":["../../../nodes/Compression/Compression.node.ts"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"Compression.node.d.ts","sourceRoot":"","sources":["../../../nodes/Compression/Compression.node.ts"],"names":[],"mappings":"AAEA,OAAO,EAIN,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,SAAS,EACd,KAAK,oBAAoB,EACzB,MAAM,cAAc,CAAC;AAmCtB,qBAAa,WAAY,YAAW,SAAS;IAC5C,WAAW,EAAE,oBAAoB,CAgN/B;IAEI,OAAO,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC;CAiNvE"}
|
|
@@ -294,7 +294,11 @@ class Compression {
|
|
|
294
294
|
for (const [index, binaryPropertyName] of binaryPropertyNames.entries()) {
|
|
295
295
|
const binaryData = this.helpers.assertBinaryData(i, binaryPropertyName);
|
|
296
296
|
const binaryDataBuffer = await this.helpers.getBinaryDataBuffer(i, binaryPropertyName);
|
|
297
|
-
|
|
297
|
+
const fileExtension = binaryData.fileExtension?.toLowerCase();
|
|
298
|
+
if (!fileExtension) {
|
|
299
|
+
throw new n8n_workflow_1.NodeOperationError(this.getNode(), `File extension not found for binary data ${binaryPropertyName}`);
|
|
300
|
+
}
|
|
301
|
+
if (fileExtension === 'zip') {
|
|
298
302
|
const files = await unzip(binaryDataBuffer);
|
|
299
303
|
for (const key of Object.keys(files)) {
|
|
300
304
|
// when files are compressed using MACOSX for some reason they are duplicated under __MACOSX
|
|
@@ -305,7 +309,7 @@ class Compression {
|
|
|
305
309
|
binaryObject[`${outputPrefix}${zipIndex++}`] = data;
|
|
306
310
|
}
|
|
307
311
|
}
|
|
308
|
-
else if (['gz', 'gzip'].includes(
|
|
312
|
+
else if (['gz', 'gzip'].includes(fileExtension)) {
|
|
309
313
|
const file = await gunzip(binaryDataBuffer);
|
|
310
314
|
const fileName = binaryData.fileName?.split('.')[0];
|
|
311
315
|
let fileExtension;
|