@dimina-kit/devtools 0.4.0 → 0.5.0-dev.20260908120530

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 (507) hide show
  1. package/README.md +51 -660
  2. package/dist/main/api.d.ts +2 -1
  3. package/dist/main/app/app.d.ts +41 -12
  4. package/dist/main/app/app.js +299 -514
  5. package/dist/main/app/bootstrap.d.ts +8 -5
  6. package/dist/main/app/bootstrap.js +15 -15
  7. package/dist/main/app/editor-view.d.ts +21 -0
  8. package/dist/main/app/editor-view.js +71 -0
  9. package/dist/main/app/global-mirrors.d.ts +23 -0
  10. package/dist/main/app/global-mirrors.js +37 -0
  11. package/dist/main/app/host-sidebar-default.d.ts +19 -0
  12. package/dist/main/app/host-sidebar-default.js +44 -0
  13. package/dist/main/app/lifecycle.d.ts +12 -1
  14. package/dist/main/app/lifecycle.js +27 -1
  15. package/dist/main/app/menu-setup.d.ts +13 -0
  16. package/dist/main/app/menu-setup.js +49 -0
  17. package/dist/main/app/native-overview.d.ts +1 -1
  18. package/dist/main/app/open-project-ipc.d.ts +13 -0
  19. package/dist/main/app/open-project-ipc.js +21 -0
  20. package/dist/main/app/project-list-surface.d.ts +31 -0
  21. package/dist/main/app/project-list-surface.js +20 -0
  22. package/dist/main/app/project-window.d.ts +36 -0
  23. package/dist/main/app/project-window.js +93 -0
  24. package/dist/main/app/servers.d.ts +17 -0
  25. package/dist/main/app/servers.js +60 -0
  26. package/dist/main/app/ui-extension-targets.d.ts +42 -0
  27. package/dist/main/app/ui-extension-targets.js +101 -0
  28. package/dist/main/app/window-close-reveal.harness.d.ts +34 -0
  29. package/dist/main/app/window-close-reveal.harness.js +65 -0
  30. package/dist/main/app/window-events.d.ts +15 -0
  31. package/dist/main/app/window-events.js +45 -0
  32. package/dist/main/app/window-runtime-services.d.ts +41 -0
  33. package/dist/main/app/window-runtime-services.js +197 -0
  34. package/dist/main/app/workbench-modules.d.ts +24 -0
  35. package/dist/main/app/workbench-modules.js +51 -0
  36. package/dist/main/app/workbench-window.d.ts +85 -0
  37. package/dist/main/app/workbench-window.js +310 -0
  38. package/dist/main/index.bundle.js +11712 -9986
  39. package/dist/main/index.js +49 -1
  40. package/dist/main/ipc/app-lifecycle.d.ts +1 -31
  41. package/dist/main/ipc/app-lifecycle.js +1 -53
  42. package/dist/main/ipc/app.d.ts +4 -1
  43. package/dist/main/ipc/app.js +4 -3
  44. package/dist/main/ipc/bridge-router.d.ts +19 -116
  45. package/dist/main/ipc/bridge-router.js +28 -2128
  46. package/dist/main/ipc/device-picker.d.ts +16 -0
  47. package/dist/main/ipc/device-picker.js +27 -0
  48. package/dist/main/ipc/index.d.ts +5 -0
  49. package/dist/main/ipc/index.js +5 -0
  50. package/dist/main/ipc/internal-devtools.d.ts +16 -0
  51. package/dist/main/ipc/internal-devtools.js +10 -0
  52. package/dist/main/ipc/page-scroll.d.ts +1 -13
  53. package/dist/main/ipc/page-scroll.js +1 -16
  54. package/dist/main/ipc/popover.d.ts +4 -1
  55. package/dist/main/ipc/popover.js +26 -19
  56. package/dist/main/ipc/project-create.d.ts +16 -0
  57. package/dist/main/ipc/project-create.js +27 -0
  58. package/dist/main/ipc/project-fs.d.ts +38 -3
  59. package/dist/main/ipc/project-fs.js +53 -22
  60. package/dist/main/ipc/projects.d.ts +3 -3
  61. package/dist/main/ipc/projects.js +47 -11
  62. package/dist/main/ipc/session-listener-bag.d.ts +1 -40
  63. package/dist/main/ipc/session-listener-bag.js +1 -39
  64. package/dist/main/ipc/session.d.ts +4 -1
  65. package/dist/main/ipc/session.js +26 -26
  66. package/dist/main/ipc/settings.d.ts +4 -1
  67. package/dist/main/ipc/settings.js +17 -19
  68. package/dist/main/ipc/simulator-module.d.ts +9 -3
  69. package/dist/main/ipc/simulator-module.js +13 -10
  70. package/dist/main/ipc/simulator.d.ts +4 -1
  71. package/dist/main/ipc/simulator.js +12 -18
  72. package/dist/main/ipc/tooltip.d.ts +14 -0
  73. package/dist/main/ipc/tooltip.js +29 -0
  74. package/dist/main/ipc/views.d.ts +19 -2
  75. package/dist/main/ipc/views.js +76 -8
  76. package/dist/main/runtime/devtools-backend-before-quit.harness.d.ts +43 -0
  77. package/dist/main/runtime/devtools-backend-before-quit.harness.js +87 -0
  78. package/dist/main/runtime/devtools-backend.js +60 -4
  79. package/dist/main/runtime/devtools-runtime-mock.harness.d.ts +21 -0
  80. package/dist/main/runtime/devtools-runtime-mock.harness.js +313 -0
  81. package/dist/main/runtime/miniapp-runtime.d.ts +91 -22
  82. package/dist/main/services/app-services.d.ts +62 -0
  83. package/dist/main/services/app-services.js +64 -0
  84. package/dist/main/services/automation/connection-target.d.ts +36 -0
  85. package/dist/main/services/automation/connection-target.js +29 -0
  86. package/dist/main/services/automation/console-bridge.d.ts +28 -0
  87. package/dist/main/services/automation/console-bridge.js +91 -0
  88. package/dist/main/services/automation/handlers/app.js +4 -4
  89. package/dist/main/services/automation/handlers/element.js +55 -21
  90. package/dist/main/services/automation/index.d.ts +12 -1
  91. package/dist/main/services/automation/index.js +54 -133
  92. package/dist/main/services/cdp-session/index.d.ts +87 -0
  93. package/dist/main/services/cdp-session/index.js +173 -0
  94. package/dist/main/services/compile-standby.js +4 -0
  95. package/dist/main/services/console-forward/cdp-inject.d.ts +18 -0
  96. package/dist/main/services/console-forward/cdp-inject.js +30 -0
  97. package/dist/main/services/console-forward/global-console-mirror.d.ts +33 -0
  98. package/dist/main/services/console-forward/global-console-mirror.js +71 -0
  99. package/dist/main/services/console-forward/global-diagnostics-mirror.d.ts +33 -0
  100. package/dist/main/services/console-forward/global-diagnostics-mirror.js +73 -0
  101. package/dist/main/services/console-forward/index.d.ts +1 -46
  102. package/dist/main/services/console-forward/index.js +1 -185
  103. package/dist/main/services/console-forward/internal-log.d.ts +2 -0
  104. package/dist/main/services/console-forward/internal-log.js +2 -0
  105. package/dist/main/services/console-forward/open-gated-relay.d.ts +67 -0
  106. package/dist/main/services/console-forward/open-gated-relay.js +55 -0
  107. package/dist/main/services/default-adapter.js +1 -1
  108. package/dist/main/services/diagnostics/index.d.ts +1 -48
  109. package/dist/main/services/diagnostics/index.js +1 -60
  110. package/dist/main/services/dimina-resource-server.d.ts +1 -6
  111. package/dist/main/services/dimina-resource-server.js +1 -98
  112. package/dist/main/services/elements-forward/index.d.ts +132 -15
  113. package/dist/main/services/elements-forward/index.js +155 -304
  114. package/dist/main/services/fs-bridge-protocol.d.ts +61 -0
  115. package/dist/main/services/fs-bridge-protocol.js +34 -0
  116. package/dist/main/services/fs-watch-sse.d.ts +40 -0
  117. package/dist/main/services/fs-watch-sse.js +113 -0
  118. package/dist/main/services/http-json.d.ts +9 -0
  119. package/dist/main/services/http-json.js +6 -0
  120. package/dist/main/services/layout/index.d.ts +11 -0
  121. package/dist/main/services/layout/index.js +23 -0
  122. package/dist/main/services/mcp/connection-owner.d.ts +38 -0
  123. package/dist/main/services/mcp/connection-owner.js +79 -0
  124. package/dist/main/services/mcp/index.d.ts +3 -1
  125. package/dist/main/services/mcp/index.js +4 -3
  126. package/dist/main/services/mcp/opened-project.d.ts +88 -0
  127. package/dist/main/services/mcp/opened-project.js +60 -0
  128. package/dist/main/services/mcp/server.d.ts +2 -1
  129. package/dist/main/services/mcp/server.js +29 -4
  130. package/dist/main/services/mcp/target-manager.d.ts +71 -23
  131. package/dist/main/services/mcp/target-manager.js +269 -138
  132. package/dist/main/services/mcp/target-selection.d.ts +47 -0
  133. package/dist/main/services/mcp/target-selection.js +71 -0
  134. package/dist/main/services/mcp/tools/context-tools.js +20 -5
  135. package/dist/main/services/mcp/tools/project-tools.d.ts +72 -0
  136. package/dist/main/services/mcp/tools/project-tools.js +133 -0
  137. package/dist/main/services/module.d.ts +13 -5
  138. package/dist/main/services/network-forward/body-cache.d.ts +72 -0
  139. package/dist/main/services/network-forward/body-cache.js +179 -0
  140. package/dist/main/services/network-forward/frontend-dispatch.d.ts +91 -0
  141. package/dist/main/services/network-forward/frontend-dispatch.js +148 -0
  142. package/dist/main/services/network-forward/global-body-gate.d.ts +46 -0
  143. package/dist/main/services/network-forward/global-body-gate.js +93 -0
  144. package/dist/main/services/network-forward/global-mirror-test-fixtures.d.ts +48 -0
  145. package/dist/main/services/network-forward/global-mirror-test-fixtures.js +96 -0
  146. package/dist/main/services/network-forward/http.d.ts +47 -0
  147. package/dist/main/services/network-forward/http.js +162 -0
  148. package/dist/main/services/network-forward/index.d.ts +135 -15
  149. package/dist/main/services/network-forward/index.js +854 -224
  150. package/dist/main/services/network-forward/request-ids.d.ts +5 -0
  151. package/dist/main/services/network-forward/request-ids.js +5 -0
  152. package/dist/main/services/network-forward/user-facing.d.ts +21 -0
  153. package/dist/main/services/network-forward/user-facing.js +50 -0
  154. package/dist/main/services/network-forward/websocket.d.ts +36 -0
  155. package/dist/main/services/network-forward/websocket.js +120 -0
  156. package/dist/main/services/notifications/renderer-notifier.d.ts +71 -9
  157. package/dist/main/services/notifications/renderer-notifier.js +45 -8
  158. package/dist/main/services/projects/create-project-service.js +19 -5
  159. package/dist/main/services/projects/local-provider.js +8 -4
  160. package/dist/main/services/projects/project-repository.d.ts +59 -7
  161. package/dist/main/services/projects/project-repository.js +285 -51
  162. package/dist/main/services/projects/types.d.ts +44 -34
  163. package/dist/main/services/render-inspect/index.d.ts +12 -2
  164. package/dist/main/services/render-inspect/index.js +21 -102
  165. package/dist/main/services/safe-area/index.d.ts +21 -6
  166. package/dist/main/services/safe-area/index.js +92 -46
  167. package/dist/main/services/service-host-pool/pool.d.ts +1 -196
  168. package/dist/main/services/service-host-pool/pool.js +1 -363
  169. package/dist/main/services/settings/index.d.ts +7 -1
  170. package/dist/main/services/settings/index.js +22 -2
  171. package/dist/main/services/simulator/custom-apis.d.ts +1 -42
  172. package/dist/main/services/simulator/custom-apis.js +1 -46
  173. package/dist/main/services/simulator/referer.d.ts +1 -9
  174. package/dist/main/services/simulator/referer.js +1 -19
  175. package/dist/main/services/simulator/ui-extensions.d.ts +21 -0
  176. package/dist/main/services/simulator/ui-extensions.js +176 -0
  177. package/dist/main/services/simulator-appdata/index.d.ts +6 -0
  178. package/dist/main/services/simulator-appdata/index.js +21 -2
  179. package/dist/main/services/simulator-current-page/index.d.ts +5 -3
  180. package/dist/main/services/simulator-current-page/index.js +8 -1
  181. package/dist/main/services/simulator-storage/index.d.ts +34 -5
  182. package/dist/main/services/simulator-storage/index.js +73 -71
  183. package/dist/main/services/simulator-storage/service-storage-ops.d.ts +1 -39
  184. package/dist/main/services/simulator-storage/service-storage-ops.js +1 -66
  185. package/dist/main/services/simulator-storage/window-scope.d.ts +20 -0
  186. package/dist/main/services/simulator-storage/window-scope.js +20 -0
  187. package/dist/main/services/simulator-temp-files/disk.d.ts +1 -54
  188. package/dist/main/services/simulator-temp-files/disk.js +1 -237
  189. package/dist/main/services/simulator-temp-files/fs-channels.d.ts +1 -68
  190. package/dist/main/services/simulator-temp-files/fs-channels.js +1 -107
  191. package/dist/main/services/simulator-temp-files/index.d.ts +1 -32
  192. package/dist/main/services/simulator-temp-files/index.js +1 -181
  193. package/dist/main/services/simulator-temp-files/request-handler.d.ts +1 -29
  194. package/dist/main/services/simulator-temp-files/request-handler.js +1 -177
  195. package/dist/main/services/simulator-temp-files/resolver.d.ts +1 -21
  196. package/dist/main/services/simulator-temp-files/resolver.js +1 -21
  197. package/dist/main/services/simulator-temp-files/store.d.ts +1 -13
  198. package/dist/main/services/simulator-temp-files/store.js +1 -23
  199. package/dist/main/services/update/github-release-checker.js +22 -3
  200. package/dist/main/services/update/update-manager.d.ts +21 -4
  201. package/dist/main/services/update/update-manager.js +55 -11
  202. package/dist/main/services/views/clear-console-filter.d.ts +44 -0
  203. package/dist/main/services/views/clear-console-filter.js +86 -0
  204. package/dist/main/services/views/console-filter-test-fixtures.d.ts +94 -0
  205. package/dist/main/services/views/console-filter-test-fixtures.js +82 -0
  206. package/dist/main/services/views/console-filter.d.ts +94 -0
  207. package/dist/main/services/views/console-filter.js +190 -0
  208. package/dist/main/services/views/devtools-tabs.d.ts +24 -4
  209. package/dist/main/services/views/devtools-tabs.js +40 -21
  210. package/dist/main/services/views/frontend-bootstrap-gate.d.ts +59 -0
  211. package/dist/main/services/views/frontend-bootstrap-gate.js +117 -0
  212. package/dist/main/services/views/host-dialog-port-channel.d.ts +18 -0
  213. package/dist/main/services/views/host-dialog-port-channel.js +15 -0
  214. package/dist/main/services/views/host-dialog-session-runtime.d.ts +10 -0
  215. package/dist/main/services/views/host-dialog-session-runtime.js +17 -0
  216. package/dist/main/services/views/host-dialog-view.d.ts +95 -0
  217. package/dist/main/services/views/host-dialog-view.js +147 -0
  218. package/dist/main/services/views/host-sidebar-port-channel.d.ts +18 -0
  219. package/dist/main/services/views/host-sidebar-port-channel.js +15 -0
  220. package/dist/main/services/views/host-sidebar-session-runtime.d.ts +10 -0
  221. package/dist/main/services/views/host-sidebar-session-runtime.js +17 -0
  222. package/dist/main/services/views/host-sidebar-view.d.ts +59 -0
  223. package/dist/main/services/views/host-sidebar-view.js +44 -0
  224. package/dist/main/services/views/host-slot-port-channel.d.ts +124 -0
  225. package/dist/main/services/views/host-slot-port-channel.js +289 -0
  226. package/dist/main/services/views/host-slot-session-runtime.d.ts +40 -0
  227. package/dist/main/services/views/host-slot-session-runtime.js +50 -0
  228. package/dist/main/services/views/host-slot-view.d.ts +109 -0
  229. package/dist/main/services/views/host-slot-view.js +147 -0
  230. package/dist/main/services/views/host-toolbar-port-channel.d.ts +6 -91
  231. package/dist/main/services/views/host-toolbar-port-channel.js +10 -243
  232. package/dist/main/services/views/host-toolbar-session-runtime.d.ts +5 -30
  233. package/dist/main/services/views/host-toolbar-session-runtime.js +9 -47
  234. package/dist/main/services/views/host-toolbar-view.d.ts +34 -7
  235. package/dist/main/services/views/host-toolbar-view.js +30 -237
  236. package/dist/main/services/views/managed-web-contents-view.d.ts +48 -0
  237. package/dist/main/services/views/managed-web-contents-view.js +143 -0
  238. package/dist/main/services/views/miniapp-partition.d.ts +1 -89
  239. package/dist/main/services/views/miniapp-partition.js +1 -158
  240. package/dist/main/services/views/native-simulator-devtools-host.js +206 -68
  241. package/dist/main/services/views/native-simulator-view.d.ts +6 -0
  242. package/dist/main/services/views/native-simulator-view.js +47 -40
  243. package/dist/main/services/views/native-view-tree.d.ts +25 -0
  244. package/dist/main/services/views/native-view-tree.js +69 -0
  245. package/dist/main/services/views/overlay-panels-view.d.ts +63 -4
  246. package/dist/main/services/views/overlay-panels-view.js +257 -108
  247. package/dist/main/services/views/placement-reconciler.d.ts +18 -18
  248. package/dist/main/services/views/placement-reconciler.js +91 -29
  249. package/dist/main/services/views/placement-test-driver.d.ts +27 -0
  250. package/dist/main/services/views/placement-test-driver.js +29 -0
  251. package/dist/main/services/views/refresh-styles.d.ts +10 -0
  252. package/dist/main/services/views/refresh-styles.js +57 -0
  253. package/dist/main/services/views/simulator-session-policy.d.ts +1 -27
  254. package/dist/main/services/views/simulator-session-policy.js +1 -98
  255. package/dist/main/services/views/view-manager-devtools-host-test-fixtures.d.ts +76 -0
  256. package/dist/main/services/views/view-manager-devtools-host-test-fixtures.js +184 -0
  257. package/dist/main/services/views/view-manager.d.ts +69 -88
  258. package/dist/main/services/views/view-manager.js +62 -7
  259. package/dist/main/services/views/workbench-view.d.ts +2 -0
  260. package/dist/main/services/views/workbench-view.js +104 -17
  261. package/dist/main/services/window-contexts/context-router.d.ts +36 -0
  262. package/dist/main/services/window-contexts/context-router.js +55 -0
  263. package/dist/main/services/workbench-coi-host.d.ts +52 -0
  264. package/dist/main/services/workbench-coi-host.js +227 -0
  265. package/dist/main/services/workbench-coi-server.d.ts +11 -0
  266. package/dist/main/services/workbench-coi-server.js +126 -126
  267. package/dist/main/services/workbench-coi-shutdown.d.ts +40 -0
  268. package/dist/main/services/workbench-coi-shutdown.js +69 -0
  269. package/dist/main/services/workbench-coi-static.d.ts +23 -0
  270. package/dist/main/services/workbench-coi-static.js +87 -0
  271. package/dist/main/services/workbench-context.d.ts +88 -8
  272. package/dist/main/services/workbench-context.js +54 -6
  273. package/dist/main/services/workspace/compile-log-buffer.d.ts +40 -0
  274. package/dist/main/services/workspace/compile-log-buffer.js +41 -0
  275. package/dist/main/services/workspace/compile-mode-adapter.d.ts +18 -0
  276. package/dist/main/services/workspace/compile-mode-adapter.js +57 -0
  277. package/dist/main/services/workspace/compile-mode-store.d.ts +25 -0
  278. package/dist/main/services/workspace/compile-mode-store.js +71 -0
  279. package/dist/main/services/workspace/open-project-guards.d.ts +16 -0
  280. package/dist/main/services/workspace/open-project-guards.js +42 -0
  281. package/dist/main/services/workspace/rebuild-status.d.ts +37 -0
  282. package/dist/main/services/workspace/rebuild-status.js +36 -0
  283. package/dist/main/services/workspace/session-status-store.d.ts +47 -0
  284. package/dist/main/services/workspace/session-status-store.js +73 -0
  285. package/dist/main/services/workspace/status-tap.d.ts +20 -0
  286. package/dist/main/services/workspace/status-tap.js +32 -0
  287. package/dist/main/services/workspace/workspace-compile-modes.d.ts +59 -0
  288. package/dist/main/services/workspace/workspace-compile-modes.js +93 -0
  289. package/dist/main/services/workspace/workspace-lifecycle-race.testutil.d.ts +22 -0
  290. package/dist/main/services/workspace/workspace-lifecycle-race.testutil.js +62 -0
  291. package/dist/main/services/workspace/workspace-referer.d.ts +17 -0
  292. package/dist/main/services/workspace/workspace-referer.js +26 -0
  293. package/dist/main/services/workspace/workspace-service.d.ts +7 -5
  294. package/dist/main/services/workspace/workspace-service.js +96 -135
  295. package/dist/main/services/workspace/workspace-thumbnails.d.ts +22 -0
  296. package/dist/main/services/workspace/workspace-thumbnails.js +67 -0
  297. package/dist/main/utils/ipc-context-source.d.ts +40 -0
  298. package/dist/main/utils/ipc-context-source.js +23 -0
  299. package/dist/main/utils/ipc-registry.d.ts +46 -21
  300. package/dist/main/utils/ipc-registry.js +166 -76
  301. package/dist/main/utils/paths.d.ts +18 -0
  302. package/dist/main/utils/paths.js +18 -0
  303. package/dist/main/utils/sender-policy.d.ts +10 -1
  304. package/dist/main/utils/sender-policy.js +42 -4
  305. package/dist/main/utils/theme.d.ts +18 -8
  306. package/dist/main/utils/theme.js +19 -9
  307. package/dist/main/windows/internal-devtools-window/index.d.ts +66 -0
  308. package/dist/main/windows/internal-devtools-window/index.js +160 -0
  309. package/dist/main/windows/main-window/create.d.ts +16 -0
  310. package/dist/main/windows/main-window/create.js +19 -11
  311. package/dist/main/windows/main-window/events.d.ts +1 -1
  312. package/dist/main/windows/main-window/events.js +26 -13
  313. package/dist/main/windows/main-window/index.d.ts +1 -1
  314. package/dist/main/windows/main-window/index.js +1 -1
  315. package/dist/main/windows/service-host-window/create.d.ts +1 -92
  316. package/dist/main/windows/service-host-window/create.js +1 -154
  317. package/dist/native-host/common/common.js +173 -53
  318. package/dist/native-host/container/pageFrame.css +1 -1
  319. package/dist/native-host/render/render.js +8278 -3659
  320. package/dist/native-host/service/service.js +2 -2
  321. package/dist/preload/index.d.ts +2 -0
  322. package/dist/preload/index.js +1 -0
  323. package/dist/preload/instrumentation/app-data.d.ts +2 -2
  324. package/dist/preload/instrumentation/app-data.js +1 -1
  325. package/dist/preload/instrumentation/wxml.js +1 -1
  326. package/dist/preload/runtime/bridge.d.ts +3 -3
  327. package/dist/preload/runtime/bridge.js +2 -2
  328. package/dist/preload/runtime/clipboard.d.ts +6 -0
  329. package/dist/preload/runtime/clipboard.js +12 -0
  330. package/dist/preload/runtime/host-dialog-advertiser.d.ts +22 -0
  331. package/dist/preload/runtime/host-dialog-advertiser.js +37 -0
  332. package/dist/preload/runtime/host-dialog-port.d.ts +44 -0
  333. package/dist/preload/runtime/host-dialog-port.js +53 -0
  334. package/dist/preload/runtime/host-dialog-runtime.d.ts +28 -0
  335. package/dist/preload/runtime/host-dialog-runtime.js +36 -0
  336. package/dist/preload/runtime/host-sidebar-advertiser.d.ts +19 -0
  337. package/dist/preload/runtime/host-sidebar-advertiser.js +35 -0
  338. package/dist/preload/runtime/host-sidebar-port.d.ts +44 -0
  339. package/dist/preload/runtime/host-sidebar-port.js +53 -0
  340. package/dist/preload/runtime/host-sidebar-runtime.d.ts +28 -0
  341. package/dist/preload/runtime/host-sidebar-runtime.js +36 -0
  342. package/dist/preload/runtime/host-slot-port-bridge.d.ts +18 -0
  343. package/dist/preload/runtime/host-slot-port-bridge.js +112 -0
  344. package/dist/preload/runtime/host-toolbar-advertiser.d.ts +5 -13
  345. package/dist/preload/runtime/host-toolbar-advertiser.js +18 -38
  346. package/dist/preload/runtime/host-toolbar-port.d.ts +9 -0
  347. package/dist/preload/runtime/host-toolbar-port.js +11 -95
  348. package/dist/preload/runtime/native-host.d.ts +14 -0
  349. package/dist/preload/runtime/native-host.js +5 -8
  350. package/dist/preload/runtime/node-bindings.d.ts +18 -0
  351. package/dist/preload/runtime/node-bindings.js +44 -0
  352. package/dist/preload/runtime/temp-files.js +9 -2
  353. package/dist/preload/runtime/wait-for-slot-root.d.ts +23 -0
  354. package/dist/preload/runtime/wait-for-slot-root.js +80 -0
  355. package/dist/preload/shared/api-compat.js +63 -41
  356. package/dist/preload/windows/host-dialog-runtime.cjs +360 -0
  357. package/dist/preload/windows/host-dialog-runtime.cjs.map +7 -0
  358. package/dist/preload/windows/host-dialog-runtime.d.ts +2 -0
  359. package/dist/preload/windows/host-dialog-runtime.js +13 -0
  360. package/dist/preload/windows/host-sidebar-runtime.cjs +361 -0
  361. package/dist/preload/windows/host-sidebar-runtime.cjs.map +7 -0
  362. package/dist/preload/windows/host-sidebar-runtime.d.ts +2 -0
  363. package/dist/preload/windows/host-sidebar-runtime.js +13 -0
  364. package/dist/preload/windows/host-toolbar-runtime.cjs +142 -52
  365. package/dist/preload/windows/host-toolbar-runtime.cjs.map +3 -3
  366. package/dist/preload/windows/main.cjs +4922 -1246
  367. package/dist/preload/windows/main.cjs.map +4 -4
  368. package/dist/preload/windows/main.css +428 -0
  369. package/dist/preload/windows/main.css.map +7 -0
  370. package/dist/preload/windows/simulator.cjs +376 -322
  371. package/dist/preload/windows/simulator.cjs.map +4 -4
  372. package/dist/preload/windows/simulator.js +376 -322
  373. package/dist/render-host/pageFrame.html +4 -4
  374. package/dist/render-host/preload.cjs +30 -0
  375. package/dist/render-host/render-inspect.js +184 -115
  376. package/dist/renderer/assets/button-CB2MWjHY.js +2 -0
  377. package/dist/renderer/assets/constants-CkoGPQTS.js +2 -0
  378. package/dist/renderer/assets/constants-zQZ2-y21.js +2 -0
  379. package/dist/renderer/assets/createLucideIcon-cZ9FlZZw.js +2 -0
  380. package/dist/renderer/assets/devicePicker-H2eIO4e1.js +2 -0
  381. package/dist/renderer/assets/dialog-pHzEA8Vx.js +46 -0
  382. package/dist/renderer/assets/dist-B5HADirS.js +2 -0
  383. package/dist/renderer/assets/dist-DIFlRMKe.js +2 -0
  384. package/dist/renderer/assets/hostSidebarDefault-DRWh6OCt.js +2 -0
  385. package/dist/renderer/assets/index-CEL_XFge.js +2 -0
  386. package/dist/renderer/assets/input-CAObw95L.js +2 -0
  387. package/dist/renderer/assets/ipc-channels-overlays-gIPUFnqc.js +2 -0
  388. package/dist/renderer/assets/jsx-runtime-DICEQH_0.css +1 -0
  389. package/dist/renderer/assets/jsx-runtime-DIw5wnYl.js +9 -0
  390. package/dist/renderer/assets/plus-BQ9u5EbL.js +2 -0
  391. package/dist/renderer/assets/popover-Cw7G2Ctp.js +2 -0
  392. package/dist/renderer/assets/presets-DMZOb9ay.js +2 -0
  393. package/dist/renderer/assets/project-api-YTOr_Yvo.js +2 -0
  394. package/dist/renderer/assets/projectCreateDialog-BmLqiYxn.js +2 -0
  395. package/dist/renderer/assets/search-BMvuYF48.js +2 -0
  396. package/dist/renderer/assets/select-nFP95TxM.js +2 -0
  397. package/dist/renderer/assets/settings-CnpVfSWt.js +2 -0
  398. package/dist/renderer/assets/settings-api-Ccsf-Nsj.js +2 -0
  399. package/dist/renderer/assets/settings-tab-bar-CAzrv32m.js +2 -0
  400. package/dist/renderer/assets/smartphone-Bb2GdIKy.js +2 -0
  401. package/dist/renderer/assets/tabs-CPKN3Mmq.js +2 -0
  402. package/dist/renderer/assets/tooltip-D6AxXRk5.js +2 -0
  403. package/dist/renderer/assets/types-Bh0hA7El.js +2 -0
  404. package/dist/renderer/assets/updateDialog-CwndJ0Bl.js +2 -0
  405. package/dist/renderer/assets/utils-sEB5OZEQ.js +2 -0
  406. package/dist/renderer/assets/view-api-B-2zPBR5.js +2 -0
  407. package/dist/renderer/assets/view-ids-BfaDVV5P.js +2 -0
  408. package/dist/renderer/assets/workbench-C0Jkdlps.js +5 -0
  409. package/dist/renderer/assets/workbenchSettings-YD0Ctbm_.js +8 -0
  410. package/dist/renderer/entries/device-picker/index.html +28 -0
  411. package/dist/renderer/entries/host-sidebar-default/index.html +22 -0
  412. package/dist/renderer/entries/main/index.html +16 -7
  413. package/dist/renderer/entries/popover/index.html +16 -6
  414. package/dist/renderer/entries/project-create-dialog/index.html +27 -0
  415. package/dist/renderer/entries/settings/index.html +10 -5
  416. package/dist/renderer/entries/tooltip/index.html +21 -0
  417. package/dist/renderer/entries/update-dialog/index.html +25 -0
  418. package/dist/renderer/entries/workbench/index.html +49 -0
  419. package/dist/renderer/entries/workbench-settings/index.html +12 -5
  420. package/dist/service-host/appdata-set-data.cjs +39 -0
  421. package/dist/service-host/host-env-update.cjs +23 -0
  422. package/dist/service-host/preload.cjs +54 -48
  423. package/dist/service-host/service-message-queue.cjs +71 -0
  424. package/dist/service-host/sync-impls/menu-button-geometry.js +16 -5
  425. package/dist/service-host/sync-impls/menu-button.js +5 -3
  426. package/dist/service-host/sync-impls/system-info.js +31 -9
  427. package/dist/shared/bridge-channels.d.ts +1 -416
  428. package/dist/shared/bridge-channels.js +1 -89
  429. package/dist/shared/compile-mode-state.d.ts +73 -0
  430. package/dist/shared/compile-mode-state.js +100 -0
  431. package/dist/shared/compile-modes.d.ts +152 -0
  432. package/dist/shared/compile-modes.js +237 -0
  433. package/dist/shared/constants.d.ts +22 -0
  434. package/dist/shared/constants.js +22 -0
  435. package/dist/shared/dmb-resource-url.d.ts +2 -0
  436. package/dist/shared/dmb-resource-url.js +2 -0
  437. package/dist/shared/ipc-channels-overlays.d.ts +162 -0
  438. package/dist/shared/ipc-channels-overlays.js +203 -0
  439. package/dist/shared/ipc-channels.d.ts +24 -154
  440. package/dist/shared/ipc-channels.js +48 -96
  441. package/dist/shared/ipc-schemas.d.ts +143 -54
  442. package/dist/shared/ipc-schemas.js +137 -45
  443. package/dist/shared/node-bindings.d.ts +2 -0
  444. package/dist/shared/node-bindings.js +2 -0
  445. package/dist/shared/project-window-types.d.ts +42 -0
  446. package/dist/shared/project-window-types.js +2 -0
  447. package/dist/shared/simulator-route.d.ts +8 -0
  448. package/dist/shared/simulator-route.js +15 -0
  449. package/dist/shared/simulator-ui.d.ts +61 -0
  450. package/dist/shared/simulator-ui.js +12 -0
  451. package/dist/shared/types.d.ts +126 -41
  452. package/dist/shared/view-ids.d.ts +10 -0
  453. package/dist/shared/view-ids.js +23 -0
  454. package/dist/simulator/assets/bridge-channels-B3JAmRfl.js +2 -0
  455. package/dist/simulator/assets/device-shell-ATEhHV2_.css +1 -0
  456. package/dist/simulator/assets/device-shell-DucLepkm.js +431 -0
  457. package/dist/simulator/assets/simulator-B4rbcOVt.js +10 -0
  458. package/dist/simulator/assets/simulator-mini-app-DFo7fhi5.js +2 -0
  459. package/dist/simulator/assets/simulator-ui-BupATgKo.css +1 -0
  460. package/dist/simulator/assets/simulator-ui-i3GCc7YJ.js +2 -0
  461. package/dist/simulator/simulator.html +4 -3
  462. package/dist/simulator/temp-files.d.ts +35 -0
  463. package/dist/simulator/temp-files.js +121 -0
  464. package/dist/simulator/types.d.ts +50 -0
  465. package/dist/simulator/types.js +2 -0
  466. package/dist/vscode-workbench/assets/__vite-browser-external-JIkWewFf.js +1 -0
  467. package/dist/vscode-workbench/assets/{dist-TpGpmMGi.js → dist-CXG-u1VB.js} +3 -3
  468. package/dist/vscode-workbench/assets/fs-core-worker-urls-DZ1nod84.js +1 -0
  469. package/dist/vscode-workbench/assets/fs-core.worker-Bnmpp6fo.js +1 -0
  470. package/dist/vscode-workbench/assets/fs-query.worker-cZ-7Fjch.js +2 -0
  471. package/dist/vscode-workbench/assets/{iconv-lite-umd-C9tiCAJa.js → iconv-lite-umd-Dxx9Qyb4.js} +1 -1
  472. package/dist/vscode-workbench/assets/{index-DJ1HyMZ7.js → index-6VJMsaWj.js} +475 -475
  473. package/dist/vscode-workbench/assets/{jschardet-DE1jV513.js → jschardet-Ba3D16vt.js} +1 -1
  474. package/dist/vscode-workbench/index.html +21 -1
  475. package/package.json +23 -13
  476. package/dist/main/services/views/destroy-child-view.d.ts +0 -9
  477. package/dist/main/services/views/destroy-child-view.js +0 -23
  478. package/dist/preload/instrumentation/wxml-extract.d.ts +0 -11
  479. package/dist/preload/instrumentation/wxml-extract.js +0 -382
  480. package/dist/preload/shared/sid-registry.d.ts +0 -11
  481. package/dist/preload/shared/sid-registry.js +0 -38
  482. package/dist/renderer/assets/constants-EAMiwL9_.js +0 -2
  483. package/dist/renderer/assets/index-BMqyDx71.js +0 -49
  484. package/dist/renderer/assets/input-CDAEwpBO.js +0 -2
  485. package/dist/renderer/assets/ipc-transport-B7eFOR68.css +0 -1
  486. package/dist/renderer/assets/ipc-transport-_G1k5V1p.js +0 -9
  487. package/dist/renderer/assets/popover-DEdjK14m.js +0 -2
  488. package/dist/renderer/assets/select-DpKPCh3y.js +0 -2
  489. package/dist/renderer/assets/settings-M5q2elUr.js +0 -2
  490. package/dist/renderer/assets/settings-api-CDlZoHiO.js +0 -2
  491. package/dist/renderer/assets/workbenchSettings-CT_H1WhV.js +0 -8
  492. package/dist/shared/appdata-accumulator.d.ts +0 -95
  493. package/dist/shared/appdata-accumulator.js +0 -218
  494. package/dist/shared/request-core.d.ts +0 -84
  495. package/dist/shared/request-core.js +0 -168
  496. package/dist/shared/simulator-api-metadata.d.ts +0 -26
  497. package/dist/shared/simulator-api-metadata.js +0 -59
  498. package/dist/shared/vpath.d.ts +0 -42
  499. package/dist/shared/vpath.js +0 -105
  500. package/dist/simulator/assets/bridge-channels-zhsumfky.js +0 -2
  501. package/dist/simulator/assets/device-shell-C-wcFq3Z.js +0 -2
  502. package/dist/simulator/assets/device-shell-CS1rqAQz.css +0 -1
  503. package/dist/simulator/assets/jsx-runtime-BDTY6fEq.js +0 -2
  504. package/dist/simulator/assets/simulator-DU3-fS3v.js +0 -10
  505. package/dist/simulator/assets/simulator-mini-app-DzfMfnVM.js +0 -2
  506. package/dist/simulator/device-shell/menu-button-geometry.js +0 -8
  507. package/dist/vscode-workbench/assets/__vite-browser-external-CXi6Kz9W.js +0 -1
