@tokens-studio/tokenscript-interpreter 0.33.0 → 0.36.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. package/dist/chunk-33CDF4L4.js +6444 -0
  2. package/dist/chunk-33CDF4L4.js.map +1 -0
  3. package/dist/chunk-AXH5N7KV.js +99 -0
  4. package/dist/chunk-AXH5N7KV.js.map +1 -0
  5. package/dist/chunk-GJIOYGP6.js +6446 -0
  6. package/dist/chunk-GJIOYGP6.js.map +1 -0
  7. package/dist/chunk-NGG6MBER.js +6452 -0
  8. package/dist/chunk-NGG6MBER.js.map +1 -0
  9. package/dist/cli.js +234 -7
  10. package/dist/cli.js.map +1 -1
  11. package/dist/compliance-suite.js +2 -2
  12. package/dist/config-DtbN3iyg.d.ts +918 -0
  13. package/dist/lib/{chunk-DFN353G4.js → chunk-6FR6JBDM.js} +238 -9
  14. package/dist/lib/chunk-6FR6JBDM.js.map +1 -0
  15. package/dist/lib/{chunk-QYRJ6NSL.cjs → chunk-LEYHQJTL.cjs} +3 -2
  16. package/dist/lib/chunk-LEYHQJTL.cjs.map +1 -0
  17. package/dist/lib/{chunk-GKSWF7FF.cjs → chunk-LMGHS2NP.cjs} +102 -100
  18. package/dist/lib/chunk-LMGHS2NP.cjs.map +1 -0
  19. package/dist/lib/{chunk-LI2D53SH.js → chunk-LSTH2XJ4.js} +5 -3
  20. package/dist/lib/chunk-LSTH2XJ4.js.map +1 -0
  21. package/dist/lib/{chunk-YD3MIYOO.js → chunk-ODVWXGOM.js} +3 -2
  22. package/dist/lib/chunk-ODVWXGOM.js.map +1 -0
  23. package/dist/lib/{chunk-AQEJB7EO.cjs → chunk-ZURBS3EE.cjs} +780 -551
  24. package/dist/lib/chunk-ZURBS3EE.cjs.map +1 -0
  25. package/dist/lib/index.cjs +91 -91
  26. package/dist/lib/index.d.cts +4 -4
  27. package/dist/lib/index.d.ts +4 -4
  28. package/dist/lib/index.js +3 -3
  29. package/dist/lib/{interpreter-DNmBc--s.d.ts → interpreter-6QwMkUqD.d.cts} +30 -2
  30. package/dist/lib/{interpreter-CP7CNwDa.d.cts → interpreter-v7WiwSP9.d.ts} +30 -2
  31. package/dist/lib/interpreter.cjs +73 -73
  32. package/dist/lib/interpreter.d.cts +4 -4
  33. package/dist/lib/interpreter.d.ts +4 -4
  34. package/dist/lib/interpreter.js +3 -3
  35. package/dist/lib/processor-node.cjs +12 -12
  36. package/dist/lib/processor-node.d.cts +3 -3
  37. package/dist/lib/processor-node.d.ts +3 -3
  38. package/dist/lib/processor-node.js +3 -3
  39. package/dist/lib/processor.cjs +17 -17
  40. package/dist/lib/processor.d.cts +4 -4
  41. package/dist/lib/processor.d.ts +4 -4
  42. package/dist/lib/processor.js +3 -3
  43. package/dist/lib/schema.cjs +5 -5
  44. package/dist/lib/schema.d.cts +1 -1
  45. package/dist/lib/schema.d.ts +1 -1
  46. package/dist/lib/schema.js +3 -3
  47. package/dist/lib/syntax-highlighting.cjs +15 -15
  48. package/dist/lib/syntax-highlighting.d.cts +1 -1
  49. package/dist/lib/syntax-highlighting.d.ts +1 -1
  50. package/dist/lib/syntax-highlighting.js +2 -2
  51. package/dist/lib/{types-DHgmzR1Z.d.ts → types-BI0AZ4Ej.d.ts} +2 -2
  52. package/dist/lib/{types-BimJex2v.d.cts → types-EB8V9c46.d.cts} +1 -0
  53. package/dist/lib/{types-BimJex2v.d.ts → types-EB8V9c46.d.ts} +1 -0
  54. package/dist/lib/{types-DsJuwrq3.d.cts → types-cFwP43uv.d.cts} +2 -2
  55. package/dist/lib/types.cjs +6 -6
  56. package/dist/lib/types.d.cts +1 -1
  57. package/dist/lib/types.d.ts +1 -1
  58. package/dist/lib/types.js +1 -1
  59. package/dist/processor/index.d.ts +1 -1
  60. package/dist/processor/index.js +2 -2
  61. package/dist/repl.d.ts +1 -1
  62. package/dist/repl.js +2 -2
  63. package/dist/types.d.ts +1 -1
  64. package/dist/types.js +1 -1
  65. package/package.json +1 -1
  66. package/dist/lib/chunk-AQEJB7EO.cjs.map +0 -1
  67. package/dist/lib/chunk-DFN353G4.js.map +0 -1
  68. package/dist/lib/chunk-GKSWF7FF.cjs.map +0 -1
  69. package/dist/lib/chunk-LI2D53SH.js.map +0 -1
  70. package/dist/lib/chunk-QYRJ6NSL.cjs.map +0 -1
  71. package/dist/lib/chunk-YD3MIYOO.js.map +0 -1
