@uipath/maestro-sdk 1.202.0-preview.142 → 1.202.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/LICENSE.txt +3 -0
- package/dist/THIRD-PARTY-NOTICES.md +1274 -0
- package/dist/debug-http-client.js +1420 -1943
- package/dist/debug-service.js +1420 -1943
- package/dist/index.js +1711 -2234
- package/dist/json-input.js +1420 -1943
- package/dist/registry/command.js +1704 -2227
- package/dist/registry/snapshot.js +1420 -1943
- package/dist/shared-commands/index.js +1428 -1951
- package/dist/shared-utils.js +1420 -1943
- package/dist/with-pims-call.js +1428 -1951
- package/package.json +3 -3
package/dist/index.js
CHANGED
|
@@ -5201,2019 +5201,1496 @@ var init_js_yaml = __esm(() => {
|
|
|
5201
5201
|
} = yaml);
|
|
5202
5202
|
});
|
|
5203
5203
|
|
|
5204
|
-
// ../../node_modules
|
|
5205
|
-
var
|
|
5206
|
-
|
|
5207
|
-
|
|
5208
|
-
|
|
5209
|
-
|
|
5210
|
-
|
|
5211
|
-
TYPE_ARRAY_NUMBER: () => TYPE_ARRAY_NUMBER,
|
|
5212
|
-
TYPE_ARRAY_OBJECT: () => TYPE_ARRAY_OBJECT,
|
|
5213
|
-
TYPE_ARRAY_STRING: () => TYPE_ARRAY_STRING,
|
|
5214
|
-
TYPE_BOOLEAN: () => TYPE_BOOLEAN,
|
|
5215
|
-
TYPE_EXPREF: () => TYPE_EXPREF,
|
|
5216
|
-
TYPE_NULL: () => TYPE_NULL,
|
|
5217
|
-
TYPE_NUMBER: () => TYPE_NUMBER,
|
|
5218
|
-
TYPE_OBJECT: () => TYPE_OBJECT,
|
|
5219
|
-
TYPE_STRING: () => TYPE_STRING,
|
|
5220
|
-
TreeInterpreter: () => TreeInterpreter2,
|
|
5221
|
-
clearCustomFunctions: () => clearCustomFunctions,
|
|
5222
|
-
compile: () => compile,
|
|
5223
|
-
default: () => jmespath,
|
|
5224
|
-
getCustomFunctions: () => getCustomFunctions,
|
|
5225
|
-
getRegisteredFunctions: () => getRegisteredFunctions,
|
|
5226
|
-
isRegistered: () => isRegistered,
|
|
5227
|
-
jmespath: () => jmespath,
|
|
5228
|
-
register: () => register,
|
|
5229
|
-
registerFunction: () => registerFunction,
|
|
5230
|
-
search: () => search,
|
|
5231
|
-
tokenize: () => tokenize,
|
|
5232
|
-
unregisterFunction: () => unregisterFunction
|
|
5233
|
-
});
|
|
5234
|
-
function compile(expression, options) {
|
|
5235
|
-
const nodeTree = Parser_default.parse(expression, options);
|
|
5236
|
-
return nodeTree;
|
|
5237
|
-
}
|
|
5238
|
-
function tokenize(expression, options) {
|
|
5239
|
-
return Lexer_default.tokenize(expression, options);
|
|
5240
|
-
}
|
|
5241
|
-
function search(data, expression, options) {
|
|
5242
|
-
const nodeTree = Parser_default.parse(expression, options);
|
|
5243
|
-
return TreeInterpreter_default.search(nodeTree, data);
|
|
5244
|
-
}
|
|
5245
|
-
function Scope() {
|
|
5246
|
-
return new ScopeChain;
|
|
5247
|
-
}
|
|
5248
|
-
var isObject = (obj) => {
|
|
5249
|
-
return obj !== null && Object.prototype.toString.call(obj) === "[object Object]";
|
|
5250
|
-
}, strictDeepEqual = (first, second) => {
|
|
5251
|
-
if (first === second) {
|
|
5252
|
-
return true;
|
|
5253
|
-
}
|
|
5254
|
-
if (typeof first !== typeof second) {
|
|
5255
|
-
return false;
|
|
5256
|
-
}
|
|
5257
|
-
if (Array.isArray(first) && Array.isArray(second)) {
|
|
5258
|
-
if (first.length !== second.length) {
|
|
5259
|
-
return false;
|
|
5260
|
-
}
|
|
5261
|
-
for (let i = 0;i < first.length; i += 1) {
|
|
5262
|
-
if (!strictDeepEqual(first[i], second[i])) {
|
|
5263
|
-
return false;
|
|
5264
|
-
}
|
|
5265
|
-
}
|
|
5266
|
-
return true;
|
|
5267
|
-
}
|
|
5268
|
-
if (isObject(first) && isObject(second)) {
|
|
5269
|
-
const firstEntries = Object.entries(first);
|
|
5270
|
-
const secondKeys = new Set(Object.keys(second));
|
|
5271
|
-
if (firstEntries.length !== secondKeys.size) {
|
|
5272
|
-
return false;
|
|
5273
|
-
}
|
|
5274
|
-
for (const [key, value] of firstEntries) {
|
|
5275
|
-
if (!strictDeepEqual(value, second[key])) {
|
|
5204
|
+
// ../../node_modules/jmespath/jmespath.js
|
|
5205
|
+
var require_jmespath = __commonJS(function(exports) {
|
|
5206
|
+
(function(exports2) {
|
|
5207
|
+
function isArray(obj) {
|
|
5208
|
+
if (obj !== null) {
|
|
5209
|
+
return Object.prototype.toString.call(obj) === "[object Array]";
|
|
5210
|
+
} else {
|
|
5276
5211
|
return false;
|
|
5277
5212
|
}
|
|
5278
|
-
secondKeys.delete(key);
|
|
5279
|
-
}
|
|
5280
|
-
return secondKeys.size === 0;
|
|
5281
|
-
}
|
|
5282
|
-
return false;
|
|
5283
|
-
}, isFalse = (obj) => {
|
|
5284
|
-
if (obj === null || obj === undefined || obj === false) {
|
|
5285
|
-
return true;
|
|
5286
|
-
}
|
|
5287
|
-
if (typeof obj === "string") {
|
|
5288
|
-
return obj === "";
|
|
5289
|
-
}
|
|
5290
|
-
if (typeof obj === "object") {
|
|
5291
|
-
if (Array.isArray(obj)) {
|
|
5292
|
-
return obj.length === 0;
|
|
5293
5213
|
}
|
|
5294
|
-
|
|
5295
|
-
|
|
5296
|
-
|
|
5297
|
-
return Object.keys(obj).length === 0;
|
|
5298
|
-
}
|
|
5299
|
-
return false;
|
|
5300
|
-
}, isAlpha = (ch) => {
|
|
5301
|
-
return ch >= "a" && ch <= "z" || ch >= "A" && ch <= "Z" || ch === "_";
|
|
5302
|
-
}, isNum = (ch) => {
|
|
5303
|
-
return ch >= "0" && ch <= "9" || ch === "-";
|
|
5304
|
-
}, isAlphaNum = (ch) => {
|
|
5305
|
-
return ch >= "a" && ch <= "z" || ch >= "A" && ch <= "Z" || ch >= "0" && ch <= "9" || ch === "_";
|
|
5306
|
-
}, ensureInteger = (value) => {
|
|
5307
|
-
if (!(typeof value === "number") || Math.floor(value) !== value) {
|
|
5308
|
-
throw new Error("invalid-value: expecting an integer.");
|
|
5309
|
-
}
|
|
5310
|
-
return value;
|
|
5311
|
-
}, ensurePositiveInteger = (value) => {
|
|
5312
|
-
if (!(typeof value === "number") || value < 0 || Math.floor(value) !== value) {
|
|
5313
|
-
throw new Error("invalid-value: expecting a non-negative integer.");
|
|
5314
|
-
}
|
|
5315
|
-
return value;
|
|
5316
|
-
}, ensureNumbers = (...operands) => {
|
|
5317
|
-
for (let i = 0;i < operands.length; i++) {
|
|
5318
|
-
if (operands[i] === null || operands[i] === undefined) {
|
|
5319
|
-
throw new Error("not-a-number: undefined");
|
|
5320
|
-
}
|
|
5321
|
-
if (typeof operands[i] !== "number") {
|
|
5322
|
-
throw new Error("not-a-number");
|
|
5323
|
-
}
|
|
5324
|
-
}
|
|
5325
|
-
}, notZero = (n) => {
|
|
5326
|
-
n = +n;
|
|
5327
|
-
if (!n) {
|
|
5328
|
-
throw new Error("not-a-number: divide by zero");
|
|
5329
|
-
}
|
|
5330
|
-
return n;
|
|
5331
|
-
}, add = (left, right) => {
|
|
5332
|
-
ensureNumbers(left, right);
|
|
5333
|
-
const result = left + right;
|
|
5334
|
-
return result;
|
|
5335
|
-
}, sub = (left, right) => {
|
|
5336
|
-
ensureNumbers(left, right);
|
|
5337
|
-
const result = left - right;
|
|
5338
|
-
return result;
|
|
5339
|
-
}, mul = (left, right) => {
|
|
5340
|
-
ensureNumbers(left, right);
|
|
5341
|
-
const result = left * right;
|
|
5342
|
-
return result;
|
|
5343
|
-
}, divide = (left, right) => {
|
|
5344
|
-
ensureNumbers(left, right);
|
|
5345
|
-
const result = left / notZero(right);
|
|
5346
|
-
return result;
|
|
5347
|
-
}, div = (left, right) => {
|
|
5348
|
-
ensureNumbers(left, right);
|
|
5349
|
-
const result = Math.floor(left / notZero(right));
|
|
5350
|
-
return result;
|
|
5351
|
-
}, mod = (left, right) => {
|
|
5352
|
-
ensureNumbers(left, right);
|
|
5353
|
-
const result = left % right;
|
|
5354
|
-
return result;
|
|
5355
|
-
}, findFirst2 = (subject, sub2, start, end) => {
|
|
5356
|
-
if (!subject || !sub2) {
|
|
5357
|
-
return null;
|
|
5358
|
-
}
|
|
5359
|
-
start = Math.max(ensureInteger(start = start || 0), 0);
|
|
5360
|
-
end = Math.min(ensureInteger(end = end || subject.length), subject.length);
|
|
5361
|
-
const offset = subject.slice(start, end).indexOf(sub2);
|
|
5362
|
-
return offset === -1 ? null : offset + start;
|
|
5363
|
-
}, findLast = (subject, sub2, start, end) => {
|
|
5364
|
-
if (!subject || !sub2) {
|
|
5365
|
-
return null;
|
|
5366
|
-
}
|
|
5367
|
-
start = Math.max(ensureInteger(start = start || 0), 0);
|
|
5368
|
-
end = Math.min(ensureInteger(end = end || subject.length), subject.length);
|
|
5369
|
-
const offset = subject.slice(start, end).lastIndexOf(sub2);
|
|
5370
|
-
const result = offset === -1 ? null : offset + start;
|
|
5371
|
-
return result;
|
|
5372
|
-
}, lower = (subject) => subject.toLowerCase(), ensurePadFuncParams = (name, width, padding) => {
|
|
5373
|
-
padding = padding || " ";
|
|
5374
|
-
if (padding.length > 1) {
|
|
5375
|
-
throw new Error(`invalid value, ${name} expects its 'pad' parameter to be a valid string with a single codepoint`);
|
|
5376
|
-
}
|
|
5377
|
-
ensurePositiveInteger(width);
|
|
5378
|
-
return padding;
|
|
5379
|
-
}, padLeft = (subject, width, padding) => {
|
|
5380
|
-
padding = ensurePadFuncParams("pad_left", width, padding);
|
|
5381
|
-
return subject && subject.padStart(width, padding) || "";
|
|
5382
|
-
}, padRight = (subject, width, padding) => {
|
|
5383
|
-
padding = ensurePadFuncParams("pad_right", width, padding);
|
|
5384
|
-
return subject && subject.padEnd(width, padding) || "";
|
|
5385
|
-
}, replace = (subject, string, by, count) => {
|
|
5386
|
-
if (count === 0) {
|
|
5387
|
-
return subject;
|
|
5388
|
-
}
|
|
5389
|
-
if (!count) {
|
|
5390
|
-
return subject.split(string).join(by);
|
|
5391
|
-
}
|
|
5392
|
-
ensurePositiveInteger(count);
|
|
5393
|
-
[...Array(count).keys()].map(() => subject = subject.replace(string, by));
|
|
5394
|
-
return subject;
|
|
5395
|
-
}, split = (subject, search2, count) => {
|
|
5396
|
-
if (subject.length == 0 && search2.length === 0) {
|
|
5397
|
-
return [];
|
|
5398
|
-
}
|
|
5399
|
-
if (count === null || count === undefined) {
|
|
5400
|
-
return subject.split(search2);
|
|
5401
|
-
}
|
|
5402
|
-
ensurePositiveInteger(count);
|
|
5403
|
-
if (count === 0) {
|
|
5404
|
-
return [subject];
|
|
5405
|
-
}
|
|
5406
|
-
const split2 = subject.split(search2);
|
|
5407
|
-
return [...split2.slice(0, count), split2.slice(count).join(search2)];
|
|
5408
|
-
}, trim = (subject, chars) => {
|
|
5409
|
-
return trimLeft(trimRight(subject, chars), chars);
|
|
5410
|
-
}, trimLeft = (subject, chars) => {
|
|
5411
|
-
return trimImpl(subject, (list) => new RegExp(`^[${list}]*(.*?)`), chars);
|
|
5412
|
-
}, trimRight = (subject, chars) => {
|
|
5413
|
-
return trimImpl(subject, (list) => new RegExp(`(.*?)[${list}]*$`), chars);
|
|
5414
|
-
}, trimImpl = (subject, regExper, chars) => {
|
|
5415
|
-
const pattern = chars ? chars.replace(/[-/\\^$*+?.()|[\]{}]/g, "\\$&") : "\\s
";
|
|
5416
|
-
return subject.replace(regExper(pattern), "$1");
|
|
5417
|
-
}, upper = (subject) => subject.toUpperCase(), basicTokens, operatorStartToken, skipChars, StreamLexer = class {
|
|
5418
|
-
_current = 0;
|
|
5419
|
-
_enable_legacy_literals = false;
|
|
5420
|
-
tokenize(stream, options) {
|
|
5421
|
-
const tokens = [];
|
|
5422
|
-
this._current = 0;
|
|
5423
|
-
this._enable_legacy_literals = options?.enable_legacy_literals || false;
|
|
5424
|
-
let start;
|
|
5425
|
-
let identifier;
|
|
5426
|
-
let token;
|
|
5427
|
-
while (this._current < stream.length) {
|
|
5428
|
-
if (isAlpha(stream[this._current])) {
|
|
5429
|
-
start = this._current;
|
|
5430
|
-
identifier = this.consumeUnquotedIdentifier(stream);
|
|
5431
|
-
tokens.push({
|
|
5432
|
-
start,
|
|
5433
|
-
type: "UnquotedIdentifier",
|
|
5434
|
-
value: identifier
|
|
5435
|
-
});
|
|
5436
|
-
} else if (basicTokens[stream[this._current]] !== undefined) {
|
|
5437
|
-
tokens.push({
|
|
5438
|
-
start: this._current,
|
|
5439
|
-
type: basicTokens[stream[this._current]],
|
|
5440
|
-
value: stream[this._current]
|
|
5441
|
-
});
|
|
5442
|
-
this._current += 1;
|
|
5443
|
-
} else if (stream[this._current] === "$") {
|
|
5444
|
-
start = this._current;
|
|
5445
|
-
if (this._current + 1 < stream.length && isAlpha(stream[this._current + 1])) {
|
|
5446
|
-
this._current += 1;
|
|
5447
|
-
identifier = this.consumeUnquotedIdentifier(stream);
|
|
5448
|
-
tokens.push({
|
|
5449
|
-
start,
|
|
5450
|
-
type: "Variable",
|
|
5451
|
-
value: identifier
|
|
5452
|
-
});
|
|
5453
|
-
} else {
|
|
5454
|
-
tokens.push({
|
|
5455
|
-
start,
|
|
5456
|
-
type: "Root",
|
|
5457
|
-
value: stream[this._current]
|
|
5458
|
-
});
|
|
5459
|
-
this._current += 1;
|
|
5460
|
-
}
|
|
5461
|
-
} else if (stream[this._current] === "-") {
|
|
5462
|
-
if (this._current + 1 < stream.length && isNum(stream[this._current + 1])) {
|
|
5463
|
-
const token2 = this.consumeNumber(stream);
|
|
5464
|
-
token2 && tokens.push(token2);
|
|
5465
|
-
} else {
|
|
5466
|
-
const token2 = {
|
|
5467
|
-
start: this._current,
|
|
5468
|
-
type: "Minus",
|
|
5469
|
-
value: "-"
|
|
5470
|
-
};
|
|
5471
|
-
tokens.push(token2);
|
|
5472
|
-
this._current += 1;
|
|
5473
|
-
}
|
|
5474
|
-
} else if (isNum(stream[this._current])) {
|
|
5475
|
-
token = this.consumeNumber(stream);
|
|
5476
|
-
tokens.push(token);
|
|
5477
|
-
} else if (stream[this._current] === "[") {
|
|
5478
|
-
token = this.consumeLBracket(stream);
|
|
5479
|
-
tokens.push(token);
|
|
5480
|
-
} else if (stream[this._current] === '"') {
|
|
5481
|
-
start = this._current;
|
|
5482
|
-
identifier = this.consumeQuotedIdentifier(stream);
|
|
5483
|
-
tokens.push({
|
|
5484
|
-
start,
|
|
5485
|
-
type: "QuotedIdentifier",
|
|
5486
|
-
value: identifier
|
|
5487
|
-
});
|
|
5488
|
-
} else if (stream[this._current] === `'`) {
|
|
5489
|
-
start = this._current;
|
|
5490
|
-
identifier = this.consumeRawStringLiteral(stream);
|
|
5491
|
-
tokens.push({
|
|
5492
|
-
start,
|
|
5493
|
-
type: "Literal",
|
|
5494
|
-
value: identifier
|
|
5495
|
-
});
|
|
5496
|
-
} else if (stream[this._current] === "`") {
|
|
5497
|
-
start = this._current;
|
|
5498
|
-
const literal = this.consumeLiteral(stream);
|
|
5499
|
-
tokens.push({
|
|
5500
|
-
start,
|
|
5501
|
-
type: "Literal",
|
|
5502
|
-
value: literal
|
|
5503
|
-
});
|
|
5504
|
-
} else if (operatorStartToken[stream[this._current]] !== undefined) {
|
|
5505
|
-
token = this.consumeOperator(stream);
|
|
5506
|
-
token && tokens.push(token);
|
|
5507
|
-
} else if (skipChars[stream[this._current]] !== undefined) {
|
|
5508
|
-
this._current += 1;
|
|
5214
|
+
function isObject(obj) {
|
|
5215
|
+
if (obj !== null) {
|
|
5216
|
+
return Object.prototype.toString.call(obj) === "[object Object]";
|
|
5509
5217
|
} else {
|
|
5510
|
-
|
|
5511
|
-
error.name = "LexerError";
|
|
5512
|
-
throw error;
|
|
5218
|
+
return false;
|
|
5513
5219
|
}
|
|
5514
5220
|
}
|
|
5515
|
-
|
|
5516
|
-
|
|
5517
|
-
|
|
5518
|
-
const start = this._current;
|
|
5519
|
-
this._current += 1;
|
|
5520
|
-
while (this._current < stream.length && isAlphaNum(stream[this._current])) {
|
|
5521
|
-
this._current += 1;
|
|
5522
|
-
}
|
|
5523
|
-
return stream.slice(start, this._current);
|
|
5524
|
-
}
|
|
5525
|
-
consumeQuotedIdentifier(stream) {
|
|
5526
|
-
const start = this._current;
|
|
5527
|
-
this._current += 1;
|
|
5528
|
-
const maxLength = stream.length;
|
|
5529
|
-
while (stream[this._current] !== '"' && this._current < maxLength) {
|
|
5530
|
-
let current = this._current;
|
|
5531
|
-
if (stream[current] === "\\" && (stream[current + 1] === "\\" || stream[current + 1] === '"')) {
|
|
5532
|
-
current += 2;
|
|
5533
|
-
} else {
|
|
5534
|
-
current += 1;
|
|
5221
|
+
function strictDeepEqual(first, second) {
|
|
5222
|
+
if (first === second) {
|
|
5223
|
+
return true;
|
|
5535
5224
|
}
|
|
5536
|
-
|
|
5537
|
-
|
|
5538
|
-
|
|
5539
|
-
const [value, ok] = this.parseJSON(stream.slice(start, this._current));
|
|
5540
|
-
if (!ok) {
|
|
5541
|
-
const error = new Error(`syntax: unexpected end of JSON input`);
|
|
5542
|
-
error.name = "LexerError";
|
|
5543
|
-
throw error;
|
|
5544
|
-
}
|
|
5545
|
-
return value;
|
|
5546
|
-
}
|
|
5547
|
-
consumeRawStringLiteral(stream) {
|
|
5548
|
-
const start = this._current;
|
|
5549
|
-
this._current += 1;
|
|
5550
|
-
const maxLength = stream.length;
|
|
5551
|
-
while (stream[this._current] !== `'` && this._current < maxLength) {
|
|
5552
|
-
let current = this._current;
|
|
5553
|
-
if (stream[current] === "\\" && (stream[current + 1] === "\\" || stream[current + 1] === `'`)) {
|
|
5554
|
-
current += 2;
|
|
5555
|
-
} else {
|
|
5556
|
-
current += 1;
|
|
5557
|
-
}
|
|
5558
|
-
this._current = current;
|
|
5559
|
-
}
|
|
5560
|
-
this._current += 1;
|
|
5561
|
-
const literal = stream.slice(start + 1, this._current - 1);
|
|
5562
|
-
return replace(replace(literal, `\\\\`, `\\`), `\\'`, `'`);
|
|
5563
|
-
}
|
|
5564
|
-
consumeNumber(stream) {
|
|
5565
|
-
const start = this._current;
|
|
5566
|
-
this._current += 1;
|
|
5567
|
-
const maxLength = stream.length;
|
|
5568
|
-
while (isNum(stream[this._current]) && this._current < maxLength) {
|
|
5569
|
-
this._current += 1;
|
|
5570
|
-
}
|
|
5571
|
-
const value = parseInt(stream.slice(start, this._current), 10);
|
|
5572
|
-
return { start, value, type: "Number" };
|
|
5573
|
-
}
|
|
5574
|
-
consumeLBracket(stream) {
|
|
5575
|
-
const start = this._current;
|
|
5576
|
-
this._current += 1;
|
|
5577
|
-
if (stream[this._current] === "?") {
|
|
5578
|
-
this._current += 1;
|
|
5579
|
-
return { start, type: "Filter", value: "[?" };
|
|
5580
|
-
}
|
|
5581
|
-
if (stream[this._current] === "]") {
|
|
5582
|
-
this._current += 1;
|
|
5583
|
-
return { start, type: "Flatten", value: "[]" };
|
|
5584
|
-
}
|
|
5585
|
-
return { start, type: "Lbracket", value: "[" };
|
|
5586
|
-
}
|
|
5587
|
-
consumeOrElse(stream, peek, token, orElse) {
|
|
5588
|
-
const start = this._current;
|
|
5589
|
-
this._current += 1;
|
|
5590
|
-
if (this._current < stream.length && stream[this._current] === peek) {
|
|
5591
|
-
this._current += 1;
|
|
5592
|
-
return {
|
|
5593
|
-
start,
|
|
5594
|
-
type: orElse,
|
|
5595
|
-
value: stream.slice(start, this._current)
|
|
5596
|
-
};
|
|
5597
|
-
}
|
|
5598
|
-
return { start, type: token, value: stream[start] };
|
|
5599
|
-
}
|
|
5600
|
-
consumeOperator(stream) {
|
|
5601
|
-
const start = this._current;
|
|
5602
|
-
const startingChar = stream[start];
|
|
5603
|
-
switch (startingChar) {
|
|
5604
|
-
case "!":
|
|
5605
|
-
return this.consumeOrElse(stream, "=", "Not", "NE");
|
|
5606
|
-
case "<":
|
|
5607
|
-
return this.consumeOrElse(stream, "=", "LT", "LTE");
|
|
5608
|
-
case ">":
|
|
5609
|
-
return this.consumeOrElse(stream, "=", "GT", "GTE");
|
|
5610
|
-
case "=":
|
|
5611
|
-
return this.consumeOrElse(stream, "=", "Assign", "EQ");
|
|
5612
|
-
case "&":
|
|
5613
|
-
return this.consumeOrElse(stream, "&", "Expref", "And");
|
|
5614
|
-
case "|":
|
|
5615
|
-
return this.consumeOrElse(stream, "|", "Pipe", "Or");
|
|
5616
|
-
case "/":
|
|
5617
|
-
return this.consumeOrElse(stream, "/", "Divide", "Div");
|
|
5618
|
-
}
|
|
5619
|
-
}
|
|
5620
|
-
consumeLiteral(stream) {
|
|
5621
|
-
this._current += 1;
|
|
5622
|
-
const start = this._current;
|
|
5623
|
-
const maxLength = stream.length;
|
|
5624
|
-
while (stream[this._current] !== "`" && this._current < maxLength) {
|
|
5625
|
-
let current = this._current;
|
|
5626
|
-
if (stream[current] === "\\" && (stream[current + 1] === "\\" || stream[current + 1] === "`")) {
|
|
5627
|
-
current += 2;
|
|
5628
|
-
} else {
|
|
5629
|
-
current += 1;
|
|
5225
|
+
var firstType = Object.prototype.toString.call(first);
|
|
5226
|
+
if (firstType !== Object.prototype.toString.call(second)) {
|
|
5227
|
+
return false;
|
|
5630
5228
|
}
|
|
5631
|
-
|
|
5632
|
-
|
|
5633
|
-
|
|
5634
|
-
literalString = literalString.replace("\\`", "`");
|
|
5635
|
-
let literal = null;
|
|
5636
|
-
let ok = false;
|
|
5637
|
-
if (this.looksLikeJSON(literalString)) {
|
|
5638
|
-
[literal, ok] = this.parseJSON(literalString);
|
|
5639
|
-
}
|
|
5640
|
-
if (!ok && this._enable_legacy_literals) {
|
|
5641
|
-
[literal, ok] = this.parseJSON(`"${literalString}"`);
|
|
5642
|
-
}
|
|
5643
|
-
if (!ok) {
|
|
5644
|
-
const error = new Error(`Syntax error: unexpected end of JSON input or invalid format for a JSON literal: ${stream[this._current]}`);
|
|
5645
|
-
error.name = "LexerError";
|
|
5646
|
-
throw error;
|
|
5647
|
-
}
|
|
5648
|
-
this._current += 1;
|
|
5649
|
-
return literal;
|
|
5650
|
-
}
|
|
5651
|
-
looksLikeJSON(literalString) {
|
|
5652
|
-
const startingChars = '[{"';
|
|
5653
|
-
const jsonLiterals = ["true", "false", "null"];
|
|
5654
|
-
const numberLooking = "-0123456789";
|
|
5655
|
-
if (literalString === "") {
|
|
5656
|
-
return false;
|
|
5657
|
-
}
|
|
5658
|
-
if (startingChars.includes(literalString[0])) {
|
|
5659
|
-
return true;
|
|
5660
|
-
}
|
|
5661
|
-
if (jsonLiterals.includes(literalString)) {
|
|
5662
|
-
return true;
|
|
5663
|
-
}
|
|
5664
|
-
if (numberLooking.includes(literalString[0])) {
|
|
5665
|
-
const [_, ok] = this.parseJSON(literalString);
|
|
5666
|
-
return ok;
|
|
5667
|
-
}
|
|
5668
|
-
return false;
|
|
5669
|
-
}
|
|
5670
|
-
parseJSON(text) {
|
|
5671
|
-
try {
|
|
5672
|
-
const json2 = JSON.parse(text);
|
|
5673
|
-
return [json2, true];
|
|
5674
|
-
} catch {
|
|
5675
|
-
return [null, false];
|
|
5676
|
-
}
|
|
5677
|
-
}
|
|
5678
|
-
}, Lexer, Lexer_default, bindingPower, TokenParser = class _TokenParser {
|
|
5679
|
-
index = 0;
|
|
5680
|
-
tokens = [];
|
|
5681
|
-
parse(expression, options) {
|
|
5682
|
-
this.loadTokens(expression, options || { enable_legacy_literals: false });
|
|
5683
|
-
this.index = 0;
|
|
5684
|
-
const ast = this.expression(0);
|
|
5685
|
-
if (this.lookahead(0) !== "EOF") {
|
|
5686
|
-
const token = this.lookaheadToken(0);
|
|
5687
|
-
this.errorToken(token, `Syntax error: unexpected token type: ${token.type}, value: ${token.value}`);
|
|
5688
|
-
}
|
|
5689
|
-
return ast;
|
|
5690
|
-
}
|
|
5691
|
-
loadTokens(expression, options) {
|
|
5692
|
-
this.tokens = Lexer_default.tokenize(expression, options);
|
|
5693
|
-
this.tokens.push({ type: "EOF", value: "", start: expression.length });
|
|
5694
|
-
}
|
|
5695
|
-
expression(rbp) {
|
|
5696
|
-
const leftToken = this.lookaheadToken(0);
|
|
5697
|
-
this.advance();
|
|
5698
|
-
let left = this.nud(leftToken);
|
|
5699
|
-
let currentTokenType = this.lookahead(0);
|
|
5700
|
-
while (rbp < bindingPower[currentTokenType]) {
|
|
5701
|
-
this.advance();
|
|
5702
|
-
left = this.led(currentTokenType, left);
|
|
5703
|
-
currentTokenType = this.lookahead(0);
|
|
5704
|
-
}
|
|
5705
|
-
return left;
|
|
5706
|
-
}
|
|
5707
|
-
lookahead(offset) {
|
|
5708
|
-
return this.tokens[this.index + offset].type;
|
|
5709
|
-
}
|
|
5710
|
-
lookaheadToken(offset) {
|
|
5711
|
-
return this.tokens[this.index + offset];
|
|
5712
|
-
}
|
|
5713
|
-
advance() {
|
|
5714
|
-
this.index += 1;
|
|
5715
|
-
}
|
|
5716
|
-
nud(token) {
|
|
5717
|
-
switch (token.type) {
|
|
5718
|
-
case "Variable":
|
|
5719
|
-
return { type: "Variable", name: token.value };
|
|
5720
|
-
case "Literal":
|
|
5721
|
-
return { type: "Literal", value: token.value };
|
|
5722
|
-
case "UnquotedIdentifier": {
|
|
5723
|
-
if (_TokenParser.isKeyword(token, "let") && this.lookahead(0) === "Variable") {
|
|
5724
|
-
return this.parseLetExpression();
|
|
5725
|
-
} else {
|
|
5726
|
-
return { type: "Field", name: token.value };
|
|
5229
|
+
if (isArray(first) === true) {
|
|
5230
|
+
if (first.length !== second.length) {
|
|
5231
|
+
return false;
|
|
5727
5232
|
}
|
|
5728
|
-
|
|
5729
|
-
|
|
5730
|
-
|
|
5731
|
-
|
|
5732
|
-
} else {
|
|
5733
|
-
return { type: "Field", name: token.value };
|
|
5233
|
+
for (var i = 0;i < first.length; i++) {
|
|
5234
|
+
if (strictDeepEqual(first[i], second[i]) === false) {
|
|
5235
|
+
return false;
|
|
5236
|
+
}
|
|
5734
5237
|
}
|
|
5735
|
-
|
|
5736
|
-
const child = this.expression(bindingPower.Not);
|
|
5737
|
-
return { type: "NotExpression", child };
|
|
5738
|
-
}
|
|
5739
|
-
case "Minus": {
|
|
5740
|
-
const child = this.expression(bindingPower.Minus);
|
|
5741
|
-
return {
|
|
5742
|
-
type: "Unary",
|
|
5743
|
-
operator: token.type,
|
|
5744
|
-
operand: child
|
|
5745
|
-
};
|
|
5746
|
-
}
|
|
5747
|
-
case "Plus": {
|
|
5748
|
-
const child = this.expression(bindingPower.Plus);
|
|
5749
|
-
return {
|
|
5750
|
-
type: "Unary",
|
|
5751
|
-
operator: token.type,
|
|
5752
|
-
operand: child
|
|
5753
|
-
};
|
|
5238
|
+
return true;
|
|
5754
5239
|
}
|
|
5755
|
-
|
|
5756
|
-
|
|
5757
|
-
|
|
5758
|
-
|
|
5759
|
-
|
|
5760
|
-
|
|
5761
|
-
|
|
5762
|
-
|
|
5763
|
-
|
|
5764
|
-
const left = {
|
|
5765
|
-
type: "Flatten",
|
|
5766
|
-
child: { type: "Identity" }
|
|
5767
|
-
};
|
|
5768
|
-
const right = this.parseProjectionRHS(bindingPower.Flatten);
|
|
5769
|
-
return { type: "Projection", left, right };
|
|
5770
|
-
}
|
|
5771
|
-
case "Lbracket": {
|
|
5772
|
-
if (this.lookahead(0) === "Number" || this.lookahead(0) === "Colon") {
|
|
5773
|
-
const right = this.parseIndexExpression();
|
|
5774
|
-
return this.projectIfSlice({ type: "Identity" }, right);
|
|
5775
|
-
}
|
|
5776
|
-
if (this.lookahead(0) === "Star" && this.lookahead(1) === "Rbracket") {
|
|
5777
|
-
this.advance();
|
|
5778
|
-
this.advance();
|
|
5779
|
-
const right = this.parseProjectionRHS(bindingPower.Star);
|
|
5780
|
-
return {
|
|
5781
|
-
left: { type: "Identity" },
|
|
5782
|
-
right,
|
|
5783
|
-
type: "Projection"
|
|
5784
|
-
};
|
|
5240
|
+
if (isObject(first) === true) {
|
|
5241
|
+
var keysSeen = {};
|
|
5242
|
+
for (var key in first) {
|
|
5243
|
+
if (hasOwnProperty.call(first, key)) {
|
|
5244
|
+
if (strictDeepEqual(first[key], second[key]) === false) {
|
|
5245
|
+
return false;
|
|
5246
|
+
}
|
|
5247
|
+
keysSeen[key] = true;
|
|
5248
|
+
}
|
|
5785
5249
|
}
|
|
5786
|
-
|
|
5787
|
-
|
|
5788
|
-
|
|
5789
|
-
|
|
5790
|
-
|
|
5791
|
-
|
|
5792
|
-
|
|
5793
|
-
|
|
5794
|
-
return { type: "ExpressionReference", child };
|
|
5250
|
+
for (var key2 in second) {
|
|
5251
|
+
if (hasOwnProperty.call(second, key2)) {
|
|
5252
|
+
if (keysSeen[key2] !== true) {
|
|
5253
|
+
return false;
|
|
5254
|
+
}
|
|
5255
|
+
}
|
|
5256
|
+
}
|
|
5257
|
+
return true;
|
|
5795
5258
|
}
|
|
5796
|
-
|
|
5797
|
-
|
|
5798
|
-
|
|
5799
|
-
|
|
5259
|
+
return false;
|
|
5260
|
+
}
|
|
5261
|
+
function isFalse(obj) {
|
|
5262
|
+
if (obj === "" || obj === false || obj === null) {
|
|
5263
|
+
return true;
|
|
5264
|
+
} else if (isArray(obj) && obj.length === 0) {
|
|
5265
|
+
return true;
|
|
5266
|
+
} else if (isObject(obj)) {
|
|
5267
|
+
for (var key in obj) {
|
|
5268
|
+
if (obj.hasOwnProperty(key)) {
|
|
5269
|
+
return false;
|
|
5270
|
+
}
|
|
5271
|
+
}
|
|
5272
|
+
return true;
|
|
5273
|
+
} else {
|
|
5274
|
+
return false;
|
|
5800
5275
|
}
|
|
5801
|
-
default:
|
|
5802
|
-
this.errorToken(token);
|
|
5803
5276
|
}
|
|
5804
|
-
|
|
5805
|
-
|
|
5806
|
-
|
|
5807
|
-
|
|
5808
|
-
|
|
5809
|
-
this.match("Colon");
|
|
5810
|
-
const falseExpr = this.expression(0);
|
|
5811
|
-
return {
|
|
5812
|
-
type: "Ternary",
|
|
5813
|
-
condition: left,
|
|
5814
|
-
trueExpr,
|
|
5815
|
-
falseExpr
|
|
5816
|
-
};
|
|
5277
|
+
function objValues(obj) {
|
|
5278
|
+
var keys = Object.keys(obj);
|
|
5279
|
+
var values = [];
|
|
5280
|
+
for (var i = 0;i < keys.length; i++) {
|
|
5281
|
+
values.push(obj[keys[i]]);
|
|
5817
5282
|
}
|
|
5818
|
-
|
|
5819
|
-
|
|
5820
|
-
|
|
5821
|
-
|
|
5822
|
-
|
|
5823
|
-
|
|
5824
|
-
this.advance();
|
|
5825
|
-
const right = this.parseProjectionRHS(rbp);
|
|
5826
|
-
return { type: "ValueProjection", left, right };
|
|
5827
|
-
}
|
|
5828
|
-
case "Pipe": {
|
|
5829
|
-
const right = this.expression(bindingPower.Pipe);
|
|
5830
|
-
return { type: "Pipe", left, right };
|
|
5831
|
-
}
|
|
5832
|
-
case "Or": {
|
|
5833
|
-
const right = this.expression(bindingPower.Or);
|
|
5834
|
-
return { type: "OrExpression", left, right };
|
|
5835
|
-
}
|
|
5836
|
-
case "And": {
|
|
5837
|
-
const right = this.expression(bindingPower.And);
|
|
5838
|
-
return { type: "AndExpression", left, right };
|
|
5839
|
-
}
|
|
5840
|
-
case "Lparen": {
|
|
5841
|
-
if (left.type !== "Field") {
|
|
5842
|
-
throw new Error("Syntax error: expected a Field node");
|
|
5843
|
-
}
|
|
5844
|
-
const name = left.name;
|
|
5845
|
-
const args = this.parseCommaSeparatedExpressionsUntilToken("Rparen");
|
|
5846
|
-
const node = { name, type: "Function", children: args };
|
|
5847
|
-
return node;
|
|
5848
|
-
}
|
|
5849
|
-
case "Filter": {
|
|
5850
|
-
const condition = this.expression(0);
|
|
5851
|
-
this.match("Rbracket");
|
|
5852
|
-
const right = this.lookahead(0) === "Flatten" ? { type: "Identity" } : this.parseProjectionRHS(bindingPower.Filter);
|
|
5853
|
-
return { type: "FilterProjection", left, right, condition };
|
|
5854
|
-
}
|
|
5855
|
-
case "Flatten": {
|
|
5856
|
-
const leftNode = { type: "Flatten", child: left };
|
|
5857
|
-
const right = this.parseProjectionRHS(bindingPower.Flatten);
|
|
5858
|
-
return { type: "Projection", left: leftNode, right };
|
|
5859
|
-
}
|
|
5860
|
-
case "Assign": {
|
|
5861
|
-
const leftNode = left;
|
|
5862
|
-
const right = this.expression(0);
|
|
5863
|
-
return {
|
|
5864
|
-
type: "Binding",
|
|
5865
|
-
variable: leftNode.name,
|
|
5866
|
-
reference: right
|
|
5867
|
-
};
|
|
5283
|
+
return values;
|
|
5284
|
+
}
|
|
5285
|
+
function merge2(a, b) {
|
|
5286
|
+
var merged = {};
|
|
5287
|
+
for (var key in a) {
|
|
5288
|
+
merged[key] = a[key];
|
|
5868
5289
|
}
|
|
5869
|
-
|
|
5870
|
-
|
|
5871
|
-
case "GT":
|
|
5872
|
-
case "GTE":
|
|
5873
|
-
case "LT":
|
|
5874
|
-
case "LTE":
|
|
5875
|
-
return this.parseComparator(left, tokenName);
|
|
5876
|
-
case "Plus":
|
|
5877
|
-
case "Minus":
|
|
5878
|
-
case "Multiply":
|
|
5879
|
-
case "Star":
|
|
5880
|
-
case "Divide":
|
|
5881
|
-
case "Modulo":
|
|
5882
|
-
case "Div":
|
|
5883
|
-
return this.parseArithmetic(left, tokenName);
|
|
5884
|
-
case "Lbracket": {
|
|
5885
|
-
const token = this.lookaheadToken(0);
|
|
5886
|
-
if (token.type === "Number" || token.type === "Colon") {
|
|
5887
|
-
const right2 = this.parseIndexExpression();
|
|
5888
|
-
return this.projectIfSlice(left, right2);
|
|
5889
|
-
}
|
|
5890
|
-
this.match("Star");
|
|
5891
|
-
this.match("Rbracket");
|
|
5892
|
-
const right = this.parseProjectionRHS(bindingPower.Star);
|
|
5893
|
-
return { type: "Projection", left, right };
|
|
5290
|
+
for (var key2 in b) {
|
|
5291
|
+
merged[key2] = b[key2];
|
|
5894
5292
|
}
|
|
5895
|
-
|
|
5896
|
-
return this.errorToken(this.lookaheadToken(0));
|
|
5293
|
+
return merged;
|
|
5897
5294
|
}
|
|
5898
|
-
|
|
5899
|
-
|
|
5900
|
-
|
|
5901
|
-
|
|
5902
|
-
|
|
5903
|
-
if (this.lookahead(0) === tokenType) {
|
|
5904
|
-
this.advance();
|
|
5905
|
-
return;
|
|
5295
|
+
var trimLeft;
|
|
5296
|
+
if (typeof String.prototype.trimLeft === "function") {
|
|
5297
|
+
trimLeft = function(str2) {
|
|
5298
|
+
return str2.trimLeft();
|
|
5299
|
+
};
|
|
5906
5300
|
} else {
|
|
5907
|
-
|
|
5908
|
-
|
|
5909
|
-
}
|
|
5910
|
-
}
|
|
5911
|
-
errorToken(token, message = "") {
|
|
5912
|
-
const error = new Error(message || `Syntax error: invalid token (${token.type}): "${token.value}"`);
|
|
5913
|
-
error.name = "ParserError";
|
|
5914
|
-
throw error;
|
|
5915
|
-
}
|
|
5916
|
-
parseIndexExpression() {
|
|
5917
|
-
if (this.lookahead(0) === "Colon" || this.lookahead(1) === "Colon") {
|
|
5918
|
-
return this.parseSliceExpression();
|
|
5919
|
-
}
|
|
5920
|
-
const value = Number(this.lookaheadToken(0).value);
|
|
5921
|
-
this.advance();
|
|
5922
|
-
this.match("Rbracket");
|
|
5923
|
-
return { type: "Index", value };
|
|
5924
|
-
}
|
|
5925
|
-
projectIfSlice(left, right) {
|
|
5926
|
-
const indexExpr = {
|
|
5927
|
-
type: "IndexExpression",
|
|
5928
|
-
left,
|
|
5929
|
-
right
|
|
5930
|
-
};
|
|
5931
|
-
if (right.type === "Slice") {
|
|
5932
|
-
return {
|
|
5933
|
-
left: indexExpr,
|
|
5934
|
-
right: this.parseProjectionRHS(bindingPower.Star),
|
|
5935
|
-
type: "Projection"
|
|
5301
|
+
trimLeft = function(str2) {
|
|
5302
|
+
return str2.match(/^\s*(.*)/)[1];
|
|
5936
5303
|
};
|
|
5937
5304
|
}
|
|
5938
|
-
|
|
5939
|
-
|
|
5940
|
-
|
|
5941
|
-
|
|
5942
|
-
|
|
5943
|
-
|
|
5944
|
-
|
|
5945
|
-
|
|
5946
|
-
|
|
5947
|
-
|
|
5948
|
-
|
|
5949
|
-
|
|
5950
|
-
|
|
5951
|
-
|
|
5952
|
-
|
|
5953
|
-
|
|
5954
|
-
|
|
5955
|
-
|
|
5956
|
-
|
|
5957
|
-
|
|
5958
|
-
|
|
5959
|
-
|
|
5960
|
-
|
|
5961
|
-
|
|
5962
|
-
|
|
5963
|
-
|
|
5964
|
-
|
|
5965
|
-
|
|
5966
|
-
|
|
5967
|
-
|
|
5968
|
-
|
|
5969
|
-
|
|
5970
|
-
|
|
5971
|
-
|
|
5972
|
-
|
|
5973
|
-
|
|
5974
|
-
|
|
5975
|
-
|
|
5976
|
-
|
|
5977
|
-
|
|
5978
|
-
|
|
5979
|
-
|
|
5980
|
-
|
|
5981
|
-
|
|
5982
|
-
|
|
5983
|
-
|
|
5984
|
-
|
|
5985
|
-
|
|
5986
|
-
|
|
5987
|
-
|
|
5988
|
-
|
|
5989
|
-
|
|
5990
|
-
|
|
5991
|
-
|
|
5992
|
-
|
|
5993
|
-
|
|
5994
|
-
|
|
5995
|
-
|
|
5996
|
-
|
|
5997
|
-
|
|
5998
|
-
|
|
5999
|
-
|
|
6000
|
-
|
|
6001
|
-
|
|
6002
|
-
|
|
6003
|
-
|
|
6004
|
-
|
|
6005
|
-
|
|
6006
|
-
|
|
6007
|
-
|
|
6008
|
-
|
|
6009
|
-
|
|
6010
|
-
|
|
6011
|
-
|
|
6012
|
-
|
|
6013
|
-
|
|
6014
|
-
|
|
6015
|
-
|
|
6016
|
-
|
|
6017
|
-
|
|
6018
|
-
|
|
6019
|
-
|
|
6020
|
-
|
|
6021
|
-
|
|
6022
|
-
|
|
6023
|
-
|
|
6024
|
-
|
|
6025
|
-
|
|
6026
|
-
|
|
6027
|
-
|
|
6028
|
-
|
|
6029
|
-
|
|
6030
|
-
|
|
6031
|
-
|
|
6032
|
-
|
|
6033
|
-
|
|
6034
|
-
|
|
6035
|
-
|
|
6036
|
-
|
|
6037
|
-
|
|
6038
|
-
|
|
6039
|
-
|
|
6040
|
-
|
|
6041
|
-
|
|
6042
|
-
|
|
6043
|
-
|
|
6044
|
-
|
|
6045
|
-
|
|
6046
|
-
|
|
6047
|
-
|
|
6048
|
-
|
|
6049
|
-
|
|
6050
|
-
|
|
6051
|
-
|
|
6052
|
-
|
|
5305
|
+
var TYPE_NUMBER = 0;
|
|
5306
|
+
var TYPE_ANY = 1;
|
|
5307
|
+
var TYPE_STRING = 2;
|
|
5308
|
+
var TYPE_ARRAY = 3;
|
|
5309
|
+
var TYPE_OBJECT = 4;
|
|
5310
|
+
var TYPE_BOOLEAN = 5;
|
|
5311
|
+
var TYPE_EXPREF = 6;
|
|
5312
|
+
var TYPE_NULL = 7;
|
|
5313
|
+
var TYPE_ARRAY_NUMBER = 8;
|
|
5314
|
+
var TYPE_ARRAY_STRING = 9;
|
|
5315
|
+
var TYPE_NAME_TABLE = {
|
|
5316
|
+
0: "number",
|
|
5317
|
+
1: "any",
|
|
5318
|
+
2: "string",
|
|
5319
|
+
3: "array",
|
|
5320
|
+
4: "object",
|
|
5321
|
+
5: "boolean",
|
|
5322
|
+
6: "expression",
|
|
5323
|
+
7: "null",
|
|
5324
|
+
8: "Array<number>",
|
|
5325
|
+
9: "Array<string>"
|
|
5326
|
+
};
|
|
5327
|
+
var TOK_EOF = "EOF";
|
|
5328
|
+
var TOK_UNQUOTEDIDENTIFIER = "UnquotedIdentifier";
|
|
5329
|
+
var TOK_QUOTEDIDENTIFIER = "QuotedIdentifier";
|
|
5330
|
+
var TOK_RBRACKET = "Rbracket";
|
|
5331
|
+
var TOK_RPAREN = "Rparen";
|
|
5332
|
+
var TOK_COMMA = "Comma";
|
|
5333
|
+
var TOK_COLON = "Colon";
|
|
5334
|
+
var TOK_RBRACE = "Rbrace";
|
|
5335
|
+
var TOK_NUMBER = "Number";
|
|
5336
|
+
var TOK_CURRENT = "Current";
|
|
5337
|
+
var TOK_EXPREF = "Expref";
|
|
5338
|
+
var TOK_PIPE = "Pipe";
|
|
5339
|
+
var TOK_OR = "Or";
|
|
5340
|
+
var TOK_AND = "And";
|
|
5341
|
+
var TOK_EQ = "EQ";
|
|
5342
|
+
var TOK_GT = "GT";
|
|
5343
|
+
var TOK_LT = "LT";
|
|
5344
|
+
var TOK_GTE = "GTE";
|
|
5345
|
+
var TOK_LTE = "LTE";
|
|
5346
|
+
var TOK_NE = "NE";
|
|
5347
|
+
var TOK_FLATTEN = "Flatten";
|
|
5348
|
+
var TOK_STAR = "Star";
|
|
5349
|
+
var TOK_FILTER = "Filter";
|
|
5350
|
+
var TOK_DOT = "Dot";
|
|
5351
|
+
var TOK_NOT = "Not";
|
|
5352
|
+
var TOK_LBRACE = "Lbrace";
|
|
5353
|
+
var TOK_LBRACKET = "Lbracket";
|
|
5354
|
+
var TOK_LPAREN = "Lparen";
|
|
5355
|
+
var TOK_LITERAL = "Literal";
|
|
5356
|
+
var basicTokens = {
|
|
5357
|
+
".": TOK_DOT,
|
|
5358
|
+
"*": TOK_STAR,
|
|
5359
|
+
",": TOK_COMMA,
|
|
5360
|
+
":": TOK_COLON,
|
|
5361
|
+
"{": TOK_LBRACE,
|
|
5362
|
+
"}": TOK_RBRACE,
|
|
5363
|
+
"]": TOK_RBRACKET,
|
|
5364
|
+
"(": TOK_LPAREN,
|
|
5365
|
+
")": TOK_RPAREN,
|
|
5366
|
+
"@": TOK_CURRENT
|
|
5367
|
+
};
|
|
5368
|
+
var operatorStartToken = {
|
|
5369
|
+
"<": true,
|
|
5370
|
+
">": true,
|
|
5371
|
+
"=": true,
|
|
5372
|
+
"!": true
|
|
5373
|
+
};
|
|
5374
|
+
var skipChars = {
|
|
5375
|
+
" ": true,
|
|
5376
|
+
"\t": true,
|
|
5377
|
+
"\n": true
|
|
5378
|
+
};
|
|
5379
|
+
function isAlpha(ch) {
|
|
5380
|
+
return ch >= "a" && ch <= "z" || ch >= "A" && ch <= "Z" || ch === "_";
|
|
5381
|
+
}
|
|
5382
|
+
function isNum(ch) {
|
|
5383
|
+
return ch >= "0" && ch <= "9" || ch === "-";
|
|
5384
|
+
}
|
|
5385
|
+
function isAlphaNum(ch) {
|
|
5386
|
+
return ch >= "a" && ch <= "z" || ch >= "A" && ch <= "Z" || ch >= "0" && ch <= "9" || ch === "_";
|
|
5387
|
+
}
|
|
5388
|
+
function Lexer() {}
|
|
5389
|
+
Lexer.prototype = {
|
|
5390
|
+
tokenize: function(stream) {
|
|
5391
|
+
var tokens = [];
|
|
5392
|
+
this._current = 0;
|
|
5393
|
+
var start;
|
|
5394
|
+
var identifier;
|
|
5395
|
+
var token;
|
|
5396
|
+
while (this._current < stream.length) {
|
|
5397
|
+
if (isAlpha(stream[this._current])) {
|
|
5398
|
+
start = this._current;
|
|
5399
|
+
identifier = this._consumeUnquotedIdentifier(stream);
|
|
5400
|
+
tokens.push({
|
|
5401
|
+
type: TOK_UNQUOTEDIDENTIFIER,
|
|
5402
|
+
value: identifier,
|
|
5403
|
+
start
|
|
5404
|
+
});
|
|
5405
|
+
} else if (basicTokens[stream[this._current]] !== undefined) {
|
|
5406
|
+
tokens.push({
|
|
5407
|
+
type: basicTokens[stream[this._current]],
|
|
5408
|
+
value: stream[this._current],
|
|
5409
|
+
start: this._current
|
|
5410
|
+
});
|
|
5411
|
+
this._current++;
|
|
5412
|
+
} else if (isNum(stream[this._current])) {
|
|
5413
|
+
token = this._consumeNumber(stream);
|
|
5414
|
+
tokens.push(token);
|
|
5415
|
+
} else if (stream[this._current] === "[") {
|
|
5416
|
+
token = this._consumeLBracket(stream);
|
|
5417
|
+
tokens.push(token);
|
|
5418
|
+
} else if (stream[this._current] === '"') {
|
|
5419
|
+
start = this._current;
|
|
5420
|
+
identifier = this._consumeQuotedIdentifier(stream);
|
|
5421
|
+
tokens.push({
|
|
5422
|
+
type: TOK_QUOTEDIDENTIFIER,
|
|
5423
|
+
value: identifier,
|
|
5424
|
+
start
|
|
5425
|
+
});
|
|
5426
|
+
} else if (stream[this._current] === "'") {
|
|
5427
|
+
start = this._current;
|
|
5428
|
+
identifier = this._consumeRawStringLiteral(stream);
|
|
5429
|
+
tokens.push({
|
|
5430
|
+
type: TOK_LITERAL,
|
|
5431
|
+
value: identifier,
|
|
5432
|
+
start
|
|
5433
|
+
});
|
|
5434
|
+
} else if (stream[this._current] === "`") {
|
|
5435
|
+
start = this._current;
|
|
5436
|
+
var literal = this._consumeLiteral(stream);
|
|
5437
|
+
tokens.push({
|
|
5438
|
+
type: TOK_LITERAL,
|
|
5439
|
+
value: literal,
|
|
5440
|
+
start
|
|
5441
|
+
});
|
|
5442
|
+
} else if (operatorStartToken[stream[this._current]] !== undefined) {
|
|
5443
|
+
tokens.push(this._consumeOperator(stream));
|
|
5444
|
+
} else if (skipChars[stream[this._current]] !== undefined) {
|
|
5445
|
+
this._current++;
|
|
5446
|
+
} else if (stream[this._current] === "&") {
|
|
5447
|
+
start = this._current;
|
|
5448
|
+
this._current++;
|
|
5449
|
+
if (stream[this._current] === "&") {
|
|
5450
|
+
this._current++;
|
|
5451
|
+
tokens.push({ type: TOK_AND, value: "&&", start });
|
|
5452
|
+
} else {
|
|
5453
|
+
tokens.push({ type: TOK_EXPREF, value: "&", start });
|
|
5454
|
+
}
|
|
5455
|
+
} else if (stream[this._current] === "|") {
|
|
5456
|
+
start = this._current;
|
|
5457
|
+
this._current++;
|
|
5458
|
+
if (stream[this._current] === "|") {
|
|
5459
|
+
this._current++;
|
|
5460
|
+
tokens.push({ type: TOK_OR, value: "||", start });
|
|
5461
|
+
} else {
|
|
5462
|
+
tokens.push({ type: TOK_PIPE, value: "|", start });
|
|
5463
|
+
}
|
|
5464
|
+
} else {
|
|
5465
|
+
var error = new Error("Unknown character:" + stream[this._current]);
|
|
5466
|
+
error.name = "LexerError";
|
|
5467
|
+
throw error;
|
|
5468
|
+
}
|
|
6053
5469
|
}
|
|
6054
|
-
|
|
6055
|
-
}
|
|
6056
|
-
this.match("Rbracket");
|
|
6057
|
-
return { type: "MultiSelectList", children: expressions };
|
|
6058
|
-
}
|
|
6059
|
-
parseMultiselectHash() {
|
|
6060
|
-
const pairs2 = [];
|
|
6061
|
-
const identifierTypes = ["UnquotedIdentifier", "QuotedIdentifier"];
|
|
6062
|
-
let keyToken;
|
|
6063
|
-
let keyName;
|
|
6064
|
-
let value;
|
|
6065
|
-
for (;; ) {
|
|
6066
|
-
keyToken = this.lookaheadToken(0);
|
|
6067
|
-
if (!identifierTypes.includes(keyToken.type)) {
|
|
6068
|
-
throw new Error(`Syntax error: expecting an identifier token, got: ${keyToken.type}`);
|
|
6069
|
-
}
|
|
6070
|
-
keyName = keyToken.value;
|
|
6071
|
-
this.advance();
|
|
6072
|
-
this.match("Colon");
|
|
6073
|
-
value = this.expression(0);
|
|
6074
|
-
pairs2.push({ value, type: "KeyValuePair", name: keyName });
|
|
6075
|
-
if (this.lookahead(0) === "Comma") {
|
|
6076
|
-
this.match("Comma");
|
|
6077
|
-
} else if (this.lookahead(0) === "Rbrace") {
|
|
6078
|
-
this.match("Rbrace");
|
|
6079
|
-
break;
|
|
6080
|
-
}
|
|
6081
|
-
}
|
|
6082
|
-
return { type: "MultiSelectHash", children: pairs2 };
|
|
6083
|
-
}
|
|
6084
|
-
}, Parser, Parser_default, Text = class _Text {
|
|
6085
|
-
_text;
|
|
6086
|
-
constructor(text) {
|
|
6087
|
-
this._text = text;
|
|
6088
|
-
}
|
|
6089
|
-
get string() {
|
|
6090
|
-
return this._text;
|
|
6091
|
-
}
|
|
6092
|
-
get length() {
|
|
6093
|
-
return this.codePoints.length;
|
|
6094
|
-
}
|
|
6095
|
-
compareTo(other) {
|
|
6096
|
-
return _Text.compare(this, new _Text(other));
|
|
6097
|
-
}
|
|
6098
|
-
static get comparer() {
|
|
6099
|
-
const stringComparer = (left, right) => {
|
|
6100
|
-
return new _Text(left).compareTo(right);
|
|
6101
|
-
};
|
|
6102
|
-
return stringComparer;
|
|
6103
|
-
}
|
|
6104
|
-
static compare(left, right) {
|
|
6105
|
-
const leftCp = left.codePoints;
|
|
6106
|
-
const rightCp = right.codePoints;
|
|
6107
|
-
for (let index = 0;index < Math.min(leftCp.length, rightCp.length); index++) {
|
|
6108
|
-
if (leftCp[index] === rightCp[index]) {
|
|
6109
|
-
continue;
|
|
6110
|
-
}
|
|
6111
|
-
return leftCp[index] - rightCp[index] > 0 ? 1 : -1;
|
|
6112
|
-
}
|
|
6113
|
-
return leftCp.length - rightCp.length > 0 ? 1 : -1;
|
|
6114
|
-
}
|
|
6115
|
-
reverse() {
|
|
6116
|
-
return String.fromCodePoint(...this.codePoints.reverse());
|
|
6117
|
-
}
|
|
6118
|
-
get codePoints() {
|
|
6119
|
-
const array = [...this._text].map((s) => s.codePointAt(0));
|
|
6120
|
-
return array;
|
|
6121
|
-
}
|
|
6122
|
-
}, createMathFunction = (mathFn) => ([value]) => mathFn(value), createStringFunction = (stringFn) => ([subject]) => stringFn(subject), createObjectFunction = (objFn) => ([obj]) => objFn(obj), Runtime = class {
|
|
6123
|
-
_interpreter;
|
|
6124
|
-
_functionTable;
|
|
6125
|
-
_customFunctions = /* @__PURE__ */ new Set;
|
|
6126
|
-
TYPE_NAME_TABLE = Object.freeze({
|
|
6127
|
-
[0]: "number",
|
|
6128
|
-
[1]: "any",
|
|
6129
|
-
[2]: "string",
|
|
6130
|
-
[3]: "array",
|
|
6131
|
-
[4]: "object",
|
|
6132
|
-
[5]: "boolean",
|
|
6133
|
-
[6]: "expression",
|
|
6134
|
-
[7]: "null",
|
|
6135
|
-
[8]: "Array<number>",
|
|
6136
|
-
[10]: "Array<object>",
|
|
6137
|
-
[9]: "Array<string>",
|
|
6138
|
-
[11]: "Array<Array<any>>"
|
|
6139
|
-
});
|
|
6140
|
-
constructor(interpreter) {
|
|
6141
|
-
this._interpreter = interpreter;
|
|
6142
|
-
this._functionTable = this.buildFunctionTable();
|
|
6143
|
-
}
|
|
6144
|
-
buildFunctionTable() {
|
|
6145
|
-
return {
|
|
6146
|
-
abs: { _func: createMathFunction(Math.abs), _signature: [{ types: [0] }] },
|
|
6147
|
-
ceil: { _func: createMathFunction(Math.ceil), _signature: [{ types: [0] }] },
|
|
6148
|
-
floor: { _func: createMathFunction(Math.floor), _signature: [{ types: [0] }] },
|
|
6149
|
-
lower: { _func: createStringFunction(lower), _signature: [{ types: [2] }] },
|
|
6150
|
-
upper: { _func: createStringFunction(upper), _signature: [{ types: [2] }] },
|
|
6151
|
-
keys: { _func: createObjectFunction(Object.keys), _signature: [{ types: [4] }] },
|
|
6152
|
-
values: { _func: createObjectFunction(Object.values), _signature: [{ types: [4] }] },
|
|
6153
|
-
avg: { _func: this.functionAvg, _signature: [{ types: [8] }] },
|
|
6154
|
-
contains: {
|
|
6155
|
-
_func: this.functionContains,
|
|
6156
|
-
_signature: [
|
|
6157
|
-
{ types: [2, 3] },
|
|
6158
|
-
{ types: [1] }
|
|
6159
|
-
]
|
|
5470
|
+
return tokens;
|
|
6160
5471
|
},
|
|
6161
|
-
|
|
6162
|
-
|
|
6163
|
-
|
|
6164
|
-
|
|
6165
|
-
|
|
6166
|
-
|
|
6167
|
-
|
|
6168
|
-
|
|
6169
|
-
|
|
6170
|
-
|
|
6171
|
-
|
|
6172
|
-
|
|
5472
|
+
_consumeUnquotedIdentifier: function(stream) {
|
|
5473
|
+
var start = this._current;
|
|
5474
|
+
this._current++;
|
|
5475
|
+
while (this._current < stream.length && isAlphaNum(stream[this._current])) {
|
|
5476
|
+
this._current++;
|
|
5477
|
+
}
|
|
5478
|
+
return stream.slice(start, this._current);
|
|
5479
|
+
},
|
|
5480
|
+
_consumeQuotedIdentifier: function(stream) {
|
|
5481
|
+
var start = this._current;
|
|
5482
|
+
this._current++;
|
|
5483
|
+
var maxLength = stream.length;
|
|
5484
|
+
while (stream[this._current] !== '"' && this._current < maxLength) {
|
|
5485
|
+
var current = this._current;
|
|
5486
|
+
if (stream[current] === "\\" && (stream[current + 1] === "\\" || stream[current + 1] === '"')) {
|
|
5487
|
+
current += 2;
|
|
5488
|
+
} else {
|
|
5489
|
+
current++;
|
|
5490
|
+
}
|
|
5491
|
+
this._current = current;
|
|
5492
|
+
}
|
|
5493
|
+
this._current++;
|
|
5494
|
+
return JSON.parse(stream.slice(start, this._current));
|
|
6173
5495
|
},
|
|
6174
|
-
|
|
6175
|
-
|
|
6176
|
-
|
|
6177
|
-
|
|
6178
|
-
|
|
6179
|
-
|
|
6180
|
-
|
|
6181
|
-
|
|
5496
|
+
_consumeRawStringLiteral: function(stream) {
|
|
5497
|
+
var start = this._current;
|
|
5498
|
+
this._current++;
|
|
5499
|
+
var maxLength = stream.length;
|
|
5500
|
+
while (stream[this._current] !== "'" && this._current < maxLength) {
|
|
5501
|
+
var current = this._current;
|
|
5502
|
+
if (stream[current] === "\\" && (stream[current + 1] === "\\" || stream[current + 1] === "'")) {
|
|
5503
|
+
current += 2;
|
|
5504
|
+
} else {
|
|
5505
|
+
current++;
|
|
5506
|
+
}
|
|
5507
|
+
this._current = current;
|
|
5508
|
+
}
|
|
5509
|
+
this._current++;
|
|
5510
|
+
var literal = stream.slice(start + 1, this._current - 1);
|
|
5511
|
+
return literal.replace("\\'", "'");
|
|
5512
|
+
},
|
|
5513
|
+
_consumeNumber: function(stream) {
|
|
5514
|
+
var start = this._current;
|
|
5515
|
+
this._current++;
|
|
5516
|
+
var maxLength = stream.length;
|
|
5517
|
+
while (isNum(stream[this._current]) && this._current < maxLength) {
|
|
5518
|
+
this._current++;
|
|
5519
|
+
}
|
|
5520
|
+
var value = parseInt(stream.slice(start, this._current));
|
|
5521
|
+
return { type: TOK_NUMBER, value, start };
|
|
5522
|
+
},
|
|
5523
|
+
_consumeLBracket: function(stream) {
|
|
5524
|
+
var start = this._current;
|
|
5525
|
+
this._current++;
|
|
5526
|
+
if (stream[this._current] === "?") {
|
|
5527
|
+
this._current++;
|
|
5528
|
+
return { type: TOK_FILTER, value: "[?", start };
|
|
5529
|
+
} else if (stream[this._current] === "]") {
|
|
5530
|
+
this._current++;
|
|
5531
|
+
return { type: TOK_FLATTEN, value: "[]", start };
|
|
5532
|
+
} else {
|
|
5533
|
+
return { type: TOK_LBRACKET, value: "[", start };
|
|
5534
|
+
}
|
|
6182
5535
|
},
|
|
6183
|
-
|
|
6184
|
-
|
|
6185
|
-
|
|
6186
|
-
|
|
6187
|
-
|
|
6188
|
-
|
|
6189
|
-
|
|
6190
|
-
|
|
6191
|
-
|
|
6192
|
-
|
|
6193
|
-
|
|
6194
|
-
|
|
6195
|
-
|
|
6196
|
-
|
|
6197
|
-
|
|
6198
|
-
|
|
6199
|
-
|
|
6200
|
-
|
|
6201
|
-
|
|
6202
|
-
|
|
6203
|
-
|
|
6204
|
-
|
|
6205
|
-
|
|
6206
|
-
|
|
6207
|
-
|
|
6208
|
-
|
|
6209
|
-
|
|
6210
|
-
|
|
6211
|
-
|
|
6212
|
-
|
|
6213
|
-
|
|
6214
|
-
min_by: {
|
|
6215
|
-
_func: this.functionMinBy,
|
|
6216
|
-
_signature: [{ types: [3] }, { types: [6] }]
|
|
6217
|
-
},
|
|
6218
|
-
not_null: { _func: this.functionNotNull, _signature: [{ types: [1], variadic: true }] },
|
|
6219
|
-
pad_left: {
|
|
6220
|
-
_func: this.functionPadLeft,
|
|
6221
|
-
_signature: [
|
|
6222
|
-
{ types: [2] },
|
|
6223
|
-
{ types: [0] },
|
|
6224
|
-
{ types: [2], optional: true }
|
|
6225
|
-
]
|
|
5536
|
+
_consumeOperator: function(stream) {
|
|
5537
|
+
var start = this._current;
|
|
5538
|
+
var startingChar = stream[start];
|
|
5539
|
+
this._current++;
|
|
5540
|
+
if (startingChar === "!") {
|
|
5541
|
+
if (stream[this._current] === "=") {
|
|
5542
|
+
this._current++;
|
|
5543
|
+
return { type: TOK_NE, value: "!=", start };
|
|
5544
|
+
} else {
|
|
5545
|
+
return { type: TOK_NOT, value: "!", start };
|
|
5546
|
+
}
|
|
5547
|
+
} else if (startingChar === "<") {
|
|
5548
|
+
if (stream[this._current] === "=") {
|
|
5549
|
+
this._current++;
|
|
5550
|
+
return { type: TOK_LTE, value: "<=", start };
|
|
5551
|
+
} else {
|
|
5552
|
+
return { type: TOK_LT, value: "<", start };
|
|
5553
|
+
}
|
|
5554
|
+
} else if (startingChar === ">") {
|
|
5555
|
+
if (stream[this._current] === "=") {
|
|
5556
|
+
this._current++;
|
|
5557
|
+
return { type: TOK_GTE, value: ">=", start };
|
|
5558
|
+
} else {
|
|
5559
|
+
return { type: TOK_GT, value: ">", start };
|
|
5560
|
+
}
|
|
5561
|
+
} else if (startingChar === "=") {
|
|
5562
|
+
if (stream[this._current] === "=") {
|
|
5563
|
+
this._current++;
|
|
5564
|
+
return { type: TOK_EQ, value: "==", start };
|
|
5565
|
+
}
|
|
5566
|
+
}
|
|
6226
5567
|
},
|
|
6227
|
-
|
|
6228
|
-
|
|
6229
|
-
|
|
6230
|
-
|
|
6231
|
-
|
|
6232
|
-
|
|
6233
|
-
|
|
5568
|
+
_consumeLiteral: function(stream) {
|
|
5569
|
+
this._current++;
|
|
5570
|
+
var start = this._current;
|
|
5571
|
+
var maxLength = stream.length;
|
|
5572
|
+
var literal;
|
|
5573
|
+
while (stream[this._current] !== "`" && this._current < maxLength) {
|
|
5574
|
+
var current = this._current;
|
|
5575
|
+
if (stream[current] === "\\" && (stream[current + 1] === "\\" || stream[current + 1] === "`")) {
|
|
5576
|
+
current += 2;
|
|
5577
|
+
} else {
|
|
5578
|
+
current++;
|
|
5579
|
+
}
|
|
5580
|
+
this._current = current;
|
|
5581
|
+
}
|
|
5582
|
+
var literalString = trimLeft(stream.slice(start, this._current));
|
|
5583
|
+
literalString = literalString.replace("\\`", "`");
|
|
5584
|
+
if (this._looksLikeJSON(literalString)) {
|
|
5585
|
+
literal = JSON.parse(literalString);
|
|
5586
|
+
} else {
|
|
5587
|
+
literal = JSON.parse('"' + literalString + '"');
|
|
5588
|
+
}
|
|
5589
|
+
this._current++;
|
|
5590
|
+
return literal;
|
|
6234
5591
|
},
|
|
6235
|
-
|
|
6236
|
-
|
|
6237
|
-
|
|
6238
|
-
|
|
6239
|
-
|
|
6240
|
-
|
|
6241
|
-
|
|
6242
|
-
|
|
5592
|
+
_looksLikeJSON: function(literalString) {
|
|
5593
|
+
var startingChars = '[{"';
|
|
5594
|
+
var jsonLiterals = ["true", "false", "null"];
|
|
5595
|
+
var numberLooking = "-0123456789";
|
|
5596
|
+
if (literalString === "") {
|
|
5597
|
+
return false;
|
|
5598
|
+
} else if (startingChars.indexOf(literalString[0]) >= 0) {
|
|
5599
|
+
return true;
|
|
5600
|
+
} else if (jsonLiterals.indexOf(literalString) >= 0) {
|
|
5601
|
+
return true;
|
|
5602
|
+
} else if (numberLooking.indexOf(literalString[0]) >= 0) {
|
|
5603
|
+
try {
|
|
5604
|
+
JSON.parse(literalString);
|
|
5605
|
+
return true;
|
|
5606
|
+
} catch (ex) {
|
|
5607
|
+
return false;
|
|
5608
|
+
}
|
|
5609
|
+
} else {
|
|
5610
|
+
return false;
|
|
5611
|
+
}
|
|
5612
|
+
}
|
|
5613
|
+
};
|
|
5614
|
+
var bindingPower = {};
|
|
5615
|
+
bindingPower[TOK_EOF] = 0;
|
|
5616
|
+
bindingPower[TOK_UNQUOTEDIDENTIFIER] = 0;
|
|
5617
|
+
bindingPower[TOK_QUOTEDIDENTIFIER] = 0;
|
|
5618
|
+
bindingPower[TOK_RBRACKET] = 0;
|
|
5619
|
+
bindingPower[TOK_RPAREN] = 0;
|
|
5620
|
+
bindingPower[TOK_COMMA] = 0;
|
|
5621
|
+
bindingPower[TOK_RBRACE] = 0;
|
|
5622
|
+
bindingPower[TOK_NUMBER] = 0;
|
|
5623
|
+
bindingPower[TOK_CURRENT] = 0;
|
|
5624
|
+
bindingPower[TOK_EXPREF] = 0;
|
|
5625
|
+
bindingPower[TOK_PIPE] = 1;
|
|
5626
|
+
bindingPower[TOK_OR] = 2;
|
|
5627
|
+
bindingPower[TOK_AND] = 3;
|
|
5628
|
+
bindingPower[TOK_EQ] = 5;
|
|
5629
|
+
bindingPower[TOK_GT] = 5;
|
|
5630
|
+
bindingPower[TOK_LT] = 5;
|
|
5631
|
+
bindingPower[TOK_GTE] = 5;
|
|
5632
|
+
bindingPower[TOK_LTE] = 5;
|
|
5633
|
+
bindingPower[TOK_NE] = 5;
|
|
5634
|
+
bindingPower[TOK_FLATTEN] = 9;
|
|
5635
|
+
bindingPower[TOK_STAR] = 20;
|
|
5636
|
+
bindingPower[TOK_FILTER] = 21;
|
|
5637
|
+
bindingPower[TOK_DOT] = 40;
|
|
5638
|
+
bindingPower[TOK_NOT] = 45;
|
|
5639
|
+
bindingPower[TOK_LBRACE] = 50;
|
|
5640
|
+
bindingPower[TOK_LBRACKET] = 55;
|
|
5641
|
+
bindingPower[TOK_LPAREN] = 60;
|
|
5642
|
+
function Parser() {}
|
|
5643
|
+
Parser.prototype = {
|
|
5644
|
+
parse: function(expression) {
|
|
5645
|
+
this._loadTokens(expression);
|
|
5646
|
+
this.index = 0;
|
|
5647
|
+
var ast = this.expression(0);
|
|
5648
|
+
if (this._lookahead(0) !== TOK_EOF) {
|
|
5649
|
+
var t = this._lookaheadToken(0);
|
|
5650
|
+
var error = new Error("Unexpected token type: " + t.type + ", value: " + t.value);
|
|
5651
|
+
error.name = "ParserError";
|
|
5652
|
+
throw error;
|
|
5653
|
+
}
|
|
5654
|
+
return ast;
|
|
6243
5655
|
},
|
|
6244
|
-
|
|
6245
|
-
|
|
6246
|
-
|
|
5656
|
+
_loadTokens: function(expression) {
|
|
5657
|
+
var lexer = new Lexer;
|
|
5658
|
+
var tokens = lexer.tokenize(expression);
|
|
5659
|
+
tokens.push({ type: TOK_EOF, value: "", start: expression.length });
|
|
5660
|
+
this.tokens = tokens;
|
|
6247
5661
|
},
|
|
6248
|
-
|
|
6249
|
-
|
|
6250
|
-
|
|
5662
|
+
expression: function(rbp) {
|
|
5663
|
+
var leftToken = this._lookaheadToken(0);
|
|
5664
|
+
this._advance();
|
|
5665
|
+
var left = this.nud(leftToken);
|
|
5666
|
+
var currentToken = this._lookahead(0);
|
|
5667
|
+
while (rbp < bindingPower[currentToken]) {
|
|
5668
|
+
this._advance();
|
|
5669
|
+
left = this.led(currentToken, left);
|
|
5670
|
+
currentToken = this._lookahead(0);
|
|
5671
|
+
}
|
|
5672
|
+
return left;
|
|
6251
5673
|
},
|
|
6252
|
-
|
|
6253
|
-
|
|
6254
|
-
_signature: [{ types: [3] }, { types: [6] }]
|
|
5674
|
+
_lookahead: function(number) {
|
|
5675
|
+
return this.tokens[this.index + number].type;
|
|
6255
5676
|
},
|
|
6256
|
-
|
|
6257
|
-
|
|
6258
|
-
_signature: [
|
|
6259
|
-
{ types: [2] },
|
|
6260
|
-
{ types: [2] },
|
|
6261
|
-
{ types: [0], optional: true }
|
|
6262
|
-
]
|
|
5677
|
+
_lookaheadToken: function(number) {
|
|
5678
|
+
return this.tokens[this.index + number];
|
|
6263
5679
|
},
|
|
6264
|
-
|
|
6265
|
-
|
|
6266
|
-
_signature: [{ types: [2] }, { types: [2] }]
|
|
5680
|
+
_advance: function() {
|
|
5681
|
+
this.index++;
|
|
6267
5682
|
},
|
|
6268
|
-
|
|
6269
|
-
|
|
6270
|
-
|
|
6271
|
-
|
|
6272
|
-
|
|
6273
|
-
|
|
6274
|
-
|
|
5683
|
+
nud: function(token) {
|
|
5684
|
+
var left;
|
|
5685
|
+
var right;
|
|
5686
|
+
var expression;
|
|
5687
|
+
switch (token.type) {
|
|
5688
|
+
case TOK_LITERAL:
|
|
5689
|
+
return { type: "Literal", value: token.value };
|
|
5690
|
+
case TOK_UNQUOTEDIDENTIFIER:
|
|
5691
|
+
return { type: "Field", name: token.value };
|
|
5692
|
+
case TOK_QUOTEDIDENTIFIER:
|
|
5693
|
+
var node = { type: "Field", name: token.value };
|
|
5694
|
+
if (this._lookahead(0) === TOK_LPAREN) {
|
|
5695
|
+
throw new Error("Quoted identifier not allowed for function names.");
|
|
5696
|
+
}
|
|
5697
|
+
return node;
|
|
5698
|
+
case TOK_NOT:
|
|
5699
|
+
right = this.expression(bindingPower.Not);
|
|
5700
|
+
return { type: "NotExpression", children: [right] };
|
|
5701
|
+
case TOK_STAR:
|
|
5702
|
+
left = { type: "Identity" };
|
|
5703
|
+
right = null;
|
|
5704
|
+
if (this._lookahead(0) === TOK_RBRACKET) {
|
|
5705
|
+
right = { type: "Identity" };
|
|
5706
|
+
} else {
|
|
5707
|
+
right = this._parseProjectionRHS(bindingPower.Star);
|
|
5708
|
+
}
|
|
5709
|
+
return { type: "ValueProjection", children: [left, right] };
|
|
5710
|
+
case TOK_FILTER:
|
|
5711
|
+
return this.led(token.type, { type: "Identity" });
|
|
5712
|
+
case TOK_LBRACE:
|
|
5713
|
+
return this._parseMultiselectHash();
|
|
5714
|
+
case TOK_FLATTEN:
|
|
5715
|
+
left = { type: TOK_FLATTEN, children: [{ type: "Identity" }] };
|
|
5716
|
+
right = this._parseProjectionRHS(bindingPower.Flatten);
|
|
5717
|
+
return { type: "Projection", children: [left, right] };
|
|
5718
|
+
case TOK_LBRACKET:
|
|
5719
|
+
if (this._lookahead(0) === TOK_NUMBER || this._lookahead(0) === TOK_COLON) {
|
|
5720
|
+
right = this._parseIndexExpression();
|
|
5721
|
+
return this._projectIfSlice({ type: "Identity" }, right);
|
|
5722
|
+
} else if (this._lookahead(0) === TOK_STAR && this._lookahead(1) === TOK_RBRACKET) {
|
|
5723
|
+
this._advance();
|
|
5724
|
+
this._advance();
|
|
5725
|
+
right = this._parseProjectionRHS(bindingPower.Star);
|
|
5726
|
+
return {
|
|
5727
|
+
type: "Projection",
|
|
5728
|
+
children: [{ type: "Identity" }, right]
|
|
5729
|
+
};
|
|
5730
|
+
}
|
|
5731
|
+
return this._parseMultiselectList();
|
|
5732
|
+
case TOK_CURRENT:
|
|
5733
|
+
return { type: TOK_CURRENT };
|
|
5734
|
+
case TOK_EXPREF:
|
|
5735
|
+
expression = this.expression(bindingPower.Expref);
|
|
5736
|
+
return { type: "ExpressionReference", children: [expression] };
|
|
5737
|
+
case TOK_LPAREN:
|
|
5738
|
+
var args = [];
|
|
5739
|
+
while (this._lookahead(0) !== TOK_RPAREN) {
|
|
5740
|
+
if (this._lookahead(0) === TOK_CURRENT) {
|
|
5741
|
+
expression = { type: TOK_CURRENT };
|
|
5742
|
+
this._advance();
|
|
5743
|
+
} else {
|
|
5744
|
+
expression = this.expression(0);
|
|
5745
|
+
}
|
|
5746
|
+
args.push(expression);
|
|
5747
|
+
}
|
|
5748
|
+
this._match(TOK_RPAREN);
|
|
5749
|
+
return args[0];
|
|
5750
|
+
default:
|
|
5751
|
+
this._errorToken(token);
|
|
5752
|
+
}
|
|
5753
|
+
},
|
|
5754
|
+
led: function(tokenName, left) {
|
|
5755
|
+
var right;
|
|
5756
|
+
switch (tokenName) {
|
|
5757
|
+
case TOK_DOT:
|
|
5758
|
+
var rbp = bindingPower.Dot;
|
|
5759
|
+
if (this._lookahead(0) !== TOK_STAR) {
|
|
5760
|
+
right = this._parseDotRHS(rbp);
|
|
5761
|
+
return { type: "Subexpression", children: [left, right] };
|
|
5762
|
+
}
|
|
5763
|
+
this._advance();
|
|
5764
|
+
right = this._parseProjectionRHS(rbp);
|
|
5765
|
+
return { type: "ValueProjection", children: [left, right] };
|
|
5766
|
+
case TOK_PIPE:
|
|
5767
|
+
right = this.expression(bindingPower.Pipe);
|
|
5768
|
+
return { type: TOK_PIPE, children: [left, right] };
|
|
5769
|
+
case TOK_OR:
|
|
5770
|
+
right = this.expression(bindingPower.Or);
|
|
5771
|
+
return { type: "OrExpression", children: [left, right] };
|
|
5772
|
+
case TOK_AND:
|
|
5773
|
+
right = this.expression(bindingPower.And);
|
|
5774
|
+
return { type: "AndExpression", children: [left, right] };
|
|
5775
|
+
case TOK_LPAREN:
|
|
5776
|
+
var name = left.name;
|
|
5777
|
+
var args = [];
|
|
5778
|
+
var expression, node;
|
|
5779
|
+
while (this._lookahead(0) !== TOK_RPAREN) {
|
|
5780
|
+
if (this._lookahead(0) === TOK_CURRENT) {
|
|
5781
|
+
expression = { type: TOK_CURRENT };
|
|
5782
|
+
this._advance();
|
|
5783
|
+
} else {
|
|
5784
|
+
expression = this.expression(0);
|
|
5785
|
+
}
|
|
5786
|
+
if (this._lookahead(0) === TOK_COMMA) {
|
|
5787
|
+
this._match(TOK_COMMA);
|
|
5788
|
+
}
|
|
5789
|
+
args.push(expression);
|
|
5790
|
+
}
|
|
5791
|
+
this._match(TOK_RPAREN);
|
|
5792
|
+
node = { type: "Function", name, children: args };
|
|
5793
|
+
return node;
|
|
5794
|
+
case TOK_FILTER:
|
|
5795
|
+
var condition = this.expression(0);
|
|
5796
|
+
this._match(TOK_RBRACKET);
|
|
5797
|
+
if (this._lookahead(0) === TOK_FLATTEN) {
|
|
5798
|
+
right = { type: "Identity" };
|
|
5799
|
+
} else {
|
|
5800
|
+
right = this._parseProjectionRHS(bindingPower.Filter);
|
|
5801
|
+
}
|
|
5802
|
+
return { type: "FilterProjection", children: [left, right, condition] };
|
|
5803
|
+
case TOK_FLATTEN:
|
|
5804
|
+
var leftNode = { type: TOK_FLATTEN, children: [left] };
|
|
5805
|
+
var rightNode = this._parseProjectionRHS(bindingPower.Flatten);
|
|
5806
|
+
return { type: "Projection", children: [leftNode, rightNode] };
|
|
5807
|
+
case TOK_EQ:
|
|
5808
|
+
case TOK_NE:
|
|
5809
|
+
case TOK_GT:
|
|
5810
|
+
case TOK_GTE:
|
|
5811
|
+
case TOK_LT:
|
|
5812
|
+
case TOK_LTE:
|
|
5813
|
+
return this._parseComparator(left, tokenName);
|
|
5814
|
+
case TOK_LBRACKET:
|
|
5815
|
+
var token = this._lookaheadToken(0);
|
|
5816
|
+
if (token.type === TOK_NUMBER || token.type === TOK_COLON) {
|
|
5817
|
+
right = this._parseIndexExpression();
|
|
5818
|
+
return this._projectIfSlice(left, right);
|
|
5819
|
+
}
|
|
5820
|
+
this._match(TOK_STAR);
|
|
5821
|
+
this._match(TOK_RBRACKET);
|
|
5822
|
+
right = this._parseProjectionRHS(bindingPower.Star);
|
|
5823
|
+
return { type: "Projection", children: [left, right] };
|
|
5824
|
+
default:
|
|
5825
|
+
this._errorToken(this._lookaheadToken(0));
|
|
5826
|
+
}
|
|
6275
5827
|
},
|
|
6276
|
-
|
|
6277
|
-
|
|
6278
|
-
|
|
5828
|
+
_match: function(tokenType) {
|
|
5829
|
+
if (this._lookahead(0) === tokenType) {
|
|
5830
|
+
this._advance();
|
|
5831
|
+
} else {
|
|
5832
|
+
var t = this._lookaheadToken(0);
|
|
5833
|
+
var error = new Error("Expected " + tokenType + ", got: " + t.type);
|
|
5834
|
+
error.name = "ParserError";
|
|
5835
|
+
throw error;
|
|
5836
|
+
}
|
|
6279
5837
|
},
|
|
6280
|
-
|
|
6281
|
-
|
|
6282
|
-
|
|
5838
|
+
_errorToken: function(token) {
|
|
5839
|
+
var error = new Error("Invalid token (" + token.type + '): "' + token.value + '"');
|
|
5840
|
+
error.name = "ParserError";
|
|
5841
|
+
throw error;
|
|
6283
5842
|
},
|
|
6284
|
-
|
|
6285
|
-
|
|
6286
|
-
|
|
6287
|
-
|
|
6288
|
-
|
|
6289
|
-
|
|
6290
|
-
|
|
6291
|
-
|
|
6292
|
-
|
|
6293
|
-
|
|
6294
|
-
|
|
6295
|
-
|
|
6296
|
-
|
|
6297
|
-
|
|
6298
|
-
|
|
6299
|
-
|
|
6300
|
-
|
|
6301
|
-
|
|
6302
|
-
|
|
6303
|
-
|
|
6304
|
-
|
|
6305
|
-
|
|
6306
|
-
|
|
6307
|
-
|
|
6308
|
-
|
|
6309
|
-
|
|
6310
|
-
|
|
6311
|
-
|
|
6312
|
-
|
|
6313
|
-
|
|
6314
|
-
|
|
6315
|
-
|
|
6316
|
-
|
|
6317
|
-
|
|
6318
|
-
|
|
6319
|
-
|
|
6320
|
-
|
|
6321
|
-
|
|
6322
|
-
|
|
6323
|
-
|
|
6324
|
-
_func: customFunction.bind(this),
|
|
6325
|
-
_signature: signature
|
|
6326
|
-
};
|
|
6327
|
-
this._customFunctions.add(name);
|
|
6328
|
-
const message = exists ? `Function ${name}() overridden successfully` : `Function ${name}() registered successfully`;
|
|
6329
|
-
return { success: true, message };
|
|
6330
|
-
}
|
|
6331
|
-
register(name, customFunction, signature, options = {}) {
|
|
6332
|
-
return this._registerInternal(name, customFunction, signature, options);
|
|
6333
|
-
}
|
|
6334
|
-
unregister(name) {
|
|
6335
|
-
if (!this._customFunctions.has(name)) {
|
|
6336
|
-
return false;
|
|
6337
|
-
}
|
|
6338
|
-
delete this._functionTable[name];
|
|
6339
|
-
this._customFunctions.delete(name);
|
|
6340
|
-
return true;
|
|
6341
|
-
}
|
|
6342
|
-
isRegistered(name) {
|
|
6343
|
-
return name in this._functionTable;
|
|
6344
|
-
}
|
|
6345
|
-
getRegistered() {
|
|
6346
|
-
return Object.keys(this._functionTable);
|
|
6347
|
-
}
|
|
6348
|
-
getCustomFunctions() {
|
|
6349
|
-
return Array.from(this._customFunctions);
|
|
6350
|
-
}
|
|
6351
|
-
clearCustomFunctions() {
|
|
6352
|
-
for (const name of this._customFunctions) {
|
|
6353
|
-
delete this._functionTable[name];
|
|
6354
|
-
}
|
|
6355
|
-
this._customFunctions.clear();
|
|
6356
|
-
}
|
|
6357
|
-
callFunction(name, resolvedArgs) {
|
|
6358
|
-
const functionEntry = this._functionTable[name];
|
|
6359
|
-
if (functionEntry === undefined) {
|
|
6360
|
-
throw new Error(`Unknown function: ${name}()`);
|
|
6361
|
-
}
|
|
6362
|
-
this.validateArgs(name, resolvedArgs, functionEntry._signature);
|
|
6363
|
-
return functionEntry._func.call(this, resolvedArgs);
|
|
6364
|
-
}
|
|
6365
|
-
validateInputSignatures(name, signature) {
|
|
6366
|
-
for (let i = 0;i < signature.length; i += 1) {
|
|
6367
|
-
if ("variadic" in signature[i] && i !== signature.length - 1) {
|
|
6368
|
-
throw new Error(`Invalid arity: ${name}() 'variadic' argument ${i + 1} must occur last`);
|
|
6369
|
-
}
|
|
6370
|
-
}
|
|
6371
|
-
}
|
|
6372
|
-
validateArgs(name, args, signature) {
|
|
6373
|
-
this.validateInputSignatures(name, signature);
|
|
6374
|
-
this.validateArity(name, args, signature);
|
|
6375
|
-
this.validateTypes(name, args, signature);
|
|
6376
|
-
}
|
|
6377
|
-
validateArity(name, args, signature) {
|
|
6378
|
-
const numberOfRequiredArgs = signature.filter((argSignature) => !(argSignature.optional ?? false)).length;
|
|
6379
|
-
const lastArgIsVariadic = signature[signature.length - 1]?.variadic ?? false;
|
|
6380
|
-
const tooFewArgs = args.length < numberOfRequiredArgs;
|
|
6381
|
-
const tooManyArgs = args.length > signature.length;
|
|
6382
|
-
if (lastArgIsVariadic && tooFewArgs || !lastArgIsVariadic && (tooFewArgs || tooManyArgs)) {
|
|
6383
|
-
const tooFewModifier = tooFewArgs && (!lastArgIsVariadic && numberOfRequiredArgs > 1 || lastArgIsVariadic) ? "at least " : "";
|
|
6384
|
-
const pluralized = signature.length > 1;
|
|
6385
|
-
throw new Error(`Invalid arity: ${name}() takes ${tooFewModifier}${numberOfRequiredArgs} argument${pluralized && "s" || ""} but received ${args.length}`);
|
|
6386
|
-
}
|
|
6387
|
-
}
|
|
6388
|
-
validateTypes(name, args, signature) {
|
|
6389
|
-
for (let i = 0;i < signature.length; i += 1) {
|
|
6390
|
-
const currentSpec = signature[i].types;
|
|
6391
|
-
const actualType = this.getTypeName(args[i]);
|
|
6392
|
-
if (actualType === undefined) {
|
|
6393
|
-
continue;
|
|
6394
|
-
}
|
|
6395
|
-
const typeMatched = currentSpec.some((expectedType) => this.typeMatches(actualType, expectedType, args[i]));
|
|
6396
|
-
if (!typeMatched) {
|
|
6397
|
-
const expected = currentSpec.map((typeId) => this.TYPE_NAME_TABLE[typeId]).join(" | ");
|
|
6398
|
-
throw new Error(`Invalid type: ${name}() expected argument ${i + 1} to be type (${expected}) but received type ${this.TYPE_NAME_TABLE[actualType]} instead.`);
|
|
6399
|
-
}
|
|
6400
|
-
}
|
|
6401
|
-
}
|
|
6402
|
-
typeMatches(actual, expected, argValue) {
|
|
6403
|
-
if (expected === 1) {
|
|
6404
|
-
return true;
|
|
6405
|
-
}
|
|
6406
|
-
if (expected === 9 || expected === 8 || expected === 10 || expected === 11 || expected === 3) {
|
|
6407
|
-
if (expected === 3) {
|
|
6408
|
-
return actual === 3;
|
|
6409
|
-
}
|
|
6410
|
-
if (actual === 3) {
|
|
6411
|
-
let subtype;
|
|
6412
|
-
if (expected === 8) {
|
|
6413
|
-
subtype = 0;
|
|
6414
|
-
} else if (expected === 10) {
|
|
6415
|
-
subtype = 4;
|
|
6416
|
-
} else if (expected === 9) {
|
|
6417
|
-
subtype = 2;
|
|
6418
|
-
} else if (expected === 11) {
|
|
6419
|
-
subtype = 3;
|
|
6420
|
-
}
|
|
6421
|
-
const array = argValue;
|
|
6422
|
-
for (let i = 0;i < array.length; i += 1) {
|
|
6423
|
-
const typeName = this.getTypeName(array[i]);
|
|
6424
|
-
if (typeName !== undefined && subtype !== undefined && !this.typeMatches(typeName, subtype, array[i])) {
|
|
6425
|
-
return false;
|
|
5843
|
+
_parseIndexExpression: function() {
|
|
5844
|
+
if (this._lookahead(0) === TOK_COLON || this._lookahead(1) === TOK_COLON) {
|
|
5845
|
+
return this._parseSliceExpression();
|
|
5846
|
+
} else {
|
|
5847
|
+
var node = {
|
|
5848
|
+
type: "Index",
|
|
5849
|
+
value: this._lookaheadToken(0).value
|
|
5850
|
+
};
|
|
5851
|
+
this._advance();
|
|
5852
|
+
this._match(TOK_RBRACKET);
|
|
5853
|
+
return node;
|
|
5854
|
+
}
|
|
5855
|
+
},
|
|
5856
|
+
_projectIfSlice: function(left, right) {
|
|
5857
|
+
var indexExpr = { type: "IndexExpression", children: [left, right] };
|
|
5858
|
+
if (right.type === "Slice") {
|
|
5859
|
+
return {
|
|
5860
|
+
type: "Projection",
|
|
5861
|
+
children: [indexExpr, this._parseProjectionRHS(bindingPower.Star)]
|
|
5862
|
+
};
|
|
5863
|
+
} else {
|
|
5864
|
+
return indexExpr;
|
|
5865
|
+
}
|
|
5866
|
+
},
|
|
5867
|
+
_parseSliceExpression: function() {
|
|
5868
|
+
var parts = [null, null, null];
|
|
5869
|
+
var index = 0;
|
|
5870
|
+
var currentToken = this._lookahead(0);
|
|
5871
|
+
while (currentToken !== TOK_RBRACKET && index < 3) {
|
|
5872
|
+
if (currentToken === TOK_COLON) {
|
|
5873
|
+
index++;
|
|
5874
|
+
this._advance();
|
|
5875
|
+
} else if (currentToken === TOK_NUMBER) {
|
|
5876
|
+
parts[index] = this._lookaheadToken(0).value;
|
|
5877
|
+
this._advance();
|
|
5878
|
+
} else {
|
|
5879
|
+
var t = this._lookahead(0);
|
|
5880
|
+
var error = new Error("Syntax error, unexpected token: " + t.value + "(" + t.type + ")");
|
|
5881
|
+
error.name = "Parsererror";
|
|
5882
|
+
throw error;
|
|
6426
5883
|
}
|
|
5884
|
+
currentToken = this._lookahead(0);
|
|
6427
5885
|
}
|
|
6428
|
-
|
|
6429
|
-
|
|
6430
|
-
|
|
6431
|
-
|
|
6432
|
-
|
|
6433
|
-
|
|
6434
|
-
|
|
6435
|
-
|
|
6436
|
-
|
|
6437
|
-
|
|
6438
|
-
|
|
6439
|
-
|
|
6440
|
-
|
|
6441
|
-
|
|
6442
|
-
|
|
6443
|
-
|
|
6444
|
-
|
|
6445
|
-
|
|
6446
|
-
|
|
6447
|
-
|
|
6448
|
-
|
|
6449
|
-
|
|
6450
|
-
|
|
6451
|
-
|
|
6452
|
-
|
|
6453
|
-
|
|
6454
|
-
|
|
6455
|
-
|
|
6456
|
-
|
|
6457
|
-
|
|
6458
|
-
|
|
6459
|
-
|
|
6460
|
-
|
|
6461
|
-
|
|
6462
|
-
|
|
6463
|
-
|
|
6464
|
-
|
|
6465
|
-
|
|
6466
|
-
|
|
6467
|
-
return current;
|
|
6468
|
-
};
|
|
6469
|
-
return keyFunc;
|
|
6470
|
-
}
|
|
6471
|
-
functionAvg = ([inputArray]) => {
|
|
6472
|
-
if (!inputArray || inputArray.length == 0) {
|
|
6473
|
-
return null;
|
|
6474
|
-
}
|
|
6475
|
-
let sum = 0;
|
|
6476
|
-
for (let i = 0;i < inputArray.length; i += 1) {
|
|
6477
|
-
sum += inputArray[i];
|
|
6478
|
-
}
|
|
6479
|
-
return sum / inputArray.length;
|
|
6480
|
-
};
|
|
6481
|
-
functionContains = ([
|
|
6482
|
-
searchable,
|
|
6483
|
-
searchValue
|
|
6484
|
-
]) => {
|
|
6485
|
-
if (Array.isArray(searchable)) {
|
|
6486
|
-
const array = searchable;
|
|
6487
|
-
return array.includes(searchValue);
|
|
6488
|
-
}
|
|
6489
|
-
if (typeof searchable === "string") {
|
|
6490
|
-
const text = searchable;
|
|
6491
|
-
if (typeof searchValue === "string") {
|
|
6492
|
-
return text.includes(searchValue);
|
|
6493
|
-
}
|
|
6494
|
-
}
|
|
6495
|
-
return null;
|
|
6496
|
-
};
|
|
6497
|
-
functionEndsWith = (resolvedArgs) => {
|
|
6498
|
-
const [searchStr, suffix] = resolvedArgs;
|
|
6499
|
-
return searchStr.includes(suffix, searchStr.length - suffix.length);
|
|
6500
|
-
};
|
|
6501
|
-
functionFindFirst = this.createFindFunction(findFirst2);
|
|
6502
|
-
functionFindLast = this.createFindFunction(findLast);
|
|
6503
|
-
createFindFunction(findFn) {
|
|
6504
|
-
return (resolvedArgs) => {
|
|
6505
|
-
const subject = resolvedArgs[0];
|
|
6506
|
-
const search2 = resolvedArgs[1];
|
|
6507
|
-
const start = resolvedArgs.length > 2 ? resolvedArgs[2] : undefined;
|
|
6508
|
-
const end = resolvedArgs.length > 3 ? resolvedArgs[3] : undefined;
|
|
6509
|
-
return findFn(subject, search2, start, end);
|
|
6510
|
-
};
|
|
6511
|
-
}
|
|
6512
|
-
functionFromItems = ([array]) => {
|
|
6513
|
-
array.map((pair) => {
|
|
6514
|
-
if (pair.length != 2 || typeof pair[0] !== "string") {
|
|
6515
|
-
throw new Error("invalid value, each array must contain two elements, a pair of string and value");
|
|
6516
|
-
}
|
|
6517
|
-
});
|
|
6518
|
-
return Object.fromEntries(array);
|
|
6519
|
-
};
|
|
6520
|
-
functionGroupBy = ([array, exprefNode]) => {
|
|
6521
|
-
const keyFunction = this.createKeyFunction(exprefNode, [2]);
|
|
6522
|
-
return array.reduce((acc, cur) => {
|
|
6523
|
-
const k = keyFunction(cur ?? {});
|
|
6524
|
-
const target = acc[k] = acc[k] || [];
|
|
6525
|
-
target.push(cur);
|
|
6526
|
-
return acc;
|
|
6527
|
-
}, {});
|
|
6528
|
-
};
|
|
6529
|
-
functionItems = ([inputValue]) => {
|
|
6530
|
-
return Object.entries(inputValue);
|
|
6531
|
-
};
|
|
6532
|
-
functionJoin = (resolvedArgs) => {
|
|
6533
|
-
const [joinChar, listJoin] = resolvedArgs;
|
|
6534
|
-
return listJoin.join(joinChar);
|
|
6535
|
-
};
|
|
6536
|
-
functionLength = ([inputValue]) => {
|
|
6537
|
-
if (typeof inputValue === "string") {
|
|
6538
|
-
return new Text(inputValue).length;
|
|
6539
|
-
}
|
|
6540
|
-
if (Array.isArray(inputValue)) {
|
|
6541
|
-
return inputValue.length;
|
|
6542
|
-
}
|
|
6543
|
-
return Object.keys(inputValue).length;
|
|
6544
|
-
};
|
|
6545
|
-
functionMap = ([exprefNode, elements]) => {
|
|
6546
|
-
if (!this._interpreter) {
|
|
6547
|
-
return [];
|
|
6548
|
-
}
|
|
6549
|
-
const mapped = [];
|
|
6550
|
-
const interpreter = this._interpreter;
|
|
6551
|
-
for (let i = 0;i < elements.length; i += 1) {
|
|
6552
|
-
mapped.push(interpreter.visit(exprefNode, elements[i]));
|
|
6553
|
-
}
|
|
6554
|
-
return mapped;
|
|
6555
|
-
};
|
|
6556
|
-
functionMax = ([inputValue]) => {
|
|
6557
|
-
if (!inputValue.length) {
|
|
6558
|
-
return null;
|
|
6559
|
-
}
|
|
6560
|
-
const typeName = this.getTypeName(inputValue[0]);
|
|
6561
|
-
if (typeName === 0) {
|
|
6562
|
-
return Math.max(...inputValue);
|
|
6563
|
-
}
|
|
6564
|
-
const elements = inputValue;
|
|
6565
|
-
let maxElement = elements[0];
|
|
6566
|
-
for (let i = 1;i < elements.length; i += 1) {
|
|
6567
|
-
if (maxElement.localeCompare(elements[i]) < 0) {
|
|
6568
|
-
maxElement = elements[i];
|
|
6569
|
-
}
|
|
6570
|
-
}
|
|
6571
|
-
return maxElement;
|
|
6572
|
-
};
|
|
6573
|
-
functionMaxBy = (resolvedArgs) => {
|
|
6574
|
-
const exprefNode = resolvedArgs[1];
|
|
6575
|
-
const resolvedArray = resolvedArgs[0];
|
|
6576
|
-
const keyFunction = this.createKeyFunction(exprefNode, [0, 2]);
|
|
6577
|
-
let maxNumber = -Infinity;
|
|
6578
|
-
let maxRecord;
|
|
6579
|
-
let current;
|
|
6580
|
-
for (let i = 0;i < resolvedArray.length; i += 1) {
|
|
6581
|
-
current = keyFunction && keyFunction(resolvedArray[i]);
|
|
6582
|
-
if (current !== undefined && current > maxNumber) {
|
|
6583
|
-
maxNumber = current;
|
|
6584
|
-
maxRecord = resolvedArray[i];
|
|
6585
|
-
}
|
|
6586
|
-
}
|
|
6587
|
-
return maxRecord || null;
|
|
6588
|
-
};
|
|
6589
|
-
functionMerge = (resolvedArgs) => {
|
|
6590
|
-
let merged = {};
|
|
6591
|
-
for (let i = 0;i < resolvedArgs.length; i += 1) {
|
|
6592
|
-
const current = resolvedArgs[i];
|
|
6593
|
-
merged = Object.assign(merged, current);
|
|
6594
|
-
}
|
|
6595
|
-
return merged;
|
|
6596
|
-
};
|
|
6597
|
-
functionMin = ([inputValue]) => {
|
|
6598
|
-
if (!inputValue.length) {
|
|
6599
|
-
return null;
|
|
6600
|
-
}
|
|
6601
|
-
const typeName = this.getTypeName(inputValue[0]);
|
|
6602
|
-
if (typeName === 0) {
|
|
6603
|
-
return Math.min(...inputValue);
|
|
6604
|
-
}
|
|
6605
|
-
const elements = inputValue;
|
|
6606
|
-
let minElement = elements[0];
|
|
6607
|
-
for (let i = 1;i < elements.length; i += 1) {
|
|
6608
|
-
if (elements[i].localeCompare(minElement) < 0) {
|
|
6609
|
-
minElement = elements[i];
|
|
6610
|
-
}
|
|
6611
|
-
}
|
|
6612
|
-
return minElement;
|
|
6613
|
-
};
|
|
6614
|
-
functionMinBy = (resolvedArgs) => {
|
|
6615
|
-
const exprefNode = resolvedArgs[1];
|
|
6616
|
-
const resolvedArray = resolvedArgs[0];
|
|
6617
|
-
const keyFunction = this.createKeyFunction(exprefNode, [0, 2]);
|
|
6618
|
-
let minNumber = Infinity;
|
|
6619
|
-
let minRecord;
|
|
6620
|
-
let current;
|
|
6621
|
-
for (let i = 0;i < resolvedArray.length; i += 1) {
|
|
6622
|
-
current = keyFunction && keyFunction(resolvedArray[i]);
|
|
6623
|
-
if (current !== undefined && current < minNumber) {
|
|
6624
|
-
minNumber = current;
|
|
6625
|
-
minRecord = resolvedArray[i];
|
|
6626
|
-
}
|
|
6627
|
-
}
|
|
6628
|
-
return minRecord || null;
|
|
6629
|
-
};
|
|
6630
|
-
functionNotNull = (resolvedArgs) => {
|
|
6631
|
-
for (let i = 0;i < resolvedArgs.length; i += 1) {
|
|
6632
|
-
if (this.getTypeName(resolvedArgs[i]) !== 7) {
|
|
6633
|
-
return resolvedArgs[i];
|
|
6634
|
-
}
|
|
6635
|
-
}
|
|
6636
|
-
return null;
|
|
6637
|
-
};
|
|
6638
|
-
functionPadLeft = this.createPadFunction(padLeft);
|
|
6639
|
-
functionPadRight = this.createPadFunction(padRight);
|
|
6640
|
-
createPadFunction(padFn) {
|
|
6641
|
-
return (resolvedArgs) => {
|
|
6642
|
-
const subject = resolvedArgs[0];
|
|
6643
|
-
const width = resolvedArgs[1];
|
|
6644
|
-
const padding = resolvedArgs.length > 2 ? resolvedArgs[2] : undefined;
|
|
6645
|
-
return padFn(subject, width, padding);
|
|
6646
|
-
};
|
|
6647
|
-
}
|
|
6648
|
-
functionReplace = (resolvedArgs) => {
|
|
6649
|
-
const subject = resolvedArgs[0];
|
|
6650
|
-
const string = resolvedArgs[1];
|
|
6651
|
-
const by = resolvedArgs[2];
|
|
6652
|
-
return replace(subject, string, by, resolvedArgs.length > 3 ? resolvedArgs[3] : undefined);
|
|
6653
|
-
};
|
|
6654
|
-
functionSplit = (resolvedArgs) => {
|
|
6655
|
-
const subject = resolvedArgs[0];
|
|
6656
|
-
const search2 = resolvedArgs[1];
|
|
6657
|
-
return split(subject, search2, resolvedArgs.length > 2 ? resolvedArgs[2] : undefined);
|
|
6658
|
-
};
|
|
6659
|
-
functionReverse = ([inputValue]) => {
|
|
6660
|
-
const typeName = this.getTypeName(inputValue);
|
|
6661
|
-
if (typeName === 2) {
|
|
6662
|
-
return new Text(inputValue).reverse();
|
|
6663
|
-
}
|
|
6664
|
-
const reversedArray = inputValue.slice(0);
|
|
6665
|
-
reversedArray.reverse();
|
|
6666
|
-
return reversedArray;
|
|
6667
|
-
};
|
|
6668
|
-
functionSort = ([inputValue]) => {
|
|
6669
|
-
if (inputValue.length == 0) {
|
|
6670
|
-
return inputValue;
|
|
6671
|
-
}
|
|
6672
|
-
if (typeof inputValue[0] === "string") {
|
|
6673
|
-
return [...inputValue].sort(Text.comparer);
|
|
6674
|
-
}
|
|
6675
|
-
return [...inputValue].sort();
|
|
6676
|
-
};
|
|
6677
|
-
functionSortBy = (resolvedArgs) => {
|
|
6678
|
-
const sortedArray = resolvedArgs[0].slice(0);
|
|
6679
|
-
if (sortedArray.length === 0) {
|
|
6680
|
-
return sortedArray;
|
|
6681
|
-
}
|
|
6682
|
-
const interpreter = this._interpreter;
|
|
6683
|
-
const exprefNode = resolvedArgs[1];
|
|
6684
|
-
const requiredType = this.getTypeName(interpreter.visit(exprefNode, sortedArray[0]));
|
|
6685
|
-
if (requiredType !== undefined && ![0, 2].includes(requiredType)) {
|
|
6686
|
-
throw new Error(`Invalid type: unexpected type (${this.TYPE_NAME_TABLE[requiredType]})`);
|
|
6687
|
-
}
|
|
6688
|
-
function throwInvalidTypeError(rt, item) {
|
|
6689
|
-
throw new Error(`Invalid type: expected (${rt.TYPE_NAME_TABLE[requiredType]}), received ${rt.TYPE_NAME_TABLE[rt.getTypeName(item)]}`);
|
|
6690
|
-
}
|
|
6691
|
-
return sortedArray.sort((a, b) => {
|
|
6692
|
-
const exprA = interpreter.visit(exprefNode, a);
|
|
6693
|
-
const exprB = interpreter.visit(exprefNode, b);
|
|
6694
|
-
if (this.getTypeName(exprA) !== requiredType) {
|
|
6695
|
-
throwInvalidTypeError(this, exprA);
|
|
6696
|
-
} else if (this.getTypeName(exprB) !== requiredType) {
|
|
6697
|
-
throwInvalidTypeError(this, exprB);
|
|
6698
|
-
}
|
|
6699
|
-
if (requiredType === 2) {
|
|
6700
|
-
return Text.comparer(exprA, exprB);
|
|
6701
|
-
}
|
|
6702
|
-
return exprA - exprB;
|
|
6703
|
-
});
|
|
6704
|
-
};
|
|
6705
|
-
functionStartsWith = ([searchable, searchStr]) => {
|
|
6706
|
-
return searchable.startsWith(searchStr);
|
|
6707
|
-
};
|
|
6708
|
-
functionSum = ([inputValue]) => {
|
|
6709
|
-
return inputValue.reduce((x, y) => x + y, 0);
|
|
6710
|
-
};
|
|
6711
|
-
functionToArray = ([inputValue]) => {
|
|
6712
|
-
if (this.getTypeName(inputValue) === 3) {
|
|
6713
|
-
return inputValue;
|
|
6714
|
-
}
|
|
6715
|
-
return [inputValue];
|
|
6716
|
-
};
|
|
6717
|
-
functionToNumber = ([inputValue]) => {
|
|
6718
|
-
const typeName = this.getTypeName(inputValue);
|
|
6719
|
-
let convertedValue;
|
|
6720
|
-
if (typeName === 0) {
|
|
6721
|
-
return inputValue;
|
|
6722
|
-
}
|
|
6723
|
-
if (typeName === 2) {
|
|
6724
|
-
convertedValue = +inputValue;
|
|
6725
|
-
if (!isNaN(convertedValue)) {
|
|
6726
|
-
return convertedValue;
|
|
6727
|
-
}
|
|
6728
|
-
}
|
|
6729
|
-
return null;
|
|
6730
|
-
};
|
|
6731
|
-
functionToString = ([inputValue]) => {
|
|
6732
|
-
if (this.getTypeName(inputValue) === 2) {
|
|
6733
|
-
return inputValue;
|
|
6734
|
-
}
|
|
6735
|
-
return JSON.stringify(inputValue);
|
|
6736
|
-
};
|
|
6737
|
-
functionTrim = this.createTrimFunction(trim);
|
|
6738
|
-
functionTrimLeft = this.createTrimFunction(trimLeft);
|
|
6739
|
-
functionTrimRight = this.createTrimFunction(trimRight);
|
|
6740
|
-
createTrimFunction(trimFn) {
|
|
6741
|
-
return (resolvedArgs) => {
|
|
6742
|
-
const subject = resolvedArgs[0];
|
|
6743
|
-
const chars = resolvedArgs.length > 1 ? resolvedArgs[1] : undefined;
|
|
6744
|
-
return trimFn(subject, chars);
|
|
6745
|
-
};
|
|
6746
|
-
}
|
|
6747
|
-
functionType = ([inputValue]) => {
|
|
6748
|
-
switch (this.getTypeName(inputValue)) {
|
|
6749
|
-
case 0:
|
|
6750
|
-
return "number";
|
|
6751
|
-
case 2:
|
|
6752
|
-
return "string";
|
|
6753
|
-
case 3:
|
|
6754
|
-
return "array";
|
|
6755
|
-
case 4:
|
|
6756
|
-
return "object";
|
|
6757
|
-
case 5:
|
|
6758
|
-
return "boolean";
|
|
6759
|
-
case 7:
|
|
6760
|
-
return "null";
|
|
6761
|
-
default:
|
|
6762
|
-
throw new Error("invalid-type");
|
|
6763
|
-
}
|
|
6764
|
-
};
|
|
6765
|
-
functionZip = (array) => {
|
|
6766
|
-
const length = Math.min(...array.map((arr) => arr.length));
|
|
6767
|
-
const result = Array(length).fill(null).map((_, index) => array.map((arr) => arr[index]));
|
|
6768
|
-
return result;
|
|
6769
|
-
};
|
|
6770
|
-
}, ScopeChain = class _ScopeChain {
|
|
6771
|
-
inner = undefined;
|
|
6772
|
-
data = {};
|
|
6773
|
-
get currentScopeData() {
|
|
6774
|
-
return this.data;
|
|
6775
|
-
}
|
|
6776
|
-
withScope(data) {
|
|
6777
|
-
const outer = new _ScopeChain;
|
|
6778
|
-
outer.inner = this;
|
|
6779
|
-
outer.data = data;
|
|
6780
|
-
return outer;
|
|
6781
|
-
}
|
|
6782
|
-
getValue(identifier) {
|
|
6783
|
-
if (Object.prototype.hasOwnProperty.call(this.data, identifier)) {
|
|
6784
|
-
return this.data[identifier];
|
|
6785
|
-
}
|
|
6786
|
-
if (this.inner) {
|
|
6787
|
-
return this.inner.getValue(identifier);
|
|
6788
|
-
}
|
|
6789
|
-
return null;
|
|
6790
|
-
}
|
|
6791
|
-
}, emptyScopeChain, TreeInterpreter = class _TreeInterpreter {
|
|
6792
|
-
runtime;
|
|
6793
|
-
_rootValue = null;
|
|
6794
|
-
_scope;
|
|
6795
|
-
constructor() {
|
|
6796
|
-
this.runtime = new Runtime(this);
|
|
6797
|
-
this._scope = new ScopeChain;
|
|
6798
|
-
}
|
|
6799
|
-
withScope(scope) {
|
|
6800
|
-
const interpreter = new _TreeInterpreter;
|
|
6801
|
-
interpreter.runtime._functionTable = this.runtime._functionTable;
|
|
6802
|
-
interpreter._rootValue = this._rootValue;
|
|
6803
|
-
interpreter._scope = this._scope.withScope(scope);
|
|
6804
|
-
return interpreter;
|
|
6805
|
-
}
|
|
6806
|
-
search(node, value) {
|
|
6807
|
-
this._rootValue = value;
|
|
6808
|
-
this._scope = emptyScopeChain;
|
|
6809
|
-
return this.visit(node, value);
|
|
6810
|
-
}
|
|
6811
|
-
visit(node, value) {
|
|
6812
|
-
switch (node.type) {
|
|
6813
|
-
case "Ternary": {
|
|
6814
|
-
const condition = this.visit(node.condition, value);
|
|
6815
|
-
if (!isFalse(condition)) {
|
|
6816
|
-
return this.visit(node.trueExpr, value);
|
|
6817
|
-
}
|
|
6818
|
-
return this.visit(node.falseExpr, value);
|
|
6819
|
-
}
|
|
6820
|
-
case "Field":
|
|
6821
|
-
const identifier = node.name;
|
|
6822
|
-
if (value === null || typeof value !== "object" || Array.isArray(value)) {
|
|
6823
|
-
return null;
|
|
5886
|
+
this._match(TOK_RBRACKET);
|
|
5887
|
+
return {
|
|
5888
|
+
type: "Slice",
|
|
5889
|
+
children: parts
|
|
5890
|
+
};
|
|
5891
|
+
},
|
|
5892
|
+
_parseComparator: function(left, comparator) {
|
|
5893
|
+
var right = this.expression(bindingPower[comparator]);
|
|
5894
|
+
return { type: "Comparator", name: comparator, children: [left, right] };
|
|
5895
|
+
},
|
|
5896
|
+
_parseDotRHS: function(rbp) {
|
|
5897
|
+
var lookahead = this._lookahead(0);
|
|
5898
|
+
var exprTokens = [TOK_UNQUOTEDIDENTIFIER, TOK_QUOTEDIDENTIFIER, TOK_STAR];
|
|
5899
|
+
if (exprTokens.indexOf(lookahead) >= 0) {
|
|
5900
|
+
return this.expression(rbp);
|
|
5901
|
+
} else if (lookahead === TOK_LBRACKET) {
|
|
5902
|
+
this._match(TOK_LBRACKET);
|
|
5903
|
+
return this._parseMultiselectList();
|
|
5904
|
+
} else if (lookahead === TOK_LBRACE) {
|
|
5905
|
+
this._match(TOK_LBRACE);
|
|
5906
|
+
return this._parseMultiselectHash();
|
|
5907
|
+
}
|
|
5908
|
+
},
|
|
5909
|
+
_parseProjectionRHS: function(rbp) {
|
|
5910
|
+
var right;
|
|
5911
|
+
if (bindingPower[this._lookahead(0)] < 10) {
|
|
5912
|
+
right = { type: "Identity" };
|
|
5913
|
+
} else if (this._lookahead(0) === TOK_LBRACKET) {
|
|
5914
|
+
right = this.expression(rbp);
|
|
5915
|
+
} else if (this._lookahead(0) === TOK_FILTER) {
|
|
5916
|
+
right = this.expression(rbp);
|
|
5917
|
+
} else if (this._lookahead(0) === TOK_DOT) {
|
|
5918
|
+
this._match(TOK_DOT);
|
|
5919
|
+
right = this._parseDotRHS(rbp);
|
|
5920
|
+
} else {
|
|
5921
|
+
var t = this._lookaheadToken(0);
|
|
5922
|
+
var error = new Error("Sytanx error, unexpected token: " + t.value + "(" + t.type + ")");
|
|
5923
|
+
error.name = "ParserError";
|
|
5924
|
+
throw error;
|
|
6824
5925
|
}
|
|
6825
|
-
return
|
|
6826
|
-
|
|
6827
|
-
|
|
6828
|
-
|
|
6829
|
-
|
|
6830
|
-
|
|
6831
|
-
|
|
6832
|
-
|
|
6833
|
-
|
|
6834
|
-
|
|
6835
|
-
|
|
6836
|
-
|
|
6837
|
-
|
|
6838
|
-
|
|
6839
|
-
|
|
6840
|
-
|
|
6841
|
-
|
|
6842
|
-
|
|
6843
|
-
|
|
6844
|
-
|
|
6845
|
-
|
|
6846
|
-
|
|
5926
|
+
return right;
|
|
5927
|
+
},
|
|
5928
|
+
_parseMultiselectList: function() {
|
|
5929
|
+
var expressions = [];
|
|
5930
|
+
while (this._lookahead(0) !== TOK_RBRACKET) {
|
|
5931
|
+
var expression = this.expression(0);
|
|
5932
|
+
expressions.push(expression);
|
|
5933
|
+
if (this._lookahead(0) === TOK_COMMA) {
|
|
5934
|
+
this._match(TOK_COMMA);
|
|
5935
|
+
if (this._lookahead(0) === TOK_RBRACKET) {
|
|
5936
|
+
throw new Error("Unexpected token Rbracket");
|
|
5937
|
+
}
|
|
5938
|
+
}
|
|
5939
|
+
}
|
|
5940
|
+
this._match(TOK_RBRACKET);
|
|
5941
|
+
return { type: "MultiSelectList", children: expressions };
|
|
5942
|
+
},
|
|
5943
|
+
_parseMultiselectHash: function() {
|
|
5944
|
+
var pairs2 = [];
|
|
5945
|
+
var identifierTypes = [TOK_UNQUOTEDIDENTIFIER, TOK_QUOTEDIDENTIFIER];
|
|
5946
|
+
var keyToken, keyName, value, node;
|
|
5947
|
+
for (;; ) {
|
|
5948
|
+
keyToken = this._lookaheadToken(0);
|
|
5949
|
+
if (identifierTypes.indexOf(keyToken.type) < 0) {
|
|
5950
|
+
throw new Error("Expecting an identifier token, got: " + keyToken.type);
|
|
5951
|
+
}
|
|
5952
|
+
keyName = keyToken.value;
|
|
5953
|
+
this._advance();
|
|
5954
|
+
this._match(TOK_COLON);
|
|
5955
|
+
value = this.expression(0);
|
|
5956
|
+
node = { type: "KeyValuePair", name: keyName, value };
|
|
5957
|
+
pairs2.push(node);
|
|
5958
|
+
if (this._lookahead(0) === TOK_COMMA) {
|
|
5959
|
+
this._match(TOK_COMMA);
|
|
5960
|
+
} else if (this._lookahead(0) === TOK_RBRACE) {
|
|
5961
|
+
this._match(TOK_RBRACE);
|
|
5962
|
+
break;
|
|
5963
|
+
}
|
|
6847
5964
|
}
|
|
6848
|
-
return
|
|
6849
|
-
}
|
|
6850
|
-
case "IndexExpression":
|
|
6851
|
-
return this.visit(node.right, this.visit(node.left, value));
|
|
6852
|
-
case "Subexpression": {
|
|
6853
|
-
const result = this.visit(node.left, value);
|
|
6854
|
-
return result != null ? this.visit(node.right, result) ?? null : null;
|
|
5965
|
+
return { type: "MultiSelectHash", children: pairs2 };
|
|
6855
5966
|
}
|
|
6856
|
-
|
|
6857
|
-
|
|
6858
|
-
|
|
5967
|
+
};
|
|
5968
|
+
function TreeInterpreter(runtime) {
|
|
5969
|
+
this.runtime = runtime;
|
|
5970
|
+
}
|
|
5971
|
+
TreeInterpreter.prototype = {
|
|
5972
|
+
search: function(node, value) {
|
|
5973
|
+
return this.visit(node, value);
|
|
5974
|
+
},
|
|
5975
|
+
visit: function(node, value) {
|
|
5976
|
+
var matched, current, result, first, second, field, left, right, collected, i;
|
|
5977
|
+
switch (node.type) {
|
|
5978
|
+
case "Field":
|
|
5979
|
+
if (value !== null && isObject(value)) {
|
|
5980
|
+
field = value[node.name];
|
|
5981
|
+
if (field === undefined) {
|
|
5982
|
+
return null;
|
|
5983
|
+
} else {
|
|
5984
|
+
return field;
|
|
5985
|
+
}
|
|
5986
|
+
}
|
|
5987
|
+
return null;
|
|
5988
|
+
case "Subexpression":
|
|
5989
|
+
result = this.visit(node.children[0], value);
|
|
5990
|
+
for (i = 1;i < node.children.length; i++) {
|
|
5991
|
+
result = this.visit(node.children[1], result);
|
|
5992
|
+
if (result === null) {
|
|
5993
|
+
return null;
|
|
5994
|
+
}
|
|
5995
|
+
}
|
|
5996
|
+
return result;
|
|
5997
|
+
case "IndexExpression":
|
|
5998
|
+
left = this.visit(node.children[0], value);
|
|
5999
|
+
right = this.visit(node.children[1], left);
|
|
6000
|
+
return right;
|
|
6001
|
+
case "Index":
|
|
6002
|
+
if (!isArray(value)) {
|
|
6003
|
+
return null;
|
|
6004
|
+
}
|
|
6005
|
+
var index = node.value;
|
|
6006
|
+
if (index < 0) {
|
|
6007
|
+
index = value.length + index;
|
|
6008
|
+
}
|
|
6009
|
+
result = value[index];
|
|
6010
|
+
if (result === undefined) {
|
|
6011
|
+
result = null;
|
|
6012
|
+
}
|
|
6013
|
+
return result;
|
|
6014
|
+
case "Slice":
|
|
6015
|
+
if (!isArray(value)) {
|
|
6016
|
+
return null;
|
|
6017
|
+
}
|
|
6018
|
+
var sliceParams = node.children.slice(0);
|
|
6019
|
+
var computed = this.computeSliceParams(value.length, sliceParams);
|
|
6020
|
+
var start = computed[0];
|
|
6021
|
+
var stop = computed[1];
|
|
6022
|
+
var step = computed[2];
|
|
6023
|
+
result = [];
|
|
6024
|
+
if (step > 0) {
|
|
6025
|
+
for (i = start;i < stop; i += step) {
|
|
6026
|
+
result.push(value[i]);
|
|
6027
|
+
}
|
|
6028
|
+
} else {
|
|
6029
|
+
for (i = start;i > stop; i += step) {
|
|
6030
|
+
result.push(value[i]);
|
|
6031
|
+
}
|
|
6032
|
+
}
|
|
6033
|
+
return result;
|
|
6034
|
+
case "Projection":
|
|
6035
|
+
var base = this.visit(node.children[0], value);
|
|
6036
|
+
if (!isArray(base)) {
|
|
6037
|
+
return null;
|
|
6038
|
+
}
|
|
6039
|
+
collected = [];
|
|
6040
|
+
for (i = 0;i < base.length; i++) {
|
|
6041
|
+
current = this.visit(node.children[1], base[i]);
|
|
6042
|
+
if (current !== null) {
|
|
6043
|
+
collected.push(current);
|
|
6044
|
+
}
|
|
6045
|
+
}
|
|
6046
|
+
return collected;
|
|
6047
|
+
case "ValueProjection":
|
|
6048
|
+
base = this.visit(node.children[0], value);
|
|
6049
|
+
if (!isObject(base)) {
|
|
6050
|
+
return null;
|
|
6051
|
+
}
|
|
6052
|
+
collected = [];
|
|
6053
|
+
var values = objValues(base);
|
|
6054
|
+
for (i = 0;i < values.length; i++) {
|
|
6055
|
+
current = this.visit(node.children[1], values[i]);
|
|
6056
|
+
if (current !== null) {
|
|
6057
|
+
collected.push(current);
|
|
6058
|
+
}
|
|
6059
|
+
}
|
|
6060
|
+
return collected;
|
|
6061
|
+
case "FilterProjection":
|
|
6062
|
+
base = this.visit(node.children[0], value);
|
|
6063
|
+
if (!isArray(base)) {
|
|
6064
|
+
return null;
|
|
6065
|
+
}
|
|
6066
|
+
var filtered = [];
|
|
6067
|
+
var finalResults = [];
|
|
6068
|
+
for (i = 0;i < base.length; i++) {
|
|
6069
|
+
matched = this.visit(node.children[2], base[i]);
|
|
6070
|
+
if (!isFalse(matched)) {
|
|
6071
|
+
filtered.push(base[i]);
|
|
6072
|
+
}
|
|
6073
|
+
}
|
|
6074
|
+
for (var j = 0;j < filtered.length; j++) {
|
|
6075
|
+
current = this.visit(node.children[1], filtered[j]);
|
|
6076
|
+
if (current !== null) {
|
|
6077
|
+
finalResults.push(current);
|
|
6078
|
+
}
|
|
6079
|
+
}
|
|
6080
|
+
return finalResults;
|
|
6081
|
+
case "Comparator":
|
|
6082
|
+
first = this.visit(node.children[0], value);
|
|
6083
|
+
second = this.visit(node.children[1], value);
|
|
6084
|
+
switch (node.name) {
|
|
6085
|
+
case TOK_EQ:
|
|
6086
|
+
result = strictDeepEqual(first, second);
|
|
6087
|
+
break;
|
|
6088
|
+
case TOK_NE:
|
|
6089
|
+
result = !strictDeepEqual(first, second);
|
|
6090
|
+
break;
|
|
6091
|
+
case TOK_GT:
|
|
6092
|
+
result = first > second;
|
|
6093
|
+
break;
|
|
6094
|
+
case TOK_GTE:
|
|
6095
|
+
result = first >= second;
|
|
6096
|
+
break;
|
|
6097
|
+
case TOK_LT:
|
|
6098
|
+
result = first < second;
|
|
6099
|
+
break;
|
|
6100
|
+
case TOK_LTE:
|
|
6101
|
+
result = first <= second;
|
|
6102
|
+
break;
|
|
6103
|
+
default:
|
|
6104
|
+
throw new Error("Unknown comparator: " + node.name);
|
|
6105
|
+
}
|
|
6106
|
+
return result;
|
|
6107
|
+
case TOK_FLATTEN:
|
|
6108
|
+
var original = this.visit(node.children[0], value);
|
|
6109
|
+
if (!isArray(original)) {
|
|
6110
|
+
return null;
|
|
6111
|
+
}
|
|
6112
|
+
var merged = [];
|
|
6113
|
+
for (i = 0;i < original.length; i++) {
|
|
6114
|
+
current = original[i];
|
|
6115
|
+
if (isArray(current)) {
|
|
6116
|
+
merged.push.apply(merged, current);
|
|
6117
|
+
} else {
|
|
6118
|
+
merged.push(current);
|
|
6119
|
+
}
|
|
6120
|
+
}
|
|
6121
|
+
return merged;
|
|
6122
|
+
case "Identity":
|
|
6123
|
+
return value;
|
|
6124
|
+
case "MultiSelectList":
|
|
6125
|
+
if (value === null) {
|
|
6126
|
+
return null;
|
|
6127
|
+
}
|
|
6128
|
+
collected = [];
|
|
6129
|
+
for (i = 0;i < node.children.length; i++) {
|
|
6130
|
+
collected.push(this.visit(node.children[i], value));
|
|
6131
|
+
}
|
|
6132
|
+
return collected;
|
|
6133
|
+
case "MultiSelectHash":
|
|
6134
|
+
if (value === null) {
|
|
6135
|
+
return null;
|
|
6136
|
+
}
|
|
6137
|
+
collected = {};
|
|
6138
|
+
var child;
|
|
6139
|
+
for (i = 0;i < node.children.length; i++) {
|
|
6140
|
+
child = node.children[i];
|
|
6141
|
+
collected[child.name] = this.visit(child.value, value);
|
|
6142
|
+
}
|
|
6143
|
+
return collected;
|
|
6144
|
+
case "OrExpression":
|
|
6145
|
+
matched = this.visit(node.children[0], value);
|
|
6146
|
+
if (isFalse(matched)) {
|
|
6147
|
+
matched = this.visit(node.children[1], value);
|
|
6148
|
+
}
|
|
6149
|
+
return matched;
|
|
6150
|
+
case "AndExpression":
|
|
6151
|
+
first = this.visit(node.children[0], value);
|
|
6152
|
+
if (isFalse(first) === true) {
|
|
6153
|
+
return first;
|
|
6154
|
+
}
|
|
6155
|
+
return this.visit(node.children[1], value);
|
|
6156
|
+
case "NotExpression":
|
|
6157
|
+
first = this.visit(node.children[0], value);
|
|
6158
|
+
return isFalse(first);
|
|
6159
|
+
case "Literal":
|
|
6160
|
+
return node.value;
|
|
6161
|
+
case TOK_PIPE:
|
|
6162
|
+
left = this.visit(node.children[0], value);
|
|
6163
|
+
return this.visit(node.children[1], left);
|
|
6164
|
+
case TOK_CURRENT:
|
|
6165
|
+
return value;
|
|
6166
|
+
case "Function":
|
|
6167
|
+
var resolvedArgs = [];
|
|
6168
|
+
for (i = 0;i < node.children.length; i++) {
|
|
6169
|
+
resolvedArgs.push(this.visit(node.children[i], value));
|
|
6170
|
+
}
|
|
6171
|
+
return this.runtime.callFunction(node.name, resolvedArgs);
|
|
6172
|
+
case "ExpressionReference":
|
|
6173
|
+
var refNode = node.children[0];
|
|
6174
|
+
refNode.jmespathType = TOK_EXPREF;
|
|
6175
|
+
return refNode;
|
|
6176
|
+
default:
|
|
6177
|
+
throw new Error("Unknown node type: " + node.type);
|
|
6178
|
+
}
|
|
6179
|
+
},
|
|
6180
|
+
computeSliceParams: function(arrayLength, sliceParams) {
|
|
6181
|
+
var start = sliceParams[0];
|
|
6182
|
+
var stop = sliceParams[1];
|
|
6183
|
+
var step = sliceParams[2];
|
|
6184
|
+
var computed = [null, null, null];
|
|
6185
|
+
if (step === null) {
|
|
6186
|
+
step = 1;
|
|
6187
|
+
} else if (step === 0) {
|
|
6188
|
+
var error = new Error("Invalid slice, step cannot be 0");
|
|
6189
|
+
error.name = "RuntimeError";
|
|
6190
|
+
throw error;
|
|
6859
6191
|
}
|
|
6860
|
-
|
|
6861
|
-
|
|
6862
|
-
|
|
6863
|
-
|
|
6864
|
-
|
|
6865
|
-
return null;
|
|
6192
|
+
var stepValueNegative = step < 0 ? true : false;
|
|
6193
|
+
if (start === null) {
|
|
6194
|
+
start = stepValueNegative ? arrayLength - 1 : 0;
|
|
6195
|
+
} else {
|
|
6196
|
+
start = this.capSliceRange(arrayLength, start, step);
|
|
6866
6197
|
}
|
|
6867
|
-
|
|
6868
|
-
|
|
6869
|
-
const chars = [...value];
|
|
6870
|
-
const sliced = this.slice(chars, start, stop, step);
|
|
6871
|
-
return sliced.join("");
|
|
6198
|
+
if (stop === null) {
|
|
6199
|
+
stop = stepValueNegative ? -1 : arrayLength;
|
|
6872
6200
|
} else {
|
|
6873
|
-
|
|
6201
|
+
stop = this.capSliceRange(arrayLength, stop, step);
|
|
6202
|
+
}
|
|
6203
|
+
computed[0] = start;
|
|
6204
|
+
computed[1] = stop;
|
|
6205
|
+
computed[2] = step;
|
|
6206
|
+
return computed;
|
|
6207
|
+
},
|
|
6208
|
+
capSliceRange: function(arrayLength, actualValue, step) {
|
|
6209
|
+
if (actualValue < 0) {
|
|
6210
|
+
actualValue += arrayLength;
|
|
6211
|
+
if (actualValue < 0) {
|
|
6212
|
+
actualValue = step < 0 ? -1 : 0;
|
|
6213
|
+
}
|
|
6214
|
+
} else if (actualValue >= arrayLength) {
|
|
6215
|
+
actualValue = step < 0 ? arrayLength - 1 : arrayLength;
|
|
6216
|
+
}
|
|
6217
|
+
return actualValue;
|
|
6218
|
+
}
|
|
6219
|
+
};
|
|
6220
|
+
function Runtime(interpreter) {
|
|
6221
|
+
this._interpreter = interpreter;
|
|
6222
|
+
this.functionTable = {
|
|
6223
|
+
abs: { _func: this._functionAbs, _signature: [{ types: [TYPE_NUMBER] }] },
|
|
6224
|
+
avg: { _func: this._functionAvg, _signature: [{ types: [TYPE_ARRAY_NUMBER] }] },
|
|
6225
|
+
ceil: { _func: this._functionCeil, _signature: [{ types: [TYPE_NUMBER] }] },
|
|
6226
|
+
contains: {
|
|
6227
|
+
_func: this._functionContains,
|
|
6228
|
+
_signature: [
|
|
6229
|
+
{ types: [TYPE_STRING, TYPE_ARRAY] },
|
|
6230
|
+
{ types: [TYPE_ANY] }
|
|
6231
|
+
]
|
|
6232
|
+
},
|
|
6233
|
+
ends_with: {
|
|
6234
|
+
_func: this._functionEndsWith,
|
|
6235
|
+
_signature: [{ types: [TYPE_STRING] }, { types: [TYPE_STRING] }]
|
|
6236
|
+
},
|
|
6237
|
+
floor: { _func: this._functionFloor, _signature: [{ types: [TYPE_NUMBER] }] },
|
|
6238
|
+
length: {
|
|
6239
|
+
_func: this._functionLength,
|
|
6240
|
+
_signature: [{ types: [TYPE_STRING, TYPE_ARRAY, TYPE_OBJECT] }]
|
|
6241
|
+
},
|
|
6242
|
+
map: {
|
|
6243
|
+
_func: this._functionMap,
|
|
6244
|
+
_signature: [{ types: [TYPE_EXPREF] }, { types: [TYPE_ARRAY] }]
|
|
6245
|
+
},
|
|
6246
|
+
max: {
|
|
6247
|
+
_func: this._functionMax,
|
|
6248
|
+
_signature: [{ types: [TYPE_ARRAY_NUMBER, TYPE_ARRAY_STRING] }]
|
|
6249
|
+
},
|
|
6250
|
+
merge: {
|
|
6251
|
+
_func: this._functionMerge,
|
|
6252
|
+
_signature: [{ types: [TYPE_OBJECT], variadic: true }]
|
|
6253
|
+
},
|
|
6254
|
+
max_by: {
|
|
6255
|
+
_func: this._functionMaxBy,
|
|
6256
|
+
_signature: [{ types: [TYPE_ARRAY] }, { types: [TYPE_EXPREF] }]
|
|
6257
|
+
},
|
|
6258
|
+
sum: { _func: this._functionSum, _signature: [{ types: [TYPE_ARRAY_NUMBER] }] },
|
|
6259
|
+
starts_with: {
|
|
6260
|
+
_func: this._functionStartsWith,
|
|
6261
|
+
_signature: [{ types: [TYPE_STRING] }, { types: [TYPE_STRING] }]
|
|
6262
|
+
},
|
|
6263
|
+
min: {
|
|
6264
|
+
_func: this._functionMin,
|
|
6265
|
+
_signature: [{ types: [TYPE_ARRAY_NUMBER, TYPE_ARRAY_STRING] }]
|
|
6266
|
+
},
|
|
6267
|
+
min_by: {
|
|
6268
|
+
_func: this._functionMinBy,
|
|
6269
|
+
_signature: [{ types: [TYPE_ARRAY] }, { types: [TYPE_EXPREF] }]
|
|
6270
|
+
},
|
|
6271
|
+
type: { _func: this._functionType, _signature: [{ types: [TYPE_ANY] }] },
|
|
6272
|
+
keys: { _func: this._functionKeys, _signature: [{ types: [TYPE_OBJECT] }] },
|
|
6273
|
+
values: { _func: this._functionValues, _signature: [{ types: [TYPE_OBJECT] }] },
|
|
6274
|
+
sort: { _func: this._functionSort, _signature: [{ types: [TYPE_ARRAY_STRING, TYPE_ARRAY_NUMBER] }] },
|
|
6275
|
+
sort_by: {
|
|
6276
|
+
_func: this._functionSortBy,
|
|
6277
|
+
_signature: [{ types: [TYPE_ARRAY] }, { types: [TYPE_EXPREF] }]
|
|
6278
|
+
},
|
|
6279
|
+
join: {
|
|
6280
|
+
_func: this._functionJoin,
|
|
6281
|
+
_signature: [
|
|
6282
|
+
{ types: [TYPE_STRING] },
|
|
6283
|
+
{ types: [TYPE_ARRAY_STRING] }
|
|
6284
|
+
]
|
|
6285
|
+
},
|
|
6286
|
+
reverse: {
|
|
6287
|
+
_func: this._functionReverse,
|
|
6288
|
+
_signature: [{ types: [TYPE_STRING, TYPE_ARRAY] }]
|
|
6289
|
+
},
|
|
6290
|
+
to_array: { _func: this._functionToArray, _signature: [{ types: [TYPE_ANY] }] },
|
|
6291
|
+
to_string: { _func: this._functionToString, _signature: [{ types: [TYPE_ANY] }] },
|
|
6292
|
+
to_number: { _func: this._functionToNumber, _signature: [{ types: [TYPE_ANY] }] },
|
|
6293
|
+
not_null: {
|
|
6294
|
+
_func: this._functionNotNull,
|
|
6295
|
+
_signature: [{ types: [TYPE_ANY], variadic: true }]
|
|
6874
6296
|
}
|
|
6875
|
-
}
|
|
6876
|
-
|
|
6877
|
-
|
|
6878
|
-
|
|
6879
|
-
|
|
6880
|
-
|
|
6297
|
+
};
|
|
6298
|
+
}
|
|
6299
|
+
Runtime.prototype = {
|
|
6300
|
+
callFunction: function(name, resolvedArgs) {
|
|
6301
|
+
var functionEntry = this.functionTable[name];
|
|
6302
|
+
if (functionEntry === undefined) {
|
|
6303
|
+
throw new Error("Unknown function: " + name + "()");
|
|
6304
|
+
}
|
|
6305
|
+
this._validateArgs(name, resolvedArgs, functionEntry._signature);
|
|
6306
|
+
return functionEntry._func.call(this, resolvedArgs);
|
|
6307
|
+
},
|
|
6308
|
+
_validateArgs: function(name, args, signature) {
|
|
6309
|
+
var pluralized;
|
|
6310
|
+
if (signature[signature.length - 1].variadic) {
|
|
6311
|
+
if (args.length < signature.length) {
|
|
6312
|
+
pluralized = signature.length === 1 ? " argument" : " arguments";
|
|
6313
|
+
throw new Error("ArgumentError: " + name + "() " + "takes at least" + signature.length + pluralized + " but received " + args.length);
|
|
6314
|
+
}
|
|
6315
|
+
} else if (args.length !== signature.length) {
|
|
6316
|
+
pluralized = signature.length === 1 ? " argument" : " arguments";
|
|
6317
|
+
throw new Error("ArgumentError: " + name + "() " + "takes " + signature.length + pluralized + " but received " + args.length);
|
|
6318
|
+
}
|
|
6319
|
+
var currentSpec;
|
|
6320
|
+
var actualType;
|
|
6321
|
+
var typeMatched;
|
|
6322
|
+
for (var i = 0;i < signature.length; i++) {
|
|
6323
|
+
typeMatched = false;
|
|
6324
|
+
currentSpec = signature[i].types;
|
|
6325
|
+
actualType = this._getTypeName(args[i]);
|
|
6326
|
+
for (var j = 0;j < currentSpec.length; j++) {
|
|
6327
|
+
if (this._typeMatches(actualType, currentSpec[j], args[i])) {
|
|
6328
|
+
typeMatched = true;
|
|
6329
|
+
break;
|
|
6330
|
+
}
|
|
6331
|
+
}
|
|
6332
|
+
if (!typeMatched) {
|
|
6333
|
+
var expected = currentSpec.map(function(typeIdentifier) {
|
|
6334
|
+
return TYPE_NAME_TABLE[typeIdentifier];
|
|
6335
|
+
}).join(",");
|
|
6336
|
+
throw new Error("TypeError: " + name + "() " + "expected argument " + (i + 1) + " to be type " + expected + " but received type " + TYPE_NAME_TABLE[actualType] + " instead.");
|
|
6337
|
+
}
|
|
6881
6338
|
}
|
|
6882
|
-
|
|
6883
|
-
|
|
6884
|
-
|
|
6339
|
+
},
|
|
6340
|
+
_typeMatches: function(actual, expected, argValue) {
|
|
6341
|
+
if (expected === TYPE_ANY) {
|
|
6342
|
+
return true;
|
|
6885
6343
|
}
|
|
6886
|
-
if (
|
|
6887
|
-
|
|
6344
|
+
if (expected === TYPE_ARRAY_STRING || expected === TYPE_ARRAY_NUMBER || expected === TYPE_ARRAY) {
|
|
6345
|
+
if (expected === TYPE_ARRAY) {
|
|
6346
|
+
return actual === TYPE_ARRAY;
|
|
6347
|
+
} else if (actual === TYPE_ARRAY) {
|
|
6348
|
+
var subtype;
|
|
6349
|
+
if (expected === TYPE_ARRAY_NUMBER) {
|
|
6350
|
+
subtype = TYPE_NUMBER;
|
|
6351
|
+
} else if (expected === TYPE_ARRAY_STRING) {
|
|
6352
|
+
subtype = TYPE_STRING;
|
|
6353
|
+
}
|
|
6354
|
+
for (var i = 0;i < argValue.length; i++) {
|
|
6355
|
+
if (!this._typeMatches(this._getTypeName(argValue[i]), subtype, argValue[i])) {
|
|
6356
|
+
return false;
|
|
6357
|
+
}
|
|
6358
|
+
}
|
|
6359
|
+
return true;
|
|
6360
|
+
}
|
|
6361
|
+
} else {
|
|
6362
|
+
return actual === expected;
|
|
6363
|
+
}
|
|
6364
|
+
},
|
|
6365
|
+
_getTypeName: function(obj) {
|
|
6366
|
+
switch (Object.prototype.toString.call(obj)) {
|
|
6367
|
+
case "[object String]":
|
|
6368
|
+
return TYPE_STRING;
|
|
6369
|
+
case "[object Number]":
|
|
6370
|
+
return TYPE_NUMBER;
|
|
6371
|
+
case "[object Array]":
|
|
6372
|
+
return TYPE_ARRAY;
|
|
6373
|
+
case "[object Boolean]":
|
|
6374
|
+
return TYPE_BOOLEAN;
|
|
6375
|
+
case "[object Null]":
|
|
6376
|
+
return TYPE_NULL;
|
|
6377
|
+
case "[object Object]":
|
|
6378
|
+
if (obj.jmespathType === TOK_EXPREF) {
|
|
6379
|
+
return TYPE_EXPREF;
|
|
6380
|
+
} else {
|
|
6381
|
+
return TYPE_OBJECT;
|
|
6382
|
+
}
|
|
6888
6383
|
}
|
|
6889
|
-
|
|
6890
|
-
|
|
6891
|
-
|
|
6892
|
-
|
|
6893
|
-
|
|
6384
|
+
},
|
|
6385
|
+
_functionStartsWith: function(resolvedArgs) {
|
|
6386
|
+
return resolvedArgs[0].lastIndexOf(resolvedArgs[1]) === 0;
|
|
6387
|
+
},
|
|
6388
|
+
_functionEndsWith: function(resolvedArgs) {
|
|
6389
|
+
var searchStr = resolvedArgs[0];
|
|
6390
|
+
var suffix = resolvedArgs[1];
|
|
6391
|
+
return searchStr.indexOf(suffix, searchStr.length - suffix.length) !== -1;
|
|
6392
|
+
},
|
|
6393
|
+
_functionReverse: function(resolvedArgs) {
|
|
6394
|
+
var typeName = this._getTypeName(resolvedArgs[0]);
|
|
6395
|
+
if (typeName === TYPE_STRING) {
|
|
6396
|
+
var originalStr = resolvedArgs[0];
|
|
6397
|
+
var reversedStr = "";
|
|
6398
|
+
for (var i = originalStr.length - 1;i >= 0; i--) {
|
|
6399
|
+
reversedStr += originalStr[i];
|
|
6894
6400
|
}
|
|
6401
|
+
return reversedStr;
|
|
6402
|
+
} else {
|
|
6403
|
+
var reversedArray = resolvedArgs[0].slice(0);
|
|
6404
|
+
reversedArray.reverse();
|
|
6405
|
+
return reversedArray;
|
|
6895
6406
|
}
|
|
6896
|
-
|
|
6897
|
-
|
|
6898
|
-
|
|
6899
|
-
|
|
6900
|
-
|
|
6901
|
-
|
|
6902
|
-
|
|
6407
|
+
},
|
|
6408
|
+
_functionAbs: function(resolvedArgs) {
|
|
6409
|
+
return Math.abs(resolvedArgs[0]);
|
|
6410
|
+
},
|
|
6411
|
+
_functionCeil: function(resolvedArgs) {
|
|
6412
|
+
return Math.ceil(resolvedArgs[0]);
|
|
6413
|
+
},
|
|
6414
|
+
_functionAvg: function(resolvedArgs) {
|
|
6415
|
+
var sum = 0;
|
|
6416
|
+
var inputArray = resolvedArgs[0];
|
|
6417
|
+
for (var i = 0;i < inputArray.length; i++) {
|
|
6418
|
+
sum += inputArray[i];
|
|
6903
6419
|
}
|
|
6904
|
-
|
|
6905
|
-
|
|
6906
|
-
|
|
6907
|
-
|
|
6908
|
-
|
|
6909
|
-
|
|
6910
|
-
|
|
6420
|
+
return sum / inputArray.length;
|
|
6421
|
+
},
|
|
6422
|
+
_functionContains: function(resolvedArgs) {
|
|
6423
|
+
return resolvedArgs[0].indexOf(resolvedArgs[1]) >= 0;
|
|
6424
|
+
},
|
|
6425
|
+
_functionFloor: function(resolvedArgs) {
|
|
6426
|
+
return Math.floor(resolvedArgs[0]);
|
|
6427
|
+
},
|
|
6428
|
+
_functionLength: function(resolvedArgs) {
|
|
6429
|
+
if (!isObject(resolvedArgs[0])) {
|
|
6430
|
+
return resolvedArgs[0].length;
|
|
6431
|
+
} else {
|
|
6432
|
+
return Object.keys(resolvedArgs[0]).length;
|
|
6911
6433
|
}
|
|
6912
|
-
|
|
6913
|
-
|
|
6914
|
-
|
|
6915
|
-
|
|
6916
|
-
|
|
6917
|
-
|
|
6918
|
-
|
|
6434
|
+
},
|
|
6435
|
+
_functionMap: function(resolvedArgs) {
|
|
6436
|
+
var mapped = [];
|
|
6437
|
+
var interpreter = this._interpreter;
|
|
6438
|
+
var exprefNode = resolvedArgs[0];
|
|
6439
|
+
var elements = resolvedArgs[1];
|
|
6440
|
+
for (var i = 0;i < elements.length; i++) {
|
|
6441
|
+
mapped.push(interpreter.visit(exprefNode, elements[i]));
|
|
6919
6442
|
}
|
|
6920
|
-
|
|
6921
|
-
|
|
6922
|
-
|
|
6923
|
-
|
|
6924
|
-
|
|
6443
|
+
return mapped;
|
|
6444
|
+
},
|
|
6445
|
+
_functionMerge: function(resolvedArgs) {
|
|
6446
|
+
var merged = {};
|
|
6447
|
+
for (var i = 0;i < resolvedArgs.length; i++) {
|
|
6448
|
+
var current = resolvedArgs[i];
|
|
6449
|
+
for (var key in current) {
|
|
6450
|
+
merged[key] = current[key];
|
|
6925
6451
|
}
|
|
6926
|
-
const result = this.visit(right, elem);
|
|
6927
|
-
if (result !== null) {
|
|
6928
|
-
results.push(result);
|
|
6929
|
-
}
|
|
6930
|
-
}
|
|
6931
|
-
return results;
|
|
6932
|
-
}
|
|
6933
|
-
case "Arithmetic": {
|
|
6934
|
-
const first = this.visit(node.left, value);
|
|
6935
|
-
const second = this.visit(node.right, value);
|
|
6936
|
-
switch (node.operator) {
|
|
6937
|
-
case "Plus":
|
|
6938
|
-
return add(first, second);
|
|
6939
|
-
case "Minus":
|
|
6940
|
-
return sub(first, second);
|
|
6941
|
-
case "Multiply":
|
|
6942
|
-
case "Star":
|
|
6943
|
-
return mul(first, second);
|
|
6944
|
-
case "Divide":
|
|
6945
|
-
return divide(first, second);
|
|
6946
|
-
case "Modulo":
|
|
6947
|
-
return mod(first, second);
|
|
6948
|
-
case "Div":
|
|
6949
|
-
return div(first, second);
|
|
6950
|
-
default:
|
|
6951
|
-
throw new Error(`Syntax error: unknown arithmetic operator: ${node.operator}`);
|
|
6952
|
-
}
|
|
6953
|
-
}
|
|
6954
|
-
case "Unary": {
|
|
6955
|
-
const operand = this.visit(node.operand, value);
|
|
6956
|
-
switch (node.operator) {
|
|
6957
|
-
case "Plus":
|
|
6958
|
-
ensureNumbers(operand);
|
|
6959
|
-
return operand;
|
|
6960
|
-
case "Minus":
|
|
6961
|
-
ensureNumbers(operand);
|
|
6962
|
-
return -operand;
|
|
6963
|
-
default:
|
|
6964
|
-
throw new Error(`Syntax error: unknown arithmetic operator: ${node.operator}`);
|
|
6965
6452
|
}
|
|
6966
|
-
|
|
6967
|
-
|
|
6968
|
-
|
|
6969
|
-
|
|
6970
|
-
|
|
6971
|
-
|
|
6972
|
-
return
|
|
6973
|
-
|
|
6974
|
-
|
|
6975
|
-
|
|
6976
|
-
|
|
6453
|
+
return merged;
|
|
6454
|
+
},
|
|
6455
|
+
_functionMax: function(resolvedArgs) {
|
|
6456
|
+
if (resolvedArgs[0].length > 0) {
|
|
6457
|
+
var typeName = this._getTypeName(resolvedArgs[0][0]);
|
|
6458
|
+
if (typeName === TYPE_NUMBER) {
|
|
6459
|
+
return Math.max.apply(Math, resolvedArgs[0]);
|
|
6460
|
+
} else {
|
|
6461
|
+
var elements = resolvedArgs[0];
|
|
6462
|
+
var maxElement = elements[0];
|
|
6463
|
+
for (var i = 1;i < elements.length; i++) {
|
|
6464
|
+
if (maxElement.localeCompare(elements[i]) < 0) {
|
|
6465
|
+
maxElement = elements[i];
|
|
6466
|
+
}
|
|
6467
|
+
}
|
|
6468
|
+
return maxElement;
|
|
6469
|
+
}
|
|
6470
|
+
} else {
|
|
6977
6471
|
return null;
|
|
6978
6472
|
}
|
|
6979
|
-
|
|
6980
|
-
|
|
6981
|
-
|
|
6982
|
-
|
|
6983
|
-
|
|
6984
|
-
|
|
6985
|
-
|
|
6986
|
-
|
|
6987
|
-
|
|
6988
|
-
|
|
6989
|
-
|
|
6990
|
-
|
|
6991
|
-
|
|
6992
|
-
|
|
6993
|
-
|
|
6994
|
-
|
|
6995
|
-
|
|
6996
|
-
|
|
6997
|
-
const collected = [];
|
|
6998
|
-
for (const child of node.children) {
|
|
6999
|
-
collected.push(this.visit(child, value));
|
|
6473
|
+
},
|
|
6474
|
+
_functionMin: function(resolvedArgs) {
|
|
6475
|
+
if (resolvedArgs[0].length > 0) {
|
|
6476
|
+
var typeName = this._getTypeName(resolvedArgs[0][0]);
|
|
6477
|
+
if (typeName === TYPE_NUMBER) {
|
|
6478
|
+
return Math.min.apply(Math, resolvedArgs[0]);
|
|
6479
|
+
} else {
|
|
6480
|
+
var elements = resolvedArgs[0];
|
|
6481
|
+
var minElement = elements[0];
|
|
6482
|
+
for (var i = 1;i < elements.length; i++) {
|
|
6483
|
+
if (elements[i].localeCompare(minElement) < 0) {
|
|
6484
|
+
minElement = elements[i];
|
|
6485
|
+
}
|
|
6486
|
+
}
|
|
6487
|
+
return minElement;
|
|
6488
|
+
}
|
|
6489
|
+
} else {
|
|
6490
|
+
return null;
|
|
7000
6491
|
}
|
|
7001
|
-
|
|
7002
|
-
|
|
7003
|
-
|
|
7004
|
-
|
|
7005
|
-
for (
|
|
7006
|
-
|
|
6492
|
+
},
|
|
6493
|
+
_functionSum: function(resolvedArgs) {
|
|
6494
|
+
var sum = 0;
|
|
6495
|
+
var listToSum = resolvedArgs[0];
|
|
6496
|
+
for (var i = 0;i < listToSum.length; i++) {
|
|
6497
|
+
sum += listToSum[i];
|
|
6498
|
+
}
|
|
6499
|
+
return sum;
|
|
6500
|
+
},
|
|
6501
|
+
_functionType: function(resolvedArgs) {
|
|
6502
|
+
switch (this._getTypeName(resolvedArgs[0])) {
|
|
6503
|
+
case TYPE_NUMBER:
|
|
6504
|
+
return "number";
|
|
6505
|
+
case TYPE_STRING:
|
|
6506
|
+
return "string";
|
|
6507
|
+
case TYPE_ARRAY:
|
|
6508
|
+
return "array";
|
|
6509
|
+
case TYPE_OBJECT:
|
|
6510
|
+
return "object";
|
|
6511
|
+
case TYPE_BOOLEAN:
|
|
6512
|
+
return "boolean";
|
|
6513
|
+
case TYPE_EXPREF:
|
|
6514
|
+
return "expref";
|
|
6515
|
+
case TYPE_NULL:
|
|
6516
|
+
return "null";
|
|
6517
|
+
}
|
|
6518
|
+
},
|
|
6519
|
+
_functionKeys: function(resolvedArgs) {
|
|
6520
|
+
return Object.keys(resolvedArgs[0]);
|
|
6521
|
+
},
|
|
6522
|
+
_functionValues: function(resolvedArgs) {
|
|
6523
|
+
var obj = resolvedArgs[0];
|
|
6524
|
+
var keys = Object.keys(obj);
|
|
6525
|
+
var values = [];
|
|
6526
|
+
for (var i = 0;i < keys.length; i++) {
|
|
6527
|
+
values.push(obj[keys[i]]);
|
|
6528
|
+
}
|
|
6529
|
+
return values;
|
|
6530
|
+
},
|
|
6531
|
+
_functionJoin: function(resolvedArgs) {
|
|
6532
|
+
var joinChar = resolvedArgs[0];
|
|
6533
|
+
var listJoin = resolvedArgs[1];
|
|
6534
|
+
return listJoin.join(joinChar);
|
|
6535
|
+
},
|
|
6536
|
+
_functionToArray: function(resolvedArgs) {
|
|
6537
|
+
if (this._getTypeName(resolvedArgs[0]) === TYPE_ARRAY) {
|
|
6538
|
+
return resolvedArgs[0];
|
|
6539
|
+
} else {
|
|
6540
|
+
return [resolvedArgs[0]];
|
|
7007
6541
|
}
|
|
7008
|
-
|
|
7009
|
-
|
|
7010
|
-
|
|
7011
|
-
|
|
7012
|
-
|
|
7013
|
-
return
|
|
6542
|
+
},
|
|
6543
|
+
_functionToString: function(resolvedArgs) {
|
|
6544
|
+
if (this._getTypeName(resolvedArgs[0]) === TYPE_STRING) {
|
|
6545
|
+
return resolvedArgs[0];
|
|
6546
|
+
} else {
|
|
6547
|
+
return JSON.stringify(resolvedArgs[0]);
|
|
7014
6548
|
}
|
|
7015
|
-
|
|
7016
|
-
|
|
7017
|
-
|
|
7018
|
-
|
|
7019
|
-
if (
|
|
7020
|
-
return
|
|
6549
|
+
},
|
|
6550
|
+
_functionToNumber: function(resolvedArgs) {
|
|
6551
|
+
var typeName = this._getTypeName(resolvedArgs[0]);
|
|
6552
|
+
var convertedValue;
|
|
6553
|
+
if (typeName === TYPE_NUMBER) {
|
|
6554
|
+
return resolvedArgs[0];
|
|
6555
|
+
} else if (typeName === TYPE_STRING) {
|
|
6556
|
+
convertedValue = +resolvedArgs[0];
|
|
6557
|
+
if (!isNaN(convertedValue)) {
|
|
6558
|
+
return convertedValue;
|
|
6559
|
+
}
|
|
7021
6560
|
}
|
|
7022
|
-
return
|
|
7023
|
-
}
|
|
7024
|
-
|
|
7025
|
-
|
|
7026
|
-
|
|
7027
|
-
|
|
7028
|
-
|
|
7029
|
-
return this.visit(node.right, this.visit(node.left, value));
|
|
7030
|
-
case "Function": {
|
|
7031
|
-
const args = [];
|
|
7032
|
-
for (const child of node.children) {
|
|
7033
|
-
args.push(this.visit(child, value));
|
|
6561
|
+
return null;
|
|
6562
|
+
},
|
|
6563
|
+
_functionNotNull: function(resolvedArgs) {
|
|
6564
|
+
for (var i = 0;i < resolvedArgs.length; i++) {
|
|
6565
|
+
if (this._getTypeName(resolvedArgs[i]) !== TYPE_NULL) {
|
|
6566
|
+
return resolvedArgs[i];
|
|
6567
|
+
}
|
|
7034
6568
|
}
|
|
7035
|
-
return
|
|
7036
|
-
}
|
|
7037
|
-
|
|
7038
|
-
|
|
7039
|
-
|
|
7040
|
-
|
|
6569
|
+
return null;
|
|
6570
|
+
},
|
|
6571
|
+
_functionSort: function(resolvedArgs) {
|
|
6572
|
+
var sortedArray = resolvedArgs[0].slice(0);
|
|
6573
|
+
sortedArray.sort();
|
|
6574
|
+
return sortedArray;
|
|
6575
|
+
},
|
|
6576
|
+
_functionSortBy: function(resolvedArgs) {
|
|
6577
|
+
var sortedArray = resolvedArgs[0].slice(0);
|
|
6578
|
+
if (sortedArray.length === 0) {
|
|
6579
|
+
return sortedArray;
|
|
6580
|
+
}
|
|
6581
|
+
var interpreter = this._interpreter;
|
|
6582
|
+
var exprefNode = resolvedArgs[1];
|
|
6583
|
+
var requiredType = this._getTypeName(interpreter.visit(exprefNode, sortedArray[0]));
|
|
6584
|
+
if ([TYPE_NUMBER, TYPE_STRING].indexOf(requiredType) < 0) {
|
|
6585
|
+
throw new Error("TypeError");
|
|
6586
|
+
}
|
|
6587
|
+
var that = this;
|
|
6588
|
+
var decorated = [];
|
|
6589
|
+
for (var i = 0;i < sortedArray.length; i++) {
|
|
6590
|
+
decorated.push([i, sortedArray[i]]);
|
|
6591
|
+
}
|
|
6592
|
+
decorated.sort(function(a, b) {
|
|
6593
|
+
var exprA = interpreter.visit(exprefNode, a[1]);
|
|
6594
|
+
var exprB = interpreter.visit(exprefNode, b[1]);
|
|
6595
|
+
if (that._getTypeName(exprA) !== requiredType) {
|
|
6596
|
+
throw new Error("TypeError: expected " + requiredType + ", received " + that._getTypeName(exprA));
|
|
6597
|
+
} else if (that._getTypeName(exprB) !== requiredType) {
|
|
6598
|
+
throw new Error("TypeError: expected " + requiredType + ", received " + that._getTypeName(exprB));
|
|
6599
|
+
}
|
|
6600
|
+
if (exprA > exprB) {
|
|
6601
|
+
return 1;
|
|
6602
|
+
} else if (exprA < exprB) {
|
|
6603
|
+
return -1;
|
|
6604
|
+
} else {
|
|
6605
|
+
return a[0] - b[0];
|
|
6606
|
+
}
|
|
6607
|
+
});
|
|
6608
|
+
for (var j = 0;j < decorated.length; j++) {
|
|
6609
|
+
sortedArray[j] = decorated[j][1];
|
|
6610
|
+
}
|
|
6611
|
+
return sortedArray;
|
|
6612
|
+
},
|
|
6613
|
+
_functionMaxBy: function(resolvedArgs) {
|
|
6614
|
+
var exprefNode = resolvedArgs[1];
|
|
6615
|
+
var resolvedArray = resolvedArgs[0];
|
|
6616
|
+
var keyFunction = this.createKeyFunction(exprefNode, [TYPE_NUMBER, TYPE_STRING]);
|
|
6617
|
+
var maxNumber = -Infinity;
|
|
6618
|
+
var maxRecord;
|
|
6619
|
+
var current;
|
|
6620
|
+
for (var i = 0;i < resolvedArray.length; i++) {
|
|
6621
|
+
current = keyFunction(resolvedArray[i]);
|
|
6622
|
+
if (current > maxNumber) {
|
|
6623
|
+
maxNumber = current;
|
|
6624
|
+
maxRecord = resolvedArray[i];
|
|
6625
|
+
}
|
|
6626
|
+
}
|
|
6627
|
+
return maxRecord;
|
|
6628
|
+
},
|
|
6629
|
+
_functionMinBy: function(resolvedArgs) {
|
|
6630
|
+
var exprefNode = resolvedArgs[1];
|
|
6631
|
+
var resolvedArray = resolvedArgs[0];
|
|
6632
|
+
var keyFunction = this.createKeyFunction(exprefNode, [TYPE_NUMBER, TYPE_STRING]);
|
|
6633
|
+
var minNumber = Infinity;
|
|
6634
|
+
var minRecord;
|
|
6635
|
+
var current;
|
|
6636
|
+
for (var i = 0;i < resolvedArray.length; i++) {
|
|
6637
|
+
current = keyFunction(resolvedArray[i]);
|
|
6638
|
+
if (current < minNumber) {
|
|
6639
|
+
minNumber = current;
|
|
6640
|
+
minRecord = resolvedArray[i];
|
|
6641
|
+
}
|
|
6642
|
+
}
|
|
6643
|
+
return minRecord;
|
|
6644
|
+
},
|
|
6645
|
+
createKeyFunction: function(exprefNode, allowedTypes) {
|
|
6646
|
+
var that = this;
|
|
6647
|
+
var interpreter = this._interpreter;
|
|
6648
|
+
var keyFunc = function(x) {
|
|
6649
|
+
var current = interpreter.visit(exprefNode, x);
|
|
6650
|
+
if (allowedTypes.indexOf(that._getTypeName(current)) < 0) {
|
|
6651
|
+
var msg = "TypeError: expected one of " + allowedTypes + ", received " + that._getTypeName(current);
|
|
6652
|
+
throw new Error(msg);
|
|
6653
|
+
}
|
|
6654
|
+
return current;
|
|
7041
6655
|
};
|
|
7042
|
-
|
|
7043
|
-
case "Identity":
|
|
7044
|
-
return value;
|
|
7045
|
-
}
|
|
7046
|
-
}
|
|
7047
|
-
computeSliceParams(arrayLength, sliceNode) {
|
|
7048
|
-
let { start, stop, step } = sliceNode;
|
|
7049
|
-
if (step === null) {
|
|
7050
|
-
step = 1;
|
|
7051
|
-
} else if (step === 0) {
|
|
7052
|
-
const error = new Error("Invalid value: slice step cannot be 0");
|
|
7053
|
-
error.name = "RuntimeError";
|
|
7054
|
-
throw error;
|
|
7055
|
-
}
|
|
7056
|
-
start = start === null ? step < 0 ? arrayLength - 1 : 0 : this.capSliceRange(arrayLength, start, step);
|
|
7057
|
-
stop = stop === null ? step < 0 ? -1 : arrayLength : this.capSliceRange(arrayLength, stop, step);
|
|
7058
|
-
return { start, stop, step };
|
|
7059
|
-
}
|
|
7060
|
-
capSliceRange(arrayLength, actualValue, step) {
|
|
7061
|
-
let nextActualValue = actualValue;
|
|
7062
|
-
if (nextActualValue < 0) {
|
|
7063
|
-
nextActualValue += arrayLength;
|
|
7064
|
-
if (nextActualValue < 0) {
|
|
7065
|
-
nextActualValue = step < 0 ? -1 : 0;
|
|
6656
|
+
return keyFunc;
|
|
7066
6657
|
}
|
|
7067
|
-
}
|
|
7068
|
-
|
|
6658
|
+
};
|
|
6659
|
+
function compile(stream) {
|
|
6660
|
+
var parser = new Parser;
|
|
6661
|
+
var ast = parser.parse(stream);
|
|
6662
|
+
return ast;
|
|
7069
6663
|
}
|
|
7070
|
-
|
|
7071
|
-
|
|
7072
|
-
|
|
7073
|
-
const result = [];
|
|
7074
|
-
if (step > 0) {
|
|
7075
|
-
for (let i = start;i < end; i += step) {
|
|
7076
|
-
result.push(collection[i]);
|
|
7077
|
-
}
|
|
7078
|
-
} else {
|
|
7079
|
-
for (let i = start;i > end; i += step) {
|
|
7080
|
-
result.push(collection[i]);
|
|
7081
|
-
}
|
|
6664
|
+
function tokenize(stream) {
|
|
6665
|
+
var lexer = new Lexer;
|
|
6666
|
+
return lexer.tokenize(stream);
|
|
7082
6667
|
}
|
|
7083
|
-
|
|
7084
|
-
|
|
7085
|
-
|
|
7086
|
-
|
|
7087
|
-
|
|
7088
|
-
|
|
7089
|
-
|
|
7090
|
-
|
|
7091
|
-
|
|
7092
|
-
|
|
7093
|
-
|
|
7094
|
-
|
|
7095
|
-
}
|
|
7096
|
-
return TreeInterpreter_default.runtime.getCustomFunctions();
|
|
7097
|
-
}, clearCustomFunctions = () => {
|
|
7098
|
-
TreeInterpreter_default.runtime.clearCustomFunctions();
|
|
7099
|
-
}, TreeInterpreter2, jmespath;
|
|
7100
|
-
var init_dist = __esm(() => {
|
|
7101
|
-
basicTokens = {
|
|
7102
|
-
"(": "Lparen",
|
|
7103
|
-
")": "Rparen",
|
|
7104
|
-
"*": "Star",
|
|
7105
|
-
",": "Comma",
|
|
7106
|
-
".": "Dot",
|
|
7107
|
-
":": "Colon",
|
|
7108
|
-
"@": "Current",
|
|
7109
|
-
"]": "Rbracket",
|
|
7110
|
-
"{": "Lbrace",
|
|
7111
|
-
"}": "Rbrace",
|
|
7112
|
-
"+": "Plus",
|
|
7113
|
-
"%": "Modulo",
|
|
7114
|
-
"?": "Question",
|
|
7115
|
-
"−": "Minus",
|
|
7116
|
-
"×": "Multiply",
|
|
7117
|
-
"÷": "Divide"
|
|
7118
|
-
};
|
|
7119
|
-
operatorStartToken = {
|
|
7120
|
-
"!": true,
|
|
7121
|
-
"<": true,
|
|
7122
|
-
"=": true,
|
|
7123
|
-
">": true,
|
|
7124
|
-
"&": true,
|
|
7125
|
-
"|": true,
|
|
7126
|
-
"/": true
|
|
7127
|
-
};
|
|
7128
|
-
skipChars = {
|
|
7129
|
-
"\t": true,
|
|
7130
|
-
"\n": true,
|
|
7131
|
-
"\r": true,
|
|
7132
|
-
" ": true
|
|
7133
|
-
};
|
|
7134
|
-
Lexer = new StreamLexer;
|
|
7135
|
-
Lexer_default = Lexer;
|
|
7136
|
-
bindingPower = {
|
|
7137
|
-
["EOF"]: 0,
|
|
7138
|
-
["Variable"]: 0,
|
|
7139
|
-
["UnquotedIdentifier"]: 0,
|
|
7140
|
-
["QuotedIdentifier"]: 0,
|
|
7141
|
-
["Rbracket"]: 0,
|
|
7142
|
-
["Rparen"]: 0,
|
|
7143
|
-
["Comma"]: 0,
|
|
7144
|
-
["Rbrace"]: 0,
|
|
7145
|
-
["Number"]: 0,
|
|
7146
|
-
["Current"]: 0,
|
|
7147
|
-
["Expref"]: 0,
|
|
7148
|
-
["Root"]: 0,
|
|
7149
|
-
["Assign"]: 1,
|
|
7150
|
-
["Pipe"]: 1,
|
|
7151
|
-
["Question"]: 2,
|
|
7152
|
-
["Or"]: 3,
|
|
7153
|
-
["And"]: 4,
|
|
7154
|
-
["EQ"]: 5,
|
|
7155
|
-
["GT"]: 5,
|
|
7156
|
-
["LT"]: 5,
|
|
7157
|
-
["GTE"]: 5,
|
|
7158
|
-
["LTE"]: 5,
|
|
7159
|
-
["NE"]: 5,
|
|
7160
|
-
["Minus"]: 6,
|
|
7161
|
-
["Plus"]: 6,
|
|
7162
|
-
["Div"]: 7,
|
|
7163
|
-
["Divide"]: 7,
|
|
7164
|
-
["Modulo"]: 7,
|
|
7165
|
-
["Multiply"]: 7,
|
|
7166
|
-
["Flatten"]: 9,
|
|
7167
|
-
["Star"]: 20,
|
|
7168
|
-
["Filter"]: 21,
|
|
7169
|
-
["Dot"]: 40,
|
|
7170
|
-
["Not"]: 45,
|
|
7171
|
-
["Lbrace"]: 50,
|
|
7172
|
-
["Lbracket"]: 55,
|
|
7173
|
-
["Lparen"]: 60
|
|
7174
|
-
};
|
|
7175
|
-
Parser = new TokenParser;
|
|
7176
|
-
Parser_default = Parser;
|
|
7177
|
-
emptyScopeChain = new ScopeChain;
|
|
7178
|
-
TreeInterpreterInstance = new TreeInterpreter;
|
|
7179
|
-
TreeInterpreter_default = TreeInterpreterInstance;
|
|
7180
|
-
TreeInterpreter2 = TreeInterpreter_default;
|
|
7181
|
-
jmespath = {
|
|
7182
|
-
compile,
|
|
7183
|
-
registerFunction,
|
|
7184
|
-
register,
|
|
7185
|
-
unregisterFunction,
|
|
7186
|
-
isRegistered,
|
|
7187
|
-
getRegisteredFunctions,
|
|
7188
|
-
getCustomFunctions,
|
|
7189
|
-
clearCustomFunctions,
|
|
7190
|
-
search,
|
|
7191
|
-
tokenize,
|
|
7192
|
-
TreeInterpreter: TreeInterpreter2,
|
|
7193
|
-
TYPE_ANY,
|
|
7194
|
-
TYPE_ARRAY_NUMBER,
|
|
7195
|
-
TYPE_ARRAY_STRING,
|
|
7196
|
-
TYPE_ARRAY,
|
|
7197
|
-
TYPE_BOOLEAN,
|
|
7198
|
-
TYPE_EXPREF,
|
|
7199
|
-
TYPE_NULL,
|
|
7200
|
-
TYPE_NUMBER,
|
|
7201
|
-
TYPE_OBJECT,
|
|
7202
|
-
TYPE_STRING
|
|
7203
|
-
};
|
|
6668
|
+
function search(data, expression) {
|
|
6669
|
+
var parser = new Parser;
|
|
6670
|
+
var runtime = new Runtime;
|
|
6671
|
+
var interpreter = new TreeInterpreter(runtime);
|
|
6672
|
+
runtime._interpreter = interpreter;
|
|
6673
|
+
var node = parser.parse(expression);
|
|
6674
|
+
return interpreter.search(node, data);
|
|
6675
|
+
}
|
|
6676
|
+
exports2.tokenize = tokenize;
|
|
6677
|
+
exports2.compile = compile;
|
|
6678
|
+
exports2.search = search;
|
|
6679
|
+
exports2.strictDeepEqual = strictDeepEqual;
|
|
6680
|
+
})(typeof exports === "undefined" ? exports.jmespath = {} : exports);
|
|
7204
6681
|
});
|
|
7205
6682
|
|
|
7206
6683
|
// ../common/src/output-codecs.ts
|
|
7207
6684
|
async function loadOutputCodecsAsync(needed) {
|
|
7208
6685
|
const loads = [];
|
|
7209
6686
|
if (needed.yaml && yamlSlot.get() === undefined) {
|
|
7210
|
-
loads.push(Promise.resolve().then(() => (init_js_yaml(), exports_js_yaml)).then((
|
|
7211
|
-
yamlSlot.set(
|
|
6687
|
+
loads.push(Promise.resolve().then(() => (init_js_yaml(), exports_js_yaml)).then((mod) => {
|
|
6688
|
+
yamlSlot.set(mod);
|
|
7212
6689
|
}));
|
|
7213
6690
|
}
|
|
7214
6691
|
if (needed.filter && jmespathSlot.get() === undefined) {
|
|
7215
|
-
loads.push(Promise.resolve().then(() => (
|
|
7216
|
-
jmespathSlot.set(
|
|
6692
|
+
loads.push(Promise.resolve().then(() => __toESM(require_jmespath(), 1)).then((mod) => {
|
|
6693
|
+
jmespathSlot.set(mod);
|
|
7217
6694
|
}));
|
|
7218
6695
|
}
|
|
7219
6696
|
await Promise.all(loads);
|
|
@@ -8026,8 +7503,8 @@ var init_telemetry_service = __esm(() => {
|
|
|
8026
7503
|
|
|
8027
7504
|
// ../common/src/timings.ts
|
|
8028
7505
|
function createStorage2() {
|
|
8029
|
-
const [error,
|
|
8030
|
-
if (error || typeof
|
|
7506
|
+
const [error, mod] = catchError(() => __require("node:async_hooks"));
|
|
7507
|
+
if (error || typeof mod?.AsyncLocalStorage !== "function") {
|
|
8031
7508
|
return {
|
|
8032
7509
|
getStore: () => {
|
|
8033
7510
|
return;
|
|
@@ -8035,7 +7512,7 @@ function createStorage2() {
|
|
|
8035
7512
|
run: (_store, fn) => fn()
|
|
8036
7513
|
};
|
|
8037
7514
|
}
|
|
8038
|
-
return new
|
|
7515
|
+
return new mod.AsyncLocalStorage;
|
|
8039
7516
|
}
|
|
8040
7517
|
function newState(baseline) {
|
|
8041
7518
|
return { baseline, httpMs: 0, httpCalls: 0 };
|
|
@@ -9169,10 +8646,10 @@ var require_help = __commonJS(function(exports) {
|
|
|
9169
8646
|
});
|
|
9170
8647
|
output = output.concat(this.formatItemList("Global Options:", globalOptionList, helper));
|
|
9171
8648
|
}
|
|
9172
|
-
const commandGroups = this.groupItems(cmd.commands, helper.visibleCommands(cmd), (
|
|
8649
|
+
const commandGroups = this.groupItems(cmd.commands, helper.visibleCommands(cmd), (sub) => sub.helpGroup() || "Commands:");
|
|
9173
8650
|
commandGroups.forEach((commands, group) => {
|
|
9174
|
-
const commandList = commands.map((
|
|
9175
|
-
return callFormatItem(helper.styleSubcommandTerm(helper.subcommandTerm(
|
|
8651
|
+
const commandList = commands.map((sub) => {
|
|
8652
|
+
return callFormatItem(helper.styleSubcommandTerm(helper.subcommandTerm(sub)), helper.styleSubcommandDescription(helper.subcommandDescription(sub)));
|
|
9176
8653
|
});
|
|
9177
8654
|
output = output.concat(this.formatItemList(group, commandList, helper));
|
|
9178
8655
|
});
|
|
@@ -13542,8 +13019,8 @@ function createI18nRegistrar(options) {
|
|
|
13542
13019
|
if (!target || loaded[target])
|
|
13543
13020
|
return;
|
|
13544
13021
|
try {
|
|
13545
|
-
const
|
|
13546
|
-
instance.addResourceBundle(target, namespace,
|
|
13022
|
+
const mod = await loadCatalog(target);
|
|
13023
|
+
instance.addResourceBundle(target, namespace, mod.default, true, true);
|
|
13547
13024
|
loaded[target] = true;
|
|
13548
13025
|
} catch (err) {
|
|
13549
13026
|
console.warn(`[i18n] Failed to load '${target}' catalog for namespace '${namespace}':`, err);
|
|
@@ -13701,7 +13178,7 @@ __export(exports_util, {
|
|
|
13701
13178
|
getParsedType: () => getParsedType,
|
|
13702
13179
|
getSizableOrigin: () => getSizableOrigin,
|
|
13703
13180
|
hexToUint8Array: () => hexToUint8Array,
|
|
13704
|
-
isObject: () =>
|
|
13181
|
+
isObject: () => isObject,
|
|
13705
13182
|
isPlainObject: () => isPlainObject,
|
|
13706
13183
|
issue: () => issue,
|
|
13707
13184
|
joinValues: () => joinValues,
|
|
@@ -13858,11 +13335,11 @@ function esc(str2) {
|
|
|
13858
13335
|
function slugify(input) {
|
|
13859
13336
|
return input.toLowerCase().trim().replace(/[^\w\s-]/g, "").replace(/[\s_-]+/g, "-").replace(/^-+|-+$/g, "");
|
|
13860
13337
|
}
|
|
13861
|
-
function
|
|
13338
|
+
function isObject(data) {
|
|
13862
13339
|
return typeof data === "object" && data !== null && !Array.isArray(data);
|
|
13863
13340
|
}
|
|
13864
13341
|
function isPlainObject(o) {
|
|
13865
|
-
if (
|
|
13342
|
+
if (isObject(o) === false)
|
|
13866
13343
|
return false;
|
|
13867
13344
|
const ctor = o.constructor;
|
|
13868
13345
|
if (ctor === undefined)
|
|
@@ -13870,7 +13347,7 @@ function isPlainObject(o) {
|
|
|
13870
13347
|
if (typeof ctor !== "function")
|
|
13871
13348
|
return true;
|
|
13872
13349
|
const prot = ctor.prototype;
|
|
13873
|
-
if (
|
|
13350
|
+
if (isObject(prot) === false)
|
|
13874
13351
|
return false;
|
|
13875
13352
|
if (Object.prototype.hasOwnProperty.call(prot, "isPrototypeOf") === false) {
|
|
13876
13353
|
return false;
|
|
@@ -14364,12 +13841,12 @@ var init_util = __esm(() => {
|
|
|
14364
13841
|
function flattenError(error, mapper = (issue2) => issue2.message) {
|
|
14365
13842
|
const fieldErrors = {};
|
|
14366
13843
|
const formErrors = [];
|
|
14367
|
-
for (const
|
|
14368
|
-
if (
|
|
14369
|
-
fieldErrors[
|
|
14370
|
-
fieldErrors[
|
|
13844
|
+
for (const sub of error.issues) {
|
|
13845
|
+
if (sub.path.length > 0) {
|
|
13846
|
+
fieldErrors[sub.path[0]] = fieldErrors[sub.path[0]] || [];
|
|
13847
|
+
fieldErrors[sub.path[0]].push(mapper(sub));
|
|
14371
13848
|
} else {
|
|
14372
|
-
formErrors.push(mapper(
|
|
13849
|
+
formErrors.push(mapper(sub));
|
|
14373
13850
|
}
|
|
14374
13851
|
}
|
|
14375
13852
|
return { formErrors, fieldErrors };
|
|
@@ -16388,13 +15865,13 @@ var init_schemas = __esm(() => {
|
|
|
16388
15865
|
}
|
|
16389
15866
|
return propValues;
|
|
16390
15867
|
});
|
|
16391
|
-
const
|
|
15868
|
+
const isObject2 = isObject;
|
|
16392
15869
|
const catchall = def.catchall;
|
|
16393
15870
|
let value;
|
|
16394
15871
|
inst._zod.parse = (payload, ctx) => {
|
|
16395
15872
|
value ?? (value = _normalized.value);
|
|
16396
15873
|
const input = payload.value;
|
|
16397
|
-
if (!
|
|
15874
|
+
if (!isObject2(input)) {
|
|
16398
15875
|
payload.issues.push({
|
|
16399
15876
|
expected: "object",
|
|
16400
15877
|
code: "invalid_type",
|
|
@@ -16521,7 +15998,7 @@ var init_schemas = __esm(() => {
|
|
|
16521
15998
|
return (payload, ctx) => fn(shape, payload, ctx);
|
|
16522
15999
|
};
|
|
16523
16000
|
let fastpass;
|
|
16524
|
-
const
|
|
16001
|
+
const isObject2 = isObject;
|
|
16525
16002
|
const jit = !globalConfig.jitless;
|
|
16526
16003
|
const allowsEval2 = allowsEval;
|
|
16527
16004
|
const fastEnabled = jit && allowsEval2.value;
|
|
@@ -16530,7 +16007,7 @@ var init_schemas = __esm(() => {
|
|
|
16530
16007
|
inst._zod.parse = (payload, ctx) => {
|
|
16531
16008
|
value ?? (value = _normalized.value);
|
|
16532
16009
|
const input = payload.value;
|
|
16533
|
-
if (!
|
|
16010
|
+
if (!isObject2(input)) {
|
|
16534
16011
|
payload.issues.push({
|
|
16535
16012
|
expected: "object",
|
|
16536
16013
|
code: "invalid_type",
|
|
@@ -16662,7 +16139,7 @@ var init_schemas = __esm(() => {
|
|
|
16662
16139
|
});
|
|
16663
16140
|
inst._zod.parse = (payload, ctx) => {
|
|
16664
16141
|
const input = payload.value;
|
|
16665
|
-
if (!
|
|
16142
|
+
if (!isObject(input)) {
|
|
16666
16143
|
payload.issues.push({
|
|
16667
16144
|
code: "invalid_type",
|
|
16668
16145
|
expected: "object",
|
|
@@ -28388,7 +27865,7 @@ var require_scope = __commonJS(function(exports) {
|
|
|
28388
27865
|
var: new code_1.Name("var")
|
|
28389
27866
|
};
|
|
28390
27867
|
|
|
28391
|
-
class
|
|
27868
|
+
class Scope {
|
|
28392
27869
|
constructor({ prefixes, parent } = {}) {
|
|
28393
27870
|
this._names = {};
|
|
28394
27871
|
this._prefixes = prefixes;
|
|
@@ -28412,7 +27889,7 @@ var require_scope = __commonJS(function(exports) {
|
|
|
28412
27889
|
return this._names[prefix] = { prefix, index: 0 };
|
|
28413
27890
|
}
|
|
28414
27891
|
}
|
|
28415
|
-
exports.Scope =
|
|
27892
|
+
exports.Scope = Scope;
|
|
28416
27893
|
|
|
28417
27894
|
class ValueScopeName extends code_1.Name {
|
|
28418
27895
|
constructor(prefix, nameStr) {
|
|
@@ -28427,7 +27904,7 @@ var require_scope = __commonJS(function(exports) {
|
|
|
28427
27904
|
exports.ValueScopeName = ValueScopeName;
|
|
28428
27905
|
var line = (0, code_1._)`\n`;
|
|
28429
27906
|
|
|
28430
|
-
class ValueScope extends
|
|
27907
|
+
class ValueScope extends Scope {
|
|
28431
27908
|
constructor(opts) {
|
|
28432
27909
|
super(opts);
|
|
28433
27910
|
this._values = {};
|
|
@@ -37696,7 +37173,7 @@ __export(exports_util2, {
|
|
|
37696
37173
|
getLengthableOrigin: () => getLengthableOrigin2,
|
|
37697
37174
|
getParsedType: () => getParsedType2,
|
|
37698
37175
|
getSizableOrigin: () => getSizableOrigin2,
|
|
37699
|
-
isObject: () =>
|
|
37176
|
+
isObject: () => isObject2,
|
|
37700
37177
|
isPlainObject: () => isPlainObject2,
|
|
37701
37178
|
issue: () => issue2,
|
|
37702
37179
|
joinValues: () => joinValues2,
|
|
@@ -37825,17 +37302,17 @@ function randomString2(length = 10) {
|
|
|
37825
37302
|
function esc2(str2) {
|
|
37826
37303
|
return JSON.stringify(str2);
|
|
37827
37304
|
}
|
|
37828
|
-
function
|
|
37305
|
+
function isObject2(data) {
|
|
37829
37306
|
return typeof data === "object" && data !== null && !Array.isArray(data);
|
|
37830
37307
|
}
|
|
37831
37308
|
function isPlainObject2(o) {
|
|
37832
|
-
if (
|
|
37309
|
+
if (isObject2(o) === false)
|
|
37833
37310
|
return false;
|
|
37834
37311
|
const ctor = o.constructor;
|
|
37835
37312
|
if (ctor === undefined)
|
|
37836
37313
|
return true;
|
|
37837
37314
|
const prot = ctor.prototype;
|
|
37838
|
-
if (
|
|
37315
|
+
if (isObject2(prot) === false)
|
|
37839
37316
|
return false;
|
|
37840
37317
|
if (Object.prototype.hasOwnProperty.call(prot, "isPrototypeOf") === false) {
|
|
37841
37318
|
return false;
|
|
@@ -38185,12 +37662,12 @@ var init_util2 = __esm(() => {
|
|
|
38185
37662
|
function flattenError2(error51, mapper = (issue3) => issue3.message) {
|
|
38186
37663
|
const fieldErrors = {};
|
|
38187
37664
|
const formErrors = [];
|
|
38188
|
-
for (const
|
|
38189
|
-
if (
|
|
38190
|
-
fieldErrors[
|
|
38191
|
-
fieldErrors[
|
|
37665
|
+
for (const sub of error51.issues) {
|
|
37666
|
+
if (sub.path.length > 0) {
|
|
37667
|
+
fieldErrors[sub.path[0]] = fieldErrors[sub.path[0]] || [];
|
|
37668
|
+
fieldErrors[sub.path[0]].push(mapper(sub));
|
|
38192
37669
|
} else {
|
|
38193
|
-
formErrors.push(mapper(
|
|
37670
|
+
formErrors.push(mapper(sub));
|
|
38194
37671
|
}
|
|
38195
37672
|
}
|
|
38196
37673
|
return { formErrors, fieldErrors };
|
|
@@ -39982,7 +39459,7 @@ var init_schemas3 = __esm(() => {
|
|
|
39982
39459
|
return (payload, ctx) => fn(shape, payload, ctx);
|
|
39983
39460
|
};
|
|
39984
39461
|
let fastpass;
|
|
39985
|
-
const
|
|
39462
|
+
const isObject3 = isObject2;
|
|
39986
39463
|
const jit = !globalConfig2.jitless;
|
|
39987
39464
|
const allowsEval3 = allowsEval2;
|
|
39988
39465
|
const fastEnabled = jit && allowsEval3.value;
|
|
@@ -39991,7 +39468,7 @@ var init_schemas3 = __esm(() => {
|
|
|
39991
39468
|
inst._zod.parse = (payload, ctx) => {
|
|
39992
39469
|
value ?? (value = _normalized.value);
|
|
39993
39470
|
const input = payload.value;
|
|
39994
|
-
if (!
|
|
39471
|
+
if (!isObject3(input)) {
|
|
39995
39472
|
payload.issues.push({
|
|
39996
39473
|
expected: "object",
|
|
39997
39474
|
code: "invalid_type",
|
|
@@ -40135,7 +39612,7 @@ var init_schemas3 = __esm(() => {
|
|
|
40135
39612
|
});
|
|
40136
39613
|
inst._zod.parse = (payload, ctx) => {
|
|
40137
39614
|
const input = payload.value;
|
|
40138
|
-
if (!
|
|
39615
|
+
if (!isObject2(input)) {
|
|
40139
39616
|
payload.issues.push({
|
|
40140
39617
|
code: "invalid_type",
|
|
40141
39618
|
expected: "object",
|
|
@@ -50545,15 +50022,15 @@ var require_subset = __commonJS(function(exports, module) {
|
|
|
50545
50022
|
var { ANY } = Comparator;
|
|
50546
50023
|
var satisfies = require_satisfies();
|
|
50547
50024
|
var compare = require_compare();
|
|
50548
|
-
var subset = (
|
|
50549
|
-
if (
|
|
50025
|
+
var subset = (sub, dom, options = {}) => {
|
|
50026
|
+
if (sub === dom) {
|
|
50550
50027
|
return true;
|
|
50551
50028
|
}
|
|
50552
|
-
|
|
50029
|
+
sub = new Range(sub, options);
|
|
50553
50030
|
dom = new Range(dom, options);
|
|
50554
50031
|
let sawNonNull = false;
|
|
50555
50032
|
OUTER:
|
|
50556
|
-
for (const simpleSub of
|
|
50033
|
+
for (const simpleSub of sub.set) {
|
|
50557
50034
|
for (const simpleDom of dom.set) {
|
|
50558
50035
|
const isSub = simpleSubset(simpleSub, simpleDom, options);
|
|
50559
50036
|
sawNonNull = sawNonNull || isSub !== null;
|
|
@@ -50569,17 +50046,17 @@ var require_subset = __commonJS(function(exports, module) {
|
|
|
50569
50046
|
};
|
|
50570
50047
|
var minimumVersionWithPreRelease = [new Comparator(">=0.0.0-0")];
|
|
50571
50048
|
var minimumVersion = [new Comparator(">=0.0.0")];
|
|
50572
|
-
var simpleSubset = (
|
|
50573
|
-
if (
|
|
50049
|
+
var simpleSubset = (sub, dom, options) => {
|
|
50050
|
+
if (sub === dom) {
|
|
50574
50051
|
return true;
|
|
50575
50052
|
}
|
|
50576
|
-
if (
|
|
50053
|
+
if (sub.length === 1 && sub[0].semver === ANY) {
|
|
50577
50054
|
if (dom.length === 1 && dom[0].semver === ANY) {
|
|
50578
50055
|
return true;
|
|
50579
50056
|
} else if (options.includePrerelease) {
|
|
50580
|
-
|
|
50057
|
+
sub = minimumVersionWithPreRelease;
|
|
50581
50058
|
} else {
|
|
50582
|
-
|
|
50059
|
+
sub = minimumVersion;
|
|
50583
50060
|
}
|
|
50584
50061
|
}
|
|
50585
50062
|
if (dom.length === 1 && dom[0].semver === ANY) {
|
|
@@ -50591,7 +50068,7 @@ var require_subset = __commonJS(function(exports, module) {
|
|
|
50591
50068
|
}
|
|
50592
50069
|
const eqSet = new Set;
|
|
50593
50070
|
let gt, lt;
|
|
50594
|
-
for (const c of
|
|
50071
|
+
for (const c of sub) {
|
|
50595
50072
|
if (c.operator === ">" || c.operator === ">=") {
|
|
50596
50073
|
gt = higherGT(gt, c, options);
|
|
50597
50074
|
} else if (c.operator === "<" || c.operator === "<=") {
|
|
@@ -50626,7 +50103,7 @@ var require_subset = __commonJS(function(exports, module) {
|
|
|
50626
50103
|
}
|
|
50627
50104
|
return true;
|
|
50628
50105
|
}
|
|
50629
|
-
let higher,
|
|
50106
|
+
let higher, lower;
|
|
50630
50107
|
let hasDomLT, hasDomGT;
|
|
50631
50108
|
let needDomLTPre = lt && !options.includePrerelease && lt.semver.prerelease.length ? lt.semver : false;
|
|
50632
50109
|
let needDomGTPre = gt && !options.includePrerelease && gt.semver.prerelease.length ? gt.semver : false;
|
|
@@ -50658,8 +50135,8 @@ var require_subset = __commonJS(function(exports, module) {
|
|
|
50658
50135
|
}
|
|
50659
50136
|
}
|
|
50660
50137
|
if (c.operator === "<" || c.operator === "<=") {
|
|
50661
|
-
|
|
50662
|
-
if (
|
|
50138
|
+
lower = lowerLT(lt, c, options);
|
|
50139
|
+
if (lower === c && lower !== lt) {
|
|
50663
50140
|
return false;
|
|
50664
50141
|
}
|
|
50665
50142
|
} else if (lt.operator === "<=" && !satisfies(lt.semver, String(c), options)) {
|
|
@@ -50999,7 +50476,7 @@ var import_semver, createStorageSchema = (factory) => {
|
|
|
50999
50476
|
...context,
|
|
51000
50477
|
contextType: context.contextType ?? (context.attachments ? "attachments" : "index")
|
|
51001
50478
|
}), v48, migrationV48, version24 = "49.0.0", lowCodeAgentSchemaV49, codedAgentSchemaV49, agentStorageSchemaV49, storageSchemaV49, v49, migrationV49, version25 = "50.0.0", LATEST_AGENT_VERSION = "1.2.0", AGENT365_GOVERNANCE_PROVIDER_NAMESPACE = "agent.governance_providers.agents365", Agent365Attributes, RECIPIENT_TYPE3, escalationRecipientsV50, hitlSchemaFieldRuleV50, hitlSchemaFieldV50, hitlSchemaOutcomeV50, hitlSchemaV50, actionableMessageMetaDataV50, channelQuickFormPropertiesV50, escalationChannelActionCenterSchemaV50, escalationChannelActionCenterQuickFormSchemaV50, escalationStorageSchemaV50, baseLowCodeSettingsSchema, _v49ProcessToolSchema, flowToolStorageSchemaV50, functionToolStorageSchemaV50, TURN_DETECTION_MAX_MS = 5000, turnDetectionSchemaV50, voiceSettingsExtension, standardLowCodeAgentSettingsV50, advancedLowCodeAgentSettingsV50, lowCodeAgentSettingsV50, agent365ValuesSchemaV50, lowCodeAgentSchemaV50, codedAgentSchemaV50, agentStorageSchemaV50, clientSideToolStorageSchemaV50, toolStorageSchemaV50, discoveryModeSchemaV50, mcpToolStorageSchemaV50, dataFabricOntologyContextSchemaV50, contextStorageSchemaV50, resourceStorageSchemaV50, resourcesFolderSchemaV50, storageSchemaV50, v50, migrationV50, currentStorageSchemaMigration, currentStorageSchema, currentAgentStorageSchema, currentResourceStorageSchema, currentFeatureStorageSchema, currentEvaluationSetStorageSchema, currentCodedAgentStorageSchema, currentFlowLayoutStorageSchema;
|
|
51002
|
-
var
|
|
50479
|
+
var init_dist = __esm(() => {
|
|
51003
50480
|
init_v4();
|
|
51004
50481
|
import_semver = __toESM(require_semver2(), 1);
|
|
51005
50482
|
jsonSchemaTypeSchema = exports_external2.enum([
|
|
@@ -61785,7 +61262,7 @@ var init_chunk_E6I5CCCH = __esm(() => {
|
|
|
61785
61262
|
init_i18next();
|
|
61786
61263
|
init_i18next();
|
|
61787
61264
|
init_i18next();
|
|
61788
|
-
|
|
61265
|
+
init_dist();
|
|
61789
61266
|
init_i18next();
|
|
61790
61267
|
init_i18next();
|
|
61791
61268
|
init_jsep();
|
|
@@ -62787,7 +62264,7 @@ var import_object, workflowRuntimeSchema, argumentBindingSchema, workflowVariabl
|
|
|
62787
62264
|
},
|
|
62788
62265
|
required: ["name", "value"]
|
|
62789
62266
|
}), HTTP_REQUEST_SCHEMA;
|
|
62790
|
-
var
|
|
62267
|
+
var init_dist2 = __esm(() => {
|
|
62791
62268
|
init_chunk_E6I5CCCH();
|
|
62792
62269
|
init_zod();
|
|
62793
62270
|
init_zod();
|
|
@@ -86090,11 +85567,11 @@ var require__Symbol = __commonJS(function(exports, module) {
|
|
|
86090
85567
|
var require__getRawTag = __commonJS(function(exports, module) {
|
|
86091
85568
|
var Symbol2 = require__Symbol();
|
|
86092
85569
|
var objectProto = Object.prototype;
|
|
86093
|
-
var
|
|
85570
|
+
var hasOwnProperty2 = objectProto.hasOwnProperty;
|
|
86094
85571
|
var nativeObjectToString = objectProto.toString;
|
|
86095
85572
|
var symToStringTag = Symbol2 ? Symbol2.toStringTag : undefined;
|
|
86096
85573
|
function getRawTag(value) {
|
|
86097
|
-
var isOwn =
|
|
85574
|
+
var isOwn = hasOwnProperty2.call(value, symToStringTag), tag = value[symToStringTag];
|
|
86098
85575
|
try {
|
|
86099
85576
|
value[symToStringTag] = undefined;
|
|
86100
85577
|
var unmasked = true;
|
|
@@ -86141,23 +85618,23 @@ var require__baseGetTag = __commonJS(function(exports, module) {
|
|
|
86141
85618
|
|
|
86142
85619
|
// ../../node_modules/lodash/isObject.js
|
|
86143
85620
|
var require_isObject = __commonJS(function(exports, module) {
|
|
86144
|
-
function
|
|
85621
|
+
function isObject3(value) {
|
|
86145
85622
|
var type2 = typeof value;
|
|
86146
85623
|
return value != null && (type2 == "object" || type2 == "function");
|
|
86147
85624
|
}
|
|
86148
|
-
module.exports =
|
|
85625
|
+
module.exports = isObject3;
|
|
86149
85626
|
});
|
|
86150
85627
|
|
|
86151
85628
|
// ../../node_modules/lodash/isFunction.js
|
|
86152
85629
|
var require_isFunction = __commonJS(function(exports, module) {
|
|
86153
85630
|
var baseGetTag = require__baseGetTag();
|
|
86154
|
-
var
|
|
85631
|
+
var isObject3 = require_isObject();
|
|
86155
85632
|
var asyncTag = "[object AsyncFunction]";
|
|
86156
85633
|
var funcTag = "[object Function]";
|
|
86157
85634
|
var genTag = "[object GeneratorFunction]";
|
|
86158
85635
|
var proxyTag = "[object Proxy]";
|
|
86159
85636
|
function isFunction(value) {
|
|
86160
|
-
if (!
|
|
85637
|
+
if (!isObject3(value)) {
|
|
86161
85638
|
return false;
|
|
86162
85639
|
}
|
|
86163
85640
|
var tag = baseGetTag(value);
|
|
@@ -86208,17 +85685,17 @@ var require__toSource = __commonJS(function(exports, module) {
|
|
|
86208
85685
|
var require__baseIsNative = __commonJS(function(exports, module) {
|
|
86209
85686
|
var isFunction = require_isFunction();
|
|
86210
85687
|
var isMasked = require__isMasked();
|
|
86211
|
-
var
|
|
85688
|
+
var isObject3 = require_isObject();
|
|
86212
85689
|
var toSource = require__toSource();
|
|
86213
85690
|
var reRegExpChar = /[\\^$.*+?()[\]{}|]/g;
|
|
86214
85691
|
var reIsHostCtor = /^\[object .+?Constructor\]$/;
|
|
86215
85692
|
var funcProto = Function.prototype;
|
|
86216
85693
|
var objectProto = Object.prototype;
|
|
86217
85694
|
var funcToString = funcProto.toString;
|
|
86218
|
-
var
|
|
86219
|
-
var reIsNative = RegExp("^" + funcToString.call(
|
|
85695
|
+
var hasOwnProperty2 = objectProto.hasOwnProperty;
|
|
85696
|
+
var reIsNative = RegExp("^" + funcToString.call(hasOwnProperty2).replace(reRegExpChar, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$");
|
|
86220
85697
|
function baseIsNative(value) {
|
|
86221
|
-
if (!
|
|
85698
|
+
if (!isObject3(value) || isMasked(value)) {
|
|
86222
85699
|
return false;
|
|
86223
85700
|
}
|
|
86224
85701
|
var pattern = isFunction(value) ? reIsNative : reIsHostCtor;
|
|
@@ -86286,14 +85763,14 @@ var require__hashGet = __commonJS(function(exports, module) {
|
|
|
86286
85763
|
var nativeCreate = require__nativeCreate();
|
|
86287
85764
|
var HASH_UNDEFINED = "__lodash_hash_undefined__";
|
|
86288
85765
|
var objectProto = Object.prototype;
|
|
86289
|
-
var
|
|
85766
|
+
var hasOwnProperty2 = objectProto.hasOwnProperty;
|
|
86290
85767
|
function hashGet(key) {
|
|
86291
85768
|
var data = this.__data__;
|
|
86292
85769
|
if (nativeCreate) {
|
|
86293
85770
|
var result = data[key];
|
|
86294
85771
|
return result === HASH_UNDEFINED ? undefined : result;
|
|
86295
85772
|
}
|
|
86296
|
-
return
|
|
85773
|
+
return hasOwnProperty2.call(data, key) ? data[key] : undefined;
|
|
86297
85774
|
}
|
|
86298
85775
|
module.exports = hashGet;
|
|
86299
85776
|
});
|
|
@@ -86302,10 +85779,10 @@ var require__hashGet = __commonJS(function(exports, module) {
|
|
|
86302
85779
|
var require__hashHas = __commonJS(function(exports, module) {
|
|
86303
85780
|
var nativeCreate = require__nativeCreate();
|
|
86304
85781
|
var objectProto = Object.prototype;
|
|
86305
|
-
var
|
|
85782
|
+
var hasOwnProperty2 = objectProto.hasOwnProperty;
|
|
86306
85783
|
function hashHas(key) {
|
|
86307
85784
|
var data = this.__data__;
|
|
86308
|
-
return nativeCreate ? data[key] !== undefined :
|
|
85785
|
+
return nativeCreate ? data[key] !== undefined : hasOwnProperty2.call(data, key);
|
|
86309
85786
|
}
|
|
86310
85787
|
module.exports = hashHas;
|
|
86311
85788
|
});
|
|
@@ -86809,12 +86286,12 @@ var require_isArguments = __commonJS(function(exports, module) {
|
|
|
86809
86286
|
var baseIsArguments = require__baseIsArguments();
|
|
86810
86287
|
var isObjectLike = require_isObjectLike();
|
|
86811
86288
|
var objectProto = Object.prototype;
|
|
86812
|
-
var
|
|
86289
|
+
var hasOwnProperty2 = objectProto.hasOwnProperty;
|
|
86813
86290
|
var propertyIsEnumerable = objectProto.propertyIsEnumerable;
|
|
86814
86291
|
var isArguments = baseIsArguments(function() {
|
|
86815
86292
|
return arguments;
|
|
86816
86293
|
}()) ? baseIsArguments : function(value) {
|
|
86817
|
-
return isObjectLike(value) &&
|
|
86294
|
+
return isObjectLike(value) && hasOwnProperty2.call(value, "callee") && !propertyIsEnumerable.call(value, "callee");
|
|
86818
86295
|
};
|
|
86819
86296
|
module.exports = isArguments;
|
|
86820
86297
|
});
|
|
@@ -86947,11 +86424,11 @@ var require__arrayLikeKeys = __commonJS(function(exports, module) {
|
|
|
86947
86424
|
var isIndex = require__isIndex();
|
|
86948
86425
|
var isTypedArray = require_isTypedArray();
|
|
86949
86426
|
var objectProto = Object.prototype;
|
|
86950
|
-
var
|
|
86427
|
+
var hasOwnProperty2 = objectProto.hasOwnProperty;
|
|
86951
86428
|
function arrayLikeKeys(value, inherited) {
|
|
86952
86429
|
var isArr = isArray(value), isArg = !isArr && isArguments(value), isBuff = !isArr && !isArg && isBuffer(value), isType = !isArr && !isArg && !isBuff && isTypedArray(value), skipIndexes = isArr || isArg || isBuff || isType, result = skipIndexes ? baseTimes(value.length, String) : [], length = result.length;
|
|
86953
86430
|
for (var key in value) {
|
|
86954
|
-
if ((inherited ||
|
|
86431
|
+
if ((inherited || hasOwnProperty2.call(value, key)) && !(skipIndexes && (key == "length" || isBuff && (key == "offset" || key == "parent") || isType && (key == "buffer" || key == "byteLength" || key == "byteOffset") || isIndex(key, length)))) {
|
|
86955
86432
|
result.push(key);
|
|
86956
86433
|
}
|
|
86957
86434
|
}
|
|
@@ -86992,14 +86469,14 @@ var require__baseKeys = __commonJS(function(exports, module) {
|
|
|
86992
86469
|
var isPrototype = require__isPrototype();
|
|
86993
86470
|
var nativeKeys = require__nativeKeys();
|
|
86994
86471
|
var objectProto = Object.prototype;
|
|
86995
|
-
var
|
|
86472
|
+
var hasOwnProperty2 = objectProto.hasOwnProperty;
|
|
86996
86473
|
function baseKeys(object3) {
|
|
86997
86474
|
if (!isPrototype(object3)) {
|
|
86998
86475
|
return nativeKeys(object3);
|
|
86999
86476
|
}
|
|
87000
86477
|
var result = [];
|
|
87001
86478
|
for (var key in Object(object3)) {
|
|
87002
|
-
if (
|
|
86479
|
+
if (hasOwnProperty2.call(object3, key) && key != "constructor") {
|
|
87003
86480
|
result.push(key);
|
|
87004
86481
|
}
|
|
87005
86482
|
}
|
|
@@ -87045,7 +86522,7 @@ var require__equalObjects = __commonJS(function(exports, module) {
|
|
|
87045
86522
|
var getAllKeys = require__getAllKeys();
|
|
87046
86523
|
var COMPARE_PARTIAL_FLAG = 1;
|
|
87047
86524
|
var objectProto = Object.prototype;
|
|
87048
|
-
var
|
|
86525
|
+
var hasOwnProperty2 = objectProto.hasOwnProperty;
|
|
87049
86526
|
function equalObjects(object3, other, bitmask, customizer, equalFunc, stack) {
|
|
87050
86527
|
var isPartial = bitmask & COMPARE_PARTIAL_FLAG, objProps = getAllKeys(object3), objLength = objProps.length, othProps = getAllKeys(other), othLength = othProps.length;
|
|
87051
86528
|
if (objLength != othLength && !isPartial) {
|
|
@@ -87054,7 +86531,7 @@ var require__equalObjects = __commonJS(function(exports, module) {
|
|
|
87054
86531
|
var index = objLength;
|
|
87055
86532
|
while (index--) {
|
|
87056
86533
|
var key = objProps[index];
|
|
87057
|
-
if (!(isPartial ? key in other :
|
|
86534
|
+
if (!(isPartial ? key in other : hasOwnProperty2.call(other, key))) {
|
|
87058
86535
|
return false;
|
|
87059
86536
|
}
|
|
87060
86537
|
}
|
|
@@ -87183,7 +86660,7 @@ var require__baseIsEqualDeep = __commonJS(function(exports, module) {
|
|
|
87183
86660
|
var arrayTag = "[object Array]";
|
|
87184
86661
|
var objectTag = "[object Object]";
|
|
87185
86662
|
var objectProto = Object.prototype;
|
|
87186
|
-
var
|
|
86663
|
+
var hasOwnProperty2 = objectProto.hasOwnProperty;
|
|
87187
86664
|
function baseIsEqualDeep(object3, other, bitmask, customizer, equalFunc, stack) {
|
|
87188
86665
|
var objIsArr = isArray(object3), othIsArr = isArray(other), objTag = objIsArr ? arrayTag : getTag(object3), othTag = othIsArr ? arrayTag : getTag(other);
|
|
87189
86666
|
objTag = objTag == argsTag ? objectTag : objTag;
|
|
@@ -87201,7 +86678,7 @@ var require__baseIsEqualDeep = __commonJS(function(exports, module) {
|
|
|
87201
86678
|
return objIsArr || isTypedArray(object3) ? equalArrays(object3, other, bitmask, customizer, equalFunc, stack) : equalByTag(object3, other, objTag, bitmask, customizer, equalFunc, stack);
|
|
87202
86679
|
}
|
|
87203
86680
|
if (!(bitmask & COMPARE_PARTIAL_FLAG)) {
|
|
87204
|
-
var objIsWrapped = objIsObj &&
|
|
86681
|
+
var objIsWrapped = objIsObj && hasOwnProperty2.call(object3, "__wrapped__"), othIsWrapped = othIsObj && hasOwnProperty2.call(other, "__wrapped__");
|
|
87205
86682
|
if (objIsWrapped || othIsWrapped) {
|
|
87206
86683
|
var objUnwrapped = objIsWrapped ? object3.value() : object3, othUnwrapped = othIsWrapped ? other.value() : other;
|
|
87207
86684
|
stack || (stack = new Stack);
|
|
@@ -89824,247 +89301,247 @@ var init_manifest = __esm(() => {
|
|
|
89824
89301
|
init_i18next();
|
|
89825
89302
|
init_i18next();
|
|
89826
89303
|
init_zod();
|
|
89827
|
-
|
|
89304
|
+
init_dist2();
|
|
89828
89305
|
init_zod();
|
|
89829
|
-
|
|
89306
|
+
init_dist2();
|
|
89830
89307
|
init_zod();
|
|
89831
|
-
|
|
89308
|
+
init_dist2();
|
|
89832
89309
|
init_zod();
|
|
89833
|
-
|
|
89310
|
+
init_dist2();
|
|
89834
89311
|
init_zod();
|
|
89835
|
-
|
|
89836
|
-
|
|
89312
|
+
init_dist2();
|
|
89313
|
+
init_dist2();
|
|
89837
89314
|
init_zod();
|
|
89838
|
-
|
|
89315
|
+
init_dist2();
|
|
89839
89316
|
init_zod();
|
|
89840
|
-
|
|
89317
|
+
init_dist2();
|
|
89841
89318
|
init_zod();
|
|
89842
|
-
|
|
89319
|
+
init_dist2();
|
|
89843
89320
|
init_zod();
|
|
89844
|
-
|
|
89321
|
+
init_dist2();
|
|
89845
89322
|
init_zod();
|
|
89846
|
-
|
|
89323
|
+
init_dist2();
|
|
89847
89324
|
init_zod();
|
|
89848
|
-
|
|
89325
|
+
init_dist2();
|
|
89849
89326
|
init_zod();
|
|
89850
|
-
|
|
89327
|
+
init_dist2();
|
|
89851
89328
|
init_zod();
|
|
89852
|
-
|
|
89329
|
+
init_dist2();
|
|
89853
89330
|
init_zod();
|
|
89854
|
-
|
|
89331
|
+
init_dist2();
|
|
89855
89332
|
init_zod();
|
|
89856
|
-
|
|
89333
|
+
init_dist2();
|
|
89857
89334
|
init_zod();
|
|
89858
|
-
|
|
89335
|
+
init_dist2();
|
|
89859
89336
|
init_zod();
|
|
89860
|
-
|
|
89337
|
+
init_dist2();
|
|
89861
89338
|
init_zod();
|
|
89862
|
-
|
|
89339
|
+
init_dist2();
|
|
89863
89340
|
init_zod();
|
|
89864
|
-
|
|
89341
|
+
init_dist2();
|
|
89865
89342
|
init_zod();
|
|
89866
|
-
|
|
89343
|
+
init_dist2();
|
|
89867
89344
|
init_zod();
|
|
89868
|
-
|
|
89345
|
+
init_dist2();
|
|
89869
89346
|
init_zod();
|
|
89870
|
-
|
|
89347
|
+
init_dist2();
|
|
89871
89348
|
init_zod();
|
|
89872
|
-
|
|
89349
|
+
init_dist2();
|
|
89873
89350
|
init_zod();
|
|
89874
|
-
|
|
89351
|
+
init_dist2();
|
|
89875
89352
|
init_zod();
|
|
89876
|
-
|
|
89353
|
+
init_dist2();
|
|
89877
89354
|
init_i18next();
|
|
89878
89355
|
init_zod();
|
|
89879
|
-
|
|
89356
|
+
init_dist2();
|
|
89880
89357
|
init_zod();
|
|
89881
|
-
|
|
89358
|
+
init_dist2();
|
|
89882
89359
|
init_zod();
|
|
89883
|
-
|
|
89360
|
+
init_dist2();
|
|
89884
89361
|
init_zod();
|
|
89885
|
-
|
|
89362
|
+
init_dist2();
|
|
89886
89363
|
init_zod();
|
|
89887
|
-
|
|
89364
|
+
init_dist2();
|
|
89888
89365
|
init_zod();
|
|
89889
|
-
|
|
89366
|
+
init_dist2();
|
|
89890
89367
|
init_zod();
|
|
89891
|
-
|
|
89368
|
+
init_dist2();
|
|
89892
89369
|
init_zod();
|
|
89893
|
-
|
|
89370
|
+
init_dist2();
|
|
89894
89371
|
init_zod();
|
|
89895
|
-
|
|
89372
|
+
init_dist2();
|
|
89896
89373
|
init_zod();
|
|
89897
|
-
|
|
89374
|
+
init_dist2();
|
|
89898
89375
|
init_zod();
|
|
89899
|
-
|
|
89376
|
+
init_dist2();
|
|
89900
89377
|
init_zod();
|
|
89901
|
-
|
|
89378
|
+
init_dist2();
|
|
89902
89379
|
init_zod();
|
|
89903
|
-
|
|
89380
|
+
init_dist2();
|
|
89904
89381
|
init_zod();
|
|
89905
|
-
|
|
89382
|
+
init_dist2();
|
|
89906
89383
|
init_zod();
|
|
89907
|
-
|
|
89384
|
+
init_dist2();
|
|
89908
89385
|
init_i18next();
|
|
89909
|
-
|
|
89386
|
+
init_dist2();
|
|
89910
89387
|
init_zod();
|
|
89911
|
-
|
|
89388
|
+
init_dist2();
|
|
89912
89389
|
init_zod();
|
|
89913
|
-
|
|
89390
|
+
init_dist2();
|
|
89914
89391
|
init_zod();
|
|
89915
|
-
|
|
89392
|
+
init_dist2();
|
|
89916
89393
|
init_zod();
|
|
89917
|
-
|
|
89394
|
+
init_dist2();
|
|
89918
89395
|
init_zod();
|
|
89919
|
-
|
|
89396
|
+
init_dist2();
|
|
89920
89397
|
init_zod();
|
|
89921
|
-
|
|
89398
|
+
init_dist2();
|
|
89922
89399
|
init_zod();
|
|
89923
|
-
|
|
89400
|
+
init_dist2();
|
|
89924
89401
|
init_zod();
|
|
89925
|
-
|
|
89402
|
+
init_dist2();
|
|
89926
89403
|
init_zod();
|
|
89927
|
-
|
|
89404
|
+
init_dist2();
|
|
89928
89405
|
init_zod();
|
|
89929
|
-
|
|
89406
|
+
init_dist2();
|
|
89930
89407
|
init_zod();
|
|
89931
|
-
|
|
89408
|
+
init_dist2();
|
|
89932
89409
|
init_zod();
|
|
89933
|
-
|
|
89410
|
+
init_dist2();
|
|
89934
89411
|
init_zod();
|
|
89935
|
-
|
|
89412
|
+
init_dist2();
|
|
89936
89413
|
init_zod();
|
|
89937
|
-
|
|
89414
|
+
init_dist2();
|
|
89938
89415
|
init_zod();
|
|
89939
|
-
|
|
89416
|
+
init_dist2();
|
|
89940
89417
|
init_zod();
|
|
89941
|
-
|
|
89418
|
+
init_dist2();
|
|
89942
89419
|
init_zod();
|
|
89943
|
-
|
|
89420
|
+
init_dist2();
|
|
89944
89421
|
init_zod();
|
|
89945
|
-
|
|
89422
|
+
init_dist2();
|
|
89946
89423
|
init_zod();
|
|
89947
|
-
|
|
89424
|
+
init_dist2();
|
|
89948
89425
|
init_zod();
|
|
89949
|
-
|
|
89426
|
+
init_dist2();
|
|
89950
89427
|
init_zod();
|
|
89951
|
-
|
|
89428
|
+
init_dist2();
|
|
89952
89429
|
init_zod();
|
|
89953
|
-
|
|
89430
|
+
init_dist2();
|
|
89954
89431
|
init_zod();
|
|
89955
|
-
|
|
89432
|
+
init_dist2();
|
|
89956
89433
|
init_zod();
|
|
89957
|
-
|
|
89434
|
+
init_dist2();
|
|
89958
89435
|
init_zod();
|
|
89959
|
-
|
|
89436
|
+
init_dist2();
|
|
89960
89437
|
init_zod();
|
|
89961
|
-
|
|
89438
|
+
init_dist2();
|
|
89962
89439
|
init_zod();
|
|
89963
|
-
|
|
89440
|
+
init_dist2();
|
|
89964
89441
|
init_zod();
|
|
89965
|
-
|
|
89442
|
+
init_dist2();
|
|
89966
89443
|
init_zod();
|
|
89967
|
-
|
|
89444
|
+
init_dist2();
|
|
89968
89445
|
init_zod();
|
|
89969
|
-
|
|
89446
|
+
init_dist2();
|
|
89970
89447
|
init_zod();
|
|
89971
|
-
|
|
89448
|
+
init_dist2();
|
|
89972
89449
|
init_zod();
|
|
89973
|
-
|
|
89450
|
+
init_dist2();
|
|
89974
89451
|
init_zod();
|
|
89975
|
-
|
|
89452
|
+
init_dist2();
|
|
89976
89453
|
init_zod();
|
|
89977
|
-
|
|
89454
|
+
init_dist2();
|
|
89978
89455
|
init_zod();
|
|
89979
|
-
|
|
89456
|
+
init_dist2();
|
|
89980
89457
|
init_zod();
|
|
89981
|
-
|
|
89458
|
+
init_dist2();
|
|
89982
89459
|
init_zod();
|
|
89983
|
-
|
|
89460
|
+
init_dist2();
|
|
89984
89461
|
init_zod();
|
|
89985
|
-
|
|
89462
|
+
init_dist2();
|
|
89986
89463
|
init_zod();
|
|
89987
|
-
|
|
89464
|
+
init_dist2();
|
|
89988
89465
|
init_zod();
|
|
89989
|
-
|
|
89466
|
+
init_dist2();
|
|
89990
89467
|
init_zod();
|
|
89991
|
-
|
|
89468
|
+
init_dist2();
|
|
89992
89469
|
init_zod();
|
|
89993
|
-
|
|
89470
|
+
init_dist2();
|
|
89994
89471
|
init_zod();
|
|
89995
|
-
|
|
89472
|
+
init_dist2();
|
|
89996
89473
|
init_zod();
|
|
89997
|
-
|
|
89998
|
-
|
|
89474
|
+
init_dist2();
|
|
89475
|
+
init_dist2();
|
|
89999
89476
|
init_zod();
|
|
90000
|
-
|
|
89477
|
+
init_dist2();
|
|
90001
89478
|
init_zod();
|
|
90002
|
-
|
|
89479
|
+
init_dist2();
|
|
90003
89480
|
init_zod();
|
|
90004
|
-
|
|
89481
|
+
init_dist2();
|
|
90005
89482
|
init_zod();
|
|
90006
|
-
|
|
89483
|
+
init_dist2();
|
|
90007
89484
|
init_zod();
|
|
90008
|
-
|
|
89485
|
+
init_dist2();
|
|
90009
89486
|
init_zod();
|
|
90010
|
-
|
|
89487
|
+
init_dist2();
|
|
90011
89488
|
init_zod();
|
|
90012
|
-
|
|
89489
|
+
init_dist2();
|
|
90013
89490
|
init_zod();
|
|
90014
|
-
|
|
89491
|
+
init_dist2();
|
|
90015
89492
|
init_zod();
|
|
90016
|
-
|
|
89493
|
+
init_dist2();
|
|
90017
89494
|
init_zod();
|
|
90018
|
-
|
|
89495
|
+
init_dist2();
|
|
90019
89496
|
init_zod();
|
|
90020
|
-
|
|
89497
|
+
init_dist2();
|
|
90021
89498
|
init_zod();
|
|
90022
|
-
|
|
89499
|
+
init_dist2();
|
|
90023
89500
|
init_zod();
|
|
90024
|
-
|
|
89501
|
+
init_dist2();
|
|
90025
89502
|
init_zod();
|
|
90026
|
-
|
|
89503
|
+
init_dist2();
|
|
90027
89504
|
init_zod();
|
|
90028
|
-
|
|
89505
|
+
init_dist2();
|
|
90029
89506
|
init_zod();
|
|
90030
|
-
|
|
89507
|
+
init_dist2();
|
|
90031
89508
|
init_zod();
|
|
90032
|
-
|
|
89509
|
+
init_dist2();
|
|
90033
89510
|
init_zod();
|
|
90034
|
-
|
|
89511
|
+
init_dist2();
|
|
90035
89512
|
init_zod();
|
|
90036
|
-
|
|
89513
|
+
init_dist2();
|
|
90037
89514
|
init_zod();
|
|
90038
|
-
|
|
89515
|
+
init_dist2();
|
|
90039
89516
|
init_zod();
|
|
90040
|
-
|
|
89517
|
+
init_dist2();
|
|
90041
89518
|
init_zod();
|
|
90042
|
-
|
|
89519
|
+
init_dist2();
|
|
90043
89520
|
init_zod();
|
|
90044
|
-
|
|
89521
|
+
init_dist2();
|
|
90045
89522
|
init_zod();
|
|
90046
|
-
|
|
89523
|
+
init_dist2();
|
|
90047
89524
|
init_zod();
|
|
90048
|
-
|
|
89525
|
+
init_dist2();
|
|
90049
89526
|
init_zod();
|
|
90050
|
-
|
|
89527
|
+
init_dist2();
|
|
90051
89528
|
init_zod();
|
|
90052
|
-
|
|
89529
|
+
init_dist2();
|
|
90053
89530
|
init_zod();
|
|
90054
|
-
|
|
89531
|
+
init_dist2();
|
|
90055
89532
|
init_zod();
|
|
90056
|
-
|
|
89533
|
+
init_dist2();
|
|
90057
89534
|
init_zod();
|
|
90058
|
-
|
|
89535
|
+
init_dist2();
|
|
90059
89536
|
init_zod();
|
|
90060
|
-
|
|
89537
|
+
init_dist2();
|
|
90061
89538
|
init_i18next();
|
|
90062
|
-
|
|
89539
|
+
init_dist2();
|
|
90063
89540
|
init_i18next();
|
|
90064
89541
|
init_i18next();
|
|
90065
89542
|
init_i18next();
|
|
90066
|
-
|
|
90067
|
-
|
|
89543
|
+
init_dist2();
|
|
89544
|
+
init_dist2();
|
|
90068
89545
|
import_isEqual = __toESM(require_isEqual(), 1);
|
|
90069
89546
|
fixedT = instance.getFixedT(null, MANIFEST_NAMESPACE);
|
|
90070
89547
|
ERROR_OUTPUT_DEFINITION = {
|
|
@@ -123944,8 +123421,8 @@ function isAuthProfileStorage(value) {
|
|
|
123944
123421
|
return value !== null && typeof value === "object" && "getStore" in value && "run" in value;
|
|
123945
123422
|
}
|
|
123946
123423
|
function createProfileStorage() {
|
|
123947
|
-
const [error90,
|
|
123948
|
-
if (error90 || typeof
|
|
123424
|
+
const [error90, mod] = catchError2(() => __require("node:async_hooks"));
|
|
123425
|
+
if (error90 || typeof mod?.AsyncLocalStorage !== "function") {
|
|
123949
123426
|
return {
|
|
123950
123427
|
getStore: () => {
|
|
123951
123428
|
return;
|
|
@@ -123953,7 +123430,7 @@ function createProfileStorage() {
|
|
|
123953
123430
|
run: (_store, fn) => fn()
|
|
123954
123431
|
};
|
|
123955
123432
|
}
|
|
123956
|
-
return new
|
|
123433
|
+
return new mod.AsyncLocalStorage;
|
|
123957
123434
|
}
|
|
123958
123435
|
function getProfileStorage() {
|
|
123959
123436
|
const existing = globalSlot2[AUTH_PROFILE_STORAGE_KEY];
|
|
@@ -124332,11 +123809,11 @@ var DEFAULT_TIMEOUT_MS = 1000, CLOSE_TIMEOUT_MS = 500, ROBOT_USER_SERVICES_PIPE
|
|
|
124332
123809
|
if (!hostLoader) {
|
|
124333
123810
|
return;
|
|
124334
123811
|
}
|
|
124335
|
-
const [error90,
|
|
124336
|
-
if (error90 || !
|
|
123812
|
+
const [error90, mod] = await catchError2(() => hostLoader());
|
|
123813
|
+
if (error90 || !mod) {
|
|
124337
123814
|
return;
|
|
124338
123815
|
}
|
|
124339
|
-
return
|
|
123816
|
+
return mod;
|
|
124340
123817
|
}, tryRobotClientFallback = async (options = {}) => {
|
|
124341
123818
|
if (isBrowser())
|
|
124342
123819
|
return;
|
|
@@ -124354,10 +123831,10 @@ var DEFAULT_TIMEOUT_MS = 1000, CLOSE_TIMEOUT_MS = 500, ROBOT_USER_SERVICES_PIPE
|
|
|
124354
123831
|
if (!await isRobotIpcAvailable()) {
|
|
124355
123832
|
return;
|
|
124356
123833
|
}
|
|
124357
|
-
const
|
|
124358
|
-
if (!
|
|
123834
|
+
const mod = await loadModule();
|
|
123835
|
+
if (!mod)
|
|
124359
123836
|
return;
|
|
124360
|
-
const [ctorError, proxy] = catchError2(() => new
|
|
123837
|
+
const [ctorError, proxy] = catchError2(() => new mod.RobotProxyConstructor);
|
|
124361
123838
|
if (ctorError || !proxy) {
|
|
124362
123839
|
return;
|
|
124363
123840
|
}
|
|
@@ -125857,8 +125334,8 @@ var package_default;
|
|
|
125857
125334
|
var init_package = __esm(() => {
|
|
125858
125335
|
package_default = {
|
|
125859
125336
|
name: "@uipath/integrationservice-sdk",
|
|
125860
|
-
license: "
|
|
125861
|
-
version: "1.202.0
|
|
125337
|
+
license: "SEE LICENSE IN LICENSE.txt",
|
|
125338
|
+
version: "1.202.0",
|
|
125862
125339
|
repository: {
|
|
125863
125340
|
type: "git",
|
|
125864
125341
|
url: "https://github.com/UiPath/cli.git",
|
|
@@ -137661,15 +137138,15 @@ var require_fromEvent = __commonJS(function(exports) {
|
|
|
137661
137138
|
return function(handler) {
|
|
137662
137139
|
return target[methodName](eventName, handler, options);
|
|
137663
137140
|
};
|
|
137664
|
-
}) : isNodeStyleEventEmitter(target) ? nodeEventEmitterMethods.map(toCommonHandlerRegistry(target, eventName)) : isJQueryStyleEventEmitter(target) ? jqueryMethods.map(toCommonHandlerRegistry(target, eventName)) : [], 2),
|
|
137665
|
-
if (!
|
|
137141
|
+
}) : isNodeStyleEventEmitter(target) ? nodeEventEmitterMethods.map(toCommonHandlerRegistry(target, eventName)) : isJQueryStyleEventEmitter(target) ? jqueryMethods.map(toCommonHandlerRegistry(target, eventName)) : [], 2), add = _a3[0], remove = _a3[1];
|
|
137142
|
+
if (!add) {
|
|
137666
137143
|
if (isArrayLike_1.isArrayLike(target)) {
|
|
137667
137144
|
return mergeMap_1.mergeMap(function(subTarget) {
|
|
137668
137145
|
return fromEvent(subTarget, eventName, options);
|
|
137669
137146
|
})(innerFrom_1.innerFrom(target));
|
|
137670
137147
|
}
|
|
137671
137148
|
}
|
|
137672
|
-
if (!
|
|
137149
|
+
if (!add) {
|
|
137673
137150
|
throw new TypeError("Invalid event target");
|
|
137674
137151
|
}
|
|
137675
137152
|
return new Observable_1.Observable(function(subscriber) {
|
|
@@ -137680,7 +137157,7 @@ var require_fromEvent = __commonJS(function(exports) {
|
|
|
137680
137157
|
}
|
|
137681
137158
|
return subscriber.next(1 < args.length ? args : args[0]);
|
|
137682
137159
|
};
|
|
137683
|
-
|
|
137160
|
+
add(handler);
|
|
137684
137161
|
return function() {
|
|
137685
137162
|
return remove(handler);
|
|
137686
137163
|
};
|
|
@@ -142921,7 +142398,7 @@ var init__Symbol = __esm(() => {
|
|
|
142921
142398
|
|
|
142922
142399
|
// ../../node_modules/lodash-es/_getRawTag.js
|
|
142923
142400
|
function getRawTag(value) {
|
|
142924
|
-
var isOwn =
|
|
142401
|
+
var isOwn = hasOwnProperty2.call(value, symToStringTag), tag = value[symToStringTag];
|
|
142925
142402
|
try {
|
|
142926
142403
|
value[symToStringTag] = undefined;
|
|
142927
142404
|
var unmasked = true;
|
|
@@ -142936,11 +142413,11 @@ function getRawTag(value) {
|
|
|
142936
142413
|
}
|
|
142937
142414
|
return result;
|
|
142938
142415
|
}
|
|
142939
|
-
var objectProto,
|
|
142416
|
+
var objectProto, hasOwnProperty2, nativeObjectToString, symToStringTag, _getRawTag_default;
|
|
142940
142417
|
var init__getRawTag = __esm(() => {
|
|
142941
142418
|
init__Symbol();
|
|
142942
142419
|
objectProto = Object.prototype;
|
|
142943
|
-
|
|
142420
|
+
hasOwnProperty2 = objectProto.hasOwnProperty;
|
|
142944
142421
|
nativeObjectToString = objectProto.toString;
|
|
142945
142422
|
symToStringTag = _Symbol_default ? _Symbol_default.toStringTag : undefined;
|
|
142946
142423
|
_getRawTag_default = getRawTag;
|
|
@@ -142974,13 +142451,13 @@ var init__baseGetTag = __esm(() => {
|
|
|
142974
142451
|
});
|
|
142975
142452
|
|
|
142976
142453
|
// ../../node_modules/lodash-es/isObject.js
|
|
142977
|
-
function
|
|
142454
|
+
function isObject3(value) {
|
|
142978
142455
|
var type2 = typeof value;
|
|
142979
142456
|
return value != null && (type2 == "object" || type2 == "function");
|
|
142980
142457
|
}
|
|
142981
142458
|
var isObject_default;
|
|
142982
142459
|
var init_isObject = __esm(() => {
|
|
142983
|
-
isObject_default =
|
|
142460
|
+
isObject_default = isObject3;
|
|
142984
142461
|
});
|
|
142985
142462
|
|
|
142986
142463
|
// ../../node_modules/lodash-es/isFunction.js
|
|
@@ -143047,7 +142524,7 @@ function baseIsNative(value) {
|
|
|
143047
142524
|
var pattern = isFunction_default(value) ? reIsNative : reIsHostCtor;
|
|
143048
142525
|
return pattern.test(_toSource_default(value));
|
|
143049
142526
|
}
|
|
143050
|
-
var reRegExpChar, reIsHostCtor, funcProto2, objectProto3, funcToString2,
|
|
142527
|
+
var reRegExpChar, reIsHostCtor, funcProto2, objectProto3, funcToString2, hasOwnProperty3, reIsNative, _baseIsNative_default;
|
|
143051
142528
|
var init__baseIsNative = __esm(() => {
|
|
143052
142529
|
init_isFunction();
|
|
143053
142530
|
init__isMasked();
|
|
@@ -143058,8 +142535,8 @@ var init__baseIsNative = __esm(() => {
|
|
|
143058
142535
|
funcProto2 = Function.prototype;
|
|
143059
142536
|
objectProto3 = Object.prototype;
|
|
143060
142537
|
funcToString2 = funcProto2.toString;
|
|
143061
|
-
|
|
143062
|
-
reIsNative = RegExp("^" + funcToString2.call(
|
|
142538
|
+
hasOwnProperty3 = objectProto3.hasOwnProperty;
|
|
142539
|
+
reIsNative = RegExp("^" + funcToString2.call(hasOwnProperty3).replace(reRegExpChar, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$");
|
|
143063
142540
|
_baseIsNative_default = baseIsNative;
|
|
143064
142541
|
});
|
|
143065
142542
|
|
|
@@ -143121,26 +142598,26 @@ function hashGet(key) {
|
|
|
143121
142598
|
var result = data[key];
|
|
143122
142599
|
return result === HASH_UNDEFINED ? undefined : result;
|
|
143123
142600
|
}
|
|
143124
|
-
return
|
|
142601
|
+
return hasOwnProperty4.call(data, key) ? data[key] : undefined;
|
|
143125
142602
|
}
|
|
143126
|
-
var HASH_UNDEFINED = "__lodash_hash_undefined__", objectProto4,
|
|
142603
|
+
var HASH_UNDEFINED = "__lodash_hash_undefined__", objectProto4, hasOwnProperty4, _hashGet_default;
|
|
143127
142604
|
var init__hashGet = __esm(() => {
|
|
143128
142605
|
init__nativeCreate();
|
|
143129
142606
|
objectProto4 = Object.prototype;
|
|
143130
|
-
|
|
142607
|
+
hasOwnProperty4 = objectProto4.hasOwnProperty;
|
|
143131
142608
|
_hashGet_default = hashGet;
|
|
143132
142609
|
});
|
|
143133
142610
|
|
|
143134
142611
|
// ../../node_modules/lodash-es/_hashHas.js
|
|
143135
142612
|
function hashHas(key) {
|
|
143136
142613
|
var data = this.__data__;
|
|
143137
|
-
return _nativeCreate_default ? data[key] !== undefined :
|
|
142614
|
+
return _nativeCreate_default ? data[key] !== undefined : hasOwnProperty5.call(data, key);
|
|
143138
142615
|
}
|
|
143139
|
-
var objectProto5,
|
|
142616
|
+
var objectProto5, hasOwnProperty5, _hashHas_default;
|
|
143140
142617
|
var init__hashHas = __esm(() => {
|
|
143141
142618
|
init__nativeCreate();
|
|
143142
142619
|
objectProto5 = Object.prototype;
|
|
143143
|
-
|
|
142620
|
+
hasOwnProperty5 = objectProto5.hasOwnProperty;
|
|
143144
142621
|
_hashHas_default = hashHas;
|
|
143145
142622
|
});
|
|
143146
142623
|
|
|
@@ -143644,17 +143121,17 @@ var init__baseIsArguments = __esm(() => {
|
|
|
143644
143121
|
});
|
|
143645
143122
|
|
|
143646
143123
|
// ../../node_modules/lodash-es/isArguments.js
|
|
143647
|
-
var objectProto6,
|
|
143124
|
+
var objectProto6, hasOwnProperty6, propertyIsEnumerable, isArguments, isArguments_default;
|
|
143648
143125
|
var init_isArguments = __esm(() => {
|
|
143649
143126
|
init__baseIsArguments();
|
|
143650
143127
|
init_isObjectLike();
|
|
143651
143128
|
objectProto6 = Object.prototype;
|
|
143652
|
-
|
|
143129
|
+
hasOwnProperty6 = objectProto6.hasOwnProperty;
|
|
143653
143130
|
propertyIsEnumerable = objectProto6.propertyIsEnumerable;
|
|
143654
143131
|
isArguments = _baseIsArguments_default(function() {
|
|
143655
143132
|
return arguments;
|
|
143656
143133
|
}()) ? _baseIsArguments_default : function(value) {
|
|
143657
|
-
return isObjectLike_default(value) &&
|
|
143134
|
+
return isObjectLike_default(value) && hasOwnProperty6.call(value, "callee") && !propertyIsEnumerable.call(value, "callee");
|
|
143658
143135
|
};
|
|
143659
143136
|
isArguments_default = isArguments;
|
|
143660
143137
|
});
|
|
@@ -144290,13 +143767,13 @@ var init_isTypedArray = __esm(() => {
|
|
|
144290
143767
|
function arrayLikeKeys(value, inherited) {
|
|
144291
143768
|
var isArr = isArray_default(value), isArg = !isArr && isArguments_default(value), isBuff = !isArr && !isArg && isBuffer_default(value), isType = !isArr && !isArg && !isBuff && isTypedArray_default(value), skipIndexes = isArr || isArg || isBuff || isType, result = skipIndexes ? _baseTimes_default(value.length, String) : [], length = result.length;
|
|
144292
143769
|
for (var key in value) {
|
|
144293
|
-
if ((inherited ||
|
|
143770
|
+
if ((inherited || hasOwnProperty7.call(value, key)) && !(skipIndexes && (key == "length" || isBuff && (key == "offset" || key == "parent") || isType && (key == "buffer" || key == "byteLength" || key == "byteOffset") || _isIndex_default(key, length)))) {
|
|
144294
143771
|
result.push(key);
|
|
144295
143772
|
}
|
|
144296
143773
|
}
|
|
144297
143774
|
return result;
|
|
144298
143775
|
}
|
|
144299
|
-
var objectProto7,
|
|
143776
|
+
var objectProto7, hasOwnProperty7, _arrayLikeKeys_default;
|
|
144300
143777
|
var init__arrayLikeKeys = __esm(() => {
|
|
144301
143778
|
init__baseTimes();
|
|
144302
143779
|
init_isArguments();
|
|
@@ -144305,7 +143782,7 @@ var init__arrayLikeKeys = __esm(() => {
|
|
|
144305
143782
|
init__isIndex();
|
|
144306
143783
|
init_isTypedArray();
|
|
144307
143784
|
objectProto7 = Object.prototype;
|
|
144308
|
-
|
|
143785
|
+
hasOwnProperty7 = objectProto7.hasOwnProperty;
|
|
144309
143786
|
_arrayLikeKeys_default = arrayLikeKeys;
|
|
144310
143787
|
});
|
|
144311
143788
|
|
|
@@ -144346,18 +143823,18 @@ function baseKeys(object3) {
|
|
|
144346
143823
|
}
|
|
144347
143824
|
var result = [];
|
|
144348
143825
|
for (var key in Object(object3)) {
|
|
144349
|
-
if (
|
|
143826
|
+
if (hasOwnProperty8.call(object3, key) && key != "constructor") {
|
|
144350
143827
|
result.push(key);
|
|
144351
143828
|
}
|
|
144352
143829
|
}
|
|
144353
143830
|
return result;
|
|
144354
143831
|
}
|
|
144355
|
-
var objectProto9,
|
|
143832
|
+
var objectProto9, hasOwnProperty8, _baseKeys_default;
|
|
144356
143833
|
var init__baseKeys = __esm(() => {
|
|
144357
143834
|
init__isPrototype();
|
|
144358
143835
|
init__nativeKeys();
|
|
144359
143836
|
objectProto9 = Object.prototype;
|
|
144360
|
-
|
|
143837
|
+
hasOwnProperty8 = objectProto9.hasOwnProperty;
|
|
144361
143838
|
_baseKeys_default = baseKeys;
|
|
144362
143839
|
});
|
|
144363
143840
|
|
|
@@ -144754,7 +144231,7 @@ function equalObjects(object3, other, bitmask, customizer, equalFunc, stack) {
|
|
|
144754
144231
|
var index = objLength;
|
|
144755
144232
|
while (index--) {
|
|
144756
144233
|
var key = objProps[index];
|
|
144757
|
-
if (!(isPartial ? key in other :
|
|
144234
|
+
if (!(isPartial ? key in other : hasOwnProperty9.call(other, key))) {
|
|
144758
144235
|
return false;
|
|
144759
144236
|
}
|
|
144760
144237
|
}
|
|
@@ -144789,11 +144266,11 @@ function equalObjects(object3, other, bitmask, customizer, equalFunc, stack) {
|
|
|
144789
144266
|
stack["delete"](other);
|
|
144790
144267
|
return result;
|
|
144791
144268
|
}
|
|
144792
|
-
var COMPARE_PARTIAL_FLAG3 = 1, objectProto11,
|
|
144269
|
+
var COMPARE_PARTIAL_FLAG3 = 1, objectProto11, hasOwnProperty9, _equalObjects_default;
|
|
144793
144270
|
var init__equalObjects = __esm(() => {
|
|
144794
144271
|
init__getAllKeys();
|
|
144795
144272
|
objectProto11 = Object.prototype;
|
|
144796
|
-
|
|
144273
|
+
hasOwnProperty9 = objectProto11.hasOwnProperty;
|
|
144797
144274
|
_equalObjects_default = equalObjects;
|
|
144798
144275
|
});
|
|
144799
144276
|
|
|
@@ -144890,7 +144367,7 @@ function baseIsEqualDeep(object3, other, bitmask, customizer, equalFunc, stack)
|
|
|
144890
144367
|
return objIsArr || isTypedArray_default(object3) ? _equalArrays_default(object3, other, bitmask, customizer, equalFunc, stack) : _equalByTag_default(object3, other, objTag, bitmask, customizer, equalFunc, stack);
|
|
144891
144368
|
}
|
|
144892
144369
|
if (!(bitmask & COMPARE_PARTIAL_FLAG4)) {
|
|
144893
|
-
var objIsWrapped = objIsObj &&
|
|
144370
|
+
var objIsWrapped = objIsObj && hasOwnProperty10.call(object3, "__wrapped__"), othIsWrapped = othIsObj && hasOwnProperty10.call(other, "__wrapped__");
|
|
144894
144371
|
if (objIsWrapped || othIsWrapped) {
|
|
144895
144372
|
var objUnwrapped = objIsWrapped ? object3.value() : object3, othUnwrapped = othIsWrapped ? other.value() : other;
|
|
144896
144373
|
stack || (stack = new _Stack_default);
|
|
@@ -144903,7 +144380,7 @@ function baseIsEqualDeep(object3, other, bitmask, customizer, equalFunc, stack)
|
|
|
144903
144380
|
stack || (stack = new _Stack_default);
|
|
144904
144381
|
return _equalObjects_default(object3, other, bitmask, customizer, equalFunc, stack);
|
|
144905
144382
|
}
|
|
144906
|
-
var COMPARE_PARTIAL_FLAG4 = 1, argsTag3 = "[object Arguments]", arrayTag2 = "[object Array]", objectTag3 = "[object Object]", objectProto12,
|
|
144383
|
+
var COMPARE_PARTIAL_FLAG4 = 1, argsTag3 = "[object Arguments]", arrayTag2 = "[object Array]", objectTag3 = "[object Object]", objectProto12, hasOwnProperty10, _baseIsEqualDeep_default;
|
|
144907
144384
|
var init__baseIsEqualDeep = __esm(() => {
|
|
144908
144385
|
init__Stack();
|
|
144909
144386
|
init__equalArrays();
|
|
@@ -144914,7 +144391,7 @@ var init__baseIsEqualDeep = __esm(() => {
|
|
|
144914
144391
|
init_isBuffer();
|
|
144915
144392
|
init_isTypedArray();
|
|
144916
144393
|
objectProto12 = Object.prototype;
|
|
144917
|
-
|
|
144394
|
+
hasOwnProperty10 = objectProto12.hasOwnProperty;
|
|
144918
144395
|
_baseIsEqualDeep_default = baseIsEqualDeep;
|
|
144919
144396
|
});
|
|
144920
144397
|
|
|
@@ -145178,14 +144655,14 @@ var init__createAggregator = __esm(() => {
|
|
|
145178
144655
|
});
|
|
145179
144656
|
|
|
145180
144657
|
// ../../node_modules/lodash-es/groupBy.js
|
|
145181
|
-
var objectProto13,
|
|
144658
|
+
var objectProto13, hasOwnProperty11, groupBy, groupBy_default;
|
|
145182
144659
|
var init_groupBy = __esm(() => {
|
|
145183
144660
|
init__baseAssignValue();
|
|
145184
144661
|
init__createAggregator();
|
|
145185
144662
|
objectProto13 = Object.prototype;
|
|
145186
|
-
|
|
144663
|
+
hasOwnProperty11 = objectProto13.hasOwnProperty;
|
|
145187
144664
|
groupBy = _createAggregator_default(function(result, value, key) {
|
|
145188
|
-
if (
|
|
144665
|
+
if (hasOwnProperty11.call(result, key)) {
|
|
145189
144666
|
result[key].push(value);
|
|
145190
144667
|
} else {
|
|
145191
144668
|
_baseAssignValue_default(result, key, [value]);
|
|
@@ -145326,13 +144803,13 @@ var init_orderBy = __esm(() => {
|
|
|
145326
144803
|
});
|
|
145327
144804
|
|
|
145328
144805
|
// ../../node_modules/lodash-es/_baseClamp.js
|
|
145329
|
-
function baseClamp(number7,
|
|
144806
|
+
function baseClamp(number7, lower, upper) {
|
|
145330
144807
|
if (number7 === number7) {
|
|
145331
|
-
if (
|
|
145332
|
-
number7 = number7 <=
|
|
144808
|
+
if (upper !== undefined) {
|
|
144809
|
+
number7 = number7 <= upper ? number7 : upper;
|
|
145333
144810
|
}
|
|
145334
|
-
if (
|
|
145335
|
-
number7 = number7 >=
|
|
144811
|
+
if (lower !== undefined) {
|
|
144812
|
+
number7 = number7 >= lower ? number7 : lower;
|
|
145336
144813
|
}
|
|
145337
144814
|
}
|
|
145338
144815
|
return number7;
|
|
@@ -145555,7 +145032,7 @@ var init__stringToArray = __esm(() => {
|
|
|
145555
145032
|
});
|
|
145556
145033
|
|
|
145557
145034
|
// ../../node_modules/lodash-es/trim.js
|
|
145558
|
-
function
|
|
145035
|
+
function trim(string7, chars2, guard) {
|
|
145559
145036
|
string7 = toString_default(string7);
|
|
145560
145037
|
if (string7 && (guard || chars2 === undefined)) {
|
|
145561
145038
|
return _baseTrim_default(string7);
|
|
@@ -145575,7 +145052,7 @@ var init_trim = __esm(() => {
|
|
|
145575
145052
|
init__charsStartIndex();
|
|
145576
145053
|
init__stringToArray();
|
|
145577
145054
|
init_toString();
|
|
145578
|
-
trim_default =
|
|
145055
|
+
trim_default = trim;
|
|
145579
145056
|
});
|
|
145580
145057
|
|
|
145581
145058
|
// ../../node_modules/lodash-es/trimEnd.js
|
|
@@ -146557,7 +146034,7 @@ function pick3(obj, keys2) {
|
|
|
146557
146034
|
return a;
|
|
146558
146035
|
}, {});
|
|
146559
146036
|
}
|
|
146560
|
-
function
|
|
146037
|
+
function hasOwnProperty12(obj, prop) {
|
|
146561
146038
|
return Object.prototype.hasOwnProperty.call(obj, prop);
|
|
146562
146039
|
}
|
|
146563
146040
|
function validateWeekSettings(settings) {
|
|
@@ -146701,7 +146178,7 @@ function asNumber(value) {
|
|
|
146701
146178
|
function normalizeObject(obj, normalizer) {
|
|
146702
146179
|
const normalized = {};
|
|
146703
146180
|
for (const u in obj) {
|
|
146704
|
-
if (
|
|
146181
|
+
if (hasOwnProperty12(obj, u)) {
|
|
146705
146182
|
const v = obj[u];
|
|
146706
146183
|
if (v === undefined || v === null)
|
|
146707
146184
|
continue;
|
|
@@ -147592,7 +147069,7 @@ function match(input, regex, handlers) {
|
|
|
147592
147069
|
const all = {};
|
|
147593
147070
|
let matchIndex = 1;
|
|
147594
147071
|
for (const i in handlers) {
|
|
147595
|
-
if (
|
|
147072
|
+
if (hasOwnProperty12(handlers, i)) {
|
|
147596
147073
|
const h = handlers[i], groups = h.groups ? h.groups + 1 : 1;
|
|
147597
147074
|
if (!h.literal && h.token) {
|
|
147598
147075
|
all[h.token.val[0]] = h.deser(matches.slice(matchIndex, matchIndex + groups));
|
|
@@ -147696,7 +147173,7 @@ function expandMacroTokens(tokens, locale) {
|
|
|
147696
147173
|
return Array.prototype.concat(...tokens.map((t14) => maybeExpandMacroToken(t14, locale)));
|
|
147697
147174
|
}
|
|
147698
147175
|
|
|
147699
|
-
class
|
|
147176
|
+
class TokenParser {
|
|
147700
147177
|
constructor(locale, format) {
|
|
147701
147178
|
this.locale = locale;
|
|
147702
147179
|
this.format = format;
|
|
@@ -147714,7 +147191,7 @@ class TokenParser2 {
|
|
|
147714
147191
|
return { input, tokens: this.tokens, invalidReason: this.invalidReason };
|
|
147715
147192
|
} else {
|
|
147716
147193
|
const [rawMatches, matches] = match(input, this.regex, this.handlers), [result, zone, specificOffset] = matches ? dateTimeFromMatches(matches) : [null, null, undefined];
|
|
147717
|
-
if (
|
|
147194
|
+
if (hasOwnProperty12(matches, "a") && hasOwnProperty12(matches, "H")) {
|
|
147718
147195
|
throw new ConflictingSpecificationError("Can't include meridiem when specifying 24-hour format");
|
|
147719
147196
|
}
|
|
147720
147197
|
return {
|
|
@@ -147737,7 +147214,7 @@ class TokenParser2 {
|
|
|
147737
147214
|
}
|
|
147738
147215
|
}
|
|
147739
147216
|
function explainFromTokens(locale, input, format) {
|
|
147740
|
-
const parser = new
|
|
147217
|
+
const parser = new TokenParser(locale, format);
|
|
147741
147218
|
return parser.explainFromTokens(input);
|
|
147742
147219
|
}
|
|
147743
147220
|
function parseFromTokens(locale, input, format) {
|
|
@@ -148900,7 +148377,7 @@ var init_luxon = __esm(() => {
|
|
|
148900
148377
|
return this;
|
|
148901
148378
|
const dur = Duration.fromDurationLike(duration5), result = {};
|
|
148902
148379
|
for (const k of orderedUnits$1) {
|
|
148903
|
-
if (
|
|
148380
|
+
if (hasOwnProperty12(dur.values, k) || hasOwnProperty12(this.values, k)) {
|
|
148904
148381
|
result[k] = dur.get(k) + this.get(k);
|
|
148905
148382
|
}
|
|
148906
148383
|
}
|
|
@@ -150108,7 +149585,7 @@ var init_luxon = __esm(() => {
|
|
|
150108
149585
|
numberingSystem,
|
|
150109
149586
|
defaultToEN: true
|
|
150110
149587
|
});
|
|
150111
|
-
return new
|
|
149588
|
+
return new TokenParser(localeToUse, fmt);
|
|
150112
149589
|
}
|
|
150113
149590
|
static fromFormatParser(text, formatParser, opts = {}) {
|
|
150114
149591
|
if (isUndefined(text) || isUndefined(formatParser)) {
|
|
@@ -151774,15 +151251,15 @@ var require_subset2 = __commonJS(function(exports, module) {
|
|
|
151774
151251
|
var { ANY } = Comparator;
|
|
151775
151252
|
var satisfies = require_satisfies2();
|
|
151776
151253
|
var compare = require_compare2();
|
|
151777
|
-
var subset = (
|
|
151778
|
-
if (
|
|
151254
|
+
var subset = (sub, dom, options = {}) => {
|
|
151255
|
+
if (sub === dom) {
|
|
151779
151256
|
return true;
|
|
151780
151257
|
}
|
|
151781
|
-
|
|
151258
|
+
sub = new Range(sub, options);
|
|
151782
151259
|
dom = new Range(dom, options);
|
|
151783
151260
|
let sawNonNull = false;
|
|
151784
151261
|
OUTER:
|
|
151785
|
-
for (const simpleSub of
|
|
151262
|
+
for (const simpleSub of sub.set) {
|
|
151786
151263
|
for (const simpleDom of dom.set) {
|
|
151787
151264
|
const isSub = simpleSubset(simpleSub, simpleDom, options);
|
|
151788
151265
|
sawNonNull = sawNonNull || isSub !== null;
|
|
@@ -151798,17 +151275,17 @@ var require_subset2 = __commonJS(function(exports, module) {
|
|
|
151798
151275
|
};
|
|
151799
151276
|
var minimumVersionWithPreRelease = [new Comparator(">=0.0.0-0")];
|
|
151800
151277
|
var minimumVersion = [new Comparator(">=0.0.0")];
|
|
151801
|
-
var simpleSubset = (
|
|
151802
|
-
if (
|
|
151278
|
+
var simpleSubset = (sub, dom, options) => {
|
|
151279
|
+
if (sub === dom) {
|
|
151803
151280
|
return true;
|
|
151804
151281
|
}
|
|
151805
|
-
if (
|
|
151282
|
+
if (sub.length === 1 && sub[0].semver === ANY) {
|
|
151806
151283
|
if (dom.length === 1 && dom[0].semver === ANY) {
|
|
151807
151284
|
return true;
|
|
151808
151285
|
} else if (options.includePrerelease) {
|
|
151809
|
-
|
|
151286
|
+
sub = minimumVersionWithPreRelease;
|
|
151810
151287
|
} else {
|
|
151811
|
-
|
|
151288
|
+
sub = minimumVersion;
|
|
151812
151289
|
}
|
|
151813
151290
|
}
|
|
151814
151291
|
if (dom.length === 1 && dom[0].semver === ANY) {
|
|
@@ -151820,7 +151297,7 @@ var require_subset2 = __commonJS(function(exports, module) {
|
|
|
151820
151297
|
}
|
|
151821
151298
|
const eqSet = new Set;
|
|
151822
151299
|
let gt, lt2;
|
|
151823
|
-
for (const c of
|
|
151300
|
+
for (const c of sub) {
|
|
151824
151301
|
if (c.operator === ">" || c.operator === ">=") {
|
|
151825
151302
|
gt = higherGT(gt, c, options);
|
|
151826
151303
|
} else if (c.operator === "<" || c.operator === "<=") {
|
|
@@ -151855,7 +151332,7 @@ var require_subset2 = __commonJS(function(exports, module) {
|
|
|
151855
151332
|
}
|
|
151856
151333
|
return true;
|
|
151857
151334
|
}
|
|
151858
|
-
let higher,
|
|
151335
|
+
let higher, lower;
|
|
151859
151336
|
let hasDomLT, hasDomGT;
|
|
151860
151337
|
let needDomLTPre = lt2 && !options.includePrerelease && lt2.semver.prerelease.length ? lt2.semver : false;
|
|
151861
151338
|
let needDomGTPre = gt && !options.includePrerelease && gt.semver.prerelease.length ? gt.semver : false;
|
|
@@ -151887,8 +151364,8 @@ var require_subset2 = __commonJS(function(exports, module) {
|
|
|
151887
151364
|
}
|
|
151888
151365
|
}
|
|
151889
151366
|
if (c.operator === "<" || c.operator === "<=") {
|
|
151890
|
-
|
|
151891
|
-
if (
|
|
151367
|
+
lower = lowerLT(lt2, c, options);
|
|
151368
|
+
if (lower === c && lower !== lt2) {
|
|
151892
151369
|
return false;
|
|
151893
151370
|
}
|
|
151894
151371
|
} else if (lt2.operator === "<=" && !satisfies(lt2.semver, String(c), options)) {
|
|
@@ -159874,8 +159351,8 @@ classDef hidden display: none;`;
|
|
|
159874
159351
|
});
|
|
159875
159352
|
|
|
159876
159353
|
// ../../node_modules/@uipath/integration-service-design-time/dist/index.mjs
|
|
159877
|
-
var
|
|
159878
|
-
__export(
|
|
159354
|
+
var exports_dist = {};
|
|
159355
|
+
__export(exports_dist, {
|
|
159879
159356
|
DesignTimeActivityClient: () => DesignTimeActivityClient2
|
|
159880
159357
|
});
|
|
159881
159358
|
function widgetOperandKeyString(parentPropertyName, rowId, operandPosition) {
|
|
@@ -160239,11 +159716,11 @@ function esc3(str2) {
|
|
|
160239
159716
|
function slugify2(input) {
|
|
160240
159717
|
return input.toLowerCase().trim().replace(/[^\w\s-]/g, "").replace(/[\s_-]+/g, "-").replace(/^-+|-+$/g, "");
|
|
160241
159718
|
}
|
|
160242
|
-
function
|
|
159719
|
+
function isObject4(data) {
|
|
160243
159720
|
return typeof data === "object" && data !== null && !Array.isArray(data);
|
|
160244
159721
|
}
|
|
160245
159722
|
function isPlainObject3(o) {
|
|
160246
|
-
if (
|
|
159723
|
+
if (isObject4(o) === false)
|
|
160247
159724
|
return false;
|
|
160248
159725
|
const ctor = o.constructor;
|
|
160249
159726
|
if (ctor === undefined)
|
|
@@ -160251,7 +159728,7 @@ function isPlainObject3(o) {
|
|
|
160251
159728
|
if (typeof ctor !== "function")
|
|
160252
159729
|
return true;
|
|
160253
159730
|
const prot = ctor.prototype;
|
|
160254
|
-
if (
|
|
159731
|
+
if (isObject4(prot) === false)
|
|
160255
159732
|
return false;
|
|
160256
159733
|
if (Object.prototype.hasOwnProperty.call(prot, "isPrototypeOf") === false) {
|
|
160257
159734
|
return false;
|
|
@@ -160603,12 +160080,12 @@ function uint8ArrayToHex2(bytes) {
|
|
|
160603
160080
|
function flattenError3(error462, mapper = (issue22) => issue22.message) {
|
|
160604
160081
|
const fieldErrors = {};
|
|
160605
160082
|
const formErrors = [];
|
|
160606
|
-
for (const
|
|
160607
|
-
if (
|
|
160608
|
-
fieldErrors[
|
|
160609
|
-
fieldErrors[
|
|
160083
|
+
for (const sub of error462.issues) {
|
|
160084
|
+
if (sub.path.length > 0) {
|
|
160085
|
+
fieldErrors[sub.path[0]] = fieldErrors[sub.path[0]] || [];
|
|
160086
|
+
fieldErrors[sub.path[0]].push(mapper(sub));
|
|
160610
160087
|
} else {
|
|
160611
|
-
formErrors.push(mapper(
|
|
160088
|
+
formErrors.push(mapper(sub));
|
|
160612
160089
|
}
|
|
160613
160090
|
}
|
|
160614
160091
|
return { formErrors, fieldErrors };
|
|
@@ -177798,7 +177275,7 @@ ${this._errorMessage}`;
|
|
|
177798
177275
|
};
|
|
177799
177276
|
}
|
|
177800
177277
|
}, DesignTimeActivityClient2;
|
|
177801
|
-
var
|
|
177278
|
+
var init_dist3 = __esm(() => {
|
|
177802
177279
|
init_lodash();
|
|
177803
177280
|
init_luxon();
|
|
177804
177281
|
init_lodash();
|
|
@@ -178961,7 +178438,7 @@ var init_dist4 = __esm(() => {
|
|
|
178961
178438
|
getParsedType: () => getParsedType3,
|
|
178962
178439
|
getSizableOrigin: () => getSizableOrigin3,
|
|
178963
178440
|
hexToUint8Array: () => hexToUint8Array2,
|
|
178964
|
-
isObject: () =>
|
|
178441
|
+
isObject: () => isObject4,
|
|
178965
178442
|
isPlainObject: () => isPlainObject3,
|
|
178966
178443
|
issue: () => issue3,
|
|
178967
178444
|
joinValues: () => joinValues3,
|
|
@@ -180304,7 +179781,7 @@ var init_dist4 = __esm(() => {
|
|
|
180304
179781
|
}
|
|
180305
179782
|
return propValues;
|
|
180306
179783
|
});
|
|
180307
|
-
const isObject22 =
|
|
179784
|
+
const isObject22 = isObject4;
|
|
180308
179785
|
const catchall = def.catchall;
|
|
180309
179786
|
let value;
|
|
180310
179787
|
inst._zod.parse = (payload, ctx) => {
|
|
@@ -180384,7 +179861,7 @@ var init_dist4 = __esm(() => {
|
|
|
180384
179861
|
return (payload, ctx) => fn(shape, payload, ctx);
|
|
180385
179862
|
};
|
|
180386
179863
|
let fastpass;
|
|
180387
|
-
const isObject22 =
|
|
179864
|
+
const isObject22 = isObject4;
|
|
180388
179865
|
const jit = !globalConfig3.jitless;
|
|
180389
179866
|
const allowsEval22 = allowsEval3;
|
|
180390
179867
|
const fastEnabled = jit && allowsEval22.value;
|
|
@@ -180496,7 +179973,7 @@ var init_dist4 = __esm(() => {
|
|
|
180496
179973
|
});
|
|
180497
179974
|
inst._zod.parse = (payload, ctx) => {
|
|
180498
179975
|
const input = payload.value;
|
|
180499
|
-
if (!
|
|
179976
|
+
if (!isObject4(input)) {
|
|
180500
179977
|
payload.issues.push({
|
|
180501
179978
|
code: "invalid_type",
|
|
180502
179979
|
expected: "object",
|
|
@@ -190491,7 +189968,7 @@ async function createConfiguredActivityClient({
|
|
|
190491
189968
|
assertFilterTreeSupported(tree);
|
|
190492
189969
|
}
|
|
190493
189970
|
}
|
|
190494
|
-
const { DesignTimeActivityClient: DesignTimeActivityClient3 } = await Promise.resolve().then(() => (
|
|
189971
|
+
const { DesignTimeActivityClient: DesignTimeActivityClient3 } = await Promise.resolve().then(() => (init_dist3(), exports_dist));
|
|
190495
189972
|
const client = await DesignTimeActivityClient3.initiate({ instanceParameters, uiPathActivityTypeId: "" }, { connectionsProvider: createLiveConnectionsProvider() });
|
|
190496
189973
|
await client.updateConnection({ connectionId });
|
|
190497
189974
|
if (customFieldsRequestDetails) {
|
|
@@ -198193,7 +197670,7 @@ class VoidApiResponse3 {
|
|
|
198193
197670
|
// ../orchestrator-sdk/package.json
|
|
198194
197671
|
var package_default2 = {
|
|
198195
197672
|
name: "@uipath/orchestrator-sdk",
|
|
198196
|
-
license: "
|
|
197673
|
+
license: "SEE LICENSE IN LICENSE.txt",
|
|
198197
197674
|
version: "1.202.0",
|
|
198198
197675
|
repository: {
|
|
198199
197676
|
type: "git",
|
|
@@ -200618,16 +200095,16 @@ async function getRegistry() {
|
|
|
200618
200095
|
}
|
|
200619
200096
|
async function searchRegistry(keyword) {
|
|
200620
200097
|
const registry5 = await getRegistry();
|
|
200621
|
-
const
|
|
200622
|
-
const extensionTypes = Object.values(registry5.static.extensionTypes).filter((et) => et.extensionType.toLowerCase().includes(
|
|
200623
|
-
const connectors = registry5.discovered.connectors.filter((c) => c.key.toLowerCase().includes(
|
|
200624
|
-
const processes = registry5.discovered.processes.filter((p) => p.name.toLowerCase().includes(
|
|
200098
|
+
const lower = keyword.toLowerCase();
|
|
200099
|
+
const extensionTypes = Object.values(registry5.static.extensionTypes).filter((et) => et.extensionType.toLowerCase().includes(lower) || et.label.toLowerCase().includes(lower) || et.bpmnElement.toLowerCase().includes(lower) || et.extensionTag.toLowerCase().includes(lower) || (et.discoveryNotes ?? "").toLowerCase().includes(lower));
|
|
200100
|
+
const connectors = registry5.discovered.connectors.filter((c) => c.key.toLowerCase().includes(lower) || c.name.toLowerCase().includes(lower) || c.activities.some((a) => a.displayName.toLowerCase().includes(lower) || a.name.toLowerCase().includes(lower)) || c.triggers.some((t14) => t14.displayName.toLowerCase().includes(lower) || t14.name.toLowerCase().includes(lower)));
|
|
200101
|
+
const processes = registry5.discovered.processes.filter((p) => p.name.toLowerCase().includes(lower) || p.processKey.toLowerCase().includes(lower) || (p.processVersion ?? "").toLowerCase().includes(lower) || p.key.toLowerCase().includes(lower) || p.type.toLowerCase().includes(lower) || p.folderKey.toLowerCase().includes(lower) || (p.feedId ?? "").toLowerCase().includes(lower));
|
|
200625
200102
|
return { extensionTypes, connectors, processes };
|
|
200626
200103
|
}
|
|
200627
200104
|
async function getExtensionType(extensionType) {
|
|
200628
200105
|
const registry5 = await getRegistry();
|
|
200629
|
-
const
|
|
200630
|
-
const match2 = Object.entries(registry5.static.extensionTypes).find(([key]) => key.toLowerCase() ===
|
|
200106
|
+
const lower = extensionType.toLowerCase();
|
|
200107
|
+
const match2 = Object.entries(registry5.static.extensionTypes).find(([key]) => key.toLowerCase() === lower);
|
|
200631
200108
|
return match2 ? match2[1] : null;
|
|
200632
200109
|
}
|
|
200633
200110
|
async function resolveConnectorKey(connectionId) {
|
|
@@ -202115,4 +201592,4 @@ export {
|
|
|
202115
201592
|
withPimsCall
|
|
202116
201593
|
};
|
|
202117
201594
|
|
|
202118
|
-
//# debugId=
|
|
201595
|
+
//# debugId=FE5E55D83A77DFFF64756E2164756E21
|