@tokens-studio/tokenscript-interpreter 0.36.1 → 0.36.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunk-5S3H4SYX.js +6460 -0
- package/dist/chunk-5S3H4SYX.js.map +1 -0
- package/dist/chunk-MXKGYBE4.js +6457 -0
- package/dist/chunk-MXKGYBE4.js.map +1 -0
- package/dist/cli.js +12 -8
- package/dist/cli.js.map +1 -1
- package/dist/compliance-suite.js +1 -1
- package/dist/lib/{chunk-LSTH2XJ4.js → chunk-73YLAUUC.js} +6 -3
- package/dist/lib/chunk-73YLAUUC.js.map +1 -0
- package/dist/lib/{chunk-QAHGKPQ4.js → chunk-F5SBEZH2.js} +10 -9
- package/dist/lib/chunk-F5SBEZH2.js.map +1 -0
- package/dist/lib/{chunk-LMGHS2NP.cjs → chunk-PXS4WZYB.cjs} +6 -3
- package/dist/lib/chunk-PXS4WZYB.cjs.map +1 -0
- package/dist/lib/{chunk-IQ5YGWZK.cjs → chunk-XHA2RNU7.cjs} +379 -378
- package/dist/lib/chunk-XHA2RNU7.cjs.map +1 -0
- package/dist/lib/index.cjs +85 -85
- package/dist/lib/index.js +2 -2
- package/dist/lib/interpreter.cjs +67 -67
- package/dist/lib/interpreter.js +2 -2
- package/dist/lib/processor-node.cjs +4 -4
- package/dist/lib/processor-node.js +2 -2
- package/dist/lib/processor.cjs +16 -16
- package/dist/lib/processor.js +2 -2
- package/dist/lib/schema.cjs +4 -4
- package/dist/lib/schema.js +2 -2
- package/dist/lib/syntax-highlighting.cjs +8 -8
- package/dist/lib/syntax-highlighting.js +1 -1
- package/dist/processor/index.js +1 -1
- package/dist/repl.js +1 -1
- package/package.json +1 -1
- package/dist/lib/chunk-IQ5YGWZK.cjs.map +0 -1
- package/dist/lib/chunk-LMGHS2NP.cjs.map +0 -1
- package/dist/lib/chunk-LSTH2XJ4.js.map +0 -1
- package/dist/lib/chunk-QAHGKPQ4.js.map +0 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkPXS4WZYB_cjs = require('./chunk-PXS4WZYB.cjs');
|
|
4
4
|
var chunkLEYHQJTL_cjs = require('./chunk-LEYHQJTL.cjs');
|
|
5
5
|
var schemaValidation = require('@tokens-studio/schema-validation');
|
|
6
6
|
|
|
@@ -460,7 +460,7 @@ function renameReferences(originalValue, ast, renameMap) {
|
|
|
460
460
|
for (const [oldName, newName] of Object.entries(renameMap)) {
|
|
461
461
|
const references = collectReferenceNodes(ast, oldName);
|
|
462
462
|
for (const ref of references) {
|
|
463
|
-
if (
|
|
463
|
+
if (chunkPXS4WZYB_cjs.isSome(ref.token.pos) && chunkPXS4WZYB_cjs.isSome(ref.token.endPos)) {
|
|
464
464
|
positions.push({
|
|
465
465
|
start: ref.token.pos,
|
|
466
466
|
end: ref.token.endPos,
|
|
@@ -516,7 +516,7 @@ var _Lexer = class _Lexer {
|
|
|
516
516
|
return this._lastUnitableToken !== null && this._lastUnitableToken.endPos === startPos;
|
|
517
517
|
}
|
|
518
518
|
error(code, data) {
|
|
519
|
-
throw new
|
|
519
|
+
throw new chunkPXS4WZYB_cjs.LexerError(code, {
|
|
520
520
|
line: this.line,
|
|
521
521
|
data
|
|
522
522
|
});
|
|
@@ -544,7 +544,7 @@ var _Lexer = class _Lexer {
|
|
|
544
544
|
return this.text[this.pos + n] ?? null;
|
|
545
545
|
}
|
|
546
546
|
skipWhitespace() {
|
|
547
|
-
while (
|
|
547
|
+
while (chunkPXS4WZYB_cjs.isSpace(this.currentChar)) {
|
|
548
548
|
this.advance();
|
|
549
549
|
}
|
|
550
550
|
}
|
|
@@ -566,9 +566,9 @@ var _Lexer = class _Lexer {
|
|
|
566
566
|
if (this.currentChar === ".") {
|
|
567
567
|
result += "0";
|
|
568
568
|
}
|
|
569
|
-
while (
|
|
569
|
+
while (chunkPXS4WZYB_cjs.isNumber2(this.currentChar) || this.currentChar === ".") {
|
|
570
570
|
if (this.currentChar === ".") {
|
|
571
|
-
if (!
|
|
571
|
+
if (!chunkPXS4WZYB_cjs.isNumber2(this.peek())) {
|
|
572
572
|
break;
|
|
573
573
|
}
|
|
574
574
|
if (hasDecimalPoint) {
|
|
@@ -594,11 +594,11 @@ var _Lexer = class _Lexer {
|
|
|
594
594
|
// Python like isdigit, that allows numbers starting with '.'
|
|
595
595
|
isDigit() {
|
|
596
596
|
if (this.currentChar === null) return false;
|
|
597
|
-
return
|
|
597
|
+
return chunkPXS4WZYB_cjs.isNumber2(this.currentChar) || this.currentChar === "." && chunkPXS4WZYB_cjs.isNumber2(this.peek());
|
|
598
598
|
}
|
|
599
599
|
isValidIdentifierStart(char) {
|
|
600
600
|
if (char === null) return false;
|
|
601
|
-
if (
|
|
601
|
+
if (chunkPXS4WZYB_cjs.isAlpha(char)) return true;
|
|
602
602
|
const cp = char.codePointAt(0) ?? 0;
|
|
603
603
|
if (cp <= 127) return false;
|
|
604
604
|
if (cp === 180 /* FORWARD_TICK */) return false;
|
|
@@ -608,7 +608,7 @@ var _Lexer = class _Lexer {
|
|
|
608
608
|
isValidStringElement(char) {
|
|
609
609
|
if (char === null) return false;
|
|
610
610
|
const cp = char.codePointAt(0) ?? 0;
|
|
611
|
-
return
|
|
611
|
+
return chunkPXS4WZYB_cjs.isAlphaNumeric(char) || cp === 45 /* HYPHEN */ || cp === 95 /* UNDERSCORE */ || cp > 127;
|
|
612
612
|
}
|
|
613
613
|
stringElement() {
|
|
614
614
|
const startPos = this.pos;
|
|
@@ -657,7 +657,7 @@ var _Lexer = class _Lexer {
|
|
|
657
657
|
}
|
|
658
658
|
this.error("LEXER_UNTERMINATED_REFERENCE" /* UNTERMINATED_REFERENCE */, {});
|
|
659
659
|
}
|
|
660
|
-
if (
|
|
660
|
+
if (chunkPXS4WZYB_cjs.isSpace(this.currentChar)) {
|
|
661
661
|
this.advance();
|
|
662
662
|
continue;
|
|
663
663
|
}
|
|
@@ -777,7 +777,7 @@ var _Lexer = class _Lexer {
|
|
|
777
777
|
hexColor() {
|
|
778
778
|
const startPos = this.pos;
|
|
779
779
|
let result = "";
|
|
780
|
-
while (
|
|
780
|
+
while (chunkPXS4WZYB_cjs.isAlpha(this.currentChar) || this.isDigit() || this.currentChar === "#") {
|
|
781
781
|
result += this.currentChar;
|
|
782
782
|
this.advance();
|
|
783
783
|
}
|
|
@@ -969,7 +969,7 @@ var _Lexer = class _Lexer {
|
|
|
969
969
|
});
|
|
970
970
|
}
|
|
971
971
|
if (this.currentChar === ".") {
|
|
972
|
-
if (this.peek() !== null &&
|
|
972
|
+
if (this.peek() !== null && chunkPXS4WZYB_cjs.isNumber2(this.peek())) {
|
|
973
973
|
return this.collectToken(this.number());
|
|
974
974
|
}
|
|
975
975
|
const startPos = this.pos;
|
|
@@ -1326,7 +1326,7 @@ ${contextText}`;
|
|
|
1326
1326
|
const formattedMessage = this.formatError(
|
|
1327
1327
|
message || (code === "PARSER_INVALID_SYNTAX" /* INVALID_SYNTAX */ ? "Invalid syntax" : code)
|
|
1328
1328
|
);
|
|
1329
|
-
throw new
|
|
1329
|
+
throw new chunkPXS4WZYB_cjs.ParserError(code, {
|
|
1330
1330
|
token: this.currentToken,
|
|
1331
1331
|
data: { ...data, message: formattedMessage }
|
|
1332
1332
|
});
|
|
@@ -1470,7 +1470,7 @@ ${contextText}`;
|
|
|
1470
1470
|
if (this.currentToken.type === "STRING" /* STRING */) {
|
|
1471
1471
|
const nextToken = this.lexer.peekToken();
|
|
1472
1472
|
if (nextToken && nextToken.type === "ASSIGN" /* ASSIGN */) {
|
|
1473
|
-
throw new
|
|
1473
|
+
throw new chunkPXS4WZYB_cjs.ParserError("PARSER_CONDITION_MUST_BE_BOOLEAN" /* CONDITION_MUST_BE_BOOLEAN */, {
|
|
1474
1474
|
token: this.currentToken
|
|
1475
1475
|
});
|
|
1476
1476
|
}
|
|
@@ -1493,7 +1493,7 @@ ${contextText}`;
|
|
|
1493
1493
|
forStatement() {
|
|
1494
1494
|
const forToken = this.eat("RESERVED_KEYWORD" /* RESERVED_KEYWORD */);
|
|
1495
1495
|
if (!this.isIdentifierToken()) {
|
|
1496
|
-
throw new
|
|
1496
|
+
throw new chunkPXS4WZYB_cjs.ParserError("PARSER_EXPECTED_TOKEN_TYPE" /* EXPECTED_TOKEN_TYPE */, {
|
|
1497
1497
|
token: this.currentToken,
|
|
1498
1498
|
data: { expectedType: "identifier", actualType: this.currentToken.type }
|
|
1499
1499
|
});
|
|
@@ -1504,7 +1504,7 @@ ${contextText}`;
|
|
|
1504
1504
|
if (this.currentToken.type === "COMMA" /* COMMA */) {
|
|
1505
1505
|
this.eat("COMMA" /* COMMA */);
|
|
1506
1506
|
if (!this.isIdentifierToken()) {
|
|
1507
|
-
throw new
|
|
1507
|
+
throw new chunkPXS4WZYB_cjs.ParserError("PARSER_EXPECTED_TOKEN_TYPE" /* EXPECTED_TOKEN_TYPE */, {
|
|
1508
1508
|
token: this.currentToken,
|
|
1509
1509
|
data: { expectedType: "identifier", actualType: this.currentToken.type }
|
|
1510
1510
|
});
|
|
@@ -1513,7 +1513,7 @@ ${contextText}`;
|
|
|
1513
1513
|
this.eat(this.currentToken.type);
|
|
1514
1514
|
}
|
|
1515
1515
|
if (!this.isIdentifierToken() || this.currentToken.value !== "in") {
|
|
1516
|
-
throw new
|
|
1516
|
+
throw new chunkPXS4WZYB_cjs.ParserError("PARSER_EXPECTED_TOKEN_TYPE" /* EXPECTED_TOKEN_TYPE */, {
|
|
1517
1517
|
token: this.currentToken,
|
|
1518
1518
|
data: { expectedType: "'in'", actualType: this.currentToken.value }
|
|
1519
1519
|
});
|
|
@@ -1598,22 +1598,23 @@ ${contextText}`;
|
|
|
1598
1598
|
}
|
|
1599
1599
|
return new ListNode(elements, firstToken);
|
|
1600
1600
|
}
|
|
1601
|
-
//
|
|
1601
|
+
// comparison ((IS_EQ | IS_NOT_EQ | IS_GT | IS_LT | IS_GT_EQ | IS_LT_EQ) comparison)*
|
|
1602
1602
|
logicTerm() {
|
|
1603
1603
|
let node = this.comparison();
|
|
1604
|
-
while (this.currentToken.type === "
|
|
1605
|
-
const token = this.eat(
|
|
1604
|
+
while (this.currentToken.type === "IS_EQ" /* IS_EQ */ || this.currentToken.type === "IS_NOT_EQ" /* IS_NOT_EQ */ || this.currentToken.type === "GT" /* IS_GT */ || this.currentToken.type === "LT" /* IS_LT */ || this.currentToken.type === "IS_GT_EQ" /* IS_GT_EQ */ || this.currentToken.type === "IS_LT_EQ" /* IS_LT_EQ */) {
|
|
1605
|
+
const token = this.eat(this.currentToken.type);
|
|
1606
1606
|
const partial = this.tryRecoverMissingOperand(node, token);
|
|
1607
1607
|
if (partial) return partial;
|
|
1608
1608
|
node = new BinOpNode(node, token, this.comparison());
|
|
1609
1609
|
}
|
|
1610
1610
|
return node;
|
|
1611
1611
|
}
|
|
1612
|
-
// term ((
|
|
1612
|
+
// term ((ADD | SUBTRACT) term)*
|
|
1613
|
+
// Arithmetic addition/subtraction binds tighter than comparison operators.
|
|
1613
1614
|
comparison() {
|
|
1614
1615
|
let node = this.term();
|
|
1615
|
-
while (this.currentToken.type === "
|
|
1616
|
-
const token = this.eat(
|
|
1616
|
+
while (this.currentToken.type === "OPERATION" /* OPERATION */ && (this.currentToken.value === "+" /* ADD */ || this.currentToken.value === "-" /* SUBTRACT */)) {
|
|
1617
|
+
const token = this.eat("OPERATION" /* OPERATION */);
|
|
1617
1618
|
const partial = this.tryRecoverMissingOperand(node, token);
|
|
1618
1619
|
if (partial) return partial;
|
|
1619
1620
|
node = new BinOpNode(node, token, this.term());
|
|
@@ -2075,7 +2076,7 @@ function getBrokenReferences(result) {
|
|
|
2075
2076
|
const brokenRefs = /* @__PURE__ */ new Set();
|
|
2076
2077
|
for (const [tokenPath, issues] of result.issues) {
|
|
2077
2078
|
for (const issue of issues) {
|
|
2078
|
-
if (
|
|
2079
|
+
if (chunkPXS4WZYB_cjs.isLanguageError(issue) && (issue.code === "PROC_TOKEN_NOT_FOUND" /* TOKEN_NOT_FOUND */ || issue.code === "PROC_DEPENDENCY_ERROR" /* DEPENDENCY_ERROR */)) {
|
|
2079
2080
|
brokenRefs.add(tokenPath);
|
|
2080
2081
|
break;
|
|
2081
2082
|
}
|
|
@@ -2207,7 +2208,7 @@ var _PrefixManager = class _PrefixManager {
|
|
|
2207
2208
|
}
|
|
2208
2209
|
}
|
|
2209
2210
|
if (dictionaryEntries.size === 0) return void 0;
|
|
2210
|
-
return new
|
|
2211
|
+
return new chunkPXS4WZYB_cjs.DictionarySymbol(dictionaryEntries, this.config);
|
|
2211
2212
|
}
|
|
2212
2213
|
findParentToken(reference, tokens) {
|
|
2213
2214
|
const cached = this.parentLookupCache.get(reference);
|
|
@@ -2262,9 +2263,9 @@ var _PrefixManager = class _PrefixManager {
|
|
|
2262
2263
|
}
|
|
2263
2264
|
toSymbol(value) {
|
|
2264
2265
|
if (value === void 0) return void 0;
|
|
2265
|
-
if (value === null) return new
|
|
2266
|
-
if (
|
|
2267
|
-
return new
|
|
2266
|
+
if (value === null) return new chunkPXS4WZYB_cjs.NullSymbol(this.config);
|
|
2267
|
+
if (chunkPXS4WZYB_cjs.isTokenscriptSymbol(value)) return value;
|
|
2268
|
+
return new chunkPXS4WZYB_cjs.StringSymbol(String(value), this.config);
|
|
2268
2269
|
}
|
|
2269
2270
|
};
|
|
2270
2271
|
chunkLEYHQJTL_cjs.__name(_PrefixManager, "PrefixManager");
|
|
@@ -2373,13 +2374,13 @@ var ResolutionNotifier = _ResolutionNotifier;
|
|
|
2373
2374
|
|
|
2374
2375
|
// src/interpreter/operations.ts
|
|
2375
2376
|
function decomposeUnit(operand) {
|
|
2376
|
-
if (operand instanceof
|
|
2377
|
+
if (operand instanceof chunkPXS4WZYB_cjs.NumberWithUnitSymbol) {
|
|
2377
2378
|
return { value: operand.value, unit: operand.unit };
|
|
2378
2379
|
}
|
|
2379
|
-
if (operand instanceof
|
|
2380
|
+
if (operand instanceof chunkPXS4WZYB_cjs.NumberSymbol) {
|
|
2380
2381
|
return { value: operand.value, unit: null };
|
|
2381
2382
|
}
|
|
2382
|
-
throw new
|
|
2383
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("OP_UNSUPPORTED_OPERAND_TYPE" /* UNSUPPORTED_OPERAND_TYPE */, {
|
|
2383
2384
|
data: { type: operand.type }
|
|
2384
2385
|
});
|
|
2385
2386
|
}
|
|
@@ -2387,14 +2388,14 @@ chunkLEYHQJTL_cjs.__name(decomposeUnit, "decomposeUnit");
|
|
|
2387
2388
|
function recomposeUnit(value, units, _config) {
|
|
2388
2389
|
const validUnits = units.filter((u) => u !== null);
|
|
2389
2390
|
if (validUnits.length === 0) {
|
|
2390
|
-
return new
|
|
2391
|
+
return new chunkPXS4WZYB_cjs.NumberSymbol(value);
|
|
2391
2392
|
}
|
|
2392
2393
|
if (new Set(validUnits).size > 1) {
|
|
2393
|
-
throw new
|
|
2394
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("OP_CANNOT_MIX_UNITS" /* CANNOT_MIX_UNITS */, {
|
|
2394
2395
|
data: { units: validUnits }
|
|
2395
2396
|
});
|
|
2396
2397
|
}
|
|
2397
|
-
return new
|
|
2398
|
+
return new chunkPXS4WZYB_cjs.NumberWithUnitSymbol(value, validUnits[0]);
|
|
2398
2399
|
}
|
|
2399
2400
|
chunkLEYHQJTL_cjs.__name(recomposeUnit, "recomposeUnit");
|
|
2400
2401
|
function mathWrapper(func) {
|
|
@@ -2422,88 +2423,88 @@ function mathWrapper(func) {
|
|
|
2422
2423
|
chunkLEYHQJTL_cjs.__name(mathWrapper, "mathWrapper");
|
|
2423
2424
|
function equalityComparisonWrapper(fn) {
|
|
2424
2425
|
return (a, b) => {
|
|
2425
|
-
const isNullComparison = a instanceof
|
|
2426
|
+
const isNullComparison = a instanceof chunkPXS4WZYB_cjs.NullSymbol || b instanceof chunkPXS4WZYB_cjs.NullSymbol;
|
|
2426
2427
|
if (!isNullComparison) {
|
|
2427
|
-
const isNumericA = a instanceof
|
|
2428
|
-
const isNumericB = b instanceof
|
|
2428
|
+
const isNumericA = a instanceof chunkPXS4WZYB_cjs.NumberSymbol || a instanceof chunkPXS4WZYB_cjs.NumberWithUnitSymbol;
|
|
2429
|
+
const isNumericB = b instanceof chunkPXS4WZYB_cjs.NumberSymbol || b instanceof chunkPXS4WZYB_cjs.NumberWithUnitSymbol;
|
|
2429
2430
|
if (isNumericA && !isNumericB) {
|
|
2430
|
-
throw new
|
|
2431
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("OP_INCOMPATIBLE_TYPES" /* INCOMPATIBLE_TYPES */, {
|
|
2431
2432
|
data: { typeA: a.type, typeB: b.type }
|
|
2432
2433
|
});
|
|
2433
2434
|
}
|
|
2434
|
-
const isStringA = a instanceof
|
|
2435
|
-
const isStringB = b instanceof
|
|
2435
|
+
const isStringA = a instanceof chunkPXS4WZYB_cjs.StringSymbol;
|
|
2436
|
+
const isStringB = b instanceof chunkPXS4WZYB_cjs.StringSymbol;
|
|
2436
2437
|
if (isStringA && !isStringB) {
|
|
2437
|
-
throw new
|
|
2438
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("OP_INCOMPATIBLE_TYPES" /* INCOMPATIBLE_TYPES */, {
|
|
2438
2439
|
data: { typeA: a.type, typeB: b.type }
|
|
2439
2440
|
});
|
|
2440
2441
|
}
|
|
2441
|
-
const isBooleanA = a instanceof
|
|
2442
|
-
const isBooleanB = b instanceof
|
|
2442
|
+
const isBooleanA = a instanceof chunkPXS4WZYB_cjs.BooleanSymbol;
|
|
2443
|
+
const isBooleanB = b instanceof chunkPXS4WZYB_cjs.BooleanSymbol;
|
|
2443
2444
|
if (isBooleanA && !isBooleanB) {
|
|
2444
|
-
throw new
|
|
2445
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("OP_INCOMPATIBLE_TYPES" /* INCOMPATIBLE_TYPES */, {
|
|
2445
2446
|
data: { typeA: a.type, typeB: b.type }
|
|
2446
2447
|
});
|
|
2447
2448
|
}
|
|
2448
|
-
if (a instanceof
|
|
2449
|
-
throw new
|
|
2449
|
+
if (a instanceof chunkPXS4WZYB_cjs.NumberWithUnitSymbol && b instanceof chunkPXS4WZYB_cjs.NumberWithUnitSymbol && a.unit !== b.unit) {
|
|
2450
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("OP_CANNOT_COMPARE_UNITS" /* CANNOT_COMPARE_UNITS */, {
|
|
2450
2451
|
data: { unitA: a.unit, unitB: b.unit }
|
|
2451
2452
|
});
|
|
2452
2453
|
}
|
|
2453
2454
|
}
|
|
2454
|
-
return new
|
|
2455
|
+
return new chunkPXS4WZYB_cjs.BooleanSymbol(fn(a.value, b.value));
|
|
2455
2456
|
};
|
|
2456
2457
|
}
|
|
2457
2458
|
chunkLEYHQJTL_cjs.__name(equalityComparisonWrapper, "equalityComparisonWrapper");
|
|
2458
2459
|
function orderingComparisonWrapper(fn) {
|
|
2459
2460
|
return (a, b) => {
|
|
2460
|
-
if (a instanceof
|
|
2461
|
-
throw new
|
|
2461
|
+
if (a instanceof chunkPXS4WZYB_cjs.NullSymbol || b instanceof chunkPXS4WZYB_cjs.NullSymbol || chunkPXS4WZYB_cjs.isNull(a.value) || chunkPXS4WZYB_cjs.isNull(b.value)) {
|
|
2462
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("OP_ORDERING_WITH_NULL" /* ORDERING_WITH_NULL */);
|
|
2462
2463
|
}
|
|
2463
|
-
const isNumericA = a instanceof
|
|
2464
|
-
const isNumericB = b instanceof
|
|
2464
|
+
const isNumericA = a instanceof chunkPXS4WZYB_cjs.NumberSymbol || a instanceof chunkPXS4WZYB_cjs.NumberWithUnitSymbol;
|
|
2465
|
+
const isNumericB = b instanceof chunkPXS4WZYB_cjs.NumberSymbol || b instanceof chunkPXS4WZYB_cjs.NumberWithUnitSymbol;
|
|
2465
2466
|
if (isNumericA && !isNumericB) {
|
|
2466
|
-
throw new
|
|
2467
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("OP_INCOMPATIBLE_TYPES" /* INCOMPATIBLE_TYPES */, {
|
|
2467
2468
|
data: { typeA: a.type, typeB: b.type }
|
|
2468
2469
|
});
|
|
2469
2470
|
}
|
|
2470
|
-
const isStringA = a instanceof
|
|
2471
|
-
const isStringB = b instanceof
|
|
2471
|
+
const isStringA = a instanceof chunkPXS4WZYB_cjs.StringSymbol;
|
|
2472
|
+
const isStringB = b instanceof chunkPXS4WZYB_cjs.StringSymbol;
|
|
2472
2473
|
if (isStringA && !isStringB) {
|
|
2473
|
-
throw new
|
|
2474
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("OP_INCOMPATIBLE_TYPES" /* INCOMPATIBLE_TYPES */, {
|
|
2474
2475
|
data: { typeA: a.type, typeB: b.type }
|
|
2475
2476
|
});
|
|
2476
2477
|
}
|
|
2477
|
-
const isBooleanA = a instanceof
|
|
2478
|
-
const isBooleanB = b instanceof
|
|
2478
|
+
const isBooleanA = a instanceof chunkPXS4WZYB_cjs.BooleanSymbol;
|
|
2479
|
+
const isBooleanB = b instanceof chunkPXS4WZYB_cjs.BooleanSymbol;
|
|
2479
2480
|
if (isBooleanA && !isBooleanB) {
|
|
2480
|
-
throw new
|
|
2481
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("OP_INCOMPATIBLE_TYPES" /* INCOMPATIBLE_TYPES */, {
|
|
2481
2482
|
data: { typeA: a.type, typeB: b.type }
|
|
2482
2483
|
});
|
|
2483
2484
|
}
|
|
2484
|
-
if (a instanceof
|
|
2485
|
-
throw new
|
|
2485
|
+
if (a instanceof chunkPXS4WZYB_cjs.NumberWithUnitSymbol && b instanceof chunkPXS4WZYB_cjs.NumberWithUnitSymbol && a.unit !== b.unit) {
|
|
2486
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("OP_CANNOT_COMPARE_UNITS" /* CANNOT_COMPARE_UNITS */, {
|
|
2486
2487
|
data: { unitA: a.unit, unitB: b.unit }
|
|
2487
2488
|
});
|
|
2488
2489
|
}
|
|
2489
|
-
return new
|
|
2490
|
+
return new chunkPXS4WZYB_cjs.BooleanSymbol(fn(a.value, b.value));
|
|
2490
2491
|
};
|
|
2491
2492
|
}
|
|
2492
2493
|
chunkLEYHQJTL_cjs.__name(orderingComparisonWrapper, "orderingComparisonWrapper");
|
|
2493
2494
|
var LOGICAL_BOOLEAN_IMPLEMENTATIONS = {
|
|
2494
2495
|
["&&" /* LOGIC_AND */]: (a, b) => {
|
|
2495
|
-
if (!(a instanceof
|
|
2496
|
-
throw new
|
|
2496
|
+
if (!(a instanceof chunkPXS4WZYB_cjs.BooleanSymbol) || !(b instanceof chunkPXS4WZYB_cjs.BooleanSymbol))
|
|
2497
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("OP_LOGICAL_REQUIRES_BOOLEAN" /* LOGICAL_REQUIRES_BOOLEAN */, {
|
|
2497
2498
|
data: { operator: "&&" }
|
|
2498
2499
|
});
|
|
2499
|
-
return new
|
|
2500
|
+
return new chunkPXS4WZYB_cjs.BooleanSymbol(a.value && b.value);
|
|
2500
2501
|
},
|
|
2501
2502
|
["||" /* LOGIC_OR */]: (a, b) => {
|
|
2502
|
-
if (!(a instanceof
|
|
2503
|
-
throw new
|
|
2503
|
+
if (!(a instanceof chunkPXS4WZYB_cjs.BooleanSymbol) || !(b instanceof chunkPXS4WZYB_cjs.BooleanSymbol))
|
|
2504
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("OP_LOGICAL_REQUIRES_BOOLEAN" /* LOGICAL_REQUIRES_BOOLEAN */, {
|
|
2504
2505
|
data: { operator: "||" }
|
|
2505
2506
|
});
|
|
2506
|
-
return new
|
|
2507
|
+
return new chunkPXS4WZYB_cjs.BooleanSymbol(a.value || b.value);
|
|
2507
2508
|
}
|
|
2508
2509
|
};
|
|
2509
2510
|
function powerWrapper(func) {
|
|
@@ -2511,7 +2512,7 @@ function powerWrapper(func) {
|
|
|
2511
2512
|
const opA = decomposeUnit(a);
|
|
2512
2513
|
const opB = decomposeUnit(b);
|
|
2513
2514
|
if (opA.unit && opB.unit) {
|
|
2514
|
-
throw new
|
|
2515
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("OP_UNIT_EXPONENT_NOT_SUPPORTED" /* UNIT_EXPONENT_NOT_SUPPORTED */, {
|
|
2515
2516
|
data: { unitA: opA.unit, unitB: opB.unit }
|
|
2516
2517
|
});
|
|
2517
2518
|
}
|
|
@@ -2523,14 +2524,14 @@ chunkLEYHQJTL_cjs.__name(powerWrapper, "powerWrapper");
|
|
|
2523
2524
|
function multiplyDivideWrapper(func) {
|
|
2524
2525
|
return (a, b, config) => {
|
|
2525
2526
|
if (config?.unitManager) {
|
|
2526
|
-
const aIsPercent = a instanceof
|
|
2527
|
-
const bIsPercent = b instanceof
|
|
2527
|
+
const aIsPercent = a instanceof chunkPXS4WZYB_cjs.NumberWithUnitSymbol && config.unitManager.getSpecByKeyword(a.unit)?.type === "relative";
|
|
2528
|
+
const bIsPercent = b instanceof chunkPXS4WZYB_cjs.NumberWithUnitSymbol && config.unitManager.getSpecByKeyword(b.unit)?.type === "relative";
|
|
2528
2529
|
if (aIsPercent && !bIsPercent) {
|
|
2529
2530
|
const resultValue = func(a.value / 100, b.value);
|
|
2530
|
-
return b instanceof
|
|
2531
|
+
return b instanceof chunkPXS4WZYB_cjs.NumberWithUnitSymbol ? new chunkPXS4WZYB_cjs.NumberWithUnitSymbol(resultValue, b.unit) : new chunkPXS4WZYB_cjs.NumberSymbol(resultValue);
|
|
2531
2532
|
} else if (bIsPercent && !aIsPercent) {
|
|
2532
2533
|
const resultValue = func(a.value, b.value / 100);
|
|
2533
|
-
return a instanceof
|
|
2534
|
+
return a instanceof chunkPXS4WZYB_cjs.NumberWithUnitSymbol ? new chunkPXS4WZYB_cjs.NumberWithUnitSymbol(resultValue, a.unit) : new chunkPXS4WZYB_cjs.NumberSymbol(resultValue);
|
|
2534
2535
|
}
|
|
2535
2536
|
}
|
|
2536
2537
|
return mathWrapper(func)(a, b, config);
|
|
@@ -2542,7 +2543,7 @@ var MATH_IMPLEMENTATIONS = {
|
|
|
2542
2543
|
["-" /* SUBTRACT */]: mathWrapper((a, b) => a - b),
|
|
2543
2544
|
["*" /* MULTIPLY */]: multiplyDivideWrapper((a, b) => a * b),
|
|
2544
2545
|
["/" /* DIVIDE */]: multiplyDivideWrapper((a, b) => {
|
|
2545
|
-
if (b === 0) throw new
|
|
2546
|
+
if (b === 0) throw new chunkPXS4WZYB_cjs.InterpreterError("OP_DIVISION_BY_ZERO" /* DIVISION_BY_ZERO */);
|
|
2546
2547
|
return a / b;
|
|
2547
2548
|
}),
|
|
2548
2549
|
["^" /* POWER */]: powerWrapper((a, b) => a ** b)
|
|
@@ -2610,7 +2611,7 @@ var _Interpreter = class _Interpreter {
|
|
|
2610
2611
|
this.references = references;
|
|
2611
2612
|
} else if (references) {
|
|
2612
2613
|
for (const key in references) {
|
|
2613
|
-
this.references.set(key,
|
|
2614
|
+
this.references.set(key, chunkPXS4WZYB_cjs.jsValueToSymbolType(references[key], this.config));
|
|
2614
2615
|
}
|
|
2615
2616
|
} else {
|
|
2616
2617
|
this.references = /* @__PURE__ */ new Map();
|
|
@@ -2637,7 +2638,7 @@ var _Interpreter = class _Interpreter {
|
|
|
2637
2638
|
this.symbolTable.set(name, value);
|
|
2638
2639
|
}
|
|
2639
2640
|
coerceValue(constructorSymbol, valueSymbol) {
|
|
2640
|
-
if (valueSymbol instanceof
|
|
2641
|
+
if (valueSymbol instanceof chunkPXS4WZYB_cjs.NullSymbol) return constructorSymbol;
|
|
2641
2642
|
if (constructorSymbol.typeEquals(valueSymbol)) return valueSymbol;
|
|
2642
2643
|
}
|
|
2643
2644
|
// Visit Functions -------------------------------------------------------------
|
|
@@ -2647,7 +2648,7 @@ var _Interpreter = class _Interpreter {
|
|
|
2647
2648
|
if (typeof this[visitorMethodName] === "function") {
|
|
2648
2649
|
return this[visitorMethodName](node);
|
|
2649
2650
|
}
|
|
2650
|
-
throw new
|
|
2651
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_UNKNOWN_NODE_TYPE" /* UNKNOWN_NODE_TYPE */, {
|
|
2651
2652
|
token: node.token,
|
|
2652
2653
|
data: { nodeType: node.nodeType }
|
|
2653
2654
|
});
|
|
@@ -2663,8 +2664,8 @@ var _Interpreter = class _Interpreter {
|
|
|
2663
2664
|
}
|
|
2664
2665
|
const mathImpl = MATH_IMPLEMENTATIONS[opVal];
|
|
2665
2666
|
if (mathImpl) {
|
|
2666
|
-
if (!((left instanceof
|
|
2667
|
-
throw new
|
|
2667
|
+
if (!((left instanceof chunkPXS4WZYB_cjs.NumberSymbol || left instanceof chunkPXS4WZYB_cjs.NumberWithUnitSymbol) && (right instanceof chunkPXS4WZYB_cjs.NumberSymbol || right instanceof chunkPXS4WZYB_cjs.NumberWithUnitSymbol))) {
|
|
2668
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_ARITHMETIC_REQUIRES_NUMBER" /* ARITHMETIC_REQUIRES_NUMBER */, {
|
|
2668
2669
|
token: node.opToken,
|
|
2669
2670
|
data: { operator: opVal, leftType: left.type, rightType: right.type }
|
|
2670
2671
|
});
|
|
@@ -2675,20 +2676,20 @@ var _Interpreter = class _Interpreter {
|
|
|
2675
2676
|
if (comparisonImpl) {
|
|
2676
2677
|
return comparisonImpl(left, right);
|
|
2677
2678
|
}
|
|
2678
|
-
throw new
|
|
2679
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_UNKNOWN_BINARY_OPERATOR" /* UNKNOWN_BINARY_OPERATOR */, {
|
|
2679
2680
|
token: node.opToken,
|
|
2680
2681
|
data: { operator: opVal, tokenType: opType }
|
|
2681
2682
|
});
|
|
2682
2683
|
}
|
|
2683
2684
|
visitNumNode(node) {
|
|
2684
|
-
return new
|
|
2685
|
+
return new chunkPXS4WZYB_cjs.NumberSymbol(node.value, this.config);
|
|
2685
2686
|
}
|
|
2686
2687
|
visitStringNode(node) {
|
|
2687
|
-
return new
|
|
2688
|
+
return new chunkPXS4WZYB_cjs.StringSymbol(node.value, this.config);
|
|
2688
2689
|
}
|
|
2689
2690
|
visitTemplateStringNode(node) {
|
|
2690
2691
|
if (node.parts.length === 0) {
|
|
2691
|
-
return new
|
|
2692
|
+
return new chunkPXS4WZYB_cjs.StringSymbol("", this.config);
|
|
2692
2693
|
}
|
|
2693
2694
|
if (node.parts.length === 1) {
|
|
2694
2695
|
const val = this.visit(node.parts[0]);
|
|
@@ -2701,27 +2702,27 @@ var _Interpreter = class _Interpreter {
|
|
|
2701
2702
|
this.validateTemplateValue(val, node);
|
|
2702
2703
|
result += val.toString();
|
|
2703
2704
|
}
|
|
2704
|
-
return new
|
|
2705
|
+
return new chunkPXS4WZYB_cjs.StringSymbol(result, this.config);
|
|
2705
2706
|
}
|
|
2706
2707
|
/**
|
|
2707
2708
|
* Validate that a value is a primitive type allowed in template string interpolation.
|
|
2708
2709
|
* Lists, Dictionaries, and non-hex Colors are rejected.
|
|
2709
2710
|
*/
|
|
2710
2711
|
validateTemplateValue(val, node) {
|
|
2711
|
-
if (val instanceof
|
|
2712
|
-
throw new
|
|
2712
|
+
if (val instanceof chunkPXS4WZYB_cjs.ListSymbol) {
|
|
2713
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_TEMPLATE_INVALID_TYPE" /* TEMPLATE_INVALID_TYPE */, {
|
|
2713
2714
|
token: node.token,
|
|
2714
2715
|
data: { valueType: "List" }
|
|
2715
2716
|
});
|
|
2716
2717
|
}
|
|
2717
|
-
if (val instanceof
|
|
2718
|
-
throw new
|
|
2718
|
+
if (val instanceof chunkPXS4WZYB_cjs.DictionarySymbol) {
|
|
2719
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_TEMPLATE_INVALID_TYPE" /* TEMPLATE_INVALID_TYPE */, {
|
|
2719
2720
|
token: node.token,
|
|
2720
2721
|
data: { valueType: "Dictionary" }
|
|
2721
2722
|
});
|
|
2722
2723
|
}
|
|
2723
|
-
if (val instanceof
|
|
2724
|
-
throw new
|
|
2724
|
+
if (val instanceof chunkPXS4WZYB_cjs.ColorSymbol && !val.isHex()) {
|
|
2725
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_TEMPLATE_INVALID_TYPE" /* TEMPLATE_INVALID_TYPE */, {
|
|
2725
2726
|
token: node.token,
|
|
2726
2727
|
data: { valueType: `Color.${val.subType}` }
|
|
2727
2728
|
});
|
|
@@ -2732,59 +2733,59 @@ var _Interpreter = class _Interpreter {
|
|
|
2732
2733
|
* Check symbol table first (variables override references), then references
|
|
2733
2734
|
*/
|
|
2734
2735
|
visitIdentifierNode(node) {
|
|
2735
|
-
return this.symbolTable.get(node.name) || this.getReference(node.name) || new
|
|
2736
|
+
return this.symbolTable.get(node.name) || this.getReference(node.name) || new chunkPXS4WZYB_cjs.StringSymbol(node.name, this.config);
|
|
2736
2737
|
}
|
|
2737
2738
|
visitUnaryOpNode(node) {
|
|
2738
2739
|
const result = this.visit(node.expr);
|
|
2739
2740
|
if (node.op === "-" /* SUBTRACT */) {
|
|
2740
|
-
if (result instanceof
|
|
2741
|
+
if (result instanceof chunkPXS4WZYB_cjs.NumberSymbol) {
|
|
2741
2742
|
if (result.value === null) {
|
|
2742
|
-
throw new
|
|
2743
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_UNARY_MINUS_NULL" /* UNARY_MINUS_NULL */, {
|
|
2743
2744
|
token: node.opToken,
|
|
2744
2745
|
data: { symbolType: "NumberSymbol" }
|
|
2745
2746
|
});
|
|
2746
2747
|
}
|
|
2747
|
-
return new
|
|
2748
|
+
return new chunkPXS4WZYB_cjs.NumberSymbol(-result.value, this.config);
|
|
2748
2749
|
}
|
|
2749
|
-
if (result instanceof
|
|
2750
|
+
if (result instanceof chunkPXS4WZYB_cjs.NumberWithUnitSymbol) {
|
|
2750
2751
|
if (result.value === null) {
|
|
2751
|
-
throw new
|
|
2752
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_UNARY_MINUS_NULL" /* UNARY_MINUS_NULL */, {
|
|
2752
2753
|
token: node.opToken,
|
|
2753
2754
|
data: { symbolType: "NumberWithUnitSymbol" }
|
|
2754
2755
|
});
|
|
2755
2756
|
}
|
|
2756
|
-
return new
|
|
2757
|
+
return new chunkPXS4WZYB_cjs.NumberWithUnitSymbol(-result.value, result.unit, this.config);
|
|
2757
2758
|
}
|
|
2758
|
-
throw new
|
|
2759
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_UNARY_PLUS_NON_NUMBER" /* UNARY_PLUS_NON_NUMBER */, {
|
|
2759
2760
|
token: node.opToken,
|
|
2760
2761
|
data: { value: String(result.value) }
|
|
2761
2762
|
});
|
|
2762
2763
|
}
|
|
2763
2764
|
if (node.op === "+" /* ADD */) {
|
|
2764
|
-
if (result instanceof
|
|
2765
|
+
if (result instanceof chunkPXS4WZYB_cjs.NumberSymbol || result instanceof chunkPXS4WZYB_cjs.NumberWithUnitSymbol) {
|
|
2765
2766
|
return result;
|
|
2766
2767
|
}
|
|
2767
|
-
throw new
|
|
2768
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_UNARY_PLUS_NON_NUMBER" /* UNARY_PLUS_NON_NUMBER */, {
|
|
2768
2769
|
token: node.opToken,
|
|
2769
2770
|
data: { value: String(result.value) }
|
|
2770
2771
|
});
|
|
2771
2772
|
}
|
|
2772
2773
|
if (node.op === "!" /* LOGIC_NOT */) {
|
|
2773
|
-
if (result instanceof
|
|
2774
|
-
return new
|
|
2774
|
+
if (result instanceof chunkPXS4WZYB_cjs.BooleanSymbol) {
|
|
2775
|
+
return new chunkPXS4WZYB_cjs.BooleanSymbol(!result.value, this.config);
|
|
2775
2776
|
}
|
|
2776
|
-
throw new
|
|
2777
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_UNARY_NOT_NON_BOOLEAN" /* UNARY_NOT_NON_BOOLEAN */, {
|
|
2777
2778
|
token: node.opToken,
|
|
2778
2779
|
data: { value: String(result.value) }
|
|
2779
2780
|
});
|
|
2780
2781
|
}
|
|
2781
|
-
throw new
|
|
2782
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_UNKNOWN_UNARY_OPERATOR" /* UNKNOWN_UNARY_OPERATOR */, {
|
|
2782
2783
|
token: node.opToken,
|
|
2783
2784
|
data: { operator: node.op }
|
|
2784
2785
|
});
|
|
2785
2786
|
}
|
|
2786
2787
|
visitListNode(node) {
|
|
2787
|
-
return new
|
|
2788
|
+
return new chunkPXS4WZYB_cjs.ListSymbol(
|
|
2788
2789
|
node.elements.map((el) => this.visit(el)),
|
|
2789
2790
|
node instanceof ImplicitListNode,
|
|
2790
2791
|
this.config
|
|
@@ -2796,7 +2797,7 @@ var _Interpreter = class _Interpreter {
|
|
|
2796
2797
|
visitReferenceNode(node) {
|
|
2797
2798
|
const value = this.getReference(node.value);
|
|
2798
2799
|
if (!value) {
|
|
2799
|
-
throw new
|
|
2800
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_UNKNOWN_REFERENCE" /* UNKNOWN_REFERENCE */, {
|
|
2800
2801
|
token: node.token,
|
|
2801
2802
|
data: { reference: node.value }
|
|
2802
2803
|
});
|
|
@@ -2804,18 +2805,18 @@ var _Interpreter = class _Interpreter {
|
|
|
2804
2805
|
return value;
|
|
2805
2806
|
}
|
|
2806
2807
|
visitHexColorNode(node) {
|
|
2807
|
-
const { color, alpha } =
|
|
2808
|
-
return new
|
|
2808
|
+
const { color, alpha } = chunkPXS4WZYB_cjs.parseHexWithAlpha(node.value);
|
|
2809
|
+
return new chunkPXS4WZYB_cjs.ColorSymbol(color, "Hex", alpha, this.config);
|
|
2809
2810
|
}
|
|
2810
2811
|
visitBooleanNode(node) {
|
|
2811
|
-
return new
|
|
2812
|
+
return new chunkPXS4WZYB_cjs.BooleanSymbol(node.value, this.config);
|
|
2812
2813
|
}
|
|
2813
2814
|
visitNullNode(_node) {
|
|
2814
|
-
return new
|
|
2815
|
+
return new chunkPXS4WZYB_cjs.NullSymbol(this.config);
|
|
2815
2816
|
}
|
|
2816
2817
|
visitElementWithUnitNode(node) {
|
|
2817
2818
|
const valNodeVisit = this.visit(node.astNode);
|
|
2818
|
-
return new
|
|
2819
|
+
return new chunkPXS4WZYB_cjs.NumberWithUnitSymbol(valNodeVisit?.value, node.unit, this.config);
|
|
2819
2820
|
}
|
|
2820
2821
|
visitFunctionCallNode(node) {
|
|
2821
2822
|
const fnName = node.name.toLowerCase();
|
|
@@ -2832,9 +2833,9 @@ var _Interpreter = class _Interpreter {
|
|
|
2832
2833
|
}
|
|
2833
2834
|
if (chunkLEYHQJTL_cjs.UNINTERPRETED_KEYWORDS.includes(fnName)) {
|
|
2834
2835
|
const argStrings = args.map((arg) => arg.toString());
|
|
2835
|
-
return new
|
|
2836
|
+
return new chunkPXS4WZYB_cjs.StringSymbol(`${fnName}(${argStrings.join(", ")})`, this.config);
|
|
2836
2837
|
}
|
|
2837
|
-
throw new
|
|
2838
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_UNKNOWN_FUNCTION" /* UNKNOWN_FUNCTION */, {
|
|
2838
2839
|
token: node.token,
|
|
2839
2840
|
data: { functionName: node.name }
|
|
2840
2841
|
});
|
|
@@ -2842,13 +2843,13 @@ var _Interpreter = class _Interpreter {
|
|
|
2842
2843
|
visitAssignNode(node) {
|
|
2843
2844
|
const name = node.varName.name;
|
|
2844
2845
|
if ([".", "[", "-"].some((c) => name.includes(c))) {
|
|
2845
|
-
throw new
|
|
2846
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_INVALID_VARIABLE_NAME" /* INVALID_VARIABLE_NAME */, {
|
|
2846
2847
|
token: node.varName.token,
|
|
2847
2848
|
data: { name }
|
|
2848
2849
|
});
|
|
2849
2850
|
}
|
|
2850
2851
|
if (this.symbolTable.isDefined(name)) {
|
|
2851
|
-
throw new
|
|
2852
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_VARIABLE_ALREADY_DEFINED" /* VARIABLE_ALREADY_DEFINED */, {
|
|
2852
2853
|
token: node.varName.token,
|
|
2853
2854
|
data: { name }
|
|
2854
2855
|
});
|
|
@@ -2856,11 +2857,11 @@ var _Interpreter = class _Interpreter {
|
|
|
2856
2857
|
const baseType = node.typeDecl.baseType.name;
|
|
2857
2858
|
const subType = node.typeDecl.subTypes[0]?.name;
|
|
2858
2859
|
if (!this.config.isTypeDefined(baseType, subType)) {
|
|
2859
|
-
throw new
|
|
2860
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_INVALID_VARIABLE_TYPE" /* INVALID_VARIABLE_TYPE */, {
|
|
2860
2861
|
token: node.varName.token,
|
|
2861
2862
|
data: {
|
|
2862
|
-
typeName:
|
|
2863
|
-
validTypes: Object.keys(
|
|
2863
|
+
typeName: chunkPXS4WZYB_cjs.typeName(baseType, subType),
|
|
2864
|
+
validTypes: Object.keys(chunkPXS4WZYB_cjs.basicSymbolTypes).join(", ")
|
|
2864
2865
|
}
|
|
2865
2866
|
});
|
|
2866
2867
|
}
|
|
@@ -2868,7 +2869,7 @@ var _Interpreter = class _Interpreter {
|
|
|
2868
2869
|
const valueSymbol = node.assignmentExpr ? this.visit(node.assignmentExpr) : constructorSymbol;
|
|
2869
2870
|
const coercedValueSymbol = this.coerceValue(constructorSymbol, valueSymbol);
|
|
2870
2871
|
if (!coercedValueSymbol) {
|
|
2871
|
-
throw new
|
|
2872
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_INVALID_VALUE_FOR_VARIABLE" /* INVALID_VALUE_FOR_VARIABLE */, {
|
|
2872
2873
|
token: node.varName.token,
|
|
2873
2874
|
data: { value: String(valueSymbol.value), type: baseType, name }
|
|
2874
2875
|
});
|
|
@@ -2879,25 +2880,25 @@ var _Interpreter = class _Interpreter {
|
|
|
2879
2880
|
const baseIdentifier = node.baseIdentifier();
|
|
2880
2881
|
const existingVar = this.symbolTable.get(baseIdentifier.name);
|
|
2881
2882
|
if (existingVar === null) {
|
|
2882
|
-
throw new
|
|
2883
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_VARIABLE_NOT_FOUND" /* VARIABLE_NOT_FOUND */, {
|
|
2883
2884
|
token: baseIdentifier.token,
|
|
2884
2885
|
data: { name: baseIdentifier.name }
|
|
2885
2886
|
});
|
|
2886
2887
|
}
|
|
2887
2888
|
const value = this.visit(node.value);
|
|
2888
2889
|
if (value === null) {
|
|
2889
|
-
throw new
|
|
2890
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_ASSIGNMENT_VALUE_NULL" /* ASSIGNMENT_VALUE_NULL */, {
|
|
2890
2891
|
token: node.value.token,
|
|
2891
2892
|
data: { identifier: node.identifierToString() }
|
|
2892
2893
|
});
|
|
2893
2894
|
}
|
|
2894
2895
|
if (node.isAttributeAssignment()) {
|
|
2895
|
-
if (existingVar instanceof
|
|
2896
|
+
if (existingVar instanceof chunkPXS4WZYB_cjs.ColorSymbol) {
|
|
2896
2897
|
this.config.colorManager.setAttribute(existingVar, node, value);
|
|
2897
2898
|
}
|
|
2898
2899
|
} else {
|
|
2899
|
-
if (
|
|
2900
|
-
throw new
|
|
2900
|
+
if (chunkPXS4WZYB_cjs.typeEquals(value.type, "list")) ; else if (!chunkPXS4WZYB_cjs.typeEquals(existingVar.type, value.type)) {
|
|
2901
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_TYPE_MISMATCH" /* TYPE_MISMATCH */, {
|
|
2901
2902
|
token: baseIdentifier.token,
|
|
2902
2903
|
data: {
|
|
2903
2904
|
value: String(value),
|
|
@@ -2908,7 +2909,7 @@ var _Interpreter = class _Interpreter {
|
|
|
2908
2909
|
});
|
|
2909
2910
|
}
|
|
2910
2911
|
if (!existingVar.validValue(value)) {
|
|
2911
|
-
throw new
|
|
2912
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_CANNOT_ASSIGN_TYPE" /* CANNOT_ASSIGN_TYPE */, {
|
|
2912
2913
|
token: node.value.token,
|
|
2913
2914
|
data: {
|
|
2914
2915
|
valueType: value.type,
|
|
@@ -2929,14 +2930,14 @@ var _Interpreter = class _Interpreter {
|
|
|
2929
2930
|
if (left.hasMethod(right.name, args)) {
|
|
2930
2931
|
const result = left.callMethod?.(right.name, args);
|
|
2931
2932
|
if (result === null || result === void 0) {
|
|
2932
|
-
throw new
|
|
2933
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_METHOD_RETURNED_NULL" /* METHOD_RETURNED_NULL */, {
|
|
2933
2934
|
token: node.token,
|
|
2934
2935
|
data: { methodName: right.name }
|
|
2935
2936
|
});
|
|
2936
2937
|
}
|
|
2937
2938
|
return result;
|
|
2938
2939
|
}
|
|
2939
|
-
throw new
|
|
2940
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_METHOD_NOT_FOUND" /* METHOD_NOT_FOUND */, {
|
|
2940
2941
|
token: node.token,
|
|
2941
2942
|
data: { methodName: right.name, value: String(left), type: left.type }
|
|
2942
2943
|
});
|
|
@@ -2945,24 +2946,24 @@ var _Interpreter = class _Interpreter {
|
|
|
2945
2946
|
if (left.hasAttribute(right.name)) {
|
|
2946
2947
|
const result = left.getAttribute?.(right.name);
|
|
2947
2948
|
if (result === null || result === void 0) {
|
|
2948
|
-
throw new
|
|
2949
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_ATTRIBUTE_RETURNED_NULL" /* ATTRIBUTE_RETURNED_NULL */, {
|
|
2949
2950
|
token: node.token,
|
|
2950
2951
|
data: { attributeName: right.name }
|
|
2951
2952
|
});
|
|
2952
2953
|
}
|
|
2953
2954
|
return result;
|
|
2954
2955
|
}
|
|
2955
|
-
throw new
|
|
2956
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_ATTRIBUTE_NOT_FOUND" /* ATTRIBUTE_NOT_FOUND */, {
|
|
2956
2957
|
token: node.token,
|
|
2957
2958
|
data: {
|
|
2958
2959
|
attributeName: right.name,
|
|
2959
|
-
value: left instanceof
|
|
2960
|
+
value: left instanceof chunkPXS4WZYB_cjs.ColorSymbol ? "Color" : String(left),
|
|
2960
2961
|
type: left.type
|
|
2961
2962
|
}
|
|
2962
2963
|
});
|
|
2963
2964
|
}
|
|
2964
2965
|
}
|
|
2965
|
-
throw new
|
|
2966
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_CANNOT_ACCESS_ATTRIBUTES" /* CANNOT_ACCESS_ATTRIBUTES */, {
|
|
2966
2967
|
token: node.token,
|
|
2967
2968
|
data: { type: left.type }
|
|
2968
2969
|
});
|
|
@@ -2985,13 +2986,13 @@ var _Interpreter = class _Interpreter {
|
|
|
2985
2986
|
while (true) {
|
|
2986
2987
|
iterations++;
|
|
2987
2988
|
if (iterations > this.config.languageOptions.MAX_ITERATIONS) {
|
|
2988
|
-
throw new
|
|
2989
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_MAX_ITERATIONS_EXCEEDED" /* MAX_ITERATIONS_EXCEEDED */, {
|
|
2989
2990
|
token: node.token
|
|
2990
2991
|
});
|
|
2991
2992
|
}
|
|
2992
2993
|
const conditionNode = this.visit(node.condition);
|
|
2993
|
-
if (!(conditionNode instanceof
|
|
2994
|
-
throw new
|
|
2994
|
+
if (!(conditionNode instanceof chunkPXS4WZYB_cjs.BooleanSymbol)) {
|
|
2995
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_WHILE_CONDITION_NOT_BOOLEAN" /* WHILE_CONDITION_NOT_BOOLEAN */, {
|
|
2995
2996
|
token: node.condition?.token
|
|
2996
2997
|
});
|
|
2997
2998
|
}
|
|
@@ -3001,28 +3002,28 @@ var _Interpreter = class _Interpreter {
|
|
|
3001
3002
|
}
|
|
3002
3003
|
visitForEachNode(node) {
|
|
3003
3004
|
if (this.symbolTable.isDefined(node.itemVar)) {
|
|
3004
|
-
throw new
|
|
3005
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_FOR_EACH_VARIABLE_SHADOW" /* FOR_EACH_VARIABLE_SHADOW */, {
|
|
3005
3006
|
token: node.token,
|
|
3006
3007
|
data: { name: node.itemVar }
|
|
3007
3008
|
});
|
|
3008
3009
|
}
|
|
3009
3010
|
if (node.indexVar !== null) {
|
|
3010
3011
|
if (node.indexVar === node.itemVar) {
|
|
3011
|
-
throw new
|
|
3012
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_FOR_EACH_DUPLICATE_VARS" /* FOR_EACH_DUPLICATE_VARS */, {
|
|
3012
3013
|
token: node.token,
|
|
3013
3014
|
data: { name: node.itemVar }
|
|
3014
3015
|
});
|
|
3015
3016
|
}
|
|
3016
3017
|
if (this.symbolTable.isDefined(node.indexVar)) {
|
|
3017
|
-
throw new
|
|
3018
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_FOR_EACH_VARIABLE_SHADOW" /* FOR_EACH_VARIABLE_SHADOW */, {
|
|
3018
3019
|
token: node.token,
|
|
3019
3020
|
data: { name: node.indexVar }
|
|
3020
3021
|
});
|
|
3021
3022
|
}
|
|
3022
3023
|
}
|
|
3023
3024
|
const collectionVal = this.visit(node.collection);
|
|
3024
|
-
if (!(collectionVal instanceof
|
|
3025
|
-
throw new
|
|
3025
|
+
if (!(collectionVal instanceof chunkPXS4WZYB_cjs.ListSymbol)) {
|
|
3026
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_FOR_EACH_NOT_LIST" /* FOR_EACH_NOT_LIST */, {
|
|
3026
3027
|
token: node.token,
|
|
3027
3028
|
data: { actualType: collectionVal?.type ?? "null" }
|
|
3028
3029
|
});
|
|
@@ -3033,7 +3034,7 @@ var _Interpreter = class _Interpreter {
|
|
|
3033
3034
|
const item = elements[idx];
|
|
3034
3035
|
this.symbolTable.set(node.itemVar, item);
|
|
3035
3036
|
if (node.indexVar !== null) {
|
|
3036
|
-
this.symbolTable.set(node.indexVar, new
|
|
3037
|
+
this.symbolTable.set(node.indexVar, new chunkPXS4WZYB_cjs.NumberSymbol(idx, this.config));
|
|
3037
3038
|
}
|
|
3038
3039
|
let bodyResult = null;
|
|
3039
3040
|
try {
|
|
@@ -3048,19 +3049,19 @@ var _Interpreter = class _Interpreter {
|
|
|
3048
3049
|
}
|
|
3049
3050
|
throw e;
|
|
3050
3051
|
}
|
|
3051
|
-
results.push(bodyResult ?? new
|
|
3052
|
+
results.push(bodyResult ?? new chunkPXS4WZYB_cjs.NullSymbol(this.config));
|
|
3052
3053
|
}
|
|
3053
3054
|
this.symbolTable.delete(node.itemVar);
|
|
3054
3055
|
if (node.indexVar !== null) {
|
|
3055
3056
|
this.symbolTable.delete(node.indexVar);
|
|
3056
3057
|
}
|
|
3057
|
-
return new
|
|
3058
|
+
return new chunkPXS4WZYB_cjs.ListSymbol(results, false, this.config);
|
|
3058
3059
|
}
|
|
3059
3060
|
visitIfNode(node) {
|
|
3060
3061
|
for (const conditionNode of node.conditions) {
|
|
3061
3062
|
const condition = this.visit(conditionNode.condition);
|
|
3062
|
-
if (!(condition instanceof
|
|
3063
|
-
throw new
|
|
3063
|
+
if (!(condition instanceof chunkPXS4WZYB_cjs.BooleanSymbol)) {
|
|
3064
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_IF_CONDITION_NOT_BOOLEAN" /* IF_CONDITION_NOT_BOOLEAN */, {
|
|
3064
3065
|
token: conditionNode.condition.token
|
|
3065
3066
|
});
|
|
3066
3067
|
}
|
|
@@ -3085,7 +3086,7 @@ var _Interpreter = class _Interpreter {
|
|
|
3085
3086
|
} else if (e instanceof Error) {
|
|
3086
3087
|
throw e;
|
|
3087
3088
|
} else {
|
|
3088
|
-
throw new
|
|
3089
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("INT_UNKNOWN_ERROR" /* UNKNOWN_ERROR */);
|
|
3089
3090
|
}
|
|
3090
3091
|
}
|
|
3091
3092
|
return result;
|
|
@@ -3098,7 +3099,7 @@ var Interpreter = _Interpreter;
|
|
|
3098
3099
|
function createDependencyError(tokenName, dependencyName, originalError) {
|
|
3099
3100
|
const { chain, rootError } = extractDependencyInfo(tokenName, dependencyName, originalError);
|
|
3100
3101
|
const chainStr = chain.join(" \u2192 ");
|
|
3101
|
-
return new
|
|
3102
|
+
return new chunkPXS4WZYB_cjs.ProcessorError("PROC_DEPENDENCY_ERROR" /* DEPENDENCY_ERROR */, {
|
|
3102
3103
|
data: {
|
|
3103
3104
|
tokenName,
|
|
3104
3105
|
chain: chainStr,
|
|
@@ -3108,7 +3109,7 @@ function createDependencyError(tokenName, dependencyName, originalError) {
|
|
|
3108
3109
|
}
|
|
3109
3110
|
chunkLEYHQJTL_cjs.__name(createDependencyError, "createDependencyError");
|
|
3110
3111
|
function extractDependencyInfo(tokenName, dependencyName, error) {
|
|
3111
|
-
if (error instanceof
|
|
3112
|
+
if (error instanceof chunkPXS4WZYB_cjs.ProcessorError && error.code === "PROC_DEPENDENCY_ERROR" /* DEPENDENCY_ERROR */ && error.data.chain) {
|
|
3112
3113
|
const existingChain = String(error.data.chain).split(" \u2192 ");
|
|
3113
3114
|
return {
|
|
3114
3115
|
chain: [tokenName, ...existingChain],
|
|
@@ -3150,14 +3151,14 @@ var _TokenInterpreter = class _TokenInterpreter {
|
|
|
3150
3151
|
if (result !== null && typeof result !== "string") {
|
|
3151
3152
|
this.parsedConstants.set(name, result);
|
|
3152
3153
|
} else if (typeof result === "string") {
|
|
3153
|
-
this.parsedConstants.set(name,
|
|
3154
|
+
this.parsedConstants.set(name, chunkPXS4WZYB_cjs.jsValueToSymbolType(result, this.config));
|
|
3154
3155
|
}
|
|
3155
3156
|
}
|
|
3156
3157
|
} catch {
|
|
3157
|
-
this.parsedConstants.set(name,
|
|
3158
|
+
this.parsedConstants.set(name, chunkPXS4WZYB_cjs.jsValueToSymbolType(rawValue, this.config));
|
|
3158
3159
|
}
|
|
3159
3160
|
} else {
|
|
3160
|
-
this.parsedConstants.set(name,
|
|
3161
|
+
this.parsedConstants.set(name, chunkPXS4WZYB_cjs.jsValueToSymbolType(rawValue, this.config));
|
|
3161
3162
|
}
|
|
3162
3163
|
}
|
|
3163
3164
|
}
|
|
@@ -3188,7 +3189,7 @@ var _TokenInterpreter = class _TokenInterpreter {
|
|
|
3188
3189
|
this.interpreter.setAst(ast);
|
|
3189
3190
|
return this.interpreter.interpret();
|
|
3190
3191
|
} catch (error) {
|
|
3191
|
-
if (
|
|
3192
|
+
if (chunkPXS4WZYB_cjs.isLanguageError(error)) {
|
|
3192
3193
|
return error;
|
|
3193
3194
|
}
|
|
3194
3195
|
return new Error("Unknown error during token interpretation", { cause: error });
|
|
@@ -3201,7 +3202,7 @@ var _TokenInterpreter = class _TokenInterpreter {
|
|
|
3201
3202
|
return createDependencyError(tokenName, dep, depValue);
|
|
3202
3203
|
}
|
|
3203
3204
|
if (missingDependencies?.has(dep)) {
|
|
3204
|
-
const error = new
|
|
3205
|
+
const error = new chunkPXS4WZYB_cjs.ProcessorError("PROC_TOKEN_NOT_FOUND" /* TOKEN_NOT_FOUND */, {
|
|
3205
3206
|
data: { tokenName: dep }
|
|
3206
3207
|
});
|
|
3207
3208
|
return createDependencyError(tokenName, dep, error);
|
|
@@ -3210,7 +3211,7 @@ var _TokenInterpreter = class _TokenInterpreter {
|
|
|
3210
3211
|
return void 0;
|
|
3211
3212
|
}
|
|
3212
3213
|
flattenDictionaryToCache(tokenName, value) {
|
|
3213
|
-
if (!(value instanceof
|
|
3214
|
+
if (!(value instanceof chunkPXS4WZYB_cjs.DictionarySymbol) || !value.value) {
|
|
3214
3215
|
return [];
|
|
3215
3216
|
}
|
|
3216
3217
|
const flattenedNames = [];
|
|
@@ -3249,29 +3250,29 @@ function parseValueToSymbol(value, config, parsers = defaultObjectParsers) {
|
|
|
3249
3250
|
return parser.toSymbol(value, config);
|
|
3250
3251
|
}
|
|
3251
3252
|
}
|
|
3252
|
-
return
|
|
3253
|
+
return chunkPXS4WZYB_cjs.jsValueToSymbolType(value, config);
|
|
3253
3254
|
}
|
|
3254
3255
|
chunkLEYHQJTL_cjs.__name(parseValueToSymbol, "parseValueToSymbol");
|
|
3255
3256
|
function createTokenSymbol(value, tokenType = "unknown", config, parsers = defaultObjectParsers, metadata) {
|
|
3256
|
-
if (
|
|
3257
|
+
if (chunkPXS4WZYB_cjs.isObject(value)) {
|
|
3257
3258
|
const symbolMap = {};
|
|
3258
3259
|
for (const [key, val] of Object.entries(value)) {
|
|
3259
3260
|
symbolMap[key] = parseValueToSymbol(val, config, parsers);
|
|
3260
3261
|
}
|
|
3261
|
-
return new
|
|
3262
|
+
return new chunkPXS4WZYB_cjs.TokenSymbol(tokenType, symbolMap, config, metadata);
|
|
3262
3263
|
}
|
|
3263
|
-
if (
|
|
3264
|
+
if (chunkPXS4WZYB_cjs.isArray(value)) {
|
|
3264
3265
|
const symbolArray = value.map((val) => parseValueToSymbol(val, config, parsers));
|
|
3265
|
-
return new
|
|
3266
|
+
return new chunkPXS4WZYB_cjs.TokenSymbol(tokenType, symbolArray, config, metadata);
|
|
3266
3267
|
}
|
|
3267
|
-
return new
|
|
3268
|
+
return new chunkPXS4WZYB_cjs.TokenSymbol(tokenType, value, config, metadata);
|
|
3268
3269
|
}
|
|
3269
3270
|
chunkLEYHQJTL_cjs.__name(createTokenSymbol, "createTokenSymbol");
|
|
3270
3271
|
function buildValueFromResolvedFields(currentPath, originalValue, resolvedFields, config, parsers = defaultObjectParsers) {
|
|
3271
3272
|
if (resolvedFields.has(currentPath)) {
|
|
3272
3273
|
return resolvedFields.get(currentPath);
|
|
3273
3274
|
}
|
|
3274
|
-
if (
|
|
3275
|
+
if (chunkPXS4WZYB_cjs.isObject(originalValue)) {
|
|
3275
3276
|
for (const parser of parsers) {
|
|
3276
3277
|
if (parser.predicate(originalValue)) {
|
|
3277
3278
|
return parser.toSymbol(originalValue, config);
|
|
@@ -3288,9 +3289,9 @@ function buildValueFromResolvedFields(currentPath, originalValue, resolvedFields
|
|
|
3288
3289
|
parsers
|
|
3289
3290
|
);
|
|
3290
3291
|
}
|
|
3291
|
-
return new
|
|
3292
|
+
return new chunkPXS4WZYB_cjs.DictionarySymbol(symbolMap, config);
|
|
3292
3293
|
}
|
|
3293
|
-
if (
|
|
3294
|
+
if (chunkPXS4WZYB_cjs.isArray(originalValue)) {
|
|
3294
3295
|
const symbolArray = [];
|
|
3295
3296
|
for (let i = 0; i < originalValue.length; i++) {
|
|
3296
3297
|
const fieldPath = `${currentPath}[${i}]`;
|
|
@@ -3298,13 +3299,13 @@ function buildValueFromResolvedFields(currentPath, originalValue, resolvedFields
|
|
|
3298
3299
|
buildValueFromResolvedFields(fieldPath, originalValue[i], resolvedFields, config, parsers)
|
|
3299
3300
|
);
|
|
3300
3301
|
}
|
|
3301
|
-
return new
|
|
3302
|
+
return new chunkPXS4WZYB_cjs.ListSymbol(symbolArray, false, config);
|
|
3302
3303
|
}
|
|
3303
3304
|
return parseValueToSymbol(originalValue, config, parsers);
|
|
3304
3305
|
}
|
|
3305
3306
|
chunkLEYHQJTL_cjs.__name(buildValueFromResolvedFields, "buildValueFromResolvedFields");
|
|
3306
3307
|
function createTokenSymbolFromResolvedFields(tokenName, resolvedFields, originalValue, tokenType = "unknown", config, parsers = defaultObjectParsers, metadata) {
|
|
3307
|
-
if (
|
|
3308
|
+
if (chunkPXS4WZYB_cjs.isObject(originalValue)) {
|
|
3308
3309
|
const symbolMap = {};
|
|
3309
3310
|
for (const [key, val] of Object.entries(originalValue)) {
|
|
3310
3311
|
const fieldPath = `${tokenName}.${key}`;
|
|
@@ -3316,9 +3317,9 @@ function createTokenSymbolFromResolvedFields(tokenName, resolvedFields, original
|
|
|
3316
3317
|
parsers
|
|
3317
3318
|
);
|
|
3318
3319
|
}
|
|
3319
|
-
return new
|
|
3320
|
+
return new chunkPXS4WZYB_cjs.TokenSymbol(tokenType, symbolMap, config, metadata);
|
|
3320
3321
|
}
|
|
3321
|
-
if (
|
|
3322
|
+
if (chunkPXS4WZYB_cjs.isArray(originalValue)) {
|
|
3322
3323
|
const symbolArray = [];
|
|
3323
3324
|
for (let i = 0; i < originalValue.length; i++) {
|
|
3324
3325
|
const fieldPath = `${tokenName}[${i}]`;
|
|
@@ -3326,9 +3327,9 @@ function createTokenSymbolFromResolvedFields(tokenName, resolvedFields, original
|
|
|
3326
3327
|
buildValueFromResolvedFields(fieldPath, originalValue[i], resolvedFields, config, parsers)
|
|
3327
3328
|
);
|
|
3328
3329
|
}
|
|
3329
|
-
return new
|
|
3330
|
+
return new chunkPXS4WZYB_cjs.TokenSymbol(tokenType, symbolArray, config, metadata);
|
|
3330
3331
|
}
|
|
3331
|
-
return new
|
|
3332
|
+
return new chunkPXS4WZYB_cjs.TokenSymbol(tokenType, originalValue, config, metadata);
|
|
3332
3333
|
}
|
|
3333
3334
|
chunkLEYHQJTL_cjs.__name(createTokenSymbolFromResolvedFields, "createTokenSymbolFromResolvedFields");
|
|
3334
3335
|
|
|
@@ -3436,7 +3437,7 @@ var _DependencyGraph = class _DependencyGraph {
|
|
|
3436
3437
|
}
|
|
3437
3438
|
const cycle = this.findCycle(remainingNodes);
|
|
3438
3439
|
const tokens = `${cycle.map((n) => String(n)).join(" \u2192 ")} \u2192 ${String(cycle[0])}`;
|
|
3439
|
-
throw new
|
|
3440
|
+
throw new chunkPXS4WZYB_cjs.ProcessorError("PROC_CIRCULAR_DEPENDENCY" /* CIRCULAR_DEPENDENCY */, {
|
|
3440
3441
|
data: { tokens }
|
|
3441
3442
|
});
|
|
3442
3443
|
}
|
|
@@ -3463,16 +3464,16 @@ chunkLEYHQJTL_cjs.__name(validateTokenPath, "validateTokenPath");
|
|
|
3463
3464
|
|
|
3464
3465
|
// src/processor/utils/structured-tokens.ts
|
|
3465
3466
|
function matchesObjectParser(value, parsers) {
|
|
3466
|
-
if (!
|
|
3467
|
+
if (!chunkPXS4WZYB_cjs.isObject(value)) return false;
|
|
3467
3468
|
return parsers.some((parser) => parser.predicate(value));
|
|
3468
3469
|
}
|
|
3469
3470
|
chunkLEYHQJTL_cjs.__name(matchesObjectParser, "matchesObjectParser");
|
|
3470
3471
|
function extractStringFields(value, parentPath, objectParsers = defaultObjectParsers) {
|
|
3471
3472
|
const result = /* @__PURE__ */ new Map();
|
|
3472
3473
|
const processValue = /* @__PURE__ */ chunkLEYHQJTL_cjs.__name((val, path) => {
|
|
3473
|
-
if (
|
|
3474
|
+
if (chunkPXS4WZYB_cjs.isString(val)) {
|
|
3474
3475
|
result.set(path, val);
|
|
3475
|
-
} else if (
|
|
3476
|
+
} else if (chunkPXS4WZYB_cjs.isObject(val)) {
|
|
3476
3477
|
if (matchesObjectParser(val, objectParsers)) {
|
|
3477
3478
|
return;
|
|
3478
3479
|
}
|
|
@@ -3480,18 +3481,18 @@ function extractStringFields(value, parentPath, objectParsers = defaultObjectPar
|
|
|
3480
3481
|
for (const [nestedPath, nestedVal] of nested) {
|
|
3481
3482
|
result.set(nestedPath, nestedVal);
|
|
3482
3483
|
}
|
|
3483
|
-
} else if (
|
|
3484
|
+
} else if (chunkPXS4WZYB_cjs.isArray(val)) {
|
|
3484
3485
|
const nested = extractStringFields(val, path, objectParsers);
|
|
3485
3486
|
for (const [nestedPath, nestedVal] of nested) {
|
|
3486
3487
|
result.set(nestedPath, nestedVal);
|
|
3487
3488
|
}
|
|
3488
3489
|
}
|
|
3489
3490
|
}, "processValue");
|
|
3490
|
-
if (
|
|
3491
|
+
if (chunkPXS4WZYB_cjs.isObject(value)) {
|
|
3491
3492
|
for (const [key, val] of Object.entries(value)) {
|
|
3492
3493
|
processValue(val, `${parentPath}.${key}`);
|
|
3493
3494
|
}
|
|
3494
|
-
} else if (
|
|
3495
|
+
} else if (chunkPXS4WZYB_cjs.isArray(value)) {
|
|
3495
3496
|
for (let i = 0; i < value.length; i++) {
|
|
3496
3497
|
processValue(value[i], `${parentPath}[${i}]`);
|
|
3497
3498
|
}
|
|
@@ -3502,11 +3503,11 @@ chunkLEYHQJTL_cjs.__name(extractStringFields, "extractStringFields");
|
|
|
3502
3503
|
|
|
3503
3504
|
// src/processor/utils/tokens.ts
|
|
3504
3505
|
function getTokenValue(data) {
|
|
3505
|
-
return
|
|
3506
|
+
return chunkPXS4WZYB_cjs.isString(data) ? data : data.$value;
|
|
3506
3507
|
}
|
|
3507
3508
|
chunkLEYHQJTL_cjs.__name(getTokenValue, "getTokenValue");
|
|
3508
3509
|
function setTokenValue(value) {
|
|
3509
|
-
return
|
|
3510
|
+
return chunkPXS4WZYB_cjs.isString(value) ? { $value: value } : value;
|
|
3510
3511
|
}
|
|
3511
3512
|
chunkLEYHQJTL_cjs.__name(setTokenValue, "setTokenValue");
|
|
3512
3513
|
function flattenTokensObject(obj, prefixAccumulator = "") {
|
|
@@ -3516,9 +3517,9 @@ function flattenTokensObject(obj, prefixAccumulator = "") {
|
|
|
3516
3517
|
continue;
|
|
3517
3518
|
}
|
|
3518
3519
|
const path = prefixAccumulator ? `${prefixAccumulator}.${prefix}` : prefix;
|
|
3519
|
-
if (
|
|
3520
|
+
if (chunkPXS4WZYB_cjs.isObject(value)) {
|
|
3520
3521
|
const objValue = value;
|
|
3521
|
-
const tokenValue =
|
|
3522
|
+
const tokenValue = chunkPXS4WZYB_cjs.getKeyAlt(["$value", "value"], objValue);
|
|
3522
3523
|
if (tokenValue !== void 0) {
|
|
3523
3524
|
const tokenType = objValue.$type;
|
|
3524
3525
|
const tokenMetadata = objValue.$metadata;
|
|
@@ -3545,12 +3546,12 @@ function normalizeToTokenData(value) {
|
|
|
3545
3546
|
if (typeof value === "string") {
|
|
3546
3547
|
return { $value: value };
|
|
3547
3548
|
}
|
|
3548
|
-
if (
|
|
3549
|
+
if (chunkPXS4WZYB_cjs.isObject(value) && "$value" in value) {
|
|
3549
3550
|
const obj = value;
|
|
3550
3551
|
const metadata = obj.$metadata;
|
|
3551
3552
|
return {
|
|
3552
3553
|
$value: obj.$value,
|
|
3553
|
-
...
|
|
3554
|
+
...chunkPXS4WZYB_cjs.isString(obj.$type) && { $type: obj.$type },
|
|
3554
3555
|
...metadata !== void 0 && { $metadata: metadata }
|
|
3555
3556
|
};
|
|
3556
3557
|
}
|
|
@@ -3568,7 +3569,7 @@ chunkLEYHQJTL_cjs.__name(recordToMap, "recordToMap");
|
|
|
3568
3569
|
function isNested(obj) {
|
|
3569
3570
|
return Object.keys(obj).some((key) => {
|
|
3570
3571
|
const value = obj[key];
|
|
3571
|
-
return
|
|
3572
|
+
return chunkPXS4WZYB_cjs.isObject(value) && !key.startsWith("$");
|
|
3572
3573
|
});
|
|
3573
3574
|
}
|
|
3574
3575
|
chunkLEYHQJTL_cjs.__name(isNested, "isNested");
|
|
@@ -3587,12 +3588,12 @@ function collectTypeValidationIssues(config, tokenName, tokenType, value) {
|
|
|
3587
3588
|
if (!config.tokenManager.getSpecByType(tokenType)) return [];
|
|
3588
3589
|
if (value === null || typeof value === "string") return [];
|
|
3589
3590
|
let valueToValidate;
|
|
3590
|
-
if (value instanceof
|
|
3591
|
+
if (value instanceof chunkPXS4WZYB_cjs.TokenSymbol) {
|
|
3591
3592
|
const innerValue = value.value;
|
|
3592
3593
|
if (Array.isArray(innerValue)) {
|
|
3593
|
-
valueToValidate = new
|
|
3594
|
+
valueToValidate = new chunkPXS4WZYB_cjs.ListSymbol(innerValue, false, config);
|
|
3594
3595
|
} else if (innerValue instanceof Map) {
|
|
3595
|
-
valueToValidate = new
|
|
3596
|
+
valueToValidate = new chunkPXS4WZYB_cjs.DictionarySymbol(innerValue, config);
|
|
3596
3597
|
} else {
|
|
3597
3598
|
valueToValidate = value;
|
|
3598
3599
|
}
|
|
@@ -3756,10 +3757,10 @@ var _PrefixResolver = class _PrefixResolver {
|
|
|
3756
3757
|
this.addIssue(parentToken, issue);
|
|
3757
3758
|
}
|
|
3758
3759
|
ensureLanguageError(error) {
|
|
3759
|
-
if (
|
|
3760
|
+
if (chunkPXS4WZYB_cjs.isLanguageError(error)) {
|
|
3760
3761
|
return error;
|
|
3761
3762
|
}
|
|
3762
|
-
return new
|
|
3763
|
+
return new chunkPXS4WZYB_cjs.ProcessorError("PROC_UNKNOWN_PARSING_ERROR" /* UNKNOWN_PARSING_ERROR */, {
|
|
3763
3764
|
data: { error: error.message }
|
|
3764
3765
|
});
|
|
3765
3766
|
}
|
|
@@ -3807,12 +3808,12 @@ var _PrefixResolver = class _PrefixResolver {
|
|
|
3807
3808
|
try {
|
|
3808
3809
|
return parseExpression(value);
|
|
3809
3810
|
} catch (error) {
|
|
3810
|
-
if (
|
|
3811
|
+
if (chunkPXS4WZYB_cjs.isLanguageError(error)) {
|
|
3811
3812
|
return this.resolveError(refPath, error, value);
|
|
3812
3813
|
}
|
|
3813
3814
|
return this.resolveError(
|
|
3814
3815
|
refPath,
|
|
3815
|
-
new
|
|
3816
|
+
new chunkPXS4WZYB_cjs.ProcessorError("PROC_UNKNOWN_PARSING_ERROR" /* UNKNOWN_PARSING_ERROR */, {
|
|
3816
3817
|
data: { error: error instanceof Error ? error.message : String(error) }
|
|
3817
3818
|
}),
|
|
3818
3819
|
value
|
|
@@ -3908,24 +3909,24 @@ var _PrefixResolver = class _PrefixResolver {
|
|
|
3908
3909
|
});
|
|
3909
3910
|
}
|
|
3910
3911
|
const tokenValue = getTokenValue(tokenData);
|
|
3911
|
-
if (
|
|
3912
|
-
const symbol = new
|
|
3912
|
+
if (chunkPXS4WZYB_cjs.isString(tokenValue) && chunkLEYHQJTL_cjs.UNINTERPRETED_KEYWORDS.includes(tokenValue)) {
|
|
3913
|
+
const symbol = new chunkPXS4WZYB_cjs.StringSymbol(tokenValue, this.config);
|
|
3913
3914
|
this.earlyResolvePrimitiveToken(tokenName, symbol);
|
|
3914
3915
|
continue;
|
|
3915
3916
|
}
|
|
3916
|
-
if (
|
|
3917
|
-
this.earlyResolvePrimitiveToken(tokenName, new
|
|
3917
|
+
if (chunkPXS4WZYB_cjs.isNumber(tokenValue)) {
|
|
3918
|
+
this.earlyResolvePrimitiveToken(tokenName, new chunkPXS4WZYB_cjs.NumberSymbol(tokenValue, this.config));
|
|
3918
3919
|
continue;
|
|
3919
3920
|
}
|
|
3920
|
-
if (
|
|
3921
|
-
this.earlyResolvePrimitiveToken(tokenName, new
|
|
3921
|
+
if (chunkPXS4WZYB_cjs.isBoolean(tokenValue)) {
|
|
3922
|
+
this.earlyResolvePrimitiveToken(tokenName, new chunkPXS4WZYB_cjs.BooleanSymbol(tokenValue, this.config));
|
|
3922
3923
|
continue;
|
|
3923
3924
|
}
|
|
3924
|
-
if (
|
|
3925
|
-
this.earlyResolvePrimitiveToken(tokenName, new
|
|
3925
|
+
if (chunkPXS4WZYB_cjs.isNull(tokenValue)) {
|
|
3926
|
+
this.earlyResolvePrimitiveToken(tokenName, new chunkPXS4WZYB_cjs.NullSymbol(this.config));
|
|
3926
3927
|
continue;
|
|
3927
3928
|
}
|
|
3928
|
-
if (
|
|
3929
|
+
if (chunkPXS4WZYB_cjs.isObject(tokenValue) || chunkPXS4WZYB_cjs.isArray(tokenValue)) {
|
|
3929
3930
|
this.handleStructuredToken(tokenName, setTokenValue(tokenData));
|
|
3930
3931
|
continue;
|
|
3931
3932
|
}
|
|
@@ -4166,7 +4167,7 @@ var _PrefixResolver = class _PrefixResolver {
|
|
|
4166
4167
|
for (const [fieldPath] of stringFields) {
|
|
4167
4168
|
const fieldValue = this.resolved.get(fieldPath);
|
|
4168
4169
|
if (fieldValue === void 0) {
|
|
4169
|
-
const error = new
|
|
4170
|
+
const error = new chunkPXS4WZYB_cjs.ProcessorError("PROC_SUB_FIELD_NOT_RESOLVED" /* SUB_FIELD_NOT_RESOLVED */, {
|
|
4170
4171
|
data: { fieldPath }
|
|
4171
4172
|
});
|
|
4172
4173
|
this.resolved.set(tokenName, error);
|
|
@@ -4212,7 +4213,7 @@ var _PrefixResolver = class _PrefixResolver {
|
|
|
4212
4213
|
if (satisfied?.has(child) || this.referenceCache.has(child) || this.resolved.has(child)) {
|
|
4213
4214
|
continue;
|
|
4214
4215
|
}
|
|
4215
|
-
const error = parentValue instanceof Error ? createDependencyError(child, parent, parentValue) : new
|
|
4216
|
+
const error = parentValue instanceof Error ? createDependencyError(child, parent, parentValue) : new chunkPXS4WZYB_cjs.ProcessorError("PROC_TOKEN_NOT_FOUND" /* TOKEN_NOT_FOUND */, {
|
|
4216
4217
|
data: { tokenName: child }
|
|
4217
4218
|
});
|
|
4218
4219
|
this.resolved.set(child, error);
|
|
@@ -4311,9 +4312,9 @@ var _PrefixResolver = class _PrefixResolver {
|
|
|
4311
4312
|
tokenValueStr = String(getTokenValue(originalValue));
|
|
4312
4313
|
}
|
|
4313
4314
|
const dependsOnMissing = tokensWithMissingDeps.has(tokenName);
|
|
4314
|
-
const error = dependsOnMissing ? new
|
|
4315
|
+
const error = dependsOnMissing ? new chunkPXS4WZYB_cjs.ProcessorError("PROC_TOKEN_NOT_FOUND" /* TOKEN_NOT_FOUND */, {
|
|
4315
4316
|
data: { tokenName }
|
|
4316
|
-
}) : new
|
|
4317
|
+
}) : new chunkPXS4WZYB_cjs.ProcessorError("PROC_CIRCULAR_DEPENDENCY" /* CIRCULAR_DEPENDENCY */, {
|
|
4317
4318
|
data: { tokens: tokenName }
|
|
4318
4319
|
});
|
|
4319
4320
|
this.resolved.set(tokenName, error);
|
|
@@ -4368,7 +4369,7 @@ var _TokenResolver = class _TokenResolver {
|
|
|
4368
4369
|
*/
|
|
4369
4370
|
getTokenDependencyGraph(tokenName) {
|
|
4370
4371
|
if (!this.prefixResolver) {
|
|
4371
|
-
throw new
|
|
4372
|
+
throw new chunkPXS4WZYB_cjs.ProcessorError("PROC_RESOLVER_NOT_INITIALIZED" /* RESOLVER_NOT_INITIALIZED */);
|
|
4372
4373
|
}
|
|
4373
4374
|
const graph = this.prefixResolver.getGraph();
|
|
4374
4375
|
const reverseDeps = /* @__PURE__ */ new Map();
|
|
@@ -4454,7 +4455,7 @@ var _TokenResolver = class _TokenResolver {
|
|
|
4454
4455
|
}
|
|
4455
4456
|
ensureInitialized() {
|
|
4456
4457
|
if (!this.prefixResolver || !this.tokens) {
|
|
4457
|
-
throw new
|
|
4458
|
+
throw new chunkPXS4WZYB_cjs.ProcessorError("PROC_RESOLVER_NOT_INITIALIZED" /* RESOLVER_NOT_INITIALIZED */);
|
|
4458
4459
|
}
|
|
4459
4460
|
}
|
|
4460
4461
|
normalizeTokenPath(tokenPath) {
|
|
@@ -4473,7 +4474,7 @@ var _TokenResolver = class _TokenResolver {
|
|
|
4473
4474
|
}
|
|
4474
4475
|
rebuildResolver(updatedTokens, callbacks, changedTokenPath) {
|
|
4475
4476
|
if (!this.prefixResolver) {
|
|
4476
|
-
throw new
|
|
4477
|
+
throw new chunkPXS4WZYB_cjs.ProcessorError("PROC_RESOLVER_NOT_INITIALIZED" /* RESOLVER_NOT_INITIALIZED */);
|
|
4477
4478
|
}
|
|
4478
4479
|
let dirtyTokens = null;
|
|
4479
4480
|
if (changedTokenPath) {
|
|
@@ -4512,24 +4513,24 @@ var _TokenResolver = class _TokenResolver {
|
|
|
4512
4513
|
updated: false
|
|
4513
4514
|
};
|
|
4514
4515
|
}
|
|
4515
|
-
throw new
|
|
4516
|
+
throw new chunkPXS4WZYB_cjs.ProcessorError("PROC_TOKEN_NOT_FOUND" /* TOKEN_NOT_FOUND */, {
|
|
4516
4517
|
data: { tokenName: prevPath }
|
|
4517
4518
|
});
|
|
4518
4519
|
}
|
|
4519
4520
|
const oldTokenData = this.tokens.get(prevPath);
|
|
4520
4521
|
if (!oldTokenData) {
|
|
4521
|
-
throw new
|
|
4522
|
+
throw new chunkPXS4WZYB_cjs.ProcessorError("PROC_TOKEN_NOT_FOUND" /* TOKEN_NOT_FOUND */, {
|
|
4522
4523
|
data: { tokenName: prevPath }
|
|
4523
4524
|
});
|
|
4524
4525
|
}
|
|
4525
4526
|
const isRename = newPath && newPath !== prevPath;
|
|
4526
4527
|
if (isRename && this.tokens.has(newPath)) {
|
|
4527
|
-
throw new
|
|
4528
|
+
throw new chunkPXS4WZYB_cjs.ProcessorError("PROC_TOKEN_ALREADY_EXISTS" /* TOKEN_ALREADY_EXISTS */, {
|
|
4528
4529
|
data: { tokenName: newPath }
|
|
4529
4530
|
});
|
|
4530
4531
|
}
|
|
4531
4532
|
if (!this.prefixResolver) {
|
|
4532
|
-
throw new
|
|
4533
|
+
throw new chunkPXS4WZYB_cjs.ProcessorError("PROC_RESOLVER_NOT_INITIALIZED" /* RESOLVER_NOT_INITIALIZED */);
|
|
4533
4534
|
}
|
|
4534
4535
|
const currentGraph = this.prefixResolver.getGraph();
|
|
4535
4536
|
const { tokens: affectedTokens } = getTokenDependencyGraph(prevPath, currentGraph);
|
|
@@ -4542,7 +4543,7 @@ var _TokenResolver = class _TokenResolver {
|
|
|
4542
4543
|
const dependentTokenData = updatedTokens.get(dependentToken);
|
|
4543
4544
|
if (!dependentTokenData) continue;
|
|
4544
4545
|
const dependentValue = getTokenValue(dependentTokenData);
|
|
4545
|
-
if (!
|
|
4546
|
+
if (!chunkPXS4WZYB_cjs.isString(dependentValue)) continue;
|
|
4546
4547
|
const ast = tokenInterpreter.getTokenAST(dependentToken);
|
|
4547
4548
|
if (!ast) continue;
|
|
4548
4549
|
const updatedValue = renameReferences(dependentValue, ast, renameMap);
|
|
@@ -4559,7 +4560,7 @@ var _TokenResolver = class _TokenResolver {
|
|
|
4559
4560
|
const { output, callbacks } = this.createOutputCallbacks();
|
|
4560
4561
|
const resolverResult = this.rebuildResolver(updatedTokens, callbacks, prevPath);
|
|
4561
4562
|
if (!this.prefixResolver) {
|
|
4562
|
-
throw new
|
|
4563
|
+
throw new chunkPXS4WZYB_cjs.ProcessorError("PROC_RESOLVER_NOT_INITIALIZED" /* RESOLVER_NOT_INITIALIZED */);
|
|
4563
4564
|
}
|
|
4564
4565
|
const { subgraph } = getTokenDependencyGraph(finalPath, this.prefixResolver.getGraph());
|
|
4565
4566
|
const resolvedValue = output.get(finalPath);
|
|
@@ -4576,7 +4577,7 @@ var _TokenResolver = class _TokenResolver {
|
|
|
4576
4577
|
const { tokenPath, tokenData } = params;
|
|
4577
4578
|
const normalizedTokenPath = this.normalizeTokenPath(tokenPath);
|
|
4578
4579
|
if (this.tokens?.has(normalizedTokenPath)) {
|
|
4579
|
-
throw new
|
|
4580
|
+
throw new chunkPXS4WZYB_cjs.ProcessorError("PROC_TOKEN_ALREADY_EXISTS" /* TOKEN_ALREADY_EXISTS */, {
|
|
4580
4581
|
data: { tokenName: normalizedTokenPath }
|
|
4581
4582
|
});
|
|
4582
4583
|
}
|
|
@@ -4586,7 +4587,7 @@ var _TokenResolver = class _TokenResolver {
|
|
|
4586
4587
|
const { output, callbacks } = this.createOutputCallbacks();
|
|
4587
4588
|
const resolverResult = this.rebuildResolver(updatedTokens, callbacks, normalizedTokenPath);
|
|
4588
4589
|
if (!this.prefixResolver) {
|
|
4589
|
-
throw new
|
|
4590
|
+
throw new chunkPXS4WZYB_cjs.ProcessorError("PROC_RESOLVER_NOT_INITIALIZED" /* RESOLVER_NOT_INITIALIZED */);
|
|
4590
4591
|
}
|
|
4591
4592
|
const { subgraph } = getTokenDependencyGraph(
|
|
4592
4593
|
normalizedTokenPath,
|
|
@@ -4606,12 +4607,12 @@ var _TokenResolver = class _TokenResolver {
|
|
|
4606
4607
|
const { tokenPath } = params;
|
|
4607
4608
|
const normalizedTokenPath = this.normalizeTokenPath(tokenPath);
|
|
4608
4609
|
if (!this.tokens?.has(normalizedTokenPath)) {
|
|
4609
|
-
throw new
|
|
4610
|
+
throw new chunkPXS4WZYB_cjs.ProcessorError("PROC_TOKEN_NOT_FOUND" /* TOKEN_NOT_FOUND */, {
|
|
4610
4611
|
data: { tokenName: normalizedTokenPath }
|
|
4611
4612
|
});
|
|
4612
4613
|
}
|
|
4613
4614
|
if (!this.prefixResolver) {
|
|
4614
|
-
throw new
|
|
4615
|
+
throw new chunkPXS4WZYB_cjs.ProcessorError("PROC_RESOLVER_NOT_INITIALIZED" /* RESOLVER_NOT_INITIALIZED */);
|
|
4615
4616
|
}
|
|
4616
4617
|
const currentGraph = this.prefixResolver.getGraph();
|
|
4617
4618
|
const { subgraph } = getTokenDependencyGraph(normalizedTokenPath, currentGraph);
|
|
@@ -4645,7 +4646,7 @@ var _TokenResolver = class _TokenResolver {
|
|
|
4645
4646
|
resolveValue(params) {
|
|
4646
4647
|
this.ensureInitialized();
|
|
4647
4648
|
if (!this.prefixResolver) {
|
|
4648
|
-
throw new
|
|
4649
|
+
throw new chunkPXS4WZYB_cjs.ProcessorError("PROC_RESOLVER_NOT_INITIALIZED" /* RESOLVER_NOT_INITIALIZED */);
|
|
4649
4650
|
}
|
|
4650
4651
|
const { value, type, validate } = params;
|
|
4651
4652
|
const issues = [];
|
|
@@ -4658,7 +4659,7 @@ var _TokenResolver = class _TokenResolver {
|
|
|
4658
4659
|
const result = parseExpression(valueStr);
|
|
4659
4660
|
ast = result.ast;
|
|
4660
4661
|
} catch (error) {
|
|
4661
|
-
if (
|
|
4662
|
+
if (chunkPXS4WZYB_cjs.isLanguageError(error)) {
|
|
4662
4663
|
issues.push(error);
|
|
4663
4664
|
return { resolved: null, issues };
|
|
4664
4665
|
}
|
|
@@ -4670,7 +4671,7 @@ var _TokenResolver = class _TokenResolver {
|
|
|
4670
4671
|
const tokenInterpreter = this.prefixResolver.getTokenInterpreter();
|
|
4671
4672
|
const resolved = tokenInterpreter.interpretTokenWithAST("\0__preview__", ast);
|
|
4672
4673
|
if (resolved instanceof Error) {
|
|
4673
|
-
if (
|
|
4674
|
+
if (chunkPXS4WZYB_cjs.isLanguageError(resolved)) {
|
|
4674
4675
|
issues.push(resolved);
|
|
4675
4676
|
}
|
|
4676
4677
|
return { resolved: null, issues };
|
|
@@ -4741,7 +4742,7 @@ chunkLEYHQJTL_cjs.__name(buildTokens, "buildTokens");
|
|
|
4741
4742
|
|
|
4742
4743
|
// src/processor/builders/flatten.ts
|
|
4743
4744
|
function flattenChildrenObject(result, prefix, callback) {
|
|
4744
|
-
if (result instanceof
|
|
4745
|
+
if (result instanceof chunkPXS4WZYB_cjs.DictionarySymbol) {
|
|
4745
4746
|
flattenChildrenMap(result.value, prefix, callback);
|
|
4746
4747
|
}
|
|
4747
4748
|
}
|
|
@@ -4752,7 +4753,7 @@ function flattenChildrenMap(map, prefix, callback) {
|
|
|
4752
4753
|
if (typeof value === "undefined") {
|
|
4753
4754
|
continue;
|
|
4754
4755
|
}
|
|
4755
|
-
if (value instanceof
|
|
4756
|
+
if (value instanceof chunkPXS4WZYB_cjs.DictionarySymbol) {
|
|
4756
4757
|
flattenChildrenMap(value.value, newKey, callback);
|
|
4757
4758
|
} else {
|
|
4758
4759
|
callback(newKey, value);
|
|
@@ -4775,7 +4776,7 @@ function setNestedValue(target, path, value) {
|
|
|
4775
4776
|
cursor[key] = value;
|
|
4776
4777
|
return;
|
|
4777
4778
|
}
|
|
4778
|
-
if (!
|
|
4779
|
+
if (!chunkPXS4WZYB_cjs.isObject(cursor[key])) {
|
|
4779
4780
|
cursor[key] = {};
|
|
4780
4781
|
}
|
|
4781
4782
|
cursor = cursor[key];
|
|
@@ -4788,7 +4789,7 @@ var _NestedObjectBuilder = class _NestedObjectBuilder {
|
|
|
4788
4789
|
this.result = {};
|
|
4789
4790
|
}
|
|
4790
4791
|
onResolve(tokenName, value) {
|
|
4791
|
-
const serialized =
|
|
4792
|
+
const serialized = chunkPXS4WZYB_cjs.serializeInterpreterResult(value, { stringify: true });
|
|
4792
4793
|
if (typeof serialized !== "undefined") {
|
|
4793
4794
|
setNestedValue(this.result, tokenName, serialized);
|
|
4794
4795
|
}
|
|
@@ -4811,10 +4812,10 @@ var _FlatObjectBuilder = class _FlatObjectBuilder {
|
|
|
4811
4812
|
let didFlatten = false;
|
|
4812
4813
|
flattenChildrenObject(value, tokenName, (key, val) => {
|
|
4813
4814
|
didFlatten = true;
|
|
4814
|
-
this.result[key] =
|
|
4815
|
+
this.result[key] = chunkPXS4WZYB_cjs.serializeInterpreterResult(val, { stringify: true });
|
|
4815
4816
|
});
|
|
4816
4817
|
if (!didFlatten) {
|
|
4817
|
-
const serialized =
|
|
4818
|
+
const serialized = chunkPXS4WZYB_cjs.serializeInterpreterResult(value, { stringify: true });
|
|
4818
4819
|
if (typeof serialized !== "undefined") {
|
|
4819
4820
|
this.result[tokenName] = serialized;
|
|
4820
4821
|
}
|
|
@@ -4834,12 +4835,12 @@ var FlatObjectBuilder = _FlatObjectBuilder;
|
|
|
4834
4835
|
var _StringMapBuilder = class _StringMapBuilder extends MapBuilder {
|
|
4835
4836
|
onResolve(tokenName, value) {
|
|
4836
4837
|
super.onResolve(tokenName, value);
|
|
4837
|
-
this.result.set(tokenName,
|
|
4838
|
+
this.result.set(tokenName, chunkPXS4WZYB_cjs.stringifyInterpreterResult(value));
|
|
4838
4839
|
}
|
|
4839
4840
|
getResult() {
|
|
4840
4841
|
const stringMap = /* @__PURE__ */ new Map();
|
|
4841
4842
|
for (const [key, value] of this.result.entries()) {
|
|
4842
|
-
stringMap.set(key, typeof value === "string" ? value :
|
|
4843
|
+
stringMap.set(key, typeof value === "string" ? value : chunkPXS4WZYB_cjs.stringifyInterpreterResult(value));
|
|
4843
4844
|
}
|
|
4844
4845
|
return stringMap;
|
|
4845
4846
|
}
|
|
@@ -4872,7 +4873,7 @@ var selectTheme = /* @__PURE__ */ chunkLEYHQJTL_cjs.__name((themes, themeName) =
|
|
|
4872
4873
|
var resolveThemes = /* @__PURE__ */ chunkLEYHQJTL_cjs.__name((jsonFiles) => {
|
|
4873
4874
|
const themesFile = jsonFiles.$themes;
|
|
4874
4875
|
if (themesFile) {
|
|
4875
|
-
if (
|
|
4876
|
+
if (chunkPXS4WZYB_cjs.isObject(themesFile) && "$themes" in themesFile) {
|
|
4876
4877
|
const inner = ThemesArraySchema.safeParse(themesFile.$themes);
|
|
4877
4878
|
if (inner.success) {
|
|
4878
4879
|
return ["$themes", inner.data];
|
|
@@ -4898,14 +4899,14 @@ function determineSets(jsonFiles, activeSets, activeTheme) {
|
|
|
4898
4899
|
if (activeTheme) {
|
|
4899
4900
|
const resolved = resolveThemes(jsonFiles);
|
|
4900
4901
|
if (!resolved) {
|
|
4901
|
-
throw new
|
|
4902
|
+
throw new chunkPXS4WZYB_cjs.ProcessorError("PROC_NO_THEMES_FOUND" /* NO_THEMES_FOUND */, {
|
|
4902
4903
|
data: { themeName: activeTheme }
|
|
4903
4904
|
});
|
|
4904
4905
|
}
|
|
4905
4906
|
const [, themes] = resolved;
|
|
4906
4907
|
const theme = selectTheme(themes, activeTheme);
|
|
4907
4908
|
if (!theme) {
|
|
4908
|
-
throw new
|
|
4909
|
+
throw new chunkPXS4WZYB_cjs.ProcessorError("PROC_THEME_NOT_FOUND" /* THEME_NOT_FOUND */, {
|
|
4909
4910
|
data: {
|
|
4910
4911
|
themeName: activeTheme,
|
|
4911
4912
|
availableThemes: themes.map((t) => t.name)
|
|
@@ -4919,18 +4920,18 @@ function determineSets(jsonFiles, activeSets, activeTheme) {
|
|
|
4919
4920
|
return keys;
|
|
4920
4921
|
}
|
|
4921
4922
|
if (keys.length > 1) {
|
|
4922
|
-
throw new
|
|
4923
|
+
throw new chunkPXS4WZYB_cjs.ProcessorError("PROC_MULTIPLE_SETS_NO_SELECTION" /* MULTIPLE_SETS_NO_SELECTION */, {
|
|
4923
4924
|
data: { setNames: keys }
|
|
4924
4925
|
});
|
|
4925
4926
|
}
|
|
4926
|
-
throw new
|
|
4927
|
+
throw new chunkPXS4WZYB_cjs.ProcessorError("PROC_NO_SETS_TO_PROCESS" /* NO_SETS_TO_PROCESS */);
|
|
4927
4928
|
}
|
|
4928
4929
|
chunkLEYHQJTL_cjs.__name(determineSets, "determineSets");
|
|
4929
4930
|
function getSetTokens(setData) {
|
|
4930
4931
|
if (setData instanceof Map) {
|
|
4931
4932
|
return setData;
|
|
4932
4933
|
}
|
|
4933
|
-
if (!
|
|
4934
|
+
if (!chunkPXS4WZYB_cjs.isObject(setData)) {
|
|
4934
4935
|
return /* @__PURE__ */ new Map();
|
|
4935
4936
|
}
|
|
4936
4937
|
if (isNested(setData)) {
|
|
@@ -4947,12 +4948,12 @@ function flattenToTokens(sets, setNames) {
|
|
|
4947
4948
|
tokens.set(key, normalizeToTokenData(setData));
|
|
4948
4949
|
} else {
|
|
4949
4950
|
if (!setData) {
|
|
4950
|
-
throw new
|
|
4951
|
+
throw new chunkPXS4WZYB_cjs.ProcessorError("PROC_TOKEN_SET_NOT_FOUND" /* TOKEN_SET_NOT_FOUND */, {
|
|
4951
4952
|
data: { setName: key }
|
|
4952
4953
|
});
|
|
4953
4954
|
}
|
|
4954
|
-
if (!
|
|
4955
|
-
throw new
|
|
4955
|
+
if (!chunkPXS4WZYB_cjs.isObject(setData) && !(setData instanceof Map)) {
|
|
4956
|
+
throw new chunkPXS4WZYB_cjs.ProcessorError("PROC_TOKEN_SET_INVALID" /* TOKEN_SET_INVALID */, {
|
|
4956
4957
|
data: { setName: key }
|
|
4957
4958
|
});
|
|
4958
4959
|
}
|
|
@@ -4982,11 +4983,11 @@ chunkLEYHQJTL_cjs.__name(processTokenSets, "processTokenSets");
|
|
|
4982
4983
|
|
|
4983
4984
|
// src/lib/errors.ts
|
|
4984
4985
|
var errorClasses = {
|
|
4985
|
-
LanguageError:
|
|
4986
|
-
LexerError:
|
|
4987
|
-
ParserError:
|
|
4988
|
-
InterpreterError:
|
|
4989
|
-
ProcessorError:
|
|
4986
|
+
LanguageError: chunkPXS4WZYB_cjs.LanguageError,
|
|
4987
|
+
LexerError: chunkPXS4WZYB_cjs.LexerError,
|
|
4988
|
+
ParserError: chunkPXS4WZYB_cjs.ParserError,
|
|
4989
|
+
InterpreterError: chunkPXS4WZYB_cjs.InterpreterError,
|
|
4990
|
+
ProcessorError: chunkPXS4WZYB_cjs.ProcessorError
|
|
4990
4991
|
};
|
|
4991
4992
|
var errorHelpers = {
|
|
4992
4993
|
createDependencyError
|
|
@@ -5120,7 +5121,7 @@ function parseSemverFromString(versionString) {
|
|
|
5120
5121
|
const parts = versionString.split(".");
|
|
5121
5122
|
const numbers = [];
|
|
5122
5123
|
for (const part of parts) {
|
|
5123
|
-
const num =
|
|
5124
|
+
const num = chunkPXS4WZYB_cjs.safeParseInt(part);
|
|
5124
5125
|
if (num === null) return null;
|
|
5125
5126
|
numbers.push(num);
|
|
5126
5127
|
}
|
|
@@ -5145,7 +5146,7 @@ function semverToString(version) {
|
|
|
5145
5146
|
if (version === void 0) {
|
|
5146
5147
|
return "latest";
|
|
5147
5148
|
}
|
|
5148
|
-
if (
|
|
5149
|
+
if (chunkPXS4WZYB_cjs.isObject(version)) {
|
|
5149
5150
|
if ("patch" in version) return `${version.major}.${version.minor}.${version.patch}`;
|
|
5150
5151
|
if ("minor" in version) return `${version.major}.${version.minor}`;
|
|
5151
5152
|
return `${version.major}`;
|
|
@@ -5601,16 +5602,16 @@ var _ColorManager = class _ColorManager extends BaseManager {
|
|
|
5601
5602
|
const fn = /* @__PURE__ */ chunkLEYHQJTL_cjs.__name((args) => {
|
|
5602
5603
|
const config = this.createInterpreterConfig({ input: args });
|
|
5603
5604
|
const result = new Interpreter(ast, config).interpret();
|
|
5604
|
-
if (!(result instanceof
|
|
5605
|
-
throw new
|
|
5605
|
+
if (!(result instanceof chunkPXS4WZYB_cjs.ColorSymbol)) {
|
|
5606
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("COLOR_INITIALIZER_CRASHED" /* INITIALIZER_CRASHED */);
|
|
5606
5607
|
}
|
|
5607
5608
|
return result;
|
|
5608
5609
|
}, "fn");
|
|
5609
5610
|
this.initializers.set(spec2.keyword.toLowerCase(), fn);
|
|
5610
5611
|
} catch (error) {
|
|
5611
|
-
throw new
|
|
5612
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("COLOR_INITIALIZER_CONSTRUCT_FAILED" /* INITIALIZER_CONSTRUCT_FAILED */, {
|
|
5612
5613
|
data: {
|
|
5613
|
-
error:
|
|
5614
|
+
error: chunkPXS4WZYB_cjs.isLanguageError(error) ? error : chunkPXS4WZYB_cjs.serializeError(error)
|
|
5614
5615
|
}
|
|
5615
5616
|
});
|
|
5616
5617
|
}
|
|
@@ -5624,15 +5625,15 @@ var _ColorManager = class _ColorManager extends BaseManager {
|
|
|
5624
5625
|
const fn = /* @__PURE__ */ chunkLEYHQJTL_cjs.__name((color) => {
|
|
5625
5626
|
const interpreterConfig = this.createInterpreterConfig({ input: color });
|
|
5626
5627
|
const result = new Interpreter(ast, interpreterConfig).interpret();
|
|
5627
|
-
if (!(result instanceof
|
|
5628
|
+
if (!(result instanceof chunkPXS4WZYB_cjs.ColorSymbol)) {
|
|
5628
5629
|
const targetSpec = this.getSpec(targetUri);
|
|
5629
5630
|
if (!targetSpec) {
|
|
5630
|
-
throw new
|
|
5631
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("COLOR_CONVERSION_TARGET_NOT_FOUND" /* CONVERSION_TARGET_NOT_FOUND */, {
|
|
5631
5632
|
data: { targetUri }
|
|
5632
5633
|
});
|
|
5633
5634
|
}
|
|
5634
5635
|
const value = typeof result === "string" ? result : result?.value ?? null;
|
|
5635
|
-
return new
|
|
5636
|
+
return new chunkPXS4WZYB_cjs.ColorSymbol(value, targetSpec.name, null, this.parentConfig);
|
|
5636
5637
|
}
|
|
5637
5638
|
return result;
|
|
5638
5639
|
}, "fn");
|
|
@@ -5675,7 +5676,7 @@ ${spec}` : "";
|
|
|
5675
5676
|
executeInitializer(keyword, args) {
|
|
5676
5677
|
const initFn = this.initializers.get(keyword.toLowerCase());
|
|
5677
5678
|
if (!initFn) {
|
|
5678
|
-
throw new
|
|
5679
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("COLOR_INITIALIZER_NOT_FOUND" /* INITIALIZER_NOT_FOUND */, {
|
|
5679
5680
|
data: { keyword }
|
|
5680
5681
|
});
|
|
5681
5682
|
}
|
|
@@ -5692,7 +5693,7 @@ ${spec}` : "";
|
|
|
5692
5693
|
convertTo(color, targetUri) {
|
|
5693
5694
|
const sourceUri = this.specTypes.get(color.subType?.toLowerCase() || "");
|
|
5694
5695
|
if (!sourceUri) {
|
|
5695
|
-
throw new
|
|
5696
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("COLOR_SOURCE_URI_NOT_FOUND" /* SOURCE_URI_NOT_FOUND */, {
|
|
5696
5697
|
data: { colorType: color.subType || "unknown" }
|
|
5697
5698
|
});
|
|
5698
5699
|
}
|
|
@@ -5701,9 +5702,9 @@ ${spec}` : "";
|
|
|
5701
5702
|
result.alpha = color.alpha;
|
|
5702
5703
|
return result;
|
|
5703
5704
|
} catch (error) {
|
|
5704
|
-
throw new
|
|
5705
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("COLOR_CONVERSION_ERROR" /* CONVERSION_ERROR */, {
|
|
5705
5706
|
data: {
|
|
5706
|
-
error:
|
|
5707
|
+
error: chunkPXS4WZYB_cjs.isLanguageError(error) ? error : chunkPXS4WZYB_cjs.serializeError(error)
|
|
5707
5708
|
}
|
|
5708
5709
|
});
|
|
5709
5710
|
}
|
|
@@ -5714,7 +5715,7 @@ ${spec}` : "";
|
|
|
5714
5715
|
}
|
|
5715
5716
|
const targetUri = this.specTypes.get(targetType.toLowerCase());
|
|
5716
5717
|
if (!targetUri) {
|
|
5717
|
-
throw new
|
|
5718
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("COLOR_TARGET_URI_NOT_FOUND" /* TARGET_URI_NOT_FOUND */, {
|
|
5718
5719
|
data: { colorType: targetType }
|
|
5719
5720
|
});
|
|
5720
5721
|
}
|
|
@@ -5723,7 +5724,7 @@ ${spec}` : "";
|
|
|
5723
5724
|
setAttribute(color, node, attributeValue) {
|
|
5724
5725
|
const attributes = node.attributesStringChain();
|
|
5725
5726
|
if (attributes.length !== 1) {
|
|
5726
|
-
throw new
|
|
5727
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("COLOR_ATTRIBUTE_CHAIN_TOO_LONG" /* ATTRIBUTE_CHAIN_TOO_LONG */, {
|
|
5727
5728
|
token: node.token,
|
|
5728
5729
|
data: {
|
|
5729
5730
|
attributes: attributesToString(attributes),
|
|
@@ -5735,7 +5736,7 @@ ${spec}` : "";
|
|
|
5735
5736
|
const attr = attributes[0];
|
|
5736
5737
|
if (attr === "alpha") {
|
|
5737
5738
|
if (attributeValue.type !== "Number" && attributeValue.type !== "Null") {
|
|
5738
|
-
throw new
|
|
5739
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("COLOR_INVALID_ATTRIBUTE_TYPE" /* INVALID_ATTRIBUTE_TYPE */, {
|
|
5739
5740
|
token: node.token,
|
|
5740
5741
|
data: {
|
|
5741
5742
|
attributeType: attributeValue.type,
|
|
@@ -5744,12 +5745,12 @@ ${spec}` : "";
|
|
|
5744
5745
|
});
|
|
5745
5746
|
}
|
|
5746
5747
|
const alphaValue = attributeValue.value;
|
|
5747
|
-
|
|
5748
|
+
chunkPXS4WZYB_cjs.ensureValidAlpha(alphaValue);
|
|
5748
5749
|
color.alpha = alphaValue;
|
|
5749
5750
|
return color;
|
|
5750
5751
|
}
|
|
5751
5752
|
if (typeof color.value === "string") {
|
|
5752
|
-
throw new
|
|
5753
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("COLOR_STRING_VALUE_ASSIGNMENT" /* STRING_VALUE_ASSIGNMENT */, {
|
|
5753
5754
|
token: node.token,
|
|
5754
5755
|
data: {
|
|
5755
5756
|
attributes: attributesToString(attributes),
|
|
@@ -5760,7 +5761,7 @@ ${spec}` : "";
|
|
|
5760
5761
|
}
|
|
5761
5762
|
const spec = this.getSpecFromColor(color);
|
|
5762
5763
|
if (!spec) {
|
|
5763
|
-
throw new
|
|
5764
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("COLOR_MISSING_SPEC" /* MISSING_SPEC */, {
|
|
5764
5765
|
token: node.token,
|
|
5765
5766
|
data: {
|
|
5766
5767
|
identifier: node.identifierToString(),
|
|
@@ -5769,14 +5770,14 @@ ${spec}` : "";
|
|
|
5769
5770
|
});
|
|
5770
5771
|
}
|
|
5771
5772
|
if (!spec.schema) {
|
|
5772
|
-
throw new
|
|
5773
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("COLOR_MISSING_SCHEMA" /* MISSING_SCHEMA */, {
|
|
5773
5774
|
token: node.token,
|
|
5774
5775
|
data: { colorType: color.subType || "unknown" }
|
|
5775
5776
|
});
|
|
5776
5777
|
}
|
|
5777
5778
|
const attrSchema = spec.schema.properties[attr];
|
|
5778
5779
|
if (!attrSchema) {
|
|
5779
|
-
throw new
|
|
5780
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("COLOR_MISSING_ATTRIBUTE_SCHEMA" /* MISSING_ATTRIBUTE_SCHEMA */, {
|
|
5780
5781
|
token: node.token,
|
|
5781
5782
|
data: {
|
|
5782
5783
|
attribute: attr,
|
|
@@ -5785,8 +5786,8 @@ ${spec}` : "";
|
|
|
5785
5786
|
}
|
|
5786
5787
|
});
|
|
5787
5788
|
}
|
|
5788
|
-
if (!
|
|
5789
|
-
throw new
|
|
5789
|
+
if (!chunkPXS4WZYB_cjs.typeEquals(attrSchema.type, attributeValue.type)) {
|
|
5790
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("COLOR_INVALID_ATTRIBUTE_TYPE" /* INVALID_ATTRIBUTE_TYPE */, {
|
|
5790
5791
|
token: node.token,
|
|
5791
5792
|
data: {
|
|
5792
5793
|
attributeType: attributeValue.type,
|
|
@@ -5846,7 +5847,7 @@ ${spec}` : "";
|
|
|
5846
5847
|
const { decimalPlaces = 2, removeTrailingZeros = true } = opts;
|
|
5847
5848
|
if (typeof color.value === "string") {
|
|
5848
5849
|
if (color.alpha !== null) {
|
|
5849
|
-
return
|
|
5850
|
+
return chunkPXS4WZYB_cjs.formatHex8(color.value, color.alpha);
|
|
5850
5851
|
}
|
|
5851
5852
|
return color.value;
|
|
5852
5853
|
}
|
|
@@ -5864,7 +5865,7 @@ ${spec}` : "";
|
|
|
5864
5865
|
}
|
|
5865
5866
|
return value?.toString() || "0";
|
|
5866
5867
|
});
|
|
5867
|
-
if (
|
|
5868
|
+
if (chunkPXS4WZYB_cjs.isTransparent(color.alpha)) {
|
|
5868
5869
|
values.push(this.formatNumber(color.alpha, decimalPlaces, removeTrailingZeros));
|
|
5869
5870
|
}
|
|
5870
5871
|
const functionName = color.subType.toLowerCase();
|
|
@@ -5882,14 +5883,14 @@ var ColorManager = _ColorManager;
|
|
|
5882
5883
|
// src/interpreter/config/managers/functions/builtin/math.ts
|
|
5883
5884
|
function extractNumber(arg, functionName) {
|
|
5884
5885
|
if (arg === void 0 || arg === null) {
|
|
5885
|
-
throw new
|
|
5886
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("FN_EXPECTS_NUMBER_ARGUMENTS" /* EXPECTS_NUMBER_ARGUMENTS */, {
|
|
5886
5887
|
data: { functionName }
|
|
5887
5888
|
});
|
|
5888
5889
|
}
|
|
5889
|
-
if (arg instanceof
|
|
5890
|
-
if (arg instanceof
|
|
5890
|
+
if (arg instanceof chunkPXS4WZYB_cjs.NumberSymbol) return arg.value;
|
|
5891
|
+
if (arg instanceof chunkPXS4WZYB_cjs.NumberWithUnitSymbol) return arg.value;
|
|
5891
5892
|
if (typeof arg.value === "number") return arg.value;
|
|
5892
|
-
throw new
|
|
5893
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("FN_EXPECTS_NUMBER_ARGUMENTS" /* EXPECTS_NUMBER_ARGUMENTS */, {
|
|
5893
5894
|
data: { functionName }
|
|
5894
5895
|
});
|
|
5895
5896
|
}
|
|
@@ -5897,53 +5898,53 @@ chunkLEYHQJTL_cjs.__name(extractNumber, "extractNumber");
|
|
|
5897
5898
|
function over(arg, fn, functionName) {
|
|
5898
5899
|
const value = extractNumber(arg, functionName);
|
|
5899
5900
|
const result = fn(value);
|
|
5900
|
-
if (arg instanceof
|
|
5901
|
-
return new
|
|
5901
|
+
if (arg instanceof chunkPXS4WZYB_cjs.NumberWithUnitSymbol) {
|
|
5902
|
+
return new chunkPXS4WZYB_cjs.NumberWithUnitSymbol(result, arg.unit);
|
|
5902
5903
|
}
|
|
5903
|
-
return new
|
|
5904
|
+
return new chunkPXS4WZYB_cjs.NumberSymbol(result);
|
|
5904
5905
|
}
|
|
5905
5906
|
chunkLEYHQJTL_cjs.__name(over, "over");
|
|
5906
5907
|
function overTwo(a, b, fn, functionName) {
|
|
5907
5908
|
const aVal = extractNumber(a, functionName);
|
|
5908
5909
|
const bVal = extractNumber(b, functionName);
|
|
5909
5910
|
const result = fn(aVal, bVal);
|
|
5910
|
-
if (a instanceof
|
|
5911
|
-
return new
|
|
5911
|
+
if (a instanceof chunkPXS4WZYB_cjs.NumberWithUnitSymbol) {
|
|
5912
|
+
return new chunkPXS4WZYB_cjs.NumberWithUnitSymbol(result, a.unit);
|
|
5912
5913
|
}
|
|
5913
|
-
return new
|
|
5914
|
+
return new chunkPXS4WZYB_cjs.NumberSymbol(result);
|
|
5914
5915
|
}
|
|
5915
5916
|
chunkLEYHQJTL_cjs.__name(overTwo, "overTwo");
|
|
5916
5917
|
function overMany(args, fn, functionName, minArgs) {
|
|
5917
5918
|
if (minArgs !== void 0 && args.length < minArgs) {
|
|
5918
|
-
throw new
|
|
5919
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("FN_REQUIRES_MIN_ARGUMENTS" /* REQUIRES_MIN_ARGUMENTS */, {
|
|
5919
5920
|
data: { functionName, minArgs }
|
|
5920
5921
|
});
|
|
5921
5922
|
}
|
|
5922
5923
|
const nums = args.map((arg) => extractNumber(arg, functionName));
|
|
5923
5924
|
const result = fn(nums);
|
|
5924
|
-
const firstUnitArg = args.find((arg) => arg instanceof
|
|
5925
|
+
const firstUnitArg = args.find((arg) => arg instanceof chunkPXS4WZYB_cjs.NumberWithUnitSymbol);
|
|
5925
5926
|
if (firstUnitArg) {
|
|
5926
|
-
return new
|
|
5927
|
+
return new chunkPXS4WZYB_cjs.NumberWithUnitSymbol(result, firstUnitArg.unit);
|
|
5927
5928
|
}
|
|
5928
|
-
return new
|
|
5929
|
+
return new chunkPXS4WZYB_cjs.NumberSymbol(result);
|
|
5929
5930
|
}
|
|
5930
5931
|
chunkLEYHQJTL_cjs.__name(overMany, "overMany");
|
|
5931
5932
|
function createSumFunction(getUnitManager) {
|
|
5932
5933
|
return (...args) => {
|
|
5933
5934
|
if (args.length < 2)
|
|
5934
|
-
throw new
|
|
5935
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("FN_REQUIRES_MIN_ARGUMENTS" /* REQUIRES_MIN_ARGUMENTS */, {
|
|
5935
5936
|
data: { functionName: "sum", minArgs: 2 }
|
|
5936
5937
|
});
|
|
5937
|
-
const hasUnits = args.some((arg) => arg instanceof
|
|
5938
|
+
const hasUnits = args.some((arg) => arg instanceof chunkPXS4WZYB_cjs.NumberWithUnitSymbol);
|
|
5938
5939
|
if (!hasUnits) {
|
|
5939
5940
|
const nums2 = args.map((arg) => extractNumber(arg, "sum"));
|
|
5940
|
-
return new
|
|
5941
|
+
return new chunkPXS4WZYB_cjs.NumberSymbol(nums2.reduce((acc, val) => acc + val, 0));
|
|
5941
5942
|
}
|
|
5942
5943
|
const numericArgs = args.filter(
|
|
5943
|
-
(arg) => arg instanceof
|
|
5944
|
+
(arg) => arg instanceof chunkPXS4WZYB_cjs.NumberSymbol || arg instanceof chunkPXS4WZYB_cjs.NumberWithUnitSymbol
|
|
5944
5945
|
);
|
|
5945
5946
|
if (numericArgs.length !== args.length) {
|
|
5946
|
-
throw new
|
|
5947
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("FN_EXPECTS_NUMBER_ARGUMENTS" /* EXPECTS_NUMBER_ARGUMENTS */, {
|
|
5947
5948
|
data: { functionName: "sum" }
|
|
5948
5949
|
});
|
|
5949
5950
|
}
|
|
@@ -5953,30 +5954,30 @@ function createSumFunction(getUnitManager) {
|
|
|
5953
5954
|
const converted = unitManager.convertToCommonFormat(numericArgs);
|
|
5954
5955
|
const sum2 = converted.reduce((acc, arg) => acc + arg.value, 0);
|
|
5955
5956
|
const firstUnitArg2 = converted.find(
|
|
5956
|
-
(arg) => arg instanceof
|
|
5957
|
+
(arg) => arg instanceof chunkPXS4WZYB_cjs.NumberWithUnitSymbol
|
|
5957
5958
|
);
|
|
5958
5959
|
if (firstUnitArg2) {
|
|
5959
|
-
return new
|
|
5960
|
+
return new chunkPXS4WZYB_cjs.NumberWithUnitSymbol(sum2, firstUnitArg2.unit);
|
|
5960
5961
|
}
|
|
5961
|
-
return new
|
|
5962
|
+
return new chunkPXS4WZYB_cjs.NumberSymbol(sum2);
|
|
5962
5963
|
} catch (error) {
|
|
5963
|
-
throw new
|
|
5964
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("FN_UNIT_CONVERSION_FAILED" /* UNIT_CONVERSION_FAILED */, {
|
|
5964
5965
|
data: {
|
|
5965
5966
|
functionName: "sum",
|
|
5966
|
-
error:
|
|
5967
|
+
error: chunkPXS4WZYB_cjs.isLanguageError(error) ? error : chunkPXS4WZYB_cjs.serializeError(error)
|
|
5967
5968
|
}
|
|
5968
5969
|
});
|
|
5969
5970
|
}
|
|
5970
5971
|
}
|
|
5971
5972
|
const firstUnitArg = args.find(
|
|
5972
|
-
(arg) => arg instanceof
|
|
5973
|
+
(arg) => arg instanceof chunkPXS4WZYB_cjs.NumberWithUnitSymbol
|
|
5973
5974
|
);
|
|
5974
5975
|
const nums = args.map((arg) => extractNumber(arg, "sum"));
|
|
5975
5976
|
const sum = nums.reduce((acc, val) => acc + val, 0);
|
|
5976
5977
|
if (firstUnitArg) {
|
|
5977
|
-
return new
|
|
5978
|
+
return new chunkPXS4WZYB_cjs.NumberWithUnitSymbol(sum, firstUnitArg.unit);
|
|
5978
5979
|
}
|
|
5979
|
-
return new
|
|
5980
|
+
return new chunkPXS4WZYB_cjs.NumberSymbol(sum);
|
|
5980
5981
|
};
|
|
5981
5982
|
}
|
|
5982
5983
|
chunkLEYHQJTL_cjs.__name(createSumFunction, "createSumFunction");
|
|
@@ -5988,7 +5989,7 @@ var mathFunctions = {
|
|
|
5988
5989
|
b,
|
|
5989
5990
|
(aVal, bVal) => {
|
|
5990
5991
|
if (bVal === 0)
|
|
5991
|
-
throw new
|
|
5992
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("FN_DIVISION_BY_ZERO" /* DIVISION_BY_ZERO */, {
|
|
5992
5993
|
data: { functionName: "mod" }
|
|
5993
5994
|
});
|
|
5994
5995
|
return (aVal % bVal + bVal) % bVal;
|
|
@@ -6002,7 +6003,7 @@ var mathFunctions = {
|
|
|
6002
6003
|
floor: /* @__PURE__ */ chunkLEYHQJTL_cjs.__name((arg) => over(arg, Math.floor, "floor"), "floor"),
|
|
6003
6004
|
ceil: /* @__PURE__ */ chunkLEYHQJTL_cjs.__name((arg) => over(arg, Math.ceil, "ceil"), "ceil"),
|
|
6004
6005
|
cbrt: /* @__PURE__ */ chunkLEYHQJTL_cjs.__name((arg) => over(arg, Math.cbrt, "cbrt"), "cbrt"),
|
|
6005
|
-
sign: /* @__PURE__ */ chunkLEYHQJTL_cjs.__name((arg) => new
|
|
6006
|
+
sign: /* @__PURE__ */ chunkLEYHQJTL_cjs.__name((arg) => new chunkPXS4WZYB_cjs.NumberSymbol(Math.sign(extractNumber(arg, "sign"))), "sign"),
|
|
6006
6007
|
trunc: /* @__PURE__ */ chunkLEYHQJTL_cjs.__name((arg) => over(arg, Math.trunc, "trunc"), "trunc"),
|
|
6007
6008
|
exp: /* @__PURE__ */ chunkLEYHQJTL_cjs.__name((arg) => over(arg, Math.exp, "exp"), "exp"),
|
|
6008
6009
|
expm1: /* @__PURE__ */ chunkLEYHQJTL_cjs.__name((arg) => over(arg, Math.expm1, "expm1"), "expm1"),
|
|
@@ -6021,7 +6022,7 @@ var mathFunctions = {
|
|
|
6021
6022
|
b,
|
|
6022
6023
|
(aVal, bVal) => {
|
|
6023
6024
|
if (bVal === 0)
|
|
6024
|
-
throw new
|
|
6025
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("FN_DIVISION_BY_ZERO" /* DIVISION_BY_ZERO */, {
|
|
6025
6026
|
data: { functionName: "remainder" }
|
|
6026
6027
|
});
|
|
6027
6028
|
return aVal % bVal;
|
|
@@ -6036,7 +6037,7 @@ var mathFunctions = {
|
|
|
6036
6037
|
asin: /* @__PURE__ */ chunkLEYHQJTL_cjs.__name((arg) => {
|
|
6037
6038
|
const value = extractNumber(arg, "asin");
|
|
6038
6039
|
if (value < -1 || value > 1)
|
|
6039
|
-
throw new
|
|
6040
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("FN_ARGUMENT_OUT_OF_RANGE" /* ARGUMENT_OUT_OF_RANGE */, {
|
|
6040
6041
|
data: { functionName: "asin", constraint: "between -1 and 1" }
|
|
6041
6042
|
});
|
|
6042
6043
|
return over(arg, Math.asin, "asin");
|
|
@@ -6044,7 +6045,7 @@ var mathFunctions = {
|
|
|
6044
6045
|
acos: /* @__PURE__ */ chunkLEYHQJTL_cjs.__name((arg) => {
|
|
6045
6046
|
const value = extractNumber(arg, "acos");
|
|
6046
6047
|
if (value < -1 || value > 1)
|
|
6047
|
-
throw new
|
|
6048
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("FN_ARGUMENT_OUT_OF_RANGE" /* ARGUMENT_OUT_OF_RANGE */, {
|
|
6048
6049
|
data: { functionName: "acos", constraint: "between -1 and 1" }
|
|
6049
6050
|
});
|
|
6050
6051
|
return over(arg, Math.acos, "acos");
|
|
@@ -6052,7 +6053,7 @@ var mathFunctions = {
|
|
|
6052
6053
|
atan2: /* @__PURE__ */ chunkLEYHQJTL_cjs.__name((y, x) => {
|
|
6053
6054
|
const yVal = extractNumber(y, "atan2");
|
|
6054
6055
|
const xVal = extractNumber(x, "atan2");
|
|
6055
|
-
return new
|
|
6056
|
+
return new chunkPXS4WZYB_cjs.NumberSymbol(Math.atan2(yVal, xVal));
|
|
6056
6057
|
}, "atan2"),
|
|
6057
6058
|
// Hyperbolic functions
|
|
6058
6059
|
sinh: /* @__PURE__ */ chunkLEYHQJTL_cjs.__name((arg) => over(arg, Math.sinh, "sinh"), "sinh"),
|
|
@@ -6062,7 +6063,7 @@ var mathFunctions = {
|
|
|
6062
6063
|
acosh: /* @__PURE__ */ chunkLEYHQJTL_cjs.__name((arg) => {
|
|
6063
6064
|
const value = extractNumber(arg, "acosh");
|
|
6064
6065
|
if (value < 1) {
|
|
6065
|
-
throw new
|
|
6066
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("FN_ARGUMENT_OUT_OF_RANGE" /* ARGUMENT_OUT_OF_RANGE */, {
|
|
6066
6067
|
data: {
|
|
6067
6068
|
functionName: "acosh",
|
|
6068
6069
|
constraint: "greater than or equal to 1"
|
|
@@ -6074,7 +6075,7 @@ var mathFunctions = {
|
|
|
6074
6075
|
atanh: /* @__PURE__ */ chunkLEYHQJTL_cjs.__name((arg) => {
|
|
6075
6076
|
const value = extractNumber(arg, "atanh");
|
|
6076
6077
|
if (value <= -1 || value >= 1) {
|
|
6077
|
-
throw new
|
|
6078
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("FN_ARGUMENT_OUT_OF_RANGE" /* ARGUMENT_OUT_OF_RANGE */, {
|
|
6078
6079
|
data: {
|
|
6079
6080
|
functionName: "atanh",
|
|
6080
6081
|
constraint: "between -1 and 1 (exclusive)"
|
|
@@ -6087,7 +6088,7 @@ var mathFunctions = {
|
|
|
6087
6088
|
log: /* @__PURE__ */ chunkLEYHQJTL_cjs.__name((arg, base) => {
|
|
6088
6089
|
const value = extractNumber(arg, "log");
|
|
6089
6090
|
if (value <= 0)
|
|
6090
|
-
throw new
|
|
6091
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("FN_ARGUMENT_OUT_OF_RANGE" /* ARGUMENT_OUT_OF_RANGE */, {
|
|
6091
6092
|
data: { functionName: "log", constraint: "positive" }
|
|
6092
6093
|
});
|
|
6093
6094
|
if (base === void 0) {
|
|
@@ -6095,7 +6096,7 @@ var mathFunctions = {
|
|
|
6095
6096
|
}
|
|
6096
6097
|
const baseValue = extractNumber(base, "log");
|
|
6097
6098
|
if (baseValue <= 0 || baseValue === 1)
|
|
6098
|
-
throw new
|
|
6099
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("FN_INVALID_BASE" /* INVALID_BASE */, {
|
|
6099
6100
|
data: {
|
|
6100
6101
|
functionName: "log",
|
|
6101
6102
|
constraint: "positive and not equal to 1"
|
|
@@ -6106,7 +6107,7 @@ var mathFunctions = {
|
|
|
6106
6107
|
ln: /* @__PURE__ */ chunkLEYHQJTL_cjs.__name((arg) => {
|
|
6107
6108
|
const value = extractNumber(arg, "ln");
|
|
6108
6109
|
if (value <= 0) {
|
|
6109
|
-
throw new
|
|
6110
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("FN_ARGUMENT_OUT_OF_RANGE" /* ARGUMENT_OUT_OF_RANGE */, {
|
|
6110
6111
|
data: { functionName: "ln", constraint: "positive" }
|
|
6111
6112
|
});
|
|
6112
6113
|
}
|
|
@@ -6115,7 +6116,7 @@ var mathFunctions = {
|
|
|
6115
6116
|
log10: /* @__PURE__ */ chunkLEYHQJTL_cjs.__name((arg) => {
|
|
6116
6117
|
const value = extractNumber(arg, "log10");
|
|
6117
6118
|
if (value <= 0) {
|
|
6118
|
-
throw new
|
|
6119
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("FN_ARGUMENT_OUT_OF_RANGE" /* ARGUMENT_OUT_OF_RANGE */, {
|
|
6119
6120
|
data: { functionName: "log10", constraint: "positive" }
|
|
6120
6121
|
});
|
|
6121
6122
|
}
|
|
@@ -6124,7 +6125,7 @@ var mathFunctions = {
|
|
|
6124
6125
|
log2: /* @__PURE__ */ chunkLEYHQJTL_cjs.__name((arg) => {
|
|
6125
6126
|
const value = extractNumber(arg, "log2");
|
|
6126
6127
|
if (value <= 0) {
|
|
6127
|
-
throw new
|
|
6128
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("FN_ARGUMENT_OUT_OF_RANGE" /* ARGUMENT_OUT_OF_RANGE */, {
|
|
6128
6129
|
data: { functionName: "log2", constraint: "positive" }
|
|
6129
6130
|
});
|
|
6130
6131
|
}
|
|
@@ -6133,7 +6134,7 @@ var mathFunctions = {
|
|
|
6133
6134
|
log1p: /* @__PURE__ */ chunkLEYHQJTL_cjs.__name((arg) => {
|
|
6134
6135
|
const value = extractNumber(arg, "log1p");
|
|
6135
6136
|
if (value < -1) {
|
|
6136
|
-
throw new
|
|
6137
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("FN_ARGUMENT_OUT_OF_RANGE" /* ARGUMENT_OUT_OF_RANGE */, {
|
|
6137
6138
|
data: {
|
|
6138
6139
|
functionName: "log1p",
|
|
6139
6140
|
constraint: "greater than or equal to -1"
|
|
@@ -6143,7 +6144,7 @@ var mathFunctions = {
|
|
|
6143
6144
|
return over(arg, Math.log1p, "log1p");
|
|
6144
6145
|
}, "log1p"),
|
|
6145
6146
|
// Constants
|
|
6146
|
-
pi: /* @__PURE__ */ chunkLEYHQJTL_cjs.__name(() => new
|
|
6147
|
+
pi: /* @__PURE__ */ chunkLEYHQJTL_cjs.__name(() => new chunkPXS4WZYB_cjs.NumberSymbol(Math.PI), "pi")
|
|
6147
6148
|
};
|
|
6148
6149
|
|
|
6149
6150
|
// src/interpreter/config/managers/functions/manager.ts
|
|
@@ -6190,75 +6191,75 @@ var _FunctionsManager = class _FunctionsManager extends BaseManager {
|
|
|
6190
6191
|
this.registerFunction(
|
|
6191
6192
|
"parse_int",
|
|
6192
6193
|
(strSymbol, baseSymbol) => {
|
|
6193
|
-
if (!(strSymbol instanceof
|
|
6194
|
-
throw new
|
|
6194
|
+
if (!(strSymbol instanceof chunkPXS4WZYB_cjs.StringSymbol))
|
|
6195
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("FN_EXPECTS_TYPE_ARGUMENT" /* EXPECTS_TYPE_ARGUMENT */, {
|
|
6195
6196
|
data: { functionName: "parse_int", expectedType: "string", argumentPosition: "first" }
|
|
6196
6197
|
});
|
|
6197
|
-
const base = baseSymbol instanceof
|
|
6198
|
+
const base = baseSymbol instanceof chunkPXS4WZYB_cjs.NumberSymbol ? baseSymbol.value : 10;
|
|
6198
6199
|
const parsed = Number.parseInt(strSymbol.value, base);
|
|
6199
6200
|
if (Number.isNaN(parsed))
|
|
6200
|
-
throw new
|
|
6201
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("FN_PARSE_ERROR" /* PARSE_ERROR */, {
|
|
6201
6202
|
data: { functionName: "parse_int", value: String(strSymbol.value), base }
|
|
6202
6203
|
});
|
|
6203
|
-
return new
|
|
6204
|
+
return new chunkPXS4WZYB_cjs.NumberSymbol(parsed);
|
|
6204
6205
|
}
|
|
6205
6206
|
);
|
|
6206
6207
|
this.registerFunction("linear-gradient", (...args) => {
|
|
6207
6208
|
const stringArgs = args.map((arg) => arg.toString()).join(", ");
|
|
6208
|
-
return new
|
|
6209
|
+
return new chunkPXS4WZYB_cjs.StringSymbol(`linear-gradient(${stringArgs})`);
|
|
6209
6210
|
});
|
|
6210
6211
|
this.registerFunction("type", (arg) => {
|
|
6211
6212
|
const typeName2 = arg.getTypeName();
|
|
6212
6213
|
if (typeName2.includes(".")) {
|
|
6213
6214
|
const parts = typeName2.split(".");
|
|
6214
|
-
return new
|
|
6215
|
+
return new chunkPXS4WZYB_cjs.StringSymbol(parts[parts.length - 1].toLowerCase());
|
|
6215
6216
|
}
|
|
6216
|
-
return new
|
|
6217
|
+
return new chunkPXS4WZYB_cjs.StringSymbol(typeName2.toLowerCase());
|
|
6217
6218
|
});
|
|
6218
6219
|
this.registerFunction("is_null", (arg) => {
|
|
6219
|
-
return new
|
|
6220
|
+
return new chunkPXS4WZYB_cjs.BooleanSymbol(arg.type === "Null");
|
|
6220
6221
|
});
|
|
6221
6222
|
this.registerFunction("is_number", (arg) => {
|
|
6222
|
-
return new
|
|
6223
|
+
return new chunkPXS4WZYB_cjs.BooleanSymbol(arg.type === "Number");
|
|
6223
6224
|
});
|
|
6224
6225
|
this.registerFunction("is_string", (arg) => {
|
|
6225
|
-
return new
|
|
6226
|
+
return new chunkPXS4WZYB_cjs.BooleanSymbol(arg.type === "String");
|
|
6226
6227
|
});
|
|
6227
6228
|
this.registerFunction("is_boolean", (arg) => {
|
|
6228
|
-
return new
|
|
6229
|
+
return new chunkPXS4WZYB_cjs.BooleanSymbol(arg.type === "Boolean");
|
|
6229
6230
|
});
|
|
6230
6231
|
this.registerFunction("is_list", (arg) => {
|
|
6231
|
-
return new
|
|
6232
|
+
return new chunkPXS4WZYB_cjs.BooleanSymbol(arg.type === "List");
|
|
6232
6233
|
});
|
|
6233
6234
|
this.registerFunction("is_number_with_unit", (arg) => {
|
|
6234
|
-
return new
|
|
6235
|
+
return new chunkPXS4WZYB_cjs.BooleanSymbol(arg.type === "NumberWithUnit");
|
|
6235
6236
|
});
|
|
6236
6237
|
this.registerFunction("is_dictionary", (arg) => {
|
|
6237
|
-
return new
|
|
6238
|
+
return new chunkPXS4WZYB_cjs.BooleanSymbol(arg.type === "Dictionary");
|
|
6238
6239
|
});
|
|
6239
6240
|
this.registerFunction("is_token", (arg) => {
|
|
6240
|
-
return new
|
|
6241
|
+
return new chunkPXS4WZYB_cjs.BooleanSymbol(arg.type === "Token");
|
|
6241
6242
|
});
|
|
6242
6243
|
this.registerFunction("is_color", (arg) => {
|
|
6243
|
-
return new
|
|
6244
|
+
return new chunkPXS4WZYB_cjs.BooleanSymbol(arg.type === "Color");
|
|
6244
6245
|
});
|
|
6245
6246
|
this.registerFunction("range", (...args) => {
|
|
6246
6247
|
if (args.length < 1 || args.length > 2) {
|
|
6247
|
-
throw new
|
|
6248
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("FN_REQUIRES_MIN_ARGUMENTS" /* REQUIRES_MIN_ARGUMENTS */, {
|
|
6248
6249
|
data: { functionName: "range", minArgs: 1 }
|
|
6249
6250
|
});
|
|
6250
6251
|
}
|
|
6251
6252
|
let start;
|
|
6252
6253
|
let end;
|
|
6253
6254
|
if (args.length === 1) {
|
|
6254
|
-
if (!(args[0] instanceof
|
|
6255
|
-
throw new
|
|
6255
|
+
if (!(args[0] instanceof chunkPXS4WZYB_cjs.NumberSymbol)) {
|
|
6256
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("FN_EXPECTS_TYPE_ARGUMENT" /* EXPECTS_TYPE_ARGUMENT */, {
|
|
6256
6257
|
data: { functionName: "range", expectedType: "Number", argumentPosition: "first" }
|
|
6257
6258
|
});
|
|
6258
6259
|
}
|
|
6259
6260
|
const v = args[0].value;
|
|
6260
6261
|
if (v !== Math.trunc(v) || Number.isNaN(v) || !Number.isFinite(v) || v < 0 || v > 1e6) {
|
|
6261
|
-
throw new
|
|
6262
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("FN_ARGUMENT_OUT_OF_RANGE" /* ARGUMENT_OUT_OF_RANGE */, {
|
|
6262
6263
|
data: {
|
|
6263
6264
|
functionName: "range",
|
|
6264
6265
|
constraint: `count must be a non-negative integer <= 1000000, got ${v}`
|
|
@@ -6268,20 +6269,20 @@ var _FunctionsManager = class _FunctionsManager extends BaseManager {
|
|
|
6268
6269
|
start = 0;
|
|
6269
6270
|
end = v;
|
|
6270
6271
|
} else {
|
|
6271
|
-
if (!(args[0] instanceof
|
|
6272
|
-
throw new
|
|
6272
|
+
if (!(args[0] instanceof chunkPXS4WZYB_cjs.NumberSymbol)) {
|
|
6273
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("FN_EXPECTS_TYPE_ARGUMENT" /* EXPECTS_TYPE_ARGUMENT */, {
|
|
6273
6274
|
data: { functionName: "range", expectedType: "Number", argumentPosition: "first" }
|
|
6274
6275
|
});
|
|
6275
6276
|
}
|
|
6276
|
-
if (!(args[1] instanceof
|
|
6277
|
-
throw new
|
|
6277
|
+
if (!(args[1] instanceof chunkPXS4WZYB_cjs.NumberSymbol)) {
|
|
6278
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("FN_EXPECTS_TYPE_ARGUMENT" /* EXPECTS_TYPE_ARGUMENT */, {
|
|
6278
6279
|
data: { functionName: "range", expectedType: "Number", argumentPosition: "second" }
|
|
6279
6280
|
});
|
|
6280
6281
|
}
|
|
6281
6282
|
const sv = args[0].value;
|
|
6282
6283
|
const ev = args[1].value;
|
|
6283
6284
|
if (sv !== Math.trunc(sv) || ev !== Math.trunc(ev) || Number.isNaN(sv) || Number.isNaN(ev) || !Number.isFinite(sv) || !Number.isFinite(ev)) {
|
|
6284
|
-
throw new
|
|
6285
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("FN_ARGUMENT_OUT_OF_RANGE" /* ARGUMENT_OUT_OF_RANGE */, {
|
|
6285
6286
|
data: {
|
|
6286
6287
|
functionName: "range",
|
|
6287
6288
|
constraint: `arguments must be integers, got ${sv} and ${ev}`
|
|
@@ -6289,7 +6290,7 @@ var _FunctionsManager = class _FunctionsManager extends BaseManager {
|
|
|
6289
6290
|
});
|
|
6290
6291
|
}
|
|
6291
6292
|
if (ev - sv > 1e6) {
|
|
6292
|
-
throw new
|
|
6293
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("FN_ARGUMENT_OUT_OF_RANGE" /* ARGUMENT_OUT_OF_RANGE */, {
|
|
6293
6294
|
data: {
|
|
6294
6295
|
functionName: "range",
|
|
6295
6296
|
constraint: `size exceeds limit (1000000), got ${ev - sv}`
|
|
@@ -6300,13 +6301,13 @@ var _FunctionsManager = class _FunctionsManager extends BaseManager {
|
|
|
6300
6301
|
end = ev;
|
|
6301
6302
|
}
|
|
6302
6303
|
if (end < start) {
|
|
6303
|
-
return new
|
|
6304
|
+
return new chunkPXS4WZYB_cjs.ListSymbol([], false);
|
|
6304
6305
|
}
|
|
6305
6306
|
const elements = [];
|
|
6306
6307
|
for (let i = start; i < end; i++) {
|
|
6307
|
-
elements.push(new
|
|
6308
|
+
elements.push(new chunkPXS4WZYB_cjs.NumberSymbol(i));
|
|
6308
6309
|
}
|
|
6309
|
-
return new
|
|
6310
|
+
return new chunkPXS4WZYB_cjs.ListSymbol(elements, false);
|
|
6310
6311
|
});
|
|
6311
6312
|
}
|
|
6312
6313
|
registerFunction(name, impl) {
|
|
@@ -6319,7 +6320,7 @@ var _FunctionsManager = class _FunctionsManager extends BaseManager {
|
|
|
6319
6320
|
try {
|
|
6320
6321
|
const config = this.parentConfig?.clone();
|
|
6321
6322
|
if (!config) {
|
|
6322
|
-
throw new
|
|
6323
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("FN_NO_CONFIG_AVAILABLE" /* NO_CONFIG_AVAILABLE */, {
|
|
6323
6324
|
data: { functionName }
|
|
6324
6325
|
});
|
|
6325
6326
|
}
|
|
@@ -6331,19 +6332,19 @@ var _FunctionsManager = class _FunctionsManager extends BaseManager {
|
|
|
6331
6332
|
});
|
|
6332
6333
|
const result = interpreter.interpret();
|
|
6333
6334
|
if (result === null) {
|
|
6334
|
-
throw new
|
|
6335
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("FN_FUNCTION_RETURNED_NULL" /* FUNCTION_RETURNED_NULL */, {
|
|
6335
6336
|
data: { functionName }
|
|
6336
6337
|
});
|
|
6337
6338
|
}
|
|
6338
6339
|
if (typeof result === "string") {
|
|
6339
|
-
return new
|
|
6340
|
+
return new chunkPXS4WZYB_cjs.StringSymbol(result);
|
|
6340
6341
|
}
|
|
6341
6342
|
return result;
|
|
6342
6343
|
} catch (error) {
|
|
6343
|
-
throw new
|
|
6344
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("FN_EXECUTION_ERROR" /* EXECUTION_ERROR */, {
|
|
6344
6345
|
data: {
|
|
6345
6346
|
functionName,
|
|
6346
|
-
error:
|
|
6347
|
+
error: chunkPXS4WZYB_cjs.isLanguageError(error) ? error : chunkPXS4WZYB_cjs.serializeError(error)
|
|
6347
6348
|
}
|
|
6348
6349
|
});
|
|
6349
6350
|
}
|
|
@@ -6375,7 +6376,7 @@ var _FunctionsManager = class _FunctionsManager extends BaseManager {
|
|
|
6375
6376
|
(prop) => !prop?.optional
|
|
6376
6377
|
).length;
|
|
6377
6378
|
if (args.length < requiredCount) {
|
|
6378
|
-
throw new
|
|
6379
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("FN_REQUIRES_MIN_ARGUMENTS" /* REQUIRES_MIN_ARGUMENTS */, {
|
|
6379
6380
|
token,
|
|
6380
6381
|
data: { functionName: name, minArgs: requiredCount }
|
|
6381
6382
|
});
|
|
@@ -6588,7 +6589,7 @@ ${spec}` : "";
|
|
|
6588
6589
|
*/
|
|
6589
6590
|
validateListItems(value, itemsSpec, visitedUrls, basePath, depth) {
|
|
6590
6591
|
const results = [];
|
|
6591
|
-
if (!(value instanceof
|
|
6592
|
+
if (!(value instanceof chunkPXS4WZYB_cjs.ListSymbol)) {
|
|
6592
6593
|
return results;
|
|
6593
6594
|
}
|
|
6594
6595
|
const items = value.value;
|
|
@@ -6701,10 +6702,10 @@ ${spec}` : "";
|
|
|
6701
6702
|
interpreter.resetSymbolTable();
|
|
6702
6703
|
interpreter.setReference("input", value);
|
|
6703
6704
|
const result = interpreter.interpret();
|
|
6704
|
-
if (result instanceof
|
|
6705
|
+
if (result instanceof chunkPXS4WZYB_cjs.BooleanSymbol && result.value === true) {
|
|
6705
6706
|
return { valid: true, tokenType };
|
|
6706
6707
|
}
|
|
6707
|
-
if (result instanceof
|
|
6708
|
+
if (result instanceof chunkPXS4WZYB_cjs.StringSymbol) {
|
|
6708
6709
|
return {
|
|
6709
6710
|
valid: false,
|
|
6710
6711
|
error: result.value,
|
|
@@ -6731,10 +6732,10 @@ ${spec}` : "";
|
|
|
6731
6732
|
* Extract a Map from various symbol types that can contain key-value pairs.
|
|
6732
6733
|
*/
|
|
6733
6734
|
getValueMap(value) {
|
|
6734
|
-
if (value instanceof
|
|
6735
|
+
if (value instanceof chunkPXS4WZYB_cjs.DictionarySymbol) {
|
|
6735
6736
|
return value.value;
|
|
6736
6737
|
}
|
|
6737
|
-
if (value instanceof
|
|
6738
|
+
if (value instanceof chunkPXS4WZYB_cjs.TokenSymbol && value.value instanceof Map) {
|
|
6738
6739
|
return value.value;
|
|
6739
6740
|
}
|
|
6740
6741
|
return null;
|
|
@@ -6846,8 +6847,8 @@ var _UnitManager = class _UnitManager extends BaseManager {
|
|
|
6846
6847
|
const fn = /* @__PURE__ */ chunkLEYHQJTL_cjs.__name((unit) => {
|
|
6847
6848
|
const config = this.createInterpreterConfig({ input: unit });
|
|
6848
6849
|
const result = new Interpreter(ast, config).interpret();
|
|
6849
|
-
if (!(result instanceof
|
|
6850
|
-
throw new
|
|
6850
|
+
if (!(result instanceof chunkPXS4WZYB_cjs.NumberWithUnitSymbol)) {
|
|
6851
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("UNIT_CONVERSION_CRASHED" /* CONVERSION_CRASHED */, {
|
|
6851
6852
|
data: { error: "Unit conversion function must return a NumberWithUnitSymbol" }
|
|
6852
6853
|
});
|
|
6853
6854
|
}
|
|
@@ -6886,16 +6887,16 @@ ${spec}` : "";
|
|
|
6886
6887
|
convertTo(unit, targetUri) {
|
|
6887
6888
|
const sourceUri = this.getUriByKeyword(unit.unit);
|
|
6888
6889
|
if (!sourceUri) {
|
|
6889
|
-
throw new
|
|
6890
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("UNIT_SOURCE_URI_NOT_FOUND" /* SOURCE_URI_NOT_FOUND */, {
|
|
6890
6891
|
data: { unit: unit.unit }
|
|
6891
6892
|
});
|
|
6892
6893
|
}
|
|
6893
6894
|
try {
|
|
6894
6895
|
return this.convertThroughPath(unit, sourceUri, targetUri);
|
|
6895
6896
|
} catch (error) {
|
|
6896
|
-
throw new
|
|
6897
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("UNIT_CONVERSION_CRASHED" /* CONVERSION_CRASHED */, {
|
|
6897
6898
|
data: {
|
|
6898
|
-
error:
|
|
6899
|
+
error: chunkPXS4WZYB_cjs.isLanguageError(error) ? error : chunkPXS4WZYB_cjs.serializeError(error)
|
|
6899
6900
|
}
|
|
6900
6901
|
});
|
|
6901
6902
|
}
|
|
@@ -6903,7 +6904,7 @@ ${spec}` : "";
|
|
|
6903
6904
|
isOneNumberRelative(inputs) {
|
|
6904
6905
|
let relativeCount = 0;
|
|
6905
6906
|
for (const input of inputs) {
|
|
6906
|
-
if (input instanceof
|
|
6907
|
+
if (input instanceof chunkPXS4WZYB_cjs.NumberWithUnitSymbol) {
|
|
6907
6908
|
const spec = this.getSpecByKeyword(input.unit);
|
|
6908
6909
|
if (spec?.type === "relative") {
|
|
6909
6910
|
relativeCount++;
|
|
@@ -6914,14 +6915,14 @@ ${spec}` : "";
|
|
|
6914
6915
|
}
|
|
6915
6916
|
convertRelative(numbers) {
|
|
6916
6917
|
if (numbers.length !== 2) {
|
|
6917
|
-
throw new
|
|
6918
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("UNIT_RELATIVE_REQUIRES_TWO_NUMBERS" /* RELATIVE_REQUIRES_TWO_NUMBERS */);
|
|
6918
6919
|
}
|
|
6919
6920
|
let relativeNum = null;
|
|
6920
6921
|
let baseNum = null;
|
|
6921
6922
|
let relativeIndex = -1;
|
|
6922
6923
|
for (let i = 0; i < numbers.length; i++) {
|
|
6923
6924
|
const num = numbers[i];
|
|
6924
|
-
if (num instanceof
|
|
6925
|
+
if (num instanceof chunkPXS4WZYB_cjs.NumberWithUnitSymbol) {
|
|
6925
6926
|
const spec2 = this.getSpecByKeyword(num.unit);
|
|
6926
6927
|
if (spec2?.type === "relative") {
|
|
6927
6928
|
if (relativeNum !== null) {
|
|
@@ -6941,13 +6942,13 @@ ${spec}` : "";
|
|
|
6941
6942
|
}
|
|
6942
6943
|
const spec = this.getSpecByKeyword(relativeNum.unit);
|
|
6943
6944
|
if (!spec?.to_absolute) {
|
|
6944
|
-
throw new
|
|
6945
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("UNIT_NO_TO_ABSOLUTE_SCRIPT" /* NO_TO_ABSOLUTE_SCRIPT */, {
|
|
6945
6946
|
data: { unit: relativeNum.unit }
|
|
6946
6947
|
});
|
|
6947
6948
|
}
|
|
6948
6949
|
const { ast } = parseExpression(spec.to_absolute.script);
|
|
6949
|
-
const relativeValueSymbol = new
|
|
6950
|
-
const otherValueSymbol = new
|
|
6950
|
+
const relativeValueSymbol = new chunkPXS4WZYB_cjs.NumberSymbol(relativeNum.value);
|
|
6951
|
+
const otherValueSymbol = new chunkPXS4WZYB_cjs.NumberSymbol(baseNum.value);
|
|
6951
6952
|
const result = new Interpreter(ast, {
|
|
6952
6953
|
references: {
|
|
6953
6954
|
relative_value: relativeValueSymbol,
|
|
@@ -6955,21 +6956,21 @@ ${spec}` : "";
|
|
|
6955
6956
|
}
|
|
6956
6957
|
}).interpret();
|
|
6957
6958
|
let convertedValue;
|
|
6958
|
-
if (result instanceof
|
|
6959
|
+
if (result instanceof chunkPXS4WZYB_cjs.NumberSymbol) {
|
|
6959
6960
|
convertedValue = result.value;
|
|
6960
6961
|
} else if (typeof result === "number") {
|
|
6961
6962
|
convertedValue = result;
|
|
6962
6963
|
} else {
|
|
6963
|
-
throw new
|
|
6964
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("UNIT_TO_ABSOLUTE_MUST_RETURN_NUMBER" /* TO_ABSOLUTE_MUST_RETURN_NUMBER */);
|
|
6964
6965
|
}
|
|
6965
6966
|
if (Number.isInteger(convertedValue)) {
|
|
6966
6967
|
convertedValue = Math.trunc(convertedValue);
|
|
6967
6968
|
}
|
|
6968
6969
|
let convertedNum;
|
|
6969
|
-
if (baseNum instanceof
|
|
6970
|
-
convertedNum = new
|
|
6970
|
+
if (baseNum instanceof chunkPXS4WZYB_cjs.NumberWithUnitSymbol) {
|
|
6971
|
+
convertedNum = new chunkPXS4WZYB_cjs.NumberWithUnitSymbol(convertedValue, baseNum.unit);
|
|
6971
6972
|
} else {
|
|
6972
|
-
convertedNum = new
|
|
6973
|
+
convertedNum = new chunkPXS4WZYB_cjs.NumberSymbol(convertedValue);
|
|
6973
6974
|
}
|
|
6974
6975
|
const resultNumbers = [...numbers];
|
|
6975
6976
|
resultNumbers[relativeIndex] = convertedNum;
|
|
@@ -6980,7 +6981,7 @@ ${spec}` : "";
|
|
|
6980
6981
|
return [];
|
|
6981
6982
|
}
|
|
6982
6983
|
const numberWithUnits = inputs.filter(
|
|
6983
|
-
(inp) => inp instanceof
|
|
6984
|
+
(inp) => inp instanceof chunkPXS4WZYB_cjs.NumberWithUnitSymbol
|
|
6984
6985
|
);
|
|
6985
6986
|
if (numberWithUnits.length < 1) {
|
|
6986
6987
|
return inputs;
|
|
@@ -6988,7 +6989,7 @@ ${spec}` : "";
|
|
|
6988
6989
|
const isRelative = this.isOneNumberRelative(inputs);
|
|
6989
6990
|
if (isRelative) {
|
|
6990
6991
|
if (inputs.length > 2) {
|
|
6991
|
-
throw new
|
|
6992
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("UNIT_CANNOT_CONVERT_MULTIPLE_RELATIVE" /* CANNOT_CONVERT_MULTIPLE_RELATIVE */);
|
|
6992
6993
|
}
|
|
6993
6994
|
return this.convertRelative(inputs);
|
|
6994
6995
|
}
|
|
@@ -7000,7 +7001,7 @@ ${spec}` : "";
|
|
|
7000
7001
|
conversionResults[unitUri] = [];
|
|
7001
7002
|
let canConvert = true;
|
|
7002
7003
|
for (const inp of inputs) {
|
|
7003
|
-
if (!(inp instanceof
|
|
7004
|
+
if (!(inp instanceof chunkPXS4WZYB_cjs.NumberWithUnitSymbol)) {
|
|
7004
7005
|
conversionResults[unitUri].push(inp);
|
|
7005
7006
|
continue;
|
|
7006
7007
|
}
|
|
@@ -7034,7 +7035,7 @@ ${spec}` : "";
|
|
|
7034
7035
|
maxPerUri[uri] = maxValue;
|
|
7035
7036
|
}
|
|
7036
7037
|
if (Object.keys(maxPerUri).length === 0) {
|
|
7037
|
-
throw new
|
|
7038
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("UNIT_NO_VALID_CONVERSION_PATH" /* NO_VALID_CONVERSION_PATH */);
|
|
7038
7039
|
}
|
|
7039
7040
|
const commonUnitUri = Object.keys(maxPerUri).reduce(
|
|
7040
7041
|
(a, b) => maxPerUri[a] > maxPerUri[b] ? a : b
|
|
@@ -7078,17 +7079,17 @@ var _Config = class _Config {
|
|
|
7078
7079
|
if (lowerBaseType === "color") {
|
|
7079
7080
|
if (subType) {
|
|
7080
7081
|
if (!this.colorManager.getSpecByType(subType)) {
|
|
7081
|
-
throw new
|
|
7082
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("CFG_NO_SPEC_FOUND" /* NO_SPEC_FOUND */, {
|
|
7082
7083
|
data: { specName: subType }
|
|
7083
7084
|
});
|
|
7084
7085
|
}
|
|
7085
|
-
return new
|
|
7086
|
+
return new chunkPXS4WZYB_cjs.ColorSymbol(null, subType, null, this);
|
|
7086
7087
|
}
|
|
7087
|
-
return new
|
|
7088
|
+
return new chunkPXS4WZYB_cjs.ColorSymbol(null, void 0, null, this);
|
|
7088
7089
|
}
|
|
7089
|
-
const basicSymbolConstructor =
|
|
7090
|
+
const basicSymbolConstructor = chunkPXS4WZYB_cjs.basicSymbolTypes[baseType.toLowerCase()];
|
|
7090
7091
|
if (!basicSymbolConstructor) {
|
|
7091
|
-
throw new
|
|
7092
|
+
throw new chunkPXS4WZYB_cjs.InterpreterError("CFG_NO_TYPE_FOUND" /* NO_TYPE_FOUND */, {
|
|
7092
7093
|
data: { typeName: baseType }
|
|
7093
7094
|
});
|
|
7094
7095
|
}
|
|
@@ -7101,7 +7102,7 @@ var _Config = class _Config {
|
|
|
7101
7102
|
return true;
|
|
7102
7103
|
}
|
|
7103
7104
|
if (subType) return false;
|
|
7104
|
-
return !!
|
|
7105
|
+
return !!chunkPXS4WZYB_cjs.basicSymbolTypes[lowerBaseType];
|
|
7105
7106
|
}
|
|
7106
7107
|
get inlineConstants() {
|
|
7107
7108
|
return this._inlineConstants;
|
|
@@ -7171,9 +7172,9 @@ function evaluateExpression(expression, options = {}) {
|
|
|
7171
7172
|
const result = interpreter.interpret();
|
|
7172
7173
|
return {
|
|
7173
7174
|
success: true,
|
|
7174
|
-
result:
|
|
7175
|
-
resultString:
|
|
7176
|
-
type:
|
|
7175
|
+
result: chunkPXS4WZYB_cjs.serializeInterpreterResult(result),
|
|
7176
|
+
resultString: chunkPXS4WZYB_cjs.stringifyInterpreterResult(result),
|
|
7177
|
+
type: chunkPXS4WZYB_cjs.isTokenscriptSymbol(result) ? result.getTypeName() : chunkPXS4WZYB_cjs.getResultTypeName(result),
|
|
7177
7178
|
executionTime: performance.now() - startTime
|
|
7178
7179
|
};
|
|
7179
7180
|
} catch (error) {
|
|
@@ -7307,5 +7308,5 @@ exports.tokenizeTolerantly = tokenizeTolerantly;
|
|
|
7307
7308
|
exports.validateTokenName = validateTokenName;
|
|
7308
7309
|
exports.validateTokenPath = validateTokenPath;
|
|
7309
7310
|
exports.walkAST = walkAST;
|
|
7310
|
-
//# sourceMappingURL=chunk-
|
|
7311
|
-
//# sourceMappingURL=chunk-
|
|
7311
|
+
//# sourceMappingURL=chunk-XHA2RNU7.cjs.map
|
|
7312
|
+
//# sourceMappingURL=chunk-XHA2RNU7.cjs.map
|