@tom2012/cc-web 2026.5.18-a → 2026.5.18-c

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 (186) hide show
  1. package/README.md +1 -1
  2. package/backend/dist/index.d.ts.map +1 -1
  3. package/backend/dist/index.js +2 -21
  4. package/backend/dist/index.js.map +1 -1
  5. package/backend/dist/routes/global-tracks.d.ts +2 -5
  6. package/backend/dist/routes/global-tracks.d.ts.map +1 -1
  7. package/backend/dist/routes/global-tracks.js +2 -28
  8. package/backend/dist/routes/global-tracks.js.map +1 -1
  9. package/backend/dist/routes/tracks.d.ts +3 -9
  10. package/backend/dist/routes/tracks.d.ts.map +1 -1
  11. package/backend/dist/routes/tracks.js +3 -153
  12. package/backend/dist/routes/tracks.js.map +1 -1
  13. package/backend/dist/tracks/ask-user-bridge.d.ts +1 -6
  14. package/backend/dist/tracks/ask-user-bridge.d.ts.map +1 -1
  15. package/backend/dist/tracks/ask-user-bridge.js +0 -22
  16. package/backend/dist/tracks/ask-user-bridge.js.map +1 -1
  17. package/backend/dist/tracks/index.d.ts +1 -5
  18. package/backend/dist/tracks/index.d.ts.map +1 -1
  19. package/backend/dist/tracks/index.js +1 -10
  20. package/backend/dist/tracks/index.js.map +1 -1
  21. package/backend/package-lock.json +1 -64
  22. package/backend/package.json +1 -5
  23. package/frontend/dist/assets/{ChatOverlay-C-MIdZJm.js → ChatOverlay-i8gy2y-T.js} +1 -1
  24. package/frontend/dist/assets/{GraphPreview-D2qXaMDE.js → GraphPreview-CoOHeDk0.js} +2 -2
  25. package/frontend/dist/assets/{MobilePage-BolIAlON.js → MobilePage-ZYuVSqIu.js} +3 -3
  26. package/frontend/dist/assets/{OfficePreview-Bw5JlSpR.js → OfficePreview-BP_FVyDv.js} +2 -2
  27. package/frontend/dist/assets/{PdfPreview-DA96QUeL.js → PdfPreview-B_Is_82c.js} +1 -1
  28. package/frontend/dist/assets/{ProjectPage-CmbJ2g7j.js → ProjectPage-Bi7P0xvD.js} +5 -5
  29. package/frontend/dist/assets/{SettingsPage-_Cm-AVw4.js → SettingsPage-DlqnuIy1.js} +2 -2
  30. package/frontend/dist/assets/{SkillHubPage-By-ccKQj.js → SkillHubPage-FFefLcmN.js} +3 -3
  31. package/frontend/dist/assets/{chevron-down-DM_Mo17i.js → chevron-down-DqAoFpmS.js} +1 -1
  32. package/frontend/dist/assets/{index-DuGXgwGK.js → index-B5mDtgD1.js} +2 -2
  33. package/frontend/dist/assets/{index-ZXKKVcgm.js → index-Bj-uhUZY.js} +1 -1
  34. package/frontend/dist/assets/{index-B1ToZu3N.js → index-DzYZJMgp.js} +1 -1
  35. package/frontend/dist/assets/index-mxYmpvtf.css +1 -0
  36. package/frontend/dist/assets/{jszip.min-Bm8u3Q9Z.js → jszip.min-DW73pE0J.js} +1 -1
  37. package/frontend/dist/assets/{select-CF-2DxAz.js → select-HgZm25ew.js} +1 -1
  38. package/frontend/dist/assets/{user-mc2CAtZS.js → user-BOTyiGCj.js} +1 -1
  39. package/frontend/dist/index.html +2 -2
  40. package/package.json +1 -1
  41. package/backend/vendor/@tom2012/train-core/dist/ast-cache.d.ts +0 -74
  42. package/backend/vendor/@tom2012/train-core/dist/ast-cache.d.ts.map +0 -1
  43. package/backend/vendor/@tom2012/train-core/dist/ast-cache.js +0 -157
  44. package/backend/vendor/@tom2012/train-core/dist/ast-cache.js.map +0 -1
  45. package/backend/vendor/@tom2012/train-core/dist/ast.d.ts +0 -350
  46. package/backend/vendor/@tom2012/train-core/dist/ast.d.ts.map +0 -1
  47. package/backend/vendor/@tom2012/train-core/dist/ast.js +0 -15
  48. package/backend/vendor/@tom2012/train-core/dist/ast.js.map +0 -1
  49. package/backend/vendor/@tom2012/train-core/dist/builder.d.ts +0 -21
  50. package/backend/vendor/@tom2012/train-core/dist/builder.d.ts.map +0 -1
  51. package/backend/vendor/@tom2012/train-core/dist/builder.js +0 -1254
  52. package/backend/vendor/@tom2012/train-core/dist/builder.js.map +0 -1
  53. package/backend/vendor/@tom2012/train-core/dist/builtins.d.ts +0 -17
  54. package/backend/vendor/@tom2012/train-core/dist/builtins.d.ts.map +0 -1
  55. package/backend/vendor/@tom2012/train-core/dist/builtins.js +0 -500
  56. package/backend/vendor/@tom2012/train-core/dist/builtins.js.map +0 -1
  57. package/backend/vendor/@tom2012/train-core/dist/index.d.ts +0 -54
  58. package/backend/vendor/@tom2012/train-core/dist/index.d.ts.map +0 -1
  59. package/backend/vendor/@tom2012/train-core/dist/index.js +0 -66
  60. package/backend/vendor/@tom2012/train-core/dist/index.js.map +0 -1
  61. package/backend/vendor/@tom2012/train-core/dist/interpreter.d.ts +0 -110
  62. package/backend/vendor/@tom2012/train-core/dist/interpreter.d.ts.map +0 -1
  63. package/backend/vendor/@tom2012/train-core/dist/interpreter.js +0 -943
  64. package/backend/vendor/@tom2012/train-core/dist/interpreter.js.map +0 -1
  65. package/backend/vendor/@tom2012/train-core/dist/lexer.d.ts +0 -88
  66. package/backend/vendor/@tom2012/train-core/dist/lexer.d.ts.map +0 -1
  67. package/backend/vendor/@tom2012/train-core/dist/lexer.js +0 -243
  68. package/backend/vendor/@tom2012/train-core/dist/lexer.js.map +0 -1
  69. package/backend/vendor/@tom2012/train-core/dist/module-loader.d.ts +0 -74
  70. package/backend/vendor/@tom2012/train-core/dist/module-loader.d.ts.map +0 -1
  71. package/backend/vendor/@tom2012/train-core/dist/module-loader.js +0 -149
  72. package/backend/vendor/@tom2012/train-core/dist/module-loader.js.map +0 -1
  73. package/backend/vendor/@tom2012/train-core/dist/parser.d.ts +0 -138
  74. package/backend/vendor/@tom2012/train-core/dist/parser.d.ts.map +0 -1
  75. package/backend/vendor/@tom2012/train-core/dist/parser.js +0 -861
  76. package/backend/vendor/@tom2012/train-core/dist/parser.js.map +0 -1
  77. package/backend/vendor/@tom2012/train-core/dist/prompt-composer.d.ts +0 -49
  78. package/backend/vendor/@tom2012/train-core/dist/prompt-composer.d.ts.map +0 -1
  79. package/backend/vendor/@tom2012/train-core/dist/prompt-composer.js +0 -159
  80. package/backend/vendor/@tom2012/train-core/dist/prompt-composer.js.map +0 -1
  81. package/backend/vendor/@tom2012/train-core/dist/runtime.d.ts +0 -146
  82. package/backend/vendor/@tom2012/train-core/dist/runtime.d.ts.map +0 -1
  83. package/backend/vendor/@tom2012/train-core/dist/runtime.js +0 -156
  84. package/backend/vendor/@tom2012/train-core/dist/runtime.js.map +0 -1
  85. package/backend/vendor/@tom2012/train-core/dist/type-descriptor.d.ts +0 -18
  86. package/backend/vendor/@tom2012/train-core/dist/type-descriptor.d.ts.map +0 -1
  87. package/backend/vendor/@tom2012/train-core/dist/type-descriptor.js +0 -94
  88. package/backend/vendor/@tom2012/train-core/dist/type-descriptor.js.map +0 -1
  89. package/backend/vendor/@tom2012/train-core/dist/validation.d.ts +0 -44
  90. package/backend/vendor/@tom2012/train-core/dist/validation.d.ts.map +0 -1
  91. package/backend/vendor/@tom2012/train-core/dist/validation.js +0 -271
  92. package/backend/vendor/@tom2012/train-core/dist/validation.js.map +0 -1
  93. package/backend/vendor/@tom2012/train-core/package.json +0 -35
  94. package/frontend/dist/assets/TrackEditor-EL1VBAhT.js +0 -14
  95. package/frontend/dist/assets/TrackGraphEditor-BlSkKLI0.js +0 -2
  96. package/frontend/dist/assets/TrackGraphEditor-Fd0xVSp_.css +0 -1
  97. package/frontend/dist/assets/abap-LPLW346S.js +0 -7
  98. package/frontend/dist/assets/apex-Dk-jUCUV.js +0 -7
  99. package/frontend/dist/assets/azcli-DPUMmPlX.js +0 -7
  100. package/frontend/dist/assets/bat-C1Qbg1bV.js +0 -7
  101. package/frontend/dist/assets/bicep-D-e-VSJi.js +0 -7
  102. package/frontend/dist/assets/cameligo-CjUqTgqL.js +0 -7
  103. package/frontend/dist/assets/clojure-BWsu6Kju.js +0 -7
  104. package/frontend/dist/assets/codicon-DCmgc-ay.ttf +0 -0
  105. package/frontend/dist/assets/coffee-DeC36AK3.js +0 -7
  106. package/frontend/dist/assets/cpp-DcZnmBWT.js +0 -7
  107. package/frontend/dist/assets/csharp-DqBXBMf0.js +0 -7
  108. package/frontend/dist/assets/csp-CkO7y8ul.js +0 -7
  109. package/frontend/dist/assets/css-OAcfVtED.js +0 -7
  110. package/frontend/dist/assets/cssMode-CicA3AgL.js +0 -7
  111. package/frontend/dist/assets/cypher-40UGrUjD.js +0 -7
  112. package/frontend/dist/assets/dart-DmixyLor.js +0 -7
  113. package/frontend/dist/assets/dockerfile-CayO4nTA.js +0 -7
  114. package/frontend/dist/assets/ecl-DRrKCuVc.js +0 -7
  115. package/frontend/dist/assets/editor-B5EY1bb8.css +0 -1
  116. package/frontend/dist/assets/editor.main-DKkZVnWw.js +0 -37
  117. package/frontend/dist/assets/elixir-J3qpp9mX.js +0 -7
  118. package/frontend/dist/assets/flow9-DzW2c4Im.js +0 -7
  119. package/frontend/dist/assets/freemarker2-BAiKgR7W.js +0 -7
  120. package/frontend/dist/assets/fsharp-D00tn_6c.js +0 -7
  121. package/frontend/dist/assets/go-NnNmgWK_.js +0 -7
  122. package/frontend/dist/assets/graphql-C9_--VLF.js +0 -7
  123. package/frontend/dist/assets/handlebars-C65m36HJ.js +0 -7
  124. package/frontend/dist/assets/hcl-BhbOULbp.js +0 -7
  125. package/frontend/dist/assets/html-CQKNdpNj.js +0 -7
  126. package/frontend/dist/assets/htmlMode-lb8O19um.js +0 -7
  127. package/frontend/dist/assets/index-BzylQAjm.js +0 -1
  128. package/frontend/dist/assets/index-CI8kSYwX.css +0 -1
  129. package/frontend/dist/assets/ini-zR-_X5iG.js +0 -7
  130. package/frontend/dist/assets/java-CSTjsyoZ.js +0 -7
  131. package/frontend/dist/assets/javascript-FWRasi5r.js +0 -7
  132. package/frontend/dist/assets/jsonMode-D8aGj5qS.js +0 -7
  133. package/frontend/dist/assets/julia-DioMOKVu.js +0 -7
  134. package/frontend/dist/assets/kotlin-Dsb0PKmW.js +0 -7
  135. package/frontend/dist/assets/less-CZYLoAVD.js +0 -7
  136. package/frontend/dist/assets/lexon-d5JUiwNk.js +0 -7
  137. package/frontend/dist/assets/liquid-Bu7MHLsF.js +0 -7
  138. package/frontend/dist/assets/lua-1Al72GG8.js +0 -7
  139. package/frontend/dist/assets/m3-hx1xCPC3.js +0 -7
  140. package/frontend/dist/assets/markdown-DPGrH1xZ.js +0 -7
  141. package/frontend/dist/assets/mdx-C9KjBxd9.js +0 -7
  142. package/frontend/dist/assets/mips-CYbZjkIm.js +0 -7
  143. package/frontend/dist/assets/msdax-DAioKM5A.js +0 -7
  144. package/frontend/dist/assets/mysql-7e9GUebS.js +0 -7
  145. package/frontend/dist/assets/objective-c-BGf8QNjz.js +0 -7
  146. package/frontend/dist/assets/pascal-hEDRz3un.js +0 -7
  147. package/frontend/dist/assets/pascaligo-gqEhN6pG.js +0 -7
  148. package/frontend/dist/assets/perl-CN8Ht9Vk.js +0 -7
  149. package/frontend/dist/assets/pgsql-CRCqHQBx.js +0 -7
  150. package/frontend/dist/assets/php-DTZrlAwe.js +0 -7
  151. package/frontend/dist/assets/pla-CRmh4UcC.js +0 -7
  152. package/frontend/dist/assets/postiats-Car2G7g8.js +0 -7
  153. package/frontend/dist/assets/powerquery-BJKl8V3o.js +0 -7
  154. package/frontend/dist/assets/powershell-Du7a_J7r.js +0 -7
  155. package/frontend/dist/assets/protobuf-ChneWI0H.js +0 -7
  156. package/frontend/dist/assets/pug-BH6LSJaf.js +0 -7
  157. package/frontend/dist/assets/python-DnHhXfg2.js +0 -7
  158. package/frontend/dist/assets/qsharp-CU-Hxpxi.js +0 -7
  159. package/frontend/dist/assets/r-Bw-W15zh.js +0 -7
  160. package/frontend/dist/assets/razor-D4OpMyGk.js +0 -7
  161. package/frontend/dist/assets/redis-bY-X9-ol.js +0 -7
  162. package/frontend/dist/assets/redshift-CMu3ubbS.js +0 -7
  163. package/frontend/dist/assets/restructuredtext-KNkiWGNN.js +0 -7
  164. package/frontend/dist/assets/ruby-dQWMhU86.js +0 -7
  165. package/frontend/dist/assets/rust-BAcHhnEU.js +0 -7
  166. package/frontend/dist/assets/sb-Bidr5w2z.js +0 -7
  167. package/frontend/dist/assets/scala-imTtxsGY.js +0 -7
  168. package/frontend/dist/assets/scheme-BY-WHKiB.js +0 -7
  169. package/frontend/dist/assets/scss-NDoRP52C.js +0 -7
  170. package/frontend/dist/assets/shell-DrIjotnh.js +0 -7
  171. package/frontend/dist/assets/solidity-DTahNycF.js +0 -7
  172. package/frontend/dist/assets/sophia-DtyrjGkZ.js +0 -7
  173. package/frontend/dist/assets/sparql-CFuS5E3z.js +0 -7
  174. package/frontend/dist/assets/sql-BRxcnbRv.js +0 -7
  175. package/frontend/dist/assets/st-Dz4uh7MK.js +0 -7
  176. package/frontend/dist/assets/swift-Digsrw1G.js +0 -11
  177. package/frontend/dist/assets/systemverilog-7TDrkMau.js +0 -7
  178. package/frontend/dist/assets/tcl-BtaFcnDi.js +0 -7
  179. package/frontend/dist/assets/tsMode-RIZqtAps.js +0 -7
  180. package/frontend/dist/assets/twig-Deid_oBs.js +0 -7
  181. package/frontend/dist/assets/typescript-DJeBIxGF.js +0 -7
  182. package/frontend/dist/assets/typespec-zUaxhbG8.js +0 -7
  183. package/frontend/dist/assets/vb-DK0rKJzo.js +0 -7
  184. package/frontend/dist/assets/wgsl-B8fNVlOQ.js +0 -7
  185. package/frontend/dist/assets/xml-DuazQqBz.js +0 -7
  186. package/frontend/dist/assets/yaml-DsG3CKlY.js +0 -7
