@tokens-studio/tokenscript-interpreter 0.33.0 → 0.34.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 (67) 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/cli.js +221 -2
  6. package/dist/cli.js.map +1 -1
  7. package/dist/compliance-suite.js +2 -2
  8. package/dist/config-DtbN3iyg.d.ts +918 -0
  9. package/dist/lib/{chunk-QYRJ6NSL.cjs → chunk-LEYHQJTL.cjs} +3 -2
  10. package/dist/lib/chunk-LEYHQJTL.cjs.map +1 -0
  11. package/dist/lib/{chunk-GKSWF7FF.cjs → chunk-LMGHS2NP.cjs} +102 -100
  12. package/dist/lib/chunk-LMGHS2NP.cjs.map +1 -0
  13. package/dist/lib/{chunk-LI2D53SH.js → chunk-LSTH2XJ4.js} +5 -3
  14. package/dist/lib/chunk-LSTH2XJ4.js.map +1 -0
  15. package/dist/lib/{chunk-YD3MIYOO.js → chunk-ODVWXGOM.js} +3 -2
  16. package/dist/lib/chunk-ODVWXGOM.js.map +1 -0
  17. package/dist/lib/{chunk-DFN353G4.js → chunk-RWXDOZAS.js} +225 -4
  18. package/dist/lib/chunk-RWXDOZAS.js.map +1 -0
  19. package/dist/lib/{chunk-AQEJB7EO.cjs → chunk-YCIBJDRB.cjs} +767 -546
  20. package/dist/lib/chunk-YCIBJDRB.cjs.map +1 -0
  21. package/dist/lib/index.cjs +91 -91
  22. package/dist/lib/index.d.cts +4 -4
  23. package/dist/lib/index.d.ts +4 -4
  24. package/dist/lib/index.js +3 -3
  25. package/dist/lib/{interpreter-DNmBc--s.d.ts → interpreter-6QwMkUqD.d.cts} +30 -2
  26. package/dist/lib/{interpreter-CP7CNwDa.d.cts → interpreter-v7WiwSP9.d.ts} +30 -2
  27. package/dist/lib/interpreter.cjs +73 -73
  28. package/dist/lib/interpreter.d.cts +4 -4
  29. package/dist/lib/interpreter.d.ts +4 -4
  30. package/dist/lib/interpreter.js +3 -3
  31. package/dist/lib/processor-node.cjs +12 -12
  32. package/dist/lib/processor-node.d.cts +3 -3
  33. package/dist/lib/processor-node.d.ts +3 -3
  34. package/dist/lib/processor-node.js +3 -3
  35. package/dist/lib/processor.cjs +17 -17
  36. package/dist/lib/processor.d.cts +4 -4
  37. package/dist/lib/processor.d.ts +4 -4
  38. package/dist/lib/processor.js +3 -3
  39. package/dist/lib/schema.cjs +5 -5
  40. package/dist/lib/schema.d.cts +1 -1
  41. package/dist/lib/schema.d.ts +1 -1
  42. package/dist/lib/schema.js +3 -3
  43. package/dist/lib/syntax-highlighting.cjs +15 -15
  44. package/dist/lib/syntax-highlighting.d.cts +1 -1
  45. package/dist/lib/syntax-highlighting.d.ts +1 -1
  46. package/dist/lib/syntax-highlighting.js +2 -2
  47. package/dist/lib/{types-DHgmzR1Z.d.ts → types-BI0AZ4Ej.d.ts} +2 -2
  48. package/dist/lib/{types-BimJex2v.d.cts → types-EB8V9c46.d.cts} +1 -0
  49. package/dist/lib/{types-BimJex2v.d.ts → types-EB8V9c46.d.ts} +1 -0
  50. package/dist/lib/{types-DsJuwrq3.d.cts → types-cFwP43uv.d.cts} +2 -2
  51. package/dist/lib/types.cjs +6 -6
  52. package/dist/lib/types.d.cts +1 -1
  53. package/dist/lib/types.d.ts +1 -1
  54. package/dist/lib/types.js +1 -1
  55. package/dist/processor/index.d.ts +1 -1
  56. package/dist/processor/index.js +2 -2
  57. package/dist/repl.d.ts +1 -1
  58. package/dist/repl.js +2 -2
  59. package/dist/types.d.ts +1 -1
  60. package/dist/types.js +1 -1
  61. package/package.json +1 -1
  62. package/dist/lib/chunk-AQEJB7EO.cjs.map +0 -1
  63. package/dist/lib/chunk-DFN353G4.js.map +0 -1
  64. package/dist/lib/chunk-GKSWF7FF.cjs.map +0 -1
  65. package/dist/lib/chunk-LI2D53SH.js.map +0 -1
  66. package/dist/lib/chunk-QYRJ6NSL.cjs.map +0 -1
  67. package/dist/lib/chunk-YD3MIYOO.js.map +0 -1
@@ -61,6 +61,7 @@ var TokenType = /* @__PURE__ */ ((TokenType2) => {
61
61
  TokenType2["HEX_COLOR"] = "HEX_COLOR";
62
62
  TokenType2["STRING"] = "STRING";
63
63
  TokenType2["EXPLICIT_STRING"] = "EXPLICIT_STRING";
64
+ TokenType2["TEMPLATE_STRING"] = "TEMPLATE_STRING";
64
65
  TokenType2["ASSIGN"] = "ASSIGN";
65
66
  TokenType2["IS_EQ"] = "IS_EQ";
66
67
  TokenType2["IS_GT"] = "GT";
@@ -109,5 +110,5 @@ exports.TokenType = TokenType;
109
110
  exports.UNINTERPRETED_KEYWORDS = UNINTERPRETED_KEYWORDS;
110
111
  exports.__export = __export;
111
112
  exports.__name = __name;
112
- //# sourceMappingURL=chunk-QYRJ6NSL.cjs.map
113
- //# sourceMappingURL=chunk-QYRJ6NSL.cjs.map
113
+ //# sourceMappingURL=chunk-LEYHQJTL.cjs.map
114
+ //# sourceMappingURL=chunk-LEYHQJTL.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/types.ts"],"names":["Operations","SupportedFormats","ReservedKeyword","TokenType"],"mappings":"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","file":"chunk-LEYHQJTL.cjs","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"]}