@@ -0,0 +1,27 @@
1
+ <!DOCTYPE html>
2
+ <html lang="zh-CN">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <!-- See main/index.html for CSP rationale. -->
6
+ <meta http-equiv="Content-Security-Policy" content="default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval'; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: http: https:; font-src 'self' data:; media-src 'self' blob: http: https:; connect-src 'self' http: https: ws: wss:;" />
7
+ <title>Create Project</title>
8
+ <style>
9
+ html, body { margin: 0; padding: 0; width: 100%; height: 100%; overflow: hidden; background: transparent !important; }
10
+ </style>
11
+ <script type="module" crossorigin src="../../assets/projectCreateDialog-BmLqiYxn.js"></script>
12
+ <link rel="modulepreload" crossorigin href="../../assets/jsx-runtime-DIw5wnYl.js">
13
+ <link rel="modulepreload" crossorigin href="../../assets/utils-sEB5OZEQ.js">
14
+ <link rel="modulepreload" crossorigin href="../../assets/button-CB2MWjHY.js">
15
+ <link rel="modulepreload" crossorigin href="../../assets/dist-DIFlRMKe.js">
16
+ <link rel="modulepreload" crossorigin href="../../assets/createLucideIcon-cZ9FlZZw.js">
17
+ <link rel="modulepreload" crossorigin href="../../assets/dialog-pHzEA8Vx.js">
18
+ <link rel="modulepreload" crossorigin href="../../assets/ipc-channels-overlays-gIPUFnqc.js">
19
+ <link rel="modulepreload" crossorigin href="../../assets/project-api-YTOr_Yvo.js">
20
+ <link rel="modulepreload" crossorigin href="../../assets/view-api-B-2zPBR5.js">
21
+ <link rel="modulepreload" crossorigin href="../../assets/input-CAObw95L.js">
22
+ <link rel="stylesheet" crossorigin href="../../assets/jsx-runtime-DICEQH_0.css">
23
+ </head>
24
+ <body>
25
+ <div id="root"></div>
26
+ </body>
27
+ </html>
@@ -11,11 +11,16 @@
11
11
  closes the overlay — mirrors the popover entry. */
