@phoenix-wing/kt-codegen 0.6.4 → 0.6.6

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 (48) hide show
  1. package/README.md +3 -0
  2. package/dist/KtCodegenGeneratorVersion.d.ts +9 -0
  3. package/dist/KtCodegenGeneratorVersion.d.ts.map +1 -0
  4. package/dist/KtCodegenGeneratorVersion.js +12 -0
  5. package/dist/KtCodegenGeneratorVersion.js.map +1 -0
  6. package/dist/KtCodegenTableCore.d.ts +2 -2
  7. package/dist/KtCodegenTableCore.d.ts.map +1 -1
  8. package/dist/KtCodegenTableCore.js +6 -4
  9. package/dist/KtCodegenTableCore.js.map +1 -1
  10. package/dist/index.d.ts +1 -0
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/index.js +1 -0
  13. package/dist/index.js.map +1 -1
  14. package/dist/renderer/caa-dialog-family.js +3 -3
  15. package/dist/renderer/caa-dialog-family.js.map +1 -1
  16. package/dist/renderer/cpp-parameter-family.d.ts.map +1 -1
  17. package/dist/renderer/cpp-parameter-family.js +35 -5
  18. package/dist/renderer/cpp-parameter-family.js.map +1 -1
  19. package/dist/table/KtCodegenTable.d.ts +1 -1
  20. package/dist/table/KtCodegenTable.d.ts.map +1 -1
  21. package/dist/table/KtCodegenTable.js +18 -4
  22. package/dist/table/KtCodegenTable.js.map +1 -1
  23. package/dist/table/KtCodegenTableStyle.d.ts.map +1 -1
  24. package/dist/table/KtCodegenTableStyle.js +8 -0
  25. package/dist/table/KtCodegenTableStyle.js.map +1 -1
  26. package/dist/table/KtCodegenTableViewModel.d.ts +1 -1
  27. package/dist/table/KtCodegenTableViewModel.d.ts.map +1 -1
  28. package/dist/table/KtCodegenTableViewModel.js +5 -5
  29. package/dist/table/KtCodegenTableViewModel.js.map +1 -1
  30. package/dist/ui/KtCodegenBlockHeader.d.ts +3 -0
  31. package/dist/ui/KtCodegenBlockHeader.d.ts.map +1 -0
  32. package/dist/ui/KtCodegenBlockHeader.js +42 -0
  33. package/dist/ui/KtCodegenBlockHeader.js.map +1 -0
  34. package/dist/ui/KtCodegenControlPanel.d.ts +10 -0
  35. package/dist/ui/KtCodegenControlPanel.d.ts.map +1 -1
  36. package/dist/ui/KtCodegenControlPanel.js +68 -7
  37. package/dist/ui/KtCodegenControlPanel.js.map +1 -1
  38. package/dist/ui/KtCodegenPrimaryPanel.d.ts.map +1 -1
  39. package/dist/ui/KtCodegenPrimaryPanel.js +14 -3
  40. package/dist/ui/KtCodegenPrimaryPanel.js.map +1 -1
  41. package/dist/ui/KtCodegenPrimaryUiState.d.ts +2 -2
  42. package/dist/ui/KtCodegenPrimaryUiState.d.ts.map +1 -1
  43. package/dist/ui/KtCodegenPrimaryUiState.js.map +1 -1
  44. package/doc/KtCodegenTable/345/270/203/345/261/200/344/270/216/346/212/230/345/217/240/345/245/221/347/272/246.md +6 -0
  45. package/doc//346/231/256/351/200/232C++/345/217/202/346/225/260/345/235/227/350/277/201/347/247/273.md +6 -2
  46. package/package.json +1 -1
  47. package/src/index.ts +1 -0
  48. package/tests/fixtures/contracts/codegen-host-contract-v1.json +2 -2
@@ -36,11 +36,13 @@ flowchart LR
36
36
 
37
37
  - `id === 1` 使用 `: `,其余 Item 使用 `, `;不按数组位置自动修正;
38
38
  - 默认值复用 Core 中已经 golden 化的字符串、分号、毫米和角度规则;
