@jingyi0605/codingns4dsh 0.2.1-beta.10 → 0.2.1-beta.12

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 (248) hide show
  1. package/README.en.md +7 -5
  2. package/README.md +12 -6
  3. package/data/build/dist/bootstrap/dsh-connection-adapter.d.ts +1 -1
  4. package/data/build/dist/bootstrap/index.d.ts +1 -1
  5. package/data/build/dist/client/bundle.js +9713 -7350
  6. package/data/build/dist/client/bundle.js.map +1 -1
  7. package/data/build/dist/client/cli-slots.d.ts +13 -3
  8. package/data/build/dist/client/cli-slots.d.ts.map +1 -1
  9. package/data/build/dist/client/cli-slots.js +93 -18
  10. package/data/build/dist/client/cli-slots.js.map +1 -1
  11. package/data/build/dist/client/client.assistant-configuration-view.js +4 -3
  12. package/data/build/dist/client/client.assistant-configuration-view.js.map +1 -1
  13. package/data/build/dist/client/client.moss-voice-output.js +415 -0
  14. package/data/build/dist/client/client.moss-voice-output.js.map +1 -0
  15. package/data/build/dist/client/client.native-workspace-store.js +4 -4
  16. package/data/build/dist/client/client.native-workspace-store.js.map +1 -1
  17. package/data/build/dist/client/client.primitives-adapter.js.map +1 -1
  18. package/data/build/dist/client/client.react-dom.js +0 -404
  19. package/data/build/dist/client/client.react-dom.js.map +1 -1
  20. package/data/build/dist/client/client.session-translation.js +105 -2
  21. package/data/build/dist/client/client.session-translation.js.map +1 -1
  22. package/data/build/dist/client/client.transport.js +103 -11
  23. package/data/build/dist/client/client.transport.js.map +1 -1
  24. package/data/build/dist/client/conversation-translation-settings.d.ts +10 -0
  25. package/data/build/dist/client/conversation-translation-settings.d.ts.map +1 -0
  26. package/data/build/dist/client/conversation-translation-settings.js +52 -0
  27. package/data/build/dist/client/conversation-translation-settings.js.map +1 -0
  28. package/data/build/dist/client/desktop-assistant.js +569 -450
  29. package/data/build/dist/client/features/cli-adapters.d.ts.map +1 -1
  30. package/data/build/dist/client/features/cli-adapters.js +3 -1
  31. package/data/build/dist/client/features/cli-adapters.js.map +1 -1
  32. package/data/build/dist/client/features/session-translation.d.ts.map +1 -1
  33. package/data/build/dist/client/features/session-translation.js +49 -48
  34. package/data/build/dist/client/features/session-translation.js.map +1 -1
  35. package/data/build/dist/client/locales/panels.d.ts.map +1 -1
  36. package/data/build/dist/client/locales/panels.js +103 -11
  37. package/data/build/dist/client/locales/panels.js.map +1 -1
  38. package/data/build/dist/client/native-model-translation-menu.d.ts +6 -0
  39. package/data/build/dist/client/native-model-translation-menu.d.ts.map +1 -0
  40. package/data/build/dist/client/native-model-translation-menu.js +57 -0
  41. package/data/build/dist/client/native-model-translation-menu.js.map +1 -0
  42. package/data/build/dist/client/native-translation-default.d.ts +6 -0
  43. package/data/build/dist/client/native-translation-default.d.ts.map +1 -0
  44. package/data/build/dist/client/native-translation-default.js +30 -0
  45. package/data/build/dist/client/native-translation-default.js.map +1 -0
  46. package/data/build/dist/client/session-translation-chat.d.ts +23 -2
  47. package/data/build/dist/client/session-translation-chat.d.ts.map +1 -1
  48. package/data/build/dist/client/session-translation-chat.js +238 -72
  49. package/data/build/dist/client/session-translation-chat.js.map +1 -1
  50. package/data/build/dist/client/session-translation-interactions.d.ts +31 -0
  51. package/data/build/dist/client/session-translation-interactions.d.ts.map +1 -0
  52. package/data/build/dist/client/session-translation-interactions.js +158 -0
  53. package/data/build/dist/client/session-translation-interactions.js.map +1 -0
  54. package/data/build/dist/client/session-translation-model-pool.d.ts +16 -0
  55. package/data/build/dist/client/session-translation-model-pool.d.ts.map +1 -0
  56. package/data/build/dist/client/session-translation-model-pool.js +246 -0
  57. package/data/build/dist/client/session-translation-model-pool.js.map +1 -0
  58. package/data/build/dist/client/session-translation-pending-dom.d.ts +8 -0
  59. package/data/build/dist/client/session-translation-pending-dom.d.ts.map +1 -0
  60. package/data/build/dist/client/session-translation-pending-dom.js +58 -0
  61. package/data/build/dist/client/session-translation-pending-dom.js.map +1 -0
  62. package/data/build/dist/client/session-translation-retry.d.ts +16 -0
  63. package/data/build/dist/client/session-translation-retry.d.ts.map +1 -0
  64. package/data/build/dist/client/session-translation-retry.js +66 -0
  65. package/data/build/dist/client/session-translation-retry.js.map +1 -0
  66. package/data/build/dist/client/session-translation-rules.d.ts +13 -0
  67. package/data/build/dist/client/session-translation-rules.d.ts.map +1 -0
  68. package/data/build/dist/client/session-translation-rules.js +58 -0
  69. package/data/build/dist/client/session-translation-rules.js.map +1 -0
  70. package/data/build/dist/client/style.css +276 -276
  71. package/data/build/dist/dsh-capabilities/client/interaction-presentation-adapter.d.ts +30 -0
  72. package/data/build/dist/dsh-capabilities/client/interaction-presentation-adapter.d.ts.map +1 -0
  73. package/data/build/dist/dsh-capabilities/client/interaction-presentation-adapter.js +93 -0
  74. package/data/build/dist/dsh-capabilities/client/interaction-presentation-adapter.js.map +1 -0
  75. package/data/build/dist/dsh-capabilities/client/interaction-text-dom.d.ts +12 -0
  76. package/data/build/dist/dsh-capabilities/client/interaction-text-dom.d.ts.map +1 -0
  77. package/data/build/dist/dsh-capabilities/client/interaction-text-dom.js +181 -0
  78. package/data/build/dist/dsh-capabilities/client/interaction-text-dom.js.map +1 -0
  79. package/data/build/dist/dsh-capabilities/client/message-presentation-adapter.d.ts +19 -0
  80. package/data/build/dist/dsh-capabilities/client/message-presentation-adapter.d.ts.map +1 -0
  81. package/data/build/dist/dsh-capabilities/client/message-presentation-adapter.js +39 -0
  82. package/data/build/dist/dsh-capabilities/client/message-presentation-adapter.js.map +1 -0
  83. package/data/build/dist/dsh-capabilities/client/primitives-adapter.d.ts +1 -0
  84. package/data/build/dist/dsh-capabilities/client/primitives-adapter.d.ts.map +1 -1
  85. package/data/build/dist/dsh-capabilities/client/primitives-adapter.js +1 -0
  86. package/data/build/dist/dsh-capabilities/client/primitives-adapter.js.map +1 -1
  87. package/data/build/dist/dsh-capabilities/client/question-history-adapter.d.ts +20 -0
  88. package/data/build/dist/dsh-capabilities/client/question-history-adapter.d.ts.map +1 -0
  89. package/data/build/dist/dsh-capabilities/client/question-history-adapter.js +65 -0
  90. package/data/build/dist/dsh-capabilities/client/question-history-adapter.js.map +1 -0
  91. package/data/build/dist/dsh-capabilities/client/slot-presentation-mirror.d.ts +32 -0
  92. package/data/build/dist/dsh-capabilities/client/slot-presentation-mirror.d.ts.map +1 -0
  93. package/data/build/dist/dsh-capabilities/client/slot-presentation-mirror.js +90 -0
  94. package/data/build/dist/dsh-capabilities/client/slot-presentation-mirror.js.map +1 -0
  95. package/data/build/dist/dsh-capabilities/host/connection-peer-adapter.d.ts +10 -0
  96. package/data/build/dist/dsh-capabilities/host/connection-peer-adapter.d.ts.map +1 -0
  97. package/data/build/dist/dsh-capabilities/host/connection-peer-adapter.js +34 -0
  98. package/data/build/dist/dsh-capabilities/host/connection-peer-adapter.js.map +1 -0
  99. package/data/build/dist/dsh-capabilities/host/native-dispatch-adapter.d.ts +21 -0
  100. package/data/build/dist/dsh-capabilities/host/native-dispatch-adapter.d.ts.map +1 -0
  101. package/data/build/dist/dsh-capabilities/host/native-dispatch-adapter.js +11 -0
  102. package/data/build/dist/dsh-capabilities/host/native-dispatch-adapter.js.map +1 -0
  103. package/data/build/dist/dsh-capabilities/host/session-activation-adapter.d.ts +17 -0
  104. package/data/build/dist/dsh-capabilities/host/session-activation-adapter.d.ts.map +1 -0
  105. package/data/build/dist/dsh-capabilities/host/session-activation-adapter.js +37 -0
  106. package/data/build/dist/dsh-capabilities/host/session-activation-adapter.js.map +1 -0
  107. package/data/build/dist/dsh-capabilities/host/session-model-selection-adapter.d.ts +17 -0
  108. package/data/build/dist/dsh-capabilities/host/session-model-selection-adapter.d.ts.map +1 -0
  109. package/data/build/dist/dsh-capabilities/host/session-model-selection-adapter.js +45 -0
  110. package/data/build/dist/dsh-capabilities/host/session-model-selection-adapter.js.map +1 -0
  111. package/data/build/dist/dsh-capabilities/host/session-prompt-adapter.d.ts +28 -0
  112. package/data/build/dist/dsh-capabilities/host/session-prompt-adapter.d.ts.map +1 -0
  113. package/data/build/dist/dsh-capabilities/host/session-prompt-adapter.js +31 -0
  114. package/data/build/dist/dsh-capabilities/host/session-prompt-adapter.js.map +1 -0
  115. package/data/build/dist/dsh-capabilities/matrix.d.ts.map +1 -1
  116. package/data/build/dist/dsh-capabilities/matrix.js +12 -3
  117. package/data/build/dist/dsh-capabilities/matrix.js.map +1 -1
  118. package/data/build/dist/dsh-capabilities/routes.d.ts.map +1 -1
  119. package/data/build/dist/dsh-capabilities/routes.js +26 -3
  120. package/data/build/dist/dsh-capabilities/routes.js.map +1 -1
  121. package/data/build/dist/dsh-capabilities/types.d.ts +1 -1
  122. package/data/build/dist/dsh-capabilities/types.d.ts.map +1 -1
  123. package/data/build/dist/dsh-capabilities/types.js.map +1 -1
  124. package/data/build/dist/host/cli-adapters/antigravity-driver.js +1 -1
  125. package/data/build/dist/host/cli-adapters/antigravity-driver.js.map +1 -1
  126. package/data/build/dist/host/cli-adapters/attachment-utils.d.ts +4 -3
  127. package/data/build/dist/host/cli-adapters/attachment-utils.d.ts.map +1 -1
  128. package/data/build/dist/host/cli-adapters/attachment-utils.js +9 -8
  129. package/data/build/dist/host/cli-adapters/attachment-utils.js.map +1 -1
  130. package/data/build/dist/host/cli-adapters/claude-driver.js +1 -1
  131. package/data/build/dist/host/cli-adapters/claude-driver.js.map +1 -1
  132. package/data/build/dist/host/cli-adapters/command-code-driver.js +1 -1
  133. package/data/build/dist/host/cli-adapters/command-code-driver.js.map +1 -1
  134. package/data/build/dist/host/cli-adapters/driver.d.ts +2 -0
  135. package/data/build/dist/host/cli-adapters/driver.d.ts.map +1 -1
  136. package/data/build/dist/host/cli-adapters/dsh-message-projector.d.ts +2 -0
  137. package/data/build/dist/host/cli-adapters/dsh-message-projector.d.ts.map +1 -1
  138. package/data/build/dist/host/cli-adapters/dsh-message-projector.js +28 -11
  139. package/data/build/dist/host/cli-adapters/dsh-message-projector.js.map +1 -1
  140. package/data/build/dist/host/cli-adapters/feature.d.ts.map +1 -1
  141. package/data/build/dist/host/cli-adapters/feature.js +369 -70
  142. package/data/build/dist/host/cli-adapters/feature.js.map +1 -1
  143. package/data/build/dist/host/cli-adapters/gemini-driver.js +1 -1
  144. package/data/build/dist/host/cli-adapters/gemini-driver.js.map +1 -1
  145. package/data/build/dist/host/cli-adapters/grok-driver.d.ts +1 -0
  146. package/data/build/dist/host/cli-adapters/grok-driver.d.ts.map +1 -1
  147. package/data/build/dist/host/cli-adapters/grok-driver.js +128 -40
  148. package/data/build/dist/host/cli-adapters/grok-driver.js.map +1 -1
  149. package/data/build/dist/host/cli-adapters/kimi-driver.js +2 -2
  150. package/data/build/dist/host/cli-adapters/kimi-driver.js.map +1 -1
  151. package/data/build/dist/host/cli-adapters/mcode-driver.js +1 -1
  152. package/data/build/dist/host/cli-adapters/mcode-driver.js.map +1 -1
  153. package/data/build/dist/host/cli-adapters/native-subagent-dispatch.js +2 -2
  154. package/data/build/dist/host/cli-adapters/native-subagent-dispatch.js.map +1 -1
  155. package/data/build/dist/host/cli-adapters/native-team-subagent.d.ts.map +1 -1
  156. package/data/build/dist/host/cli-adapters/native-team-subagent.js +2 -1
  157. package/data/build/dist/host/cli-adapters/native-team-subagent.js.map +1 -1
  158. package/data/build/dist/host/cli-adapters/pi-driver.js +1 -1
  159. package/data/build/dist/host/cli-adapters/pi-driver.js.map +1 -1
  160. package/data/build/dist/host/cli-adapters/registry.d.ts.map +1 -1
  161. package/data/build/dist/host/cli-adapters/registry.js +25 -16
  162. package/data/build/dist/host/cli-adapters/registry.js.map +1 -1
  163. package/data/build/dist/host/cli-adapters/zcode-driver.js +1 -1
  164. package/data/build/dist/host/cli-adapters/zcode-driver.js.map +1 -1
  165. package/data/build/dist/host/features/global-voice-rpc.d.ts.map +1 -1
  166. package/data/build/dist/host/features/global-voice-rpc.js +2 -3
  167. package/data/build/dist/host/features/global-voice-rpc.js.map +1 -1
  168. package/data/build/dist/host/features/interaction-translation.d.ts +9 -0
  169. package/data/build/dist/host/features/interaction-translation.d.ts.map +1 -0
  170. package/data/build/dist/host/features/interaction-translation.js +168 -0
  171. package/data/build/dist/host/features/interaction-translation.js.map +1 -0
  172. package/data/build/dist/host/features/peer-host.js +6 -6
  173. package/data/build/dist/host/features/peer-host.js.map +1 -1
  174. package/data/build/dist/host/features/session-prompt-translation.d.ts +10 -0
  175. package/data/build/dist/host/features/session-prompt-translation.d.ts.map +1 -0
  176. package/data/build/dist/host/features/session-prompt-translation.js +197 -0
  177. package/data/build/dist/host/features/session-prompt-translation.js.map +1 -0
  178. package/data/build/dist/host/features/session-translation-protection.d.ts +16 -0
  179. package/data/build/dist/host/features/session-translation-protection.d.ts.map +1 -0
  180. package/data/build/dist/host/features/session-translation-protection.js +183 -0
  181. package/data/build/dist/host/features/session-translation-protection.js.map +1 -0
  182. package/data/build/dist/host/features/session-translation-recovery.d.ts +20 -0
  183. package/data/build/dist/host/features/session-translation-recovery.d.ts.map +1 -0
  184. package/data/build/dist/host/features/session-translation-recovery.js +122 -0
  185. package/data/build/dist/host/features/session-translation-recovery.js.map +1 -0
  186. package/data/build/dist/host/features/session-translation-runtime.d.ts +16 -0
  187. package/data/build/dist/host/features/session-translation-runtime.d.ts.map +1 -0
  188. package/data/build/dist/host/features/session-translation-runtime.js +85 -0
  189. package/data/build/dist/host/features/session-translation-runtime.js.map +1 -0
  190. package/data/build/dist/host/features/session-translation-service.d.ts +14 -4
  191. package/data/build/dist/host/features/session-translation-service.d.ts.map +1 -1
  192. package/data/build/dist/host/features/session-translation-service.js +217 -211
  193. package/data/build/dist/host/features/session-translation-service.js.map +1 -1
  194. package/data/build/dist/host/features/session-translation.d.ts.map +1 -1
  195. package/data/build/dist/host/features/session-translation.js +5 -2
  196. package/data/build/dist/host/features/session-translation.js.map +1 -1
  197. package/data/build/dist/host/modules/peer-host/peer-host-native-dispatch.d.ts +2 -2
  198. package/data/build/dist/host/modules/peer-host/peer-host-native-dispatch.d.ts.map +1 -1
  199. package/data/build/dist/host/modules/peer-host/peer-host-native-dispatch.js +10 -9
  200. package/data/build/dist/host/modules/peer-host/peer-host-native-dispatch.js.map +1 -1
  201. package/data/build/dist/host/modules/peer-host/peer-host-native-streams.d.ts +3 -3
  202. package/data/build/dist/host/modules/peer-host/peer-host-native-streams.d.ts.map +1 -1
  203. package/data/build/dist/host/modules/peer-host/peer-host-native-streams.js +26 -14
  204. package/data/build/dist/host/modules/peer-host/peer-host-native-streams.js.map +1 -1
  205. package/data/build/dist/host/native-session-bridge.d.ts +2 -1
  206. package/data/build/dist/host/native-session-bridge.d.ts.map +1 -1
  207. package/data/build/dist/host/native-session-bridge.js +7 -15
  208. package/data/build/dist/host/native-session-bridge.js.map +1 -1
  209. package/data/build/dist/host/rpc.d.ts.map +1 -1
  210. package/data/build/dist/host/rpc.js +14 -8
  211. package/data/build/dist/host/rpc.js.map +1 -1
  212. package/data/build/dist/host/settings.d.ts.map +1 -1
  213. package/data/build/dist/host/settings.js +10 -2
  214. package/data/build/dist/host/settings.js.map +1 -1
  215. package/data/build/dist/shared/attachment-prompts.d.ts +11 -0
  216. package/data/build/dist/shared/attachment-prompts.d.ts.map +1 -0
  217. package/data/build/dist/shared/attachment-prompts.js +17 -0
  218. package/data/build/dist/shared/attachment-prompts.js.map +1 -0
  219. package/data/build/dist/shared/contracts/cli-adapter.d.ts +8 -1
  220. package/data/build/dist/shared/contracts/cli-adapter.d.ts.map +1 -1
  221. package/data/build/dist/shared/contracts/errors.d.ts +2 -2
  222. package/data/build/dist/shared/contracts/interaction-presentation.d.ts +32 -0
  223. package/data/build/dist/shared/contracts/interaction-presentation.d.ts.map +1 -0
  224. package/data/build/dist/shared/contracts/interaction-presentation.js +2 -0
  225. package/data/build/dist/shared/contracts/interaction-presentation.js.map +1 -0
  226. package/data/build/dist/shared/contracts/interaction-translation.d.ts +53 -0
  227. package/data/build/dist/shared/contracts/interaction-translation.d.ts.map +1 -0
  228. package/data/build/dist/shared/contracts/interaction-translation.js +44 -0
  229. package/data/build/dist/shared/contracts/interaction-translation.js.map +1 -0
  230. package/data/build/dist/shared/contracts/session-translation.d.ts +75 -7
  231. package/data/build/dist/shared/contracts/session-translation.d.ts.map +1 -1
  232. package/data/build/dist/shared/contracts/session-translation.js +132 -2
  233. package/data/build/dist/shared/contracts/session-translation.js.map +1 -1
  234. package/data/build/dist/shared/contracts/version.d.ts +4 -4
  235. package/data/build/dist/shared/contracts/version.js +3 -3
  236. package/data/build/dist/shared/index.d.ts +1 -1
  237. package/data/build/dist/shared/index.d.ts.map +1 -1
  238. package/data/build/dist/shared/index.js +1 -1
  239. package/data/build/dist/shared/index.js.map +1 -1
  240. package/data/build/dist/shared/translation-indicator.d.ts +26 -0
  241. package/data/build/dist/shared/translation-indicator.d.ts.map +1 -0
  242. package/data/build/dist/shared/translation-indicator.js +29 -0
  243. package/data/build/dist/shared/translation-indicator.js.map +1 -0
  244. package/package.json +35 -34
  245. package/profile/README.md +2 -2
  246. package/profile/package.json +3 -3
  247. package/profile/version.json +3 -3
  248. package/version.json +3 -3