12
12
  html, body { margin: 0; padding: 0; width: 100%; height: 100%; overflow: hidden; background: transparent !important; }
13
13
  </style>
14
- <script type="module" crossorigin src="../../assets/settings-M5q2elUr.js"></script>
15
- <link rel="modulepreload" crossorigin href="../../assets/ipc-transport-_G1k5V1p.js">
16
- <link rel="modulepreload" crossorigin href="../../assets/input-CDAEwpBO.js">
17
- <link rel="modulepreload" crossorigin href="../../assets/settings-api-CDlZoHiO.js">
18
- <link rel="stylesheet" crossorigin href="../../assets/ipc-transport-B7eFOR68.css">
14
+ <script type="module" crossorigin src="../../assets/settings-CnpVfSWt.js"></script>
15
+ <link rel="modulepreload" crossorigin href="../../assets/jsx-runtime-DIw5wnYl.js">
16
+ <link rel="modulepreload" crossorigin href="../../assets/dist-DIFlRMKe.js">
17
+ <link rel="modulepreload" crossorigin href="../../assets/utils-sEB5OZEQ.js">
18
+ <link rel="modulepreload" crossorigin href="../../assets/tabs-CPKN3Mmq.js">
19
+ <link rel="modulepreload" crossorigin href="../../assets/settings-tab-bar-CAzrv32m.js">
20
+ <link rel="modulepreload" crossorigin href="../../assets/ipc-channels-overlays-gIPUFnqc.js">
21
+ <link rel="modulepreload" crossorigin href="../../assets/settings-api-Ccsf-Nsj.js">
22
+ <link rel="modulepreload" crossorigin href="../../assets/view-api-B-2zPBR5.js">
23
+ <link rel="stylesheet" crossorigin href="../../assets/jsx-runtime-DICEQH_0.css">
19
24
  </head>
