@songtonyli/dsh-cli 0.1.11 → 0.1.13

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 (1723) hide show
  1. package/README.md +1 -1
  2. package/bin/dsh.mjs +1 -1
  3. package/node_modules/@deepseek-ai/cordis/lib/index.js +3 -2
  4. package/node_modules/@deepseek-ai/cordis/src/logger.ts +3 -2
  5. package/node_modules/@deepseek-ai/cordis-plugin-loader/lib/index.js +1 -1
  6. package/node_modules/@deepseek-ai/cordis-plugin-loader/src/config/entry.ts +1 -1
  7. package/node_modules/@deepseek-ai/dsh/README.i18n.yaml +2 -2
  8. package/node_modules/@deepseek-ai/dsh/README.md +6 -4
  9. package/node_modules/@deepseek-ai/dsh/README.zh.md +6 -4
  10. package/node_modules/@deepseek-ai/dsh/lib/bin.js +118 -54
  11. package/node_modules/@deepseek-ai/dsh/lib/{dump-config-CpQgpJa2.js → dump-config-Bb5YvFIX.js} +1 -1
  12. package/node_modules/@deepseek-ai/dsh/lib/plugin-DJ-rVHUS.js +31 -0
  13. package/node_modules/@deepseek-ai/dsh/lib/{profile-boot-CuwbWsnH.js → profile-boot-BNu17Y9U.js} +82 -135
  14. package/node_modules/@deepseek-ai/dsh/lib/profile-boot.js +2 -0
  15. package/node_modules/@deepseek-ai/dsh/package.json +117 -102
  16. package/node_modules/@deepseek-ai/dsh-acp/package.json +22 -22
  17. package/node_modules/@deepseek-ai/dsh-acp-app/README.i18n.yaml +2 -2
  18. package/node_modules/@deepseek-ai/dsh-acp-app/README.md +1 -1
  19. package/node_modules/@deepseek-ai/dsh-acp-app/README.zh.md +1 -1
  20. package/node_modules/@deepseek-ai/dsh-acp-app/cordis.patch.yml +3 -0
  21. package/node_modules/@deepseek-ai/dsh-acp-app/package.json +3 -3
  22. package/node_modules/@deepseek-ai/dsh-agent/package.json +18 -18
  23. package/node_modules/@deepseek-ai/dsh-agent-default-model/package.json +7 -7
  24. package/node_modules/@deepseek-ai/dsh-agent-instructions/package.json +21 -21
  25. package/node_modules/@deepseek-ai/dsh-agent-loop/README.i18n.yaml +2 -2
  26. package/node_modules/@deepseek-ai/dsh-agent-loop/README.md +1 -1
  27. package/node_modules/@deepseek-ai/dsh-agent-loop/README.zh.md +1 -1
  28. package/node_modules/@deepseek-ai/dsh-agent-loop/lib/index.js +2 -3
  29. package/node_modules/@deepseek-ai/dsh-agent-loop/package.json +25 -25
  30. package/node_modules/@deepseek-ai/dsh-agent-presets/package.json +27 -27
  31. package/node_modules/@deepseek-ai/dsh-agent-presets/presets/cordis/agent.cordis.yml +23 -13
  32. package/node_modules/@deepseek-ai/dsh-agent-presets/presets/cordis/preset.yml +1 -1
  33. package/node_modules/@deepseek-ai/dsh-agent-presets/presets/cordis/skills/cordis-plugin-development/SKILL.md +73 -385
  34. package/node_modules/@deepseek-ai/dsh-agent-presets/presets/cordis/skills/editing-cordis-compositions/SKILL.md +9 -72
  35. package/node_modules/@deepseek-ai/dsh-agent-presets/presets/ptc/agent.cordis.yml +4 -0
  36. package/node_modules/@deepseek-ai/dsh-agent-presets/presets/standard/agent.cordis.yml +4 -0
  37. package/node_modules/@deepseek-ai/dsh-agent-tool-presentation/package.json +8 -8
  38. package/node_modules/@deepseek-ai/dsh-anonymous-user-id/package.json +5 -5
  39. package/node_modules/@deepseek-ai/dsh-api-authorization-controller/package.json +10 -10
  40. package/node_modules/@deepseek-ai/dsh-api-gateway/README.i18n.yaml +2 -2
  41. package/node_modules/@deepseek-ai/dsh-api-gateway/README.md +9 -5
  42. package/node_modules/@deepseek-ai/dsh-api-gateway/README.zh.md +9 -5
  43. package/node_modules/@deepseek-ai/dsh-api-gateway/lib/client.js +41 -51
  44. package/node_modules/@deepseek-ai/dsh-api-gateway/lib/types/client/index.js +4 -17
  45. package/node_modules/@deepseek-ai/dsh-api-gateway/lib/types/client/remote-events.js +33 -38
  46. package/node_modules/@deepseek-ai/dsh-api-gateway/lib/types/client/stream-client.js +2 -1
  47. package/node_modules/@deepseek-ai/dsh-api-gateway/package.json +9 -9
  48. package/node_modules/@deepseek-ai/dsh-api-remotes/README.i18n.yaml +2 -2
  49. package/node_modules/@deepseek-ai/dsh-api-remotes/README.md +1 -1
  50. package/node_modules/@deepseek-ai/dsh-api-remotes/README.zh.md +1 -1
  51. package/node_modules/@deepseek-ai/dsh-api-remotes/lib/client.js +754 -76
  52. package/node_modules/@deepseek-ai/dsh-api-remotes/lib/index.js +12 -0
  53. package/node_modules/@deepseek-ai/dsh-api-remotes/lib/types/client/index.js +5 -4
  54. package/node_modules/@deepseek-ai/dsh-api-remotes/lib/types/remote-events.js +3 -0
  55. package/node_modules/@deepseek-ai/dsh-api-remotes/package.json +37 -35
  56. package/node_modules/@deepseek-ai/dsh-api-session-controller/README.i18n.yaml +2 -2
  57. package/node_modules/@deepseek-ai/dsh-api-session-controller/README.md +15 -3
  58. package/node_modules/@deepseek-ai/dsh-api-session-controller/README.zh.md +15 -3
  59. package/node_modules/@deepseek-ai/dsh-api-session-controller/lib/client.js +428 -471
  60. package/node_modules/@deepseek-ai/dsh-api-session-controller/lib/index.js +16 -47
  61. package/node_modules/@deepseek-ai/dsh-api-session-controller/lib/typert.host.js +11 -32
  62. package/node_modules/@deepseek-ai/dsh-api-session-controller/lib/typert.remote-client.js +0 -21
  63. package/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/agent.js +8 -1
  64. package/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/client/index.js +16 -5
  65. package/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/client/scope.js +15 -22
  66. package/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/client/sessions/lineage.js +1 -3
  67. package/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/client/sessions/manager.js +75 -174
  68. package/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/client/sessions/projection-store.js +6 -14
  69. package/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/client/sessions/service.js +259 -244
  70. package/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/client/sessions/session.js +29 -33
  71. package/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/commands.js +10 -4
  72. package/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/control.js +1 -41
  73. package/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/index.js +1 -1
  74. package/node_modules/@deepseek-ai/dsh-api-session-controller/package.json +66 -66
  75. package/node_modules/@deepseek-ai/dsh-api-settings-controller/package.json +13 -13
  76. package/node_modules/@deepseek-ai/dsh-api-terminal-controller/README.i18n.yaml +2 -2
  77. package/node_modules/@deepseek-ai/dsh-api-terminal-controller/README.md +14 -5
  78. package/node_modules/@deepseek-ai/dsh-api-terminal-controller/README.zh.md +14 -5
  79. package/node_modules/@deepseek-ai/dsh-api-terminal-controller/lib/client.js +249 -19
  80. package/node_modules/@deepseek-ai/dsh-api-terminal-controller/lib/index.js +258 -50
  81. package/node_modules/@deepseek-ai/dsh-api-terminal-controller/lib/typert.host.js +67 -11
  82. package/node_modules/@deepseek-ai/dsh-api-terminal-controller/lib/typert.remote-client.js +54 -9
  83. package/node_modules/@deepseek-ai/dsh-api-terminal-controller/lib/types/client/bindings.js +71 -0
  84. package/node_modules/@deepseek-ai/dsh-api-terminal-controller/lib/types/client/index.js +83 -8
  85. package/node_modules/@deepseek-ai/dsh-api-terminal-controller/lib/types/client/model.js +20 -7
  86. package/node_modules/@deepseek-ai/dsh-api-terminal-controller/lib/types/client/retention.js +77 -0
  87. package/node_modules/@deepseek-ai/dsh-api-terminal-controller/lib/types/index.js +49 -43
  88. package/node_modules/@deepseek-ai/dsh-api-terminal-controller/lib/types/retention.js +153 -0
  89. package/node_modules/@deepseek-ai/dsh-api-terminal-controller/lib/types/terminal.js +35 -0
  90. package/node_modules/@deepseek-ai/dsh-api-terminal-controller/package.json +16 -16
  91. package/node_modules/@deepseek-ai/dsh-api-workspace-controller/package.json +16 -16
  92. package/node_modules/@deepseek-ai/dsh-api-workspace-files/README.i18n.yaml +2 -2
  93. package/node_modules/@deepseek-ai/dsh-api-workspace-files/README.md +2 -0
  94. package/node_modules/@deepseek-ai/dsh-api-workspace-files/README.zh.md +2 -0
  95. package/node_modules/@deepseek-ai/dsh-api-workspace-files/lib/index.js +6 -11
  96. package/node_modules/@deepseek-ai/dsh-api-workspace-files/lib/typert.host.js +4 -4
  97. package/node_modules/@deepseek-ai/dsh-api-workspace-files/lib/typert.remote-client.js +4 -4
  98. package/node_modules/@deepseek-ai/dsh-api-workspace-files/lib/types/index.js +6 -7
  99. package/node_modules/@deepseek-ai/dsh-api-workspace-files/package.json +11 -10
  100. package/node_modules/@deepseek-ai/dsh-app-boot/README.i18n.yaml +2 -2
  101. package/node_modules/@deepseek-ai/dsh-app-boot/README.md +18 -8
  102. package/node_modules/@deepseek-ai/dsh-app-boot/README.zh.md +17 -7
  103. package/node_modules/@deepseek-ai/dsh-app-boot/lib/index.js +360 -202
  104. package/node_modules/@deepseek-ai/dsh-app-boot/package.json +9 -17
  105. package/node_modules/@deepseek-ai/dsh-atomic-write/README.i18n.yaml +2 -2
  106. package/node_modules/@deepseek-ai/dsh-atomic-write/README.md +2 -0
  107. package/node_modules/@deepseek-ai/dsh-atomic-write/README.zh.md +2 -0
  108. package/node_modules/@deepseek-ai/dsh-atomic-write/lib/index.js +8 -3
  109. package/node_modules/@deepseek-ai/dsh-atomic-write/package.json +1 -1
  110. package/node_modules/@deepseek-ai/dsh-attachment/package.json +3 -3
  111. package/node_modules/@deepseek-ai/dsh-attachment-local/package.json +6 -6
  112. package/node_modules/@deepseek-ai/dsh-authorization/package.json +7 -7
  113. package/node_modules/@deepseek-ai/dsh-base/cordis.patch.yml +12 -5
  114. package/node_modules/@deepseek-ai/dsh-base/package.json +89 -88
  115. package/node_modules/@deepseek-ai/dsh-bash-local/package.json +10 -10
  116. package/node_modules/@deepseek-ai/dsh-bash-sandbox/package.json +12 -12
  117. package/node_modules/@deepseek-ai/dsh-brand/package.json +1 -1
  118. package/node_modules/@deepseek-ai/dsh-chunked-list/package.json +1 -1
  119. package/node_modules/@deepseek-ai/dsh-client-connection/README.i18n.yaml +2 -2
  120. package/node_modules/@deepseek-ai/dsh-client-connection/README.md +4 -0
  121. package/node_modules/@deepseek-ai/dsh-client-connection/README.zh.md +4 -0
  122. package/node_modules/@deepseek-ai/dsh-client-connection/lib/index.js +1 -1
  123. package/node_modules/@deepseek-ai/dsh-client-connection/package.json +7 -7
  124. package/node_modules/@deepseek-ai/dsh-client-file-upload/package.json +12 -12
  125. package/node_modules/@deepseek-ai/dsh-client-hmr/README.i18n.yaml +2 -2
  126. package/node_modules/@deepseek-ai/dsh-client-hmr/README.md +11 -11
  127. package/node_modules/@deepseek-ai/dsh-client-hmr/README.zh.md +11 -11
  128. package/node_modules/@deepseek-ai/dsh-client-hmr/lib/client.js +10 -59
  129. package/node_modules/@deepseek-ai/dsh-client-hmr/lib/index.js +15 -7
  130. package/node_modules/@deepseek-ai/dsh-client-hmr/package.json +5 -5
  131. package/node_modules/@deepseek-ai/dsh-client-locale/package.json +8 -6
  132. package/node_modules/@deepseek-ai/dsh-client-modules/README.i18n.yaml +2 -2
  133. package/node_modules/@deepseek-ai/dsh-client-modules/README.md +14 -4
  134. package/node_modules/@deepseek-ai/dsh-client-modules/README.zh.md +14 -4
  135. package/node_modules/@deepseek-ai/dsh-client-modules/lib/client.js +407 -26
  136. package/node_modules/@deepseek-ai/dsh-client-modules/lib/index.js +62 -10
  137. package/node_modules/@deepseek-ai/dsh-client-modules/package.json +4 -4
  138. package/node_modules/@deepseek-ai/dsh-client-resources/package.json +4 -3
  139. package/node_modules/@deepseek-ai/dsh-client-ui-agent-preset/lib/client.js +140 -48
  140. package/node_modules/@deepseek-ai/dsh-client-ui-agent-preset/package.json +15 -12
  141. package/node_modules/@deepseek-ai/dsh-client-ui-approval/package.json +12 -10
  142. package/node_modules/@deepseek-ai/dsh-client-ui-attachment/README.i18n.yaml +2 -2
  143. package/node_modules/@deepseek-ai/dsh-client-ui-attachment/README.md +2 -0
  144. package/node_modules/@deepseek-ai/dsh-client-ui-attachment/README.zh.md +2 -0
  145. package/node_modules/@deepseek-ai/dsh-client-ui-attachment/lib/client.js +24 -12
  146. package/node_modules/@deepseek-ai/dsh-client-ui-attachment/package.json +9 -7
  147. package/node_modules/@deepseek-ai/dsh-client-ui-brand-official/package.json +4 -3
  148. package/node_modules/@deepseek-ai/dsh-client-ui-chat/README.i18n.yaml +2 -2
  149. package/node_modules/@deepseek-ai/dsh-client-ui-chat/README.md +4 -2
  150. package/node_modules/@deepseek-ai/dsh-client-ui-chat/README.zh.md +4 -2
  151. package/node_modules/@deepseek-ai/dsh-client-ui-chat/lib/client.js +49 -34
  152. package/node_modules/@deepseek-ai/dsh-client-ui-chat/package.json +33 -29
  153. package/node_modules/@deepseek-ai/dsh-client-ui-commands/README.i18n.yaml +2 -2
  154. package/node_modules/@deepseek-ai/dsh-client-ui-commands/README.md +1 -1
  155. package/node_modules/@deepseek-ai/dsh-client-ui-commands/README.zh.md +1 -1
  156. package/node_modules/@deepseek-ai/dsh-client-ui-commands/lib/client.js +107 -34
  157. package/node_modules/@deepseek-ai/dsh-client-ui-commands/package.json +14 -11
  158. package/node_modules/@deepseek-ai/dsh-client-ui-conversation/README.i18n.yaml +2 -2
  159. package/node_modules/@deepseek-ai/dsh-client-ui-conversation/README.md +13 -2
  160. package/node_modules/@deepseek-ai/dsh-client-ui-conversation/README.zh.md +13 -2
  161. package/node_modules/@deepseek-ai/dsh-client-ui-conversation/lib/client.js +520 -384
  162. package/node_modules/@deepseek-ai/dsh-client-ui-conversation/package.json +30 -26
  163. package/node_modules/@deepseek-ai/dsh-client-ui-cordis/README.i18n.yaml +2 -2
  164. package/node_modules/@deepseek-ai/dsh-client-ui-cordis/README.md +9 -13
  165. package/node_modules/@deepseek-ai/dsh-client-ui-cordis/README.zh.md +9 -13
  166. package/node_modules/@deepseek-ai/dsh-client-ui-cordis/lib/client.js +3 -35
  167. package/node_modules/@deepseek-ai/dsh-client-ui-cordis/package.json +12 -12
  168. package/node_modules/@deepseek-ai/dsh-client-ui-deliverables/README.i18n.yaml +2 -2
  169. package/node_modules/@deepseek-ai/dsh-client-ui-deliverables/README.md +25 -15
  170. package/node_modules/@deepseek-ai/dsh-client-ui-deliverables/README.zh.md +25 -15
  171. package/node_modules/@deepseek-ai/dsh-client-ui-deliverables/lib/client.js +1364 -160
  172. package/node_modules/@deepseek-ai/dsh-client-ui-deliverables/lib/index.js +164 -41
  173. package/node_modules/@deepseek-ai/dsh-client-ui-deliverables/package.json +27 -22
  174. package/node_modules/@deepseek-ai/dsh-client-ui-directory-picker-browse/package.json +7 -5
  175. package/node_modules/@deepseek-ai/dsh-client-ui-directory-picker-native/README.i18n.yaml +2 -2
  176. package/node_modules/@deepseek-ai/dsh-client-ui-directory-picker-native/README.md +8 -5
  177. package/node_modules/@deepseek-ai/dsh-client-ui-directory-picker-native/README.zh.md +7 -4
  178. package/node_modules/@deepseek-ai/dsh-client-ui-directory-picker-native/lib/client.js +3 -1
  179. package/node_modules/@deepseek-ai/dsh-client-ui-directory-picker-native/package.json +4 -4
  180. package/node_modules/@deepseek-ai/dsh-client-ui-goal/package.json +14 -12
  181. package/node_modules/@deepseek-ai/dsh-client-ui-input-trigger/README.i18n.yaml +2 -2
  182. package/node_modules/@deepseek-ai/dsh-client-ui-input-trigger/README.md +1 -1
  183. package/node_modules/@deepseek-ai/dsh-client-ui-input-trigger/README.zh.md +1 -1
  184. package/node_modules/@deepseek-ai/dsh-client-ui-input-trigger/lib/client.js +112 -11
  185. package/node_modules/@deepseek-ai/dsh-client-ui-input-trigger/package.json +11 -8
  186. package/node_modules/@deepseek-ai/dsh-client-ui-jobs/package.json +8 -6
  187. package/node_modules/@deepseek-ai/dsh-client-ui-layout/README.i18n.yaml +2 -2
  188. package/node_modules/@deepseek-ai/dsh-client-ui-layout/README.md +2 -0
  189. package/node_modules/@deepseek-ai/dsh-client-ui-layout/README.zh.md +2 -0
  190. package/node_modules/@deepseek-ai/dsh-client-ui-layout/lib/client.js +27 -8
  191. package/node_modules/@deepseek-ai/dsh-client-ui-layout/package.json +7 -6
  192. package/node_modules/@deepseek-ai/dsh-client-ui-message-feedback/package.json +15 -13
  193. package/node_modules/@deepseek-ai/dsh-client-ui-model-selection/README.i18n.yaml +2 -2
  194. package/node_modules/@deepseek-ai/dsh-client-ui-model-selection/README.md +5 -1
  195. package/node_modules/@deepseek-ai/dsh-client-ui-model-selection/README.zh.md +5 -1
  196. package/node_modules/@deepseek-ai/dsh-client-ui-model-selection/lib/client.js +152 -33
  197. package/node_modules/@deepseek-ai/dsh-client-ui-model-selection/package.json +14 -11
  198. package/node_modules/@deepseek-ai/dsh-client-ui-open-in-app/package.json +10 -8
  199. package/node_modules/@deepseek-ai/dsh-client-ui-permission-presets/package.json +14 -12
  200. package/node_modules/@deepseek-ai/dsh-client-ui-plan/README.i18n.yaml +2 -2
  201. package/node_modules/@deepseek-ai/dsh-client-ui-plan/README.md +9 -1
  202. package/node_modules/@deepseek-ai/dsh-client-ui-plan/README.zh.md +9 -1
  203. package/node_modules/@deepseek-ai/dsh-client-ui-plan/lib/client.js +564 -4
  204. package/node_modules/@deepseek-ai/dsh-client-ui-plan/package.json +26 -10
  205. package/node_modules/@deepseek-ai/dsh-client-ui-plugin-manager/README.i18n.yaml +6 -0
  206. package/node_modules/@deepseek-ai/dsh-client-ui-plugin-manager/README.md +129 -0
  207. package/node_modules/@deepseek-ai/dsh-client-ui-plugin-manager/README.zh.md +129 -0
  208. package/node_modules/@deepseek-ai/dsh-client-ui-plugin-manager/lib/client.js +2550 -0
  209. package/node_modules/@deepseek-ai/dsh-client-ui-plugin-manager/lib/index.js +6 -0
  210. package/node_modules/@deepseek-ai/dsh-client-ui-plugin-manager/package.json +65 -0
  211. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/LICENSE +21 -0
  212. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/README.i18n.yaml +6 -0
  213. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/README.md +172 -0
  214. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/README.zh.md +172 -0
  215. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/Button.module.css +79 -0
  216. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/Checkbox.module.css +28 -0
  217. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/ConnectionIndicator.module.css +123 -0
  218. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/DiffBlock.module.css +109 -0
  219. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/DisclosureRow.module.css +84 -0
  220. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/FileTypeIcon.module.css +50 -0
  221. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/HoverCard.module.css +54 -0
  222. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/Input.module.css +38 -0
  223. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/JsonTree.module.css +345 -0
  224. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/Menu.module.css +261 -0
  225. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/Modal.module.css +103 -0
  226. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/OnboardingSurface.module.css +29 -0
  227. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/Pill.module.css +27 -0
  228. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/ReadBlock.module.css +111 -0
  229. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/RiskConfirmation.module.css +73 -0
  230. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/SearchBlock.module.css +112 -0
  231. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/StateDot.module.css +73 -0
  232. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/Switch.module.css +50 -0
  233. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/Tag.module.css +57 -0
  234. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/TerminalBlock.module.css +205 -0
  235. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/Toast.module.css +72 -0
  236. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/Tooltip.module.css +42 -0
  237. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/WebBlock.module.css +141 -0
  238. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/index.js +8666 -0
  239. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/markdown/CodeBlock.module.css +130 -0
  240. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/markdown/JsonBlock.module.css +32 -0
  241. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/markdown/MarkdownText.module.css +462 -0
  242. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/BrandWordmark.d.ts +15 -0
  243. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/Button.d.ts +18 -0
  244. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/Checkbox.d.ts +20 -0
  245. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/CodeFileIcon.d.ts +12 -0
  246. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/ConnectionIndicator.d.ts +26 -0
  247. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/DiffBlock.d.ts +52 -0
  248. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/DisclosureRow.d.ts +29 -0
  249. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/FileTypeIcon.d.ts +43 -0
  250. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/FishLogo.d.ts +16 -0
  251. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/FoldToggle.d.ts +20 -0
  252. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/HoverCard.d.ts +24 -0
  253. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/Input.d.ts +11 -0
  254. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/JsonTree.d.ts +59 -0
  255. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/LinkIcon.d.ts +49 -0
  256. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/Menu.d.ts +90 -0
  257. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/Modal.d.ts +36 -0
  258. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/OnboardingSurface.d.ts +11 -0
  259. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/Pill.d.ts +13 -0
  260. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/ReadBlock.d.ts +47 -0
  261. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/ReferenceIcon.d.ts +16 -0
  262. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/RiskConfirmation.d.ts +20 -0
  263. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/SearchBlock.d.ts +72 -0
  264. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/SiteGlyph.d.ts +25 -0
  265. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/StateDot.d.ts +18 -0
  266. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/Switch.d.ts +20 -0
  267. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/Tag.d.ts +32 -0
  268. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/TerminalBlock.d.ts +66 -0
  269. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/Toast.d.ts +32 -0
  270. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/Tooltip.d.ts +34 -0
  271. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/WebBlock.d.ts +61 -0
  272. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/ansi.d.ts +17 -0
  273. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/clipboard.d.ts +9 -0
  274. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/code-file-icon-artwork.d.ts +54 -0
  275. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/code-file-types.d.ts +30 -0
  276. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/darwin-desktop.d.ts +9 -0
  277. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/file-size.d.ts +8 -0
  278. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/head-tail-cap.d.ts +23 -0
  279. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/icons/index.d.ts +200 -0
  280. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/icons/props.d.ts +9 -0
  281. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/index.d.ts +70 -0
  282. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/markdown/CodeBlock.d.ts +30 -0
  283. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/markdown/JsonBlock.d.ts +8 -0
  284. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/markdown/MarkdownDelegate.d.ts +36 -0
  285. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/markdown/MarkdownText.d.ts +49 -0
  286. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/markdown/cjkFriendlyStrong.d.ts +9 -0
  287. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/markdown/file-link.d.ts +13 -0
  288. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/markdown/highlight.d.ts +142 -0
  289. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/markdown/incremental.d.ts +80 -0
  290. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/markdown/katex.d.ts +27 -0
  291. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/markdown/mathCompatibility.d.ts +11 -0
  292. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/markdown/parse.d.ts +25 -0
  293. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/markdown/plain-text.d.ts +22 -0
  294. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/markdown/render.d.ts +138 -0
  295. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/markdown/useViewportHighlighting.d.ts +11 -0
  296. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/pointer-grace.d.ts +22 -0
  297. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/rank-by-name.d.ts +22 -0
  298. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/relative-time.d.ts +23 -0
  299. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/use-copy-feedback.d.ts +14 -0
  300. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/useAnchoredMaxHeight.d.ts +11 -0
  301. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/useAnchoredPosition.d.ts +34 -0
  302. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/useDismissOnOutsidePointer.d.ts +11 -0
  303. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/user-text.d.ts +37 -0
  304. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/user-text.module.css +43 -0
  305. package/node_modules/@deepseek-ai/dsh-client-ui-primitives/package.json +60 -0
  306. package/node_modules/@deepseek-ai/dsh-client-ui-reference/README.i18n.yaml +2 -2
  307. package/node_modules/@deepseek-ai/dsh-client-ui-reference/README.md +1 -1
  308. package/node_modules/@deepseek-ai/dsh-client-ui-reference/README.zh.md +1 -1
  309. package/node_modules/@deepseek-ai/dsh-client-ui-reference/lib/client.js +19 -5
  310. package/node_modules/@deepseek-ai/dsh-client-ui-reference/package.json +13 -11
  311. package/node_modules/@deepseek-ai/dsh-client-ui-renderer/README.i18n.yaml +2 -2
  312. package/node_modules/@deepseek-ai/dsh-client-ui-renderer/README.md +4 -3
  313. package/node_modules/@deepseek-ai/dsh-client-ui-renderer/README.zh.md +4 -3
  314. package/node_modules/@deepseek-ai/dsh-client-ui-renderer/lib/client.js +463 -57
  315. package/node_modules/@deepseek-ai/dsh-client-ui-renderer/package.json +3 -2
  316. package/node_modules/@deepseek-ai/dsh-client-ui-schedule/package.json +10 -8
  317. package/node_modules/@deepseek-ai/dsh-client-ui-session/README.i18n.yaml +2 -2
  318. package/node_modules/@deepseek-ai/dsh-client-ui-session/README.md +1 -1
  319. package/node_modules/@deepseek-ai/dsh-client-ui-session/README.zh.md +1 -1
  320. package/node_modules/@deepseek-ai/dsh-client-ui-session/lib/client.js +232 -72
  321. package/node_modules/@deepseek-ai/dsh-client-ui-session/package.json +8 -4
  322. package/node_modules/@deepseek-ai/dsh-client-ui-settings/package.json +5 -4
  323. package/node_modules/@deepseek-ai/dsh-client-ui-settings-general/README.i18n.yaml +2 -2
  324. package/node_modules/@deepseek-ai/dsh-client-ui-settings-general/README.md +2 -0
  325. package/node_modules/@deepseek-ai/dsh-client-ui-settings-general/README.zh.md +2 -0
  326. package/node_modules/@deepseek-ai/dsh-client-ui-settings-general/lib/client.js +293 -27
  327. package/node_modules/@deepseek-ai/dsh-client-ui-settings-general/package.json +11 -9
  328. package/node_modules/@deepseek-ai/dsh-client-ui-settings-models/README.i18n.yaml +2 -2
  329. package/node_modules/@deepseek-ai/dsh-client-ui-settings-models/README.md +4 -2
  330. package/node_modules/@deepseek-ai/dsh-client-ui-settings-models/README.zh.md +4 -2
  331. package/node_modules/@deepseek-ai/dsh-client-ui-settings-models/lib/client.js +244 -227
  332. package/node_modules/@deepseek-ai/dsh-client-ui-settings-models/package.json +8 -6
  333. package/node_modules/@deepseek-ai/dsh-client-ui-settings-plugin-inventory/README.i18n.yaml +2 -2
  334. package/node_modules/@deepseek-ai/dsh-client-ui-settings-plugin-inventory/README.md +6 -2
  335. package/node_modules/@deepseek-ai/dsh-client-ui-settings-plugin-inventory/README.zh.md +6 -2
  336. package/node_modules/@deepseek-ai/dsh-client-ui-settings-plugin-inventory/lib/client.js +52 -10
  337. package/node_modules/@deepseek-ai/dsh-client-ui-settings-plugin-inventory/package.json +12 -8
  338. package/node_modules/@deepseek-ai/dsh-client-ui-settings-plugins/README.i18n.yaml +2 -2
  339. package/node_modules/@deepseek-ai/dsh-client-ui-settings-plugins/README.md +24 -19
  340. package/node_modules/@deepseek-ai/dsh-client-ui-settings-plugins/README.zh.md +23 -18
  341. package/node_modules/@deepseek-ai/dsh-client-ui-settings-plugins/lib/client.js +649 -509
  342. package/node_modules/@deepseek-ai/dsh-client-ui-settings-plugins/package.json +10 -7
  343. package/node_modules/@deepseek-ai/dsh-client-ui-settings-signin/package.json +7 -5
  344. package/node_modules/@deepseek-ai/dsh-client-ui-settings-unarchive-sessions/package.json +11 -9
  345. package/node_modules/@deepseek-ai/dsh-client-ui-sidebar/README.i18n.yaml +2 -2
  346. package/node_modules/@deepseek-ai/dsh-client-ui-sidebar/README.md +8 -0
  347. package/node_modules/@deepseek-ai/dsh-client-ui-sidebar/README.zh.md +8 -0
  348. package/node_modules/@deepseek-ai/dsh-client-ui-sidebar/lib/client.js +105 -25
  349. package/node_modules/@deepseek-ai/dsh-client-ui-sidebar/package.json +11 -7
  350. package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-browser/README.i18n.yaml +6 -0
  351. package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-browser/README.md +117 -0
  352. package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-browser/README.zh.md +117 -0
  353. package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-browser/lib/client.js +821 -0
  354. package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-browser/lib/index.js +6 -0
  355. package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-browser/package.json +60 -0
  356. package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-documentpreview/README.i18n.yaml +2 -2
  357. package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-documentpreview/README.md +39 -6
  358. package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-documentpreview/README.zh.md +39 -6
  359. package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-documentpreview/lib/client.js +1821 -25130
  360. package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-documentpreview/lib/client.pdf.js +32609 -0
  361. package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-documentpreview/lib/index.js +26 -4
  362. package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-documentpreview/package.json +25 -15
  363. package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-files/package.json +11 -9
  364. package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-right/README.i18n.yaml +2 -2
  365. package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-right/README.md +9 -3
  366. package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-right/README.zh.md +9 -3
  367. package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-right/lib/client.js +4538 -13
  368. package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-right/package.json +13 -10
  369. package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-terminal/README.i18n.yaml +2 -2
  370. package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-terminal/README.md +8 -5
  371. package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-terminal/README.zh.md +8 -5
  372. package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-terminal/lib/client.js +42 -13423
  373. package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-terminal/lib/client.terminal.js +13494 -0
  374. package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-terminal/package.json +14 -11
  375. package/node_modules/@deepseek-ai/dsh-client-ui-skill/package.json +13 -11
  376. package/node_modules/@deepseek-ai/dsh-client-ui-slots/LICENSE +21 -0
  377. package/node_modules/@deepseek-ai/dsh-client-ui-slots/README.i18n.yaml +6 -0
  378. package/node_modules/@deepseek-ai/dsh-client-ui-slots/README.md +111 -0
  379. package/node_modules/@deepseek-ai/dsh-client-ui-slots/README.zh.md +111 -0
  380. package/node_modules/@deepseek-ai/dsh-client-ui-slots/lib/index.js +577 -0
  381. package/node_modules/@deepseek-ai/dsh-client-ui-slots/lib/types/index.d.ts +951 -0
  382. package/node_modules/@deepseek-ai/dsh-client-ui-slots/lib/types/renderer.d.ts +263 -0
  383. package/node_modules/@deepseek-ai/dsh-client-ui-slots/lib/types/store.d.ts +3 -0
  384. package/node_modules/@deepseek-ai/dsh-client-ui-slots/package.json +37 -0
  385. package/node_modules/@deepseek-ai/dsh-client-ui-subagent/README.i18n.yaml +2 -2
  386. package/node_modules/@deepseek-ai/dsh-client-ui-subagent/README.md +3 -1
  387. package/node_modules/@deepseek-ai/dsh-client-ui-subagent/README.zh.md +3 -1
  388. package/node_modules/@deepseek-ai/dsh-client-ui-subagent/lib/client.js +212 -16
  389. package/node_modules/@deepseek-ai/dsh-client-ui-subagent/package.json +22 -12
  390. package/node_modules/@deepseek-ai/dsh-client-ui-theme/lib/client.js +1 -1
  391. package/node_modules/@deepseek-ai/dsh-client-ui-theme/lib/index.js +1 -0
  392. package/node_modules/@deepseek-ai/dsh-client-ui-theme/package.json +10 -8
  393. package/node_modules/@deepseek-ai/dsh-client-ui-tool/lib/client.js +1 -0
  394. package/node_modules/@deepseek-ai/dsh-client-ui-tool/package.json +21 -19
  395. package/node_modules/@deepseek-ai/dsh-client-ui-trajectory/README.i18n.yaml +2 -2
  396. package/node_modules/@deepseek-ai/dsh-client-ui-trajectory/README.md +5 -1
  397. package/node_modules/@deepseek-ai/dsh-client-ui-trajectory/README.zh.md +5 -1
  398. package/node_modules/@deepseek-ai/dsh-client-ui-trajectory/lib/client.js +132 -66
  399. package/node_modules/@deepseek-ai/dsh-client-ui-trajectory/package.json +15 -13
  400. package/node_modules/@deepseek-ai/dsh-client-ui-user-questions/README.i18n.yaml +2 -2
  401. package/node_modules/@deepseek-ai/dsh-client-ui-user-questions/README.md +6 -4
  402. package/node_modules/@deepseek-ai/dsh-client-ui-user-questions/README.zh.md +6 -4
  403. package/node_modules/@deepseek-ai/dsh-client-ui-user-questions/lib/client.js +71 -74
  404. package/node_modules/@deepseek-ai/dsh-client-ui-user-questions/package.json +18 -15
  405. package/node_modules/@deepseek-ai/dsh-client-ui-workflow-run/lib/client.js +12 -5
  406. package/node_modules/@deepseek-ai/dsh-client-ui-workflow-run/package.json +15 -11
  407. package/node_modules/@deepseek-ai/dsh-client-ui-workspace/README.i18n.yaml +2 -2
  408. package/node_modules/@deepseek-ai/dsh-client-ui-workspace/README.md +10 -2
  409. package/node_modules/@deepseek-ai/dsh-client-ui-workspace/README.zh.md +10 -2
  410. package/node_modules/@deepseek-ai/dsh-client-ui-workspace/lib/client.js +403 -217
  411. package/node_modules/@deepseek-ai/dsh-client-ui-workspace/package.json +18 -15
  412. package/node_modules/@deepseek-ai/dsh-cmdline/package.json +1 -1
  413. package/node_modules/@deepseek-ai/dsh-command-compact/package.json +8 -8
  414. package/node_modules/@deepseek-ai/dsh-command-feedback/package.json +11 -11
  415. package/node_modules/@deepseek-ai/dsh-command-goal/package.json +11 -11
  416. package/node_modules/@deepseek-ai/dsh-commands/package.json +18 -18
  417. package/node_modules/@deepseek-ai/dsh-compaction/package.json +11 -11
  418. package/node_modules/@deepseek-ai/dsh-compaction-basic/package.json +22 -22
  419. package/node_modules/@deepseek-ai/dsh-compaction-image-offload/package.json +16 -16
  420. package/node_modules/@deepseek-ai/dsh-compaction-tool-result-pruner/package.json +13 -13
  421. package/node_modules/@deepseek-ai/dsh-cordis-client-runner/README.i18n.yaml +2 -2
  422. package/node_modules/@deepseek-ai/dsh-cordis-client-runner/README.md +7 -7
  423. package/node_modules/@deepseek-ai/dsh-cordis-client-runner/README.zh.md +7 -7
  424. package/node_modules/@deepseek-ai/dsh-cordis-client-runner/lib/client.js +736 -219
  425. package/node_modules/@deepseek-ai/dsh-cordis-client-runner/package.json +6 -6
  426. package/node_modules/@deepseek-ai/dsh-cordis-host-runner/README.i18n.yaml +2 -2
  427. package/node_modules/@deepseek-ai/dsh-cordis-host-runner/README.md +7 -7
  428. package/node_modules/@deepseek-ai/dsh-cordis-host-runner/README.zh.md +7 -7
  429. package/node_modules/@deepseek-ai/dsh-cordis-host-runner/lib/index.js +5 -5
  430. package/node_modules/@deepseek-ai/dsh-cordis-host-runner/lib/types/index.js +5 -8
  431. package/node_modules/@deepseek-ai/dsh-cordis-host-runner/lib/types/lifecycle.js +2 -2
  432. package/node_modules/@deepseek-ai/dsh-cordis-host-runner/package.json +16 -16
  433. package/node_modules/@deepseek-ai/dsh-credentials/package.json +4 -4
  434. package/node_modules/@deepseek-ai/dsh-credentials-local/package.json +9 -9
  435. package/node_modules/@deepseek-ai/dsh-deepseek-llm-api-extensions/package.json +1 -1
  436. package/node_modules/@deepseek-ai/dsh-deque/package.json +1 -1
  437. package/node_modules/@deepseek-ai/dsh-experimental-agent-team/README.i18n.yaml +6 -0
  438. package/node_modules/@deepseek-ai/dsh-experimental-agent-team/README.md +220 -0
  439. package/node_modules/@deepseek-ai/dsh-experimental-agent-team/README.zh.md +220 -0
  440. package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/index.js +1894 -0
  441. package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/invariant.js +361 -0
  442. package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/typert.host.js +879 -0
  443. package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/typert.remote-client.js +218 -0
  444. package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/types/activity.js +85 -0
  445. package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/types/client.js +3 -0
  446. package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/types/error.js +23 -0
  447. package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/types/index.js +313 -0
  448. package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/types/invariant.js +26 -0
  449. package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/types/journal.js +63 -0
  450. package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/types/lifecycle.js +85 -0
  451. package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/types/mailbox.js +293 -0
  452. package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/types/persisted.js +20 -0
  453. package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/types/projection.js +260 -0
  454. package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/types/roster.js +448 -0
  455. package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/types/session-message.js +23 -0
  456. package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/types/task-board.js +275 -0
  457. package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/types/task-graph.js +62 -0
  458. package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/types/types.js +26 -0
  459. package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/types/validation.js +33 -0
  460. package/node_modules/@deepseek-ai/dsh-experimental-agent-team/package.json +87 -0
  461. package/node_modules/@deepseek-ai/dsh-experimental-agent-team-profile/README.i18n.yaml +6 -0
  462. package/node_modules/@deepseek-ai/dsh-experimental-agent-team-profile/README.md +107 -0
  463. package/node_modules/@deepseek-ai/dsh-experimental-agent-team-profile/README.zh.md +107 -0
  464. package/node_modules/@deepseek-ai/dsh-experimental-agent-team-profile/cordis.patch.yml +30 -0
  465. package/node_modules/@deepseek-ai/dsh-experimental-agent-team-profile/lib/index.js +1 -0
  466. package/node_modules/@deepseek-ai/dsh-experimental-agent-team-profile/package.json +48 -0
  467. package/node_modules/@deepseek-ai/dsh-experimental-agent-team-web-profile/README.i18n.yaml +6 -0
  468. package/node_modules/@deepseek-ai/dsh-experimental-agent-team-web-profile/README.md +98 -0
  469. package/node_modules/@deepseek-ai/dsh-experimental-agent-team-web-profile/README.zh.md +98 -0
  470. package/node_modules/@deepseek-ai/dsh-experimental-agent-team-web-profile/cordis.patch.yml +6 -0
  471. package/node_modules/@deepseek-ai/dsh-experimental-agent-team-web-profile/lib/index.js +1 -0
  472. package/node_modules/@deepseek-ai/dsh-experimental-agent-team-web-profile/package.json +47 -0
  473. package/node_modules/@deepseek-ai/dsh-experimental-client-ui-agent-team/README.i18n.yaml +6 -0
  474. package/node_modules/@deepseek-ai/dsh-experimental-client-ui-agent-team/README.md +98 -0
  475. package/node_modules/@deepseek-ai/dsh-experimental-client-ui-agent-team/README.zh.md +98 -0
  476. package/node_modules/@deepseek-ai/dsh-experimental-client-ui-agent-team/lib/client.js +4979 -0
  477. package/node_modules/@deepseek-ai/dsh-experimental-client-ui-agent-team/lib/index.js +6 -0
  478. package/node_modules/@deepseek-ai/dsh-experimental-client-ui-agent-team/package.json +81 -0
  479. package/node_modules/@deepseek-ai/dsh-experimental-tool-agent-team/README.i18n.yaml +6 -0
  480. package/node_modules/@deepseek-ai/dsh-experimental-tool-agent-team/README.md +159 -0
  481. package/node_modules/@deepseek-ai/dsh-experimental-tool-agent-team/README.zh.md +159 -0
  482. package/node_modules/@deepseek-ai/dsh-experimental-tool-agent-team/lib/index.js +550 -0
  483. package/node_modules/@deepseek-ai/dsh-experimental-tool-agent-team/package.json +59 -0
  484. package/node_modules/@deepseek-ai/dsh-file-reference/package.json +3 -3
  485. package/node_modules/@deepseek-ai/dsh-file-reference-local/package.json +9 -9
  486. package/node_modules/@deepseek-ai/dsh-fs/package.json +9 -9
  487. package/node_modules/@deepseek-ai/dsh-fs-local/package.json +4 -4
  488. package/node_modules/@deepseek-ai/dsh-fs-observation-policy/package.json +4 -4
  489. package/node_modules/@deepseek-ai/dsh-fs-sandbox/package.json +10 -10
  490. package/node_modules/@deepseek-ai/dsh-goal/package.json +22 -22
  491. package/node_modules/@deepseek-ai/dsh-goal-round-driver/package.json +15 -15
  492. package/node_modules/@deepseek-ai/dsh-headless/cordis.patch.yml +3 -0
  493. package/node_modules/@deepseek-ai/dsh-headless/package.json +17 -17
  494. package/node_modules/@deepseek-ai/dsh-hmr/README.i18n.yaml +6 -0
  495. package/node_modules/@deepseek-ai/dsh-hmr/README.md +95 -0
  496. package/node_modules/@deepseek-ai/dsh-hmr/README.zh.md +95 -0
  497. package/node_modules/@deepseek-ai/dsh-hmr/lib/index.js +672 -0
  498. package/node_modules/@deepseek-ai/{cordis-plugin-hmr → dsh-hmr}/package.json +18 -21
  499. package/node_modules/@deepseek-ai/dsh-home-paths/package.json +1 -1
  500. package/node_modules/@deepseek-ai/dsh-hook-protocol/package.json +7 -7
  501. package/node_modules/@deepseek-ai/dsh-hooks-claude-code/package.json +20 -20
  502. package/node_modules/@deepseek-ai/dsh-hooks-codex/package.json +18 -18
  503. package/node_modules/@deepseek-ai/dsh-host-directory-picker/package.json +1 -1
  504. package/node_modules/@deepseek-ai/dsh-host-directory-picker-auto/package.json +13 -13
  505. package/node_modules/@deepseek-ai/dsh-host-directory-picker-browse/package.json +2 -2
  506. package/node_modules/@deepseek-ai/dsh-host-directory-picker-native/package.json +3 -3
  507. package/node_modules/@deepseek-ai/dsh-host-frontend-static/package.json +6 -6
  508. package/node_modules/@deepseek-ai/dsh-host-open-in-app/package.json +5 -5
  509. package/node_modules/@deepseek-ai/dsh-host-plugin-inventory/lib/index.js +40 -24
  510. package/node_modules/@deepseek-ai/dsh-host-plugin-inventory/lib/typert.host.js +2 -1
  511. package/node_modules/@deepseek-ai/dsh-host-plugin-inventory/lib/typert.remote-client.js +2 -1
  512. package/node_modules/@deepseek-ai/dsh-host-plugin-inventory/lib/types/index.js +36 -24
  513. package/node_modules/@deepseek-ai/dsh-host-plugin-inventory/package.json +7 -7
  514. package/node_modules/@deepseek-ai/dsh-host-webserver/package.json +1 -1
  515. package/node_modules/@deepseek-ai/dsh-http-proxy/package.json +2 -2
  516. package/node_modules/@deepseek-ai/dsh-invariants/package.json +1 -1
  517. package/node_modules/@deepseek-ai/dsh-jobs/package.json +9 -9
  518. package/node_modules/@deepseek-ai/dsh-jobs-local/package.json +11 -11
  519. package/node_modules/@deepseek-ai/dsh-launch-environment/package.json +1 -1
  520. package/node_modules/@deepseek-ai/dsh-lazy-require/package.json +1 -1
  521. package/node_modules/@deepseek-ai/dsh-llm/README.i18n.yaml +2 -2
  522. package/node_modules/@deepseek-ai/dsh-llm/README.md +1 -1
  523. package/node_modules/@deepseek-ai/dsh-llm/README.zh.md +1 -1
  524. package/node_modules/@deepseek-ai/dsh-llm/lib/index.js +2 -1
  525. package/node_modules/@deepseek-ai/dsh-llm/lib/typert.host.js +3 -2
  526. package/node_modules/@deepseek-ai/dsh-llm/lib/typert.remote-client.js +2 -1
  527. package/node_modules/@deepseek-ai/dsh-llm/lib/types/index.js +1 -0
  528. package/node_modules/@deepseek-ai/dsh-llm/package.json +8 -8
  529. package/node_modules/@deepseek-ai/dsh-llm-deepseek/README.i18n.yaml +2 -2
  530. package/node_modules/@deepseek-ai/dsh-llm-deepseek/README.md +4 -4
  531. package/node_modules/@deepseek-ai/dsh-llm-deepseek/README.zh.md +4 -4
  532. package/node_modules/@deepseek-ai/dsh-llm-deepseek/lib/index.js +33 -37
  533. package/node_modules/@deepseek-ai/dsh-llm-deepseek/package.json +37 -37
  534. package/node_modules/@deepseek-ai/dsh-llm-pi-ai/README.i18n.yaml +2 -2
  535. package/node_modules/@deepseek-ai/dsh-llm-pi-ai/README.md +3 -2
  536. package/node_modules/@deepseek-ai/dsh-llm-pi-ai/README.zh.md +3 -2
  537. package/node_modules/@deepseek-ai/dsh-llm-pi-ai/lib/index.js +47 -3
  538. package/node_modules/@deepseek-ai/dsh-llm-pi-ai/package.json +21 -21
  539. package/node_modules/@deepseek-ai/dsh-llm-retry/package.json +20 -20
  540. package/node_modules/@deepseek-ai/dsh-mcp-client/package.json +20 -20
  541. package/node_modules/@deepseek-ai/dsh-mcp-resources/package.json +12 -12
  542. package/node_modules/@deepseek-ai/dsh-message-feedback/package.json +14 -14
  543. package/node_modules/@deepseek-ai/dsh-native-command/package.json +2 -2
  544. package/node_modules/@deepseek-ai/dsh-office-to-pdf/README.i18n.yaml +6 -0
  545. package/node_modules/@deepseek-ai/dsh-office-to-pdf/README.md +105 -0
  546. package/node_modules/@deepseek-ai/dsh-office-to-pdf/README.zh.md +105 -0
  547. package/node_modules/@deepseek-ai/dsh-office-to-pdf/lib/index.js +659 -0
  548. package/node_modules/@deepseek-ai/dsh-office-to-pdf/lib/typert.host.js +193 -0
  549. package/node_modules/@deepseek-ai/dsh-office-to-pdf/lib/typert.remote-client.js +94 -0
  550. package/node_modules/@deepseek-ai/dsh-office-to-pdf/lib/types/errors.js +15 -0
  551. package/node_modules/@deepseek-ai/dsh-office-to-pdf/lib/types/identity.js +23 -0
  552. package/node_modules/@deepseek-ai/dsh-office-to-pdf/lib/types/index.js +287 -0
  553. package/node_modules/@deepseek-ai/dsh-office-to-pdf/lib/types/output.js +47 -0
  554. package/node_modules/@deepseek-ai/dsh-office-to-pdf/lib/types/queue.js +246 -0
  555. package/node_modules/@deepseek-ai/dsh-office-to-pdf/lib/types/types.js +2 -0
  556. package/node_modules/@deepseek-ai/dsh-office-to-pdf/package.json +64 -0
  557. package/node_modules/@deepseek-ai/dsh-output-retention/package.json +1 -1
  558. package/node_modules/@deepseek-ai/dsh-package-manifest/package.json +1 -1
  559. package/node_modules/@deepseek-ai/dsh-permission-presets/package.json +21 -21
  560. package/node_modules/@deepseek-ai/dsh-persona/package.json +4 -4
  561. package/node_modules/@deepseek-ai/dsh-plan-mode/README.i18n.yaml +2 -2
  562. package/node_modules/@deepseek-ai/dsh-plan-mode/README.md +2 -0
  563. package/node_modules/@deepseek-ai/dsh-plan-mode/README.zh.md +2 -0
  564. package/node_modules/@deepseek-ai/dsh-plan-mode/lib/index.js +2 -1
  565. package/node_modules/@deepseek-ai/dsh-plan-mode/lib/types/index.js +1 -1
  566. package/node_modules/@deepseek-ai/dsh-plan-mode/package.json +22 -22
  567. package/node_modules/@deepseek-ai/dsh-plugin-manager/README.i18n.yaml +6 -0
  568. package/node_modules/@deepseek-ai/dsh-plugin-manager/README.md +133 -0
  569. package/node_modules/@deepseek-ai/dsh-plugin-manager/README.zh.md +133 -0
  570. package/node_modules/@deepseek-ai/dsh-plugin-manager/lib/index.js +1174 -0
  571. package/node_modules/@deepseek-ai/dsh-plugin-manager/lib/typert.host.js +604 -0
  572. package/node_modules/@deepseek-ai/dsh-plugin-manager/lib/typert.remote-client.js +393 -0
  573. package/node_modules/@deepseek-ai/dsh-plugin-manager/lib/types/build-approval.js +56 -0
  574. package/node_modules/@deepseek-ai/dsh-plugin-manager/lib/types/failure.js +8 -0
  575. package/node_modules/@deepseek-ai/dsh-plugin-manager/lib/types/index.js +623 -0
  576. package/node_modules/@deepseek-ai/dsh-plugin-manager/lib/types/install-failure.js +33 -0
  577. package/node_modules/@deepseek-ai/dsh-plugin-manager/lib/types/install-spec.js +73 -0
  578. package/node_modules/@deepseek-ai/dsh-plugin-manager/lib/types/operations.js +177 -0
  579. package/node_modules/@deepseek-ai/dsh-plugin-manager/lib/types/patch.js +50 -0
  580. package/node_modules/@deepseek-ai/dsh-plugin-manager/lib/types/tools.js +74 -0
  581. package/node_modules/@deepseek-ai/dsh-plugin-manager/lib/types/types.js +2 -0
  582. package/node_modules/@deepseek-ai/dsh-plugin-manager/package.json +102 -0
  583. package/node_modules/@deepseek-ai/dsh-plugin-package-inventory-deepseek/package.json +13 -13
  584. package/node_modules/@deepseek-ai/dsh-ptc-runtime/package.json +3 -3
  585. package/node_modules/@deepseek-ai/dsh-ptc-runtime-node/README.i18n.yaml +2 -2
  586. package/node_modules/@deepseek-ai/dsh-ptc-runtime-node/README.md +1 -1
  587. package/node_modules/@deepseek-ai/dsh-ptc-runtime-node/README.zh.md +1 -1
  588. package/node_modules/@deepseek-ai/dsh-ptc-runtime-node/lib/index.js +1 -1
  589. package/node_modules/@deepseek-ai/dsh-ptc-runtime-node/package.json +20 -20
  590. package/node_modules/@deepseek-ai/dsh-pwsh-local/package.json +10 -10
  591. package/node_modules/@deepseek-ai/dsh-pwsh-sandbox/package.json +12 -12
  592. package/node_modules/@deepseek-ai/dsh-repeat-tool-reminder/lib/index.js +2 -1
  593. package/node_modules/@deepseek-ai/dsh-repeat-tool-reminder/package.json +9 -9
  594. package/node_modules/@deepseek-ai/dsh-sandbox/README.i18n.yaml +2 -2
  595. package/node_modules/@deepseek-ai/dsh-sandbox/README.md +2 -2
  596. package/node_modules/@deepseek-ai/dsh-sandbox/README.zh.md +2 -2
  597. package/node_modules/@deepseek-ai/dsh-sandbox/lib/index.js +6 -9
  598. package/node_modules/@deepseek-ai/dsh-sandbox/package.json +6 -6
  599. package/node_modules/@deepseek-ai/dsh-sandbox-local/package.json +9 -9
  600. package/node_modules/@deepseek-ai/dsh-sandbox-policy/package.json +13 -13
  601. package/node_modules/@deepseek-ai/dsh-sandbox-windows-acl/package.json +8 -8
  602. package/node_modules/@deepseek-ai/dsh-schedule/package.json +20 -20
  603. package/node_modules/@deepseek-ai/dsh-scope/package.json +3 -3
  604. package/node_modules/@deepseek-ai/dsh-sdk-app/README.i18n.yaml +2 -2
  605. package/node_modules/@deepseek-ai/dsh-sdk-app/README.md +1 -1
  606. package/node_modules/@deepseek-ai/dsh-sdk-app/README.zh.md +1 -1
  607. package/node_modules/@deepseek-ai/dsh-sdk-app/cordis.patch.yml +3 -0
  608. package/node_modules/@deepseek-ai/dsh-sdk-app/package.json +3 -3
  609. package/node_modules/@deepseek-ai/dsh-sdk-jsonrpc-server/package.json +21 -21
  610. package/node_modules/@deepseek-ai/dsh-sdk-minimal/package.json +28 -28
  611. package/node_modules/@deepseek-ai/dsh-sdk-protocol/package.json +7 -7
  612. package/node_modules/@deepseek-ai/dsh-session/lib/index.js +2 -1
  613. package/node_modules/@deepseek-ai/dsh-session/lib/types/known-event-types.js +1 -0
  614. package/node_modules/@deepseek-ai/dsh-session/package.json +9 -9
  615. package/node_modules/@deepseek-ai/dsh-session-checkpoint-policy/package.json +15 -15
  616. package/node_modules/@deepseek-ai/dsh-session-format/package.json +2 -2
  617. package/node_modules/@deepseek-ai/dsh-session-format-catalog/package.json +8 -8
  618. package/node_modules/@deepseek-ai/dsh-session-format-v0-to-v1/package.json +4 -4
  619. package/node_modules/@deepseek-ai/dsh-session-format-v1-to-v2/package.json +6 -6
  620. package/node_modules/@deepseek-ai/dsh-session-format-v2-to-v3/package.json +4 -4
  621. package/node_modules/@deepseek-ai/dsh-session-log-deepseek/package.json +14 -14
  622. package/node_modules/@deepseek-ai/dsh-session-log-export/package.json +19 -17
  623. package/node_modules/@deepseek-ai/dsh-session-persistence/package.json +9 -9
  624. package/node_modules/@deepseek-ai/dsh-session-persistence-jsonl/lib/worker.cjs +7 -4
  625. package/node_modules/@deepseek-ai/dsh-session-persistence-jsonl/package.json +10 -10
  626. package/node_modules/@deepseek-ai/dsh-session-projection/package.json +3 -3
  627. package/node_modules/@deepseek-ai/dsh-session-projection-cache/package.json +10 -10
  628. package/node_modules/@deepseek-ai/dsh-session-query/package.json +18 -18
  629. package/node_modules/@deepseek-ai/dsh-session-query-sqlite/package.json +9 -9
  630. package/node_modules/@deepseek-ai/dsh-session-reference/README.i18n.yaml +2 -2
  631. package/node_modules/@deepseek-ai/dsh-session-reference/README.md +1 -1
  632. package/node_modules/@deepseek-ai/dsh-session-reference/README.zh.md +1 -1
  633. package/node_modules/@deepseek-ai/dsh-session-reference/lib/index.js +20 -16
  634. package/node_modules/@deepseek-ai/dsh-session-reference/lib/typert.host.js +4 -3
  635. package/node_modules/@deepseek-ai/dsh-session-reference/lib/typert.remote-client.js +2 -1
  636. package/node_modules/@deepseek-ai/dsh-session-reference/lib/types/index.js +30 -23
  637. package/node_modules/@deepseek-ai/dsh-session-reference/package.json +34 -32
  638. package/node_modules/@deepseek-ai/dsh-session-stats/package.json +7 -7
  639. package/node_modules/@deepseek-ai/dsh-session-telemetry/package.json +5 -5
  640. package/node_modules/@deepseek-ai/dsh-session-telemetry-otel/package.json +19 -19
  641. package/node_modules/@deepseek-ai/dsh-session-title/package.json +16 -16
  642. package/node_modules/@deepseek-ai/dsh-session-title-first-prompt-llm/package.json +12 -12
  643. package/node_modules/@deepseek-ai/dsh-session-title-llm/package.json +10 -10
  644. package/node_modules/@deepseek-ai/dsh-session-turn-outline/package.json +7 -7
  645. package/node_modules/@deepseek-ai/dsh-settings/package.json +8 -8
  646. package/node_modules/@deepseek-ai/dsh-settings-file/package.json +8 -8
  647. package/node_modules/@deepseek-ai/dsh-shell/package.json +7 -7
  648. package/node_modules/@deepseek-ai/dsh-shell-env/package.json +9 -9
  649. package/node_modules/@deepseek-ai/dsh-skill/package.json +6 -6
  650. package/node_modules/@deepseek-ai/dsh-skill-badge/package.json +3 -3
  651. package/node_modules/@deepseek-ai/dsh-skill-filesystem/package.json +7 -7
  652. package/node_modules/@deepseek-ai/dsh-spill/package.json +7 -7
  653. package/node_modules/@deepseek-ai/dsh-spill-local/package.json +6 -6
  654. package/node_modules/@deepseek-ai/dsh-spill-policy/package.json +18 -18
  655. package/node_modules/@deepseek-ai/dsh-storage/package.json +1 -1
  656. package/node_modules/@deepseek-ai/dsh-storage-domain/package.json +5 -5
  657. package/node_modules/@deepseek-ai/dsh-storage-json/package.json +3 -3
  658. package/node_modules/@deepseek-ai/dsh-subagent/README.i18n.yaml +2 -2
  659. package/node_modules/@deepseek-ai/dsh-subagent/README.md +12 -0
  660. package/node_modules/@deepseek-ai/dsh-subagent/README.zh.md +12 -0
  661. package/node_modules/@deepseek-ai/dsh-subagent/lib/index.js +116 -50
  662. package/node_modules/@deepseek-ai/dsh-subagent/lib/typert.host.js +11 -4
  663. package/node_modules/@deepseek-ai/dsh-subagent/lib/typert.remote-client.js +3 -3
  664. package/node_modules/@deepseek-ai/dsh-subagent/lib/types/continuation-activation.js +41 -4
  665. package/node_modules/@deepseek-ai/dsh-subagent/lib/types/continuation.js +2 -2
  666. package/node_modules/@deepseek-ai/dsh-subagent/lib/types/control.js +1 -0
  667. package/node_modules/@deepseek-ai/dsh-subagent/lib/types/index.js +29 -3
  668. package/node_modules/@deepseek-ai/dsh-subagent/package.json +54 -48
  669. package/node_modules/@deepseek-ai/dsh-subagent-acp/package.json +20 -20
  670. package/node_modules/@deepseek-ai/dsh-subagent-fork-in-process/package.json +14 -14
  671. package/node_modules/@deepseek-ai/dsh-subagent-in-process-driver/package.json +22 -22
  672. package/node_modules/@deepseek-ai/dsh-subagent-spawn-in-process/package.json +16 -16
  673. package/node_modules/@deepseek-ai/dsh-subprocess/README.i18n.yaml +2 -2
  674. package/node_modules/@deepseek-ai/dsh-subprocess/README.md +2 -0
  675. package/node_modules/@deepseek-ai/dsh-subprocess/README.zh.md +2 -0
  676. package/node_modules/@deepseek-ai/dsh-subprocess/package.json +4 -4
  677. package/node_modules/@deepseek-ai/dsh-subprocess-local/README.i18n.yaml +2 -2
  678. package/node_modules/@deepseek-ai/dsh-subprocess-local/README.md +7 -0
  679. package/node_modules/@deepseek-ai/dsh-subprocess-local/README.zh.md +7 -0
  680. package/node_modules/@deepseek-ai/dsh-subprocess-local/lib/index.js +267 -20
  681. package/node_modules/@deepseek-ai/dsh-subprocess-local/lib/runner-launch-DGV26RBf.js +1525 -0
  682. package/node_modules/@deepseek-ai/dsh-subprocess-local/lib/runner.js +1 -1
  683. package/node_modules/@deepseek-ai/dsh-subprocess-local/package.json +7 -7
  684. package/node_modules/@deepseek-ai/dsh-system-prompt/package.json +7 -7
  685. package/node_modules/@deepseek-ai/dsh-terminal/package.json +6 -6
  686. package/node_modules/@deepseek-ai/dsh-terminal-bash/package.json +17 -17
  687. package/node_modules/@deepseek-ai/dsh-time-context/package.json +20 -20
  688. package/node_modules/@deepseek-ai/dsh-timeout/package.json +1 -1
  689. package/node_modules/@deepseek-ai/dsh-tmux-context/lib/index.js +2 -1
  690. package/node_modules/@deepseek-ai/dsh-tmux-context/package.json +11 -11
  691. package/node_modules/@deepseek-ai/dsh-token-meter/package.json +14 -14
  692. package/node_modules/@deepseek-ai/dsh-tool-ask-user/package.json +9 -9
  693. package/node_modules/@deepseek-ai/dsh-tool-bash/README.i18n.yaml +2 -2
  694. package/node_modules/@deepseek-ai/dsh-tool-bash/README.md +1 -1
  695. package/node_modules/@deepseek-ai/dsh-tool-bash/README.zh.md +1 -1
  696. package/node_modules/@deepseek-ai/dsh-tool-bash/package.json +29 -29
  697. package/node_modules/@deepseek-ai/dsh-tool-bash-persistent/package.json +17 -17
  698. package/node_modules/@deepseek-ai/dsh-tool-call-timeout-policy/package.json +7 -7
  699. package/node_modules/@deepseek-ai/dsh-tool-cordis/README.i18n.yaml +2 -2
  700. package/node_modules/@deepseek-ai/dsh-tool-cordis/README.md +11 -131
  701. package/node_modules/@deepseek-ai/dsh-tool-cordis/README.zh.md +15 -135
  702. package/node_modules/@deepseek-ai/dsh-tool-cordis/lib/index.js +688 -743
  703. package/node_modules/@deepseek-ai/dsh-tool-cordis/package.json +10 -16
  704. package/node_modules/@deepseek-ai/dsh-tool-fs/lib/index.js +10 -6
  705. package/node_modules/@deepseek-ai/dsh-tool-fs/package.json +27 -27
  706. package/node_modules/@deepseek-ai/dsh-tool-fs-search/package.json +20 -20
  707. package/node_modules/@deepseek-ai/dsh-tool-goal/package.json +16 -16
  708. package/node_modules/@deepseek-ai/dsh-tool-jobs/package.json +15 -15
  709. package/node_modules/@deepseek-ai/dsh-tool-present/README.i18n.yaml +1 -1
  710. package/node_modules/@deepseek-ai/dsh-tool-present/package.json +18 -18
  711. package/node_modules/@deepseek-ai/dsh-tool-pwsh/package.json +28 -28
  712. package/node_modules/@deepseek-ai/dsh-tool-pwsh-persistent/package.json +18 -18
  713. package/node_modules/@deepseek-ai/dsh-tool-ralph/package.json +19 -19
  714. package/node_modules/@deepseek-ai/dsh-tool-skill/package.json +12 -12
  715. package/node_modules/@deepseek-ai/dsh-tool-str-replace-editor/package.json +17 -17
  716. package/node_modules/@deepseek-ai/dsh-tool-subagent/README.i18n.yaml +2 -2
  717. package/node_modules/@deepseek-ai/dsh-tool-subagent/README.md +2 -2
  718. package/node_modules/@deepseek-ai/dsh-tool-subagent/README.zh.md +2 -2
  719. package/node_modules/@deepseek-ai/dsh-tool-subagent/lib/index.js +3 -3
  720. package/node_modules/@deepseek-ai/dsh-tool-subagent/package.json +28 -28
  721. package/node_modules/@deepseek-ai/dsh-tool-subagent-control/package.json +19 -19
  722. package/node_modules/@deepseek-ai/dsh-tool-todo/package.json +15 -15
  723. package/node_modules/@deepseek-ai/dsh-tool-web/package.json +18 -18
  724. package/node_modules/@deepseek-ai/dsh-tool-workflow/package.json +18 -18
  725. package/node_modules/@deepseek-ai/dsh-tools/package.json +24 -24
  726. package/node_modules/@deepseek-ai/dsh-tui-app/README.i18n.yaml +2 -2
  727. package/node_modules/@deepseek-ai/dsh-tui-app/README.md +30 -18
  728. package/node_modules/@deepseek-ai/dsh-tui-app/README.zh.md +30 -18
  729. package/node_modules/@deepseek-ai/dsh-tui-app/cordis.patch.yml +9 -0
  730. package/node_modules/@deepseek-ai/dsh-tui-app/lib/index.js +1510 -181
  731. package/node_modules/@deepseek-ai/dsh-tui-app/package.json +68 -62
  732. package/node_modules/@deepseek-ai/dsh-typert-loader/package.json +4 -4
  733. package/node_modules/@deepseek-ai/dsh-typert-protocol/README.i18n.yaml +2 -2
  734. package/node_modules/@deepseek-ai/dsh-typert-protocol/README.md +3 -1
  735. package/node_modules/@deepseek-ai/dsh-typert-protocol/README.zh.md +3 -1
  736. package/node_modules/@deepseek-ai/dsh-typert-protocol/lib/index.js +32 -1
  737. package/node_modules/@deepseek-ai/dsh-typert-protocol/lib/types/index.js +1 -0
  738. package/node_modules/@deepseek-ai/dsh-typert-protocol/lib/types/owned-value.js +32 -0
  739. package/node_modules/@deepseek-ai/dsh-typert-protocol/package.json +1 -1
  740. package/node_modules/@deepseek-ai/dsh-typert-registry/package.json +2 -2
  741. package/node_modules/@deepseek-ai/dsh-user-approval/package.json +15 -15
  742. package/node_modules/@deepseek-ai/dsh-user-questions/README.i18n.yaml +2 -2
  743. package/node_modules/@deepseek-ai/dsh-user-questions/README.md +2 -0
  744. package/node_modules/@deepseek-ai/dsh-user-questions/README.zh.md +2 -0
  745. package/node_modules/@deepseek-ai/dsh-user-questions/lib/index.js +2 -1
  746. package/node_modules/@deepseek-ai/dsh-user-questions/lib/types/plan-review.js +5 -1
  747. package/node_modules/@deepseek-ai/dsh-user-questions/package.json +7 -7
  748. package/node_modules/@deepseek-ai/dsh-util-crypto/package.json +1 -1
  749. package/node_modules/@deepseek-ai/dsh-util-time/package.json +1 -1
  750. package/node_modules/@deepseek-ai/dsh-util-values/README.i18n.yaml +2 -2
  751. package/node_modules/@deepseek-ai/dsh-util-values/README.md +6 -3
  752. package/node_modules/@deepseek-ai/dsh-util-values/README.zh.md +6 -3
  753. package/node_modules/@deepseek-ai/dsh-util-values/lib/index.js +62 -1
  754. package/node_modules/@deepseek-ai/dsh-util-values/package.json +1 -1
  755. package/node_modules/@deepseek-ai/dsh-util-workspace-path/package.json +1 -1
  756. package/node_modules/@deepseek-ai/dsh-web/package.json +3 -3
  757. package/node_modules/@deepseek-ai/dsh-web-app/README.i18n.yaml +2 -2
  758. package/node_modules/@deepseek-ai/dsh-web-app/README.md +1 -1
  759. package/node_modules/@deepseek-ai/dsh-web-app/README.zh.md +1 -1
  760. package/node_modules/@deepseek-ai/dsh-web-app/cordis.patch.yml +35 -12
  761. package/node_modules/@deepseek-ai/dsh-web-app/package.json +98 -86
  762. package/node_modules/@deepseek-ai/dsh-web-fetch-http/package.json +7 -7
  763. package/node_modules/@deepseek-ai/dsh-web-frontend/dist/assets/index-8VXBH-f-.js +127 -0
  764. package/node_modules/@deepseek-ai/dsh-web-frontend/dist/assets/index-lP1BfJ4l.css +1 -0
  765. package/node_modules/@deepseek-ai/dsh-web-frontend/dist/index.html +2 -2
  766. package/node_modules/@deepseek-ai/dsh-web-frontend/package.json +9 -6
  767. package/node_modules/@deepseek-ai/dsh-web-search-deepseek/package.json +15 -15
  768. package/node_modules/@deepseek-ai/dsh-web-search-exa/package.json +6 -6
  769. package/node_modules/@deepseek-ai/dsh-web-search-perplexity/package.json +6 -6
  770. package/node_modules/@deepseek-ai/dsh-webhook/package.json +21 -21
  771. package/node_modules/@deepseek-ai/dsh-webhook-github/package.json +10 -10
  772. package/node_modules/@deepseek-ai/dsh-win32-process/README.i18n.yaml +2 -2
  773. package/node_modules/@deepseek-ai/dsh-win32-process/README.md +2 -0
  774. package/node_modules/@deepseek-ai/dsh-win32-process/README.zh.md +2 -0
  775. package/node_modules/@deepseek-ai/dsh-win32-process/lib/index.js +7 -4
  776. package/node_modules/@deepseek-ai/dsh-win32-process/package.json +2 -2
  777. package/node_modules/@deepseek-ai/dsh-workflow/package.json +11 -11
  778. package/node_modules/@deepseek-ai/dsh-workflow-ptc/package.json +33 -33
  779. package/node_modules/@deepseek-ai/dsh-workspace/package.json +14 -14
  780. package/node_modules/@deepseek-ai/dsh-workspace-changes/README.i18n.yaml +6 -0
  781. package/node_modules/@deepseek-ai/dsh-workspace-changes/README.md +108 -0
  782. package/node_modules/@deepseek-ai/dsh-workspace-changes/README.zh.md +108 -0
  783. package/node_modules/@deepseek-ai/dsh-workspace-changes/lib/index.js +1106 -0
  784. package/node_modules/@deepseek-ai/dsh-workspace-changes/lib/types/capture.js +107 -0
  785. package/node_modules/@deepseek-ai/dsh-workspace-changes/lib/types/compare.js +56 -0
  786. package/node_modules/@deepseek-ai/dsh-workspace-changes/lib/types/git.js +224 -0
  787. package/node_modules/@deepseek-ai/dsh-workspace-changes/lib/types/index.js +139 -0
  788. package/node_modules/@deepseek-ai/dsh-workspace-changes/lib/types/numstat.js +45 -0
  789. package/node_modules/@deepseek-ai/dsh-workspace-changes/lib/types/paths.js +106 -0
  790. package/node_modules/@deepseek-ai/dsh-workspace-changes/lib/types/recorder.js +333 -0
  791. package/node_modules/@deepseek-ai/dsh-workspace-changes/lib/types/types.js +2 -0
  792. package/node_modules/@deepseek-ai/dsh-workspace-changes/package.json +56 -0
  793. package/node_modules/@deepseek-ai/libreoffice-kit/LICENSE +373 -0
  794. package/node_modules/@deepseek-ai/libreoffice-kit/NOTICE +26 -0
  795. package/node_modules/@deepseek-ai/libreoffice-kit/README.md +73 -0
  796. package/node_modules/@deepseek-ai/libreoffice-kit/README.zh.md +73 -0
  797. package/node_modules/@deepseek-ai/libreoffice-kit/lib/index.js +924 -0
  798. package/node_modules/@deepseek-ai/libreoffice-kit/lib/worker.js +800 -0
  799. package/node_modules/@deepseek-ai/libreoffice-kit/node_modules/fflate/CHANGELOG.md +115 -0
  800. package/node_modules/@deepseek-ai/libreoffice-kit/node_modules/fflate/LICENSE +21 -0
  801. package/node_modules/@deepseek-ai/libreoffice-kit/node_modules/fflate/README.md +558 -0
  802. package/node_modules/@deepseek-ai/libreoffice-kit/node_modules/fflate/esm/browser.js +2665 -0
  803. package/node_modules/@deepseek-ai/libreoffice-kit/node_modules/fflate/esm/index.mjs +2679 -0
  804. package/node_modules/@deepseek-ai/libreoffice-kit/node_modules/fflate/lib/browser.cjs +2688 -0
  805. package/node_modules/@deepseek-ai/libreoffice-kit/node_modules/fflate/lib/index.cjs +2668 -0
  806. package/node_modules/@deepseek-ai/libreoffice-kit/node_modules/fflate/lib/node-worker.cjs +32 -0
  807. package/node_modules/@deepseek-ai/libreoffice-kit/node_modules/fflate/lib/node.cjs +2700 -0
  808. package/node_modules/@deepseek-ai/libreoffice-kit/node_modules/fflate/lib/worker.cjs +20 -0
  809. package/node_modules/@deepseek-ai/libreoffice-kit/node_modules/fflate/package.json +127 -0
  810. package/node_modules/@deepseek-ai/libreoffice-kit/node_modules/fflate/umd/index.js +1 -0
  811. package/node_modules/@deepseek-ai/libreoffice-kit/package.json +39 -0
  812. package/node_modules/@sec-ant/readable-stream/LICENSE +21 -0
  813. package/node_modules/@sec-ant/readable-stream/README.md +230 -0
  814. package/node_modules/@sec-ant/readable-stream/dist/index/asyncIterator.js +5 -0
  815. package/node_modules/@sec-ant/readable-stream/dist/index/fromAnyIterable.js +5 -0
  816. package/node_modules/@sec-ant/readable-stream/dist/index/index.js +8 -0
  817. package/node_modules/@sec-ant/readable-stream/dist/polyfill/asyncIterator.js +3 -0
  818. package/node_modules/@sec-ant/readable-stream/dist/polyfill/fromAnyIterable.js +2 -0
  819. package/node_modules/@sec-ant/readable-stream/dist/polyfill/index.js +4 -0
  820. package/node_modules/@sec-ant/readable-stream/dist/ponyfill/asyncIterator.js +89 -0
  821. package/node_modules/@sec-ant/readable-stream/dist/ponyfill/fromAnyIterable.js +34 -0
  822. package/node_modules/@sec-ant/readable-stream/dist/ponyfill/index.js +6 -0
  823. package/node_modules/@sec-ant/readable-stream/package.json +73 -0
  824. package/node_modules/@sindresorhus/merge-streams/index.js +265 -0
  825. package/node_modules/@sindresorhus/merge-streams/license +9 -0
  826. package/node_modules/@sindresorhus/merge-streams/package.json +46 -0
  827. package/node_modules/@sindresorhus/merge-streams/readme.md +53 -0
  828. package/node_modules/@swc/helpers/LICENSE +201 -0
  829. package/node_modules/@swc/helpers/_/_apply_decorated_descriptor/package.json +4 -0
  830. package/node_modules/@swc/helpers/_/_apply_decs_2203_r/package.json +4 -0
  831. package/node_modules/@swc/helpers/_/_apply_decs_2311/package.json +4 -0
  832. package/node_modules/@swc/helpers/_/_array_like_to_array/package.json +4 -0
  833. package/node_modules/@swc/helpers/_/_array_with_holes/package.json +4 -0
  834. package/node_modules/@swc/helpers/_/_array_without_holes/package.json +4 -0
  835. package/node_modules/@swc/helpers/_/_assert_this_initialized/package.json +4 -0
  836. package/node_modules/@swc/helpers/_/_async_generator/package.json +4 -0
  837. package/node_modules/@swc/helpers/_/_async_generator_delegate/package.json +4 -0
  838. package/node_modules/@swc/helpers/_/_async_iterator/package.json +4 -0
  839. package/node_modules/@swc/helpers/_/_async_to_generator/package.json +4 -0
  840. package/node_modules/@swc/helpers/_/_await_async_generator/package.json +4 -0
  841. package/node_modules/@swc/helpers/_/_await_value/package.json +4 -0
  842. package/node_modules/@swc/helpers/_/_call_super/package.json +4 -0
  843. package/node_modules/@swc/helpers/_/_check_private_redeclaration/package.json +4 -0
  844. package/node_modules/@swc/helpers/_/_class_apply_descriptor_destructure/package.json +4 -0
  845. package/node_modules/@swc/helpers/_/_class_apply_descriptor_get/package.json +4 -0
  846. package/node_modules/@swc/helpers/_/_class_apply_descriptor_set/package.json +4 -0
  847. package/node_modules/@swc/helpers/_/_class_apply_descriptor_update/package.json +4 -0
  848. package/node_modules/@swc/helpers/_/_class_call_check/package.json +4 -0
  849. package/node_modules/@swc/helpers/_/_class_check_private_static_access/package.json +4 -0
  850. package/node_modules/@swc/helpers/_/_class_check_private_static_field_descriptor/package.json +4 -0
  851. package/node_modules/@swc/helpers/_/_class_extract_field_descriptor/package.json +4 -0
  852. package/node_modules/@swc/helpers/_/_class_name_tdz_error/package.json +4 -0
  853. package/node_modules/@swc/helpers/_/_class_private_field_destructure/package.json +4 -0
  854. package/node_modules/@swc/helpers/_/_class_private_field_get/package.json +4 -0
  855. package/node_modules/@swc/helpers/_/_class_private_field_init/package.json +4 -0
  856. package/node_modules/@swc/helpers/_/_class_private_field_loose_base/package.json +4 -0
  857. package/node_modules/@swc/helpers/_/_class_private_field_loose_key/package.json +4 -0
  858. package/node_modules/@swc/helpers/_/_class_private_field_set/package.json +4 -0
  859. package/node_modules/@swc/helpers/_/_class_private_field_update/package.json +4 -0
  860. package/node_modules/@swc/helpers/_/_class_private_method_get/package.json +4 -0
  861. package/node_modules/@swc/helpers/_/_class_private_method_init/package.json +4 -0
  862. package/node_modules/@swc/helpers/_/_class_private_method_set/package.json +4 -0
  863. package/node_modules/@swc/helpers/_/_class_static_private_field_destructure/package.json +4 -0
  864. package/node_modules/@swc/helpers/_/_class_static_private_field_spec_get/package.json +4 -0
  865. package/node_modules/@swc/helpers/_/_class_static_private_field_spec_set/package.json +4 -0
  866. package/node_modules/@swc/helpers/_/_class_static_private_field_update/package.json +4 -0
  867. package/node_modules/@swc/helpers/_/_class_static_private_method_get/package.json +4 -0
  868. package/node_modules/@swc/helpers/_/_construct/package.json +4 -0
  869. package/node_modules/@swc/helpers/_/_create_class/package.json +4 -0
  870. package/node_modules/@swc/helpers/_/_create_for_of_iterator_helper_loose/package.json +4 -0
  871. package/node_modules/@swc/helpers/_/_create_super/package.json +4 -0
  872. package/node_modules/@swc/helpers/_/_decorate/package.json +4 -0
  873. package/node_modules/@swc/helpers/_/_defaults/package.json +4 -0
  874. package/node_modules/@swc/helpers/_/_define_enumerable_properties/package.json +4 -0
  875. package/node_modules/@swc/helpers/_/_define_property/package.json +4 -0
  876. package/node_modules/@swc/helpers/_/_dispose/package.json +4 -0
  877. package/node_modules/@swc/helpers/_/_export_star/package.json +4 -0
  878. package/node_modules/@swc/helpers/_/_extends/package.json +4 -0
  879. package/node_modules/@swc/helpers/_/_get/package.json +4 -0
  880. package/node_modules/@swc/helpers/_/_get_prototype_of/package.json +4 -0
  881. package/node_modules/@swc/helpers/_/_identity/package.json +4 -0
  882. package/node_modules/@swc/helpers/_/_inherits/package.json +4 -0
  883. package/node_modules/@swc/helpers/_/_inherits_loose/package.json +4 -0
  884. package/node_modules/@swc/helpers/_/_initializer_define_property/package.json +4 -0
  885. package/node_modules/@swc/helpers/_/_initializer_warning_helper/package.json +4 -0
  886. package/node_modules/@swc/helpers/_/_instanceof/package.json +4 -0
  887. package/node_modules/@swc/helpers/_/_interop_require_default/package.json +4 -0
  888. package/node_modules/@swc/helpers/_/_interop_require_wildcard/package.json +4 -0
  889. package/node_modules/@swc/helpers/_/_is_native_function/package.json +4 -0
  890. package/node_modules/@swc/helpers/_/_is_native_reflect_construct/package.json +4 -0
  891. package/node_modules/@swc/helpers/_/_iterable_to_array/package.json +4 -0
  892. package/node_modules/@swc/helpers/_/_iterable_to_array_limit/package.json +4 -0
  893. package/node_modules/@swc/helpers/_/_iterable_to_array_limit_loose/package.json +4 -0
  894. package/node_modules/@swc/helpers/_/_jsx/package.json +4 -0
  895. package/node_modules/@swc/helpers/_/_new_arrow_check/package.json +4 -0
  896. package/node_modules/@swc/helpers/_/_non_iterable_rest/package.json +4 -0
  897. package/node_modules/@swc/helpers/_/_non_iterable_spread/package.json +4 -0
  898. package/node_modules/@swc/helpers/_/_object_destructuring_empty/package.json +4 -0
  899. package/node_modules/@swc/helpers/_/_object_spread/package.json +4 -0
  900. package/node_modules/@swc/helpers/_/_object_spread_props/package.json +4 -0
  901. package/node_modules/@swc/helpers/_/_object_without_properties/package.json +4 -0
  902. package/node_modules/@swc/helpers/_/_object_without_properties_loose/package.json +4 -0
  903. package/node_modules/@swc/helpers/_/_overload_yield/package.json +4 -0
  904. package/node_modules/@swc/helpers/_/_possible_constructor_return/package.json +4 -0
  905. package/node_modules/@swc/helpers/_/_read_only_error/package.json +4 -0
  906. package/node_modules/@swc/helpers/_/_set/package.json +4 -0
  907. package/node_modules/@swc/helpers/_/_set_prototype_of/package.json +4 -0
  908. package/node_modules/@swc/helpers/_/_skip_first_generator_next/package.json +4 -0
  909. package/node_modules/@swc/helpers/_/_sliced_to_array/package.json +4 -0
  910. package/node_modules/@swc/helpers/_/_sliced_to_array_loose/package.json +4 -0
  911. package/node_modules/@swc/helpers/_/_super_prop_base/package.json +4 -0
  912. package/node_modules/@swc/helpers/_/_tagged_template_literal/package.json +4 -0
  913. package/node_modules/@swc/helpers/_/_tagged_template_literal_loose/package.json +4 -0
  914. package/node_modules/@swc/helpers/_/_throw/package.json +4 -0
  915. package/node_modules/@swc/helpers/_/_to_array/package.json +4 -0
  916. package/node_modules/@swc/helpers/_/_to_consumable_array/package.json +4 -0
  917. package/node_modules/@swc/helpers/_/_to_primitive/package.json +4 -0
  918. package/node_modules/@swc/helpers/_/_to_property_key/package.json +4 -0
  919. package/node_modules/@swc/helpers/_/_ts_add_disposable_resource/package.json +4 -0
  920. package/node_modules/@swc/helpers/_/_ts_decorate/package.json +4 -0
  921. package/node_modules/@swc/helpers/_/_ts_dispose_resources/package.json +4 -0
  922. package/node_modules/@swc/helpers/_/_ts_generator/package.json +4 -0
  923. package/node_modules/@swc/helpers/_/_ts_metadata/package.json +4 -0
  924. package/node_modules/@swc/helpers/_/_ts_param/package.json +4 -0
  925. package/node_modules/@swc/helpers/_/_ts_rewrite_relative_import_extension/package.json +4 -0
  926. package/node_modules/@swc/helpers/_/_ts_values/package.json +4 -0
  927. package/node_modules/@swc/helpers/_/_type_of/package.json +4 -0
  928. package/node_modules/@swc/helpers/_/_unsupported_iterable_to_array/package.json +4 -0
  929. package/node_modules/@swc/helpers/_/_update/package.json +4 -0
  930. package/node_modules/@swc/helpers/_/_using/package.json +4 -0
  931. package/node_modules/@swc/helpers/_/_using_ctx/package.json +4 -0
  932. package/node_modules/@swc/helpers/_/_wrap_async_generator/package.json +4 -0
  933. package/node_modules/@swc/helpers/_/_wrap_native_super/package.json +4 -0
  934. package/node_modules/@swc/helpers/_/_wrap_reg_exp/package.json +4 -0
  935. package/node_modules/@swc/helpers/_/_write_only_error/package.json +4 -0
  936. package/node_modules/@swc/helpers/_/index/package.json +4 -0
  937. package/node_modules/@swc/helpers/cjs/_apply_decorated_descriptor.cjs +35 -0
  938. package/node_modules/@swc/helpers/cjs/_apply_decs_2203_r.cjs +574 -0
  939. package/node_modules/@swc/helpers/cjs/_apply_decs_2311.cjs +346 -0
  940. package/node_modules/@swc/helpers/cjs/_array_like_to_array.cjs +10 -0
  941. package/node_modules/@swc/helpers/cjs/_array_with_holes.cjs +6 -0
  942. package/node_modules/@swc/helpers/cjs/_array_without_holes.cjs +8 -0
  943. package/node_modules/@swc/helpers/cjs/_assert_this_initialized.cjs +8 -0
  944. package/node_modules/@swc/helpers/cjs/_async_generator.cjs +76 -0
  945. package/node_modules/@swc/helpers/cjs/_async_generator_delegate.cjs +53 -0
  946. package/node_modules/@swc/helpers/cjs/_async_iterator.cjs +46 -0
  947. package/node_modules/@swc/helpers/cjs/_async_to_generator.cjs +33 -0
  948. package/node_modules/@swc/helpers/cjs/_await_async_generator.cjs +8 -0
  949. package/node_modules/@swc/helpers/cjs/_await_value.cjs +6 -0
  950. package/node_modules/@swc/helpers/cjs/_call_super.cjs +19 -0
  951. package/node_modules/@swc/helpers/cjs/_check_private_redeclaration.cjs +8 -0
  952. package/node_modules/@swc/helpers/cjs/_class_apply_descriptor_destructure.cjs +25 -0
  953. package/node_modules/@swc/helpers/cjs/_class_apply_descriptor_get.cjs +8 -0
  954. package/node_modules/@swc/helpers/cjs/_class_apply_descriptor_set.cjs +15 -0
  955. package/node_modules/@swc/helpers/cjs/_class_apply_descriptor_update.cjs +30 -0
  956. package/node_modules/@swc/helpers/cjs/_class_call_check.cjs +6 -0
  957. package/node_modules/@swc/helpers/cjs/_class_check_private_static_access.cjs +6 -0
  958. package/node_modules/@swc/helpers/cjs/_class_check_private_static_field_descriptor.cjs +8 -0
  959. package/node_modules/@swc/helpers/cjs/_class_extract_field_descriptor.cjs +8 -0
  960. package/node_modules/@swc/helpers/cjs/_class_name_tdz_error.cjs +6 -0
  961. package/node_modules/@swc/helpers/cjs/_class_private_field_destructure.cjs +10 -0
  962. package/node_modules/@swc/helpers/cjs/_class_private_field_get.cjs +10 -0
  963. package/node_modules/@swc/helpers/cjs/_class_private_field_init.cjs +9 -0
  964. package/node_modules/@swc/helpers/cjs/_class_private_field_loose_base.cjs +10 -0
  965. package/node_modules/@swc/helpers/cjs/_class_private_field_loose_key.cjs +8 -0
  966. package/node_modules/@swc/helpers/cjs/_class_private_field_set.cjs +11 -0
  967. package/node_modules/@swc/helpers/cjs/_class_private_field_update.cjs +10 -0
  968. package/node_modules/@swc/helpers/cjs/_class_private_method_get.cjs +8 -0
  969. package/node_modules/@swc/helpers/cjs/_class_private_method_init.cjs +9 -0
  970. package/node_modules/@swc/helpers/cjs/_class_private_method_set.cjs +6 -0
  971. package/node_modules/@swc/helpers/cjs/_class_static_private_field_destructure.cjs +13 -0
  972. package/node_modules/@swc/helpers/cjs/_class_static_private_field_spec_get.cjs +13 -0
  973. package/node_modules/@swc/helpers/cjs/_class_static_private_field_spec_set.cjs +14 -0
  974. package/node_modules/@swc/helpers/cjs/_class_static_private_field_update.cjs +13 -0
  975. package/node_modules/@swc/helpers/cjs/_class_static_private_method_get.cjs +10 -0
  976. package/node_modules/@swc/helpers/cjs/_construct.cjs +22 -0
  977. package/node_modules/@swc/helpers/cjs/_create_class.cjs +20 -0
  978. package/node_modules/@swc/helpers/cjs/_create_for_of_iterator_helper_loose.cjs +24 -0
  979. package/node_modules/@swc/helpers/cjs/_create_super.cjs +23 -0
  980. package/node_modules/@swc/helpers/cjs/_decorate.cjs +270 -0
  981. package/node_modules/@swc/helpers/cjs/_defaults.cjs +15 -0
  982. package/node_modules/@swc/helpers/cjs/_define_enumerable_properties.cjs +26 -0
  983. package/node_modules/@swc/helpers/cjs/_define_property.cjs +10 -0
  984. package/node_modules/@swc/helpers/cjs/_dispose.cjs +43 -0
  985. package/node_modules/@swc/helpers/cjs/_export_star.cjs +17 -0
  986. package/node_modules/@swc/helpers/cjs/_extends.cjs +15 -0
  987. package/node_modules/@swc/helpers/cjs/_get.cjs +23 -0
  988. package/node_modules/@swc/helpers/cjs/_get_prototype_of.cjs +10 -0
  989. package/node_modules/@swc/helpers/cjs/_identity.cjs +7 -0
  990. package/node_modules/@swc/helpers/cjs/_inherits.cjs +14 -0
  991. package/node_modules/@swc/helpers/cjs/_inherits_loose.cjs +8 -0
  992. package/node_modules/@swc/helpers/cjs/_initializer_define_property.cjs +13 -0
  993. package/node_modules/@swc/helpers/cjs/_initializer_warning_helper.cjs +11 -0
  994. package/node_modules/@swc/helpers/cjs/_instanceof.cjs +10 -0
  995. package/node_modules/@swc/helpers/cjs/_interop_require_default.cjs +6 -0
  996. package/node_modules/@swc/helpers/cjs/_interop_require_wildcard.cjs +38 -0
  997. package/node_modules/@swc/helpers/cjs/_is_native_function.cjs +6 -0
  998. package/node_modules/@swc/helpers/cjs/_is_native_reflect_construct.cjs +18 -0
  999. package/node_modules/@swc/helpers/cjs/_iterable_to_array.cjs +8 -0
  1000. package/node_modules/@swc/helpers/cjs/_iterable_to_array_limit.cjs +31 -0
  1001. package/node_modules/@swc/helpers/cjs/_iterable_to_array_limit_loose.cjs +17 -0
  1002. package/node_modules/@swc/helpers/cjs/_jsx.cjs +28 -0
  1003. package/node_modules/@swc/helpers/cjs/_new_arrow_check.cjs +6 -0
  1004. package/node_modules/@swc/helpers/cjs/_non_iterable_rest.cjs +6 -0
  1005. package/node_modules/@swc/helpers/cjs/_non_iterable_spread.cjs +6 -0
  1006. package/node_modules/@swc/helpers/cjs/_object_destructuring_empty.cjs +8 -0
  1007. package/node_modules/@swc/helpers/cjs/_object_spread.cjs +25 -0
  1008. package/node_modules/@swc/helpers/cjs/_object_spread_props.cjs +30 -0
  1009. package/node_modules/@swc/helpers/cjs/_object_without_properties.cjs +35 -0
  1010. package/node_modules/@swc/helpers/cjs/_object_without_properties_loose.cjs +16 -0
  1011. package/node_modules/@swc/helpers/cjs/_overload_yield.cjs +8 -0
  1012. package/node_modules/@swc/helpers/cjs/_possible_constructor_return.cjs +11 -0
  1013. package/node_modules/@swc/helpers/cjs/_read_only_error.cjs +6 -0
  1014. package/node_modules/@swc/helpers/cjs/_set.cjs +44 -0
  1015. package/node_modules/@swc/helpers/cjs/_set_prototype_of.cjs +12 -0
  1016. package/node_modules/@swc/helpers/cjs/_skip_first_generator_next.cjs +11 -0
  1017. package/node_modules/@swc/helpers/cjs/_sliced_to_array.cjs +11 -0
  1018. package/node_modules/@swc/helpers/cjs/_sliced_to_array_loose.cjs +11 -0
  1019. package/node_modules/@swc/helpers/cjs/_super_prop_base.cjs +13 -0
  1020. package/node_modules/@swc/helpers/cjs/_tagged_template_literal.cjs +8 -0
  1021. package/node_modules/@swc/helpers/cjs/_tagged_template_literal_loose.cjs +10 -0
  1022. package/node_modules/@swc/helpers/cjs/_throw.cjs +6 -0
  1023. package/node_modules/@swc/helpers/cjs/_to_array.cjs +11 -0
  1024. package/node_modules/@swc/helpers/cjs/_to_consumable_array.cjs +11 -0
  1025. package/node_modules/@swc/helpers/cjs/_to_primitive.cjs +18 -0
  1026. package/node_modules/@swc/helpers/cjs/_to_property_key.cjs +11 -0
  1027. package/node_modules/@swc/helpers/cjs/_ts_add_disposable_resource.cjs +3 -0
  1028. package/node_modules/@swc/helpers/cjs/_ts_decorate.cjs +3 -0
  1029. package/node_modules/@swc/helpers/cjs/_ts_dispose_resources.cjs +3 -0
  1030. package/node_modules/@swc/helpers/cjs/_ts_generator.cjs +31 -0
  1031. package/node_modules/@swc/helpers/cjs/_ts_metadata.cjs +3 -0
  1032. package/node_modules/@swc/helpers/cjs/_ts_param.cjs +3 -0
  1033. package/node_modules/@swc/helpers/cjs/_ts_rewrite_relative_import_extension.cjs +3 -0
  1034. package/node_modules/@swc/helpers/cjs/_ts_values.cjs +3 -0
  1035. package/node_modules/@swc/helpers/cjs/_type_of.cjs +8 -0
  1036. package/node_modules/@swc/helpers/cjs/_unsupported_iterable_to_array.cjs +15 -0
  1037. package/node_modules/@swc/helpers/cjs/_update.cjs +16 -0
  1038. package/node_modules/@swc/helpers/cjs/_using.cjs +24 -0
  1039. package/node_modules/@swc/helpers/cjs/_using_ctx.cjs +75 -0
  1040. package/node_modules/@swc/helpers/cjs/_wrap_async_generator.cjs +10 -0
  1041. package/node_modules/@swc/helpers/cjs/_wrap_native_super.cjs +28 -0
  1042. package/node_modules/@swc/helpers/cjs/_wrap_reg_exp.cjs +84 -0
  1043. package/node_modules/@swc/helpers/cjs/_write_only_error.cjs +6 -0
  1044. package/node_modules/@swc/helpers/cjs/index.cjs +439 -0
  1045. package/node_modules/@swc/helpers/esm/_apply_decorated_descriptor.js +33 -0
  1046. package/node_modules/@swc/helpers/esm/_apply_decs_2203_r.js +572 -0
  1047. package/node_modules/@swc/helpers/esm/_apply_decs_2311.js +344 -0
  1048. package/node_modules/@swc/helpers/esm/_array_like_to_array.js +8 -0
  1049. package/node_modules/@swc/helpers/esm/_array_with_holes.js +4 -0
  1050. package/node_modules/@swc/helpers/esm/_array_without_holes.js +6 -0
  1051. package/node_modules/@swc/helpers/esm/_assert_this_initialized.js +6 -0
  1052. package/node_modules/@swc/helpers/esm/_async_generator.js +74 -0
  1053. package/node_modules/@swc/helpers/esm/_async_generator_delegate.js +51 -0
  1054. package/node_modules/@swc/helpers/esm/_async_iterator.js +44 -0
  1055. package/node_modules/@swc/helpers/esm/_async_to_generator.js +31 -0
  1056. package/node_modules/@swc/helpers/esm/_await_async_generator.js +6 -0
  1057. package/node_modules/@swc/helpers/esm/_await_value.js +4 -0
  1058. package/node_modules/@swc/helpers/esm/_call_super.js +17 -0
  1059. package/node_modules/@swc/helpers/esm/_check_private_redeclaration.js +6 -0
  1060. package/node_modules/@swc/helpers/esm/_class_apply_descriptor_destructure.js +23 -0
  1061. package/node_modules/@swc/helpers/esm/_class_apply_descriptor_get.js +6 -0
  1062. package/node_modules/@swc/helpers/esm/_class_apply_descriptor_set.js +13 -0
  1063. package/node_modules/@swc/helpers/esm/_class_apply_descriptor_update.js +28 -0
  1064. package/node_modules/@swc/helpers/esm/_class_call_check.js +4 -0
  1065. package/node_modules/@swc/helpers/esm/_class_check_private_static_access.js +4 -0
  1066. package/node_modules/@swc/helpers/esm/_class_check_private_static_field_descriptor.js +6 -0
  1067. package/node_modules/@swc/helpers/esm/_class_extract_field_descriptor.js +6 -0
  1068. package/node_modules/@swc/helpers/esm/_class_name_tdz_error.js +4 -0
  1069. package/node_modules/@swc/helpers/esm/_class_private_field_destructure.js +8 -0
  1070. package/node_modules/@swc/helpers/esm/_class_private_field_get.js +8 -0
  1071. package/node_modules/@swc/helpers/esm/_class_private_field_init.js +7 -0
  1072. package/node_modules/@swc/helpers/esm/_class_private_field_loose_base.js +8 -0
  1073. package/node_modules/@swc/helpers/esm/_class_private_field_loose_key.js +6 -0
  1074. package/node_modules/@swc/helpers/esm/_class_private_field_set.js +9 -0
  1075. package/node_modules/@swc/helpers/esm/_class_private_field_update.js +8 -0
  1076. package/node_modules/@swc/helpers/esm/_class_private_method_get.js +6 -0
  1077. package/node_modules/@swc/helpers/esm/_class_private_method_init.js +7 -0
  1078. package/node_modules/@swc/helpers/esm/_class_private_method_set.js +4 -0
  1079. package/node_modules/@swc/helpers/esm/_class_static_private_field_destructure.js +11 -0
  1080. package/node_modules/@swc/helpers/esm/_class_static_private_field_spec_get.js +11 -0
  1081. package/node_modules/@swc/helpers/esm/_class_static_private_field_spec_set.js +12 -0
  1082. package/node_modules/@swc/helpers/esm/_class_static_private_field_update.js +11 -0
  1083. package/node_modules/@swc/helpers/esm/_class_static_private_method_get.js +8 -0
  1084. package/node_modules/@swc/helpers/esm/_construct.js +20 -0
  1085. package/node_modules/@swc/helpers/esm/_create_class.js +18 -0
  1086. package/node_modules/@swc/helpers/esm/_create_for_of_iterator_helper_loose.js +22 -0
  1087. package/node_modules/@swc/helpers/esm/_create_super.js +21 -0
  1088. package/node_modules/@swc/helpers/esm/_decorate.js +268 -0
  1089. package/node_modules/@swc/helpers/esm/_defaults.js +13 -0
  1090. package/node_modules/@swc/helpers/esm/_define_enumerable_properties.js +24 -0
  1091. package/node_modules/@swc/helpers/esm/_define_property.js +8 -0
  1092. package/node_modules/@swc/helpers/esm/_dispose.js +41 -0
  1093. package/node_modules/@swc/helpers/esm/_export_star.js +15 -0
  1094. package/node_modules/@swc/helpers/esm/_extends.js +13 -0
  1095. package/node_modules/@swc/helpers/esm/_get.js +21 -0
  1096. package/node_modules/@swc/helpers/esm/_get_prototype_of.js +8 -0
  1097. package/node_modules/@swc/helpers/esm/_identity.js +5 -0
  1098. package/node_modules/@swc/helpers/esm/_inherits.js +12 -0
  1099. package/node_modules/@swc/helpers/esm/_inherits_loose.js +6 -0
  1100. package/node_modules/@swc/helpers/esm/_initializer_define_property.js +11 -0
  1101. package/node_modules/@swc/helpers/esm/_initializer_warning_helper.js +9 -0
  1102. package/node_modules/@swc/helpers/esm/_instanceof.js +8 -0
  1103. package/node_modules/@swc/helpers/esm/_interop_require_default.js +4 -0
  1104. package/node_modules/@swc/helpers/esm/_interop_require_wildcard.js +36 -0
  1105. package/node_modules/@swc/helpers/esm/_is_native_function.js +4 -0
  1106. package/node_modules/@swc/helpers/esm/_is_native_reflect_construct.js +16 -0
  1107. package/node_modules/@swc/helpers/esm/_iterable_to_array.js +6 -0
  1108. package/node_modules/@swc/helpers/esm/_iterable_to_array_limit.js +29 -0
  1109. package/node_modules/@swc/helpers/esm/_iterable_to_array_limit_loose.js +15 -0
  1110. package/node_modules/@swc/helpers/esm/_jsx.js +26 -0
  1111. package/node_modules/@swc/helpers/esm/_new_arrow_check.js +4 -0
  1112. package/node_modules/@swc/helpers/esm/_non_iterable_rest.js +4 -0
  1113. package/node_modules/@swc/helpers/esm/_non_iterable_spread.js +4 -0
  1114. package/node_modules/@swc/helpers/esm/_object_destructuring_empty.js +6 -0
  1115. package/node_modules/@swc/helpers/esm/_object_spread.js +23 -0
  1116. package/node_modules/@swc/helpers/esm/_object_spread_props.js +28 -0
  1117. package/node_modules/@swc/helpers/esm/_object_without_properties.js +33 -0
  1118. package/node_modules/@swc/helpers/esm/_object_without_properties_loose.js +14 -0
  1119. package/node_modules/@swc/helpers/esm/_overload_yield.js +6 -0
  1120. package/node_modules/@swc/helpers/esm/_possible_constructor_return.js +9 -0
  1121. package/node_modules/@swc/helpers/esm/_read_only_error.js +4 -0
  1122. package/node_modules/@swc/helpers/esm/_set.js +42 -0
  1123. package/node_modules/@swc/helpers/esm/_set_prototype_of.js +10 -0
  1124. package/node_modules/@swc/helpers/esm/_skip_first_generator_next.js +9 -0
  1125. package/node_modules/@swc/helpers/esm/_sliced_to_array.js +9 -0
  1126. package/node_modules/@swc/helpers/esm/_sliced_to_array_loose.js +9 -0
  1127. package/node_modules/@swc/helpers/esm/_super_prop_base.js +11 -0
  1128. package/node_modules/@swc/helpers/esm/_tagged_template_literal.js +6 -0
  1129. package/node_modules/@swc/helpers/esm/_tagged_template_literal_loose.js +8 -0
  1130. package/node_modules/@swc/helpers/esm/_throw.js +4 -0
  1131. package/node_modules/@swc/helpers/esm/_to_array.js +9 -0
  1132. package/node_modules/@swc/helpers/esm/_to_consumable_array.js +9 -0
  1133. package/node_modules/@swc/helpers/esm/_to_primitive.js +16 -0
  1134. package/node_modules/@swc/helpers/esm/_to_property_key.js +9 -0
  1135. package/node_modules/@swc/helpers/esm/_ts_add_disposable_resource.js +1 -0
  1136. package/node_modules/@swc/helpers/esm/_ts_decorate.js +1 -0
  1137. package/node_modules/@swc/helpers/esm/_ts_dispose_resources.js +1 -0
  1138. package/node_modules/@swc/helpers/esm/_ts_generator.js +29 -0
  1139. package/node_modules/@swc/helpers/esm/_ts_metadata.js +1 -0
  1140. package/node_modules/@swc/helpers/esm/_ts_param.js +1 -0
  1141. package/node_modules/@swc/helpers/esm/_ts_rewrite_relative_import_extension.js +1 -0
  1142. package/node_modules/@swc/helpers/esm/_ts_values.js +1 -0
  1143. package/node_modules/@swc/helpers/esm/_type_of.js +6 -0
  1144. package/node_modules/@swc/helpers/esm/_unsupported_iterable_to_array.js +13 -0
  1145. package/node_modules/@swc/helpers/esm/_update.js +14 -0
  1146. package/node_modules/@swc/helpers/esm/_using.js +22 -0
  1147. package/node_modules/@swc/helpers/esm/_using_ctx.js +73 -0
  1148. package/node_modules/@swc/helpers/esm/_wrap_async_generator.js +8 -0
  1149. package/node_modules/@swc/helpers/esm/_wrap_native_super.js +26 -0
  1150. package/node_modules/@swc/helpers/esm/_wrap_reg_exp.js +82 -0
  1151. package/node_modules/@swc/helpers/esm/_write_only_error.js +4 -0
  1152. package/node_modules/@swc/helpers/esm/index.js +110 -0
  1153. package/node_modules/@swc/helpers/package.json +702 -0
  1154. package/node_modules/@swc/helpers/scripts/ast_grep.js +218 -0
  1155. package/node_modules/@swc/helpers/scripts/build.js +133 -0
  1156. package/node_modules/@swc/helpers/scripts/errors.js +1 -0
  1157. package/node_modules/@swc/helpers/scripts/utils.js +3 -0
  1158. package/node_modules/@swc/helpers/src/_apply_decorated_descriptor.mjs +1 -0
  1159. package/node_modules/@swc/helpers/src/_apply_decs_2203_r.mjs +1 -0
  1160. package/node_modules/@swc/helpers/src/_apply_decs_2311.mjs +1 -0
  1161. package/node_modules/@swc/helpers/src/_array_like_to_array.mjs +1 -0
  1162. package/node_modules/@swc/helpers/src/_array_with_holes.mjs +1 -0
  1163. package/node_modules/@swc/helpers/src/_array_without_holes.mjs +1 -0
  1164. package/node_modules/@swc/helpers/src/_assert_this_initialized.mjs +1 -0
  1165. package/node_modules/@swc/helpers/src/_async_generator.mjs +1 -0
  1166. package/node_modules/@swc/helpers/src/_async_generator_delegate.mjs +1 -0
  1167. package/node_modules/@swc/helpers/src/_async_iterator.mjs +1 -0
  1168. package/node_modules/@swc/helpers/src/_async_to_generator.mjs +1 -0
  1169. package/node_modules/@swc/helpers/src/_await_async_generator.mjs +1 -0
  1170. package/node_modules/@swc/helpers/src/_await_value.mjs +1 -0
  1171. package/node_modules/@swc/helpers/src/_call_super.mjs +1 -0
  1172. package/node_modules/@swc/helpers/src/_check_private_redeclaration.mjs +1 -0
  1173. package/node_modules/@swc/helpers/src/_class_apply_descriptor_destructure.mjs +1 -0
  1174. package/node_modules/@swc/helpers/src/_class_apply_descriptor_get.mjs +1 -0
  1175. package/node_modules/@swc/helpers/src/_class_apply_descriptor_set.mjs +1 -0
  1176. package/node_modules/@swc/helpers/src/_class_apply_descriptor_update.mjs +1 -0
  1177. package/node_modules/@swc/helpers/src/_class_call_check.mjs +1 -0
  1178. package/node_modules/@swc/helpers/src/_class_check_private_static_access.mjs +1 -0
  1179. package/node_modules/@swc/helpers/src/_class_check_private_static_field_descriptor.mjs +1 -0
  1180. package/node_modules/@swc/helpers/src/_class_extract_field_descriptor.mjs +1 -0
  1181. package/node_modules/@swc/helpers/src/_class_name_tdz_error.mjs +1 -0
  1182. package/node_modules/@swc/helpers/src/_class_private_field_destructure.mjs +1 -0
  1183. package/node_modules/@swc/helpers/src/_class_private_field_get.mjs +1 -0
  1184. package/node_modules/@swc/helpers/src/_class_private_field_init.mjs +1 -0
  1185. package/node_modules/@swc/helpers/src/_class_private_field_loose_base.mjs +1 -0
  1186. package/node_modules/@swc/helpers/src/_class_private_field_loose_key.mjs +1 -0
  1187. package/node_modules/@swc/helpers/src/_class_private_field_set.mjs +1 -0
  1188. package/node_modules/@swc/helpers/src/_class_private_field_update.mjs +1 -0
  1189. package/node_modules/@swc/helpers/src/_class_private_method_get.mjs +1 -0
  1190. package/node_modules/@swc/helpers/src/_class_private_method_init.mjs +1 -0
  1191. package/node_modules/@swc/helpers/src/_class_private_method_set.mjs +1 -0
  1192. package/node_modules/@swc/helpers/src/_class_static_private_field_destructure.mjs +1 -0
  1193. package/node_modules/@swc/helpers/src/_class_static_private_field_spec_get.mjs +1 -0
  1194. package/node_modules/@swc/helpers/src/_class_static_private_field_spec_set.mjs +1 -0
  1195. package/node_modules/@swc/helpers/src/_class_static_private_field_update.mjs +1 -0
  1196. package/node_modules/@swc/helpers/src/_class_static_private_method_get.mjs +1 -0
  1197. package/node_modules/@swc/helpers/src/_construct.mjs +1 -0
  1198. package/node_modules/@swc/helpers/src/_create_class.mjs +1 -0
  1199. package/node_modules/@swc/helpers/src/_create_for_of_iterator_helper_loose.mjs +1 -0
  1200. package/node_modules/@swc/helpers/src/_create_super.mjs +1 -0
  1201. package/node_modules/@swc/helpers/src/_decorate.mjs +1 -0
  1202. package/node_modules/@swc/helpers/src/_defaults.mjs +1 -0
  1203. package/node_modules/@swc/helpers/src/_define_enumerable_properties.mjs +1 -0
  1204. package/node_modules/@swc/helpers/src/_define_property.mjs +1 -0
  1205. package/node_modules/@swc/helpers/src/_dispose.mjs +1 -0
  1206. package/node_modules/@swc/helpers/src/_export_star.mjs +1 -0
  1207. package/node_modules/@swc/helpers/src/_extends.mjs +1 -0
  1208. package/node_modules/@swc/helpers/src/_get.mjs +1 -0
  1209. package/node_modules/@swc/helpers/src/_get_prototype_of.mjs +1 -0
  1210. package/node_modules/@swc/helpers/src/_identity.mjs +1 -0
  1211. package/node_modules/@swc/helpers/src/_inherits.mjs +1 -0
  1212. package/node_modules/@swc/helpers/src/_inherits_loose.mjs +1 -0
  1213. package/node_modules/@swc/helpers/src/_initializer_define_property.mjs +1 -0
  1214. package/node_modules/@swc/helpers/src/_initializer_warning_helper.mjs +1 -0
  1215. package/node_modules/@swc/helpers/src/_instanceof.mjs +1 -0
  1216. package/node_modules/@swc/helpers/src/_interop_require_default.mjs +1 -0
  1217. package/node_modules/@swc/helpers/src/_interop_require_wildcard.mjs +1 -0
  1218. package/node_modules/@swc/helpers/src/_is_native_function.mjs +1 -0
  1219. package/node_modules/@swc/helpers/src/_is_native_reflect_construct.mjs +1 -0
  1220. package/node_modules/@swc/helpers/src/_iterable_to_array.mjs +1 -0
  1221. package/node_modules/@swc/helpers/src/_iterable_to_array_limit.mjs +1 -0
  1222. package/node_modules/@swc/helpers/src/_iterable_to_array_limit_loose.mjs +1 -0
  1223. package/node_modules/@swc/helpers/src/_jsx.mjs +1 -0
  1224. package/node_modules/@swc/helpers/src/_new_arrow_check.mjs +1 -0
  1225. package/node_modules/@swc/helpers/src/_non_iterable_rest.mjs +1 -0
  1226. package/node_modules/@swc/helpers/src/_non_iterable_spread.mjs +1 -0
  1227. package/node_modules/@swc/helpers/src/_object_destructuring_empty.mjs +1 -0
  1228. package/node_modules/@swc/helpers/src/_object_spread.mjs +1 -0
  1229. package/node_modules/@swc/helpers/src/_object_spread_props.mjs +1 -0
  1230. package/node_modules/@swc/helpers/src/_object_without_properties.mjs +1 -0
  1231. package/node_modules/@swc/helpers/src/_object_without_properties_loose.mjs +1 -0
  1232. package/node_modules/@swc/helpers/src/_overload_yield.mjs +1 -0
  1233. package/node_modules/@swc/helpers/src/_possible_constructor_return.mjs +1 -0
  1234. package/node_modules/@swc/helpers/src/_read_only_error.mjs +1 -0
  1235. package/node_modules/@swc/helpers/src/_set.mjs +1 -0
  1236. package/node_modules/@swc/helpers/src/_set_prototype_of.mjs +1 -0
  1237. package/node_modules/@swc/helpers/src/_skip_first_generator_next.mjs +1 -0
  1238. package/node_modules/@swc/helpers/src/_sliced_to_array.mjs +1 -0
  1239. package/node_modules/@swc/helpers/src/_sliced_to_array_loose.mjs +1 -0
  1240. package/node_modules/@swc/helpers/src/_super_prop_base.mjs +1 -0
  1241. package/node_modules/@swc/helpers/src/_tagged_template_literal.mjs +1 -0
  1242. package/node_modules/@swc/helpers/src/_tagged_template_literal_loose.mjs +1 -0
  1243. package/node_modules/@swc/helpers/src/_throw.mjs +1 -0
  1244. package/node_modules/@swc/helpers/src/_to_array.mjs +1 -0
  1245. package/node_modules/@swc/helpers/src/_to_consumable_array.mjs +1 -0
  1246. package/node_modules/@swc/helpers/src/_to_primitive.mjs +1 -0
  1247. package/node_modules/@swc/helpers/src/_to_property_key.mjs +1 -0
  1248. package/node_modules/@swc/helpers/src/_ts_add_disposable_resource.mjs +1 -0
  1249. package/node_modules/@swc/helpers/src/_ts_decorate.mjs +1 -0
  1250. package/node_modules/@swc/helpers/src/_ts_dispose_resources.mjs +1 -0
  1251. package/node_modules/@swc/helpers/src/_ts_generator.mjs +1 -0
  1252. package/node_modules/@swc/helpers/src/_ts_metadata.mjs +1 -0
  1253. package/node_modules/@swc/helpers/src/_ts_param.mjs +1 -0
  1254. package/node_modules/@swc/helpers/src/_ts_rewrite_relative_import_extension.mjs +1 -0
  1255. package/node_modules/@swc/helpers/src/_ts_values.mjs +1 -0
  1256. package/node_modules/@swc/helpers/src/_type_of.mjs +1 -0
  1257. package/node_modules/@swc/helpers/src/_unsupported_iterable_to_array.mjs +1 -0
  1258. package/node_modules/@swc/helpers/src/_update.mjs +1 -0
  1259. package/node_modules/@swc/helpers/src/_using.mjs +1 -0
  1260. package/node_modules/@swc/helpers/src/_using_ctx.mjs +1 -0
  1261. package/node_modules/@swc/helpers/src/_wrap_async_generator.mjs +1 -0
  1262. package/node_modules/@swc/helpers/src/_wrap_native_super.mjs +1 -0
  1263. package/node_modules/@swc/helpers/src/_wrap_reg_exp.mjs +1 -0
  1264. package/node_modules/@swc/helpers/src/_write_only_error.mjs +1 -0
  1265. package/node_modules/@swc/helpers/src/index.mjs +1 -0
  1266. package/node_modules/brotli/build/encode.js +57 -0
  1267. package/node_modules/brotli/build/mem.js +1 -0
  1268. package/node_modules/brotli/compress.js +43 -0
  1269. package/node_modules/brotli/dec/bit_reader.js +124 -0
  1270. package/node_modules/brotli/dec/context.js +250 -0
  1271. package/node_modules/brotli/dec/decode.js +938 -0
  1272. package/node_modules/brotli/dec/dictionary-browser.js +14 -0
  1273. package/node_modules/brotli/dec/dictionary-data.js +9469 -0
  1274. package/node_modules/brotli/dec/dictionary.bin.js +1 -0
  1275. package/node_modules/brotli/dec/dictionary.js +36 -0
  1276. package/node_modules/brotli/dec/huffman.js +123 -0
  1277. package/node_modules/brotli/dec/prefix.js +60 -0
  1278. package/node_modules/brotli/dec/streams.js +34 -0
  1279. package/node_modules/brotli/dec/transform.js +247 -0
  1280. package/node_modules/brotli/decompress.js +1 -0
  1281. package/node_modules/brotli/enc/pre.js +7 -0
  1282. package/node_modules/brotli/index.js +2 -0
  1283. package/node_modules/brotli/package.json +31 -0
  1284. package/node_modules/brotli/readme.md +61 -0
  1285. package/node_modules/clone/.npmignore +4 -0
  1286. package/node_modules/clone/LICENSE +18 -0
  1287. package/node_modules/clone/README.md +194 -0
  1288. package/node_modules/clone/clone.iml +10 -0
  1289. package/node_modules/clone/clone.js +257 -0
  1290. package/node_modules/clone/package.json +53 -0
  1291. package/node_modules/dfa/README.md +83 -0
  1292. package/node_modules/dfa/compile.js +1834 -0
  1293. package/node_modules/dfa/index.js +91 -0
  1294. package/node_modules/dfa/package.json +38 -0
  1295. package/node_modules/execa/index.js +25 -0
  1296. package/node_modules/execa/lib/arguments/command-file.js +201 -0
  1297. package/node_modules/execa/lib/arguments/command.js +20 -0
  1298. package/node_modules/execa/lib/arguments/cwd.js +39 -0
  1299. package/node_modules/execa/lib/arguments/encoding-option.js +50 -0
  1300. package/node_modules/execa/lib/arguments/escape.js +88 -0
  1301. package/node_modules/execa/lib/arguments/fd-options.js +109 -0
  1302. package/node_modules/execa/lib/arguments/file-url.js +25 -0
  1303. package/node_modules/execa/lib/arguments/options.js +105 -0
  1304. package/node_modules/execa/lib/arguments/shell.js +11 -0
  1305. package/node_modules/execa/lib/arguments/specific.js +112 -0
  1306. package/node_modules/execa/lib/convert/add.js +19 -0
  1307. package/node_modules/execa/lib/convert/concurrent.js +33 -0
  1308. package/node_modules/execa/lib/convert/duplex.js +69 -0
  1309. package/node_modules/execa/lib/convert/iterable.js +34 -0
  1310. package/node_modules/execa/lib/convert/readable.js +129 -0
  1311. package/node_modules/execa/lib/convert/shared.js +46 -0
  1312. package/node_modules/execa/lib/convert/web.js +7 -0
  1313. package/node_modules/execa/lib/convert/writable.js +111 -0
  1314. package/node_modules/execa/lib/io/contents.js +116 -0
  1315. package/node_modules/execa/lib/io/input-sync.js +44 -0
  1316. package/node_modules/execa/lib/io/iterate.js +110 -0
  1317. package/node_modules/execa/lib/io/max-buffer.js +89 -0
  1318. package/node_modules/execa/lib/io/output-async.js +82 -0
  1319. package/node_modules/execa/lib/io/output-sync.js +136 -0
  1320. package/node_modules/execa/lib/io/pipeline.js +48 -0
  1321. package/node_modules/execa/lib/io/strip-newline.js +12 -0
  1322. package/node_modules/execa/lib/ipc/array.js +4 -0
  1323. package/node_modules/execa/lib/ipc/buffer-messages.js +47 -0
  1324. package/node_modules/execa/lib/ipc/forward.js +56 -0
  1325. package/node_modules/execa/lib/ipc/get-each.js +113 -0
  1326. package/node_modules/execa/lib/ipc/get-one.js +92 -0
  1327. package/node_modules/execa/lib/ipc/graceful.js +72 -0
  1328. package/node_modules/execa/lib/ipc/incoming.js +79 -0
  1329. package/node_modules/execa/lib/ipc/ipc-input.js +50 -0
  1330. package/node_modules/execa/lib/ipc/methods.js +50 -0
  1331. package/node_modules/execa/lib/ipc/outgoing.js +53 -0
  1332. package/node_modules/execa/lib/ipc/reference.js +48 -0
  1333. package/node_modules/execa/lib/ipc/send.js +91 -0
  1334. package/node_modules/execa/lib/ipc/strict.js +113 -0
  1335. package/node_modules/execa/lib/ipc/validation.js +111 -0
  1336. package/node_modules/execa/lib/methods/bind.js +23 -0
  1337. package/node_modules/execa/lib/methods/command.js +27 -0
  1338. package/node_modules/execa/lib/methods/create.js +63 -0
  1339. package/node_modules/execa/lib/methods/main-async.js +235 -0
  1340. package/node_modules/execa/lib/methods/main-sync.js +167 -0
  1341. package/node_modules/execa/lib/methods/node.js +63 -0
  1342. package/node_modules/execa/lib/methods/parameters.js +32 -0
  1343. package/node_modules/execa/lib/methods/promise.js +2 -0
  1344. package/node_modules/execa/lib/methods/script.js +22 -0
  1345. package/node_modules/execa/lib/methods/template.js +153 -0
  1346. package/node_modules/execa/lib/pipe/abort.js +20 -0
  1347. package/node_modules/execa/lib/pipe/pipe-arguments.js +91 -0
  1348. package/node_modules/execa/lib/pipe/sequence.js +24 -0
  1349. package/node_modules/execa/lib/pipe/setup.js +230 -0
  1350. package/node_modules/execa/lib/pipe/streaming.js +51 -0
  1351. package/node_modules/execa/lib/pipe/throw.js +58 -0
  1352. package/node_modules/execa/lib/resolve/all-async.js +46 -0
  1353. package/node_modules/execa/lib/resolve/all-sync.js +33 -0
  1354. package/node_modules/execa/lib/resolve/exit-async.js +54 -0
  1355. package/node_modules/execa/lib/resolve/exit-sync.js +25 -0
  1356. package/node_modules/execa/lib/resolve/stdio.js +47 -0
  1357. package/node_modules/execa/lib/resolve/wait-stream.js +97 -0
  1358. package/node_modules/execa/lib/resolve/wait-subprocess.js +150 -0
  1359. package/node_modules/execa/lib/return/duration.js +8 -0
  1360. package/node_modules/execa/lib/return/early-error.js +77 -0
  1361. package/node_modules/execa/lib/return/final-error.js +44 -0
  1362. package/node_modules/execa/lib/return/message.js +157 -0
  1363. package/node_modules/execa/lib/return/reject.js +13 -0
  1364. package/node_modules/execa/lib/return/result.js +186 -0
  1365. package/node_modules/execa/lib/stdio/direction.js +89 -0
  1366. package/node_modules/execa/lib/stdio/duplicate.js +119 -0
  1367. package/node_modules/execa/lib/stdio/handle-async.js +52 -0
  1368. package/node_modules/execa/lib/stdio/handle-sync.js +68 -0
  1369. package/node_modules/execa/lib/stdio/handle.js +243 -0
  1370. package/node_modules/execa/lib/stdio/input-option.js +54 -0
  1371. package/node_modules/execa/lib/stdio/native.js +106 -0
  1372. package/node_modules/execa/lib/stdio/stdio-option.js +95 -0
  1373. package/node_modules/execa/lib/stdio/type.js +181 -0
  1374. package/node_modules/execa/lib/terminate/cancel.js +20 -0
  1375. package/node_modules/execa/lib/terminate/cleanup.js +16 -0
  1376. package/node_modules/execa/lib/terminate/graceful.js +73 -0
  1377. package/node_modules/execa/lib/terminate/kill-descendants.js +79 -0
  1378. package/node_modules/execa/lib/terminate/kill.js +93 -0
  1379. package/node_modules/execa/lib/terminate/signal.js +70 -0
  1380. package/node_modules/execa/lib/terminate/timeout.js +21 -0
  1381. package/node_modules/execa/lib/transform/encoding-transform.js +51 -0
  1382. package/node_modules/execa/lib/transform/generator.js +107 -0
  1383. package/node_modules/execa/lib/transform/normalize.js +106 -0
  1384. package/node_modules/execa/lib/transform/object-mode.js +41 -0
  1385. package/node_modules/execa/lib/transform/run-async.js +60 -0
  1386. package/node_modules/execa/lib/transform/run-sync.js +50 -0
  1387. package/node_modules/execa/lib/transform/split.js +112 -0
  1388. package/node_modules/execa/lib/transform/validate.js +43 -0
  1389. package/node_modules/execa/lib/utils/abort-signal.js +8 -0
  1390. package/node_modules/execa/lib/utils/deferred.js +7 -0
  1391. package/node_modules/execa/lib/utils/max-listeners.js +14 -0
  1392. package/node_modules/execa/lib/utils/standard-stream.js +6 -0
  1393. package/node_modules/execa/lib/utils/uint-array.js +69 -0
  1394. package/node_modules/execa/lib/verbose/complete.js +24 -0
  1395. package/node_modules/execa/lib/verbose/custom.js +26 -0
  1396. package/node_modules/execa/lib/verbose/default.js +54 -0
  1397. package/node_modules/execa/lib/verbose/error.js +13 -0
  1398. package/node_modules/execa/lib/verbose/info.js +39 -0
  1399. package/node_modules/execa/lib/verbose/ipc.js +15 -0
  1400. package/node_modules/execa/lib/verbose/log.js +54 -0
  1401. package/node_modules/execa/lib/verbose/output.js +60 -0
  1402. package/node_modules/execa/lib/verbose/start.js +15 -0
  1403. package/node_modules/execa/lib/verbose/values.js +33 -0
  1404. package/node_modules/execa/license +9 -0
  1405. package/node_modules/execa/package.json +124 -0
  1406. package/node_modules/execa/readme.md +461 -0
  1407. package/node_modules/fast-deep-equal/LICENSE +21 -0
  1408. package/node_modules/fast-deep-equal/README.md +96 -0
  1409. package/node_modules/fast-deep-equal/es6/index.js +72 -0
  1410. package/node_modules/fast-deep-equal/es6/react.js +79 -0
  1411. package/node_modules/fast-deep-equal/index.js +46 -0
  1412. package/node_modules/fast-deep-equal/package.json +51 -0
  1413. package/node_modules/fast-deep-equal/react.js +53 -0
  1414. package/node_modules/figures/index.js +292 -0
  1415. package/node_modules/figures/license +9 -0
  1416. package/node_modules/figures/package.json +46 -0
  1417. package/node_modules/figures/readme.md +337 -0
  1418. package/node_modules/fontkit/README.md +266 -0
  1419. package/node_modules/fontkit/dist/browser-module.mjs +13316 -0
  1420. package/node_modules/fontkit/dist/browser.cjs +13333 -0
  1421. package/node_modules/fontkit/dist/main.cjs +13355 -0
  1422. package/node_modules/fontkit/dist/module.mjs +13337 -0
  1423. package/node_modules/fontkit/package.json +87 -0
  1424. package/node_modules/fontkit/src/CmapProcessor.js +286 -0
  1425. package/node_modules/fontkit/src/DFont.js +117 -0
  1426. package/node_modules/fontkit/src/TTFFont.js +554 -0
  1427. package/node_modules/fontkit/src/TrueTypeCollection.js +67 -0
  1428. package/node_modules/fontkit/src/WOFF2Font.js +216 -0
  1429. package/node_modules/fontkit/src/WOFFFont.js +36 -0
  1430. package/node_modules/fontkit/src/aat/AATFeatureMap.js +543 -0
  1431. package/node_modules/fontkit/src/aat/AATLayoutEngine.js +49 -0
  1432. package/node_modules/fontkit/src/aat/AATLookupTable.js +125 -0
  1433. package/node_modules/fontkit/src/aat/AATMorxProcessor.js +430 -0
  1434. package/node_modules/fontkit/src/aat/AATStateMachine.js +96 -0
  1435. package/node_modules/fontkit/src/base.js +29 -0
  1436. package/node_modules/fontkit/src/cff/CFFCharsets.js +99 -0
  1437. package/node_modules/fontkit/src/cff/CFFDict.js +167 -0
  1438. package/node_modules/fontkit/src/cff/CFFEncodings.js +48 -0
  1439. package/node_modules/fontkit/src/cff/CFFFont.js +159 -0
  1440. package/node_modules/fontkit/src/cff/CFFIndex.js +150 -0
  1441. package/node_modules/fontkit/src/cff/CFFOperand.js +134 -0
  1442. package/node_modules/fontkit/src/cff/CFFPointer.js +50 -0
  1443. package/node_modules/fontkit/src/cff/CFFPrivateDict.js +39 -0
  1444. package/node_modules/fontkit/src/cff/CFFStandardStrings.js +71 -0
  1445. package/node_modules/fontkit/src/cff/CFFTop.js +237 -0
  1446. package/node_modules/fontkit/src/decorators.js +36 -0
  1447. package/node_modules/fontkit/src/encodings.js +219 -0
  1448. package/node_modules/fontkit/src/fs.js +17 -0
  1449. package/node_modules/fontkit/src/glyph/BBox.js +72 -0
  1450. package/node_modules/fontkit/src/glyph/CFFGlyph.js +604 -0
  1451. package/node_modules/fontkit/src/glyph/COLRGlyph.js +90 -0
  1452. package/node_modules/fontkit/src/glyph/Glyph.js +212 -0
  1453. package/node_modules/fontkit/src/glyph/GlyphVariationProcessor.js +486 -0
  1454. package/node_modules/fontkit/src/glyph/Path.js +244 -0
  1455. package/node_modules/fontkit/src/glyph/SBIXGlyph.js +54 -0
  1456. package/node_modules/fontkit/src/glyph/StandardNames.js +27 -0
  1457. package/node_modules/fontkit/src/glyph/TTFGlyph.js +393 -0
  1458. package/node_modules/fontkit/src/glyph/TTFGlyphEncoder.js +158 -0
  1459. package/node_modules/fontkit/src/glyph/WOFF2Glyph.js +17 -0
  1460. package/node_modules/fontkit/src/index.js +15 -0
  1461. package/node_modules/fontkit/src/layout/GlyphPosition.js +30 -0
  1462. package/node_modules/fontkit/src/layout/GlyphRun.js +108 -0
  1463. package/node_modules/fontkit/src/layout/KernProcessor.js +94 -0
  1464. package/node_modules/fontkit/src/layout/LayoutEngine.js +189 -0
  1465. package/node_modules/fontkit/src/layout/Script.js +231 -0
  1466. package/node_modules/fontkit/src/layout/UnicodeLayoutEngine.js +250 -0
  1467. package/node_modules/fontkit/src/node.js +17 -0
  1468. package/node_modules/fontkit/src/opentype/GPOSProcessor.js +353 -0
  1469. package/node_modules/fontkit/src/opentype/GSUBProcessor.js +192 -0
  1470. package/node_modules/fontkit/src/opentype/GlyphInfo.js +57 -0
  1471. package/node_modules/fontkit/src/opentype/GlyphIterator.js +70 -0
  1472. package/node_modules/fontkit/src/opentype/OTLayoutEngine.js +113 -0
  1473. package/node_modules/fontkit/src/opentype/OTProcessor.js +438 -0
  1474. package/node_modules/fontkit/src/opentype/ShapingPlan.js +118 -0
  1475. package/node_modules/fontkit/src/opentype/shapers/ArabicShaper.js +123 -0
  1476. package/node_modules/fontkit/src/opentype/shapers/DefaultShaper.js +72 -0
  1477. package/node_modules/fontkit/src/opentype/shapers/HangulShaper.js +285 -0
  1478. package/node_modules/fontkit/src/opentype/shapers/IndicShaper.js +911 -0
  1479. package/node_modules/fontkit/src/opentype/shapers/UniversalShaper.js +185 -0
  1480. package/node_modules/fontkit/src/opentype/shapers/data.trie +0 -0
  1481. package/node_modules/fontkit/src/opentype/shapers/gen-indic.js +208 -0
  1482. package/node_modules/fontkit/src/opentype/shapers/gen-use.js +287 -0
  1483. package/node_modules/fontkit/src/opentype/shapers/generate-data.js +33 -0
  1484. package/node_modules/fontkit/src/opentype/shapers/index.js +102 -0
  1485. package/node_modules/fontkit/src/opentype/shapers/indic-data.js +175 -0
  1486. package/node_modules/fontkit/src/opentype/shapers/indic.json +1 -0
  1487. package/node_modules/fontkit/src/opentype/shapers/indic.machine +31 -0
  1488. package/node_modules/fontkit/src/opentype/shapers/indic.trie +0 -0
  1489. package/node_modules/fontkit/src/opentype/shapers/use.json +1 -0
  1490. package/node_modules/fontkit/src/opentype/shapers/use.machine +44 -0
  1491. package/node_modules/fontkit/src/opentype/shapers/use.trie +0 -0
  1492. package/node_modules/fontkit/src/subset/CFFSubset.js +171 -0
  1493. package/node_modules/fontkit/src/subset/Subset.js +27 -0
  1494. package/node_modules/fontkit/src/subset/TTFSubset.js +131 -0
  1495. package/node_modules/fontkit/src/tables/BASE.js +78 -0
  1496. package/node_modules/fontkit/src/tables/COLR.js +25 -0
  1497. package/node_modules/fontkit/src/tables/CPAL.js +24 -0
  1498. package/node_modules/fontkit/src/tables/DSIG.js +21 -0
  1499. package/node_modules/fontkit/src/tables/EBDT.js +91 -0
  1500. package/node_modules/fontkit/src/tables/EBLC.js +80 -0
  1501. package/node_modules/fontkit/src/tables/GDEF.js +57 -0
  1502. package/node_modules/fontkit/src/tables/GPOS.js +209 -0
  1503. package/node_modules/fontkit/src/tables/GSUB.js +84 -0
  1504. package/node_modules/fontkit/src/tables/HVAR.js +44 -0
  1505. package/node_modules/fontkit/src/tables/JSTF.js +43 -0
  1506. package/node_modules/fontkit/src/tables/LTSH.js +10 -0
  1507. package/node_modules/fontkit/src/tables/OS2.js +84 -0
  1508. package/node_modules/fontkit/src/tables/PCLT.js +21 -0
  1509. package/node_modules/fontkit/src/tables/VDMX.js +33 -0
  1510. package/node_modules/fontkit/src/tables/VORG.js +14 -0
  1511. package/node_modules/fontkit/src/tables/WOFF2Directory.js +74 -0
  1512. package/node_modules/fontkit/src/tables/WOFFDirectory.js +38 -0
  1513. package/node_modules/fontkit/src/tables/aat.js +157 -0
  1514. package/node_modules/fontkit/src/tables/avar.js +19 -0
  1515. package/node_modules/fontkit/src/tables/bsln.js +31 -0
  1516. package/node_modules/fontkit/src/tables/cmap.js +127 -0
  1517. package/node_modules/fontkit/src/tables/cvt.js +6 -0
  1518. package/node_modules/fontkit/src/tables/directory.js +58 -0
  1519. package/node_modules/fontkit/src/tables/feat.js +28 -0
  1520. package/node_modules/fontkit/src/tables/fpgm.js +8 -0
  1521. package/node_modules/fontkit/src/tables/fvar.js +31 -0
  1522. package/node_modules/fontkit/src/tables/gasp.js +15 -0
  1523. package/node_modules/fontkit/src/tables/glyf.js +4 -0
  1524. package/node_modules/fontkit/src/tables/gvar.js +27 -0
  1525. package/node_modules/fontkit/src/tables/hdmx.js +15 -0
  1526. package/node_modules/fontkit/src/tables/head.js +25 -0
  1527. package/node_modules/fontkit/src/tables/hhea.js +19 -0
  1528. package/node_modules/fontkit/src/tables/hmtx.js +11 -0
  1529. package/node_modules/fontkit/src/tables/index.js +117 -0
  1530. package/node_modules/fontkit/src/tables/just.js +81 -0
  1531. package/node_modules/fontkit/src/tables/kern.js +91 -0
  1532. package/node_modules/fontkit/src/tables/loca.js +30 -0
  1533. package/node_modules/fontkit/src/tables/maxp.js +20 -0
  1534. package/node_modules/fontkit/src/tables/morx.js +79 -0
  1535. package/node_modules/fontkit/src/tables/name.js +130 -0
  1536. package/node_modules/fontkit/src/tables/opbd.js +15 -0
  1537. package/node_modules/fontkit/src/tables/opentype.js +217 -0
  1538. package/node_modules/fontkit/src/tables/post.js +34 -0
  1539. package/node_modules/fontkit/src/tables/prep.js +6 -0
  1540. package/node_modules/fontkit/src/tables/sbix.js +17 -0
  1541. package/node_modules/fontkit/src/tables/variations.js +81 -0
  1542. package/node_modules/fontkit/src/tables/vhea.js +19 -0
  1543. package/node_modules/fontkit/src/tables/vmtx.js +12 -0
  1544. package/node_modules/fontkit/src/utils.js +62 -0
  1545. package/node_modules/get-stream/license +9 -0
  1546. package/node_modules/get-stream/package.json +56 -0
  1547. package/node_modules/get-stream/readme.md +303 -0
  1548. package/node_modules/get-stream/source/array-buffer.js +84 -0
  1549. package/node_modules/get-stream/source/array.js +32 -0
  1550. package/node_modules/get-stream/source/buffer.js +19 -0
  1551. package/node_modules/get-stream/source/contents.js +121 -0
  1552. package/node_modules/get-stream/source/exports.js +5 -0
  1553. package/node_modules/get-stream/source/index.js +13 -0
  1554. package/node_modules/get-stream/source/stream.js +65 -0
  1555. package/node_modules/get-stream/source/string.js +41 -0
  1556. package/node_modules/get-stream/source/utils.js +11 -0
  1557. package/node_modules/human-signals/LICENSE +201 -0
  1558. package/node_modules/human-signals/README.md +171 -0
  1559. package/node_modules/human-signals/build/src/core.js +273 -0
  1560. package/node_modules/human-signals/build/src/main.js +70 -0
  1561. package/node_modules/human-signals/build/src/realtime.js +16 -0
  1562. package/node_modules/human-signals/build/src/signals.js +34 -0
  1563. package/node_modules/human-signals/package.json +63 -0
  1564. package/node_modules/is-plain-obj/index.js +8 -0
  1565. package/node_modules/is-plain-obj/license +9 -0
  1566. package/node_modules/is-plain-obj/package.json +38 -0
  1567. package/node_modules/is-plain-obj/readme.md +58 -0
  1568. package/node_modules/is-stream/index.js +37 -0
  1569. package/node_modules/is-stream/license +9 -0
  1570. package/node_modules/is-stream/package.json +45 -0
  1571. package/node_modules/is-stream/readme.md +57 -0
  1572. package/node_modules/is-unicode-supported/index.js +21 -0
  1573. package/node_modules/is-unicode-supported/license +9 -0
  1574. package/node_modules/is-unicode-supported/package.json +44 -0
  1575. package/node_modules/is-unicode-supported/readme.md +35 -0
  1576. package/node_modules/npm-run-path/index.js +55 -0
  1577. package/node_modules/npm-run-path/license +9 -0
  1578. package/node_modules/npm-run-path/node_modules/path-key/index.js +12 -0
  1579. package/node_modules/npm-run-path/node_modules/path-key/license +9 -0
  1580. package/node_modules/npm-run-path/node_modules/path-key/package.json +41 -0
  1581. package/node_modules/npm-run-path/node_modules/path-key/readme.md +57 -0
  1582. package/node_modules/npm-run-path/package.json +49 -0
  1583. package/node_modules/npm-run-path/readme.md +104 -0
  1584. package/node_modules/pako/LICENSE +21 -0
  1585. package/node_modules/pako/README.md +176 -0
  1586. package/node_modules/pako/dist/pako.js +6606 -0
  1587. package/node_modules/pako/dist/pako.min.js +3 -0
  1588. package/node_modules/pako/dist/pako_deflate.js +3879 -0
  1589. package/node_modules/pako/dist/pako_deflate.min.js +2 -0
  1590. package/node_modules/pako/dist/pako_inflate.js +3127 -0
  1591. package/node_modules/pako/dist/pako_inflate.min.js +2 -0
  1592. package/node_modules/pako/index.js +14 -0
  1593. package/node_modules/pako/lib/deflate.js +400 -0
  1594. package/node_modules/pako/lib/inflate.js +418 -0
  1595. package/node_modules/pako/lib/utils/common.js +102 -0
  1596. package/node_modules/pako/lib/utils/strings.js +185 -0
  1597. package/node_modules/pako/lib/zlib/adler32.js +32 -0
  1598. package/node_modules/pako/lib/zlib/constants.js +50 -0
  1599. package/node_modules/pako/lib/zlib/crc32.js +41 -0
  1600. package/node_modules/pako/lib/zlib/deflate.js +1855 -0
  1601. package/node_modules/pako/lib/zlib/gzheader.js +40 -0
  1602. package/node_modules/pako/lib/zlib/inffast.js +326 -0
  1603. package/node_modules/pako/lib/zlib/inflate.js +1538 -0
  1604. package/node_modules/pako/lib/zlib/inftrees.js +327 -0
  1605. package/node_modules/pako/lib/zlib/messages.js +13 -0
  1606. package/node_modules/pako/lib/zlib/trees.js +1202 -0
  1607. package/node_modules/pako/lib/zlib/zstream.js +29 -0
  1608. package/node_modules/pako/package.json +40 -0
  1609. package/node_modules/parse-ms/index.js +45 -0
  1610. package/node_modules/parse-ms/license +9 -0
  1611. package/node_modules/parse-ms/package.json +44 -0
  1612. package/node_modules/parse-ms/readme.md +46 -0
  1613. package/node_modules/pretty-ms/index.js +150 -0
  1614. package/node_modules/pretty-ms/license +9 -0
  1615. package/node_modules/pretty-ms/package.json +52 -0
  1616. package/node_modules/pretty-ms/readme.md +198 -0
  1617. package/node_modules/restructure/LICENSE +21 -0
  1618. package/node_modules/restructure/README.md +300 -0
  1619. package/node_modules/restructure/dist/main.cjs +1019 -0
  1620. package/node_modules/restructure/index.js +17 -0
  1621. package/node_modules/restructure/package.json +36 -0
  1622. package/node_modules/restructure/src/Array.js +106 -0
  1623. package/node_modules/restructure/src/Base.js +17 -0
  1624. package/node_modules/restructure/src/Bitfield.js +39 -0
  1625. package/node_modules/restructure/src/Boolean.js +22 -0
  1626. package/node_modules/restructure/src/Buffer.js +38 -0
  1627. package/node_modules/restructure/src/DecodeStream.js +85 -0
  1628. package/node_modules/restructure/src/EncodeStream.js +129 -0
  1629. package/node_modules/restructure/src/Enum.js +27 -0
  1630. package/node_modules/restructure/src/LazyArray.js +74 -0
  1631. package/node_modules/restructure/src/Number.js +77 -0
  1632. package/node_modules/restructure/src/Optional.js +44 -0
  1633. package/node_modules/restructure/src/Pointer.js +167 -0
  1634. package/node_modules/restructure/src/Reserved.js +23 -0
  1635. package/node_modules/restructure/src/String.js +155 -0
  1636. package/node_modules/restructure/src/Struct.js +113 -0
  1637. package/node_modules/restructure/src/VersionedStruct.js +139 -0
  1638. package/node_modules/restructure/src/utils.js +35 -0
  1639. package/node_modules/restructure/test/Array.js +103 -0
  1640. package/node_modules/restructure/test/Bitfield.js +29 -0
  1641. package/node_modules/restructure/test/Boolean.js +39 -0
  1642. package/node_modules/restructure/test/Buffer.js +45 -0
  1643. package/node_modules/restructure/test/DecodeStream.js +101 -0
  1644. package/node_modules/restructure/test/EncodeStream.js +104 -0
  1645. package/node_modules/restructure/test/Enum.js +24 -0
  1646. package/node_modules/restructure/test/LazyArray.js +59 -0
  1647. package/node_modules/restructure/test/Number.js +356 -0
  1648. package/node_modules/restructure/test/Optional.js +100 -0
  1649. package/node_modules/restructure/test/Pointer.js +289 -0
  1650. package/node_modules/restructure/test/Reserved.js +26 -0
  1651. package/node_modules/restructure/test/String.js +151 -0
  1652. package/node_modules/restructure/test/Struct.js +146 -0
  1653. package/node_modules/restructure/test/VersionedStruct.js +495 -0
  1654. package/node_modules/saxes/README.md +323 -0
  1655. package/node_modules/saxes/package.json +55 -0
  1656. package/node_modules/saxes/saxes.js +2053 -0
  1657. package/node_modules/signal-exit/LICENSE.txt +16 -0
  1658. package/node_modules/signal-exit/README.md +74 -0
  1659. package/node_modules/signal-exit/dist/cjs/browser.js +10 -0
  1660. package/node_modules/signal-exit/dist/cjs/index.js +279 -0
  1661. package/node_modules/signal-exit/dist/cjs/package.json +3 -0
  1662. package/node_modules/signal-exit/dist/cjs/signals.js +42 -0
  1663. package/node_modules/signal-exit/dist/mjs/browser.js +4 -0
  1664. package/node_modules/signal-exit/dist/mjs/index.js +275 -0
  1665. package/node_modules/signal-exit/dist/mjs/package.json +3 -0
  1666. package/node_modules/signal-exit/dist/mjs/signals.js +39 -0
  1667. package/node_modules/signal-exit/package.json +93 -0
  1668. package/node_modules/strip-final-newline/index.js +26 -0
  1669. package/node_modules/strip-final-newline/license +9 -0
  1670. package/node_modules/strip-final-newline/package.json +46 -0
  1671. package/node_modules/strip-final-newline/readme.md +34 -0
  1672. package/node_modules/tiny-inflate/LICENSE +21 -0
  1673. package/node_modules/tiny-inflate/index.js +375 -0
  1674. package/node_modules/tiny-inflate/package.json +25 -0
  1675. package/node_modules/tiny-inflate/readme.md +31 -0
  1676. package/node_modules/tiny-inflate/test/index.js +75 -0
  1677. package/node_modules/tiny-inflate/test/lorem.txt +199 -0
  1678. package/node_modules/unicode-properties/LICENSE +8 -0
  1679. package/node_modules/unicode-properties/dist/main.cjs +150 -0
  1680. package/node_modules/unicode-properties/dist/module.mjs +127 -0
  1681. package/node_modules/unicode-properties/package.json +44 -0
  1682. package/node_modules/unicode-properties/readme.md +78 -0
  1683. package/node_modules/unicode-trie/LICENSE +8 -0
  1684. package/node_modules/unicode-trie/README.md +77 -0
  1685. package/node_modules/unicode-trie/builder.js +966 -0
  1686. package/node_modules/unicode-trie/index.js +136 -0
  1687. package/node_modules/unicode-trie/package.json +23 -0
  1688. package/node_modules/unicode-trie/swap.js +25 -0
  1689. package/node_modules/unicode-trie/test/mocha.opts +1 -0
  1690. package/node_modules/unicode-trie/test/test.js +243 -0
  1691. package/node_modules/unicorn-magic/default.js +14 -0
  1692. package/node_modules/unicorn-magic/license +9 -0
  1693. package/node_modules/unicorn-magic/node.js +49 -0
  1694. package/node_modules/unicorn-magic/package.json +59 -0
  1695. package/node_modules/unicorn-magic/readme.md +25 -0
  1696. package/node_modules/which-command/cli.js +74 -0
  1697. package/node_modules/which-command/index.js +170 -0
  1698. package/node_modules/which-command/license +9 -0
  1699. package/node_modules/which-command/package.json +46 -0
  1700. package/node_modules/which-command/readme.md +121 -0
  1701. package/node_modules/xmlchars/LICENSE +18 -0
  1702. package/node_modules/xmlchars/README.md +33 -0
  1703. package/node_modules/xmlchars/package.json +34 -0
  1704. package/node_modules/xmlchars/xml/1.0/ed4.js +44 -0
  1705. package/node_modules/xmlchars/xml/1.0/ed5.js +105 -0
  1706. package/node_modules/xmlchars/xml/1.1/ed2.js +145 -0
  1707. package/node_modules/xmlchars/xmlchars.js +191 -0
  1708. package/node_modules/xmlchars/xmlns/1.0/ed3.js +65 -0
  1709. package/node_modules/yoctocolors/base.js +118 -0
  1710. package/node_modules/yoctocolors/index.js +2 -0
  1711. package/node_modules/yoctocolors/license +9 -0
  1712. package/node_modules/yoctocolors/package.json +66 -0
  1713. package/node_modules/yoctocolors/readme.md +163 -0
  1714. package/package.json +337 -246
  1715. package/node_modules/@deepseek-ai/cordis-plugin-hmr/README.md +0 -51
  1716. package/node_modules/@deepseek-ai/cordis-plugin-hmr/lib/index.js +0 -401
  1717. package/node_modules/@deepseek-ai/cordis-plugin-hmr/src/error.ts +0 -36
  1718. package/node_modules/@deepseek-ai/cordis-plugin-hmr/src/index.ts +0 -427
  1719. package/node_modules/@deepseek-ai/dsh/lib/plugin-Bk_PbPwP.js +0 -130
  1720. package/node_modules/@deepseek-ai/dsh/lib/profile-boot-DB8eVKBx.js +0 -2
  1721. package/node_modules/@deepseek-ai/dsh-web-frontend/dist/assets/index-BRtJ62WN.css +0 -1
  1722. package/node_modules/@deepseek-ai/dsh-web-frontend/dist/assets/index-Ly7KS3xS.js +0 -127
  1723. /package/node_modules/@deepseek-ai/{cordis-plugin-hmr → dsh-hmr}/LICENSE +0 -0