@@ -35,8 +35,8 @@ export declare const CODINGNS_DSH_ERROR_CODES: {
35
35
  readonly PEER_HOST_AGGREGATE_UNAVAILABLE: "PEER_HOST_AGGREGATE_UNAVAILABLE";
36
36
  readonly PEER_HOST_STALE_GENERATION: "PEER_HOST_STALE_GENERATION";
37
37
  };
38
- export declare const SUPPORTED_DSH_VERSION: "0.2.1-alpha.2";
39
- export declare const SUPPORTED_DSH_COMPATIBILITY: ">=0.2.0-rc.2 <=0.2.1-alpha.2";
38
+ export declare const SUPPORTED_DSH_VERSION: "0.2.1-alpha.3";
39
+ export declare const SUPPORTED_DSH_COMPATIBILITY: ">=0.2.0-rc.2 <=0.2.1-alpha.3";
40
40
  export type CodingNsDshErrorCode = typeof CODINGNS_DSH_ERROR_CODES[keyof typeof CODINGNS_DSH_ERROR_CODES];
41
41
  /** 统一错误形状;阶段 0 只定义,不主动产生这些业务错误。 */
42
42
  export declare class CodingNsDshError extends Error {
@@ -0,0 +1,32 @@
1
+ import type { InteractionAnswer, TranslatableQuestion } from './interaction-translation.js';
2
+ /** Internal presentation boundary. The owning DSH card retains all transport and wait state. */
3
+ export interface TranslationQuestionCard {
4
+ readonly key: string;
5
+ readonly sessionId: string;
6
+ readonly kind: 'question' | 'plan-review';
7
+ readonly questions: readonly TranslatableQuestion[];
8
+ readonly callId?: string;
9
+ readonly review?: InteractionAnswer['answers'];
10
+ readonly dismissal: 'hide' | 'cancel';
11
+ subscribe(listener: () => void): () => void;
12
+ snapshot(): {
13
+ readonly closed: boolean;
14
+ readonly channel: 'waterfall' | 'rpc' | 'none';
15
+ readonly state: 'open' | 'continued';
16
+ readonly countdown?: {
17
+ readonly remainingMs: number;
18
+ readonly running: boolean;
19
+ } | undefined;
20
+ };
21
+ answer(answer: InteractionAnswer): Promise<void>;
22
+ dismiss(): Promise<void>;
23
+ engage(): void;
24
+ takeTime(): void;
25
+ holdFocus(): void;
26
+ releaseFocus(): void;
27
+ }
28
+ export interface TranslationTodo {
29
+ readonly content: string;
30
+ readonly status: 'pending' | 'in_progress' | 'completed';
31
+ }
32
+ //# sourceMappingURL=interaction-presentation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interaction-presentation.d.ts","sourceRoot":"","sources":["../../../../../src/shared/contracts/interaction-presentation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAA;AAE3F,gGAAgG;AAChG,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,aAAa,CAAA;IACzC,QAAQ,CAAC,SAAS,EAAE,SAAS,oBAAoB,EAAE,CAAA;IACnD,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,iBAAiB,CAAC,SAAS,CAAC,CAAA;IAC9C,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,QAAQ,CAAA;IACrC,SAAS,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAA;IAC3C,QAAQ,IAAI;QACV,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;QACxB,QAAQ,CAAC,OAAO,EAAE,WAAW,GAAG,KAAK,GAAG,MAAM,CAAA;QAC9C,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,CAAA;QACpC,QAAQ,CAAC,SAAS,CAAC,EAAE;YAAE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;YAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;SAAE,GAAG,SAAS,CAAA;KAC7F,CAAA;IACD,MAAM,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAChD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IACxB,MAAM,IAAI,IAAI,CAAA;IACd,QAAQ,IAAI,IAAI,CAAA;IAChB,SAAS,IAAI,IAAI,CAAA;IACjB,YAAY,IAAI,IAAI,CAAA;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,aAAa,GAAG,WAAW,CAAA;CACzD"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=interaction-presentation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interaction-presentation.js","sourceRoot":"","sources":["../../../../../src/shared/contracts/interaction-presentation.ts"],"names":[],"mappings":""}
@@ -0,0 +1,53 @@
1
+ import type { SessionTranslationFailure, SessionTranslationRecord } from './session-translation.js';
2
+ /** Text is translated independently; keys and interaction data never reach the model. */
3
+ export interface InteractionTranslationField {
4
+ readonly key: string;
5
+ readonly text: string;
6
+ }
7
+ export interface InteractionTranslationResult {
8
+ readonly enabled: boolean;
9
+ readonly records: Readonly<Record<string, SessionTranslationRecord>>;
10
+ readonly diagnostics?: Readonly<Record<string, InteractionTranslationDiagnostic>>;
11
+ }
12
+ export interface InteractionTranslationDiagnostic {
13
+ readonly attempts: number;
14
+ readonly queueMs: number;
15
+ readonly executionMs: number;
16
+ readonly phase: 'queue' | 'translation' | 'retry' | 'complete';
17
+ readonly cacheHit: boolean;
18
+ readonly failure?: SessionTranslationFailure;
19
+ }
20
+ export interface TranslatableQuestion {
21
+ readonly id: string;
22
+ readonly question: string;
23
+ readonly header?: string;
24
+ readonly detail?: string;
25
+ readonly options?: readonly {
26
+ readonly label: string;
27
+ readonly description?: string;
28
+ }[];
29
+ readonly multiSelect?: boolean;
30
+ readonly intent?: {
31
+ readonly kind: string;
32
+ readonly approve: string;
33
+ readonly callId?: string;
34
+ };
35
+ }
36
+ export interface InteractionAnswer {
37
+ readonly answers: readonly {
38
+ readonly id: string;
39
+ readonly selected: readonly string[];
40
+ readonly custom?: string;
41
+ }[];
42
+ }
43
+ export declare function questionTranslationFields(questions: readonly TranslatableQuestion[]): InteractionTranslationField[];
44
+ export declare function answerTranslationFields(answer: InteractionAnswer): InteractionTranslationField[];
45
+ /** Only free text changes on submission. Option values and question IDs stay verbatim. */
46
+ export declare function translatedAnswer(answer: InteractionAnswer, result: InteractionTranslationResult): InteractionAnswer;
47
+ export declare function translatedField(result: InteractionTranslationResult | undefined, key: string, original: string): string;
48
+ /** Approval is determined by the original intent, never by translated labels or position. */
49
+ export declare function planApproval(questions: readonly TranslatableQuestion[]): {
50
+ question: TranslatableQuestion;
51
+ option: number;
52
+ } | undefined;
53
+ //# sourceMappingURL=interaction-translation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interaction-translation.d.ts","sourceRoot":"","sources":["../../../../../src/shared/contracts/interaction-translation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAA;AAEnG,yFAAyF;AACzF,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAAC,CAAA;IACpE,QAAQ,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,gCAAgC,CAAC,CAAC,CAAA;CAClF;AAED,MAAM,WAAW,gCAAgC;IAC/C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,aAAa,GAAG,OAAO,GAAG,UAAU,CAAA;IAC9D,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,OAAO,CAAC,EAAE,yBAAyB,CAAA;CAC7C;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IACvF,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAA;IAC9B,QAAQ,CAAC,MAAM,CAAC,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAChG;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,OAAO,EAAE,SAAS;QACzB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;QACnB,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAA;QACpC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KACzB,EAAE,CAAA;CACJ;AAED,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,SAAS,oBAAoB,EAAE,GAAG,2BAA2B,EAAE,CAanH;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,iBAAiB,GAAG,2BAA2B,EAAE,CAIhG;AAED,0FAA0F;AAC1F,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,4BAA4B,GAAG,iBAAiB,CAOnH;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,4BAA4B,GAAG,SAAS,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAGvH;AAED,6FAA6F;AAC7F,wBAAgB,YAAY,CAAC,SAAS,EAAE,SAAS,oBAAoB,EAAE,GAAG;IAAE,QAAQ,EAAE,oBAAoB,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAMvI"}
@@ -0,0 +1,44 @@
1
+ export function questionTranslationFields(questions) {
2
+ const fields = [];
3
+ const add = (key, text) => {
4
+ if (text !== undefined && text.trim() !== '')
5
+ fields.push({ key, text });
6
+ };
7
+ questions.forEach((question, index) => {
8
+ for (const name of ['question', 'header', 'detail'])
9
+ add(`q.${index}.${name}`, question[name]);
10
+ question.options?.forEach((option, optionIndex) => {
11
+ add(`q.${index}.o.${optionIndex}.label`, option.label);
12
+ add(`q.${index}.o.${optionIndex}.description`, option.description);
13
+ });
14
+ });
15
+ return fields;
16
+ }
17
+ export function answerTranslationFields(answer) {
18
+ return answer.answers.flatMap((item, index) => item.custom?.trim()
19
+ ? [{ key: `a.${index}.custom`, text: item.custom }]
20
+ : []);
21
+ }
22
+ /** Only free text changes on submission. Option values and question IDs stay verbatim. */
23
+ export function translatedAnswer(answer, result) {
24
+ return { ...answer, answers: answer.answers.map((item, index) => {
25
+ const record = result.records[`a.${index}.custom`];
26
+ return result.enabled && record !== undefined && record.original === item.custom && !record.failed
27
+ ? { ...item, custom: record.translated }
28
+ : item;
29
+ }) };
30
+ }
31
+ export function translatedField(result, key, original) {
32
+ const record = result?.records[key];
33
+ return result?.enabled && record !== undefined && record.original === original && !record.failed ? record.translated : original;
34
+ }
35
+ /** Approval is determined by the original intent, never by translated labels or position. */
36
+ export function planApproval(questions) {
37
+ const question = questions[0];
38
+ if (questions.length !== 1 || question?.intent?.kind !== 'plan-review' || question.detail === undefined
39
+ || question.multiSelect || (question.options?.length ?? 0) > 2)
40
+ return undefined;
41
+ const option = question.options?.findIndex(item => item.label === question.intent.approve) ?? -1;
42
+ return option < 0 ? undefined : { question, option };
43
+ }
44
+ //# sourceMappingURL=interaction-translation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interaction-translation.js","sourceRoot":"","sources":["../../../../../src/shared/contracts/interaction-translation.ts"],"names":[],"mappings":"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"}
@@ -9,20 +9,67 @@ export interface SessionTranslationModel {
9
9
  }
10
10
  /** 会话翻译中间件的持久化设置。 */
11
11
  export interface SessionTranslationSettings {
12
- /** 用户输入送入外部 Agent 的目的语言。 */
13
- readonly inputLanguage: Exclude<SessionTranslationLanguage, 'zh'>;
12
+ /** Message categories are enabled unless explicitly disabled in older or current settings. */
13
+ readonly inputEnabled?: boolean;
14
+ readonly reasoningEnabled?: boolean;
15
+ readonly assistantEnabled?: boolean;
16
+ /** 用户输入送入 Agent 的目的语言。 */
17
+ readonly inputLanguage: SessionTranslationLanguage;
14
18
  /** 输出翻译语言;默认中文。 */
15
19
  readonly outputLanguage: SessionTranslationLanguage;
16
20
  /** 是否在 UI 和历史回看中同时保留原文与译文。 */
17
21
  readonly bilingual: boolean;
18
22
  /** 翻译模型;缺省时跟随 DSH 当前默认模型。 */
19
23
  readonly translationModel?: SessionTranslationModel;
24
+ /** Models in priority order. An empty pool follows the DSH default; absent pools use the legacy selection. */
25
+ readonly translationModels?: readonly SessionTranslationModel[];
26
+ /** Custom prompt instructions that take precedence over the default translation prompts. */
27
+ readonly translationRules?: readonly string[];
28
+ /**
29
+ * DSH 原生会话是否参与翻译;缺省关闭。
30
+ *
31
+ * 原生会话的回复由 DSH 自己写入 `assistant/message`,开启输出翻译后正文会变成
32
+ * 译文、原文只留在块元数据里,因此不能默认改变既有行为。
33
+ */
34
+ readonly nativeEnabled?: boolean;
20
35
  }
21
36
  export declare const SESSION_TRANSLATION_ADAPTER_IDS: readonly ["command-code", "claude-code", "kimi", "gemini", "pi", "codex", "opencode", "grok", "mcode", "zcode", "codebuddy", "workbuddy", "cursor-cli", "kiro-cli", "qoder", "qoder-cn", "antigravity", "doubao"];
37
+ /** DSH 内置 Agent 的适配器标识;它没有外部驱动,但同样支持会话翻译。 */
38
+ export declare const DSH_NATIVE_SESSION_ADAPTER_ID: "dsh";
39
+ export declare const SESSION_TRANSLATION_LANGUAGES: readonly ["en", "fr", "de", "ja", "zh"];
22
40
  export declare const DEFAULT_SESSION_TRANSLATION_SETTINGS: SessionTranslationSettings;
23
- /** 所有内置外部 Agent 均可在会话模型选择器中开启翻译;DSH 原生 Agent 不在其中。 */
41
+ /**
42
+ * 外部 Agent 适配器判定。
43
+ *
44
+ * 只表示「会话由插件的外部 CLI 驱动接管」,因此 DSH 原生 Agent 不在其中:该判定
45
+ * 还被用来把外部 Agent 的虚拟 Provider 排除在翻译模型目录之外,混入 `dsh` 会污染
46
+ * 这一语义。会话是否可翻译统一使用 {@link supportsSessionTranslation}。
47
+ */
24
48
  export declare function isSessionTranslationAdapter(adapterId: string): boolean;
25
- export interface SessionTranslationRecord {
49
+ /** 外部 Agent 与 DSH 原生 Agent 都支持会话翻译。 */
50
+ export declare function supportsSessionTranslation(adapterId: string): boolean;
51
+ /** 判断任意字符串是否为受支持的翻译语言。 */
52
+ export declare function isSessionTranslationLanguage(value: unknown): value is SessionTranslationLanguage;
53
+ /**
54
+ * 归一化翻译设置:旧设置快照可能缺少 `nativeEnabled`,非法语言回落到默认值。
55
+ *
56
+ * 与 `session-translation-service.ts` 的内部归一化保持同一语义,供客户端设置页在
57
+ * 写入前补齐字段,避免旧快照把新字段写丢。
58
+ */
59
+ export declare function normalizeSessionTranslationSettings(value: SessionTranslationSettings | undefined): SessionTranslationSettings;
60
+ export interface SessionTranslationFailure {
61
+ readonly code: 'timeout' | 'cancelled' | 'rate-limit' | 'network' | 'unavailable' | 'invalid-response' | 'configuration' | 'provider';
62
+ readonly retryable: boolean;
63
+ }
64
+ export interface SessionTranslationMetrics {
65
+ /** Elapsed translation time, including model selection and fallback attempts. */
66
+ readonly durationMs?: number;
67
+ /** Reported token consumption across model attempts, including cached input. */
68
+ readonly totalTokens?: number;
69
+ }
70
+ /** Preserve available metrics while accepting records saved before metrics existed. */
71
+ export declare function readSessionTranslationMetrics(value: unknown): SessionTranslationMetrics;
72
+ export interface SessionTranslationRecord extends SessionTranslationMetrics {
26
73
  readonly original: string;
27
74
  readonly translated: string;
28
75
  readonly sourceLanguage?: SessionTranslationLanguage;
@@ -36,14 +83,23 @@ export interface SessionTranslationRecord {
36
83
  readonly model?: SessionTranslationModel;
37
84
  /** 本次尝试失败并回退原文;前端显示警告状态。 */
38
85
  readonly failed?: boolean;
86
+ /** Structured failure details; absent in older translation records. */
87
+ readonly failure?: SessionTranslationFailure;
88
+ }
89
+ export type SessionTranslationRecoveryChoice = 'retry' | 'send' | 'cancel';
90
+ /** A failed submission remains on the host until the user makes a choice. */
91
+ export interface SessionTranslationPendingInput {
92
+ readonly id: string;
93
+ readonly sessionId: string;
94
+ readonly record: SessionTranslationRecord;
39
95
  }
40
96
  /** 用户输入的原文、实际送出的译文和翻译模型,作为 DSH 历史元数据保存。 */
41
- export interface SessionTranslationInputRecord {
97
+ export interface SessionTranslationInputRecord extends SessionTranslationMetrics {
42
98
  readonly original: string;
43
99
  /** 包含附件提示等不翻译内容的最终 Provider prompt。 */
44
100
  readonly translated: string;
45
101
  readonly sourceLanguage?: SessionTranslationLanguage;
46
- readonly targetLanguage: Exclude<SessionTranslationLanguage, 'zh'>;
102
+ readonly targetLanguage: SessionTranslationLanguage;
47
103
  /** 源语言与目标语言一致,因此未调用翻译模型。 */
48
104
  readonly alreadyTargetLanguage?: boolean;
49
105
  /** 实际执行本次翻译的 DSH 原生模型;旧历史可能没有该字段。 */
@@ -51,8 +107,20 @@ export interface SessionTranslationInputRecord {
51
107
  /** 翻译失败并回退原文;前端显示警告状态。 */
52
108
  readonly failed?: boolean;
53
109
  }
110
+ /**
111
+ * 从 DSH 原生用户消息的 source 元数据读取输入翻译记录。
112
+ *
113
+ * 该字段由 `agent/pre-step` 写入并随 `user/message` 持久化;未知或不完整的历史
114
+ * 结构一律返回 undefined,调用方按「没有翻译」处理。
115
+ */
116
+ export declare function readNativeTranslationRecord(source: unknown): SessionTranslationInputRecord | undefined;
117
+ /** 输入记录转换为详情弹层使用的通用记录;`outputKind` 缺省表示输入方向。 */
118
+ export declare function toSessionTranslationRecord(record: SessionTranslationInputRecord, options?: {
119
+ readonly outputKind?: SessionTranslationOutputKind;
120
+ readonly bilingual?: boolean;
121
+ }): SessionTranslationRecord;
54
122
  /** 外部 Agent 的历史上下文使用实际发送的译文;DSH 用户消息正文保留用户原文。 */
55
123
  export declare function formatSessionTranslationInput(record: SessionTranslationInputRecord): string;
56
- /** DSH 的回复正文只保留译文;详情入口从元数据读取原文和模型。 */
124
+ /** Return the output translation; native DSH history keeps the original and the client reads this record. */
57
125
  export declare function formatSessionTranslationOutput(record: SessionTranslationRecord): string;
58
126
  //# sourceMappingURL=session-translation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"session-translation.d.ts","sourceRoot":"","sources":["../../../../../src/shared/contracts/session-translation.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,MAAM,MAAM,0BAA0B,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;AAEzE,iCAAiC;AACjC,MAAM,MAAM,4BAA4B,GAAG,WAAW,GAAG,WAAW,CAAA;AAEpE,oDAAoD;AACpD,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CACvB;AAED,qBAAqB;AACrB,MAAM,WAAW,0BAA0B;IACzC,4BAA4B;IAC5B,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC,0BAA0B,EAAE,IAAI,CAAC,CAAA;IACjE,mBAAmB;IACnB,QAAQ,CAAC,cAAc,EAAE,0BAA0B,CAAA;IACnD,8BAA8B;IAC9B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAA;IAC3B,6BAA6B;IAC7B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,uBAAuB,CAAA;CACpD;AAED,eAAO,MAAM,+BAA+B,mNAIlC,CAAA;AAEV,eAAO,MAAM,oCAAoC,EAAE,0BAIlD,CAAA;AAED,sDAAsD;AACtD,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAEtE;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,cAAc,CAAC,EAAE,0BAA0B,CAAA;IACpD,QAAQ,CAAC,cAAc,EAAE,0BAA0B,CAAA;IACnD,yCAAyC;IACzC,QAAQ,CAAC,UAAU,CAAC,EAAE,4BAA4B,CAAA;IAClD,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAA;IAC3B,4BAA4B;IAC5B,QAAQ,CAAC,qBAAqB,CAAC,EAAE,OAAO,CAAA;IACxC,qCAAqC;IACrC,QAAQ,CAAC,KAAK,CAAC,EAAE,uBAAuB,CAAA;IACxC,4BAA4B;IAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAC1B;AAED,2CAA2C;AAC3C,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,uCAAuC;IACvC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,cAAc,CAAC,EAAE,0BAA0B,CAAA;IACpD,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC,0BAA0B,EAAE,IAAI,CAAC,CAAA;IAClE,4BAA4B;IAC5B,QAAQ,CAAC,qBAAqB,CAAC,EAAE,OAAO,CAAA;IACxC,qCAAqC;IACrC,QAAQ,CAAC,KAAK,CAAC,EAAE,uBAAuB,CAAA;IACxC,0BAA0B;IAC1B,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAC1B;AAED,iDAAiD;AACjD,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,6BAA6B,GAAG,MAAM,CAE3F;AAED,sCAAsC;AACtC,wBAAgB,8BAA8B,CAAC,MAAM,EAAE,wBAAwB,GAAG,MAAM,CAEvF"}
1
+ {"version":3,"file":"session-translation.d.ts","sourceRoot":"","sources":["../../../../../src/shared/contracts/session-translation.ts"],"names":[],"mappings":"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"}
@@ -3,20 +3,150 @@ export const SESSION_TRANSLATION_ADAPTER_IDS = [
3
3
  'mcode', 'zcode', 'codebuddy', 'workbuddy', 'cursor-cli', 'kiro-cli', 'qoder', 'qoder-cn',
4
4
  'antigravity', 'doubao',
5
5
  ];
6
+ /** DSH 内置 Agent 的适配器标识;它没有外部驱动,但同样支持会话翻译。 */
7
+ export const DSH_NATIVE_SESSION_ADAPTER_ID = 'dsh';
8
+ export const SESSION_TRANSLATION_LANGUAGES = ['en', 'fr', 'de', 'ja', 'zh'];
6
9
  export const DEFAULT_SESSION_TRANSLATION_SETTINGS = {
10
+ inputEnabled: true,
11
+ reasoningEnabled: true,
12
+ assistantEnabled: true,
7
13
  inputLanguage: 'en',
8
14
  outputLanguage: 'zh',
9
15
  bilingual: false,
16
+ nativeEnabled: false,
10
17
  };
11
- /** 所有内置外部 Agent 均可在会话模型选择器中开启翻译;DSH 原生 Agent 不在其中。 */
18
+ /**
19
+ * 外部 Agent 适配器判定。
20
+ *
21
+ * 只表示「会话由插件的外部 CLI 驱动接管」,因此 DSH 原生 Agent 不在其中:该判定
22
+ * 还被用来把外部 Agent 的虚拟 Provider 排除在翻译模型目录之外,混入 `dsh` 会污染
23
+ * 这一语义。会话是否可翻译统一使用 {@link supportsSessionTranslation}。
24
+ */
12
25
  export function isSessionTranslationAdapter(adapterId) {
13
26
  return SESSION_TRANSLATION_ADAPTER_IDS.includes(adapterId);
14
27
  }
28
+ /** 外部 Agent 与 DSH 原生 Agent 都支持会话翻译。 */
29
+ export function supportsSessionTranslation(adapterId) {
30
+ return adapterId === DSH_NATIVE_SESSION_ADAPTER_ID || isSessionTranslationAdapter(adapterId);
31
+ }
32
+ /** 判断任意字符串是否为受支持的翻译语言。 */
33
+ export function isSessionTranslationLanguage(value) {
34
+ return typeof value === 'string' && SESSION_TRANSLATION_LANGUAGES.includes(value);
35
+ }
36
+ /**
37
+ * 归一化翻译设置:旧设置快照可能缺少 `nativeEnabled`,非法语言回落到默认值。
38
+ *
39
+ * 与 `session-translation-service.ts` 的内部归一化保持同一语义,供客户端设置页在
40
+ * 写入前补齐字段,避免旧快照把新字段写丢。
41
+ */
42
+ export function normalizeSessionTranslationSettings(value) {
43
+ const fallback = DEFAULT_SESSION_TRANSLATION_SETTINGS;
44
+ if (value === undefined)
45
+ return fallback;
46
+ const translationModel = normalizeTranslationModel(value.translationModel);
47
+ const translationModels = Array.isArray(value.translationModels) ? normalizeTranslationModels(value.translationModels) : undefined;
48
+ const translationRules = Array.isArray(value.translationRules)
49
+ ? value.translationRules.filter((rule) => typeof rule === 'string').map((rule) => rule.trim()).filter((rule) => rule !== '')
50
+ : undefined;
51
+ return {
52
+ inputEnabled: value.inputEnabled !== false,
53
+ reasoningEnabled: value.reasoningEnabled !== false,
54
+ assistantEnabled: value.assistantEnabled !== false,
55
+ inputLanguage: isSessionTranslationLanguage(value.inputLanguage) ? value.inputLanguage : fallback.inputLanguage,
56
+ outputLanguage: isSessionTranslationLanguage(value.outputLanguage) ? value.outputLanguage : fallback.outputLanguage,
57
+ bilingual: value.bilingual === true,
58
+ nativeEnabled: value.nativeEnabled === true,
59
+ ...(translationModel === undefined ? {} : { translationModel }),
60
+ ...(translationModels === undefined ? {} : { translationModels }),
61
+ ...(translationRules === undefined ? {} : { translationRules }),
62
+ };
63
+ }
64
+ function normalizeTranslationModels(values) {
65
+ const models = [];
66
+ const seen = new Set();
67
+ for (const value of values) {
68
+ const model = normalizeTranslationModel(value);
69
+ if (model === undefined)
70
+ continue;
71
+ const key = JSON.stringify([model.provider, model.model]);
72
+ if (seen.has(key))
73
+ continue;
74
+ seen.add(key);
75
+ models.push(model);
76
+ }
77
+ return models;
78
+ }
79
+ function normalizeTranslationModel(value) {
80
+ if (value === undefined || value === null || typeof value.provider !== 'string' || typeof value.model !== 'string')
81
+ return undefined;
82
+ const provider = value.provider.trim();
83
+ const model = value.model.trim();
84
+ return provider === '' || model === '' ? undefined : { provider, model };
85
+ }
86
+ /** Preserve available metrics while accepting records saved before metrics existed. */
87
+ export function readSessionTranslationMetrics(value) {
88
+ const record = asRecord(value);
89
+ const durationMs = record?.durationMs;
90
+ const totalTokens = record?.totalTokens;
91
+ return {
92
+ ...(typeof durationMs === 'number' && Number.isFinite(durationMs) && durationMs >= 0 ? { durationMs } : {}),
93
+ ...(typeof totalTokens === 'number' && Number.isSafeInteger(totalTokens) && totalTokens >= 0 ? { totalTokens } : {}),
94
+ };
95
+ }
96
+ /**
97
+ * 从 DSH 原生用户消息的 source 元数据读取输入翻译记录。
98
+ *
99
+ * 该字段由 `agent/pre-step` 写入并随 `user/message` 持久化;未知或不完整的历史
100
+ * 结构一律返回 undefined,调用方按「没有翻译」处理。
101
+ */
102
+ export function readNativeTranslationRecord(source) {
103
+ const record = asRecord(source);
104
+ const candidate = asRecord(record?.codingnsTranslationInput);
105
+ if (candidate === null)
106
+ return undefined;
107
+ if (typeof candidate.original !== 'string' || typeof candidate.translated !== 'string')
108
+ return undefined;
109
+ if (candidate.original.trim() === '' || candidate.translated.trim() === '')
110
+ return undefined;
111
+ const targetLanguage = isSessionTranslationLanguage(candidate.targetLanguage) ? candidate.targetLanguage : undefined;
112
+ if (targetLanguage === undefined)
113
+ return undefined;
114
+ const model = normalizeTranslationModel(asRecord(candidate.model));
115
+ const sourceLanguage = isSessionTranslationLanguage(candidate.sourceLanguage) ? candidate.sourceLanguage : undefined;
116
+ return {
117
+ original: candidate.original,
118
+ translated: candidate.translated,
119
+ targetLanguage,
120
+ ...(sourceLanguage === undefined ? {} : { sourceLanguage }),
121
+ ...(candidate.alreadyTargetLanguage === true ? { alreadyTargetLanguage: true } : {}),
122
+ ...(candidate.failed === true ? { failed: true } : {}),
123
+ ...(model === undefined ? {} : { model }),
124
+ ...readSessionTranslationMetrics(candidate),
125
+ };
126
+ }
127
+ /** 输入记录转换为详情弹层使用的通用记录;`outputKind` 缺省表示输入方向。 */
128
+ export function toSessionTranslationRecord(record, options = {}) {
129
+ return {
130
+ original: record.original,
131
+ translated: record.translated,
132
+ targetLanguage: record.targetLanguage,
133
+ bilingual: options.bilingual === true,
134
+ ...(options.outputKind === undefined ? {} : { outputKind: options.outputKind }),
135
+ ...(record.sourceLanguage === undefined ? {} : { sourceLanguage: record.sourceLanguage }),
136
+ ...(record.alreadyTargetLanguage === true ? { alreadyTargetLanguage: true } : {}),
137
+ ...(record.failed === true ? { failed: true } : {}),
138
+ ...(record.model === undefined ? {} : { model: record.model }),
139
+ ...readSessionTranslationMetrics(record),
140
+ };
141
+ }
142
+ function asRecord(value) {
143
+ return typeof value === 'object' && value !== null && !Array.isArray(value) ? value : null;
144
+ }
15
145
  /** 外部 Agent 的历史上下文使用实际发送的译文;DSH 用户消息正文保留用户原文。 */
16
146
  export function formatSessionTranslationInput(record) {
17
147
  return record.translated;
18
148
  }
19
- /** DSH 的回复正文只保留译文;详情入口从元数据读取原文和模型。 */
149
+ /** Return the output translation; native DSH history keeps the original and the client reads this record. */
20
150
  export function formatSessionTranslationOutput(record) {
21
151
  return record.translated;
22
152
  }
@@ -1 +1 @@
1
- {"version":3,"file":"session-translation.js","sourceRoot":"","sources":["../../../../../src/shared/contracts/session-translation.ts"],"names":[],"mappings":"AAwBA,MAAM,CAAC,MAAM,+BAA+B,GAAG;IAC7C,cAAc,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM;IAClF,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU;IACzF,aAAa,EAAE,QAAQ;CACf,CAAA;AAEV,MAAM,CAAC,MAAM,oCAAoC,GAA+B;IAC9E,aAAa,EAAE,IAAI;IACnB,cAAc,EAAE,IAAI;IACpB,SAAS,EAAE,KAAK;CACjB,CAAA;AAED,sDAAsD;AACtD,MAAM,UAAU,2BAA2B,CAAC,SAAiB;IAC3D,OAAQ,+BAAqD,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;AACnF,CAAC;AAiCD,iDAAiD;AACjD,MAAM,UAAU,6BAA6B,CAAC,MAAqC;IACjF,OAAO,MAAM,CAAC,UAAU,CAAA;AAC1B,CAAC;AAED,sCAAsC;AACtC,MAAM,UAAU,8BAA8B,CAAC,MAAgC;IAC7E,OAAO,MAAM,CAAC,UAAU,CAAA;AAC1B,CAAC"}
1
+ {"version":3,"file":"session-translation.js","sourceRoot":"","sources":["../../../../../src/shared/contracts/session-translation.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  /** 当前经过完整验证的 DSH 版本;源文件由根目录 version.json 同步。 */
2
- export declare const DSH_VERSION: "0.2.1-alpha.2";
2
+ export declare const DSH_VERSION: "0.2.1-alpha.3";
3
3
  /** DSH 测试版本别名,供新代码表达语义,保留 DSH_VERSION 兼容旧调用方。 */
4
- export declare const DSH_TESTED_VERSION: "0.2.1-alpha.2";
4
+ export declare const DSH_TESTED_VERSION: "0.2.1-alpha.3";
5
5
  /**
6
6
  * 插件正式验证的 DSH 版本范围,覆盖 rc.2 到当前验证的 alpha.2。
7
7
  *
@@ -14,7 +14,7 @@ export declare const DSH_TESTED_VERSION: "0.2.1-alpha.2";
14
14
  * 这里保留明确上界,是为了让 npm/DSH 安装期也能识别 0.2.1-alpha.2 这个跨 patch
15
15
  * 预发布版本;出现新的 API 世代或结构变化时,应重新验证并更新范围与能力路由。
16
16
  */
17
- export declare const DSH_COMPATIBILITY: ">=0.2.0-rc.2 <=0.2.1-alpha.2";
17
+ export declare const DSH_COMPATIBILITY: ">=0.2.0-rc.2 <=0.2.1-alpha.3";
18
18
  /**
19
19
  * 兼容范围下界,即插件仍然接受的最低 DSH 版本。
20
20
  *
@@ -30,7 +30,7 @@ export declare const CODINGNS_DSH_VERSION_GLOBAL: "__CODINGNS_DSH_VERSION__";
30
30
  /** 识别没有 alpha2 Sidebar 扩展 API 的 DSH 旧版运行时。 */
31
31
  export declare function isLegacyDshVersion(version: string): boolean;
32
32
  /** Codingns4DSH 插件自身的 npm 版本。 */
33
- export declare const CODINGNS_VERSION: "0.2.1-beta.10";
33
+ export declare const CODINGNS_VERSION: "0.2.1-beta.12";
34
34
  /** 判断宿主版本是否落在当前插件声明的 DSH 兼容范围内;范围省略上界时不校验上限。 */
35
35
  export declare function isDshVersionCompatible(version: string): boolean;
36
36
  /** 判断 DSH 版本是否达到某个功能模块要求的最低版本。 */
@@ -1,5 +1,5 @@
1
1
  /** 当前经过完整验证的 DSH 版本;源文件由根目录 version.json 同步。 */
2
- export const DSH_VERSION = '0.2.1-alpha.2';
2
+ export const DSH_VERSION = '0.2.1-alpha.3';
3
3
  /** DSH 测试版本别名,供新代码表达语义,保留 DSH_VERSION 兼容旧调用方。 */
4
4
  export const DSH_TESTED_VERSION = DSH_VERSION;
5
5
  /**
@@ -14,7 +14,7 @@ export const DSH_TESTED_VERSION = DSH_VERSION;
14
14
  * 这里保留明确上界,是为了让 npm/DSH 安装期也能识别 0.2.1-alpha.2 这个跨 patch
15
15
  * 预发布版本;出现新的 API 世代或结构变化时,应重新验证并更新范围与能力路由。
16
16
  */
17
- export const DSH_COMPATIBILITY = '>=0.2.0-rc.2 <=0.2.1-alpha.2';
17
+ export const DSH_COMPATIBILITY = '>=0.2.0-rc.2 <=0.2.1-alpha.3';
18
18
  /**
19
19
  * 兼容范围下界,即插件仍然接受的最低 DSH 版本。
20
20
  *
@@ -35,7 +35,7 @@ export function isLegacyDshVersion(version) {
35
35
  return /^0\.1\.5(?:-|$)/u.test(version);
36
36
  }
37
37
  /** Codingns4DSH 插件自身的 npm 版本。 */
38
- export const CODINGNS_VERSION = '0.2.1-beta.10';
38
+ export const CODINGNS_VERSION = '0.2.1-beta.12';
39
39
  /** 判断宿主版本是否落在当前插件声明的 DSH 兼容范围内;范围省略上界时不校验上限。 */
40
40
  export function isDshVersionCompatible(version) {
41
41
  const match = /^>=([^ ]+)(?: <=([^ ]+))?$/u.exec(DSH_COMPATIBILITY);
@@ -1,5 +1,5 @@
1
1
  export { CODINGNS_CONTROL_BASE_URL_FIELD, CODINGNS_CONTROL_BASE_URLS_FIELD, CODINGNS_CONTROL_STATION_URL, CODINGNS_H5_LOGIN_URL, CODINGNS_LAN_ACCESS_DSH_FIELD, CODINGNS_TERMINAL_ENHANCEMENT_FIELD, CODINGNS_WORKSPACE_SESSION_ENHANCEMENT_FIELD, CODINGNS_FILE_MANAGEMENT_FIELD, CODINGNS_MOBILE_ACCESS_FIELD, CODINGNS_SUBSCRIPTION_USAGE_FIELD, CODINGNS_SESSION_TRANSLATION_FIELD, CODINGNS_ASSISTANT_FIELD, CODINGNS_MODULES_FIELD, CODINGNS_SETTINGS_NAMESPACE, CODINGNS_SETTINGS_ENTRY_IDS, DEFAULT_CODINGNS_CONTROL_BASE_URL, DEFAULT_CODINGNS_CONTROL_BASE_URLS, DEFAULT_CODINGNS_SETTINGS, DEFAULT_ASSISTANT_SETTINGS, DEFAULT_ASSISTANT_VOICE_SETTINGS, DEFAULT_QUICK_PHRASES, DEFAULT_TERMINAL_ENHANCEMENT_SETTINGS, DEFAULT_WORKSPACE_SESSION_ENHANCEMENT_SETTINGS, DEFAULT_FILE_MANAGEMENT_SETTINGS, DEFAULT_MOBILE_ACCESS_SETTINGS, DEFAULT_SIDEBAR_GESTURE_SETTINGS, SIDEBAR_GESTURE_DISTANCE_PERCENT_LIMITS, DEFAULT_SIDEBAR_GESTURE_DISTANCE_PERCENT, MOBILE_VIEWPORT_MAX_PX_LIMITS, normalizeMobileAccessSettings, normalizeSidebarGestureSettings, DEFAULT_SUBSCRIPTION_USAGE_SETTINGS, DEFAULT_LAN_ACCESS_DSH_PWA_SETTINGS, normalizeLanAccessDshPwaSettings, SUBSCRIPTION_USAGE_REFRESH_INTERVAL_MINS_LIMITS, SUBSCRIPTION_USAGE_TIMEOUT_SECS_LIMITS, normalizeSubscriptionUsageSettings, captureRestartFeatureStates, enabledFeatureNames, isFeatureDshVersionCompatible, isFeatureEnabled, isCodingNsSettingsEntryId, type CodingNsSettings, type CodingNsConfig, type CodingNsRuntimeState, type CodingNsCliAdapterPreference, type LanAccessDshSettings, type LanAccessDshLoginSettings, type LoginProtectionScopes, type RestartFeatureStates, type TerminalAppearanceSettings, type TerminalAppearanceTheme, type TerminalBindingScope, type TerminalCursorStyle, type TerminalEnhancementSettings, type TerminalProfileId, type QuickPhrase, type WorkspaceSessionEnhancementSettings, type FileManagementSettings, type MobileAccessSettings, type SidebarGestureSettings, type SidebarGestureSettingsInput, type SubscriptionUsageSettings, type AssistantSettings, type AssistantProfileSettings, type AssistantVoiceProvider, type AssistantVoiceSettings, } from './contracts/config.js';
2
- export { DEFAULT_SESSION_TRANSLATION_SETTINGS, SESSION_TRANSLATION_ADAPTER_IDS, formatSessionTranslationInput, formatSessionTranslationOutput, isSessionTranslationAdapter, type SessionTranslationLanguage, type SessionTranslationInputRecord, type SessionTranslationModel, type SessionTranslationOutputKind, type SessionTranslationRecord, type SessionTranslationSettings, } from './contracts/session-translation.js';
2
+ export { DEFAULT_SESSION_TRANSLATION_SETTINGS, DSH_NATIVE_SESSION_ADAPTER_ID, SESSION_TRANSLATION_ADAPTER_IDS, SESSION_TRANSLATION_LANGUAGES, formatSessionTranslationInput, formatSessionTranslationOutput, isSessionTranslationAdapter, isSessionTranslationLanguage, normalizeSessionTranslationSettings, readNativeTranslationRecord, supportsSessionTranslation, toSessionTranslationRecord, type SessionTranslationLanguage, type SessionTranslationInputRecord, type SessionTranslationModel, type SessionTranslationOutputKind, type SessionTranslationRecord, type SessionTranslationSettings, } from './contracts/session-translation.js';
3
3
  export { DEFAULT_ASSISTANT_NAME, DEFAULT_ASSISTANT_PERSONALITY, ASSISTANT_PERSONALITY_MAX_CHARS, assistantWorkspaceMatches, readAssistantProfile, readAssistantPersonality, validateAssistantProfile, validateAssistantModel, validateAssistantPersonality } from './assistant-lifecycle.js';
4
4
  export type { AssistantConversationMessage, AssistantConversationSnapshot, AssistantLifecycleSnapshot } from './contracts/assistant.js';
5
5
  export type { FeatureContext, FeatureActivation, FeatureDescriptor, FeatureCapabilityRequirement, FeatureDisposer, FeatureModule, FeatureResourceScope, FeatureRuntime, FeatureState, FeatureUiDescriptor, } from './contracts/feature.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/shared/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/shared/index.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  export { CODINGNS_CONTROL_BASE_URL_FIELD, CODINGNS_CONTROL_BASE_URLS_FIELD, CODINGNS_CONTROL_STATION_URL, CODINGNS_H5_LOGIN_URL, CODINGNS_LAN_ACCESS_DSH_FIELD, CODINGNS_TERMINAL_ENHANCEMENT_FIELD, CODINGNS_WORKSPACE_SESSION_ENHANCEMENT_FIELD, CODINGNS_FILE_MANAGEMENT_FIELD, CODINGNS_MOBILE_ACCESS_FIELD, CODINGNS_SUBSCRIPTION_USAGE_FIELD, CODINGNS_SESSION_TRANSLATION_FIELD, CODINGNS_ASSISTANT_FIELD, CODINGNS_MODULES_FIELD, CODINGNS_SETTINGS_NAMESPACE, CODINGNS_SETTINGS_ENTRY_IDS, DEFAULT_CODINGNS_CONTROL_BASE_URL, DEFAULT_CODINGNS_CONTROL_BASE_URLS, DEFAULT_CODINGNS_SETTINGS, DEFAULT_ASSISTANT_SETTINGS, DEFAULT_ASSISTANT_VOICE_SETTINGS, DEFAULT_QUICK_PHRASES, DEFAULT_TERMINAL_ENHANCEMENT_SETTINGS, DEFAULT_WORKSPACE_SESSION_ENHANCEMENT_SETTINGS, DEFAULT_FILE_MANAGEMENT_SETTINGS, DEFAULT_MOBILE_ACCESS_SETTINGS, DEFAULT_SIDEBAR_GESTURE_SETTINGS, SIDEBAR_GESTURE_DISTANCE_PERCENT_LIMITS, DEFAULT_SIDEBAR_GESTURE_DISTANCE_PERCENT, MOBILE_VIEWPORT_MAX_PX_LIMITS, normalizeMobileAccessSettings, normalizeSidebarGestureSettings, DEFAULT_SUBSCRIPTION_USAGE_SETTINGS, DEFAULT_LAN_ACCESS_DSH_PWA_SETTINGS, normalizeLanAccessDshPwaSettings, SUBSCRIPTION_USAGE_REFRESH_INTERVAL_MINS_LIMITS, SUBSCRIPTION_USAGE_TIMEOUT_SECS_LIMITS, normalizeSubscriptionUsageSettings, captureRestartFeatureStates, enabledFeatureNames, isFeatureDshVersionCompatible, isFeatureEnabled, isCodingNsSettingsEntryId, } from './contracts/config.js';
2
- export { DEFAULT_SESSION_TRANSLATION_SETTINGS, SESSION_TRANSLATION_ADAPTER_IDS, formatSessionTranslationInput, formatSessionTranslationOutput, isSessionTranslationAdapter, } from './contracts/session-translation.js';
2
+ export { DEFAULT_SESSION_TRANSLATION_SETTINGS, DSH_NATIVE_SESSION_ADAPTER_ID, SESSION_TRANSLATION_ADAPTER_IDS, SESSION_TRANSLATION_LANGUAGES, formatSessionTranslationInput, formatSessionTranslationOutput, isSessionTranslationAdapter, isSessionTranslationLanguage, normalizeSessionTranslationSettings, readNativeTranslationRecord, supportsSessionTranslation, toSessionTranslationRecord, } from './contracts/session-translation.js';
3
3
  export { DEFAULT_ASSISTANT_NAME, DEFAULT_ASSISTANT_PERSONALITY, ASSISTANT_PERSONALITY_MAX_CHARS, assistantWorkspaceMatches, readAssistantProfile, readAssistantPersonality, validateAssistantProfile, validateAssistantModel, validateAssistantPersonality } from './assistant-lifecycle.js';
4
4
  export { CODINGNS_DSH_ERROR_CODES, CodingNsDshError, SUPPORTED_DSH_COMPATIBILITY, SUPPORTED_DSH_VERSION, assertSupportedDshVersion, } from './contracts/errors.js';
5
5
  export { CODINGNS_VERSION, DSH_COMPATIBILITY, DSH_PROTOCOL_VERSION, CODINGNS_DSH_VERSION_GLOBAL, DSH_TESTED_VERSION, DSH_VERSION, isDshVersionAtLeast, isLegacyDshVersion, isDshVersionCompatible, minimumSupportedDshVersion, } from './contracts/version.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/shared/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/shared/index.ts"],"names":[],"mappings":"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"}