@aster-cloud/aster-lang-ts 0.0.28 → 0.0.30

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 (172) hide show
  1. package/dist/peg/headers-parser.js +459 -233
  2. package/dist/scripts/aster.js +0 -0
  3. package/dist/scripts/emit-core.js +0 -0
  4. package/dist/scripts/generate-lexicons.d.ts +13 -0
  5. package/dist/scripts/generate-lexicons.d.ts.map +1 -0
  6. package/dist/scripts/generate-lexicons.js +152 -0
  7. package/dist/scripts/generate-lexicons.js.map +1 -0
  8. package/dist/scripts/generate-vocabularies.d.ts +13 -0
  9. package/dist/scripts/generate-vocabularies.d.ts.map +1 -0
  10. package/dist/scripts/generate-vocabularies.js +205 -0
  11. package/dist/scripts/generate-vocabularies.js.map +1 -0
  12. package/dist/scripts/golden.js +4 -4
  13. package/dist/scripts/golden.js.map +1 -1
  14. package/dist/scripts/perf-assert.js +2 -2
  15. package/dist/scripts/perf-assert.js.map +1 -1
  16. package/dist/scripts/perf-lsp.js +2 -2
  17. package/dist/scripts/perf-lsp.js.map +1 -1
  18. package/dist/scripts/scaffold.js +4 -4
  19. package/dist/scripts/verify-lexicon-sync.d.ts +14 -0
  20. package/dist/scripts/verify-lexicon-sync.d.ts.map +1 -0
  21. package/dist/scripts/verify-lexicon-sync.js +248 -0
  22. package/dist/scripts/verify-lexicon-sync.js.map +1 -0
  23. package/dist/src/browser.d.ts +2 -0
  24. package/dist/src/browser.d.ts.map +1 -1
  25. package/dist/src/browser.js +14 -3
  26. package/dist/src/browser.js.map +1 -1
  27. package/dist/src/cli/policy-converter.js +0 -0
  28. package/dist/src/config/lexicons/de-DE.d.ts +0 -9
  29. package/dist/src/config/lexicons/de-DE.d.ts.map +1 -1
  30. package/dist/src/config/lexicons/de-DE.js +27 -53
  31. package/dist/src/config/lexicons/de-DE.js.map +1 -1
  32. package/dist/src/config/lexicons/en-US.d.ts +0 -12
  33. package/dist/src/config/lexicons/en-US.d.ts.map +1 -1
  34. package/dist/src/config/lexicons/en-US.js +27 -50
  35. package/dist/src/config/lexicons/en-US.js.map +1 -1
  36. package/dist/src/config/lexicons/identifiers/domains/finance.loan.de-DE.d.ts +3 -0
  37. package/dist/src/config/lexicons/identifiers/domains/finance.loan.de-DE.d.ts.map +1 -0
  38. package/dist/src/config/lexicons/identifiers/domains/finance.loan.de-DE.js +310 -0
  39. package/dist/src/config/lexicons/identifiers/domains/finance.loan.de-DE.js.map +1 -0
  40. package/dist/src/config/lexicons/identifiers/domains/finance.loan.en-US.d.ts +3 -0
  41. package/dist/src/config/lexicons/identifiers/domains/finance.loan.en-US.d.ts.map +1 -0
  42. package/dist/src/config/lexicons/identifiers/domains/finance.loan.en-US.js +291 -0
  43. package/dist/src/config/lexicons/identifiers/domains/finance.loan.en-US.js.map +1 -0
  44. package/dist/src/config/lexicons/identifiers/domains/finance.loan.zh-CN.d.ts +1 -11
  45. package/dist/src/config/lexicons/identifiers/domains/finance.loan.zh-CN.d.ts.map +1 -1
  46. package/dist/src/config/lexicons/identifiers/domains/finance.loan.zh-CN.js +47 -33
  47. package/dist/src/config/lexicons/identifiers/domains/finance.loan.zh-CN.js.map +1 -1
  48. package/dist/src/config/lexicons/identifiers/domains/index.d.ts +7 -0
  49. package/dist/src/config/lexicons/identifiers/domains/index.d.ts.map +1 -0
  50. package/dist/src/config/lexicons/identifiers/domains/index.js +8 -0
  51. package/dist/src/config/lexicons/identifiers/domains/index.js.map +1 -0
  52. package/dist/src/config/lexicons/identifiers/domains/insurance.auto.de-DE.d.ts +3 -0
  53. package/dist/src/config/lexicons/identifiers/domains/insurance.auto.de-DE.d.ts.map +1 -0
  54. package/dist/src/config/lexicons/identifiers/domains/insurance.auto.de-DE.js +275 -0
  55. package/dist/src/config/lexicons/identifiers/domains/insurance.auto.de-DE.js.map +1 -0
  56. package/dist/src/config/lexicons/identifiers/domains/insurance.auto.en-US.d.ts +3 -0
  57. package/dist/src/config/lexicons/identifiers/domains/insurance.auto.en-US.d.ts.map +1 -0
  58. package/dist/src/config/lexicons/identifiers/domains/insurance.auto.en-US.js +261 -0
  59. package/dist/src/config/lexicons/identifiers/domains/insurance.auto.en-US.js.map +1 -0
  60. package/dist/src/config/lexicons/identifiers/domains/insurance.auto.zh-CN.d.ts +1 -23
  61. package/dist/src/config/lexicons/identifiers/domains/insurance.auto.zh-CN.d.ts.map +1 -1
  62. package/dist/src/config/lexicons/identifiers/domains/insurance.auto.zh-CN.js +81 -155
  63. package/dist/src/config/lexicons/identifiers/domains/insurance.auto.zh-CN.js.map +1 -1
  64. package/dist/src/config/lexicons/identifiers/examples/canonicalizer-integration.js +8 -8
  65. package/dist/src/config/lexicons/identifiers/examples/canonicalizer-integration.js.map +1 -1
  66. package/dist/src/config/lexicons/identifiers/index.d.ts +1 -2
  67. package/dist/src/config/lexicons/identifiers/index.d.ts.map +1 -1
  68. package/dist/src/config/lexicons/identifiers/index.js +2 -3
  69. package/dist/src/config/lexicons/identifiers/index.js.map +1 -1
  70. package/dist/src/config/lexicons/identifiers/registry.d.ts +2 -2
  71. package/dist/src/config/lexicons/identifiers/registry.d.ts.map +1 -1
  72. package/dist/src/config/lexicons/identifiers/registry.js +16 -3
  73. package/dist/src/config/lexicons/identifiers/registry.js.map +1 -1
  74. package/dist/src/config/lexicons/template.d.ts.map +1 -1
  75. package/dist/src/config/lexicons/template.js +18 -8
  76. package/dist/src/config/lexicons/template.js.map +1 -1
  77. package/dist/src/config/lexicons/types.d.ts +1 -1
  78. package/dist/src/config/lexicons/types.d.ts.map +1 -1
  79. package/dist/src/config/lexicons/zh-CN.d.ts +0 -18
  80. package/dist/src/config/lexicons/zh-CN.d.ts.map +1 -1
  81. package/dist/src/config/lexicons/zh-CN.js +26 -61
  82. package/dist/src/config/lexicons/zh-CN.js.map +1 -1
  83. package/dist/src/config/semantic.d.ts +9 -4
  84. package/dist/src/config/semantic.d.ts.map +1 -1
  85. package/dist/src/config/semantic.js +16 -5
  86. package/dist/src/config/semantic.js.map +1 -1
  87. package/dist/src/config/token-kind.d.ts +17 -5
  88. package/dist/src/config/token-kind.d.ts.map +1 -1
  89. package/dist/src/config/token-kind.js +23 -7
  90. package/dist/src/config/token-kind.js.map +1 -1
  91. package/dist/src/frontend/canonicalizer.d.ts +20 -2
  92. package/dist/src/frontend/canonicalizer.d.ts.map +1 -1
  93. package/dist/src/frontend/canonicalizer.js +58 -2
  94. package/dist/src/frontend/canonicalizer.js.map +1 -1
  95. package/dist/src/frontend/index.d.ts +1 -0
  96. package/dist/src/frontend/index.d.ts.map +1 -1
  97. package/dist/src/frontend/index.js.map +1 -1
  98. package/dist/src/frontend/keyword-translator.d.ts.map +1 -1
  99. package/dist/src/frontend/keyword-translator.js +51 -15
  100. package/dist/src/frontend/keyword-translator.js.map +1 -1
  101. package/dist/src/lsp/codeaction.js +9 -9
  102. package/dist/src/lsp/codeaction.js.map +1 -1
  103. package/dist/src/lsp/completion.js +2 -2
  104. package/dist/src/lsp/completion.js.map +1 -1
  105. package/dist/src/lsp/module_cache.js +2 -2
  106. package/dist/src/lsp/module_cache.js.map +1 -1
  107. package/dist/src/lsp/server.js +0 -0
  108. package/dist/src/lsp/symbols.js +2 -2
  109. package/dist/src/lsp/symbols.js.map +1 -1
  110. package/dist/src/parser/decl-parser.d.ts +2 -2
  111. package/dist/src/parser/decl-parser.js +12 -12
  112. package/dist/src/parser/decl-parser.js.map +1 -1
  113. package/dist/src/parser/expr-stmt-parser.js +2 -2
  114. package/dist/src/parser/expr-stmt-parser.js.map +1 -1
  115. package/dist/src/parser.d.ts +1 -1
  116. package/dist/src/parser.js +1 -1
  117. package/dist/test/compiler/depends-on.test.js +2 -2
  118. package/dist/test/compiler/depends-on.test.js.map +1 -1
  119. package/dist/test/compiler/workflow-emitter-helpers.js +2 -2
  120. package/dist/test/compiler/workflow-emitter-helpers.js.map +1 -1
  121. package/dist/test/generators.js +18 -18
  122. package/dist/test/generators.js.map +1 -1
  123. package/dist/test/integration/lsp/lsp-completion.test.js +13 -13
  124. package/dist/test/integration/lsp/lsp-completion.test.js.map +1 -1
  125. package/dist/test/integration/lsp/lsp-diagnostics.test.js +7 -7
  126. package/dist/test/integration/lsp/lsp-diagnostics.test.js.map +1 -1
  127. package/dist/test/integration/lsp/lsp-file-watcher.test.js +8 -8
  128. package/dist/test/integration/lsp/lsp-file-watcher.test.js.map +1 -1
  129. package/dist/test/integration/lsp/lsp-modules.test.js +6 -6
  130. package/dist/test/integration/lsp/lsp-multi-rename.test.js +1 -1
  131. package/dist/test/integration/lsp/lsp-multi-rename.test.js.map +1 -1
  132. package/dist/test/integration/lsp/lsp-navigation.test.js +21 -21
  133. package/dist/test/integration/lsp/lsp-navigation.test.js.map +1 -1
  134. package/dist/test/integration/pipeline/pipeline.test.js +38 -38
  135. package/dist/test/integration/pipeline/pipeline.test.js.map +1 -1
  136. package/dist/test/property/lsp-props.test.js +2 -2
  137. package/dist/test/property/lsp-props.test.js.map +1 -1
  138. package/dist/test/property/property.test.js +25 -25
  139. package/dist/test/property/property.test.js.map +1 -1
  140. package/dist/test/type-checker/cross-module-packages.test.js +2 -1
  141. package/dist/test/type-checker/cross-module-packages.test.js.map +1 -1
  142. package/dist/test/unit/async/async-discipline.test.js +81 -81
  143. package/dist/test/unit/async/async-schedule.test.js +23 -23
  144. package/dist/test/unit/canonicalizer/canonicalizer.test.js +19 -13
  145. package/dist/test/unit/canonicalizer/canonicalizer.test.js.map +1 -1
  146. package/dist/test/unit/config/lexicons/zh-CN.test.js +44 -71
  147. package/dist/test/unit/config/lexicons/zh-CN.test.js.map +1 -1
  148. package/dist/test/unit/generator.test.js +3 -3
  149. package/dist/test/unit/generator.test.js.map +1 -1
  150. package/dist/test/unit/keyword-translator.test.js +55 -56
  151. package/dist/test/unit/keyword-translator.test.js.map +1 -1
  152. package/dist/test/unit/lexer/lexer.test.js +5 -5
  153. package/dist/test/unit/lexer/lexer.test.js.map +1 -1
  154. package/dist/test/unit/lowering/lowering.test.js +13 -13
  155. package/dist/test/unit/lsp/codeaction.test.js +9 -9
  156. package/dist/test/unit/lsp/codeaction.test.js.map +1 -1
  157. package/dist/test/unit/lsp/symbols.test.js +2 -2
  158. package/dist/test/unit/lsp/symbols.test.js.map +1 -1
  159. package/dist/test/unit/module-cache-packages.test.js +4 -4
  160. package/dist/test/unit/module-cache-packages.test.js.map +1 -1
  161. package/dist/test/unit/parser/parser.test.js +137 -137
  162. package/dist/test/unit/parser/parser.test.js.map +1 -1
  163. package/dist/test/unit/provenance-integration.test.js +16 -16
  164. package/dist/test/unit/provenance.test.js +5 -5
  165. package/dist/test/unit/provenance.test.js.map +1 -1
  166. package/dist/test/unit/typecheck/async-discipline-extended.test.js +4 -4
  167. package/dist/test/unit/typecheck/effects-and-capabilities.test.js +18 -18
  168. package/dist/test/unit/typecheck/type-inference.test.js +23 -23
  169. package/dist/test/unit/typecheck/typecheck-advanced.test.js +10 -10
  170. package/dist/test/unit/validator.test.js +14 -14
  171. package/dist/test/unit/validator.test.js.map +1 -1
  172. package/package.json +57 -39
