@lesliechan721/aw 0.1.0-beta.5 → 0.1.0-beta.50

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 (566) hide show
  1. package/dist/authoring/assets/aw-config.mjs +100 -501
  2. package/dist/authoring/assets/aw-config.mjs.map +1 -1
  3. package/dist/authoring/assets/aw-runtime-config.d.mts +13 -0
  4. package/dist/authoring/assets/aw-runtime-config.mjs +199 -0
  5. package/dist/authoring/assets/aw-runtime-config.mjs.map +1 -0
  6. package/dist/authoring/scripts/add-skill.mjs +4 -4
  7. package/dist/authoring/scripts/add-skill.mjs.map +1 -1
  8. package/dist/authoring/scripts/init-plugin.mjs +67 -97
  9. package/dist/authoring/scripts/init-plugin.mjs.map +1 -1
  10. package/dist/authoring/scripts/lib/plugin-root.mjs +4 -4
  11. package/dist/authoring/scripts/lib/plugin-root.mjs.map +1 -1
  12. package/dist/authoring/scripts/lib/plugin-version-check.d.mts +1 -0
  13. package/dist/authoring/scripts/lib/plugin-version-check.mjs +229 -8
  14. package/dist/authoring/scripts/lib/plugin-version-check.mjs.map +1 -1
  15. package/dist/authoring/scripts/lib/skill-scaffold.d.mts +77 -90
  16. package/dist/authoring/scripts/lib/skill-scaffold.mjs +99 -120
  17. package/dist/authoring/scripts/lib/skill-scaffold.mjs.map +1 -1
  18. package/dist/authoring/scripts/plugin-status.mjs +8 -11
  19. package/dist/authoring/scripts/plugin-status.mjs.map +1 -1
  20. package/dist/authoring/scripts/remove-plugin.mjs +3 -2
  21. package/dist/authoring/scripts/remove-plugin.mjs.map +1 -1
  22. package/dist/authoring/scripts/validate-plugin.mjs +346 -1131
  23. package/dist/authoring/scripts/validate-plugin.mjs.map +1 -1
  24. package/dist/scripts/aw-skill-eval-materializer.d.ts +26 -0
  25. package/dist/scripts/aw-skill-eval-materializer.js +306 -0
  26. package/dist/scripts/aw-skill-eval-materializer.js.map +1 -0
  27. package/dist/scripts/bundle-plugins.d.ts +1 -0
  28. package/dist/scripts/bundle-plugins.js +20 -5
  29. package/dist/scripts/bundle-plugins.js.map +1 -1
  30. package/dist/scripts/plugin-staging.d.ts +7 -9
  31. package/dist/scripts/plugin-staging.js +18 -29
  32. package/dist/scripts/plugin-staging.js.map +1 -1
  33. package/dist/scripts/test-plugin-scripts.d.ts +2 -0
  34. package/dist/scripts/test-plugin-scripts.js +47 -76
  35. package/dist/scripts/test-plugin-scripts.js.map +1 -1
  36. package/dist/scripts/test-workers.d.mts +24 -0
  37. package/dist/scripts/test-workers.mjs +59 -0
  38. package/dist/scripts/test-workers.mjs.map +1 -0
  39. package/dist/src/adapters/helpers.js +2 -2
  40. package/dist/src/adapters/helpers.js.map +1 -1
  41. package/dist/src/authoring/workspace-commands.d.ts +17 -1
  42. package/dist/src/authoring/workspace-commands.js +21 -4
  43. package/dist/src/authoring/workspace-commands.js.map +1 -1
  44. package/dist/src/commands/aw-capabilities.d.ts +78 -0
  45. package/dist/src/commands/aw-capabilities.js +264 -0
  46. package/dist/src/commands/aw-capabilities.js.map +1 -0
  47. package/dist/src/commands/catalog-dev-source.d.ts +154 -0
  48. package/dist/src/commands/catalog-dev-source.js +655 -0
  49. package/dist/src/commands/catalog-dev-source.js.map +1 -0
  50. package/dist/src/commands/catalog-generation.d.ts +21 -0
  51. package/dist/src/commands/catalog-generation.js +9 -0
  52. package/dist/src/commands/catalog-generation.js.map +1 -0
  53. package/dist/src/commands/catalog-publication-inspection.d.ts +71 -30
  54. package/dist/src/commands/catalog-publication-inspection.js +475 -63
  55. package/dist/src/commands/catalog-publication-inspection.js.map +1 -1
  56. package/dist/src/commands/catalog-publication-journal.d.ts +68 -0
  57. package/dist/src/commands/catalog-publication-journal.js +292 -0
  58. package/dist/src/commands/catalog-publication-journal.js.map +1 -0
  59. package/dist/src/commands/catalog-publication-target.d.ts +18 -0
  60. package/dist/src/commands/catalog-publication-target.js +95 -0
  61. package/dist/src/commands/catalog-publication-target.js.map +1 -0
  62. package/dist/src/commands/catalog-publish.d.ts +73 -15
  63. package/dist/src/commands/catalog-publish.js +701 -212
  64. package/dist/src/commands/catalog-publish.js.map +1 -1
  65. package/dist/src/commands/catalog-source.d.ts +60 -22
  66. package/dist/src/commands/catalog-source.js +311 -91
  67. package/dist/src/commands/catalog-source.js.map +1 -1
  68. package/dist/src/commands/catalog-status.d.ts +18 -22
  69. package/dist/src/commands/catalog-status.js +81 -115
  70. package/dist/src/commands/catalog-status.js.map +1 -1
  71. package/dist/src/commands/catalog-store.d.ts +104 -0
  72. package/dist/src/commands/catalog-store.js +685 -0
  73. package/dist/src/commands/catalog-store.js.map +1 -0
  74. package/dist/src/commands/catalog-workspace-resolution.d.ts +13 -0
  75. package/dist/src/commands/catalog-workspace-resolution.js +42 -0
  76. package/dist/src/commands/catalog-workspace-resolution.js.map +1 -0
  77. package/dist/src/commands/console.js +28 -17
  78. package/dist/src/commands/console.js.map +1 -1
  79. package/dist/src/commands/dependency-operation-plan.d.ts +52 -15
  80. package/dist/src/commands/dependency-operation-plan.js +289 -7
  81. package/dist/src/commands/dependency-operation-plan.js.map +1 -1
  82. package/dist/src/commands/init.d.ts +5 -11
  83. package/dist/src/commands/init.js +30 -51
  84. package/dist/src/commands/init.js.map +1 -1
  85. package/dist/src/commands/offline-cleanup-evidence.d.ts +67 -0
  86. package/dist/src/commands/offline-cleanup-evidence.js +181 -0
  87. package/dist/src/commands/offline-cleanup-evidence.js.map +1 -0
  88. package/dist/src/commands/operation-plan.d.ts +146 -0
  89. package/dist/src/commands/operation-plan.js +71 -0
  90. package/dist/src/commands/operation-plan.js.map +1 -0
  91. package/dist/src/commands/operation-planner.d.ts +46 -0
  92. package/dist/src/commands/operation-planner.js +141 -0
  93. package/dist/src/commands/operation-planner.js.map +1 -0
  94. package/dist/src/commands/options.d.ts +9 -7
  95. package/dist/src/commands/options.js +83 -21
  96. package/dist/src/commands/options.js.map +1 -1
  97. package/dist/src/commands/plugin-capabilities.js +23 -3
  98. package/dist/src/commands/plugin-capabilities.js.map +1 -1
  99. package/dist/src/commands/rebuild-command.d.ts +77 -31
  100. package/dist/src/commands/rebuild-command.js +4862 -729
  101. package/dist/src/commands/rebuild-command.js.map +1 -1
  102. package/dist/src/commands/rebuild-integration.d.ts +131 -21
  103. package/dist/src/commands/rebuild-integration.js +2866 -1339
  104. package/dist/src/commands/rebuild-integration.js.map +1 -1
  105. package/dist/src/commands/rebuild-operations.d.ts +58 -30
  106. package/dist/src/commands/rebuild-operations.js +260 -319
  107. package/dist/src/commands/rebuild-operations.js.map +1 -1
  108. package/dist/src/commands/reconcile-operation-plan.d.ts +28 -0
  109. package/dist/src/commands/reconcile-operation-plan.js +47 -0
  110. package/dist/src/commands/reconcile-operation-plan.js.map +1 -0
  111. package/dist/src/commands/review-inspection.d.ts +228 -0
  112. package/dist/src/commands/review-inspection.js +1341 -0
  113. package/dist/src/commands/review-inspection.js.map +1 -0
  114. package/dist/src/commands/review-preparation.d.ts +49 -0
  115. package/dist/src/commands/review-preparation.js +427 -0
  116. package/dist/src/commands/review-preparation.js.map +1 -0
  117. package/dist/src/commands/runtime.d.ts +1 -5
  118. package/dist/src/commands/runtime.js +24 -50
  119. package/dist/src/commands/runtime.js.map +1 -1
  120. package/dist/src/commands/skill-eval.d.ts +39 -0
  121. package/dist/src/commands/skill-eval.js +400 -0
  122. package/dist/src/commands/skill-eval.js.map +1 -0
  123. package/dist/src/commands/status-v6.d.ts +279 -0
  124. package/dist/src/commands/status-v6.js +2787 -0
  125. package/dist/src/commands/status-v6.js.map +1 -0
  126. package/dist/src/commands/sync-command.d.ts +40 -0
  127. package/dist/src/commands/sync-command.js +250 -0
  128. package/dist/src/commands/sync-command.js.map +1 -0
  129. package/dist/src/commands/wizard.d.ts +8 -5
  130. package/dist/src/commands/wizard.js +6 -4
  131. package/dist/src/commands/wizard.js.map +1 -1
  132. package/dist/src/commands/write-commands.d.ts +9 -3
  133. package/dist/src/commands/write-commands.js +127 -31
  134. package/dist/src/commands/write-commands.js.map +1 -1
  135. package/dist/src/constants.d.ts +7 -1
  136. package/dist/src/constants.js +7 -1
  137. package/dist/src/constants.js.map +1 -1
  138. package/dist/src/eval/manifest-v1.d.ts +71 -0
  139. package/dist/src/eval/manifest-v1.js +370 -0
  140. package/dist/src/eval/manifest-v1.js.map +1 -0
  141. package/dist/src/generators/local-plugin.d.ts +5 -1
  142. package/dist/src/generators/local-plugin.js +236 -109
  143. package/dist/src/generators/local-plugin.js.map +1 -1
  144. package/dist/src/index.d.ts +10 -4
  145. package/dist/src/index.js +1793 -486
  146. package/dist/src/index.js.map +1 -1
  147. package/dist/src/output/command-receipt.d.ts +43 -46
  148. package/dist/src/output/command-receipt.js +256 -80
  149. package/dist/src/output/command-receipt.js.map +1 -1
  150. package/dist/src/output/model.d.ts +3 -44
  151. package/dist/src/output/model.js +1 -144
  152. package/dist/src/output/model.js.map +1 -1
  153. package/dist/src/output/rebuild-progress.js +1 -13
  154. package/dist/src/output/rebuild-progress.js.map +1 -1
  155. package/dist/src/portable/commands.d.ts +46 -7
  156. package/dist/src/portable/commands.js +349 -37
  157. package/dist/src/portable/commands.js.map +1 -1
  158. package/dist/src/portable/materializer.d.ts +17 -4
  159. package/dist/src/portable/materializer.js +179 -41
  160. package/dist/src/portable/materializer.js.map +1 -1
  161. package/dist/src/portable/skills-cli.d.ts +15 -7
  162. package/dist/src/portable/skills-cli.js +74 -20
  163. package/dist/src/portable/skills-cli.js.map +1 -1
  164. package/dist/src/review/eval-source-input.d.ts +43 -0
  165. package/dist/src/review/eval-source-input.js +207 -0
  166. package/dist/src/review/eval-source-input.js.map +1 -0
  167. package/dist/src/review/review-profile.d.ts +17 -0
  168. package/dist/src/review/review-profile.js +234 -0
  169. package/dist/src/review/review-profile.js.map +1 -0
  170. package/dist/src/review/review-selection.d.ts +30 -0
  171. package/dist/src/review/review-selection.js +527 -0
  172. package/dist/src/review/review-selection.js.map +1 -0
  173. package/dist/src/review/review-types.d.ts +68 -0
  174. package/dist/src/review/review-types.js +16 -0
  175. package/dist/src/review/review-types.js.map +1 -0
  176. package/dist/src/review/skill-materialization.d.ts +13 -0
  177. package/dist/src/review/skill-materialization.js +75 -0
  178. package/dist/src/review/skill-materialization.js.map +1 -0
  179. package/dist/src/review/source-binding.d.ts +183 -0
  180. package/dist/src/review/source-binding.js +708 -0
  181. package/dist/src/review/source-binding.js.map +1 -0
  182. package/dist/src/tui/catalog-freshness.d.ts +1 -0
  183. package/dist/src/tui/catalog-freshness.js +2 -0
  184. package/dist/src/tui/catalog-freshness.js.map +1 -0
  185. package/dist/src/tui/catalog-generation.d.ts +21 -0
  186. package/dist/src/tui/catalog-generation.js +156 -0
  187. package/dist/src/tui/catalog-generation.js.map +1 -0
  188. package/dist/src/tui/catalog-sources/projection.d.ts +4 -0
  189. package/dist/src/tui/catalog-sources/projection.js +17 -0
  190. package/dist/src/tui/catalog-sources/projection.js.map +1 -0
  191. package/dist/src/tui/catalog-sources/review.d.ts +3 -0
  192. package/dist/src/tui/catalog-sources/review.js +13 -0
  193. package/dist/src/tui/catalog-sources/review.js.map +1 -0
  194. package/dist/src/tui/catalog-sources/screens.d.ts +12 -0
  195. package/dist/src/tui/catalog-sources/screens.js +40 -0
  196. package/dist/src/tui/catalog-sources/screens.js.map +1 -0
  197. package/dist/src/tui/catalog-sources/session.d.ts +32 -0
  198. package/dist/src/tui/catalog-sources/session.js +300 -0
  199. package/dist/src/tui/catalog-sources/session.js.map +1 -0
  200. package/dist/src/tui/catalog-sources/types.d.ts +54 -0
  201. package/dist/src/tui/catalog-sources/types.js +2 -0
  202. package/dist/src/tui/catalog-sources/types.js.map +1 -0
  203. package/dist/src/tui/catalog-store-task.d.ts +16 -0
  204. package/dist/src/tui/catalog-store-task.js +19 -0
  205. package/dist/src/tui/catalog-store-task.js.map +1 -0
  206. package/dist/src/tui/clipboard.d.ts +13 -0
  207. package/dist/src/tui/clipboard.js +95 -0
  208. package/dist/src/tui/clipboard.js.map +1 -0
  209. package/dist/src/tui/components.d.ts +110 -3
  210. package/dist/src/tui/components.js +183 -36
  211. package/dist/src/tui/components.js.map +1 -1
  212. package/dist/src/tui/config-array-draft.d.ts +29 -0
  213. package/dist/src/tui/config-array-draft.js +48 -0
  214. package/dist/src/tui/config-array-draft.js.map +1 -0
  215. package/dist/src/tui/config-leaf-editor.d.ts +16 -0
  216. package/dist/src/tui/config-leaf-editor.js +206 -0
  217. package/dist/src/tui/config-leaf-editor.js.map +1 -0
  218. package/dist/src/tui/config-value-presentation.d.ts +20 -0
  219. package/dist/src/tui/config-value-presentation.js +104 -0
  220. package/dist/src/tui/config-value-presentation.js.map +1 -0
  221. package/dist/src/tui/console-app-v4.d.ts +14 -4
  222. package/dist/src/tui/console-app-v4.js +8941 -1872
  223. package/dist/src/tui/console-app-v4.js.map +1 -1
  224. package/dist/src/tui/content-item-card.d.ts +13 -0
  225. package/dist/src/tui/content-item-card.js +51 -0
  226. package/dist/src/tui/content-item-card.js.map +1 -0
  227. package/dist/src/tui/controller-runtime.d.ts +10 -2
  228. package/dist/src/tui/controller-runtime.js +3211 -388
  229. package/dist/src/tui/controller-runtime.js.map +1 -1
  230. package/dist/src/tui/controller.d.ts +615 -45
  231. package/dist/src/tui/controller.js +3558 -768
  232. package/dist/src/tui/controller.js.map +1 -1
  233. package/dist/src/tui/dependency-graph-view.d.ts +39 -0
  234. package/dist/src/tui/dependency-graph-view.js +121 -0
  235. package/dist/src/tui/dependency-graph-view.js.map +1 -0
  236. package/dist/src/tui/dependency-graph.d.ts +81 -0
  237. package/dist/src/tui/dependency-graph.js +452 -0
  238. package/dist/src/tui/dependency-graph.js.map +1 -0
  239. package/dist/src/tui/diagnostic-projection.d.ts +23 -0
  240. package/dist/src/tui/diagnostic-projection.js +567 -0
  241. package/dist/src/tui/diagnostic-projection.js.map +1 -0
  242. package/dist/src/tui/diagnostics.d.ts +3 -3
  243. package/dist/src/tui/diagnostics.js +14 -2
  244. package/dist/src/tui/diagnostics.js.map +1 -1
  245. package/dist/src/tui/entity-cards.d.ts +55 -0
  246. package/dist/src/tui/entity-cards.js +220 -0
  247. package/dist/src/tui/entity-cards.js.map +1 -0
  248. package/dist/src/tui/glossary.d.ts +23 -0
  249. package/dist/src/tui/glossary.js +42 -0
  250. package/dist/src/tui/glossary.js.map +1 -0
  251. package/dist/src/tui/index.d.ts +6 -1
  252. package/dist/src/tui/index.js +5 -1
  253. package/dist/src/tui/index.js.map +1 -1
  254. package/dist/src/tui/input-display.d.ts +9 -0
  255. package/dist/src/tui/input-display.js +58 -0
  256. package/dist/src/tui/input-display.js.map +1 -0
  257. package/dist/src/tui/keys.d.ts +44 -0
  258. package/dist/src/tui/keys.js +43 -15
  259. package/dist/src/tui/keys.js.map +1 -1
  260. package/dist/src/tui/lifecycle-action-view.d.ts +6 -0
  261. package/dist/src/tui/lifecycle-action-view.js +36 -0
  262. package/dist/src/tui/lifecycle-action-view.js.map +1 -0
  263. package/dist/src/tui/model.d.ts +223 -31
  264. package/dist/src/tui/model.js +1510 -397
  265. package/dist/src/tui/model.js.map +1 -1
  266. package/dist/src/tui/operation-diagnostic-screens.d.ts +8 -0
  267. package/dist/src/tui/operation-diagnostic-screens.js +71 -0
  268. package/dist/src/tui/operation-diagnostic-screens.js.map +1 -0
  269. package/dist/src/tui/operation-history.d.ts +81 -0
  270. package/dist/src/tui/operation-history.js +136 -0
  271. package/dist/src/tui/operation-history.js.map +1 -0
  272. package/dist/src/tui/operation-review-planner.d.ts +21 -0
  273. package/dist/src/tui/operation-review-planner.js +1295 -0
  274. package/dist/src/tui/operation-review-planner.js.map +1 -0
  275. package/dist/src/tui/plugin-content.d.ts +31 -0
  276. package/dist/src/tui/plugin-content.js +680 -0
  277. package/dist/src/tui/plugin-content.js.map +1 -0
  278. package/dist/src/tui/plugin-detail.d.ts +52 -0
  279. package/dist/src/tui/plugin-detail.js +165 -0
  280. package/dist/src/tui/plugin-detail.js.map +1 -0
  281. package/dist/src/tui/plugin-write-task.d.ts +69 -0
  282. package/dist/src/tui/plugin-write-task.js +286 -0
  283. package/dist/src/tui/plugin-write-task.js.map +1 -0
  284. package/dist/src/tui/project-inventory.d.ts +68 -0
  285. package/dist/src/tui/project-inventory.js +203 -0
  286. package/dist/src/tui/project-inventory.js.map +1 -0
  287. package/dist/src/tui/prompt.js +4 -15
  288. package/dist/src/tui/prompt.js.map +1 -1
  289. package/dist/src/tui/query-header.d.ts +30 -0
  290. package/dist/src/tui/query-header.js +40 -0
  291. package/dist/src/tui/query-header.js.map +1 -0
  292. package/dist/src/tui/reader.d.ts +37 -0
  293. package/dist/src/tui/reader.js +47 -0
  294. package/dist/src/tui/reader.js.map +1 -0
  295. package/dist/src/tui/router.d.ts +197 -10
  296. package/dist/src/tui/router.js +338 -50
  297. package/dist/src/tui/router.js.map +1 -1
  298. package/dist/src/tui/screen-registry.d.ts +701 -0
  299. package/dist/src/tui/screen-registry.js +230 -0
  300. package/dist/src/tui/screen-registry.js.map +1 -0
  301. package/dist/src/tui/session-console-app.d.ts +6 -0
  302. package/dist/src/tui/session-console-app.js +13 -0
  303. package/dist/src/tui/session-console-app.js.map +1 -0
  304. package/dist/src/tui/session-host.d.ts +45 -0
  305. package/dist/src/tui/session-host.js +209 -0
  306. package/dist/src/tui/session-host.js.map +1 -0
  307. package/dist/src/tui/source-detail-card.d.ts +29 -0
  308. package/dist/src/tui/source-detail-card.js +45 -0
  309. package/dist/src/tui/source-detail-card.js.map +1 -0
  310. package/dist/src/tui/source-ref-presets.d.ts +3 -0
  311. package/dist/src/tui/source-ref-presets.js +11 -0
  312. package/dist/src/tui/source-ref-presets.js.map +1 -0
  313. package/dist/src/tui/theme.d.ts +12 -0
  314. package/dist/src/tui/theme.js +12 -0
  315. package/dist/src/tui/theme.js.map +1 -1
  316. package/dist/src/tui/viewport.d.ts +1 -0
  317. package/dist/src/tui/viewport.js +23 -0
  318. package/dist/src/tui/viewport.js.map +1 -1
  319. package/dist/src/tui/views.js +31 -3
  320. package/dist/src/tui/views.js.map +1 -1
  321. package/dist/src/tui/wizard.js +37 -13
  322. package/dist/src/tui/wizard.js.map +1 -1
  323. package/dist/src/types.d.ts +244 -20
  324. package/dist/src/types.js +1 -0
  325. package/dist/src/types.js.map +1 -1
  326. package/dist/src/utils/agent-version.d.ts +7 -1
  327. package/dist/src/utils/agent-version.js +41 -8
  328. package/dist/src/utils/agent-version.js.map +1 -1
  329. package/dist/src/utils/artifact-plan.d.ts +5 -4
  330. package/dist/src/utils/artifact-plan.js +18 -7
  331. package/dist/src/utils/artifact-plan.js.map +1 -1
  332. package/dist/src/utils/artifact-renderer.d.ts +17 -7
  333. package/dist/src/utils/artifact-renderer.js +214 -216
  334. package/dist/src/utils/artifact-renderer.js.map +1 -1
  335. package/dist/src/utils/artifact-request.d.ts +21 -0
  336. package/dist/src/utils/artifact-request.js +78 -0
  337. package/dist/src/utils/artifact-request.js.map +1 -0
  338. package/dist/src/utils/aw-home-mutation-lock.d.ts +1 -0
  339. package/dist/src/utils/aw-home-mutation-lock.js +32 -4
  340. package/dist/src/utils/aw-home-mutation-lock.js.map +1 -1
  341. package/dist/src/utils/bundle-integrity.d.ts +0 -1
  342. package/dist/src/utils/bundle-integrity.js +0 -25
  343. package/dist/src/utils/bundle-integrity.js.map +1 -1
  344. package/dist/src/utils/bundle-layout.js +22 -29
  345. package/dist/src/utils/bundle-layout.js.map +1 -1
  346. package/dist/src/utils/catalog-capability-projection.d.ts +8 -0
  347. package/dist/src/utils/catalog-capability-projection.js +14 -0
  348. package/dist/src/utils/catalog-capability-projection.js.map +1 -0
  349. package/dist/src/utils/catalog-digests.d.ts +10 -0
  350. package/dist/src/utils/catalog-digests.js +57 -20
  351. package/dist/src/utils/catalog-digests.js.map +1 -1
  352. package/dist/src/utils/catalog-generation-control-snapshot.d.ts +11 -0
  353. package/dist/src/utils/catalog-generation-control-snapshot.js +45 -0
  354. package/dist/src/utils/catalog-generation-control-snapshot.js.map +1 -0
  355. package/dist/src/utils/catalog-generation-error.d.ts +16 -0
  356. package/dist/src/utils/catalog-generation-error.js +30 -0
  357. package/dist/src/utils/catalog-generation-error.js.map +1 -0
  358. package/dist/src/utils/catalog-generation-resolver.d.ts +44 -0
  359. package/dist/src/utils/catalog-generation-resolver.js +273 -0
  360. package/dist/src/utils/catalog-generation-resolver.js.map +1 -0
  361. package/dist/src/utils/catalog-generation-service.d.ts +172 -0
  362. package/dist/src/utils/catalog-generation-service.js +1271 -0
  363. package/dist/src/utils/catalog-generation-service.js.map +1 -0
  364. package/dist/src/utils/catalog-generation-state.d.ts +22 -0
  365. package/dist/src/utils/catalog-generation-state.js +192 -0
  366. package/dist/src/utils/catalog-generation-state.js.map +1 -0
  367. package/dist/src/utils/catalog-generation-store.d.ts +58 -0
  368. package/dist/src/utils/catalog-generation-store.js +452 -0
  369. package/dist/src/utils/catalog-generation-store.js.map +1 -0
  370. package/dist/src/utils/catalog-manifest-v7.d.ts +5 -0
  371. package/dist/src/utils/{catalog-manifest-v4.js → catalog-manifest-v7.js} +35 -43
  372. package/dist/src/utils/catalog-manifest-v7.js.map +1 -0
  373. package/dist/src/utils/catalog-operation-context.d.ts +20 -0
  374. package/dist/src/utils/catalog-operation-context.js +142 -0
  375. package/dist/src/utils/catalog-operation-context.js.map +1 -0
  376. package/dist/src/utils/catalog-public-error.d.ts +7 -3
  377. package/dist/src/utils/catalog-public-error.js +28 -8
  378. package/dist/src/utils/catalog-public-error.js.map +1 -1
  379. package/dist/src/utils/catalog-runtime-projection.d.ts +3 -0
  380. package/dist/src/utils/catalog-runtime-projection.js +5 -40
  381. package/dist/src/utils/catalog-runtime-projection.js.map +1 -1
  382. package/dist/src/utils/catalog-snapshot.d.ts +5 -3
  383. package/dist/src/utils/catalog-snapshot.js +11 -3
  384. package/dist/src/utils/catalog-snapshot.js.map +1 -1
  385. package/dist/src/utils/catalog-source-identity.d.ts +1 -0
  386. package/dist/src/utils/catalog-source-identity.js +21 -2
  387. package/dist/src/utils/catalog-source-identity.js.map +1 -1
  388. package/dist/src/utils/catalog-source-impact.d.ts +21 -0
  389. package/dist/src/utils/catalog-source-impact.js +344 -0
  390. package/dist/src/utils/catalog-source-impact.js.map +1 -0
  391. package/dist/src/utils/catalog-source-references.d.ts +3 -2
  392. package/dist/src/utils/catalog-source-references.js +195 -347
  393. package/dist/src/utils/catalog-source-references.js.map +1 -1
  394. package/dist/src/utils/catalog-sources.d.ts +15 -1
  395. package/dist/src/utils/catalog-sources.js +206 -27
  396. package/dist/src/utils/catalog-sources.js.map +1 -1
  397. package/dist/src/utils/codex-config.d.ts +2 -0
  398. package/dist/src/utils/codex-config.js +26 -5
  399. package/dist/src/utils/codex-config.js.map +1 -1
  400. package/dist/src/utils/codex-manager.d.ts +79 -0
  401. package/dist/src/utils/codex-manager.js +747 -0
  402. package/dist/src/utils/codex-manager.js.map +1 -0
  403. package/dist/src/utils/codex-marketplace-path.d.ts +5 -0
  404. package/dist/src/utils/codex-marketplace-path.js +45 -0
  405. package/dist/src/utils/codex-marketplace-path.js.map +1 -0
  406. package/dist/src/utils/codex-native-observation.d.ts +49 -0
  407. package/dist/src/utils/codex-native-observation.js +154 -0
  408. package/dist/src/utils/codex-native-observation.js.map +1 -0
  409. package/dist/src/utils/codex-native-render-receipt.d.ts +40 -0
  410. package/dist/src/utils/codex-native-render-receipt.js +205 -0
  411. package/dist/src/utils/codex-native-render-receipt.js.map +1 -0
  412. package/dist/src/utils/codex-reconciler.d.ts +126 -0
  413. package/dist/src/utils/codex-reconciler.js +298 -0
  414. package/dist/src/utils/codex-reconciler.js.map +1 -0
  415. package/dist/src/utils/codex-shared-native.d.ts +43 -0
  416. package/dist/src/utils/codex-shared-native.js +81 -0
  417. package/dist/src/utils/codex-shared-native.js.map +1 -0
  418. package/dist/src/utils/codex-skill-staging.d.ts +2 -0
  419. package/dist/src/utils/codex-skill-staging.js.map +1 -1
  420. package/dist/src/utils/codex-surface-analysis.d.ts +46 -0
  421. package/dist/src/utils/codex-surface-analysis.js +247 -0
  422. package/dist/src/utils/codex-surface-analysis.js.map +1 -0
  423. package/dist/src/utils/dynamic-skill-tree.d.ts +4 -0
  424. package/dist/src/utils/dynamic-skill-tree.js +35 -5
  425. package/dist/src/utils/dynamic-skill-tree.js.map +1 -1
  426. package/dist/src/utils/git-catalog-provider.d.ts +16 -0
  427. package/dist/src/utils/git-catalog-provider.js +177 -145
  428. package/dist/src/utils/git-catalog-provider.js.map +1 -1
  429. package/dist/src/utils/local-marketplace.d.ts +18 -1
  430. package/dist/src/utils/local-marketplace.js +354 -84
  431. package/dist/src/utils/local-marketplace.js.map +1 -1
  432. package/dist/src/utils/manifest.d.ts +1 -3
  433. package/dist/src/utils/manifest.js +1 -3
  434. package/dist/src/utils/manifest.js.map +1 -1
  435. package/dist/src/utils/multi-source-catalog.d.ts +3 -9
  436. package/dist/src/utils/multi-source-catalog.js +54 -110
  437. package/dist/src/utils/multi-source-catalog.js.map +1 -1
  438. package/dist/src/utils/native-cli.d.ts +55 -7
  439. package/dist/src/utils/native-cli.js +400 -58
  440. package/dist/src/utils/native-cli.js.map +1 -1
  441. package/dist/src/utils/orphan-marketplace-cleanup.js +0 -4
  442. package/dist/src/utils/orphan-marketplace-cleanup.js.map +1 -1
  443. package/dist/src/utils/ownership.d.ts +84 -20
  444. package/dist/src/utils/ownership.js +179 -222
  445. package/dist/src/utils/ownership.js.map +1 -1
  446. package/dist/src/utils/path-catalog-provider.d.ts +1 -1
  447. package/dist/src/utils/path-catalog-provider.js +54 -65
  448. package/dist/src/utils/path-catalog-provider.js.map +1 -1
  449. package/dist/src/utils/paths.d.ts +0 -1
  450. package/dist/src/utils/paths.js +0 -1
  451. package/dist/src/utils/paths.js.map +1 -1
  452. package/dist/src/utils/plugin-config-impact.d.ts +33 -0
  453. package/dist/src/utils/plugin-config-impact.js +298 -0
  454. package/dist/src/utils/plugin-config-impact.js.map +1 -0
  455. package/dist/src/utils/plugin-config-write.d.ts +52 -27
  456. package/dist/src/utils/plugin-config-write.js +1000 -296
  457. package/dist/src/utils/plugin-config-write.js.map +1 -1
  458. package/dist/src/utils/plugin-config.d.ts +153 -93
  459. package/dist/src/utils/plugin-config.js +1116 -968
  460. package/dist/src/utils/plugin-config.js.map +1 -1
  461. package/dist/src/utils/plugin-intent-state.d.ts +49 -0
  462. package/dist/src/utils/plugin-intent-state.js +320 -0
  463. package/dist/src/utils/plugin-intent-state.js.map +1 -0
  464. package/dist/src/utils/plugin-scripts.d.ts +65 -125
  465. package/dist/src/utils/plugin-scripts.js +484 -524
  466. package/dist/src/utils/plugin-scripts.js.map +1 -1
  467. package/dist/src/utils/process-tree.d.ts +2 -2
  468. package/dist/src/utils/process-tree.js +1 -1
  469. package/dist/src/utils/process-tree.js.map +1 -1
  470. package/dist/src/utils/project-boundary.d.ts +11 -13
  471. package/dist/src/utils/project-boundary.js +28 -34
  472. package/dist/src/utils/project-boundary.js.map +1 -1
  473. package/dist/src/utils/runtime-config.d.ts +20 -0
  474. package/dist/src/utils/runtime-config.js +75 -0
  475. package/dist/src/utils/runtime-config.js.map +1 -0
  476. package/dist/src/utils/safe-fs.d.ts +21 -0
  477. package/dist/src/utils/safe-fs.js +111 -0
  478. package/dist/src/utils/safe-fs.js.map +1 -0
  479. package/dist/src/utils/safe-operation-diagnostic.d.ts +15 -0
  480. package/dist/src/utils/safe-operation-diagnostic.js +33 -0
  481. package/dist/src/utils/safe-operation-diagnostic.js.map +1 -0
  482. package/dist/src/utils/sensitive-content.d.ts +4 -0
  483. package/dist/src/utils/sensitive-content.js +36 -0
  484. package/dist/src/utils/sensitive-content.js.map +1 -0
  485. package/dist/src/utils/state-paths.js +7 -2
  486. package/dist/src/utils/state-paths.js.map +1 -1
  487. package/dist/src/utils/target-eligibility.d.ts +8 -2
  488. package/dist/src/utils/target-eligibility.js +17 -8
  489. package/dist/src/utils/target-eligibility.js.map +1 -1
  490. package/dist/src/utils/windows-claude-shim.d.ts +7 -0
  491. package/dist/src/utils/windows-claude-shim.js +10 -0
  492. package/dist/src/utils/windows-claude-shim.js.map +1 -0
  493. package/dist/src/utils/windows-npm-shim.d.ts +14 -0
  494. package/dist/src/utils/windows-npm-shim.js +140 -0
  495. package/dist/src/utils/windows-npm-shim.js.map +1 -0
  496. package/dist/vitest.config.js +92 -10
  497. package/dist/vitest.config.js.map +1 -1
  498. package/package.json +27 -18
  499. package/dist/authoring/scripts/check-plugin-versions.d.mts +0 -2
  500. package/dist/authoring/scripts/check-plugin-versions.mjs +0 -5
  501. package/dist/authoring/scripts/check-plugin-versions.mjs.map +0 -1
  502. package/dist/scripts/aw-skill-eval-engine.d.ts +0 -13
  503. package/dist/scripts/aw-skill-eval-engine.js +0 -31
  504. package/dist/scripts/aw-skill-eval-engine.js.map +0 -1
  505. package/dist/scripts/codex-eval-app-server.d.ts +0 -89
  506. package/dist/scripts/codex-eval-app-server.js +0 -1228
  507. package/dist/scripts/codex-eval-app-server.js.map +0 -1
  508. package/dist/scripts/codex-eval-isolation.d.ts +0 -61
  509. package/dist/scripts/codex-eval-isolation.js +0 -318
  510. package/dist/scripts/codex-eval-isolation.js.map +0 -1
  511. package/dist/scripts/codex-eval-process-management.d.ts +0 -8
  512. package/dist/scripts/codex-eval-process-management.js +0 -69
  513. package/dist/scripts/codex-eval-process-management.js.map +0 -1
  514. package/dist/scripts/codex-eval-process-tree.d.ts +0 -38
  515. package/dist/scripts/codex-eval-process-tree.js +0 -803
  516. package/dist/scripts/codex-eval-process-tree.js.map +0 -1
  517. package/dist/scripts/codex-eval-runtime-config.d.ts +0 -62
  518. package/dist/scripts/codex-eval-runtime-config.js +0 -843
  519. package/dist/scripts/codex-eval-runtime-config.js.map +0 -1
  520. package/dist/scripts/codex-trigger-eval.d.ts +0 -84
  521. package/dist/scripts/codex-trigger-eval.js +0 -968
  522. package/dist/scripts/codex-trigger-eval.js.map +0 -1
  523. package/dist/scripts/eval-plugin-skills-audited.d.ts +0 -6
  524. package/dist/scripts/eval-plugin-skills-audited.js +0 -261
  525. package/dist/scripts/eval-plugin-skills-audited.js.map +0 -1
  526. package/dist/scripts/eval-plugin-skills.d.ts +0 -45
  527. package/dist/scripts/eval-plugin-skills.js +0 -1586
  528. package/dist/scripts/eval-plugin-skills.js.map +0 -1
  529. package/dist/scripts/eval-run-layout.d.ts +0 -17
  530. package/dist/scripts/eval-run-layout.js +0 -26
  531. package/dist/scripts/eval-run-layout.js.map +0 -1
  532. package/dist/scripts/plugin-eval-contract.d.ts +0 -185
  533. package/dist/scripts/plugin-eval-contract.js +0 -695
  534. package/dist/scripts/plugin-eval-contract.js.map +0 -1
  535. package/dist/scripts/plugin-eval-materializer.d.ts +0 -13
  536. package/dist/scripts/plugin-eval-materializer.js +0 -421
  537. package/dist/scripts/plugin-eval-materializer.js.map +0 -1
  538. package/dist/scripts/skill-reporting.d.ts +0 -212
  539. package/dist/scripts/skill-reporting.js +0 -922
  540. package/dist/scripts/skill-reporting.js.map +0 -1
  541. package/dist/src/commands/status-v4.d.ts +0 -123
  542. package/dist/src/commands/status-v4.js +0 -905
  543. package/dist/src/commands/status-v4.js.map +0 -1
  544. package/dist/src/commands/status.d.ts +0 -93
  545. package/dist/src/commands/status.js +0 -442
  546. package/dist/src/commands/status.js.map +0 -1
  547. package/dist/src/utils/active-marketplace-runtime-lock.d.ts +0 -12
  548. package/dist/src/utils/active-marketplace-runtime-lock.js +0 -133
  549. package/dist/src/utils/active-marketplace-runtime-lock.js.map +0 -1
  550. package/dist/src/utils/catalog-manifest-v3.d.ts +0 -2
  551. package/dist/src/utils/catalog-manifest-v3.js +0 -3
  552. package/dist/src/utils/catalog-manifest-v3.js.map +0 -1
  553. package/dist/src/utils/catalog-manifest-v4.d.ts +0 -5
  554. package/dist/src/utils/catalog-manifest-v4.js.map +0 -1
  555. package/dist/src/utils/catalog-source-cache.d.ts +0 -62
  556. package/dist/src/utils/catalog-source-cache.js +0 -296
  557. package/dist/src/utils/catalog-source-cache.js.map +0 -1
  558. package/dist/src/utils/codex-project-surface.d.ts +0 -3
  559. package/dist/src/utils/codex-project-surface.js +0 -49
  560. package/dist/src/utils/codex-project-surface.js.map +0 -1
  561. package/dist/src/utils/lifecycle-active-store.d.ts +0 -175
  562. package/dist/src/utils/lifecycle-active-store.js +0 -1276
  563. package/dist/src/utils/lifecycle-active-store.js.map +0 -1
  564. package/dist/src/utils/plugin-release.d.ts +0 -2
  565. package/dist/src/utils/plugin-release.js +0 -2
  566. package/dist/src/utils/plugin-release.js.map +0 -1
