@creezio/electron-shell 0.22.0
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 +351 -0
- package/dist/.creezio-src-hash.json +4 -0
- package/dist/admin-window.d.ts +18 -0
- package/dist/admin-window.d.ts.map +1 -0
- package/dist/admin-window.js +75 -0
- package/dist/admin-window.js.map +1 -0
- package/dist/boot.d.ts +36 -0
- package/dist/boot.d.ts.map +1 -0
- package/dist/boot.js +99 -0
- package/dist/boot.js.map +1 -0
- package/dist/desktop/assistant-chrome.d.ts +42 -0
- package/dist/desktop/assistant-chrome.d.ts.map +1 -0
- package/dist/desktop/assistant-chrome.js +178 -0
- package/dist/desktop/assistant-chrome.js.map +1 -0
- package/dist/desktop/brand-desktop-runtime.d.ts +72 -0
- package/dist/desktop/brand-desktop-runtime.d.ts.map +1 -0
- package/dist/desktop/brand-desktop-runtime.js +3926 -0
- package/dist/desktop/brand-desktop-runtime.js.map +1 -0
- package/dist/desktop/desktop-session.d.ts +85 -0
- package/dist/desktop/desktop-session.d.ts.map +1 -0
- package/dist/desktop/desktop-session.js +163 -0
- package/dist/desktop/desktop-session.js.map +1 -0
- package/dist/desktop/error-page-html.d.ts +16 -0
- package/dist/desktop/error-page-html.d.ts.map +1 -0
- package/dist/desktop/error-page-html.js +88 -0
- package/dist/desktop/error-page-html.js.map +1 -0
- package/dist/desktop/legacy-brand-compat.d.ts +45 -0
- package/dist/desktop/legacy-brand-compat.d.ts.map +1 -0
- package/dist/desktop/legacy-brand-compat.js +49 -0
- package/dist/desktop/legacy-brand-compat.js.map +1 -0
- package/dist/desktop/oauth-loopback.d.ts +28 -0
- package/dist/desktop/oauth-loopback.d.ts.map +1 -0
- package/dist/desktop/oauth-loopback.js +137 -0
- package/dist/desktop/oauth-loopback.js.map +1 -0
- package/dist/desktop/profile-picker-html.d.ts +27 -0
- package/dist/desktop/profile-picker-html.d.ts.map +1 -0
- package/dist/desktop/profile-picker-html.js +213 -0
- package/dist/desktop/profile-picker-html.js.map +1 -0
- package/dist/desktop/remote-offline-html.d.ts +14 -0
- package/dist/desktop/remote-offline-html.d.ts.map +1 -0
- package/dist/desktop/remote-offline-html.js +88 -0
- package/dist/desktop/remote-offline-html.js.map +1 -0
- package/dist/factory-reset-runtime.d.ts +11 -0
- package/dist/factory-reset-runtime.d.ts.map +1 -0
- package/dist/factory-reset-runtime.js +77 -0
- package/dist/factory-reset-runtime.js.map +1 -0
- package/dist/host/ai-workspace/actions.d.ts +12 -0
- package/dist/host/ai-workspace/actions.d.ts.map +1 -0
- package/dist/host/ai-workspace/actions.js +243 -0
- package/dist/host/ai-workspace/actions.js.map +1 -0
- package/dist/host/ai-workspace/bindings.d.ts +51 -0
- package/dist/host/ai-workspace/bindings.d.ts.map +1 -0
- package/dist/host/ai-workspace/bindings.js +40 -0
- package/dist/host/ai-workspace/bindings.js.map +1 -0
- package/dist/host/ai-workspace/index.d.ts +11 -0
- package/dist/host/ai-workspace/index.d.ts.map +1 -0
- package/dist/host/ai-workspace/index.js +6 -0
- package/dist/host/ai-workspace/index.js.map +1 -0
- package/dist/host/ai-workspace/manager.d.ts +128 -0
- package/dist/host/ai-workspace/manager.d.ts.map +1 -0
- package/dist/host/ai-workspace/manager.js +519 -0
- package/dist/host/ai-workspace/manager.js.map +1 -0
- package/dist/host/ai-workspace/profile-window.d.ts +37 -0
- package/dist/host/ai-workspace/profile-window.d.ts.map +1 -0
- package/dist/host/ai-workspace/profile-window.js +121 -0
- package/dist/host/ai-workspace/profile-window.js.map +1 -0
- package/dist/host/ai-workspace/screencast.d.ts +56 -0
- package/dist/host/ai-workspace/screencast.d.ts.map +1 -0
- package/dist/host/ai-workspace/screencast.js +245 -0
- package/dist/host/ai-workspace/screencast.js.map +1 -0
- package/dist/host/ai-workspace/types.d.ts +40 -0
- package/dist/host/ai-workspace/types.d.ts.map +1 -0
- package/dist/host/ai-workspace/types.js +6 -0
- package/dist/host/ai-workspace/types.js.map +1 -0
- package/dist/host/brand-host-runtime.d.ts +107 -0
- package/dist/host/brand-host-runtime.d.ts.map +1 -0
- package/dist/host/brand-host-runtime.js +274 -0
- package/dist/host/brand-host-runtime.js.map +1 -0
- package/dist/host/brand-host-stack.d.ts +117 -0
- package/dist/host/brand-host-stack.d.ts.map +1 -0
- package/dist/host/brand-host-stack.js +253 -0
- package/dist/host/brand-host-stack.js.map +1 -0
- package/dist/host/brand-kernel-http.d.ts +34 -0
- package/dist/host/brand-kernel-http.d.ts.map +1 -0
- package/dist/host/brand-kernel-http.js +95 -0
- package/dist/host/brand-kernel-http.js.map +1 -0
- package/dist/host/brand-meili-boot.d.ts +67 -0
- package/dist/host/brand-meili-boot.d.ts.map +1 -0
- package/dist/host/brand-meili-boot.js +100 -0
- package/dist/host/brand-meili-boot.js.map +1 -0
- package/dist/host/bridge-client.d.ts +54 -0
- package/dist/host/bridge-client.d.ts.map +1 -0
- package/dist/host/bridge-client.js +187 -0
- package/dist/host/bridge-client.js.map +1 -0
- package/dist/host/browser-tabs/browser-tab-driver.d.ts +45 -0
- package/dist/host/browser-tabs/browser-tab-driver.d.ts.map +1 -0
- package/dist/host/browser-tabs/browser-tab-driver.js +154 -0
- package/dist/host/browser-tabs/browser-tab-driver.js.map +1 -0
- package/dist/host/browser-tabs/browser-tab-manager.d.ts +208 -0
- package/dist/host/browser-tabs/browser-tab-manager.d.ts.map +1 -0
- package/dist/host/browser-tabs/browser-tab-manager.js +758 -0
- package/dist/host/browser-tabs/browser-tab-manager.js.map +1 -0
- package/dist/host/browser-tabs/browser-tab-preload-path.d.ts +2 -0
- package/dist/host/browser-tabs/browser-tab-preload-path.d.ts.map +1 -0
- package/dist/host/browser-tabs/browser-tab-preload-path.js +29 -0
- package/dist/host/browser-tabs/browser-tab-preload-path.js.map +1 -0
- package/dist/host/browser-tabs/browser-tab-preload.d.ts +11 -0
- package/dist/host/browser-tabs/browser-tab-preload.d.ts.map +1 -0
- package/dist/host/browser-tabs/browser-tab-preload.js +11 -0
- package/dist/host/browser-tabs/browser-tab-preload.js.map +1 -0
- package/dist/host/browser-tabs/chrome-ua.d.ts +19 -0
- package/dist/host/browser-tabs/chrome-ua.d.ts.map +1 -0
- package/dist/host/browser-tabs/chrome-ua.js +37 -0
- package/dist/host/browser-tabs/chrome-ua.js.map +1 -0
- package/dist/host/browser-tabs/fake-cursor-inject.d.ts +7 -0
- package/dist/host/browser-tabs/fake-cursor-inject.d.ts.map +1 -0
- package/dist/host/browser-tabs/fake-cursor-inject.js +7 -0
- package/dist/host/browser-tabs/fake-cursor-inject.js.map +1 -0
- package/dist/host/browser-tabs/index.d.ts +13 -0
- package/dist/host/browser-tabs/index.d.ts.map +1 -0
- package/dist/host/browser-tabs/index.js +13 -0
- package/dist/host/browser-tabs/index.js.map +1 -0
- package/dist/host/browser-tabs/tab-load-state.d.ts +56 -0
- package/dist/host/browser-tabs/tab-load-state.d.ts.map +1 -0
- package/dist/host/browser-tabs/tab-load-state.js +56 -0
- package/dist/host/browser-tabs/tab-load-state.js.map +1 -0
- package/dist/host/browser-tabs/tab-url.d.ts +10 -0
- package/dist/host/browser-tabs/tab-url.d.ts.map +1 -0
- package/dist/host/browser-tabs/tab-url.js +57 -0
- package/dist/host/browser-tabs/tab-url.js.map +1 -0
- package/dist/host/context.d.ts +70 -0
- package/dist/host/context.d.ts.map +1 -0
- package/dist/host/context.js +16 -0
- package/dist/host/context.js.map +1 -0
- package/dist/host/contracts.d.ts +39 -0
- package/dist/host/contracts.d.ts.map +1 -0
- package/dist/host/contracts.js +26 -0
- package/dist/host/contracts.js.map +1 -0
- package/dist/host/crash-reporter.d.ts +65 -0
- package/dist/host/crash-reporter.d.ts.map +1 -0
- package/dist/host/crash-reporter.js +371 -0
- package/dist/host/crash-reporter.js.map +1 -0
- package/dist/host/ensure-kit-binaries.d.ts +17 -0
- package/dist/host/ensure-kit-binaries.d.ts.map +1 -0
- package/dist/host/ensure-kit-binaries.js +205 -0
- package/dist/host/ensure-kit-binaries.js.map +1 -0
- package/dist/host/feature-off-host.d.ts +130 -0
- package/dist/host/feature-off-host.d.ts.map +1 -0
- package/dist/host/feature-off-host.js +138 -0
- package/dist/host/feature-off-host.js.map +1 -0
- package/dist/host/hermes/crm-key.d.ts +49 -0
- package/dist/host/hermes/crm-key.d.ts.map +1 -0
- package/dist/host/hermes/crm-key.js +126 -0
- package/dist/host/hermes/crm-key.js.map +1 -0
- package/dist/host/hermes/ensure-crm-key-db.d.ts +7 -0
- package/dist/host/hermes/ensure-crm-key-db.d.ts.map +1 -0
- package/dist/host/hermes/ensure-crm-key-db.js +84 -0
- package/dist/host/hermes/ensure-crm-key-db.js.map +1 -0
- package/dist/host/hermes/launcher.d.ts +98 -0
- package/dist/host/hermes/launcher.d.ts.map +1 -0
- package/dist/host/hermes/launcher.js +972 -0
- package/dist/host/hermes/launcher.js.map +1 -0
- package/dist/host/hermes/runtime-bootstrap.d.ts +172 -0
- package/dist/host/hermes/runtime-bootstrap.d.ts.map +1 -0
- package/dist/host/hermes/runtime-bootstrap.js +789 -0
- package/dist/host/hermes/runtime-bootstrap.js.map +1 -0
- package/dist/host/hermes/skills-seed.d.ts +40 -0
- package/dist/host/hermes/skills-seed.d.ts.map +1 -0
- package/dist/host/hermes/skills-seed.js +100 -0
- package/dist/host/hermes/skills-seed.js.map +1 -0
- package/dist/host/host-stack.d.ts +35 -0
- package/dist/host/host-stack.d.ts.map +1 -0
- package/dist/host/host-stack.js +38 -0
- package/dist/host/host-stack.js.map +1 -0
- package/dist/host/kit-os-resources.d.ts +6 -0
- package/dist/host/kit-os-resources.d.ts.map +1 -0
- package/dist/host/kit-os-resources.js +88 -0
- package/dist/host/kit-os-resources.js.map +1 -0
- package/dist/host/load-electron.d.ts +2 -0
- package/dist/host/load-electron.d.ts.map +1 -0
- package/dist/host/load-electron.js +44 -0
- package/dist/host/load-electron.js.map +1 -0
- package/dist/host/local-config.d.ts +120 -0
- package/dist/host/local-config.d.ts.map +1 -0
- package/dist/host/local-config.js +633 -0
- package/dist/host/local-config.js.map +1 -0
- package/dist/host/meili/browse.d.ts +58 -0
- package/dist/host/meili/browse.d.ts.map +1 -0
- package/dist/host/meili/browse.js +98 -0
- package/dist/host/meili/browse.js.map +1 -0
- package/dist/host/meili/coherence-db.d.ts +35 -0
- package/dist/host/meili/coherence-db.d.ts.map +1 -0
- package/dist/host/meili/coherence-db.js +129 -0
- package/dist/host/meili/coherence-db.js.map +1 -0
- package/dist/host/meili/coherence-query.d.ts +10 -0
- package/dist/host/meili/coherence-query.d.ts.map +1 -0
- package/dist/host/meili/coherence-query.js +23 -0
- package/dist/host/meili/coherence-query.js.map +1 -0
- package/dist/host/meili/coherence.d.ts +53 -0
- package/dist/host/meili/coherence.d.ts.map +1 -0
- package/dist/host/meili/coherence.js +148 -0
- package/dist/host/meili/coherence.js.map +1 -0
- package/dist/host/meili/feed.d.ts +82 -0
- package/dist/host/meili/feed.d.ts.map +1 -0
- package/dist/host/meili/feed.js +100 -0
- package/dist/host/meili/feed.js.map +1 -0
- package/dist/host/meili/generic-indexer.d.ts +34 -0
- package/dist/host/meili/generic-indexer.d.ts.map +1 -0
- package/dist/host/meili/generic-indexer.js +333 -0
- package/dist/host/meili/generic-indexer.js.map +1 -0
- package/dist/host/meili/index-schema.d.ts +64 -0
- package/dist/host/meili/index-schema.d.ts.map +1 -0
- package/dist/host/meili/index-schema.js +70 -0
- package/dist/host/meili/index-schema.js.map +1 -0
- package/dist/host/meili/index.d.ts +13 -0
- package/dist/host/meili/index.d.ts.map +1 -0
- package/dist/host/meili/index.js +8 -0
- package/dist/host/meili/index.js.map +1 -0
- package/dist/host/meili/indexer.d.ts +31 -0
- package/dist/host/meili/indexer.d.ts.map +1 -0
- package/dist/host/meili/indexer.js +49 -0
- package/dist/host/meili/indexer.js.map +1 -0
- package/dist/host/meili-launcher.d.ts +30 -0
- package/dist/host/meili-launcher.d.ts.map +1 -0
- package/dist/host/meili-launcher.js +115 -0
- package/dist/host/meili-launcher.js.map +1 -0
- package/dist/host/n8n/agent-isolation.d.ts +55 -0
- package/dist/host/n8n/agent-isolation.d.ts.map +1 -0
- package/dist/host/n8n/agent-isolation.js +158 -0
- package/dist/host/n8n/agent-isolation.js.map +1 -0
- package/dist/host/n8n/api-key.d.ts +67 -0
- package/dist/host/n8n/api-key.d.ts.map +1 -0
- package/dist/host/n8n/api-key.js +297 -0
- package/dist/host/n8n/api-key.js.map +1 -0
- package/dist/host/n8n/launcher.d.ts +126 -0
- package/dist/host/n8n/launcher.d.ts.map +1 -0
- package/dist/host/n8n/launcher.js +1170 -0
- package/dist/host/n8n/launcher.js.map +1 -0
- package/dist/host/n8n/runtime-bootstrap.d.ts +44 -0
- package/dist/host/n8n/runtime-bootstrap.d.ts.map +1 -0
- package/dist/host/n8n/runtime-bootstrap.js +230 -0
- package/dist/host/n8n/runtime-bootstrap.js.map +1 -0
- package/dist/host/node-runtime.d.ts +52 -0
- package/dist/host/node-runtime.d.ts.map +1 -0
- package/dist/host/node-runtime.js +257 -0
- package/dist/host/node-runtime.js.map +1 -0
- package/dist/host/npm-cli.d.ts +43 -0
- package/dist/host/npm-cli.d.ts.map +1 -0
- package/dist/host/npm-cli.js +213 -0
- package/dist/host/npm-cli.js.map +1 -0
- package/dist/host/plugins/accept-check.d.ts +19 -0
- package/dist/host/plugins/accept-check.d.ts.map +1 -0
- package/dist/host/plugins/accept-check.js +172 -0
- package/dist/host/plugins/accept-check.js.map +1 -0
- package/dist/host/plugins/brand-bindings.d.ts +103 -0
- package/dist/host/plugins/brand-bindings.d.ts.map +1 -0
- package/dist/host/plugins/brand-bindings.js +65 -0
- package/dist/host/plugins/brand-bindings.js.map +1 -0
- package/dist/host/plugins/control-adapters.d.ts +11 -0
- package/dist/host/plugins/control-adapters.d.ts.map +1 -0
- package/dist/host/plugins/control-adapters.js +83 -0
- package/dist/host/plugins/control-adapters.js.map +1 -0
- package/dist/host/plugins/control-extras.d.ts +61 -0
- package/dist/host/plugins/control-extras.d.ts.map +1 -0
- package/dist/host/plugins/control-extras.js +382 -0
- package/dist/host/plugins/control-extras.js.map +1 -0
- package/dist/host/plugins/control-plane.d.ts +42 -0
- package/dist/host/plugins/control-plane.d.ts.map +1 -0
- package/dist/host/plugins/control-plane.js +124 -0
- package/dist/host/plugins/control-plane.js.map +1 -0
- package/dist/host/plugins/control-token.d.ts +24 -0
- package/dist/host/plugins/control-token.d.ts.map +1 -0
- package/dist/host/plugins/control-token.js +77 -0
- package/dist/host/plugins/control-token.js.map +1 -0
- package/dist/host/plugins/crm-key.d.ts +25 -0
- package/dist/host/plugins/crm-key.d.ts.map +1 -0
- package/dist/host/plugins/crm-key.js +126 -0
- package/dist/host/plugins/crm-key.js.map +1 -0
- package/dist/host/plugins/data.d.ts +21 -0
- package/dist/host/plugins/data.d.ts.map +1 -0
- package/dist/host/plugins/data.js +100 -0
- package/dist/host/plugins/data.js.map +1 -0
- package/dist/host/plugins/events.d.ts +6 -0
- package/dist/host/plugins/events.d.ts.map +1 -0
- package/dist/host/plugins/events.js +6 -0
- package/dist/host/plugins/events.js.map +1 -0
- package/dist/host/plugins/execution-grant.d.ts +6 -0
- package/dist/host/plugins/execution-grant.d.ts.map +1 -0
- package/dist/host/plugins/execution-grant.js +6 -0
- package/dist/host/plugins/execution-grant.js.map +1 -0
- package/dist/host/plugins/git.d.ts +56 -0
- package/dist/host/plugins/git.d.ts.map +1 -0
- package/dist/host/plugins/git.js +357 -0
- package/dist/host/plugins/git.js.map +1 -0
- package/dist/host/plugins/host.d.ts +68 -0
- package/dist/host/plugins/host.d.ts.map +1 -0
- package/dist/host/plugins/host.js +276 -0
- package/dist/host/plugins/host.js.map +1 -0
- package/dist/host/plugins/launcher.d.ts +146 -0
- package/dist/host/plugins/launcher.d.ts.map +1 -0
- package/dist/host/plugins/launcher.js +489 -0
- package/dist/host/plugins/launcher.js.map +1 -0
- package/dist/host/plugins/runtime.d.ts +28 -0
- package/dist/host/plugins/runtime.d.ts.map +1 -0
- package/dist/host/plugins/runtime.js +430 -0
- package/dist/host/plugins/runtime.js.map +1 -0
- package/dist/host/plugins/test-runner.d.ts +15 -0
- package/dist/host/plugins/test-runner.d.ts.map +1 -0
- package/dist/host/plugins/test-runner.js +106 -0
- package/dist/host/plugins/test-runner.js.map +1 -0
- package/dist/host/safe-storage.d.ts +21 -0
- package/dist/host/safe-storage.d.ts.map +1 -0
- package/dist/host/safe-storage.js +55 -0
- package/dist/host/safe-storage.js.map +1 -0
- package/dist/host/sandbox/embed-sandbox.d.ts +133 -0
- package/dist/host/sandbox/embed-sandbox.d.ts.map +1 -0
- package/dist/host/sandbox/embed-sandbox.js +378 -0
- package/dist/host/sandbox/embed-sandbox.js.map +1 -0
- package/dist/host/sandbox/os-sandbox.d.ts +41 -0
- package/dist/host/sandbox/os-sandbox.d.ts.map +1 -0
- package/dist/host/sandbox/os-sandbox.js +98 -0
- package/dist/host/sandbox/os-sandbox.js.map +1 -0
- package/dist/host/server-env.d.ts +50 -0
- package/dist/host/server-env.d.ts.map +1 -0
- package/dist/host/server-env.js +64 -0
- package/dist/host/server-env.js.map +1 -0
- package/dist/host/server-launcher.d.ts +49 -0
- package/dist/host/server-launcher.d.ts.map +1 -0
- package/dist/host/server-launcher.js +43 -0
- package/dist/host/server-launcher.js.map +1 -0
- package/dist/host/tunnel/cloudflared-respawn.d.ts +58 -0
- package/dist/host/tunnel/cloudflared-respawn.d.ts.map +1 -0
- package/dist/host/tunnel/cloudflared-respawn.js +73 -0
- package/dist/host/tunnel/cloudflared-respawn.js.map +1 -0
- package/dist/host/tunnel/tunnel.d.ts +72 -0
- package/dist/host/tunnel/tunnel.d.ts.map +1 -0
- package/dist/host/tunnel/tunnel.js +462 -0
- package/dist/host/tunnel/tunnel.js.map +1 -0
- package/dist/host/web-telemetry.d.ts +16 -0
- package/dist/host/web-telemetry.d.ts.map +1 -0
- package/dist/host/web-telemetry.js +97 -0
- package/dist/host/web-telemetry.js.map +1 -0
- package/dist/index.d.ts +198 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +102 -0
- package/dist/index.js.map +1 -0
- package/dist/logger.d.ts +44 -0
- package/dist/logger.d.ts.map +1 -0
- package/dist/logger.js +252 -0
- package/dist/logger.js.map +1 -0
- package/dist/main-facade.d.ts +51 -0
- package/dist/main-facade.d.ts.map +1 -0
- package/dist/main-facade.js +96 -0
- package/dist/main-facade.js.map +1 -0
- package/dist/meili.d.ts +19 -0
- package/dist/meili.d.ts.map +1 -0
- package/dist/meili.js +14 -0
- package/dist/meili.js.map +1 -0
- package/dist/splash-ui.d.ts +69 -0
- package/dist/splash-ui.d.ts.map +1 -0
- package/dist/splash-ui.js +431 -0
- package/dist/splash-ui.js.map +1 -0
- package/dist/tray.d.ts +44 -0
- package/dist/tray.d.ts.map +1 -0
- package/dist/tray.js +173 -0
- package/dist/tray.js.map +1 -0
- package/dist/updater.d.ts +36 -0
- package/dist/updater.d.ts.map +1 -0
- package/dist/updater.js +257 -0
- package/dist/updater.js.map +1 -0
- package/dist/window-chrome.d.ts +12 -0
- package/dist/window-chrome.d.ts.map +1 -0
- package/dist/window-chrome.js +93 -0
- package/dist/window-chrome.js.map +1 -0
- package/dist-cjs/admin-window.js +116 -0
- package/dist-cjs/admin-window.js.map +1 -0
- package/dist-cjs/boot.js +139 -0
- package/dist-cjs/boot.js.map +1 -0
- package/dist-cjs/desktop/assistant-chrome.js +184 -0
- package/dist-cjs/desktop/assistant-chrome.js.map +1 -0
- package/dist-cjs/desktop/brand-desktop-runtime.js +3932 -0
- package/dist-cjs/desktop/brand-desktop-runtime.js.map +1 -0
- package/dist-cjs/desktop/desktop-session.js +171 -0
- package/dist-cjs/desktop/desktop-session.js.map +1 -0
- package/dist-cjs/desktop/error-page-html.js +92 -0
- package/dist-cjs/desktop/error-page-html.js.map +1 -0
- package/dist-cjs/desktop/legacy-brand-compat.js +56 -0
- package/dist-cjs/desktop/legacy-brand-compat.js.map +1 -0
- package/dist-cjs/desktop/oauth-loopback.js +144 -0
- package/dist-cjs/desktop/oauth-loopback.js.map +1 -0
- package/dist-cjs/desktop/profile-picker-html.js +216 -0
- package/dist-cjs/desktop/profile-picker-html.js.map +1 -0
- package/dist-cjs/desktop/remote-offline-html.js +91 -0
- package/dist-cjs/desktop/remote-offline-html.js.map +1 -0
- package/dist-cjs/factory-reset-runtime.js +117 -0
- package/dist-cjs/factory-reset-runtime.js.map +1 -0
- package/dist-cjs/host/ai-workspace/actions.js +247 -0
- package/dist-cjs/host/ai-workspace/actions.js.map +1 -0
- package/dist-cjs/host/ai-workspace/bindings.js +49 -0
- package/dist-cjs/host/ai-workspace/bindings.js.map +1 -0
- package/dist-cjs/host/ai-workspace/index.js +21 -0
- package/dist-cjs/host/ai-workspace/index.js.map +1 -0
- package/dist-cjs/host/ai-workspace/manager.js +528 -0
- package/dist-cjs/host/ai-workspace/manager.js.map +1 -0
- package/dist-cjs/host/ai-workspace/profile-window.js +125 -0
- package/dist-cjs/host/ai-workspace/profile-window.js.map +1 -0
- package/dist-cjs/host/ai-workspace/screencast.js +249 -0
- package/dist-cjs/host/ai-workspace/screencast.js.map +1 -0
- package/dist-cjs/host/ai-workspace/types.js +7 -0
- package/dist-cjs/host/ai-workspace/types.js.map +1 -0
- package/dist-cjs/host/brand-host-runtime.js +286 -0
- package/dist-cjs/host/brand-host-runtime.js.map +1 -0
- package/dist-cjs/host/brand-host-stack.js +259 -0
- package/dist-cjs/host/brand-host-stack.js.map +1 -0
- package/dist-cjs/host/brand-kernel-http.js +101 -0
- package/dist-cjs/host/brand-kernel-http.js.map +1 -0
- package/dist-cjs/host/brand-meili-boot.js +106 -0
- package/dist-cjs/host/brand-meili-boot.js.map +1 -0
- package/dist-cjs/host/bridge-client.js +191 -0
- package/dist-cjs/host/bridge-client.js.map +1 -0
- package/dist-cjs/host/browser-tabs/browser-tab-driver.js +158 -0
- package/dist-cjs/host/browser-tabs/browser-tab-driver.js.map +1 -0
- package/dist-cjs/host/browser-tabs/browser-tab-manager.js +766 -0
- package/dist-cjs/host/browser-tabs/browser-tab-manager.js.map +1 -0
- package/dist-cjs/host/browser-tabs/browser-tab-preload-path.js +35 -0
- package/dist-cjs/host/browser-tabs/browser-tab-preload-path.js.map +1 -0
- package/dist-cjs/host/browser-tabs/browser-tab-preload.js +12 -0
- package/dist-cjs/host/browser-tabs/browser-tab-preload.js.map +1 -0
- package/dist-cjs/host/browser-tabs/chrome-ua.js +41 -0
- package/dist-cjs/host/browser-tabs/chrome-ua.js.map +1 -0
- package/dist-cjs/host/browser-tabs/fake-cursor-inject.js +11 -0
- package/dist-cjs/host/browser-tabs/fake-cursor-inject.js.map +1 -0
- package/dist-cjs/host/browser-tabs/index.js +29 -0
- package/dist-cjs/host/browser-tabs/index.js.map +1 -0
- package/dist-cjs/host/browser-tabs/tab-load-state.js +59 -0
- package/dist-cjs/host/browser-tabs/tab-load-state.js.map +1 -0
- package/dist-cjs/host/browser-tabs/tab-url.js +62 -0
- package/dist-cjs/host/browser-tabs/tab-url.js.map +1 -0
- package/dist-cjs/host/context.js +20 -0
- package/dist-cjs/host/context.js.map +1 -0
- package/dist-cjs/host/contracts.js +32 -0
- package/dist-cjs/host/contracts.js.map +1 -0
- package/dist-cjs/host/crash-reporter.js +422 -0
- package/dist-cjs/host/crash-reporter.js.map +1 -0
- package/dist-cjs/host/ensure-kit-binaries.js +212 -0
- package/dist-cjs/host/ensure-kit-binaries.js.map +1 -0
- package/dist-cjs/host/feature-off-host.js +144 -0
- package/dist-cjs/host/feature-off-host.js.map +1 -0
- package/dist-cjs/host/hermes/crm-key.js +137 -0
- package/dist-cjs/host/hermes/crm-key.js.map +1 -0
- package/dist-cjs/host/hermes/ensure-crm-key-db.js +89 -0
- package/dist-cjs/host/hermes/ensure-crm-key-db.js.map +1 -0
- package/dist-cjs/host/hermes/launcher.js +981 -0
- package/dist-cjs/host/hermes/launcher.js.map +1 -0
- package/dist-cjs/host/hermes/runtime-bootstrap.js +853 -0
- package/dist-cjs/host/hermes/runtime-bootstrap.js.map +1 -0
- package/dist-cjs/host/hermes/skills-seed.js +110 -0
- package/dist-cjs/host/hermes/skills-seed.js.map +1 -0
- package/dist-cjs/host/host-stack.js +42 -0
- package/dist-cjs/host/host-stack.js.map +1 -0
- package/dist-cjs/host/kit-os-resources.js +96 -0
- package/dist-cjs/host/kit-os-resources.js.map +1 -0
- package/dist-cjs/host/load-electron.js +47 -0
- package/dist-cjs/host/load-electron.js.map +1 -0
- package/dist-cjs/host/local-config.js +640 -0
- package/dist-cjs/host/local-config.js.map +1 -0
- package/dist-cjs/host/meili/browse.js +103 -0
- package/dist-cjs/host/meili/browse.js.map +1 -0
- package/dist-cjs/host/meili/coherence-db.js +139 -0
- package/dist-cjs/host/meili/coherence-db.js.map +1 -0
- package/dist-cjs/host/meili/coherence-query.js +25 -0
- package/dist-cjs/host/meili/coherence-query.js.map +1 -0
- package/dist-cjs/host/meili/coherence.js +158 -0
- package/dist-cjs/host/meili/coherence.js.map +1 -0
- package/dist-cjs/host/meili/feed.js +108 -0
- package/dist-cjs/host/meili/feed.js.map +1 -0
- package/dist-cjs/host/meili/generic-indexer.js +340 -0
- package/dist-cjs/host/meili/generic-indexer.js.map +1 -0
- package/dist-cjs/host/meili/index-schema.js +79 -0
- package/dist-cjs/host/meili/index-schema.js.map +1 -0
- package/dist-cjs/host/meili/index.js +45 -0
- package/dist-cjs/host/meili/index.js.map +1 -0
- package/dist-cjs/host/meili/indexer.js +85 -0
- package/dist-cjs/host/meili/indexer.js.map +1 -0
- package/dist-cjs/host/meili-launcher.js +121 -0
- package/dist-cjs/host/meili-launcher.js.map +1 -0
- package/dist-cjs/host/n8n/agent-isolation.js +173 -0
- package/dist-cjs/host/n8n/agent-isolation.js.map +1 -0
- package/dist-cjs/host/n8n/api-key.js +314 -0
- package/dist-cjs/host/n8n/api-key.js.map +1 -0
- package/dist-cjs/host/n8n/launcher.js +1209 -0
- package/dist-cjs/host/n8n/launcher.js.map +1 -0
- package/dist-cjs/host/n8n/runtime-bootstrap.js +244 -0
- package/dist-cjs/host/n8n/runtime-bootstrap.js.map +1 -0
- package/dist-cjs/host/node-runtime.js +274 -0
- package/dist-cjs/host/node-runtime.js.map +1 -0
- package/dist-cjs/host/npm-cli.js +224 -0
- package/dist-cjs/host/npm-cli.js.map +1 -0
- package/dist-cjs/host/plugins/accept-check.js +176 -0
- package/dist-cjs/host/plugins/accept-check.js.map +1 -0
- package/dist-cjs/host/plugins/brand-bindings.js +78 -0
- package/dist-cjs/host/plugins/brand-bindings.js.map +1 -0
- package/dist-cjs/host/plugins/control-adapters.js +89 -0
- package/dist-cjs/host/plugins/control-adapters.js.map +1 -0
- package/dist-cjs/host/plugins/control-extras.js +397 -0
- package/dist-cjs/host/plugins/control-extras.js.map +1 -0
- package/dist-cjs/host/plugins/control-plane.js +130 -0
- package/dist-cjs/host/plugins/control-plane.js.map +1 -0
- package/dist-cjs/host/plugins/control-token.js +90 -0
- package/dist-cjs/host/plugins/control-token.js.map +1 -0
- package/dist-cjs/host/plugins/crm-key.js +135 -0
- package/dist-cjs/host/plugins/crm-key.js.map +1 -0
- package/dist-cjs/host/plugins/data.js +107 -0
- package/dist-cjs/host/plugins/data.js.map +1 -0
- package/dist-cjs/host/plugins/events.js +19 -0
- package/dist-cjs/host/plugins/events.js.map +1 -0
- package/dist-cjs/host/plugins/execution-grant.js +11 -0
- package/dist-cjs/host/plugins/execution-grant.js.map +1 -0
- package/dist-cjs/host/plugins/git.js +371 -0
- package/dist-cjs/host/plugins/git.js.map +1 -0
- package/dist-cjs/host/plugins/host.js +283 -0
- package/dist-cjs/host/plugins/host.js.map +1 -0
- package/dist-cjs/host/plugins/launcher.js +514 -0
- package/dist-cjs/host/plugins/launcher.js.map +1 -0
- package/dist-cjs/host/plugins/runtime.js +446 -0
- package/dist-cjs/host/plugins/runtime.js.map +1 -0
- package/dist-cjs/host/plugins/test-runner.js +112 -0
- package/dist-cjs/host/plugins/test-runner.js.map +1 -0
- package/dist-cjs/host/safe-storage.js +95 -0
- package/dist-cjs/host/safe-storage.js.map +1 -0
- package/dist-cjs/host/sandbox/embed-sandbox.js +396 -0
- package/dist-cjs/host/sandbox/embed-sandbox.js.map +1 -0
- package/dist-cjs/host/sandbox/os-sandbox.js +106 -0
- package/dist-cjs/host/sandbox/os-sandbox.js.map +1 -0
- package/dist-cjs/host/server-env.js +69 -0
- package/dist-cjs/host/server-env.js.map +1 -0
- package/dist-cjs/host/server-launcher.js +52 -0
- package/dist-cjs/host/server-launcher.js.map +1 -0
- package/dist-cjs/host/tunnel/cloudflared-respawn.js +80 -0
- package/dist-cjs/host/tunnel/cloudflared-respawn.js.map +1 -0
- package/dist-cjs/host/tunnel/tunnel.js +470 -0
- package/dist-cjs/host/tunnel/tunnel.js.map +1 -0
- package/dist-cjs/host/web-telemetry.js +100 -0
- package/dist-cjs/host/web-telemetry.js.map +1 -0
- package/dist-cjs/index.js +496 -0
- package/dist-cjs/index.js.map +1 -0
- package/dist-cjs/logger.js +269 -0
- package/dist-cjs/logger.js.map +1 -0
- package/dist-cjs/main-facade.js +139 -0
- package/dist-cjs/main-facade.js.map +1 -0
- package/dist-cjs/meili.js +51 -0
- package/dist-cjs/meili.js.map +1 -0
- package/dist-cjs/package.json +3 -0
- package/dist-cjs/splash-ui.js +447 -0
- package/dist-cjs/splash-ui.js.map +1 -0
- package/dist-cjs/tray.js +182 -0
- package/dist-cjs/tray.js.map +1 -0
- package/dist-cjs/updater.js +304 -0
- package/dist-cjs/updater.js.map +1 -0
- package/dist-cjs/window-chrome.js +98 -0
- package/dist-cjs/window-chrome.js.map +1 -0
- package/package.json +87 -0
- package/scripts/ensure-kit-binaries.mjs +73 -0
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Pont serveur local ↔ Electron pour le pilotage bot des onglets fournisseurs.
|
|
4
|
+
*
|
|
5
|
+
* - S'authentifie auprès du serveur Next local (POST /api/v1/auth/login avec
|
|
6
|
+
* les credentials bootstrappés) et conserve le cookie de session.
|
|
7
|
+
* - S'abonne au flux SSE GET /api/v1/assistant/supplier-actions/stream
|
|
8
|
+
* (nouvelle route — voir src/server/routes/assistant.ts dans le fork).
|
|
9
|
+
* - Pour chaque événement `supplier_action`, exécute l'action via
|
|
10
|
+
* supplier-driver puis POST le résultat sur la route EXISTANTE
|
|
11
|
+
* /api/v1/assistant/ui-actions/:id/result (résout la promesse serveur).
|
|
12
|
+
* - Reconnexion automatique avec backoff.
|
|
13
|
+
*/
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.BridgeClient = void 0;
|
|
16
|
+
class BridgeClient {
|
|
17
|
+
opts;
|
|
18
|
+
cookie = null;
|
|
19
|
+
stopped = false;
|
|
20
|
+
abort = null;
|
|
21
|
+
constructor(opts) {
|
|
22
|
+
this.opts = opts;
|
|
23
|
+
}
|
|
24
|
+
log(line) {
|
|
25
|
+
(this.opts.onLog || ((l) => console.log(`[bridge] ${l}`)))(line);
|
|
26
|
+
}
|
|
27
|
+
async start() {
|
|
28
|
+
this.stopped = false;
|
|
29
|
+
void this.loop();
|
|
30
|
+
}
|
|
31
|
+
stop() {
|
|
32
|
+
this.stopped = true;
|
|
33
|
+
this.abort?.abort();
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* POST JSON authentifié avec la session bridge (frames screencast…).
|
|
37
|
+
* Retourne le JSON de réponse, ou null en cas d'échec (l'appelant décide
|
|
38
|
+
* de retenter / s'arrêter — jamais de throw).
|
|
39
|
+
*/
|
|
40
|
+
async postJson(path, body) {
|
|
41
|
+
try {
|
|
42
|
+
if (this.cookie === null)
|
|
43
|
+
await this.login();
|
|
44
|
+
const res = await fetch(`${this.opts.baseUrl}${path}`, {
|
|
45
|
+
method: "POST",
|
|
46
|
+
headers: {
|
|
47
|
+
"Content-Type": "application/json",
|
|
48
|
+
...(this.cookie ? { Cookie: this.cookie } : {}),
|
|
49
|
+
},
|
|
50
|
+
body: JSON.stringify(body),
|
|
51
|
+
});
|
|
52
|
+
if (res.status === 401) {
|
|
53
|
+
this.cookie = null; // relogin au prochain appel
|
|
54
|
+
return null;
|
|
55
|
+
}
|
|
56
|
+
if (!res.ok)
|
|
57
|
+
return null;
|
|
58
|
+
return (await res.json().catch(() => ({})));
|
|
59
|
+
}
|
|
60
|
+
catch {
|
|
61
|
+
return null;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
async loop() {
|
|
65
|
+
let backoffMs = 1000;
|
|
66
|
+
while (!this.stopped) {
|
|
67
|
+
try {
|
|
68
|
+
if (!this.cookie)
|
|
69
|
+
await this.login();
|
|
70
|
+
await this.consumeStream();
|
|
71
|
+
backoffMs = 1000; // stream terminé proprement → retry rapide
|
|
72
|
+
}
|
|
73
|
+
catch (e) {
|
|
74
|
+
if (this.stopped)
|
|
75
|
+
return;
|
|
76
|
+
this.log(`connexion perdue (${e instanceof Error ? e.message : e}) — retry ${backoffMs}ms`);
|
|
77
|
+
}
|
|
78
|
+
await new Promise((r) => setTimeout(r, backoffMs));
|
|
79
|
+
backoffMs = Math.min(backoffMs * 2, 15000);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
async login() {
|
|
83
|
+
// Mode session : réutilise le cookie posé par le login UI (client remote).
|
|
84
|
+
if (this.opts.getSessionCookie) {
|
|
85
|
+
const cookie = await this.opts.getSessionCookie();
|
|
86
|
+
if (!cookie) {
|
|
87
|
+
throw new Error("session CRM absente — en attente du login utilisateur");
|
|
88
|
+
}
|
|
89
|
+
this.cookie = cookie;
|
|
90
|
+
this.log("session bridge reprise (cookie appView)");
|
|
91
|
+
return;
|
|
92
|
+
}
|
|
93
|
+
const res = await fetch(`${this.opts.baseUrl}/api/v1/auth/login`, {
|
|
94
|
+
method: "POST",
|
|
95
|
+
headers: { "Content-Type": "application/json" },
|
|
96
|
+
body: JSON.stringify({ email: this.opts.authUser, password: this.opts.authPassword }),
|
|
97
|
+
});
|
|
98
|
+
if (!res.ok)
|
|
99
|
+
throw new Error(`login bridge échoué (HTTP ${res.status})`);
|
|
100
|
+
const setCookie = res.headers.get("set-cookie") || "";
|
|
101
|
+
const name = this.opts.sessionCookieName;
|
|
102
|
+
const re = new RegExp(`${name.replace(/[.*+?^${}()|[\]\\]/g, "\\$&")}=([^;]+)`);
|
|
103
|
+
const m = setCookie.match(re);
|
|
104
|
+
// AUTH_DISABLED=1 : pas de cookie posé, la session n'est pas requise.
|
|
105
|
+
this.cookie = m ? `${name}=${m[1]}` : "";
|
|
106
|
+
this.log("session bridge établie");
|
|
107
|
+
}
|
|
108
|
+
async consumeStream() {
|
|
109
|
+
this.abort = new AbortController();
|
|
110
|
+
const res = await fetch(`${this.opts.baseUrl}/api/v1/assistant/supplier-actions/stream`, {
|
|
111
|
+
headers: {
|
|
112
|
+
Accept: "text/event-stream",
|
|
113
|
+
...(this.cookie ? { Cookie: this.cookie } : {}),
|
|
114
|
+
...(this.opts.deviceId ? { "x-device-id": this.opts.deviceId } : {}),
|
|
115
|
+
...(this.opts.deviceLabel
|
|
116
|
+
? { "x-device-label": this.opts.deviceLabel }
|
|
117
|
+
: {}),
|
|
118
|
+
},
|
|
119
|
+
signal: this.abort.signal,
|
|
120
|
+
});
|
|
121
|
+
if (res.status === 401) {
|
|
122
|
+
this.cookie = null;
|
|
123
|
+
throw new Error("session expirée");
|
|
124
|
+
}
|
|
125
|
+
if (!res.ok || !res.body)
|
|
126
|
+
throw new Error(`stream HTTP ${res.status}`);
|
|
127
|
+
this.log("abonné au flux supplier-actions");
|
|
128
|
+
const reader = res.body.getReader();
|
|
129
|
+
const decoder = new TextDecoder();
|
|
130
|
+
let buffer = "";
|
|
131
|
+
for (;;) {
|
|
132
|
+
const { done, value } = await reader.read();
|
|
133
|
+
if (done)
|
|
134
|
+
break;
|
|
135
|
+
buffer += decoder.decode(value, { stream: true });
|
|
136
|
+
// Découpage SSE : événements séparés par une ligne vide.
|
|
137
|
+
let idx;
|
|
138
|
+
while ((idx = buffer.indexOf("\n\n")) !== -1) {
|
|
139
|
+
const rawEvent = buffer.slice(0, idx);
|
|
140
|
+
buffer = buffer.slice(idx + 2);
|
|
141
|
+
this.handleSseEvent(rawEvent);
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
handleSseEvent(raw) {
|
|
146
|
+
let event = "message";
|
|
147
|
+
const dataLines = [];
|
|
148
|
+
for (const line of raw.split("\n")) {
|
|
149
|
+
if (line.startsWith("event:"))
|
|
150
|
+
event = line.slice(6).trim();
|
|
151
|
+
else if (line.startsWith("data:"))
|
|
152
|
+
dataLines.push(line.slice(5).trim());
|
|
153
|
+
}
|
|
154
|
+
if (event !== "supplier_action" || dataLines.length === 0)
|
|
155
|
+
return;
|
|
156
|
+
let req;
|
|
157
|
+
try {
|
|
158
|
+
req = JSON.parse(dataLines.join("\n"));
|
|
159
|
+
}
|
|
160
|
+
catch {
|
|
161
|
+
return;
|
|
162
|
+
}
|
|
163
|
+
if (!req?.actionId || !req.type)
|
|
164
|
+
return;
|
|
165
|
+
void this.execute(req);
|
|
166
|
+
}
|
|
167
|
+
async execute(req) {
|
|
168
|
+
let result;
|
|
169
|
+
try {
|
|
170
|
+
result = await this.opts.executor(req);
|
|
171
|
+
}
|
|
172
|
+
catch (e) {
|
|
173
|
+
result = { ok: false, error: e instanceof Error ? e.message : "erreur exécuteur" };
|
|
174
|
+
}
|
|
175
|
+
try {
|
|
176
|
+
await fetch(`${this.opts.baseUrl}/api/v1/assistant/ui-actions/${encodeURIComponent(req.actionId)}/result`, {
|
|
177
|
+
method: "POST",
|
|
178
|
+
headers: {
|
|
179
|
+
"Content-Type": "application/json",
|
|
180
|
+
...(this.cookie ? { Cookie: this.cookie } : {}),
|
|
181
|
+
},
|
|
182
|
+
body: JSON.stringify(result),
|
|
183
|
+
});
|
|
184
|
+
}
|
|
185
|
+
catch {
|
|
186
|
+
this.log(`POST résultat ${req.actionId} échoué — le serveur timeoutera`);
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
exports.BridgeClient = BridgeClient;
|
|
191
|
+
//# sourceMappingURL=bridge-client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bridge-client.js","sourceRoot":"","sources":["../../src/host/bridge-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// @ts-nocheck — Electron WebContents/session (shim kit mince, N7)
|
|
3
|
+
/**
|
|
4
|
+
* Exécuteur des actions `external_*` (alias déprécié `supplier_*`) sur
|
|
5
|
+
* les onglets sites externes.
|
|
6
|
+
*
|
|
7
|
+
* Architecture hybride (portage de src/components/assistant/ui-driver.tsx) :
|
|
8
|
+
* - ÉNUMÉRATION / RÉSOLUTION des cibles : JavaScript exécuté dans un MONDE
|
|
9
|
+
* ISOLÉ de la page (executeJavaScriptInIsolatedWorld) — même logique que
|
|
10
|
+
* la souris virtuelle du CRM (sélecteur interactif, labels, refs stables,
|
|
11
|
+
* similarité Dice), mais invisible et inaccessible au site tiers.
|
|
12
|
+
* - ENTRÉES : CDP via webContents.debugger (Input.dispatchMouseEvent /
|
|
13
|
+
* dispatchKeyEvent) → événements TRUSTED, indiscernables d'un vrai
|
|
14
|
+
* utilisateur (contrairement à dispatchEvent JS).
|
|
15
|
+
*
|
|
16
|
+
* SoT driver : `@creezio/browser-host` — scripts in-page (DRIVER_HELPERS,
|
|
17
|
+
* FAKE_CURSOR_INJECT) et handlers portables derrière `CdpTransport`
|
|
18
|
+
* partagés avec le Chromium sidecar serveur (AUCUN fork de logique).
|
|
19
|
+
* Ce fichier ne garde que l'adaptation Electron (WebContents/debugger)
|
|
20
|
+
* et la gestion des onglets (open_tab / list_tabs / activate).
|
|
21
|
+
*/
|
|
22
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
23
|
+
exports.captureScreenshot = captureScreenshot;
|
|
24
|
+
exports.executeSupplierAction = executeSupplierAction;
|
|
25
|
+
const browser_host_1 = require("@creezio/browser-host");
|
|
26
|
+
const platform_core_1 = require("@creezio/platform-core");
|
|
27
|
+
/** Monde isolé dédié (≠ 0 main world, ≠ mondes des extensions). */
|
|
28
|
+
const ISOLATED_WORLD_ID = 1999;
|
|
29
|
+
const sleep = (ms) => new Promise((r) => setTimeout(r, ms));
|
|
30
|
+
/* ── Évaluation dans le monde isolé ── */
|
|
31
|
+
async function evalIsolated(wc, expression) {
|
|
32
|
+
// DRIVER_HELPERS + FAKE_CURSOR_INJECT sont idempotents — réinjectés à
|
|
33
|
+
// chaque évaluation (contrat CdpTransport.evalIsolated partagé).
|
|
34
|
+
const code = `${browser_host_1.DRIVER_HELPERS}\n${browser_host_1.FAKE_CURSOR_INJECT}\n(async () => (${expression}))()`;
|
|
35
|
+
return (await wc.executeJavaScriptInIsolatedWorld(ISOLATED_WORLD_ID, [{ code }]));
|
|
36
|
+
}
|
|
37
|
+
/* ── CDP (entrées trusted) ── */
|
|
38
|
+
function ensureDebugger(tab) {
|
|
39
|
+
const dbg = tab.view.webContents.debugger;
|
|
40
|
+
if (!tab.debuggerAttached || !dbg.isAttached()) {
|
|
41
|
+
dbg.attach("1.3");
|
|
42
|
+
tab.debuggerAttached = true;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
async function cdp(tab, method, params = {}) {
|
|
46
|
+
ensureDebugger(tab);
|
|
47
|
+
return (await tab.view.webContents.debugger.sendCommand(method, params));
|
|
48
|
+
}
|
|
49
|
+
/** Adaptation Electron du transport driver partagé (browser-host). */
|
|
50
|
+
function transportFor(tab) {
|
|
51
|
+
return {
|
|
52
|
+
cdp: (method, params) => cdp(tab, method, params),
|
|
53
|
+
evalIsolated: (expression) => evalIsolated(tab.view.webContents, expression),
|
|
54
|
+
viewport: async () => {
|
|
55
|
+
const bounds = tab.view.getBounds();
|
|
56
|
+
return { width: bounds.width, height: bounds.height };
|
|
57
|
+
},
|
|
58
|
+
fallbackPage: async () => {
|
|
59
|
+
const wc = tab.view.webContents;
|
|
60
|
+
if (wc.isDestroyed())
|
|
61
|
+
return { url: "", title: "" };
|
|
62
|
+
return { url: wc.getURL(), title: wc.getTitle() };
|
|
63
|
+
},
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
/** Capture d'écran (PNG base64) — pour la vision LLM (usage futur). */
|
|
67
|
+
async function captureScreenshot(tab) {
|
|
68
|
+
const res = await cdp(tab, "Page.captureScreenshot", { format: "png" });
|
|
69
|
+
return String(res.data || "");
|
|
70
|
+
}
|
|
71
|
+
async function pageOf(tab) {
|
|
72
|
+
try {
|
|
73
|
+
return await evalIsolated(tab.view.webContents, "globalThis.__tfsup.pageContext()");
|
|
74
|
+
}
|
|
75
|
+
catch {
|
|
76
|
+
return { url: tab.view.webContents.getURL(), title: tab.view.webContents.getTitle() };
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Exécute une action external_* / supplier_* et retourne un résultat
|
|
81
|
+
* JSON-compatible (même contrat que executeUiAction : jamais de throw).
|
|
82
|
+
*/
|
|
83
|
+
async function executeSupplierAction(manager, req, hooks) {
|
|
84
|
+
try {
|
|
85
|
+
const actionType = String(req.type || "").replace(/^supplier_/, "external_");
|
|
86
|
+
if (actionType === "external_list_tabs" ||
|
|
87
|
+
req.type === "supplier_list_tabs") {
|
|
88
|
+
return { ok: true, tabs: manager.list() };
|
|
89
|
+
}
|
|
90
|
+
if (actionType === "external_open_tab" ||
|
|
91
|
+
req.type === "supplier_open_tab") {
|
|
92
|
+
// site_id opaque : entier historique ou UUID marque (string).
|
|
93
|
+
const rawSiteId = req.params.site_id ?? req.params.fournisseur_id ?? 0;
|
|
94
|
+
const siteId = typeof rawSiteId === "string" && rawSiteId.trim() && !Number.isFinite(Number(rawSiteId))
|
|
95
|
+
? rawSiteId.trim()
|
|
96
|
+
: Number(rawSiteId);
|
|
97
|
+
const url = typeof req.params.url === "string" ? req.params.url : "";
|
|
98
|
+
if (typeof siteId === "number" &&
|
|
99
|
+
(!Number.isFinite(siteId) || siteId <= 0)) {
|
|
100
|
+
return { ok: false, error: "site_id invalide" };
|
|
101
|
+
}
|
|
102
|
+
if (!/^https?:\/\//i.test(url)) {
|
|
103
|
+
return { ok: false, error: "url invalide (http(s):// requis)" };
|
|
104
|
+
}
|
|
105
|
+
// H0 — allowlist `*_WEB_ALLOWED_HOSTS` appliquée AU NIVEAU HOST (défense
|
|
106
|
+
// en profondeur : couvre aussi les appels hors runner de tâches).
|
|
107
|
+
const hostCheck = (0, platform_core_1.checkWebHostAllowed)(url);
|
|
108
|
+
if (!hostCheck.ok) {
|
|
109
|
+
return { ok: false, error: hostCheck.error, code: hostCheck.code };
|
|
110
|
+
}
|
|
111
|
+
const tab = await manager.openTab(siteId, url);
|
|
112
|
+
const page = await pageOf(tab);
|
|
113
|
+
const title = typeof page.title === "string" && page.title
|
|
114
|
+
? page.title
|
|
115
|
+
: tab.view.webContents.getTitle() || url;
|
|
116
|
+
hooks?.onTabOpened?.({
|
|
117
|
+
tabId: tab.tabId,
|
|
118
|
+
fournisseurId: tab.siteId ?? tab.fournisseurId,
|
|
119
|
+
url: tab.view.webContents.getURL() || url,
|
|
120
|
+
title,
|
|
121
|
+
});
|
|
122
|
+
return { ok: true, tabId: tab.tabId, page };
|
|
123
|
+
}
|
|
124
|
+
const tabId = req.tabId || (typeof req.params.tabId === "string" ? req.params.tabId : "");
|
|
125
|
+
const tab = tabId ? manager.get(tabId) : manager.getActive();
|
|
126
|
+
if (!tab) {
|
|
127
|
+
return {
|
|
128
|
+
ok: false,
|
|
129
|
+
error: `Onglet introuvable (tabId=${tabId || "—"}). Faire external_list_tabs (alias supplier_list_tabs) d'abord.`,
|
|
130
|
+
tabs: manager.list(),
|
|
131
|
+
};
|
|
132
|
+
}
|
|
133
|
+
// S'assurer que la vue est celle active (bounds content-area déjà connus).
|
|
134
|
+
manager.activate(tab.tabId);
|
|
135
|
+
hooks?.onTabOpened?.({
|
|
136
|
+
tabId: tab.tabId,
|
|
137
|
+
fournisseurId: tab.fournisseurId,
|
|
138
|
+
url: tab.view.webContents.isDestroyed() ? "" : tab.view.webContents.getURL(),
|
|
139
|
+
title: tab.view.webContents.isDestroyed() ? "" : tab.view.webContents.getTitle(),
|
|
140
|
+
});
|
|
141
|
+
if (tab.view.webContents.isLoading()) {
|
|
142
|
+
await sleep(1500);
|
|
143
|
+
}
|
|
144
|
+
// SoT = external_* ; supplier_* déjà normalisé ci-dessus.
|
|
145
|
+
const verb = (0, browser_host_1.driverVerbOf)(actionType);
|
|
146
|
+
if (!verb) {
|
|
147
|
+
return { ok: false, error: `Action inconnue: ${req.type}` };
|
|
148
|
+
}
|
|
149
|
+
return await (0, browser_host_1.runDriverVerb)(transportFor(tab), verb, req.params);
|
|
150
|
+
}
|
|
151
|
+
catch (e) {
|
|
152
|
+
return {
|
|
153
|
+
ok: false,
|
|
154
|
+
error: e instanceof Error ? e.message : "Erreur exécution action site externe",
|
|
155
|
+
};
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
//# sourceMappingURL=browser-tab-driver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"browser-tab-driver.js","sourceRoot":"","sources":["../../../src/host/browser-tabs/browser-tab-driver.ts"],"names":[],"mappings":"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"}
|