@@ -0,0 +1,99 @@
1
+ // src/types.ts
2
+ var Operations = /* @__PURE__ */ ((Operations2) => {
3
+ Operations2["SUBTRACT"] = "-";
4
+ Operations2["ADD"] = "+";
5
+ Operations2["MULTIPLY"] = "*";
6
+ Operations2["DIVIDE"] = "/";
7
+ Operations2["POWER"] = "^";
8
+ Operations2["LOGIC_AND"] = "&&";
9
+ Operations2["LOGIC_OR"] = "||";
10
+ Operations2["LOGIC_NOT"] = "!";
11
+ return Operations2;
12
+ })(Operations || {});
13
+ var SupportedFormats = /* @__PURE__ */ ((SupportedFormats2) => {
14
+ SupportedFormats2["PX"] = "px";
15
+ SupportedFormats2["EM"] = "em";
16
+ SupportedFormats2["REM"] = "rem";
17
+ SupportedFormats2["VW"] = "vw";
18
+ SupportedFormats2["VH"] = "vh";
19
+ SupportedFormats2["PT"] = "pt";
20
+ SupportedFormats2["IN"] = "in";
21
+ SupportedFormats2["CM"] = "cm";
22
+ SupportedFormats2["MM"] = "mm";
23
+ SupportedFormats2["DEG"] = "deg";
24
+ SupportedFormats2["PERCENTAGE"] = "%";
25
+ SupportedFormats2["S"] = "s";
26
+ SupportedFormats2["MS"] = "ms";
27
+ return SupportedFormats2;
28
+ })(SupportedFormats || {});
29
+ var ReservedKeyword = /* @__PURE__ */ ((ReservedKeyword2) => {
30
+ ReservedKeyword2["TRUE"] = "true";
31
+ ReservedKeyword2["FALSE"] = "false";
32
+ ReservedKeyword2["NULL"] = "null";
33
+ ReservedKeyword2["UNDEFINED"] = "undefined";
34
+ ReservedKeyword2["WHILE"] = "while";
35
+ ReservedKeyword2["IF"] = "if";
36
+ ReservedKeyword2["ELSE"] = "else";
37
+ ReservedKeyword2["ELIF"] = "elif";
38
+ ReservedKeyword2["RETURN"] = "return";
39
+ ReservedKeyword2["VARIABLE"] = "variable";
40
+ ReservedKeyword2["FOR"] = "for";
41
+ return ReservedKeyword2;
42
+ })(ReservedKeyword || {});
43
+ var TokenType = /* @__PURE__ */ ((TokenType2) => {
44
+ TokenType2["REFERENCE"] = "REFERENCE";
45
+ TokenType2["NUMBER"] = "NUMBER";
46
+ TokenType2["OPERATION"] = "OPERATION";
47
+ TokenType2["FORMAT"] = "FORMAT";
48
+ TokenType2["LPAREN"] = "LPAREN";
49
+ TokenType2["RPAREN"] = "RPAREN";
50
+ TokenType2["EOF"] = "EOF";
51
+ TokenType2["COMMA"] = "COMMA";
52
+ TokenType2["HEX_COLOR"] = "HEX_COLOR";
53
+ TokenType2["STRING"] = "STRING";
54
+ TokenType2["EXPLICIT_STRING"] = "EXPLICIT_STRING";
55
+ TokenType2["TEMPLATE_STRING"] = "TEMPLATE_STRING";
56
+ TokenType2["ASSIGN"] = "ASSIGN";
57
+ TokenType2["IS_EQ"] = "IS_EQ";
58
+ TokenType2["IS_GT"] = "GT";
59
+ TokenType2["IS_LT"] = "LT";
60
+ TokenType2["IS_GT_EQ"] = "IS_GT_EQ";
61
+ TokenType2["IS_LT_EQ"] = "IS_LT_EQ";
62
+ TokenType2["IS_NOT_EQ"] = "IS_NOT_EQ";
63
+ TokenType2["RESERVED_KEYWORD"] = "RESERVED_KEYWORD";
64
+ TokenType2["SEMICOLON"] = "SEMICOLON";
65
+ TokenType2["LOGIC_NOT"] = "LOGIC_NOT";
66
+ TokenType2["COLON"] = "COLON";
67
+ TokenType2["DOT"] = "DOT";
68
+ TokenType2["LOGIC_AND"] = "LOGIC_AND";
69
+ TokenType2["LOGIC_OR"] = "LOGIC_OR";
70
+ TokenType2["LBLOCK"] = "LBLOCK";
71
+ TokenType2["RBLOCK"] = "RBLOCK";
72
+ TokenType2["PARTIAL_REFERENCE"] = "PARTIAL_REFERENCE";
73
+ TokenType2["PARTIAL_STRING"] = "PARTIAL_STRING";
74
+ return TokenType2;
75
+ })(TokenType || {});
76
+ var UNINTERPRETED_KEYWORDS = [
77
+ "inside",
78
+ "outside",
79
+ "above",
80
+ "below",
81
+ "left",
82
+ "right",
83
+ "top",
84
+ "bottom",
85
+ "before",
86
+ "after",
87
+ "between",
88
+ "uppercase",
89
+ "lowercase",
90
+ "underline",
91
+ "none",
92
+ "innerShadow",
93
+ "outerShadow",
94
+ "shadow"
95
+ ];
96
+
97
+ export { Operations, ReservedKeyword, SupportedFormats, TokenType, UNINTERPRETED_KEYWORDS };
98
+ //# sourceMappingURL=chunk-AXH5N7KV.js.map
99
+ //# sourceMappingURL=chunk-AXH5N7KV.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/types.ts"],"names":["Operations","SupportedFormats","ReservedKeyword","TokenType"],"mappings":"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","file":"chunk-AXH5N7KV.js","sourcesContent":["import type { Config } from \"@interpreter/config/config\";\n\nexport enum Operations {\n SUBTRACT = \"-\",\n ADD = \"+\",\n MULTIPLY = \"*\",\n DIVIDE = \"/\",\n POWER = \"^\",\n LOGIC_AND = \"&&\",\n LOGIC_OR = \"||\",\n LOGIC_NOT = \"!\",\n}\n\nexport enum SupportedFormats {\n PX = \"px\",\n EM = \"em\",\n REM = \"rem\",\n VW = \"vw\",\n VH = \"vh\",\n PT = \"pt\",\n IN = \"in\",\n CM = \"cm\",\n MM = \"mm\",\n DEG = \"deg\",\n PERCENTAGE = \"%\",\n // Time units\n S = \"s\",\n MS = \"ms\",\n}\n\nexport enum ReservedKeyword {\n TRUE = \"true\",\n FALSE = \"false\",\n NULL = \"null\",\n UNDEFINED = \"undefined\",\n WHILE = \"while\",\n IF = \"if\",\n ELSE = \"else\",\n ELIF = \"elif\",\n RETURN = \"return\",\n VARIABLE = \"variable\",\n FOR = \"for\",\n}\n\nexport enum TokenType {\n REFERENCE = \"REFERENCE\",\n NUMBER = \"NUMBER\",\n OPERATION = \"OPERATION\",\n FORMAT = \"FORMAT\",\n LPAREN = \"LPAREN\",\n RPAREN = \"RPAREN\",\n EOF = \"EOF\",\n COMMA = \"COMMA\",\n HEX_COLOR = \"HEX_COLOR\",\n STRING = \"STRING\",\n EXPLICIT_STRING = \"EXPLICIT_STRING\",\n TEMPLATE_STRING = \"TEMPLATE_STRING\",\n ASSIGN = \"ASSIGN\",\n IS_EQ = \"IS_EQ\",\n IS_GT = \"GT\",\n IS_LT = \"LT\",\n IS_GT_EQ = \"IS_GT_EQ\",\n IS_LT_EQ = \"IS_LT_EQ\",\n IS_NOT_EQ = \"IS_NOT_EQ\",\n RESERVED_KEYWORD = \"RESERVED_KEYWORD\",\n SEMICOLON = \"SEMICOLON\",\n LOGIC_NOT = \"LOGIC_NOT\",\n COLON = \"COLON\",\n DOT = \"DOT\",\n LOGIC_AND = \"LOGIC_AND\",\n LOGIC_OR = \"LOGIC_OR\",\n LBLOCK = \"LBLOCK\",\n RBLOCK = \"RBLOCK\",\n // Partial tokens for tolerant parsing\n PARTIAL_REFERENCE = \"PARTIAL_REFERENCE\",\n PARTIAL_STRING = \"PARTIAL_STRING\",\n}\n\nexport interface Token {\n type: TokenType;\n value: any;\n line: number;\n pos: number;\n endPos: number;\n}\n\nexport interface ASTNode {\n token?: Token;\n nodeType: string;\n}\n\n/**\n * Metadata attached to a symbol that is preserved across cloning operations.\n * This data is not accessible to the tokenscript language itself and is intended\n * for external use (e.g., storing token IDs for tracing).\n */\nexport type SymbolMetadata = Record<string, unknown>;\n\nexport interface ISymbolType {\n type: string;\n value: any;\n\n /**\n * Optional metadata attached to this symbol.\n * This is a reference that is preserved (not cloned) during deepCopy/cloneIfMutable operations.\n * It is not accessible to the tokenscript language and is intended for external use.\n */\n metadata?: SymbolMetadata;\n\n cloneIfMutable(): ISymbolType;\n deepCopy(): ISymbolType;\n\n typeEquals(other: ISymbolType): boolean;\n equals(other: ISymbolType): boolean;\n validValue(value: any): boolean;\n\n toJSON?(): any;\n toString(): string;\n getTypeName(): string;\n toJs(options?: { recursive?: boolean; stringify?: boolean }): any;\n\n hasMethod?(methodName: string, args: ISymbolType[]): boolean;\n callMethod?(methodName: string, args: ISymbolType[]): ISymbolType | null | undefined;\n hasAttribute?(attributeName: string): boolean;\n getAttribute?(attributeName: string): ISymbolType | null;\n setAttribute?(attributeName: string, value: ISymbolType, config?: Config): void;\n}\n\nexport const UNINTERPRETED_KEYWORDS: string[] = [\n \"inside\",\n \"outside\",\n \"above\",\n \"below\",\n \"left\",\n \"right\",\n \"top\",\n \"bottom\",\n \"before\",\n \"after\",\n \"between\",\n \"uppercase\",\n \"lowercase\",\n \"underline\",\n \"none\",\n \"innerShadow\",\n \"outerShadow\",\n \"shadow\",\n];\n\nexport type ReferenceRecordValue = string | number | ISymbolType;\n\nexport type ReferenceRecord = Record<string, ReferenceRecordValue | Array<ReferenceRecordValue>>;\n"]}