20
25
  <body>
21
26
  <div id="root"></div>
@@ -0,0 +1,21 @@
1
+ <!DOCTYPE html>
2
+ <html lang="zh-CN">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <!-- See main/index.html for CSP rationale. -->
6
+ <meta http-equiv="Content-Security-Policy" content="default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval'; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: http: https:; font-src 'self' data:; media-src 'self' blob: http: https:; connect-src 'self' http: https: ws: wss:;" />
7
+ <title>Tooltip</title>
8
+ <style>
9
+ html, body { margin: 0; padding: 0; width: -moz-max-content; width: max-content; height: -moz-max-content; height: max-content; overflow: hidden; background: transparent !important; }
10
+ #root { width: -moz-max-content; width: max-content; height: -moz-max-content; height: max-content; display: block; overflow: visible; }
11
+ </style>
12
+ <script type="module" crossorigin src="../../assets/tooltip-D6AxXRk5.js"></script>
13
+ <link rel="modulepreload" crossorigin href="../../assets/jsx-runtime-DIw5wnYl.js">
14
+ <link rel="modulepreload" crossorigin href="../../assets/ipc-channels-overlays-gIPUFnqc.js">
15
+ <link rel="modulepreload" crossorigin href="../../assets/view-api-B-2zPBR5.js">
16
+ <link rel="stylesheet" crossorigin href="../../assets/jsx-runtime-DICEQH_0.css">
17
+ </head>
18
+ <body>
19
+ <div id="root"></div>
20
+ </body>
21
+ </html>
@@ -0,0 +1,25 @@
1
+ <!DOCTYPE html>
2
+ <html lang="zh-CN">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <!-- See main/index.html for CSP rationale. -->
6
+ <meta http-equiv="Content-Security-Policy" content="default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval'; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: http: https:; font-src 'self' data:; media-src 'self' blob: http: https:; connect-src 'self' http: https: ws: wss:;" />
7
+ <title>Update Available</title>
8
+ <style>
9
+ html, body { margin: 0; padding: 0; width: 100%; height: 100%; overflow: hidden; background: transparent !important; }
10
+ </style>
11
+ <script type="module" crossorigin src="../../assets/updateDialog-CwndJ0Bl.js"></script>
12
+ <link rel="modulepreload" crossorigin href="../../assets/jsx-runtime-DIw5wnYl.js">
13
+ <link rel="modulepreload" crossorigin href="../../assets/utils-sEB5OZEQ.js">
14
+ <link rel="modulepreload" crossorigin href="../../assets/button-CB2MWjHY.js">
15
+ <link rel="modulepreload" crossorigin href="../../assets/dist-DIFlRMKe.js">
16
+ <link rel="modulepreload" crossorigin href="../../assets/createLucideIcon-cZ9FlZZw.js">
17
+ <link rel="modulepreload" crossorigin href="../../assets/dialog-pHzEA8Vx.js">
18
+ <link rel="modulepreload" crossorigin href="../../assets/ipc-channels-overlays-gIPUFnqc.js">
19
+ <link rel="modulepreload" crossorigin href="../../assets/view-api-B-2zPBR5.js">
20
+ <link rel="stylesheet" crossorigin href="../../assets/jsx-runtime-DICEQH_0.css">
21
+ </head>
22
+ <body>
23
+ <div id="root"></div>
24
+ </body>
25
+ </html>
@@ -0,0 +1,49 @@
1
+ <!DOCTYPE html>
2
+ <html lang="zh-CN">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <!--
6
+ CSP: deliberately permissive (B5 phase). Inline JS/CSS + eval are kept for
7
+ dev tooling / nodeIntegration:true; connect-src spans http/ws because
8
+ automation, MCP, and the simulator dev server all open sockets. Tighten in
9
+ C-phase once the preload bridge removes the need for `unsafe-*`.
10
+ -->
11
+ <meta http-equiv="Content-Security-Policy" content="default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval'; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: http: https:; font-src 'self' data:; media-src 'self' blob: http: https:; connect-src 'self' http: https: ws: wss:;" />
12
+ <title>Dimina DevTools</title>
13
+ <style>
14
+ /*
15
+ * The React tree always occupies the full window. Main-process overlays
16
+ * (the simulator's Chromium DevTools WebContentsView, the console, and the
17
+ * workbench editor WebContentsView) are positioned to match measured
18
+ * placeholder rects inside the React tree (see useViewAnchor /
19
+ * createPlacementAnchor in project-runtime.tsx).
20
+ */
21
+ html, body, #root { margin: 0; padding: 0; }
22
+ html, body { width: 100vw; height: 100vh; overflow: hidden; }
23
+ #root {
24
+ position: fixed;
25
+ inset: 0;
26
+ overflow: hidden;
27
+ }
28
+ </style>
29
+ <script type="module" crossorigin src="../../assets/workbench-C0Jkdlps.js"></script>
30
+ <link rel="modulepreload" crossorigin href="../../assets/jsx-runtime-DIw5wnYl.js">
31
+ <link rel="modulepreload" crossorigin href="../../assets/presets-DMZOb9ay.js">
32
+ <link rel="modulepreload" crossorigin href="../../assets/utils-sEB5OZEQ.js">
33
+ <link rel="modulepreload" crossorigin href="../../assets/button-CB2MWjHY.js">
34
+ <link rel="modulepreload" crossorigin href="../../assets/createLucideIcon-cZ9FlZZw.js">
35
+ <link rel="modulepreload" crossorigin href="../../assets/smartphone-Bb2GdIKy.js">
36
+ <link rel="modulepreload" crossorigin href="../../assets/ipc-channels-overlays-gIPUFnqc.js">
37
+ <link rel="modulepreload" crossorigin href="../../assets/view-api-B-2zPBR5.js">
38
+ <link rel="modulepreload" crossorigin href="../../assets/view-ids-BfaDVV5P.js">
39
+ <link rel="modulepreload" crossorigin href="../../assets/project-api-YTOr_Yvo.js">
40
+ <link rel="modulepreload" crossorigin href="../../assets/settings-api-Ccsf-Nsj.js">
41
+ <link rel="modulepreload" crossorigin href="../../assets/constants-CkoGPQTS.js">
42
+ <link rel="modulepreload" crossorigin href="../../assets/select-nFP95TxM.js">
43
+ <link rel="modulepreload" crossorigin href="../../assets/constants-zQZ2-y21.js">
44
+ <link rel="stylesheet" crossorigin href="../../assets/jsx-runtime-DICEQH_0.css">
45
+ </head>
46
+ <body>
47
+ <div id="root"></div>
48
+ </body>
49
+ </html>
@@ -6,11 +6,18 @@
6
6
  <!-- See entries/main/index.html for CSP rationale. -->
