@activepieces/shared 0.80.0 → 0.81.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/package.json +2 -1
- package/src/index.d.ts +4 -0
- package/src/index.d.ts.map +1 -1
- package/src/index.js +5 -0
- package/src/index.js.map +1 -1
- package/src/lib/automation/engine/execution-errors.d.ts +7 -0
- package/src/lib/automation/engine/execution-errors.d.ts.map +1 -1
- package/src/lib/automation/engine/execution-errors.js +7 -1
- package/src/lib/automation/engine/execution-errors.js.map +1 -1
- package/src/lib/automation/workers/worker-contract.d.ts +37 -1
- package/src/lib/automation/workers/worker-contract.d.ts.map +1 -1
- package/src/lib/automation/workers/worker-contract.js +3 -0
- package/src/lib/automation/workers/worker-contract.js.map +1 -1
- package/src/lib/core/license-keys/index.d.ts +2 -0
- package/src/lib/core/license-keys/index.d.ts.map +1 -1
- package/src/lib/core/license-keys/index.js +1 -0
- package/src/lib/core/license-keys/index.js.map +1 -1
- package/src/lib/ee/billing/index.d.ts.map +1 -1
- package/src/lib/ee/billing/index.js +2 -0
- package/src/lib/ee/billing/index.js.map +1 -1
- package/src/lib/ee/chat/index.d.ts +27 -15
- package/src/lib/ee/chat/index.d.ts.map +1 -1
- package/src/lib/ee/chat/index.js +6 -0
- package/src/lib/ee/chat/index.js.map +1 -1
- package/src/lib/formula/formula-evaluator.d.ts +22 -0
- package/src/lib/formula/formula-evaluator.d.ts.map +1 -0
- package/src/lib/formula/formula-evaluator.js +438 -0
- package/src/lib/formula/formula-evaluator.js.map +1 -0
- package/src/lib/formula/function-implementations.d.ts +9 -0
- package/src/lib/formula/function-implementations.d.ts.map +1 -0
- package/src/lib/formula/function-implementations.js +333 -0
- package/src/lib/formula/function-implementations.js.map +1 -0
- package/src/lib/formula/function-registry.d.ts +25 -0
- package/src/lib/formula/function-registry.d.ts.map +1 -0
- package/src/lib/formula/function-registry.js +978 -0
- package/src/lib/formula/function-registry.js.map +1 -0
- package/src/lib/formula/function-type-checker.d.ts +9 -0
- package/src/lib/formula/function-type-checker.d.ts.map +1 -0
- package/src/lib/formula/function-type-checker.js +206 -0
- package/src/lib/formula/function-type-checker.js.map +1 -0
- package/src/lib/management/platform/platform.model.d.ts +4 -0
- package/src/lib/management/platform/platform.model.d.ts.map +1 -1
- package/src/lib/management/platform/platform.model.js +1 -1
- package/src/lib/management/platform/platform.model.js.map +1 -1
|
@@ -0,0 +1,333 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var _a;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.DAY_NAMES = exports.MONTH_NAMES = void 0;
|
|
5
|
+
exports.evaluateRaw = evaluateRaw;
|
|
6
|
+
const tslib_1 = require("tslib");
|
|
7
|
+
const dayjs_1 = tslib_1.__importDefault(require("dayjs"));
|
|
8
|
+
const relativeTime_1 = tslib_1.__importDefault(require("dayjs/plugin/relativeTime"));
|
|
9
|
+
const timezone_1 = tslib_1.__importDefault(require("dayjs/plugin/timezone"));
|
|
10
|
+
const utc_1 = tslib_1.__importDefault(require("dayjs/plugin/utc"));
|
|
11
|
+
const expr_eval_1 = require("expr-eval");
|
|
12
|
+
const function_registry_1 = require("./function-registry");
|
|
13
|
+
dayjs_1.default.extend(relativeTime_1.default);
|
|
14
|
+
dayjs_1.default.extend(timezone_1.default);
|
|
15
|
+
dayjs_1.default.extend(utc_1.default);
|
|
16
|
+
// Parser is a module-private singleton — exposing it would let any consumer
|
|
17
|
+
// of @activepieces/shared mutate `parser.functions.X` and break formula
|
|
18
|
+
// evaluation process-wide. Use `evaluateRaw` instead.
|
|
19
|
+
const parser = new expr_eval_1.Parser();
|
|
20
|
+
function evaluateRaw(expression, vars) {
|
|
21
|
+
return parser.evaluate(expression, vars);
|
|
22
|
+
}
|
|
23
|
+
parser.functions.combine = (a, b, sep = '') => `${a !== null && a !== void 0 ? a : ''}${String(sep)}${b !== null && b !== void 0 ? b : ''}`;
|
|
24
|
+
parser.functions.uppercase = (s) => String(s !== null && s !== void 0 ? s : '').toUpperCase();
|
|
25
|
+
parser.functions.lowercase = (s) => String(s !== null && s !== void 0 ? s : '').toLowerCase();
|
|
26
|
+
parser.functions.titlecase = (s) => String(s !== null && s !== void 0 ? s : '').replace(/\w\S*/g, (w) => w.charAt(0).toUpperCase() + w.slice(1).toLowerCase());
|
|
27
|
+
parser.functions.trim = (s) => String(s !== null && s !== void 0 ? s : '').trim();
|
|
28
|
+
parser.functions.prefix = (s, pfx) => `${String(pfx !== null && pfx !== void 0 ? pfx : '')}${String(s !== null && s !== void 0 ? s : '')}`;
|
|
29
|
+
parser.functions.suffix = (s, sfx) => `${String(s !== null && s !== void 0 ? s : '')}${String(sfx !== null && sfx !== void 0 ? sfx : '')}`;
|
|
30
|
+
parser.functions.replace = (s, from, to) => String(s !== null && s !== void 0 ? s : '').split(String(from !== null && from !== void 0 ? from : '')).join(String(to !== null && to !== void 0 ? to : ''));
|
|
31
|
+
parser.functions.remove = (s, sub) => String(s !== null && s !== void 0 ? s : '').split(String(sub !== null && sub !== void 0 ? sub : '')).join('');
|
|
32
|
+
parser.functions.first_n = (s, n) => String(s !== null && s !== void 0 ? s : '').slice(0, Number(n));
|
|
33
|
+
parser.functions.last_n = (s, n) => {
|
|
34
|
+
const str = String(s !== null && s !== void 0 ? s : '');
|
|
35
|
+
const num = Number(n);
|
|
36
|
+
return str.slice(Math.max(0, str.length - num));
|
|
37
|
+
};
|
|
38
|
+
parser.functions.truncate = (s, n) => {
|
|
39
|
+
const str = String(s !== null && s !== void 0 ? s : '');
|
|
40
|
+
const num = Number(n);
|
|
41
|
+
return str.length > num ? str.slice(0, num) + '...' : str;
|
|
42
|
+
};
|
|
43
|
+
parser.functions.split = (s, sep, idx) => {
|
|
44
|
+
var _a;
|
|
45
|
+
const parts = String(s !== null && s !== void 0 ? s : '').split(String(sep !== null && sep !== void 0 ? sep : ''));
|
|
46
|
+
return (_a = parts[Number(idx)]) !== null && _a !== void 0 ? _a : '';
|
|
47
|
+
};
|
|
48
|
+
parser.functions.extract_between = (s, start, end) => {
|
|
49
|
+
const str = String(s !== null && s !== void 0 ? s : '');
|
|
50
|
+
const startStr = String(start !== null && start !== void 0 ? start : '');
|
|
51
|
+
const endStr = String(end !== null && end !== void 0 ? end : '');
|
|
52
|
+
const si = str.indexOf(startStr);
|
|
53
|
+
if (si === -1)
|
|
54
|
+
return '';
|
|
55
|
+
const ei = str.indexOf(endStr, si + startStr.length);
|
|
56
|
+
if (ei === -1)
|
|
57
|
+
return '';
|
|
58
|
+
return str.slice(si + startStr.length, ei);
|
|
59
|
+
};
|
|
60
|
+
parser.functions.extract_email = (s) => {
|
|
61
|
+
const match = String(s !== null && s !== void 0 ? s : '').match(/[a-zA-Z0-9._%+\-]+@[a-zA-Z0-9.\-]+\.[a-zA-Z]{2,}/);
|
|
62
|
+
return match ? match[0] : '';
|
|
63
|
+
};
|
|
64
|
+
parser.functions.extract_url = (s) => {
|
|
65
|
+
const match = String(s !== null && s !== void 0 ? s : '').match(/https?:\/\/[^\s]+/);
|
|
66
|
+
return match ? match[0] : '';
|
|
67
|
+
};
|
|
68
|
+
parser.functions.length = (s) => String(s !== null && s !== void 0 ? s : '').length;
|
|
69
|
+
parser.functions.contains = (s, sub) => String(s !== null && s !== void 0 ? s : '').includes(String(sub !== null && sub !== void 0 ? sub : ''));
|
|
70
|
+
parser.functions.starts_with = (s, prefix) => String(s !== null && s !== void 0 ? s : '').startsWith(String(prefix !== null && prefix !== void 0 ? prefix : ''));
|
|
71
|
+
parser.functions.ends_with = (s, suffix) => String(s !== null && s !== void 0 ? s : '').endsWith(String(suffix !== null && suffix !== void 0 ? suffix : ''));
|
|
72
|
+
parser.functions.remove_spaces = (s) => String(s !== null && s !== void 0 ? s : '').replace(/\s+/g, ' ').trim();
|
|
73
|
+
parser.functions.word_count = (s) => String(s !== null && s !== void 0 ? s : '').trim().split(/\s+/).filter(Boolean).length;
|
|
74
|
+
parser.functions.add = (a, b) => Number(a) + Number(b);
|
|
75
|
+
parser.functions.subtract = (a, b) => Number(a) - Number(b);
|
|
76
|
+
parser.functions.multiply = (a, b) => Number(a) * Number(b);
|
|
77
|
+
parser.functions.divide = (a, b) => {
|
|
78
|
+
const divisor = Number(b);
|
|
79
|
+
if (divisor === 0)
|
|
80
|
+
throw new Error('Division by zero');
|
|
81
|
+
return Number(a) / divisor;
|
|
82
|
+
};
|
|
83
|
+
// expr-eval has a built-in 1-arg `round` that shadows our 2-arg version,
|
|
84
|
+
// so we alias to ap_round and rewrite in normalizeExpression
|
|
85
|
+
parser.functions.ap_round = (n, decimals = 0) => Number(Number(n).toFixed(Number(decimals)));
|
|
86
|
+
parser.functions.round_up = (n) => Math.ceil(Number(n));
|
|
87
|
+
parser.functions.round_down = (n) => Math.floor(Number(n));
|
|
88
|
+
parser.functions.absolute = (n) => Math.abs(Number(n));
|
|
89
|
+
parser.functions.percentage = (n, total) => {
|
|
90
|
+
const divisor = Number(total);
|
|
91
|
+
if (divisor === 0)
|
|
92
|
+
throw new Error('Division by zero');
|
|
93
|
+
return (Number(n) / divisor) * 100;
|
|
94
|
+
};
|
|
95
|
+
parser.functions.format_number = (n, decimals = 0) => {
|
|
96
|
+
const d = Number(decimals);
|
|
97
|
+
return Number(n).toLocaleString('en-US', {
|
|
98
|
+
minimumFractionDigits: d,
|
|
99
|
+
maximumFractionDigits: d,
|
|
100
|
+
});
|
|
101
|
+
};
|
|
102
|
+
parser.functions.format_currency = (n, symbol = '$') => `${String(symbol)}${Number(n).toFixed(2)}`;
|
|
103
|
+
parser.functions.cents_to_dollars = (n) => `$${(Number(n) / 100).toFixed(2)}`;
|
|
104
|
+
parser.functions.min = (a, b) => Math.min(Number(a), Number(b));
|
|
105
|
+
parser.functions.max = (a, b) => Math.max(Number(a), Number(b));
|
|
106
|
+
parser.functions.to_number = (s) => Number(s);
|
|
107
|
+
parser.functions.format_date = (d, pattern = 'YYYY-MM-DD') => {
|
|
108
|
+
const parsed = (0, dayjs_1.default)(String(d !== null && d !== void 0 ? d : ''));
|
|
109
|
+
return parsed.isValid() ? parsed.format(String(pattern)) : '';
|
|
110
|
+
};
|
|
111
|
+
parser.functions.format_date_long = (d) => {
|
|
112
|
+
const parsed = (0, dayjs_1.default)(String(d !== null && d !== void 0 ? d : ''));
|
|
113
|
+
if (!parsed.isValid())
|
|
114
|
+
return '';
|
|
115
|
+
return parsed.toDate().toLocaleDateString('en-US', {
|
|
116
|
+
weekday: 'long', year: 'numeric', month: 'long', day: 'numeric',
|
|
117
|
+
});
|
|
118
|
+
};
|
|
119
|
+
parser.functions.format_time = (d, pattern = 'HH:mm') => {
|
|
120
|
+
const parsed = (0, dayjs_1.default)(String(d !== null && d !== void 0 ? d : ''));
|
|
121
|
+
return parsed.isValid() ? parsed.format(String(pattern)) : '';
|
|
122
|
+
};
|
|
123
|
+
parser.functions.relative_time = (d) => {
|
|
124
|
+
const parsed = (0, dayjs_1.default)(String(d !== null && d !== void 0 ? d : ''));
|
|
125
|
+
return parsed.isValid() ? parsed.fromNow() : '';
|
|
126
|
+
};
|
|
127
|
+
parser.functions.add_days = (d, n) => {
|
|
128
|
+
const parsed = (0, dayjs_1.default)(String(d !== null && d !== void 0 ? d : ''));
|
|
129
|
+
return parsed.isValid() ? parsed.add(Number(n), 'day').toISOString() : '';
|
|
130
|
+
};
|
|
131
|
+
parser.functions.subtract_days = (d, n) => {
|
|
132
|
+
const parsed = (0, dayjs_1.default)(String(d !== null && d !== void 0 ? d : ''));
|
|
133
|
+
return parsed.isValid() ? parsed.subtract(Number(n), 'day').toISOString() : '';
|
|
134
|
+
};
|
|
135
|
+
parser.functions.add_hours = (d, n) => {
|
|
136
|
+
const parsed = (0, dayjs_1.default)(String(d !== null && d !== void 0 ? d : ''));
|
|
137
|
+
return parsed.isValid() ? parsed.add(Number(n), 'hour').toISOString() : '';
|
|
138
|
+
};
|
|
139
|
+
parser.functions.days_between = (a, b) => {
|
|
140
|
+
const da = (0, dayjs_1.default)(String(a !== null && a !== void 0 ? a : ''));
|
|
141
|
+
const db = (0, dayjs_1.default)(String(b !== null && b !== void 0 ? b : ''));
|
|
142
|
+
if (!da.isValid() || !db.isValid())
|
|
143
|
+
return '';
|
|
144
|
+
return Math.round(Math.abs(db.diff(da, 'day', true)));
|
|
145
|
+
};
|
|
146
|
+
parser.functions.get_day = (d) => {
|
|
147
|
+
const parsed = (0, dayjs_1.default)(String(d !== null && d !== void 0 ? d : ''));
|
|
148
|
+
return parsed.isValid() ? parsed.date() : '';
|
|
149
|
+
};
|
|
150
|
+
parser.functions.get_month = (d) => {
|
|
151
|
+
const parsed = (0, dayjs_1.default)(String(d !== null && d !== void 0 ? d : ''));
|
|
152
|
+
return parsed.isValid() ? parsed.toDate().toLocaleDateString('en-US', { month: 'long' }) : '';
|
|
153
|
+
};
|
|
154
|
+
parser.functions.get_year = (d) => {
|
|
155
|
+
const parsed = (0, dayjs_1.default)(String(d !== null && d !== void 0 ? d : ''));
|
|
156
|
+
return parsed.isValid() ? parsed.year() : '';
|
|
157
|
+
};
|
|
158
|
+
parser.functions.get_day_of_week = (d) => {
|
|
159
|
+
const parsed = (0, dayjs_1.default)(String(d !== null && d !== void 0 ? d : ''));
|
|
160
|
+
return parsed.isValid() ? parsed.toDate().toLocaleDateString('en-US', { weekday: 'long' }) : '';
|
|
161
|
+
};
|
|
162
|
+
parser.functions.start_of_month = (d) => {
|
|
163
|
+
const parsed = (0, dayjs_1.default)(String(d !== null && d !== void 0 ? d : ''));
|
|
164
|
+
return parsed.isValid() ? parsed.startOf('month').toISOString() : '';
|
|
165
|
+
};
|
|
166
|
+
parser.functions.end_of_month = (d) => {
|
|
167
|
+
const parsed = (0, dayjs_1.default)(String(d !== null && d !== void 0 ? d : ''));
|
|
168
|
+
return parsed.isValid() ? parsed.endOf('month').toISOString() : '';
|
|
169
|
+
};
|
|
170
|
+
parser.functions.convert_timezone = (d, tz) => {
|
|
171
|
+
const parsed = (0, dayjs_1.default)(String(d !== null && d !== void 0 ? d : ''));
|
|
172
|
+
if (!parsed.isValid())
|
|
173
|
+
return '';
|
|
174
|
+
return parsed.tz(String(tz !== null && tz !== void 0 ? tz : 'UTC')).format();
|
|
175
|
+
};
|
|
176
|
+
parser.functions.now = () => new Date().toISOString();
|
|
177
|
+
parser.functions.today = () => (0, dayjs_1.default)().format('YYYY-MM-DD');
|
|
178
|
+
parser.functions.to_date = (d) => {
|
|
179
|
+
const parsed = (0, dayjs_1.default)(String(d !== null && d !== void 0 ? d : ''));
|
|
180
|
+
return parsed.isValid() ? parsed.toISOString() : '';
|
|
181
|
+
};
|
|
182
|
+
parser.functions.filter_list = (list, field, value) => toArray(list).filter((item) => typeof item === 'object' &&
|
|
183
|
+
item !== null &&
|
|
184
|
+
// Loose equality is intentional: formula args arrive as strings from text
|
|
185
|
+
// input, while item fields are typed (`{age: 25}`). `===` would silently
|
|
186
|
+
// return zero matches when filtering numeric fields with string args.
|
|
187
|
+
// Same rationale applies to is_equal, switch, if_null below.
|
|
188
|
+
item[String(field)] == value);
|
|
189
|
+
parser.functions.sort_list = (list, field, order = 'asc') => {
|
|
190
|
+
const arr = [...toArray(list)];
|
|
191
|
+
const fieldName = String(field);
|
|
192
|
+
const ord = String(order);
|
|
193
|
+
return arr.sort((a, b) => {
|
|
194
|
+
const av = readField(a, fieldName);
|
|
195
|
+
const bv = readField(b, fieldName);
|
|
196
|
+
if (av == null && bv == null)
|
|
197
|
+
return 0;
|
|
198
|
+
if (av == null)
|
|
199
|
+
return 1;
|
|
200
|
+
if (bv == null)
|
|
201
|
+
return -1;
|
|
202
|
+
const cmp = av < bv ? -1 : av > bv ? 1 : 0;
|
|
203
|
+
return ord === 'desc' ? -cmp : cmp;
|
|
204
|
+
});
|
|
205
|
+
};
|
|
206
|
+
parser.functions.pluck = (list, field) => toArray(list).map((item) => typeof item === 'object' && item !== null
|
|
207
|
+
? item[String(field)]
|
|
208
|
+
: undefined);
|
|
209
|
+
parser.functions.join_list = (list, sep = ',') => toArray(list).join(String(sep));
|
|
210
|
+
parser.functions.first_item = (list) => toArray(list)[0];
|
|
211
|
+
parser.functions.last_item = (list) => {
|
|
212
|
+
const arr = toArray(list);
|
|
213
|
+
return arr[arr.length - 1];
|
|
214
|
+
};
|
|
215
|
+
parser.functions.item_at = (list, idx) => toArray(list)[Number(idx)];
|
|
216
|
+
parser.functions.count = (list) => toArray(list).length;
|
|
217
|
+
parser.functions.sum = (list, field) => {
|
|
218
|
+
return toArray(list).reduce((acc, item) => {
|
|
219
|
+
const v = typeof item === 'object' && item !== null
|
|
220
|
+
? Number(item[String(field)])
|
|
221
|
+
: 0;
|
|
222
|
+
return acc + (isNaN(v) ? 0 : v);
|
|
223
|
+
}, 0);
|
|
224
|
+
};
|
|
225
|
+
parser.functions.average = (list, field) => {
|
|
226
|
+
const arr = toArray(list);
|
|
227
|
+
if (!arr.length)
|
|
228
|
+
return 0;
|
|
229
|
+
const total = arr.reduce((acc, item) => {
|
|
230
|
+
const v = typeof item === 'object' && item !== null
|
|
231
|
+
? Number(item[String(field)])
|
|
232
|
+
: 0;
|
|
233
|
+
return acc + (isNaN(v) ? 0 : v);
|
|
234
|
+
}, 0);
|
|
235
|
+
return total / arr.length;
|
|
236
|
+
};
|
|
237
|
+
parser.functions.max_in_list = (list, field) => {
|
|
238
|
+
const nums = toNumericFieldValues(list, field);
|
|
239
|
+
return nums.length === 0 ? null : Math.max(...nums);
|
|
240
|
+
};
|
|
241
|
+
parser.functions.min_in_list = (list, field) => {
|
|
242
|
+
const nums = toNumericFieldValues(list, field);
|
|
243
|
+
return nums.length === 0 ? null : Math.min(...nums);
|
|
244
|
+
};
|
|
245
|
+
parser.functions.deduplicate = (list, field) => {
|
|
246
|
+
const seen = new Set();
|
|
247
|
+
return toArray(list).filter((item) => {
|
|
248
|
+
const key = typeof item === 'object' && item !== null
|
|
249
|
+
? item[String(field)]
|
|
250
|
+
: item;
|
|
251
|
+
if (seen.has(key))
|
|
252
|
+
return false;
|
|
253
|
+
seen.add(key);
|
|
254
|
+
return true;
|
|
255
|
+
});
|
|
256
|
+
};
|
|
257
|
+
parser.functions.flatten = (list) => toArray(list).flat();
|
|
258
|
+
parser.functions.split_text_to_list = (s, sep = ',') => String(s !== null && s !== void 0 ? s : '').split(String(sep)).map((x) => x.trim());
|
|
259
|
+
// `if` intentionally NOT registered as a JS function. Eager arg evaluation
|
|
260
|
+
// would break short-circuit semantics (e.g. `if(is_empty(x); "safe"; divide(x; 0))`
|
|
261
|
+
// would throw when x is empty). `rewriteLazyIf` transforms `if(c; a; b)` into
|
|
262
|
+
// expr-eval's lazy ternary `((c) ? (a) : (b))` before evaluation.
|
|
263
|
+
parser.functions.if_empty = (val, fallback) => val === '' || val == null || val === 'undefined' ? fallback : val;
|
|
264
|
+
parser.functions.if_null = (val, fallback) => val == null || val === 'undefined' ? fallback : val;
|
|
265
|
+
parser.functions.switch = (...args) => {
|
|
266
|
+
const [val, ...pairs] = args;
|
|
267
|
+
for (let i = 0; i + 1 < pairs.length; i += 2) {
|
|
268
|
+
if (pairs[i] == val)
|
|
269
|
+
return pairs[i + 1];
|
|
270
|
+
}
|
|
271
|
+
return pairs.length % 2 === 1 ? pairs[pairs.length - 1] : '';
|
|
272
|
+
};
|
|
273
|
+
parser.functions.is_empty = (val) => val === '' || val == null;
|
|
274
|
+
parser.functions.is_not_empty = (val) => val !== '' && val != null;
|
|
275
|
+
parser.functions.is_equal = (a, b) => a == b;
|
|
276
|
+
// and/or/not are reserved operators in expr-eval — register under prefixed names
|
|
277
|
+
// and normalizeExpression() rewrites them in the expression before evaluation
|
|
278
|
+
parser.functions.ap_and = (a, b) => Boolean(a) && Boolean(b);
|
|
279
|
+
parser.functions.ap_or = (a, b) => Boolean(a) || Boolean(b);
|
|
280
|
+
parser.functions.ap_not = (a) => !a;
|
|
281
|
+
parser.functions.coalesce = (...args) => { var _a; return (_a = args.find((a) => a !== '' && a != null)) !== null && _a !== void 0 ? _a : ''; };
|
|
282
|
+
// After every impl is registered above, wrap any function whose registry entry
|
|
283
|
+
// declares `argCompatibility.defaultArgs` so older saved flows that were saved
|
|
284
|
+
// before a new arg was added keep working at runtime instead of throwing a
|
|
285
|
+
// "wrong number of arguments" error.
|
|
286
|
+
for (const fn of function_registry_1.AP_FUNCTIONS) {
|
|
287
|
+
const defaults = (_a = fn.argCompatibility) === null || _a === void 0 ? void 0 : _a.defaultArgs;
|
|
288
|
+
if (!defaults || defaults.length === 0)
|
|
289
|
+
continue;
|
|
290
|
+
const impl = parser.functions[fn.name];
|
|
291
|
+
if (!impl)
|
|
292
|
+
continue;
|
|
293
|
+
parser.functions[fn.name] = (...args) => {
|
|
294
|
+
var _a;
|
|
295
|
+
const padded = [...args];
|
|
296
|
+
for (let i = padded.length; i < fn.minArgs; i++) {
|
|
297
|
+
padded.push((_a = defaults[i - args.length]) !== null && _a !== void 0 ? _a : defaults[defaults.length - 1]);
|
|
298
|
+
}
|
|
299
|
+
return impl(...padded);
|
|
300
|
+
};
|
|
301
|
+
}
|
|
302
|
+
function toArray(value) {
|
|
303
|
+
if (Array.isArray(value))
|
|
304
|
+
return value;
|
|
305
|
+
if (value == null)
|
|
306
|
+
return [];
|
|
307
|
+
return [value];
|
|
308
|
+
}
|
|
309
|
+
function readField(item, field) {
|
|
310
|
+
if (item !== null && typeof item === 'object') {
|
|
311
|
+
return item[field];
|
|
312
|
+
}
|
|
313
|
+
return undefined;
|
|
314
|
+
}
|
|
315
|
+
function toNumericFieldValues(list, field) {
|
|
316
|
+
const fieldName = String(field);
|
|
317
|
+
const result = [];
|
|
318
|
+
for (const item of toArray(list)) {
|
|
319
|
+
const raw = readField(item, fieldName);
|
|
320
|
+
if (raw == null)
|
|
321
|
+
continue;
|
|
322
|
+
const num = Number(raw);
|
|
323
|
+
if (Number.isFinite(num))
|
|
324
|
+
result.push(num);
|
|
325
|
+
}
|
|
326
|
+
return result;
|
|
327
|
+
}
|
|
328
|
+
exports.MONTH_NAMES = [
|
|
329
|
+
'January', 'February', 'March', 'April', 'May', 'June',
|
|
330
|
+
'July', 'August', 'September', 'October', 'November', 'December',
|
|
331
|
+
];
|
|
332
|
+
exports.DAY_NAMES = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'];
|
|
333
|
+
//# sourceMappingURL=function-implementations.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"function-implementations.js","sourceRoot":"","sources":["../../../../src/lib/formula/function-implementations.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export declare const AP_FUNCTIONS: ApFunction[];
|
|
2
|
+
export type ApFunctionBaseType = 'string' | 'number' | 'boolean' | 'date' | 'list';
|
|
3
|
+
export type ApFunctionArgType = ApFunctionBaseType | ApFunctionBaseType[];
|
|
4
|
+
export type ApFunctionDeprecation = {
|
|
5
|
+
replacement?: string;
|
|
6
|
+
removeAfter: string;
|
|
7
|
+
};
|
|
8
|
+
export type ApFunctionArgCompatibility = {
|
|
9
|
+
defaultArgs?: unknown[];
|
|
10
|
+
};
|
|
11
|
+
export type ApFunction = {
|
|
12
|
+
name: string;
|
|
13
|
+
category: 'text' | 'number' | 'date' | 'list' | 'logic';
|
|
14
|
+
description: string;
|
|
15
|
+
syntax: string;
|
|
16
|
+
example: string;
|
|
17
|
+
exampleResult: string;
|
|
18
|
+
minArgs: number;
|
|
19
|
+
maxArgs: number;
|
|
20
|
+
argTypes: ApFunctionArgType[];
|
|
21
|
+
returnType: ApFunctionArgType;
|
|
22
|
+
deprecated?: ApFunctionDeprecation;
|
|
23
|
+
argCompatibility?: ApFunctionArgCompatibility;
|
|
24
|
+
};
|
|
25
|
+
//# sourceMappingURL=function-registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"function-registry.d.ts","sourceRoot":"","sources":["../../../../src/lib/formula/function-registry.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,EAAE,UAAU,EA68BpC,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,CAAA;AAClF,MAAM,MAAM,iBAAiB,GAAG,kBAAkB,GAAG,kBAAkB,EAAE,CAAA;AAEzE,MAAM,MAAM,qBAAqB,GAAG;IAChC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,WAAW,EAAE,MAAM,CAAA;CACtB,CAAA;AAED,MAAM,MAAM,0BAA0B,GAAG;IACrC,WAAW,CAAC,EAAE,OAAO,EAAE,CAAA;CAC1B,CAAA;AAED,MAAM,MAAM,UAAU,GAAG;IACrB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAA;IACvD,WAAW,EAAE,MAAM,CAAA;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,aAAa,EAAE,MAAM,CAAA;IACrB,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,iBAAiB,EAAE,CAAA;IAC7B,UAAU,EAAE,iBAAiB,CAAA;IAC7B,UAAU,CAAC,EAAE,qBAAqB,CAAA;IAClC,gBAAgB,CAAC,EAAE,0BAA0B,CAAA;CAChD,CAAA"}
|