39
- - 旧方法对 `m_CurrentControlEnd.Trim()`,所以该块的 `clang-format on` 和 End 标记不保留 Start 缩进。新 Renderer 有意保留这一历史输出。
39
+ - 旧方法对 `m_CurrentControlEnd.Trim()`,所以历史输出把 `clang-format on` 和 End 标记写到第 1 列。2026-09-10 用户授权以规则 `1.0.1` 修正这一明确缺陷:读取同一源码快照中 End 之后的第一条非空、非纯注释语义行,两条结束标记与该行对齐;后续初始化项和只剩 `{` 分别按各自真实缩进处理,不统一套用 Start 缩进。
40
+ - 空行、单行注释和跨行块注释不决定结束标记缩进;保留空格与 tab 原样。无后续语义行时保留现有 End 缩进,不猜测函数体。只替换已有安全区域,不改 End 后的用户初始化项、注释或函数体;Parser/Analyze/Apply 的安全边界不变。
40
41
 
41
42
  ### 参数声明
42
43
 
43
- - 生成旧版 `@app Kt Auto Code` `@version 5.0.0, (2024)`;
44
+ - 保留 `@app Kt Auto Code`。旧迁移基线使用 `@version 5.0.0, (2024)`,独立系列从 `1.0.0` 开始,当前输出 `@codegen-rules-version 1.0.1`,由公开的 `KT_CODEGEN_GENERATOR_VERSION` 常量生成;这是独立的生成规则版本,不是旧 Windows App、Wing/npm、插件、输入 JSON 或 Plan schema 版本;
45
+ - 旧注释仍可被控制符扫描正常读取,不批量改写已有源码;新注释只随后续显式生成与 Apply 写入。规则变化须同步使消费者的旧预检缓存失效,不能仅更新注释;
44
46
  - 按 `CodeAppendNotes(item, 0)` 输出 `brief`、可选 `author/date/note` 和 `id`;
45
47
  - 相邻 Item 声明之间保留一个空行。
46
48
 
@@ -64,6 +66,8 @@ flowchart LR
64
66
  - [`cpp-parameter-blocks.hpp`](../tests/fixtures/source/cpp-parameter-blocks.hpp) 提供四块旧源码;
65
67
  - [`expected/cpp-parameter`](../tests/fixtures/expected/cpp-parameter) 保存逐块可人工审阅的 golden 文本;
66
68
  - 测试另外覆盖 CRLF、`CATISpecObject_var`、常规指针和首字符星号。
69
+ - [`constructor-boundary.test.ts`](../tests/constructor-boundary.test.ts) 覆盖两组最小完整输出、LF/CRLF、重复生成、注释间隔、tab、缺少后续行及区域外文本保留。此次仅更新声明版本戳 golden 和跨 Host fixture 对应声明内容 SHA-256;其他旧 golden 不变。
70
+ - 本地消费候选已用 macOS CppTools clang-format 23.1.0 和来源工程的 LLVM/4 空格样式对上述两组 LF/CRLF 生成结果做两次格式化:完整文本均未变化。未执行 Windows clang-format;Windows 版本、执行参数及最终样式来源仍应由消费工程记录,不把本机结果宣传为所有格式化环境保证。
67
71
 
68
72
  ## 当前边界
69
73
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@phoenix-wing/kt-codegen",
3
- "version": "0.6.4",
3
+ "version": "0.6.6",
4
4
  "description": "CAA、Qt 与普通 C++ 的参数驱动代码生成核心",
5
5
  "type": "module",
6
6
  "sideEffects": false,
package/src/index.ts CHANGED
@@ -9,6 +9,7 @@ export * from "./KtCodegenApply.js";
9
9
  export * from "./KtCodegenBlockPresentation.js";
10
10
  export * from "./KtCodegenController.js";
11
11
  export * from "./KtCodegenCore.js";
12
+ export * from "./KtCodegenGeneratorVersion.js";
12
13
  export * from "./KtCodegenItem.js";
13
14
  export * from "./KtCodegenMarker.js";
14
15
  export * from "./KtCodegenOptions.js";
@@ -226,8 +226,8 @@
226
226
  "target": "cpp.parameter",
227
227
  "blockKey": "PARAM DECLARATION",
228
228
  "classId": "KtCourseGuardItem",
229
- "contentSha256": "de8ed1746a1c1dea79b93aea829c5c44ab479dc44c7e4aa572c275f8dbf8112e",
230
- "contentUtf8Bytes": 525,
229
+ "contentSha256": "a9f714c3ff2894482c44c6902cb772faa8f3284b4d048e0d4977b1e38998f585",
230
+ "contentUtf8Bytes": 531,
231
231
  "sourceParameters": [
232
232
  "MachineId",
233
233
  "GuardLength"