@aster-cloud/aster-lang-ts 1.2.0 → 1.2.2

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 (52) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/dist/src/config/config-service.d.ts +4 -2
  3. package/dist/src/config/config-service.d.ts.map +1 -1
  4. package/dist/src/config/config-service.js +9 -6
  5. package/dist/src/config/config-service.js.map +1 -1
  6. package/dist/src/lsp/completion.d.ts +0 -23
  7. package/dist/src/lsp/completion.d.ts.map +1 -1
  8. package/dist/src/lsp/completion.js +2 -46
  9. package/dist/src/lsp/completion.js.map +1 -1
  10. package/dist/src/lsp/diagnostics.d.ts.map +1 -1
  11. package/dist/src/lsp/diagnostics.js +6 -6
  12. package/dist/src/lsp/diagnostics.js.map +1 -1
  13. package/dist/src/lsp/log-sink.d.ts +21 -0
  14. package/dist/src/lsp/log-sink.d.ts.map +1 -0
  15. package/dist/src/lsp/log-sink.js +37 -0
  16. package/dist/src/lsp/log-sink.js.map +1 -0
  17. package/dist/src/lsp/member-completion.d.ts +59 -0
  18. package/dist/src/lsp/member-completion.d.ts.map +1 -0
  19. package/dist/src/lsp/member-completion.js +112 -0
  20. package/dist/src/lsp/member-completion.js.map +1 -0
  21. package/dist/src/lsp/parse-document.d.ts +5 -0
  22. package/dist/src/lsp/parse-document.d.ts.map +1 -1
  23. package/dist/src/lsp/parse-document.js +8 -1
  24. package/dist/src/lsp/parse-document.js.map +1 -1
  25. package/dist/src/lsp/resolution.d.ts +6 -0
  26. package/dist/src/lsp/resolution.d.ts.map +1 -1
  27. package/dist/src/lsp/resolution.js +17 -0
  28. package/dist/src/lsp/resolution.js.map +1 -1
  29. package/dist/src/lsp/server.js +3 -0
  30. package/dist/src/lsp/server.js.map +1 -1
  31. package/dist/src/parser/expr-stmt-parser.d.ts.map +1 -1
  32. package/dist/src/parser/expr-stmt-parser.js +8 -2
  33. package/dist/src/parser/expr-stmt-parser.js.map +1 -1
  34. package/dist/src/utils/logger.d.ts +11 -0
  35. package/dist/src/utils/logger.d.ts.map +1 -1
  36. package/dist/src/utils/logger.js +16 -2
  37. package/dist/src/utils/logger.js.map +1 -1
  38. package/dist/test/integration/lsp/lsp-member-completion.test.d.ts +2 -0
  39. package/dist/test/integration/lsp/lsp-member-completion.test.d.ts.map +1 -0
  40. package/dist/test/integration/lsp/lsp-member-completion.test.js +133 -0
  41. package/dist/test/integration/lsp/lsp-member-completion.test.js.map +1 -0
  42. package/dist/test/unit/config/config-service.test.js +13 -0
  43. package/dist/test/unit/config/config-service.test.js.map +1 -1
  44. package/dist/test/unit/lsp/log-levels.test.d.ts +2 -0
  45. package/dist/test/unit/lsp/log-levels.test.d.ts.map +1 -0
  46. package/dist/test/unit/lsp/log-levels.test.js +152 -0
  47. package/dist/test/unit/lsp/log-levels.test.js.map +1 -0
  48. package/dist/test/unit/lsp/resolution-completion.test.js +40 -3
  49. package/dist/test/unit/lsp/resolution-completion.test.js.map +1 -1
  50. package/dist/test/unit/parser/parser.test.js +19 -0
  51. package/dist/test/unit/parser/parser.test.js.map +1 -1
  52. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,27 @@
1
1
  # Changelog
2
2
 
