@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.
- package/README.md +51 -660
- package/dist/main/api.d.ts +2 -1
- package/dist/main/app/app.d.ts +41 -12
- package/dist/main/app/app.js +299 -514
- package/dist/main/app/bootstrap.d.ts +8 -5
- package/dist/main/app/bootstrap.js +15 -15
- package/dist/main/app/editor-view.d.ts +21 -0
- package/dist/main/app/editor-view.js +71 -0
- package/dist/main/app/global-mirrors.d.ts +23 -0
- package/dist/main/app/global-mirrors.js +37 -0
- package/dist/main/app/host-sidebar-default.d.ts +19 -0
- package/dist/main/app/host-sidebar-default.js +44 -0
- package/dist/main/app/lifecycle.d.ts +12 -1
- package/dist/main/app/lifecycle.js +27 -1
- package/dist/main/app/menu-setup.d.ts +13 -0
- package/dist/main/app/menu-setup.js +49 -0
- package/dist/main/app/native-overview.d.ts +1 -1
- package/dist/main/app/open-project-ipc.d.ts +13 -0
- package/dist/main/app/open-project-ipc.js +21 -0
- package/dist/main/app/project-list-surface.d.ts +31 -0
- package/dist/main/app/project-list-surface.js +20 -0
- package/dist/main/app/project-window.d.ts +36 -0
- package/dist/main/app/project-window.js +93 -0
- package/dist/main/app/servers.d.ts +17 -0
- package/dist/main/app/servers.js +60 -0
- package/dist/main/app/ui-extension-targets.d.ts +42 -0
- package/dist/main/app/ui-extension-targets.js +101 -0
- package/dist/main/app/window-close-reveal.harness.d.ts +34 -0
- package/dist/main/app/window-close-reveal.harness.js +65 -0
- package/dist/main/app/window-events.d.ts +15 -0
- package/dist/main/app/window-events.js +45 -0
- package/dist/main/app/window-runtime-services.d.ts +41 -0
- package/dist/main/app/window-runtime-services.js +197 -0
- package/dist/main/app/workbench-modules.d.ts +24 -0
- package/dist/main/app/workbench-modules.js +51 -0
- package/dist/main/app/workbench-window.d.ts +85 -0
- package/dist/main/app/workbench-window.js +310 -0
- package/dist/main/index.bundle.js +11712 -9986
- package/dist/main/index.js +49 -1
- package/dist/main/ipc/app-lifecycle.d.ts +1 -31
- package/dist/main/ipc/app-lifecycle.js +1 -53
- package/dist/main/ipc/app.d.ts +4 -1
- package/dist/main/ipc/app.js +4 -3
- package/dist/main/ipc/bridge-router.d.ts +19 -116
- package/dist/main/ipc/bridge-router.js +28 -2128
- package/dist/main/ipc/device-picker.d.ts +16 -0
- package/dist/main/ipc/device-picker.js +27 -0
- package/dist/main/ipc/index.d.ts +5 -0
- package/dist/main/ipc/index.js +5 -0
- package/dist/main/ipc/internal-devtools.d.ts +16 -0
- package/dist/main/ipc/internal-devtools.js +10 -0
- package/dist/main/ipc/page-scroll.d.ts +1 -13
- package/dist/main/ipc/page-scroll.js +1 -16
- package/dist/main/ipc/popover.d.ts +4 -1
- package/dist/main/ipc/popover.js +26 -19
- package/dist/main/ipc/project-create.d.ts +16 -0
- package/dist/main/ipc/project-create.js +27 -0
- package/dist/main/ipc/project-fs.d.ts +38 -3
- package/dist/main/ipc/project-fs.js +53 -22
- package/dist/main/ipc/projects.d.ts +3 -3
- package/dist/main/ipc/projects.js +47 -11
- package/dist/main/ipc/session-listener-bag.d.ts +1 -40
- package/dist/main/ipc/session-listener-bag.js +1 -39
- package/dist/main/ipc/session.d.ts +4 -1
- package/dist/main/ipc/session.js +26 -26
- package/dist/main/ipc/settings.d.ts +4 -1
- package/dist/main/ipc/settings.js +17 -19
- package/dist/main/ipc/simulator-module.d.ts +9 -3
- package/dist/main/ipc/simulator-module.js +13 -10
- package/dist/main/ipc/simulator.d.ts +4 -1
- package/dist/main/ipc/simulator.js +12 -18
- package/dist/main/ipc/tooltip.d.ts +14 -0
- package/dist/main/ipc/tooltip.js +29 -0
- package/dist/main/ipc/views.d.ts +19 -2
- package/dist/main/ipc/views.js +76 -8
- package/dist/main/runtime/devtools-backend-before-quit.harness.d.ts +43 -0
- package/dist/main/runtime/devtools-backend-before-quit.harness.js +87 -0
- package/dist/main/runtime/devtools-backend.js +60 -4
- package/dist/main/runtime/devtools-runtime-mock.harness.d.ts +21 -0
- package/dist/main/runtime/devtools-runtime-mock.harness.js +313 -0
- package/dist/main/runtime/miniapp-runtime.d.ts +91 -22
- package/dist/main/services/app-services.d.ts +62 -0
- package/dist/main/services/app-services.js +64 -0
- package/dist/main/services/automation/connection-target.d.ts +36 -0
- package/dist/main/services/automation/connection-target.js +29 -0
- package/dist/main/services/automation/console-bridge.d.ts +28 -0
- package/dist/main/services/automation/console-bridge.js +91 -0
- package/dist/main/services/automation/handlers/app.js +4 -4
- package/dist/main/services/automation/handlers/element.js +55 -21
- package/dist/main/services/automation/index.d.ts +12 -1
- package/dist/main/services/automation/index.js +54 -133
- package/dist/main/services/cdp-session/index.d.ts +87 -0
- package/dist/main/services/cdp-session/index.js +173 -0
- package/dist/main/services/compile-standby.js +4 -0
- package/dist/main/services/console-forward/cdp-inject.d.ts +18 -0
- package/dist/main/services/console-forward/cdp-inject.js +30 -0
- package/dist/main/services/console-forward/global-console-mirror.d.ts +33 -0
- package/dist/main/services/console-forward/global-console-mirror.js +71 -0
- package/dist/main/services/console-forward/global-diagnostics-mirror.d.ts +33 -0
- package/dist/main/services/console-forward/global-diagnostics-mirror.js +73 -0
- package/dist/main/services/console-forward/index.d.ts +1 -46
- package/dist/main/services/console-forward/index.js +1 -185
- package/dist/main/services/console-forward/internal-log.d.ts +2 -0
- package/dist/main/services/console-forward/internal-log.js +2 -0
- package/dist/main/services/console-forward/open-gated-relay.d.ts +67 -0
- package/dist/main/services/console-forward/open-gated-relay.js +55 -0
- package/dist/main/services/default-adapter.js +1 -1
- package/dist/main/services/diagnostics/index.d.ts +1 -48
- package/dist/main/services/diagnostics/index.js +1 -60
- package/dist/main/services/dimina-resource-server.d.ts +1 -6
- package/dist/main/services/dimina-resource-server.js +1 -98
- package/dist/main/services/elements-forward/index.d.ts +132 -15
- package/dist/main/services/elements-forward/index.js +155 -304
- package/dist/main/services/fs-bridge-protocol.d.ts +61 -0
- package/dist/main/services/fs-bridge-protocol.js +34 -0
- package/dist/main/services/fs-watch-sse.d.ts +40 -0
- package/dist/main/services/fs-watch-sse.js +113 -0
- package/dist/main/services/http-json.d.ts +9 -0
- package/dist/main/services/http-json.js +6 -0
- package/dist/main/services/layout/index.d.ts +11 -0
- package/dist/main/services/layout/index.js +23 -0
- package/dist/main/services/mcp/connection-owner.d.ts +38 -0
- package/dist/main/services/mcp/connection-owner.js +79 -0
- package/dist/main/services/mcp/index.d.ts +3 -1
- package/dist/main/services/mcp/index.js +4 -3
- package/dist/main/services/mcp/opened-project.d.ts +88 -0
- package/dist/main/services/mcp/opened-project.js +60 -0
- package/dist/main/services/mcp/server.d.ts +2 -1
- package/dist/main/services/mcp/server.js +29 -4
- package/dist/main/services/mcp/target-manager.d.ts +71 -23
- package/dist/main/services/mcp/target-manager.js +269 -138
- package/dist/main/services/mcp/target-selection.d.ts +47 -0
- package/dist/main/services/mcp/target-selection.js +71 -0
- package/dist/main/services/mcp/tools/context-tools.js +20 -5
- package/dist/main/services/mcp/tools/project-tools.d.ts +72 -0
- package/dist/main/services/mcp/tools/project-tools.js +133 -0
- package/dist/main/services/module.d.ts +13 -5
- package/dist/main/services/network-forward/body-cache.d.ts +72 -0
- package/dist/main/services/network-forward/body-cache.js +179 -0
- package/dist/main/services/network-forward/frontend-dispatch.d.ts +91 -0
- package/dist/main/services/network-forward/frontend-dispatch.js +148 -0
- package/dist/main/services/network-forward/global-body-gate.d.ts +46 -0
- package/dist/main/services/network-forward/global-body-gate.js +93 -0
- package/dist/main/services/network-forward/global-mirror-test-fixtures.d.ts +48 -0
- package/dist/main/services/network-forward/global-mirror-test-fixtures.js +96 -0
- package/dist/main/services/network-forward/http.d.ts +47 -0
- package/dist/main/services/network-forward/http.js +162 -0
- package/dist/main/services/network-forward/index.d.ts +135 -15
- package/dist/main/services/network-forward/index.js +854 -224
- package/dist/main/services/network-forward/request-ids.d.ts +5 -0
- package/dist/main/services/network-forward/request-ids.js +5 -0
- package/dist/main/services/network-forward/user-facing.d.ts +21 -0
- package/dist/main/services/network-forward/user-facing.js +50 -0
- package/dist/main/services/network-forward/websocket.d.ts +36 -0
- package/dist/main/services/network-forward/websocket.js +120 -0
- package/dist/main/services/notifications/renderer-notifier.d.ts +71 -9
- package/dist/main/services/notifications/renderer-notifier.js +45 -8
- package/dist/main/services/projects/create-project-service.js +19 -5
- package/dist/main/services/projects/local-provider.js +8 -4
- package/dist/main/services/projects/project-repository.d.ts +59 -7
- package/dist/main/services/projects/project-repository.js +285 -51
- package/dist/main/services/projects/types.d.ts +44 -34
- package/dist/main/services/render-inspect/index.d.ts +12 -2
- package/dist/main/services/render-inspect/index.js +21 -102
- package/dist/main/services/safe-area/index.d.ts +21 -6
- package/dist/main/services/safe-area/index.js +92 -46
- package/dist/main/services/service-host-pool/pool.d.ts +1 -196
- package/dist/main/services/service-host-pool/pool.js +1 -363
- package/dist/main/services/settings/index.d.ts +7 -1
- package/dist/main/services/settings/index.js +22 -2
- package/dist/main/services/simulator/custom-apis.d.ts +1 -42
- package/dist/main/services/simulator/custom-apis.js +1 -46
- package/dist/main/services/simulator/referer.d.ts +1 -9
- package/dist/main/services/simulator/referer.js +1 -19
- package/dist/main/services/simulator/ui-extensions.d.ts +21 -0
- package/dist/main/services/simulator/ui-extensions.js +176 -0
- package/dist/main/services/simulator-appdata/index.d.ts +6 -0
- package/dist/main/services/simulator-appdata/index.js +21 -2
- package/dist/main/services/simulator-current-page/index.d.ts +5 -3
- package/dist/main/services/simulator-current-page/index.js +8 -1
- package/dist/main/services/simulator-storage/index.d.ts +34 -5
- package/dist/main/services/simulator-storage/index.js +73 -71
- package/dist/main/services/simulator-storage/service-storage-ops.d.ts +1 -39
- package/dist/main/services/simulator-storage/service-storage-ops.js +1 -66
- package/dist/main/services/simulator-storage/window-scope.d.ts +20 -0
- package/dist/main/services/simulator-storage/window-scope.js +20 -0
- package/dist/main/services/simulator-temp-files/disk.d.ts +1 -54
- package/dist/main/services/simulator-temp-files/disk.js +1 -237
- package/dist/main/services/simulator-temp-files/fs-channels.d.ts +1 -68
- package/dist/main/services/simulator-temp-files/fs-channels.js +1 -107
- package/dist/main/services/simulator-temp-files/index.d.ts +1 -32
- package/dist/main/services/simulator-temp-files/index.js +1 -181
- package/dist/main/services/simulator-temp-files/request-handler.d.ts +1 -29
- package/dist/main/services/simulator-temp-files/request-handler.js +1 -177
- package/dist/main/services/simulator-temp-files/resolver.d.ts +1 -21
- package/dist/main/services/simulator-temp-files/resolver.js +1 -21
- package/dist/main/services/simulator-temp-files/store.d.ts +1 -13
- package/dist/main/services/simulator-temp-files/store.js +1 -23
- package/dist/main/services/update/github-release-checker.js +22 -3
- package/dist/main/services/update/update-manager.d.ts +21 -4
- package/dist/main/services/update/update-manager.js +55 -11
- package/dist/main/services/views/clear-console-filter.d.ts +44 -0
- package/dist/main/services/views/clear-console-filter.js +86 -0
- package/dist/main/services/views/console-filter-test-fixtures.d.ts +94 -0
- package/dist/main/services/views/console-filter-test-fixtures.js +82 -0
- package/dist/main/services/views/console-filter.d.ts +94 -0
- package/dist/main/services/views/console-filter.js +190 -0
- package/dist/main/services/views/devtools-tabs.d.ts +24 -4
- package/dist/main/services/views/devtools-tabs.js +40 -21
- package/dist/main/services/views/frontend-bootstrap-gate.d.ts +59 -0
- package/dist/main/services/views/frontend-bootstrap-gate.js +117 -0
- package/dist/main/services/views/host-dialog-port-channel.d.ts +18 -0
- package/dist/main/services/views/host-dialog-port-channel.js +15 -0
- package/dist/main/services/views/host-dialog-session-runtime.d.ts +10 -0
- package/dist/main/services/views/host-dialog-session-runtime.js +17 -0
- package/dist/main/services/views/host-dialog-view.d.ts +95 -0
- package/dist/main/services/views/host-dialog-view.js +147 -0
- package/dist/main/services/views/host-sidebar-port-channel.d.ts +18 -0
- package/dist/main/services/views/host-sidebar-port-channel.js +15 -0
- package/dist/main/services/views/host-sidebar-session-runtime.d.ts +10 -0
- package/dist/main/services/views/host-sidebar-session-runtime.js +17 -0
- package/dist/main/services/views/host-sidebar-view.d.ts +59 -0
- package/dist/main/services/views/host-sidebar-view.js +44 -0
- package/dist/main/services/views/host-slot-port-channel.d.ts +124 -0
- package/dist/main/services/views/host-slot-port-channel.js +289 -0
- package/dist/main/services/views/host-slot-session-runtime.d.ts +40 -0
- package/dist/main/services/views/host-slot-session-runtime.js +50 -0
- package/dist/main/services/views/host-slot-view.d.ts +109 -0
- package/dist/main/services/views/host-slot-view.js +147 -0
- package/dist/main/services/views/host-toolbar-port-channel.d.ts +6 -91
- package/dist/main/services/views/host-toolbar-port-channel.js +10 -243
- package/dist/main/services/views/host-toolbar-session-runtime.d.ts +5 -30
- package/dist/main/services/views/host-toolbar-session-runtime.js +9 -47
- package/dist/main/services/views/host-toolbar-view.d.ts +34 -7
- package/dist/main/services/views/host-toolbar-view.js +30 -237
- package/dist/main/services/views/managed-web-contents-view.d.ts +48 -0
- package/dist/main/services/views/managed-web-contents-view.js +143 -0
- package/dist/main/services/views/miniapp-partition.d.ts +1 -89
- package/dist/main/services/views/miniapp-partition.js +1 -158
- package/dist/main/services/views/native-simulator-devtools-host.js +206 -68
- package/dist/main/services/views/native-simulator-view.d.ts +6 -0
- package/dist/main/services/views/native-simulator-view.js +47 -40
- package/dist/main/services/views/native-view-tree.d.ts +25 -0
- package/dist/main/services/views/native-view-tree.js +69 -0
- package/dist/main/services/views/overlay-panels-view.d.ts +63 -4
- package/dist/main/services/views/overlay-panels-view.js +257 -108
- package/dist/main/services/views/placement-reconciler.d.ts +18 -18
- package/dist/main/services/views/placement-reconciler.js +91 -29
- package/dist/main/services/views/placement-test-driver.d.ts +27 -0
- package/dist/main/services/views/placement-test-driver.js +29 -0
- package/dist/main/services/views/refresh-styles.d.ts +10 -0
- package/dist/main/services/views/refresh-styles.js +57 -0
- package/dist/main/services/views/simulator-session-policy.d.ts +1 -27
- package/dist/main/services/views/simulator-session-policy.js +1 -98
- package/dist/main/services/views/view-manager-devtools-host-test-fixtures.d.ts +76 -0
- package/dist/main/services/views/view-manager-devtools-host-test-fixtures.js +184 -0
- package/dist/main/services/views/view-manager.d.ts +69 -88
- package/dist/main/services/views/view-manager.js +62 -7
- package/dist/main/services/views/workbench-view.d.ts +2 -0
- package/dist/main/services/views/workbench-view.js +104 -17
- package/dist/main/services/window-contexts/context-router.d.ts +36 -0
- package/dist/main/services/window-contexts/context-router.js +55 -0
- package/dist/main/services/workbench-coi-host.d.ts +52 -0
- package/dist/main/services/workbench-coi-host.js +227 -0
- package/dist/main/services/workbench-coi-server.d.ts +11 -0
- package/dist/main/services/workbench-coi-server.js +126 -126
- package/dist/main/services/workbench-coi-shutdown.d.ts +40 -0
- package/dist/main/services/workbench-coi-shutdown.js +69 -0
- package/dist/main/services/workbench-coi-static.d.ts +23 -0
- package/dist/main/services/workbench-coi-static.js +87 -0
- package/dist/main/services/workbench-context.d.ts +88 -8
- package/dist/main/services/workbench-context.js +54 -6
- package/dist/main/services/workspace/compile-log-buffer.d.ts +40 -0
- package/dist/main/services/workspace/compile-log-buffer.js +41 -0
- package/dist/main/services/workspace/compile-mode-adapter.d.ts +18 -0
- package/dist/main/services/workspace/compile-mode-adapter.js +57 -0
- package/dist/main/services/workspace/compile-mode-store.d.ts +25 -0
- package/dist/main/services/workspace/compile-mode-store.js +71 -0
- package/dist/main/services/workspace/open-project-guards.d.ts +16 -0
- package/dist/main/services/workspace/open-project-guards.js +42 -0
- package/dist/main/services/workspace/rebuild-status.d.ts +37 -0
- package/dist/main/services/workspace/rebuild-status.js +36 -0
- package/dist/main/services/workspace/session-status-store.d.ts +47 -0
- package/dist/main/services/workspace/session-status-store.js +73 -0
- package/dist/main/services/workspace/status-tap.d.ts +20 -0
- package/dist/main/services/workspace/status-tap.js +32 -0
- package/dist/main/services/workspace/workspace-compile-modes.d.ts +59 -0
- package/dist/main/services/workspace/workspace-compile-modes.js +93 -0
- package/dist/main/services/workspace/workspace-lifecycle-race.testutil.d.ts +22 -0
- package/dist/main/services/workspace/workspace-lifecycle-race.testutil.js +62 -0
- package/dist/main/services/workspace/workspace-referer.d.ts +17 -0
- package/dist/main/services/workspace/workspace-referer.js +26 -0
- package/dist/main/services/workspace/workspace-service.d.ts +7 -5
- package/dist/main/services/workspace/workspace-service.js +96 -135
- package/dist/main/services/workspace/workspace-thumbnails.d.ts +22 -0
- package/dist/main/services/workspace/workspace-thumbnails.js +67 -0
- package/dist/main/utils/ipc-context-source.d.ts +40 -0
- package/dist/main/utils/ipc-context-source.js +23 -0
- package/dist/main/utils/ipc-registry.d.ts +46 -21
- package/dist/main/utils/ipc-registry.js +166 -76
- package/dist/main/utils/paths.d.ts +18 -0
- package/dist/main/utils/paths.js +18 -0
- package/dist/main/utils/sender-policy.d.ts +10 -1
- package/dist/main/utils/sender-policy.js +42 -4
- package/dist/main/utils/theme.d.ts +18 -8
- package/dist/main/utils/theme.js +19 -9
- package/dist/main/windows/internal-devtools-window/index.d.ts +66 -0
- package/dist/main/windows/internal-devtools-window/index.js +160 -0
- package/dist/main/windows/main-window/create.d.ts +16 -0
- package/dist/main/windows/main-window/create.js +19 -11
- package/dist/main/windows/main-window/events.d.ts +1 -1
- package/dist/main/windows/main-window/events.js +26 -13
- package/dist/main/windows/main-window/index.d.ts +1 -1
- package/dist/main/windows/main-window/index.js +1 -1
- package/dist/main/windows/service-host-window/create.d.ts +1 -92
- package/dist/main/windows/service-host-window/create.js +1 -154
- package/dist/native-host/common/common.js +173 -53
- package/dist/native-host/container/pageFrame.css +1 -1
- package/dist/native-host/render/render.js +8278 -3659
- package/dist/native-host/service/service.js +2 -2
- package/dist/preload/index.d.ts +2 -0
- package/dist/preload/index.js +1 -0
- package/dist/preload/instrumentation/app-data.d.ts +2 -2
- package/dist/preload/instrumentation/app-data.js +1 -1
- package/dist/preload/instrumentation/wxml.js +1 -1
- package/dist/preload/runtime/bridge.d.ts +3 -3
- package/dist/preload/runtime/bridge.js +2 -2
- package/dist/preload/runtime/clipboard.d.ts +6 -0
- package/dist/preload/runtime/clipboard.js +12 -0
- package/dist/preload/runtime/host-dialog-advertiser.d.ts +22 -0
- package/dist/preload/runtime/host-dialog-advertiser.js +37 -0
- package/dist/preload/runtime/host-dialog-port.d.ts +44 -0
- package/dist/preload/runtime/host-dialog-port.js +53 -0
- package/dist/preload/runtime/host-dialog-runtime.d.ts +28 -0
- package/dist/preload/runtime/host-dialog-runtime.js +36 -0
- package/dist/preload/runtime/host-sidebar-advertiser.d.ts +19 -0
- package/dist/preload/runtime/host-sidebar-advertiser.js +35 -0
- package/dist/preload/runtime/host-sidebar-port.d.ts +44 -0
- package/dist/preload/runtime/host-sidebar-port.js +53 -0
- package/dist/preload/runtime/host-sidebar-runtime.d.ts +28 -0
- package/dist/preload/runtime/host-sidebar-runtime.js +36 -0
- package/dist/preload/runtime/host-slot-port-bridge.d.ts +18 -0
- package/dist/preload/runtime/host-slot-port-bridge.js +112 -0
- package/dist/preload/runtime/host-toolbar-advertiser.d.ts +5 -13
- package/dist/preload/runtime/host-toolbar-advertiser.js +18 -38
- package/dist/preload/runtime/host-toolbar-port.d.ts +9 -0
- package/dist/preload/runtime/host-toolbar-port.js +11 -95
- package/dist/preload/runtime/native-host.d.ts +14 -0
- package/dist/preload/runtime/native-host.js +5 -8
- package/dist/preload/runtime/node-bindings.d.ts +18 -0
- package/dist/preload/runtime/node-bindings.js +44 -0
- package/dist/preload/runtime/temp-files.js +9 -2
- package/dist/preload/runtime/wait-for-slot-root.d.ts +23 -0
- package/dist/preload/runtime/wait-for-slot-root.js +80 -0
- package/dist/preload/shared/api-compat.js +63 -41
- package/dist/preload/windows/host-dialog-runtime.cjs +360 -0
- package/dist/preload/windows/host-dialog-runtime.cjs.map +7 -0
- package/dist/preload/windows/host-dialog-runtime.d.ts +2 -0
- package/dist/preload/windows/host-dialog-runtime.js +13 -0
- package/dist/preload/windows/host-sidebar-runtime.cjs +361 -0
- package/dist/preload/windows/host-sidebar-runtime.cjs.map +7 -0
- package/dist/preload/windows/host-sidebar-runtime.d.ts +2 -0
- package/dist/preload/windows/host-sidebar-runtime.js +13 -0
- package/dist/preload/windows/host-toolbar-runtime.cjs +142 -52
- package/dist/preload/windows/host-toolbar-runtime.cjs.map +3 -3
- package/dist/preload/windows/main.cjs +4922 -1246
- package/dist/preload/windows/main.cjs.map +4 -4
- package/dist/preload/windows/main.css +428 -0
- package/dist/preload/windows/main.css.map +7 -0
- package/dist/preload/windows/simulator.cjs +376 -322
- package/dist/preload/windows/simulator.cjs.map +4 -4
- package/dist/preload/windows/simulator.js +376 -322
- package/dist/render-host/pageFrame.html +4 -4
- package/dist/render-host/preload.cjs +30 -0
- package/dist/render-host/render-inspect.js +184 -115
- package/dist/renderer/assets/button-CB2MWjHY.js +2 -0
- package/dist/renderer/assets/constants-CkoGPQTS.js +2 -0
- package/dist/renderer/assets/constants-zQZ2-y21.js +2 -0
- package/dist/renderer/assets/createLucideIcon-cZ9FlZZw.js +2 -0
- package/dist/renderer/assets/devicePicker-H2eIO4e1.js +2 -0
- package/dist/renderer/assets/dialog-pHzEA8Vx.js +46 -0
- package/dist/renderer/assets/dist-B5HADirS.js +2 -0
- package/dist/renderer/assets/dist-DIFlRMKe.js +2 -0
- package/dist/renderer/assets/hostSidebarDefault-DRWh6OCt.js +2 -0
- package/dist/renderer/assets/index-CEL_XFge.js +2 -0
- package/dist/renderer/assets/input-CAObw95L.js +2 -0
- package/dist/renderer/assets/ipc-channels-overlays-gIPUFnqc.js +2 -0
- package/dist/renderer/assets/jsx-runtime-DICEQH_0.css +1 -0
- package/dist/renderer/assets/jsx-runtime-DIw5wnYl.js +9 -0
- package/dist/renderer/assets/plus-BQ9u5EbL.js +2 -0
- package/dist/renderer/assets/popover-Cw7G2Ctp.js +2 -0
- package/dist/renderer/assets/presets-DMZOb9ay.js +2 -0
- package/dist/renderer/assets/project-api-YTOr_Yvo.js +2 -0
- package/dist/renderer/assets/projectCreateDialog-BmLqiYxn.js +2 -0
- package/dist/renderer/assets/search-BMvuYF48.js +2 -0
- package/dist/renderer/assets/select-nFP95TxM.js +2 -0
- package/dist/renderer/assets/settings-CnpVfSWt.js +2 -0
- package/dist/renderer/assets/settings-api-Ccsf-Nsj.js +2 -0
- package/dist/renderer/assets/settings-tab-bar-CAzrv32m.js +2 -0
- package/dist/renderer/assets/smartphone-Bb2GdIKy.js +2 -0
- package/dist/renderer/assets/tabs-CPKN3Mmq.js +2 -0
- package/dist/renderer/assets/tooltip-D6AxXRk5.js +2 -0
- package/dist/renderer/assets/types-Bh0hA7El.js +2 -0
- package/dist/renderer/assets/updateDialog-CwndJ0Bl.js +2 -0
- package/dist/renderer/assets/utils-sEB5OZEQ.js +2 -0
- package/dist/renderer/assets/view-api-B-2zPBR5.js +2 -0
- package/dist/renderer/assets/view-ids-BfaDVV5P.js +2 -0
- package/dist/renderer/assets/workbench-C0Jkdlps.js +5 -0
- package/dist/renderer/assets/workbenchSettings-YD0Ctbm_.js +8 -0
- package/dist/renderer/entries/device-picker/index.html +28 -0
- package/dist/renderer/entries/host-sidebar-default/index.html +22 -0
- package/dist/renderer/entries/main/index.html +16 -7
- package/dist/renderer/entries/popover/index.html +16 -6
- package/dist/renderer/entries/project-create-dialog/index.html +27 -0
- package/dist/renderer/entries/settings/index.html +10 -5
- package/dist/renderer/entries/tooltip/index.html +21 -0
- package/dist/renderer/entries/update-dialog/index.html +25 -0
- package/dist/renderer/entries/workbench/index.html +49 -0
- package/dist/renderer/entries/workbench-settings/index.html +12 -5
- package/dist/service-host/appdata-set-data.cjs +39 -0
- package/dist/service-host/host-env-update.cjs +23 -0
- package/dist/service-host/preload.cjs +54 -48
- package/dist/service-host/service-message-queue.cjs +71 -0
- package/dist/service-host/sync-impls/menu-button-geometry.js +16 -5
- package/dist/service-host/sync-impls/menu-button.js +5 -3
- package/dist/service-host/sync-impls/system-info.js +31 -9
- package/dist/shared/bridge-channels.d.ts +1 -416
- package/dist/shared/bridge-channels.js +1 -89
- package/dist/shared/compile-mode-state.d.ts +73 -0
- package/dist/shared/compile-mode-state.js +100 -0
- package/dist/shared/compile-modes.d.ts +152 -0
- package/dist/shared/compile-modes.js +237 -0
- package/dist/shared/constants.d.ts +22 -0
- package/dist/shared/constants.js +22 -0
- package/dist/shared/dmb-resource-url.d.ts +2 -0
- package/dist/shared/dmb-resource-url.js +2 -0
- package/dist/shared/ipc-channels-overlays.d.ts +162 -0
- package/dist/shared/ipc-channels-overlays.js +203 -0
- package/dist/shared/ipc-channels.d.ts +24 -154
- package/dist/shared/ipc-channels.js +48 -96
- package/dist/shared/ipc-schemas.d.ts +143 -54
- package/dist/shared/ipc-schemas.js +137 -45
- package/dist/shared/node-bindings.d.ts +2 -0
- package/dist/shared/node-bindings.js +2 -0
- package/dist/shared/project-window-types.d.ts +42 -0
- package/dist/shared/project-window-types.js +2 -0
- package/dist/shared/simulator-route.d.ts +8 -0
- package/dist/shared/simulator-route.js +15 -0
- package/dist/shared/simulator-ui.d.ts +61 -0
- package/dist/shared/simulator-ui.js +12 -0
- package/dist/shared/types.d.ts +126 -41
- package/dist/shared/view-ids.d.ts +10 -0
- package/dist/shared/view-ids.js +23 -0
- package/dist/simulator/assets/bridge-channels-B3JAmRfl.js +2 -0
- package/dist/simulator/assets/device-shell-ATEhHV2_.css +1 -0
- package/dist/simulator/assets/device-shell-DucLepkm.js +431 -0
- package/dist/simulator/assets/simulator-B4rbcOVt.js +10 -0
- package/dist/simulator/assets/simulator-mini-app-DFo7fhi5.js +2 -0
- package/dist/simulator/assets/simulator-ui-BupATgKo.css +1 -0
- package/dist/simulator/assets/simulator-ui-i3GCc7YJ.js +2 -0
- package/dist/simulator/simulator.html +4 -3
- package/dist/simulator/temp-files.d.ts +35 -0
- package/dist/simulator/temp-files.js +121 -0
- package/dist/simulator/types.d.ts +50 -0
- package/dist/simulator/types.js +2 -0
- package/dist/vscode-workbench/assets/__vite-browser-external-JIkWewFf.js +1 -0
- package/dist/vscode-workbench/assets/{dist-TpGpmMGi.js → dist-CXG-u1VB.js} +3 -3
- package/dist/vscode-workbench/assets/fs-core-worker-urls-DZ1nod84.js +1 -0
- package/dist/vscode-workbench/assets/fs-core.worker-Bnmpp6fo.js +1 -0
- package/dist/vscode-workbench/assets/fs-query.worker-cZ-7Fjch.js +2 -0
- package/dist/vscode-workbench/assets/{iconv-lite-umd-C9tiCAJa.js → iconv-lite-umd-Dxx9Qyb4.js} +1 -1
- package/dist/vscode-workbench/assets/{index-DJ1HyMZ7.js → index-6VJMsaWj.js} +475 -475
- package/dist/vscode-workbench/assets/{jschardet-DE1jV513.js → jschardet-Ba3D16vt.js} +1 -1
- package/dist/vscode-workbench/index.html +21 -1
- package/package.json +23 -13
- package/dist/main/services/views/destroy-child-view.d.ts +0 -9
- package/dist/main/services/views/destroy-child-view.js +0 -23
- package/dist/preload/instrumentation/wxml-extract.d.ts +0 -11
- package/dist/preload/instrumentation/wxml-extract.js +0 -382
- package/dist/preload/shared/sid-registry.d.ts +0 -11
- package/dist/preload/shared/sid-registry.js +0 -38
- package/dist/renderer/assets/constants-EAMiwL9_.js +0 -2
- package/dist/renderer/assets/index-BMqyDx71.js +0 -49
- package/dist/renderer/assets/input-CDAEwpBO.js +0 -2
- package/dist/renderer/assets/ipc-transport-B7eFOR68.css +0 -1
- package/dist/renderer/assets/ipc-transport-_G1k5V1p.js +0 -9
- package/dist/renderer/assets/popover-DEdjK14m.js +0 -2
- package/dist/renderer/assets/select-DpKPCh3y.js +0 -2
- package/dist/renderer/assets/settings-M5q2elUr.js +0 -2
- package/dist/renderer/assets/settings-api-CDlZoHiO.js +0 -2
- package/dist/renderer/assets/workbenchSettings-CT_H1WhV.js +0 -8
- package/dist/shared/appdata-accumulator.d.ts +0 -95
- package/dist/shared/appdata-accumulator.js +0 -218
- package/dist/shared/request-core.d.ts +0 -84
- package/dist/shared/request-core.js +0 -168
- package/dist/shared/simulator-api-metadata.d.ts +0 -26
- package/dist/shared/simulator-api-metadata.js +0 -59
- package/dist/shared/vpath.d.ts +0 -42
- package/dist/shared/vpath.js +0 -105
- package/dist/simulator/assets/bridge-channels-zhsumfky.js +0 -2
- package/dist/simulator/assets/device-shell-C-wcFq3Z.js +0 -2
- package/dist/simulator/assets/device-shell-CS1rqAQz.css +0 -1
- package/dist/simulator/assets/jsx-runtime-BDTY6fEq.js +0 -2
- package/dist/simulator/assets/simulator-DU3-fS3v.js +0 -10
- package/dist/simulator/assets/simulator-mini-app-DzfMfnVM.js +0 -2
- package/dist/simulator/device-shell/menu-button-geometry.js +0 -8
- package/dist/vscode-workbench/assets/__vite-browser-external-CXi6Kz9W.js +0 -1
package/dist/preload/index.d.ts
CHANGED
|
@@ -35,5 +35,7 @@ export { installCustomApisBridge } from './runtime/custom-apis.js';
|
|
|
35
35
|
export type { DiminaCustomApisBridge } from './runtime/custom-apis.js';
|
|
36
36
|
export { installNativeHostBridge } from './runtime/native-host.js';
|
|
37
37
|
export type { DiminaNativeHostBridge } from './runtime/native-host.js';
|
|
38
|
+
export { installClipboardBridge } from './runtime/clipboard.js';
|
|
39
|
+
export type { DiminaClipboardBridge } from './runtime/clipboard.js';
|
|
38
40
|
export { setupApiCompatHook } from './shared/api-compat.js';
|
|
39
41
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/preload/index.js
CHANGED
|
@@ -36,5 +36,6 @@ export { installCustomApisBridge } from './runtime/custom-apis.js';
|
|
|
36
36
|
// external/composed preloads aren't stranded once native-host becomes the sole
|
|
37
37
|
// runtime. (Stage-0 prerequisite for decommissioning the default path.)
|
|
38
38
|
export { installNativeHostBridge } from './runtime/native-host.js';
|
|
39
|
+
export { installClipboardBridge } from './runtime/clipboard.js';
|
|
39
40
|
export { setupApiCompatHook } from './shared/api-compat.js';
|
|
40
41
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { MiniappSnapshotSource } from '../miniapp-snapshot/types.js';
|
|
2
|
-
import { type AppDataSnapshot } from '
|
|
3
|
-
export type { AppDataSnapshot } from '
|
|
2
|
+
import { type AppDataSnapshot } from '@dimina-kit/inspect';
|
|
3
|
+
export type { AppDataSnapshot } from '@dimina-kit/inspect';
|
|
4
4
|
/**
|
|
5
5
|
* The AppData snapshot data source.
|
|
6
6
|
*
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { clearAppDataSnapshot, setAppDataSnapshot, } from '../runtime/bridge.js';
|
|
2
|
-
import { AppDataAccumulator, decodeOutgoingMessage, decodeWorkerMessage, } from '
|
|
2
|
+
import { AppDataAccumulator, decodeOutgoingMessage, decodeWorkerMessage, } from '@dimina-kit/inspect';
|
|
3
3
|
/**
|
|
4
4
|
* The AppData snapshot data source.
|
|
5
5
|
*
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { clearWxmlSnapshot, setWxmlSnapshot, unhighlightElement, } from '../runtime/bridge.js';
|
|
2
2
|
import { WXML_DEBOUNCE_MS, WXML_RETRY_INTERVAL_MS, WXML_RETRY_TIMEOUT_MS, NAVIGATION_POLL_INTERVAL_MS, NAVIGATION_TIMEOUT_MS, } from '../shared/constants.js';
|
|
3
|
-
import { walkInstance } from '
|
|
3
|
+
import { walkInstance } from '@dimina-kit/inspect';
|
|
4
4
|
import { getActivePageIframe } from '../shared/page-iframe.js';
|
|
5
5
|
function getVueAppFromIframe(iframe) {
|
|
6
6
|
try {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { ElementInspection } from '../../shared/ipc-channels.js';
|
|
2
|
-
import { type WxmlNode } from '
|
|
3
|
-
export type { WxmlNode } from '
|
|
4
|
-
export { registerSyntheticSid } from '
|
|
2
|
+
import { type WxmlNode } from '@dimina-kit/inspect';
|
|
3
|
+
export type { WxmlNode } from '@dimina-kit/inspect';
|
|
4
|
+
export { registerSyntheticSid } from '@dimina-kit/inspect';
|
|
5
5
|
export interface Snapshot<T> {
|
|
6
6
|
gen: number;
|
|
7
7
|
ready: boolean;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { exposeOnMainWorld } from '../shared/expose.js';
|
|
2
2
|
import { getActivePageIframe } from '../shared/page-iframe.js';
|
|
3
|
-
import { findElementBySid } from '
|
|
4
|
-
export { registerSyntheticSid } from '
|
|
3
|
+
import { findElementBySid } from '@dimina-kit/inspect';
|
|
4
|
+
export { registerSyntheticSid } from '@dimina-kit/inspect';
|
|
5
5
|
const state = {
|
|
6
6
|
appdata: { gen: 0, ready: true, data: {} },
|
|
7
7
|
storage: { gen: 0, ready: false, namespace: null, data: {} },
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { clipboard } from 'electron';
|
|
2
|
+
import { exposeOnMainWorld } from '../shared/expose.js';
|
|
3
|
+
function buildBridge() {
|
|
4
|
+
return {
|
|
5
|
+
readText: () => clipboard.readText(),
|
|
6
|
+
writeText: (text) => clipboard.writeText(text),
|
|
7
|
+
};
|
|
8
|
+
}
|
|
9
|
+
export function installClipboardBridge() {
|
|
10
|
+
return exposeOnMainWorld('__diminaClipboard', buildBridge());
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=clipboard.js.map
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Reverse size-advertiser preload for the host-controllable dialog
|
|
3
|
+
* WebContentsView. Runs in that WCV's OWN renderer (the dialog content's
|
|
4
|
+
* preload). Unlike the toolbar/sidebar (single-axis persistent strips), the
|
|
5
|
+
* dialog self-sizes on BOTH axes — it has no renderer placeholder to anchor
|
|
6
|
+
* against, so main centers it in the main window purely from what this
|
|
7
|
+
* advertiser reports. Two independent `createSizeAdvertiser` instances (one
|
|
8
|
+
* per axis) share the same root and the same outbound channel
|
|
9
|
+
* (`HostDialogAdvertiseSize` carries `{ axis, extent }` for either axis); main
|
|
10
|
+
* re-centers using whichever axes it has measured so far (see
|
|
11
|
+
* `host-dialog-view.ts`'s `reportMeasuredExtent` / default-size fallback).
|
|
12
|
+
*/
|
|
13
|
+
/**
|
|
14
|
+
* Attach both axis advertisers to the dialog content's shrink-to-fit root
|
|
15
|
+
* (`[data-host-dialog-root]`), waiting for it if necessary — the root may be
|
|
16
|
+
* mounted asynchronously by a framework rather than present in the initial
|
|
17
|
+
* HTML. That element MUST be shrink-to-fit on BOTH axes — same footgun as
|
|
18
|
+
* the toolbar/sidebar (`createSizeAdvertiser`'s single-axis-ownership
|
|
19
|
+
* requirement), just doubled.
|
|
20
|
+
*/
|
|
21
|
+
export declare function installHostDialogAdvertiserWhenReady(): void;
|
|
22
|
+
//# sourceMappingURL=host-dialog-advertiser.d.ts.map
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Reverse size-advertiser preload for the host-controllable dialog
|
|
3
|
+
* WebContentsView. Runs in that WCV's OWN renderer (the dialog content's
|
|
4
|
+
* preload). Unlike the toolbar/sidebar (single-axis persistent strips), the
|
|
5
|
+
* dialog self-sizes on BOTH axes — it has no renderer placeholder to anchor
|
|
6
|
+
* against, so main centers it in the main window purely from what this
|
|
7
|
+
* advertiser reports. Two independent `createSizeAdvertiser` instances (one
|
|
8
|
+
* per axis) share the same root and the same outbound channel
|
|
9
|
+
* (`HostDialogAdvertiseSize` carries `{ axis, extent }` for either axis); main
|
|
10
|
+
* re-centers using whichever axes it has measured so far (see
|
|
11
|
+
* `host-dialog-view.ts`'s `reportMeasuredExtent` / default-size fallback).
|
|
12
|
+
*/
|
|
13
|
+
import { ipcRenderer } from 'electron';
|
|
14
|
+
import { createSizeAdvertiser } from '@dimina-kit/view-anchor';
|
|
15
|
+
import { ViewChannel } from '../../shared/ipc-channels-overlays.js';
|
|
16
|
+
import { whenSlotRootReady } from './wait-for-slot-root.js';
|
|
17
|
+
/**
|
|
18
|
+
* Attach both axis advertisers to the dialog content's shrink-to-fit root
|
|
19
|
+
* (`[data-host-dialog-root]`), waiting for it if necessary — the root may be
|
|
20
|
+
* mounted asynchronously by a framework rather than present in the initial
|
|
21
|
+
* HTML. That element MUST be shrink-to-fit on BOTH axes — same footgun as
|
|
22
|
+
* the toolbar/sidebar (`createSizeAdvertiser`'s single-axis-ownership
|
|
23
|
+
* requirement), just doubled.
|
|
24
|
+
*/
|
|
25
|
+
export function installHostDialogAdvertiserWhenReady() {
|
|
26
|
+
whenSlotRootReady('[data-host-dialog-root]', '[host-dialog-advertiser] no `[data-host-dialog-root]` element found — ' +
|
|
27
|
+
'not advertising a size yet. The dialog content must wrap itself in a ' +
|
|
28
|
+
'shrink-to-fit `[data-host-dialog-root]` element so its size is the ' +
|
|
29
|
+
'content size, not the host-given view size.', (root) => {
|
|
30
|
+
const publish = (size) => {
|
|
31
|
+
ipcRenderer.send(ViewChannel.HostDialogAdvertiseSize, size);
|
|
32
|
+
};
|
|
33
|
+
createSizeAdvertiser(root, { axis: 'block', publish });
|
|
34
|
+
createSizeAdvertiser(root, { axis: 'inline', publish });
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=host-dialog-advertiser.js.map
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Preload side of the host-dialog gated narrow channel.
|
|
3
|
+
*
|
|
4
|
+
* ── PUBLIC SURFACE EVOLUTION RULE ───────────────────────────────────────────
|
|
5
|
+
* `window.diminaHostDialog` is a published page-facing API, typed by the
|
|
6
|
+
* exported `DiminaHostDialogPageBridge` (src/main/runtime/miniapp-runtime.ts)
|
|
7
|
+
* — arbitrary host dialog pages compile against it. Members may only be
|
|
8
|
+
* ADDED, never changed: any semantic change to an existing member (signature,
|
|
9
|
+
* return shape, queueing/throw behavior) ships under a NEW name instead.
|
|
10
|
+
* Exception: security fixes / compliance corrections may change existing
|
|
11
|
+
* member semantics, and MUST be called out in the release's version notes.
|
|
12
|
+
* Keep the exported bridge type in lockstep with what is exposed here.
|
|
13
|
+
*
|
|
14
|
+
* Receives the per-load MessagePort main transfers on `did-finish-load`
|
|
15
|
+
* (`ViewChannel.HostDialogPort`, `event.ports[0]`) and bridges it to the page
|
|
16
|
+
* as `window.diminaHostDialog` — EXACTLY `{ send, onMessage }`, functions
|
|
17
|
+
* only. The raw MessagePort never crosses into the main world: the page only
|
|
18
|
+
* ever talks through these two functions, so the `{ channel, payload }`
|
|
19
|
+
* envelope stays the single waist (same posture as the main side's
|
|
20
|
+
* host-dialog-port-channel.ts).
|
|
21
|
+
*
|
|
22
|
+
* Ordering reality this module absorbs — identical to the toolbar's port
|
|
23
|
+
* bridge (see host-toolbar-port.ts for the full rationale): pre-handshake
|
|
24
|
+
* sends queue and bounded-drop, handlers register before the port exists and
|
|
25
|
+
* re-attach across same-load re-handshakes, inbound dispatch drops malformed
|
|
26
|
+
* envelopes without throwing.
|
|
27
|
+
*
|
|
28
|
+
* Shared implementation: see `host-slot-port-bridge.ts` (the toolbar/sidebar/
|
|
29
|
+
* dialog port bridges are otherwise identical; only the constants below
|
|
30
|
+
* differ).
|
|
31
|
+
*/
|
|
32
|
+
/**
|
|
33
|
+
* Cap on pre-handshake queued sends. Same rationale and value as
|
|
34
|
+
* `HOST_TOOLBAR_PENDING_LIMIT` — overflow drops the NEWEST envelope, one
|
|
35
|
+
* console.warn per load.
|
|
36
|
+
*/
|
|
37
|
+
export declare const HOST_DIALOG_PENDING_LIMIT = 128;
|
|
38
|
+
/**
|
|
39
|
+
* Subscribe the handshake channel and expose the page bridge. Call ONLY from
|
|
40
|
+
* a passing dialog-runtime guard (`activateHostDialogRuntime`) — a failing
|
|
41
|
+
* guard must leave zero footprint (no bridge key, no IPC listener).
|
|
42
|
+
*/
|
|
43
|
+
export declare function installHostDialogPortBridge(): void;
|
|
44
|
+
//# sourceMappingURL=host-dialog-port.d.ts.map
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Preload side of the host-dialog gated narrow channel.
|
|
3
|
+
*
|
|
4
|
+
* ── PUBLIC SURFACE EVOLUTION RULE ───────────────────────────────────────────
|
|
5
|
+
* `window.diminaHostDialog` is a published page-facing API, typed by the
|
|
6
|
+
* exported `DiminaHostDialogPageBridge` (src/main/runtime/miniapp-runtime.ts)
|
|
7
|
+
* — arbitrary host dialog pages compile against it. Members may only be
|
|
8
|
+
* ADDED, never changed: any semantic change to an existing member (signature,
|
|
9
|
+
* return shape, queueing/throw behavior) ships under a NEW name instead.
|
|
10
|
+
* Exception: security fixes / compliance corrections may change existing
|
|
11
|
+
* member semantics, and MUST be called out in the release's version notes.
|
|
12
|
+
* Keep the exported bridge type in lockstep with what is exposed here.
|
|
13
|
+
*
|
|
14
|
+
* Receives the per-load MessagePort main transfers on `did-finish-load`
|
|
15
|
+
* (`ViewChannel.HostDialogPort`, `event.ports[0]`) and bridges it to the page
|
|
16
|
+
* as `window.diminaHostDialog` — EXACTLY `{ send, onMessage }`, functions
|
|
17
|
+
* only. The raw MessagePort never crosses into the main world: the page only
|
|
18
|
+
* ever talks through these two functions, so the `{ channel, payload }`
|
|
19
|
+
* envelope stays the single waist (same posture as the main side's
|
|
20
|
+
* host-dialog-port-channel.ts).
|
|
21
|
+
*
|
|
22
|
+
* Ordering reality this module absorbs — identical to the toolbar's port
|
|
23
|
+
* bridge (see host-toolbar-port.ts for the full rationale): pre-handshake
|
|
24
|
+
* sends queue and bounded-drop, handlers register before the port exists and
|
|
25
|
+
* re-attach across same-load re-handshakes, inbound dispatch drops malformed
|
|
26
|
+
* envelopes without throwing.
|
|
27
|
+
*
|
|
28
|
+
* Shared implementation: see `host-slot-port-bridge.ts` (the toolbar/sidebar/
|
|
29
|
+
* dialog port bridges are otherwise identical; only the constants below
|
|
30
|
+
* differ).
|
|
31
|
+
*/
|
|
32
|
+
import { ViewChannel } from '../../shared/ipc-channels-overlays.js';
|
|
33
|
+
import { createHostSlotPortBridge } from './host-slot-port-bridge.js';
|
|
34
|
+
/**
|
|
35
|
+
* Cap on pre-handshake queued sends. Same rationale and value as
|
|
36
|
+
* `HOST_TOOLBAR_PENDING_LIMIT` — overflow drops the NEWEST envelope, one
|
|
37
|
+
* console.warn per load.
|
|
38
|
+
*/
|
|
39
|
+
export const HOST_DIALOG_PENDING_LIMIT = 128;
|
|
40
|
+
/**
|
|
41
|
+
* Subscribe the handshake channel and expose the page bridge. Call ONLY from
|
|
42
|
+
* a passing dialog-runtime guard (`activateHostDialogRuntime`) — a failing
|
|
43
|
+
* guard must leave zero footprint (no bridge key, no IPC listener).
|
|
44
|
+
*/
|
|
45
|
+
export function installHostDialogPortBridge() {
|
|
46
|
+
createHostSlotPortBridge({
|
|
47
|
+
bridgeKey: 'diminaHostDialog',
|
|
48
|
+
channel: ViewChannel.HostDialogPort,
|
|
49
|
+
pendingLimit: HOST_DIALOG_PENDING_LIMIT,
|
|
50
|
+
label: 'host-dialog',
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=host-dialog-port.js.map
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Session-resident host-dialog framework runtime: GUARD + ACTIVATION.
|
|
3
|
+
*
|
|
4
|
+
* Same registration and guard shape as host-toolbar-runtime.ts (see that
|
|
5
|
+
* module for the full rationale): registered once per process on
|
|
6
|
+
* `session.defaultSession`, so it runs in EVERY defaultSession renderer;
|
|
7
|
+
* this guard keeps it inert everywhere except the host-dialog WCV's main
|
|
8
|
+
* frame, identified by `HOST_DIALOG_RUNTIME_MARKER` in that process' argv.
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Pure guard predicate: should the dialog runtime activate in a renderer with
|
|
12
|
+
* this `argv` / `isMainFrame`? True only for the MAIN frame of a process whose
|
|
13
|
+
* argv carries the `'--dimina-host-dialog'` marker.
|
|
14
|
+
*/
|
|
15
|
+
export declare function shouldActivateHostDialogRuntime(argv: readonly string[], isMainFrame: boolean): boolean;
|
|
16
|
+
/**
|
|
17
|
+
* Run the guard; only when it passes, install the dual-axis size advertiser
|
|
18
|
+
* (`installHostDialogAdvertiserWhenReady`) and the narrow-channel page
|
|
19
|
+
* bridge (`installHostDialogPortBridge` — `window.diminaHostDialog` +
|
|
20
|
+
* the MessagePort handshake listener). Returns whether the runtime
|
|
21
|
+
* activated. A failed guard installs NOTHING (zero footprint in non-dialog
|
|
22
|
+
* windows and subframes: no advertiser, no bridge key, no IPC listener).
|
|
23
|
+
*/
|
|
24
|
+
export declare function activateHostDialogRuntime(env: {
|
|
25
|
+
argv: readonly string[];
|
|
26
|
+
isMainFrame: boolean;
|
|
27
|
+
}): boolean;
|
|
28
|
+
//# sourceMappingURL=host-dialog-runtime.d.ts.map
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Session-resident host-dialog framework runtime: GUARD + ACTIVATION.
|
|
3
|
+
*
|
|
4
|
+
* Same registration and guard shape as host-toolbar-runtime.ts (see that
|
|
5
|
+
* module for the full rationale): registered once per process on
|
|
6
|
+
* `session.defaultSession`, so it runs in EVERY defaultSession renderer;
|
|
7
|
+
* this guard keeps it inert everywhere except the host-dialog WCV's main
|
|
8
|
+
* frame, identified by `HOST_DIALOG_RUNTIME_MARKER` in that process' argv.
|
|
9
|
+
*/
|
|
10
|
+
import { HOST_DIALOG_RUNTIME_MARKER } from '../../shared/constants.js';
|
|
11
|
+
import { installHostDialogAdvertiserWhenReady } from './host-dialog-advertiser.js';
|
|
12
|
+
import { installHostDialogPortBridge } from './host-dialog-port.js';
|
|
13
|
+
/**
|
|
14
|
+
* Pure guard predicate: should the dialog runtime activate in a renderer with
|
|
15
|
+
* this `argv` / `isMainFrame`? True only for the MAIN frame of a process whose
|
|
16
|
+
* argv carries the `'--dimina-host-dialog'` marker.
|
|
17
|
+
*/
|
|
18
|
+
export function shouldActivateHostDialogRuntime(argv, isMainFrame) {
|
|
19
|
+
return isMainFrame && argv.includes(HOST_DIALOG_RUNTIME_MARKER);
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Run the guard; only when it passes, install the dual-axis size advertiser
|
|
23
|
+
* (`installHostDialogAdvertiserWhenReady`) and the narrow-channel page
|
|
24
|
+
* bridge (`installHostDialogPortBridge` — `window.diminaHostDialog` +
|
|
25
|
+
* the MessagePort handshake listener). Returns whether the runtime
|
|
26
|
+
* activated. A failed guard installs NOTHING (zero footprint in non-dialog
|
|
27
|
+
* windows and subframes: no advertiser, no bridge key, no IPC listener).
|
|
28
|
+
*/
|
|
29
|
+
export function activateHostDialogRuntime(env) {
|
|
30
|
+
if (!shouldActivateHostDialogRuntime(env.argv, env.isMainFrame))
|
|
31
|
+
return false;
|
|
32
|
+
installHostDialogAdvertiserWhenReady();
|
|
33
|
+
installHostDialogPortBridge();
|
|
34
|
+
return true;
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=host-dialog-runtime.js.map
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Reverse size-advertiser preload for the host-controllable sidebar
|
|
3
|
+
* WebContentsView. Runs in that WCV's OWN renderer (the sidebar content's
|
|
4
|
+
* preload), measures the sidebar's intrinsic inline (width) extent and sends it
|
|
5
|
+
* to the main process. Main pushes the value back to the main-window renderer as
|
|
6
|
+
* `HostSidebarWidthChanged`, which resizes the sidebar placeholder, re-measures
|
|
7
|
+
* the forward anchor, and re-overlays this WCV — closing the dynamic-width loop
|
|
8
|
+
* (see `@dimina-kit/view-anchor` `createSizeAdvertiser`).
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Attach the advertiser to the sidebar content's shrink-to-fit root
|
|
12
|
+
* (`[data-host-sidebar-root]`), waiting for it if necessary — the root may be
|
|
13
|
+
* mounted asynchronously by a framework (e.g. React) rather than present in
|
|
14
|
+
* the initial HTML. That element MUST be shrink-to-fit on the inline axis —
|
|
15
|
+
* its width must reflect the content, not the host-applied view width, or the
|
|
16
|
+
* cross-process loop never converges (`createSizeAdvertiser`'s footgun).
|
|
17
|
+
*/
|
|
18
|
+
export declare function installHostSidebarAdvertiserWhenReady(): void;
|
|
19
|
+
//# sourceMappingURL=host-sidebar-advertiser.d.ts.map
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Reverse size-advertiser preload for the host-controllable sidebar
|
|
3
|
+
* WebContentsView. Runs in that WCV's OWN renderer (the sidebar content's
|
|
4
|
+
* preload), measures the sidebar's intrinsic inline (width) extent and sends it
|
|
5
|
+
* to the main process. Main pushes the value back to the main-window renderer as
|
|
6
|
+
* `HostSidebarWidthChanged`, which resizes the sidebar placeholder, re-measures
|
|
7
|
+
* the forward anchor, and re-overlays this WCV — closing the dynamic-width loop
|
|
8
|
+
* (see `@dimina-kit/view-anchor` `createSizeAdvertiser`).
|
|
9
|
+
*/
|
|
10
|
+
import { ipcRenderer } from 'electron';
|
|
11
|
+
import { createSizeAdvertiser } from '@dimina-kit/view-anchor';
|
|
12
|
+
import { ViewChannel } from '../../shared/ipc-channels-overlays.js';
|
|
13
|
+
import { whenSlotRootReady } from './wait-for-slot-root.js';
|
|
14
|
+
/**
|
|
15
|
+
* Attach the advertiser to the sidebar content's shrink-to-fit root
|
|
16
|
+
* (`[data-host-sidebar-root]`), waiting for it if necessary — the root may be
|
|
17
|
+
* mounted asynchronously by a framework (e.g. React) rather than present in
|
|
18
|
+
* the initial HTML. That element MUST be shrink-to-fit on the inline axis —
|
|
19
|
+
* its width must reflect the content, not the host-applied view width, or the
|
|
20
|
+
* cross-process loop never converges (`createSizeAdvertiser`'s footgun).
|
|
21
|
+
*/
|
|
22
|
+
export function installHostSidebarAdvertiserWhenReady() {
|
|
23
|
+
whenSlotRootReady('[data-host-sidebar-root]', '[host-sidebar-advertiser] no `[data-host-sidebar-root]` element found — ' +
|
|
24
|
+
'not advertising a width yet. The sidebar content must wrap itself in a ' +
|
|
25
|
+
'shrink-to-fit `[data-host-sidebar-root]` element so its inline size is ' +
|
|
26
|
+
'the content width, not the host-given view size.', (root) => {
|
|
27
|
+
createSizeAdvertiser(root, {
|
|
28
|
+
axis: 'inline',
|
|
29
|
+
publish: (size) => {
|
|
30
|
+
ipcRenderer.send(ViewChannel.HostSidebarAdvertiseWidth, size);
|
|
31
|
+
},
|
|
32
|
+
});
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=host-sidebar-advertiser.js.map
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Preload side of the host-sidebar gated narrow channel.
|
|
3
|
+
*
|
|
4
|
+
* ── PUBLIC SURFACE EVOLUTION RULE ───────────────────────────────────────────
|
|
5
|
+
* `window.diminaHostSidebar` is a published page-facing API, typed by the
|
|
6
|
+
* exported `DiminaHostSidebarPageBridge` (src/main/runtime/miniapp-runtime.ts)
|
|
7
|
+
* — arbitrary host sidebar pages compile against it. Members may only be
|
|
8
|
+
* ADDED, never changed: any semantic change to an existing member (signature,
|
|
9
|
+
* return shape, queueing/throw behavior) ships under a NEW name instead.
|
|
10
|
+
* Exception: security fixes / compliance corrections may change existing
|
|
11
|
+
* member semantics, and MUST be called out in the release's version notes.
|
|
12
|
+
* Keep the exported bridge type in lockstep with what is exposed here.
|
|
13
|
+
*
|
|
14
|
+
* Receives the per-load MessagePort main transfers on `did-finish-load`
|
|
15
|
+
* (`ViewChannel.HostSidebarPort`, `event.ports[0]`) and bridges it to the page
|
|
16
|
+
* as `window.diminaHostSidebar` — EXACTLY `{ send, onMessage }`, functions
|
|
17
|
+
* only. The raw MessagePort never crosses into the main world: the page only
|
|
18
|
+
* ever talks through these two functions, so the `{ channel, payload }`
|
|
19
|
+
* envelope stays the single waist (same posture as the main side's
|
|
20
|
+
* host-sidebar-port-channel.ts).
|
|
21
|
+
*
|
|
22
|
+
* Ordering reality this module absorbs — identical to the toolbar's port
|
|
23
|
+
* bridge (see host-toolbar-port.ts for the full rationale): pre-handshake
|
|
24
|
+
* sends queue and bounded-drop, handlers register before the port exists and
|
|
25
|
+
* re-attach across same-load re-handshakes, inbound dispatch drops malformed
|
|
26
|
+
* envelopes without throwing.
|
|
27
|
+
*
|
|
28
|
+
* Shared implementation: see `host-slot-port-bridge.ts` (the toolbar/sidebar/
|
|
29
|
+
* dialog port bridges are otherwise identical; only the constants below
|
|
30
|
+
* differ).
|
|
31
|
+
*/
|
|
32
|
+
/**
|
|
33
|
+
* Cap on pre-handshake queued sends. Same rationale and value as
|
|
34
|
+
* `HOST_TOOLBAR_PENDING_LIMIT` — overflow drops the NEWEST envelope, one
|
|
35
|
+
* console.warn per load.
|
|
36
|
+
*/
|
|
37
|
+
export declare const HOST_SIDEBAR_PENDING_LIMIT = 128;
|
|
38
|
+
/**
|
|
39
|
+
* Subscribe the handshake channel and expose the page bridge. Call ONLY from
|
|
40
|
+
* a passing sidebar-runtime guard (`activateHostSidebarRuntime`) — a failing
|
|
41
|
+
* guard must leave zero footprint (no bridge key, no IPC listener).
|
|
42
|
+
*/
|
|
43
|
+
export declare function installHostSidebarPortBridge(): void;
|
|
44
|
+
//# sourceMappingURL=host-sidebar-port.d.ts.map
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Preload side of the host-sidebar gated narrow channel.
|
|
3
|
+
*
|
|
4
|
+
* ── PUBLIC SURFACE EVOLUTION RULE ───────────────────────────────────────────
|
|
5
|
+
* `window.diminaHostSidebar` is a published page-facing API, typed by the
|
|
6
|
+
* exported `DiminaHostSidebarPageBridge` (src/main/runtime/miniapp-runtime.ts)
|
|
7
|
+
* — arbitrary host sidebar pages compile against it. Members may only be
|
|
8
|
+
* ADDED, never changed: any semantic change to an existing member (signature,
|
|
9
|
+
* return shape, queueing/throw behavior) ships under a NEW name instead.
|
|
10
|
+
* Exception: security fixes / compliance corrections may change existing
|
|
11
|
+
* member semantics, and MUST be called out in the release's version notes.
|
|
12
|
+
* Keep the exported bridge type in lockstep with what is exposed here.
|
|
13
|
+
*
|
|
14
|
+
* Receives the per-load MessagePort main transfers on `did-finish-load`
|
|
15
|
+
* (`ViewChannel.HostSidebarPort`, `event.ports[0]`) and bridges it to the page
|
|
16
|
+
* as `window.diminaHostSidebar` — EXACTLY `{ send, onMessage }`, functions
|
|
17
|
+
* only. The raw MessagePort never crosses into the main world: the page only
|
|
18
|
+
* ever talks through these two functions, so the `{ channel, payload }`
|
|
19
|
+
* envelope stays the single waist (same posture as the main side's
|
|
20
|
+
* host-sidebar-port-channel.ts).
|
|
21
|
+
*
|
|
22
|
+
* Ordering reality this module absorbs — identical to the toolbar's port
|
|
23
|
+
* bridge (see host-toolbar-port.ts for the full rationale): pre-handshake
|
|
24
|
+
* sends queue and bounded-drop, handlers register before the port exists and
|
|
25
|
+
* re-attach across same-load re-handshakes, inbound dispatch drops malformed
|
|
26
|
+
* envelopes without throwing.
|
|
27
|
+
*
|
|
28
|
+
* Shared implementation: see `host-slot-port-bridge.ts` (the toolbar/sidebar/
|
|
29
|
+
* dialog port bridges are otherwise identical; only the constants below
|
|
30
|
+
* differ).
|
|
31
|
+
*/
|
|
32
|
+
import { ViewChannel } from '../../shared/ipc-channels-overlays.js';
|
|
33
|
+
import { createHostSlotPortBridge } from './host-slot-port-bridge.js';
|
|
34
|
+
/**
|
|
35
|
+
* Cap on pre-handshake queued sends. Same rationale and value as
|
|
36
|
+
* `HOST_TOOLBAR_PENDING_LIMIT` — overflow drops the NEWEST envelope, one
|
|
37
|
+
* console.warn per load.
|
|
38
|
+
*/
|
|
39
|
+
export const HOST_SIDEBAR_PENDING_LIMIT = 128;
|
|
40
|
+
/**
|
|
41
|
+
* Subscribe the handshake channel and expose the page bridge. Call ONLY from
|
|
42
|
+
* a passing sidebar-runtime guard (`activateHostSidebarRuntime`) — a failing
|
|
43
|
+
* guard must leave zero footprint (no bridge key, no IPC listener).
|
|
44
|
+
*/
|
|
45
|
+
export function installHostSidebarPortBridge() {
|
|
46
|
+
createHostSlotPortBridge({
|
|
47
|
+
bridgeKey: 'diminaHostSidebar',
|
|
48
|
+
channel: ViewChannel.HostSidebarPort,
|
|
49
|
+
pendingLimit: HOST_SIDEBAR_PENDING_LIMIT,
|
|
50
|
+
label: 'host-sidebar',
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=host-sidebar-port.js.map
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Session-resident host-sidebar framework runtime: GUARD + ACTIVATION.
|
|
3
|
+
*
|
|
4
|
+
* Same registration and guard shape as host-toolbar-runtime.ts (see that
|
|
5
|
+
* module for the full rationale): registered once per process on
|
|
6
|
+
* `session.defaultSession`, so it runs in EVERY defaultSession renderer;
|
|
7
|
+
* this guard keeps it inert everywhere except the host-sidebar WCV's main
|
|
8
|
+
* frame, identified by `HOST_SIDEBAR_RUNTIME_MARKER` in that process' argv.
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Pure guard predicate: should the sidebar runtime activate in a renderer with
|
|
12
|
+
* this `argv` / `isMainFrame`? True only for the MAIN frame of a process whose
|
|
13
|
+
* argv carries the `'--dimina-host-sidebar'` marker.
|
|
14
|
+
*/
|
|
15
|
+
export declare function shouldActivateHostSidebarRuntime(argv: readonly string[], isMainFrame: boolean): boolean;
|
|
16
|
+
/**
|
|
17
|
+
* Run the guard; only when it passes, install the width advertiser
|
|
18
|
+
* (`installHostSidebarAdvertiserWhenReady`) and the narrow-channel page
|
|
19
|
+
* bridge (`installHostSidebarPortBridge` — `window.diminaHostSidebar` +
|
|
20
|
+
* the MessagePort handshake listener). Returns whether the runtime
|
|
21
|
+
* activated. A failed guard installs NOTHING (zero footprint in non-sidebar
|
|
22
|
+
* windows and subframes: no advertiser, no bridge key, no IPC listener).
|
|
23
|
+
*/
|
|
24
|
+
export declare function activateHostSidebarRuntime(env: {
|
|
25
|
+
argv: readonly string[];
|
|
26
|
+
isMainFrame: boolean;
|
|
27
|
+
}): boolean;
|
|
28
|
+
//# sourceMappingURL=host-sidebar-runtime.d.ts.map
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Session-resident host-sidebar framework runtime: GUARD + ACTIVATION.
|
|
3
|
+
*
|
|
4
|
+
* Same registration and guard shape as host-toolbar-runtime.ts (see that
|
|
5
|
+
* module for the full rationale): registered once per process on
|
|
6
|
+
* `session.defaultSession`, so it runs in EVERY defaultSession renderer;
|
|
7
|
+
* this guard keeps it inert everywhere except the host-sidebar WCV's main
|
|
8
|
+
* frame, identified by `HOST_SIDEBAR_RUNTIME_MARKER` in that process' argv.
|
|
9
|
+
*/
|
|
10
|
+
import { HOST_SIDEBAR_RUNTIME_MARKER } from '../../shared/constants.js';
|
|
11
|
+
import { installHostSidebarAdvertiserWhenReady } from './host-sidebar-advertiser.js';
|
|
12
|
+
import { installHostSidebarPortBridge } from './host-sidebar-port.js';
|
|
13
|
+
/**
|
|
14
|
+
* Pure guard predicate: should the sidebar runtime activate in a renderer with
|
|
15
|
+
* this `argv` / `isMainFrame`? True only for the MAIN frame of a process whose
|
|
16
|
+
* argv carries the `'--dimina-host-sidebar'` marker.
|
|
17
|
+
*/
|
|
18
|
+
export function shouldActivateHostSidebarRuntime(argv, isMainFrame) {
|
|
19
|
+
return isMainFrame && argv.includes(HOST_SIDEBAR_RUNTIME_MARKER);
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Run the guard; only when it passes, install the width advertiser
|
|
23
|
+
* (`installHostSidebarAdvertiserWhenReady`) and the narrow-channel page
|
|
24
|
+
* bridge (`installHostSidebarPortBridge` — `window.diminaHostSidebar` +
|
|
25
|
+
* the MessagePort handshake listener). Returns whether the runtime
|
|
26
|
+
* activated. A failed guard installs NOTHING (zero footprint in non-sidebar
|
|
27
|
+
* windows and subframes: no advertiser, no bridge key, no IPC listener).
|
|
28
|
+
*/
|
|
29
|
+
export function activateHostSidebarRuntime(env) {
|
|
30
|
+
if (!shouldActivateHostSidebarRuntime(env.argv, env.isMainFrame))
|
|
31
|
+
return false;
|
|
32
|
+
installHostSidebarAdvertiserWhenReady();
|
|
33
|
+
installHostSidebarPortBridge();
|
|
34
|
+
return true;
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=host-sidebar-runtime.js.map
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export interface HostSlotPortBridgeOptions {
|
|
2
|
+
/** contextBridge key the page-facing API is exposed under, e.g. 'diminaHostToolbar'. */
|
|
3
|
+
bridgeKey: string;
|
|
4
|
+
/** main → renderer per-load handshake channel, e.g. ViewChannel.HostToolbarPort. */
|
|
5
|
+
channel: string;
|
|
6
|
+
/** Cap on pre-handshake queued sends; overflow drops the NEWEST envelope. */
|
|
7
|
+
pendingLimit: number;
|
|
8
|
+
/** Slot label used in the overflow console.warn, e.g. 'host-toolbar'. */
|
|
9
|
+
label: string;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Subscribe the handshake channel and expose the page bridge. Call ONLY from
|
|
13
|
+
* a passing per-slot runtime guard — a failing guard must leave zero
|
|
14
|
+
* footprint (no bridge key, no IPC listener), so this factory itself does no
|
|
15
|
+
* guard checking; the caller decides whether to call it at all.
|
|
16
|
+
*/
|
|
17
|
+
export declare function createHostSlotPortBridge(opts: HostSlotPortBridgeOptions): void;
|
|
18
|
+
//# sourceMappingURL=host-slot-port-bridge.d.ts.map
|