@jingyi0605/codingns4dsh 0.2.1-beta.9 → 0.2.1-rc.2

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 (848) hide show
  1. package/README.en.md +8 -6
  2. package/README.md +11 -8
  3. package/assets/provider-icons/magpie.png +0 -0
  4. package/data/build/dist/bootstrap/dsh-connection-adapter.d.ts +1 -1
  5. package/data/build/dist/bootstrap/dsh-connection-adapter.d.ts.map +1 -1
  6. package/data/build/dist/bootstrap/index.d.ts +1 -1
  7. package/data/build/dist/bootstrap/index.d.ts.map +1 -1
  8. package/data/build/dist/client/account-bar.d.ts.map +1 -1
  9. package/data/build/dist/client/account-bar.js +24 -70
  10. package/data/build/dist/client/account-bar.js.map +1 -1
  11. package/data/build/dist/client/adapter-catalog-watch.d.ts +10 -2
  12. package/data/build/dist/client/adapter-catalog-watch.d.ts.map +1 -1
  13. package/data/build/dist/client/adapter-catalog-watch.js +16 -4
  14. package/data/build/dist/client/adapter-catalog-watch.js.map +1 -1
  15. package/data/build/dist/client/bundle.js +54516 -35293
  16. package/data/build/dist/client/bundle.js.map +1 -1
  17. package/data/build/dist/client/cli-management-dialog.d.ts +21 -0
  18. package/data/build/dist/client/cli-management-dialog.d.ts.map +1 -0
  19. package/data/build/dist/client/cli-management-dialog.js +215 -0
  20. package/data/build/dist/client/cli-management-dialog.js.map +1 -0
  21. package/data/build/dist/client/cli-management-terminal.d.ts +9 -0
  22. package/data/build/dist/client/cli-management-terminal.d.ts.map +1 -0
  23. package/data/build/dist/client/cli-management-terminal.js +30 -0
  24. package/data/build/dist/client/cli-management-terminal.js.map +1 -0
  25. package/data/build/dist/client/cli-settings-dialog.d.ts +9 -0
  26. package/data/build/dist/client/cli-settings-dialog.d.ts.map +1 -0
  27. package/data/build/dist/client/cli-settings-dialog.js +45 -0
  28. package/data/build/dist/client/cli-settings-dialog.js.map +1 -0
  29. package/data/build/dist/client/cli-settings-rpc.js +1 -1
  30. package/data/build/dist/client/cli-settings-rpc.js.map +1 -1
  31. package/data/build/dist/client/cli-slots.d.ts +17 -3
  32. package/data/build/dist/client/cli-slots.d.ts.map +1 -1
  33. package/data/build/dist/client/cli-slots.js +300 -41
  34. package/data/build/dist/client/cli-slots.js.map +1 -1
  35. package/data/build/dist/client/client.assistant-configuration-view.js +4 -3
  36. package/data/build/dist/client/client.assistant-configuration-view.js.map +1 -1
  37. package/data/build/dist/client/client.delegate-command.js +44 -26
  38. package/data/build/dist/client/client.delegate-command.js.map +1 -1
  39. package/data/build/dist/client/client.editor-engine.js +4 -1
  40. package/data/build/dist/client/client.editor-engine.js.map +1 -1
  41. package/data/build/dist/client/{client.model-catalog-cache.js → client.magpie-model-tag.js} +241 -12
  42. package/data/build/dist/client/client.magpie-model-tag.js.map +1 -0
  43. package/data/build/dist/client/client.moss-voice-output.js +415 -0
  44. package/data/build/dist/client/client.moss-voice-output.js.map +1 -0
  45. package/data/build/dist/client/client.native-workspace-store.js +65 -15
  46. package/data/build/dist/client/client.native-workspace-store.js.map +1 -1
  47. package/data/build/dist/client/client.primitives-adapter.js +128 -0
  48. package/data/build/dist/client/client.primitives-adapter.js.map +1 -1
  49. package/data/build/dist/client/client.react-dom.js +0 -404
  50. package/data/build/dist/client/client.react-dom.js.map +1 -1
  51. package/data/build/dist/client/client.session-translation.js +121 -2
  52. package/data/build/dist/client/client.session-translation.js.map +1 -1
  53. package/data/build/dist/client/client.transport.js +738 -57
  54. package/data/build/dist/client/client.transport.js.map +1 -1
  55. package/data/build/dist/client/conversation-translation-settings.d.ts +11 -0
  56. package/data/build/dist/client/conversation-translation-settings.d.ts.map +1 -0
  57. package/data/build/dist/client/conversation-translation-settings.js +54 -0
  58. package/data/build/dist/client/conversation-translation-settings.js.map +1 -0
  59. package/data/build/dist/client/delegate-command.d.ts.map +1 -1
  60. package/data/build/dist/client/delegate-command.js +36 -7
  61. package/data/build/dist/client/delegate-command.js.map +1 -1
  62. package/data/build/dist/client/desktop-assistant.js +1202 -494
  63. package/data/build/dist/client/editor-engine.d.ts +1 -1
  64. package/data/build/dist/client/editor-engine.d.ts.map +1 -1
  65. package/data/build/dist/client/editor-engine.js +4 -1
  66. package/data/build/dist/client/editor-engine.js.map +1 -1
  67. package/data/build/dist/client/features/cli-adapters.d.ts +3 -1
  68. package/data/build/dist/client/features/cli-adapters.d.ts.map +1 -1
  69. package/data/build/dist/client/features/cli-adapters.js +207 -112
  70. package/data/build/dist/client/features/cli-adapters.js.map +1 -1
  71. package/data/build/dist/client/features/file-management.d.ts.map +1 -1
  72. package/data/build/dist/client/features/file-management.js +18 -0
  73. package/data/build/dist/client/features/file-management.js.map +1 -1
  74. package/data/build/dist/client/features/index.d.ts.map +1 -1
  75. package/data/build/dist/client/features/index.js +2 -0
  76. package/data/build/dist/client/features/index.js.map +1 -1
  77. package/data/build/dist/client/features/lan-access-panel.d.ts.map +1 -1
  78. package/data/build/dist/client/features/lan-access-panel.js +1 -0
  79. package/data/build/dist/client/features/lan-access-panel.js.map +1 -1
  80. package/data/build/dist/client/features/mobile-access.d.ts.map +1 -1
  81. package/data/build/dist/client/features/mobile-access.js +7 -0
  82. package/data/build/dist/client/features/mobile-access.js.map +1 -1
  83. package/data/build/dist/client/features/peer-host.d.ts.map +1 -1
  84. package/data/build/dist/client/features/peer-host.js +6 -0
  85. package/data/build/dist/client/features/peer-host.js.map +1 -1
  86. package/data/build/dist/client/features/quick-apps.d.ts +3 -0
  87. package/data/build/dist/client/features/quick-apps.d.ts.map +1 -0
  88. package/data/build/dist/client/features/quick-apps.js +14 -0
  89. package/data/build/dist/client/features/quick-apps.js.map +1 -0
  90. package/data/build/dist/client/features/session-translation.d.ts.map +1 -1
  91. package/data/build/dist/client/features/session-translation.js +50 -49
  92. package/data/build/dist/client/features/session-translation.js.map +1 -1
  93. package/data/build/dist/client/features/workspace-session-enhancement.d.ts.map +1 -1
  94. package/data/build/dist/client/features/workspace-session-enhancement.js +6 -0
  95. package/data/build/dist/client/features/workspace-session-enhancement.js.map +1 -1
  96. package/data/build/dist/client/file-management-dom.d.ts +20 -1
  97. package/data/build/dist/client/file-management-dom.d.ts.map +1 -1
  98. package/data/build/dist/client/file-management-dom.js +94 -18
  99. package/data/build/dist/client/file-management-dom.js.map +1 -1
  100. package/data/build/dist/client/file-viewer-copy-path-menu.d.ts +27 -0
  101. package/data/build/dist/client/file-viewer-copy-path-menu.d.ts.map +1 -0
  102. package/data/build/dist/client/file-viewer-copy-path-menu.js +101 -0
  103. package/data/build/dist/client/file-viewer-copy-path-menu.js.map +1 -0
  104. package/data/build/dist/client/git-management-settings.d.ts +4 -0
  105. package/data/build/dist/client/git-management-settings.d.ts.map +1 -0
  106. package/data/build/dist/client/git-management-settings.js +73 -0
  107. package/data/build/dist/client/git-management-settings.js.map +1 -0
  108. package/data/build/dist/client/git-management.d.ts +2 -1
  109. package/data/build/dist/client/git-management.d.ts.map +1 -1
  110. package/data/build/dist/client/git-management.js +55 -34
  111. package/data/build/dist/client/git-management.js.map +1 -1
  112. package/data/build/dist/client/git-panel-styles.d.ts +4 -0
  113. package/data/build/dist/client/git-panel-styles.d.ts.map +1 -1
  114. package/data/build/dist/client/git-panel-styles.js +14 -0
  115. package/data/build/dist/client/git-panel-styles.js.map +1 -1
  116. package/data/build/dist/client/html-workspace-files.d.ts +4 -0
  117. package/data/build/dist/client/html-workspace-files.d.ts.map +1 -0
  118. package/data/build/dist/client/html-workspace-files.js +114 -0
  119. package/data/build/dist/client/html-workspace-files.js.map +1 -0
  120. package/data/build/dist/client/locale.d.ts.map +1 -1
  121. package/data/build/dist/client/locale.js +22 -2
  122. package/data/build/dist/client/locale.js.map +1 -1
  123. package/data/build/dist/client/locales/cliManagement.d.ts +3 -0
  124. package/data/build/dist/client/locales/cliManagement.d.ts.map +1 -0
  125. package/data/build/dist/client/locales/cliManagement.js +155 -0
  126. package/data/build/dist/client/locales/cliManagement.js.map +1 -0
  127. package/data/build/dist/client/locales/fileWorkspace.d.ts.map +1 -1
  128. package/data/build/dist/client/locales/fileWorkspace.js +8 -0
  129. package/data/build/dist/client/locales/fileWorkspace.js.map +1 -1
  130. package/data/build/dist/client/locales/git.d.ts.map +1 -1
  131. package/data/build/dist/client/locales/git.js +30 -2
  132. package/data/build/dist/client/locales/git.js.map +1 -1
  133. package/data/build/dist/client/locales/panels.d.ts.map +1 -1
  134. package/data/build/dist/client/locales/panels.js +103 -11
  135. package/data/build/dist/client/locales/panels.js.map +1 -1
  136. package/data/build/dist/client/locales/peerHost.d.ts.map +1 -1
  137. package/data/build/dist/client/locales/peerHost.js +2 -0
  138. package/data/build/dist/client/locales/peerHost.js.map +1 -1
  139. package/data/build/dist/client/locales/quickApps.d.ts +136 -0
  140. package/data/build/dist/client/locales/quickApps.d.ts.map +1 -0
  141. package/data/build/dist/client/locales/quickApps.js +162 -0
  142. package/data/build/dist/client/locales/quickApps.js.map +1 -0
  143. package/data/build/dist/client/locales/usage.d.ts.map +1 -1
  144. package/data/build/dist/client/locales/usage.js +98 -0
  145. package/data/build/dist/client/locales/usage.js.map +1 -1
  146. package/data/build/dist/client/magpie-model-tag.d.ts +8 -0
  147. package/data/build/dist/client/magpie-model-tag.d.ts.map +1 -0
  148. package/data/build/dist/client/magpie-model-tag.js +50 -0
  149. package/data/build/dist/client/magpie-model-tag.js.map +1 -0
  150. package/data/build/dist/client/mobile-team-panel-dom.d.ts +14 -0
  151. package/data/build/dist/client/mobile-team-panel-dom.d.ts.map +1 -0
  152. package/data/build/dist/client/mobile-team-panel-dom.js +164 -0
  153. package/data/build/dist/client/mobile-team-panel-dom.js.map +1 -0
  154. package/data/build/dist/client/model-catalog-cache.d.ts.map +1 -1
  155. package/data/build/dist/client/model-catalog-cache.js +66 -12
  156. package/data/build/dist/client/model-catalog-cache.js.map +1 -1
  157. package/data/build/dist/client/model-priority-pool.d.ts +23 -0
  158. package/data/build/dist/client/model-priority-pool.d.ts.map +1 -0
  159. package/data/build/dist/client/model-priority-pool.js +245 -0
  160. package/data/build/dist/client/model-priority-pool.js.map +1 -0
  161. package/data/build/dist/client/native-model-translation-menu.d.ts +13 -0
  162. package/data/build/dist/client/native-model-translation-menu.d.ts.map +1 -0
  163. package/data/build/dist/client/native-model-translation-menu.js +159 -0
  164. package/data/build/dist/client/native-model-translation-menu.js.map +1 -0
  165. package/data/build/dist/client/native-translation-default.d.ts +6 -0
  166. package/data/build/dist/client/native-translation-default.d.ts.map +1 -0
  167. package/data/build/dist/client/native-translation-default.js +30 -0
  168. package/data/build/dist/client/native-translation-default.js.map +1 -0
  169. package/data/build/dist/client/provider-icons.d.ts.map +1 -1
  170. package/data/build/dist/client/provider-icons.js +3 -1
  171. package/data/build/dist/client/provider-icons.js.map +1 -1
  172. package/data/build/dist/client/quick-apps/browser-storage.d.ts +24 -0
  173. package/data/build/dist/client/quick-apps/browser-storage.d.ts.map +1 -0
  174. package/data/build/dist/client/quick-apps/browser-storage.js +114 -0
  175. package/data/build/dist/client/quick-apps/browser-storage.js.map +1 -0
  176. package/data/build/dist/client/quick-apps/client.d.ts +31 -0
  177. package/data/build/dist/client/quick-apps/client.d.ts.map +1 -0
  178. package/data/build/dist/client/quick-apps/client.js +68 -0
  179. package/data/build/dist/client/quick-apps/client.js.map +1 -0
  180. package/data/build/dist/client/quick-apps/document.d.ts +26 -0
  181. package/data/build/dist/client/quick-apps/document.d.ts.map +1 -0
  182. package/data/build/dist/client/quick-apps/document.js +110 -0
  183. package/data/build/dist/client/quick-apps/document.js.map +1 -0
  184. package/data/build/dist/client/quick-apps/file-picker.d.ts +14 -0
  185. package/data/build/dist/client/quick-apps/file-picker.d.ts.map +1 -0
  186. package/data/build/dist/client/quick-apps/file-picker.js +51 -0
  187. package/data/build/dist/client/quick-apps/file-picker.js.map +1 -0
  188. package/data/build/dist/client/quick-apps/launcher.d.ts +7 -0
  189. package/data/build/dist/client/quick-apps/launcher.d.ts.map +1 -0
  190. package/data/build/dist/client/quick-apps/launcher.js +267 -0
  191. package/data/build/dist/client/quick-apps/launcher.js.map +1 -0
  192. package/data/build/dist/client/quick-apps/presentation.d.ts +16 -0
  193. package/data/build/dist/client/quick-apps/presentation.d.ts.map +1 -0
  194. package/data/build/dist/client/quick-apps/presentation.js +47 -0
  195. package/data/build/dist/client/quick-apps/presentation.js.map +1 -0
  196. package/data/build/dist/client/quick-apps/rail-preference.d.ts +5 -0
  197. package/data/build/dist/client/quick-apps/rail-preference.d.ts.map +1 -0
  198. package/data/build/dist/client/quick-apps/rail-preference.js +19 -0
  199. package/data/build/dist/client/quick-apps/rail-preference.js.map +1 -0
  200. package/data/build/dist/client/quick-apps/reorder-animation.d.ts +6 -0
  201. package/data/build/dist/client/quick-apps/reorder-animation.d.ts.map +1 -0
  202. package/data/build/dist/client/quick-apps/reorder-animation.js +50 -0
  203. package/data/build/dist/client/quick-apps/reorder-animation.js.map +1 -0
  204. package/data/build/dist/client/quick-apps/reorder.d.ts +26 -0
  205. package/data/build/dist/client/quick-apps/reorder.d.ts.map +1 -0
  206. package/data/build/dist/client/quick-apps/reorder.js +128 -0
  207. package/data/build/dist/client/quick-apps/reorder.js.map +1 -0
  208. package/data/build/dist/client/quick-apps/styles.d.ts +3 -0
  209. package/data/build/dist/client/quick-apps/styles.d.ts.map +1 -0
  210. package/data/build/dist/client/quick-apps/styles.js +153 -0
  211. package/data/build/dist/client/quick-apps/styles.js.map +1 -0
  212. package/data/build/dist/client/quick-apps/ui.d.ts +20 -0
  213. package/data/build/dist/client/quick-apps/ui.d.ts.map +1 -0
  214. package/data/build/dist/client/quick-apps/ui.js +21 -0
  215. package/data/build/dist/client/quick-apps/ui.js.map +1 -0
  216. package/data/build/dist/client/quick-apps/viewer.d.ts +16 -0
  217. package/data/build/dist/client/quick-apps/viewer.d.ts.map +1 -0
  218. package/data/build/dist/client/quick-apps/viewer.js +165 -0
  219. package/data/build/dist/client/quick-apps/viewer.js.map +1 -0
  220. package/data/build/dist/client/quick-apps/workspace-picker.d.ts +19 -0
  221. package/data/build/dist/client/quick-apps/workspace-picker.d.ts.map +1 -0
  222. package/data/build/dist/client/quick-apps/workspace-picker.js +30 -0
  223. package/data/build/dist/client/quick-apps/workspace-picker.js.map +1 -0
  224. package/data/build/dist/client/session-translation-chat.d.ts +68 -2
  225. package/data/build/dist/client/session-translation-chat.d.ts.map +1 -1
  226. package/data/build/dist/client/session-translation-chat.js +297 -109
  227. package/data/build/dist/client/session-translation-chat.js.map +1 -1
  228. package/data/build/dist/client/session-translation-interactions.d.ts +31 -0
  229. package/data/build/dist/client/session-translation-interactions.d.ts.map +1 -0
  230. package/data/build/dist/client/session-translation-interactions.js +158 -0
  231. package/data/build/dist/client/session-translation-interactions.js.map +1 -0
  232. package/data/build/dist/client/session-translation-pending-dom.d.ts +8 -0
  233. package/data/build/dist/client/session-translation-pending-dom.d.ts.map +1 -0
  234. package/data/build/dist/client/session-translation-pending-dom.js +58 -0
  235. package/data/build/dist/client/session-translation-pending-dom.js.map +1 -0
  236. package/data/build/dist/client/session-translation-retry.d.ts +16 -0
  237. package/data/build/dist/client/session-translation-retry.d.ts.map +1 -0
  238. package/data/build/dist/client/session-translation-retry.js +66 -0
  239. package/data/build/dist/client/session-translation-retry.js.map +1 -0
  240. package/data/build/dist/client/session-translation-rules.d.ts +13 -0
  241. package/data/build/dist/client/session-translation-rules.d.ts.map +1 -0
  242. package/data/build/dist/client/session-translation-rules.js +58 -0
  243. package/data/build/dist/client/session-translation-rules.js.map +1 -0
  244. package/data/build/dist/client/sidebar-footer-style.d.ts +13 -0
  245. package/data/build/dist/client/sidebar-footer-style.d.ts.map +1 -0
  246. package/data/build/dist/client/sidebar-footer-style.js +54 -0
  247. package/data/build/dist/client/sidebar-footer-style.js.map +1 -0
  248. package/data/build/dist/client/style.css +276 -276
  249. package/data/build/dist/client/subscription-slot.d.ts +6 -2
  250. package/data/build/dist/client/subscription-slot.d.ts.map +1 -1
  251. package/data/build/dist/client/subscription-slot.js +373 -21
  252. package/data/build/dist/client/subscription-slot.js.map +1 -1
  253. package/data/build/dist/client/terminal/model.d.ts.map +1 -1
  254. package/data/build/dist/client/terminal/model.js +2 -1
  255. package/data/build/dist/client/terminal/model.js.map +1 -1
  256. package/data/build/dist/client/workspace-session-archive-dom.d.ts +1 -0
  257. package/data/build/dist/client/workspace-session-archive-dom.d.ts.map +1 -1
  258. package/data/build/dist/client/workspace-session-archive-dom.js +68 -8
  259. package/data/build/dist/client/workspace-session-archive-dom.js.map +1 -1
  260. package/data/build/dist/client/workspace-session-rightbar-dom.d.ts.map +1 -1
  261. package/data/build/dist/client/workspace-session-rightbar-dom.js +12 -21
  262. package/data/build/dist/client/workspace-session-rightbar-dom.js.map +1 -1
  263. package/data/build/dist/client/workspace-session-visibility-dom.d.ts +3 -0
  264. package/data/build/dist/client/workspace-session-visibility-dom.d.ts.map +1 -1
  265. package/data/build/dist/client/workspace-session-visibility-dom.js +43 -10
  266. package/data/build/dist/client/workspace-session-visibility-dom.js.map +1 -1
  267. package/data/build/dist/dsh-capabilities/client/composer-presentation-adapter.d.ts +8 -0
  268. package/data/build/dist/dsh-capabilities/client/composer-presentation-adapter.d.ts.map +1 -0
  269. package/data/build/dist/dsh-capabilities/client/composer-presentation-adapter.js +71 -0
  270. package/data/build/dist/dsh-capabilities/client/composer-presentation-adapter.js.map +1 -0
  271. package/data/build/dist/dsh-capabilities/client/composer-slot-selectors.d.ts +4 -0
  272. package/data/build/dist/dsh-capabilities/client/composer-slot-selectors.d.ts.map +1 -0
  273. package/data/build/dist/dsh-capabilities/client/composer-slot-selectors.js +8 -0
  274. package/data/build/dist/dsh-capabilities/client/composer-slot-selectors.js.map +1 -0
  275. package/data/build/dist/dsh-capabilities/client/interaction-presentation-adapter.d.ts +30 -0
  276. package/data/build/dist/dsh-capabilities/client/interaction-presentation-adapter.d.ts.map +1 -0
  277. package/data/build/dist/dsh-capabilities/client/interaction-presentation-adapter.js +93 -0
  278. package/data/build/dist/dsh-capabilities/client/interaction-presentation-adapter.js.map +1 -0
  279. package/data/build/dist/dsh-capabilities/client/interaction-text-dom.d.ts +12 -0
  280. package/data/build/dist/dsh-capabilities/client/interaction-text-dom.d.ts.map +1 -0
  281. package/data/build/dist/dsh-capabilities/client/interaction-text-dom.js +181 -0
  282. package/data/build/dist/dsh-capabilities/client/interaction-text-dom.js.map +1 -0
  283. package/data/build/dist/dsh-capabilities/client/message-presentation-adapter.d.ts +19 -0
  284. package/data/build/dist/dsh-capabilities/client/message-presentation-adapter.d.ts.map +1 -0
  285. package/data/build/dist/dsh-capabilities/client/message-presentation-adapter.js +39 -0
  286. package/data/build/dist/dsh-capabilities/client/message-presentation-adapter.js.map +1 -0
  287. package/data/build/dist/dsh-capabilities/client/peer-host-attachment-adapter.d.ts +3 -0
  288. package/data/build/dist/dsh-capabilities/client/peer-host-attachment-adapter.d.ts.map +1 -0
  289. package/data/build/dist/dsh-capabilities/client/peer-host-attachment-adapter.js +27 -0
  290. package/data/build/dist/dsh-capabilities/client/peer-host-attachment-adapter.js.map +1 -0
  291. package/data/build/dist/dsh-capabilities/client/primitives-adapter.d.ts +36 -0
  292. package/data/build/dist/dsh-capabilities/client/primitives-adapter.d.ts.map +1 -1
  293. package/data/build/dist/dsh-capabilities/client/primitives-adapter.js +88 -0
  294. package/data/build/dist/dsh-capabilities/client/primitives-adapter.js.map +1 -1
  295. package/data/build/dist/dsh-capabilities/client/question-history-adapter.d.ts +20 -0
  296. package/data/build/dist/dsh-capabilities/client/question-history-adapter.d.ts.map +1 -0
  297. package/data/build/dist/dsh-capabilities/client/question-history-adapter.js +65 -0
  298. package/data/build/dist/dsh-capabilities/client/question-history-adapter.js.map +1 -0
  299. package/data/build/dist/dsh-capabilities/client/quick-app-footer-adapter.d.ts +18 -0
  300. package/data/build/dist/dsh-capabilities/client/quick-app-footer-adapter.d.ts.map +1 -0
  301. package/data/build/dist/dsh-capabilities/client/quick-app-footer-adapter.js +11 -0
  302. package/data/build/dist/dsh-capabilities/client/quick-app-footer-adapter.js.map +1 -0
  303. package/data/build/dist/dsh-capabilities/client/session-performance-adapter.d.ts +9 -0
  304. package/data/build/dist/dsh-capabilities/client/session-performance-adapter.d.ts.map +1 -0
  305. package/data/build/dist/dsh-capabilities/client/session-performance-adapter.js +75 -0
  306. package/data/build/dist/dsh-capabilities/client/session-performance-adapter.js.map +1 -0
  307. package/data/build/dist/dsh-capabilities/client/sidebar-footer-icon-adapter.d.ts +3 -0
  308. package/data/build/dist/dsh-capabilities/client/sidebar-footer-icon-adapter.d.ts.map +1 -0
  309. package/data/build/dist/dsh-capabilities/client/sidebar-footer-icon-adapter.js +22 -0
  310. package/data/build/dist/dsh-capabilities/client/sidebar-footer-icon-adapter.js.map +1 -0
  311. package/data/build/dist/dsh-capabilities/client/slot-presentation-mirror.d.ts +32 -0
  312. package/data/build/dist/dsh-capabilities/client/slot-presentation-mirror.d.ts.map +1 -0
  313. package/data/build/dist/dsh-capabilities/client/slot-presentation-mirror.js +90 -0
  314. package/data/build/dist/dsh-capabilities/client/slot-presentation-mirror.js.map +1 -0
  315. package/data/build/dist/dsh-capabilities/host/agent-team-adapter.d.ts +52 -0
  316. package/data/build/dist/dsh-capabilities/host/agent-team-adapter.d.ts.map +1 -0
  317. package/data/build/dist/dsh-capabilities/host/agent-team-adapter.js +109 -0
  318. package/data/build/dist/dsh-capabilities/host/agent-team-adapter.js.map +1 -0
  319. package/data/build/dist/dsh-capabilities/host/connection-peer-adapter.d.ts +10 -0
  320. package/data/build/dist/dsh-capabilities/host/connection-peer-adapter.d.ts.map +1 -0
  321. package/data/build/dist/dsh-capabilities/host/connection-peer-adapter.js +34 -0
  322. package/data/build/dist/dsh-capabilities/host/connection-peer-adapter.js.map +1 -0
  323. package/data/build/dist/dsh-capabilities/host/native-dispatch-adapter.d.ts +21 -0
  324. package/data/build/dist/dsh-capabilities/host/native-dispatch-adapter.d.ts.map +1 -0
  325. package/data/build/dist/dsh-capabilities/host/native-dispatch-adapter.js +11 -0
  326. package/data/build/dist/dsh-capabilities/host/native-dispatch-adapter.js.map +1 -0
  327. package/data/build/dist/dsh-capabilities/host/quick-app-credentials.d.ts +11 -0
  328. package/data/build/dist/dsh-capabilities/host/quick-app-credentials.d.ts.map +1 -0
  329. package/data/build/dist/dsh-capabilities/host/quick-app-credentials.js +97 -0
  330. package/data/build/dist/dsh-capabilities/host/quick-app-credentials.js.map +1 -0
  331. package/data/build/dist/dsh-capabilities/host/quick-app-https-provider.d.ts +36 -0
  332. package/data/build/dist/dsh-capabilities/host/quick-app-https-provider.d.ts.map +1 -0
  333. package/data/build/dist/dsh-capabilities/host/quick-app-https-provider.js +164 -0
  334. package/data/build/dist/dsh-capabilities/host/quick-app-https-provider.js.map +1 -0
  335. package/data/build/dist/dsh-capabilities/host/quick-app-lan-ports.d.ts +44 -0
  336. package/data/build/dist/dsh-capabilities/host/quick-app-lan-ports.d.ts.map +1 -0
  337. package/data/build/dist/dsh-capabilities/host/quick-app-lan-ports.js +240 -0
  338. package/data/build/dist/dsh-capabilities/host/quick-app-lan-ports.js.map +1 -0
  339. package/data/build/dist/dsh-capabilities/host/quick-app-origin-adapter.d.ts +37 -0
  340. package/data/build/dist/dsh-capabilities/host/quick-app-origin-adapter.d.ts.map +1 -0
  341. package/data/build/dist/dsh-capabilities/host/quick-app-origin-adapter.js +35 -0
  342. package/data/build/dist/dsh-capabilities/host/quick-app-origin-adapter.js.map +1 -0
  343. package/data/build/dist/dsh-capabilities/host/quick-app-proxy-adapter.d.ts +13 -0
  344. package/data/build/dist/dsh-capabilities/host/quick-app-proxy-adapter.d.ts.map +1 -0
  345. package/data/build/dist/dsh-capabilities/host/quick-app-proxy-adapter.js +30 -0
  346. package/data/build/dist/dsh-capabilities/host/quick-app-proxy-adapter.js.map +1 -0
  347. package/data/build/dist/dsh-capabilities/host/quick-app-proxy-provider.d.ts +21 -0
  348. package/data/build/dist/dsh-capabilities/host/quick-app-proxy-provider.d.ts.map +1 -0
  349. package/data/build/dist/dsh-capabilities/host/quick-app-proxy-provider.js +132 -0
  350. package/data/build/dist/dsh-capabilities/host/quick-app-proxy-provider.js.map +1 -0
  351. package/data/build/dist/dsh-capabilities/host/quick-app-transport.d.ts +10 -0
  352. package/data/build/dist/dsh-capabilities/host/quick-app-transport.d.ts.map +1 -0
  353. package/data/build/dist/dsh-capabilities/host/quick-app-transport.js +33 -0
  354. package/data/build/dist/dsh-capabilities/host/quick-app-transport.js.map +1 -0
  355. package/data/build/dist/dsh-capabilities/host/session-activation-adapter.d.ts +17 -0
  356. package/data/build/dist/dsh-capabilities/host/session-activation-adapter.d.ts.map +1 -0
  357. package/data/build/dist/dsh-capabilities/host/session-activation-adapter.js +37 -0
  358. package/data/build/dist/dsh-capabilities/host/session-activation-adapter.js.map +1 -0
  359. package/data/build/dist/dsh-capabilities/host/session-model-selection-adapter.d.ts +17 -0
  360. package/data/build/dist/dsh-capabilities/host/session-model-selection-adapter.d.ts.map +1 -0
  361. package/data/build/dist/dsh-capabilities/host/session-model-selection-adapter.js +45 -0
  362. package/data/build/dist/dsh-capabilities/host/session-model-selection-adapter.js.map +1 -0
  363. package/data/build/dist/dsh-capabilities/host/session-performance-adapter.d.ts +7 -0
  364. package/data/build/dist/dsh-capabilities/host/session-performance-adapter.d.ts.map +1 -0
  365. package/data/build/dist/dsh-capabilities/host/session-performance-adapter.js +18 -0
  366. package/data/build/dist/dsh-capabilities/host/session-performance-adapter.js.map +1 -0
  367. package/data/build/dist/dsh-capabilities/host/session-prompt-adapter.d.ts +28 -0
  368. package/data/build/dist/dsh-capabilities/host/session-prompt-adapter.d.ts.map +1 -0
  369. package/data/build/dist/dsh-capabilities/host/session-prompt-adapter.js +31 -0
  370. package/data/build/dist/dsh-capabilities/host/session-prompt-adapter.js.map +1 -0
  371. package/data/build/dist/dsh-capabilities/host/workspace-directory-adapter.d.ts +13 -0
  372. package/data/build/dist/dsh-capabilities/host/workspace-directory-adapter.d.ts.map +1 -0
  373. package/data/build/dist/dsh-capabilities/host/workspace-directory-adapter.js +24 -0
  374. package/data/build/dist/dsh-capabilities/host/workspace-directory-adapter.js.map +1 -0
  375. package/data/build/dist/dsh-capabilities/matrix.d.ts.map +1 -1
  376. package/data/build/dist/dsh-capabilities/matrix.js +22 -5
  377. package/data/build/dist/dsh-capabilities/matrix.js.map +1 -1
  378. package/data/build/dist/dsh-capabilities/routes.d.ts +1 -0
  379. package/data/build/dist/dsh-capabilities/routes.d.ts.map +1 -1
  380. package/data/build/dist/dsh-capabilities/routes.js +47 -3
  381. package/data/build/dist/dsh-capabilities/routes.js.map +1 -1
  382. package/data/build/dist/dsh-capabilities/types.d.ts +1 -1
  383. package/data/build/dist/dsh-capabilities/types.d.ts.map +1 -1
  384. package/data/build/dist/dsh-capabilities/types.js.map +1 -1
  385. package/data/build/dist/host/cli-adapters/acp-cli-driver.d.ts.map +1 -1
  386. package/data/build/dist/host/cli-adapters/acp-cli-driver.js +6 -3
  387. package/data/build/dist/host/cli-adapters/acp-cli-driver.js.map +1 -1
  388. package/data/build/dist/host/cli-adapters/antigravity-driver.js +1 -1
  389. package/data/build/dist/host/cli-adapters/antigravity-driver.js.map +1 -1
  390. package/data/build/dist/host/cli-adapters/attachment-utils.d.ts +4 -3
  391. package/data/build/dist/host/cli-adapters/attachment-utils.d.ts.map +1 -1
  392. package/data/build/dist/host/cli-adapters/attachment-utils.js +9 -8
  393. package/data/build/dist/host/cli-adapters/attachment-utils.js.map +1 -1
  394. package/data/build/dist/host/cli-adapters/binary-detection.d.ts.map +1 -1
  395. package/data/build/dist/host/cli-adapters/binary-detection.js +7 -3
  396. package/data/build/dist/host/cli-adapters/binary-detection.js.map +1 -1
  397. package/data/build/dist/host/cli-adapters/claude-driver.d.ts +1 -0
  398. package/data/build/dist/host/cli-adapters/claude-driver.d.ts.map +1 -1
  399. package/data/build/dist/host/cli-adapters/claude-driver.js +184 -21
  400. package/data/build/dist/host/cli-adapters/claude-driver.js.map +1 -1
  401. package/data/build/dist/host/cli-adapters/codex-driver.d.ts +18 -0
  402. package/data/build/dist/host/cli-adapters/codex-driver.d.ts.map +1 -1
  403. package/data/build/dist/host/cli-adapters/codex-driver.js +126 -21
  404. package/data/build/dist/host/cli-adapters/codex-driver.js.map +1 -1
  405. package/data/build/dist/host/cli-adapters/codex-performance-projection.d.ts +91 -0
  406. package/data/build/dist/host/cli-adapters/codex-performance-projection.d.ts.map +1 -0
  407. package/data/build/dist/host/cli-adapters/codex-performance-projection.js +8 -0
  408. package/data/build/dist/host/cli-adapters/codex-performance-projection.js.map +1 -0
  409. package/data/build/dist/host/cli-adapters/codex-performance.d.ts +16 -0
  410. package/data/build/dist/host/cli-adapters/codex-performance.d.ts.map +1 -0
  411. package/data/build/dist/host/cli-adapters/codex-performance.js +81 -0
  412. package/data/build/dist/host/cli-adapters/codex-performance.js.map +1 -0
  413. package/data/build/dist/host/cli-adapters/command-code-acp-loader.d.ts +4 -1
  414. package/data/build/dist/host/cli-adapters/command-code-acp-loader.d.ts.map +1 -1
  415. package/data/build/dist/host/cli-adapters/command-code-acp-loader.js +137 -25
  416. package/data/build/dist/host/cli-adapters/command-code-acp-loader.js.map +1 -1
  417. package/data/build/dist/host/cli-adapters/command-code-driver.js +7 -4
  418. package/data/build/dist/host/cli-adapters/command-code-driver.js.map +1 -1
  419. package/data/build/dist/host/cli-adapters/desktop-app-runtime.d.ts +3 -1
  420. package/data/build/dist/host/cli-adapters/desktop-app-runtime.d.ts.map +1 -1
  421. package/data/build/dist/host/cli-adapters/desktop-app-runtime.js +41 -4
  422. package/data/build/dist/host/cli-adapters/desktop-app-runtime.js.map +1 -1
  423. package/data/build/dist/host/cli-adapters/driver.d.ts +2 -0
  424. package/data/build/dist/host/cli-adapters/driver.d.ts.map +1 -1
  425. package/data/build/dist/host/cli-adapters/dsh-message-projector.d.ts +5 -1
  426. package/data/build/dist/host/cli-adapters/dsh-message-projector.d.ts.map +1 -1
  427. package/data/build/dist/host/cli-adapters/dsh-message-projector.js +51 -16
  428. package/data/build/dist/host/cli-adapters/dsh-message-projector.js.map +1 -1
  429. package/data/build/dist/host/cli-adapters/dsh-tool-history.js +3 -2
  430. package/data/build/dist/host/cli-adapters/dsh-tool-history.js.map +1 -1
  431. package/data/build/dist/host/cli-adapters/dsh-virtual-providers.d.ts.map +1 -1
  432. package/data/build/dist/host/cli-adapters/dsh-virtual-providers.js +3 -2
  433. package/data/build/dist/host/cli-adapters/dsh-virtual-providers.js.map +1 -1
  434. package/data/build/dist/host/cli-adapters/feature.d.ts +4 -0
  435. package/data/build/dist/host/cli-adapters/feature.d.ts.map +1 -1
  436. package/data/build/dist/host/cli-adapters/feature.js +587 -101
  437. package/data/build/dist/host/cli-adapters/feature.js.map +1 -1
  438. package/data/build/dist/host/cli-adapters/gemini-driver.d.ts.map +1 -1
  439. package/data/build/dist/host/cli-adapters/gemini-driver.js +5 -3
  440. package/data/build/dist/host/cli-adapters/gemini-driver.js.map +1 -1
  441. package/data/build/dist/host/cli-adapters/grok-driver.d.ts +7 -0
  442. package/data/build/dist/host/cli-adapters/grok-driver.d.ts.map +1 -1
  443. package/data/build/dist/host/cli-adapters/grok-driver.js +458 -59
  444. package/data/build/dist/host/cli-adapters/grok-driver.js.map +1 -1
  445. package/data/build/dist/host/cli-adapters/grok-performance-projection.d.ts +123 -0
  446. package/data/build/dist/host/cli-adapters/grok-performance-projection.d.ts.map +1 -0
  447. package/data/build/dist/host/cli-adapters/grok-performance-projection.js +48 -0
  448. package/data/build/dist/host/cli-adapters/grok-performance-projection.js.map +1 -0
  449. package/data/build/dist/host/cli-adapters/grok-usage.d.ts +45 -0
  450. package/data/build/dist/host/cli-adapters/grok-usage.d.ts.map +1 -0
  451. package/data/build/dist/host/cli-adapters/grok-usage.js +197 -0
  452. package/data/build/dist/host/cli-adapters/grok-usage.js.map +1 -0
  453. package/data/build/dist/host/cli-adapters/kimi-driver.js +2 -2
  454. package/data/build/dist/host/cli-adapters/kimi-driver.js.map +1 -1
  455. package/data/build/dist/host/cli-adapters/legacy-session-adapter.d.ts.map +1 -1
  456. package/data/build/dist/host/cli-adapters/legacy-session-adapter.js +20 -3
  457. package/data/build/dist/host/cli-adapters/legacy-session-adapter.js.map +1 -1
  458. package/data/build/dist/host/cli-adapters/magpie-session-routing.d.ts +9 -0
  459. package/data/build/dist/host/cli-adapters/magpie-session-routing.d.ts.map +1 -0
  460. package/data/build/dist/host/cli-adapters/magpie-session-routing.js +90 -0
  461. package/data/build/dist/host/cli-adapters/magpie-session-routing.js.map +1 -0
  462. package/data/build/dist/host/cli-adapters/magpie-usage.d.ts +90 -0
  463. package/data/build/dist/host/cli-adapters/magpie-usage.d.ts.map +1 -0
  464. package/data/build/dist/host/cli-adapters/magpie-usage.js +986 -0
  465. package/data/build/dist/host/cli-adapters/magpie-usage.js.map +1 -0
  466. package/data/build/dist/host/cli-adapters/management-installation.d.ts +5 -0
  467. package/data/build/dist/host/cli-adapters/management-installation.d.ts.map +1 -0
  468. package/data/build/dist/host/cli-adapters/management-installation.js +131 -0
  469. package/data/build/dist/host/cli-adapters/management-installation.js.map +1 -0
  470. package/data/build/dist/host/cli-adapters/management-methods.d.ts +37 -0
  471. package/data/build/dist/host/cli-adapters/management-methods.d.ts.map +1 -0
  472. package/data/build/dist/host/cli-adapters/management-methods.js +144 -0
  473. package/data/build/dist/host/cli-adapters/management-methods.js.map +1 -0
  474. package/data/build/dist/host/cli-adapters/management-process.d.ts +7 -0
  475. package/data/build/dist/host/cli-adapters/management-process.d.ts.map +1 -0
  476. package/data/build/dist/host/cli-adapters/management-process.js +62 -0
  477. package/data/build/dist/host/cli-adapters/management-process.js.map +1 -0
  478. package/data/build/dist/host/cli-adapters/management.d.ts +32 -0
  479. package/data/build/dist/host/cli-adapters/management.d.ts.map +1 -0
  480. package/data/build/dist/host/cli-adapters/management.js +177 -0
  481. package/data/build/dist/host/cli-adapters/management.js.map +1 -0
  482. package/data/build/dist/host/cli-adapters/mcode-driver.d.ts.map +1 -1
  483. package/data/build/dist/host/cli-adapters/mcode-driver.js +12 -5
  484. package/data/build/dist/host/cli-adapters/mcode-driver.js.map +1 -1
  485. package/data/build/dist/host/cli-adapters/model-catalog.d.ts +1 -0
  486. package/data/build/dist/host/cli-adapters/model-catalog.d.ts.map +1 -1
  487. package/data/build/dist/host/cli-adapters/model-catalog.js +70 -7
  488. package/data/build/dist/host/cli-adapters/model-catalog.js.map +1 -1
  489. package/data/build/dist/host/cli-adapters/native-subagent-dispatch.d.ts +1 -1
  490. package/data/build/dist/host/cli-adapters/native-subagent-dispatch.d.ts.map +1 -1
  491. package/data/build/dist/host/cli-adapters/native-subagent-dispatch.js +13 -5
  492. package/data/build/dist/host/cli-adapters/native-subagent-dispatch.js.map +1 -1
  493. package/data/build/dist/host/cli-adapters/native-team-subagent.d.ts +7 -1
  494. package/data/build/dist/host/cli-adapters/native-team-subagent.d.ts.map +1 -1
  495. package/data/build/dist/host/cli-adapters/native-team-subagent.js +6 -3
  496. package/data/build/dist/host/cli-adapters/native-team-subagent.js.map +1 -1
  497. package/data/build/dist/host/cli-adapters/opencode-driver.d.ts +22 -0
  498. package/data/build/dist/host/cli-adapters/opencode-driver.d.ts.map +1 -1
  499. package/data/build/dist/host/cli-adapters/opencode-driver.js +105 -17
  500. package/data/build/dist/host/cli-adapters/opencode-driver.js.map +1 -1
  501. package/data/build/dist/host/cli-adapters/opencode-v2-protocol.js +4 -1
  502. package/data/build/dist/host/cli-adapters/opencode-v2-protocol.js.map +1 -1
  503. package/data/build/dist/host/cli-adapters/pi-driver.d.ts.map +1 -1
  504. package/data/build/dist/host/cli-adapters/pi-driver.js +45 -11
  505. package/data/build/dist/host/cli-adapters/pi-driver.js.map +1 -1
  506. package/data/build/dist/host/cli-adapters/process-utils.d.ts +2 -0
  507. package/data/build/dist/host/cli-adapters/process-utils.d.ts.map +1 -1
  508. package/data/build/dist/host/cli-adapters/process-utils.js +16 -11
  509. package/data/build/dist/host/cli-adapters/process-utils.js.map +1 -1
  510. package/data/build/dist/host/cli-adapters/registry.d.ts +7 -1
  511. package/data/build/dist/host/cli-adapters/registry.d.ts.map +1 -1
  512. package/data/build/dist/host/cli-adapters/registry.js +141 -51
  513. package/data/build/dist/host/cli-adapters/registry.js.map +1 -1
  514. package/data/build/dist/host/cli-adapters/session-performance-projection.d.ts +74 -0
  515. package/data/build/dist/host/cli-adapters/session-performance-projection.d.ts.map +1 -0
  516. package/data/build/dist/host/cli-adapters/session-performance-projection.js +83 -0
  517. package/data/build/dist/host/cli-adapters/session-performance-projection.js.map +1 -0
  518. package/data/build/dist/host/cli-adapters/standard-stream-driver.d.ts.map +1 -1
  519. package/data/build/dist/host/cli-adapters/standard-stream-driver.js +4 -0
  520. package/data/build/dist/host/cli-adapters/standard-stream-driver.js.map +1 -1
  521. package/data/build/dist/host/cli-adapters/stream-normalizer.d.ts +3 -1
  522. package/data/build/dist/host/cli-adapters/stream-normalizer.d.ts.map +1 -1
  523. package/data/build/dist/host/cli-adapters/stream-normalizer.js +2 -0
  524. package/data/build/dist/host/cli-adapters/stream-normalizer.js.map +1 -1
  525. package/data/build/dist/host/cli-adapters/subagent-tool-descriptions.d.ts +26 -0
  526. package/data/build/dist/host/cli-adapters/subagent-tool-descriptions.d.ts.map +1 -0
  527. package/data/build/dist/host/cli-adapters/subagent-tool-descriptions.js +30 -0
  528. package/data/build/dist/host/cli-adapters/subagent-tool-descriptions.js.map +1 -0
  529. package/data/build/dist/host/cli-adapters/subagent-tool.d.ts.map +1 -1
  530. package/data/build/dist/host/cli-adapters/subagent-tool.js +7 -6
  531. package/data/build/dist/host/cli-adapters/subagent-tool.js.map +1 -1
  532. package/data/build/dist/host/cli-adapters/team-input.d.ts +17 -0
  533. package/data/build/dist/host/cli-adapters/team-input.d.ts.map +1 -0
  534. package/data/build/dist/host/cli-adapters/team-input.js +67 -0
  535. package/data/build/dist/host/cli-adapters/team-input.js.map +1 -0
  536. package/data/build/dist/host/cli-adapters/update-check.d.ts +34 -0
  537. package/data/build/dist/host/cli-adapters/update-check.d.ts.map +1 -0
  538. package/data/build/dist/host/cli-adapters/update-check.js +263 -0
  539. package/data/build/dist/host/cli-adapters/update-check.js.map +1 -0
  540. package/data/build/dist/host/cli-adapters/zcode-driver.d.ts.map +1 -1
  541. package/data/build/dist/host/cli-adapters/zcode-driver.js +7 -2
  542. package/data/build/dist/host/cli-adapters/zcode-driver.js.map +1 -1
  543. package/data/build/dist/host/cli-adapters/zcode-update.d.ts +8 -0
  544. package/data/build/dist/host/cli-adapters/zcode-update.d.ts.map +1 -0
  545. package/data/build/dist/host/cli-adapters/zcode-update.js +149 -0
  546. package/data/build/dist/host/cli-adapters/zcode-update.js.map +1 -0
  547. package/data/build/dist/host/cli-bridge/bridge-holder.d.ts +14 -0
  548. package/data/build/dist/host/cli-bridge/bridge-holder.d.ts.map +1 -1
  549. package/data/build/dist/host/cli-bridge/bridge-holder.js +53 -6
  550. package/data/build/dist/host/cli-bridge/bridge-holder.js.map +1 -1
  551. package/data/build/dist/host/cli-bridge/bridge-server.d.ts +8 -0
  552. package/data/build/dist/host/cli-bridge/bridge-server.d.ts.map +1 -1
  553. package/data/build/dist/host/cli-bridge/bridge-server.js +63 -6
  554. package/data/build/dist/host/cli-bridge/bridge-server.js.map +1 -1
  555. package/data/build/dist/host/cli-bridge/command-code-mod.d.ts.map +1 -1
  556. package/data/build/dist/host/cli-bridge/command-code-mod.js +128 -0
  557. package/data/build/dist/host/cli-bridge/command-code-mod.js.map +1 -1
  558. package/data/build/dist/host/cli-bridge/dispatch.js +1 -1
  559. package/data/build/dist/host/cli-bridge/dispatch.js.map +1 -1
  560. package/data/build/dist/host/cli-bridge/fetch-dispatch.d.ts +23 -0
  561. package/data/build/dist/host/cli-bridge/fetch-dispatch.d.ts.map +1 -0
  562. package/data/build/dist/host/cli-bridge/fetch-dispatch.js +73 -0
  563. package/data/build/dist/host/cli-bridge/fetch-dispatch.js.map +1 -0
  564. package/data/build/dist/host/cli-bridge/injections.d.ts +14 -0
  565. package/data/build/dist/host/cli-bridge/injections.d.ts.map +1 -1
  566. package/data/build/dist/host/cli-bridge/injections.js +69 -7
  567. package/data/build/dist/host/cli-bridge/injections.js.map +1 -1
  568. package/data/build/dist/host/cli-bridge/mcp-stdio-entry.d.ts +1 -1
  569. package/data/build/dist/host/cli-bridge/mcp-stdio-entry.js +102 -7
  570. package/data/build/dist/host/cli-bridge/mcp-stdio-entry.js.map +1 -1
  571. package/data/build/dist/host/cli-bridge/pi-extension-entry.d.ts +3 -0
  572. package/data/build/dist/host/cli-bridge/pi-extension-entry.d.ts.map +1 -0
  573. package/data/build/dist/host/cli-bridge/pi-extension-entry.js +9 -0
  574. package/data/build/dist/host/cli-bridge/pi-extension-entry.js.map +1 -0
  575. package/data/build/dist/host/cli-bridge/pi-extension.d.ts +52 -0
  576. package/data/build/dist/host/cli-bridge/pi-extension.d.ts.map +1 -0
  577. package/data/build/dist/host/cli-bridge/pi-extension.js +311 -0
  578. package/data/build/dist/host/cli-bridge/pi-extension.js.map +1 -0
  579. package/data/build/dist/host/cli-bridge/search-dispatch.d.ts +20 -0
  580. package/data/build/dist/host/cli-bridge/search-dispatch.d.ts.map +1 -0
  581. package/data/build/dist/host/cli-bridge/search-dispatch.js +61 -0
  582. package/data/build/dist/host/cli-bridge/search-dispatch.js.map +1 -0
  583. package/data/build/dist/host/cli-bridge/team-adapters.d.ts +11 -0
  584. package/data/build/dist/host/cli-bridge/team-adapters.d.ts.map +1 -0
  585. package/data/build/dist/host/cli-bridge/team-adapters.js +23 -0
  586. package/data/build/dist/host/cli-bridge/team-adapters.js.map +1 -0
  587. package/data/build/dist/host/cli-bridge/team-dispatch.d.ts +28 -0
  588. package/data/build/dist/host/cli-bridge/team-dispatch.d.ts.map +1 -0
  589. package/data/build/dist/host/cli-bridge/team-dispatch.js +208 -0
  590. package/data/build/dist/host/cli-bridge/team-dispatch.js.map +1 -0
  591. package/data/build/dist/host/cli-bridge/team-tool.d.ts +3 -0
  592. package/data/build/dist/host/cli-bridge/team-tool.d.ts.map +1 -0
  593. package/data/build/dist/host/cli-bridge/team-tool.js +18 -0
  594. package/data/build/dist/host/cli-bridge/team-tool.js.map +1 -0
  595. package/data/build/dist/host/features/file-management.d.ts.map +1 -1
  596. package/data/build/dist/host/features/file-management.js +10 -1
  597. package/data/build/dist/host/features/file-management.js.map +1 -1
  598. package/data/build/dist/host/features/git-commit-message.d.ts +5 -0
  599. package/data/build/dist/host/features/git-commit-message.d.ts.map +1 -0
  600. package/data/build/dist/host/features/git-commit-message.js +66 -0
  601. package/data/build/dist/host/features/git-commit-message.js.map +1 -0
  602. package/data/build/dist/host/features/git-management.d.ts +11 -2
  603. package/data/build/dist/host/features/git-management.d.ts.map +1 -1
  604. package/data/build/dist/host/features/git-management.js +61 -7
  605. package/data/build/dist/host/features/git-management.js.map +1 -1
  606. package/data/build/dist/host/features/global-voice-rpc.d.ts.map +1 -1
  607. package/data/build/dist/host/features/global-voice-rpc.js +2 -3
  608. package/data/build/dist/host/features/global-voice-rpc.js.map +1 -1
  609. package/data/build/dist/host/features/index.d.ts.map +1 -1
  610. package/data/build/dist/host/features/index.js +2 -0
  611. package/data/build/dist/host/features/index.js.map +1 -1
  612. package/data/build/dist/host/features/interaction-translation.d.ts +10 -0
  613. package/data/build/dist/host/features/interaction-translation.d.ts.map +1 -0
  614. package/data/build/dist/host/features/interaction-translation.js +219 -0
  615. package/data/build/dist/host/features/interaction-translation.js.map +1 -0
  616. package/data/build/dist/host/features/lan-access-dsh.d.ts.map +1 -1
  617. package/data/build/dist/host/features/lan-access-dsh.js +3 -3
  618. package/data/build/dist/host/features/lan-access-dsh.js.map +1 -1
  619. package/data/build/dist/host/features/peer-host.d.ts.map +1 -1
  620. package/data/build/dist/host/features/peer-host.js +13 -6
  621. package/data/build/dist/host/features/peer-host.js.map +1 -1
  622. package/data/build/dist/host/features/quick-apps.d.ts +4 -0
  623. package/data/build/dist/host/features/quick-apps.d.ts.map +1 -0
  624. package/data/build/dist/host/features/quick-apps.js +158 -0
  625. package/data/build/dist/host/features/quick-apps.js.map +1 -0
  626. package/data/build/dist/host/features/session-prompt-translation.d.ts +10 -0
  627. package/data/build/dist/host/features/session-prompt-translation.d.ts.map +1 -0
  628. package/data/build/dist/host/features/session-prompt-translation.js +227 -0
  629. package/data/build/dist/host/features/session-prompt-translation.js.map +1 -0
  630. package/data/build/dist/host/features/session-translation-protection.d.ts +22 -0
  631. package/data/build/dist/host/features/session-translation-protection.d.ts.map +1 -0
  632. package/data/build/dist/host/features/session-translation-protection.js +204 -0
  633. package/data/build/dist/host/features/session-translation-protection.js.map +1 -0
  634. package/data/build/dist/host/features/session-translation-recovery.d.ts +21 -0
  635. package/data/build/dist/host/features/session-translation-recovery.d.ts.map +1 -0
  636. package/data/build/dist/host/features/session-translation-recovery.js +125 -0
  637. package/data/build/dist/host/features/session-translation-recovery.js.map +1 -0
  638. package/data/build/dist/host/features/session-translation-runtime.d.ts +16 -0
  639. package/data/build/dist/host/features/session-translation-runtime.d.ts.map +1 -0
  640. package/data/build/dist/host/features/session-translation-runtime.js +85 -0
  641. package/data/build/dist/host/features/session-translation-runtime.js.map +1 -0
  642. package/data/build/dist/host/features/session-translation-service.d.ts +19 -4
  643. package/data/build/dist/host/features/session-translation-service.d.ts.map +1 -1
  644. package/data/build/dist/host/features/session-translation-service.js +249 -210
  645. package/data/build/dist/host/features/session-translation-service.js.map +1 -1
  646. package/data/build/dist/host/features/session-translation.d.ts.map +1 -1
  647. package/data/build/dist/host/features/session-translation.js +6 -3
  648. package/data/build/dist/host/features/session-translation.js.map +1 -1
  649. package/data/build/dist/host/features/types.d.ts +10 -0
  650. package/data/build/dist/host/features/types.d.ts.map +1 -1
  651. package/data/build/dist/host/html-workspace-files.d.ts +3 -0
  652. package/data/build/dist/host/html-workspace-files.d.ts.map +1 -0
  653. package/data/build/dist/host/html-workspace-files.js +135 -0
  654. package/data/build/dist/host/html-workspace-files.js.map +1 -0
  655. package/data/build/dist/host/index.d.ts.map +1 -1
  656. package/data/build/dist/host/index.js +32 -39
  657. package/data/build/dist/host/index.js.map +1 -1
  658. package/data/build/dist/host/lan-access-dsh.d.ts +14 -2
  659. package/data/build/dist/host/lan-access-dsh.d.ts.map +1 -1
  660. package/data/build/dist/host/lan-access-dsh.js +81 -13
  661. package/data/build/dist/host/lan-access-dsh.js.map +1 -1
  662. package/data/build/dist/host/modules/peer-host/peer-host-native-dispatch.d.ts +2 -2
  663. package/data/build/dist/host/modules/peer-host/peer-host-native-dispatch.d.ts.map +1 -1
  664. package/data/build/dist/host/modules/peer-host/peer-host-native-dispatch.js +10 -9
  665. package/data/build/dist/host/modules/peer-host/peer-host-native-dispatch.js.map +1 -1
  666. package/data/build/dist/host/modules/peer-host/peer-host-native-streams.d.ts +3 -3
  667. package/data/build/dist/host/modules/peer-host/peer-host-native-streams.d.ts.map +1 -1
  668. package/data/build/dist/host/modules/peer-host/peer-host-native-streams.js +26 -14
  669. package/data/build/dist/host/modules/peer-host/peer-host-native-streams.js.map +1 -1
  670. package/data/build/dist/host/modules/peer-host/quick-app-gateway.d.ts +5 -0
  671. package/data/build/dist/host/modules/peer-host/quick-app-gateway.d.ts.map +1 -0
  672. package/data/build/dist/host/modules/peer-host/quick-app-gateway.js +27 -0
  673. package/data/build/dist/host/modules/peer-host/quick-app-gateway.js.map +1 -0
  674. package/data/build/dist/host/modules/quick-apps/browse.d.ts +5 -0
  675. package/data/build/dist/host/modules/quick-apps/browse.d.ts.map +1 -0
  676. package/data/build/dist/host/modules/quick-apps/browse.js +37 -0
  677. package/data/build/dist/host/modules/quick-apps/browse.js.map +1 -0
  678. package/data/build/dist/host/modules/quick-apps/code-revision.d.ts +4 -0
  679. package/data/build/dist/host/modules/quick-apps/code-revision.d.ts.map +1 -0
  680. package/data/build/dist/host/modules/quick-apps/code-revision.js +39 -0
  681. package/data/build/dist/host/modules/quick-apps/code-revision.js.map +1 -0
  682. package/data/build/dist/host/modules/quick-apps/documents.d.ts +14 -0
  683. package/data/build/dist/host/modules/quick-apps/documents.d.ts.map +1 -0
  684. package/data/build/dist/host/modules/quick-apps/documents.js +87 -0
  685. package/data/build/dist/host/modules/quick-apps/documents.js.map +1 -0
  686. package/data/build/dist/host/modules/quick-apps/egress.d.ts +35 -0
  687. package/data/build/dist/host/modules/quick-apps/egress.d.ts.map +1 -0
  688. package/data/build/dist/host/modules/quick-apps/egress.js +244 -0
  689. package/data/build/dist/host/modules/quick-apps/egress.js.map +1 -0
  690. package/data/build/dist/host/modules/quick-apps/errors.d.ts +8 -0
  691. package/data/build/dist/host/modules/quick-apps/errors.d.ts.map +1 -0
  692. package/data/build/dist/host/modules/quick-apps/errors.js +15 -0
  693. package/data/build/dist/host/modules/quick-apps/errors.js.map +1 -0
  694. package/data/build/dist/host/modules/quick-apps/file-api.d.ts +30 -0
  695. package/data/build/dist/host/modules/quick-apps/file-api.d.ts.map +1 -0
  696. package/data/build/dist/host/modules/quick-apps/file-api.js +149 -0
  697. package/data/build/dist/host/modules/quick-apps/file-api.js.map +1 -0
  698. package/data/build/dist/host/modules/quick-apps/launches.d.ts +35 -0
  699. package/data/build/dist/host/modules/quick-apps/launches.d.ts.map +1 -0
  700. package/data/build/dist/host/modules/quick-apps/launches.js +80 -0
  701. package/data/build/dist/host/modules/quick-apps/launches.js.map +1 -0
  702. package/data/build/dist/host/modules/quick-apps/paths.d.ts +14 -0
  703. package/data/build/dist/host/modules/quick-apps/paths.d.ts.map +1 -0
  704. package/data/build/dist/host/modules/quick-apps/paths.js +72 -0
  705. package/data/build/dist/host/modules/quick-apps/paths.js.map +1 -0
  706. package/data/build/dist/host/modules/quick-apps/registry.d.ts +30 -0
  707. package/data/build/dist/host/modules/quick-apps/registry.d.ts.map +1 -0
  708. package/data/build/dist/host/modules/quick-apps/registry.js +195 -0
  709. package/data/build/dist/host/modules/quick-apps/registry.js.map +1 -0
  710. package/data/build/dist/host/modules/quick-apps/remote.d.ts +38 -0
  711. package/data/build/dist/host/modules/quick-apps/remote.d.ts.map +1 -0
  712. package/data/build/dist/host/modules/quick-apps/remote.js +238 -0
  713. package/data/build/dist/host/modules/quick-apps/remote.js.map +1 -0
  714. package/data/build/dist/host/modules/quick-apps/service.d.ts +27 -0
  715. package/data/build/dist/host/modules/quick-apps/service.d.ts.map +1 -0
  716. package/data/build/dist/host/modules/quick-apps/service.js +174 -0
  717. package/data/build/dist/host/modules/quick-apps/service.js.map +1 -0
  718. package/data/build/dist/host/modules/quick-apps/static-handler.d.ts +8 -0
  719. package/data/build/dist/host/modules/quick-apps/static-handler.d.ts.map +1 -0
  720. package/data/build/dist/host/modules/quick-apps/static-handler.js +213 -0
  721. package/data/build/dist/host/modules/quick-apps/static-handler.js.map +1 -0
  722. package/data/build/dist/host/native-session-bridge.d.ts +7 -1
  723. package/data/build/dist/host/native-session-bridge.d.ts.map +1 -1
  724. package/data/build/dist/host/native-session-bridge.js +10 -15
  725. package/data/build/dist/host/native-session-bridge.js.map +1 -1
  726. package/data/build/dist/host/rpc.d.ts.map +1 -1
  727. package/data/build/dist/host/rpc.js +23 -12
  728. package/data/build/dist/host/rpc.js.map +1 -1
  729. package/data/build/dist/host/session-changes.d.ts.map +1 -1
  730. package/data/build/dist/host/session-changes.js +6 -2
  731. package/data/build/dist/host/session-changes.js.map +1 -1
  732. package/data/build/dist/host/session-migration-repair.js +48 -35
  733. package/data/build/dist/host/session-migration-repair.js.map +1 -1
  734. package/data/build/dist/host/settings.d.ts.map +1 -1
  735. package/data/build/dist/host/settings.js +31 -2
  736. package/data/build/dist/host/settings.js.map +1 -1
  737. package/data/build/dist/host/workspace-file-mutations.d.ts +2 -0
  738. package/data/build/dist/host/workspace-file-mutations.d.ts.map +1 -0
  739. package/data/build/dist/host/workspace-file-mutations.js +15 -0
  740. package/data/build/dist/host/workspace-file-mutations.js.map +1 -0
  741. package/data/build/dist/host/workspace-root.d.ts +14 -0
  742. package/data/build/dist/host/workspace-root.d.ts.map +1 -0
  743. package/data/build/dist/host/workspace-root.js +99 -0
  744. package/data/build/dist/host/workspace-root.js.map +1 -0
  745. package/data/build/dist/shared/attachment-prompts.d.ts +11 -0
  746. package/data/build/dist/shared/attachment-prompts.d.ts.map +1 -0
  747. package/data/build/dist/shared/attachment-prompts.js +17 -0
  748. package/data/build/dist/shared/attachment-prompts.js.map +1 -0
  749. package/data/build/dist/shared/cli-provider-route.d.ts +7 -0
  750. package/data/build/dist/shared/cli-provider-route.d.ts.map +1 -0
  751. package/data/build/dist/shared/cli-provider-route.js +13 -0
  752. package/data/build/dist/shared/cli-provider-route.js.map +1 -0
  753. package/data/build/dist/shared/codex-performance.d.ts +3 -0
  754. package/data/build/dist/shared/codex-performance.d.ts.map +1 -0
  755. package/data/build/dist/shared/codex-performance.js +2 -0
  756. package/data/build/dist/shared/codex-performance.js.map +1 -0
  757. package/data/build/dist/shared/contracts/agent-team.d.ts +14 -0
  758. package/data/build/dist/shared/contracts/agent-team.d.ts.map +1 -0
  759. package/data/build/dist/shared/contracts/agent-team.js +48 -0
  760. package/data/build/dist/shared/contracts/agent-team.js.map +1 -0
  761. package/data/build/dist/shared/contracts/cli-adapter.d.ts +62 -1
  762. package/data/build/dist/shared/contracts/cli-adapter.d.ts.map +1 -1
  763. package/data/build/dist/shared/contracts/cli-management.d.ts +29 -0
  764. package/data/build/dist/shared/contracts/cli-management.d.ts.map +1 -0
  765. package/data/build/dist/shared/contracts/cli-management.js +2 -0
  766. package/data/build/dist/shared/contracts/cli-management.js.map +1 -0
  767. package/data/build/dist/shared/contracts/config.d.ts +7 -1
  768. package/data/build/dist/shared/contracts/config.d.ts.map +1 -1
  769. package/data/build/dist/shared/contracts/config.js +3 -0
  770. package/data/build/dist/shared/contracts/config.js.map +1 -1
  771. package/data/build/dist/shared/contracts/errors.d.ts +2 -2
  772. package/data/build/dist/shared/contracts/errors.d.ts.map +1 -1
  773. package/data/build/dist/shared/contracts/git.d.ts +17 -0
  774. package/data/build/dist/shared/contracts/git.d.ts.map +1 -1
  775. package/data/build/dist/shared/contracts/git.js +27 -1
  776. package/data/build/dist/shared/contracts/git.js.map +1 -1
  777. package/data/build/dist/shared/contracts/interaction-presentation.d.ts +32 -0
  778. package/data/build/dist/shared/contracts/interaction-presentation.d.ts.map +1 -0
  779. package/data/build/dist/shared/contracts/interaction-presentation.js +2 -0
  780. package/data/build/dist/shared/contracts/interaction-presentation.js.map +1 -0
  781. package/data/build/dist/shared/contracts/interaction-translation.d.ts +53 -0
  782. package/data/build/dist/shared/contracts/interaction-translation.d.ts.map +1 -0
  783. package/data/build/dist/shared/contracts/interaction-translation.js +44 -0
  784. package/data/build/dist/shared/contracts/interaction-translation.js.map +1 -0
  785. package/data/build/dist/shared/contracts/quick-apps.d.ts +70 -0
  786. package/data/build/dist/shared/contracts/quick-apps.d.ts.map +1 -0
  787. package/data/build/dist/shared/contracts/quick-apps.js +4 -0
  788. package/data/build/dist/shared/contracts/quick-apps.js.map +1 -0
  789. package/data/build/dist/shared/contracts/session-translation.d.ts +82 -9
  790. package/data/build/dist/shared/contracts/session-translation.d.ts.map +1 -1
  791. package/data/build/dist/shared/contracts/session-translation.js +146 -2
  792. package/data/build/dist/shared/contracts/session-translation.js.map +1 -1
  793. package/data/build/dist/shared/contracts/subscription.d.ts +87 -0
  794. package/data/build/dist/shared/contracts/subscription.d.ts.map +1 -1
  795. package/data/build/dist/shared/contracts/subscription.js.map +1 -1
  796. package/data/build/dist/shared/contracts/version.d.ts +9 -15
  797. package/data/build/dist/shared/contracts/version.d.ts.map +1 -1
  798. package/data/build/dist/shared/contracts/version.js +8 -14
  799. package/data/build/dist/shared/contracts/version.js.map +1 -1
  800. package/data/build/dist/shared/index.d.ts +3 -2
  801. package/data/build/dist/shared/index.d.ts.map +1 -1
  802. package/data/build/dist/shared/index.js +3 -2
  803. package/data/build/dist/shared/index.js.map +1 -1
  804. package/data/build/dist/shared/peer-host-http-routes.d.ts +4 -0
  805. package/data/build/dist/shared/peer-host-http-routes.d.ts.map +1 -1
  806. package/data/build/dist/shared/peer-host-http-routes.js +4 -0
  807. package/data/build/dist/shared/peer-host-http-routes.js.map +1 -1
  808. package/data/build/dist/shared/provider-icon-resources.d.ts.map +1 -1
  809. package/data/build/dist/shared/provider-icon-resources.js +1 -0
  810. package/data/build/dist/shared/provider-icon-resources.js.map +1 -1
  811. package/data/build/dist/shared/quick-app-browser-storage.d.ts +33 -0
  812. package/data/build/dist/shared/quick-app-browser-storage.d.ts.map +1 -0
  813. package/data/build/dist/shared/quick-app-browser-storage.js +33 -0
  814. package/data/build/dist/shared/quick-app-browser-storage.js.map +1 -0
  815. package/data/build/dist/shared/quick-app-network-allow.d.ts +8 -0
  816. package/data/build/dist/shared/quick-app-network-allow.d.ts.map +1 -0
  817. package/data/build/dist/shared/quick-app-network-allow.js +192 -0
  818. package/data/build/dist/shared/quick-app-network-allow.js.map +1 -0
  819. package/data/build/dist/shared/quick-app-network-bootstrap.d.ts +9 -0
  820. package/data/build/dist/shared/quick-app-network-bootstrap.d.ts.map +1 -0
  821. package/data/build/dist/shared/quick-app-network-bootstrap.js +134 -0
  822. package/data/build/dist/shared/quick-app-network-bootstrap.js.map +1 -0
  823. package/data/build/dist/shared/quick-app-proxy-path.d.ts +6 -0
  824. package/data/build/dist/shared/quick-app-proxy-path.d.ts.map +1 -0
  825. package/data/build/dist/shared/quick-app-proxy-path.js +18 -0
  826. package/data/build/dist/shared/quick-app-proxy-path.js.map +1 -0
  827. package/data/build/dist/shared/quick-app-storage-bootstrap.d.ts +9 -0
  828. package/data/build/dist/shared/quick-app-storage-bootstrap.d.ts.map +1 -0
  829. package/data/build/dist/shared/quick-app-storage-bootstrap.js +189 -0
  830. package/data/build/dist/shared/quick-app-storage-bootstrap.js.map +1 -0
  831. package/data/build/dist/shared/quick-apps-bootstrap-locale.d.ts +7 -0
  832. package/data/build/dist/shared/quick-apps-bootstrap-locale.d.ts.map +1 -0
  833. package/data/build/dist/shared/quick-apps-bootstrap-locale.js +10 -0
  834. package/data/build/dist/shared/quick-apps-bootstrap-locale.js.map +1 -0
  835. package/data/build/dist/shared/request-performance.d.ts +15 -0
  836. package/data/build/dist/shared/request-performance.d.ts.map +1 -0
  837. package/data/build/dist/shared/request-performance.js +3 -0
  838. package/data/build/dist/shared/request-performance.js.map +1 -0
  839. package/data/build/dist/shared/translation-indicator.d.ts +26 -0
  840. package/data/build/dist/shared/translation-indicator.d.ts.map +1 -0
  841. package/data/build/dist/shared/translation-indicator.js +29 -0
  842. package/data/build/dist/shared/translation-indicator.js.map +1 -0
  843. package/package.json +35 -34
  844. package/profile/README.md +2 -2
  845. package/profile/package.json +3 -3
  846. package/profile/version.json +3 -3
  847. package/version.json +3 -3
  848. package/data/build/dist/client/client.model-catalog-cache.js.map +0 -1