@@ -8,6 +8,258 @@ window.__ModuleLoader__.load({
8
8
  let react_jsx_runtime = require("react/jsx-runtime");
9
9
  let react = require("react");
10
10
  let _deepseek_ai_dsh_client_ui_primitives = require("@deepseek-ai/dsh-client-ui-primitives");
11
+ //#region lib/types/changes.js
12
+ /** Authenticated GET route serving one announced change summary while its Session lives. */
13
+ const CHANGED_FILES_PATH = "/api/changes.summary";
14
+ /** Authenticated GET route serving one listed file's turn-start and turn-end comparison while its Session lives. */
15
+ const CHANGES_DIFF_PATH = "/api/changes.diff";
16
+ /** Authenticated POST route for opening a changed file on the Host desktop. */
17
+ const CHANGES_OPEN_PATH = "/api/changes.open";
18
+ /** Resource-address prefix of a turn's review tab in the right Sidebar. */
19
+ const CHANGES_REVIEW_ADDRESS = "dsh-resource://changes-review/session/";
20
+ function isRecord$1(value) {
21
+ return typeof value === "object" && value !== null && !Array.isArray(value);
22
+ }
23
+ /**
24
+ * Validate one changed-file record read from the summary route.
25
+ * @param value - decoded JSON.
26
+ * @returns whether the record carries a path, a display path, and line counts.
27
+ */
28
+ function isChangedFile(value) {
29
+ if (!isRecord$1(value)) return false;
30
+ const { path, display, added, deleted, binary, oversized } = value;
31
+ return typeof path === "string" && path.length > 0 && typeof display === "string" && display.length > 0 && Number.isSafeInteger(added) && Number.isSafeInteger(deleted) && (binary === void 0 || binary === true) && (oversized === void 0 || oversized === true);
32
+ }
33
+ /**
34
+ * Validate a summary read from the summary route.
35
+ * @param value - decoded JSON.
36
+ * @returns whether the value identifies a turn, a complete file list, the total count, and the line totals.
37
+ */
38
+ function isChangesSummary(value) {
39
+ if (!isRecord$1(value)) return false;
40
+ const { turn, files, total, added, deleted } = value;
41
+ return Number.isSafeInteger(turn) && turn >= 1 && Number.isSafeInteger(total) && Number.isSafeInteger(added) && Number.isSafeInteger(deleted) && Array.isArray(files) && files.every(isChangedFile);
42
+ }
43
+ function isHunk(value) {
44
+ if (!isRecord$1(value)) return false;
45
+ const { oldStart, oldLines, newStart, newLines, lines } = value;
46
+ return [
47
+ oldStart,
48
+ oldLines,
49
+ newStart,
50
+ newLines
51
+ ].every((field) => Number.isSafeInteger(field) && field >= 0) && Array.isArray(lines) && lines.every((line) => typeof line === "string" && /^[+ -]/.test(line));
52
+ }
53
+ /**
54
+ * Validate a comparison read from the comparison route.
55
+ * @param value - decoded JSON.
56
+ * @returns whether the value is a text comparison with well-formed hunks, or a binary or oversized refusal.
57
+ */
58
+ function isChangesDiff(value) {
59
+ if (!isRecord$1(value)) return false;
60
+ const { kind, path, display } = value;
61
+ if (typeof path !== "string" || path.length === 0 || typeof display !== "string" || display.length === 0) return false;
62
+ if (kind === "binary" || kind === "oversized") return true;
63
+ if (kind !== "text") return false;
64
+ const { before, after, hunks, coarse } = value;
65
+ return typeof before === "boolean" && typeof after === "boolean" && typeof coarse === "boolean" && Array.isArray(hunks) && hunks.every(isHunk);
66
+ }
67
+ /**
68
+ * Validate the `workspace/changes` event data read from a Session log.
69
+ * @param value - decoded durable event data.
70
+ * @returns whether the event names a turn.
71
+ */
72
+ function isChangesEvent(value) {
73
+ return isRecord$1(value) && Number.isSafeInteger(value.turn) && value.turn >= 1;
74
+ }
75
+ /**
76
+ * Build authenticated coordinates for the summary one `workspace/changes` event announced.
77
+ * @param sessionId - owning Session.
78
+ * @param seq - event sequence.
79
+ * @returns same-origin summary URL.
80
+ */
81
+ function changesSummaryUrl(sessionId, seq) {
82
+ return `${CHANGED_FILES_PATH}?${new URLSearchParams({
83
+ sessionId,
84
+ seq: String(seq)
85
+ })}`;
86
+ }
87
+ /**
88
+ * Build authenticated coordinates for one listed file's comparison.
89
+ * @param sessionId - owning Session.
90
+ * @param seq - workspace/changes event sequence.
91
+ * @param index - original index in the summary's files array.
92
+ * @returns same-origin comparison URL.
93
+ */
94
+ function changesDiffUrl(sessionId, seq, index) {
95
+ return `${CHANGES_DIFF_PATH}?${new URLSearchParams({
96
+ sessionId,
97
+ seq: String(seq),
98
+ index: String(index)
99
+ })}`;
100
+ }
101
+ /**
102
+ * Build authenticated coordinates for a changed file's native open.
103
+ * @param sessionId - owning Session.
104
+ * @param seq - workspace/changes event sequence.
105
+ * @param index - original index in the summary's files array.
106
+ * @returns same-origin action URL.
107
+ */
108
+ function changedFileUrl(sessionId, seq, index) {
109
+ return `${CHANGES_OPEN_PATH}?${new URLSearchParams({
110
+ sessionId,
111
+ seq: String(seq),
112
+ index: String(index)
113
+ })}`;
114
+ }
115
+ /**
116
+ * The right-Sidebar address of one turn's review. The Session and the event
117
+ * sequence identify the content; the turn rides along for the tab title.
118
+ * @param coordinates - viewed Session, announcing event, and turn.
119
+ * @returns a `dsh-resource://changes-review/session/…` address.
120
+ */
121
+ function changesReviewAddress(coordinates) {
122
+ const { sessionId, seq, turn } = coordinates;
123
+ return `${CHANGES_REVIEW_ADDRESS}${encodeURIComponent(sessionId)}/${seq}/${turn}`;
124
+ }
125
+ /**
126
+ * Read the coordinates back out of a review address.
127
+ * @param address - a resource address.
128
+ * @returns the coordinates, or undefined for any other address.
129
+ */
130
+ function parseChangesReviewAddress(address) {
131
+ if (!address.startsWith("dsh-resource://changes-review/session/")) return void 0;
132
+ const parts = address.slice(38).split("/");
133
+ if (parts.length !== 3) return void 0;
134
+ const [sessionId, seq, turn] = parts;
135
+ if (sessionId === "" || !/^\d+$/.test(seq) || !/^[1-9]\d*$/.test(turn)) return void 0;
136
+ try {
137
+ return {
138
+ sessionId: decodeURIComponent(sessionId),
139
+ seq: Number(seq),
140
+ turn: Number(turn)
141
+ };
142
+ } catch {
143
+ return;
144
+ }
145
+ }
146
+ //#endregion
147
+ //#region lib/types/client/host-read-store.js
148
+ /**
149
+ * Fetch-once cache of Host-served records keyed by their authenticated URL:
150
+ * one read per URL while a state stands, cleared on connection replacement,
151
+ * cancelled on disposal. Each store decides what a response means and which
152
+ * states a later request reads again.
153
+ */
154
+ /** One browser plugin's reads of one record kind. */
155
+ var HostReadStore = class {
156
+ policy;
157
+ /** Record URLs key the state across Sessions and turns. */
158
+ state = (0, _deepseek_ai_dsh_client_store.createSnapshotStore)({});
159
+ lifetime = new AbortController();
160
+ /** The connection generation the current states belong to; a reset aborts it so no older read publishes. */
161
+ generation = new AbortController();
162
+ pending = /* @__PURE__ */ new Set();
163
+ constructor(policy) {
164
+ this.policy = policy;
165
+ }
166
+ /**
167
+ * Read one URL unless a state the policy keeps already stands for it.
168
+ * @param url - the record's authenticated URL.
169
+ * @returns after the state is published.
170
+ */
171
+ async loadUrl(url) {
172
+ const current = this.state.getSnapshot()[url];
173
+ if (this.lifetime.signal.aborted || current !== void 0 && !this.policy.retryable(current)) return;
174
+ this.state.update((state) => {
175
+ state[url] = this.policy.loading;
176
+ });
177
+ const task = this.read(url, AbortSignal.any([this.lifetime.signal, this.generation.signal]));
178
+ this.pending.add(task);
179
+ try {
180
+ await task;
181
+ } finally {
182
+ this.pending.delete(task);
183
+ }
184
+ }
185
+ /** Forget every state and abandon in-flight reads; a replaced connection may reach a Host that no longer serves them. */
186
+ reset() {
187
+ this.generation.abort();
188
+ this.generation = new AbortController();
189
+ this.state.set({});
190
+ }
191
+ /** Cancel outstanding reads and wait until none can publish state. */
192
+ async dispose() {
193
+ this.lifetime.abort();
194
+ await Promise.all(this.pending);
195
+ }
196
+ async read(url, signal) {
197
+ let next;
198
+ try {
199
+ next = await this.policy.decode(await fetch(url, { signal }));
200
+ } catch {
201
+ next = this.policy.failed;
202
+ }
203
+ if (!signal.aborted) this.state.update((state) => {
204
+ state[url] = next;
205
+ });
206
+ }
207
+ };
208
+ //#endregion
209
+ //#region lib/types/client/changes-diff.js
210
+ /** One browser plugin's comparison reads; a failed read is the one state a later request replaces. */
211
+ var ChangesDiffStore = class extends HostReadStore {
212
+ constructor() {
213
+ super({
214
+ loading: "loading",
215
+ failed: "error",
216
+ retryable: (state) => state === "error",
217
+ decode: async (response) => {
218
+ if (response.status === 404) return "missing";
219
+ if (!response.ok) return "error";
220
+ const value = await response.json();
221
+ return isChangesDiff(value) ? value : "error";
222
+ }
223
+ });
224
+ }
225
+ /**
226
+ * Read one comparison; a cached comparison or a missing one is kept, a failed one is read again.
227
+ * @param sessionId - viewed Session.
228
+ * @param seq - the announcing event's sequence.
229
+ * @param index - the file's index in the summary.
230
+ * @returns after the state is published.
231
+ */
232
+ load(sessionId, seq, index) {
233
+ return this.loadUrl(changesDiffUrl(sessionId, seq, index));
234
+ }
235
+ };
236
+ //#endregion
237
+ //#region lib/types/client/changes-summary.js
238
+ /** One browser plugin's summary reads; a summary or a missing answer is kept until the connection is replaced. */
239
+ var ChangesSummaryStore = class extends HostReadStore {
240
+ constructor() {
241
+ super({
242
+ loading: "loading",
243
+ failed: "missing",
244
+ retryable: () => false,
245
+ decode: async (response) => {
246
+ if (!response.ok) return "missing";
247
+ const value = await response.json();
248
+ return isChangesSummary(value) ? value : "missing";
249
+ }
250
+ });
251
+ }
252
+ /**
253
+ * Read one summary once; a later read of the same coordinates returns the cached state.
254
+ * @param sessionId - viewed Session.
255
+ * @param seq - the announcing event's sequence.
256
+ * @returns after the state is published.
257
+ */
258
+ load(sessionId, seq) {
259
+ return this.loadUrl(changesSummaryUrl(sessionId, seq));
260
+ }
261
+ };
262
+ //#endregion
11
263
  //#region lib/types/presented.js
12
264
  /** Authenticated POST route for opening a workspace file on the Host desktop. */
13
265
  const PRESENT_OPEN_PATH = "/api/present.open";
@@ -68,7 +320,7 @@ window.__ModuleLoader__.load({
68
320
  }
69
321
  //#endregion
70
322
  //#region lib/types/client/present-open.js
71
- /** Shared native-open status for delivery cards and closing-message file mentions. */
323
+ /** Shared native-open status for delivery cards, the changed-files card, and closing-message file mentions. */
72
324
  /** One browser plugin's file-open requests, cancelled when that plugin is disposed. */
73
325
  var PresentedOpenController = class {
74
326
  /** File action URLs key the state across Sessions, turns, and both clickable surfaces. */
@@ -88,8 +340,20 @@ window.__ModuleLoader__.load({
88
340
  * @param action - default application open or file-manager reveal.
89
341
  * @returns after the Host acknowledges opening or the error state is published.
90
342
  */
91
- async open(sessionId, seq, index, action = "open") {
92
- const url = presentedFileUrl(sessionId, seq, index);
343
+ open(sessionId, seq, index, action = "open") {
344
+ return this.openUrl(presentedFileUrl(sessionId, seq, index), action);
345
+ }
346
+ /**
347
+ * Open one recorded changed file in the Host's default application.
348
+ * @param sessionId - viewed Session.
349
+ * @param seq - durable workspace/changes event sequence.
350
+ * @param index - original file index within that event.
351
+ * @returns after the Host acknowledges opening or the error state is published.
352
+ */
353
+ openChanged(sessionId, seq, index) {
354
+ return this.openUrl(changedFileUrl(sessionId, seq, index), "open");
355
+ }
356
+ async openUrl(url, action) {
93
357
  const phase = this.state.getSnapshot()[url];
94
358
  if (this.lifetime.signal.aborted || phase === "opening" || phase === "revealing") return;
95
359
  this.state.update((state) => {
@@ -167,13 +431,13 @@ window.__ModuleLoader__.load({
167
431
  };
168
432
  //#endregion
169
433
  //#region \0dsh-css:/Users/songli/deepseek-harness/packages/client/ui-deliverables/src/client/PresentRow.module.css.mjs
170
- const css$2 = "._2XWtrW_summary{min-width:0;color:var(--dsw-alias-label-secondary);align-items:center;gap:8px;margin-left:8px;font-size:12px;display:flex}._2XWtrW_summary>:first-child{flex-shrink:0}._2XWtrW_paths{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}._2XWtrW_output{background:var(--dsw-alias-bg-layer-1);color:var(--dsw-alias-label-secondary);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:8px;margin:8px 0;padding:12px;font-size:12px}._2XWtrW_inspect{color:var(--dsw-alias-link);font:inherit;cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:4px 0;font-size:12px}";
171
- const tagId$2 = "@deepseek-ai/dsh-client-ui-deliverables/PresentRow.module.css";
172
- if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$2) + "]") === null) {
434
+ const css$3 = "._2XWtrW_summary{min-width:0;color:var(--dsw-alias-label-secondary);align-items:center;gap:8px;margin-left:8px;font-size:12px;display:flex}._2XWtrW_summary>:first-child{flex-shrink:0}._2XWtrW_paths{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}._2XWtrW_output{background:var(--dsw-alias-bg-layer-1);color:var(--dsw-alias-label-secondary);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:8px;margin:8px 0;padding:12px;font-size:12px}._2XWtrW_inspect{color:var(--dsw-alias-link);font:inherit;cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:4px 0;font-size:12px}";
435
+ const tagId$3 = "@deepseek-ai/dsh-client-ui-deliverables/PresentRow.module.css";
436
+ if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$3) + "]") === null) {
173
437
  const tag = document.createElement("style");
174
438
  tag.dataset.plugin = "@deepseek-ai/dsh-client-ui-deliverables";
175
- tag.dataset.pluginCss = tagId$2;
176
- tag.textContent = css$2;
439
+ tag.dataset.pluginCss = tagId$3;
440
+ tag.textContent = css$3;
177
441
  document.head.appendChild(tag);
178
442
  }
179
443
  var PresentRow_module_css_default = {
@@ -240,6 +504,216 @@ window.__ModuleLoader__.load({
240
504
  });
241
505
  }
242
506
  //#endregion
507
+ //#region ../../util/workspace-path/lib/index.js
508
+ /**
509
+ * The `dsh-resource://file/…` address grammar: how a file is named across the
510
+ * Sidebar and the resource model, built and parsed without touching a
511
+ * filesystem.
512
+ * @module
513
+ */
514
+ /** The scheme and type every file address opens with. */
515
+ const FILE_ADDRESS_PREFIX = "dsh-resource://file/";
516
+ /** Component-encode one id or path segment, keeping `:` literal for drive letters. */
517
+ function encodeSegment(segment) {
518
+ return encodeURIComponent(segment).replace(/%3A/gi, ":");
519
+ }
520
+ /** Encode a `/`-separated path segment by segment. */
521
+ function encodePath(path) {
522
+ return path.split("/").map(encodeSegment).join("/");
523
+ }
524
+ /**
525
+ * Build the address of a file read through one Session.
526
+ * @param sessionId - the Session whose Host workspace resolves the path.
527
+ * @param path - absolute or workspace-relative path; backslashes are normalized to `/`, and leading `./` prefixes are dropped.
528
+ * @returns the `dsh-resource://file/session/<sessionId>/<path>` address.
529
+ */
530
+ function sessionFileAddress(sessionId, path) {
531
+ const normalized = path.replace(/\\/g, "/").replace(/^(?:\.\/)+/, "");
532
+ return `${FILE_ADDRESS_PREFIX}session/${encodeSegment(sessionId)}/${encodePath(normalized)}`;
533
+ }
534
+ /**
535
+ * Browser-safe Workspace path and display helpers.
536
+ * @module @deepseek-ai/dsh-util-workspace-path
537
+ */
538
+ /** Whether a path uses a Windows drive or UNC prefix. */
539
+ function isWindowsStylePath(value) {
540
+ return /^[A-Za-z]:[/\\]/.test(value) || value.startsWith("\\\\");
541
+ }
542
+ /**
543
+ * Whether a path is absolute in either spelling the Host accepts: POSIX (`/a/b`) or Windows drive or UNC.
544
+ * @param path - the path to classify.
545
+ * @returns `true` for an absolute path; `false` for a Workspace-relative one.
546
+ */
547
+ function isAbsoluteWorkspacePath(path) {
548
+ return path.startsWith("/") || isWindowsStylePath(path);
549
+ }
550
+ /**
551
+ * Resolve a Workspace-relative path into the Host-facing spelling used by path operations.
552
+ * @param cwd - Session Workspace root, when known.
553
+ * @param path - Absolute or Workspace-relative path.
554
+ * @returns an absolute path when a Workspace root is available, otherwise the original path.
555
+ */
556
+ function resolveWorkspacePath(cwd, path) {
557
+ if (isAbsoluteWorkspacePath(path)) return path;
558
+ if (cwd === void 0 || cwd === "") return path;
559
+ const separator = isWindowsStylePath(cwd) && cwd.includes("\\") ? "\\" : "/";
560
+ return `${cwd.replace(/[/\\]+$/, "")}${separator}${path.replace(/^[/\\]+/, "")}`;
561
+ }
562
+ /**
563
+ * The address for a path as a caller holds it: a relative path, or an absolute
564
+ * path inside the Session's workspace, becomes a `session`-scoped address; an
565
+ * absolute path outside it, or one whose workspace root is unknown, keeps its
566
+ * absolute path in that Session's address.
567
+ * @param sessionId - the Session the path is read in.
568
+ * @param cwd - that Session's workspace root, when known.
569
+ * @param path - absolute or workspace-relative path, in either separator spelling.
570
+ * @returns the `dsh-resource://file/…` address.
571
+ */
572
+ function fileAddressFor(sessionId, cwd, path) {
573
+ const normalized = path.replace(/\\/g, "/");
574
+ if (!isAbsoluteWorkspacePath(normalized)) return sessionFileAddress(sessionId, normalized);
575
+ const root = cwd === void 0 ? "" : cwd.replace(/\\/g, "/").replace(/\/+$/, "");
576
+ if (root !== "" && normalized === root) return sessionFileAddress(sessionId, "");
577
+ if (root !== "" && normalized.startsWith(`${root}/`)) return sessionFileAddress(sessionId, normalized.slice(root.length + 1));
578
+ return sessionFileAddress(sessionId, normalized);
579
+ }
580
+ //#endregion
581
+ //#region lib/types/client/icons.js
582
+ /** Angle brackets, the code mark the card's header tile shows. */
583
+ const IconCodeBracketsOutline16 = ({ size = 16, className }) => (0, react_jsx_runtime.jsx)("svg", {
584
+ width: size,
585
+ height: size,
586
+ className,
587
+ viewBox: "0 0 16 16",
588
+ fill: "none",
589
+ xmlns: "http://www.w3.org/2000/svg",
590
+ "aria-hidden": "true",
591
+ children: (0, react_jsx_runtime.jsx)("path", {
592
+ d: "M5.6 3.4 1 8l4.6 4.6M10.4 3.4 15 8l-4.6 4.6",
593
+ stroke: "currentColor",
594
+ strokeWidth: "1.8",
595
+ strokeLinecap: "round",
596
+ strokeLinejoin: "round"
597
+ })
598
+ });
599
+ //#endregion
600
+ //#region \0dsh-css:/Users/songli/deepseek-harness/packages/client/ui-deliverables/src/client/ChangedFiles.module.css.mjs
601
+ const css$2 = ".yZYUSG_card{--changes-fill:var(--dsw-static-neutral-50);--changes-hover:var(--dsw-static-neutral-100);border:.5px solid var(--dsw-alias-border-l1);min-width:0;color:var(--dsw-alias-label-primary);border-radius:16px;flex-direction:column;margin-top:4px;display:flex;overflow:hidden}body[data-ds-dark-theme] .yZYUSG_card{--changes-fill:var(--dsw-static-neutral-850);--changes-hover:var(--dsw-static-neutral-800)}.yZYUSG_header{box-sizing:border-box;background:var(--changes-fill);width:100%;min-width:0;color:inherit;font:inherit;text-align:left;border:0;align-items:center;gap:12px;margin:0;padding:12px 16px;display:flex}button.yZYUSG_header{cursor:pointer;transition:background-color .12s}button.yZYUSG_header:hover:not(:disabled),button.yZYUSG_header:focus-visible{background:var(--changes-hover)}button.yZYUSG_header:focus-visible{box-shadow:inset 0 0 0 2px var(--dsw-alias-brand-primary);outline:none}button.yZYUSG_header:disabled{cursor:progress}.yZYUSG_tile{background:var(--dsw-alias-link);width:36px;height:36px;color:var(--dsw-static-neutral-00);border-radius:10px;flex:none;place-items:center;display:grid}.yZYUSG_titles{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.yZYUSG_title{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:500;line-height:22px;overflow:hidden}.yZYUSG_stat{font-family:var(--ds-font-family-code);color:var(--dsw-alias-label-tertiary);gap:6px;font-size:12px;line-height:18px;display:inline-flex}.yZYUSG_stat[data-error=true],.yZYUSG_counts[data-error=true]{color:var(--dsw-alias-state-error-primary)}.yZYUSG_added{color:var(--dsw-alias-state-success-primary)}.yZYUSG_deleted{color:var(--dsw-alias-state-error-primary)}.yZYUSG_list{border-top:.5px solid var(--dsw-alias-border-l1);margin:0;padding:4px 0;list-style:none}.yZYUSG_row{box-sizing:border-box;width:100%;min-width:0;color:var(--dsw-alias-label-secondary);cursor:pointer;font-family:var(--ds-font-family-code);text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;margin:0;padding:6px 16px;font-size:12px;line-height:18px;display:flex}.yZYUSG_row:hover:not(:disabled),.yZYUSG_row:focus-visible{background:var(--dsw-alias-interactive-bg-hover)}.yZYUSG_row:focus-visible{box-shadow:inset 0 0 0 2px var(--dsw-alias-border-l3);outline:none}.yZYUSG_row:disabled{cursor:progress}.yZYUSG_path{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.yZYUSG_counts{white-space:nowrap;color:var(--dsw-alias-label-tertiary);flex:none;gap:6px;display:inline-flex}.yZYUSG_toggle{box-sizing:border-box;border:0;border-top:.5px solid var(--dsw-alias-border-l1);width:100%;color:var(--dsw-alias-label-tertiary);cursor:pointer;font:inherit;text-align:left;background:0 0;align-items:center;gap:4px;margin:0;padding:8px 16px;font-size:12px;line-height:18px;display:inline-flex}.yZYUSG_toggle:hover{background:var(--dsw-alias-interactive-bg-hover)}.yZYUSG_toggle svg{flex:none;width:14px;height:14px}@media (pointer:coarse){.yZYUSG_row,.yZYUSG_toggle{min-height:44px}}";
602
+ const tagId$2 = "@deepseek-ai/dsh-client-ui-deliverables/ChangedFiles.module.css";
603
+ if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$2) + "]") === null) {
604
+ const tag = document.createElement("style");
605
+ tag.dataset.plugin = "@deepseek-ai/dsh-client-ui-deliverables";
606
+ tag.dataset.pluginCss = tagId$2;
607
+ tag.textContent = css$2;
608
+ document.head.appendChild(tag);
609
+ }
610
+ var ChangedFiles_module_css_default = {
611
+ "added": "yZYUSG_added",
612
+ "card": "yZYUSG_card",
613
+ "counts": "yZYUSG_counts",
614
+ "deleted": "yZYUSG_deleted",
615
+ "header": "yZYUSG_header",
616
+ "list": "yZYUSG_list",
617
+ "path": "yZYUSG_path",
618
+ "row": "yZYUSG_row",
619
+ "stat": "yZYUSG_stat",
620
+ "tile": "yZYUSG_tile",
621
+ "title": "yZYUSG_title",
622
+ "titles": "yZYUSG_titles",
623
+ "toggle": "yZYUSG_toggle"
624
+ };
625
+ //#endregion
626
+ //#region lib/types/client/ChangedFiles.js
627
+ /** The changed-files card: a header and per-file rows that open the turn's review, and a three-row fold. */
628
+ /** Rows shown before the fold; the design's summary height for a closing message. */
629
+ const COLLAPSED_ROWS = 3;
630
+ const GROUPED$1 = new Intl.NumberFormat("en-US");
631
+ /** Added and deleted line counts in the card's colors. */
632
+ function Counts$1({ added, deleted, t }) {
633
+ return (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [(0, react_jsx_runtime.jsx)("span", {
634
+ className: ChangedFiles_module_css_default.added,
635
+ children: t("changes.added", { count: GROUPED$1.format(added) })
636
+ }), (0, react_jsx_runtime.jsx)("span", {
637
+ className: ChangedFiles_module_css_default.deleted,
638
+ children: t("changes.deleted", { count: GROUPED$1.format(deleted) })
639
+ })] });
640
+ }
641
+ /**
642
+ * Render one turn's changed files. The header opens the turn's review in the
643
+ * right Sidebar on its first file; each row opens it on that row's file.
644
+ * @param props - the recorded summary, the review opener, and localized copy.
645
+ * @returns the card.
646
+ */
647
+ function ChangedFiles({ changes, cwd, openReview, t }) {
648
+ const [expanded, setExpanded] = (0, react.useState)(false);
649
+ const foldable = changes.files.length > COLLAPSED_ROWS;
650
+ const rows = foldable && !expanded ? changes.files.slice(0, COLLAPSED_ROWS) : changes.files;
651
+ return (0, react_jsx_runtime.jsxs)("div", {
652
+ className: ChangedFiles_module_css_default.card,
653
+ "data-changed-files": true,
654
+ children: [
655
+ (0, react_jsx_runtime.jsxs)("button", {
656
+ type: "button",
657
+ className: ChangedFiles_module_css_default.header,
658
+ "aria-label": t("changes.openReview"),
659
+ onClick: () => {
660
+ openReview(0);
661
+ },
662
+ children: [(0, react_jsx_runtime.jsx)("span", {
663
+ className: ChangedFiles_module_css_default.tile,
664
+ children: (0, react_jsx_runtime.jsx)(IconCodeBracketsOutline16, { size: 18 })
665
+ }), (0, react_jsx_runtime.jsxs)("span", {
666
+ className: ChangedFiles_module_css_default.titles,
667
+ children: [(0, react_jsx_runtime.jsx)("span", {
668
+ className: ChangedFiles_module_css_default.title,
669
+ children: t("changes.title", { count: String(changes.total) })
670
+ }), (0, react_jsx_runtime.jsx)("span", {
671
+ className: ChangedFiles_module_css_default.stat,
672
+ children: (0, react_jsx_runtime.jsx)(Counts$1, {
673
+ t,
674
+ added: changes.added,
675
+ deleted: changes.deleted
676
+ })
677
+ })]
678
+ })]
679
+ }),
680
+ (0, react_jsx_runtime.jsx)("ul", {
681
+ className: ChangedFiles_module_css_default.list,
682
+ children: rows.map((file, index) => (0, react_jsx_runtime.jsx)("li", { children: (0, react_jsx_runtime.jsxs)("button", {
683
+ type: "button",
684
+ className: ChangedFiles_module_css_default.row,
685
+ title: resolveWorkspacePath(cwd, file.path),
686
+ "aria-label": t("changes.viewDiff", { name: file.display }),
687
+ onClick: () => {
688
+ openReview(index);
689
+ },
690
+ children: [(0, react_jsx_runtime.jsx)("span", {
691
+ className: ChangedFiles_module_css_default.path,
692
+ children: file.display
693
+ }), (0, react_jsx_runtime.jsx)("span", {
694
+ className: ChangedFiles_module_css_default.counts,
695
+ children: file.binary === true ? t("changes.binary") : file.oversized === true ? t("changes.oversized") : (0, react_jsx_runtime.jsx)(Counts$1, {
696
+ t,
697
+ added: file.added,
698
+ deleted: file.deleted
699
+ })
700
+ })]
701
+ }) }, file.display))
702
+ }),
703
+ foldable && (0, react_jsx_runtime.jsxs)("button", {
704
+ type: "button",
705
+ className: ChangedFiles_module_css_default.toggle,
706
+ "aria-expanded": expanded,
707
+ "aria-label": t(expanded ? "changes.collapseAria" : "changes.expandAria", { count: String(changes.files.length) }),
708
+ onClick: () => {
709
+ setExpanded((value) => !value);
710
+ },
711
+ children: [(0, react_jsx_runtime.jsx)("span", { children: t(expanded ? "changes.collapse" : "changes.all", { count: String(changes.files.length) }) }), expanded ? (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconChevronUpOutline14, {}) : (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconChevronDownOutline14, {})]
712
+ })
713
+ ]
714
+ });
715
+ }
716
+ //#endregion
243
717
  //#region ../../core/session/lib/types/surface.js
244
718
  /** Runtime counterpart of the message-producing event union. */
245
719
  const SURFACE_EVENT_TYPES = new Set([
@@ -275,8 +749,9 @@ window.__ModuleLoader__.load({
275
749
  //#region lib/types/client/turn-deliverables.js
276
750
  /**
277
751
  * Turn-scoped produced-file Definition and readers. Client-only and
278
- * model-free: the vocabulary comes from successful first-party mutation
279
- * calls, never presentation data or the closing prose.
752
+ * model-free: produced paths come from successful first-party mutation calls,
753
+ * changed files from the Host's recorded git summary, and deliveries from
754
+ * `present`; never from presentation data or the closing prose.
280
755
  */
281
756
  /**
282
757
  * Extract the path from a supported first-party mutation call. Session
@@ -377,6 +852,10 @@ window.__ModuleLoader__.load({
377
852
  id: String(event.data.turn),
378
853
  role: "update"
379
854
  } : null;
855
+ if (event.type === "workspace/changes") return isChangesEvent(event.data) ? {
856
+ id: String(event.data.turn),
857
+ role: "update"
858
+ } : null;
380
859
  if (event.type === "tool/result" && isAppendSurfaceEvent(event)) return {
381
860
  id: String(event.data.turn),
382
861
  role: "update"
@@ -392,6 +871,10 @@ window.__ModuleLoader__.load({
392
871
  };
393
872
  },
394
873
  update: (context, match) => {
874
+ if (match.event.type === "workspace/changes") return {
875
+ ...context.state,
876
+ changes: { seq: match.event.seq }
877
+ };
395
878
  if (match.event.type === "deliverables/presented") {
396
879
  const { files } = match.event.data;
397
880
  const seq = match.event.seq;
@@ -432,19 +915,28 @@ window.__ModuleLoader__.load({
432
915
  },
433
916
  buildLocationData: (context, scope, previous) => {
434
917
  if (scope !== "turn" || context.state === void 0) return null;
435
- if (previous?.kind === "turn" && previous.turn === context.state.turn && previous.key === "deliverables" && previous.value.produced === context.state.produced && previous.value.presented === context.state.presented) return previous;
918
+ if (previous?.kind === "turn" && previous.turn === context.state.turn && previous.key === "deliverables" && previous.value.produced === context.state.produced && previous.value.presented === context.state.presented && previous.value.changes === context.state.changes) return previous;
436
919
  return {
437
920
  kind: "turn",
438
921
  turn: context.state.turn,
439
922
  key: "deliverables",
440
923
  value: {
441
924
  produced: context.state.produced,
442
- ...context.state.presented === void 0 ? {} : { presented: context.state.presented }
925
+ ...context.state.presented === void 0 ? {} : { presented: context.state.presented },
926
+ ...context.state.changes === void 0 ? {} : { changes: context.state.changes }
443
927
  }
444
928
  };
445
929
  }
446
930
  };
447
931
  /**
932
+ * The turn's latest change announcement.
933
+ * @param owner - closing turn.
934
+ * @returns the announcement, or null when the Host recorded none.
935
+ */
936
+ function changesForClosing(owner) {
937
+ return owner.turn.data.get("deliverables")?.changes ?? null;
938
+ }
939
+ /**
448
940
  * Select the latest declaration of each path before the closing reply.
449
941
  * @param owner - closing turn and sequence.
450
942
  * @returns replayable deliveries in first-seen path order.
@@ -483,9 +975,9 @@ window.__ModuleLoader__.load({
483
975
  return matches.length === 1 ? matches[0] : void 0;
484
976
  }
485
977
  //#endregion
486
- //#region \0dsh-css:/Users/songli/deepseek-harness/packages/client/ui-deliverables/src/client/ProducedFiles.module.css.mjs
487
- const css$1 = ".Lg-HGW_root{grid-template-columns:max-content minmax(0,1fr);align-items:start;column-gap:8px;margin-top:4px;font-size:13px;line-height:22px;display:grid}.Lg-HGW_label{color:var(--dsw-alias-label-tertiary);grid-area:1/1}.Lg-HGW_lane{--produced-file-gap:8px;grid-area:1/2;row-gap:6px;min-width:0;display:grid;container-type:inline-size}.Lg-HGW_row{align-items:center;gap:var(--produced-file-gap);flex-wrap:nowrap;min-width:0;display:flex;overflow:hidden}.Lg-HGW_file{box-sizing:border-box;min-width:0;color:var(--dsw-alias-link);font:inherit;cursor:pointer;background:0 0;border:none;border-radius:4px;flex:0 auto;align-items:center;gap:5px;margin:0;padding:0;font-weight:500;text-decoration:none;display:inline-flex}.Lg-HGW_fileIcon{flex:none;width:1.1em;height:1.1em;position:relative;top:1.2px}.Lg-HGW_fileName{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.Lg-HGW_file:hover,.Lg-HGW_file:focus-visible{text-underline-offset:3px;text-decoration:underline dotted}.Lg-HGW_file:focus-visible{box-shadow:inset 0 0 0 2px var(--dsw-alias-border-l3);outline:none}.Lg-HGW_more{white-space:nowrap;color:var(--dsw-alias-label-tertiary);flex:none;display:none}.Lg-HGW_more[data-shown=\"6\"]{display:inline}@container (width<=687px){.Lg-HGW_file:nth-of-type(6),.Lg-HGW_more[data-shown=\"6\"]{display:none}.Lg-HGW_more[data-shown=\"5\"]{display:inline}}@container (width<=583px){.Lg-HGW_file:nth-of-type(5),.Lg-HGW_more[data-shown=\"5\"]{display:none}.Lg-HGW_more[data-shown=\"4\"]{display:inline}}@container (width<=479px){.Lg-HGW_file:nth-of-type(4),.Lg-HGW_more[data-shown=\"4\"]{display:none}.Lg-HGW_more[data-shown=\"3\"]{display:inline}}@container (width<=375px){.Lg-HGW_file:nth-of-type(3),.Lg-HGW_more[data-shown=\"3\"]{display:none}.Lg-HGW_more[data-shown=\"2\"]{display:inline}}@container (width<=271px){.Lg-HGW_file:nth-of-type(2),.Lg-HGW_more[data-shown=\"2\"]{display:none}.Lg-HGW_more[data-shown=\"1\"]{display:inline}}";
488
- const tagId$1 = "@deepseek-ai/dsh-client-ui-deliverables/ProducedFiles.module.css";
978
+ //#region \0dsh-css:/Users/songli/deepseek-harness/packages/client/ui-deliverables/src/client/Deliverables.module.css.mjs
979
+ const css$1 = ".udUtqW_root{--deliverable-fill:var(--dsw-static-neutral-50);--deliverable-hover:var(--dsw-static-neutral-100);flex-direction:column;gap:16px;min-width:0;margin-top:4px;display:flex;container-type:inline-size}.udUtqW_root[data-after-changes=true]{margin-top:0}body[data-ds-dark-theme] .udUtqW_root{--deliverable-fill:var(--dsw-static-neutral-850);--deliverable-hover:var(--dsw-static-neutral-800)}.udUtqW_hostStatus{color:var(--dsw-alias-label-secondary);align-items:center;gap:8px;font-size:12px;line-height:18px;display:flex}.udUtqW_presented{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0;display:grid}.udUtqW_presented[data-single=true]{grid-template-columns:minmax(0,1fr)}.udUtqW_file{box-sizing:border-box;border:.5px solid var(--dsw-alias-border-l1);background:var(--deliverable-fill);min-width:0;height:60px;color:var(--dsw-alias-label-primary);border-radius:18px;align-items:center;gap:10px;padding:8px 10px;transition:background-color .12s;display:flex;position:relative;overflow:hidden}.udUtqW_file:hover{background:var(--deliverable-hover)}.udUtqW_cardPreview{z-index:1;border-radius:inherit;cursor:pointer;background:0 0;border:0;width:100%;padding:0;position:absolute;inset:0}.udUtqW_cardPreview:focus-visible{box-shadow:inset 0 0 0 2px var(--dsw-alias-brand-primary);outline:none}.udUtqW_fileIcon{z-index:2;box-sizing:border-box;pointer-events:none;border:.5px solid var(--dsw-alias-border-l1);background:var(--deliverable-fill);width:40px;height:40px;color:var(--dsw-alias-link);border-radius:10px;flex:none;place-items:center;display:grid;position:relative;overflow:hidden}.udUtqW_fileBody{z-index:2;pointer-events:none;flex:1;justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex;position:relative}.udUtqW_details{flex-direction:column;flex:1;justify-content:center;gap:2px;min-width:0;display:flex}.udUtqW_fileName{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;line-height:20px;overflow:hidden}.udUtqW_description{color:var(--dsw-alias-label-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:400;line-height:16px;overflow:hidden}.udUtqW_description[data-error=true]{color:var(--dsw-alias-state-error-primary)}.udUtqW_previewHint,.udUtqW_file:hover .udUtqW_secondaryText{display:none}.udUtqW_file:hover .udUtqW_previewHint{display:inline}.udUtqW_split{box-sizing:border-box;pointer-events:auto;border:.5px solid var(--dsw-alias-border-l3);background:var(--dsw-alias-button-floating-fill);border-radius:10px;flex:none;align-items:stretch;height:28px;display:inline-flex;overflow:hidden}.udUtqW_menuAnchor{align-self:stretch}.udUtqW_open,.udUtqW_chevron{color:var(--dsw-alias-label-primary);cursor:pointer;font-family:var(--dsw-font-family);background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.udUtqW_open{padding:4px 8px;font-size:12px;line-height:18px}.udUtqW_chevron{border-left:.5px solid var(--dsw-alias-border-l3);color:var(--dsw-alias-label-secondary);padding:4px 5px}.udUtqW_open:hover,.udUtqW_open:focus-visible,.udUtqW_chevron:hover:not(:disabled),.udUtqW_chevron:focus-visible{background:var(--dsw-alias-interactive-bg-hover)}.udUtqW_chevron:disabled{color:var(--dsw-alias-label-dimmed);cursor:not-allowed}.udUtqW_menuActionIcon{width:16px;height:16px;display:block}.udUtqW_toggle{min-width:0;color:var(--dsw-alias-label-tertiary);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:8px;align-self:center;align-items:center;gap:4px;padding:1px 11px;font-size:12px;line-height:18px;display:inline-flex}.udUtqW_toggle:hover{background:var(--dsw-alias-interactive-bg-hover)}.udUtqW_toggle svg{flex:none;width:14px;height:14px}@container (width<=620px){.udUtqW_presented{grid-template-columns:minmax(0,1fr)}}@media (pointer:coarse){.udUtqW_split{min-height:44px}.udUtqW_open,.udUtqW_chevron{min-width:44px}}";
980
+ const tagId$1 = "@deepseek-ai/dsh-client-ui-deliverables/Deliverables.module.css";
489
981
  if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$1) + "]") === null) {
490
982
  const tag = document.createElement("style");
491
983
  tag.dataset.plugin = "@deepseek-ai/dsh-client-ui-deliverables";
@@ -493,110 +985,6 @@ window.__ModuleLoader__.load({
493
985
  tag.textContent = css$1;
494
986
  document.head.appendChild(tag);
495
987
  }
496
- var ProducedFiles_module_css_default = {
497
- "file": "Lg-HGW_file",
498
- "fileIcon": "Lg-HGW_fileIcon",
499
- "fileName": "Lg-HGW_fileName",
500
- "label": "Lg-HGW_label",
501
- "lane": "Lg-HGW_lane",
502
- "more": "Lg-HGW_more",
503
- "root": "Lg-HGW_root",
504
- "row": "Lg-HGW_row"
505
- };
506
- //#endregion
507
- //#region lib/types/client/ProducedFiles.js
508
- /** Maximum number of file chips rendered before the remainder counter. */
509
- const SHOWN_LIMIT = 6;
510
- function moreLabel(t, count) {
511
- return count === 1 ? t("produced.moreOne") : t("produced.more", { count: String(count) });
512
- }
513
- /**
514
- * Render one turn's produced files as openable chips.
515
- * @param props - selector-matched paths, the chat view's file opener, and the locale seat.
516
- * @returns The produced-files row.
517
- */
518
- function ProducedFiles({ matched: paths, openFile, t }) {
519
- const shown = paths.slice(0, SHOWN_LIMIT);
520
- return (0, react_jsx_runtime.jsxs)("div", {
521
- className: ProducedFiles_module_css_default.root,
522
- children: [(0, react_jsx_runtime.jsx)("span", {
523
- className: ProducedFiles_module_css_default.label,
524
- children: t("produced.label")
525
- }), (0, react_jsx_runtime.jsx)("div", {
526
- className: ProducedFiles_module_css_default.lane,
527
- children: (0, react_jsx_runtime.jsxs)("div", {
528
- className: ProducedFiles_module_css_default.row,
529
- "data-produced-files-row": true,
530
- children: [shown.map((path) => (0, react_jsx_runtime.jsxs)("button", {
531
- type: "button",
532
- className: ProducedFiles_module_css_default.file,
533
- title: path,
534
- "aria-label": t("produced.open", { name: path }),
535
- onClick: () => {
536
- openFile(path);
537
- },
538
- children: [(0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.LinkIcon, {
539
- kind: (0, _deepseek_ai_dsh_client_ui_primitives.classifyLinkPath)(path),
540
- className: ProducedFiles_module_css_default.fileIcon
541
- }), (0, react_jsx_runtime.jsx)("span", {
542
- className: ProducedFiles_module_css_default.fileName,
543
- children: basename(path)
544
- })]
545
- }, path)), shown.map((_, index) => {
546
- const shownCount = index + 1;
547
- const remainder = paths.length - shownCount;
548
- if (remainder <= 0) return null;
549
- return (0, react_jsx_runtime.jsx)("span", {
550
- className: ProducedFiles_module_css_default.more,
551
- "data-shown": shownCount,
552
- children: moreLabel(t, remainder)
553
- }, shownCount);
554
- })]
555
- })
556
- })]
557
- });
558
- }
559
- //#endregion
560
- //#region ../../util/workspace-path/lib/index.js
561
- /**
562
- * Browser-safe Workspace path and display helpers.
563
- * @module @deepseek-ai/dsh-util-workspace-path
564
- */
565
- /** Whether a path uses a Windows drive or UNC prefix. */
566
- function isWindowsStylePath(value) {
567
- return /^[A-Za-z]:[/\\]/.test(value) || value.startsWith("\\\\");
568
- }
569
- /**
570
- * Whether a path is absolute in either spelling the Host accepts: POSIX (`/a/b`) or Windows drive or UNC.
571
- * @param path - the path to classify.
572
- * @returns `true` for an absolute path; `false` for a Workspace-relative one.
573
- */
574
- function isAbsoluteWorkspacePath(path) {
575
- return path.startsWith("/") || isWindowsStylePath(path);
576
- }
577
- /**
578
- * Resolve a Workspace-relative path into the Host-facing spelling used by path operations.
579
- * @param cwd - Session Workspace root, when known.
580
- * @param path - Absolute or Workspace-relative path.
581
- * @returns an absolute path when a Workspace root is available, otherwise the original path.
582
- */
583
- function resolveWorkspacePath(cwd, path) {
584
- if (isAbsoluteWorkspacePath(path)) return path;
585
- if (cwd === void 0 || cwd === "") return path;
586
- const separator = isWindowsStylePath(cwd) && cwd.includes("\\") ? "\\" : "/";
587
- return `${cwd.replace(/[/\\]+$/, "")}${separator}${path.replace(/^[/\\]+/, "")}`;
588
- }
589
- //#endregion
590
- //#region \0dsh-css:/Users/songli/deepseek-harness/packages/client/ui-deliverables/src/client/Deliverables.module.css.mjs
591
- const css = ".udUtqW_root{--deliverable-fill:var(--dsw-static-neutral-50);--deliverable-hover:var(--dsw-static-neutral-100);flex-direction:column;gap:16px;min-width:0;margin-top:4px;display:flex;container-type:inline-size}.udUtqW_root[data-after-produced-files=true]{margin-top:0}body[data-ds-dark-theme] .udUtqW_root{--deliverable-fill:var(--dsw-static-neutral-850);--deliverable-hover:var(--dsw-static-neutral-800)}.udUtqW_hostStatus{color:var(--dsw-alias-label-secondary);align-items:center;gap:8px;font-size:12px;line-height:18px;display:flex}.udUtqW_presented{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0;display:grid}.udUtqW_presented[data-single=true]{grid-template-columns:minmax(0,1fr)}.udUtqW_file{box-sizing:border-box;border:.5px solid var(--dsw-alias-border-l1);background:var(--deliverable-fill);min-width:0;height:60px;color:var(--dsw-alias-label-primary);border-radius:18px;align-items:center;gap:10px;padding:8px 10px;transition:background-color .12s;display:flex;position:relative;overflow:hidden}.udUtqW_file:hover{background:var(--deliverable-hover)}.udUtqW_cardPreview{z-index:1;border-radius:inherit;cursor:pointer;background:0 0;border:0;width:100%;padding:0;position:absolute;inset:0}.udUtqW_cardPreview:focus-visible{box-shadow:inset 0 0 0 2px var(--dsw-alias-brand-primary);outline:none}.udUtqW_fileIcon{z-index:2;box-sizing:border-box;pointer-events:none;border:.5px solid var(--dsw-alias-border-l1);background:var(--deliverable-fill);width:40px;height:40px;color:var(--dsw-alias-link);border-radius:10px;flex:none;place-items:center;display:grid;position:relative;overflow:hidden}.udUtqW_fileBody{z-index:2;pointer-events:none;flex:1;justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex;position:relative}.udUtqW_details{flex-direction:column;flex:1;justify-content:center;gap:2px;min-width:0;display:flex}.udUtqW_fileName{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;line-height:20px;overflow:hidden}.udUtqW_description{color:var(--dsw-alias-label-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:400;line-height:16px;overflow:hidden}.udUtqW_description[data-error=true]{color:var(--dsw-alias-state-error-primary)}.udUtqW_previewHint,.udUtqW_file:hover .udUtqW_secondaryText{display:none}.udUtqW_file:hover .udUtqW_previewHint{display:inline}.udUtqW_split{box-sizing:border-box;pointer-events:auto;border:.5px solid var(--dsw-alias-border-l3);background:var(--dsw-alias-button-floating-fill);border-radius:10px;flex:none;align-items:stretch;height:28px;display:inline-flex;overflow:hidden}.udUtqW_menuAnchor{align-self:stretch}.udUtqW_open,.udUtqW_chevron{color:var(--dsw-alias-label-primary);cursor:pointer;font-family:var(--dsw-font-family);background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.udUtqW_open{padding:4px 8px;font-size:12px;line-height:18px}.udUtqW_chevron{border-left:.5px solid var(--dsw-alias-border-l3);color:var(--dsw-alias-label-secondary);padding:4px 5px}.udUtqW_open:hover,.udUtqW_open:focus-visible,.udUtqW_chevron:hover:not(:disabled),.udUtqW_chevron:focus-visible{background:var(--dsw-alias-interactive-bg-hover)}.udUtqW_chevron:disabled{color:var(--dsw-alias-label-dimmed);cursor:not-allowed}.udUtqW_menuActionIcon{width:16px;height:16px;display:block}.udUtqW_toggle{min-width:0;color:var(--dsw-alias-label-tertiary);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:8px;align-self:center;align-items:center;gap:4px;padding:1px 11px;font-size:12px;line-height:18px;display:inline-flex}.udUtqW_toggle:hover{background:var(--dsw-alias-interactive-bg-hover)}.udUtqW_toggle svg{flex:none;width:14px;height:14px}@container (width<=620px){.udUtqW_presented{grid-template-columns:minmax(0,1fr)}}@media (pointer:coarse){.udUtqW_split{min-height:44px}.udUtqW_open,.udUtqW_chevron{min-width:44px}}";
592
- const tagId = "@deepseek-ai/dsh-client-ui-deliverables/Deliverables.module.css";
593
- if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId) + "]") === null) {
594
- const tag = document.createElement("style");
595
- tag.dataset.plugin = "@deepseek-ai/dsh-client-ui-deliverables";
596
- tag.dataset.pluginCss = tagId;
597
- tag.textContent = css;
598
- document.head.appendChild(tag);
599
- }
600
988
  var Deliverables_module_css_default = {
601
989
  "cardPreview": "udUtqW_cardPreview",
602
990
  "chevron": "udUtqW_chevron",
@@ -733,47 +1121,78 @@ window.__ModuleLoader__.load({
733
1121
  }
734
1122
  //#endregion
735
1123
  //#region lib/types/client/Deliverables.js
736
- /** Existing changed-file chips and explicitly declared files for a closing turn. */
1124
+ /** The changed-files card, shown only while the Host serves the turn's summary, and explicitly declared files for a closing turn. */
737
1125
  const COLLAPSED_PRESENTED_COUNT = 4;
738
1126
  /**
739
- * Claim turns containing modified paths or declared files.
1127
+ * Claim turns with a change announcement or declared files.
740
1128
  * @param owner - closing turn.
741
- * @returns matched files, or null for an empty turn.
1129
+ * @returns matched announcement and deliveries, or null for a turn with neither.
742
1130
  */
743
1131
  function selectDeliverables(owner) {
744
- const produced = selectProducedFiles(owner) ?? [];
1132
+ const changes = changesForClosing(owner);
745
1133
  const presented = presentedForClosing(owner);
746
- return produced.length + presented.length === 0 ? null : {
747
- produced,
1134
+ return changes === null && presented.length === 0 ? null : {
1135
+ changes,
748
1136
  presented
749
1137
  };
750
1138
  }
751
1139
  /**
752
- * Render workspace file actions and default-application buttons for declared files.
753
- * @param props - matched files, workspace opener, and localized copy.
1140
+ * Contribute file deliveries alongside other completed-Turn artifacts.
1141
+ * @param props - closing Turn, file actions, and localized copy.
1142
+ * @returns file rows, or null when the Turn declares none.
1143
+ */
1144
+ function DeliverablesTail(props) {
1145
+ const matched = selectDeliverables(props);
1146
+ return matched === null ? null : (0, react_jsx_runtime.jsx)(Deliverables, {
1147
+ ...props,
1148
+ matched
1149
+ });
1150
+ }
1151
+ /**
1152
+ * Render the changed-files card, once the Host has served the announced
1153
+ * summary and it lists a file, and default-application buttons for declared
1154
+ * files. A summary the Host no longer serves leaves no card.
1155
+ * @param props - matched announcement and files, workspace opener, and localized copy.
754
1156
  * @returns the closing turn's file rows.
755
1157
  */
756
- function Deliverables({ matched, openFile, t, sessionId, useSessions, openPresented, usePresentedOpen, usePresentedHost, reloadPresentedHost }) {
1158
+ function Deliverables({ matched, openFile, t, sessionId, useSessions, openPresented, openChangesReview, usePresentedOpen, usePresentedHost, useChangesSummary, reloadPresentedHost, loadChangesSummary }) {
757
1159
  const [expanded, setExpanded] = (0, react.useState)(false);
758
1160
  const cwd = useSessions((state) => state.byId[sessionId]?.cwd);
759
1161
  const states = usePresentedOpen((value) => value);
760
1162
  const host = usePresentedHost((value) => value);
761
- const collapsible = matched.presented.length > COLLAPSED_PRESENTED_COUNT;
762
- const presented = collapsible && !expanded ? matched.presented.slice(0, COLLAPSED_PRESENTED_COUNT) : matched.presented;
1163
+ const announced = matched.changes;
1164
+ const summary = useChangesSummary((value) => announced === null ? void 0 : value[changesSummaryUrl(sessionId, announced.seq)]);
763
1165
  (0, react.useEffect)(() => {
764
- if (matched.presented.length > 0 && host === null) reloadPresentedHost();
1166
+ if (announced !== null && summary === void 0) loadChangesSummary(sessionId, announced.seq);
765
1167
  }, [
766
- matched.presented.length,
767
- host,
768
- reloadPresentedHost
1168
+ announced,
1169
+ summary,
1170
+ sessionId,
1171
+ loadChangesSummary
769
1172
  ]);
770
- return (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [matched.produced.length > 0 && (0, react_jsx_runtime.jsx)(ProducedFiles, {
771
- matched: matched.produced,
772
- openFile,
773
- t
1173
+ const changes = announced !== null && typeof summary === "object" && summary.files.length > 0 ? {
1174
+ seq: announced.seq,
1175
+ ...summary
1176
+ } : null;
1177
+ const collapsible = matched.presented.length > COLLAPSED_PRESENTED_COUNT;
1178
+ const presented = collapsible && !expanded ? matched.presented.slice(0, COLLAPSED_PRESENTED_COUNT) : matched.presented;
1179
+ (0, react.useEffect)(() => {
1180
+ if (host === null) reloadPresentedHost();
1181
+ }, [host, reloadPresentedHost]);
1182
+ return (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [changes !== null && (0, react_jsx_runtime.jsx)(ChangedFiles, {
1183
+ changes,
1184
+ cwd,
1185
+ t,
1186
+ openReview: (index) => {
1187
+ openChangesReview({
1188
+ sessionId,
1189
+ seq: changes.seq,
1190
+ turn: changes.turn
1191
+ }, index);
1192
+ }
774
1193
  }), matched.presented.length > 0 && (0, react_jsx_runtime.jsxs)("div", {
775
1194
  className: Deliverables_module_css_default.root,
776
- "data-after-produced-files": matched.produced.length > 0 || void 0,
1195
+ "data-after-changes": changes !== null || void 0,
777
1196
  children: [
778
1197
  host === "error" && (0, react_jsx_runtime.jsxs)("div", {
779
1198
  className: Deliverables_module_css_default.hostStatus,
@@ -821,8 +1240,700 @@ window.__ModuleLoader__.load({
821
1240
  })] });
822
1241
  }
823
1242
  //#endregion
1243
+ //#region \0dsh-css:/Users/songli/deepseek-harness/packages/client/ui-deliverables/src/client/ReviewTab.module.css.mjs
1244
+ const css = "._3Oi8kG_root{box-sizing:border-box;width:100%;height:100%;min-height:0;color:var(--dsw-alias-label-primary);flex-direction:column;display:flex}._3Oi8kG_header{box-sizing:border-box;border-bottom:.5px solid var(--dsw-alias-border-l3);flex:none;align-items:center;gap:6px;height:38px;padding:0 6px 0 8px;display:flex}._3Oi8kG_selector{flex:0 auto;min-width:0}._3Oi8kG_selectorLabel{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-size:12px;overflow:hidden}._3Oi8kG_selectorButton{box-sizing:border-box;max-width:100%;height:28px;color:var(--dsw-alias-label-primary);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:8px;align-items:center;gap:4px;padding:0 6px 0 8px;font-size:12px;display:inline-flex}._3Oi8kG_selectorButton:hover,._3Oi8kG_selectorButton[aria-expanded=true]{background:var(--dsw-alias-interactive-bg-hover)}._3Oi8kG_selectorText{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}._3Oi8kG_item{justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}._3Oi8kG_itemPath{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}._3Oi8kG_itemCounts,._3Oi8kG_counts{font-family:var(--ds-font-family-code);color:var(--dsw-alias-label-tertiary);flex:none;gap:6px;font-size:12px;display:inline-flex}._3Oi8kG_counts{min-width:0;margin-right:auto}._3Oi8kG_added{color:var(--dsw-alias-state-success-primary)}._3Oi8kG_deleted{color:var(--dsw-alias-state-error-primary)}._3Oi8kG_label{color:var(--dsw-alias-label-tertiary)}._3Oi8kG_tools{flex:none;align-items:center;gap:2px;margin-left:auto;display:inline-flex}._3Oi8kG_tool{width:28px;height:28px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;justify-content:center;align-items:center;padding:6px;display:inline-flex}._3Oi8kG_tool svg{width:15px;height:15px}._3Oi8kG_tool:hover:not(:disabled),._3Oi8kG_tool[aria-pressed=true]{color:var(--dsw-alias-label-primary);background:var(--dsw-alias-interactive-bg-hover)}._3Oi8kG_tool:disabled{cursor:progress}._3Oi8kG_tool[data-error]{color:var(--dsw-alias-state-error-primary)}._3Oi8kG_status{color:var(--dsw-alias-label-secondary);align-items:center;gap:12px;margin:0;padding:16px;font-size:13px;display:flex}._3Oi8kG_body{min-height:0;font:var(--dsw-font-markdown-code-block);flex-direction:column;flex:auto;padding:8px 0 16px;display:flex;overflow:auto}._3Oi8kG_columns{flex:auto;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:0;display:grid}._3Oi8kG_column{min-width:0;overflow-x:auto}._3Oi8kG_column+._3Oi8kG_column{border-left:.5px solid var(--dsw-alias-border-l3)}._3Oi8kG_sideLine{box-sizing:border-box;white-space:pre;grid-template-columns:3.5em max-content;width:max-content;min-width:100%;min-height:22px;line-height:22px;display:grid}._3Oi8kG_note{font:var(--dsw-font-xs-13);color:var(--dsw-alias-label-tertiary);margin:0;padding:4px 16px 8px}._3Oi8kG_hunk{margin-bottom:8px}._3Oi8kG_hunkHeader{color:var(--dsw-alias-label-tertiary);white-space:pre;padding:4px 16px}._3Oi8kG_line{white-space:pre;grid-template-columns:3.5em 3.5em 1.2em minmax(0,1fr);min-height:22px;line-height:22px;display:grid}._3Oi8kG_splitLine{white-space:pre;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:22px;line-height:22px;display:grid}._3Oi8kG_cell{grid-template-columns:3.5em minmax(0,1fr);min-width:0;display:grid}._3Oi8kG_cell+._3Oi8kG_cell{border-left:.5px solid var(--dsw-alias-border-l3)}._3Oi8kG_number{color:var(--dsw-alias-label-tertiary);text-align:right;user-select:none;padding-right:8px}._3Oi8kG_sign{text-align:center;user-select:none}._3Oi8kG_text{padding-right:16px}._3Oi8kG_body[data-review-wrap] ._3Oi8kG_line,._3Oi8kG_body[data-review-wrap] ._3Oi8kG_splitLine{white-space:pre-wrap}._3Oi8kG_body[data-review-wrap] ._3Oi8kG_text{overflow-wrap:anywhere}._3Oi8kG_add{background:color-mix(in srgb, var(--dsw-alias-state-success-primary) 12%, transparent)}._3Oi8kG_add ._3Oi8kG_sign,._3Oi8kG_add ._3Oi8kG_text{color:var(--dsw-alias-state-success-primary)}._3Oi8kG_del{background:color-mix(in srgb, var(--dsw-alias-state-error-primary) 12%, transparent)}._3Oi8kG_del ._3Oi8kG_sign,._3Oi8kG_del ._3Oi8kG_text{color:var(--dsw-alias-state-error-primary)}._3Oi8kG_context ._3Oi8kG_text{color:var(--dsw-alias-label-secondary)}._3Oi8kG_empty{background:var(--dsw-alias-interactive-bg-hover)}";
1245
+ const tagId = "@deepseek-ai/dsh-client-ui-deliverables/ReviewTab.module.css";
1246
+ if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId) + "]") === null) {
1247
+ const tag = document.createElement("style");
1248
+ tag.dataset.plugin = "@deepseek-ai/dsh-client-ui-deliverables";
1249
+ tag.dataset.pluginCss = tagId;
1250
+ tag.textContent = css;
1251
+ document.head.appendChild(tag);
1252
+ }
1253
+ var ReviewTab_module_css_default = {
1254
+ "add": "_3Oi8kG_add",
1255
+ "added": "_3Oi8kG_added",
1256
+ "body": "_3Oi8kG_body",
1257
+ "cell": "_3Oi8kG_cell",
1258
+ "column": "_3Oi8kG_column",
1259
+ "columns": "_3Oi8kG_columns",
1260
+ "context": "_3Oi8kG_context",
1261
+ "counts": "_3Oi8kG_counts",
1262
+ "del": "_3Oi8kG_del",
1263
+ "deleted": "_3Oi8kG_deleted",
1264
+ "empty": "_3Oi8kG_empty",
1265
+ "header": "_3Oi8kG_header",
1266
+ "hunk": "_3Oi8kG_hunk",
1267
+ "hunkHeader": "_3Oi8kG_hunkHeader",
1268
+ "item": "_3Oi8kG_item",
1269
+ "itemCounts": "_3Oi8kG_itemCounts",
1270
+ "itemPath": "_3Oi8kG_itemPath",
1271
+ "label": "_3Oi8kG_label",
1272
+ "line": "_3Oi8kG_line",
1273
+ "note": "_3Oi8kG_note",
1274
+ "number": "_3Oi8kG_number",
1275
+ "root": "_3Oi8kG_root",
1276
+ "selector": "_3Oi8kG_selector",
1277
+ "selectorButton": "_3Oi8kG_selectorButton",
1278
+ "selectorLabel": "_3Oi8kG_selectorLabel",
1279
+ "selectorText": "_3Oi8kG_selectorText",
1280
+ "sideLine": "_3Oi8kG_sideLine",
1281
+ "sign": "_3Oi8kG_sign",
1282
+ "splitLine": "_3Oi8kG_splitLine",
1283
+ "status": "_3Oi8kG_status",
1284
+ "text": "_3Oi8kG_text",
1285
+ "tool": "_3Oi8kG_tool",
1286
+ "tools": "_3Oi8kG_tools"
1287
+ };
1288
+ //#endregion
1289
+ //#region lib/types/client/ReviewTab.js
1290
+ /**
1291
+ * The review tab: one turn's changed files behind a file selector, with the
1292
+ * selected file's turn-start and turn-end comparison drawn unified or side by
1293
+ * side, wrapped or scrolling, and controls to open the file itself.
1294
+ */
1295
+ /** Lines drawn before the tab stops; a coarse comparison of a file near the byte cap would otherwise draw every line. */
1296
+ const MAX_RENDERED_LINES = 5e3;
1297
+ const GROUPED = new Intl.NumberFormat("en-US");
1298
+ /**
1299
+ * Number a hunk's lines: context lines count on both sides, deletions on the
1300
+ * old side, additions on the new side.
1301
+ * @param hunk - a served hunk.
1302
+ * @returns the rows in order.
1303
+ */
1304
+ function hunkRows(hunk) {
1305
+ let oldNo = hunk.oldStart;
1306
+ let newNo = hunk.newStart;
1307
+ return hunk.lines.map((line) => {
1308
+ const text = line.slice(1);
1309
+ switch (line[0]) {
1310
+ case "+": return {
1311
+ kind: "add",
1312
+ old: void 0,
1313
+ new: newNo++,
1314
+ text
1315
+ };
1316
+ case "-": return {
1317
+ kind: "del",
1318
+ old: oldNo++,
1319
+ new: void 0,
1320
+ text
1321
+ };
1322
+ default: return {
1323
+ kind: "context",
1324
+ old: oldNo++,
1325
+ new: newNo++,
1326
+ text
1327
+ };
1328
+ }
1329
+ });
1330
+ }
1331
+ /**
1332
+ * Pair a hunk's lines for the side-by-side view: each run of deletions is
1333
+ * aligned with the run of additions that follows it, row by row, and context
1334
+ * lines sit on both sides.
1335
+ * @param hunk - a served hunk.
1336
+ * @returns the rows in order.
1337
+ */
1338
+ function splitRows(hunk) {
1339
+ const rows = [];
1340
+ let dels = [];
1341
+ let adds = [];
1342
+ const flush = () => {
1343
+ for (let at = 0; at < Math.max(dels.length, adds.length); at += 1) {
1344
+ const left = dels[at];
1345
+ const right = adds[at];
1346
+ rows.push({
1347
+ ...left === void 0 ? {} : { left },
1348
+ ...right === void 0 ? {} : { right }
1349
+ });
1350
+ }
1351
+ dels = [];
1352
+ adds = [];
1353
+ };
1354
+ for (const row of hunkRows(hunk)) if (row.kind === "del") dels.push({
1355
+ no: row.old,
1356
+ text: row.text,
1357
+ kind: "del"
1358
+ });
1359
+ else if (row.kind === "add") adds.push({
1360
+ no: row.new,
1361
+ text: row.text,
1362
+ kind: "add"
1363
+ });
1364
+ else {
1365
+ flush();
1366
+ rows.push({
1367
+ left: {
1368
+ no: row.old,
1369
+ text: row.text,
1370
+ kind: "context"
1371
+ },
1372
+ right: {
1373
+ no: row.new,
1374
+ text: row.text,
1375
+ kind: "context"
1376
+ }
1377
+ });
1378
+ }
1379
+ flush();
1380
+ return rows;
1381
+ }
1382
+ /**
1383
+ * The hunks to draw, cut at {@link MAX_RENDERED_LINES} lines in total.
1384
+ * @param hunks - served hunks.
1385
+ * @returns the hunks with the last one shortened as needed, and whether anything was cut.
1386
+ */
1387
+ function renderedHunks(hunks) {
1388
+ let budget = MAX_RENDERED_LINES;
1389
+ const kept = [];
1390
+ for (const hunk of hunks) {
1391
+ if (budget === 0) return {
1392
+ hunks: kept,
1393
+ truncated: true
1394
+ };
1395
+ kept.push(hunk.lines.length <= budget ? hunk : {
1396
+ ...hunk,
1397
+ lines: hunk.lines.slice(0, budget)
1398
+ });
1399
+ budget -= Math.min(budget, hunk.lines.length);
1400
+ }
1401
+ return {
1402
+ hunks: kept,
1403
+ truncated: hunks.some((hunk, at) => kept[at] !== hunk)
1404
+ };
1405
+ }
1406
+ /** The one-line fact about a text comparison worth stating above its hunks, if any. */
1407
+ function noteOf(diff) {
1408
+ if (!diff.before) return "diff.created";
1409
+ if (!diff.after) return "diff.deleted";
1410
+ if (diff.hunks.length === 0) return "diff.unchanged";
1411
+ }
1412
+ /** The file index a navigation names, when it names one. */
1413
+ function navigatedIndex(params) {
1414
+ const index = params?.index;
1415
+ return typeof index === "number" && Number.isSafeInteger(index) && index >= 0 ? index : void 0;
1416
+ }
1417
+ /** Added and deleted line counts in the card's colors. */
1418
+ function Counts({ file, t }) {
1419
+ if (file.binary === true) return (0, react_jsx_runtime.jsx)("span", {
1420
+ className: ReviewTab_module_css_default.label,
1421
+ children: t("changes.binary")
1422
+ });
1423
+ if (file.oversized === true) return (0, react_jsx_runtime.jsx)("span", {
1424
+ className: ReviewTab_module_css_default.label,
1425
+ children: t("changes.oversized")
1426
+ });
1427
+ return (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [(0, react_jsx_runtime.jsx)("span", {
1428
+ className: ReviewTab_module_css_default.added,
1429
+ children: t("changes.added", { count: GROUPED.format(file.added) })
1430
+ }), (0, react_jsx_runtime.jsx)("span", {
1431
+ className: ReviewTab_module_css_default.deleted,
1432
+ children: t("changes.deleted", { count: GROUPED.format(file.deleted) })
1433
+ })] });
1434
+ }
1435
+ /**
1436
+ * The review type's body, registered under `sidebar.right.pane.tab` as `changes-review`.
1437
+ * @param props - composed slot props.
1438
+ * @returns the selected file's comparison behind the file selector, or the state that stands in for it.
1439
+ */
1440
+ function ReviewTab({ useTabInfo, sessionId, useSessions, useStore, actions, useChangesSummary, useChangesDiff, usePresentedOpen, usePresentedHost, loadChangesSummary, loadChangesDiff, reloadPresentedHost, openChanged, t }) {
1441
+ const { tab } = useTabInfo();
1442
+ const { navigation, signal } = tab;
1443
+ const coordinates = (0, react.useMemo)(() => parseChangesReviewAddress(tab.contentId), [tab.contentId]);
1444
+ if (coordinates === void 0) throw new Error(`ui-deliverables: not a review address "${tab.contentId}"`);
1445
+ const { seq } = coordinates;
1446
+ const cwd = useSessions((sessions) => sessions.byId[sessionId]?.cwd);
1447
+ const summary = useChangesSummary((value) => value[changesSummaryUrl(sessionId, seq)]);
1448
+ const state = useStore((store) => store.byTab[tab.id]);
1449
+ const host = usePresentedHost((value) => value);
1450
+ (0, react.useEffect)(() => {
1451
+ if (state?.navigated === navigation.revision) return;
1452
+ actions.navigated(tab.id, navigation.revision, navigatedIndex(navigation.params) ?? state?.index ?? 0);
1453
+ }, [
1454
+ state,
1455
+ navigation.revision,
1456
+ navigation.params,
1457
+ actions,
1458
+ tab.id
1459
+ ]);
1460
+ (0, react.useEffect)(() => {
1461
+ const forget = () => {
1462
+ actions.forget(tab.id);
1463
+ };
1464
+ signal.addEventListener("abort", forget, { once: true });
1465
+ return () => {
1466
+ signal.removeEventListener("abort", forget);
1467
+ };
1468
+ }, [
1469
+ signal,
1470
+ actions,
1471
+ tab.id
1472
+ ]);
1473
+ (0, react.useEffect)(() => {
1474
+ if (summary === void 0) loadChangesSummary(sessionId, seq);
1475
+ }, [
1476
+ summary,
1477
+ sessionId,
1478
+ seq,
1479
+ loadChangesSummary
1480
+ ]);
1481
+ (0, react.useEffect)(() => {
1482
+ if (host === null) reloadPresentedHost();
1483
+ }, [host, reloadPresentedHost]);
1484
+ const files = typeof summary === "object" ? summary.files : [];
1485
+ const index = state !== void 0 && files[state.index] !== void 0 ? state.index : 0;
1486
+ const file = files[index];
1487
+ const diffState = useChangesDiff((value) => file === void 0 ? void 0 : value[changesDiffUrl(sessionId, seq, index)]);
1488
+ (0, react.useEffect)(() => {
1489
+ if (file !== void 0 && diffState === void 0) loadChangesDiff(sessionId, seq, index);
1490
+ }, [
1491
+ file,
1492
+ diffState,
1493
+ sessionId,
1494
+ seq,
1495
+ index,
1496
+ loadChangesDiff
1497
+ ]);
1498
+ const phase = usePresentedOpen((value) => file === void 0 ? void 0 : value[changedFileUrl(sessionId, seq, index)]);
1499
+ const [menuOpen, setMenuOpen] = (0, react.useState)(false);
1500
+ const split = state?.split === true;
1501
+ const wrap = state?.wrap === true;
1502
+ const native = host !== null && host !== "error" && host.available && phase !== "nativeUnavailable";
1503
+ const summaryState = summary === void 0 || summary === "loading" ? "loading" : summary === "missing" ? "missing" : "ready";
1504
+ return (0, react_jsx_runtime.jsxs)("div", {
1505
+ className: ReviewTab_module_css_default.root,
1506
+ "data-changes-review": true,
1507
+ "data-review-state": summaryState,
1508
+ children: [
1509
+ (0, react_jsx_runtime.jsxs)("div", {
1510
+ className: ReviewTab_module_css_default.header,
1511
+ children: [
1512
+ file === void 0 ? (0, react_jsx_runtime.jsx)("span", {
1513
+ className: ReviewTab_module_css_default.selectorLabel,
1514
+ children: t("review.title", { turn: String(coordinates.turn) })
1515
+ }) : (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Menu, {
1516
+ className: ReviewTab_module_css_default.selector,
1517
+ open: menuOpen,
1518
+ autoFocus: true,
1519
+ portal: true,
1520
+ align: "start",
1521
+ dense: true,
1522
+ onClose: () => {
1523
+ setMenuOpen(false);
1524
+ },
1525
+ anchor: (0, react_jsx_runtime.jsxs)("button", {
1526
+ type: "button",
1527
+ className: ReviewTab_module_css_default.selectorButton,
1528
+ "aria-haspopup": "menu",
1529
+ "aria-expanded": menuOpen,
1530
+ "aria-label": t("review.selectFile"),
1531
+ title: file.display,
1532
+ "data-review-file": file.path,
1533
+ onClick: () => {
1534
+ setMenuOpen((value) => !value);
1535
+ },
1536
+ children: [(0, react_jsx_runtime.jsx)("span", {
1537
+ className: ReviewTab_module_css_default.selectorText,
1538
+ children: file.display
1539
+ }), (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconChevronDownOutline14, { size: 12 })]
1540
+ }),
1541
+ items: files.map((entry, at) => ({
1542
+ id: String(at),
1543
+ label: (0, react_jsx_runtime.jsxs)("span", {
1544
+ className: ReviewTab_module_css_default.item,
1545
+ children: [(0, react_jsx_runtime.jsx)("span", {
1546
+ className: ReviewTab_module_css_default.itemPath,
1547
+ children: entry.display
1548
+ }), (0, react_jsx_runtime.jsx)("span", {
1549
+ className: ReviewTab_module_css_default.itemCounts,
1550
+ children: (0, react_jsx_runtime.jsx)(Counts, {
1551
+ file: entry,
1552
+ t
1553
+ })
1554
+ })]
1555
+ })
1556
+ })),
1557
+ selectedId: String(index),
1558
+ onSelect: (id) => {
1559
+ actions.selected(tab.id, Number(id));
1560
+ setMenuOpen(false);
1561
+ }
1562
+ }),
1563
+ file !== void 0 && (0, react_jsx_runtime.jsx)("span", {
1564
+ className: ReviewTab_module_css_default.counts,
1565
+ children: (0, react_jsx_runtime.jsx)(Counts, {
1566
+ file,
1567
+ t
1568
+ })
1569
+ }),
1570
+ (0, react_jsx_runtime.jsxs)("span", {
1571
+ className: ReviewTab_module_css_default.tools,
1572
+ children: [
1573
+ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Tooltip, {
1574
+ label: t(split ? "review.unified" : "review.split"),
1575
+ side: "bottom",
1576
+ delayMs: 500,
1577
+ children: (0, react_jsx_runtime.jsx)("button", {
1578
+ type: "button",
1579
+ className: ReviewTab_module_css_default.tool,
1580
+ "aria-pressed": split,
1581
+ "aria-label": t("review.splitAria"),
1582
+ "data-review-tool": "split",
1583
+ onClick: () => {
1584
+ actions.toggledSplit(tab.id);
1585
+ },
1586
+ children: (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconPanelLeftOutline16, {})
1587
+ })
1588
+ }),
1589
+ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Tooltip, {
1590
+ label: t(wrap ? "review.nowrap" : "review.wrap"),
1591
+ side: "bottom",
1592
+ delayMs: 500,
1593
+ children: (0, react_jsx_runtime.jsx)("button", {
1594
+ type: "button",
1595
+ className: ReviewTab_module_css_default.tool,
1596
+ "aria-pressed": wrap,
1597
+ "aria-label": t("review.wrapAria"),
1598
+ "data-review-tool": "wrap",
1599
+ onClick: () => {
1600
+ actions.toggledWrap(tab.id);
1601
+ },
1602
+ children: (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconWrapLinesOutline16, {})
1603
+ })
1604
+ }),
1605
+ file !== void 0 && (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Tooltip, {
1606
+ label: t("review.openFile"),
1607
+ side: "bottom",
1608
+ delayMs: 500,
1609
+ children: (0, react_jsx_runtime.jsx)("button", {
1610
+ type: "button",
1611
+ className: ReviewTab_module_css_default.tool,
1612
+ "aria-label": t("review.openFileAria", { name: file.display }),
1613
+ "data-review-tool": "open-file",
1614
+ onClick: () => {
1615
+ tab.actions.openResource(fileAddressFor(sessionId, cwd, file.path));
1616
+ },
1617
+ children: (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconCodeOutline16, {})
1618
+ })
1619
+ }),
1620
+ file !== void 0 && native && (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Tooltip, {
1621
+ label: t(phase === "error" ? "diff.openNativeError" : "diff.openNative"),
1622
+ side: "bottom",
1623
+ delayMs: 500,
1624
+ children: (0, react_jsx_runtime.jsx)("button", {
1625
+ type: "button",
1626
+ className: ReviewTab_module_css_default.tool,
1627
+ disabled: phase === "opening",
1628
+ "data-review-tool": "open-native",
1629
+ "aria-label": t("diff.openNativeAria", { name: file.display }),
1630
+ "data-error": phase === "error" || void 0,
1631
+ onClick: () => {
1632
+ openChanged(sessionId, seq, index);
1633
+ },
1634
+ children: (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconRightUpOutline16, {})
1635
+ })
1636
+ })
1637
+ ]
1638
+ })
1639
+ ]
1640
+ }),
1641
+ summaryState === "loading" && (0, react_jsx_runtime.jsx)("p", {
1642
+ className: ReviewTab_module_css_default.status,
1643
+ role: "status",
1644
+ children: t("diff.loading")
1645
+ }),
1646
+ summaryState === "missing" && (0, react_jsx_runtime.jsx)("p", {
1647
+ className: ReviewTab_module_css_default.status,
1648
+ children: t("diff.missing")
1649
+ }),
1650
+ file !== void 0 && (0, react_jsx_runtime.jsx)(FileBody, {
1651
+ state: diffState,
1652
+ split,
1653
+ wrap,
1654
+ t,
1655
+ retry: () => {
1656
+ loadChangesDiff(sessionId, seq, index);
1657
+ }
1658
+ })
1659
+ ]
1660
+ });
1661
+ }
1662
+ /** The selected file's comparison, or the state that stands in for it. */
1663
+ function FileBody({ state, split, wrap, retry, t }) {
1664
+ if (state === void 0 || state === "loading") return (0, react_jsx_runtime.jsx)("p", {
1665
+ className: ReviewTab_module_css_default.status,
1666
+ role: "status",
1667
+ children: t("diff.loading")
1668
+ });
1669
+ if (state === "missing") return (0, react_jsx_runtime.jsx)("p", {
1670
+ className: ReviewTab_module_css_default.status,
1671
+ children: t("diff.missing")
1672
+ });
1673
+ if (state === "error") return (0, react_jsx_runtime.jsxs)("div", {
1674
+ className: ReviewTab_module_css_default.status,
1675
+ children: [(0, react_jsx_runtime.jsx)("span", { children: t("diff.error") }), (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Button, {
1676
+ size: "sm",
1677
+ onClick: retry,
1678
+ children: t("presented.retry")
1679
+ })]
1680
+ });
1681
+ if (state.kind === "binary") return (0, react_jsx_runtime.jsx)("p", {
1682
+ className: ReviewTab_module_css_default.status,
1683
+ children: t("diff.binary")
1684
+ });
1685
+ if (state.kind === "oversized") return (0, react_jsx_runtime.jsx)("p", {
1686
+ className: ReviewTab_module_css_default.status,
1687
+ children: t("diff.oversized")
1688
+ });
1689
+ return (0, react_jsx_runtime.jsx)(TextDiff, {
1690
+ diff: state,
1691
+ split,
1692
+ wrap,
1693
+ t
1694
+ });
1695
+ }
1696
+ /** The kind a paired row carries: a deletion or addition on either side, otherwise context. */
1697
+ function splitRowKind(row) {
1698
+ return row.left?.kind === "del" ? "del" : row.right?.kind === "add" ? "add" : "context";
1699
+ }
1700
+ function hunkHeader(hunk) {
1701
+ return `@@ -${hunk.oldStart},${hunk.oldLines} +${hunk.newStart},${hunk.newLines} @@`;
1702
+ }
1703
+ /**
1704
+ * The side-by-side view without wrapping: two columns that clip their long
1705
+ * lines and scroll sideways together, so a long line on one side never runs
1706
+ * under the other and both sides show the same columns of text. Every line is
1707
+ * one fixed-height row, which keeps the sides aligned.
1708
+ */
1709
+ function SplitColumns({ hunks }) {
1710
+ const paired = (0, react.useMemo)(() => hunks.map((hunk) => ({
1711
+ header: hunkHeader(hunk),
1712
+ rows: splitRows(hunk)
1713
+ })), [hunks]);
1714
+ const columns = (0, react.useRef)({
1715
+ left: null,
1716
+ right: null
1717
+ });
1718
+ const follow = (side) => (event) => {
1719
+ const other = columns.current[side === "left" ? "right" : "left"];
1720
+ if (other !== null && other.scrollLeft !== event.currentTarget.scrollLeft) other.scrollLeft = event.currentTarget.scrollLeft;
1721
+ };
1722
+ return (0, react_jsx_runtime.jsx)("div", {
1723
+ className: ReviewTab_module_css_default.columns,
1724
+ children: ["left", "right"].map((side) => (0, react_jsx_runtime.jsx)("div", {
1725
+ className: ReviewTab_module_css_default.column,
1726
+ "data-diff-side": side,
1727
+ ref: (element) => {
1728
+ columns.current[side] = element;
1729
+ },
1730
+ onScroll: follow(side),
1731
+ children: paired.map((hunk, position) => (0, react_jsx_runtime.jsxs)("section", {
1732
+ className: ReviewTab_module_css_default.hunk,
1733
+ children: [(0, react_jsx_runtime.jsx)("div", {
1734
+ className: ReviewTab_module_css_default.hunkHeader,
1735
+ children: hunk.header
1736
+ }), hunk.rows.map((row, at) => {
1737
+ const cell = row[side];
1738
+ return (0, react_jsx_runtime.jsxs)("div", {
1739
+ className: `${ReviewTab_module_css_default.sideLine} ${cell === void 0 ? ReviewTab_module_css_default.empty : ReviewTab_module_css_default[cell.kind]}`,
1740
+ "data-diff-line": splitRowKind(row),
1741
+ children: [(0, react_jsx_runtime.jsx)("span", {
1742
+ className: ReviewTab_module_css_default.number,
1743
+ children: cell?.no ?? ""
1744
+ }), (0, react_jsx_runtime.jsx)("span", {
1745
+ className: ReviewTab_module_css_default.text,
1746
+ children: cell?.text ?? ""
1747
+ })]
1748
+ }, at);
1749
+ })]
1750
+ }, position))
1751
+ }, side))
1752
+ });
1753
+ }
1754
+ /** The hunks of a text comparison with their line numbers, unified or side by side. */
1755
+ function TextDiff({ diff, split, wrap, t }) {
1756
+ const note = noteOf(diff);
1757
+ const { hunks, truncated } = (0, react.useMemo)(() => renderedHunks(diff.hunks), [diff.hunks]);
1758
+ return (0, react_jsx_runtime.jsxs)("div", {
1759
+ className: ReviewTab_module_css_default.body,
1760
+ "data-review-view": split ? "split" : "unified",
1761
+ "data-review-wrap": wrap || void 0,
1762
+ children: [
1763
+ note !== void 0 && (0, react_jsx_runtime.jsx)("p", {
1764
+ className: ReviewTab_module_css_default.note,
1765
+ children: t(note)
1766
+ }),
1767
+ diff.coarse && (0, react_jsx_runtime.jsx)("p", {
1768
+ className: ReviewTab_module_css_default.note,
1769
+ "data-diff-coarse": true,
1770
+ children: t("diff.coarse")
1771
+ }),
1772
+ truncated && (0, react_jsx_runtime.jsx)("p", {
1773
+ className: ReviewTab_module_css_default.note,
1774
+ "data-diff-truncated": true,
1775
+ children: t("diff.truncated", { count: String(5e3) })
1776
+ }),
1777
+ split && !wrap ? (0, react_jsx_runtime.jsx)(SplitColumns, { hunks }) : hunks.map((hunk, position) => (0, react_jsx_runtime.jsxs)("section", {
1778
+ className: ReviewTab_module_css_default.hunk,
1779
+ children: [(0, react_jsx_runtime.jsx)("div", {
1780
+ className: ReviewTab_module_css_default.hunkHeader,
1781
+ children: hunkHeader(hunk)
1782
+ }), split ? splitRows(hunk).map((row, at) => (0, react_jsx_runtime.jsxs)("div", {
1783
+ className: ReviewTab_module_css_default.splitLine,
1784
+ "data-diff-line": splitRowKind(row),
1785
+ children: [(0, react_jsx_runtime.jsxs)("span", {
1786
+ className: `${ReviewTab_module_css_default.cell} ${row.left === void 0 ? ReviewTab_module_css_default.empty : ReviewTab_module_css_default[row.left.kind]}`,
1787
+ children: [(0, react_jsx_runtime.jsx)("span", {
1788
+ className: ReviewTab_module_css_default.number,
1789
+ children: row.left?.no ?? ""
1790
+ }), (0, react_jsx_runtime.jsx)("span", {
1791
+ className: ReviewTab_module_css_default.text,
1792
+ children: row.left?.text ?? ""
1793
+ })]
1794
+ }), (0, react_jsx_runtime.jsxs)("span", {
1795
+ className: `${ReviewTab_module_css_default.cell} ${row.right === void 0 ? ReviewTab_module_css_default.empty : ReviewTab_module_css_default[row.right.kind]}`,
1796
+ children: [(0, react_jsx_runtime.jsx)("span", {
1797
+ className: ReviewTab_module_css_default.number,
1798
+ children: row.right?.no ?? ""
1799
+ }), (0, react_jsx_runtime.jsx)("span", {
1800
+ className: ReviewTab_module_css_default.text,
1801
+ children: row.right?.text ?? ""
1802
+ })]
1803
+ })]
1804
+ }, at)) : hunkRows(hunk).map((row, at) => (0, react_jsx_runtime.jsxs)("div", {
1805
+ className: `${ReviewTab_module_css_default.line} ${ReviewTab_module_css_default[row.kind]}`,
1806
+ "data-diff-line": row.kind,
1807
+ children: [
1808
+ (0, react_jsx_runtime.jsx)("span", {
1809
+ className: ReviewTab_module_css_default.number,
1810
+ children: row.old ?? ""
1811
+ }),
1812
+ (0, react_jsx_runtime.jsx)("span", {
1813
+ className: ReviewTab_module_css_default.number,
1814
+ children: row.new ?? ""
1815
+ }),
1816
+ (0, react_jsx_runtime.jsx)("span", {
1817
+ className: ReviewTab_module_css_default.sign,
1818
+ children: row.kind === "add" ? "+" : row.kind === "del" ? "-" : " "
1819
+ }),
1820
+ (0, react_jsx_runtime.jsx)("span", {
1821
+ className: ReviewTab_module_css_default.text,
1822
+ children: row.text
1823
+ })
1824
+ ]
1825
+ }, at))]
1826
+ }, position))
1827
+ ]
1828
+ });
1829
+ }
1830
+ //#endregion
1831
+ //#region lib/types/client/review-definition.js
1832
+ /** The tab kind this package owns. */
1833
+ const CHANGES_REVIEW_KIND = "changes-review";
1834
+ /** This implementation's identity in the tab system, and the key its body registers under. */
1835
+ const CHANGES_REVIEW_ID = "@deepseek-ai/dsh-client-ui-deliverables";
1836
+ /**
1837
+ * The review type's registry definition.
1838
+ * @param t - namespace-bound translate, read fresh on every title call.
1839
+ * @returns the definition to register.
1840
+ */
1841
+ function changesReviewDefinition(t) {
1842
+ return {
1843
+ id: CHANGES_REVIEW_ID,
1844
+ kind: CHANGES_REVIEW_KIND,
1845
+ patterns: ["dsh-resource://changes-review/**"],
1846
+ priority: "builtin",
1847
+ canOpen: (address) => parseChangesReviewAddress(address) !== void 0,
1848
+ title: (address) => {
1849
+ const turn = parseChangesReviewAddress(address)?.turn;
1850
+ return turn === void 0 ? address : t("review.title", { turn: String(turn) });
1851
+ }
1852
+ };
1853
+ }
1854
+ //#endregion
1855
+ //#region lib/types/client/review-store.js
1856
+ /**
1857
+ * The review tab's view state: which listed file is shown, whether hunks are
1858
+ * drawn side by side, and whether long lines wrap. One bucket per tab, so two
1859
+ * reviews in one session keep their own choices; the bucket ends with the
1860
+ * tab record's signal.
1861
+ */
1862
+ function bucket(state, tabId) {
1863
+ const tab = state.byTab[tabId];
1864
+ if (tab === void 0) throw new Error(`ui-deliverables: no review state for tab "${tabId}"`);
1865
+ return tab;
1866
+ }
1867
+ /**
1868
+ * Declare the review tab's store; the registration declares it as an
1869
+ * exclusive store, so the framework mints one instance per session.
1870
+ * @returns the store handle to declare on the registration.
1871
+ */
1872
+ function createReviewStore() {
1873
+ return (0, _deepseek_ai_dsh_client_store.defineStore)({
1874
+ init: () => ({ byTab: {} }),
1875
+ actions: {
1876
+ /**
1877
+ * Apply a navigation: seed the tab on its first one, then show the navigated file.
1878
+ * @param d - draft state.
1879
+ * @param tabId - the tab being drawn.
1880
+ * @param revision - the navigation revision being applied.
1881
+ * @param index - the file index the navigation named, or the current one.
1882
+ */
1883
+ navigated: (d, tabId, revision, index) => {
1884
+ const tab = d.byTab[tabId];
1885
+ if (tab === void 0) d.byTab[tabId] = {
1886
+ index,
1887
+ split: false,
1888
+ wrap: false,
1889
+ navigated: revision
1890
+ };
1891
+ else {
1892
+ tab.index = index;
1893
+ tab.navigated = revision;
1894
+ }
1895
+ },
1896
+ /**
1897
+ * Show another listed file.
1898
+ * @param d - draft state.
1899
+ * @param tabId - the tab being drawn.
1900
+ * @param index - original index in the summary's files array.
1901
+ */
1902
+ selected: (d, tabId, index) => {
1903
+ bucket(d, tabId).index = index;
1904
+ },
1905
+ /**
1906
+ * Switch between the unified and the side-by-side view.
1907
+ * @param d - draft state.
1908
+ * @param tabId - the tab being drawn.
1909
+ */
1910
+ toggledSplit: (d, tabId) => {
1911
+ const tab = bucket(d, tabId);
1912
+ tab.split = !tab.split;
1913
+ },
1914
+ /**
1915
+ * Switch line wrapping.
1916
+ * @param d - draft state.
1917
+ * @param tabId - the tab being drawn.
1918
+ */
1919
+ toggledWrap: (d, tabId) => {
1920
+ const tab = bucket(d, tabId);
1921
+ tab.wrap = !tab.wrap;
1922
+ },
1923
+ /**
1924
+ * Drop a tab's bucket once its record is gone.
1925
+ * @param d - draft state.
1926
+ * @param tabId - the tab that ended.
1927
+ */
1928
+ forget: (d, tabId) => {
1929
+ d.byTab = Object.fromEntries(Object.entries(d.byTab).filter(([id]) => id !== tabId));
1930
+ }
1931
+ }
1932
+ });
1933
+ }
1934
+ //#endregion
824
1935
  //#region lib/types/client/locales.js
825
- /** `deliverables` namespace dictionaries. */
1936
+ /** `deliverables` namespace dictionaries: cards, comparison tab, and file-mention copy. */
826
1937
  /** Dictionary namespace owned by this plugin. */
827
1938
  const NS = "deliverables";
828
1939
  /** Simplified Chinese dictionary (the key-set source of truth). */
@@ -834,7 +1945,7 @@ window.__ModuleLoader__.load({
834
1945
  "presented.directoryOpened": "已请求打开所在文件夹",
835
1946
  "presented.revealed": "已请求在文件管理器中显示",
836
1947
  "presented.revealing": "正在文件管理器中显示…",
837
- "presented.unavailable": "此主机没有可用的桌面,无法打开文件或文件夹",
1948
+ "presented.unavailable": "此主机没有可用的桌面,无法使用外部程序打开文件或文件夹;文件仍可在侧边栏预览",
838
1949
  "presented.retry": "重试",
839
1950
  "presented.hostError": "无法读取主机桌面信息",
840
1951
  "presented.directory": "打开所在文件夹",
@@ -860,10 +1971,40 @@ window.__ModuleLoader__.load({
860
1971
  "row.error": "交付失败",
861
1972
  "row.stopped": "已中断",
862
1973
  "row.inspect": "查看调用",
863
- "produced.label": "本轮文件改动",
864
- "produced.moreOne": "+ 1 个文件",
865
- "produced.more": "+ {count} 个文件",
866
- "produced.open": "打开 {name}"
1974
+ "changes.title": "已编辑 {count} 个文件",
1975
+ "changes.added": "+{count}",
1976
+ "changes.deleted": "-{count}",
1977
+ "changes.binary": "二进制",
1978
+ "changes.openReview": "在侧边栏查看本轮改动",
1979
+ "changes.all": "全部 {count} 个文件",
1980
+ "changes.expandAria": "展开全部 {count} 个改动文件",
1981
+ "changes.collapse": "收起",
1982
+ "changes.collapseAria": "收起改动文件列表",
1983
+ "changes.oversized": "过大",
1984
+ "changes.viewDiff": "查看 {name} 的改动",
1985
+ "review.title": "第 {turn} 轮改动",
1986
+ "review.selectFile": "选择要查看的文件",
1987
+ "review.split": "切换为左右对比",
1988
+ "review.unified": "切换为单栏对比",
1989
+ "review.splitAria": "左右对比",
1990
+ "review.wrap": "开启自动换行",
1991
+ "review.nowrap": "关闭自动换行",
1992
+ "review.wrapAria": "自动换行",
1993
+ "review.openFile": "在侧边栏打开整个文件",
1994
+ "review.openFileAria": "在侧边栏打开 {name}",
1995
+ "diff.openNativeAria": "用默认应用打开 {name}",
1996
+ "diff.loading": "正在读取改动…",
1997
+ "diff.missing": "这轮改动的内容已不可用",
1998
+ "diff.error": "无法读取改动",
1999
+ "diff.binary": "二进制文件,无法显示改动",
2000
+ "diff.oversized": "文件过大,无法显示改动",
2001
+ "diff.created": "本轮新建的文件",
2002
+ "diff.deleted": "本轮删除的文件",
2003
+ "diff.unchanged": "两侧内容相同",
2004
+ "diff.coarse": "逐行对比超时,按整个文件替换显示",
2005
+ "diff.truncated": "只显示前 {count} 行",
2006
+ "diff.openNative": "用默认应用打开",
2007
+ "diff.openNativeError": "打开失败,点击重试"
867
2008
  };
868
2009
  /** English dictionary (same key set). */
869
2010
  const en = {
@@ -874,7 +2015,7 @@ window.__ModuleLoader__.load({
874
2015
  "presented.directoryOpened": "Requested opening containing folder",
875
2016
  "presented.revealed": "Requested display in file manager",
876
2017
  "presented.revealing": "Showing in file manager…",
877
- "presented.unavailable": "This Host has no desktop available to open files or folders",
2018
+ "presented.unavailable": "This Host has no desktop available to open files or folders in external apps. Files can still be previewed in the sidebar.",
878
2019
  "presented.retry": "Retry",
879
2020
  "presented.hostError": "Could not read the Host desktop information",
880
2021
  "presented.directory": "Open containing folder",
@@ -900,30 +2041,70 @@ window.__ModuleLoader__.load({
900
2041
  "row.error": "Delivery failed",
901
2042
  "row.stopped": "Interrupted",
902
2043
  "row.inspect": "Inspect call",
903
- "produced.label": "Files changed",
904
- "produced.moreOne": "+ 1 file",
905
- "produced.more": "+ {count} files",
906
- "produced.open": "Open {name}"
2044
+ "changes.title": "Edited {count} files",
2045
+ "changes.added": "+{count}",
2046
+ "changes.deleted": "-{count}",
2047
+ "changes.binary": "binary",
2048
+ "changes.openReview": "Review this turn’s changes in the sidebar",
2049
+ "changes.all": "All {count} files",
2050
+ "changes.expandAria": "Show all {count} changed files",
2051
+ "changes.collapse": "Collapse",
2052
+ "changes.collapseAria": "Collapse changed files",
2053
+ "changes.oversized": "too large",
2054
+ "changes.viewDiff": "View changes to {name}",
2055
+ "review.title": "Review · turn {turn}",
2056
+ "review.selectFile": "Choose the file to review",
2057
+ "review.split": "Switch to split view",
2058
+ "review.unified": "Switch to unified view",
2059
+ "review.splitAria": "Split view",
2060
+ "review.wrap": "Enable line wrap",
2061
+ "review.nowrap": "Disable line wrap",
2062
+ "review.wrapAria": "Line wrap",
2063
+ "review.openFile": "Open the whole file in the sidebar",
2064
+ "review.openFileAria": "Open {name} in sidebar",
2065
+ "diff.openNativeAria": "Open {name} in default app",
2066
+ "diff.loading": "Reading changes…",
2067
+ "diff.missing": "The contents of this turn’s changes are no longer available",
2068
+ "diff.error": "Could not read the changes",
2069
+ "diff.binary": "Binary file; changes cannot be shown",
2070
+ "diff.oversized": "File too large; changes cannot be shown",
2071
+ "diff.created": "Created in this turn",
2072
+ "diff.deleted": "Deleted in this turn",
2073
+ "diff.unchanged": "Both sides hold the same lines",
2074
+ "diff.coarse": "Line comparison timed out; shown as a whole-file replacement",
2075
+ "diff.truncated": "Showing the first {count} lines",
2076
+ "diff.openNative": "Open in default app",
2077
+ "diff.openNativeError": "Could not open. Click to retry."
907
2078
  };
908
2079
  //#endregion
909
2080
  //#region lib/types/client/index.js
910
- /** Required services for the tail-slot registration and its dictionaries. */
2081
+ /** Required services for the tail-slot and tab-type registrations and their dictionaries. */
911
2082
  const inject = [
912
2083
  "slots",
913
2084
  "locale",
914
2085
  "uiConversation",
915
2086
  "remote",
916
- "remote.session"
2087
+ "remote.session",
2088
+ "sidebarRightTabs",
2089
+ "sidebarRight"
917
2090
  ];
918
2091
  /**
919
- * Client plugin body: register the dictionaries and the turn-tail entry.
2092
+ * Client plugin body: register the dictionaries, the turn-tail entry, and the comparison tab type.
920
2093
  * @param ctx - client root context.
921
2094
  */
922
2095
  function apply(ctx) {
923
2096
  const opener = new PresentedOpenController();
924
- ctx.effect(() => () => opener.dispose());
2097
+ const summaries = new ChangesSummaryStore();
2098
+ const diffs = new ChangesDiffStore();
2099
+ ctx.effect(() => () => Promise.all([
2100
+ opener.dispose(),
2101
+ summaries.dispose(),
2102
+ diffs.dispose()
2103
+ ]));
925
2104
  ctx.on("connection/reset", () => {
926
2105
  opener.resetHost();
2106
+ summaries.reset();
2107
+ diffs.reset();
927
2108
  });
928
2109
  ctx.uiConversation.events.register(deliverablesDefinition);
929
2110
  ctx.effect(() => ctx.locale.register(NS, {
@@ -932,23 +2113,48 @@ window.__ModuleLoader__.load({
932
2113
  }), "ui-deliverables: dictionaries");
933
2114
  ctx.slots.inject("conversation.chat.turnTail", () => ctx.slots.register({
934
2115
  name: "conversation.chat.turnTail",
935
- select: selectDeliverables,
2116
+ id: "@deepseek-ai/dsh-client-ui-deliverables",
936
2117
  locale: NS,
937
2118
  inject: () => ({
938
2119
  hooks: {
939
2120
  presentedOpen: opener.state,
940
- presentedHost: opener.host
2121
+ presentedHost: opener.host,
2122
+ changesSummary: summaries.state
941
2123
  },
942
2124
  reloadPresentedHost: () => opener.loadHost(),
943
- openPresented: (sessionId, seq, index, action) => opener.open(sessionId, seq, index, action)
2125
+ loadChangesSummary: (sessionId, seq) => summaries.load(sessionId, seq),
2126
+ openPresented: (sessionId, seq, index, action) => opener.open(sessionId, seq, index, action),
2127
+ openChanged: (sessionId, seq, index) => opener.openChanged(sessionId, seq, index),
2128
+ openChangesReview: (coordinates, index) => {
2129
+ ctx.sidebarRight.openResource(changesReviewAddress(coordinates), { params: { index } });
2130
+ }
944
2131
  })
945
- }, Deliverables));
2132
+ }, DeliverablesTail));
946
2133
  ctx.slots.inject("tool.call.toolview", () => ctx.slots.register({
947
2134
  name: "tool.call.toolview",
948
2135
  key: "present",
949
2136
  locale: NS
950
2137
  }, PresentRow));
951
2138
  const t = ctx.locale.bind(NS);
2139
+ ctx.effect(() => ctx.sidebarRightTabs.register(changesReviewDefinition(t)), "ui-deliverables: changes-review type");
2140
+ ctx.effect(() => ctx.slots.inject("sidebar.right.pane.tab", () => ctx.slots.register({
2141
+ name: "sidebar.right.pane.tab",
2142
+ key: CHANGES_REVIEW_ID,
2143
+ locale: NS,
2144
+ store: createReviewStore(),
2145
+ inject: () => ({
2146
+ hooks: {
2147
+ changesSummary: summaries.state,
2148
+ changesDiff: diffs.state,
2149
+ presentedOpen: opener.state,
2150
+ presentedHost: opener.host
2151
+ },
2152
+ loadChangesSummary: (sessionId, seq) => summaries.load(sessionId, seq),
2153
+ loadChangesDiff: (sessionId, seq, index) => diffs.load(sessionId, seq, index),
2154
+ reloadPresentedHost: () => opener.loadHost(),
2155
+ openChanged: (sessionId, seq, index) => opener.openChanged(sessionId, seq, index)
2156
+ })
2157
+ }, ReviewTab)), "ui-deliverables: changes-review body");
952
2158
  ctx.provide("chatFileMentions", { forClosing(owner) {
953
2159
  const paths = selectProducedFiles(owner);
954
2160
  const presented = presentedForClosing(owner);
@@ -957,10 +2163,8 @@ window.__ModuleLoader__.load({
957
2163
  } });
958
2164
  }
959
2165
  //#endregion
960
- exports.ProducedFiles = ProducedFiles;
961
2166
  exports.apply = apply;
962
2167
  exports.inject = inject;
963
- exports.producedForClosing = producedForClosing;
964
2168
  return module.exports;
965
2169
  }
966
2170
  });