@@ -1 +0,0 @@
1
- {"version":3,"file":"interpreter.js","sourceRoot":"","sources":["../src/interpreter.ts"],"names":[],"mappings":"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"}
@@ -1,88 +0,0 @@
1
- /**
2
- * train language lexer
3
- *
4
- * Token definitions for chevrotain. Covers Part 1-11 of grammar.ebnf.
5
- *
6
- * Implementation notes:
7
- * - Keywords use `longer_alt: Identifier` so that e.g. `int` is keyword but
8
- * `integer` is an identifier (chevrotain picks the longer match).
9
- * - String literals are currently a single token; ${...} interpolation
10
- * parsing is deferred to a later milestone (would require lexer modes).
11
- * - Whitespace and comments are SKIPPED (consumed but not emitted).
12
- */
13
- import { Lexer, type TokenType } from 'chevrotain';
14
- export declare const Whitespace: TokenType;
15
- export declare const LineComment: TokenType;
16
- export declare const BlockComment: TokenType;
17
- export declare const Identifier: TokenType;
18
- export declare const Import: TokenType;
19
- export declare const Export: TokenType;
20
- export declare const From: TokenType;
21
- export declare const As: TokenType;
22
- export declare const Const: TokenType;
23
- export declare const Var: TokenType;
24
- export declare const Let: TokenType;
25
- export declare const Func: TokenType;
26
- export declare const Fai: TokenType;
27
- export declare const Return: TokenType;
28
- export declare const If: TokenType;
29
- export declare const Else: TokenType;
30
- export declare const For: TokenType;
31
- export declare const In: TokenType;
32
- export declare const While: TokenType;
33
- export declare const Break: TokenType;
34
- export declare const Continue: TokenType;
35
- export declare const Try: TokenType;
36
- export declare const Catch: TokenType;
37
- export declare const True: TokenType;
38
- export declare const False: TokenType;
39
- export declare const Null: TokenType;
40
- export declare const KwEnum: TokenType;
41
- export declare const KwArray: TokenType;
42
- export declare const KwObject: TokenType;
43
- export declare const FloatLit: TokenType;
44
- export declare const IntLit: TokenType;
45
- export declare const StringLit: TokenType;
46
- export declare const Arrow: TokenType;
47
- export declare const FatArrow: TokenType;
48
- export declare const EqEq: TokenType;
49
- export declare const NotEq: TokenType;
50
- export declare const LtEq: TokenType;
51
- export declare const GtEq: TokenType;
52
- export declare const AndAnd: TokenType;
53
- export declare const OrOr: TokenType;
54
- export declare const PlusEq: TokenType;
55
- export declare const MinusEq: TokenType;
56
- export declare const StarEq: TokenType;
57
- export declare const SlashEq: TokenType;
58
- export declare const PercentEq: TokenType;
59
- export declare const Spread: TokenType;
60
- export declare const LCurly: TokenType;
61
- export declare const RCurly: TokenType;
62
- export declare const LParen: TokenType;
63
- export declare const RParen: TokenType;
64
- export declare const LBracket: TokenType;
65
- export declare const RBracket: TokenType;
66
- export declare const LAngle: TokenType;
67
- export declare const RAngle: TokenType;
68
- export declare const Comma: TokenType;
69
- export declare const Colon: TokenType;
70
- export declare const Semicolon: TokenType;
71
- export declare const Dot: TokenType;
72
- export declare const Question: TokenType;
73
- export declare const AtName: TokenType;
74
- export declare const Plus: TokenType;
75
- export declare const Dash: TokenType;
76
- export declare const Star: TokenType;
77
- export declare const Slash: TokenType;
78
- export declare const Percent: TokenType;
79
- export declare const Bang: TokenType;
80
- export declare const Pipe: TokenType;
81
- export declare const Equals: TokenType;
82
- export declare const allTokens: TokenType[];
83
- export declare const trainLexer: Lexer;
84
- /**
85
- * Tokenize source text. Throws on lexer errors.
86
- */
87
- export declare function tokenize(source: string): import("chevrotain").ILexingResult;
88
- //# sourceMappingURL=lexer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lexer.d.ts","sourceRoot":"","sources":["../src/lexer.ts"],"names":[],"mappings":"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"}
@@ -1,243 +0,0 @@
1
- /**
2
- * train language lexer
3
- *
4
- * Token definitions for chevrotain. Covers Part 1-11 of grammar.ebnf.
5
- *
6
- * Implementation notes:
7
- * - Keywords use `longer_alt: Identifier` so that e.g. `int` is keyword but
8
- * `integer` is an identifier (chevrotain picks the longer match).
9
- * - String literals are currently a single token; ${...} interpolation
10
- * parsing is deferred to a later milestone (would require lexer modes).
11
- * - Whitespace and comments are SKIPPED (consumed but not emitted).
12
- */
13
- import { createToken, Lexer } from 'chevrotain';
14
- // ─── Whitespace / comments (skipped) ─────────────────────────────────────
15
- export const Whitespace = createToken({
16
- name: 'Whitespace',
17
- pattern: /[ \t\r\n]+/,
18
- group: Lexer.SKIPPED,
19
- });
20
- export const LineComment = createToken({
21
- name: 'LineComment',
22
- pattern: /\/\/[^\n]*/,
23
- group: Lexer.SKIPPED,
24
- });
25
- export const BlockComment = createToken({
26
- name: 'BlockComment',
27
- pattern: /\/\*[\s\S]*?\*\//,
28
- group: Lexer.SKIPPED,
29
- });
30
- // ─── Identifier (referenced as longer_alt by all keywords) ────────────────
31
- export const Identifier = createToken({
32
- name: 'Identifier',
33
- pattern: /[A-Za-z_][A-Za-z0-9_]*/,
34
- });
35
- // Helper for keyword tokens
36
- const kw = (name, literal) => createToken({
37
- name,
38
- pattern: new RegExp(literal.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')),
39
- longer_alt: Identifier,
40
- });
41
- // ─── Keywords: module ────────────────────────────────────────────────────
42
- export const Import = kw('Import', 'import');
43
- export const Export = kw('Export', 'export');
44
- export const From = kw('From', 'from');
45
- export const As = kw('As', 'as');
46
- // ─── Keywords: binding ───────────────────────────────────────────────────
47
- export const Const = kw('Const', 'const');
48
- export const Var = kw('Var', 'var');
49
- export const Let = kw('Let', 'let');
50
- // ─── Keywords: function ──────────────────────────────────────────────────
51
- export const Func = kw('Func', 'func');
52
- export const Fai = kw('Fai', 'fai');
53
- export const Return = kw('Return', 'return');
54
- // ─── Keywords: control flow ──────────────────────────────────────────────
55
- export const If = kw('If', 'if');
56
- export const Else = kw('Else', 'else');
57
- export const For = kw('For', 'for');
58
- export const In = kw('In', 'in');
59
- export const While = kw('While', 'while');
60
- export const Break = kw('Break', 'break');
61
- export const Continue = kw('Continue', 'continue');
62
- export const Try = kw('Try', 'try');
63
- export const Catch = kw('Catch', 'catch');
64
- // ─── Keywords: literals ──────────────────────────────────────────────────
65
- export const True = kw('True', 'true');
66
- export const False = kw('False', 'false');
67
- export const Null = kw('Null', 'null');
68
- // ─── Keywords: types (STRUCTURAL constructors only) ──────────────────────
69
- //
70
- // IMPORTANT design decision:
71
- // Leaf type names (int / float / bool / string / prompt / any) are NOT
72
- // keywords — they are reserved identifiers, recognized at the type-checker
73
- // layer rather than the lexer. This is necessary because users WILL want
74
- // identifiers named `prompt` (e.g. `fai f(prompt: prompt)`) and reserving
75
- // the name would make the canonical syntax illegal.
76
- //
77
- // STRUCTURAL constructors (enum / array / object) remain keywords because
78
- // they begin distinctive grammar shapes (`array<...>`, `enum: ...`,
79
- // `object{ ... }`) that need lexer-level disambiguation.
80
- export const KwEnum = kw('KwEnum', 'enum');
81
- export const KwArray = kw('KwArray', 'array');
82
- export const KwObject = kw('KwObject', 'object');
83
- // ─── Literals ────────────────────────────────────────────────────────────
84
- // Order matters: FloatLit MUST come before IntLit (more specific wins by length)
85
- export const FloatLit = createToken({
86
- name: 'FloatLit',
87
- pattern: /[0-9]+\.[0-9]+/,
88
- });
89
- export const IntLit = createToken({
90
- name: 'IntLit',
91
- pattern: /[0-9]+/,
92
- });
93
- // Double-quoted string. Single-quote support planned for non-interpolated form.
94
- // ${...} interpolation will require lexer modes (deferred).
95
- export const StringLit = createToken({
96
- name: 'StringLit',
97
- pattern: /"(?:[^"\\]|\\.)*"/,
98
- });
99
- // ─── Operators / Punctuation ─────────────────────────────────────────────
100
- // Multi-char operators MUST come before single-char prefixes they share
101
- export const Arrow = createToken({ name: 'Arrow', pattern: /->/ });
102
- export const FatArrow = createToken({ name: 'FatArrow', pattern: /=>/ });
103
- export const EqEq = createToken({ name: 'EqEq', pattern: /==/ });
104
- export const NotEq = createToken({ name: 'NotEq', pattern: /!=/ });
105
- export const LtEq = createToken({ name: 'LtEq', pattern: /<=/ });
106
- export const GtEq = createToken({ name: 'GtEq', pattern: />=/ });
107
- export const AndAnd = createToken({ name: 'AndAnd', pattern: /&&/ });
108
- export const OrOr = createToken({ name: 'OrOr', pattern: /\|\|/ });
109
- export const PlusEq = createToken({ name: 'PlusEq', pattern: /\+=/ });
110
- export const MinusEq = createToken({ name: 'MinusEq', pattern: /-=/ });
111
- export const StarEq = createToken({ name: 'StarEq', pattern: /\*=/ });
112
- export const SlashEq = createToken({ name: 'SlashEq', pattern: /\/=/ });
113
- export const PercentEq = createToken({ name: 'PercentEq', pattern: /%=/ });
114
- export const Spread = createToken({ name: 'Spread', pattern: /\.\.\./ });
115
- // Single-char punctuation / operators
116
- export const LCurly = createToken({ name: 'LCurly', pattern: /\{/ });
117
- export const RCurly = createToken({ name: 'RCurly', pattern: /\}/ });
118
- export const LParen = createToken({ name: 'LParen', pattern: /\(/ });
119
- export const RParen = createToken({ name: 'RParen', pattern: /\)/ });
120
- export const LBracket = createToken({ name: 'LBracket', pattern: /\[/ });
121
- export const RBracket = createToken({ name: 'RBracket', pattern: /\]/ });
122
- export const LAngle = createToken({ name: 'LAngle', pattern: /</ });
123
- export const RAngle = createToken({ name: 'RAngle', pattern: />/ });
124
- export const Comma = createToken({ name: 'Comma', pattern: /,/ });
125
- export const Colon = createToken({ name: 'Colon', pattern: /:/ });
126
- export const Semicolon = createToken({ name: 'Semicolon', pattern: /;/ });
127
- export const Dot = createToken({ name: 'Dot', pattern: /\./ });
128
- export const Question = createToken({ name: 'Question', pattern: /\?/ });
129
- // AtName covers both annotations (@runtime, @cache, …) and import version
130
- // tags (@abc1234, @v1.0.0, @latest). The parser disambiguates by position.
131
- // Pattern accepts letters/digits/_/./- in the trailing chunk so semver and
132
- // hashes both fit. No-space rule (e.g. `@runtime` vs `@ runtime`) is
133
- // enforced lexically by the single-token boundary.
134
- export const AtName = createToken({
135
- name: 'AtName',
136
- pattern: /@[A-Za-z_][A-Za-z0-9_.\-]*/,
137
- });
138
- export const Plus = createToken({ name: 'Plus', pattern: /\+/ });
139
- export const Dash = createToken({ name: 'Dash', pattern: /-/ });
140
- export const Star = createToken({ name: 'Star', pattern: /\*/ });
141
- export const Slash = createToken({ name: 'Slash', pattern: /\// });
142
- export const Percent = createToken({ name: 'Percent', pattern: /%/ });
143
- export const Bang = createToken({ name: 'Bang', pattern: /!/ });
144
- export const Pipe = createToken({ name: 'Pipe', pattern: /\|/ });
145
- export const Equals = createToken({ name: 'Equals', pattern: /=/ });
146
- // ─── Token order matters: longer / more specific first ────────────────────
147
- export const allTokens = [
148
- // Skipped first so lexer drops them fast
149
- Whitespace,
150
- LineComment,
151
- BlockComment,
152
- // Multi-char operators BEFORE their single-char prefixes
153
- Arrow,
154
- FatArrow,
155
- EqEq,
156
- NotEq,
157
- LtEq,
158
- GtEq,
159
- AndAnd,
160
- OrOr,
161
- PlusEq,
162
- MinusEq,
163
- StarEq,
164
- SlashEq,
165
- PercentEq,
166
- Spread,
167
- // Keywords BEFORE Identifier (each declares longer_alt: Identifier).
168
- // Order constraint: when one keyword is a prefix of another (e.g. `in` vs `int`),
169
- // the LONGER one MUST come first, otherwise chevrotain's static analysis
170
- // flags the longer one as unreachable.
171
- Import,
172
- Export,
173
- From,
174
- As,
175
- Const,
176
- Var,
177
- Let,
178
- Func,
179
- Fai,
180
- Return,
181
- If,
182
- Else,
183
- For,
184
- While,
185
- Break,
186
- Continue,
187
- Try,
188
- Catch,
189
- True,
190
- False,
191
- Null,
192
- // Structural type constructors
193
- KwEnum,
194
- KwArray,
195
- KwObject,
196
- // Control-flow `in` (other `i*` keywords are not prefixes that collide)
197
- In,
198
- // Literals (FloatLit before IntLit)
199
- FloatLit,
200
- IntLit,
201
- StringLit,
202
- // Identifier last (so keywords win first)
203
- Identifier,
204
- // Single-char punctuation
205
- LCurly,
206
- RCurly,
207
- LParen,
208
- RParen,
209
- LBracket,
210
- RBracket,
211
- LAngle,
212
- RAngle,
213
- Comma,
214
- Colon,
215
- Semicolon,
216
- Dot,
217
- Question,
218
- AtName,
219
- Plus,
220
- Dash,
221
- Star,
222
- Slash,
223
- Percent,
224
- Bang,
225
- Pipe,
226
- Equals,
227
- ];
228
- export const trainLexer = new Lexer(allTokens, {
229
- positionTracking: 'full',
230
- ensureOptimizations: false,
231
- });
232
- /**
233
- * Tokenize source text. Throws on lexer errors.
234
- */
235
- export function tokenize(source) {
236
- const result = trainLexer.tokenize(source);
237
- if (result.errors.length > 0) {
238
- const messages = result.errors.map((e) => `[${e.line}:${e.column}] ${e.message}`);
239
- throw new Error(`Lexer errors:\n${messages.join('\n')}`);
240
- }
241
- return result;
242
- }
243
- //# sourceMappingURL=lexer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lexer.js","sourceRoot":"","sources":["../src/lexer.ts"],"names":[],"mappings":"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"}
@@ -1,74 +0,0 @@
1
- /**
2
- * Module loader (M5).
3
- *
4
- * Resolves `import { x } from "./y"` against the filesystem, parses
5
- * each imported file, executes its top-level once, and exposes its
6
- * `export`-ed names back to the importing module.
7
- *
8
- * Properties:
9
- * - relative paths only in M5 (`./y`, `../y`, with implicit `.tr`)
10
- * - module cache: same absolute path executes top-level exactly once
11
- * - circular import detection (E0501): tracked via a re-entry set
12
- * - shared adapter + builtins: child modules use the same adapter
13
- * instance as the importer (no ask-user / cancellation re-plumbing)
14
- *
15
- * Not yet supported (deferred to later milestones):
16
- * - namespace imports (`import * as m from "..."`)
17
- * - version tags (`@v1.0.0` on import) — parsed but ignored
18
- * - absolute / package imports (`@scope/name`)
19
- * - workflow_data isolation per submodule (uses host stateDir)
20
- */
21
- import type * as ast from './ast.js';
22
- import { type RuntimeContext, type Value } from './runtime.js';
23
- export interface ModuleInstance {
24
- /** Absolute path of the module source file. */
25
- absPath: string;
26
- /** Map of exported (external) name → runtime value. */
27
- exports: Map<string, Value>;
28
- /** The RuntimeContext built during this module's top-level execution. */
29
- ctx: RuntimeContext;
30
- }
31
- export interface ModuleLoaderHooks {
32
- /** Resolve a `from "..."` spec against an importer's abs path. */
33
- resolve?(spec: string, importerAbs: string): string;
34
- /** Read source for an abs path. Default: fs.readFile utf8. */
35
- read?(absPath: string): Promise<string>;
36
- }
37
- /**
38
- * Build a fresh ModuleRegistry for a single `train run`. The registry
39
- * lives for one runProgram call; subsequent runs start fresh.
40
- */
41
- export interface ModuleRegistry {
42
- /** Load (or hit cache for) a module at the given absolute path. */
43
- load(absPath: string, importerStack: string[]): Promise<ModuleInstance>;
44
- /** Resolve `spec` relative to `importerAbs` to an absolute path. */
45
- resolve(spec: string, importerAbs: string): string;
46
- /** Register a module instance (used after host has executed top level). */
47
- set(absPath: string, instance: ModuleInstance): void;
48
- /** Read a not-yet-cached source file. */
49
- read(absPath: string): Promise<string>;
50
- /** True if path is currently being loaded (re-entry → cycle). */
51
- isInProgress(absPath: string): boolean;
52
- markInProgress(absPath: string): void;
53
- unmarkInProgress(absPath: string): void;
54
- hasCached(absPath: string): boolean;
55
- getCached(absPath: string): ModuleInstance | undefined;
56
- }
57
- export declare function createModuleRegistry(hooks?: ModuleLoaderHooks): ModuleRegistry;
58
- /**
59
- * Apply an Import declaration's specs to the importing module's
60
- * RuntimeContext, given the loaded child module instance.
61
- *
62
- * In M5 we inject imported symbols into the importer's
63
- * `constants` (for const exports), `globals` (for var exports), or
64
- * `functions` (for func / fai exports). The interpreter's identifier
65
- * lookup already consults these three maps in lexical order, so an
66
- * imported `foo` is visible just like a top-level `foo`.
67
- *
68
- * Throws ImportSymbolMissing if the import names a symbol the module
69
- * does not export.
70
- */
71
- export declare function applyImport(imp: ast.Import, child: ModuleInstance, importerCtx: RuntimeContext): void;
72
- /** Build the export map for a module from its executed RuntimeContext. */
73
- export declare function collectExports(ctx: RuntimeContext): Map<string, Value>;
74
- //# sourceMappingURL=module-loader.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"module-loader.d.ts","sourceRoot":"","sources":["../src/module-loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAIH,OAAO,KAAK,KAAK,GAAG,MAAM,UAAU,CAAA;AACpC,OAAO,EAGL,KAAK,cAAc,EACnB,KAAK,KAAK,EAGX,MAAM,cAAc,CAAA;AAErB,MAAM,WAAW,cAAc;IAC7B,+CAA+C;IAC/C,OAAO,EAAE,MAAM,CAAA;IACf,uDAAuD;IACvD,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;IAC3B,yEAAyE;IACzE,GAAG,EAAE,cAAc,CAAA;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC,kEAAkE;IAClE,OAAO,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAAA;IACnD,8DAA8D;IAC9D,IAAI,CAAC,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;CACxC;AAgCD;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,mEAAmE;IACnE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC,CAAA;IACvE,oEAAoE;IACpE,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAAA;IAClD,2EAA2E;IAC3E,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,GAAG,IAAI,CAAA;IACpD,yCAAyC;IACzC,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IACtC,iEAAiE;IACjE,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAA;IACtC,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IACrC,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IACvC,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAA;IACnC,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAAA;CACvD;AAED,wBAAgB,oBAAoB,CAClC,KAAK,GAAE,iBAAsB,GAC5B,cAAc,CA6ChB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,WAAW,CACzB,GAAG,EAAE,GAAG,CAAC,MAAM,EACf,KAAK,EAAE,cAAc,EACrB,WAAW,EAAE,cAAc,GAC1B,IAAI,CA8CN;AAED,0EAA0E;AAC1E,wBAAgB,cAAc,CAAC,GAAG,EAAE,cAAc,GAAG,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAmBtE"}