@@ -20,20 +20,24 @@
20
20
  * 每个枚举值对应一个抽象语义概念,由各语言的 Lexicon 映射到具体关键词。
21
21
  */
22
22
  export declare enum SemanticTokenKind {
23
- /** 模块声明 - "this module is" / "【模块】" */
23
+ /** 模块声明 - "Module" / "模块" */
24
24
  MODULE_DECL = "MODULE_DECL",
25
25
  /** 导入声明 - "use" / "引用" */
26
26
  IMPORT = "IMPORT",
27
27
  /** 导入别名 - "as" / "作为" */
28
28
  IMPORT_ALIAS = "IMPORT_ALIAS",
29
- /** 类型定义 - "define" / "【定义】" */
29
+ /** 类型定义 - "define" / "定义" */
30
30
  TYPE_DEF = "TYPE_DEF",
31
31
  /** 类型字段 - "with" / "包含" */
32
32
  TYPE_WITH = "TYPE_WITH",
33
+ /** 类型字段 - "has" / "包含" */
34
+ TYPE_HAS = "TYPE_HAS",
33
35
  /** 枚举类型 - "as one of" / "为以下之一" */
34
36
  TYPE_ONE_OF = "TYPE_ONE_OF",
35
- /** 函数入参 - "to" / "入参" */
37
+ /** 函数声明(新语法) - "Rule" / "规则" */
36
38
  FUNC_TO = "FUNC_TO",
39
+ /** 函数参数(新语法) - "given" / "给定" */
40
+ FUNC_GIVEN = "FUNC_GIVEN",
37
41
  /** 函数产出 - "produce" / "产出" */
38
42
  FUNC_PRODUCE = "FUNC_PRODUCE",
39
43
  /** 函数效果声明 - "it performs" / "执行" */
@@ -48,6 +52,8 @@ export declare enum SemanticTokenKind {
48
52
  WHEN = "WHEN",
49
53
  /** 返回语句 - "return" / "返回" */
50
54
  RETURN = "RETURN",
55
+ /** 结果表达式 - "the result is" / "结果为" */
56
+ RESULT_IS = "RESULT_IS",
51
57
  /** 循环遍历 - "for each" / "对每个" */
52
58
  FOR_EACH = "FOR_EACH",
53
59
  /** 集合成员 - "in" / "在" */
@@ -82,6 +88,12 @@ export declare enum SemanticTokenKind {
82
88
  EQUALS_TO = "EQUALS_TO",
83
89
  /** 判断 - "is" / "是" */
84
90
  IS = "IS",
91
+ /** 低于(比较同义词) - "under" / "不足" */
92
+ UNDER = "UNDER",
93
+ /** 超过(比较同义词) - "over" / "超过" */
94
+ OVER = "OVER",
95
+ /** 多于(比较同义词) - "more than" / "多于" */
96
+ MORE_THAN = "MORE_THAN",
85
97
  /** 可选类型 - "maybe" / "可选" */
86
98
  MAYBE = "MAYBE",
87
99
  /** Option 类型 - "option of" */
@@ -114,9 +126,9 @@ export declare enum SemanticTokenKind {
114
126
  IO = "IO",
115
127
  /** CPU 效果 - "cpu" / "计算" */
116
128
  CPU = "CPU",
117
- /** 工作流定义 - "workflow" / "【流程】" */
129
+ /** 工作流定义 - "workflow" / "流程" */
118
130
  WORKFLOW = "WORKFLOW",
119
- /** 步骤定义 - "step" / "【步骤】" */
131
+ /** 步骤定义 - "step" / "步骤" */
120
132
  STEP = "STEP",
121
133
  /** 依赖声明 - "depends" / "依赖" */
122
134
  DEPENDS = "DEPENDS",
@@ -1 +1 @@
1
- {"version":3,"file":"token-kind.d.ts","sourceRoot":"","sources":["../../../src/config/token-kind.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"token-kind.d.ts","sourceRoot":"","sources":["../../../src/config/token-kind.ts"],"names":[],"mappings":"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"}
@@ -24,7 +24,7 @@ export var SemanticTokenKind;
24
24
  // ============================================================
25
25
  // 模块声明
26
26
  // ============================================================
27
- /** 模块声明 - "this module is" / "【模块】" */
27
+ /** 模块声明 - "Module" / "模块" */
28
28
  SemanticTokenKind["MODULE_DECL"] = "MODULE_DECL";
29
29
  /** 导入声明 - "use" / "引用" */
30
30
  SemanticTokenKind["IMPORT"] = "IMPORT";
@@ -33,17 +33,21 @@ export var SemanticTokenKind;
33
33
  // ============================================================
34
34
  // 类型定义
35
35
  // ============================================================
36
- /** 类型定义 - "define" / "【定义】" */
36
+ /** 类型定义 - "define" / "定义" */
37
37
  SemanticTokenKind["TYPE_DEF"] = "TYPE_DEF";
38
38
  /** 类型字段 - "with" / "包含" */
39
39
  SemanticTokenKind["TYPE_WITH"] = "TYPE_WITH";
40
+ /** 类型字段 - "has" / "包含" */
41
+ SemanticTokenKind["TYPE_HAS"] = "TYPE_HAS";
40
42
  /** 枚举类型 - "as one of" / "为以下之一" */
41
43
  SemanticTokenKind["TYPE_ONE_OF"] = "TYPE_ONE_OF";
42
44
  // ============================================================
43
45
  // 函数定义
44
46
  // ============================================================
45
- /** 函数入参 - "to" / "入参" */
47
+ /** 函数声明(新语法) - "Rule" / "规则" */
46
48
  SemanticTokenKind["FUNC_TO"] = "FUNC_TO";
49
+ /** 函数参数(新语法) - "given" / "给定" */
50
+ SemanticTokenKind["FUNC_GIVEN"] = "FUNC_GIVEN";
47
51
  /** 函数产出 - "produce" / "产出" */
48
52
  SemanticTokenKind["FUNC_PRODUCE"] = "FUNC_PRODUCE";
49
53
  /** 函数效果声明 - "it performs" / "执行" */
@@ -61,6 +65,8 @@ export var SemanticTokenKind;
61
65
  SemanticTokenKind["WHEN"] = "WHEN";
62
66
  /** 返回语句 - "return" / "返回" */
63
67
  SemanticTokenKind["RETURN"] = "RETURN";
68
+ /** 结果表达式 - "the result is" / "结果为" */
69
+ SemanticTokenKind["RESULT_IS"] = "RESULT_IS";
64
70
  /** 循环遍历 - "for each" / "对每个" */
65
71
  SemanticTokenKind["FOR_EACH"] = "FOR_EACH";
66
72
  /** 集合成员 - "in" / "在" */
@@ -107,6 +113,12 @@ export var SemanticTokenKind;
107
113
  SemanticTokenKind["EQUALS_TO"] = "EQUALS_TO";
108
114
  /** 判断 - "is" / "是" */
109
115
  SemanticTokenKind["IS"] = "IS";
116
+ /** 低于(比较同义词) - "under" / "不足" */
117
+ SemanticTokenKind["UNDER"] = "UNDER";
118
+ /** 超过(比较同义词) - "over" / "超过" */
119
+ SemanticTokenKind["OVER"] = "OVER";
120
+ /** 多于(比较同义词) - "more than" / "多于" */
121
+ SemanticTokenKind["MORE_THAN"] = "MORE_THAN";
110
122
  // ============================================================
111
123
  // 类型构造
112
124
  // ============================================================
@@ -154,9 +166,9 @@ export var SemanticTokenKind;
154
166
  // ============================================================
155
167
  // 工作流
156
168
  // ============================================================
157
- /** 工作流定义 - "workflow" / "【流程】" */
169
+ /** 工作流定义 - "workflow" / "流程" */
158
170
  SemanticTokenKind["WORKFLOW"] = "WORKFLOW";
159
- /** 步骤定义 - "step" / "【步骤】" */
171
+ /** 步骤定义 - "step" / "步骤" */
160
172
  SemanticTokenKind["STEP"] = "STEP";
161
173
  /** 依赖声明 - "depends" / "依赖" */
162
174
  SemanticTokenKind["DEPENDS"] = "DEPENDS";
@@ -225,14 +237,15 @@ export function isSemanticTokenKind(value) {
225
237
  */
226
238
  export const SEMANTIC_TOKEN_CATEGORIES = {
227
239
  module: [SemanticTokenKind.MODULE_DECL, SemanticTokenKind.IMPORT, SemanticTokenKind.IMPORT_ALIAS],
228
- type: [SemanticTokenKind.TYPE_DEF, SemanticTokenKind.TYPE_WITH, SemanticTokenKind.TYPE_ONE_OF],
229
- function: [SemanticTokenKind.FUNC_TO, SemanticTokenKind.FUNC_PRODUCE, SemanticTokenKind.FUNC_PERFORMS],
240
+ type: [SemanticTokenKind.TYPE_DEF, SemanticTokenKind.TYPE_WITH, SemanticTokenKind.TYPE_HAS, SemanticTokenKind.TYPE_ONE_OF],
241
+ function: [SemanticTokenKind.FUNC_TO, SemanticTokenKind.FUNC_GIVEN, SemanticTokenKind.FUNC_PRODUCE, SemanticTokenKind.FUNC_PERFORMS],
230
242
  control: [
231
243
  SemanticTokenKind.IF,
232
244
  SemanticTokenKind.OTHERWISE,
233
245
  SemanticTokenKind.MATCH,
234
246
  SemanticTokenKind.WHEN,
235
247
  SemanticTokenKind.RETURN,
248
+ SemanticTokenKind.RESULT_IS,
236
249
  SemanticTokenKind.FOR_EACH,
237
250
  SemanticTokenKind.IN,
238
251
  ],
@@ -249,6 +262,9 @@ export const SEMANTIC_TOKEN_CATEGORIES = {
249
262
  SemanticTokenKind.GREATER_THAN,
250
263
  SemanticTokenKind.EQUALS_TO,
251
264
  SemanticTokenKind.IS,
265
+ SemanticTokenKind.UNDER,
266
+ SemanticTokenKind.OVER,
267
+ SemanticTokenKind.MORE_THAN,
252
268
  ],
253
269
  typeConstruct: [
254
270
  SemanticTokenKind.MAYBE,
@@ -1 +1 @@
1
- {"version":3,"file":"token-kind.js","sourceRoot":"","sources":["../../../src/config/token-kind.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"token-kind.js","sourceRoot":"","sources":["../../../src/config/token-kind.ts"],"names":[],"mappings":"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"}
@@ -20,6 +20,17 @@
20
20
  * - 制表符会被自动转换为 2 个空格
21
21
  */
22
22
  import type { Lexicon } from '../config/lexicons/types.js';
23
+ /**
24
+ * 规范化器选项。
25
+ */
26
+ export interface CanonicalizerOptions {
27
+ /** 词法表,默认使用 en-US */
28
+ lexicon?: Lexicon;
29
+ /** 领域标识符(如 'insurance.auto'),启用标识符翻译 */
30
+ domain?: string;
31
+ /** 语言代码(如 'zh-CN'),与 domain 配合使用 */
32
+ locale?: string;
33
+ }
23
34
  /**
24
35
  * 规范化 CNL 源代码为标准格式。
25
36
  *
@@ -36,7 +47,7 @@ import type { Lexicon } from '../config/lexicons/types.js';
36
47
  * 7. 规范化多词关键字大小写
37
48
  *
38
49
  * @param input - 原始 CNL 源代码字符串
39
- * @param lexicon - 可选的词法表,默认使用英语(en-US)配置
50
+ * @param lexiconOrOptions - 可选的词法表或选项对象
40
51
  * @returns 规范化后的 CNL 源代码
41
52
  *
42
53
  * @example
@@ -49,7 +60,14 @@ import type { Lexicon } from '../config/lexicons/types.js';
49
60
  * // 中文
50
61
  * import { ZH_CN } from './config/lexicons/zh-CN.js';
51
62
  * const zhCanonical = canonicalize(raw, ZH_CN);
63
+ *
64
+ * // 带领域词汇表翻译
65
+ * const withDomain = canonicalize(raw, {
66
+ * lexicon: ZH_CN,
67
+ * domain: 'insurance.auto',
68
+ * locale: 'zh-CN',
69
+ * });
52
70
  * ```
53
71
  */
54
- export declare function canonicalize(input: string, lexicon?: Lexicon): string;
72
+ export declare function canonicalize(input: string, lexiconOrOptions?: Lexicon | CanonicalizerOptions): string;
55
73
  //# sourceMappingURL=canonicalizer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"canonicalizer.d.ts","sourceRoot":"","sources":["../../../src/frontend/canonicalizer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AA0F3D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,CAsHrE"}
1
+ {"version":3,"file":"canonicalizer.d.ts","sourceRoot":"","sources":["../../../src/frontend/canonicalizer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAM3D;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,qBAAqB;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,wCAAwC;IACxC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,oCAAoC;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAwFD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,gBAAgB,CAAC,EAAE,OAAO,GAAG,oBAAoB,GAAG,MAAM,CA0IrG"}
@@ -21,6 +21,7 @@
21
21
  */
22
22
  import { getMultiWordKeywords } from '../config/lexicons/types.js';
23
23
  import { LexiconRegistry, initializeDefaultLexicons } from '../config/lexicons/index.js';
24
+ import { vocabularyRegistry, initBuiltinVocabularies } from '../config/lexicons/identifiers/registry.js';
24
25
  // 默认正则表达式(英语)
25
26
  const LINE_COMMENT_RE = /^\s*(?:\/\/|#)/;
26
27
  const SPACE_RUN_RE = /[ \t]+/g;
@@ -111,7 +112,7 @@ function isEscaped(str, index) {
111
112
  * 7. 规范化多词关键字大小写
112
113
  *
113
114
  * @param input - 原始 CNL 源代码字符串
114
- * @param lexicon - 可选的词法表,默认使用英语(en-US)配置
115
+ * @param lexiconOrOptions - 可选的词法表或选项对象
115
116
  * @returns 规范化后的 CNL 源代码
116
117
  *
117
118
  * @example
@@ -124,9 +125,30 @@ function isEscaped(str, index) {
124
125
  * // 中文
125
126
  * import { ZH_CN } from './config/lexicons/zh-CN.js';
126
127
  * const zhCanonical = canonicalize(raw, ZH_CN);
128
+ *
129
+ * // 带领域词汇表翻译
130
+ * const withDomain = canonicalize(raw, {
131
+ * lexicon: ZH_CN,
132
+ * domain: 'insurance.auto',
133
+ * locale: 'zh-CN',
134
+ * });
127
135
  * ```
128
136
  */
129
- export function canonicalize(input, lexicon) {
137
+ export function canonicalize(input, lexiconOrOptions) {
138
+ // 解析参数
139
+ let lexicon;
140
+ let identifierIndex;
141
+ if (lexiconOrOptions && 'keywords' in lexiconOrOptions) {
142
+ lexicon = lexiconOrOptions;
143
+ }
144
+ else if (lexiconOrOptions && typeof lexiconOrOptions === 'object') {
145
+ const opts = lexiconOrOptions;
146
+ lexicon = opts.lexicon;
147
+ if (opts.domain && opts.locale) {
148
+ initBuiltinVocabularies();
149
+ identifierIndex = vocabularyRegistry.getIndex(opts.domain, opts.locale);
150
+ }
151
+ }
130
152
  // 缓存有效的词法表,确保所有配置访问都使用同一来源
131
153
  const effectiveLexicon = getEffectiveLexicon(lexicon);
132
154
  const quotes = effectiveLexicon.punctuation.stringQuotes;
@@ -228,6 +250,10 @@ export function canonicalize(input, lexicon) {
228
250
  }
229
251
  // Do not collapse newlines globally.
230
252
  marked = marked.replace(/^\s+$/gm, '');
253
+ // 标识符翻译(如果提供了领域词汇表)
254
+ if (identifierIndex) {
255
+ marked = translateIdentifiers(marked, identifierIndex, quotes);
256
+ }
231
257
  // Final whitespace normalization to ensure idempotency after article/macro passes
232
258
  marked = marked
233
259
  .split('\n')
@@ -362,4 +388,34 @@ function normalizeRest(rest, punctuationPattern, trimTrailing, quotes) {
362
388
  })
363
389
  .join('');
364
390
  }
391
+ /**
392
+ * 使用词汇表索引翻译代码中的标识符。
393
+ *
394
+ * 将本地化标识符(如中文)转换为规范化名称(英文)。
395
+ * 字符串字面量内的内容不做翻译。
396
+ */
397
+ function translateIdentifiers(source, index, quotes) {
398
+ const segments = segmentString(source, quotes);
399
+ return segments
400
+ .map(segment => {
401
+ if (segment.inString)
402
+ return segment.text;
403
+ return translateIdentifiersInSegment(segment.text, index);
404
+ })
405
+ .join('');
406
+ }
407
+ /**
408
+ * 翻译单个代码片段中的标识符。
409
+ *
410
+ * 识别标识符边界(字母/下划线/中文字符序列),
411
+ * 用词汇表索引将本地化名称替换为规范化名称。
412
+ */
413
+ function translateIdentifiersInSegment(text, index) {
414
+ // 标识符匹配模式:ASCII 标识符 + 中文字符序列
415
+ const IDENT_RE = /[a-zA-Z_\u4e00-\u9fa5][\w\u4e00-\u9fa5]*/g;
416
+ return text.replace(IDENT_RE, match => {
417
+ const canonical = index.toCanonical.get(match.toLowerCase());
418
+ return canonical ?? match;
419
+ });
420
+ }
365
421
  //# sourceMappingURL=canonicalizer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"canonicalizer.js","sourceRoot":"","sources":["../../../src/frontend/canonicalizer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"canonicalizer.js","sourceRoot":"","sources":["../../../src/frontend/canonicalizer.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,7 @@
10
10
  * - 关键词翻译 (keyword-translator)
11
11
  */
12
12
  export { canonicalize } from './canonicalizer.js';
13
+ export type { CanonicalizerOptions } from './canonicalizer.js';
13
14
  export { lex } from './lexer.js';
14
15
  export { TokenKind, KW } from './tokens.js';
15
16
  export { createKeywordTranslator, buildKeywordTranslationIndex, buildFullTranslationIndex, translateTokens, translateTokensWithMarkers, translateToken, needsKeywordTranslation, } from './keyword-translator.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/frontend/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EACL,uBAAuB,EACvB,4BAA4B,EAC5B,yBAAyB,EACzB,eAAe,EACf,0BAA0B,EAC1B,cAAc,EACd,uBAAuB,GACxB,MAAM,yBAAyB,CAAC;AACjC,YAAY,EACV,uBAAuB,EACvB,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/frontend/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,YAAY,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EACL,uBAAuB,EACvB,4BAA4B,EAC5B,yBAAyB,EACzB,eAAe,EACf,0BAA0B,EAC1B,cAAc,EACd,uBAAuB,GACxB,MAAM,yBAAyB,CAAC;AACjC,YAAY,EACV,uBAAuB,EACvB,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,yBAAyB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/frontend/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EACL,uBAAuB,EACvB,4BAA4B,EAC5B,yBAAyB,EACzB,eAAe,EACf,0BAA0B,EAC1B,cAAc,EACd,uBAAuB,GACxB,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/frontend/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EACL,uBAAuB,EACvB,4BAA4B,EAC5B,yBAAyB,EACzB,eAAe,EACf,0BAA0B,EAC1B,cAAc,EACd,uBAAuB,GACxB,MAAM,yBAAyB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"keyword-translator.d.ts","sourceRoot":"","sources":["../../../src/frontend/keyword-translator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAI3D;;;;GAIG;AACH,MAAM,MAAM,uBAAuB,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAE1D;;;;;GAKG;AACH,MAAM,MAAM,kBAAkB,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAErD;;;;;;;;GAQG;AACH;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,4BAA4B;IAC5B,KAAK,EAAE,uBAAuB,CAAC;IAC/B,8BAA8B;IAC9B,WAAW,EAAE,kBAAkB,CAAC;CACjC;AAED;;;;;;;;;GASG;AACH,wBAAgB,4BAA4B,CAC1C,aAAa,EAAE,OAAO,EACtB,aAAa,GAAE,OAAe,GAC7B,uBAAuB,CAGzB;AAqBD,wBAAgB,yBAAyB,CACvC,aAAa,EAAE,OAAO,EACtB,aAAa,GAAE,OAAe,GAC7B,sBAAsB,CA2DxB;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,uBAAuB,GAAG,KAAK,CAsBlF;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,MAAM,EAAE,SAAS,KAAK,EAAE,EACxB,KAAK,EAAE,uBAAuB,GAC7B,KAAK,EAAE,CAET;AAaD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,SAAS,KAAK,EAAE,EACxB,KAAK,EAAE,uBAAuB,EAC9B,WAAW,EAAE,kBAAkB,GAC9B,KAAK,EAAE,CAuMT;AAED;;;;;;;;;GASG;AACH,wBAAgB,uBAAuB,CACrC,aAAa,EAAE,OAAO,EACtB,aAAa,GAAE,OAAe,GAC7B;IACD,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3B,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,cAAc,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,KAAK,CAAC;IACxC,eAAe,EAAE,CAAC,MAAM,EAAE,SAAS,KAAK,EAAE,KAAK,KAAK,EAAE,CAAC;IACvD,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC;IAC3C,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;IACtD,oBAAoB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC;IACjD,oBAAoB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;CAC7D,CA6BA;AAED;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CACrC,aAAa,EAAE,OAAO,EACtB,aAAa,GAAE,OAAe,GAC7B,OAAO,CAET"}
1
+ {"version":3,"file":"keyword-translator.d.ts","sourceRoot":"","sources":["../../../src/frontend/keyword-translator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAI3D;;;;GAIG;AACH,MAAM,MAAM,uBAAuB,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAE1D;;;;;GAKG;AACH,MAAM,MAAM,kBAAkB,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAErD;;;;;;;;GAQG;AACH;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,4BAA4B;IAC5B,KAAK,EAAE,uBAAuB,CAAC;IAC/B,8BAA8B;IAC9B,WAAW,EAAE,kBAAkB,CAAC;CACjC;AAED;;;;;;;;;GASG;AACH,wBAAgB,4BAA4B,CAC1C,aAAa,EAAE,OAAO,EACtB,aAAa,GAAE,OAAe,GAC7B,uBAAuB,CAGzB;AAqBD,wBAAgB,yBAAyB,CACvC,aAAa,EAAE,OAAO,EACtB,aAAa,GAAE,OAAe,GAC7B,sBAAsB,CAgGxB;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,uBAAuB,GAAG,KAAK,CAsBlF;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,MAAM,EAAE,SAAS,KAAK,EAAE,EACxB,KAAK,EAAE,uBAAuB,GAC7B,KAAK,EAAE,CAET;AAaD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,SAAS,KAAK,EAAE,EACxB,KAAK,EAAE,uBAAuB,EAC9B,WAAW,EAAE,kBAAkB,GAC9B,KAAK,EAAE,CAuMT;AAED;;;;;;;;;GASG;AACH,wBAAgB,uBAAuB,CACrC,aAAa,EAAE,OAAO,EACtB,aAAa,GAAE,OAAe,GAC7B;IACD,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3B,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,cAAc,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,KAAK,CAAC;IACxC,eAAe,EAAE,CAAC,MAAM,EAAE,SAAS,KAAK,EAAE,KAAK,KAAK,EAAE,CAAC;IACvD,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC;IAC3C,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;IACtD,oBAAoB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC;IACjD,oBAAoB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;CAC7D,CA6BA;AAED;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CACrC,aAAa,EAAE,OAAO,EACtB,aAAa,GAAE,OAAe,GAC7B,OAAO,CAET"}
@@ -57,6 +57,54 @@ export function buildFullTranslationIndex(sourceLexicon, targetLexicon = EN_US)
57
57
  const markers = sourceLexicon.punctuation.markers;
58
58
  const markerOpen = markers?.open || '【';
59
59
  const markerClose = markers?.close || '】';
60
+ // 构建规范化规则(从词法表的 customRules 中提取简单替换规则)
61
+ const canonRules = [];
62
+ if (sourceLexicon.canonicalization?.customRules) {
63
+ for (const rule of sourceLexicon.canonicalization.customRules) {
64
+ if (rule.pattern && rule.replacement) {
65
+ try {
66
+ canonRules.push({ pattern: new RegExp(rule.pattern, 'g'), replacement: rule.replacement });
67
+ }
68
+ catch {
69
+ // 跳过无效的正则表达式
70
+ }
71
+ }
72
+ }
73
+ }
74
+ /**
75
+ * 应用词法表的规范化规则(如 ue→ü, oe→ö, ae→ä)到关键词,
76
+ * 使翻译索引同时包含 ASCII 形式和规范化形式。
77
+ */
78
+ function applyCanonRules(text) {
79
+ let result = text;
80
+ for (const rule of canonRules) {
81
+ rule.pattern.lastIndex = 0;
82
+ result = result.replace(rule.pattern, rule.replacement);
83
+ }
84
+ return result;
85
+ }
86
+ /**
87
+ * 向索引中添加映射,遵循优先级规则。
88
+ * 同时添加规范化变体(如 "zurueck" 和 "zurück")。
89
+ */
90
+ function addToIndex(srcLower, target, isHighPriority) {
91
+ const existingPriority = indexPriority.get(srcLower);
92
+ if (!index.has(srcLower) || (isHighPriority && !existingPriority)) {
93
+ index.set(srcLower, target);
94
+ indexPriority.set(srcLower, isHighPriority);
95
+ }
96
+ // 同时添加规范化变体
97
+ if (canonRules.length > 0) {
98
+ const canonicalized = applyCanonRules(srcLower);
99
+ if (canonicalized !== srcLower) {
100
+ const canonExistingPriority = indexPriority.get(canonicalized);
101
+ if (!index.has(canonicalized) || (isHighPriority && !canonExistingPriority)) {
102
+ index.set(canonicalized, target);
103
+ indexPriority.set(canonicalized, isHighPriority);
104
+ }
105
+ }
106
+ }
107
+ }
60
108
  // 遍历所有 SemanticTokenKind
61
109
  for (const kind of Object.values(SemanticTokenKind)) {
62
110
  const sourceKeyword = sourceLexicon.keywords[kind];
@@ -71,14 +119,7 @@ export function buildFullTranslationIndex(sourceLexicon, targetLexicon = EN_US)
71
119
  }
72
120
  else {
73
121
  const srcLower = sourceKeyword.toLowerCase();
74
- const existingPriority = indexPriority.get(srcLower);
75
- // 只在以下情况添加映射:
76
- // 1. 源词尚未有映射
77
- // 2. 当前是高优先级且现有不是高优先级
78
- if (!index.has(srcLower) || (isHighPriority && !existingPriority)) {
79
- index.set(srcLower, targetKeyword);
80
- indexPriority.set(srcLower, isHighPriority);
81
- }
122
+ addToIndex(srcLower, targetKeyword, isHighPriority);
82
123
  // 对于多词关键词短语,同时添加逐词映射
83
124
  // 例如 "Dieses Modul ist" -> "this module is"
84
125
  // 会分解为 "dieses" -> "this", "modul" -> "module", "ist" -> "is"
@@ -88,13 +129,8 @@ export function buildFullTranslationIndex(sourceLexicon, targetLexicon = EN_US)
88
129
  for (let i = 0; i < sourceParts.length; i++) {
89
130
  const srcWord = sourceParts[i];
90
131
  const tgtWord = targetParts[i];
91
- const existingWordPriority = indexPriority.get(srcWord);
92
- // 添加逐词映射(遵循相同的优先级规则)
93
132
  if (srcWord !== tgtWord) {
94
- if (!index.has(srcWord) || (isHighPriority && !existingWordPriority)) {
95
- index.set(srcWord, tgtWord);
96
- indexPriority.set(srcWord, isHighPriority);
97
- }
133
+ addToIndex(srcWord, tgtWord, isHighPriority);
98
134
  }
99
135
  }
100
136
  }
@@ -301,7 +337,7 @@ export function translateTokensWithMarkers(tokens, index, markerIndex) {
301
337
  // - 在 "let x 为 ..." 结构中,"为" → "be"
302
338
  // - 否则,"为" → "when"(默认,用于 match 块)
303
339
  let translated = index.get(valueLower);
304
- if (translated === 'when' && result.length >= 2) {
340
+ if (translated?.toLowerCase() === 'when' && result.length >= 2) {
305
341
  // 在 "令 x 为 ..." 结构中:
306
342
  // - result[-1] 是变量名 "x"(IDENT)
307
343
  // - result[-2] 是关键字 "let"
@@ -1 +1 @@
1
- {"version":3,"file":"keyword-translator.js","sourceRoot":"","sources":["../../../src/frontend/keyword-translator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AAoCpD;;;;;;;;;GASG;AACH,MAAM,UAAU,4BAA4B,CAC1C,aAAsB,EACtB,gBAAyB,KAAK;IAE9B,MAAM,EAAE,KAAK,EAAE,GAAG,yBAAyB,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;IAC1E,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;GAMG;AACH,wBAAwB;AACxB,mBAAmB;AACnB,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAoB;IACrD,iBAAiB,CAAC,SAAS,EAAO,0BAA0B;IAC5D,iBAAiB,CAAC,WAAW,EAAK,OAAO;IACzC,iBAAiB,CAAC,QAAQ,EAAQ,OAAO;IACzC,iBAAiB,CAAC,EAAE,EAAc,OAAO;IACzC,iBAAiB,CAAC,MAAM,EAAU,OAAO;IACzC,iBAAiB,CAAC,YAAY,EAAI,OAAO;IACzC,iBAAiB,CAAC,SAAS,EAAO,OAAO;CAC1C,CAAC,CAAC;AAEH,MAAM,UAAU,yBAAyB,CACvC,aAAsB,EACtB,gBAAyB,KAAK;IAE9B,MAAM,KAAK,GAAG,IAAI,GAAG,EAAkB,CAAC;IACxC,MAAM,WAAW,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC9C,cAAc;IACd,MAAM,aAAa,GAAG,IAAI,GAAG,EAAmB,CAAC;IAEjD,cAAc;IACd,MAAM,OAAO,GAAG,aAAa,CAAC,WAAW,CAAC,OAAO,CAAC;IAClD,MAAM,UAAU,GAAG,OAAO,EAAE,IAAI,IAAI,GAAG,CAAC;IACxC,MAAM,WAAW,GAAG,OAAO,EAAE,KAAK,IAAI,GAAG,CAAC;IAE1C,yBAAyB;IACzB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC;QACpD,MAAM,aAAa,GAAG,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACnD,MAAM,aAAa,GAAG,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACnD,MAAM,cAAc,GAAG,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAErD,IAAI,aAAa,IAAI,aAAa,IAAI,aAAa,KAAK,aAAa,EAAE,CAAC;YACtE,oBAAoB;YACpB,IAAI,aAAa,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,aAAa,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;gBAChF,gBAAgB;gBAChB,MAAM,UAAU,GAAG,aAAa,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;gBAC/E,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,WAAW,EAAE,EAAE,aAAa,CAAC,CAAC;YAC3D,CAAC;iBAAM,CAAC;gBACN,MAAM,QAAQ,GAAG,aAAa,CAAC,WAAW,EAAE,CAAC;gBAC7C,MAAM,gBAAgB,GAAG,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBAErD,cAAc;gBACd,aAAa;gBACb,sBAAsB;gBACtB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC;oBAClE,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;oBACnC,aAAa,CAAC,GAAG,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;gBAC9C,CAAC;gBAED,qBAAqB;gBACrB,4CAA4C;gBAC5C,8DAA8D;gBAC9D,MAAM,WAAW,GAAG,aAAa,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC7D,MAAM,WAAW,GAAG,aAAa,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC7D,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,WAAW,CAAC,MAAM,KAAK,WAAW,CAAC,MAAM,EAAE,CAAC;oBACxE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;wBAC5C,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC,CAAE,CAAC;wBAChC,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC,CAAE,CAAC;wBAChC,MAAM,oBAAoB,GAAG,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;wBACxD,qBAAqB;wBACrB,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;4BACxB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,oBAAoB,CAAC,EAAE,CAAC;gCACrE,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gCAC5B,aAAa,CAAC,GAAG,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;4BAC7C,CAAC;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;AAChC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAC,KAAY,EAAE,KAA8B;IACzE,0CAA0C;IAC1C,IACE,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,KAAK;QAC9B,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,UAAU;QACnC,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,OAAO,EAChC,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,KAAK,GAAG,KAAK,CAAC,KAAe,CAAC;IACpC,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IAEzB,aAAa;IACb,MAAM,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;IAClD,IAAI,CAAC,UAAU;QAAE,OAAO,KAAK,CAAC;IAE9B,qBAAqB;IACrB,OAAO;QACL,GAAG,KAAK;QACR,KAAK,EAAE,UAAU;KAClB,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAC7B,MAAwB,EACxB,KAA8B;IAE9B,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED;;GAEG;AACH,SAAS,mBAAmB,CAAC,KAAY;IACvC,OAAO,CACL,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,KAAK;QAC9B,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,UAAU;QACnC,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,OAAO,CACjC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,0BAA0B,CACxC,MAAwB,EACxB,KAA8B,EAC9B,WAA+B;IAE/B,MAAM,MAAM,GAAY,EAAE,CAAC;IAC3B,IAAI,CAAC,GAAG,CAAC,CAAC;IAEV,wBAAwB;IACxB,IAAI,eAAe,GAAG,CAAC,CAAC;IACxB,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;QAC/B,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC;QAC1C,IAAI,SAAS,GAAG,eAAe,EAAE,CAAC;YAChC,eAAe,GAAG,SAAS,CAAC;QAC9B,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAE,CAAC;QAEzB,8CAA8C;QAC9C,IACE,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,QAAQ;YACjC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM;YACrB,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAE,CAAC,IAAI,KAAK,SAAS,CAAC,KAAK,IAAI,MAAM,CAAC,CAAC,GAAG,CAAC,CAAE,CAAC,IAAI,KAAK,SAAS,CAAC,UAAU,CAAC;YACzF,MAAM,CAAC,CAAC,GAAG,CAAC,CAAE,CAAC,IAAI,KAAK,SAAS,CAAC,QAAQ,EAC1C,CAAC;YACD,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAE,CAAC;YAClC,MAAM,UAAU,GAAG,UAAU,CAAC,KAAe,CAAC;YAC9C,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;YAE7D,IAAI,UAAU,EAAE,CAAC;gBACf,UAAU;gBACV,8CAA8C;gBAC9C,MAAM,WAAW,GAAG,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC5C,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC7B,8BAA8B;oBAC9B,MAAM,CAAC,IAAI,CAAC;wBACV,IAAI,EAAE,SAAS,CAAC,UAAU;wBAC1B,KAAK,EAAE,UAAU;wBACjB,KAAK,EAAE,KAAK,CAAC,KAAK;wBAClB,GAAG,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAE,CAAC,GAAG;qBACxB,CAAC,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACN,2CAA2C;oBAC3C,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC;oBAC7B,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAE,CAAC,GAAG,CAAC;oBAClC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;wBAC5C,MAAM,CAAC,IAAI,CAAC;4BACV,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK;4BACtD,KAAK,EAAE,WAAW,CAAC,CAAC,CAAE;4BACtB,KAAK,EAAE,QAAQ;4BACf,GAAG,EAAE,MAAM;yBACZ,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;gBACD,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa;gBACrB,SAAS;YACX,CAAC;QACH,CAAC;QAED,yBAAyB;QACzB,IAAI,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/B,IAAI,OAAO,GAAG,KAAK,CAAC;YAEpB,iBAAiB;YACjB,KAAK,IAAI,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,EAAE,CAAC;gBAC9F,yBAAyB;gBACzB,IAAI,eAAe,GAAG,IAAI,CAAC;gBAC3B,MAAM,YAAY,GAAY,EAAE,CAAC;gBAEjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,CAAC,EAAE,EAAE,CAAC;oBACnC,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAE,CAAC;oBACzB,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC5B,eAAe,GAAG,KAAK,CAAC;wBACxB,MAAM;oBACR,CAAC;oBACD,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACvB,CAAC;gBAED,IAAI,CAAC,eAAe;oBAAE,SAAS;gBAE/B,YAAY;gBACZ,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAE,CAAC,CAAC,KAAgB,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAClF,MAAM,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBAErC,IAAI,UAAU,EAAE,CAAC;oBACf,YAAY;oBACZ,MAAM,WAAW,GAAG,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBAC5C,MAAM,eAAe,GAAG,WAAW,CAAC,MAAM,CAAC;oBAE3C,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;wBAClC,4BAA4B;wBAC5B,yDAAyD;wBACzD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,CAAC,EAAE,EAAE,CAAC;4BACnC,MAAM,QAAQ,GAAG,YAAY,CAAC,CAAC,CAAE,CAAC;4BAClC,MAAM,CAAC,IAAI,CAAC;gCACV,IAAI,EAAE,QAAQ,CAAC,IAAI;gCACnB,KAAK,EAAE,WAAW,CAAC,CAAC,CAAE;gCACtB,KAAK,EAAE,QAAQ,CAAC,KAAK;gCACrB,GAAG,EAAE,QAAQ,CAAC,GAAG;6BAClB,CAAC,CAAC;wBACL,CAAC;oBACH,CAAC;yBAAM,IAAI,eAAe,GAAG,SAAS,EAAE,CAAC;wBACvC,yBAAyB;wBACzB,sCAAsC;wBACtC,mCAAmC;wBACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,eAAe,EAAE,CAAC,EAAE,EAAE,CAAC;4BACzC,uBAAuB;4BACvB,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,SAAS,GAAG,eAAe,CAAC,CAAC;4BAChE,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,SAAS,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;4BACxE,MAAM,aAAa,GAAG,YAAY,CAAC,WAAW,CAAE,CAAC;4BACjD,MAAM,WAAW,GAAG,YAAY,CAAC,SAAS,CAAE,CAAC;4BAC7C,MAAM,CAAC,IAAI,CAAC;gCACV,IAAI,EAAE,aAAa,CAAC,IAAI;gCACxB,KAAK,EAAE,WAAW,CAAC,CAAC,CAAE;gCACtB,KAAK,EAAE,aAAa,CAAC,KAAK;gCAC1B,GAAG,EAAE,WAAW,CAAC,GAAG;6BACrB,CAAC,CAAC;wBACL,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,uCAAuC;wBACvC,gBAAgB;wBAChB,MAAM,UAAU,GAAG,YAAY,CAAC,CAAC,CAAE,CAAC;wBACpC,MAAM,SAAS,GAAG,YAAY,CAAC,SAAS,GAAG,CAAC,CAAE,CAAC;wBAC/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,eAAe,EAAE,CAAC,EAAE,EAAE,CAAC;4BACzC,MAAM,CAAC,IAAI,CAAC;gCACV,IAAI,EAAE,UAAU,CAAC,IAAI;gCACrB,KAAK,EAAE,WAAW,CAAC,CAAC,CAAE;gCACtB,KAAK,EAAE,UAAU,CAAC,KAAK;gCACvB,GAAG,EAAE,SAAS,CAAC,GAAG;6BACnB,CAAC,CAAC;wBACL,CAAC;oBACH,CAAC;oBAED,CAAC,IAAI,SAAS,CAAC,CAAC,gBAAgB;oBAChC,OAAO,GAAG,IAAI,CAAC;oBACf,MAAM;gBACR,CAAC;YACH,CAAC;YAED,IAAI,OAAO;gBAAE,SAAS;QACxB,CAAC;QAED,iDAAiD;QACjD,IAAI,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/B,MAAM,KAAK,GAAG,KAAK,CAAC,KAAe,CAAC;YACpC,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;YAEvC,kCAAkC;YAClC,4CAA4C;YAC5C,mCAAmC;YACnC,mCAAmC;YACnC,IAAI,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YACvC,IAAI,UAAU,KAAK,MAAM,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;gBAChD,qBAAqB;gBACrB,+BAA+B;gBAC/B,0BAA0B;gBAC1B,0BAA0B;gBAC1B,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBAChD,IAAI,aAAa;oBACb,CAAC,aAAa,CAAC,IAAI,KAAK,SAAS,CAAC,KAAK;wBACtC,aAAa,CAAC,IAAI,KAAK,SAAS,CAAC,UAAU;wBAC3C,aAAa,CAAC,IAAI,KAAK,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC/C,MAAM,aAAa,GAAI,aAAa,CAAC,KAAgB,CAAC,WAAW,EAAE,CAAC;oBACpE,IAAI,aAAa,KAAK,KAAK,EAAE,CAAC;wBAC5B,0BAA0B;wBAC1B,UAAU,GAAG,IAAI,CAAC;oBACpB,CAAC;gBACH,CAAC;YACH,CAAC;YAED,IAAI,UAAU,EAAE,CAAC;gBACf,MAAM,WAAW,GAAG,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC5C,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC3B,uBAAuB;oBACvB,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;wBAC/B,MAAM,CAAC,IAAI,CAAC;4BACV,IAAI,EAAE,KAAK,CAAC,IAAI;4BAChB,KAAK,EAAE,IAAI;4BACX,KAAK,EAAE,KAAK,CAAC,KAAK;4BAClB,GAAG,EAAE,KAAK,CAAC,GAAG;yBACf,CAAC,CAAC;oBACL,CAAC;oBACD,CAAC,EAAE,CAAC;oBACJ,SAAS;gBACX,CAAC;gBACD,OAAO;gBACP,MAAM,CAAC,IAAI,CAAC;oBACV,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,KAAK,EAAE,UAAU;oBACjB,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,GAAG,EAAE,KAAK,CAAC,GAAG;iBACf,CAAC,CAAC;gBACH,CAAC,EAAE,CAAC;gBACJ,SAAS;YACX,CAAC;QACH,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;QAC1C,CAAC,EAAE,CAAC;IACN,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,uBAAuB,CACrC,aAAsB,EACtB,gBAAyB,KAAK;IAW9B,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,yBAAyB,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;IAEvF,OAAO;QACL,gBAAgB;QAChB,KAAK;QAEL,0BAA0B;QAC1B,WAAW;QAEX,iBAAiB;QACjB,cAAc,EAAE,CAAC,KAAY,EAAS,EAAE,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC;QAErE,+BAA+B;QAC/B,eAAe,EAAE,CAAC,MAAwB,EAAW,EAAE,CACrD,0BAA0B,CAAC,MAAM,EAAE,KAAK,EAAE,WAAW,CAAC;QAExD,mBAAmB;QACnB,cAAc,EAAE,CAAC,KAAa,EAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QAE1E,kBAAkB;QAClB,cAAc,EAAE,CAAC,KAAa,EAAsB,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QAErF,mBAAmB;QACnB,oBAAoB,EAAE,CAAC,KAAa,EAAW,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QAEtF,kBAAkB;QAClB,oBAAoB,EAAE,CAAC,KAAa,EAAsB,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;KAClG,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,uBAAuB,CACrC,aAAsB,EACtB,gBAAyB,KAAK;IAE9B,OAAO,aAAa,CAAC,EAAE,KAAK,aAAa,CAAC,EAAE,CAAC;AAC/C,CAAC"}
1
+ {"version":3,"file":"keyword-translator.js","sourceRoot":"","sources":["../../../src/frontend/keyword-translator.ts"],"names":[],"mappings":"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"}