@dimina-kit/devtools 0.4.0-dev.20260803105710 → 0.4.0-dev.20260828092243
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/dist/main/api.d.ts +1 -1
- package/dist/main/app/app.js +66 -2
- package/dist/main/index.bundle.js +1454 -540
- package/dist/main/ipc/index.d.ts +3 -0
- package/dist/main/ipc/index.js +3 -0
- package/dist/main/ipc/popover.js +1 -1
- package/dist/main/ipc/project-create.d.ts +15 -0
- package/dist/main/ipc/project-create.js +26 -0
- package/dist/main/ipc/projects.d.ts +1 -1
- package/dist/main/ipc/projects.js +11 -0
- package/dist/main/ipc/session.js +11 -0
- package/dist/main/ipc/settings.js +2 -1
- package/dist/main/ipc/simulator-module.d.ts +4 -3
- package/dist/main/ipc/simulator-module.js +4 -5
- package/dist/main/ipc/tooltip.d.ts +13 -0
- package/dist/main/ipc/tooltip.js +28 -0
- package/dist/main/ipc/views.d.ts +15 -1
- package/dist/main/ipc/views.js +61 -4
- package/dist/main/runtime/miniapp-runtime.d.ts +87 -19
- package/dist/main/services/layout/index.d.ts +11 -0
- package/dist/main/services/layout/index.js +23 -0
- package/dist/main/services/network-forward/frontend-dispatch.js +2 -1
- package/dist/main/services/notifications/renderer-notifier.d.ts +32 -1
- package/dist/main/services/notifications/renderer-notifier.js +29 -1
- package/dist/main/services/projects/project-repository.d.ts +4 -1
- package/dist/main/services/projects/project-repository.js +63 -5
- 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/update/update-manager.d.ts +17 -3
- package/dist/main/services/update/update-manager.js +25 -6
- 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 +79 -130
- package/dist/main/services/views/console-filter.js +140 -183
- 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/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 +107 -0
- package/dist/main/services/views/host-slot-port-channel.js +261 -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 +123 -0
- package/dist/main/services/views/native-simulator-devtools-host.js +64 -45
- package/dist/main/services/views/native-simulator-view.js +6 -24
- 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 +50 -4
- package/dist/main/services/views/overlay-panels-view.js +226 -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/view-manager-devtools-host-test-fixtures.js +3 -1
- package/dist/main/services/views/view-manager.d.ts +14 -86
- package/dist/main/services/views/view-manager.js +41 -4
- package/dist/main/services/views/workbench-view.js +27 -20
- package/dist/main/services/workbench-coi-server.d.ts +11 -0
- package/dist/main/services/workbench-coi-server.js +32 -0
- package/dist/main/services/workspace/rebuild-status.d.ts +21 -8
- package/dist/main/services/workspace/rebuild-status.js +24 -8
- package/dist/main/utils/paths.d.ts +4 -0
- package/dist/main/utils/paths.js +4 -0
- package/dist/main/utils/sender-policy.d.ts +1 -1
- package/dist/main/utils/sender-policy.js +16 -1
- package/dist/main/utils/theme.d.ts +7 -2
- package/dist/main/utils/theme.js +8 -3
- package/dist/native-host/common/common.js +65 -62
- package/dist/native-host/container/pageFrame.css +1 -1
- package/dist/native-host/render/render.js +3226 -2898
- package/dist/native-host/service/service.js +2 -2
- 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/wait-for-slot-root.d.ts +20 -0
- package/dist/preload/runtime/wait-for-slot-root.js +52 -0
- package/dist/preload/windows/host-dialog-runtime.cjs +353 -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 +354 -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 +134 -51
- package/dist/preload/windows/host-toolbar-runtime.cjs.map +3 -3
- package/dist/preload/windows/main.cjs +3176 -14
- 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 +5 -2
- package/dist/preload/windows/simulator.cjs.map +2 -2
- package/dist/preload/windows/simulator.js +5 -2
- package/dist/renderer/assets/button-DsNqZm7o.js +2 -0
- package/dist/renderer/assets/constants-D7DfVqMp.js +2 -0
- package/dist/renderer/assets/constants-D8zsejFq.js +2 -0
- package/dist/renderer/assets/createLucideIcon-CYJeT1ji.js +2 -0
- package/dist/renderer/assets/dialog-pT4qWmka.js +46 -0
- package/dist/renderer/assets/dist-o70xmpc1.js +2 -0
- package/dist/renderer/assets/hostSidebarDefault-NvGZlE9O.js +2 -0
- package/dist/renderer/assets/index-zErhG3ta.js +5 -0
- package/dist/renderer/assets/input-4QxTXMZN.js +2 -0
- package/dist/renderer/assets/ipc-channels-overlays-Blr5TNoB.js +2 -0
- package/dist/renderer/assets/jsx-runtime-B-3rq1y5.css +1 -0
- package/dist/renderer/assets/jsx-runtime-CqVdW3eg.js +9 -0
- package/dist/renderer/assets/popover-CJiSWwuE.js +2 -0
- package/dist/renderer/assets/project-api-DZ1Zi6EC.js +2 -0
- package/dist/renderer/assets/projectCreateDialog-DMWNhw_1.js +2 -0
- package/dist/renderer/assets/select-C86pNcsu.js +2 -0
- package/dist/renderer/assets/settings-BoI8mLT1.js +2 -0
- package/dist/renderer/assets/settings-api-Bs_g4NHs.js +2 -0
- package/dist/renderer/assets/settings-tab-bar-DHLLygqv.js +2 -0
- package/dist/renderer/assets/tooltip-BhAyY0T4.js +2 -0
- package/dist/renderer/assets/types-YYjkvane.js +2 -0
- package/dist/renderer/assets/updateDialog-DPum3wx1.js +2 -0
- package/dist/renderer/assets/utils-kfQov6Pa.js +2 -0
- package/dist/renderer/assets/view-api-DFhb2R8-.js +2 -0
- package/dist/renderer/assets/workbenchSettings-DrajRQUk.js +8 -0
- package/dist/renderer/entries/host-sidebar-default/index.html +21 -0
- package/dist/renderer/entries/main/index.html +15 -7
- package/dist/renderer/entries/popover/index.html +10 -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-settings/index.html +11 -5
- package/dist/service-host/preload.cjs +10 -0
- package/dist/service-host/sync-impls/menu-button-geometry.js +1 -0
- package/dist/shared/constants.d.ts +22 -0
- package/dist/shared/constants.js +22 -0
- package/dist/shared/ipc-channels-overlays.d.ts +156 -0
- package/dist/shared/ipc-channels-overlays.js +186 -0
- package/dist/shared/ipc-channels.d.ts +1 -67
- package/dist/shared/ipc-channels.js +9 -81
- package/dist/shared/ipc-schemas.d.ts +52 -0
- package/dist/shared/ipc-schemas.js +64 -0
- package/dist/shared/simulator-route.d.ts +8 -0
- package/dist/shared/simulator-route.js +15 -0
- package/dist/shared/types.d.ts +17 -0
- package/dist/shared/view-ids.d.ts +9 -0
- package/dist/shared/view-ids.js +21 -0
- package/dist/simulator/assets/device-shell-CmtM1QxP.js +2 -0
- package/dist/simulator/assets/device-shell-iFZo1igL.css +1 -0
- package/dist/simulator/assets/{simulator-COIE6R49.js → simulator-CIobn3Mh.js} +6 -6
- package/dist/simulator/assets/{simulator-mini-app-BLn7XV8e.js → simulator-mini-app-CRe6n9br.js} +2 -2
- package/dist/simulator/assets/simulator-ui-BupATgKo.css +1 -0
- package/dist/simulator/assets/simulator-ui-C_cP602X.js +2 -0
- package/dist/simulator/simulator.html +3 -2
- package/dist/vscode-workbench/assets/__vite-browser-external-Bc1vizTf.js +1 -0
- package/dist/vscode-workbench/assets/{dist-oHcwN53f.js → dist-CMfmHflW.js} +3 -3
- package/dist/vscode-workbench/assets/{iconv-lite-umd-CLMLpdGm.js → iconv-lite-umd-Bx8CgaZq.js} +1 -1
- package/dist/vscode-workbench/assets/{index-BE3UJdoH.js → index-CdG6YWhW.js} +436 -436
- package/dist/vscode-workbench/assets/{jschardet-BICW8PLJ.js → jschardet-M0qgd2lN.js} +1 -1
- package/dist/vscode-workbench/index.html +21 -1
- package/package.json +9 -8
- 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/renderer/assets/constants-EAMiwL9_.js +0 -2
- package/dist/renderer/assets/index-BBg3YI5b.js +0 -49
- package/dist/renderer/assets/input-xdmfv-eH.js +0 -2
- package/dist/renderer/assets/ipc-transport-B3EpmfNS.js +0 -9
- package/dist/renderer/assets/ipc-transport-Blac3sOj.css +0 -1
- package/dist/renderer/assets/popover-B88e2hkg.js +0 -2
- package/dist/renderer/assets/select-CD9CJyhI.js +0 -2
- package/dist/renderer/assets/settings-44hf0QtO.js +0 -2
- package/dist/renderer/assets/settings-api-pJKPuP1M.js +0 -2
- package/dist/renderer/assets/workbenchSettings-DKD5U1Ql.js +0 -8
- package/dist/simulator/assets/device-shell-Cw7c-IkG.js +0 -2
- package/dist/simulator/assets/device-shell-DbC5ccs8.css +0 -1
- package/dist/simulator/assets/jsx-runtime-DkKmJyBb.js +0 -2
- package/dist/simulator/device-shell/menu-button-geometry.js +0 -18
- package/dist/vscode-workbench/assets/__vite-browser-external-BON7qP59.js +0 -1
package/dist/main/api.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ export { launch, buildDefaultMenu, openSettingsWindow } from './app/launch.js';
|
|
|
2
2
|
export type { WorkbenchAppInstance } from './app/app.js';
|
|
3
3
|
export { suppressEpipe, setupCdpPort } from './app/bootstrap.js';
|
|
4
4
|
export { asMiniappRuntime } from './runtime/miniapp-runtime.js';
|
|
5
|
-
export type { MiniappRuntime, MiniappSessionAppInfo, DiminaHostToolbarPageBridge, } from './runtime/miniapp-runtime.js';
|
|
5
|
+
export type { MiniappRuntime, MiniappSessionAppInfo, DiminaHostToolbarPageBridge, DiminaHostSidebarPageBridge, DiminaHostDialogPageBridge, } from './runtime/miniapp-runtime.js';
|
|
6
6
|
export { createWorkbenchContext } from './services/workbench-context.js';
|
|
7
7
|
export type { WorkbenchContext, CreateContextOptions } from './services/workbench-context.js';
|
|
8
8
|
export { createMainWindow } from './windows/main-window/index.js';
|
package/dist/main/app/app.js
CHANGED
|
@@ -4,6 +4,7 @@ import { registerProjectFsIpc } from '../ipc/project-fs.js';
|
|
|
4
4
|
import { app, BrowserWindow, nativeImage, session } from 'electron';
|
|
5
5
|
import fs from 'fs';
|
|
6
6
|
import path from 'path';
|
|
7
|
+
import { HOST_SIDEBAR_DEFAULT_WIDTH } from '../../shared/constants.js';
|
|
7
8
|
import { rendererDir as defaultRendererDir, defaultPreloadPath, devtoolsPackageRoot } from '../utils/paths.js';
|
|
8
9
|
import { installThemeBackgroundSync } from '../utils/theme.js';
|
|
9
10
|
import { createMainWindow, wireMainWindowEvents } from '../windows/main-window/index.js';
|
|
@@ -17,7 +18,7 @@ import { createWorkbenchContext } from '../services/workbench-context.js';
|
|
|
17
18
|
import { setupCompileWorkerStandby } from '../services/compile-standby.js';
|
|
18
19
|
import { loadWorkbenchSettings, applyTheme } from '../services/settings/index.js';
|
|
19
20
|
import { installAppMenu } from '../menu/index.js';
|
|
20
|
-
import { registerAppIpc, registerInternalDevtoolsIpc, popoverModule, projectsModule, sessionModule, settingsModule, simulatorModule, } from '../ipc/index.js';
|
|
21
|
+
import { registerAppIpc, registerInternalDevtoolsIpc, registerTooltipIpc, registerProjectCreateIpc, registerViewsIpc, popoverModule, projectsModule, sessionModule, settingsModule, simulatorModule, } from '../ipc/index.js';
|
|
21
22
|
import { startAutomationServer } from '../services/automation/index.js';
|
|
22
23
|
import { startMcpServer, setNativeHost, setActiveBridgeId, setNativeOverviewProvider, } from '../services/mcp/index.js';
|
|
23
24
|
import { setupSimulatorStorage } from '../services/simulator-storage/index.js';
|
|
@@ -407,6 +408,23 @@ onInstanceCreated) {
|
|
|
407
408
|
// Unconditional (not a toggleable BUILTIN_MODULES entry): it's core dev
|
|
408
409
|
// tooling, not a host-configurable feature.
|
|
409
410
|
context.registry.add(registerInternalDevtoolsIpc(context));
|
|
411
|
+
// Unconditional (not a toggleable BUILTIN_MODULES entry): the tooltip
|
|
412
|
+
// overlay is core UI chrome (every toolbar in this app relies on it), not a
|
|
413
|
+
// host-configurable feature.
|
|
414
|
+
context.registry.add(registerTooltipIpc(context));
|
|
415
|
+
// Unconditional: the project-create dialog is core UI chrome (the built-in
|
|
416
|
+
// "新建项目" flow every host falls back to), not a host-configurable feature.
|
|
417
|
+
context.registry.add(registerProjectCreateIpc(context));
|
|
418
|
+
// Unconditional (not a toggleable BUILTIN_MODULES entry): placement/host-
|
|
419
|
+
// slot IPC has no real dependency on the simulator module — `ctx.views`
|
|
420
|
+
// (ViewManager) is constructed unconditionally regardless of
|
|
421
|
+
// `modules.simulator`, and host-sidebar in particular lives on the
|
|
422
|
+
// project-list page, unrelated to the simulator webview. Every renderer
|
|
423
|
+
// entry point also blocks its first render on `AllocatePlacementGeneration`
|
|
424
|
+
// (see renderer-placement-generation.ts) — gating any of this behind the
|
|
425
|
+
// simulator toggle would strand a host that disables it on the fatal
|
|
426
|
+
// boot-failure page, or leave placement silently non-functional.
|
|
427
|
+
context.registry.add(registerViewsIpc(context));
|
|
410
428
|
// Referer/CORS webRequest policy for the simulator runtime's sessions (shared
|
|
411
429
|
// fallback + every per-project partition). Registered into the context
|
|
412
430
|
// registry so its configurator + per-session listeners are torn down with the
|
|
@@ -493,13 +511,52 @@ onInstanceCreated) {
|
|
|
493
511
|
instance.registerSimulatorApi('login', async () => {
|
|
494
512
|
return 'hello';
|
|
495
513
|
});
|
|
514
|
+
// devtools' own default content for the host-sidebar slot: a narrow icon
|
|
515
|
+
// rail (logo + 小程序/小游戏 toggle) filtering the project-list grid by
|
|
516
|
+
// `Project.type`. Loaded BEFORE `config.onSetup` runs below, so any
|
|
517
|
+
// downstream `loadURL`/`loadFile` call inside onSetup necessarily happens
|
|
518
|
+
// later and naturally supersedes this default via plain chronological
|
|
519
|
+
// ordering — no override flag needed.
|
|
520
|
+
context.registry.add(context.views.hostSidebar.onMessage('project-category-selected', (payload) => {
|
|
521
|
+
const category = payload?.category;
|
|
522
|
+
if (category !== 'miniprogram' && category !== 'minigame')
|
|
523
|
+
return;
|
|
524
|
+
context.notify.hostSidebarCategorySelected(category);
|
|
525
|
+
}));
|
|
526
|
+
context.views.hostSidebar
|
|
527
|
+
.loadFile(path.join(rendererDir, 'entries/host-sidebar-default/index.html'))
|
|
528
|
+
.catch((err) => {
|
|
529
|
+
console.warn('[workbench] failed to load host-sidebar default content:', err);
|
|
530
|
+
});
|
|
531
|
+
// Seed the notified width with the rail's own known intrinsic width
|
|
532
|
+
// (`HOST_SIDEBAR_DEFAULT_WIDTH`) instead of leaving it at 0 until the
|
|
533
|
+
// rail's in-page advertiser reports back. That report can never arrive on
|
|
534
|
+
// its own: the placeholder above only becomes "desired visible" once a
|
|
535
|
+
// nonzero width is known (project-list-screen.tsx), attach only happens
|
|
536
|
+
// for a "desired visible" view (placement-reconciler.ts), and the rail's
|
|
537
|
+
// advertiser (view-anchor's measure-loop.ts) only ever fires via
|
|
538
|
+
// `requestAnimationFrame`, which Chromium never schedules for a
|
|
539
|
+
// WebContentsView that was never attached — a structural deadlock, not a
|
|
540
|
+
// slow-to-resolve race. `setWidthMode({fixed})` pushes the seed
|
|
541
|
+
// synchronously (no attach/rAF dependency) and, critically, retains it in
|
|
542
|
+
// `getHostSidebarWidth()` too, so a renderer that mounts and pulls before
|
|
543
|
+
// any push replays the real seed instead of a stale 0. Flipping back to
|
|
544
|
+
// 'auto' immediately after, before anything has attached or advertised, is
|
|
545
|
+
// a same-tick no-op past the seed (`setExtentMode`'s reapply branch only
|
|
546
|
+
// fires once something has actually been advertised) — it leaves the slot
|
|
547
|
+
// in 'auto' for whichever content ends up loaded (this rail's own later
|
|
548
|
+
// report, or a downstream replacement's), not pinned.
|
|
549
|
+
context.views.hostSidebar.setWidthMode({ fixed: HOST_SIDEBAR_DEFAULT_WIDTH });
|
|
550
|
+
context.views.hostSidebar.setWidthMode('auto');
|
|
496
551
|
if (config.onSetup) {
|
|
497
552
|
await config.onSetup(instance);
|
|
498
553
|
}
|
|
499
554
|
if (config.updateChecker) {
|
|
500
555
|
instance.updateManager = new UpdateManager({
|
|
501
556
|
checker: config.updateChecker,
|
|
502
|
-
|
|
557
|
+
showUpdatePanel: (info) => context.views.showUpdateDialog(info),
|
|
558
|
+
notifyDownloadProgress: (percent) => context.views.notifyUpdateDownloadProgress(percent),
|
|
559
|
+
hideUpdatePanel: () => context.views.hideUpdateDialog(),
|
|
503
560
|
senderPolicy: context.senderPolicy,
|
|
504
561
|
checkInterval: config.updateOptions?.checkInterval,
|
|
505
562
|
initialDelay: config.updateOptions?.initialDelay,
|
|
@@ -680,6 +737,13 @@ onInstanceCreated) {
|
|
|
680
737
|
getProjectRoot: () => context.workspace.getProjectPath(),
|
|
681
738
|
extensionsDir: config.editorViewConfig?.extensionsDir,
|
|
682
739
|
getFileTypes: () => context.fileTypes,
|
|
740
|
+
// Names the editor's VS Code workspace after the active miniapp, so each
|
|
741
|
+
// project gets its own open-editors/view-state bucket instead of all of
|
|
742
|
+
// them sharing the one derived from the constant mirror root.
|
|
743
|
+
getProjectIdentity: () => ({
|
|
744
|
+
appId: getActiveAppId(),
|
|
745
|
+
projectPath: context.workspace.getProjectPath(),
|
|
746
|
+
}),
|
|
683
747
|
});
|
|
684
748
|
// Return the close promise so the registry awaits server shutdown on dispose
|
|
685
749
|
// instead of fire-and-forgetting it (a dangling http server would keep the
|