3
+ ## 1.2.2
4
+
5
+ ### 修复
6
+
7
+ - LSP 日志按真实级别输出:此前 Logger 的所有级别、以及 `[TypecheckCache]` 诊断日志都走 `console.error`,
8
+ 被 vscode-languageserver 重定向成 `window/logMessage` 的 Error 类型,每次类型检查都向浏览器控制台推
9
+ 多条 `[LSP Error] {"level":"INFO",...}`。现在 LSP 服务端安装日志落点,ERROR/WARN/INFO/DEBUG 分别映射到
10
+ `connection.console` 的 error/warn/info/log(logMessage 类型 1/2/3/4),默认最小级别为 WARN,可用环境变量
11
+ `ASTER_LOG_LEVEL`(兼容 `LOG_LEVEL`)调高;`[TypecheckCache]` 与诊断缓存命中日志降为 debug 级别并走
12
+ Logger。CLI 与非 LSP 场景仍写 stderr,行为不变(#261)。
13
+
14
+ ## 1.2.1
15
+
16
+ ### 修复
17
+
18
+ - B2 文案与服务端一致:`with` 调用后缀(如 `Let x be helper with 10.`)被拒时,编辑器原报
19
+ "Expected identifier",现与 Java 引擎(aster-lang-core `malformedConstructField`)同报
20
+ "Expected 'set to' in construction";关键词按作者语言显示,只报一条(#252)。
21
+ - LSP 成员补全:`x.` 之后的字段补全不再只在「行尾 + 文档可解析」时生效。行中(点号后还有内容)、
22
+ 点号后已输入前缀(`d.a`)、zh 未完成的块头(`如果 司机.`)以及文档别处有语法错误时,都按接收者的
23
+ 声明类型列字段;字段项带 `textEdit`,替换点号之后到光标的前缀(生产复测 cloud#660 第 5 轮)。
24
+
3
25
  ## 1.2.0
4
26
 
5
27
  ### 新增
@@ -36,6 +36,8 @@ export declare class ConfigService {
36
36
  readonly cachedEffectConfigPath: string;
37
37
  /** 日志级别(默认 INFO) */
38
38
  readonly logLevel: LogLevel;
39
+ /** 显式配置的日志级别(ASTER_LOG_LEVEL,兼容旧名 LOG_LEVEL);未配置或非法时为 undefined */
40
+ readonly configuredLogLevel: LogLevel | undefined;
39
41
  /** 能力清单文件路径(可选,用于 LSP 诊断) */
40
42
  readonly capsManifestPath: string | null;
41
43
  /** 是否启用调试类型输出(默认 false,设置 ASTER_DEBUG_TYPES=1 启用) */
@@ -45,10 +47,10 @@ export declare class ConfigService {
45
47
  */
46
48
  private constructor();
47
49
  /**
48
- * 解析 LOG_LEVEL 环境变量为 LogLevel 枚举值。
50
+ * 解析日志级别环境变量为 LogLevel 枚举值。
49
51
  *
50
52
  * @param raw - 原始环境变量值
51
- * @returns 解析后的 LogLevel,默认 INFO
53
+ * @returns 解析后的 LogLevel;缺失或非法时返回 undefined
52
54
  */
53
55
  private parseLogLevel;
54
56
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"config-service.d.ts","sourceRoot":"","sources":["../../../src/config/config-service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAY9C;;;;;GAKG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAA8B;IAErD,+DAA+D;IAC/D,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IAEjC,uCAAuC;IACvC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAElC,mCAAmC;IACnC,QAAQ,CAAC,sBAAsB,EAAE,MAAM,CAAC;IAExC,oBAAoB;IACpB,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAE5B,6BAA6B;IAC7B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAEzC,qDAAqD;IACrD,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAE7B;;OAEG;IACH,OAAO;IAaP;;;;;OAKG;IACH,OAAO,CAAC,aAAa;IAQrB;;;;;;;OAOG;IACH,OAAO,CAAC,QAAQ;IAMhB;;;;;;OAMG;IACH,MAAM,CAAC,WAAW,IAAI,aAAa;IAenC;;;;;OAKG;IACH,MAAM,CAAC,eAAe,IAAI,IAAI;CAG/B"}
1
+ {"version":3,"file":"config-service.d.ts","sourceRoot":"","sources":["../../../src/config/config-service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAY9C;;;;;GAKG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAA8B;IAErD,+DAA+D;IAC/D,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IAEjC,uCAAuC;IACvC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAElC,mCAAmC;IACnC,QAAQ,CAAC,sBAAsB,EAAE,MAAM,CAAC;IAExC,oBAAoB;IACpB,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAE5B,mEAAmE;IACnE,QAAQ,CAAC,kBAAkB,EAAE,QAAQ,GAAG,SAAS,CAAC;IAElD,6BAA6B;IAC7B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAEzC,qDAAqD;IACrD,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAE7B;;OAEG;IACH,OAAO;IAcP;;;;;OAKG;IACH,OAAO,CAAC,aAAa;IAQrB;;;;;;;OAOG;IACH,OAAO,CAAC,QAAQ;IAMhB;;;;;;OAMG;IACH,MAAM,CAAC,WAAW,IAAI,aAAa;IAenC;;;;;OAKG;IACH,MAAM,CAAC,eAAe,IAAI,IAAI;CAG/B"}
@@ -45,6 +45,8 @@ export class ConfigService {
45
45
  cachedEffectConfigPath;
46
46
  /** 日志级别(默认 INFO) */
47
47
  logLevel;
48
+ /** 显式配置的日志级别(ASTER_LOG_LEVEL,兼容旧名 LOG_LEVEL);未配置或非法时为 undefined */
49
+ configuredLogLevel;
48
50
  /** 能力清单文件路径(可选,用于 LSP 诊断) */
49
51
  capsManifestPath;
50
52
  /** 是否启用调试类型输出(默认 false,设置 ASTER_DEBUG_TYPES=1 启用) */
@@ -57,25 +59,26 @@ export class ConfigService {
57
59
  this.effectsEnforce = getEnv('ASTER_CAP_EFFECTS_ENFORCE') !== '0';
58
60
  this.effectConfigPath = getEnv('ASTER_EFFECT_CONFIG') || '.aster/effects.json';
59
61
  this.cachedEffectConfigPath = this.effectConfigPath;
60
- this.logLevel = this.parseLogLevel(getEnv('LOG_LEVEL'));
62
+ this.configuredLogLevel = this.parseLogLevel(getEnv('ASTER_LOG_LEVEL') || getEnv('LOG_LEVEL'));
63
+ this.logLevel = this.configuredLogLevel ?? LogLevel.INFO;
61
64
  this.capsManifestPath = getEnv('ASTER_CAPS') || null;
62
65
  this.debugTypes = getEnv('ASTER_DEBUG_TYPES') === '1';
63
66
  // 启动时校验配置有效性
64
67
  this.validate();
65
68
  }
66
69
  /**
67
- * 解析 LOG_LEVEL 环境变量为 LogLevel 枚举值。
70
+ * 解析日志级别环境变量为 LogLevel 枚举值。
68
71
  *
69
72
  * @param raw - 原始环境变量值
70
- * @returns 解析后的 LogLevel,默认 INFO
73
+ * @returns 解析后的 LogLevel;缺失或非法时返回 undefined
71
74
  */
72
75
  parseLogLevel(raw) {
73
76
  if (!raw)
74
- return LogLevel.INFO;
77
+ return undefined;
75
78
  const upper = raw.toUpperCase();
76
- return upper in LogLevel
79
+ return upper in LogLevel && Number.isNaN(Number(upper))
77
80
  ? LogLevel[upper]
78
- : LogLevel.INFO;
81
+ : undefined;
79
82
  }
80
83
  /**
81
84
  * 校验配置的有效性。
@@ -1 +1 @@
1
- {"version":3,"file":"config-service.js","sourceRoot":"","sources":["../../../src/config/config-service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE9C;;GAEG;AACH,SAAS,MAAM,CAAC,GAAW;IACzB,IAAI,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QAClD,OAAO,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;GAKG;AACH,MAAM,OAAO,aAAa;IAChB,MAAM,CAAC,QAAQ,GAAyB,IAAI,CAAC;IAErD,+DAA+D;IACtD,cAAc,CAAU;IAEjC,uCAAuC;IAC9B,gBAAgB,CAAS;IAElC,mCAAmC;IAC1B,sBAAsB,CAAS;IAExC,oBAAoB;IACX,QAAQ,CAAW;IAE5B,6BAA6B;IACpB,gBAAgB,CAAgB;IAEzC,qDAAqD;IAC5C,UAAU,CAAU;IAE7B;;OAEG;IACH;QACE,4BAA4B;QAC5B,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,2BAA2B,CAAC,KAAK,GAAG,CAAC;QAClE,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,qBAAqB,CAAC,IAAI,qBAAqB,CAAC;QAC/E,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,gBAAgB,CAAC;QACpD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;QACxD,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC;QACrD,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,mBAAmB,CAAC,KAAK,GAAG,CAAC;QAEtD,aAAa;QACb,IAAI,CAAC,QAAQ,EAAE,CAAC;IAClB,CAAC;IAED;;;;;OAKG;IACK,aAAa,CAAC,GAAuB;QAC3C,IAAI,CAAC,GAAG;YAAE,OAAO,QAAQ,CAAC,IAAI,CAAC;QAC/B,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;QAChC,OAAO,KAAK,IAAI,QAAQ;YACtB,CAAC,CAAE,QAAQ,CAAC,KAA8B,CAAc;YACxD,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;IACpB,CAAC;IAED;;;;;;;OAOG;IACK,QAAQ;QACd,kBAAkB;QAClB,gCAAgC;QAChC,gCAAgC;IAClC,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,WAAW;QAChB,MAAM,uBAAuB,GAAG,MAAM,CAAC,qBAAqB,CAAC,IAAI,qBAAqB,CAAC;QACvF,IACE,aAAa,CAAC,QAAQ,KAAK,IAAI;YAC/B,aAAa,CAAC,QAAQ,CAAC,sBAAsB,KAAK,uBAAuB,EACzE,CAAC;YACD,aAAa,CAAC,QAAQ,GAAG,IAAI,CAAC;QAChC,CAAC;QAED,IAAI,aAAa,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;YACpC,aAAa,CAAC,QAAQ,GAAG,IAAI,aAAa,EAAE,CAAC;QAC/C,CAAC;QACD,OAAO,aAAa,CAAC,QAAQ,CAAC;IAChC,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,eAAe;QACpB,aAAa,CAAC,QAAQ,GAAG,IAAI,CAAC;IAChC,CAAC"}
1
+ {"version":3,"file":"config-service.js","sourceRoot":"","sources":["../../../src/config/config-service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE9C;;GAEG;AACH,SAAS,MAAM,CAAC,GAAW;IACzB,IAAI,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QAClD,OAAO,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;GAKG;AACH,MAAM,OAAO,aAAa;IAChB,MAAM,CAAC,QAAQ,GAAyB,IAAI,CAAC;IAErD,+DAA+D;IACtD,cAAc,CAAU;IAEjC,uCAAuC;IAC9B,gBAAgB,CAAS;IAElC,mCAAmC;IAC1B,sBAAsB,CAAS;IAExC,oBAAoB;IACX,QAAQ,CAAW;IAE5B,mEAAmE;IAC1D,kBAAkB,CAAuB;IAElD,6BAA6B;IACpB,gBAAgB,CAAgB;IAEzC,qDAAqD;IAC5C,UAAU,CAAU;IAE7B;;OAEG;IACH;QACE,4BAA4B;QAC5B,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,2BAA2B,CAAC,KAAK,GAAG,CAAC;QAClE,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,qBAAqB,CAAC,IAAI,qBAAqB,CAAC;QAC/E,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,gBAAgB,CAAC;QACpD,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;QAC/F,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,kBAAkB,IAAI,QAAQ,CAAC,IAAI,CAAC;QACzD,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC;QACrD,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,mBAAmB,CAAC,KAAK,GAAG,CAAC;QAEtD,aAAa;QACb,IAAI,CAAC,QAAQ,EAAE,CAAC;IAClB,CAAC;IAED;;;;;OAKG;IACK,aAAa,CAAC,GAAuB;QAC3C,IAAI,CAAC,GAAG;YAAE,OAAO,SAAS,CAAC;QAC3B,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;QAChC,OAAO,KAAK,IAAI,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACrD,CAAC,CAAE,QAAQ,CAAC,KAA8B,CAAc;YACxD,CAAC,CAAC,SAAS,CAAC;IAChB,CAAC;IAED;;;;;;;OAOG;IACK,QAAQ;QACd,kBAAkB;QAClB,gCAAgC;QAChC,gCAAgC;IAClC,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,WAAW;QAChB,MAAM,uBAAuB,GAAG,MAAM,CAAC,qBAAqB,CAAC,IAAI,qBAAqB,CAAC;QACvF,IACE,aAAa,CAAC,QAAQ,KAAK,IAAI;YAC/B,aAAa,CAAC,QAAQ,CAAC,sBAAsB,KAAK,uBAAuB,EACzE,CAAC;YACD,aAAa,CAAC,QAAQ,GAAG,IAAI,CAAC;QAChC,CAAC;QAED,IAAI,aAAa,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;YACpC,aAAa,CAAC,QAAQ,GAAG,IAAI,aAAa,EAAE,CAAC;QAC/C,CAAC;QACD,OAAO,aAAa,CAAC,QAAQ,CAAC;IAChC,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,eAAe;QACpB,aAAa,CAAC,QAAQ,GAAG,IAAI,CAAC;IAChC,CAAC"}
@@ -13,29 +13,6 @@ type CompletionDocument = {
13
13
  tokens: readonly any[];
14
14
  ast: any;
15
15
  } & Omit<ResolvableDocument, 'ast'>;
16
- type Coord = {
17
- readonly line: number;
18
- readonly col: number;
19
- };
20
- /**
21
- * 光标紧跟在 `recv.` 的点之后时,返回接收者(可为点分路径)的起止位置;否则 null。
22
- * 位置为 token 坐标(1 基,end 不含)。
23
- */
24
- export declare function receiverBeforeDot(tokens: readonly any[], pos: {
25
- line: number;
26
- character: number;
27
- }): {
28
- start: Coord;
29
- end: Coord;
30
- } | null;
31
- /**
32
- * `x.` 之后的字段补全(ADR 0051 §5:FIELD_REF 按接收者类型)。接收者类型取 R2 的 §4 显式声明规则;
33
- * 语法不完整(R2 已跳过)、接收者类型未知或不是源码 Data 时返回 null,由普通补全接管。
34
- */
35
- export declare function fieldCompletions(entry: CompletionDocument, pos: {
36
- line: number;
37
- character: number;
38
- }): CompletionItem[] | null;
39
16
  /** 构造表达式中光标所在的字段名位置:构造的类型写法与此前已赋值的字段写法。 */
40
17
  export interface ConstructSite {
41
18
  readonly typeName: string;
@@ -1 +1 @@
1
- {"version":3,"file":"completion.d.ts","sourceRoot":"","sources":["../../../src/lsp/completion.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"completion.d.ts","sourceRoot":"","sources":["../../../src/lsp/completion.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAiB,MAAM,+BAA+B,CAAC;AAO/F,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAGlE,OAAO,KAAK,EAIV,IAAI,IAAI,OAAO,EAChB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAU3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAE1D,gDAAgD;AAChD,KAAK,kBAAkB,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,SAAS,GAAG,EAAE,CAAC;IAAC,GAAG,EAAE,GAAG,CAAA;CAAE,GAAG,IAAI,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC;AAkB/G,2CAA2C;AAC3C,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;CACtC;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,SAAS,GAAG,EAAE,EAAE,GAAG,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,EAAE,OAAO,EAAE,OAAO,GAAG,aAAa,GAAG,IAAI,CA+BpI;AAWD;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,kBAAkB,EACzB,GAAG,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,EACxC,OAAO,EAAE,OAAO,GAAG,SAAS,GAC3B,cAAc,EAAE,GAAG,IAAI,CAazB;AAkBD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,MAAM,EAClB,QAAQ,CAAC,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAC7C,cAAc,EAAE,GAAG,IAAI,CAkBzB;AAED,uDAAuD;AACvD,wBAAgB,oBAAoB,CAClC,SAAS,EAAE;IAAE,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAAA;CAAE,EACzD,MAAM,EAAE;IAAE,YAAY,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IAAC,QAAQ,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GAAG,SAAS,GACrG,cAAc,EAAE,GAAG,IAAI,CAMzB;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,CAuB3C;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GAAG,MAAM,CAElE;AAmID;;;;;GAKG;AACH,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE;IAAE,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAAA;CAAE,EACzD,UAAU,EAAE,CAAC,GAAG,EAAE,YAAY,KAAK,kBAAkB,EACrD,gBAAgB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,GAAG,SAAS,GACtD,IAAI,CA8GN"}
@@ -12,53 +12,9 @@ import { foldKey, nfc } from '../config/lexicons/identifiers/casefold.js';
12
12
  import { SemanticTokenKind } from '../config/token-kind.js';
13
13
  import { EN_US } from '../config/lexicons/en-US.js';
14
14
  import { resolveDocument } from './resolution.js';
15
+ import { localizedField, memberCompletions } from './member-completion.js';
15
16
  const isName = (t) => t?.kind === TokenKind.IDENT || t?.kind === TokenKind.TYPE_IDENT;
16
17
  const sameCoord = (a, b) => !!a && !!b && a.line === b.line && a.col === b.col;
17
- /**
18
- * 光标紧跟在 `recv.` 的点之后时,返回接收者(可为点分路径)的起止位置;否则 null。
19
- * 位置为 token 坐标(1 基,end 不含)。
20
- */
21
- export function receiverBeforeDot(tokens, pos) {
22
- const cursor = { line: pos.line + 1, col: pos.character + 1 };
23
- const dot = tokens.findIndex((t) => t?.kind === TokenKind.DOT && sameCoord(t.end, cursor));
24
- if (dot < 1 || !isName(tokens[dot - 1]))
25
- return null;
26
- let head = dot - 1;
27
- while (tokens[head - 1]?.kind === TokenKind.DOT && isName(tokens[head - 2]))
28
- head -= 2;
29
- return { start: tokens[head].start, end: tokens[dot - 1].end };
30
- }
31
- /** 字段的本地化写法:文档词汇中该 struct 字段的主词条;无本地化时为规范名。 */
32
- function localizedField(vocabulary, struct, canonical) {
33
- const buckets = vocabulary?.fields.get(struct)?.values() ?? [];
34
- for (const list of buckets) {
35
- const term = list.find((c) => c.canonical === canonical && c.source === 'term');
36
- if (term)
37
- return term.written;
38
- }
39
- return canonical;
40
- }
41
- /**
42
- * `x.` 之后的字段补全(ADR 0051 §5:FIELD_REF 按接收者类型)。接收者类型取 R2 的 §4 显式声明规则;
43
- * 语法不完整(R2 已跳过)、接收者类型未知或不是源码 Data 时返回 null,由普通补全接管。
44
- */
45
- export function fieldCompletions(entry, pos) {
46
- const receiver = receiverBeforeDot(entry.tokens, pos);
47
- if (!receiver)
48
- return null;
49
- const res = resolveDocument(entry);
50
- if (!res.complete)
51
- return null;
52
- const typed = res.typedNames.find((t) => sameCoord(t.span.start, receiver.start) && sameCoord(t.span.end, receiver.end));
53
- const typeName = typed?.type.kind === 'TypeName' ? typed.type.name : undefined;
54
- const data = res.core?.decls.find((d) => d.kind === 'Data' && d.name === typeName);
55
- if (!data)
56
- return null;
57
- return data.fields.map((f) => {
58
- const label = localizedField(entry.vocabulary, data.name, f.name);
59
- return { label, kind: CompletionItemKind.Field, ...(label === f.name ? {} : { detail: f.name }) };
60
- });
61
- }
62
18
  const LAYOUT_KINDS = new Set([TokenKind.NEWLINE, TokenKind.INDENT, TokenKind.DEDENT, TokenKind.EOF, TokenKind.COMMENT]);
63
19
  /** 该文档语言中某关键字的全部写法(规范拼写 + 别名,小写) */
64
20
  function keywordWords(lexicon, kind) {
@@ -150,7 +106,7 @@ function fieldCompletionsAt(documents, getOrParse, params, lexicon) {
150
106
  if (!doc)
151
107
  return null;
152
108
  const entry = getOrParse(doc);
153
- return fieldCompletions(entry, params.position) ?? constructFieldCompletions(entry, params.position, lexicon);
109
+ return memberCompletions(entry, params.position, lexicon) ?? constructFieldCompletions(entry, params.position, lexicon);
154
110
  }
155
111
  const CONTROL_ARG = /@control\(\s*"([^"]*)$/;
156
112
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"completion.js","sourceRoot":"","sources":["../../../src/lsp/completion.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"completion.js","sourceRoot":"","sources":["../../../src/lsp/completion.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"diagnostics.d.ts","sourceRoot":"","sources":["../../../src/lsp/diagnostics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"diagnostics.d.ts","sourceRoot":"","sources":["../../../src/lsp/diagnostics.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,10 @@ import { getLspUiTexts } from '../config/lexicons/lsp-ui-texts.js';
12
12
  import { DiagnosticError } from '../diagnostics/diagnostics.js';
13
13
  import { collectSemanticDiagnostics } from './analysis.js';
14
14
  import { ConfigService } from '../config/config-service.js';
15
+ import { createLogger } from '../utils/logger.js';
15
16
  import { invalidateModuleEffectsByUri } from './module_cache.js';
17
+ /** 缓存命中/写入等诊断性日志:debug 级别,LSP 默认(WARN)不发送 */
18
+ const cacheLogger = createLogger('lsp-diagnostics');
16
19
  /** 「缺少模块头」诊断的稳定 code(message 随 locale 本地化,不能用来识别) */
17
20
  export const MISSING_MODULE_HEADER_CODE = 'missing-module-header';
18
21
  let diagnosticConfig = {
@@ -247,8 +250,7 @@ async function coreDiagnostics(core, moduleName, tokens, textDocument, lexicon)
247
250
  if (tcCached && tcCached.version === version && tcCached.moduleName === moduleName) {
248
251
  // 缓存命中,直接使用缓存的类型检查结果
249
252
  tdiags = tcCached.diagnostics;
250
- // Use stderr to avoid corrupting the LSP protocol stream on stdout
251
- console.error(`[TypecheckCache] Cache hit for ${uri} (module: ${moduleName})`);
253
+ cacheLogger.debug(`[TypecheckCache] Cache hit for ${uri} (module: ${moduleName})`);
252
254
  }
253
255
  else {
254
256
  // 缓存未命中或版本不匹配,执行类型检查
@@ -271,8 +273,7 @@ async function coreDiagnostics(core, moduleName, tokens, textDocument, lexicon)
271
273
  // 更新反向依赖图
272
274
  removeFromDependentsMap(uri); // 先清除旧的依赖关系
273
275
  updateDependentsMap(uri, imports);
274
- // Use stderr to avoid corrupting the LSP protocol stream on stdout
275
- console.error(`[TypecheckCache] Cached ${uri} (module: ${moduleName}, typecheck: ${typecheckTime}ms, imports: ${imports.length})`);
276
+ cacheLogger.debug(`[TypecheckCache] Cached ${uri} (module: ${moduleName}, typecheck: ${typecheckTime}ms, imports: ${imports.length})`);
276
277
  }
277
278
  // 转换为 LSP Diagnostic 格式
278
279
  return [...semantic, ...tdiags.map(typecheckDiagToLspDiag)];
@@ -293,8 +294,7 @@ export async function computeDiagnostics(textDocument, getOrParse, lexicon) {
293
294
  // 缓存命中,直接返回
294
295
  const duration = Date.now() - startTime;
295
296
  if (duration > 1) {
296
- // Use stderr to avoid corrupting the LSP protocol stream on stdout
297
- console.error(`[Diagnostics] Cache hit for ${uri} (${duration}ms)`);
297
+ cacheLogger.debug(`[Diagnostics] Cache hit for ${uri} (${duration}ms)`);
298
298
  }
299
299
  return cached.diagnostics;
300
300
  }
@@ -1 +1 @@
1
- {"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../../../src/lsp/diagnostics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../../../src/lsp/diagnostics.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import { LogLevel, type LogSink } from '../utils/logger.js';
2
+ /** `connection.console` 中本模块用到的方法子集,便于测试时替换。 */
3
+ export interface LspConsole {
4
+ error(message: string): void;
5
+ warn(message: string): void;
6
+ info(message: string): void;
7
+ log(message: string): void;
8
+ }
9
+ /** LSP 下的默认最小级别:INFO/DEBUG 不经 window/logMessage 推给客户端。 */
10
+ export declare const LSP_DEFAULT_LOG_LEVEL = LogLevel.WARN;
11
+ /**
12
+ * 构造把 Logger 级别映射到 window/logMessage 类型的落点:
13
+ * ERROR→1、WARN→2、INFO→3、DEBUG→4(经 `connection.console.log`)。
14
+ */
15
+ export declare function createLspLogSink(lspConsole: LspConsole, minLevel: LogLevel): LogSink;
16
+ /**
17
+ * 在 LSP 服务端安装日志落点。最小级别取 ASTER_LOG_LEVEL(兼容 LOG_LEVEL),缺省为 WARN。
18
+ * 返回恢复先前落点的函数。
19
+ */
20
+ export declare function installLspLogSink(lspConsole: LspConsole): () => void;
21
+ //# sourceMappingURL=log-sink.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"log-sink.d.ts","sourceRoot":"","sources":["../../../src/lsp/log-sink.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAkB,KAAK,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAG5E,gDAAgD;AAChD,MAAM,WAAW,UAAU;IACzB,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,0DAA0D;AAC1D,eAAO,MAAM,qBAAqB,gBAAgB,CAAC;AAEnD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAmBpF;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,UAAU,GAAG,MAAM,IAAI,CAGpE"}
@@ -0,0 +1,37 @@
1
+ import { LogLevel, installLogSink } from '../utils/logger.js';
2
+ import { ConfigService } from '../config/config-service.js';
3
+ /** LSP 下的默认最小级别:INFO/DEBUG 不经 window/logMessage 推给客户端。 */
4
+ export const LSP_DEFAULT_LOG_LEVEL = LogLevel.WARN;
5
+ /**
6
+ * 构造把 Logger 级别映射到 window/logMessage 类型的落点:
7
+ * ERROR→1、WARN→2、INFO→3、DEBUG→4(经 `connection.console.log`)。
8
+ */
9
+ export function createLspLogSink(lspConsole, minLevel) {
10
+ return {
11
+ minLevel,
12
+ write(level, line) {
13
+ switch (level) {
14
+ case LogLevel.ERROR:
15
+ lspConsole.error(line);
16
+ return;
17
+ case LogLevel.WARN:
18
+ lspConsole.warn(line);
19
+ return;
20
+ case LogLevel.INFO:
21
+ lspConsole.info(line);
22
+ return;
23
+ default:
24
+ lspConsole.log(line);
25
+ }
26
+ },
27
+ };
28
+ }
29
+ /**
30
+ * 在 LSP 服务端安装日志落点。最小级别取 ASTER_LOG_LEVEL(兼容 LOG_LEVEL),缺省为 WARN。
31
+ * 返回恢复先前落点的函数。
32
+ */
33
+ export function installLspLogSink(lspConsole) {
34
+ const level = ConfigService.getInstance().configuredLogLevel ?? LSP_DEFAULT_LOG_LEVEL;
35
+ return installLogSink(createLspLogSink(lspConsole, level));
36
+ }
37
+ //# sourceMappingURL=log-sink.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"log-sink.js","sourceRoot":"","sources":["../../../src/lsp/log-sink.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAgB,MAAM,oBAAoB,CAAC;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAU5D,0DAA0D;AAC1D,MAAM,CAAC,MAAM,qBAAqB,GAAG,QAAQ,CAAC,IAAI,CAAC;AAEnD;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,UAAsB,EAAE,QAAkB;IACzE,OAAO;QACL,QAAQ;QACR,KAAK,CAAC,KAAK,EAAE,IAAI;YACf,QAAQ,KAAK,EAAE,CAAC;gBACd,KAAK,QAAQ,CAAC,KAAK;oBACjB,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBACvB,OAAO;gBACT,KAAK,QAAQ,CAAC,IAAI;oBAChB,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACtB,OAAO;gBACT,KAAK,QAAQ,CAAC,IAAI;oBAChB,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACtB,OAAO;gBACT;oBACE,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACzB,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,UAAsB;IACtD,MAAM,KAAK,GAAG,aAAa,CAAC,WAAW,EAAE,CAAC,kBAAkB,IAAI,qBAAqB,CAAC;IACtF,OAAO,cAAc,CAAC,gBAAgB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;AAC7D,CAAC"}
@@ -0,0 +1,59 @@
1
+ /**
2
+ * 成员访问(`x.` / `x.前缀`)的字段补全(ADR 0051 §5:FIELD_REF 按接收者类型)。
3
+ *
4
+ * ★生产复测(cloud#660 第 5 轮)的三类失败都出在「接收者类型从哪来」:
5
+ * - 行中 `fahrer.` 后还有 ` plus 1.`、zh 行尾 `如果 司机.`:正在输入的这一行让文档语法不完整,
6
+ * 解析器丢弃了所在的声明,R2 也被整体跳过,于是拿不到接收者类型;
7
+ * - `d.a`:旧实现只认「光标紧跟点号」,点号后已输入的前缀直接判为非成员位置。
8
+ * 现在的做法:
9
+ * 1. 按 token 识别成员位置,光标可以在点号后的名字前缀里,返回前缀的替换范围;
10
+ * 2. 依次尝试原文与几份修补过的文本(去掉 `.前缀`、只去前缀、把当前行换成 `返回 接收者.`),
11
+ * 对每份都运行 R1 → lower → R2(不要求全文语法完整,见 resolution.ts resolveForTyping),
12
+ * 取接收者位置的 §4 静态类型;第一份能定出源码 Data 的即为结果。
13
+ * 修补只用于推断类型,不改文档、不发布诊断。
14
+ */
15
+ import type { CompletionItem } from 'vscode-languageserver/node.js';
16
+ import type { Lexicon } from '../config/lexicons/types.js';
17
+ import type { VocabularyScopes } from '../config/lexicons/identifiers/scopes.js';
18
+ import type { ResolvableDocument } from './resolution.js';
19
+ type Coord = {
20
+ readonly line: number;
21
+ readonly col: number;
22
+ };
23
+ /** 成员补全所需的文档快照:原文、原文坐标的 tokens 与名称解析输入。 */
24
+ export type MemberDocument = {
25
+ readonly text: string;
26
+ readonly tokens: readonly any[];
27
+ } & ResolvableDocument;
28
+ /** 光标处的成员访问(token 坐标:1 基,end 不含)。 */
29
+ export interface MemberAccess {
30
+ /** 接收者(可为点分路径)的起止位置 */
31
+ readonly receiver: {
32
+ readonly start: Coord;
33
+ readonly end: Coord;
34
+ };
35
+ /** 点号的结束位置,即已输入前缀的起点 */
36
+ readonly dotEnd: Coord;
37
+ /** 点号后紧邻的名字的结束位置;没有名字时等于 dotEnd */
38
+ readonly memberEnd: Coord;
39
+ }
40
+ /**
41
+ * 光标是否位于成员访问的成员名位置:紧跟 `recv.` 的点号之后,或在点号后紧邻的名字(已输入前缀)之中。
42
+ * 接收者必须是名字(数字 `1.` 不算)。
43
+ */
44
+ export declare function memberAccessAt(tokens: readonly any[], pos: {
45
+ line: number;
46
+ character: number;
47
+ }): MemberAccess | null;
48
+ /** 字段的本地化写法:文档词汇中该 struct 字段的主词条;无本地化时为规范名。 */
49
+ export declare function localizedField(vocabulary: VocabularyScopes | undefined, struct: string, canonical: string): string;
50
+ /**
51
+ * 成员位置的字段补全:只列接收者类型(源码 Data)的字段,按文档词汇给本地化写法;
52
+ * 每项带 textEdit,替换点号之后到光标的已输入前缀。不在成员位置或类型未知时返回 null。
53
+ */
54
+ export declare function memberCompletions(entry: MemberDocument, pos: {
55
+ line: number;
56
+ character: number;
57
+ }, lexicon: Lexicon | undefined): CompletionItem[] | null;
58
+ export {};
59
+ //# sourceMappingURL=member-completion.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"member-completion.d.ts","sourceRoot":"","sources":["../../../src/lsp/member-completion.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAKpE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AAIjF,OAAO,KAAK,EAAsB,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAE9E,KAAK,KAAK,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC;AAE7D,2CAA2C;AAC3C,MAAM,MAAM,cAAc,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,EAAE,CAAA;CAAE,GAAG,kBAAkB,CAAC;AAE7G,qCAAqC;AACrC,MAAM,WAAW,YAAY;IAC3B,uBAAuB;IACvB,QAAQ,CAAC,QAAQ,EAAE;QAAE,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;QAAC,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAA;KAAE,CAAC;IAClE,wBAAwB;IACxB,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC;IACvB,mCAAmC;IACnC,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC;CAC3B;AAOD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,SAAS,GAAG,EAAE,EAAE,GAAG,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAAG,YAAY,GAAG,IAAI,CAcpH;AAED,+CAA+C;AAC/C,wBAAgB,cAAc,CAAC,UAAU,EAAE,gBAAgB,GAAG,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAOlH;AAoDD;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,cAAc,EACrB,GAAG,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,EACxC,OAAO,EAAE,OAAO,GAAG,SAAS,GAC3B,cAAc,EAAE,GAAG,IAAI,CAUzB"}