@@ -0,0 +1,192 @@
1
+ /** Exceptions to the public-only egress policy. An empty list denies every non-public target. */
2
+ const RANGE_TEXT = [
3
+ ['0.0.0.0', 8], ['10.0.0.0', 8], ['100.64.0.0', 10], ['127.0.0.0', 8], ['169.254.0.0', 16], ['172.16.0.0', 12],
4
+ ['192.0.0.0', 24], ['192.0.2.0', 24], ['192.88.99.0', 24], ['192.168.0.0', 16], ['198.18.0.0', 15], ['198.51.100.0', 24],
5
+ ['203.0.113.0', 24], ['224.0.0.0', 4], ['240.0.0.0', 4], ['255.255.255.255', 32],
6
+ ['::', 128], ['::1', 128], ['fc00::', 7], ['fe80::', 10], ['ff00::', 8], ['2001:db8::', 32],
7
+ ];
8
+ const RANGES = RANGE_TEXT.map(([text, prefix]) => {
9
+ const ip = parseIp(text);
10
+ if (!ip)
11
+ throw new Error(`Invalid egress range ${text}.`);
12
+ return { family: ip.family, bytes: ip.bytes, prefix };
13
+ });
14
+ export function parseQuickAppNetworkAllow(value) {
15
+ if (value === undefined)
16
+ return [];
17
+ if (!Array.isArray(value) || value.length > 16)
18
+ throw invalid();
19
+ const allow = [];
20
+ const seen = new Set();
21
+ for (const item of value) {
22
+ if (typeof item !== 'string')
23
+ throw invalid();
24
+ const text = item.trim().toLowerCase();
25
+ if (!text)
26
+ continue;
27
+ const canonical = canonicalEntry(text);
28
+ if (!canonical)
29
+ throw invalid();
30
+ if (seen.has(canonical))
31
+ continue;
32
+ seen.add(canonical);
33
+ allow.push(canonical);
34
+ }
35
+ return allow;
36
+ }
37
+ export function quickAppAddressBlocked(address, family) {
38
+ const ip = canonicalIp(address);
39
+ if (!ip || ip.family !== family)
40
+ return true;
41
+ return blockedRange(ip, family === 4 ? 32 : 128);
42
+ }
43
+ /** Clash, Surge, and sing-box map public names onto 198.18.0.0/15. Literal addresses stay blocked. */
44
+ export function quickAppFakeIpAddress(address, family) {
45
+ const ip = canonicalIp(address);
46
+ const range = RANGES.find(item => item.family === 4 && item.prefix === 15);
47
+ return ip?.family === family && ip.family === 4 && range !== undefined && samePrefix(range.bytes, ip.bytes, range.prefix);
48
+ }
49
+ export function quickAppAllowMatchesName(allow, hostname) {
50
+ const host = hostname.toLowerCase().replace(/\.$/u, '');
51
+ return allow.some(entry => entry === host && !entry.includes('/') && parseIp(entry) === null);
52
+ }
53
+ /** True when this saved entry explicitly permits the hostname or the resolved address. */
54
+ export function quickAppAllowMatches(allow, hostname, address, family) {
55
+ const host = hostname.toLowerCase().replace(/\.$/u, '');
56
+ const target = parseIp(address);
57
+ if (!target || target.family !== family)
58
+ return false;
59
+ return allow.some(entry => {
60
+ const slash = entry.lastIndexOf('/');
61
+ const base = parseIp(slash === -1 ? entry : entry.slice(0, slash));
62
+ if (!base)
63
+ return entry === host;
64
+ if (base.family !== family)
65
+ return false;
66
+ const prefix = slash === -1 ? (family === 4 ? 32 : 128) : Number(entry.slice(slash + 1));
67
+ return samePrefix(base.bytes, target.bytes, prefix);
68
+ });
69
+ }
70
+ function canonicalEntry(text) {
71
+ if (text.length > 253)
72
+ return null;
73
+ const slash = text.lastIndexOf('/');
74
+ if (slash > 0) {
75
+ const prefix = Number(text.slice(slash + 1));
76
+ const ip = canonicalIp(text.slice(0, slash));
77
+ const max = ip?.family === 4 ? 32 : 128;
78
+ if (!ip || !/^\d{1,3}$/u.test(text.slice(slash + 1)) || prefix < 1 || prefix > max || !blockedRange(ip, prefix))
79
+ return null;
80
+ const network = mask(ip.bytes, prefix);
81
+ const formatted = formatIp({ family: ip.family, bytes: network });
82
+ return prefix === max ? formatted : `${formatted}/${prefix}`;
83
+ }
84
+ const ip = canonicalIp(text);
85
+ if (ip)
86
+ return blockedRange(ip, ip.family === 4 ? 32 : 128) ? formatIp(ip) : null;
87
+ const host = text.endsWith('.') ? text.slice(0, -1) : text;
88
+ if (!host || host.endsWith('.') || /^\d+$/u.test(host) || parseIp(host))
89
+ return null;
90
+ return /^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$/u.test(host) ? host : null;
91
+ }
92
+ function blockedRange(ip, prefix) {
93
+ return RANGES.some(range => range.family === ip.family && range.prefix <= prefix && samePrefix(range.bytes, ip.bytes, range.prefix));
94
+ }
95
+ function canonicalIp(text) {
96
+ const parsed = parseIp(text);
97
+ if (!parsed)
98
+ return null;
99
+ if (parsed.family === 6 && parsed.bytes.subarray(0, 10).every(byte => byte === 0) && parsed.bytes[10] === 255 && parsed.bytes[11] === 255) {
100
+ return { family: 4, bytes: parsed.bytes.subarray(12) };
101
+ }
102
+ return parsed;
103
+ }
104
+ function parseIp(text) {
105
+ if (text.includes('%') || text.includes('/'))
106
+ return null;
107
+ if (/^(?:0|[1-9]\d{0,2})(?:\.(?:0|[1-9]\d{0,2})){3}$/u.test(text)) {
108
+ const bytes = text.split('.').map(part => Number(part));
109
+ if (bytes.every(part => part <= 255))
110
+ return { family: 4, bytes: Uint8Array.from(bytes) };
111
+ return null;
112
+ }
113
+ const halves = text.split('::');
114
+ if (halves.length > 2)
115
+ return null;
116
+ const side = (value) => {
117
+ if (value === '')
118
+ return [];
119
+ const parts = value.split(':');
120
+ const groups = [];
121
+ for (let index = 0; index < parts.length; index += 1) {
122
+ const part = parts[index] ?? '';
123
+ if (index === parts.length - 1 && part.includes('.')) {
124
+ const tail = parseIp(part);
125
+ if (tail?.family !== 4)
126
+ return null;
127
+ groups.push((tail.bytes[0] << 8) | tail.bytes[1], (tail.bytes[2] << 8) | tail.bytes[3]);
128
+ }
129
+ else if (!/^[0-9a-f]{1,4}$/u.test(part))
130
+ return null;
131
+ else
132
+ groups.push(Number.parseInt(part, 16));
133
+ }
134
+ return groups;
135
+ };
136
+ const left = side(halves[0] ?? '');
137
+ const right = halves.length === 2 ? side(halves[1] ?? '') : [];
138
+ if (!left || !right || (halves.length === 1 && left.length !== 8) || (halves.length === 2 && left.length + right.length >= 8))
139
+ return null;
140
+ const groups = halves.length === 1 ? left : [...left, ...Array(8 - left.length - right.length).fill(0), ...right];
141
+ const bytes = new Uint8Array(16);
142
+ groups.forEach((group, index) => { bytes[index * 2] = group >> 8; bytes[index * 2 + 1] = group & 255; });
143
+ return { family: 6, bytes };
144
+ }
145
+ function formatIp(ip) {
146
+ if (ip.family === 4)
147
+ return [...ip.bytes].join('.');
148
+ const groups = Array.from({ length: 8 }, (_, index) => (ip.bytes[index * 2] << 8) | ip.bytes[index * 2 + 1]);
149
+ let start = -1;
150
+ let length = 0;
151
+ for (let index = 0; index < groups.length;) {
152
+ if (groups[index] !== 0) {
153
+ index += 1;
154
+ continue;
155
+ }
156
+ let end = index;
157
+ while (end < groups.length && groups[end] === 0)
158
+ end += 1;
159
+ if (end - index > length) {
160
+ start = index;
161
+ length = end - index;
162
+ }
163
+ index = end;
164
+ }
165
+ const hex = groups.map(group => group.toString(16));
166
+ if (length < 2)
167
+ return hex.join(':');
168
+ return `${hex.slice(0, start).join(':')}::${hex.slice(start + length).join(':')}`;
169
+ }
170
+ function mask(bytes, prefix) {
171
+ const out = bytes.slice();
172
+ const whole = Math.floor(prefix / 8);
173
+ const bits = prefix % 8;
174
+ if (bits)
175
+ out[whole] = (out[whole] ?? 0) & (0xff << (8 - bits));
176
+ for (let index = whole + (bits ? 1 : 0); index < out.length; index += 1)
177
+ out[index] = 0;
178
+ return out;
179
+ }
180
+ function samePrefix(left, right, prefix) {
181
+ const whole = Math.floor(prefix / 8);
182
+ for (let index = 0; index < whole; index += 1)
183
+ if (left[index] !== right[index])
184
+ return false;
185
+ const bits = prefix % 8;
186
+ if (!bits)
187
+ return true;
188
+ const select = 0xff << (8 - bits) & 0xff;
189
+ return ((left[whole] ?? 0) & select) === ((right[whole] ?? 0) & select);
190
+ }
191
+ function invalid() { return new Error('Invalid local network allow list.'); }
192
+ //# sourceMappingURL=quick-app-network-allow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quick-app-network-allow.js","sourceRoot":"","sources":["../../../../src/shared/quick-app-network-allow.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /** Browser-side fetch/XHR shim. Kept free of host imports because its source is copied into the sandbox document. */
2
+ export declare function quickAppPageEgressUrl(pageHref: string): string;
3
+ export declare function quickAppRequestUsesEgress(pageHref: string, requestUrl: string): boolean;
4
+ export declare function quickAppNetworkSource(): string;
5
+ /** Runs before any application script, including when the iframe loads the file directly. */
6
+ export declare function quickAppPreparedHtml(html: string): string;
7
+ export declare function quickAppNetworkBootstrap(): string;
8
+ export declare function quickAppNetworkInstall(): void;
9
+ //# sourceMappingURL=quick-app-network-bootstrap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quick-app-network-bootstrap.d.ts","sourceRoot":"","sources":["../../../../src/shared/quick-app-network-bootstrap.ts"],"names":[],"mappings":"AAAA,qHAAqH;AAErH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAK9D;AAED,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAKvF;AAED,wBAAgB,qBAAqB,IAAI,MAAM,CAE9C;AAED,6FAA6F;AAC7F,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAUzD;AAED,wBAAgB,wBAAwB,IAAI,MAAM,CAIjD;AAoBD,wBAAgB,sBAAsB,IAAI,IAAI,CAgE7C"}
@@ -0,0 +1,134 @@
1
+ /** Browser-side fetch/XHR shim. Kept free of host imports because its source is copied into the sandbox document. */
2
+ export function quickAppPageEgressUrl(pageHref) {
3
+ const page = new URL(pageHref);
4
+ const base = page.pathname.match(/^\/__codingns\/quick-apps\/[^/]+\//);
5
+ const prefix = base ? base[0] : page.pathname.replace(/[^/]*$/u, '');
6
+ return new URL(`${prefix}__quickapp/egress`, pageHref).href;
7
+ }
8
+ export function quickAppRequestUsesEgress(pageHref, requestUrl) {
9
+ const page = new URL(pageHref);
10
+ const target = new URL(requestUrl, pageHref);
11
+ if (target.protocol !== 'http:' && target.protocol !== 'https:')
12
+ return false;
13
+ return target.host !== page.host;
14
+ }
15
+ export function quickAppNetworkSource() {
16
+ return [quickAppPageEgressUrl, quickAppRequestUsesEgress, quickAppNetworkInstall].map(item => item.toString()).join('\n');
17
+ }
18
+ /** Runs before any application script, including when the iframe loads the file directly. */
19
+ export function quickAppPreparedHtml(html) {
20
+ const bootstrap = `<script>${quickAppNetworkSource()}\nquickAppNetworkInstall();</script>`;
21
+ const doctype = /^(?:\uFEFF)?(?:\s|<!--[\s\S]*?-->)*(<!doctype(?:[^>"']|"[^"]*"|'[^']*')*>)/iu.exec(html);
22
+ const doctypeEnd = doctype?.[0].length ?? 0;
23
+ const document = html.slice(doctypeEnd);
24
+ const htmlTag = /<html\b(?:[^>"']|"[^"]*"|'[^']*')*>/iu.exec(document);
25
+ const headTag = /<head\b(?:[^>"']|"[^"]*"|'[^']*')*>/iu.exec(document);
26
+ const anchor = headTag !== null && (htmlTag === null || headTag.index > htmlTag.index) ? headTag : htmlTag;
27
+ const insertionPoint = anchor === null ? doctypeEnd : doctypeEnd + anchor.index + anchor[0].length;
28
+ return `${html.slice(0, insertionPoint)}${bootstrap}${html.slice(insertionPoint)}`;
29
+ }
30
+ export function quickAppNetworkBootstrap() {
31
+ return `<!DOCTYPE html><html><head><meta charset="utf-8"><title>Quick App</title></head><body><script>${quickAppNetworkSource()}
32
+ ${quickAppNetworkBootstrapRuntime.toString()}
33
+ quickAppNetworkBootstrapRuntime();</script></body></html>`;
34
+ }
35
+ function quickAppNetworkBootstrapRuntime() {
36
+ const source = fetch(location.href, { headers: { Accept: 'text/html' } }).then(response => {
37
+ if (!response.ok)
38
+ throw new Error('The application HTML could not be loaded.');
39
+ return response.text();
40
+ });
41
+ void source.then(html => {
42
+ quickAppNetworkInstall();
43
+ document.open();
44
+ document.write(html);
45
+ document.close();
46
+ }).catch(error => {
47
+ const message = document.createElement('p');
48
+ message.setAttribute('role', 'alert');
49
+ message.textContent = error instanceof Error ? error.message : 'Application network initialization failed.';
50
+ document.body.replaceChildren(message);
51
+ });
52
+ }
53
+ export function quickAppNetworkInstall() {
54
+ const current = globalThis.fetch;
55
+ if (current.__quickAppEgress && XMLHttpRequest.prototype.open.__quickAppEgress)
56
+ return;
57
+ const nativeFetch = (current.__quickAppEgress ? current : globalThis.fetch).bind(globalThis);
58
+ const endpoint = quickAppPageEgressUrl(location.href);
59
+ const xhrOpen = XMLHttpRequest.prototype.open;
60
+ const xhrSend = XMLHttpRequest.prototype.send;
61
+ const xhrSetHeader = XMLHttpRequest.prototype.setRequestHeader;
62
+ const allowed = (name) => name === 'authorization' || name === 'content-type' || name === 'accept' || name === 'accept-language';
63
+ const bytesToBase64 = (bytes) => {
64
+ let binary = '';
65
+ for (let index = 0; index < bytes.length; index += 8192)
66
+ binary += String.fromCharCode.apply(null, bytes.subarray(index, index + 8192));
67
+ return btoa(binary);
68
+ };
69
+ const proxy = async (method, url, headers, body, signal, redirect) => {
70
+ const fields = headers.filter(([name]) => allowed(name));
71
+ const payload = { method, url, headers: fields, ...(redirect ? { redirect } : {}) };
72
+ if (body != null) {
73
+ const probe = new Response(body);
74
+ const type = probe.headers.get('content-type');
75
+ if (type && !fields.some(([name]) => name === 'content-type'))
76
+ fields.push(['content-type', type]);
77
+ const bytes = new Uint8Array(await probe.arrayBuffer());
78
+ if (bytes.byteLength)
79
+ payload.body = bytesToBase64(bytes);
80
+ }
81
+ return nativeFetch(endpoint, { method: 'POST', credentials: 'omit', headers: { 'Content-Type': 'text/plain; charset=utf-8' }, body: JSON.stringify(payload), ...(signal ? { signal } : {}) });
82
+ };
83
+ const shim = Object.assign((input, init) => {
84
+ const request = new Request(input, init);
85
+ if (!quickAppRequestUsesEgress(location.href, request.url))
86
+ return nativeFetch(request);
87
+ const headers = [];
88
+ request.headers.forEach((value, key) => headers.push([key, value]));
89
+ return proxy(request.method, request.url, headers, request.body, request.signal, request.redirect);
90
+ }, { __quickAppEgress: true });
91
+ if (!current.__quickAppEgress)
92
+ globalThis.fetch = shim;
93
+ if (XMLHttpRequest.prototype.open.__quickAppEgress)
94
+ return;
95
+ XMLHttpRequest.prototype.open = Object.assign(function open(method, url, async) {
96
+ const target = new URL(String(url), location.href);
97
+ Object.defineProperty(this, '__qaEgress', { configurable: true, value: { method: String(method || 'GET').toUpperCase(), url: target.href, headers: [], async: async !== false } });
98
+ return xhrOpen.call(this, String(method), url, async !== false);
99
+ }, { __quickAppEgress: true });
100
+ XMLHttpRequest.prototype.setRequestHeader = function setRequestHeader(name, value) {
101
+ this.__qaEgress?.headers.push([String(name).toLowerCase(), String(value)]);
102
+ return xhrSetHeader.call(this, name, value);
103
+ };
104
+ XMLHttpRequest.prototype.send = function send(body) {
105
+ const plan = this.__qaEgress;
106
+ if (!plan?.async || !quickAppRequestUsesEgress(location.href, plan.url))
107
+ return xhrSend.call(this, body);
108
+ if (body != null && typeof body !== 'string' && !(body instanceof Blob) && !(body instanceof ArrayBuffer) && !ArrayBuffer.isView(body) && !(body instanceof FormData) && !(body instanceof URLSearchParams))
109
+ return xhrSend.call(this, body);
110
+ const controller = new AbortController();
111
+ const abort = this.abort;
112
+ this.abort = function abortEgress() { controller.abort(); return abort.call(this); };
113
+ void proxy(plan.method, plan.url, plan.headers, body ?? null, controller.signal, 'follow').then(async (response) => {
114
+ const bytes = new Uint8Array(await response.arrayBuffer());
115
+ const text = new TextDecoder().decode(bytes);
116
+ const pairs = [];
117
+ response.headers.forEach((value, key) => pairs.push([key, value]));
118
+ const value = this.responseType === 'arraybuffer' ? bytes.buffer : this.responseType === 'blob' ? new Blob([bytes]) : this.responseType === 'json' ? JSON.parse(text || 'null') : text;
119
+ const define = (name, current) => Object.defineProperty(this, name, { configurable: true, get: () => current });
120
+ define('readyState', 4);
121
+ define('status', response.status);
122
+ define('statusText', response.statusText);
123
+ define('responseText', text);
124
+ define('response', value);
125
+ define('responseURL', response.url);
126
+ this.getAllResponseHeaders = () => pairs.map(([key, header]) => `${key}: ${header}`).join('\r\n');
127
+ this.getResponseHeader = name => pairs.find(([key]) => key === String(name).toLowerCase())?.[1] ?? null;
128
+ this.dispatchEvent(new Event('readystatechange'));
129
+ this.dispatchEvent(new Event('load'));
130
+ this.dispatchEvent(new Event('loadend'));
131
+ }).catch(() => { this.dispatchEvent(new Event('error')); this.dispatchEvent(new Event('loadend')); });
132
+ };
133
+ }
134
+ //# sourceMappingURL=quick-app-network-bootstrap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quick-app-network-bootstrap.js","sourceRoot":"","sources":["../../../../src/shared/quick-app-network-bootstrap.ts"],"names":[],"mappings":"AAAA,qHAAqH;AAErH,MAAM,UAAU,qBAAqB,CAAC,QAAgB;IACpD,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAA;IAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAA;IACtE,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAA;IACpE,OAAO,IAAI,GAAG,CAAC,GAAG,MAAM,mBAAmB,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAA;AAC7D,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,QAAgB,EAAE,UAAkB;IAC5E,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAA;IAC9B,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;IAC5C,IAAI,MAAM,CAAC,QAAQ,KAAK,OAAO,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAA;IAC7E,OAAO,MAAM,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAA;AAClC,CAAC;AAED,MAAM,UAAU,qBAAqB;IACnC,OAAO,CAAC,qBAAqB,EAAE,yBAAyB,EAAE,sBAAsB,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAC3H,CAAC;AAED,6FAA6F;AAC7F,MAAM,UAAU,oBAAoB,CAAC,IAAY;IAC/C,MAAM,SAAS,GAAG,WAAW,qBAAqB,EAAE,sCAAsC,CAAA;IAC1F,MAAM,OAAO,GAAG,8EAA8E,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACzG,MAAM,UAAU,GAAG,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAA;IAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;IACvC,MAAM,OAAO,GAAG,uCAAuC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IACtE,MAAM,OAAO,GAAG,uCAAuC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IACtE,MAAM,MAAM,GAAG,OAAO,KAAK,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,IAAI,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAA;IAC1G,MAAM,cAAc,GAAG,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,GAAG,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;IAClG,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,GAAG,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,CAAA;AACpF,CAAC;AAED,MAAM,UAAU,wBAAwB;IACtC,OAAO,iGAAiG,qBAAqB,EAAE;EAC/H,+BAA+B,CAAC,QAAQ,EAAE;0DACc,CAAA;AAC1D,CAAC;AAED,SAAS,+BAA+B;IACtC,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;QACxF,IAAI,CAAC,QAAQ,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAA;QAC9E,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAA;IACxB,CAAC,CAAC,CAAA;IACF,KAAK,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QACtB,sBAAsB,EAAE,CAAA;QACxB,QAAQ,CAAC,IAAI,EAAE,CAAA;QACf,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QACpB,QAAQ,CAAC,KAAK,EAAE,CAAA;IAClB,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;QACf,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;QAC3C,OAAO,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QACrC,OAAO,CAAC,WAAW,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,4CAA4C,CAAA;QAC3G,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;IACxC,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB;IACpC,MAAM,OAAO,GAAG,UAAU,CAAC,KAAiE,CAAA;IAC5F,IAAI,OAAO,CAAC,gBAAgB,IAAK,cAAc,CAAC,SAAS,CAAC,IAA8E,CAAC,gBAAgB;QAAE,OAAM;IACjK,MAAM,WAAW,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;IAC5F,MAAM,QAAQ,GAAG,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;IACrD,MAAM,OAAO,GAAG,cAAc,CAAC,SAAS,CAAC,IAAI,CAAA;IAC7C,MAAM,OAAO,GAAG,cAAc,CAAC,SAAS,CAAC,IAAI,CAAA;IAC7C,MAAM,YAAY,GAAG,cAAc,CAAC,SAAS,CAAC,gBAAgB,CAAA;IAC9D,MAAM,OAAO,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,KAAK,eAAe,IAAI,IAAI,KAAK,cAAc,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,iBAAiB,CAAA;IACxI,MAAM,aAAa,GAAG,CAAC,KAAiB,EAAE,EAAE;QAC1C,IAAI,MAAM,GAAG,EAAE,CAAA;QACf,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,IAAI,IAAI;YAAE,MAAM,IAAI,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAwB,CAAC,CAAA;QAC9J,OAAO,IAAI,CAAC,MAAM,CAAC,CAAA;IACrB,CAAC,CAAA;IACD,MAAM,KAAK,GAAG,KAAK,EAAE,MAAc,EAAE,GAAW,EAAE,OAA2B,EAAE,IAAiC,EAAE,MAAoB,EAAE,QAA0B,EAAE,EAAE;QACpK,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;QACxD,MAAM,OAAO,GAA4G,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAA;QAC5L,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;YACjB,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAA;YAChC,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;YAC9C,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,KAAK,cAAc,CAAC;gBAAE,MAAM,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC,CAAA;YAClG,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,WAAW,EAAE,CAAC,CAAA;YACvD,IAAI,KAAK,CAAC,UAAU;gBAAE,OAAO,CAAC,IAAI,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;QAC3D,CAAC;QACD,OAAO,WAAW,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,2BAA2B,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;IAC/L,CAAC,CAAA;IACD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAwB,EAAE,IAAkB,EAAE,EAAE;QAC1E,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;QACxC,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC;YAAE,OAAO,WAAW,CAAC,OAAO,CAAC,CAAA;QACvF,MAAM,OAAO,GAAuB,EAAE,CAAA;QACtC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAA;QACnE,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAA;IACpG,CAAC,EAAE,EAAE,gBAAgB,EAAE,IAAa,EAAE,CAAC,CAAA;IACvC,IAAI,CAAC,OAAO,CAAC,gBAAgB;QAAE,UAAU,CAAC,KAAK,GAAG,IAAI,CAAA;IACtD,IAAK,cAAc,CAAC,SAAS,CAAC,IAA8E,CAAC,gBAAgB;QAAE,OAAM;IACrI,cAAc,CAAC,SAAS,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,IAAI,CAAuB,MAAc,EAAE,GAAiB,EAAE,KAAe;QAClI,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAA;QAClD,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,YAAY,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC,WAAW,EAAE,EAAE,GAAG,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,EAAwB,EAAE,KAAK,EAAE,KAAK,KAAK,KAAK,EAAE,EAAE,CAAC,CAAA;QACxM,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,KAAK,KAAK,KAAK,CAAC,CAAA;IACjE,CAAC,EAAE,EAAE,gBAAgB,EAAE,IAAa,EAAE,CAAC,CAAA;IACvC,cAAc,CAAC,SAAS,CAAC,gBAAgB,GAAG,SAAS,gBAAgB,CAA0E,IAAY,EAAE,KAAa;QACxK,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC1E,OAAO,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;IAC7C,CAAC,CAAA;IACD,cAAc,CAAC,SAAS,CAAC,IAAI,GAAG,SAAS,IAAI,CAAuH,IAA+C;QACjN,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAA;QAC5B,IAAI,CAAC,IAAI,EAAE,KAAK,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC;YAAE,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QACxG,IAAI,IAAI,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,YAAY,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,YAAY,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,YAAY,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,YAAY,eAAe,CAAC;YAAE,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QAC5O,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAA;QACxC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;QACxB,IAAI,CAAC,KAAK,GAAG,SAAS,WAAW,KAAK,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA,CAAC,CAAC,CAAA;QACnF,KAAK,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,IAAI,EAAE,UAAU,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,KAAK,EAAC,QAAQ,EAAC,EAAE;YAC/G,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAA;YAC1D,MAAM,IAAI,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YAC5C,MAAM,KAAK,GAAuB,EAAE,CAAA;YACpC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAA;YAClE,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,KAAK,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;YACtL,MAAM,MAAM,GAAG,CAAC,IAAY,EAAE,OAAgB,EAAE,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAA;YAChI,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;YAAC,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;YAAC,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;YAAC,MAAM,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;YAAC,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YAAC,MAAM,CAAC,aAAa,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAA;YACnM,IAAI,CAAC,qBAAqB,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,KAAK,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACjG,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAA;YACvG,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC;YAAC,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;YAAC,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,CAAA;QACpI,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,CAAA,CAAC,CAAC,CAAC,CAAA;IACtG,CAAC,CAAA;AACH,CAAC"}
@@ -0,0 +1,6 @@
1
+ /** A launch-only bearer address; neither a DSH credential nor a workspace path. */
2
+ export declare const QUICK_APP_PROXY_PREFIX = "/__codingns/quick-apps/";
3
+ /** The native Desktop embedding origin; preview resources use the verified Host listener. */
4
+ export declare const QUICK_APP_DESKTOP_ORIGIN = "dsh-app://app";
5
+ export declare function quickAppProxyBase(path: string): string | undefined;
6
+ //# sourceMappingURL=quick-app-proxy-path.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quick-app-proxy-path.d.ts","sourceRoot":"","sources":["../../../../src/shared/quick-app-proxy-path.ts"],"names":[],"mappings":"AAAA,mFAAmF;AACnF,eAAO,MAAM,sBAAsB,4BAA4B,CAAA;AAC/D,6FAA6F;AAC7F,eAAO,MAAM,wBAAwB,kBAAkB,CAAA;AACvD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAMlE"}
@@ -0,0 +1,18 @@
1
+ /** A launch-only bearer address; neither a DSH credential nor a workspace path. */
2
+ export const QUICK_APP_PROXY_PREFIX = '/__codingns/quick-apps/';
3
+ /** The native Desktop embedding origin; preview resources use the verified Host listener. */
4
+ export const QUICK_APP_DESKTOP_ORIGIN = 'dsh-app://app';
5
+ export function quickAppProxyBase(path) {
6
+ const base = /^\/__codingns\/quick-apps\/[A-Za-z0-9_-]{43}\//u.exec(path)?.[0];
7
+ if (!base)
8
+ return undefined;
9
+ // DSH matches URL-normalized paths. A raw prefix must never exempt a request
10
+ // that normalization would move into a privileged API outside this prefix.
11
+ try {
12
+ return new URL(path, 'http://host.invalid').pathname.startsWith(base) ? base : undefined;
13
+ }
14
+ catch {
15
+ return undefined;
16
+ }
17
+ }
18
+ //# sourceMappingURL=quick-app-proxy-path.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quick-app-proxy-path.js","sourceRoot":"","sources":["../../../../src/shared/quick-app-proxy-path.ts"],"names":[],"mappings":"AAAA,mFAAmF;AACnF,MAAM,CAAC,MAAM,sBAAsB,GAAG,yBAAyB,CAAA;AAC/D,6FAA6F;AAC7F,MAAM,CAAC,MAAM,wBAAwB,GAAG,eAAe,CAAA;AACvD,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC5C,MAAM,IAAI,GAAG,iDAAiD,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAC9E,IAAI,CAAC,IAAI;QAAE,OAAO,SAAS,CAAA;IAC3B,6EAA6E;IAC7E,2EAA2E;IAC3E,IAAI,CAAC;QAAC,OAAO,IAAI,GAAG,CAAC,IAAI,EAAE,qBAAqB,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAA;IAAC,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,SAAS,CAAA;IAAC,CAAC;AAC7H,CAAC"}
@@ -0,0 +1,9 @@
1
+ /** Self-contained because the Host serializes this function into an opaque sandbox document. */
2
+ export declare function quickAppStorageRuntime(token: string, protocol: string, limits: {
3
+ bytes: number;
4
+ keys: number;
5
+ pending: number;
6
+ timeoutMs: number;
7
+ }): void;
8
+ export declare function quickAppStorageBootstrap(token: string): string;
9
+ //# sourceMappingURL=quick-app-storage-bootstrap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quick-app-storage-bootstrap.d.ts","sourceRoot":"","sources":["../../../../src/shared/quick-app-storage-bootstrap.ts"],"names":[],"mappings":"AAGA,gGAAgG;AAChG,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CA6IzJ;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAI9D"}
@@ -0,0 +1,189 @@
1
+ import { QUICK_APP_STORAGE_LIMITS, QUICK_APP_STORAGE_PROTOCOL } from './quick-app-browser-storage.js';
2
+ import { quickAppNetworkInstall, quickAppNetworkSource } from './quick-app-network-bootstrap.js';
3
+ /** Self-contained because the Host serializes this function into an opaque sandbox document. */
4
+ export function quickAppStorageRuntime(token, protocol, limits) {
5
+ const source = fetch(location.href, { headers: { Accept: 'text/html' } }).then(response => {
6
+ if (!response.ok)
7
+ throw new Error('The application HTML could not be loaded.');
8
+ return response.text();
9
+ });
10
+ const documentId = Array.from(crypto.getRandomValues(new Uint8Array(16)), byte => byte.toString(16).padStart(2, '0')).join('');
11
+ const connect = new Promise((resolve, reject) => {
12
+ const send = () => parent.postMessage({ type: protocol, token, documentId }, '*');
13
+ const receive = (event) => {
14
+ if (event.source !== parent || event.data?.type !== protocol || event.data.token !== token || event.data.documentId !== documentId || event.ports.length !== 1)
15
+ return;
16
+ clearInterval(retry);
17
+ clearTimeout(timeout);
18
+ removeEventListener('message', receive);
19
+ resolve(event);
20
+ };
21
+ const retry = setInterval(send, 100);
22
+ const timeout = setTimeout(() => {
23
+ clearInterval(retry);
24
+ removeEventListener('message', receive);
25
+ reject(new Error('Open this application through the updated Quick Apps viewer to use browser storage.'));
26
+ }, limits.timeoutMs);
27
+ addEventListener('message', receive);
28
+ send();
29
+ });
30
+ void Promise.all([source, connect]).then(([html, event]) => {
31
+ const port = event.ports[0];
32
+ const pending = new Map();
33
+ const baseline = { local: new Map(event.data.snapshot.local ?? []), session: new Map(event.data.snapshot.session ?? []) };
34
+ const mirror = { local: new Map(baseline.local), session: new Map(baseline.session) };
35
+ const errors = {};
36
+ const writeErrors = {};
37
+ for (const area of ['local', 'session'])
38
+ if (event.data.errors[area]) {
39
+ errors[area] = new DOMException(event.data.errors[area].message, event.data.errors[area].name);
40
+ }
41
+ let sequence = 0;
42
+ let closed = false;
43
+ const mutation = (operation) => ['setItem', 'removeItem', 'clear'].includes(operation);
44
+ const apply = (map, request) => {
45
+ if (request.operation === 'setItem')
46
+ map.set(request.key, request.value);
47
+ else if (request.operation === 'removeItem')
48
+ map.delete(request.key);
49
+ else if (request.operation === 'clear')
50
+ map.clear();
51
+ };
52
+ const reconcile = (area) => {
53
+ mirror[area] = new Map(baseline[area]);
54
+ for (const { request } of pending.values())
55
+ if (request.area === area)
56
+ apply(mirror[area], request);
57
+ };
58
+ const report = (error, area) => {
59
+ dispatchEvent(new CustomEvent('appstorageerror', { detail: { area, name: error.name, message: error.message } }));
60
+ };
61
+ const finish = (id, value, entries, error) => {
62
+ const item = pending.get(id);
63
+ if (!item)
64
+ return;
65
+ clearTimeout(item.timer);
66
+ pending.delete(id);
67
+ const area = item.request.area;
68
+ if (entries) {
69
+ baseline[area] = new Map(entries);
70
+ delete errors[area];
71
+ }
72
+ if (error && mutation(item.request.operation))
73
+ writeErrors[area] = error;
74
+ reconcile(area);
75
+ if (error)
76
+ item.reject(error);
77
+ else
78
+ item.resolve(value);
79
+ };
80
+ port.onmessage = message => {
81
+ const reply = message.data;
82
+ if (reply?.type === 'closed') {
83
+ closed = true;
84
+ for (const id of [...pending.keys()])
85
+ finish(id, undefined, undefined, new DOMException(reply.error.message, reply.error.name));
86
+ port.close();
87
+ return;
88
+ }
89
+ if (!reply || !Number.isSafeInteger(reply.id))
90
+ return;
91
+ const error = reply.error ? new DOMException(reply.error.message, reply.error.name) : undefined;
92
+ finish(reply.id, reply.value, reply.entries, error);
93
+ };
94
+ const string = (value) => {
95
+ if (typeof value === 'symbol')
96
+ throw new TypeError('Storage keys and values cannot be symbols.');
97
+ return String(value);
98
+ };
99
+ const request = (area, operation, key, value) => {
100
+ if (closed)
101
+ throw new DOMException('The application storage channel was closed.', 'SecurityError');
102
+ if (pending.size >= limits.pending)
103
+ throw new DOMException('Too many pending storage operations.', 'QuotaExceededError');
104
+ const item = { id: ++sequence, area, operation, ...(key !== undefined ? { key } : {}), ...(value !== undefined ? { value } : {}) };
105
+ if (mutation(operation)) {
106
+ const next = new Map(mirror[area]);
107
+ apply(next, item);
108
+ if (next.size > limits.keys || JSON.stringify([...next]).length * 2 > limits.bytes)
109
+ throw new DOMException('Application storage quota exceeded.', 'QuotaExceededError');
110
+ }
111
+ const result = new Promise((resolve, reject) => {
112
+ const timer = setTimeout(() => finish(item.id, undefined, undefined, new DOMException('Application storage acknowledgement timed out.', 'TimeoutError')), limits.timeoutMs);
113
+ pending.set(item.id, { request: item, resolve, reject, timer });
114
+ try {
115
+ port.postMessage(item);
116
+ }
117
+ catch (error) {
118
+ finish(item.id, undefined, undefined, error);
119
+ }
120
+ });
121
+ reconcile(area);
122
+ return result;
123
+ };
124
+ const asyncArea = (area) => Object.freeze({
125
+ async getItem(key) { return await request(area, 'getItem', string(key)); },
126
+ async setItem(key, value) { await request(area, 'setItem', string(key), string(value)); },
127
+ async removeItem(key) { await request(area, 'removeItem', string(key)); },
128
+ async clear() { await request(area, 'clear'); },
129
+ async keys() { return await request(area, 'keys'); },
130
+ async flush() {
131
+ await request(area, 'flush');
132
+ const error = writeErrors[area];
133
+ delete writeErrors[area];
134
+ if (error)
135
+ throw error;
136
+ },
137
+ });
138
+ const facade = (area) => {
139
+ const available = () => { if (errors[area])
140
+ throw errors[area]; };
141
+ const write = (operation, key, value) => {
142
+ available();
143
+ void request(area, operation, key, value).catch(error => report(error, area));
144
+ };
145
+ const methods = {
146
+ get length() { available(); return mirror[area].size; },
147
+ key(index) { available(); return [...mirror[area].keys()][Number(index) >>> 0] ?? null; },
148
+ getItem(key) { available(); return mirror[area].get(string(key)) ?? null; },
149
+ setItem(key, value) { write('setItem', string(key), string(value)); },
150
+ removeItem(key) { write('removeItem', string(key)); },
151
+ clear() { write('clear'); },
152
+ };
153
+ return new Proxy(Object.create(methods), {
154
+ get(target, key, receiver) { return Reflect.has(target, key) ? Reflect.get(target, key, receiver) : typeof key === 'string' ? methods.getItem(key) ?? undefined : undefined; },
155
+ set(_target, key, value) { methods.setItem(key, value); return true; },
156
+ deleteProperty(_target, key) { methods.removeItem(key); return true; },
157
+ ownKeys() { available(); return [...mirror[area].keys()]; },
158
+ has(target, key) { available(); return Reflect.has(target, key) || typeof key === 'string' && mirror[area].has(key); },
159
+ getOwnPropertyDescriptor(_target, key) { available(); return typeof key === 'string' && mirror[area].has(key) ? { configurable: true, enumerable: true, writable: true, value: mirror[area].get(key) } : undefined; },
160
+ defineProperty(_target, key, descriptor) { if (!('value' in descriptor) || descriptor.get || descriptor.set)
161
+ return false; methods.setItem(key, descriptor.value); return true; },
162
+ preventExtensions() { return false; },
163
+ });
164
+ };
165
+ Object.defineProperties(window, {
166
+ appStorage: { value: Object.freeze({ ...asyncArea('local'), session: asyncArea('session') }) },
167
+ localStorage: { value: facade('local') },
168
+ sessionStorage: { value: facade('session') },
169
+ });
170
+ // Parse at the original URL, after hydration, so ordinary resource URLs and script order survive.
171
+ // MessagePort listeners remain attached when document.open clears Window/Document listeners.
172
+ quickAppNetworkInstall();
173
+ document.open();
174
+ document.write(html);
175
+ document.close();
176
+ }).catch(error => {
177
+ const message = document.createElement('p');
178
+ message.setAttribute('role', 'alert');
179
+ message.textContent = error instanceof Error ? error.message : 'Application storage initialization failed.';
180
+ document.body.replaceChildren(message);
181
+ });
182
+ }
183
+ export function quickAppStorageBootstrap(token) {
184
+ if (!/^[a-f0-9-]{36}$/u.test(token))
185
+ throw new Error('Invalid storage launch token.');
186
+ return `<!DOCTYPE html><html><head><meta charset="utf-8"><title>Quick App</title></head><body><script>${quickAppNetworkSource()}
187
+ (${quickAppStorageRuntime.toString()})(${JSON.stringify(token)},${JSON.stringify(QUICK_APP_STORAGE_PROTOCOL)},${JSON.stringify(QUICK_APP_STORAGE_LIMITS)});</script></body></html>`;
188
+ }
189
+ //# sourceMappingURL=quick-app-storage-bootstrap.js.map