@@ -1,6 +1,7 @@
1
1
  import os from 'node:os';
2
2
  import path from 'node:path';
3
3
  import { redactString } from '../output/redact.js';
4
+ import { collectSensitiveTokenRepresentations } from '../utils/sensitive-content.js';
4
5
  const MAX_DIAGNOSTIC_TEXT_LENGTH = 240;
5
6
  const SAFE_CODE = /^[A-Za-z][A-Za-z0-9._-]{0,79}$/u;
6
7
  const ANSI_ESCAPE = /(?:\u001B(?:\[[0-?]*[ -/]*[@-~]|\][^\u0007]*(?:\u0007|\u001B\\))|\u009B[0-?]*[ -/]*[@-~])/gu;
@@ -27,8 +28,12 @@ function replaceRoot(value, root) {
27
28
  export function safeDiagnosticCode(value, fallback) {
28
29
  return typeof value === 'string' && SAFE_CODE.test(value) ? value : fallback;
29
30
  }
30
- export function sanitizeDiagnosticText(value, sensitiveRoots = []) {
31
- let output = value
31
+ function sanitizeDiagnosticValue(value, sensitiveRoots = [], sensitiveValues = []) {
32
+ let output = value;
33
+ for (const representation of collectSensitiveTokenRepresentations(sensitiveValues)) {
34
+ output = output.replace(new RegExp(escapeRegExp(representation), 'gu'), '[REDACTED]');
35
+ }
36
+ output = output
32
37
  .replace(ANSI_ESCAPE, '')
33
38
  .replace(NON_WHITESPACE_CONTROL, '')
34
39
  .replace(RAW_OUTPUT_LINE, '[diagnostic-omitted]')
@@ -56,10 +61,17 @@ export function sanitizeDiagnosticText(value, sensitiveRoots = []) {
56
61
  .replace(/(^|[\s("'=])[A-Za-z]:\\(?:[^\\\s]+\\)+[^\s,;)]*/gu, '$1[private-path]')
57
62
  .replace(/\s{2,}/gu, ' ')
58
63
  .trim();
64
+ return output;
65
+ }
66
+ export function sanitizeDiagnosticText(value, sensitiveRoots = [], sensitiveValues = []) {
67
+ const output = sanitizeDiagnosticValue(value, sensitiveRoots, sensitiveValues);
59
68
  return output.length <= MAX_DIAGNOSTIC_TEXT_LENGTH
60
69
  ? output
61
70
  : `${output.slice(0, MAX_DIAGNOSTIC_TEXT_LENGTH - 1)}…`;
62
71
  }
72
+ export function sanitizeDiagnosticDetailText(value, sensitiveRoots = [], sensitiveValues = []) {
73
+ return sanitizeDiagnosticValue(value, sensitiveRoots, sensitiveValues);
74
+ }
63
75
  export function sanitizeDiagnosticCause(value) {
64
76
  if (!value || NATIVE_CAUSE.test(value))
65
77
  return undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../../../src/tui/diagnostics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../../../src/tui/diagnostics.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,55 @@
1
+ import type { ReactNode } from 'react';
2
+ import type { PluginDetailPlacement, PluginDetailSubject } from './plugin-detail.js';
3
+ import type { ProjectInventoryRoot } from './project-inventory.js';
4
+ type CardSection = {
5
+ key: string;
6
+ offset: number;
7
+ height: number;
8
+ };
9
+ export interface EntityCardLayout {
10
+ /** Full rendered height includes the fixed header, fact lines, and bottom border. */
11
+ fullHeight: number;
12
+ /** Fixed header rows; identity may be embedded in the top border. */
13
+ headerHeight: number;
14
+ factRows: number;
15
+ horizontalPaging?: boolean;
16
+ /** Each offset and height is measured in rendered fact lines. */
17
+ sections: CardSection[];
18
+ }
19
+ export type EntityPlacementFact = Pick<PluginDetailPlacement, 'platform' | 'scope' | 'observation' | 'statusState' | 'projectState' | 'declared' | 'actual' | 'installedVersion' | 'expectedVersion'> & {
20
+ shared: boolean;
21
+ };
22
+ export declare function pluginDetailCardLayout(subject: PluginDetailSubject, width: number): EntityCardLayout;
23
+ export declare function projectRootCardLayout(root: ProjectInventoryRoot, subject: PluginDetailSubject, width: number): EntityCardLayout;
24
+ export declare function EntityIdentityCard(props: {
25
+ width: number;
26
+ title: string;
27
+ sourceId?: string;
28
+ focused?: boolean;
29
+ children: ReactNode;
30
+ }): React.JSX.Element;
31
+ /** A single placement uses the same fields, colors, and wrapping as detail and project cards. */
32
+ export declare function EntityPlacementRow(props: {
33
+ placement: EntityPlacementFact;
34
+ width: number;
35
+ }): React.JSX.Element;
36
+ export declare function entityPlacementRowHeight(placement: EntityPlacementFact, width: number): number;
37
+ /** Exact rendered height when lineOffset/lineLimit select fact rows. */
38
+ export declare function entityCardWindowHeight(card: EntityCardLayout, lineOffset?: number, lineLimit?: number): number;
39
+ export declare function PluginDetailCard(props: {
40
+ subject: PluginDetailSubject;
41
+ width: number;
42
+ /** Fact-line offset; excludes the identity line and borders. */
43
+ lineOffset?: number;
44
+ /** Fact-line count; excludes the identity line, borders, and overflow cues. */
45
+ lineLimit?: number;
46
+ }): React.JSX.Element;
47
+ export declare function ProjectRootCard(props: {
48
+ root: ProjectInventoryRoot;
49
+ subject: PluginDetailSubject;
50
+ width: number;
51
+ focused?: boolean;
52
+ lineOffset?: number;
53
+ lineLimit?: number;
54
+ }): React.JSX.Element;
55
+ export {};
@@ -0,0 +1,220 @@
1
+ import { jsxs as _jsxs, jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { Box, Text } from 'ink';
3
+ import stringWidth from 'string-width';
4
+ import { ObjectCardFrame } from './components.js';
5
+ import { platformLabel, scopeLabel } from './glossary.js';
6
+ import { Pager } from './reader.js';
7
+ import { tuiTheme } from './theme.js';
8
+ import { wrapDisplayText } from './viewport.js';
9
+ function innerWidth(width) {
10
+ return Math.max(1, Math.floor(width) - 4);
11
+ }
12
+ function preview(value, width) {
13
+ if (stringWidth(value) <= width)
14
+ return value;
15
+ return `${wrapDisplayText(value, Math.max(1, width - 1))[0]}…`;
16
+ }
17
+ function identityWidths(sourceId, width) {
18
+ const columns = innerWidth(width);
19
+ const source = sourceId ? `[${sourceId}]` : '';
20
+ const sourceWidth = source ? Math.min(stringWidth(source), Math.max(6, Math.floor(columns / 3))) : 0;
21
+ return { titleWidth: Math.max(1, columns - sourceWidth - Number(Boolean(source)) - 2), sourceWidth };
22
+ }
23
+ function addFields(lines, sections, key, width, fields) {
24
+ const offset = lines.length;
25
+ const columns = innerWidth(width);
26
+ let cells = [];
27
+ let used = 0;
28
+ const flush = () => {
29
+ if (cells.length > 0)
30
+ lines.push({ cells });
31
+ cells = [];
32
+ used = 0;
33
+ };
34
+ for (const field of fields) {
35
+ for (const text of wrapDisplayText(field.text, columns)) {
36
+ const gap = cells.length > 0 ? 1 : 0;
37
+ if (used + gap + stringWidth(text) > columns)
38
+ flush();
39
+ cells.push({ ...field, text });
40
+ used += (cells.length > 1 ? 1 : 0) + stringWidth(text);
41
+ }
42
+ }
43
+ flush();
44
+ sections.push({ key, offset, height: lines.length - offset });
45
+ }
46
+ const plain = (text) => ({ text, role: 'text' });
47
+ const muted = (text) => ({ text, role: 'muted' });
48
+ const statusCell = (label, status, symbol) => ({
49
+ text: `[${symbol} ${label}]`, role: 'status', status,
50
+ });
51
+ const projectStates = {
52
+ blocked: { label: '受阻', status: 'error', symbol: '!' },
53
+ pending: { label: '待同步', status: 'warning', symbol: '↻' },
54
+ unknown: { label: '未确认', status: 'muted', symbol: '?' },
55
+ ready: { label: '可用', status: 'success', symbol: '✓' },
56
+ };
57
+ function placementHealth(fact) {
58
+ if (fact.projectState === 'blocked' || fact.statusState === 'blocked')
59
+ return projectStates.blocked;
60
+ if (fact.statusState === 'orphaned') {
61
+ return { label: '残留待处理', status: 'warning', symbol: '!' };
62
+ }
63
+ if (fact.observation === 'unknown')
64
+ return projectStates.unknown;
65
+ if (fact.projectState)
66
+ return projectStates[fact.projectState];
67
+ if (fact.statusState === 'ready')
68
+ return projectStates.ready;
69
+ if (fact.statusState === 'needsSync')
70
+ return projectStates.pending;
71
+ if (fact.statusState === 'absent') {
72
+ return { label: '未安装', status: 'muted', symbol: '○' };
73
+ }
74
+ return projectStates.unknown;
75
+ }
76
+ function placementFields(fact) {
77
+ const health = placementHealth(fact);
78
+ return [
79
+ { text: platformLabel(fact.platform), role: 'platform' },
80
+ muted(`[${scopeLabel(fact.scope)}]`),
81
+ ...(fact.shared ? [muted('[共用个人安装]')] : []),
82
+ ...(fact.declared && !fact.actual
83
+ ? [muted(fact.scope === 'project' ? '[项目声明]' : '[使用声明]')] : []),
84
+ ...(health.label === '未安装' ? [] : [plain(`安装版本 ${fact.installedVersion ?? '未确认'}`)]),
85
+ statusCell(health.label, health.status, health.symbol),
86
+ ];
87
+ }
88
+ function fromProjectTarget(target, detail, declared = false) {
89
+ return {
90
+ platform: target.platform, scope: target.scope,
91
+ shared: target.location === 'sharedUser',
92
+ declared: detail?.declared ?? declared,
93
+ actual: detail?.actual ?? false,
94
+ observation: detail?.observation ?? (target.state === 'unknown' ? 'unknown' : 'known'),
95
+ projectState: target.state,
96
+ statusState: detail?.statusState,
97
+ installedVersion: detail?.installedVersion ?? target.installedVersion,
98
+ };
99
+ }
100
+ function addIdentityOverflow(lines, sections, subject, width) {
101
+ const sizes = identityWidths(subject.sourceId, width);
102
+ if (stringWidth(subject.displayName) > sizes.titleWidth) {
103
+ addFields(lines, sections, 'name', width, [muted('名称'), plain(subject.displayName)]);
104
+ }
105
+ if (stringWidth(`[${subject.sourceId}]`) > sizes.sourceWidth) {
106
+ addFields(lines, sections, 'source', width, [muted('来源'), plain(subject.sourceId)]);
107
+ }
108
+ }
109
+ function pluginFacts(subject, width) {
110
+ const lines = [];
111
+ const sections = [];
112
+ addIdentityOverflow(lines, sections, subject, width);
113
+ if (subject.description)
114
+ addFields(lines, sections, 'description', width, [muted(subject.description)]);
115
+ if (!subject.definitionAvailable) {
116
+ addFields(lines, sections, 'definition', width, [statusCell('目录定义当前不可用', 'warning', '!')]);
117
+ }
118
+ addFields(lines, sections, 'catalogVersion', width, [muted('目录版本'), subject.catalogVersion ? plain(subject.catalogVersion) : muted('未确认')]);
119
+ if (subject.savedConfigScopes.length > 0) {
120
+ addFields(lines, sections, 'savedConfig', width, [muted('已保存设置'), plain(subject.savedConfigScopes.map(scopeLabel).join('、'))]);
121
+ }
122
+ for (const placement of subject.placements) {
123
+ const key = `placement:${placement.platform}:${placement.scope}`;
124
+ addFields(lines, sections, key, width, placementFields({ ...placement, shared: placement.sharedWithCurrentProject }));
125
+ if (placement.declared && placement.expectedVersion) {
126
+ addFields(lines, sections, `${key}:expectedVersion`, width, [muted('声明期望版本'), plain(placement.expectedVersion)]);
127
+ }
128
+ }
129
+ if (subject.placements.length === 0) {
130
+ addFields(lines, sections, 'placements', width, [muted('使用位置'), statusCell('未确认', 'muted', '?')]);
131
+ }
132
+ return { lines, sections };
133
+ }
134
+ function projectFacts(root, subject, width) {
135
+ const lines = [];
136
+ const sections = [];
137
+ addIdentityOverflow(lines, sections, subject, width);
138
+ const overall = projectStates[root.state];
139
+ addFields(lines, sections, 'overall', width, [muted('总体状态'), statusCell(root.state === 'ready' ? '就绪' : overall.label, overall.status, overall.symbol)]);
140
+ for (const target of root.targets) {
141
+ const detail = subject.placements.find((placement) => placement.platform === target.platform && placement.scope === target.scope);
142
+ addFields(lines, sections, `placement:${target.platform}:${target.scope}`, width, placementFields(fromProjectTarget(target, detail, root.section === 'declared')));
143
+ }
144
+ if (root.targets.length === 0) {
145
+ addFields(lines, sections, 'placements', width, [muted('使用位置'), statusCell('未确认', 'muted', '?')]);
146
+ }
147
+ for (const dependency of root.dependencies) {
148
+ if (dependency.targets.length === 0)
149
+ continue;
150
+ addFields(lines, sections, `dependency:${dependency.pluginId}`, width, [muted('依赖'), plain(dependency.displayName)]);
151
+ for (const target of dependency.targets) {
152
+ addFields(lines, sections, `dependency:${dependency.pluginId}:${target.platform}:${target.scope}`, width, placementFields(fromProjectTarget(target)));
153
+ }
154
+ }
155
+ return { lines, sections };
156
+ }
157
+ function layout(lines, sections) {
158
+ return { headerHeight: 2, factRows: lines.length, fullHeight: lines.length + 3, sections };
159
+ }
160
+ export function pluginDetailCardLayout(subject, width) {
161
+ const { lines, sections } = pluginFacts(subject, width);
162
+ return { headerHeight: 1, factRows: lines.length, fullHeight: lines.length + 2,
163
+ horizontalPaging: true, sections };
164
+ }
165
+ export function projectRootCardLayout(root, subject, width) {
166
+ const { lines, sections } = projectFacts(root, subject, width);
167
+ return layout(lines, sections);
168
+ }
169
+ export function EntityIdentityCard(props) {
170
+ const sizes = identityWidths(props.sourceId, props.width);
171
+ const borderColor = props.focused ? tuiTheme.colors.accent : tuiTheme.colors.border;
172
+ return _jsxs(Box, { width: props.width, borderStyle: "round", borderColor: borderColor, flexDirection: "column", paddingX: 1, backgroundColor: props.focused ? tuiTheme.colors.selectionBackground : undefined, children: [_jsxs(Box, { width: innerWidth(props.width), height: 1, justifyContent: "space-between", overflow: "hidden", children: [_jsxs(Text, { bold: true, color: tuiTheme.colors.text, wrap: "truncate-end", children: [props.focused ? '› ' : ' ', preview(props.title, sizes.titleWidth)] }), props.sourceId ? _jsx(Text, { color: tuiTheme.colors.muted, wrap: "truncate-end", children: preview(`[${props.sourceId}]`, sizes.sourceWidth) }) : null] }), props.children] });
173
+ }
174
+ /** A single placement uses the same fields, colors, and wrapping as detail and project cards. */
175
+ export function EntityPlacementRow(props) {
176
+ return _jsx(FactRows, { lines: placementRows(props.placement, props.width) });
177
+ }
178
+ function placementRows(placement, width) {
179
+ const lines = [];
180
+ addFields(lines, [], 'placement', width, placementFields(placement));
181
+ if (placement.declared && placement.expectedVersion) {
182
+ addFields(lines, [], 'expectedVersion', width, [muted('声明期望版本'), plain(placement.expectedVersion)]);
183
+ }
184
+ return lines;
185
+ }
186
+ export function entityPlacementRowHeight(placement, width) {
187
+ return placementRows(placement, width).length;
188
+ }
189
+ function cardWindow(lines, offset, limit) {
190
+ const start = Math.min(Math.max(0, Math.floor(offset)), Math.max(0, lines.length - 1));
191
+ const shown = lines.slice(start, limit === undefined ? undefined : start + Math.max(1, Math.floor(limit)));
192
+ return { shown, before: start > 0, after: start + shown.length < lines.length };
193
+ }
194
+ /** Exact rendered height when lineOffset/lineLimit select fact rows. */
195
+ export function entityCardWindowHeight(card, lineOffset = 0, lineLimit) {
196
+ const start = Math.min(Math.max(0, Math.floor(lineOffset)), Math.max(0, card.factRows - 1));
197
+ const visible = Math.min(card.factRows - start, lineLimit === undefined ? card.factRows : Math.max(1, Math.floor(lineLimit)));
198
+ return card.headerHeight + visible + 1 + (card.horizontalPaging
199
+ ? Number(lineLimit !== undefined)
200
+ : Number(start > 0) + Number(start + visible < card.factRows));
201
+ }
202
+ function FactRows(props) {
203
+ const window = cardWindow(props.lines, props.offset ?? 0, props.limit);
204
+ return _jsxs(_Fragment, { children: [!props.horizontalPaging && window.before ? _jsx(Text, { color: tuiTheme.colors.muted, children: "\u2191 \u524D\u9762\u8FD8\u6709\u4FE1\u606F" }) : null, window.shown.map((line, index) => _jsx(Text, { children: line.cells.map((cell, cellIndex) => _jsxs(Text, { color: cell.role === 'status' ? tuiTheme.statusColors[cell.status ?? 'muted']
205
+ : cell.role === 'muted' ? tuiTheme.colors.muted : tuiTheme.colors.text, bold: cell.role === 'platform', children: [cell.role === 'status' && props.columns
206
+ ? ' '.repeat(Math.max(Number(cellIndex > 0), props.columns
207
+ - line.cells.reduce((sum, entry) => sum + stringWidth(entry.text), 0)
208
+ - Math.max(0, line.cells.length - 2)))
209
+ : cellIndex > 0 ? ' ' : '', cell.text] }, cellIndex)) }, `${props.offset ?? 0}:${index}`)), !props.horizontalPaging && window.after ? _jsx(Text, { color: tuiTheme.colors.muted, children: "\u2193 \u540E\u9762\u8FD8\u6709\u4FE1\u606F" }) : null, props.horizontalPaging && props.limit !== undefined ? _jsx(Pager, { page: Math.floor((props.offset ?? 0) / Math.max(1, props.limit)) + 1, pageCount: Math.max(1, Math.ceil(props.lines.length / Math.max(1, props.limit))), columns: props.columns }) : null] });
210
+ }
211
+ export function PluginDetailCard(props) {
212
+ const { lines } = pluginFacts(props.subject, props.width);
213
+ const sizes = identityWidths(props.subject.sourceId, props.width);
214
+ return _jsx(ObjectCardFrame, { width: props.width, title: preview(props.subject.displayName, sizes.titleWidth), headerMeta: preview(props.subject.sourceId, Math.max(1, sizes.sourceWidth - 2)), children: _jsx(FactRows, { lines: lines, offset: props.lineOffset, limit: props.lineLimit, horizontalPaging: true, columns: innerWidth(props.width) }) });
215
+ }
216
+ export function ProjectRootCard(props) {
217
+ const { lines } = projectFacts(props.root, props.subject, props.width);
218
+ return _jsx(EntityIdentityCard, { width: props.width, title: props.subject.displayName, sourceId: props.subject.sourceId, focused: props.focused, children: _jsx(FactRows, { lines: lines, offset: props.lineOffset, limit: props.lineLimit }) });
219
+ }
220
+ //# sourceMappingURL=entity-cards.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity-cards.js","sourceRoot":"","sources":["../../../src/tui/entity-cards.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import type { PlatformName, Scope } from '../types.js';
2
+ import type { StatusSharedNativeProjection } from '../commands/status-v6.js';
3
+ export declare const productTerms: {
4
+ readonly catalog: "插件目录";
5
+ readonly active: "当前启用版本";
6
+ readonly candidate: "待检查版本";
7
+ readonly desired: "已保存使用设置";
8
+ readonly desiredPlacement: "计划使用位置";
9
+ readonly actualPlacement: "当前使用位置";
10
+ readonly sharedNative: "由平台共用的内容";
11
+ readonly activation: "启用位置";
12
+ readonly awOnly: "AW 管理附加能力";
13
+ readonly awOwned: "AW 管理内容";
14
+ readonly fixedPoint: "根据依赖自动扩大范围";
15
+ readonly provider: "来源或依赖插件";
16
+ readonly rootProvider: "当前插件";
17
+ readonly capability: "功能支持";
18
+ readonly manifest: "插件定义";
19
+ readonly generation: "目录版本副本";
20
+ };
21
+ export declare function platformLabel(platform: PlatformName): string;
22
+ export declare function scopeLabel(scope: Scope): string;
23
+ export declare function sharedNativeStateLabel(sharedNative: StatusSharedNativeProjection): string;
@@ -0,0 +1,42 @@
1
+ export const productTerms = {
2
+ catalog: '插件目录',
3
+ active: '当前启用版本',
4
+ candidate: '待检查版本',
5
+ desired: '已保存使用设置',
6
+ desiredPlacement: '计划使用位置',
7
+ actualPlacement: '当前使用位置',
8
+ sharedNative: '由平台共用的内容',
9
+ activation: '启用位置',
10
+ awOnly: 'AW 管理附加能力',
11
+ awOwned: 'AW 管理内容',
12
+ fixedPoint: '根据依赖自动扩大范围',
13
+ provider: '来源或依赖插件',
14
+ rootProvider: '当前插件',
15
+ capability: '功能支持',
16
+ manifest: '插件定义',
17
+ generation: '目录版本副本',
18
+ };
19
+ export function platformLabel(platform) {
20
+ return platform === 'codex' ? 'Codex' : 'Claude Code';
21
+ }
22
+ export function scopeLabel(scope) {
23
+ return scope === 'user' ? '所有项目' : '当前项目';
24
+ }
25
+ export function sharedNativeStateLabel(sharedNative) {
26
+ if (sharedNative.state === 'usable')
27
+ return '可用';
28
+ if (sharedNative.state === 'missing')
29
+ return '缺失';
30
+ if (sharedNative.state === 'unobserved')
31
+ return '未检查';
32
+ if (sharedNative.state === 'blocked')
33
+ return '冲突';
34
+ return {
35
+ renderDrift: '待同步',
36
+ damaged: '损坏',
37
+ outdated: '待更新',
38
+ foreign: '由其他内容占用',
39
+ unreadable: '无法读取',
40
+ }[sharedNative.reason ?? 'unreadable'];
41
+ }
42
+ //# sourceMappingURL=glossary.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"glossary.js","sourceRoot":"","sources":["../../../src/tui/glossary.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,OAAO,EAAE,MAAM;IACf,MAAM,EAAE,QAAQ;IAChB,SAAS,EAAE,OAAO;IAClB,OAAO,EAAE,SAAS;IAClB,gBAAgB,EAAE,QAAQ;IAC1B,eAAe,EAAE,QAAQ;IACzB,YAAY,EAAE,UAAU;IACxB,UAAU,EAAE,MAAM;IAClB,MAAM,EAAE,WAAW;IACnB,OAAO,EAAE,SAAS;IAClB,UAAU,EAAE,YAAY;IACxB,QAAQ,EAAE,SAAS;IACnB,YAAY,EAAE,MAAM;IACpB,UAAU,EAAE,MAAM;IAClB,QAAQ,EAAE,MAAM;IAChB,UAAU,EAAE,QAAQ;CACZ,CAAC;AAEX,MAAM,UAAU,aAAa,CAAC,QAAsB;IAClD,OAAO,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,KAAY;IACrC,OAAO,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;AAC5C,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,YAA0C;IAE1C,IAAI,YAAY,CAAC,KAAK,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACjD,IAAI,YAAY,CAAC,KAAK,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IAClD,IAAI,YAAY,CAAC,KAAK,KAAK,YAAY;QAAE,OAAO,KAAK,CAAC;IACtD,IAAI,YAAY,CAAC,KAAK,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IAClD,OAAQ;QACN,WAAW,EAAE,KAAK;QAClB,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,SAAS;QAClB,UAAU,EAAE,MAAM;KACT,CAAC,YAAY,CAAC,MAAM,IAAI,YAAY,CAAC,CAAC;AACnD,CAAC"}
@@ -1,12 +1,17 @@
1
1
  export { createInkPrompt, type InkPromptOptions } from './prompt.js';
2
2
  export { ActionRow, Card, Callout, ChoiceRow, DiagnosticSummary, HelpBar, InputCard, PluginListRow, PluginRow, ProgressRow, ResultCard, ResultRow, ReviewCard, ReviewChangeRow, ScreenFrame, Section, SectionCard, SectionRow, StaticRow, StatusCard, StatusLabel, TaskRow, TechnicalDetails, ToggleRow, type InteractiveRowProps, type PluginListRowProps, type ProgressState, type SelectableRowProps, type SemanticCardProps, type StaticRowProps, type TuiSize, } from './components.js';
3
3
  export { safeDiagnosticCode, sanitizeDiagnosticCause, sanitizeDiagnosticText, type DiagnosticContextKey, type DiagnosticImpactEntryViewModel, type DiagnosticImpactState, type DiagnosticSummaryViewModel, type DiagnosticTechnicalViewModel, } from './diagnostics.js';
4
- export { resolveTuiKeyAction, type TuiInputMode, type TuiKeyContext } from './keys.js';
4
+ export { OperationHistoryStore, type OperationDiagnosticDetail, type OperationEffectFacts, type OperationEffectState, type OperationHistorySummary, type OperationHistoryTarget, type OperationReportPreview, type SafeOperationDiagnostic, type SaveOperationReportResult, } from './operation-history.js';
5
+ export { TUI_GLOBAL_ACTIONS, resolveTuiGlobalKeyAction, resolveTuiKeyAction, resolveTuiSessionNavigationKey, type TuiGlobalKeyAction, type TuiInputMode, type TuiKeyContext, type TuiSessionNavigationKeyAction, } from './keys.js';
6
+ export { TUI_ROUTE_DEFINITIONS, TUI_SCREEN_IDS, normalizeTuiRoute, resolveRouteScreenId, routeDefinition, routeSupportsCharacterInput, unreachableTuiRoute, type RouteEntityState, type RouteScreenContext, type ScreenDefinition, type TuiRendererFamily, type TuiRouteEntity, type TuiRouteKeymap, type TuiRouteName, type TuiScreenId, } from './screen-registry.js';
5
7
  export { resolveTuiSizePolicy, type TuiLayoutMode, type TuiSizePolicy } from './layout.js';
8
+ export { loadCatalogGenerationViewModels, type CatalogGenerationViewModel, type CatalogSourceGenerationViewModel, } from './catalog-generation.js';
9
+ export type { CatalogSourceFreshnessState, CatalogSourceFreshnessViewModel, } from './catalog-freshness.js';
6
10
  export { createInkTuiRunner, type TuiLaunchRequest, type TuiRunner } from './runner.js';
7
11
  export { TuiController, TuiOperationBlockedError, operationEvidenceFingerprint, type OperationEvidence, type OperationExecuteResult, type OperationIntent, type OperationResultSummary, type OperationReviewModel, type ReviewPreparationSnapshot, type ReviewPreparationStage, type ReviewPreparationStageId, type SourceReferenceSummaryViewModel, type TuiControllerDependencies, type TuiControllerSnapshot, } from './controller.js';
8
12
  export { createConsoleTuiV4Controller, createTuiControllerDependencies, } from './controller-runtime.js';
9
13
  export { CONSOLE_V4_SCREEN_IDS, ConsoleAppV4, resolveConsoleV4ScreenId, type ConsoleV4ScreenId, } from './console-app-v4.js';
14
+ export { LatestSessionResultHistory, SessionHost, type SessionHistoryOwner, type SessionHostSnapshot, type SessionNavigation, type SessionNavigationResult, type SessionResultRecord, } from './session-host.js';
10
15
  export { buildConfigGroups, buildTuiViewModel, projectPlatformPlacement, type ConfigFieldViewModel, type ConfigGroupViewModel, type HomeSummaryViewModel, type PlatformPlacementSummary, type PluginListItemViewModel, type SourceHealthViewModel, type SourceDetailViewModel, type SourceTabViewModel, type TuiViewModel, type UserIssueViewModel, } from './model.js';
11
16
  export { TuiRouter, type PluginInstallFilter, type TuiPageContext, type TuiRoute, type TuiRouteFrame, type TuiRouterSnapshot, } from './router.js';
12
17
  export { CommandWizard } from './wizard.js';
@@ -1,12 +1,16 @@
1
1
  export { createInkPrompt } from './prompt.js';
2
2
  export { ActionRow, Card, Callout, ChoiceRow, DiagnosticSummary, HelpBar, InputCard, PluginListRow, PluginRow, ProgressRow, ResultCard, ResultRow, ReviewCard, ReviewChangeRow, ScreenFrame, Section, SectionCard, SectionRow, StaticRow, StatusCard, StatusLabel, TaskRow, TechnicalDetails, ToggleRow, } from './components.js';
3
3
  export { safeDiagnosticCode, sanitizeDiagnosticCause, sanitizeDiagnosticText, } from './diagnostics.js';
4
- export { resolveTuiKeyAction } from './keys.js';
4
+ export { OperationHistoryStore, } from './operation-history.js';
5
+ export { TUI_GLOBAL_ACTIONS, resolveTuiGlobalKeyAction, resolveTuiKeyAction, resolveTuiSessionNavigationKey, } from './keys.js';
6
+ export { TUI_ROUTE_DEFINITIONS, TUI_SCREEN_IDS, normalizeTuiRoute, resolveRouteScreenId, routeDefinition, routeSupportsCharacterInput, unreachableTuiRoute, } from './screen-registry.js';
5
7
  export { resolveTuiSizePolicy } from './layout.js';
8
+ export { loadCatalogGenerationViewModels, } from './catalog-generation.js';
6
9
  export { createInkTuiRunner } from './runner.js';
7
10
  export { TuiController, TuiOperationBlockedError, operationEvidenceFingerprint, } from './controller.js';
8
11
  export { createConsoleTuiV4Controller, createTuiControllerDependencies, } from './controller-runtime.js';
9
12
  export { CONSOLE_V4_SCREEN_IDS, ConsoleAppV4, resolveConsoleV4ScreenId, } from './console-app-v4.js';
13
+ export { LatestSessionResultHistory, SessionHost, } from './session-host.js';
10
14
  export { buildConfigGroups, buildTuiViewModel, projectPlatformPlacement, } from './model.js';
11
15
  export { TuiRouter, } from './router.js';
12
16
  export { CommandWizard } from './wizard.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tui/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAyB,MAAM,aAAa,CAAC;AACrE,OAAO,EACL,SAAS,EACT,IAAI,EACJ,OAAO,EACP,SAAS,EACT,iBAAiB,EACjB,OAAO,EACP,SAAS,EACT,aAAa,EACb,SAAS,EACT,WAAW,EACX,UAAU,EACV,SAAS,EACT,UAAU,EACV,eAAe,EACf,WAAW,EACX,OAAO,EACP,WAAW,EACX,UAAU,EACV,SAAS,EACT,UAAU,EACV,WAAW,EACX,OAAO,EACP,gBAAgB,EAChB,SAAS,GAQV,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,sBAAsB,GAMvB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,mBAAmB,EAAyC,MAAM,WAAW,CAAC;AACvF,OAAO,EAAE,oBAAoB,EAA0C,MAAM,aAAa,CAAC;AAC3F,OAAO,EAAE,kBAAkB,EAAyC,MAAM,aAAa,CAAC;AACxF,OAAO,EACL,aAAa,EACb,wBAAwB,EACxB,4BAA4B,GAY7B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,4BAA4B,EAC5B,+BAA+B,GAChC,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,qBAAqB,EACrB,YAAY,EACZ,wBAAwB,GAEzB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,wBAAwB,GAWzB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,SAAS,GAMV,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAkB,MAAM,YAAY,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAoB,MAAM,eAAe,CAAC;AAChF,OAAO,EACL,WAAW,EACX,eAAe,EACf,iBAAiB,EACjB,WAAW,EACX,UAAU,EACV,aAAa,GACd,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tui/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAyB,MAAM,aAAa,CAAC;AACrE,OAAO,EACL,SAAS,EACT,IAAI,EACJ,OAAO,EACP,SAAS,EACT,iBAAiB,EACjB,OAAO,EACP,SAAS,EACT,aAAa,EACb,SAAS,EACT,WAAW,EACX,UAAU,EACV,SAAS,EACT,UAAU,EACV,eAAe,EACf,WAAW,EACX,OAAO,EACP,WAAW,EACX,UAAU,EACV,SAAS,EACT,UAAU,EACV,WAAW,EACX,OAAO,EACP,gBAAgB,EAChB,SAAS,GAQV,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,sBAAsB,GAMvB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,qBAAqB,GAStB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,kBAAkB,EAClB,yBAAyB,EACzB,mBAAmB,EACnB,8BAA8B,GAK/B,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,qBAAqB,EACrB,cAAc,EACd,iBAAiB,EACjB,oBAAoB,EACpB,eAAe,EACf,2BAA2B,EAC3B,mBAAmB,GASpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,oBAAoB,EAA0C,MAAM,aAAa,CAAC;AAC3F,OAAO,EACL,+BAA+B,GAGhC,MAAM,yBAAyB,CAAC;AAKjC,OAAO,EAAE,kBAAkB,EAAyC,MAAM,aAAa,CAAC;AACxF,OAAO,EACL,aAAa,EACb,wBAAwB,EACxB,4BAA4B,GAY7B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,4BAA4B,EAC5B,+BAA+B,GAChC,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,qBAAqB,EACrB,YAAY,EACZ,wBAAwB,GAEzB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,0BAA0B,EAC1B,WAAW,GAMZ,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,wBAAwB,GAWzB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,SAAS,GAMV,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAkB,MAAM,YAAY,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAoB,MAAM,eAAe,CAAC;AAChF,OAAO,EACL,WAAW,EACX,eAAe,EACf,iBAAiB,EACjB,WAAW,EACX,UAAU,EACV,aAAa,GACd,MAAM,YAAY,CAAC"}
@@ -0,0 +1,9 @@
1
+ export declare function removeLastGrapheme(value: string): string;
2
+ export declare function renderInputTail(value: string, columns: number): string;
3
+ export declare function InputDisplay(props: {
4
+ value: string;
5
+ columns: number;
6
+ sensitive?: boolean;
7
+ cursor?: number;
8
+ placeholder?: string;
9
+ }): React.JSX.Element;
@@ -0,0 +1,58 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Text } from 'ink';
3
+ import stringWidth from 'string-width';
4
+ import { tuiTheme } from './theme.js';
5
+ function graphemes(value) {
6
+ return [...new Intl.Segmenter(undefined, { granularity: 'grapheme' }).segment(value)]
7
+ .map((part) => part.segment);
8
+ }
9
+ export function removeLastGrapheme(value) {
10
+ return graphemes(value).slice(0, -1).join('');
11
+ }
12
+ export function renderInputTail(value, columns) {
13
+ const textColumns = Math.max(0, columns - stringWidth('▌'));
14
+ if (textColumns === 0)
15
+ return '';
16
+ const parts = graphemes(value);
17
+ if (stringWidth(value) <= textColumns)
18
+ return value;
19
+ const tailColumns = Math.max(0, textColumns - stringWidth('…'));
20
+ let used = 0;
21
+ let start = parts.length;
22
+ while (start > 0) {
23
+ const width = stringWidth(parts[start - 1]);
24
+ if (used + width > tailColumns)
25
+ break;
26
+ used += width;
27
+ start -= 1;
28
+ }
29
+ return `…${parts.slice(start).join('')}`;
30
+ }
31
+ export function InputDisplay(props) {
32
+ const value = props.sensitive ? '•'.repeat(graphemes(props.value).length) : props.value;
33
+ if (!value) {
34
+ let placeholder = '';
35
+ for (const part of graphemes(props.placeholder ?? '')) {
36
+ if (part.includes('\n') || stringWidth(placeholder + part) > Math.max(0, props.columns - 1))
37
+ break;
38
+ placeholder += part;
39
+ }
40
+ return _jsxs(Text, { children: [_jsx(Text, { color: tuiTheme.colors.accent, children: "\u258C" }), _jsx(Text, { color: tuiTheme.colors.muted, children: placeholder })] });
41
+ }
42
+ if (props.cursor !== undefined && value) {
43
+ const parts = graphemes(value);
44
+ const cursor = Math.min(parts.length, Math.max(0, props.cursor));
45
+ const before = renderInputTail(parts.slice(0, cursor).join(''), props.columns);
46
+ const remaining = Math.max(0, props.columns - stringWidth(before) - 1);
47
+ let after = '';
48
+ for (const part of parts.slice(cursor)) {
49
+ if (stringWidth(after + part) > remaining)
50
+ break;
51
+ after += part;
52
+ }
53
+ return _jsxs(Text, { children: [before, _jsx(Text, { color: tuiTheme.colors.accent, children: "\u258C" }), after] });
54
+ }
55
+ const visible = renderInputTail(value, props.columns);
56
+ return _jsxs(Text, { children: [visible, _jsx(Text, { color: tuiTheme.colors.accent, children: "\u258C" })] });
57
+ }
58
+ //# sourceMappingURL=input-display.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input-display.js","sourceRoot":"","sources":["../../../src/tui/input-display.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAC3B,OAAO,WAAW,MAAM,cAAc,CAAC;AAEvC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,SAAS,SAAS,CAAC,KAAa;IAC9B,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;SAClF,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,KAAa;IAC9C,OAAO,SAAS,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,KAAa,EAAE,OAAe;IAC5D,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5D,IAAI,WAAW,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACjC,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;IAC/B,IAAI,WAAW,CAAC,KAAK,CAAC,IAAI,WAAW;QAAE,OAAO,KAAK,CAAC;IACpD,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IAChE,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,IAAI,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;IACzB,OAAO,KAAK,GAAG,CAAC,EAAE,CAAC;QACjB,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAE,CAAC,CAAC;QAC7C,IAAI,IAAI,GAAG,KAAK,GAAG,WAAW;YAAE,MAAM;QACtC,IAAI,IAAI,KAAK,CAAC;QACd,KAAK,IAAI,CAAC,CAAC;IACb,CAAC;IACD,OAAO,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,KAM5B;IACC,MAAM,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;IACxF,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,IAAI,WAAW,GAAG,EAAE,CAAC;QACrB,KAAK,MAAM,IAAI,IAAI,SAAS,CAAC,KAAK,CAAC,WAAW,IAAI,EAAE,CAAC,EAAE,CAAC;YACtD,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC;gBAAE,MAAM;YACnG,WAAW,IAAI,IAAI,CAAC;QACtB,CAAC;QACD,OAAO,MAAC,IAAI,eAAC,KAAC,IAAI,IAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,uBAAU,EACxD,KAAC,IAAI,IAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,YAAG,WAAW,GAAQ,IAAO,CAAC;IACpE,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,KAAK,EAAE,CAAC;QACxC,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;QAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;QACjE,MAAM,MAAM,GAAG,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAC/E,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACvE,IAAI,KAAK,GAAG,EAAE,CAAC;QACf,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;YACvC,IAAI,WAAW,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,SAAS;gBAAE,MAAM;YACjD,KAAK,IAAI,IAAI,CAAC;QAChB,CAAC;QACD,OAAO,MAAC,IAAI,eAAE,MAAM,EAAC,KAAC,IAAI,IAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,uBAAU,EAAC,KAAK,IAAQ,CAAC;IACnF,CAAC;IACD,MAAM,OAAO,GAAG,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IACtD,OAAO,MAAC,IAAI,eAAE,OAAO,EAAC,KAAC,IAAI,IAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,uBAAU,IAAO,CAAC;AAC7E,CAAC"}
@@ -9,4 +9,48 @@ export interface TuiKeyInput {
9
9
  input: string;
10
10
  key: Pick<Key, 'ctrl' | 'escape'>;
11
11
  }
12
+ export type TuiSessionNavigationKeyAction = 'home' | 'reload';
13
+ export type TuiGlobalKeyAction = TuiSessionNavigationKeyAction | 'back' | 'help' | 'exit' | 'cancel';
14
+ export interface TuiGlobalActionDefinition {
15
+ action: TuiGlobalKeyAction;
16
+ key: 'h' | 'H' | 'Escape' | 'b' | '?' | 'q' | 'Ctrl+C';
17
+ menuOnly: boolean;
18
+ }
19
+ export declare const TUI_GLOBAL_ACTIONS: readonly [{
20
+ readonly action: "home";
21
+ readonly key: "h";
22
+ readonly menuOnly: true;
23
+ }, {
24
+ readonly action: "reload";
25
+ readonly key: "H";
26
+ readonly menuOnly: true;
27
+ }, {
28
+ readonly action: "back";
29
+ readonly key: "b";
30
+ readonly menuOnly: true;
31
+ }, {
32
+ readonly action: "back";
33
+ readonly key: "Escape";
34
+ readonly menuOnly: true;
35
+ }, {
36
+ readonly action: "help";
37
+ readonly key: "?";
38
+ readonly menuOnly: true;
39
+ }, {
40
+ readonly action: "exit";
41
+ readonly key: "q";
42
+ readonly menuOnly: true;
43
+ }, {
44
+ readonly action: "cancel";
45
+ readonly key: "Escape";
46
+ readonly menuOnly: false;
47
+ }, {
48
+ readonly action: "exit";
49
+ readonly key: "Ctrl+C";
50
+ readonly menuOnly: false;
51
+ }];
52
+ export declare function resolveTuiGlobalKeyAction(event: TuiKeyInput, context: TuiKeyContext): TuiGlobalKeyAction | null;
53
+ export declare function resolveTuiSessionNavigationKey(event: TuiKeyInput, options: {
54
+ characterInput: boolean;
55
+ }): TuiSessionNavigationKeyAction | null;
12
56
  export declare function resolveTuiKeyAction(event: TuiKeyInput, context: TuiKeyContext): Exclude<CliPromptAction, 'select'> | null;