@jingyi0605/codingns4dsh 0.2.1-beta.2 → 0.2.1-beta.4

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 (888) hide show
  1. package/README.en.md +8 -8
  2. package/README.md +103 -14
  3. package/THIRD_PARTY_NOTICES +141 -0
  4. package/assets/assistant-basics/female-v1.png +0 -0
  5. package/assets/assistant-basics/male-v1.png +0 -0
  6. package/assets/desktop-assistant/20261008-WebView2/345/210/206/345/217/221/350/257/264/346/230/216.md +14 -0
  7. package/assets/desktop-assistant/webview2/LICENSE.txt +27 -0
  8. package/assets/desktop-assistant/webview2/Microsoft.Web.WebView2.Core.dll +0 -0
  9. package/assets/desktop-assistant/webview2/Microsoft.Web.WebView2.Wpf.dll +0 -0
  10. package/assets/desktop-assistant/webview2/NOTICE.txt +85 -0
  11. package/assets/desktop-assistant/webview2/arm64/WebView2Loader.dll +0 -0
  12. package/assets/desktop-assistant/webview2/x64/WebView2Loader.dll +0 -0
  13. package/assets/desktop-assistant/webview2/x86/WebView2Loader.dll +0 -0
  14. package/assets/moss/LICENSE +201 -0
  15. package/assets/moss/ort_cpu_runtime.py +839 -0
  16. package/assets/moss/worker.py +278 -0
  17. package/assets/voice/bilingual-zh-en-bpe.vocab +500 -0
  18. package/avatar-packages/catalog.json +259 -0
  19. package/avatar-packages/manifests/bubu-codebrew-bear.avatar.json +13 -0
  20. package/avatar-packages/manifests/ds-whale-live2d.avatar.json +27 -0
  21. package/avatar-packages/manifests/ds-whale-sprite.avatar.json +13 -0
  22. package/avatar-packages/manifests/live2d-haru.avatar.json +13 -0
  23. package/avatar-packages/manifests/live2d-hiyori.avatar.json +13 -0
  24. package/avatar-packages/manifests/live2d-mao.avatar.json +13 -0
  25. package/avatar-packages/manifests/live2d-mark.avatar.json +13 -0
  26. package/avatar-packages/manifests/live2d-rice.avatar.json +13 -0
  27. package/avatar-packages/manifests/live2d-wanko.avatar.json +13 -0
  28. package/avatar-packages/manifests/nastya.avatar.json +13 -0
  29. package/avatar-packages/manifests/scout-corgi.avatar.json +13 -0
  30. package/avatar-packages/manifests/xiaoman.avatar.json +13 -0
  31. package/data/build/dist/client/assistant-settings-styles.d.ts +7 -0
  32. package/data/build/dist/client/assistant-settings-styles.d.ts.map +1 -0
  33. package/data/build/dist/client/assistant-settings-styles.js +6 -0
  34. package/data/build/dist/client/assistant-settings-styles.js.map +1 -0
  35. package/data/build/dist/client/avatar/builtin.d.ts +5 -0
  36. package/data/build/dist/client/avatar/builtin.d.ts.map +1 -0
  37. package/data/build/dist/client/avatar/builtin.js +9 -0
  38. package/data/build/dist/client/avatar/builtin.js.map +1 -0
  39. package/data/build/dist/client/avatar/cache-status.d.ts +4 -0
  40. package/data/build/dist/client/avatar/cache-status.d.ts.map +1 -0
  41. package/data/build/dist/client/avatar/cache-status.js +40 -0
  42. package/data/build/dist/client/avatar/cache-status.js.map +1 -0
  43. package/data/build/dist/client/avatar/catalog-panel.d.ts +49 -0
  44. package/data/build/dist/client/avatar/catalog-panel.d.ts.map +1 -0
  45. package/data/build/dist/client/avatar/catalog-panel.js +245 -0
  46. package/data/build/dist/client/avatar/catalog-panel.js.map +1 -0
  47. package/data/build/dist/client/avatar/catalog-picker.d.ts +38 -0
  48. package/data/build/dist/client/avatar/catalog-picker.d.ts.map +1 -0
  49. package/data/build/dist/client/avatar/catalog-picker.js +65 -0
  50. package/data/build/dist/client/avatar/catalog-picker.js.map +1 -0
  51. package/data/build/dist/client/avatar/desktop-bridge.d.ts +21 -0
  52. package/data/build/dist/client/avatar/desktop-bridge.d.ts.map +1 -0
  53. package/data/build/dist/client/avatar/desktop-bridge.js +109 -0
  54. package/data/build/dist/client/avatar/desktop-bridge.js.map +1 -0
  55. package/data/build/dist/client/avatar/desktop-entry.d.ts +2 -0
  56. package/data/build/dist/client/avatar/desktop-entry.d.ts.map +1 -0
  57. package/data/build/dist/client/avatar/desktop-entry.js +34 -0
  58. package/data/build/dist/client/avatar/desktop-entry.js.map +1 -0
  59. package/data/build/dist/client/avatar/desktop-view.d.ts +23 -0
  60. package/data/build/dist/client/avatar/desktop-view.d.ts.map +1 -0
  61. package/data/build/dist/client/avatar/desktop-view.js +72 -0
  62. package/data/build/dist/client/avatar/desktop-view.js.map +1 -0
  63. package/data/build/dist/client/avatar/engine.d.ts +45 -0
  64. package/data/build/dist/client/avatar/engine.d.ts.map +1 -0
  65. package/data/build/dist/client/avatar/engine.js +165 -0
  66. package/data/build/dist/client/avatar/engine.js.map +1 -0
  67. package/data/build/dist/client/avatar/floating.d.ts +20 -0
  68. package/data/build/dist/client/avatar/floating.d.ts.map +1 -0
  69. package/data/build/dist/client/avatar/floating.js +99 -0
  70. package/data/build/dist/client/avatar/floating.js.map +1 -0
  71. package/data/build/dist/client/avatar/image.d.ts +5 -0
  72. package/data/build/dist/client/avatar/image.d.ts.map +1 -0
  73. package/data/build/dist/client/avatar/image.js +22 -0
  74. package/data/build/dist/client/avatar/image.js.map +1 -0
  75. package/data/build/dist/client/avatar/live2d.d.ts +65 -0
  76. package/data/build/dist/client/avatar/live2d.d.ts.map +1 -0
  77. package/data/build/dist/client/avatar/live2d.js +278 -0
  78. package/data/build/dist/client/avatar/live2d.js.map +1 -0
  79. package/data/build/dist/client/avatar/loading.d.ts +27 -0
  80. package/data/build/dist/client/avatar/loading.d.ts.map +1 -0
  81. package/data/build/dist/client/avatar/loading.js +74 -0
  82. package/data/build/dist/client/avatar/loading.js.map +1 -0
  83. package/data/build/dist/client/avatar/manager.d.ts +71 -0
  84. package/data/build/dist/client/avatar/manager.d.ts.map +1 -0
  85. package/data/build/dist/client/avatar/manager.js +321 -0
  86. package/data/build/dist/client/avatar/manager.js.map +1 -0
  87. package/data/build/dist/client/avatar/portrait-capture.d.ts +30 -0
  88. package/data/build/dist/client/avatar/portrait-capture.d.ts.map +1 -0
  89. package/data/build/dist/client/avatar/portrait-capture.js +233 -0
  90. package/data/build/dist/client/avatar/portrait-capture.js.map +1 -0
  91. package/data/build/dist/client/avatar/portrait-editor.d.ts +14 -0
  92. package/data/build/dist/client/avatar/portrait-editor.d.ts.map +1 -0
  93. package/data/build/dist/client/avatar/portrait-editor.js +105 -0
  94. package/data/build/dist/client/avatar/portrait-editor.js.map +1 -0
  95. package/data/build/dist/client/avatar/portrait-service.d.ts +51 -0
  96. package/data/build/dist/client/avatar/portrait-service.d.ts.map +1 -0
  97. package/data/build/dist/client/avatar/portrait-service.js +244 -0
  98. package/data/build/dist/client/avatar/portrait-service.js.map +1 -0
  99. package/data/build/dist/client/avatar/portrait.d.ts +28 -0
  100. package/data/build/dist/client/avatar/portrait.d.ts.map +1 -0
  101. package/data/build/dist/client/avatar/portrait.js +56 -0
  102. package/data/build/dist/client/avatar/portrait.js.map +1 -0
  103. package/data/build/dist/client/avatar/preview-capture.d.ts +4 -0
  104. package/data/build/dist/client/avatar/preview-capture.d.ts.map +1 -0
  105. package/data/build/dist/client/avatar/preview-capture.js +100 -0
  106. package/data/build/dist/client/avatar/preview-capture.js.map +1 -0
  107. package/data/build/dist/client/avatar/preview-store.d.ts +41 -0
  108. package/data/build/dist/client/avatar/preview-store.d.ts.map +1 -0
  109. package/data/build/dist/client/avatar/preview-store.js +171 -0
  110. package/data/build/dist/client/avatar/preview-store.js.map +1 -0
  111. package/data/build/dist/client/avatar/preview.d.ts +14 -0
  112. package/data/build/dist/client/avatar/preview.d.ts.map +1 -0
  113. package/data/build/dist/client/avatar/preview.js +56 -0
  114. package/data/build/dist/client/avatar/preview.js.map +1 -0
  115. package/data/build/dist/client/avatar/registration.d.ts +2 -0
  116. package/data/build/dist/client/avatar/registration.d.ts.map +1 -0
  117. package/data/build/dist/client/avatar/registration.js +2 -0
  118. package/data/build/dist/client/avatar/registration.js.map +1 -0
  119. package/data/build/dist/client/avatar/registry.d.ts +45 -0
  120. package/data/build/dist/client/avatar/registry.d.ts.map +1 -0
  121. package/data/build/dist/client/avatar/registry.js +34 -0
  122. package/data/build/dist/client/avatar/registry.js.map +1 -0
  123. package/data/build/dist/client/avatar/settings-panel.d.ts +21 -0
  124. package/data/build/dist/client/avatar/settings-panel.d.ts.map +1 -0
  125. package/data/build/dist/client/avatar/settings-panel.js +169 -0
  126. package/data/build/dist/client/avatar/settings-panel.js.map +1 -0
  127. package/data/build/dist/client/avatar/slot.d.ts +17 -0
  128. package/data/build/dist/client/avatar/slot.d.ts.map +1 -0
  129. package/data/build/dist/client/avatar/slot.js +70 -0
  130. package/data/build/dist/client/avatar/slot.js.map +1 -0
  131. package/data/build/dist/client/avatar/spritesheet.d.ts +19 -0
  132. package/data/build/dist/client/avatar/spritesheet.d.ts.map +1 -0
  133. package/data/build/dist/client/avatar/spritesheet.js +91 -0
  134. package/data/build/dist/client/avatar/spritesheet.js.map +1 -0
  135. package/data/build/dist/client/avatar/temporary-preview.d.ts +25 -0
  136. package/data/build/dist/client/avatar/temporary-preview.d.ts.map +1 -0
  137. package/data/build/dist/client/avatar/temporary-preview.js +61 -0
  138. package/data/build/dist/client/avatar/temporary-preview.js.map +1 -0
  139. package/data/build/dist/client/bundle.js +25066 -2837
  140. package/data/build/dist/client/bundle.js.map +1 -1
  141. package/data/build/dist/client/cli-slots.d.ts.map +1 -1
  142. package/data/build/dist/client/cli-slots.js +9 -9
  143. package/data/build/dist/client/cli-slots.js.map +1 -1
  144. package/data/build/dist/client/desktop-assistant.js +8585 -0
  145. package/data/build/dist/client/features/assistant-composer-input.d.ts +10 -0
  146. package/data/build/dist/client/features/assistant-composer-input.d.ts.map +1 -0
  147. package/data/build/dist/client/features/assistant-composer-input.js +40 -0
  148. package/data/build/dist/client/features/assistant-composer-input.js.map +1 -0
  149. package/data/build/dist/client/features/assistant-configuration-session.d.ts +45 -0
  150. package/data/build/dist/client/features/assistant-configuration-session.d.ts.map +1 -0
  151. package/data/build/dist/client/features/assistant-configuration-session.js +252 -0
  152. package/data/build/dist/client/features/assistant-configuration-session.js.map +1 -0
  153. package/data/build/dist/client/features/assistant-configuration-tabs.d.ts +34 -0
  154. package/data/build/dist/client/features/assistant-configuration-tabs.d.ts.map +1 -0
  155. package/data/build/dist/client/features/assistant-configuration-tabs.js +48 -0
  156. package/data/build/dist/client/features/assistant-configuration-tabs.js.map +1 -0
  157. package/data/build/dist/client/features/assistant-conversation-message.d.ts +27 -0
  158. package/data/build/dist/client/features/assistant-conversation-message.d.ts.map +1 -0
  159. package/data/build/dist/client/features/assistant-conversation-message.js +55 -0
  160. package/data/build/dist/client/features/assistant-conversation-message.js.map +1 -0
  161. package/data/build/dist/client/features/assistant-debug-dialog.d.ts +3 -0
  162. package/data/build/dist/client/features/assistant-debug-dialog.d.ts.map +1 -0
  163. package/data/build/dist/client/features/assistant-debug-dialog.js +3 -0
  164. package/data/build/dist/client/features/assistant-debug-dialog.js.map +1 -0
  165. package/data/build/dist/client/features/assistant-debug-workbench.d.ts +48 -0
  166. package/data/build/dist/client/features/assistant-debug-workbench.d.ts.map +1 -0
  167. package/data/build/dist/client/features/assistant-debug-workbench.js +376 -0
  168. package/data/build/dist/client/features/assistant-debug-workbench.js.map +1 -0
  169. package/data/build/dist/client/features/assistant-floating-call.d.ts +33 -0
  170. package/data/build/dist/client/features/assistant-floating-call.d.ts.map +1 -0
  171. package/data/build/dist/client/features/assistant-floating-call.js +67 -0
  172. package/data/build/dist/client/features/assistant-floating-call.js.map +1 -0
  173. package/data/build/dist/client/features/assistant-panel.d.ts +2 -2
  174. package/data/build/dist/client/features/assistant-panel.d.ts.map +1 -1
  175. package/data/build/dist/client/features/assistant-panel.js +10 -123
  176. package/data/build/dist/client/features/assistant-panel.js.map +1 -1
  177. package/data/build/dist/client/features/assistant-realtime-call.d.ts +57 -0
  178. package/data/build/dist/client/features/assistant-realtime-call.d.ts.map +1 -0
  179. package/data/build/dist/client/features/assistant-realtime-call.js +131 -0
  180. package/data/build/dist/client/features/assistant-realtime-call.js.map +1 -0
  181. package/data/build/dist/client/features/assistant-record-style.d.ts +5 -0
  182. package/data/build/dist/client/features/assistant-record-style.d.ts.map +1 -0
  183. package/data/build/dist/client/features/assistant-record-style.js +25 -0
  184. package/data/build/dist/client/features/assistant-record-style.js.map +1 -0
  185. package/data/build/dist/client/features/assistant-voice-initialization.d.ts +26 -0
  186. package/data/build/dist/client/features/assistant-voice-initialization.d.ts.map +1 -0
  187. package/data/build/dist/client/features/assistant-voice-initialization.js +138 -0
  188. package/data/build/dist/client/features/assistant-voice-initialization.js.map +1 -0
  189. package/data/build/dist/client/features/assistant-voice-settings-group.d.ts +19 -0
  190. package/data/build/dist/client/features/assistant-voice-settings-group.d.ts.map +1 -0
  191. package/data/build/dist/client/features/assistant-voice-settings-group.js +34 -0
  192. package/data/build/dist/client/features/assistant-voice-settings-group.js.map +1 -0
  193. package/data/build/dist/client/features/assistant-voice-settings.d.ts +13 -0
  194. package/data/build/dist/client/features/assistant-voice-settings.d.ts.map +1 -0
  195. package/data/build/dist/client/features/assistant-voice-settings.js +184 -0
  196. package/data/build/dist/client/features/assistant-voice-settings.js.map +1 -0
  197. package/data/build/dist/client/features/assistant-workbench-controls.d.ts +72 -0
  198. package/data/build/dist/client/features/assistant-workbench-controls.d.ts.map +1 -0
  199. package/data/build/dist/client/features/assistant-workbench-controls.js +145 -0
  200. package/data/build/dist/client/features/assistant-workbench-controls.js.map +1 -0
  201. package/data/build/dist/client/features/assistant-workbench-entry.d.ts +4 -0
  202. package/data/build/dist/client/features/assistant-workbench-entry.d.ts.map +1 -0
  203. package/data/build/dist/client/features/assistant-workbench-entry.js +7 -0
  204. package/data/build/dist/client/features/assistant-workbench-entry.js.map +1 -0
  205. package/data/build/dist/client/features/assistant-workbench.d.ts +109 -0
  206. package/data/build/dist/client/features/assistant-workbench.d.ts.map +1 -0
  207. package/data/build/dist/client/features/assistant-workbench.js +568 -0
  208. package/data/build/dist/client/features/assistant-workbench.js.map +1 -0
  209. package/data/build/dist/client/features/global-voice-assistant.d.ts.map +1 -1
  210. package/data/build/dist/client/features/global-voice-assistant.js +88 -32
  211. package/data/build/dist/client/features/global-voice-assistant.js.map +1 -1
  212. package/data/build/dist/client/features/lan-access.js +2 -2
  213. package/data/build/dist/client/features/lan-access.js.map +1 -1
  214. package/data/build/dist/client/features/mobile-access.d.ts.map +1 -1
  215. package/data/build/dist/client/features/mobile-access.js +9 -0
  216. package/data/build/dist/client/features/mobile-access.js.map +1 -1
  217. package/data/build/dist/client/features/peer-host.d.ts +2 -0
  218. package/data/build/dist/client/features/peer-host.d.ts.map +1 -1
  219. package/data/build/dist/client/features/peer-host.js +66 -73
  220. package/data/build/dist/client/features/peer-host.js.map +1 -1
  221. package/data/build/dist/client/features/types.d.ts +4 -0
  222. package/data/build/dist/client/features/types.d.ts.map +1 -1
  223. package/data/build/dist/client/features/voice-conversation-dialog.d.ts +9 -2
  224. package/data/build/dist/client/features/voice-conversation-dialog.d.ts.map +1 -1
  225. package/data/build/dist/client/features/voice-conversation-dialog.js +29 -7
  226. package/data/build/dist/client/features/voice-conversation-dialog.js.map +1 -1
  227. package/data/build/dist/client/features/voice-initialization-dialog.d.ts +42 -2
  228. package/data/build/dist/client/features/voice-initialization-dialog.d.ts.map +1 -1
  229. package/data/build/dist/client/features/voice-initialization-dialog.js +181 -67
  230. package/data/build/dist/client/features/voice-initialization-dialog.js.map +1 -1
  231. package/data/build/dist/client/global-voice-runtime-registry.d.ts +4 -0
  232. package/data/build/dist/client/global-voice-runtime-registry.d.ts.map +1 -1
  233. package/data/build/dist/client/global-voice-runtime-registry.js.map +1 -1
  234. package/data/build/dist/client/index.d.ts +11 -0
  235. package/data/build/dist/client/index.d.ts.map +1 -1
  236. package/data/build/dist/client/index.js +10 -0
  237. package/data/build/dist/client/index.js.map +1 -1
  238. package/data/build/dist/client/locale.d.ts.map +1 -1
  239. package/data/build/dist/client/locale.js +51 -14
  240. package/data/build/dist/client/locale.js.map +1 -1
  241. package/data/build/dist/client/locales/assistantAvatar.d.ts +138 -0
  242. package/data/build/dist/client/locales/assistantAvatar.d.ts.map +1 -0
  243. package/data/build/dist/client/locales/assistantAvatar.js +273 -0
  244. package/data/build/dist/client/locales/assistantAvatar.js.map +1 -0
  245. package/data/build/dist/client/locales/assistantDebug.d.ts +4 -0
  246. package/data/build/dist/client/locales/assistantDebug.d.ts.map +1 -0
  247. package/data/build/dist/client/locales/assistantDebug.js +362 -0
  248. package/data/build/dist/client/locales/assistantDebug.js.map +1 -0
  249. package/data/build/dist/client/locales/assistantTts.d.ts +80 -0
  250. package/data/build/dist/client/locales/assistantTts.d.ts.map +1 -0
  251. package/data/build/dist/client/locales/assistantTts.js +76 -0
  252. package/data/build/dist/client/locales/assistantTts.js.map +1 -0
  253. package/data/build/dist/client/locales/assistantWorkbench.d.ts +126 -0
  254. package/data/build/dist/client/locales/assistantWorkbench.d.ts.map +1 -0
  255. package/data/build/dist/client/locales/assistantWorkbench.js +96 -0
  256. package/data/build/dist/client/locales/assistantWorkbench.js.map +1 -0
  257. package/data/build/dist/client/locales/peerHostWorkspace.d.ts.map +1 -1
  258. package/data/build/dist/client/locales/peerHostWorkspace.js +16 -2
  259. package/data/build/dist/client/locales/peerHostWorkspace.js.map +1 -1
  260. package/data/build/dist/client/locales/terminalAuth.d.ts.map +1 -1
  261. package/data/build/dist/client/locales/terminalAuth.js +80 -0
  262. package/data/build/dist/client/locales/terminalAuth.js.map +1 -1
  263. package/data/build/dist/client/locales/voiceModels.d.ts +45 -0
  264. package/data/build/dist/client/locales/voiceModels.d.ts.map +1 -0
  265. package/data/build/dist/client/locales/voiceModels.js +85 -0
  266. package/data/build/dist/client/locales/voiceModels.js.map +1 -0
  267. package/data/build/dist/client/mobile-rightbar-tabs-dom.d.ts +29 -0
  268. package/data/build/dist/client/mobile-rightbar-tabs-dom.d.ts.map +1 -0
  269. package/data/build/dist/client/mobile-rightbar-tabs-dom.js +93 -0
  270. package/data/build/dist/client/mobile-rightbar-tabs-dom.js.map +1 -0
  271. package/data/build/dist/client/mobile-rightbar-visibility.d.ts +32 -0
  272. package/data/build/dist/client/mobile-rightbar-visibility.d.ts.map +1 -0
  273. package/data/build/dist/client/mobile-rightbar-visibility.js +188 -0
  274. package/data/build/dist/client/mobile-rightbar-visibility.js.map +1 -0
  275. package/data/build/dist/client/mobile-session-interaction.d.ts +9 -19
  276. package/data/build/dist/client/mobile-session-interaction.d.ts.map +1 -1
  277. package/data/build/dist/client/mobile-session-interaction.js +25 -169
  278. package/data/build/dist/client/mobile-session-interaction.js.map +1 -1
  279. package/data/build/dist/client/mobile-sidebar-gestures.d.ts +4 -0
  280. package/data/build/dist/client/mobile-sidebar-gestures.d.ts.map +1 -1
  281. package/data/build/dist/client/mobile-sidebar-gestures.js +17 -9
  282. package/data/build/dist/client/mobile-sidebar-gestures.js.map +1 -1
  283. package/data/build/dist/client/model-catalog-cache.d.ts +4 -4
  284. package/data/build/dist/client/model-catalog-cache.d.ts.map +1 -1
  285. package/data/build/dist/client/model-catalog-cache.js +57 -32
  286. package/data/build/dist/client/model-catalog-cache.js.map +1 -1
  287. package/data/build/dist/client/moss-voice-output.d.ts +39 -0
  288. package/data/build/dist/client/moss-voice-output.d.ts.map +1 -0
  289. package/data/build/dist/client/moss-voice-output.js +241 -0
  290. package/data/build/dist/client/moss-voice-output.js.map +1 -0
  291. package/data/build/dist/client/peer-host-native-projection.d.ts +4 -3
  292. package/data/build/dist/client/peer-host-native-projection.d.ts.map +1 -1
  293. package/data/build/dist/client/peer-host-native-projection.js +7 -6
  294. package/data/build/dist/client/peer-host-native-projection.js.map +1 -1
  295. package/data/build/dist/client/peer-host-native-store-projection.js +9 -21
  296. package/data/build/dist/client/peer-host-native-store-projection.js.map +1 -1
  297. package/data/build/dist/client/peer-host-workspace-tab.d.ts.map +1 -1
  298. package/data/build/dist/client/peer-host-workspace-tab.js +139 -10
  299. package/data/build/dist/client/peer-host-workspace-tab.js.map +1 -1
  300. package/data/build/dist/client/settings-bridge.d.ts +1 -0
  301. package/data/build/dist/client/settings-bridge.d.ts.map +1 -1
  302. package/data/build/dist/client/settings-bridge.js +9 -1
  303. package/data/build/dist/client/settings-bridge.js.map +1 -1
  304. package/data/build/dist/client/sherpa-voice-adapter.d.ts +23 -2
  305. package/data/build/dist/client/sherpa-voice-adapter.d.ts.map +1 -1
  306. package/data/build/dist/client/sherpa-voice-adapter.js +384 -91
  307. package/data/build/dist/client/sherpa-voice-adapter.js.map +1 -1
  308. package/data/build/dist/client/skill-command.d.ts +1 -1
  309. package/data/build/dist/client/skill-command.d.ts.map +1 -1
  310. package/data/build/dist/client/skill-command.js +25 -2
  311. package/data/build/dist/client/skill-command.js.map +1 -1
  312. package/data/build/dist/client/skill-reference-dom.js +1 -1
  313. package/data/build/dist/client/skill-reference-dom.js.map +1 -1
  314. package/data/build/dist/client/streaming-sentence-queue.d.ts +20 -0
  315. package/data/build/dist/client/streaming-sentence-queue.d.ts.map +1 -0
  316. package/data/build/dist/client/streaming-sentence-queue.js +130 -0
  317. package/data/build/dist/client/streaming-sentence-queue.js.map +1 -0
  318. package/data/build/dist/client/terminal/log-preview.d.ts +14 -0
  319. package/data/build/dist/client/terminal/log-preview.d.ts.map +1 -0
  320. package/data/build/dist/client/terminal/log-preview.js +23 -0
  321. package/data/build/dist/client/terminal/log-preview.js.map +1 -0
  322. package/data/build/dist/client/terminal/model.d.ts +38 -7
  323. package/data/build/dist/client/terminal/model.d.ts.map +1 -1
  324. package/data/build/dist/client/terminal/model.js +188 -32
  325. package/data/build/dist/client/terminal/model.js.map +1 -1
  326. package/data/build/dist/client/terminal/recovery.d.ts +7 -3
  327. package/data/build/dist/client/terminal/recovery.d.ts.map +1 -1
  328. package/data/build/dist/client/terminal/recovery.js +45 -41
  329. package/data/build/dist/client/terminal/recovery.js.map +1 -1
  330. package/data/build/dist/client/terminal/selection-actions.d.ts +63 -0
  331. package/data/build/dist/client/terminal/selection-actions.d.ts.map +1 -0
  332. package/data/build/dist/client/terminal/selection-actions.js +132 -0
  333. package/data/build/dist/client/terminal/selection-actions.js.map +1 -0
  334. package/data/build/dist/client/terminal/share-menu.d.ts +17 -0
  335. package/data/build/dist/client/terminal/share-menu.d.ts.map +1 -0
  336. package/data/build/dist/client/terminal/share-menu.js +131 -0
  337. package/data/build/dist/client/terminal/share-menu.js.map +1 -0
  338. package/data/build/dist/client/terminal/sharing.d.ts +42 -0
  339. package/data/build/dist/client/terminal/sharing.d.ts.map +1 -0
  340. package/data/build/dist/client/terminal/sharing.js +144 -0
  341. package/data/build/dist/client/terminal/sharing.js.map +1 -0
  342. package/data/build/dist/client/terminal/snapshot.d.ts +32 -0
  343. package/data/build/dist/client/terminal/snapshot.d.ts.map +1 -0
  344. package/data/build/dist/client/terminal/snapshot.js +108 -0
  345. package/data/build/dist/client/terminal/snapshot.js.map +1 -0
  346. package/data/build/dist/client/terminal/styles.d.ts +14 -0
  347. package/data/build/dist/client/terminal/styles.d.ts.map +1 -1
  348. package/data/build/dist/client/terminal/styles.js +41 -3
  349. package/data/build/dist/client/terminal/styles.js.map +1 -1
  350. package/data/build/dist/client/terminal/surface-cache.d.ts +10 -0
  351. package/data/build/dist/client/terminal/surface-cache.d.ts.map +1 -0
  352. package/data/build/dist/client/terminal/surface-cache.js +19 -0
  353. package/data/build/dist/client/terminal/surface-cache.js.map +1 -0
  354. package/data/build/dist/client/terminal/ui.d.ts.map +1 -1
  355. package/data/build/dist/client/terminal/ui.js +78 -21
  356. package/data/build/dist/client/terminal/ui.js.map +1 -1
  357. package/data/build/dist/client/terminal/xterm-view.d.ts +5 -2
  358. package/data/build/dist/client/terminal/xterm-view.d.ts.map +1 -1
  359. package/data/build/dist/client/terminal/xterm-view.js +429 -397
  360. package/data/build/dist/client/terminal/xterm-view.js.map +1 -1
  361. package/data/build/dist/client/touch-input-focus.d.ts +30 -0
  362. package/data/build/dist/client/touch-input-focus.d.ts.map +1 -0
  363. package/data/build/dist/client/touch-input-focus.js +190 -0
  364. package/data/build/dist/client/touch-input-focus.js.map +1 -0
  365. package/data/build/dist/client/voice-capture.d.ts +9 -0
  366. package/data/build/dist/client/voice-capture.d.ts.map +1 -1
  367. package/data/build/dist/client/voice-capture.js +35 -1
  368. package/data/build/dist/client/voice-capture.js.map +1 -1
  369. package/data/build/dist/client/voice-chat-updates.d.ts +12 -0
  370. package/data/build/dist/client/voice-chat-updates.d.ts.map +1 -0
  371. package/data/build/dist/client/voice-chat-updates.js +39 -0
  372. package/data/build/dist/client/voice-chat-updates.js.map +1 -0
  373. package/data/build/dist/client/voice-diagnostics.d.ts +19 -0
  374. package/data/build/dist/client/voice-diagnostics.d.ts.map +1 -0
  375. package/data/build/dist/client/voice-diagnostics.js +73 -0
  376. package/data/build/dist/client/voice-diagnostics.js.map +1 -0
  377. package/data/build/dist/client/voice-model-setup-progress.d.ts +8 -0
  378. package/data/build/dist/client/voice-model-setup-progress.d.ts.map +1 -0
  379. package/data/build/dist/client/voice-model-setup-progress.js +27 -0
  380. package/data/build/dist/client/voice-model-setup-progress.js.map +1 -0
  381. package/data/build/dist/client/voice-stream-uploader.d.ts +41 -0
  382. package/data/build/dist/client/voice-stream-uploader.d.ts.map +1 -0
  383. package/data/build/dist/client/voice-stream-uploader.js +154 -0
  384. package/data/build/dist/client/voice-stream-uploader.js.map +1 -0
  385. package/data/build/dist/dsh-capabilities/client/config-forms-adapter.d.ts +4 -0
  386. package/data/build/dist/dsh-capabilities/client/config-forms-adapter.d.ts.map +1 -1
  387. package/data/build/dist/dsh-capabilities/client/config-forms-adapter.js +9 -0
  388. package/data/build/dist/dsh-capabilities/client/config-forms-adapter.js.map +1 -1
  389. package/data/build/dist/dsh-capabilities/client/primitives-adapter.d.ts +5 -1
  390. package/data/build/dist/dsh-capabilities/client/primitives-adapter.d.ts.map +1 -1
  391. package/data/build/dist/dsh-capabilities/client/primitives-adapter.js +25 -0
  392. package/data/build/dist/dsh-capabilities/client/primitives-adapter.js.map +1 -1
  393. package/data/build/dist/dsh-capabilities/client/terminal-sharing-adapter.d.ts +33 -0
  394. package/data/build/dist/dsh-capabilities/client/terminal-sharing-adapter.d.ts.map +1 -0
  395. package/data/build/dist/dsh-capabilities/client/terminal-sharing-adapter.js +187 -0
  396. package/data/build/dist/dsh-capabilities/client/terminal-sharing-adapter.js.map +1 -0
  397. package/data/build/dist/dsh-capabilities/host/assistant-agent-adapter.d.ts +55 -0
  398. package/data/build/dist/dsh-capabilities/host/assistant-agent-adapter.d.ts.map +1 -0
  399. package/data/build/dist/dsh-capabilities/host/assistant-agent-adapter.js +264 -0
  400. package/data/build/dist/dsh-capabilities/host/assistant-agent-adapter.js.map +1 -0
  401. package/data/build/dist/dsh-capabilities/host/assistant-attachment-adapter.d.ts +16 -0
  402. package/data/build/dist/dsh-capabilities/host/assistant-attachment-adapter.d.ts.map +1 -0
  403. package/data/build/dist/dsh-capabilities/host/assistant-attachment-adapter.js +69 -0
  404. package/data/build/dist/dsh-capabilities/host/assistant-attachment-adapter.js.map +1 -0
  405. package/data/build/dist/dsh-capabilities/host/assistant-llm-adapter.d.ts +36 -0
  406. package/data/build/dist/dsh-capabilities/host/assistant-llm-adapter.d.ts.map +1 -0
  407. package/data/build/dist/dsh-capabilities/host/assistant-llm-adapter.js +112 -0
  408. package/data/build/dist/dsh-capabilities/host/assistant-llm-adapter.js.map +1 -0
  409. package/data/build/dist/dsh-capabilities/host/assistant-web-search-adapter.d.ts +4 -0
  410. package/data/build/dist/dsh-capabilities/host/assistant-web-search-adapter.d.ts.map +1 -0
  411. package/data/build/dist/dsh-capabilities/host/assistant-web-search-adapter.js +41 -0
  412. package/data/build/dist/dsh-capabilities/host/assistant-web-search-adapter.js.map +1 -0
  413. package/data/build/dist/dsh-capabilities/host/sidebar-session-compat.d.ts +28 -0
  414. package/data/build/dist/dsh-capabilities/host/sidebar-session-compat.d.ts.map +1 -0
  415. package/data/build/dist/dsh-capabilities/host/sidebar-session-compat.js +109 -0
  416. package/data/build/dist/dsh-capabilities/host/sidebar-session-compat.js.map +1 -0
  417. package/data/build/dist/dsh-capabilities/matrix.d.ts.map +1 -1
  418. package/data/build/dist/dsh-capabilities/matrix.js +3 -0
  419. package/data/build/dist/dsh-capabilities/matrix.js.map +1 -1
  420. package/data/build/dist/dsh-capabilities/routes.d.ts.map +1 -1
  421. package/data/build/dist/dsh-capabilities/routes.js +18 -0
  422. package/data/build/dist/dsh-capabilities/routes.js.map +1 -1
  423. package/data/build/dist/dsh-capabilities/settings-store.d.ts +2 -0
  424. package/data/build/dist/dsh-capabilities/settings-store.d.ts.map +1 -1
  425. package/data/build/dist/dsh-capabilities/settings-store.js.map +1 -1
  426. package/data/build/dist/dsh-capabilities/types.d.ts +1 -1
  427. package/data/build/dist/dsh-capabilities/types.d.ts.map +1 -1
  428. package/data/build/dist/dsh-capabilities/types.js.map +1 -1
  429. package/data/build/dist/host/avatar/catalog.d.ts +21 -0
  430. package/data/build/dist/host/avatar/catalog.d.ts.map +1 -0
  431. package/data/build/dist/host/avatar/catalog.js +123 -0
  432. package/data/build/dist/host/avatar/catalog.js.map +1 -0
  433. package/data/build/dist/host/avatar/engine.d.ts +42 -0
  434. package/data/build/dist/host/avatar/engine.d.ts.map +1 -0
  435. package/data/build/dist/host/avatar/engine.js +167 -0
  436. package/data/build/dist/host/avatar/engine.js.map +1 -0
  437. package/data/build/dist/host/avatar/materials.d.ts +28 -0
  438. package/data/build/dist/host/avatar/materials.d.ts.map +1 -0
  439. package/data/build/dist/host/avatar/materials.js +183 -0
  440. package/data/build/dist/host/avatar/materials.js.map +1 -0
  441. package/data/build/dist/host/avatar/packages.d.ts +34 -0
  442. package/data/build/dist/host/avatar/packages.d.ts.map +1 -0
  443. package/data/build/dist/host/avatar/packages.js +200 -0
  444. package/data/build/dist/host/avatar/packages.js.map +1 -0
  445. package/data/build/dist/host/avatar/registry.d.ts +12 -0
  446. package/data/build/dist/host/avatar/registry.d.ts.map +1 -0
  447. package/data/build/dist/host/avatar/registry.js +22 -0
  448. package/data/build/dist/host/avatar/registry.js.map +1 -0
  449. package/data/build/dist/host/avatar/remote.d.ts +18 -0
  450. package/data/build/dist/host/avatar/remote.d.ts.map +1 -0
  451. package/data/build/dist/host/avatar/remote.js +103 -0
  452. package/data/build/dist/host/avatar/remote.js.map +1 -0
  453. package/data/build/dist/host/avatar/sources.d.ts +11 -0
  454. package/data/build/dist/host/avatar/sources.d.ts.map +1 -0
  455. package/data/build/dist/host/avatar/sources.js +78 -0
  456. package/data/build/dist/host/avatar/sources.js.map +1 -0
  457. package/data/build/dist/host/avatar/temporary-previews.d.ts +26 -0
  458. package/data/build/dist/host/avatar/temporary-previews.d.ts.map +1 -0
  459. package/data/build/dist/host/avatar/temporary-previews.js +139 -0
  460. package/data/build/dist/host/avatar/temporary-previews.js.map +1 -0
  461. package/data/build/dist/host/cli-adapters/acp-cli-driver.d.ts +18 -1
  462. package/data/build/dist/host/cli-adapters/acp-cli-driver.d.ts.map +1 -1
  463. package/data/build/dist/host/cli-adapters/acp-cli-driver.js +26 -8
  464. package/data/build/dist/host/cli-adapters/acp-cli-driver.js.map +1 -1
  465. package/data/build/dist/host/cli-adapters/attachment-utils.d.ts +16 -5
  466. package/data/build/dist/host/cli-adapters/attachment-utils.d.ts.map +1 -1
  467. package/data/build/dist/host/cli-adapters/attachment-utils.js +152 -42
  468. package/data/build/dist/host/cli-adapters/attachment-utils.js.map +1 -1
  469. package/data/build/dist/host/cli-adapters/claude-driver.d.ts +14 -8
  470. package/data/build/dist/host/cli-adapters/claude-driver.d.ts.map +1 -1
  471. package/data/build/dist/host/cli-adapters/claude-driver.js +101 -76
  472. package/data/build/dist/host/cli-adapters/claude-driver.js.map +1 -1
  473. package/data/build/dist/host/cli-adapters/codex-driver.d.ts.map +1 -1
  474. package/data/build/dist/host/cli-adapters/codex-driver.js +84 -9
  475. package/data/build/dist/host/cli-adapters/codex-driver.js.map +1 -1
  476. package/data/build/dist/host/cli-adapters/command-code-acp-loader.d.ts +23 -0
  477. package/data/build/dist/host/cli-adapters/command-code-acp-loader.d.ts.map +1 -0
  478. package/data/build/dist/host/cli-adapters/command-code-acp-loader.js +39 -0
  479. package/data/build/dist/host/cli-adapters/command-code-acp-loader.js.map +1 -0
  480. package/data/build/dist/host/cli-adapters/command-code-driver.d.ts +17 -6
  481. package/data/build/dist/host/cli-adapters/command-code-driver.d.ts.map +1 -1
  482. package/data/build/dist/host/cli-adapters/command-code-driver.js +430 -20
  483. package/data/build/dist/host/cli-adapters/command-code-driver.js.map +1 -1
  484. package/data/build/dist/host/cli-adapters/command-code-subscription.d.ts +1 -1
  485. package/data/build/dist/host/cli-adapters/command-code-subscription.d.ts.map +1 -1
  486. package/data/build/dist/host/cli-adapters/command-code-subscription.js +7 -4
  487. package/data/build/dist/host/cli-adapters/command-code-subscription.js.map +1 -1
  488. package/data/build/dist/host/cli-adapters/dsh-message-projector.d.ts.map +1 -1
  489. package/data/build/dist/host/cli-adapters/dsh-message-projector.js +28 -0
  490. package/data/build/dist/host/cli-adapters/dsh-message-projector.js.map +1 -1
  491. package/data/build/dist/host/cli-adapters/dsh-tool-history.d.ts.map +1 -1
  492. package/data/build/dist/host/cli-adapters/dsh-tool-history.js +23 -1
  493. package/data/build/dist/host/cli-adapters/dsh-tool-history.js.map +1 -1
  494. package/data/build/dist/host/cli-adapters/feature.js +1 -1
  495. package/data/build/dist/host/cli-adapters/feature.js.map +1 -1
  496. package/data/build/dist/host/cli-adapters/grok-driver.d.ts +4 -2
  497. package/data/build/dist/host/cli-adapters/grok-driver.d.ts.map +1 -1
  498. package/data/build/dist/host/cli-adapters/grok-driver.js +208 -9
  499. package/data/build/dist/host/cli-adapters/grok-driver.js.map +1 -1
  500. package/data/build/dist/host/cli-adapters/json-rpc-process.d.ts +2 -0
  501. package/data/build/dist/host/cli-adapters/json-rpc-process.d.ts.map +1 -1
  502. package/data/build/dist/host/cli-adapters/json-rpc-process.js +8 -3
  503. package/data/build/dist/host/cli-adapters/json-rpc-process.js.map +1 -1
  504. package/data/build/dist/host/cli-adapters/kimi-driver.d.ts +4 -0
  505. package/data/build/dist/host/cli-adapters/kimi-driver.d.ts.map +1 -1
  506. package/data/build/dist/host/cli-adapters/kimi-driver.js +11 -4
  507. package/data/build/dist/host/cli-adapters/kimi-driver.js.map +1 -1
  508. package/data/build/dist/host/cli-adapters/mcode-driver.js +2 -2
  509. package/data/build/dist/host/cli-adapters/mcode-driver.js.map +1 -1
  510. package/data/build/dist/host/cli-adapters/new-api-subscription.d.ts.map +1 -1
  511. package/data/build/dist/host/cli-adapters/new-api-subscription.js +11 -58
  512. package/data/build/dist/host/cli-adapters/new-api-subscription.js.map +1 -1
  513. package/data/build/dist/host/cli-adapters/opencode-driver.d.ts +5 -2
  514. package/data/build/dist/host/cli-adapters/opencode-driver.d.ts.map +1 -1
  515. package/data/build/dist/host/cli-adapters/opencode-driver.js +136 -18
  516. package/data/build/dist/host/cli-adapters/opencode-driver.js.map +1 -1
  517. package/data/build/dist/host/cli-adapters/pi-driver.d.ts.map +1 -1
  518. package/data/build/dist/host/cli-adapters/pi-driver.js +2 -1
  519. package/data/build/dist/host/cli-adapters/pi-driver.js.map +1 -1
  520. package/data/build/dist/host/cli-adapters/process-utils.d.ts +10 -0
  521. package/data/build/dist/host/cli-adapters/process-utils.d.ts.map +1 -1
  522. package/data/build/dist/host/cli-adapters/process-utils.js +20 -0
  523. package/data/build/dist/host/cli-adapters/process-utils.js.map +1 -1
  524. package/data/build/dist/host/cli-adapters/provider-subscription.d.ts +3 -0
  525. package/data/build/dist/host/cli-adapters/provider-subscription.d.ts.map +1 -1
  526. package/data/build/dist/host/cli-adapters/provider-subscription.js +42 -8
  527. package/data/build/dist/host/cli-adapters/provider-subscription.js.map +1 -1
  528. package/data/build/dist/host/cli-adapters/registry.d.ts.map +1 -1
  529. package/data/build/dist/host/cli-adapters/registry.js +5 -3
  530. package/data/build/dist/host/cli-adapters/registry.js.map +1 -1
  531. package/data/build/dist/host/cli-adapters/rpc-driver-utils.d.ts.map +1 -1
  532. package/data/build/dist/host/cli-adapters/rpc-driver-utils.js +2 -9
  533. package/data/build/dist/host/cli-adapters/rpc-driver-utils.js.map +1 -1
  534. package/data/build/dist/host/cli-adapters/skill-filesystem.d.ts +25 -0
  535. package/data/build/dist/host/cli-adapters/skill-filesystem.d.ts.map +1 -0
  536. package/data/build/dist/host/cli-adapters/skill-filesystem.js +161 -0
  537. package/data/build/dist/host/cli-adapters/skill-filesystem.js.map +1 -0
  538. package/data/build/dist/host/cli-adapters/standard-stream-driver.d.ts +1 -0
  539. package/data/build/dist/host/cli-adapters/standard-stream-driver.d.ts.map +1 -1
  540. package/data/build/dist/host/cli-adapters/standard-stream-driver.js +4 -0
  541. package/data/build/dist/host/cli-adapters/standard-stream-driver.js.map +1 -1
  542. package/data/build/dist/host/cli-adapters/zcode-driver.d.ts +8 -2
  543. package/data/build/dist/host/cli-adapters/zcode-driver.d.ts.map +1 -1
  544. package/data/build/dist/host/cli-adapters/zcode-driver.js +166 -55
  545. package/data/build/dist/host/cli-adapters/zcode-driver.js.map +1 -1
  546. package/data/build/dist/host/cli-adapters/zcode-interactions.d.ts +18 -0
  547. package/data/build/dist/host/cli-adapters/zcode-interactions.d.ts.map +1 -0
  548. package/data/build/dist/host/cli-adapters/zcode-interactions.js +90 -0
  549. package/data/build/dist/host/cli-adapters/zcode-interactions.js.map +1 -0
  550. package/data/build/dist/host/cli-adapters/zcode-provider-config.d.ts +26 -0
  551. package/data/build/dist/host/cli-adapters/zcode-provider-config.d.ts.map +1 -0
  552. package/data/build/dist/host/cli-adapters/zcode-provider-config.js +102 -0
  553. package/data/build/dist/host/cli-adapters/zcode-provider-config.js.map +1 -0
  554. package/data/build/dist/host/cli-adapters/zcode-subscription.d.ts +2 -7
  555. package/data/build/dist/host/cli-adapters/zcode-subscription.d.ts.map +1 -1
  556. package/data/build/dist/host/cli-adapters/zcode-subscription.js.map +1 -1
  557. package/data/build/dist/host/cli-adapters/zcode-telemetry.d.ts +17 -0
  558. package/data/build/dist/host/cli-adapters/zcode-telemetry.d.ts.map +1 -0
  559. package/data/build/dist/host/cli-adapters/zcode-telemetry.js +124 -0
  560. package/data/build/dist/host/cli-adapters/zcode-telemetry.js.map +1 -0
  561. package/data/build/dist/host/cli-bridge/injections.d.ts +2 -9
  562. package/data/build/dist/host/cli-bridge/injections.d.ts.map +1 -1
  563. package/data/build/dist/host/cli-bridge/injections.js +7 -17
  564. package/data/build/dist/host/cli-bridge/injections.js.map +1 -1
  565. package/data/build/dist/host/desktop-assistant/controller.d.ts +44 -0
  566. package/data/build/dist/host/desktop-assistant/controller.d.ts.map +1 -0
  567. package/data/build/dist/host/desktop-assistant/controller.js +150 -0
  568. package/data/build/dist/host/desktop-assistant/controller.js.map +1 -0
  569. package/data/build/dist/host/desktop-assistant/feature.d.ts +9 -0
  570. package/data/build/dist/host/desktop-assistant/feature.d.ts.map +1 -0
  571. package/data/build/dist/host/desktop-assistant/feature.js +102 -0
  572. package/data/build/dist/host/desktop-assistant/feature.js.map +1 -0
  573. package/data/build/dist/host/desktop-assistant/launcher.d.ts +5 -0
  574. package/data/build/dist/host/desktop-assistant/launcher.d.ts.map +1 -0
  575. package/data/build/dist/host/desktop-assistant/launcher.js +84 -0
  576. package/data/build/dist/host/desktop-assistant/launcher.js.map +1 -0
  577. package/data/build/dist/host/desktop-assistant/mac-agent.d.ts +5 -0
  578. package/data/build/dist/host/desktop-assistant/mac-agent.d.ts.map +1 -0
  579. package/data/build/dist/host/desktop-assistant/mac-agent.js +122 -0
  580. package/data/build/dist/host/desktop-assistant/mac-agent.js.map +1 -0
  581. package/data/build/dist/host/desktop-assistant/process.d.ts +4 -0
  582. package/data/build/dist/host/desktop-assistant/process.d.ts.map +1 -0
  583. package/data/build/dist/host/desktop-assistant/process.js +25 -0
  584. package/data/build/dist/host/desktop-assistant/process.js.map +1 -0
  585. package/data/build/dist/host/desktop-assistant/server.d.ts +12 -0
  586. package/data/build/dist/host/desktop-assistant/server.d.ts.map +1 -0
  587. package/data/build/dist/host/desktop-assistant/server.js +74 -0
  588. package/data/build/dist/host/desktop-assistant/server.js.map +1 -0
  589. package/data/build/dist/host/desktop-assistant/win-agent.d.ts +2 -0
  590. package/data/build/dist/host/desktop-assistant/win-agent.d.ts.map +1 -0
  591. package/data/build/dist/host/desktop-assistant/win-agent.js +197 -0
  592. package/data/build/dist/host/desktop-assistant/win-agent.js.map +1 -0
  593. package/data/build/dist/host/features/assistant-avatar-assets.d.ts +3 -0
  594. package/data/build/dist/host/features/assistant-avatar-assets.d.ts.map +1 -0
  595. package/data/build/dist/host/features/assistant-avatar-assets.js +3 -0
  596. package/data/build/dist/host/features/assistant-avatar-assets.js.map +1 -0
  597. package/data/build/dist/host/features/assistant-avatar-basics.d.ts +3 -0
  598. package/data/build/dist/host/features/assistant-avatar-basics.d.ts.map +1 -0
  599. package/data/build/dist/host/features/assistant-avatar-basics.js +34 -0
  600. package/data/build/dist/host/features/assistant-avatar-basics.js.map +1 -0
  601. package/data/build/dist/host/features/assistant-avatar-legacy-assets.d.ts +6 -0
  602. package/data/build/dist/host/features/assistant-avatar-legacy-assets.d.ts.map +1 -0
  603. package/data/build/dist/host/features/assistant-avatar-legacy-assets.js +146 -0
  604. package/data/build/dist/host/features/assistant-avatar-legacy-assets.js.map +1 -0
  605. package/data/build/dist/host/features/assistant-avatar-runtime.d.ts +20 -0
  606. package/data/build/dist/host/features/assistant-avatar-runtime.d.ts.map +1 -0
  607. package/data/build/dist/host/features/assistant-avatar-runtime.js +235 -0
  608. package/data/build/dist/host/features/assistant-avatar-runtime.js.map +1 -0
  609. package/data/build/dist/host/features/assistant-conversation-storage.d.ts +8 -0
  610. package/data/build/dist/host/features/assistant-conversation-storage.d.ts.map +1 -0
  611. package/data/build/dist/host/features/assistant-conversation-storage.js +38 -0
  612. package/data/build/dist/host/features/assistant-conversation-storage.js.map +1 -0
  613. package/data/build/dist/host/features/assistant-conversation.d.ts +57 -0
  614. package/data/build/dist/host/features/assistant-conversation.d.ts.map +1 -0
  615. package/data/build/dist/host/features/assistant-conversation.js +364 -0
  616. package/data/build/dist/host/features/assistant-conversation.js.map +1 -0
  617. package/data/build/dist/host/features/assistant-dispatch.d.ts +2 -2
  618. package/data/build/dist/host/features/assistant-dispatch.d.ts.map +1 -1
  619. package/data/build/dist/host/features/assistant-dispatch.js +4 -3
  620. package/data/build/dist/host/features/assistant-dispatch.js.map +1 -1
  621. package/data/build/dist/host/features/assistant-index-analysis.d.ts +49 -0
  622. package/data/build/dist/host/features/assistant-index-analysis.d.ts.map +1 -0
  623. package/data/build/dist/host/features/assistant-index-analysis.js +255 -0
  624. package/data/build/dist/host/features/assistant-index-analysis.js.map +1 -0
  625. package/data/build/dist/host/features/assistant-index-journal.d.ts +20 -0
  626. package/data/build/dist/host/features/assistant-index-journal.d.ts.map +1 -0
  627. package/data/build/dist/host/features/assistant-index-journal.js +40 -0
  628. package/data/build/dist/host/features/assistant-index-journal.js.map +1 -0
  629. package/data/build/dist/host/features/assistant-index-retry.d.ts +12 -0
  630. package/data/build/dist/host/features/assistant-index-retry.d.ts.map +1 -0
  631. package/data/build/dist/host/features/assistant-index-retry.js +54 -0
  632. package/data/build/dist/host/features/assistant-index-retry.js.map +1 -0
  633. package/data/build/dist/host/features/assistant-index-updates.d.ts +40 -0
  634. package/data/build/dist/host/features/assistant-index-updates.d.ts.map +1 -0
  635. package/data/build/dist/host/features/assistant-index-updates.js +183 -0
  636. package/data/build/dist/host/features/assistant-index-updates.js.map +1 -0
  637. package/data/build/dist/host/features/assistant-lifecycle-settings.d.ts +5 -0
  638. package/data/build/dist/host/features/assistant-lifecycle-settings.d.ts.map +1 -0
  639. package/data/build/dist/host/features/assistant-lifecycle-settings.js +72 -0
  640. package/data/build/dist/host/features/assistant-lifecycle-settings.js.map +1 -0
  641. package/data/build/dist/host/features/assistant-management-tools.d.ts +34 -0
  642. package/data/build/dist/host/features/assistant-management-tools.d.ts.map +1 -0
  643. package/data/build/dist/host/features/assistant-management-tools.js +69 -0
  644. package/data/build/dist/host/features/assistant-management-tools.js.map +1 -0
  645. package/data/build/dist/host/features/assistant-prompts.d.ts +6 -0
  646. package/data/build/dist/host/features/assistant-prompts.d.ts.map +1 -0
  647. package/data/build/dist/host/features/assistant-prompts.js +62 -0
  648. package/data/build/dist/host/features/assistant-prompts.js.map +1 -0
  649. package/data/build/dist/host/features/assistant-session-index.d.ts +6 -1
  650. package/data/build/dist/host/features/assistant-session-index.d.ts.map +1 -1
  651. package/data/build/dist/host/features/assistant-session-index.js +11 -12
  652. package/data/build/dist/host/features/assistant-session-index.js.map +1 -1
  653. package/data/build/dist/host/features/assistant-structured-index.d.ts +21 -0
  654. package/data/build/dist/host/features/assistant-structured-index.d.ts.map +1 -0
  655. package/data/build/dist/host/features/assistant-structured-index.js +138 -0
  656. package/data/build/dist/host/features/assistant-structured-index.js.map +1 -0
  657. package/data/build/dist/host/features/assistant-summary.d.ts.map +1 -1
  658. package/data/build/dist/host/features/assistant-summary.js +7 -1
  659. package/data/build/dist/host/features/assistant-summary.js.map +1 -1
  660. package/data/build/dist/host/features/assistant-text-chat.d.ts +29 -0
  661. package/data/build/dist/host/features/assistant-text-chat.d.ts.map +1 -0
  662. package/data/build/dist/host/features/assistant-text-chat.js +195 -0
  663. package/data/build/dist/host/features/assistant-text-chat.js.map +1 -0
  664. package/data/build/dist/host/features/assistant-tts-service.d.ts +47 -0
  665. package/data/build/dist/host/features/assistant-tts-service.d.ts.map +1 -0
  666. package/data/build/dist/host/features/assistant-tts-service.js +507 -0
  667. package/data/build/dist/host/features/assistant-tts-service.js.map +1 -0
  668. package/data/build/dist/host/features/assistant-voice-chat.d.ts +35 -0
  669. package/data/build/dist/host/features/assistant-voice-chat.d.ts.map +1 -0
  670. package/data/build/dist/host/features/assistant-voice-chat.js +133 -0
  671. package/data/build/dist/host/features/assistant-voice-chat.js.map +1 -0
  672. package/data/build/dist/host/features/assistant-voice-hotwords.d.ts +33 -0
  673. package/data/build/dist/host/features/assistant-voice-hotwords.d.ts.map +1 -0
  674. package/data/build/dist/host/features/assistant-voice-hotwords.js +114 -0
  675. package/data/build/dist/host/features/assistant-voice-hotwords.js.map +1 -0
  676. package/data/build/dist/host/features/assistant-voice-initialization.d.ts +26 -0
  677. package/data/build/dist/host/features/assistant-voice-initialization.d.ts.map +1 -0
  678. package/data/build/dist/host/features/assistant-voice-initialization.js +68 -0
  679. package/data/build/dist/host/features/assistant-voice-initialization.js.map +1 -0
  680. package/data/build/dist/host/features/assistant-voice-sources.d.ts +13 -0
  681. package/data/build/dist/host/features/assistant-voice-sources.d.ts.map +1 -0
  682. package/data/build/dist/host/features/assistant-voice-sources.js +72 -0
  683. package/data/build/dist/host/features/assistant-voice-sources.js.map +1 -0
  684. package/data/build/dist/host/features/assistant-voice-stream.d.ts +10 -0
  685. package/data/build/dist/host/features/assistant-voice-stream.d.ts.map +1 -1
  686. package/data/build/dist/host/features/assistant-voice-stream.js +208 -5
  687. package/data/build/dist/host/features/assistant-voice-stream.js.map +1 -1
  688. package/data/build/dist/host/features/global-voice-rpc.d.ts +8 -1
  689. package/data/build/dist/host/features/global-voice-rpc.d.ts.map +1 -1
  690. package/data/build/dist/host/features/global-voice-rpc.js +1055 -153
  691. package/data/build/dist/host/features/global-voice-rpc.js.map +1 -1
  692. package/data/build/dist/host/features/index.d.ts.map +1 -1
  693. package/data/build/dist/host/features/index.js +4 -0
  694. package/data/build/dist/host/features/index.js.map +1 -1
  695. package/data/build/dist/host/features/moss-tts-worker.d.ts +32 -0
  696. package/data/build/dist/host/features/moss-tts-worker.d.ts.map +1 -0
  697. package/data/build/dist/host/features/moss-tts-worker.js +216 -0
  698. package/data/build/dist/host/features/moss-tts-worker.js.map +1 -0
  699. package/data/build/dist/host/features/peer-host.d.ts.map +1 -1
  700. package/data/build/dist/host/features/peer-host.js +38 -7
  701. package/data/build/dist/host/features/peer-host.js.map +1 -1
  702. package/data/build/dist/host/features/sherpa-voice-runtime.d.ts +11 -0
  703. package/data/build/dist/host/features/sherpa-voice-runtime.d.ts.map +1 -1
  704. package/data/build/dist/host/features/sherpa-voice-runtime.js +72 -17
  705. package/data/build/dist/host/features/sherpa-voice-runtime.js.map +1 -1
  706. package/data/build/dist/host/features/types.d.ts +9 -1
  707. package/data/build/dist/host/features/types.d.ts.map +1 -1
  708. package/data/build/dist/host/features/voice-model-management.d.ts +22 -0
  709. package/data/build/dist/host/features/voice-model-management.d.ts.map +1 -0
  710. package/data/build/dist/host/features/voice-model-management.js +178 -0
  711. package/data/build/dist/host/features/voice-model-management.js.map +1 -0
  712. package/data/build/dist/host/features/voice-model-probe.d.ts +8 -0
  713. package/data/build/dist/host/features/voice-model-probe.d.ts.map +1 -0
  714. package/data/build/dist/host/features/voice-model-probe.js +76 -0
  715. package/data/build/dist/host/features/voice-model-probe.js.map +1 -0
  716. package/data/build/dist/host/features/voice-model-setup.d.ts +5 -2
  717. package/data/build/dist/host/features/voice-model-setup.d.ts.map +1 -1
  718. package/data/build/dist/host/features/voice-model-setup.js +40 -13
  719. package/data/build/dist/host/features/voice-model-setup.js.map +1 -1
  720. package/data/build/dist/host/features/voice-process-environment.d.ts +3 -0
  721. package/data/build/dist/host/features/voice-process-environment.d.ts.map +1 -0
  722. package/data/build/dist/host/features/voice-process-environment.js +16 -0
  723. package/data/build/dist/host/features/voice-process-environment.js.map +1 -0
  724. package/data/build/dist/host/features/voice-python-runtime.d.ts +21 -0
  725. package/data/build/dist/host/features/voice-python-runtime.d.ts.map +1 -0
  726. package/data/build/dist/host/features/voice-python-runtime.js +189 -0
  727. package/data/build/dist/host/features/voice-python-runtime.js.map +1 -0
  728. package/data/build/dist/host/index-injection.d.ts.map +1 -1
  729. package/data/build/dist/host/index-injection.js +5 -1
  730. package/data/build/dist/host/index-injection.js.map +1 -1
  731. package/data/build/dist/host/index.d.ts +5 -0
  732. package/data/build/dist/host/index.d.ts.map +1 -1
  733. package/data/build/dist/host/index.js +33 -12
  734. package/data/build/dist/host/index.js.map +1 -1
  735. package/data/build/dist/host/lan-access-dsh.d.ts.map +1 -1
  736. package/data/build/dist/host/lan-access-dsh.js +2 -1
  737. package/data/build/dist/host/lan-access-dsh.js.map +1 -1
  738. package/data/build/dist/host/modules/peer-host/peer-host-aggregate-service.d.ts +1 -0
  739. package/data/build/dist/host/modules/peer-host/peer-host-aggregate-service.d.ts.map +1 -1
  740. package/data/build/dist/host/modules/peer-host/peer-host-aggregate-service.js +1 -0
  741. package/data/build/dist/host/modules/peer-host/peer-host-aggregate-service.js.map +1 -1
  742. package/data/build/dist/host/modules/peer-host/peer-host-native-protocol.d.ts +2 -0
  743. package/data/build/dist/host/modules/peer-host/peer-host-native-protocol.d.ts.map +1 -1
  744. package/data/build/dist/host/modules/peer-host/peer-host-native-protocol.js +5 -0
  745. package/data/build/dist/host/modules/peer-host/peer-host-native-protocol.js.map +1 -1
  746. package/data/build/dist/host/modules/peer-host/peer-host-remote-summary-source.d.ts.map +1 -1
  747. package/data/build/dist/host/modules/peer-host/peer-host-remote-summary-source.js +15 -1
  748. package/data/build/dist/host/modules/peer-host/peer-host-remote-summary-source.js.map +1 -1
  749. package/data/build/dist/host/rpc.d.ts.map +1 -1
  750. package/data/build/dist/host/rpc.js +50 -4
  751. package/data/build/dist/host/rpc.js.map +1 -1
  752. package/data/build/dist/host/settings.d.ts +2 -1
  753. package/data/build/dist/host/settings.d.ts.map +1 -1
  754. package/data/build/dist/host/settings.js +77 -13
  755. package/data/build/dist/host/settings.js.map +1 -1
  756. package/data/build/dist/host/stage0-dev-hmr.d.ts +6 -0
  757. package/data/build/dist/host/stage0-dev-hmr.d.ts.map +1 -0
  758. package/data/build/dist/host/stage0-dev-hmr.js +20 -0
  759. package/data/build/dist/host/stage0-dev-hmr.js.map +1 -0
  760. package/data/build/dist/host/tar-archive.d.ts +8 -0
  761. package/data/build/dist/host/tar-archive.d.ts.map +1 -0
  762. package/data/build/dist/host/tar-archive.js +17 -0
  763. package/data/build/dist/host/tar-archive.js.map +1 -0
  764. package/data/build/dist/host/voice-diagnostics.d.ts +34 -0
  765. package/data/build/dist/host/voice-diagnostics.d.ts.map +1 -0
  766. package/data/build/dist/host/voice-diagnostics.js +124 -0
  767. package/data/build/dist/host/voice-diagnostics.js.map +1 -0
  768. package/data/build/dist/shared/assistant-attachments.d.ts +27 -0
  769. package/data/build/dist/shared/assistant-attachments.d.ts.map +1 -0
  770. package/data/build/dist/shared/assistant-attachments.js +45 -0
  771. package/data/build/dist/shared/assistant-attachments.js.map +1 -0
  772. package/data/build/dist/shared/assistant-avatar-adapters.d.ts +18 -0
  773. package/data/build/dist/shared/assistant-avatar-adapters.d.ts.map +1 -0
  774. package/data/build/dist/shared/assistant-avatar-adapters.js +119 -0
  775. package/data/build/dist/shared/assistant-avatar-adapters.js.map +1 -0
  776. package/data/build/dist/shared/assistant-avatar-catalog.d.ts +37 -0
  777. package/data/build/dist/shared/assistant-avatar-catalog.d.ts.map +1 -0
  778. package/data/build/dist/shared/assistant-avatar-catalog.js +21 -0
  779. package/data/build/dist/shared/assistant-avatar-catalog.js.map +1 -0
  780. package/data/build/dist/shared/assistant-avatar-engine.d.ts +31 -0
  781. package/data/build/dist/shared/assistant-avatar-engine.d.ts.map +1 -0
  782. package/data/build/dist/shared/assistant-avatar-engine.js +28 -0
  783. package/data/build/dist/shared/assistant-avatar-engine.js.map +1 -0
  784. package/data/build/dist/shared/assistant-avatar-installation.d.ts +17 -0
  785. package/data/build/dist/shared/assistant-avatar-installation.d.ts.map +1 -0
  786. package/data/build/dist/shared/assistant-avatar-installation.js +7 -0
  787. package/data/build/dist/shared/assistant-avatar-installation.js.map +1 -0
  788. package/data/build/dist/shared/assistant-avatar-legacy-resources.d.ts +6 -0
  789. package/data/build/dist/shared/assistant-avatar-legacy-resources.d.ts.map +1 -0
  790. package/data/build/dist/shared/assistant-avatar-legacy-resources.js +20 -0
  791. package/data/build/dist/shared/assistant-avatar-legacy-resources.js.map +1 -0
  792. package/data/build/dist/shared/assistant-avatar-legacy.d.ts +15 -0
  793. package/data/build/dist/shared/assistant-avatar-legacy.d.ts.map +1 -0
  794. package/data/build/dist/shared/assistant-avatar-legacy.js +34 -0
  795. package/data/build/dist/shared/assistant-avatar-legacy.js.map +1 -0
  796. package/data/build/dist/shared/assistant-avatar-presets.d.ts +3 -0
  797. package/data/build/dist/shared/assistant-avatar-presets.d.ts.map +1 -0
  798. package/data/build/dist/shared/assistant-avatar-presets.js +3 -0
  799. package/data/build/dist/shared/assistant-avatar-presets.js.map +1 -0
  800. package/data/build/dist/shared/assistant-avatar-registration.d.ts +16 -0
  801. package/data/build/dist/shared/assistant-avatar-registration.d.ts.map +1 -0
  802. package/data/build/dist/shared/assistant-avatar-registration.js +33 -0
  803. package/data/build/dist/shared/assistant-avatar-registration.js.map +1 -0
  804. package/data/build/dist/shared/assistant-avatar-resources.d.ts +26 -0
  805. package/data/build/dist/shared/assistant-avatar-resources.d.ts.map +1 -0
  806. package/data/build/dist/shared/assistant-avatar-resources.js +4 -0
  807. package/data/build/dist/shared/assistant-avatar-resources.js.map +1 -0
  808. package/data/build/dist/shared/assistant-avatar.d.ts +103 -0
  809. package/data/build/dist/shared/assistant-avatar.d.ts.map +1 -0
  810. package/data/build/dist/shared/assistant-avatar.js +240 -0
  811. package/data/build/dist/shared/assistant-avatar.js.map +1 -0
  812. package/data/build/dist/shared/assistant-commands.d.ts +3 -0
  813. package/data/build/dist/shared/assistant-commands.d.ts.map +1 -0
  814. package/data/build/dist/shared/assistant-commands.js +3 -0
  815. package/data/build/dist/shared/assistant-commands.js.map +1 -0
  816. package/data/build/dist/shared/assistant-lifecycle.d.ts +17 -0
  817. package/data/build/dist/shared/assistant-lifecycle.d.ts.map +1 -0
  818. package/data/build/dist/shared/assistant-lifecycle.js +45 -0
  819. package/data/build/dist/shared/assistant-lifecycle.js.map +1 -0
  820. package/data/build/dist/shared/assistant-message-timeline.d.ts +13 -0
  821. package/data/build/dist/shared/assistant-message-timeline.d.ts.map +1 -0
  822. package/data/build/dist/shared/assistant-message-timeline.js +22 -0
  823. package/data/build/dist/shared/assistant-message-timeline.js.map +1 -0
  824. package/data/build/dist/shared/assistant-prompts.d.ts +12 -0
  825. package/data/build/dist/shared/assistant-prompts.d.ts.map +1 -0
  826. package/data/build/dist/shared/assistant-prompts.js +32 -0
  827. package/data/build/dist/shared/assistant-prompts.js.map +1 -0
  828. package/data/build/dist/shared/assistant-tts.d.ts +93 -0
  829. package/data/build/dist/shared/assistant-tts.d.ts.map +1 -0
  830. package/data/build/dist/shared/assistant-tts.js +80 -0
  831. package/data/build/dist/shared/assistant-tts.js.map +1 -0
  832. package/data/build/dist/shared/assistant-voice-sessions.d.ts +13 -0
  833. package/data/build/dist/shared/assistant-voice-sessions.d.ts.map +1 -0
  834. package/data/build/dist/shared/assistant-voice-sessions.js +16 -0
  835. package/data/build/dist/shared/assistant-voice-sessions.js.map +1 -0
  836. package/data/build/dist/shared/contracts/assistant.d.ts +206 -0
  837. package/data/build/dist/shared/contracts/assistant.d.ts.map +1 -1
  838. package/data/build/dist/shared/contracts/cli-adapter.d.ts +4 -0
  839. package/data/build/dist/shared/contracts/cli-adapter.d.ts.map +1 -1
  840. package/data/build/dist/shared/contracts/config.d.ts +23 -0
  841. package/data/build/dist/shared/contracts/config.d.ts.map +1 -1
  842. package/data/build/dist/shared/contracts/config.js +2 -0
  843. package/data/build/dist/shared/contracts/config.js.map +1 -1
  844. package/data/build/dist/shared/contracts/peer-host.d.ts +2 -0
  845. package/data/build/dist/shared/contracts/peer-host.d.ts.map +1 -1
  846. package/data/build/dist/shared/contracts/peer-host.js.map +1 -1
  847. package/data/build/dist/shared/contracts/terminal-share.d.ts +27 -0
  848. package/data/build/dist/shared/contracts/terminal-share.d.ts.map +1 -0
  849. package/data/build/dist/shared/contracts/terminal-share.js +2 -0
  850. package/data/build/dist/shared/contracts/terminal-share.js.map +1 -0
  851. package/data/build/dist/shared/contracts/version.d.ts +1 -1
  852. package/data/build/dist/shared/contracts/version.js +1 -1
  853. package/data/build/dist/shared/contracts/voice-runtime.d.ts +15 -1
  854. package/data/build/dist/shared/contracts/voice-runtime.d.ts.map +1 -1
  855. package/data/build/dist/shared/contracts/voice-runtime.js.map +1 -1
  856. package/data/build/dist/shared/desktop-assistant.d.ts +35 -0
  857. package/data/build/dist/shared/desktop-assistant.d.ts.map +1 -0
  858. package/data/build/dist/shared/desktop-assistant.js +27 -0
  859. package/data/build/dist/shared/desktop-assistant.js.map +1 -0
  860. package/data/build/dist/shared/index.d.ts +16 -2
  861. package/data/build/dist/shared/index.d.ts.map +1 -1
  862. package/data/build/dist/shared/index.js +10 -0
  863. package/data/build/dist/shared/index.js.map +1 -1
  864. package/data/build/dist/shared/runtime-environment.d.ts +5 -0
  865. package/data/build/dist/shared/runtime-environment.d.ts.map +1 -0
  866. package/data/build/dist/shared/runtime-environment.js +7 -0
  867. package/data/build/dist/shared/runtime-environment.js.map +1 -0
  868. package/data/build/dist/shared/voice-diagnostics.d.ts +18 -0
  869. package/data/build/dist/shared/voice-diagnostics.d.ts.map +1 -0
  870. package/data/build/dist/shared/voice-diagnostics.js +57 -0
  871. package/data/build/dist/shared/voice-diagnostics.js.map +1 -0
  872. package/data/build/dist/shared/voice-initialization.d.ts +22 -0
  873. package/data/build/dist/shared/voice-initialization.d.ts.map +1 -0
  874. package/data/build/dist/shared/voice-initialization.js +4 -0
  875. package/data/build/dist/shared/voice-initialization.js.map +1 -0
  876. package/data/build/dist/shared/voice-models.d.ts +43 -0
  877. package/data/build/dist/shared/voice-models.d.ts.map +1 -1
  878. package/data/build/dist/shared/voice-models.js +23 -8
  879. package/data/build/dist/shared/voice-models.js.map +1 -1
  880. package/data/build/dist/shared/voice-stream.d.ts +12 -1
  881. package/data/build/dist/shared/voice-stream.d.ts.map +1 -1
  882. package/data/build/dist/shared/voice-stream.js +8 -1
  883. package/data/build/dist/shared/voice-stream.js.map +1 -1
  884. package/package.json +21 -3
  885. package/profile/README.md +2 -2
  886. package/profile/package.json +2 -2
  887. package/profile/version.json +1 -1
  888. package/version.json +1 -1