7
7
  <meta http-equiv="Content-Security-Policy" content="default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval'; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: http: https:; font-src 'self' data:; media-src 'self' blob: http: https:; connect-src 'self' http: https: ws: wss:;" />
8
8
  <title>开发工具设置</title>
9
- <script type="module" crossorigin src="../../assets/workbenchSettings-CT_H1WhV.js"></script>
10
- <link rel="modulepreload" crossorigin href="../../assets/ipc-transport-_G1k5V1p.js">
11
- <link rel="modulepreload" crossorigin href="../../assets/settings-api-CDlZoHiO.js">
12
- <link rel="modulepreload" crossorigin href="../../assets/constants-EAMiwL9_.js">
13
- <link rel="stylesheet" crossorigin href="../../assets/ipc-transport-B7eFOR68.css">
9
+ <script type="module" crossorigin src="../../assets/workbenchSettings-YD0Ctbm_.js"></script>
10
+ <link rel="modulepreload" crossorigin href="../../assets/jsx-runtime-DIw5wnYl.js">
11
+ <link rel="modulepreload" crossorigin href="../../assets/utils-sEB5OZEQ.js">
12
+ <link rel="modulepreload" crossorigin href="../../assets/button-CB2MWjHY.js">
13
+ <link rel="modulepreload" crossorigin href="../../assets/dist-DIFlRMKe.js">
14
+ <link rel="modulepreload" crossorigin href="../../assets/tabs-CPKN3Mmq.js">
15
+ <link rel="modulepreload" crossorigin href="../../assets/settings-tab-bar-CAzrv32m.js">
16
+ <link rel="modulepreload" crossorigin href="../../assets/ipc-channels-overlays-gIPUFnqc.js">
17
+ <link rel="modulepreload" crossorigin href="../../assets/settings-api-Ccsf-Nsj.js">
18
+ <link rel="modulepreload" crossorigin href="../../assets/input-CAObw95L.js">
19
+ <link rel="modulepreload" crossorigin href="../../assets/constants-CkoGPQTS.js">
20
+ <link rel="stylesheet" crossorigin href="../../assets/jsx-runtime-DICEQH_0.css">
14
21
  </head>
