Internals

Stores and composables

Where state lives and which APIs themes and apps should use.

Public composables (apps / themes)

ComposablePackageRole
useApplicationManagercoreApp registry: launch, windows, commands.
useDesktopManagercoreRuntime shell config (setConfig), default app per feature.
useWorkspaceManagercoreOverview keyboard shortcuts, HTML5 workspace edge drops.
useApplicationEntriescoreLauncher entries / categories.
useDesktopDialogscoreAlert / confirm / prompt via inject or browser fallback.
useToggleWindowMaximizecoreMaximize/restore with optional work area.
useDesktopShellIdentitycoreShell user + VFS home — see Shell identity.
useDesktopShellOptionscoresystemBar, startButton from config.
useDesktopSessioncoreEnd session → theme start route.
useWorkspaceEdgeDropcoreEdge drag between workspaces.
useWorkspaceOverviewLiveScalecoreOverview live DOM scale.
useExplorerStoremodule-fsExplorer selection, nav state (headless VFS).
createExplorerWindowMenuItemsmodule-fsExplorer window menu model.

Prefer composables over reaching into Pinia stores from apps when a composable already wraps the use case.

PrimeVue dialog implementation: createDesktopDialogs in @owdproject/kit-primevue (not core).

Core stores (auto-imported)

StoreRole
useDesktopStorePersonalization, default apps map, shell flags.
useDesktopWorkspaceStoreActive workspace, overview mode.
useDesktopWindowStoreGlobal z-index counter.

Per-app state lives in application controllers and app-specific stores registered by each app module.

Removed / moved symbols (3.3 → 3.4)

OldNew
useDesktopExplorerStore (core)useExplorerStore (in @owdproject/module-fs)
CoreDesktop, CoreWindow, …DesktopCore, DesktopWindow, …
useWorkspaceOverviewuseWorkspaceManager
OWD_DIALOG_PROVIDER_KEY (core)DESKTOP_DIALOG_PROVIDER_KEY (core)
Shell composables in kit-theme@owdproject/core/runtime/composables/
createDesktopDialogs in kit-theme@owdproject/kit-primevue
Pinia store IDs starting with owd/Store IDs starting with desktop/
kit-fs / kit-explorer / kit-themecore + @owdproject/module-fs + @owdproject/kit-primevue

When upgrading themes, grep for old package paths and align peerDependencies to ^3.4.0 (core) and add @owdproject/kit-primevue for PV UI/dialogs.