cliodot 1.2.2 → 1.2.4
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/LICENSE +201 -0
- package/README.md +81 -0
- package/dist/AuthAppClient.d.ts +1 -0
- package/dist/AuthAppClient.d.ts.map +1 -1
- package/dist/AuthAppClient.js +199 -1
- package/dist/CommercialAppClient.d.ts +178 -0
- package/dist/CommercialAppClient.d.ts.map +1 -0
- package/dist/CommercialAppClient.js +576 -0
- package/dist/ConnectorBuilder.js +104 -1
- package/dist/Events.d.ts +2 -0
- package/dist/Events.d.ts.map +1 -1
- package/dist/Events.js +325 -1
- package/dist/Flosync.js +296 -1
- package/dist/FlosyncClient.js +429 -1
- package/dist/FunctionBuilder.js +65 -1
- package/dist/IdentityAppClient.d.ts +23 -0
- package/dist/IdentityAppClient.d.ts.map +1 -0
- package/dist/IdentityAppClient.js +197 -0
- package/dist/MemoryAppClient.d.ts +28 -0
- package/dist/MemoryAppClient.d.ts.map +1 -0
- package/dist/MemoryAppClient.js +149 -0
- package/dist/MemoryClient.d.ts +8 -0
- package/dist/MemoryClient.d.ts.map +1 -0
- package/dist/MemoryClient.js +20 -0
- package/dist/OAuthAppClient.d.ts +1 -0
- package/dist/OAuthAppClient.d.ts.map +1 -1
- package/dist/OAuthAppClient.js +269 -1
- package/dist/ProviderServicesClient.d.ts +24 -0
- package/dist/ProviderServicesClient.d.ts.map +1 -0
- package/dist/ProviderServicesClient.js +158 -0
- package/dist/Surface.d.ts +2 -0
- package/dist/Surface.d.ts.map +1 -1
- package/dist/Surface.js +255 -1
- package/dist/ValidatorBuilder.js +24 -1
- package/dist/Webhooks.d.ts +20 -0
- package/dist/Webhooks.d.ts.map +1 -0
- package/dist/Webhooks.js +61 -0
- package/dist/WorkflowBuilder.js +279 -1
- package/dist/__tests__/CommercialAppClient.test.d.ts +2 -0
- package/dist/__tests__/CommercialAppClient.test.d.ts.map +1 -0
- package/dist/__tests__/CommercialAppClient.test.js +217 -0
- package/dist/__tests__/Events.test.js +191 -1
- package/dist/__tests__/IdentityAppClient.test.d.ts +2 -0
- package/dist/__tests__/IdentityAppClient.test.d.ts.map +1 -0
- package/dist/__tests__/IdentityAppClient.test.js +232 -0
- package/dist/__tests__/OAuthAppClient.test.js +300 -1
- package/dist/__tests__/ProviderServicesClient.test.d.ts +2 -0
- package/dist/__tests__/ProviderServicesClient.test.d.ts.map +1 -0
- package/dist/__tests__/ProviderServicesClient.test.js +131 -0
- package/dist/__tests__/Surface.test.js +150 -1
- package/dist/__tests__/errors.test.js +54 -1
- package/dist/__tests__/function.test.js +58 -1
- package/dist/__tests__/helpers.d.ts +5 -0
- package/dist/__tests__/helpers.d.ts.map +1 -0
- package/dist/__tests__/helpers.js +10 -0
- package/dist/__tests__/localhost-lookup.test.d.ts +2 -0
- package/dist/__tests__/localhost-lookup.test.d.ts.map +1 -0
- package/dist/__tests__/localhost-lookup.test.js +26 -0
- package/dist/__tests__/parse-api-error.test.js +26 -1
- package/dist/__tests__/runner.test.js +156 -1
- package/dist/connectors/builtin.js +354 -1
- package/dist/connectors/registry.js +300 -1
- package/dist/decorators/build.js +105 -1
- package/dist/decorators/connector.js +56 -1
- package/dist/decorators/index.js +34 -1
- package/dist/decorators/metadata.js +338 -1
- package/dist/decorators/steps.js +220 -1
- package/dist/decorators/workflow.js +52 -1
- package/dist/errors.js +76 -1
- package/dist/http/__tests__/cliodot-request.environment.test.d.ts +2 -0
- package/dist/http/__tests__/cliodot-request.environment.test.d.ts.map +1 -0
- package/dist/http/__tests__/cliodot-request.environment.test.js +37 -0
- package/dist/http/__tests__/cliodot-result.test.d.ts +2 -0
- package/dist/http/__tests__/cliodot-result.test.d.ts.map +1 -0
- package/dist/http/__tests__/cliodot-result.test.js +57 -0
- package/dist/http/__tests__/events-instance-id.test.d.ts +2 -0
- package/dist/http/__tests__/events-instance-id.test.d.ts.map +1 -0
- package/dist/http/__tests__/events-instance-id.test.js +45 -0
- package/dist/http/cliodot-request.d.ts +35 -0
- package/dist/http/cliodot-request.d.ts.map +1 -0
- package/dist/http/cliodot-request.js +105 -0
- package/dist/http/cliodot-result.d.ts +40 -0
- package/dist/http/cliodot-result.d.ts.map +1 -0
- package/dist/http/cliodot-result.js +139 -0
- package/dist/http/create-client.d.ts +3 -0
- package/dist/http/create-client.d.ts.map +1 -0
- package/dist/http/create-client.js +14 -0
- package/dist/http/events-instance-id.d.ts +11 -0
- package/dist/http/events-instance-id.d.ts.map +1 -0
- package/dist/http/events-instance-id.js +86 -0
- package/dist/http/localhost-lookup.d.ts +12 -0
- package/dist/http/localhost-lookup.d.ts.map +1 -0
- package/dist/http/localhost-lookup.js +67 -0
- package/dist/http/parse-api-error.js +56 -1
- package/dist/http/sanitize-execution-headers.js +79 -1
- package/dist/identity-offline-verify.d.ts +6 -0
- package/dist/identity-offline-verify.d.ts.map +1 -0
- package/dist/identity-offline-verify.js +174 -0
- package/dist/identity-token-cache.d.ts +6 -0
- package/dist/identity-token-cache.d.ts.map +1 -0
- package/dist/identity-token-cache.js +51 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +108 -1
- package/dist/runner/ProcessorEngine.js +1311 -1
- package/dist/runner/connector.executor.js +1786 -1
- package/dist/runner/utilities/math.executor.js +153 -1
- package/dist/runner/utilities/random.executor.js +151 -1
- package/dist/runner/utilities/string.executor.js +825 -1
- package/dist/template.js +127 -1
- package/dist/transformers/StepsToNodesTransformer.js +214 -1
- package/dist/transformers/WorkflowTransformer.js +189 -1
- package/dist/types/auth-app.api.d.ts +2 -0
- package/dist/types/auth-app.api.d.ts.map +1 -1
- package/dist/types/auth-app.api.js +2 -1
- package/dist/types/builtin.js +2 -1
- package/dist/types/client.api.js +2 -1
- package/dist/types/commercial-app.api.d.ts +963 -0
- package/dist/types/commercial-app.api.d.ts.map +1 -0
- package/dist/types/commercial-app.api.js +2 -0
- package/dist/types/connector.js +2 -1
- package/dist/types/context.js +2 -1
- package/dist/types/event-app.api.d.ts +8 -0
- package/dist/types/event-app.api.d.ts.map +1 -1
- package/dist/types/event-app.api.js +2 -1
- package/dist/types/function.js +2 -1
- package/dist/types/identity-app.api.d.ts +99 -0
- package/dist/types/identity-app.api.d.ts.map +1 -0
- package/dist/types/identity-app.api.js +2 -0
- package/dist/types/index.js +23 -1
- package/dist/types/memory-app.api.d.ts +140 -0
- package/dist/types/memory-app.api.d.ts.map +1 -0
- package/dist/types/memory-app.api.js +2 -0
- package/dist/types/oauth-app.api.d.ts +2 -0
- package/dist/types/oauth-app.api.d.ts.map +1 -1
- package/dist/types/oauth-app.api.js +105 -1
- package/dist/types/provider-services.api.d.ts +98 -0
- package/dist/types/provider-services.api.d.ts.map +1 -0
- package/dist/types/provider-services.api.js +2 -0
- package/dist/types/validator.js +2 -1
- package/dist/types/webhook-app.api.d.ts +2 -0
- package/dist/types/webhook-app.api.d.ts.map +1 -0
- package/dist/types/webhook-app.api.js +2 -0
- package/dist/types/workflow.js +33 -1
- package/dist/validators/validators.js +478 -1
- package/dist/variable.js +37 -1
- package/package.json +3 -2
package/dist/template.js
CHANGED
|
@@ -1 +1,127 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.renderTemplate = renderTemplate;
|
|
7
|
+
exports.evaluateExpression = evaluateExpression;
|
|
8
|
+
const jexl_1 = __importDefault(require("jexl"));
|
|
9
|
+
let templateJexl = null;
|
|
10
|
+
function getTemplateJexl() {
|
|
11
|
+
if (templateJexl)
|
|
12
|
+
return templateJexl;
|
|
13
|
+
const jexl = new jexl_1.default.Jexl();
|
|
14
|
+
jexl.addFunctions({
|
|
15
|
+
lowercase: (v) => (v != null ? String(v).toLowerCase() : v),
|
|
16
|
+
trim: (v) => (v != null ? String(v).trim() : v),
|
|
17
|
+
uppercase: (v) => (v != null ? String(v).toUpperCase() : v),
|
|
18
|
+
substring: (v, start, end) => {
|
|
19
|
+
if (v == null)
|
|
20
|
+
return v;
|
|
21
|
+
const s = String(v);
|
|
22
|
+
const st = start ?? 0;
|
|
23
|
+
return end != null ? s.substring(st, end) : s.substring(st);
|
|
24
|
+
},
|
|
25
|
+
replace: (v, search, repl) => v != null ? String(v).replace(search ?? "", repl ?? "") : v,
|
|
26
|
+
split: (v, sep, limit) => {
|
|
27
|
+
if (v == null)
|
|
28
|
+
return v;
|
|
29
|
+
const arr = String(v).split(sep ?? ",");
|
|
30
|
+
return limit != null ? arr.slice(0, limit) : arr;
|
|
31
|
+
},
|
|
32
|
+
join: (v, sep) => Array.isArray(v) ? v.join(sep ?? ",") : v != null ? String(v) : v,
|
|
33
|
+
default_value: (v, d) => (v != null && v !== "" ? v : d),
|
|
34
|
+
to_string: (v) => (v != null ? String(v) : v),
|
|
35
|
+
to_number: (v) => (v != null ? Number(v) : v),
|
|
36
|
+
to_boolean: (v) => (v != null ? Boolean(v) : v),
|
|
37
|
+
json_parse: (v) => (typeof v === "string" ? JSON.parse(v) : v),
|
|
38
|
+
json_stringify: (v) => (v != null ? JSON.stringify(v) : v),
|
|
39
|
+
length: (v) => v != null ? (Array.isArray(v) ? v.length : String(v).length) : 0,
|
|
40
|
+
first: (v) => Array.isArray(v) && v.length > 0 ? v[0] : v != null ? String(v)[0] : v,
|
|
41
|
+
last: (v) => Array.isArray(v) && v.length > 0
|
|
42
|
+
? v[v.length - 1]
|
|
43
|
+
: v != null
|
|
44
|
+
? String(v).slice(-1)
|
|
45
|
+
: v,
|
|
46
|
+
coalesce: (obj, fieldsArg) => {
|
|
47
|
+
const fields = Array.isArray(fieldsArg) ? fieldsArg : fieldsArg ? [fieldsArg] : [];
|
|
48
|
+
if (!obj || typeof obj !== "object")
|
|
49
|
+
return undefined;
|
|
50
|
+
for (const f of fields) {
|
|
51
|
+
const val = f.split(".").reduce((o, p) => o?.[p], obj);
|
|
52
|
+
if (val != null && val !== "")
|
|
53
|
+
return val;
|
|
54
|
+
}
|
|
55
|
+
return undefined;
|
|
56
|
+
},
|
|
57
|
+
});
|
|
58
|
+
templateJexl = jexl;
|
|
59
|
+
return templateJexl;
|
|
60
|
+
}
|
|
61
|
+
function preprocessExpression(expr) {
|
|
62
|
+
let result = expr;
|
|
63
|
+
let changed = true;
|
|
64
|
+
let iterations = 0;
|
|
65
|
+
const maxIterations = 10;
|
|
66
|
+
while (changed && iterations < maxIterations) {
|
|
67
|
+
iterations++;
|
|
68
|
+
const before = result;
|
|
69
|
+
result = result.replace(/([\w\]])\.([a-zA-Z_][a-zA-Z0-9_-]+)(?![\[\(])/g, (match, base, prop) => {
|
|
70
|
+
if (prop.includes("-") || /^\d/.test(prop)) {
|
|
71
|
+
return `${base}['${prop}']`;
|
|
72
|
+
}
|
|
73
|
+
return match;
|
|
74
|
+
});
|
|
75
|
+
changed = before !== result;
|
|
76
|
+
}
|
|
77
|
+
return result;
|
|
78
|
+
}
|
|
79
|
+
async function renderTemplate(template, context = {}) {
|
|
80
|
+
if (typeof template !== "string")
|
|
81
|
+
return template;
|
|
82
|
+
if (!template.includes("{{"))
|
|
83
|
+
return template;
|
|
84
|
+
const regex = /\{\{\s*([^}]+)\s*\}\}/g;
|
|
85
|
+
let result = template;
|
|
86
|
+
let offset = 0;
|
|
87
|
+
const matches = [...template.matchAll(regex)];
|
|
88
|
+
for (const match of matches) {
|
|
89
|
+
const expr = match[1].trim();
|
|
90
|
+
try {
|
|
91
|
+
const value = await evaluateExpression(expr, context);
|
|
92
|
+
let replacement;
|
|
93
|
+
const adjustedMatchIndex = match.index + offset;
|
|
94
|
+
let replaceStart = adjustedMatchIndex;
|
|
95
|
+
let replaceLength = match[0].length;
|
|
96
|
+
if (value == null) {
|
|
97
|
+
replacement = "";
|
|
98
|
+
}
|
|
99
|
+
else if (typeof value === "object") {
|
|
100
|
+
replacement = JSON.stringify(value);
|
|
101
|
+
}
|
|
102
|
+
else {
|
|
103
|
+
replacement = String(value);
|
|
104
|
+
}
|
|
105
|
+
const lengthDiff = replacement.length - replaceLength;
|
|
106
|
+
offset += lengthDiff;
|
|
107
|
+
result =
|
|
108
|
+
result.substring(0, replaceStart) +
|
|
109
|
+
replacement +
|
|
110
|
+
result.substring(replaceStart + replaceLength);
|
|
111
|
+
}
|
|
112
|
+
catch (err) {
|
|
113
|
+
const adjustedMatchIndex = match.index + offset;
|
|
114
|
+
result =
|
|
115
|
+
result.substring(0, adjustedMatchIndex) +
|
|
116
|
+
"" +
|
|
117
|
+
result.substring(adjustedMatchIndex + match[0].length);
|
|
118
|
+
offset -= match[0].length;
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
return result;
|
|
122
|
+
}
|
|
123
|
+
async function evaluateExpression(expr, context) {
|
|
124
|
+
const processedExpr = preprocessExpression(expr);
|
|
125
|
+
const jexl = getTemplateJexl();
|
|
126
|
+
return jexl.eval(processedExpr, context);
|
|
127
|
+
}
|
|
@@ -1 +1,214 @@
|
|
|
1
|
-
'use strict';const _0x2e67f9=_0x4544;function _0x237e(){const _0x13a946=['mJa5oty0n0nKq0z6za','y29UBMvJDg9Yq29UzMLN','DgHLBG','nJC0nJfXuhPduee','oda4ze9QrNrg','lwvSC2uT','mteZmZnjs1bouhK','zgvSyxK','y29UBMvJDg9Yx2fWAq','B3v0Chv0lwvSC2u','DMfSAwrHDgLVBKDYB3vWCW','uKvtue9orevs','qvbj','rLvoq1rjt04','ywn0AxzL','CMvZCg9UzgvY','x19LC01VzhvSzq','mti4mZiZwLD3CLjZ','C3rLChm','v29YA2zSB3DuCMLNz2vYvhLWzq','zwXZzq','vfjbtLngt1jn','ChvZAa','vhjPz2DLCG','BwfWCgLUzW','y29UBMvJDgLVBL9Pza','BM90Awz5','DgLTzxPVBMu','lxrOzw4T','q09oreLusu9o','Aw5WDxrFzNjVBq','revmqvK','qvvusevoveLdqvrjt04','vKfmsurbve9s','mJi4Du53C3Ld','AgvHzgvYCW','kIaQicOGkIaQ','yxv0AgvUDgLJyxrPB24','zNvUy3rPB25tBhvN','Bw9Kzq','yM9KEq','mtbJswvgsKi','Cgf0AfbHCMfTCW','y29UzMLN','nZu0nZLeDM1SzhO','DhjPz2DLCG','zgf0ywjHC2u','v0vcse9psW','AMv4Ba','y3jVBG','C291CMnLx2nVBM5Ly3rVCL92zxjZAw9U','mtKWsKLYuwvW','mtyZmtCYn3LQq3nQva','ywn0Aw9U','ue9tva','v29YA2zSB3DtDgvWvhLWzq','C2nOzwr1Bgu','qvbjx0nbteW','zxzLBNq','B3bLCMf0Aw9UCW','y29UBMvJDg9Yswq','tufovufm','Bg9N','tK9usuzz','AxnwywXPzgf0B3jby3rPB24','C3rLChnuB05VzgvZ','BMfTzq','Ahr0Ca','neHgyNjxBq','Dg9mB3DLCKnHC2u','ru5duLLqveLptG','B3v0Chv0lwLM','zNvUy3rPB25jza','DMfYCW','D2vIAg9VA191CMW','mMLMEMnKra','zgvMAw5LuhjVCgvYDhK','mtKWmZHVt1f3Eey','D2vIAg9VAW','zw5KCg9PBNroyw1L','y29UBMvJDg9Yx3zLCNnPB24','lI4VDhLWzxmVD29YA2zSB3C','DhLWzq','y29UBMvJDg9Yx2LK'];_0x237e=function(){return _0x13a946;};return _0x237e();}(function(_0x5c759a,_0x3152ca){const _0x5967e3=_0x4544,_0x3193f3=_0x5c759a();while(!![]){try{const _0x1fa409=parseInt(_0x5967e3(0x236))/0x1*(-parseInt(_0x5967e3(0x201))/0x2)+-parseInt(_0x5967e3(0x20d))/0x3*(-parseInt(_0x5967e3(0x1fa))/0x4)+-parseInt(_0x5967e3(0x1e9))/0x5*(-parseInt(_0x5967e3(0x203))/0x6)+-parseInt(_0x5967e3(0x210))/0x7*(parseInt(_0x5967e3(0x20e))/0x8)+parseInt(_0x5967e3(0x1ea))/0x9*(-parseInt(_0x5967e3(0x233))/0xa)+parseInt(_0x5967e3(0x20a))/0xb+-parseInt(_0x5967e3(0x22c))/0xc*(-parseInt(_0x5967e3(0x21b))/0xd);if(_0x1fa409===_0x3152ca)break;else _0x3193f3['push'](_0x3193f3['shift']());}catch(_0x55b933){_0x3193f3['push'](_0x3193f3['shift']());}}}(_0x237e,0x18b42));Object[_0x2e67f9(0x202)](exports,_0x2e67f9(0x21a),{'value':!![]}),exports[_0x2e67f9(0x1f7)]=stepsToNodes;const workflow_1=require(_0x2e67f9(0x207));function _0x4544(_0x20a381,_0x14b05d){_0x20a381=_0x20a381-0x1e8;const _0x237e5e=_0x237e();let _0x45441a=_0x237e5e[_0x20a381];if(_0x4544['buHLDi']===undefined){var _0x2b2719=function(_0x3e50ce){const _0x566e0b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x48addf='',_0x3b43f6='';for(let _0x54d66b=0x0,_0x3d8186,_0x41a264,_0x341f27=0x0;_0x41a264=_0x3e50ce['charAt'](_0x341f27++);~_0x41a264&&(_0x3d8186=_0x54d66b%0x4?_0x3d8186*0x40+_0x41a264:_0x41a264,_0x54d66b++%0x4)?_0x48addf+=String['fromCharCode'](0xff&_0x3d8186>>(-0x2*_0x54d66b&0x6)):0x0){_0x41a264=_0x566e0b['indexOf'](_0x41a264);}for(let _0x3eebdf=0x0,_0xc3c302=_0x48addf['length'];_0x3eebdf<_0xc3c302;_0x3eebdf++){_0x3b43f6+='%'+('00'+_0x48addf['charCodeAt'](_0x3eebdf)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3b43f6);};_0x4544['btShZB']=_0x2b2719,_0x4544['usKudu']={},_0x4544['buHLDi']=!![];}const _0x3216ed=_0x237e5e[0x0],_0x349d38=_0x20a381+_0x3216ed,_0x30cec1=_0x4544['usKudu'][_0x349d38];return!_0x30cec1?(_0x45441a=_0x4544['btShZB'](_0x45441a),_0x4544['usKudu'][_0x349d38]=_0x45441a):_0x45441a=_0x30cec1,_0x45441a;}function stepTypeToNodeType(_0x48addf){const _0x1aa968=_0x2e67f9,_0x3b43f6=_0x48addf[_0x1aa968(0x208)];if(_0x3b43f6===workflow_1[_0x1aa968(0x1ed)][_0x1aa968(0x1ef)])return _0x1aa968(0x212);if(_0x3b43f6===workflow_1['WorkflowStepType']['DB'])return'connector_db';if(_0x3b43f6===workflow_1[_0x1aa968(0x1ed)][_0x1aa968(0x21f)])return'transform';if(_0x3b43f6===workflow_1[_0x1aa968(0x1ed)][_0x1aa968(0x227)])return'condition';if(_0x3b43f6===workflow_1['WorkflowStepType'][_0x1aa968(0x22b)])return _0x1aa968(0x212);if(_0x3b43f6===workflow_1[_0x1aa968(0x1ed)][_0x1aa968(0x215)])return _0x1aa968(0x212);if(_0x3b43f6===workflow_1[_0x1aa968(0x1ed)]['AUTHENTICATION'])return _0x1aa968(0x22f);if(_0x3b43f6===workflow_1[_0x1aa968(0x1ed)][_0x1aa968(0x217)])return'function';if(_0x3b43f6===workflow_1[_0x1aa968(0x1ed)][_0x1aa968(0x1fc)])return'connector_api';if(_0x3b43f6===workflow_1['WorkflowStepType']['LOG'])return _0x1aa968(0x1f4);if(_0x3b43f6===workflow_1[_0x1aa968(0x1ed)][_0x1aa968(0x229)])return _0x1aa968(0x211);if(_0x3b43f6===workflow_1[_0x1aa968(0x1ed)][_0x1aa968(0x1f5)])return _0x1aa968(0x224);return _0x1aa968(0x212);}function stepToNodeData(_0x54d66b,_0x3d8186){const _0x458693=_0x2e67f9,_0x41a264={'label':_0x54d66b['id']},_0x341f27=_0x54d66b;return _0x54d66b[_0x458693(0x208)]===workflow_1[_0x458693(0x1ed)][_0x458693(0x1ef)]&&(_0x41a264['connectorId']=_0x341f27[_0x458693(0x209)],_0x41a264[_0x458693(0x1eb)]=_0x341f27['action'],_0x41a264[_0x458693(0x205)]=_0x341f27['action'],_0x41a264['connectorConfig']={'body':_0x341f27['body'],'params':_0x341f27['params'],'pathParams':_0x341f27[_0x458693(0x234)],'headers':_0x341f27[_0x458693(0x22d)],'vars':_0x341f27['vars'],'installation_id':_0x341f27['installation_id'],'connection_id':_0x341f27[_0x458693(0x223)],'database':_0x341f27[_0x458693(0x238)],'timeout':_0x341f27['timeout'],'then':_0x341f27[_0x458693(0x20c)],'else':_0x341f27['else']},_0x341f27[_0x458693(0x206)]&&(_0x41a264[_0x458693(0x206)]=_0x341f27['connector_version'],_0x41a264[_0x458693(0x20b)]['connector_version']=_0x341f27[_0x458693(0x206)])),_0x54d66b[_0x458693(0x208)]===workflow_1[_0x458693(0x1ed)]['DB']&&(_0x41a264[_0x458693(0x1f2)]=_0x341f27[_0x458693(0x209)],_0x41a264[_0x458693(0x1eb)]=_0x341f27[_0x458693(0x1eb)],_0x41a264[_0x458693(0x205)]=_0x341f27[_0x458693(0x1eb)],_0x41a264[_0x458693(0x20b)]={..._0x341f27[_0x458693(0x232)],'then':_0x341f27[_0x458693(0x20c)],'else':_0x341f27['else']},_0x341f27[_0x458693(0x206)]&&(_0x41a264[_0x458693(0x206)]=_0x341f27[_0x458693(0x206)],_0x41a264['connectorConfig']['connector_version']=_0x341f27['connector_version'])),_0x54d66b[_0x458693(0x208)]===workflow_1['WorkflowStepType']['TRANSFORM']&&(_0x41a264['mapping']=_0x341f27[_0x458693(0x222)],_0x41a264[_0x458693(0x1f1)]=_0x341f27[_0x458693(0x1f1)]),_0x54d66b[_0x458693(0x208)]===workflow_1[_0x458693(0x1ed)][_0x458693(0x227)]&&(_0x41a264['conditionExpr']=_0x341f27['if'],_0x41a264[_0x458693(0x231)]=_0x341f27[_0x458693(0x231)]||_0x458693(0x23a),_0x41a264[_0x458693(0x20c)]=_0x341f27[_0x458693(0x20c)],_0x41a264['else']=_0x341f27['else']),_0x54d66b[_0x458693(0x208)]===workflow_1[_0x458693(0x1ed)][_0x458693(0x22b)]&&(_0x41a264[_0x458693(0x1f6)]=!![],_0x41a264[_0x458693(0x214)]=_0x341f27[_0x458693(0x214)]),_0x54d66b[_0x458693(0x208)]===workflow_1[_0x458693(0x1ed)][_0x458693(0x215)]&&(_0x41a264['responderType']=_0x341f27[_0x458693(0x219)],_0x41a264[_0x458693(0x20b)]=_0x341f27[_0x458693(0x235)]),_0x54d66b['type']===workflow_1['WorkflowStepType'][_0x458693(0x22a)]&&(_0x41a264['connectorId']=_0x341f27[_0x458693(0x209)],_0x41a264[_0x458693(0x1eb)]=_0x341f27['action'],_0x41a264[_0x458693(0x20b)]={'body':_0x341f27[_0x458693(0x232)],'then':_0x341f27[_0x458693(0x20c)],'else':_0x341f27[_0x458693(0x21e)]},_0x341f27[_0x458693(0x206)]&&(_0x41a264[_0x458693(0x206)]=_0x341f27[_0x458693(0x206)],_0x41a264['connectorConfig']['connector_version']=_0x341f27[_0x458693(0x206)])),_0x54d66b[_0x458693(0x208)]===workflow_1[_0x458693(0x1ed)][_0x458693(0x1fc)]&&(_0x41a264[_0x458693(0x1f2)]=_0x341f27[_0x458693(0x209)],_0x41a264[_0x458693(0x1eb)]=_0x341f27[_0x458693(0x1eb)],_0x41a264[_0x458693(0x205)]=_0x341f27['action'],_0x41a264[_0x458693(0x20b)]={'body':_0x341f27['body'],'params':_0x341f27['params'],'then':_0x341f27[_0x458693(0x20c)],'else':_0x341f27[_0x458693(0x21e)]},_0x341f27[_0x458693(0x206)]&&(_0x41a264['connector_version']=_0x341f27['connector_version'],_0x41a264['connectorConfig']['connector_version']=_0x341f27[_0x458693(0x206)])),_0x54d66b[_0x458693(0x208)]===workflow_1['WorkflowStepType'][_0x458693(0x217)]&&(_0x41a264[_0x458693(0x1fe)]=_0x341f27['function_id'],_0x41a264[_0x458693(0x230)]=_0x341f27['function_slug'],_0x41a264[_0x458693(0x20b)]={'args':_0x341f27['args'],'then':_0x341f27[_0x458693(0x20c)],'else':_0x341f27[_0x458693(0x21e)]}),_0x54d66b['type']===workflow_1[_0x458693(0x1ed)]['LOG']&&(_0x41a264['message']=_0x341f27['message']),_0x54d66b[_0x458693(0x208)]===workflow_1[_0x458693(0x1ed)]['DELAY']&&(_0x41a264['ms']=_0x341f27['ms']),_0x41a264;}function stepsToNodes(_0x3eebdf){const _0x5d630a=_0x2e67f9,_0xc3c302=_0x3eebdf[_0x5d630a(0x237)],_0x436b17=_0x3eebdf[_0x5d630a(0x21c)]||[],_0x31f002=_0x5d630a(0x237),_0x2062e9=[],_0x11895e=[],_0x1683de=_0xc3c302['type']||workflow_1[_0x5d630a(0x21d)][_0x5d630a(0x1f3)],_0x1f4fe6=_0x1683de===workflow_1['WorkflowTriggerType'][_0x5d630a(0x239)]?_0x5d630a(0x1f9):String(_0x1683de)[_0x5d630a(0x1fb)](),_0x29b773=_0xc3c302[_0x5d630a(0x200)]||'',_0x293c4a=_0xc3c302['webhookMethod']||_0x5d630a(0x1ec),_0x552893=_0xc3c302[_0x5d630a(0x23b)],_0x127f08=_0xc3c302[_0x5d630a(0x225)],_0x4b675d=_0xc3c302[_0x5d630a(0x1f0)],_0x5aad51=_0xc3c302['source_connector_id'],_0x19bbf4=_0xc3c302[_0x5d630a(0x1e8)],_0x618e6b=_0x1f4fe6==='http'||_0x1f4fe6===_0x5d630a(0x204)?{'webhookPath':_0x29b773,'webhookMethod':_0x293c4a}:_0x1f4fe6==='job'||_0x1f4fe6===_0x5d630a(0x1ee)?{'cron':_0x552893??_0x5d630a(0x22e),'timezone':_0x127f08}:_0x1f4fe6===_0x5d630a(0x1f0)?{'event':_0x4b675d,'source_connector_id':_0x5aad51,'source_connector_version':_0x19bbf4}:{};_0x2062e9[_0x5d630a(0x220)]({'id':_0x31f002,'type':'custom','position':{'x':0x0,'y':0x0},'data':{'triggerType':_0x1f4fe6,'webhookPath':_0x29b773,'webhookMethod':_0x293c4a,'cron':_0x552893,'timezone':_0x127f08,'event':_0x4b675d,'source_connector_id':_0x5aad51,'source_connector_version':_0x19bbf4,'label':_0x5d630a(0x221)},'label':_0x5d630a(0x221)});const _0x178142=[{'id':_0x31f002,'type':_0x1f4fe6,'name':_0x5d630a(0x221),'enabled':!![],'config':_0x618e6b}];_0x436b17['forEach']((_0x3dee07,_0x28f16b)=>{const _0x1ef4b5=_0x5d630a,_0x61273c=_0x3dee07['id'],_0x591b5c=0xfa+_0x28f16b*0xc8,_0x166d60=0x0;_0x2062e9[_0x1ef4b5(0x220)]({'id':_0x61273c,'type':stepTypeToNodeType(_0x3dee07),'position':{'x':_0x591b5c,'y':_0x166d60},'data':stepToNodeData(_0x3dee07,_0x28f16b),'label':_0x3dee07['id']});const _0x3c999c=_0x3dee07[_0x1ef4b5(0x228)],_0xd3365b=_0x3c999c||_0x31f002;_0x11895e['push']({'id':'e-'+_0xd3365b+'-'+_0x61273c,'source':_0xd3365b,'target':_0x61273c}),_0x3dee07[_0x1ef4b5(0x20c)]&&_0x11895e[_0x1ef4b5(0x220)]({'id':'e-'+_0x61273c+_0x1ef4b5(0x226)+_0x3dee07['then'],'source':_0x61273c,'target':_0x3dee07['then'],'sourceHandle':_0x1ef4b5(0x1fd)}),_0x3dee07[_0x1ef4b5(0x21e)]&&_0x11895e[_0x1ef4b5(0x220)]({'id':'e-'+_0x61273c+_0x1ef4b5(0x20f)+_0x3dee07[_0x1ef4b5(0x21e)],'source':_0x61273c,'target':_0x3dee07[_0x1ef4b5(0x21e)],'sourceHandle':_0x1ef4b5(0x213)});});const _0x364533={'name':_0x3eebdf['name'],'type':_0x5d630a(0x216),'nodes':_0x2062e9,'edges':_0x11895e,'triggers':_0x178142};return{'type':_0x5d630a(0x216),'name':_0x3eebdf[_0x5d630a(0x1f8)],'status':_0x3eebdf['status']||_0x5d630a(0x218),'project_id':_0x3eebdf['project_id'],'vars':_0x3eebdf[_0x5d630a(0x1ff)],'data':[_0x364533]};}
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.stepsToNodes = stepsToNodes;
|
|
4
|
+
const workflow_1 = require("../types/workflow");
|
|
5
|
+
function stepTypeToNodeType(step) {
|
|
6
|
+
const t = step.type;
|
|
7
|
+
if (t === workflow_1.WorkflowStepType.API_CALL)
|
|
8
|
+
return "connector_api";
|
|
9
|
+
if (t === workflow_1.WorkflowStepType.DB)
|
|
10
|
+
return "connector_db";
|
|
11
|
+
if (t === workflow_1.WorkflowStepType.TRANSFORM)
|
|
12
|
+
return "transform";
|
|
13
|
+
if (t === workflow_1.WorkflowStepType.CONDITION)
|
|
14
|
+
return "condition";
|
|
15
|
+
if (t === workflow_1.WorkflowStepType.VALIDATOR)
|
|
16
|
+
return "connector_api";
|
|
17
|
+
if (t === workflow_1.WorkflowStepType.RESPONDER)
|
|
18
|
+
return "connector_api";
|
|
19
|
+
if (t === workflow_1.WorkflowStepType.AUTHENTICATION)
|
|
20
|
+
return "authentication";
|
|
21
|
+
if (t === workflow_1.WorkflowStepType.FUNCTION)
|
|
22
|
+
return "function";
|
|
23
|
+
if (t === workflow_1.WorkflowStepType.ENCRYPTION)
|
|
24
|
+
return "connector_api";
|
|
25
|
+
if (t === workflow_1.WorkflowStepType.LOG)
|
|
26
|
+
return "log";
|
|
27
|
+
if (t === workflow_1.WorkflowStepType.DELAY)
|
|
28
|
+
return "delay";
|
|
29
|
+
if (t === workflow_1.WorkflowStepType.NOTIFY)
|
|
30
|
+
return "notify";
|
|
31
|
+
return "connector_api";
|
|
32
|
+
}
|
|
33
|
+
function stepToNodeData(step, index) {
|
|
34
|
+
const data = { label: step.id };
|
|
35
|
+
const s = step;
|
|
36
|
+
if (step.type === workflow_1.WorkflowStepType.API_CALL) {
|
|
37
|
+
data.connectorId = s.connector_id;
|
|
38
|
+
data.action = s.action;
|
|
39
|
+
data.endpointName = s.action;
|
|
40
|
+
data.connectorConfig = {
|
|
41
|
+
body: s.body,
|
|
42
|
+
params: s.params,
|
|
43
|
+
pathParams: s.pathParams,
|
|
44
|
+
headers: s.headers,
|
|
45
|
+
vars: s.vars,
|
|
46
|
+
installation_id: s.installation_id,
|
|
47
|
+
connection_id: s.connection_id,
|
|
48
|
+
database: s.database,
|
|
49
|
+
timeout: s.timeout,
|
|
50
|
+
then: s.then,
|
|
51
|
+
else: s.else,
|
|
52
|
+
};
|
|
53
|
+
if (s.connector_version) {
|
|
54
|
+
data.connector_version = s.connector_version;
|
|
55
|
+
data.connectorConfig.connector_version = s.connector_version;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
if (step.type === workflow_1.WorkflowStepType.DB) {
|
|
59
|
+
data.connectorId = s.connector_id;
|
|
60
|
+
data.action = s.action;
|
|
61
|
+
data.endpointName = s.action;
|
|
62
|
+
data.connectorConfig = { ...s.body, then: s.then, else: s.else };
|
|
63
|
+
if (s.connector_version) {
|
|
64
|
+
data.connector_version = s.connector_version;
|
|
65
|
+
data.connectorConfig.connector_version = s.connector_version;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
if (step.type === workflow_1.WorkflowStepType.TRANSFORM) {
|
|
69
|
+
data.mapping = s.mapping;
|
|
70
|
+
data.operations = s.operations;
|
|
71
|
+
}
|
|
72
|
+
if (step.type === workflow_1.WorkflowStepType.CONDITION) {
|
|
73
|
+
data.conditionExpr = s.if;
|
|
74
|
+
data.mode = s.mode || "jexl";
|
|
75
|
+
data.then = s.then;
|
|
76
|
+
data.else = s.else;
|
|
77
|
+
}
|
|
78
|
+
if (step.type === workflow_1.WorkflowStepType.VALIDATOR) {
|
|
79
|
+
data.isValidatorAction = true;
|
|
80
|
+
data.validationGroups = s.validationGroups;
|
|
81
|
+
}
|
|
82
|
+
if (step.type === workflow_1.WorkflowStepType.RESPONDER) {
|
|
83
|
+
data.responderType = s.responder;
|
|
84
|
+
data.connectorConfig = s.config;
|
|
85
|
+
}
|
|
86
|
+
if (step.type === workflow_1.WorkflowStepType.AUTHENTICATION) {
|
|
87
|
+
data.connectorId = s.connector_id;
|
|
88
|
+
data.action = s.action;
|
|
89
|
+
data.connectorConfig = { body: s.body, then: s.then, else: s.else };
|
|
90
|
+
if (s.connector_version) {
|
|
91
|
+
data.connector_version = s.connector_version;
|
|
92
|
+
data.connectorConfig.connector_version = s.connector_version;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
if (step.type === workflow_1.WorkflowStepType.ENCRYPTION) {
|
|
96
|
+
data.connectorId = s.connector_id;
|
|
97
|
+
data.action = s.action;
|
|
98
|
+
data.endpointName = s.action;
|
|
99
|
+
data.connectorConfig = { body: s.body, params: s.params, then: s.then, else: s.else };
|
|
100
|
+
if (s.connector_version) {
|
|
101
|
+
data.connector_version = s.connector_version;
|
|
102
|
+
data.connectorConfig.connector_version = s.connector_version;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
if (step.type === workflow_1.WorkflowStepType.FUNCTION) {
|
|
106
|
+
data.functionId = s.function_id;
|
|
107
|
+
data.functionSlug = s.function_slug;
|
|
108
|
+
data.connectorConfig = { args: s.args, then: s.then, else: s.else };
|
|
109
|
+
}
|
|
110
|
+
if (step.type === workflow_1.WorkflowStepType.LOG) {
|
|
111
|
+
data.message = s.message;
|
|
112
|
+
}
|
|
113
|
+
if (step.type === workflow_1.WorkflowStepType.DELAY) {
|
|
114
|
+
data.ms = s.ms;
|
|
115
|
+
}
|
|
116
|
+
return data;
|
|
117
|
+
}
|
|
118
|
+
function stepsToNodes(workflow) {
|
|
119
|
+
const trigger = workflow.trigger;
|
|
120
|
+
const steps = workflow.steps || [];
|
|
121
|
+
const triggerId = "trigger";
|
|
122
|
+
const nodes = [];
|
|
123
|
+
const edges = [];
|
|
124
|
+
const rawType = trigger.type || workflow_1.WorkflowTriggerType.MANUAL;
|
|
125
|
+
const triggerType = rawType === workflow_1.WorkflowTriggerType.WEBHOOK ? "http" : String(rawType).toLowerCase();
|
|
126
|
+
const webhookPath = trigger.webhook_url || "";
|
|
127
|
+
const webhookMethod = trigger.webhookMethod || "POST";
|
|
128
|
+
const cron = trigger.cron;
|
|
129
|
+
const timezone = trigger.timezone;
|
|
130
|
+
const event = trigger.event;
|
|
131
|
+
const sourceConnectorId = trigger.source_connector_id;
|
|
132
|
+
const sourceConnectorVersion = trigger.source_connector_version;
|
|
133
|
+
const triggerConfig = triggerType === "http" || triggerType === "webhook"
|
|
134
|
+
? { webhookPath, webhookMethod }
|
|
135
|
+
: triggerType === "job" || triggerType === "schedule"
|
|
136
|
+
? { cron: cron ?? "* * * * *", timezone }
|
|
137
|
+
: triggerType === "event"
|
|
138
|
+
? {
|
|
139
|
+
event,
|
|
140
|
+
source_connector_id: sourceConnectorId,
|
|
141
|
+
source_connector_version: sourceConnectorVersion,
|
|
142
|
+
}
|
|
143
|
+
: {};
|
|
144
|
+
nodes.push({
|
|
145
|
+
id: triggerId,
|
|
146
|
+
type: "custom",
|
|
147
|
+
position: { x: 0, y: 0 },
|
|
148
|
+
data: {
|
|
149
|
+
triggerType,
|
|
150
|
+
webhookPath,
|
|
151
|
+
webhookMethod,
|
|
152
|
+
cron,
|
|
153
|
+
timezone,
|
|
154
|
+
event,
|
|
155
|
+
source_connector_id: sourceConnectorId,
|
|
156
|
+
source_connector_version: sourceConnectorVersion,
|
|
157
|
+
label: "Trigger",
|
|
158
|
+
},
|
|
159
|
+
label: "Trigger",
|
|
160
|
+
});
|
|
161
|
+
const triggers = [
|
|
162
|
+
{ id: triggerId, type: triggerType, name: "Trigger", enabled: true, config: triggerConfig },
|
|
163
|
+
];
|
|
164
|
+
steps.forEach((step, idx) => {
|
|
165
|
+
const nodeId = step.id;
|
|
166
|
+
const x = 250 + idx * 200;
|
|
167
|
+
const y = 0;
|
|
168
|
+
nodes.push({
|
|
169
|
+
id: nodeId,
|
|
170
|
+
type: stepTypeToNodeType(step),
|
|
171
|
+
position: { x, y },
|
|
172
|
+
data: stepToNodeData(step, idx),
|
|
173
|
+
label: step.id,
|
|
174
|
+
});
|
|
175
|
+
const inputFrom = step.input_from;
|
|
176
|
+
const sourceId = inputFrom || triggerId;
|
|
177
|
+
edges.push({
|
|
178
|
+
id: `e-${sourceId}-${nodeId}`,
|
|
179
|
+
source: sourceId,
|
|
180
|
+
target: nodeId,
|
|
181
|
+
});
|
|
182
|
+
if (step.then) {
|
|
183
|
+
edges.push({
|
|
184
|
+
id: `e-${nodeId}-then-${step.then}`,
|
|
185
|
+
source: nodeId,
|
|
186
|
+
target: step.then,
|
|
187
|
+
sourceHandle: "output-if",
|
|
188
|
+
});
|
|
189
|
+
}
|
|
190
|
+
if (step.else) {
|
|
191
|
+
edges.push({
|
|
192
|
+
id: `e-${nodeId}-else-${step.else}`,
|
|
193
|
+
source: nodeId,
|
|
194
|
+
target: step.else,
|
|
195
|
+
sourceHandle: "output-else",
|
|
196
|
+
});
|
|
197
|
+
}
|
|
198
|
+
});
|
|
199
|
+
const dataItem = {
|
|
200
|
+
name: workflow.name,
|
|
201
|
+
type: "API",
|
|
202
|
+
nodes,
|
|
203
|
+
edges,
|
|
204
|
+
triggers,
|
|
205
|
+
};
|
|
206
|
+
return {
|
|
207
|
+
type: "API",
|
|
208
|
+
name: workflow.name,
|
|
209
|
+
status: workflow.status || "active",
|
|
210
|
+
project_id: workflow.project_id,
|
|
211
|
+
vars: workflow.vars,
|
|
212
|
+
data: [dataItem],
|
|
213
|
+
};
|
|
214
|
+
}
|
|
@@ -1 +1,189 @@
|
|
|
1
|
-
'use strict';const _0x5d4743=_0x59ab;(function(_0x3a383c,_0x199f60){const _0x299f5e=_0x59ab,_0x5e638d=_0x3a383c();while(!![]){try{const _0x2b237f=parseInt(_0x299f5e(0x1d7))/0x1*(parseInt(_0x299f5e(0x1aa))/0x2)+parseInt(_0x299f5e(0x1f2))/0x3*(parseInt(_0x299f5e(0x1a5))/0x4)+parseInt(_0x299f5e(0x1de))/0x5*(-parseInt(_0x299f5e(0x1dc))/0x6)+-parseInt(_0x299f5e(0x1d5))/0x7+parseInt(_0x299f5e(0x1ec))/0x8*(-parseInt(_0x299f5e(0x1bb))/0x9)+-parseInt(_0x299f5e(0x19b))/0xa+parseInt(_0x299f5e(0x1f3))/0xb;if(_0x2b237f===_0x199f60)break;else _0x5e638d['push'](_0x5e638d['shift']());}catch(_0x3960a5){_0x5e638d['push'](_0x5e638d['shift']());}}}(_0x4e22,0x6934a));function _0x4e22(){const _0x8eed36=['C291CMnLx2nVBM5Ly3rVCL9Pza','q09oreLusu9o','BwfWCgLUzW','v29YA2zSB3DuCMfUC2zVCM1LCG','zgvSyxK','zwXZzq','tufovufm','D2vIAg9VA01LDgHVza','zw5KCg9PBNrjza','y29UBMvJDg9Yx2LK','y29UBMvJDg9YvMvYC2LVBG','AM9I','AMv4Ba','y29UBMvJDg9Yq29UzMLN','D2vIAg9VA1bHDgG','AgfZ','AxnwywXPzgf0B3jby3rPB24','C2v0','DgHLBG','mZu4nJmWm3DQsezJrq','ChvZAa','mvzgBxvvtW','DhLWzq','DhjPz2DLCLr5Cgu','yxbPx2nHBgW','ywn0Aw9U','odK5otrYBe9XAMe','rLvoq1rjt04','nwrKzxH6tq','C291CMnLq29UBMvJDg9YvMvYC2LVBG','CMvZCg9UzgvY','C2nOzwr1Bgu','C291CMnLq29UBMvJDg9Yswq','BMfTzq','Aw5WDxrFzNjVBq','lI4VDhLWzxmVD29YA2zSB3C','y29UzMLN','zwrNzxm','DgfYz2v0','y29UBMvJDg9Yswq','CMvZCg9UzgvYvhLWzq','sfruua','nJmZndK2BKHWz29x','Dg9mB3DLCKnHC2u','Cgf0AfbHCMfTCW','v29YA2zSB3DtDgvWvhLWzq','z2v0','rvzftLq','ntu1nNz4sw56rW','mtmYnJC4mtvQy25gDei','DgLTzxPVBMu','ywrK','v29YA2zSB3DuCMLNz2vYvhLWzq','revmqvK','zNvUy3rPB25tBhvN','zgvMAw5LuhjVCgvYDhK','nJK5mdy0mevAAMTwvW','CgfYyw1Z','C291CMnL','B3bLCMf0Aw9UCW','zM9YrwfJAa','zgf0yq','zNvUy3rPB24','ue9tva','zxzLBNq','y29UBMvJDg9Yx3zLCNnPB24','ndu2rNjiuKTe','C291CMnLx2nVBM5Ly3rVCL92zxjZAw9U','vfjbtLngt1jn','y29UzgL0Aw9UrxHWCG','uKvtue9orevs','mteXmZuZoej5CgjUzq','zNvUy3rPB25FC2X1zW','qvvusevoveLdqvrjt04','ywn0AxzL','tM8GDhjPz2DLCIbUB2rLigzVDw5K','Bw9Kzq','zNvUy3rPB25FAwq','BM9Kzxm','Bg9N','zw5KCg9PBNroyw1L','BwfUDwfS','zNvUy3rPB25jza','y29UBMvJDg9Yx2rI','CMvWBgfJzq','BwvZC2fNzq','DhjHBNnMB3jT','y3jVBG','mZzRuufrEgS','zMLUza','y29UzgL0Aw9U','DMfSAwrHDgLVBKDYB3vWCW','yM9KEq','vKfmsurbve9s','qvbjx0nbteW'];_0x4e22=function(){return _0x8eed36;};return _0x4e22();}function _0x59ab(_0x3ecf48,_0x3cbce4){_0x3ecf48=_0x3ecf48-0x197;const _0x4e22de=_0x4e22();let _0x59ab26=_0x4e22de[_0x3ecf48];if(_0x59ab['iPFqbb']===undefined){var _0xce5745=function(_0x7f7c98){const _0x546242='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x6446b1='',_0x762d5='';for(let _0x4d6dd9=0x0,_0x18aa56,_0x6189ab,_0x513595=0x0;_0x6189ab=_0x7f7c98['charAt'](_0x513595++);~_0x6189ab&&(_0x18aa56=_0x4d6dd9%0x4?_0x18aa56*0x40+_0x6189ab:_0x6189ab,_0x4d6dd9++%0x4)?_0x6446b1+=String['fromCharCode'](0xff&_0x18aa56>>(-0x2*_0x4d6dd9&0x6)):0x0){_0x6189ab=_0x546242['indexOf'](_0x6189ab);}for(let _0x55d639=0x0,_0x1a3515=_0x6446b1['length'];_0x55d639<_0x1a3515;_0x55d639++){_0x762d5+='%'+('00'+_0x6446b1['charCodeAt'](_0x55d639)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x762d5);};_0x59ab['nJUZnM']=_0xce5745,_0x59ab['jRvFcg']={},_0x59ab['iPFqbb']=!![];}const _0x1667a7=_0x4e22de[0x0],_0x429441=_0x3ecf48+_0x1667a7,_0x8b191a=_0x59ab['jRvFcg'][_0x429441];return!_0x8b191a?(_0x59ab26=_0x59ab['nJUZnM'](_0x59ab26),_0x59ab['jRvFcg'][_0x429441]=_0x59ab26):_0x59ab26=_0x8b191a,_0x59ab26;}Object[_0x5d4743(0x19a)](exports,'__esModule',{'value':!![]}),exports[_0x5d4743(0x1c5)]=void 0x0;const workflow_1=require(_0x5d4743(0x1e5));function sanitize(_0x6446b1){const _0x246379=_0x5d4743;return _0x6446b1[_0x246379(0x1b7)](/[.\-\s]/g,'_');}function buildDependencyGraph(_0x762d5){const _0x39dc7b=_0x5d4743,_0x4d6dd9=new Map();return _0x762d5[_0x39dc7b(0x19f)](_0x18aa56=>{const _0x3dbfe3=_0x39dc7b;if(!_0x4d6dd9['has'](_0x18aa56[_0x3dbfe3(0x1e8)]))_0x4d6dd9['set'](_0x18aa56[_0x3dbfe3(0x1e8)],[]);_0x4d6dd9[_0x3dbfe3(0x1f0)](_0x18aa56[_0x3dbfe3(0x1e8)])[_0x3dbfe3(0x1d6)](_0x18aa56[_0x3dbfe3(0x19d)]);}),_0x4d6dd9;}function topologicalSort(_0x6189ab,_0x513595,_0x55d639){const _0x654814=_0x5d4743,_0x1a3515=[],_0x58a2d1=new Set(),_0x5696bc=_0x9f67d9=>{const _0x3f7635=_0x59ab;if(_0x9f67d9===_0x55d639||_0x58a2d1[_0x3f7635(0x1d1)](_0x9f67d9))return;_0x58a2d1[_0x3f7635(0x1f5)](_0x9f67d9),(_0x513595['get'](_0x9f67d9)||[])[_0x3f7635(0x19f)](_0x5696bc),_0x1a3515[_0x3f7635(0x1d6)](_0x9f67d9);};return _0x6189ab[_0x654814(0x19f)](_0x254d1e=>_0x5696bc(_0x254d1e['id'])),_0x1a3515;}class WorkflowTransformer{static[_0x5d4743(0x1b9)](_0x1a8361,_0x5e3663,_0x22673b,_0x32724e,_0x5455a9){const _0x22bd4e=_0x5d4743,_0x3a854e=_0x1a8361[_0x22bd4e(0x1b1)]['find'](_0x2010f2=>_0x2010f2[_0x22bd4e(0x1d8)]==='custom'&&_0x2010f2[_0x22bd4e(0x1a0)][_0x22bd4e(0x1d9)]);if(!_0x3a854e)throw new Error(_0x22bd4e(0x1ae));const _0x266dd0=_0x3a854e[_0x22bd4e(0x1a0)],_0x5629eb=(_0x266dd0[_0x22bd4e(0x1d9)]||_0x22bd4e(0x1b4))[_0x22bd4e(0x1ed)]();let _0x10e991={'type':workflow_1[_0x22bd4e(0x197)][_0x22bd4e(0x1c8)]};if(_0x5629eb==='http'||_0x5629eb==='webhook')_0x10e991={'type':workflow_1['WorkflowTriggerType'][_0x22bd4e(0x1eb)],'webhook_url':_0x266dd0[_0x22bd4e(0x1d0)]||_0x266dd0[_0x22bd4e(0x1e6)]?.[_0x22bd4e(0x1d0)]||''},_0x10e991[_0x22bd4e(0x1c9)]=_0x266dd0[_0x22bd4e(0x1c9)]||_0x266dd0['config']?.['webhookMethod']||_0x22bd4e(0x1a2);else{if(_0x5629eb===_0x22bd4e(0x1cd))_0x10e991={'type':workflow_1['WorkflowTriggerType']['JOB'],'cron':_0x266dd0[_0x22bd4e(0x1ba)]||_0x266dd0[_0x22bd4e(0x1e6)]?.[_0x22bd4e(0x1ba)]||'*\x20*\x20*\x20*\x20*','timezone':_0x266dd0[_0x22bd4e(0x1f4)]||_0x266dd0[_0x22bd4e(0x1e6)]?.[_0x22bd4e(0x1f4)]};else{if(_0x5629eb===_0x22bd4e(0x1e1))_0x10e991={'type':workflow_1[_0x22bd4e(0x197)]['SCHEDULE'],'cron':_0x266dd0[_0x22bd4e(0x1ba)]||_0x266dd0[_0x22bd4e(0x1e6)]?.[_0x22bd4e(0x1ba)],'timezone':_0x266dd0[_0x22bd4e(0x1f4)]||_0x266dd0[_0x22bd4e(0x1e6)]?.['timezone']};else{if(_0x5629eb===_0x22bd4e(0x1a3)){const _0x58fa70=_0x266dd0['config']||{};_0x10e991={'type':workflow_1['WorkflowTriggerType'][_0x22bd4e(0x1f1)],'event':_0x266dd0[_0x22bd4e(0x1a3)]||_0x58fa70[_0x22bd4e(0x1a3)],'source_connector_id':_0x266dd0[_0x22bd4e(0x1c2)]||_0x266dd0[_0x22bd4e(0x1e2)]||_0x58fa70['source_connector_id'],'source_connector_version':_0x266dd0['source_connector_version']||_0x266dd0[_0x22bd4e(0x1df)]||_0x58fa70[_0x22bd4e(0x1a6)]};}}}}const _0x4c4236=buildDependencyGraph(_0x1a8361[_0x22bd4e(0x1e7)]),_0x1d8a78=topologicalSort(_0x1a8361['nodes'],_0x4c4236,_0x3a854e['id']),_0x276edf=[],_0x5f14c7=new Map();return _0x1d8a78[_0x22bd4e(0x19f)](_0x2219d6=>{const _0x15aad9=_0x22bd4e,_0xf32968=_0x1a8361[_0x15aad9(0x1b1)][_0x15aad9(0x1bc)](_0x20b531=>_0x20b531['id']===_0x2219d6);if(!_0xf32968)return;const _0x318f2c=_0x4c4236[_0x15aad9(0x1f0)](_0xf32968['id'])||[],_0x324c71=_0x318f2c['find'](_0x5e0668=>_0x5e0668!==_0x3a854e['id']),_0x49c2bf=sanitize(_0xf32968['id']);_0x5f14c7[_0x15aad9(0x1d3)](_0xf32968['id'],_0x49c2bf);const _0x54a715=_0xf32968['data'],_0x33dfea={'id':_0x49c2bf};if(_0x324c71)_0x33dfea[_0x15aad9(0x1e4)]=_0x5f14c7[_0x15aad9(0x1f0)](_0x324c71)||sanitize(_0x324c71);const _0x542529=_0x54a715[_0x15aad9(0x1cf)]||{},_0x55100c=_0x1883e2=>{const _0x48e61e=_0x15aad9;if(_0x542529[_0x48e61e(0x1d4)])_0x1883e2[_0x48e61e(0x1d4)]=sanitize(_0x542529[_0x48e61e(0x1d4)]);if(_0x542529[_0x48e61e(0x1c7)])_0x1883e2[_0x48e61e(0x1c7)]=sanitize(_0x542529[_0x48e61e(0x1c7)]);};if(_0xf32968[_0x15aad9(0x1d8)]==='connector_api'||_0xf32968[_0x15aad9(0x1d8)]===_0x15aad9(0x1da)){if(_0x54a715['responderType'])_0x33dfea[_0x15aad9(0x1d8)]=workflow_1[_0x15aad9(0x1ef)][_0x15aad9(0x1a9)],_0x33dfea[_0x15aad9(0x1e0)]=_0x54a715[_0x15aad9(0x1ea)],_0x33dfea[_0x15aad9(0x1e6)]=_0x542529;else{if(_0x54a715[_0x15aad9(0x1d2)])_0x33dfea[_0x15aad9(0x1d8)]=workflow_1[_0x15aad9(0x1ef)][_0x15aad9(0x1c0)],_0x33dfea['validationGroups']=_0x54a715[_0x15aad9(0x1be)]||[];else{_0x33dfea[_0x15aad9(0x1d8)]=workflow_1['WorkflowStepType'][_0x15aad9(0x1c1)],_0x33dfea[_0x15aad9(0x1cb)]=_0x54a715[_0x15aad9(0x1e9)],_0x33dfea[_0x15aad9(0x1db)]=_0x54a715[_0x15aad9(0x1db)]||_0x54a715[_0x15aad9(0x1b3)]||_0x54a715[_0x15aad9(0x1ca)],_0x33dfea[_0x15aad9(0x19c)]=_0x542529['params']||{},_0x33dfea[_0x15aad9(0x1ee)]=_0x542529[_0x15aad9(0x1ee)]||_0x542529[_0x15aad9(0x19c)]||{},_0x33dfea['body']=_0x542529[_0x15aad9(0x1bf)]||{};const _0x35af6c=_0x54a715[_0x15aad9(0x1a4)]||_0x54a715[_0x15aad9(0x1cc)]||_0x542529[_0x15aad9(0x1a4)]||_0x542529[_0x15aad9(0x1cc)];if(_0x35af6c)_0x33dfea[_0x15aad9(0x1a4)]=String(_0x35af6c);_0x55100c(_0x33dfea);}}}else{if(_0xf32968['type']===_0x15aad9(0x1b6)){_0x33dfea['type']=workflow_1[_0x15aad9(0x1ef)]['DB'],_0x33dfea['connector_id']=_0x54a715[_0x15aad9(0x1e9)],_0x33dfea[_0x15aad9(0x1db)]=_0x54a715[_0x15aad9(0x1db)]||_0x54a715[_0x15aad9(0x1ca)],_0x33dfea[_0x15aad9(0x1bf)]=_0x542529[_0x15aad9(0x1bf)]||_0x542529;const _0x2c6353=_0x54a715[_0x15aad9(0x1a4)]||_0x54a715['connectorVersion']||_0x542529[_0x15aad9(0x1a4)]||_0x542529[_0x15aad9(0x1cc)];if(_0x2c6353)_0x33dfea[_0x15aad9(0x1a4)]=String(_0x2c6353);_0x55100c(_0x33dfea);}else{if(_0xf32968[_0x15aad9(0x1d8)]==='transform')_0x33dfea['type']=workflow_1['WorkflowStepType'][_0x15aad9(0x1a7)],_0x33dfea[_0x15aad9(0x1c4)]=_0x54a715[_0x15aad9(0x1c4)],_0x33dfea[_0x15aad9(0x19e)]=_0x54a715['operations'];else{if(_0xf32968[_0x15aad9(0x1d8)]===_0x15aad9(0x1bd))_0x33dfea[_0x15aad9(0x1d8)]=workflow_1[_0x15aad9(0x1ef)][_0x15aad9(0x1c3)],_0x33dfea['mode']=_0x54a715[_0x15aad9(0x1af)]||_0x15aad9(0x1ce),_0x33dfea['if']=_0x54a715[_0x15aad9(0x1a8)]||_0x54a715['if'],_0x33dfea['then']=_0x54a715['then']?sanitize(_0x54a715['then']):undefined,_0x33dfea[_0x15aad9(0x1c7)]=_0x54a715['else']?sanitize(_0x54a715[_0x15aad9(0x1c7)]):undefined;else{if(_0xf32968[_0x15aad9(0x1d8)]==='authentication'){_0x33dfea[_0x15aad9(0x1d8)]=workflow_1[_0x15aad9(0x1ef)][_0x15aad9(0x1ac)],_0x33dfea[_0x15aad9(0x1cb)]=_0x54a715['connectorId'],_0x33dfea[_0x15aad9(0x1db)]=_0x54a715[_0x15aad9(0x1db)],_0x33dfea[_0x15aad9(0x1bf)]=_0x542529[_0x15aad9(0x1bf)]||{};const _0x3fd816=_0x54a715[_0x15aad9(0x1a4)]||_0x54a715['connectorVersion']||_0x542529[_0x15aad9(0x1a4)]||_0x542529[_0x15aad9(0x1cc)];if(_0x3fd816)_0x33dfea['connector_version']=String(_0x3fd816);_0x55100c(_0x33dfea);}else{if(_0xf32968['type']===_0x15aad9(0x1a1))_0x33dfea[_0x15aad9(0x1d8)]=workflow_1[_0x15aad9(0x1ef)][_0x15aad9(0x1dd)],_0x33dfea[_0x15aad9(0x1b0)]=_0x54a715['functionId']||_0x54a715[_0x15aad9(0x199)],_0x33dfea[_0x15aad9(0x1ab)]=_0x54a715[_0x15aad9(0x199)]||_0x54a715[_0x15aad9(0x1b5)],_0x33dfea['args']=_0x542529['args']||{},_0x55100c(_0x33dfea);else{if(_0xf32968['type']===_0x15aad9(0x1b2))_0x33dfea[_0x15aad9(0x1d8)]=workflow_1[_0x15aad9(0x1ef)]['LOG'],_0x33dfea[_0x15aad9(0x1b8)]=_0x54a715[_0x15aad9(0x1b8)]||'';else{if(_0xf32968[_0x15aad9(0x1d8)]===_0x15aad9(0x1c6))_0x33dfea[_0x15aad9(0x1d8)]=workflow_1[_0x15aad9(0x1ef)][_0x15aad9(0x198)],_0x33dfea['ms']=_0x54a715['ms']||0x0;else return;}}}}}}}_0x276edf[_0x15aad9(0x1d6)](_0x33dfea);}),{'_id':sanitize(_0x5e3663),'tenant_id':_0x22673b,'project_id':_0x5455a9,'name':_0x1a8361[_0x22bd4e(0x1e3)],'trigger':_0x10e991,'steps':_0x276edf,'status':_0x22bd4e(0x1ad),'vars':_0x32724e};}}exports['WorkflowTransformer']=WorkflowTransformer;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WorkflowTransformer = void 0;
|
|
4
|
+
const workflow_1 = require("../types/workflow");
|
|
5
|
+
function sanitize(id) {
|
|
6
|
+
return id.replace(/[.\-\s]/g, "_");
|
|
7
|
+
}
|
|
8
|
+
function buildDependencyGraph(edges) {
|
|
9
|
+
const graph = new Map();
|
|
10
|
+
edges.forEach((e) => {
|
|
11
|
+
if (!graph.has(e.target))
|
|
12
|
+
graph.set(e.target, []);
|
|
13
|
+
graph.get(e.target).push(e.source);
|
|
14
|
+
});
|
|
15
|
+
return graph;
|
|
16
|
+
}
|
|
17
|
+
function topologicalSort(nodes, graph, triggerId) {
|
|
18
|
+
const result = [];
|
|
19
|
+
const visited = new Set();
|
|
20
|
+
const visit = (id) => {
|
|
21
|
+
if (id === triggerId || visited.has(id))
|
|
22
|
+
return;
|
|
23
|
+
visited.add(id);
|
|
24
|
+
(graph.get(id) || []).forEach(visit);
|
|
25
|
+
result.push(id);
|
|
26
|
+
};
|
|
27
|
+
nodes.forEach((n) => visit(n.id));
|
|
28
|
+
return result;
|
|
29
|
+
}
|
|
30
|
+
class WorkflowTransformer {
|
|
31
|
+
static transform(dataItem, workflowId, tenantId, vars, projectId) {
|
|
32
|
+
const triggerNode = dataItem.nodes.find((n) => n.type === "custom" && n.data.triggerType);
|
|
33
|
+
if (!triggerNode)
|
|
34
|
+
throw new Error("No trigger node found");
|
|
35
|
+
const triggerData = triggerNode.data;
|
|
36
|
+
const triggerType = (triggerData.triggerType || "manual").toLowerCase();
|
|
37
|
+
let trigger = { type: workflow_1.WorkflowTriggerType.MANUAL };
|
|
38
|
+
if (triggerType === "http" || triggerType === "webhook") {
|
|
39
|
+
trigger = {
|
|
40
|
+
type: workflow_1.WorkflowTriggerType.HTTP,
|
|
41
|
+
webhook_url: triggerData.webhookPath || triggerData.config?.webhookPath || "",
|
|
42
|
+
};
|
|
43
|
+
trigger.webhookMethod = triggerData.webhookMethod || triggerData.config?.webhookMethod || "POST";
|
|
44
|
+
}
|
|
45
|
+
else if (triggerType === "job") {
|
|
46
|
+
trigger = {
|
|
47
|
+
type: workflow_1.WorkflowTriggerType.JOB,
|
|
48
|
+
cron: triggerData.cron || triggerData.config?.cron || "* * * * *",
|
|
49
|
+
timezone: triggerData.timezone || triggerData.config?.timezone,
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
else if (triggerType === "schedule") {
|
|
53
|
+
trigger = {
|
|
54
|
+
type: workflow_1.WorkflowTriggerType.SCHEDULE,
|
|
55
|
+
cron: triggerData.cron || triggerData.config?.cron,
|
|
56
|
+
timezone: triggerData.timezone || triggerData.config?.timezone,
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
else if (triggerType === "event") {
|
|
60
|
+
const cfg = triggerData.config || {};
|
|
61
|
+
trigger = {
|
|
62
|
+
type: workflow_1.WorkflowTriggerType.EVENT,
|
|
63
|
+
event: triggerData.event || cfg.event,
|
|
64
|
+
source_connector_id: triggerData.source_connector_id || triggerData.sourceConnectorId || cfg.source_connector_id,
|
|
65
|
+
source_connector_version: triggerData.source_connector_version ||
|
|
66
|
+
triggerData.sourceConnectorVersion ||
|
|
67
|
+
cfg.source_connector_version,
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
const graph = buildDependencyGraph(dataItem.edges);
|
|
71
|
+
const order = topologicalSort(dataItem.nodes, graph, triggerNode.id);
|
|
72
|
+
const steps = [];
|
|
73
|
+
const nodeIdToStepId = new Map();
|
|
74
|
+
order.forEach((nodeId) => {
|
|
75
|
+
const node = dataItem.nodes.find((n) => n.id === nodeId);
|
|
76
|
+
if (!node)
|
|
77
|
+
return;
|
|
78
|
+
const deps = graph.get(node.id) || [];
|
|
79
|
+
const inputFrom = deps.find((d) => d !== triggerNode.id);
|
|
80
|
+
const stepId = sanitize(node.id);
|
|
81
|
+
nodeIdToStepId.set(node.id, stepId);
|
|
82
|
+
const data = node.data;
|
|
83
|
+
const baseStep = { id: stepId };
|
|
84
|
+
if (inputFrom)
|
|
85
|
+
baseStep.input_from = nodeIdToStepId.get(inputFrom) || sanitize(inputFrom);
|
|
86
|
+
const cfg = data.connectorConfig || {};
|
|
87
|
+
const addThenElse = (step) => {
|
|
88
|
+
if (cfg.then)
|
|
89
|
+
step.then = sanitize(cfg.then);
|
|
90
|
+
if (cfg.else)
|
|
91
|
+
step.else = sanitize(cfg.else);
|
|
92
|
+
};
|
|
93
|
+
if (node.type === "connector_api" || node.type === "api_call") {
|
|
94
|
+
if (data.responderType) {
|
|
95
|
+
baseStep.type = workflow_1.WorkflowStepType.RESPONDER;
|
|
96
|
+
baseStep.responder = data.responderType;
|
|
97
|
+
baseStep.config = cfg;
|
|
98
|
+
}
|
|
99
|
+
else if (data.isValidatorAction) {
|
|
100
|
+
baseStep.type = workflow_1.WorkflowStepType.VALIDATOR;
|
|
101
|
+
baseStep.validationGroups = data.validationGroups || [];
|
|
102
|
+
}
|
|
103
|
+
else {
|
|
104
|
+
baseStep.type = workflow_1.WorkflowStepType.API_CALL;
|
|
105
|
+
baseStep.connector_id = data.connectorId;
|
|
106
|
+
baseStep.action = data.action || data.endpointName || data.endpointId;
|
|
107
|
+
baseStep.params = cfg.params || {};
|
|
108
|
+
baseStep.pathParams = cfg.pathParams || cfg.params || {};
|
|
109
|
+
baseStep.body = cfg.body || {};
|
|
110
|
+
const cv = data.connector_version ||
|
|
111
|
+
data.connectorVersion ||
|
|
112
|
+
cfg.connector_version ||
|
|
113
|
+
cfg.connectorVersion;
|
|
114
|
+
if (cv)
|
|
115
|
+
baseStep.connector_version = String(cv);
|
|
116
|
+
addThenElse(baseStep);
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
else if (node.type === "connector_db") {
|
|
120
|
+
baseStep.type = workflow_1.WorkflowStepType.DB;
|
|
121
|
+
baseStep.connector_id = data.connectorId;
|
|
122
|
+
baseStep.action = data.action || data.endpointId;
|
|
123
|
+
baseStep.body = cfg.body || cfg;
|
|
124
|
+
const cvDb = data.connector_version ||
|
|
125
|
+
data.connectorVersion ||
|
|
126
|
+
cfg.connector_version ||
|
|
127
|
+
cfg.connectorVersion;
|
|
128
|
+
if (cvDb)
|
|
129
|
+
baseStep.connector_version = String(cvDb);
|
|
130
|
+
addThenElse(baseStep);
|
|
131
|
+
}
|
|
132
|
+
else if (node.type === "transform") {
|
|
133
|
+
baseStep.type = workflow_1.WorkflowStepType.TRANSFORM;
|
|
134
|
+
baseStep.mapping = data.mapping;
|
|
135
|
+
baseStep.operations = data.operations;
|
|
136
|
+
}
|
|
137
|
+
else if (node.type === "condition") {
|
|
138
|
+
baseStep.type = workflow_1.WorkflowStepType.CONDITION;
|
|
139
|
+
baseStep.mode = data.mode || "jexl";
|
|
140
|
+
baseStep.if = data.conditionExpr || data.if;
|
|
141
|
+
baseStep.then = data.then ? sanitize(data.then) : undefined;
|
|
142
|
+
baseStep.else = data.else ? sanitize(data.else) : undefined;
|
|
143
|
+
}
|
|
144
|
+
else if (node.type === "authentication") {
|
|
145
|
+
baseStep.type = workflow_1.WorkflowStepType.AUTHENTICATION;
|
|
146
|
+
baseStep.connector_id = data.connectorId;
|
|
147
|
+
baseStep.action = data.action;
|
|
148
|
+
baseStep.body = cfg.body || {};
|
|
149
|
+
const cvAuth = data.connector_version ||
|
|
150
|
+
data.connectorVersion ||
|
|
151
|
+
cfg.connector_version ||
|
|
152
|
+
cfg.connectorVersion;
|
|
153
|
+
if (cvAuth)
|
|
154
|
+
baseStep.connector_version = String(cvAuth);
|
|
155
|
+
addThenElse(baseStep);
|
|
156
|
+
}
|
|
157
|
+
else if (node.type === "function") {
|
|
158
|
+
baseStep.type = workflow_1.WorkflowStepType.FUNCTION;
|
|
159
|
+
baseStep.function_id = data.functionId || data.functionSlug;
|
|
160
|
+
baseStep.function_slug = data.functionSlug || data.functionId;
|
|
161
|
+
baseStep.args = cfg.args || {};
|
|
162
|
+
addThenElse(baseStep);
|
|
163
|
+
}
|
|
164
|
+
else if (node.type === "log") {
|
|
165
|
+
baseStep.type = workflow_1.WorkflowStepType.LOG;
|
|
166
|
+
baseStep.message = data.message || "";
|
|
167
|
+
}
|
|
168
|
+
else if (node.type === "delay") {
|
|
169
|
+
baseStep.type = workflow_1.WorkflowStepType.DELAY;
|
|
170
|
+
baseStep.ms = data.ms || 0;
|
|
171
|
+
}
|
|
172
|
+
else {
|
|
173
|
+
return;
|
|
174
|
+
}
|
|
175
|
+
steps.push(baseStep);
|
|
176
|
+
});
|
|
177
|
+
return {
|
|
178
|
+
_id: sanitize(workflowId),
|
|
179
|
+
tenant_id: tenantId,
|
|
180
|
+
project_id: projectId,
|
|
181
|
+
name: dataItem.name,
|
|
182
|
+
trigger,
|
|
183
|
+
steps,
|
|
184
|
+
status: "active",
|
|
185
|
+
vars,
|
|
186
|
+
};
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
exports.WorkflowTransformer = WorkflowTransformer;
|
|
@@ -4,6 +4,8 @@ export type AuthAppClientConfig = {
|
|
|
4
4
|
appApiKey?: string;
|
|
5
5
|
appSecret?: string;
|
|
6
6
|
debug?: boolean;
|
|
7
|
+
/** Pin project env bag for connector auth templates. Omit to follow the project switch. */
|
|
8
|
+
environment?: "dev" | "prod" | "development" | "production";
|
|
7
9
|
};
|
|
8
10
|
export type AuthMfaStatusResponse = {
|
|
9
11
|
ok: true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-app.api.d.ts","sourceRoot":"","sources":["../../src/types/auth-app.api.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,mBAAmB,GAAG;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"auth-app.api.d.ts","sourceRoot":"","sources":["../../src/types/auth-app.api.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|