@@ -0,0 +1,278 @@
1
+ import { createElement, useEffect, useMemo, useRef, useState } from 'react';
2
+ import { ASSISTANT_AVATAR_RUNTIME_PATH } from '../../shared/assistant-avatar.js';
3
+ import { readAssistantAvatarCacheStatus } from './cache-status.js';
4
+ import { captureAssistantAvatarPreview } from './preview-capture.js';
5
+ import { createAssistantAvatarPortraitFromPreview } from './portrait-capture.js';
6
+ /** 成功共享引擎;失败更换模块 URL,避免浏览器缓存失败的动态导入而无法恢复。 */
7
+ export class AssistantLive2dModuleLoader {
8
+ importModule;
9
+ fetchStatus;
10
+ module;
11
+ attempt = 0;
12
+ constructor(importModule = (url) => import(/* @vite-ignore */ url), fetchStatus = (...args) => fetch(...args)) {
13
+ this.importModule = importModule;
14
+ this.fetchStatus = fetchStatus;
15
+ }
16
+ load(location) {
17
+ if (this.module !== undefined)
18
+ return this.module;
19
+ const url = new URL(ASSISTANT_AVATAR_RUNTIME_PATH, location);
20
+ url.searchParams.set('v', '2.1.1');
21
+ if (this.attempt > 0)
22
+ url.searchParams.set('retry', String(this.attempt));
23
+ this.module = withLoadDeadline(this.importModule(url.href), 45000).then((module) => {
24
+ if (typeof module.init !== 'function')
25
+ throw new Error('avatar_runtime_invalid');
26
+ return module;
27
+ }).catch(async (error) => {
28
+ this.module = undefined;
29
+ this.attempt++;
30
+ // 动态 import 的错误不包含 HTTP 状态;只在失败时读取状态,不增加成功加载请求。
31
+ let status;
32
+ try {
33
+ status = (await this.fetchStatus(url, { credentials: 'same-origin', signal: AbortSignal.timeout(5000) })).status;
34
+ }
35
+ catch { /* 状态探测失败时保留最初的引擎错误。 */ }
36
+ if (status === 503)
37
+ throw new Error('avatar_runtime_unavailable');
38
+ if (status !== undefined && status !== 200)
39
+ throw new Error(`avatar_runtime_http_${status}`);
40
+ throw error;
41
+ });
42
+ return this.module;
43
+ }
44
+ }
45
+ const runtimeModuleLoader = new AssistantLive2dModuleLoader();
46
+ /** 固定同源独立 ESM,只在用户选择 Live2D 时加载;不进入主 Client bundle。 */
47
+ function loadLive2dModule() {
48
+ return runtimeModuleLoader.load(window.location.href);
49
+ }
50
+ /** l2d 某些下载失败只记录日志而不拒绝 Promise,必须限制永久等待。 */
51
+ async function withLoadDeadline(task, timeoutMs, observeActivity) {
52
+ let timer;
53
+ try {
54
+ return await Promise.race([task, new Promise((_resolve, reject) => {
55
+ const refresh = () => {
56
+ clearTimeout(timer);
57
+ timer = setTimeout(() => reject(new Error('avatar_load_timeout')), timeoutMs);
58
+ };
59
+ observeActivity?.(refresh);
60
+ refresh();
61
+ })]);
62
+ }
63
+ finally {
64
+ clearTimeout(timer);
65
+ observeActivity?.(undefined);
66
+ }
67
+ }
68
+ /** 参考上游 load/setState/resize/destroy;旧加载完成不能复活已销毁实例。 */
69
+ export class AssistantLive2dController {
70
+ runtime;
71
+ motionGroups;
72
+ options;
73
+ timeoutMs;
74
+ disposed = false;
75
+ state = 'idle';
76
+ loaded = false;
77
+ loadConfirmed = false;
78
+ cancelLoad;
79
+ refreshDeadline;
80
+ report;
81
+ constructor(runtime, motionGroups, options, report, timeoutMs = 45000) {
82
+ this.runtime = runtime;
83
+ this.motionGroups = motionGroups;
84
+ this.options = options;
85
+ this.timeoutMs = timeoutMs;
86
+ this.report = report;
87
+ runtime.on?.('loadstart', (total) => {
88
+ if (this.disposed)
89
+ return;
90
+ this.refreshDeadline?.();
91
+ this.report?.({ phase: 'resources', loaded: 0, total });
92
+ });
93
+ runtime.on?.('loadprogress', (loaded, total) => {
94
+ if (this.disposed)
95
+ return;
96
+ this.refreshDeadline?.();
97
+ this.report?.({ phase: total > 0 && loaded >= total ? 'rendering' : 'resources', loaded, total });
98
+ });
99
+ runtime.on?.('loaded', () => { if (!this.disposed)
100
+ this.loadConfirmed = true; });
101
+ }
102
+ async load(source) {
103
+ if (this.disposed)
104
+ return false;
105
+ this.loadConfirmed = false;
106
+ try {
107
+ const operation = this.runtime.load({ path: source, scale: this.options?.scale ?? 1, volume: 0, logLevel: 'warn',
108
+ ...(this.options?.position === undefined ? {} : { position: [...this.options.position] }) })
109
+ .then(() => {
110
+ if (this.disposed) {
111
+ this.runtime.destroy();
112
+ return false;
113
+ }
114
+ // 真实引擎可能静默返回;只有 loaded 事件才证明初始化成功。
115
+ if (this.runtime.on !== undefined && !this.loadConfirmed)
116
+ throw new Error('avatar_model_not_loaded');
117
+ return true;
118
+ }, (error) => { if (this.disposed) {
119
+ this.runtime.destroy();
120
+ return false;
121
+ } throw error; });
122
+ const cancelled = new Promise((resolve) => { this.cancelLoad = () => resolve(false); });
123
+ // 大模型持续有文件进度时继续等待,只对长时间没有进展的加载超时。
124
+ if (!await withLoadDeadline(Promise.race([operation, cancelled]), this.timeoutMs, (refresh) => { this.refreshDeadline = refresh; }))
125
+ return false;
126
+ this.loaded = true;
127
+ this.setState(this.state);
128
+ return true;
129
+ }
130
+ catch (error) {
131
+ this.dispose();
132
+ throw error;
133
+ }
134
+ finally {
135
+ this.cancelLoad = undefined;
136
+ }
137
+ }
138
+ setState(state) {
139
+ if (this.disposed)
140
+ return;
141
+ this.state = state;
142
+ if (!this.loaded)
143
+ return;
144
+ const groups = Object.keys(this.runtime.getMotions());
145
+ const desired = state === 'speaking' ? /talk|speak/iu : state === 'thinking' ? /think|work/iu
146
+ : state === 'error' ? /fail|error|sad/iu : state === 'listening' || state === 'waiting' ? /listen|wait/iu : /idle/iu;
147
+ const configured = this.motionGroups?.[state];
148
+ const group = configured !== undefined && groups.includes(configured) ? configured
149
+ : groups.find((name) => desired.test(name)) ?? groups.find((name) => /idle/iu.test(name));
150
+ if (group !== undefined)
151
+ this.runtime.playMotion(group, undefined, 2);
152
+ }
153
+ resize() { if (!this.disposed && this.loaded)
154
+ this.runtime.resize(); }
155
+ dispose() {
156
+ if (this.disposed)
157
+ return;
158
+ this.disposed = true;
159
+ // 上游只有 on,没有 off;清空回调引用并隔离迟到事件,避免持有旧 React 插槽。
160
+ this.report = undefined;
161
+ this.cancelLoad?.();
162
+ this.runtime.destroy();
163
+ }
164
+ }
165
+ /** 没有已绘制预览时只生成一次头像;捕获后立即销毁临时 WebGL 实例。 */
166
+ export async function createLive2dAssistantAvatarPortrait(model, signal) {
167
+ const preview = await createLive2dAssistantAvatarPortraitSource(model, signal);
168
+ return preview === undefined ? undefined : createAssistantAvatarPortraitFromPreview(preview, signal);
169
+ }
170
+ /** 编辑器复用同一静态帧来源,临时实例的销毁仍由适配器统一完成。 */
171
+ export async function createLive2dAssistantAvatarPortraitSource(model, signal) {
172
+ if (signal.aborted || typeof document === 'undefined')
173
+ return undefined;
174
+ const module = await loadLive2dModule();
175
+ if (signal.aborted)
176
+ return undefined;
177
+ const canvas = document.createElement('canvas');
178
+ canvas.width = 512;
179
+ canvas.height = 555;
180
+ canvas.style.cssText = 'position:fixed;left:-10000px;top:0;width:256px;height:277.5px;pointer-events:none;opacity:0';
181
+ canvas.setAttribute('aria-hidden', 'true');
182
+ document.body.appendChild(canvas);
183
+ let controller;
184
+ const abort = () => controller?.dispose();
185
+ try {
186
+ const runtime = module.init(canvas);
187
+ if (runtime === null)
188
+ return undefined;
189
+ controller = new AssistantLive2dController(runtime, model.motionGroups, model.live2d);
190
+ signal.addEventListener('abort', abort, { once: true });
191
+ if (signal.aborted || !await controller.load(model.source) || signal.aborted)
192
+ return undefined;
193
+ return await captureAssistantAvatarPreview(runtime.getCanvas?.() ?? canvas, signal);
194
+ }
195
+ finally {
196
+ signal.removeEventListener('abort', abort);
197
+ controller?.dispose();
198
+ canvas.remove();
199
+ }
200
+ }
201
+ export function Live2dAssistantAvatar({ model, state, size, onError, onLoadProgress, diagnostics = false, onPreview }) {
202
+ const configKey = JSON.stringify([model.motionGroups, model.live2d]);
203
+ // 设置归一化会复制 JSON;等值映射不能因为父组件刷新而重载整个 WebGL 模型。
204
+ const config = useMemo(() => ({ motionGroups: model.motionGroups, options: model.live2d }), [configKey]);
205
+ const canvas = useRef(null);
206
+ const controller = useRef(undefined);
207
+ const currentState = useRef(state);
208
+ currentState.current = state;
209
+ const [visible, setVisible] = useState(() => typeof document === 'undefined' || !document.hidden);
210
+ useEffect(() => {
211
+ const refresh = () => setVisible(!document.hidden);
212
+ document.addEventListener('visibilitychange', refresh);
213
+ return () => document.removeEventListener('visibilitychange', refresh);
214
+ }, []);
215
+ useEffect(() => {
216
+ const target = canvas.current;
217
+ if (target === null || !visible)
218
+ return undefined;
219
+ let disposed = false;
220
+ let instance;
221
+ const previewController = new AbortController();
222
+ const started = diagnostics ? performance.now() : 0;
223
+ let progress = { phase: 'engine' };
224
+ const report = (next) => {
225
+ if (disposed)
226
+ return;
227
+ if (!diagnostics) {
228
+ onLoadProgress?.(next);
229
+ return;
230
+ }
231
+ const elapsedMs = performance.now() - started;
232
+ progress = { ...progress, ...next, elapsedMs,
233
+ ...(next.phase === 'rendering' && progress.resourcesMs === undefined ? { resourcesMs: elapsedMs } : {}) };
234
+ onLoadProgress?.(progress);
235
+ };
236
+ report(progress);
237
+ const observer = typeof ResizeObserver === 'undefined' ? undefined : new ResizeObserver(() => instance?.resize());
238
+ observer?.observe(target);
239
+ // 正式环境不启动缓存诊断,也不等待它;Stage0 才采集真实前后快照。
240
+ void Promise.all([loadLive2dModule(), diagnostics ? readAssistantAvatarCacheStatus(model.source, window.location.href) : undefined]).then(async ([module, before]) => {
241
+ if (disposed)
242
+ return;
243
+ report({ phase: 'resources', ...(before === undefined ? {} : { cacheBefore: before }) });
244
+ const runtime = module.init(target);
245
+ if (runtime === null)
246
+ throw new Error('avatar_webgl_unavailable');
247
+ instance = new AssistantLive2dController(runtime, config.motionGroups, config.options, report);
248
+ controller.current = instance;
249
+ instance.setState(currentState.current);
250
+ if (!await instance.load(model.source) || disposed)
251
+ return;
252
+ if (onPreview !== undefined) {
253
+ // 引擎 loaded 时首帧可能还未绘制;等待有效绘制后才替换本地静态预览。
254
+ const preview = await captureAssistantAvatarPreview(runtime.getCanvas?.() ?? target, previewController.signal);
255
+ if (disposed)
256
+ return;
257
+ if (preview !== undefined)
258
+ onPreview(preview);
259
+ }
260
+ report({ phase: 'ready' });
261
+ if (!diagnostics)
262
+ return;
263
+ // 加载已完成,诊断不推迟角色显示;保留真实完成耗时,排除诊断响应时间。
264
+ const finished = progress;
265
+ const after = await readAssistantAvatarCacheStatus(model.source, window.location.href);
266
+ if (!disposed && after !== undefined) {
267
+ progress = { ...finished, cacheAfter: after };
268
+ onLoadProgress?.(progress);
269
+ }
270
+ }).catch((error) => { if (!disposed)
271
+ onError(error instanceof Error ? error.message : String(error)); });
272
+ return () => { disposed = true; previewController.abort(); observer?.disconnect(); instance?.dispose(); controller.current = undefined; };
273
+ }, [model.source, config, visible, onError, onLoadProgress, diagnostics, onPreview]);
274
+ useEffect(() => { controller.current?.setState(state); }, [state]);
275
+ return createElement('canvas', { ref: canvas, width: Math.round(size * 2), height: Math.round(size * 208 / 192 * 2), 'aria-hidden': true,
276
+ style: { width: size, height: 'auto', aspectRatio: '192 / 208', maxWidth: '100%', display: 'block' } });
277
+ }
278
+ //# sourceMappingURL=live2d.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"live2d.js","sourceRoot":"","sources":["../../../../../src/client/avatar/live2d.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import type { ReactElement } from 'react';
2
+ import type { AssistantAvatarCacheStatus } from '../../shared/assistant-avatar-resources.js';
3
+ import type { CodingNsTranslator } from '../locale.js';
4
+ /** 统一加载反馈;可选字段只在渲染器有真实证据时提供。 */
5
+ export interface AssistantAvatarLoadProgress {
6
+ readonly phase: 'engine' | 'resources' | 'rendering' | 'ready';
7
+ readonly loaded?: number;
8
+ readonly total?: number;
9
+ readonly elapsedMs?: number;
10
+ readonly resourcesMs?: number;
11
+ readonly cacheBefore?: AssistantAvatarCacheStatus;
12
+ readonly cacheAfter?: AssistantAvatarCacheStatus;
13
+ }
14
+ /** 百分比只根据已经完成的文件计数生成;未知总数保留循环动画。 */
15
+ export declare function assistantAvatarLoadPercent(progress: AssistantAvatarLoadProgress): number | undefined;
16
+ /** 透明光晕、轨道光点与细进度条,直接复用插槽尺寸和宿主主题。 */
17
+ export declare function AssistantAvatarLoading({ progress, size, t, showCache, diagnostics, preview, animationOnly }: {
18
+ readonly progress: AssistantAvatarLoadProgress;
19
+ readonly size: number;
20
+ readonly t: CodingNsTranslator;
21
+ readonly showCache?: boolean;
22
+ readonly diagnostics?: boolean;
23
+ readonly preview?: boolean;
24
+ /** 临时预览仅显示加载动画,下载与引擎准备均不显示文字或进度条。 */
25
+ readonly animationOnly?: boolean;
26
+ }): ReactElement | null;
27
+ //# sourceMappingURL=loading.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loading.d.ts","sourceRoot":"","sources":["../../../../../src/client/avatar/loading.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAA;AACzC,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,4CAA4C,CAAA;AAC5F,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AAGtD,gCAAgC;AAChC,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,KAAK,EAAE,QAAQ,GAAG,WAAW,GAAG,WAAW,GAAG,OAAO,CAAA;IAC9D,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,WAAW,CAAC,EAAE,0BAA0B,CAAA;IACjD,QAAQ,CAAC,UAAU,CAAC,EAAE,0BAA0B,CAAA;CACjD;AAeD,oCAAoC;AACpC,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,2BAA2B,GAAG,MAAM,GAAG,SAAS,CAIpG;AAkBD,oCAAoC;AACpC,wBAAgB,sBAAsB,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,SAAiB,EAAE,WAAmB,EAAE,OAAe,EAAE,aAAqB,EAAE,EAAE;IAC5I,QAAQ,CAAC,QAAQ,EAAE,2BAA2B,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,CAAC,EAAE,kBAAkB,CAAA;IACrG,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;IACxF,qCAAqC;IACrC,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAA;CACjC,GAAG,YAAY,GAAG,IAAI,CAiDtB"}
@@ -0,0 +1,74 @@
1
+ import { createElement } from 'react';
2
+ import { dshThemeColor } from '../theme.js';
3
+ const loadingStyle = `
4
+ @keyframes codingns-avatar-orbit { to { transform: rotate(360deg); } }
5
+ @keyframes codingns-avatar-breathe { 50% { transform: scale(1.08); opacity: .65; } }
6
+ @keyframes codingns-avatar-shimmer { from { transform: translateX(-130%); } to { transform: translateX(330%); } }
7
+ [data-codingns-avatar-loading] .codingns-avatar-halo { animation: codingns-avatar-breathe 2.6s ease-in-out infinite; }
8
+ [data-codingns-avatar-loading] .codingns-avatar-orbit { animation: codingns-avatar-orbit 3s linear infinite; }
9
+ [data-codingns-avatar-loading] .codingns-avatar-indeterminate { animation: codingns-avatar-shimmer 1.6s ease-in-out infinite; }
10
+ @media (prefers-reduced-motion: reduce) {
11
+ [data-codingns-avatar-loading] .codingns-avatar-halo,
12
+ [data-codingns-avatar-loading] .codingns-avatar-orbit,
13
+ [data-codingns-avatar-loading] .codingns-avatar-indeterminate { animation: none; }
14
+ }`;
15
+ /** 百分比只根据已经完成的文件计数生成;未知总数保留循环动画。 */
16
+ export function assistantAvatarLoadPercent(progress) {
17
+ if (progress.total === undefined || progress.loaded === undefined || !Number.isFinite(progress.total)
18
+ || !Number.isFinite(progress.loaded) || progress.total <= 0)
19
+ return undefined;
20
+ return Math.round(Math.min(1, Math.max(0, progress.loaded / progress.total)) * 100);
21
+ }
22
+ /** 计数只在同一缓存代际内可相减,Host 重建后不能把相同数字解释成下载为零。 */
23
+ function newHostDownloads(progress) {
24
+ const before = progress.cacheBefore;
25
+ const after = progress.cacheAfter;
26
+ if (before === undefined || after === undefined || after.generation !== before.generation || after.downloads < before.downloads)
27
+ return undefined;
28
+ return after.downloads - before.downloads;
29
+ }
30
+ function cacheText(progress, t) {
31
+ const before = progress.cacheBefore;
32
+ if (before === undefined)
33
+ return t('avatar.cacheUnknown');
34
+ const initial = t('avatar.cacheBefore', { cached: before.cached, total: before.total });
35
+ const count = newHostDownloads(progress);
36
+ return count === undefined ? initial : `${initial} · ${t('avatar.cacheDownloads', { count })}`;
37
+ }
38
+ /** 透明光晕、轨道光点与细进度条,直接复用插槽尺寸和宿主主题。 */
39
+ export function AssistantAvatarLoading({ progress, size, t, showCache = false, diagnostics = false, preview = false, animationOnly = false }) {
40
+ // 即使第三方渲染器仍上报诊断字段,正式环境也不能显示摘要或隐藏的调试 tooltip。
41
+ showCache = !animationOnly && diagnostics && showCache;
42
+ if (progress.phase === 'ready' && (!diagnostics || animationOnly))
43
+ return null;
44
+ const percent = assistantAvatarLoadPercent(progress);
45
+ const compact = size < 120;
46
+ const ready = progress.phase === 'ready';
47
+ const elapsed = progress.elapsedMs === undefined ? '' : t('avatar.loadElapsed', { seconds: (progress.elapsedMs / 1000).toFixed(2) });
48
+ const shortElapsed = progress.elapsedMs === undefined ? '' : t('avatar.loadElapsedCompact', { seconds: (progress.elapsedMs / 1000).toFixed(2) });
49
+ const details = [showCache ? cacheText(progress, t) : '', elapsed,
50
+ progress.resourcesMs === undefined ? '' : t('avatar.loadResourcesElapsed', { seconds: (progress.resourcesMs / 1000).toFixed(2) })].filter(Boolean).join(' · ');
51
+ const newDownloads = newHostDownloads(progress);
52
+ if (ready)
53
+ return createElement('span', { 'data-codingns-avatar-load-summary': true, title: details,
54
+ style: { position: 'absolute', bottom: 0, maxWidth: '100%', fontSize: 10, lineHeight: 1.4, color: dshThemeColor.labelSecondary,
55
+ textAlign: 'center', background: dshThemeColor.cardBackground, borderRadius: 8, padding: '2px 6px' } }, showCache ? createElement('span', { style: { display: 'block' } }, progress.cacheBefore === undefined ? t('avatar.cacheUnknown')
56
+ : t(compact ? 'avatar.cacheTiny' : 'avatar.cacheShort', { cached: progress.cacheBefore.cached, total: progress.cacheBefore.total })) : null, createElement('span', { style: { display: 'block' } }, [showCache && newDownloads !== undefined
57
+ ? t(compact ? 'avatar.cacheDownloadsTiny' : 'avatar.cacheDownloadsCompact', { count: newDownloads }) : '',
58
+ compact && showCache && newDownloads !== undefined ? '' : shortElapsed].filter(Boolean).join(' · ')));
59
+ const phaseText = progress.phase === 'engine' ? t('avatar.loadEngine') : progress.phase === 'rendering' ? t('avatar.loadRendering') : t('avatar.loading');
60
+ const orbSize = preview ? 14 : Math.min(80, size * (compact ? .3 : .46));
61
+ const cache = progress.cacheBefore;
62
+ const cacheLabel = compact ? cache === undefined ? t('avatar.cacheUnknownCompact') : t('avatar.cacheTiny', { cached: cache.cached, total: cache.total }) : cacheText(progress, t);
63
+ return createElement('div', { 'data-codingns-avatar-loading': progress.phase, role: 'status', 'aria-label': phaseText,
64
+ ...(showCache ? { title: cacheText(progress, t) } : {}),
65
+ style: { position: 'absolute', inset: preview ? 'auto 0 0' : 0, display: 'flex', flexDirection: 'column', justifyContent: 'center', alignItems: 'center', gap: compact || preview ? 4 : 10,
66
+ ...(preview ? { padding: '5px 4px', borderRadius: 10, background: dshThemeColor.cardBackground } : {}),
67
+ pointerEvents: 'none', color: dshThemeColor.labelSecondary, textAlign: 'center' } }, createElement('style', null, loadingStyle), createElement('div', { style: { display: 'flex', flexDirection: preview ? 'row' : 'column', alignItems: 'center', gap: compact || preview ? 4 : 10 } }, createElement('div', { 'aria-hidden': true, style: { position: 'relative', flexShrink: 0, width: orbSize, height: orbSize, color: dshThemeColor.accent } }, createElement('div', { className: 'codingns-avatar-halo', style: { position: 'absolute', inset: '-14%', borderRadius: '50%',
68
+ background: 'radial-gradient(circle, rgba(112, 148, 255, .24), rgba(132, 204, 247, .10) 55%, transparent 72%)' } }), createElement('div', { className: 'codingns-avatar-orbit', style: { position: 'absolute', inset: 0, borderRadius: '50%', border: '1px solid rgba(112, 148, 255, .20)' } }, createElement('span', { style: { position: 'absolute', top: -3, left: '50%', width: 6, height: 6, borderRadius: '50%', background: 'currentColor', boxShadow: '0 0 12px rgba(112, 148, 255, .5)' } })), createElement('svg', { viewBox: '0 0 64 64', style: { position: 'absolute', inset: '20%', width: '60%', height: '60%' }, fill: 'none' }, createElement('path', { d: 'M32 9C35 23 41 29 55 32C41 35 35 41 32 55C29 41 23 35 9 32C23 29 29 23 32 9Z', fill: 'currentColor', opacity: .85 }), createElement('circle', { cx: 51, cy: 12, r: 3, fill: 'currentColor', opacity: .4 }))), animationOnly ? null : createElement('span', { style: { fontSize: compact || preview ? 10 : size < 160 ? 11 : 13, fontWeight: 500 } }, compact || preview ? t('avatar.loadingCompact') : phaseText)), animationOnly ? null : createElement('div', { role: 'progressbar', 'aria-label': t('avatar.loadProgress'), 'aria-valuemin': 0, 'aria-valuemax': 100,
69
+ ...(percent === undefined ? {} : { 'aria-valuenow': percent }),
70
+ style: { width: Math.min(130, size * .74), height: 3, flexShrink: 0, borderRadius: 3, overflow: 'hidden', background: 'rgba(112, 148, 255, .15)' } }, createElement('div', { className: percent === undefined ? 'codingns-avatar-indeterminate' : undefined,
71
+ style: { width: percent === undefined ? '30%' : `${percent}%`, height: '100%', borderRadius: 3,
72
+ background: 'linear-gradient(90deg, #81c9ed, #7791f7)', transition: 'width .2s ease' } })), animationOnly ? null : createElement('span', { style: { fontSize: 10, lineHeight: 1.5, padding: '0 6px', maxWidth: '100%' } }, percent === undefined ? null : `${progress.loaded}/${progress.total} · ${percent}%`, showCache ? createElement('span', { style: { display: 'block' } }, cacheLabel) : null));
73
+ }
74
+ //# sourceMappingURL=loading.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loading.js","sourceRoot":"","sources":["../../../../../src/client/avatar/loading.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAIrC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAa3C,MAAM,YAAY,GAAG;;;;;;;;;;;EAWnB,CAAA;AAEF,oCAAoC;AACpC,MAAM,UAAU,0BAA0B,CAAC,QAAqC;IAC9E,IAAI,QAAQ,CAAC,KAAK,KAAK,SAAS,IAAI,QAAQ,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC;WAChG,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,KAAK,IAAI,CAAC;QAAE,OAAO,SAAS,CAAA;IAC/E,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,CAAC,CAAA;AACrF,CAAC;AAED,6CAA6C;AAC7C,SAAS,gBAAgB,CAAC,QAAqC;IAC7D,MAAM,MAAM,GAAG,QAAQ,CAAC,WAAW,CAAA;IACnC,MAAM,KAAK,GAAG,QAAQ,CAAC,UAAU,CAAA;IACjC,IAAI,MAAM,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,UAAU,KAAK,MAAM,CAAC,UAAU,IAAI,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS;QAAE,OAAO,SAAS,CAAA;IACjJ,OAAO,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAA;AAC3C,CAAC;AAED,SAAS,SAAS,CAAC,QAAqC,EAAE,CAAqB;IAC7E,MAAM,MAAM,GAAG,QAAQ,CAAC,WAAW,CAAA;IACnC,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,CAAC,CAAC,qBAAqB,CAAC,CAAA;IACzD,MAAM,OAAO,GAAG,CAAC,CAAC,oBAAoB,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAA;IACvF,MAAM,KAAK,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAA;IACxC,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,MAAM,CAAC,CAAC,uBAAuB,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAA;AAChG,CAAC;AAED,oCAAoC;AACpC,MAAM,UAAU,sBAAsB,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,SAAS,GAAG,KAAK,EAAE,WAAW,GAAG,KAAK,EAAE,OAAO,GAAG,KAAK,EAAE,aAAa,GAAG,KAAK,EAKzI;IACC,6CAA6C;IAC7C,SAAS,GAAG,CAAC,aAAa,IAAI,WAAW,IAAI,SAAS,CAAA;IACtD,IAAI,QAAQ,CAAC,KAAK,KAAK,OAAO,IAAI,CAAC,CAAC,WAAW,IAAI,aAAa,CAAC;QAAE,OAAO,IAAI,CAAA;IAC9E,MAAM,OAAO,GAAG,0BAA0B,CAAC,QAAQ,CAAC,CAAA;IACpD,MAAM,OAAO,GAAG,IAAI,GAAG,GAAG,CAAA;IAC1B,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,KAAK,OAAO,CAAA;IACxC,MAAM,OAAO,GAAG,QAAQ,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,oBAAoB,EAAE,EAAE,OAAO,EAAE,CAAC,QAAQ,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;IACpI,MAAM,YAAY,GAAG,QAAQ,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,2BAA2B,EAAE,EAAE,OAAO,EAAE,CAAC,QAAQ,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;IAChJ,MAAM,OAAO,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO;QAC/D,QAAQ,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,6BAA6B,EAAE,EAAE,OAAO,EAAE,CAAC,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAChK,MAAM,YAAY,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAA;IAC/C,IAAI,KAAK;QAAE,OAAO,aAAa,CAAC,MAAM,EAAE,EAAE,mCAAmC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO;YACjG,KAAK,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,KAAK,EAAE,aAAa,CAAC,cAAc;gBAC5H,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,aAAa,CAAC,cAAc,EAAE,YAAY,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,EACxG,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,QAAQ,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC;YAC9H,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,mBAAmB,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,WAAW,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAC7I,aAAa,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,SAAS,IAAI,YAAY,KAAK,SAAS;gBAC7F,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,8BAA8B,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;YACzG,OAAO,IAAI,SAAS,IAAI,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IACzG,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,KAAK,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAA;IACzJ,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;IACxE,MAAM,KAAK,GAAG,QAAQ,CAAC,WAAW,CAAA;IAClC,MAAM,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,kBAAkB,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAA;IACjL,OAAO,aAAa,CAAC,KAAK,EAAE,EAAE,8BAA8B,EAAE,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS;QACnH,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvD,KAAK,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;YACxL,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,EAAE,EAAE,UAAU,EAAE,aAAa,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACtG,aAAa,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,CAAC,cAAc,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EACrF,aAAa,CAAC,OAAO,EAAE,IAAI,EAAE,YAAY,CAAC,EAC1C,aAAa,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EACtJ,aAAa,CAAC,KAAK,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,CAAC,MAAM,EAAE,EAAE,EACxJ,aAAa,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,sBAAsB,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK;YACzH,UAAU,EAAE,kGAAkG,EAAE,EAAE,CAAC,EACrH,aAAa,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,uBAAuB,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,oCAAoC,EAAE,EAAE,EACvK,aAAa,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,SAAS,EAAE,kCAAkC,EAAE,EAAE,CAAC,CAAC,EACxM,aAAa,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EACrI,aAAa,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,8EAA8E,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,EAChJ,aAAa,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAC1F,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,EAAE,EAAE,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EACpM,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC,CAAC,qBAAqB,CAAC,EAAE,eAAe,EAAE,CAAC,EAAE,eAAe,EAAE,GAAG;QACjJ,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC;QAC9D,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,GAAG,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,0BAA0B,EAAE,EAAE,EACpJ,aAAa,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,+BAA+B,CAAC,CAAC,CAAC,SAAS;QACnG,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,OAAO,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC;YAC5F,UAAU,EAAE,0CAA0C,EAAE,UAAU,EAAE,gBAAgB,EAAE,EAAE,CAAC,CAAC,EAChG,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAC3H,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,KAAK,MAAM,OAAO,GAAG,EACnF,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;AAC7F,CAAC"}
@@ -0,0 +1,71 @@
1
+ import type { AssistantAppearanceSettings, AssistantAvatarModel } from '../../shared/assistant-avatar.js';
2
+ import type { AssistantAvatarAdapter } from '../../shared/assistant-avatar-adapters.js';
3
+ import type { CodingNsSettings } from '../../shared/contracts/config.js';
4
+ import type { CodingNsSettingsStore } from '../../dsh-capabilities/settings-store.js';
5
+ import type { CodingNsClientServices } from '../features/types.js';
6
+ import { AssistantAvatarRegistration } from './registration.js';
7
+ import type { CodingNsRpcClient } from '../features/types.js';
8
+ import type { AssistantAvatarCandidate } from '../../shared/assistant-avatar-installation.js';
9
+ import type { AssistantAvatarCatalogEntry, AssistantAvatarTemporaryPreview } from '../../shared/assistant-avatar-catalog.js';
10
+ import type { AssistantAvatarEngineStatus } from '../../shared/assistant-avatar-engine.js';
11
+ export declare class AssistantAvatarAdapterRegistry extends AssistantAvatarRegistration<AssistantAvatarAdapter> {
12
+ constructor();
13
+ parse(manifest: unknown, manifestUrl: string, adapterId?: string): AssistantAvatarModel;
14
+ }
15
+ export type AssistantAppearanceUpdate = Partial<Pick<AssistantAppearanceSettings, 'floatingEnabled' | 'dialogEnabled' | 'floatingSize' | 'dialogSize'>>;
16
+ /** 唯一写入入口:包导入与手工素材最终都变成同一清单,不拥有语音或会话。 */
17
+ export declare class AssistantAvatarManager {
18
+ private readonly settings;
19
+ readonly adapters: AssistantAvatarAdapterRegistry;
20
+ private readonly fetchManifest;
21
+ private readonly baseUrl;
22
+ private readonly rpc?;
23
+ private readonly removePortrait;
24
+ private writes;
25
+ private appearance;
26
+ private catalog;
27
+ constructor(settings: CodingNsSettingsStore<CodingNsSettings>, adapters?: AssistantAvatarAdapterRegistry, fetchManifest?: typeof fetch, baseUrl?: string | undefined, rpc?: CodingNsRpcClient | undefined, removePortrait?: (id: string) => void);
28
+ /** React 和扩展都可以订阅这一份稳定快照,语音设置变化不会刷新形象列表。 */
29
+ readonly getSnapshot: () => AssistantAppearanceSettings;
30
+ readonly subscribe: (listener: () => void) => (() => void);
31
+ getAppearance(): AssistantAppearanceSettings;
32
+ list(): readonly AssistantAvatarModel[];
33
+ getSelected(): AssistantAvatarModel;
34
+ select(id: string): Promise<void>;
35
+ add(model: AssistantAvatarModel): Promise<void>;
36
+ update(model: AssistantAvatarModel): Promise<void>;
37
+ remove(id: string): Promise<void>;
38
+ configure(update: AssistantAppearanceUpdate): Promise<void>;
39
+ /** 必须从独立协议操作调用;展示配置不会隐式开启第三方目录。 */
40
+ setThirdPartyEnabled(enabled: boolean): Promise<void>;
41
+ /** 引擎许可与第三方素材协议分开记录;撤销同意不卸载已安装引擎。 */
42
+ setEngineEnabled(enabled: boolean): Promise<void>;
43
+ /** 只读探测;已确认许可后由安装接口写入 CodingNS 自有引擎目录。 */
44
+ engineStatus(signal?: AbortSignal): Promise<AssistantAvatarEngineStatus>;
45
+ installEngine(signal?: AbortSignal): Promise<AssistantAvatarEngineStatus>;
46
+ getCatalog(signal?: AbortSignal): Promise<readonly AssistantAvatarCatalogEntry[]>;
47
+ previewCatalog(id: string, revision: string, lease: string, signal?: AbortSignal): Promise<AssistantAvatarTemporaryPreview>;
48
+ releasePreview(lease: string): Promise<void>;
49
+ keepPreview(lease: string): Promise<void>;
50
+ installCatalog(id: string, revision: string, licenseAccepted: boolean, signal?: AbortSignal, lease?: string): Promise<AssistantAvatarModel>;
51
+ /** 只读清单 JSON;网络/解析/取消失败都不新增形象,不修改当前选择。 */
52
+ importPackage(source: string, adapterId?: string, signal?: AbortSignal): Promise<AssistantAvatarModel>;
53
+ /** 新入口在 Host 安装完整素材后才写入形象列表;旧外链导入 API 保持兼容。 */
54
+ discover(source: string, signal?: AbortSignal): Promise<readonly AssistantAvatarCandidate[]>;
55
+ installPackage(source: string, adapterId?: string, signal?: AbortSignal): Promise<AssistantAvatarModel>;
56
+ private registerInstallation;
57
+ private call;
58
+ private insert;
59
+ private write;
60
+ private saveAppearance;
61
+ private requireWritable;
62
+ private requireConsent;
63
+ private requireEngineConsent;
64
+ private requireModel;
65
+ private requireCustom;
66
+ }
67
+ export declare function bindAssistantAvatarManager(services: CodingNsClientServices, manager: AssistantAvatarManager): void;
68
+ export declare function getAssistantAvatarManager(services: CodingNsClientServices): AssistantAvatarManager;
69
+ /** 扩展应将注销函数登记到 context.resources,已导入的数据不会随适配器注销丢失。 */
70
+ export declare function registerAssistantAvatarAdapter(services: CodingNsClientServices, adapter: AssistantAvatarAdapter): () => void;
71
+ //# sourceMappingURL=manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../../../src/client/avatar/manager.ts"],"names":[],"mappings":"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"}