15
22
  <body>
16
23
  <div id="root"></div>
@@ -0,0 +1,39 @@
1
+ // Pure write-back step of the AppData-panel edit path: resolve the page
2
+ // instance owning `bridgeId` in the CURRENT page stack and hand the patch to
3
+ // its real `setData`, so the update flows through the runtime's own pipeline
4
+ // (observers, child-props sync, `ub` publish) and the panel re-renders from
5
+ // the runtime's state — never an optimistic local echo.
6
+ //
7
+ // `getCurrentPages` is injected (the service runtime installs it on
8
+ // `globalThis` during boot; this module stays testable without that global).
9
+ // Returns whether the patch reached a live page; every failure — no runtime
10
+ // yet, unknown bridge, a throwing setData — degrades to `false` and never
11
+ // throws into the preload's IPC listener.
12
+ 'use strict'
13
+
14
+ /**
15
+ * @param {unknown} getCurrentPages
16
+ * @param {string} bridgeId
17
+ * @param {Record<string, unknown>} data
18
+ * @returns {boolean}
19
+ */
20
+ function applyAppDataSetData(getCurrentPages, bridgeId, data) {
21
+ if (typeof getCurrentPages !== 'function') return false
22
+ let pages
23
+ try {
24
+ pages = getCurrentPages()
25
+ } catch (_) {
26
+ return false
27
+ }
28
+ if (!Array.isArray(pages)) return false
29
+ const page = pages.find((p) => p && p.bridgeId === bridgeId)
30
+ if (!page || typeof page.setData !== 'function') return false
31
+ try {
32
+ page.setData(data)
33
+ } catch (_) {
34
+ return false
35
+ }
36
+ return true
37
+ }
38
+
39
+ module.exports = { applyAppDataSetData }
@@ -0,0 +1,23 @@
1
+ /**
2
+ * `hostEnvUpdate` is the ONE message that carries a device change into a
3
+ * running service host (bridge-router's `setDevice` → `applyDeviceToSession`).
4
+ * service.js consumes it for the async `wx.getSystemInfo` path; the sync
5
+ * `wx.getSystemInfoSync()` patch instead reads `__diminaSpawnContext
6
+ * .hostEnvSnapshot` on every call, so the preload merges the same message into
7
+ * that snapshot BEFORE handing it to service.js. Doing it on the same delivery
8
+ * keeps ordering: the `pageResize` that follows in the same batch already sees
9
+ * the new metrics from inside `Page.onResize`.
10
+ *
11
+ * Returns true when the message was a well-formed hostEnvUpdate and the
12
+ * snapshot was replaced; false leaves `ctx` untouched.
13
+ */
14
+ function applyHostEnvUpdate(ctx, msg) {
15
+ if (!ctx || typeof ctx !== 'object') return false
16
+ if (!msg || typeof msg !== 'object' || msg.type !== 'hostEnvUpdate') return false
17
+ const systemInfo = msg.body && msg.body.systemInfo
18
+ if (!systemInfo || typeof systemInfo !== 'object') return false
19
+ ctx.hostEnvSnapshot = { ...(ctx.hostEnvSnapshot || {}), ...systemInfo }
20
+ return true
21
+ }
22
+
23
+ module.exports = { applyHostEnvUpdate }
@@ -4,17 +4,15 @@ const CHANNELS = {
4
4
  SERVICE_INVOKE: 'dmb:service:invoke',
5
5
  SERVICE_PUBLISH: 'dmb:service:publish',
6
6
  TO_SERVICE: 'dmb:to-service',
7
- // main → this window: live-update the host-env snapshot on a device change so
8
- // wx.getSystemInfoSync() reflects the newly-selected device without a
9
- // relaunch. Mirrors ServiceHostChannel.HostEnvUpdate in shared/ipc-channels.ts.
10
- HOST_ENV_UPDATE: 'service-host:host-env:update',
7
+ // main → this window: AppData-panel edit write-back. Mirrors
8
+ // ServiceHostChannel.AppDataSetData in shared/ipc-channels.ts.
9
+ APPDATA_SET_DATA: 'service-host:appdata:set-data',
11
10
  }
