[{"data":1,"prerenderedAt":775},["ShallowReactive",2],{"navigation_docs":3,"-internals-stores-and-composables":217,"-internals-stores-and-composables-surround":770},[4,25,41,84,126,165,201],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":24},"Overview","i-lucide-house","\u002Fgetting-started","1.getting-started",[10,14,19],{"title":11,"path":12,"stem":13,"icon":6},"Introduction","\u002Fgetting-started\u002Fintroduction","1.getting-started\u002F2.introduction",{"title":15,"path":16,"stem":17,"icon":18},"Installation","\u002Fgetting-started\u002Finstallation","1.getting-started\u002F3.installation","i-lucide-download",{"title":20,"path":21,"stem":22,"icon":23},"Project structure","\u002Fgetting-started\u002Fproject-structure","1.getting-started\u002F4.project-structure","i-lucide-folder-tree",false,{"title":26,"icon":27,"path":28,"stem":29,"children":30,"page":24},"Architecture","i-lucide-cpu","\u002Farchitecture","3.architecture",[31,36],{"title":32,"path":33,"stem":34,"icon":35},"Core, themes, and apps","\u002Farchitecture\u002Foverview","3.architecture\u002F1.overview","i-lucide-layers",{"title":37,"path":38,"stem":39,"icon":40},"Kits and extension modules","\u002Farchitecture\u002Fkits","3.architecture\u002F3.kits","i-lucide-puzzle",{"title":42,"icon":43,"path":44,"stem":45,"children":46,"page":24},"Apps","i-lucide-app-window","\u002Fapps","4.apps",[47,51,55,60,64,69,74,79],{"title":5,"path":48,"stem":49,"icon":50},"\u002Fapps\u002Foverview","4.apps\u002F1.overview","i-lucide-info",{"title":52,"path":53,"stem":54,"icon":23},"Package layout","\u002Fapps\u002Fpackage-layout","4.apps\u002F2.package-layout",{"title":56,"path":57,"stem":58,"icon":59},"Create from scratch","\u002Fapps\u002Fcreate-from-scratch","4.apps\u002F3.create-from-scratch","i-lucide-list-checks",{"title":61,"path":62,"stem":63,"icon":40},"Module and runtime","\u002Fapps\u002Fmodule-and-runtime","4.apps\u002F4.module-and-runtime",{"title":65,"path":66,"stem":67,"icon":68},"Plugins","\u002Fapps\u002Fplugins","4.apps\u002F5.plugins","i-lucide-plug",{"title":70,"path":71,"stem":72,"icon":73},"Windows and commands","\u002Fapps\u002Fwindows-and-commands","4.apps\u002F6.windows-and-commands","i-lucide-layout-panel-top",{"title":75,"path":76,"stem":77,"icon":78},"Playground","\u002Fapps\u002Fplayground","4.apps\u002F7.playground","i-lucide-flask-conical",{"title":80,"path":81,"stem":82,"icon":83},"Build and publish","\u002Fapps\u002Fbuild-and-publish","4.apps\u002F8.build-and-publish","i-lucide-package",{"title":85,"icon":86,"path":87,"stem":88,"children":89,"page":24},"Themes","i-lucide-palette","\u002Fthemes","5.themes",[90,93,98,102,106,111,116,121],{"title":5,"path":91,"stem":92,"icon":50},"\u002Fthemes\u002Foverview","5.themes\u002F1.overview",{"title":94,"path":95,"stem":96,"icon":97},"Theme anatomy","\u002Fthemes\u002Ftheme-anatomy","5.themes\u002F2.theme-anatomy","i-lucide-component",{"title":99,"path":100,"stem":101},"Create From Scratch","\u002Fthemes\u002Fcreate-from-scratch","5.themes\u002F3.create-from-scratch",{"title":103,"path":104,"stem":105,"icon":68},"Theme plugins","\u002Fthemes\u002Fplugins","5.themes\u002F4.plugins",{"title":107,"path":108,"stem":109,"icon":110},"Styling and Tailwind","\u002Fthemes\u002Fstyling-and-tailwind","5.themes\u002F5.styling-and-tailwind","i-lucide-brush",{"title":112,"path":113,"stem":114,"icon":115},"Pages and boot flow","\u002Fthemes\u002Fpages-and-boot-flow","5.themes\u002F6.pages-and-boot-flow","i-lucide-power",{"title":117,"path":118,"stem":119,"icon":120},"Theme and optional modules","\u002Fthemes\u002Ftheme-and-optional-modules","5.themes\u002F7.theme-and-optional-modules","i-lucide-link",{"title":122,"path":123,"stem":124,"icon":125},"Window chrome and nav buttons","\u002Fthemes\u002Fwindow-chrome-and-nav-buttons","5.themes\u002F8.window-chrome-and-nav-buttons","i-lucide-square-mouse-pointer",{"title":127,"icon":128,"path":129,"stem":130,"children":131,"page":24},"Client & CLI","i-lucide-terminal","\u002Fsetup","6.setup",[132,136,141,146,151,156,161],{"title":133,"path":134,"stem":135,"icon":128},"desktop CLI","\u002Fsetup\u002Fdesktop-cli","6.setup\u002F1.desktop-cli",{"title":137,"path":138,"stem":139,"icon":140},"Package linking","\u002Fsetup\u002Fpackage-linking","6.setup\u002F2.package-linking","i-lucide-link-2",{"title":142,"path":143,"stem":144,"icon":145},"Monorepo and workspace","\u002Fsetup\u002Fmonorepo-workspace","6.setup\u002F3.monorepo-workspace","i-lucide-blocks",{"title":147,"path":148,"stem":149,"icon":150},"desktop.config.ts","\u002Fsetup\u002Fdesktop-config","6.setup\u002F4.desktop-config","i-lucide-file-code",{"title":152,"path":153,"stem":154,"icon":155},"Migrate themes, apps, and modules (3.3.2)","\u002Fsetup\u002Fmigrate-packages-3.3.2","6.setup\u002F5.migrate-packages-3.3.2","i-lucide-arrow-right-left",{"title":157,"path":158,"stem":159,"icon":160},"Migrate themes, apps, and modules (3.4)","\u002Fsetup\u002Fmigrate-packages-3.4","6.setup\u002F6.migrate-packages-3.4","i-lucide-arrow-up-right",{"title":162,"path":163,"stem":164},"Troubleshooting","\u002Fsetup\u002Ftroubleshooting","6.setup\u002F7.troubleshooting",{"title":166,"icon":167,"path":168,"stem":169,"children":170,"page":24},"Internals","i-lucide-book-open","\u002Finternals","7.internals",[171,176,181,186,191,196],{"title":172,"path":173,"stem":174,"icon":175},"Boot sequence","\u002Finternals\u002Fboot-sequence","7.internals\u002F1.boot-sequence","i-lucide-list-ordered",{"title":177,"path":178,"stem":179,"icon":180},"Stores and composables","\u002Finternals\u002Fstores-and-composables","7.internals\u002F2.stores-and-composables","i-lucide-database",{"title":182,"path":183,"stem":184,"icon":185},"Core components","\u002Finternals\u002Fcore-components","7.internals\u002F3.core-components","i-lucide-layout-grid",{"title":187,"path":188,"stem":189,"icon":190},"Dialog provider","\u002Finternals\u002Fdialog-provider","7.internals\u002F4.dialog-provider","i-lucide-message-square",{"title":192,"path":193,"stem":194,"icon":195},"Kernel contract","\u002Finternals\u002Fkernel-contract","7.internals\u002F5.kernel-contract","i-lucide-shield-check",{"title":197,"path":198,"stem":199,"icon":200},"Shell identity","\u002Finternals\u002Fshell-identity","7.internals\u002F6.shell-identity","i-lucide-user",{"title":202,"icon":203,"path":204,"stem":205,"children":206,"page":24},"Reference","i-lucide-book-marked","\u002Freference","8.reference",[207,212],{"title":208,"path":209,"stem":210,"icon":211},"Glossary","\u002Freference\u002Fglossary","8.reference\u002F1.glossary","i-lucide-book-a",{"title":213,"path":214,"stem":215,"icon":216},"Ecosystem","\u002Freference\u002Fuseful-links","8.reference\u002F2.useful-links","i-lucide-external-link",{"id":218,"title":177,"body":219,"description":763,"extension":764,"links":765,"meta":766,"navigation":767,"path":178,"seo":768,"stem":179,"__hash__":769},"docs\u002F7.internals\u002F2.stores-and-composables.md",{"type":220,"value":221,"toc":755},"minimark",[222,227,453,457,476,480,529,532,536,711,731,735],[223,224,226],"h2",{"id":225},"public-composables-apps-themes","Public composables (apps \u002F themes)",[228,229,230,246],"table",{},[231,232,233],"thead",{},[234,235,236,240,243],"tr",{},[237,238,239],"th",{},"Composable",[237,241,242],{},"Package",[237,244,245],{},"Role",[247,248,249,267,287,301,315,329,343,361,382,396,410,424,439],"tbody",{},[234,250,251,261,264],{},[252,253,254],"td",{},[255,256,257],"strong",{},[258,259,260],"code",{},"useApplicationManager",[252,262,263],{},"core",[252,265,266],{},"App registry: launch, windows, commands.",[234,268,269,276,278],{},[252,270,271],{},[255,272,273],{},[258,274,275],{},"useDesktopManager",[252,277,263],{},[252,279,280,281,286],{},"Runtime shell config (",[255,282,283],{},[258,284,285],{},"setConfig","), default app per feature.",[234,288,289,296,298],{},[252,290,291],{},[255,292,293],{},[258,294,295],{},"useWorkspaceManager",[252,297,263],{},[252,299,300],{},"Overview keyboard shortcuts, HTML5 workspace edge drops.",[234,302,303,310,312],{},[252,304,305],{},[255,306,307],{},[258,308,309],{},"useApplicationEntries",[252,311,263],{},[252,313,314],{},"Launcher entries \u002F categories.",[234,316,317,324,326],{},[252,318,319],{},[255,320,321],{},[258,322,323],{},"useDesktopDialogs",[252,325,263],{},[252,327,328],{},"Alert \u002F confirm \u002F prompt via inject or browser fallback.",[234,330,331,338,340],{},[252,332,333],{},[255,334,335],{},[258,336,337],{},"useToggleWindowMaximize",[252,339,263],{},[252,341,342],{},"Maximize\u002Frestore with optional work area.",[234,344,345,352,354],{},[252,346,347],{},[255,348,349],{},[258,350,351],{},"useDesktopShellIdentity",[252,353,263],{},[252,355,356,357,360],{},"Shell user + VFS home — see ",[358,359,197],"a",{"href":198},".",[234,362,363,370,372],{},[252,364,365],{},[255,366,367],{},[258,368,369],{},"useDesktopShellOptions",[252,371,263],{},[252,373,374,377,378,381],{},[258,375,376],{},"systemBar",", ",[258,379,380],{},"startButton"," from config.",[234,383,384,391,393],{},[252,385,386],{},[255,387,388],{},[258,389,390],{},"useDesktopSession",[252,392,263],{},[252,394,395],{},"End session → theme start route.",[234,397,398,405,407],{},[252,399,400],{},[255,401,402],{},[258,403,404],{},"useWorkspaceEdgeDrop",[252,406,263],{},[252,408,409],{},"Edge drag between workspaces.",[234,411,412,419,421],{},[252,413,414],{},[255,415,416],{},[258,417,418],{},"useWorkspaceOverviewLiveScale",[252,420,263],{},[252,422,423],{},"Overview live DOM scale.",[234,425,426,433,436],{},[252,427,428],{},[255,429,430],{},[258,431,432],{},"useExplorerStore",[252,434,435],{},"module-fs",[252,437,438],{},"Explorer selection, nav state (headless VFS).",[234,440,441,448,450],{},[252,442,443],{},[255,444,445],{},[258,446,447],{},"createExplorerWindowMenuItems",[252,449,435],{},[252,451,452],{},"Explorer window menu model.",[454,455,456],"p",{},"Prefer composables over reaching into Pinia stores from apps when a composable already wraps the use case.",[454,458,459,460,463,464,469,470,475],{},"PrimeVue dialog ",[255,461,462],{},"implementation",": ",[255,465,466],{},[258,467,468],{},"createDesktopDialogs"," in ",[255,471,472],{},[258,473,474],{},"@owdproject\u002Fkit-primevue"," (not core).",[223,477,479],{"id":478},"core-stores-auto-imported","Core stores (auto-imported)",[228,481,482,491],{},[231,483,484],{},[234,485,486,489],{},[237,487,488],{},"Store",[237,490,245],{},[247,492,493,505,517],{},[234,494,495,502],{},[252,496,497],{},[255,498,499],{},[258,500,501],{},"useDesktopStore",[252,503,504],{},"Personalization, default apps map, shell flags.",[234,506,507,514],{},[252,508,509],{},[255,510,511],{},[258,512,513],{},"useDesktopWorkspaceStore",[252,515,516],{},"Active workspace, overview mode.",[234,518,519,526],{},[252,520,521],{},[255,522,523],{},[258,524,525],{},"useDesktopWindowStore",[252,527,528],{},"Global z-index counter.",[454,530,531],{},"Per-app state lives in application controllers and app-specific stores registered by each app module.",[223,533,535],{"id":534},"removed-moved-symbols-33-34","Removed \u002F moved symbols (3.3 → 3.4)",[228,537,538,548],{},[231,539,540],{},[234,541,542,545],{},[237,543,544],{},"Old",[237,546,547],{},"New",[247,549,550,573,600,615,631,648,666,680],{},[234,551,552,560],{},[252,553,554,559],{},[255,555,556],{},[258,557,558],{},"useDesktopExplorerStore"," (core)",[252,561,562,566,567,572],{},[255,563,564],{},[258,565,432],{}," (in ",[255,568,569],{},[258,570,571],{},"@owdproject\u002Fmodule-fs",")",[234,574,575,588],{},[252,576,577,377,582,587],{},[255,578,579],{},[258,580,581],{},"CoreDesktop",[255,583,584],{},[258,585,586],{},"CoreWindow",", …",[252,589,590,377,595,587],{},[255,591,592],{},[258,593,594],{},"DesktopCore",[255,596,597],{},[258,598,599],{},"DesktopWindow",[234,601,602,609],{},[252,603,604],{},[255,605,606],{},[258,607,608],{},"useWorkspaceOverview",[252,610,611],{},[255,612,613],{},[258,614,295],{},[234,616,617,624],{},[252,618,619,559],{},[255,620,621],{},[258,622,623],{},"OWD_DIALOG_PROVIDER_KEY",[252,625,626,559],{},[255,627,628],{},[258,629,630],{},"DESKTOP_DIALOG_PROVIDER_KEY",[234,632,633,641],{},[252,634,635,636],{},"Shell composables in ",[255,637,638],{},[258,639,640],{},"kit-theme",[252,642,643],{},[255,644,645],{},[258,646,647],{},"@owdproject\u002Fcore\u002Fruntime\u002Fcomposables\u002F",[234,649,650,660],{},[252,651,652,469,656],{},[255,653,654],{},[258,655,468],{},[255,657,658],{},[258,659,640],{},[252,661,662],{},[255,663,664],{},[258,665,474],{},[234,667,668,674],{},[252,669,670,671],{},"Pinia store IDs starting with ",[258,672,673],{},"owd\u002F",[252,675,676,677],{},"Store IDs starting with ",[258,678,679],{},"desktop\u002F",[234,681,682,699],{},[252,683,684,689,690,689,695],{},[255,685,686],{},[258,687,688],{},"kit-fs"," \u002F ",[255,691,692],{},[258,693,694],{},"kit-explorer",[255,696,697],{},[258,698,640],{},[252,700,701,702,706,707],{},"core + ",[255,703,704],{},[258,705,571],{}," + ",[255,708,709],{},[258,710,474],{},[454,712,713,714,719,720,725,726,730],{},"When upgrading themes, grep for old package paths and align ",[255,715,716],{},[258,717,718],{},"peerDependencies"," to ",[255,721,722],{},[258,723,724],{},"^3.4.0"," (core) and add ",[255,727,728],{},[258,729,474],{}," for PV UI\u002Fdialogs.",[223,732,734],{"id":733},"related","Related",[736,737,738,743,747,751],"ul",{},[739,740,741],"li",{},[358,742,197],{"href":198},[739,744,745],{},[358,746,192],{"href":193},[739,748,749],{},[358,750,187],{"href":188},[739,752,753],{},[358,754,37],{"href":38},{"title":756,"searchDepth":757,"depth":757,"links":758},"",2,[759,760,761,762],{"id":225,"depth":757,"text":226},{"id":478,"depth":757,"text":479},{"id":534,"depth":757,"text":535},{"id":733,"depth":757,"text":734},"Where state lives and which APIs themes and apps should use.","md",null,{},{"icon":180},{"title":177,"description":763},"ksjyfqMeAaP_QM4XpVL9XeHhq5cXYaZpb6CfQLymHk4",[771,773],{"title":172,"path":173,"stem":174,"description":772,"icon":175,"children":-1},"Order of operations when @owdproject\u002Fcore loads.",{"title":182,"path":183,"stem":184,"description":774,"icon":185,"children":-1},"DesktopCore, DesktopWindow, and application rendering primitives.",1782171657198]