12
11
 
13
12
  const params = new URLSearchParams(globalThis.location && globalThis.location.search || '')
14
13
  const bridgeId = params.get('bridgeId')
15
- const pendingMessages = []
16
- let onMessageFn = null
17
- let drainScheduled = false
14
+ const { createDeliveryQueue } = require('./service-message-queue.cjs')
15
+ const { applyHostEnvUpdate } = require('./host-env-update.cjs')
18
16
 
19
17
  if (!bridgeId) {
20
18
  // Warming idle: a pre-warm pool loads this preload against about:blank (no
@@ -60,69 +58,56 @@ globalThis.__diminaApiNamespaces = apiNamespacesRaw
60
58
  ? apiNamespacesRaw.split(',').map((name) => name.trim()).filter(Boolean)
61
59
  : []
62
60
 
63
- // Live host-env updates (native-host device dropdown). The binding above is
64
- // non-configurable, but the inner object's properties are writable merge the
65
- // pushed metrics into `hostEnvSnapshot` in place. `sync-impls/system-info.ts`
66
- // reads `this.hostEnvSnapshot` fresh on every `getSystemInfoSync()`, so the
67
- // next call (and the mini-app code that invokes it) sees the new device.
68
- ipcRenderer.on(CHANNELS.HOST_ENV_UPDATE, (_event, snapshot) => {
69
- if (!snapshot || typeof snapshot !== 'object') return
70
- const ctx = globalThis.__diminaSpawnContext
71
- if (!ctx) return
72
- ctx.hostEnvSnapshot = { ...(ctx.hostEnvSnapshot || {}), ...snapshot }
73
- })
61
+ // Host-registered custom API names (`ElectronRuntime.registerApi('joinIsland', ...)`
62
+ // etc.). service.js's `registerEnumerableApiNames()` installs these as real
63
+ // own-enumerable forwarding functions on `wx`/`dd` its Proxy `get` trap
64
+ // deliberately returns `undefined` for anything not registered this way, so
65
+ // without this the names are silently unusable from mini-program logic.
66
+ const registeredApisRaw = params.get('registeredApis')
67
+ globalThis.__diminaRegisteredApis = registeredApisRaw
68
+ ? registeredApisRaw.split(',').map((name) => name.trim()).filter(Boolean)
69
+ : []
74
70
 
75
71
  function reportError(stage, error) {
76
72
  const message = error && error.stack ? error.stack : String(error)
77
73
  console.error(`[service-host] ${stage}`, error)
78
74
  ipcRenderer.send(CHANNELS.SERVICE_INVOKE, {
79
- bridgeId,
80
75
  msg: {
81
76
  type: 'serviceHostError',
82
77
  target: 'container',
83
- body: { stage, message },
78
+ // The spawn page goes in the body, where main reads page ids from
79
+ // (`readBridgeId`) — an error raised while it is still up is attributed
80
+ // to it, and one raised after it is gone falls back to the active page.
81
+ body: { stage, message, bridgeId },
84
82
  },
85
83
  })
86
84
  }
87
85
 
88
- function deliver(msg) {
89
- if (!onMessageFn) {
90
- pendingMessages.push(msg)
91
- return
92
- }
93
- try {
94
- onMessageFn(msg)
95
- } catch (error) {
96
- reportError('onMessage', error)
97
- }
98
- }
99
-
100
- function scheduleDrain() {
101
- if (drainScheduled) return
102
- drainScheduled = true
103
- queueMicrotask(() => {
104
- drainScheduled = false
105
- while (onMessageFn && pendingMessages.length > 0) {
106
- deliver(pendingMessages.shift())
107
- }
108
- })
109
- }
86
+ const queue = createDeliveryQueue({
87
+ // hostEnvUpdate patches the spawn snapshot right before the service reads the same
88
+ // message, so a queued pageResize sees the geometry that was current when it was sent.
89
+ beforeDispatch: (msg) => applyHostEnvUpdate(globalThis.__diminaSpawnContext, msg),
90
+ onError: reportError,
91
+ })
110
92
 
111
93
  Object.defineProperty(globalThis, 'DiminaServiceBridge', {
112
94
  value: {
113
95
  get onMessage() {
114
- return onMessageFn
96
+ return queue.getHandler()
115
97
  },
116
98
  set onMessage(handler) {
117
- onMessageFn = typeof handler === 'function' ? handler : null
118
- scheduleDrain()
99
+ queue.setHandler(handler)
119
100
  },
101
+ // Neither send stamps this window's spawn bridgeId: it names the page this
102
+ // service host was STARTED for, which a reLaunch/redirectTo can close while
103
+ // the host keeps serving the session. Main routes by the sending
104
+ // webContents plus the page id the message itself carries.
120
105
  invoke(msg) {
121
- ipcRenderer.send(CHANNELS.SERVICE_INVOKE, { bridgeId, msg })
106
+ ipcRenderer.send(CHANNELS.SERVICE_INVOKE, { msg })
122
107
  return undefined
123
108
  },
124
109
  publish(targetBridgeId, msg) {
125
- ipcRenderer.send(CHANNELS.SERVICE_PUBLISH, { bridgeId, targetBridgeId, msg })
110
+ ipcRenderer.send(CHANNELS.SERVICE_PUBLISH, { targetBridgeId, msg })
126
111
  },
127
112
  },
128
113
  writable: false,
@@ -199,8 +184,29 @@ if (typeof globalThis.importScripts !== 'function') {
199
184
  }
200
185
  }
201
186
 
187
+ // Device changes ride the ordinary service channel as `hostEnvUpdate`; the queue's
188
+ // beforeDispatch merges them into `__diminaSpawnContext.hostEnvSnapshot` (the object is
189
+ // writable even though the binding is not) in stream order.
202
190
  ipcRenderer.on(CHANNELS.TO_SERVICE, (_event, payload) => {
203
- deliver(payload && payload.msg)
191
+ queue.deliver(payload && payload.msg)
192
+ })
193
+
194
+ // AppData-panel edit write-back. The service runtime evaluates in THIS window's
195
+ // global context (contextIsolation: false), so `globalThis.getCurrentPages` is
196
+ // the runtime's real page stack once boot has installed it. The pure resolver
197
+ // lives in a sibling .cjs (unit-tested in appdata-set-data.test.ts), required
198
+ // relative to this preload so it resolves from dist/service-host at runtime.
199
+ const { applyAppDataSetData } = require('./appdata-set-data.cjs')
200
+
201
+ ipcRenderer.on(CHANNELS.APPDATA_SET_DATA, (_event, payload) => {
202
+ if (!payload || typeof payload.bridgeId !== 'string' || !payload.data) return
203
+ const applied = applyAppDataSetData(globalThis.getCurrentPages, payload.bridgeId, payload.data)
204
+ // Narrow race: main resolved a live service window but the page unloaded
205
+ // before this handler ran — the write is dropped here. Surface it in the
206
+ // service console (captured via CDP) so the silent no-op is diagnosable.
207
+ if (!applied) {
208
+ console.warn(`[service-host] appdata set-data dropped: no live page for bridge ${payload.bridgeId}`)
209
+ }
204
210
  })
205
211
 
206
212
  // ── Uncaught error capture (native-host) ────────────────────────────────────
@@ -0,0 +1,71 @@
1
+ 'use strict'
2
+
3
+ /**
4
+ * Orders every message from main to the service exactly as it arrived, even when the
5
+ * service registers its onMessage handler late or a handler re-enters `deliver`.
6
+ * Every message goes through one FIFO; only the drain loop dispatches, so a message
7
+ * delivered while a drain is pending or running always lands behind what is already
8
+ * queued. Without a handler the backlog waits; `setHandler` drains it on a microtask,
9
+ * and with nothing queued a delivery dispatches synchronously.
10
+ *
11
+ * `beforeDispatch` runs right before the handler sees each message — never at enqueue
12
+ * time — so side effects it carries (like a hostEnvUpdate patching the spawn context)
13
+ * become visible in the same order the service observes the message stream. A throw in
14
+ * either step is reported through `onError` and never drops the message or stops the
15
+ * stream.
16
+ */
17
+ function createDeliveryQueue({ beforeDispatch, onError } = {}) {
18
+ const pending = []
19
+ let handler = null
20
+ let drainScheduled = false
21
+ let draining = false
22
+
23
+ function report(stage, error) {
24
+ if (onError) onError(stage, error)
25
+ }
26
+
27
+ function dispatch(msg) {
28
+ if (beforeDispatch) {
29
+ try {
30
+ beforeDispatch(msg)
31
+ } catch (error) {
32
+ report('beforeDispatch', error)
33
+ }
34
+ }
35
+ try {
36
+ handler(msg)
37
+ } catch (error) {
38
+ report('onMessage', error)
39
+ }
40
+ }
41
+
42
+ function drain() {
43
+ if (draining) return
44
+ draining = true
45
+ try {
46
+ while (handler && pending.length > 0) dispatch(pending.shift())
47
+ } finally {
48
+ draining = false
49
+ }
50
+ }
51
+
52
+ function deliver(msg) {
53
+ pending.push(msg)
54
+ if (handler && !drainScheduled) drain()
55
+ }
56
+
57
+ function setHandler(fn) {
58
+ handler = typeof fn === 'function' ? fn : null
59
+ // An empty backlog needs no deferred drain, so the next deliver dispatches at once.
60
+ if (!handler || drainScheduled || pending.length === 0) return
61
+ drainScheduled = true
62
+ queueMicrotask(() => {
63
+ drainScheduled = false
64
+ drain()
65
+ })
66
+ }
67
+
68
+ return { deliver, setHandler, getHandler: () => handler }
69
+ }
70
+
71
+ module.exports = { createDeliveryQueue }
@@ -1,8 +1,19 @@
1
+ export const MENU_CAPSULE_WIDTH = 87;
2
+ export const MENU_CAPSULE_HEIGHT = 32;
3
+ export const MENU_CAPSULE_TRAILING_SPACING = 10;
4
+ const NAV_BAR_CONTENT_HEIGHT = {
5
+ ios: 44,
6
+ android: 64,
7
+ };
8
+ export function getMenuCapsuleTopOffset(platform) {
9
+ return (NAV_BAR_CONTENT_HEIGHT[platform] - MENU_CAPSULE_HEIGHT) / 2;
10
+ }
1
11
  export function getMenuCapsuleRect(platform, statusBarHeight, windowWidth) {
2
- const width = platform === 'ios' ? 87 : 95;
3
- const height = 32;
4
- const top = statusBarHeight + (platform === 'ios' ? 4 : 6);
5
- const right = platform === 'ios' ? 7 : 10;
6
- const left = windowWidth - right - width;
12
+ const width = MENU_CAPSULE_WIDTH;
13
+ const height = MENU_CAPSULE_HEIGHT;
14
+ const top = statusBarHeight + getMenuCapsuleTopOffset(platform);
15
+ const right = Math.max(windowWidth - MENU_CAPSULE_TRAILING_SPACING, width);
16
+ const left = right - width;
7
17
  return { width, height, top, right, bottom: top + height, left };
8
18
  }
19
+ //# sourceMappingURL=menu-button-geometry.js.map
@@ -1,8 +1,10 @@
1
1
  import { getMenuCapsuleRect } from './menu-button-geometry.js';
2
2
  /**
3
- * wx.getMenuButtonBoundingClientRect() — synchronous, returns the WeChat
4
- * capsule geometry. iOS: width 87, Android: width 95, height 32, top =
5
- * statusBarHeight + (4|6), right = (7|10). See navigation-bar spec.
3
+ * wx.getMenuButtonBoundingClientRect() — synchronous, returns the capsule
4
+ * geometry mirrored from dimina's native containers: width 87, height 32
5
+ * on both platforms; top = statusBarHeight + 6 (iOS) / + 16 (Android), since
6
+ * the nav bar content height differs (44 vs 64); right/left are absolute
7
+ * pixel positions (right = windowWidth - 10). See menu-button-geometry.ts.
6
8
  *
7
9
  * Pulls platform + dimensions from spawn-time host env snapshot (delivered
8
10
  * via `?hostEnv=` URL query, see service-host/preload.cjs).
@@ -6,6 +6,34 @@ export function getSystemInfoSync() {
6
6
  const windowHeight = numberOr(snapshot.windowHeight, globalThis.innerHeight, screenHeight);
7
7
  const statusBarHeight = numberOr(snapshot.statusBarHeight, 0);
8
8
  const safeAreaBottom = windowHeight;
9
+ const deviceOrientation = snapshot.deviceOrientation ?? 'portrait';
10
+ // A snapshot minted by the runtime's `deviceInfoToHostEnv` already carries
11
+ // the resolved rect — it is the single source of truth for these numbers, so
12
+ // carry it through rather than re-deriving and risking a different answer
13
+ // from the async and per-spawn paths.
14
+ const resolved = snapshot.safeArea;
15
+ // Older snapshots carry only the measured per-edge insets (safeAreaInsets):
16
+ // right/bottom are distances from the far edge, so they convert to the
17
+ // left/top-origin safeArea rect by subtracting from the window size. Neither
18
+ // present (no device selected yet) falls back to top=statusBarHeight only.
19
+ const insets = snapshot.safeAreaInsets;
20
+ const safeArea = resolved ?? (insets
21
+ ? {
22
+ left: insets.left,
23
+ top: insets.top,
24
+ right: windowWidth - insets.right,
25
+ bottom: windowHeight - insets.bottom,
26
+ width: windowWidth - insets.right - insets.left,
27
+ height: windowHeight - insets.bottom - insets.top,
28
+ }
29
+ : {
30
+ width: windowWidth,
31
+ height: windowHeight - statusBarHeight,
32
+ top: statusBarHeight,
33
+ bottom: safeAreaBottom,
34
+ left: 0,
35
+ right: windowWidth,
36
+ });
9
37
  return {
10
38
  brand: stringOr(snapshot.brand, 'devtools'),
11
39
  model: stringOr(snapshot.model, 'devtools'),
@@ -21,16 +49,10 @@ export function getSystemInfoSync() {
21
49
  platform: stringOr(snapshot.platform, navigator.platform || 'ios'),
22
50
  fontSizeSetting: 16,
23
51
  SDKVersion: stringOr(snapshot.SDKVersion, '3.0.0'),
24
- deviceOrientation: 'portrait',
52
+ deviceOrientation,
25
53
  theme: stringOr(snapshot.theme, globalThis.matchMedia?.('(prefers-color-scheme: dark)').matches ? 'dark' : 'light'),
26
- safeArea: {
27
- width: windowWidth,
28
- height: windowHeight - statusBarHeight,
29
- top: statusBarHeight,
30
- bottom: safeAreaBottom,
31
- left: 0,
32
- right: windowWidth,
33
- },
54
+ safeArea,
55
+ screenTop: numberOr(snapshot.screenTop, statusBarHeight),
34
56
  };
35
57
  }
36
58
  export function getAccountInfoSync() {