@forgeax/interface 0.4.1

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.
Files changed (963) hide show
  1. package/LICENSE +202 -0
  2. package/NOTICE +9 -0
  3. package/README.md +111 -0
  4. package/dist/package/browser/App.css +192 -0
  5. package/dist/package/browser/App.d.ts +11 -0
  6. package/dist/package/browser/App.js +11 -0
  7. package/dist/package/browser/ApplicationDetachedShell.d.ts +13 -0
  8. package/dist/package/browser/ApplicationDetachedShell.js +10 -0
  9. package/dist/package/browser/ApplicationShell.d.ts +19 -0
  10. package/dist/package/browser/ApplicationShell.js +62 -0
  11. package/dist/package/browser/app-kit.d.ts +1 -0
  12. package/dist/package/browser/app-kit.js +4 -0
  13. package/dist/package/browser/appHostBootstrap.d.ts +16 -0
  14. package/dist/package/browser/appHostBootstrap.js +145 -0
  15. package/dist/package/browser/application.d.ts +35 -0
  16. package/dist/package/browser/application.js +64 -0
  17. package/dist/package/browser/assets/icons/agent-icon.png +0 -0
  18. package/dist/package/browser/assets/icons/at.svg +3 -0
  19. package/dist/package/browser/assets/icons/chevron-collapse.svg +3 -0
  20. package/dist/package/browser/assets/icons/chevron-expand.svg +3 -0
  21. package/dist/package/browser/assets/icons/chevron-up.svg +3 -0
  22. package/dist/package/browser/assets/icons/close-x.svg +3 -0
  23. package/dist/package/browser/assets/icons/close.svg +3 -0
  24. package/dist/package/browser/assets/icons/copy.svg +4 -0
  25. package/dist/package/browser/assets/icons/edit.svg +3 -0
  26. package/dist/package/browser/assets/icons/fullscreen.svg +3 -0
  27. package/dist/package/browser/assets/icons/pause.svg +4 -0
  28. package/dist/package/browser/assets/icons/play.svg +3 -0
  29. package/dist/package/browser/assets/icons/select.svg +3 -0
  30. package/dist/package/browser/assets/icons/sendMessage-enable.svg +4 -0
  31. package/dist/package/browser/assets/icons/sendMessage.svg +4 -0
  32. package/dist/package/browser/assets/icons/status-done.svg +11 -0
  33. package/dist/package/browser/assets/icons/status-running.svg +10 -0
  34. package/dist/package/browser/assets/icons/status-waiting.svg +10 -0
  35. package/dist/package/browser/assets/icons/tool-execute-script.svg +3 -0
  36. package/dist/package/browser/assets/icons/tool-other.svg +10 -0
  37. package/dist/package/browser/assets/icons/tool-read-file.svg +3 -0
  38. package/dist/package/browser/assets/icons/tool-resource-search.svg +3 -0
  39. package/dist/package/browser/assets/icons/tool-task-todo.svg +4 -0
  40. package/dist/package/browser/assets/icons/tool-write-file.svg +3 -0
  41. package/dist/package/browser/boot/SettingsSection.d.ts +14 -0
  42. package/dist/package/browser/boot/SettingsSection.js +82 -0
  43. package/dist/package/browser/boot/broadcast.d.ts +2 -0
  44. package/dist/package/browser/boot/broadcast.js +32 -0
  45. package/dist/package/browser/boot/driver.d.ts +22 -0
  46. package/dist/package/browser/boot/driver.js +47 -0
  47. package/dist/package/browser/boot/store.d.ts +29 -0
  48. package/dist/package/browser/boot/store.js +114 -0
  49. package/dist/package/browser/boot/themes.d.ts +19 -0
  50. package/dist/package/browser/boot/themes.js +21 -0
  51. package/dist/package/browser/boot/types.d.ts +22 -0
  52. package/dist/package/browser/boot/types.js +30 -0
  53. package/dist/package/browser/brand/BrandProvider.d.ts +19 -0
  54. package/dist/package/browser/brand/BrandProvider.js +35 -0
  55. package/dist/package/browser/brand/index.d.ts +4 -0
  56. package/dist/package/browser/brand/index.js +3 -0
  57. package/dist/package/browser/brand/runtime.d.ts +17 -0
  58. package/dist/package/browser/brand/runtime.js +71 -0
  59. package/dist/package/browser/brand/types.d.ts +77 -0
  60. package/dist/package/browser/brand/types.js +9 -0
  61. package/dist/package/browser/components/ActivityRail/ActivityRail.css +294 -0
  62. package/dist/package/browser/components/ActivityRail/ActivityRail.d.ts +2 -0
  63. package/dist/package/browser/components/ActivityRail/ActivityRail.js +164 -0
  64. package/dist/package/browser/components/ActivityRail/activity-rail-model.d.ts +18 -0
  65. package/dist/package/browser/components/ActivityRail/activity-rail-model.js +144 -0
  66. package/dist/package/browser/components/AgentAvatar/AgentAvatar.d.ts +17 -0
  67. package/dist/package/browser/components/AgentAvatar/AgentAvatar.js +50 -0
  68. package/dist/package/browser/components/BuildBadge/BuildBadge.d.ts +1 -0
  69. package/dist/package/browser/components/BuildBadge/BuildBadge.js +279 -0
  70. package/dist/package/browser/components/Bus/BusAdminPanel.css +2425 -0
  71. package/dist/package/browser/components/Bus/BusAdminPanel.d.ts +2 -0
  72. package/dist/package/browser/components/Bus/BusAdminPanel.js +1385 -0
  73. package/dist/package/browser/components/Bus/CapabilityOverview.d.ts +3 -0
  74. package/dist/package/browser/components/Bus/CapabilityOverview.js +50 -0
  75. package/dist/package/browser/components/ChatColumn/ChatColumn.d.ts +2 -0
  76. package/dist/package/browser/components/ChatColumn/ChatColumn.js +18 -0
  77. package/dist/package/browser/components/ChatColumn/SessionTabStrip.d.ts +1 -0
  78. package/dist/package/browser/components/ChatColumn/SessionTabStrip.js +103 -0
  79. package/dist/package/browser/components/ChatColumn/useChatWidth.d.ts +5 -0
  80. package/dist/package/browser/components/ChatColumn/useChatWidth.js +13 -0
  81. package/dist/package/browser/components/CommandPalette/CommandPalette.css +199 -0
  82. package/dist/package/browser/components/CommandPalette/CommandPalette.d.ts +2 -0
  83. package/dist/package/browser/components/CommandPalette/CommandPalette.js +242 -0
  84. package/dist/package/browser/components/Confirm/ConfirmDialog.d.ts +2 -0
  85. package/dist/package/browser/components/Confirm/ConfirmDialog.js +113 -0
  86. package/dist/package/browser/components/ContextMenu/ContextMenu.d.ts +10 -0
  87. package/dist/package/browser/components/ContextMenu/ContextMenu.js +218 -0
  88. package/dist/package/browser/components/ContextMenu/menuRegistry.d.ts +18 -0
  89. package/dist/package/browser/components/ContextMenu/menuRegistry.js +152 -0
  90. package/dist/package/browser/components/DetachedSurface.d.ts +20 -0
  91. package/dist/package/browser/components/DetachedSurface.js +102 -0
  92. package/dist/package/browser/components/DockShell/DockPanelHost.d.ts +4 -0
  93. package/dist/package/browser/components/DockShell/DockPanelHost.js +7 -0
  94. package/dist/package/browser/components/DockShell/DockRegion.d.ts +7 -0
  95. package/dist/package/browser/components/DockShell/DockRegion.js +315 -0
  96. package/dist/package/browser/components/DockShell/DockShell.css +1018 -0
  97. package/dist/package/browser/components/DockShell/DockTab.d.ts +3 -0
  98. package/dist/package/browser/components/DockShell/DockTab.js +139 -0
  99. package/dist/package/browser/components/DockShell/ExtensionHostPanel.d.ts +9 -0
  100. package/dist/package/browser/components/DockShell/ExtensionHostPanel.js +68 -0
  101. package/dist/package/browser/components/DockShell/ExtensionRuntimeFrame.d.ts +14 -0
  102. package/dist/package/browser/components/DockShell/ExtensionRuntimeFrame.js +56 -0
  103. package/dist/package/browser/components/DockShell/PanelWindowingBoundary.d.ts +6 -0
  104. package/dist/package/browser/components/DockShell/PanelWindowingBoundary.js +9 -0
  105. package/dist/package/browser/components/DockShell/chatDockAnimation.d.ts +45 -0
  106. package/dist/package/browser/components/DockShell/chatDockAnimation.js +101 -0
  107. package/dist/package/browser/components/DockShell/chatDockFullscreen.d.ts +17 -0
  108. package/dist/package/browser/components/DockShell/chatDockFullscreen.js +22 -0
  109. package/dist/package/browser/components/DockShell/chatDockLayout.d.ts +10 -0
  110. package/dist/package/browser/components/DockShell/chatDockLayout.js +11 -0
  111. package/dist/package/browser/components/DockShell/compact-empty-dock-groups.d.ts +16 -0
  112. package/dist/package/browser/components/DockShell/compact-empty-dock-groups.js +28 -0
  113. package/dist/package/browser/components/DockShell/crossInstanceDrop.d.ts +1 -0
  114. package/dist/package/browser/components/DockShell/crossInstanceDrop.js +1 -0
  115. package/dist/package/browser/components/DockShell/dockResetEpoch.d.ts +2 -0
  116. package/dist/package/browser/components/DockShell/dockResetEpoch.js +13 -0
  117. package/dist/package/browser/components/DockShell/dockTitle.d.ts +12 -0
  118. package/dist/package/browser/components/DockShell/dockTitle.js +36 -0
  119. package/dist/package/browser/components/DockShell/dockviewRegistry.d.ts +1 -0
  120. package/dist/package/browser/components/DockShell/dockviewRegistry.js +1 -0
  121. package/dist/package/browser/components/DockShell/edgeDrawer.d.ts +24 -0
  122. package/dist/package/browser/components/DockShell/edgeDrawer.js +1144 -0
  123. package/dist/package/browser/components/DockShell/edgePinStore.d.ts +12 -0
  124. package/dist/package/browser/components/DockShell/edgePinStore.js +37 -0
  125. package/dist/package/browser/components/DockShell/extension-editor-bridge.d.ts +13 -0
  126. package/dist/package/browser/components/DockShell/extension-editor-bridge.js +100 -0
  127. package/dist/package/browser/components/DockShell/extension-runtime-selection.d.ts +8 -0
  128. package/dist/package/browser/components/DockShell/extension-runtime-selection.js +6 -0
  129. package/dist/package/browser/components/DockShell/extensionRuntime.d.ts +17 -0
  130. package/dist/package/browser/components/DockShell/extensionRuntime.js +84 -0
  131. package/dist/package/browser/components/DockShell/footer-panel-visibility.d.ts +7 -0
  132. package/dist/package/browser/components/DockShell/footer-panel-visibility.js +43 -0
  133. package/dist/package/browser/components/DockShell/footer-panels.d.ts +2 -0
  134. package/dist/package/browser/components/DockShell/footer-panels.js +7 -0
  135. package/dist/package/browser/components/DockShell/panelRegistry.d.ts +37 -0
  136. package/dist/package/browser/components/DockShell/panelRegistry.js +126 -0
  137. package/dist/package/browser/components/DockShell/panelRenderers.d.ts +325 -0
  138. package/dist/package/browser/components/DockShell/panelRenderers.js +25 -0
  139. package/dist/package/browser/components/DockShell/panelTabCommands.d.ts +18 -0
  140. package/dist/package/browser/components/DockShell/panelTabCommands.js +133 -0
  141. package/dist/package/browser/components/DockShell/panelWindowing.d.ts +32 -0
  142. package/dist/package/browser/components/DockShell/panelWindowing.js +42 -0
  143. package/dist/package/browser/components/DockShell/regions.d.ts +1 -0
  144. package/dist/package/browser/components/DockShell/regions.js +1 -0
  145. package/dist/package/browser/components/DockShell/resolveRegion.d.ts +1 -0
  146. package/dist/package/browser/components/DockShell/resolveRegion.js +1 -0
  147. package/dist/package/browser/components/DockShell/sanitizeDockLayout.d.ts +3 -0
  148. package/dist/package/browser/components/DockShell/sanitizeDockLayout.js +46 -0
  149. package/dist/package/browser/components/DockShell/sideEdgeMove.d.ts +1 -0
  150. package/dist/package/browser/components/DockShell/sideEdgeMove.js +1 -0
  151. package/dist/package/browser/components/DockShell/studioTabMenuProvider.d.ts +13 -0
  152. package/dist/package/browser/components/DockShell/studioTabMenuProvider.js +39 -0
  153. package/dist/package/browser/components/DockShell/tabContextMenu.d.ts +29 -0
  154. package/dist/package/browser/components/DockShell/tabContextMenu.js +68 -0
  155. package/dist/package/browser/components/DockShell/ueDrag/controller.d.ts +80 -0
  156. package/dist/package/browser/components/DockShell/ueDrag/controller.js +785 -0
  157. package/dist/package/browser/components/DockShell/ueDrag/geometry.d.ts +94 -0
  158. package/dist/package/browser/components/DockShell/ueDrag/geometry.js +217 -0
  159. package/dist/package/browser/components/DockShell/ueDrag/overlay.d.ts +32 -0
  160. package/dist/package/browser/components/DockShell/ueDrag/overlay.js +206 -0
  161. package/dist/package/browser/components/DockShell/ueDrag/ueDrag.css +199 -0
  162. package/dist/package/browser/components/DockShell/useAuxBarWidth.d.ts +5 -0
  163. package/dist/package/browser/components/DockShell/useAuxBarWidth.js +13 -0
  164. package/dist/package/browser/components/Drawer/DrawerHostView.css +143 -0
  165. package/dist/package/browser/components/Drawer/DrawerHostView.d.ts +19 -0
  166. package/dist/package/browser/components/Drawer/DrawerHostView.js +93 -0
  167. package/dist/package/browser/components/Drawer/DrawerLauncher.d.ts +12 -0
  168. package/dist/package/browser/components/Drawer/DrawerLauncher.js +22 -0
  169. package/dist/package/browser/components/Drawer/useDrawerStore.d.ts +15 -0
  170. package/dist/package/browser/components/Drawer/useDrawerStore.js +80 -0
  171. package/dist/package/browser/components/ErrorBoundary.d.ts +55 -0
  172. package/dist/package/browser/components/ErrorBoundary.js +131 -0
  173. package/dist/package/browser/components/ExtensionHost/ExtensionIframeHost.d.ts +28 -0
  174. package/dist/package/browser/components/ExtensionHost/ExtensionIframeHost.js +179 -0
  175. package/dist/package/browser/components/ExtensionHost/NativeExtensionHost.d.ts +14 -0
  176. package/dist/package/browser/components/ExtensionHost/NativeExtensionHost.js +152 -0
  177. package/dist/package/browser/components/Feedback/FeedbackPanel.css +640 -0
  178. package/dist/package/browser/components/Feedback/FeedbackPanel.d.ts +8 -0
  179. package/dist/package/browser/components/Feedback/FeedbackPanel.js +118 -0
  180. package/dist/package/browser/components/Feedback/PassiveFeedback.css +179 -0
  181. package/dist/package/browser/components/Feedback/PassiveFeedback.d.ts +2 -0
  182. package/dist/package/browser/components/Feedback/PassiveFeedback.js +218 -0
  183. package/dist/package/browser/components/Feedback/collect.d.ts +15 -0
  184. package/dist/package/browser/components/Feedback/collect.js +80 -0
  185. package/dist/package/browser/components/Feedback/store.d.ts +61 -0
  186. package/dist/package/browser/components/Feedback/store.js +174 -0
  187. package/dist/package/browser/components/LangSwitcher/LangSwitcher.css +78 -0
  188. package/dist/package/browser/components/LangSwitcher/LangSwitcher.d.ts +14 -0
  189. package/dist/package/browser/components/LangSwitcher/LangSwitcher.js +44 -0
  190. package/dist/package/browser/components/MainArea/ConsolePanel.d.ts +1 -0
  191. package/dist/package/browser/components/MainArea/ConsolePanel.js +16 -0
  192. package/dist/package/browser/components/MainArea/MainArea.css +2130 -0
  193. package/dist/package/browser/components/MainArea/MainArea.d.ts +2 -0
  194. package/dist/package/browser/components/MainArea/MainArea.js +20 -0
  195. package/dist/package/browser/components/MainArea/StandaloneExtensionIframe.d.ts +25 -0
  196. package/dist/package/browser/components/MainArea/StandaloneExtensionIframe.js +155 -0
  197. package/dist/package/browser/components/MainArea/SurfacePanels.d.ts +3 -0
  198. package/dist/package/browser/components/MainArea/SurfacePanels.js +27 -0
  199. package/dist/package/browser/components/MainArea/TelemetryViewer.css +122 -0
  200. package/dist/package/browser/components/MainArea/TelemetryViewer.d.ts +36 -0
  201. package/dist/package/browser/components/MainArea/TelemetryViewer.js +116 -0
  202. package/dist/package/browser/components/MenuBar/MenuBar.css +186 -0
  203. package/dist/package/browser/components/MenuBar/MenuBar.d.ts +27 -0
  204. package/dist/package/browser/components/MenuBar/MenuBar.js +286 -0
  205. package/dist/package/browser/components/MenuBar/index.d.ts +1 -0
  206. package/dist/package/browser/components/MenuBar/index.js +1 -0
  207. package/dist/package/browser/components/MenuBar/menubar-open-state.d.ts +8 -0
  208. package/dist/package/browser/components/MenuBar/menubar-open-state.js +11 -0
  209. package/dist/package/browser/components/MenuBar/menubar-surface.d.ts +30 -0
  210. package/dist/package/browser/components/MenuBar/menubar-surface.js +201 -0
  211. package/dist/package/browser/components/ModelPicker/index.d.ts +1 -0
  212. package/dist/package/browser/components/ModelPicker/index.js +1 -0
  213. package/dist/package/browser/components/ModelPicker/useModelCatalog.d.ts +22 -0
  214. package/dist/package/browser/components/ModelPicker/useModelCatalog.js +100 -0
  215. package/dist/package/browser/components/Onboarding/ConnectModelPrompt.d.ts +2 -0
  216. package/dist/package/browser/components/Onboarding/ConnectModelPrompt.js +40 -0
  217. package/dist/package/browser/components/Onboarding/Onboarding.css +232 -0
  218. package/dist/package/browser/components/Onboarding/OnboardingController.d.ts +10 -0
  219. package/dist/package/browser/components/Onboarding/OnboardingController.js +549 -0
  220. package/dist/package/browser/components/Onboarding/connect-selection.d.ts +17 -0
  221. package/dist/package/browser/components/Onboarding/connect-selection.js +18 -0
  222. package/dist/package/browser/components/Onboarding/home-transition.d.ts +9 -0
  223. package/dist/package/browser/components/Onboarding/home-transition.js +20 -0
  224. package/dist/package/browser/components/Onboarding/index.d.ts +4 -0
  225. package/dist/package/browser/components/Onboarding/index.js +3 -0
  226. package/dist/package/browser/components/Onboarding/prepareTourShell.d.ts +5 -0
  227. package/dist/package/browser/components/Onboarding/prepareTourShell.js +11 -0
  228. package/dist/package/browser/components/Onboarding/project-name.d.ts +17 -0
  229. package/dist/package/browser/components/Onboarding/project-name.js +29 -0
  230. package/dist/package/browser/components/Onboarding/types.d.ts +31 -0
  231. package/dist/package/browser/components/Onboarding/types.js +77 -0
  232. package/dist/package/browser/components/PageTabs/PageTabStrip.css +221 -0
  233. package/dist/package/browser/components/PageTabs/PageTabStrip.d.ts +3 -0
  234. package/dist/package/browser/components/PageTabs/PageTabStrip.js +214 -0
  235. package/dist/package/browser/components/PageTabs/openablePageTypes.d.ts +9 -0
  236. package/dist/package/browser/components/PageTabs/openablePageTypes.js +13 -0
  237. package/dist/package/browser/components/PanelShell/PanelShell.css +517 -0
  238. package/dist/package/browser/components/PanelShell/PanelShell.d.ts +7 -0
  239. package/dist/package/browser/components/PanelShell/PanelShell.js +459 -0
  240. package/dist/package/browser/components/Resize/ResizeHandle.d.ts +1 -0
  241. package/dist/package/browser/components/Resize/ResizeHandle.js +1 -0
  242. package/dist/package/browser/components/SceneBackground/SceneBackground.d.ts +2 -0
  243. package/dist/package/browser/components/SceneBackground/SceneBackground.js +5 -0
  244. package/dist/package/browser/components/SchemaForm/SchemaForm.css +138 -0
  245. package/dist/package/browser/components/SchemaForm/SchemaForm.d.ts +17 -0
  246. package/dist/package/browser/components/SchemaForm/SchemaForm.js +86 -0
  247. package/dist/package/browser/components/SchemaForm/schema-form-utils.d.ts +30 -0
  248. package/dist/package/browser/components/SchemaForm/schema-form-utils.js +51 -0
  249. package/dist/package/browser/components/SettingsPrimitives.d.ts +24 -0
  250. package/dist/package/browser/components/SettingsPrimitives.js +145 -0
  251. package/dist/package/browser/components/Sidebar/BusHealthLamp.d.ts +1 -0
  252. package/dist/package/browser/components/Sidebar/BusHealthLamp.js +72 -0
  253. package/dist/package/browser/components/Sidebar/FilesPanel.d.ts +1 -0
  254. package/dist/package/browser/components/Sidebar/FilesPanel.js +234 -0
  255. package/dist/package/browser/components/Sidebar/Sidebar.css +1393 -0
  256. package/dist/package/browser/components/Sidebar/Sidebar.d.ts +3 -0
  257. package/dist/package/browser/components/Sidebar/Sidebar.js +8 -0
  258. package/dist/package/browser/components/Sidebar/sidebar-types.d.ts +18 -0
  259. package/dist/package/browser/components/Sidebar/sidebar-types.js +1 -0
  260. package/dist/package/browser/components/SlotDebugOverlay/SlotDebugOverlay.d.ts +1 -0
  261. package/dist/package/browser/components/SlotDebugOverlay/SlotDebugOverlay.js +1 -0
  262. package/dist/package/browser/components/SlotDebugOverlay/hashHue.d.ts +1 -0
  263. package/dist/package/browser/components/SlotDebugOverlay/hashHue.js +1 -0
  264. package/dist/package/browser/components/SlotDebugOverlay/index.d.ts +1 -0
  265. package/dist/package/browser/components/SlotDebugOverlay/index.js +1 -0
  266. package/dist/package/browser/components/SlotDebugOverlay/isSlotDebugEnabled.d.ts +1 -0
  267. package/dist/package/browser/components/SlotDebugOverlay/isSlotDebugEnabled.js +1 -0
  268. package/dist/package/browser/components/StatusBar/FatalBanner.d.ts +25 -0
  269. package/dist/package/browser/components/StatusBar/FatalBanner.js +52 -0
  270. package/dist/package/browser/components/StatusBar/GlobalStatusBar.css +304 -0
  271. package/dist/package/browser/components/StatusBar/InfoPanel.css +174 -0
  272. package/dist/package/browser/components/StatusBar/InfoPanel.d.ts +19 -0
  273. package/dist/package/browser/components/StatusBar/InfoPanel.js +128 -0
  274. package/dist/package/browser/components/StatusBar/StatusChip.css +52 -0
  275. package/dist/package/browser/components/StatusBar/StatusChip.d.ts +40 -0
  276. package/dist/package/browser/components/StatusBar/StatusChip.js +13 -0
  277. package/dist/package/browser/components/StatusBar/StripHostView.d.ts +2 -0
  278. package/dist/package/browser/components/StatusBar/StripHostView.js +91 -0
  279. package/dist/package/browser/components/StatusBar/StripPopover.css +58 -0
  280. package/dist/package/browser/components/StatusBar/StripPopover.d.ts +16 -0
  281. package/dist/package/browser/components/StatusBar/StripPopover.js +15 -0
  282. package/dist/package/browser/components/StatusBar/feeds/PulseFeeds.d.ts +16 -0
  283. package/dist/package/browser/components/StatusBar/feeds/PulseFeeds.js +88 -0
  284. package/dist/package/browser/components/StatusBar/footer/CheckpointsDrawer.d.ts +4 -0
  285. package/dist/package/browser/components/StatusBar/footer/CheckpointsDrawer.js +77 -0
  286. package/dist/package/browser/components/StatusBar/footer/DiagnosticsPopover.d.ts +4 -0
  287. package/dist/package/browser/components/StatusBar/footer/DiagnosticsPopover.js +108 -0
  288. package/dist/package/browser/components/StatusBar/footer/EventsDrawer.d.ts +14 -0
  289. package/dist/package/browser/components/StatusBar/footer/EventsDrawer.js +25 -0
  290. package/dist/package/browser/components/StatusBar/footer/ForgeaxBuildPopover.d.ts +4 -0
  291. package/dist/package/browser/components/StatusBar/footer/ForgeaxBuildPopover.js +62 -0
  292. package/dist/package/browser/components/StatusBar/footer/footer.css +178 -0
  293. package/dist/package/browser/components/StatusBar/healthBridge.d.ts +38 -0
  294. package/dist/package/browser/components/StatusBar/healthBridge.js +245 -0
  295. package/dist/package/browser/components/StatusBar/healthStore.d.ts +80 -0
  296. package/dist/package/browser/components/StatusBar/healthStore.js +129 -0
  297. package/dist/package/browser/components/StatusBar/useStatusItem.d.ts +10 -0
  298. package/dist/package/browser/components/StatusBar/useStatusItem.js +35 -0
  299. package/dist/package/browser/components/Surfaces/SurfaceKeepAlive.css +34 -0
  300. package/dist/package/browser/components/Surfaces/SurfaceKeepAliveLayer.d.ts +3 -0
  301. package/dist/package/browser/components/Surfaces/SurfaceKeepAliveLayer.js +218 -0
  302. package/dist/package/browser/components/Surfaces/SurfaceOverlay.css +160 -0
  303. package/dist/package/browser/components/Surfaces/SurfaceOverlay.d.ts +9 -0
  304. package/dist/package/browser/components/Surfaces/SurfaceOverlay.js +144 -0
  305. package/dist/package/browser/components/TopBar/AndroidPackageDialog.d.ts +23 -0
  306. package/dist/package/browser/components/TopBar/AndroidPackageDialog.js +115 -0
  307. package/dist/package/browser/components/TopBar/FsBrowser.css +156 -0
  308. package/dist/package/browser/components/TopBar/FsBrowser.d.ts +8 -0
  309. package/dist/package/browser/components/TopBar/FsBrowser.js +93 -0
  310. package/dist/package/browser/components/TopBar/GameSwitcher.d.ts +29 -0
  311. package/dist/package/browser/components/TopBar/GameSwitcher.js +157 -0
  312. package/dist/package/browser/components/TopBar/IosPackageDialog.d.ts +23 -0
  313. package/dist/package/browser/components/TopBar/IosPackageDialog.js +115 -0
  314. package/dist/package/browser/components/TopBar/ProjectSwitcher.d.ts +3 -0
  315. package/dist/package/browser/components/TopBar/ProjectSwitcher.js +41 -0
  316. package/dist/package/browser/components/TopBar/PublishOnboarding.css +133 -0
  317. package/dist/package/browser/components/TopBar/PublishOnboarding.d.ts +10 -0
  318. package/dist/package/browser/components/TopBar/PublishOnboarding.js +144 -0
  319. package/dist/package/browser/components/TopBar/SessionSwitcher.d.ts +2 -0
  320. package/dist/package/browser/components/TopBar/SessionSwitcher.js +124 -0
  321. package/dist/package/browser/components/TopBar/TopBar.css +1672 -0
  322. package/dist/package/browser/components/TopBar/TopBar.d.ts +2 -0
  323. package/dist/package/browser/components/TopBar/TopBar.js +606 -0
  324. package/dist/package/browser/components/TopBar/publish-options.d.ts +20 -0
  325. package/dist/package/browser/components/TopBar/publish-options.js +28 -0
  326. package/dist/package/browser/components/TourOverlay/TourOverlay.css +122 -0
  327. package/dist/package/browser/components/TourOverlay/TourOverlay.d.ts +26 -0
  328. package/dist/package/browser/components/TourOverlay/TourOverlay.js +233 -0
  329. package/dist/package/browser/components/TourOverlay/index.d.ts +2 -0
  330. package/dist/package/browser/components/TourOverlay/index.js +1 -0
  331. package/dist/package/browser/components/ownership.d.ts +7 -0
  332. package/dist/package/browser/components/ownership.js +7 -0
  333. package/dist/package/browser/components/ui/SearchableMenu.css +143 -0
  334. package/dist/package/browser/components/ui/SearchableMenu.d.ts +30 -0
  335. package/dist/package/browser/components/ui/SearchableMenu.js +40 -0
  336. package/dist/package/browser/components/ui/alert-dialog.d.ts +20 -0
  337. package/dist/package/browser/components/ui/alert-dialog.js +38 -0
  338. package/dist/package/browser/components/ui/button.d.ts +11 -0
  339. package/dist/package/browser/components/ui/button.js +33 -0
  340. package/dist/package/browser/components/ui/checkbox.d.ts +4 -0
  341. package/dist/package/browser/components/ui/checkbox.js +8 -0
  342. package/dist/package/browser/components/ui/command.d.ts +74 -0
  343. package/dist/package/browser/components/ui/command.js +20 -0
  344. package/dist/package/browser/components/ui/dialog.d.ts +21 -0
  345. package/dist/package/browser/components/ui/dialog.js +34 -0
  346. package/dist/package/browser/components/ui/dropdown-menu.d.ts +18 -0
  347. package/dist/package/browser/components/ui/dropdown-menu.js +30 -0
  348. package/dist/package/browser/components/ui/input.d.ts +3 -0
  349. package/dist/package/browser/components/ui/input.js +8 -0
  350. package/dist/package/browser/components/ui/label.d.ts +4 -0
  351. package/dist/package/browser/components/ui/label.js +7 -0
  352. package/dist/package/browser/components/ui/popover.d.ts +7 -0
  353. package/dist/package/browser/components/ui/popover.js +10 -0
  354. package/dist/package/browser/components/ui/select.d.ts +11 -0
  355. package/dist/package/browser/components/ui/select.js +31 -0
  356. package/dist/package/browser/components/ui/tabs.d.ts +7 -0
  357. package/dist/package/browser/components/ui/tabs.js +12 -0
  358. package/dist/package/browser/components/ui/textarea.d.ts +3 -0
  359. package/dist/package/browser/components/ui/textarea.js +8 -0
  360. package/dist/package/browser/components/ui/tooltip.d.ts +7 -0
  361. package/dist/package/browser/components/ui/tooltip.js +10 -0
  362. package/dist/package/browser/core/app-shell/catalog-page-extensions.d.ts +28 -0
  363. package/dist/package/browser/core/app-shell/catalog-page-extensions.js +234 -0
  364. package/dist/package/browser/core/app-shell/derive-panel-renderers.d.ts +2 -0
  365. package/dist/package/browser/core/app-shell/derive-panel-renderers.js +17 -0
  366. package/dist/package/browser/core/app-shell/host.d.ts +31 -0
  367. package/dist/package/browser/core/app-shell/host.js +188 -0
  368. package/dist/package/browser/core/app-shell/index.d.ts +7 -0
  369. package/dist/package/browser/core/app-shell/index.js +8 -0
  370. package/dist/package/browser/core/app-shell/logger.d.ts +2 -0
  371. package/dist/package/browser/core/app-shell/logger.js +6 -0
  372. package/dist/package/browser/core/app-shell/ownership.d.ts +7 -0
  373. package/dist/package/browser/core/app-shell/ownership.js +7 -0
  374. package/dist/package/browser/core/app-shell/react/HostProvider.d.ts +10 -0
  375. package/dist/package/browser/core/app-shell/react/HostProvider.js +35 -0
  376. package/dist/package/browser/core/app-shell/surface-extension.d.ts +17 -0
  377. package/dist/package/browser/core/app-shell/surface-extension.js +33 -0
  378. package/dist/package/browser/core/app-shell/types.d.ts +176 -0
  379. package/dist/package/browser/core/app-shell/types.js +1 -0
  380. package/dist/package/browser/core/contextual-keybindings.d.ts +71 -0
  381. package/dist/package/browser/core/contextual-keybindings.js +198 -0
  382. package/dist/package/browser/core/extension-foundation/bus.d.ts +2 -0
  383. package/dist/package/browser/core/extension-foundation/bus.js +3 -0
  384. package/dist/package/browser/core/extension-foundation/capabilities.d.ts +2 -0
  385. package/dist/package/browser/core/extension-foundation/capabilities.js +3 -0
  386. package/dist/package/browser/core/extension-foundation/commands.d.ts +2 -0
  387. package/dist/package/browser/core/extension-foundation/commands.js +3 -0
  388. package/dist/package/browser/core/extension-foundation/context-keys.d.ts +2 -0
  389. package/dist/package/browser/core/extension-foundation/context-keys.js +3 -0
  390. package/dist/package/browser/core/extension-foundation/contribution-registry.d.ts +2 -0
  391. package/dist/package/browser/core/extension-foundation/contribution-registry.js +3 -0
  392. package/dist/package/browser/core/extension-foundation/errors.d.ts +2 -0
  393. package/dist/package/browser/core/extension-foundation/errors.js +3 -0
  394. package/dist/package/browser/core/extension-foundation/index.d.ts +8 -0
  395. package/dist/package/browser/core/extension-foundation/index.js +9 -0
  396. package/dist/package/browser/core/extension-foundation/loader.d.ts +2 -0
  397. package/dist/package/browser/core/extension-foundation/loader.js +3 -0
  398. package/dist/package/browser/core/extension-foundation/storage.d.ts +2 -0
  399. package/dist/package/browser/core/extension-foundation/storage.js +3 -0
  400. package/dist/package/browser/core/extension-foundation/types.d.ts +2 -0
  401. package/dist/package/browser/core/extension-foundation/types.js +1 -0
  402. package/dist/package/browser/core/extensions/builtin-commands.d.ts +2 -0
  403. package/dist/package/browser/core/extensions/builtin-commands.js +256 -0
  404. package/dist/package/browser/core/extensions/builtin-menus.d.ts +2 -0
  405. package/dist/package/browser/core/extensions/builtin-menus.js +252 -0
  406. package/dist/package/browser/core/extensions/chrome-drawer.d.ts +3 -0
  407. package/dist/package/browser/core/extensions/chrome-drawer.js +45 -0
  408. package/dist/package/browser/core/extensions/chrome-statusbar.d.ts +6 -0
  409. package/dist/package/browser/core/extensions/chrome-statusbar.js +26 -0
  410. package/dist/package/browser/core/extensions/detached-agents-browser.d.ts +3 -0
  411. package/dist/package/browser/core/extensions/detached-agents-browser.js +9 -0
  412. package/dist/package/browser/core/extensions/detached-files-browser.d.ts +3 -0
  413. package/dist/package/browser/core/extensions/detached-files-browser.js +6 -0
  414. package/dist/package/browser/core/extensions/editor-commands.d.ts +2 -0
  415. package/dist/package/browser/core/extensions/editor-commands.js +182 -0
  416. package/dist/package/browser/core/extensions/foundation-bus.d.ts +2 -0
  417. package/dist/package/browser/core/extensions/foundation-bus.js +3 -0
  418. package/dist/package/browser/core/extensions/foundation-commands.d.ts +2 -0
  419. package/dist/package/browser/core/extensions/foundation-commands.js +6 -0
  420. package/dist/package/browser/core/extensions/foundation-storage.d.ts +2 -0
  421. package/dist/package/browser/core/extensions/foundation-storage.js +3 -0
  422. package/dist/package/browser/core/extensions/host-commands.d.ts +18 -0
  423. package/dist/package/browser/core/extensions/host-commands.js +52 -0
  424. package/dist/package/browser/core/extensions/observability.d.ts +14 -0
  425. package/dist/package/browser/core/extensions/observability.js +18 -0
  426. package/dist/package/browser/core/extensions/panels-chat.d.ts +2 -0
  427. package/dist/package/browser/core/extensions/panels-chat.js +41 -0
  428. package/dist/package/browser/core/extensions/panels-editor.d.ts +8 -0
  429. package/dist/package/browser/core/extensions/panels-editor.js +26 -0
  430. package/dist/package/browser/core/extensions/panels-viewport.d.ts +2 -0
  431. package/dist/package/browser/core/extensions/panels-viewport.js +20 -0
  432. package/dist/package/browser/core/extensions/session-client.d.ts +29 -0
  433. package/dist/package/browser/core/extensions/session-client.js +42 -0
  434. package/dist/package/browser/core/extensions/slots-corner-agent-picker.d.ts +5 -0
  435. package/dist/package/browser/core/extensions/slots-corner-agent-picker.js +6 -0
  436. package/dist/package/browser/core/extensions/slots-main-area-body.d.ts +3 -0
  437. package/dist/package/browser/core/extensions/slots-main-area-body.js +6 -0
  438. package/dist/package/browser/core/extensions/slots-sidebar-agents.d.ts +3 -0
  439. package/dist/package/browser/core/extensions/slots-sidebar-agents.js +6 -0
  440. package/dist/package/browser/core/extensions/studio-domain-clients.d.ts +12 -0
  441. package/dist/package/browser/core/extensions/studio-domain-clients.js +15 -0
  442. package/dist/package/browser/core/extensions/surfaces-scene-editor.d.ts +3 -0
  443. package/dist/package/browser/core/extensions/surfaces-scene-editor.js +6 -0
  444. package/dist/package/browser/core/extensions/trajectory.d.ts +2 -0
  445. package/dist/package/browser/core/extensions/trajectory.js +50 -0
  446. package/dist/package/browser/core/page-navigation.d.ts +1 -0
  447. package/dist/package/browser/core/page-navigation.js +1 -0
  448. package/dist/package/browser/core/page-platform/activity.d.ts +4 -0
  449. package/dist/package/browser/core/page-platform/activity.js +46 -0
  450. package/dist/package/browser/core/page-platform/dockview-layout.d.ts +7 -0
  451. package/dist/package/browser/core/page-platform/dockview-layout.js +63 -0
  452. package/dist/package/browser/core/page-platform/index.d.ts +8 -0
  453. package/dist/package/browser/core/page-platform/index.js +8 -0
  454. package/dist/package/browser/core/page-platform/layout-store.d.ts +18 -0
  455. package/dist/package/browser/core/page-platform/layout-store.js +54 -0
  456. package/dist/package/browser/core/page-platform/page-dirty-probe.d.ts +1 -0
  457. package/dist/package/browser/core/page-platform/page-dirty-probe.js +4 -0
  458. package/dist/package/browser/core/page-platform/registry.d.ts +3 -0
  459. package/dist/package/browser/core/page-platform/registry.js +194 -0
  460. package/dist/package/browser/core/page-platform/resource-editor.d.ts +3 -0
  461. package/dist/package/browser/core/page-platform/resource-editor.js +74 -0
  462. package/dist/package/browser/core/page-platform/session.d.ts +10 -0
  463. package/dist/package/browser/core/page-platform/session.js +327 -0
  464. package/dist/package/browser/core/page-platform/types.d.ts +242 -0
  465. package/dist/package/browser/core/page-platform/types.js +10 -0
  466. package/dist/package/browser/core/panels/context-expression.d.ts +1 -0
  467. package/dist/package/browser/core/panels/context-expression.js +1 -0
  468. package/dist/package/browser/core/panels/drawer.d.ts +23 -0
  469. package/dist/package/browser/core/panels/drawer.js +1 -0
  470. package/dist/package/browser/core/panels/index.d.ts +7 -0
  471. package/dist/package/browser/core/panels/index.js +7 -0
  472. package/dist/package/browser/core/panels/panel-action-registry.d.ts +6 -0
  473. package/dist/package/browser/core/panels/panel-action-registry.js +62 -0
  474. package/dist/package/browser/core/panels/panel-control-registry.d.ts +6 -0
  475. package/dist/package/browser/core/panels/panel-control-registry.js +54 -0
  476. package/dist/package/browser/core/panels/resolve-panel-action-state.d.ts +10 -0
  477. package/dist/package/browser/core/panels/resolve-panel-action-state.js +9 -0
  478. package/dist/package/browser/core/panels/strip.d.ts +40 -0
  479. package/dist/package/browser/core/panels/strip.js +1 -0
  480. package/dist/package/browser/core/panels/types.d.ts +143 -0
  481. package/dist/package/browser/core/panels/types.js +1 -0
  482. package/dist/package/browser/i18n/index.d.ts +50 -0
  483. package/dist/package/browser/i18n/index.js +207 -0
  484. package/dist/package/browser/i18n/locales/en.json +1959 -0
  485. package/dist/package/browser/i18n/locales/zh.json +1959 -0
  486. package/dist/package/browser/index.d.ts +2 -0
  487. package/dist/package/browser/index.js +2 -0
  488. package/dist/package/browser/lib/a11y-summary.d.ts +17 -0
  489. package/dist/package/browser/lib/a11y-summary.js +66 -0
  490. package/dist/package/browser/lib/action-dom-discovery.d.ts +2 -0
  491. package/dist/package/browser/lib/action-dom-discovery.js +84 -0
  492. package/dist/package/browser/lib/action-registry.d.ts +94 -0
  493. package/dist/package/browser/lib/action-registry.js +210 -0
  494. package/dist/package/browser/lib/aegis.d.ts +40 -0
  495. package/dist/package/browser/lib/aegis.js +230 -0
  496. package/dist/package/browser/lib/agent-catalog-url.d.ts +9 -0
  497. package/dist/package/browser/lib/agent-catalog-url.js +24 -0
  498. package/dist/package/browser/lib/agent-cli-provider.d.ts +10 -0
  499. package/dist/package/browser/lib/agent-cli-provider.js +81 -0
  500. package/dist/package/browser/lib/ai-intents.d.ts +30 -0
  501. package/dist/package/browser/lib/ai-intents.js +52 -0
  502. package/dist/package/browser/lib/broadcast-stream.d.ts +17 -0
  503. package/dist/package/browser/lib/broadcast-stream.js +163 -0
  504. package/dist/package/browser/lib/browser-prefs-sync.d.ts +16 -0
  505. package/dist/package/browser/lib/browser-prefs-sync.js +151 -0
  506. package/dist/package/browser/lib/builtin-actions.d.ts +2 -0
  507. package/dist/package/browser/lib/builtin-actions.js +558 -0
  508. package/dist/package/browser/lib/bus.d.ts +25 -0
  509. package/dist/package/browser/lib/bus.js +71 -0
  510. package/dist/package/browser/lib/checkpoint-api.d.ts +54 -0
  511. package/dist/package/browser/lib/checkpoint-api.js +41 -0
  512. package/dist/package/browser/lib/cli-providers.d.ts +33 -0
  513. package/dist/package/browser/lib/cli-providers.js +61 -0
  514. package/dist/package/browser/lib/command-palette-store.d.ts +5 -0
  515. package/dist/package/browser/lib/command-palette-store.js +22 -0
  516. package/dist/package/browser/lib/composer-bridge.d.ts +103 -0
  517. package/dist/package/browser/lib/composer-bridge.js +448 -0
  518. package/dist/package/browser/lib/dashboard-api.d.ts +104 -0
  519. package/dist/package/browser/lib/dashboard-api.js +125 -0
  520. package/dist/package/browser/lib/deep-link-bus.d.ts +10 -0
  521. package/dist/package/browser/lib/deep-link-bus.js +35 -0
  522. package/dist/package/browser/lib/dialog.d.ts +40 -0
  523. package/dist/package/browser/lib/dialog.js +103 -0
  524. package/dist/package/browser/lib/editor-facts-bus.d.ts +27 -0
  525. package/dist/package/browser/lib/editor-facts-bus.js +25 -0
  526. package/dist/package/browser/lib/extension-api.d.ts +140 -0
  527. package/dist/package/browser/lib/extension-api.js +90 -0
  528. package/dist/package/browser/lib/file-activity-stream.d.ts +54 -0
  529. package/dist/package/browser/lib/file-activity-stream.js +123 -0
  530. package/dist/package/browser/lib/file-family.d.ts +15 -0
  531. package/dist/package/browser/lib/file-family.js +25 -0
  532. package/dist/package/browser/lib/game-templates.d.ts +7 -0
  533. package/dist/package/browser/lib/game-templates.js +15 -0
  534. package/dist/package/browser/lib/global-shortcuts.d.ts +121 -0
  535. package/dist/package/browser/lib/global-shortcuts.js +551 -0
  536. package/dist/package/browser/lib/logSink.d.ts +16 -0
  537. package/dist/package/browser/lib/logSink.js +128 -0
  538. package/dist/package/browser/lib/lucide-icon.d.ts +5 -0
  539. package/dist/package/browser/lib/lucide-icon.js +20 -0
  540. package/dist/package/browser/lib/menu-registry.d.ts +113 -0
  541. package/dist/package/browser/lib/menu-registry.js +197 -0
  542. package/dist/package/browser/lib/model-config.d.ts +89 -0
  543. package/dist/package/browser/lib/model-config.js +72 -0
  544. package/dist/package/browser/lib/model-prefs.d.ts +5 -0
  545. package/dist/package/browser/lib/model-prefs.js +53 -0
  546. package/dist/package/browser/lib/model-route/index.d.ts +81 -0
  547. package/dist/package/browser/lib/model-route/index.js +175 -0
  548. package/dist/package/browser/lib/narrative-copilot.d.ts +20 -0
  549. package/dist/package/browser/lib/narrative-copilot.js +105 -0
  550. package/dist/package/browser/lib/native-menu-bridge.d.ts +37 -0
  551. package/dist/package/browser/lib/native-menu-bridge.js +151 -0
  552. package/dist/package/browser/lib/page-tab-icons.d.ts +21 -0
  553. package/dist/package/browser/lib/page-tab-icons.js +64 -0
  554. package/dist/package/browser/lib/panel-tab-icons.d.ts +21 -0
  555. package/dist/package/browser/lib/panel-tab-icons.js +49 -0
  556. package/dist/package/browser/lib/passive-feedback.d.ts +50 -0
  557. package/dist/package/browser/lib/passive-feedback.js +171 -0
  558. package/dist/package/browser/lib/perception-stream.d.ts +27 -0
  559. package/dist/package/browser/lib/perception-stream.js +42 -0
  560. package/dist/package/browser/lib/platform/index.d.ts +14 -0
  561. package/dist/package/browser/lib/platform/index.js +13 -0
  562. package/dist/package/browser/lib/platform/runtime.d.ts +22 -0
  563. package/dist/package/browser/lib/platform/runtime.js +42 -0
  564. package/dist/package/browser/lib/platform/shell-adapter.d.ts +24 -0
  565. package/dist/package/browser/lib/platform/shell-adapter.js +74 -0
  566. package/dist/package/browser/lib/platform/surface-windowing.d.ts +4 -0
  567. package/dist/package/browser/lib/platform/surface-windowing.js +16 -0
  568. package/dist/package/browser/lib/platform/surface.d.ts +13 -0
  569. package/dist/package/browser/lib/platform/surface.js +27 -0
  570. package/dist/package/browser/lib/platform/use-surface-windowing.d.ts +1 -0
  571. package/dist/package/browser/lib/platform/use-surface-windowing.js +6 -0
  572. package/dist/package/browser/lib/platform/window-manager.d.ts +2 -0
  573. package/dist/package/browser/lib/platform/window-manager.js +82 -0
  574. package/dist/package/browser/lib/project-context.d.ts +4 -0
  575. package/dist/package/browser/lib/project-context.js +42 -0
  576. package/dist/package/browser/lib/project.d.ts +5 -0
  577. package/dist/package/browser/lib/project.js +8 -0
  578. package/dist/package/browser/lib/recent-games.d.ts +24 -0
  579. package/dist/package/browser/lib/recent-games.js +50 -0
  580. package/dist/package/browser/lib/repair-builtin-menus.d.ts +6 -0
  581. package/dist/package/browser/lib/repair-builtin-menus.js +18 -0
  582. package/dist/package/browser/lib/reply-language.d.ts +9 -0
  583. package/dist/package/browser/lib/reply-language.js +11 -0
  584. package/dist/package/browser/lib/resilient-polling.d.ts +9 -0
  585. package/dist/package/browser/lib/resilient-polling.js +16 -0
  586. package/dist/package/browser/lib/session-time.d.ts +8 -0
  587. package/dist/package/browser/lib/session-time.js +40 -0
  588. package/dist/package/browser/lib/shell-live-data.d.ts +12 -0
  589. package/dist/package/browser/lib/shell-live-data.js +66 -0
  590. package/dist/package/browser/lib/sse.d.ts +5 -0
  591. package/dist/package/browser/lib/sse.js +42 -0
  592. package/dist/package/browser/lib/storageKeys.d.ts +70 -0
  593. package/dist/package/browser/lib/storageKeys.js +89 -0
  594. package/dist/package/browser/lib/surface-store.d.ts +38 -0
  595. package/dist/package/browser/lib/surface-store.js +62 -0
  596. package/dist/package/browser/lib/surface.d.ts +56 -0
  597. package/dist/package/browser/lib/surface.js +225 -0
  598. package/dist/package/browser/lib/surfaceAnchors.d.ts +16 -0
  599. package/dist/package/browser/lib/surfaceAnchors.js +76 -0
  600. package/dist/package/browser/lib/surfaceKeepAliveLayout.d.ts +7 -0
  601. package/dist/package/browser/lib/surfaceKeepAliveLayout.js +12 -0
  602. package/dist/package/browser/lib/telemetry-test-prelude.d.ts +0 -0
  603. package/dist/package/browser/lib/telemetry-test-prelude.js +14 -0
  604. package/dist/package/browser/lib/text-edit-actions.d.ts +14 -0
  605. package/dist/package/browser/lib/text-edit-actions.js +184 -0
  606. package/dist/package/browser/lib/trace.d.ts +34 -0
  607. package/dist/package/browser/lib/trace.js +273 -0
  608. package/dist/package/browser/lib/trustedOrigins.d.ts +4 -0
  609. package/dist/package/browser/lib/trustedOrigins.js +36 -0
  610. package/dist/package/browser/lib/ui-action-highlight.d.ts +2 -0
  611. package/dist/package/browser/lib/ui-action-highlight.js +93 -0
  612. package/dist/package/browser/lib/ui-bridge.d.ts +2 -0
  613. package/dist/package/browser/lib/ui-bridge.js +224 -0
  614. package/dist/package/browser/lib/ui-screenshot.d.ts +31 -0
  615. package/dist/package/browser/lib/ui-screenshot.js +155 -0
  616. package/dist/package/browser/lib/ui-trajectory.d.ts +47 -0
  617. package/dist/package/browser/lib/ui-trajectory.js +99 -0
  618. package/dist/package/browser/lib/use-bus-snapshot.d.ts +3 -0
  619. package/dist/package/browser/lib/use-bus-snapshot.js +13 -0
  620. package/dist/package/browser/lib/use-extension-manifest.d.ts +19 -0
  621. package/dist/package/browser/lib/use-extension-manifest.js +67 -0
  622. package/dist/package/browser/lib/useConfirmToast.d.ts +26 -0
  623. package/dist/package/browser/lib/useConfirmToast.js +120 -0
  624. package/dist/package/browser/lib/utils.d.ts +2 -0
  625. package/dist/package/browser/lib/utils.js +5 -0
  626. package/dist/package/browser/lib/vag-action-bridge.d.ts +2 -0
  627. package/dist/package/browser/lib/vag-action-bridge.js +130 -0
  628. package/dist/package/browser/main.d.ts +1 -0
  629. package/dist/package/browser/main.js +157 -0
  630. package/dist/package/browser/store-parts/domain-clients.d.ts +149 -0
  631. package/dist/package/browser/store-parts/domain-clients.js +17 -0
  632. package/dist/package/browser/store-parts/observability.d.ts +4 -0
  633. package/dist/package/browser/store-parts/observability.js +35 -0
  634. package/dist/package/browser/store-parts/persistence.d.ts +40 -0
  635. package/dist/package/browser/store-parts/persistence.js +245 -0
  636. package/dist/package/browser/store-parts/session-client.d.ts +73 -0
  637. package/dist/package/browser/store-parts/session-client.js +17 -0
  638. package/dist/package/browser/store-parts/session-pick.d.ts +8 -0
  639. package/dist/package/browser/store-parts/session-pick.js +21 -0
  640. package/dist/package/browser/store-parts/shell.d.ts +5 -0
  641. package/dist/package/browser/store-parts/shell.js +37 -0
  642. package/dist/package/browser/store.d.ts +455 -0
  643. package/dist/package/browser/store.js +890 -0
  644. package/dist/package/browser/styles/forgeax-preview/agent-avatar.css +69 -0
  645. package/dist/package/browser/styles/forgeax-preview/aliases.css +21 -0
  646. package/dist/package/browser/styles/forgeax-preview/chat-popover.css +141 -0
  647. package/dist/package/browser/styles/forgeax-preview/chat-session.css +896 -0
  648. package/dist/package/browser/styles/forgeax-preview/composer-port.css +531 -0
  649. package/dist/package/browser/styles/forgeax-preview/design-tokens.css +25 -0
  650. package/dist/package/browser/styles/forgeax-preview/index.css +9 -0
  651. package/dist/package/browser/styles/forgeax-preview/scene-fx.css +117 -0
  652. package/dist/package/browser/styles/forgeax-preview/shell-layout.css +280 -0
  653. package/dist/package/browser/styles/forgeax-preview/shell-skin.css +128 -0
  654. package/dist/package/browser/styles/foundation.tokens.json +2755 -0
  655. package/dist/package/browser/styles/global.css +196 -0
  656. package/dist/package/browser/styles/motion.css +558 -0
  657. package/dist/package/browser/styles/plugin-token-bridge.css +19 -0
  658. package/dist/package/browser/styles/primitive.css +197 -0
  659. package/dist/package/browser/styles/semantic.tokens.json +1524 -0
  660. package/dist/package/browser/styles/tokens.css +304 -0
  661. package/dist/package/node/App.js +11 -0
  662. package/dist/package/node/ApplicationDetachedShell.js +10 -0
  663. package/dist/package/node/ApplicationShell.js +62 -0
  664. package/dist/package/node/app-kit.js +4 -0
  665. package/dist/package/node/appHostBootstrap.js +145 -0
  666. package/dist/package/node/application.js +64 -0
  667. package/dist/package/node/boot/SettingsSection.js +82 -0
  668. package/dist/package/node/boot/broadcast.js +32 -0
  669. package/dist/package/node/boot/driver.js +47 -0
  670. package/dist/package/node/boot/store.js +114 -0
  671. package/dist/package/node/boot/themes.js +21 -0
  672. package/dist/package/node/boot/types.js +30 -0
  673. package/dist/package/node/brand/BrandProvider.js +35 -0
  674. package/dist/package/node/brand/index.js +3 -0
  675. package/dist/package/node/brand/runtime.js +71 -0
  676. package/dist/package/node/brand/types.js +9 -0
  677. package/dist/package/node/components/ActivityRail/ActivityRail.js +164 -0
  678. package/dist/package/node/components/ActivityRail/activity-rail-model.js +144 -0
  679. package/dist/package/node/components/AgentAvatar/AgentAvatar.js +50 -0
  680. package/dist/package/node/components/BuildBadge/BuildBadge.js +279 -0
  681. package/dist/package/node/components/Bus/BusAdminPanel.js +1385 -0
  682. package/dist/package/node/components/Bus/CapabilityOverview.js +50 -0
  683. package/dist/package/node/components/ChatColumn/ChatColumn.js +18 -0
  684. package/dist/package/node/components/ChatColumn/SessionTabStrip.js +103 -0
  685. package/dist/package/node/components/ChatColumn/useChatWidth.js +13 -0
  686. package/dist/package/node/components/CommandPalette/CommandPalette.js +242 -0
  687. package/dist/package/node/components/Confirm/ConfirmDialog.js +113 -0
  688. package/dist/package/node/components/ContextMenu/ContextMenu.js +218 -0
  689. package/dist/package/node/components/ContextMenu/menuRegistry.js +152 -0
  690. package/dist/package/node/components/DetachedSurface.js +102 -0
  691. package/dist/package/node/components/DockShell/DockPanelHost.js +7 -0
  692. package/dist/package/node/components/DockShell/DockRegion.js +315 -0
  693. package/dist/package/node/components/DockShell/DockTab.js +139 -0
  694. package/dist/package/node/components/DockShell/ExtensionHostPanel.js +68 -0
  695. package/dist/package/node/components/DockShell/ExtensionRuntimeFrame.js +56 -0
  696. package/dist/package/node/components/DockShell/PanelWindowingBoundary.js +9 -0
  697. package/dist/package/node/components/DockShell/chatDockAnimation.js +101 -0
  698. package/dist/package/node/components/DockShell/chatDockFullscreen.js +22 -0
  699. package/dist/package/node/components/DockShell/chatDockLayout.js +11 -0
  700. package/dist/package/node/components/DockShell/compact-empty-dock-groups.js +28 -0
  701. package/dist/package/node/components/DockShell/crossInstanceDrop.js +1 -0
  702. package/dist/package/node/components/DockShell/dockResetEpoch.js +13 -0
  703. package/dist/package/node/components/DockShell/dockTitle.js +36 -0
  704. package/dist/package/node/components/DockShell/dockviewRegistry.js +1 -0
  705. package/dist/package/node/components/DockShell/edgeDrawer.js +1144 -0
  706. package/dist/package/node/components/DockShell/edgePinStore.js +37 -0
  707. package/dist/package/node/components/DockShell/extension-editor-bridge.js +100 -0
  708. package/dist/package/node/components/DockShell/extension-runtime-selection.js +6 -0
  709. package/dist/package/node/components/DockShell/extensionRuntime.js +84 -0
  710. package/dist/package/node/components/DockShell/footer-panel-visibility.js +43 -0
  711. package/dist/package/node/components/DockShell/footer-panels.js +7 -0
  712. package/dist/package/node/components/DockShell/panelRegistry.js +126 -0
  713. package/dist/package/node/components/DockShell/panelRenderers.js +25 -0
  714. package/dist/package/node/components/DockShell/panelTabCommands.js +133 -0
  715. package/dist/package/node/components/DockShell/panelWindowing.js +42 -0
  716. package/dist/package/node/components/DockShell/regions.js +1 -0
  717. package/dist/package/node/components/DockShell/resolveRegion.js +1 -0
  718. package/dist/package/node/components/DockShell/sanitizeDockLayout.js +46 -0
  719. package/dist/package/node/components/DockShell/sideEdgeMove.js +1 -0
  720. package/dist/package/node/components/DockShell/studioTabMenuProvider.js +39 -0
  721. package/dist/package/node/components/DockShell/tabContextMenu.js +68 -0
  722. package/dist/package/node/components/DockShell/ueDrag/controller.js +785 -0
  723. package/dist/package/node/components/DockShell/ueDrag/geometry.js +217 -0
  724. package/dist/package/node/components/DockShell/ueDrag/overlay.js +206 -0
  725. package/dist/package/node/components/DockShell/useAuxBarWidth.js +13 -0
  726. package/dist/package/node/components/Drawer/DrawerHostView.js +93 -0
  727. package/dist/package/node/components/Drawer/DrawerLauncher.js +22 -0
  728. package/dist/package/node/components/Drawer/useDrawerStore.js +80 -0
  729. package/dist/package/node/components/ErrorBoundary.js +131 -0
  730. package/dist/package/node/components/ExtensionHost/ExtensionIframeHost.js +179 -0
  731. package/dist/package/node/components/ExtensionHost/NativeExtensionHost.js +152 -0
  732. package/dist/package/node/components/Feedback/FeedbackPanel.js +118 -0
  733. package/dist/package/node/components/Feedback/PassiveFeedback.js +218 -0
  734. package/dist/package/node/components/Feedback/collect.js +80 -0
  735. package/dist/package/node/components/Feedback/store.js +174 -0
  736. package/dist/package/node/components/LangSwitcher/LangSwitcher.js +44 -0
  737. package/dist/package/node/components/MainArea/ConsolePanel.js +16 -0
  738. package/dist/package/node/components/MainArea/MainArea.js +20 -0
  739. package/dist/package/node/components/MainArea/StandaloneExtensionIframe.js +155 -0
  740. package/dist/package/node/components/MainArea/SurfacePanels.js +27 -0
  741. package/dist/package/node/components/MainArea/TelemetryViewer.js +116 -0
  742. package/dist/package/node/components/MenuBar/MenuBar.js +286 -0
  743. package/dist/package/node/components/MenuBar/index.js +1 -0
  744. package/dist/package/node/components/MenuBar/menubar-open-state.js +11 -0
  745. package/dist/package/node/components/MenuBar/menubar-surface.js +201 -0
  746. package/dist/package/node/components/ModelPicker/index.js +1 -0
  747. package/dist/package/node/components/ModelPicker/useModelCatalog.js +100 -0
  748. package/dist/package/node/components/Onboarding/ConnectModelPrompt.js +40 -0
  749. package/dist/package/node/components/Onboarding/OnboardingController.js +549 -0
  750. package/dist/package/node/components/Onboarding/connect-selection.js +18 -0
  751. package/dist/package/node/components/Onboarding/home-transition.js +20 -0
  752. package/dist/package/node/components/Onboarding/index.js +3 -0
  753. package/dist/package/node/components/Onboarding/prepareTourShell.js +11 -0
  754. package/dist/package/node/components/Onboarding/project-name.js +29 -0
  755. package/dist/package/node/components/Onboarding/types.js +77 -0
  756. package/dist/package/node/components/PageTabs/PageTabStrip.js +214 -0
  757. package/dist/package/node/components/PageTabs/openablePageTypes.js +13 -0
  758. package/dist/package/node/components/PanelShell/PanelShell.js +459 -0
  759. package/dist/package/node/components/Resize/ResizeHandle.js +1 -0
  760. package/dist/package/node/components/SceneBackground/SceneBackground.js +5 -0
  761. package/dist/package/node/components/SchemaForm/SchemaForm.js +86 -0
  762. package/dist/package/node/components/SchemaForm/schema-form-utils.js +51 -0
  763. package/dist/package/node/components/SettingsPrimitives.js +145 -0
  764. package/dist/package/node/components/Sidebar/BusHealthLamp.js +72 -0
  765. package/dist/package/node/components/Sidebar/FilesPanel.js +234 -0
  766. package/dist/package/node/components/Sidebar/Sidebar.js +8 -0
  767. package/dist/package/node/components/Sidebar/sidebar-types.js +1 -0
  768. package/dist/package/node/components/SlotDebugOverlay/SlotDebugOverlay.js +1 -0
  769. package/dist/package/node/components/SlotDebugOverlay/hashHue.js +1 -0
  770. package/dist/package/node/components/SlotDebugOverlay/index.js +1 -0
  771. package/dist/package/node/components/SlotDebugOverlay/isSlotDebugEnabled.js +1 -0
  772. package/dist/package/node/components/StatusBar/FatalBanner.js +52 -0
  773. package/dist/package/node/components/StatusBar/InfoPanel.js +128 -0
  774. package/dist/package/node/components/StatusBar/StatusChip.js +13 -0
  775. package/dist/package/node/components/StatusBar/StripHostView.js +91 -0
  776. package/dist/package/node/components/StatusBar/StripPopover.js +15 -0
  777. package/dist/package/node/components/StatusBar/feeds/PulseFeeds.js +88 -0
  778. package/dist/package/node/components/StatusBar/footer/CheckpointsDrawer.js +77 -0
  779. package/dist/package/node/components/StatusBar/footer/DiagnosticsPopover.js +108 -0
  780. package/dist/package/node/components/StatusBar/footer/EventsDrawer.js +25 -0
  781. package/dist/package/node/components/StatusBar/footer/ForgeaxBuildPopover.js +62 -0
  782. package/dist/package/node/components/StatusBar/healthBridge.js +245 -0
  783. package/dist/package/node/components/StatusBar/healthStore.js +129 -0
  784. package/dist/package/node/components/StatusBar/useStatusItem.js +35 -0
  785. package/dist/package/node/components/Surfaces/SurfaceKeepAliveLayer.js +218 -0
  786. package/dist/package/node/components/Surfaces/SurfaceOverlay.js +144 -0
  787. package/dist/package/node/components/TopBar/AndroidPackageDialog.js +115 -0
  788. package/dist/package/node/components/TopBar/FsBrowser.js +93 -0
  789. package/dist/package/node/components/TopBar/GameSwitcher.js +157 -0
  790. package/dist/package/node/components/TopBar/IosPackageDialog.js +115 -0
  791. package/dist/package/node/components/TopBar/ProjectSwitcher.js +41 -0
  792. package/dist/package/node/components/TopBar/PublishOnboarding.js +144 -0
  793. package/dist/package/node/components/TopBar/SessionSwitcher.js +124 -0
  794. package/dist/package/node/components/TopBar/TopBar.js +606 -0
  795. package/dist/package/node/components/TopBar/publish-options.js +28 -0
  796. package/dist/package/node/components/TourOverlay/TourOverlay.js +233 -0
  797. package/dist/package/node/components/TourOverlay/index.js +1 -0
  798. package/dist/package/node/components/ownership.js +7 -0
  799. package/dist/package/node/components/ui/SearchableMenu.js +40 -0
  800. package/dist/package/node/components/ui/alert-dialog.js +38 -0
  801. package/dist/package/node/components/ui/button.js +33 -0
  802. package/dist/package/node/components/ui/checkbox.js +8 -0
  803. package/dist/package/node/components/ui/command.js +20 -0
  804. package/dist/package/node/components/ui/dialog.js +34 -0
  805. package/dist/package/node/components/ui/dropdown-menu.js +30 -0
  806. package/dist/package/node/components/ui/input.js +8 -0
  807. package/dist/package/node/components/ui/label.js +7 -0
  808. package/dist/package/node/components/ui/popover.js +10 -0
  809. package/dist/package/node/components/ui/select.js +31 -0
  810. package/dist/package/node/components/ui/tabs.js +12 -0
  811. package/dist/package/node/components/ui/textarea.js +8 -0
  812. package/dist/package/node/components/ui/tooltip.js +10 -0
  813. package/dist/package/node/core/app-shell/catalog-page-extensions.js +234 -0
  814. package/dist/package/node/core/app-shell/derive-panel-renderers.js +17 -0
  815. package/dist/package/node/core/app-shell/host.js +188 -0
  816. package/dist/package/node/core/app-shell/index.js +8 -0
  817. package/dist/package/node/core/app-shell/logger.js +6 -0
  818. package/dist/package/node/core/app-shell/ownership.js +7 -0
  819. package/dist/package/node/core/app-shell/react/HostProvider.js +35 -0
  820. package/dist/package/node/core/app-shell/surface-extension.js +33 -0
  821. package/dist/package/node/core/app-shell/types.js +1 -0
  822. package/dist/package/node/core/contextual-keybindings.js +198 -0
  823. package/dist/package/node/core/extension-foundation/bus.js +3 -0
  824. package/dist/package/node/core/extension-foundation/capabilities.js +3 -0
  825. package/dist/package/node/core/extension-foundation/commands.js +3 -0
  826. package/dist/package/node/core/extension-foundation/context-keys.js +3 -0
  827. package/dist/package/node/core/extension-foundation/contribution-registry.js +3 -0
  828. package/dist/package/node/core/extension-foundation/errors.js +3 -0
  829. package/dist/package/node/core/extension-foundation/index.js +9 -0
  830. package/dist/package/node/core/extension-foundation/loader.js +3 -0
  831. package/dist/package/node/core/extension-foundation/storage.js +3 -0
  832. package/dist/package/node/core/extension-foundation/types.js +1 -0
  833. package/dist/package/node/core/extensions/builtin-commands.js +256 -0
  834. package/dist/package/node/core/extensions/builtin-menus.js +252 -0
  835. package/dist/package/node/core/extensions/chrome-drawer.js +45 -0
  836. package/dist/package/node/core/extensions/chrome-statusbar.js +26 -0
  837. package/dist/package/node/core/extensions/detached-agents-browser.js +9 -0
  838. package/dist/package/node/core/extensions/detached-files-browser.js +6 -0
  839. package/dist/package/node/core/extensions/editor-commands.js +182 -0
  840. package/dist/package/node/core/extensions/foundation-bus.js +3 -0
  841. package/dist/package/node/core/extensions/foundation-commands.js +6 -0
  842. package/dist/package/node/core/extensions/foundation-storage.js +3 -0
  843. package/dist/package/node/core/extensions/host-commands.js +52 -0
  844. package/dist/package/node/core/extensions/observability.js +18 -0
  845. package/dist/package/node/core/extensions/panels-chat.js +41 -0
  846. package/dist/package/node/core/extensions/panels-editor.js +26 -0
  847. package/dist/package/node/core/extensions/panels-viewport.js +20 -0
  848. package/dist/package/node/core/extensions/session-client.js +42 -0
  849. package/dist/package/node/core/extensions/slots-corner-agent-picker.js +6 -0
  850. package/dist/package/node/core/extensions/slots-main-area-body.js +6 -0
  851. package/dist/package/node/core/extensions/slots-sidebar-agents.js +6 -0
  852. package/dist/package/node/core/extensions/studio-domain-clients.js +15 -0
  853. package/dist/package/node/core/extensions/surfaces-scene-editor.js +6 -0
  854. package/dist/package/node/core/extensions/trajectory.js +50 -0
  855. package/dist/package/node/core/page-navigation.js +1 -0
  856. package/dist/package/node/core/page-platform/activity.js +46 -0
  857. package/dist/package/node/core/page-platform/dockview-layout.js +63 -0
  858. package/dist/package/node/core/page-platform/index.js +8 -0
  859. package/dist/package/node/core/page-platform/layout-store.js +54 -0
  860. package/dist/package/node/core/page-platform/page-dirty-probe.js +4 -0
  861. package/dist/package/node/core/page-platform/registry.js +194 -0
  862. package/dist/package/node/core/page-platform/resource-editor.js +74 -0
  863. package/dist/package/node/core/page-platform/session.js +327 -0
  864. package/dist/package/node/core/page-platform/types.js +10 -0
  865. package/dist/package/node/core/panels/context-expression.js +1 -0
  866. package/dist/package/node/core/panels/drawer.js +1 -0
  867. package/dist/package/node/core/panels/index.js +7 -0
  868. package/dist/package/node/core/panels/panel-action-registry.js +62 -0
  869. package/dist/package/node/core/panels/panel-control-registry.js +54 -0
  870. package/dist/package/node/core/panels/resolve-panel-action-state.js +9 -0
  871. package/dist/package/node/core/panels/strip.js +1 -0
  872. package/dist/package/node/core/panels/types.js +1 -0
  873. package/dist/package/node/i18n/index.js +207 -0
  874. package/dist/package/node/i18n/locales/en.json +1959 -0
  875. package/dist/package/node/i18n/locales/zh.json +1959 -0
  876. package/dist/package/node/index.js +2 -0
  877. package/dist/package/node/lib/a11y-summary.js +66 -0
  878. package/dist/package/node/lib/action-dom-discovery.js +84 -0
  879. package/dist/package/node/lib/action-registry.js +210 -0
  880. package/dist/package/node/lib/aegis.js +230 -0
  881. package/dist/package/node/lib/agent-catalog-url.js +24 -0
  882. package/dist/package/node/lib/agent-cli-provider.js +81 -0
  883. package/dist/package/node/lib/ai-intents.js +52 -0
  884. package/dist/package/node/lib/broadcast-stream.js +163 -0
  885. package/dist/package/node/lib/browser-prefs-sync.js +151 -0
  886. package/dist/package/node/lib/builtin-actions.js +558 -0
  887. package/dist/package/node/lib/bus.js +71 -0
  888. package/dist/package/node/lib/checkpoint-api.js +41 -0
  889. package/dist/package/node/lib/cli-providers.js +61 -0
  890. package/dist/package/node/lib/command-palette-store.js +22 -0
  891. package/dist/package/node/lib/composer-bridge.js +448 -0
  892. package/dist/package/node/lib/dashboard-api.js +125 -0
  893. package/dist/package/node/lib/deep-link-bus.js +35 -0
  894. package/dist/package/node/lib/dialog.js +103 -0
  895. package/dist/package/node/lib/editor-facts-bus.js +25 -0
  896. package/dist/package/node/lib/extension-api.js +90 -0
  897. package/dist/package/node/lib/file-activity-stream.js +123 -0
  898. package/dist/package/node/lib/file-family.js +25 -0
  899. package/dist/package/node/lib/game-templates.js +15 -0
  900. package/dist/package/node/lib/global-shortcuts.js +551 -0
  901. package/dist/package/node/lib/logSink.js +128 -0
  902. package/dist/package/node/lib/lucide-icon.js +20 -0
  903. package/dist/package/node/lib/menu-registry.js +197 -0
  904. package/dist/package/node/lib/model-config.js +72 -0
  905. package/dist/package/node/lib/model-prefs.js +53 -0
  906. package/dist/package/node/lib/model-route/index.js +175 -0
  907. package/dist/package/node/lib/narrative-copilot.js +105 -0
  908. package/dist/package/node/lib/native-menu-bridge.js +151 -0
  909. package/dist/package/node/lib/page-tab-icons.js +64 -0
  910. package/dist/package/node/lib/panel-tab-icons.js +49 -0
  911. package/dist/package/node/lib/passive-feedback.js +171 -0
  912. package/dist/package/node/lib/perception-stream.js +42 -0
  913. package/dist/package/node/lib/platform/index.js +13 -0
  914. package/dist/package/node/lib/platform/runtime.js +42 -0
  915. package/dist/package/node/lib/platform/shell-adapter.js +74 -0
  916. package/dist/package/node/lib/platform/surface-windowing.js +16 -0
  917. package/dist/package/node/lib/platform/surface.js +27 -0
  918. package/dist/package/node/lib/platform/use-surface-windowing.js +6 -0
  919. package/dist/package/node/lib/platform/window-manager.js +82 -0
  920. package/dist/package/node/lib/project-context.js +42 -0
  921. package/dist/package/node/lib/project.js +8 -0
  922. package/dist/package/node/lib/recent-games.js +50 -0
  923. package/dist/package/node/lib/repair-builtin-menus.js +18 -0
  924. package/dist/package/node/lib/reply-language.js +11 -0
  925. package/dist/package/node/lib/resilient-polling.js +16 -0
  926. package/dist/package/node/lib/session-time.js +40 -0
  927. package/dist/package/node/lib/shell-live-data.js +66 -0
  928. package/dist/package/node/lib/sse.js +42 -0
  929. package/dist/package/node/lib/storageKeys.js +89 -0
  930. package/dist/package/node/lib/surface-store.js +62 -0
  931. package/dist/package/node/lib/surface.js +225 -0
  932. package/dist/package/node/lib/surfaceAnchors.js +76 -0
  933. package/dist/package/node/lib/surfaceKeepAliveLayout.js +12 -0
  934. package/dist/package/node/lib/telemetry-test-prelude.js +14 -0
  935. package/dist/package/node/lib/text-edit-actions.js +184 -0
  936. package/dist/package/node/lib/trace.js +273 -0
  937. package/dist/package/node/lib/trustedOrigins.js +36 -0
  938. package/dist/package/node/lib/ui-action-highlight.js +93 -0
  939. package/dist/package/node/lib/ui-bridge.js +224 -0
  940. package/dist/package/node/lib/ui-screenshot.js +155 -0
  941. package/dist/package/node/lib/ui-trajectory.js +99 -0
  942. package/dist/package/node/lib/use-bus-snapshot.js +13 -0
  943. package/dist/package/node/lib/use-extension-manifest.js +67 -0
  944. package/dist/package/node/lib/useConfirmToast.js +120 -0
  945. package/dist/package/node/lib/utils.js +5 -0
  946. package/dist/package/node/lib/vag-action-bridge.js +130 -0
  947. package/dist/package/node/main.js +157 -0
  948. package/dist/package/node/store-parts/domain-clients.js +17 -0
  949. package/dist/package/node/store-parts/observability.js +35 -0
  950. package/dist/package/node/store-parts/persistence.js +245 -0
  951. package/dist/package/node/store-parts/session-client.js +17 -0
  952. package/dist/package/node/store-parts/session-pick.js +21 -0
  953. package/dist/package/node/store-parts/shell.js +37 -0
  954. package/dist/package/node/store.js +890 -0
  955. package/dist/package/node/styles/foundation.tokens.json +2755 -0
  956. package/dist/package/node/styles/semantic.tokens.json +1524 -0
  957. package/dist/package/packages/design/styles/fx-bridge.css +25 -0
  958. package/dist/package/packages/design/styles/primitive.css +199 -0
  959. package/dist/package/packages/design/styles/semantic.css +262 -0
  960. package/dist/package/packages/design/theme.d.ts +15 -0
  961. package/dist/package/packages/design/theme.js +31 -0
  962. package/dist/package/packages/design/tokens.css +14 -0
  963. package/package.json +145 -0
@@ -0,0 +1,1018 @@
1
+ /* DockShell — square, padding-free dock styling. Dockview's theme contract owns
2
+ the 6px inter-group gap; CSS only skins the groups and chrome. */
3
+ .fx-dockshell {
4
+ flex: 1 1 auto;
5
+ height: 100%;
6
+ width: 100%;
7
+ min-width: 0;
8
+ min-height: 0;
9
+ }
10
+
11
+ /* Map dockview's theme variables to the studio tokens so it matches the shell
12
+ skin. Dockview mounts overflow popovers beside .fx-dockshell under .dv-shell,
13
+ so the shell must receive the same variables as the main dockview element.
14
+ These compound selectors also beat the abyss theme's own declarations. */
15
+ .fx-dockwrap .dv-shell.dockview-theme-abyss,
16
+ .dockview-theme-abyss.fx-dockshell,
17
+ .fx-dockshell {
18
+ /* UE-style depth: the dock canvas is the darkest layer and shows through the
19
+ native 6px group gaps; panel surfaces sit one semantic step above it. */
20
+ --fx-dock-container-background: var(--color-background-canvas, #0d0d0d);
21
+ --fx-dock-panel-background: var(--color-background-base, #191919);
22
+
23
+ /* ── background / chrome ── */
24
+ --dv-background-color: var(--fx-dock-container-background);
25
+ --dv-group-view-background-color: var(--fx-dock-panel-background);
26
+ --dv-tabs-and-actions-container-background-color: var(--color-background-elevated, #161619);
27
+
28
+ /* ── tab colours. The SELECTED tab (the one whose panel is showing) is the
29
+ DARKEST shade so it reads as connected to its content — this is true
30
+ whether or not its group has focus. Focus only adds the lime accent bar
31
+ (::before, active-group-only), so an "open but unfocused" tab looks like
32
+ a focused tab minus that top bar. Hidden/background tabs stay lighter.
33
+ active group / active tab → darkest (#0d0d0f) fg=primary + accent bar
34
+ active group / hidden tab → mid (#161619) fg=secondary
35
+ inactive group / active tab → darkest (#0d0d0f) fg=primary (= "open")
36
+ inactive group / hidden tab → lightest (#1e1e22) fg=muted
37
+ No blue. No abyss purple. Consistent with the rest of the studio UI. ── */
38
+ --dv-activegroup-visiblepanel-tab-background-color: var(--fx-dock-panel-background);
39
+ --dv-activegroup-hiddenpanel-tab-background-color: var(--color-background-elevated, #161619);
40
+ --dv-inactivegroup-visiblepanel-tab-background-color: var(--fx-dock-panel-background);
41
+ --dv-inactivegroup-hiddenpanel-tab-background-color: var(--color-background-overlay, #1e1e22);
42
+
43
+ --dv-activegroup-visiblepanel-tab-color: var(--color-text-primary, #e8eaed);
44
+ --dv-activegroup-hiddenpanel-tab-color: var(--color-text-secondary, #9aa0aa);
45
+ --dv-inactivegroup-visiblepanel-tab-color: var(--color-text-primary, #e8eaed);
46
+ --dv-inactivegroup-hiddenpanel-tab-color: var(--color-text-tertiary, #5f6368);
47
+
48
+ /* ── borders / separators ── */
49
+ --dv-tab-divider-color: var(--color-border-default, #2a2d30);
50
+ --dv-separator-border: var(--color-border-default, #2a2d30);
51
+
52
+ /* ── interactive accent (sash resize + drop zone): lime, NOT blue ── */
53
+ --dv-paneview-active-outline-color: var(--lime, #7ee04a);
54
+ --dv-active-sash-color: transparent;
55
+ --dv-tabs-container-scrollbar-color: var(--color-border-default, #2a2d30);
56
+ --dv-drag-over-background-color: rgba(126, 224, 74, 0.18);
57
+ --dv-drag-over-border-color: var(--lime, #7ee04a);
58
+
59
+ /* Neutralise the abyss-theme colour palette that bleeds through (#007acc etc.) */
60
+ --dv-color-abyss-dark: var(--color-background-base, #0d0d0f);
61
+ --dv-color-abyss: var(--color-background-elevated, #161619);
62
+ --dv-color-abyss-light: var(--color-background-overlay, #1e1e22);
63
+ --dv-color-abyss-lighter: var(--color-background-raised, #252529);
64
+ --dv-color-abyss-accent: var(--lime, #7ee04a);
65
+
66
+ /* Tab context menu base chrome — PageTabStrip DropdownMenu (bg-popover). */
67
+ --dv-context-menu-background-color: var(--color-background-elevated, #242424);
68
+ --dv-context-menu-color: var(--color-text-secondary, rgba(255, 255, 255, 0.60));
69
+ --dv-floating-box-shadow: 0 4px 16px rgba(0, 0, 0, 0.45);
70
+ --dv-border-radius: var(--radius-md, 8px);
71
+ }
72
+
73
+ /* Dockview paints its root with the group color by default. Override only the
74
+ core grid root so the gap exposes the darker canvas without affecting edge
75
+ drawers or floating groups. */
76
+ .fx-dockshell .dv-dockview {
77
+ --dv-separator-border: transparent;
78
+ background-color: var(--fx-dock-container-background);
79
+ }
80
+
81
+ /* Core grid groups are borderless UE-style surfaces: separation comes only
82
+ from the darker 6px canvas gap. Keep this scoped under the inner dv-dockview;
83
+ edge groups are hoisted beside it into .dv-shell, so their drawer outline
84
+ (defined below on .dv-groupview-edge > .dv-content-container) is preserved. */
85
+ .fx-dockshell .dv-dockview .dv-groupview:not(.dv-groupview-edge),
86
+ .fx-dockshell .dv-dockview .groupview:not(.groupview-edge) {
87
+ border: 0 !important;
88
+ outline: 0;
89
+ box-shadow: none;
90
+ }
91
+
92
+ /* Edge groups and the core grid are siblings in Dockview's outer shell
93
+ splitviews. Their separator pseudo-elements are outside `.dv-dockview`, so
94
+ hideBorders on the core cannot reach them. Remove only those static shell
95
+ separators; do not touch the edge drawer content border. */
96
+ .fx-dockwrap
97
+ .dv-shell
98
+ > .dv-split-view-container.dv-separator-border
99
+ > .dv-view-container
100
+ > .dv-view:not(:first-child)::before,
101
+ .fx-dockwrap
102
+ .dv-shell-middle-column
103
+ > .dv-split-view-container.dv-separator-border
104
+ > .dv-view-container
105
+ > .dv-view:not(:first-child)::before {
106
+ display: none;
107
+ }
108
+
109
+ /* Flush + square: no rounded corners, no extra padding on the docked content. */
110
+ .fx-dockshell .dv-react-part,
111
+ .fx-dockshell .dv-tabs-and-actions-container,
112
+ .fx-dockshell .groupview,
113
+ .fx-dockshell .tab,
114
+ .fx-dockshell .dv-tab { border-radius: 0 !important; }
115
+
116
+ /* Keep the shell and edge strips flush, but round only the TOP corners of
117
+ ordinary workspace tabs so the selected tab reads as a surface without
118
+ turning the dock into a set of floating cards. */
119
+ .fx-dockshell .dv-groupview:not(.dv-groupview-edge):not(.groupview-edge) .dv-tab,
120
+ .fx-dockshell .groupview:not(.dv-groupview-edge):not(.groupview-edge) .dv-tab {
121
+ border-radius: 6px 6px 0 0 !important;
122
+ }
123
+
124
+ /* Asymmetric padding: keep the label inset on the left, but trim the right so
125
+ the close (X) action sits close to the tab's right edge instead of floating
126
+ ~10px in. */
127
+ .fx-dockshell .dv-default-tab { padding: 0 4px 0 10px; }
128
+ .fx-dockshell .content-container { inset: 0; }
129
+
130
+ /* Leading panel icon on every tab (DockTab → iconForDockPanel). Dimmed at rest,
131
+ brightens with the label on the active tab / hover so it never out-shouts the
132
+ title. `flex: 0 0 auto` keeps it from squishing when the tab strip overflows. */
133
+ .fx-dockwrap .fx-dock-tab-icon {
134
+ flex: 0 0 auto;
135
+ margin-right: 6px;
136
+ color: var(--color-text-tertiary, #6b7078);
137
+ }
138
+ .fx-dockwrap .dv-tab.dv-active-tab .fx-dock-tab-icon,
139
+ .fx-dockwrap .dv-tab:hover .fx-dock-tab-icon {
140
+ color: var(--color-text-primary, #e6e7ea);
141
+ }
142
+ /* The custom close (X) uses a lucide glyph; match the dimmed action treatment. */
143
+ .fx-dockwrap .dv-default-tab-action { display: inline-flex; align-items: center; justify-content: center; }
144
+
145
+ /* Hover feedback on tabs. Our neutral 3-shade tab palette (#0d0d0f / #161619 /
146
+ #1e1e22) sits too close together for dockview's default hover to register, so
147
+ paint an explicit overlay. The active tab already reads via its accent bar +
148
+ darkest bg, so only NON-active tabs take the hover lift.
149
+ dockview sets the resting tab background via very high-specificity selector
150
+ chains (group-active/inactive × panel-visible/hidden), which a plain
151
+ `.dv-tab:hover` can't beat — a static (0,5,0) resting rule wins over an
152
+ (0,3,0) hover rule regardless of :hover. `!important` is the pragmatic
153
+ override (same tactic as the border-radius reset above). */
154
+ .fx-dockshell .dv-tab:not(.dv-active-tab):hover {
155
+ background-color: var(--color-interaction-selected-neutral) !important;
156
+ color: var(--color-text-primary) !important;
157
+ }
158
+
159
+ /* UE-style focus tab: thin accent bar on the focused group's active tab only.
160
+ Inactive groups keep their selected tab without the bar (UE "which panel has
161
+ keyboard/focus" cue). Use ::before — dockview already paints a focus ring on
162
+ ::after (.dv-tab:focus-within::after). Suppress that ring so it doesn't fight
163
+ the accent. Scoped to .fx-dockwrap (shell + edge groups live under it). */
164
+ .fx-dockwrap .dv-tab:focus-within::after,
165
+ .fx-dockwrap .dv-tab:focus::after {
166
+ content: none;
167
+ }
168
+ /* Grid / floating groups: accent on the focused group's active tab.
169
+ Edge strips: only while the drawer is open — clicking void chrome activates
170
+ the group without opening a tab, which must NOT light the last active tab. */
171
+ .fx-dockwrap
172
+ .dv-groupview.dv-active-group:not(.dv-groupview-edge)
173
+ > .dv-tabs-and-actions-container
174
+ .dv-tabs-container
175
+ > .dv-tab.dv-active-tab,
176
+ .fx-dockwrap
177
+ .dv-groupview-edge.fx-edge-drawer-open.dv-active-group
178
+ > .dv-tabs-and-actions-container
179
+ .dv-tabs-container
180
+ > .dv-tab.dv-active-tab {
181
+ position: relative;
182
+ }
183
+ .fx-dockwrap
184
+ .dv-groupview.dv-active-group:not(.dv-groupview-edge)
185
+ > .dv-tabs-and-actions-container
186
+ .dv-tabs-container
187
+ > .dv-tab.dv-active-tab::before,
188
+ .fx-dockwrap
189
+ .dv-groupview-edge.fx-edge-drawer-open.dv-active-group
190
+ > .dv-tabs-and-actions-container
191
+ .dv-tabs-container
192
+ > .dv-tab.dv-active-tab::before {
193
+ content: '';
194
+ position: absolute;
195
+ pointer-events: none;
196
+ z-index: 2;
197
+ /* UE: brightest at center, falloff to transparent at both ends */
198
+ background: linear-gradient(
199
+ 90deg,
200
+ transparent 0%,
201
+ color-mix(in srgb, var(--lime, #7ee04a) 55%, transparent) 22%,
202
+ var(--lime, #7ee04a) 50%,
203
+ color-mix(in srgb, var(--lime, #7ee04a) 55%, transparent) 78%,
204
+ transparent 100%
205
+ );
206
+ /* default: horizontal tab strip → top edge (UE is ~1px). top:1px (not 0) so
207
+ the accent clears the splitview sash that overlays the boundary above a
208
+ lower group's header — at top:0 it was hidden under the sash for every
209
+ group that isn't in the top row. */
210
+ left: 0;
211
+ right: 0;
212
+ top: 1px;
213
+ height: 1px;
214
+ width: auto;
215
+ }
216
+ /* Left/right edge strips: tabs are vertical — put the bar on the outer edge. */
217
+ .fx-dockwrap
218
+ .dv-groupview-edge.fx-edge-drawer-open.dv-active-group.dv-groupview-header-left
219
+ > .dv-tabs-and-actions-container
220
+ .dv-tabs-container.dv-tabs-container-vertical
221
+ > .dv-tab.dv-active-tab::before {
222
+ top: 0;
223
+ bottom: 0;
224
+ left: 0;
225
+ right: auto;
226
+ width: 1px;
227
+ height: auto;
228
+ background: linear-gradient(
229
+ 180deg,
230
+ transparent 0%,
231
+ color-mix(in srgb, var(--lime, #7ee04a) 55%, transparent) 22%,
232
+ var(--lime, #7ee04a) 50%,
233
+ color-mix(in srgb, var(--lime, #7ee04a) 55%, transparent) 78%,
234
+ transparent 100%
235
+ );
236
+ }
237
+ .fx-dockwrap
238
+ .dv-groupview-edge.fx-edge-drawer-open.dv-active-group.dv-groupview-header-right
239
+ > .dv-tabs-and-actions-container
240
+ .dv-tabs-container.dv-tabs-container-vertical
241
+ > .dv-tab.dv-active-tab::before {
242
+ top: 0;
243
+ bottom: 0;
244
+ right: 0;
245
+ left: auto;
246
+ width: 1px;
247
+ height: auto;
248
+ background: linear-gradient(
249
+ 180deg,
250
+ transparent 0%,
251
+ color-mix(in srgb, var(--lime, #7ee04a) 55%, transparent) 22%,
252
+ var(--lime, #7ee04a) 50%,
253
+ color-mix(in srgb, var(--lime, #7ee04a) 55%, transparent) 78%,
254
+ transparent 100%
255
+ );
256
+ }
257
+
258
+ /* dockview keeps EXACTLY ONE active panel per group — no group can have zero — so
259
+ a collapsed edge group's selected tab always carries `.dv-active-tab`, and the
260
+ base theme's generic rule (dockview.css: `.dv-groupview.dv-{active,inactive}-
261
+ group > … > .dv-tab.dv-active-tab`) paints it a distinct "visible panel"
262
+ background. On a closed edge strip that reads as a phantom "selected" tab with
263
+ no drawer open. An edge group should only look active WHILE its drawer is open
264
+ (`.fx-edge-drawer-open`), so until then render the active tab exactly like its
265
+ hidden-panel siblings — the strip becomes a row of equal launchers, no selection.
266
+ Higher specificity than the base rule (extra classes), so no `!important`. */
267
+ .fx-dockwrap
268
+ .dv-groupview-edge.dv-active-group:not(.fx-edge-drawer-open)
269
+ > .dv-tabs-and-actions-container
270
+ .dv-tabs-container
271
+ > .dv-tab.dv-active-tab {
272
+ background-color: var(--dv-activegroup-hiddenpanel-tab-background-color);
273
+ color: var(--dv-activegroup-hiddenpanel-tab-color);
274
+ }
275
+ .fx-dockwrap
276
+ .dv-groupview-edge.dv-inactive-group:not(.fx-edge-drawer-open)
277
+ > .dv-tabs-and-actions-container
278
+ .dv-tabs-container
279
+ > .dv-tab.dv-active-tab {
280
+ background-color: var(--dv-inactivegroup-hiddenpanel-tab-background-color);
281
+ color: var(--dv-inactivegroup-hiddenpanel-tab-color);
282
+ }
283
+ /* The leading lucide glyph (`.fx-dock-tab-icon`) has its OWN active/hover color
284
+ rule (brightens to --color-text-primary), which the neutralizers above don't
285
+ touch — so a closed edge group's active tab still lit its icon. Dim it back to
286
+ the tertiary (idle) color unless the drawer is open, matching the tab text. */
287
+ .fx-dockwrap
288
+ .dv-groupview-edge:not(.fx-edge-drawer-open)
289
+ > .dv-tabs-and-actions-container
290
+ .dv-tabs-container
291
+ > .dv-tab.dv-active-tab:not(:hover)
292
+ .fx-dock-tab-icon {
293
+ color: var(--color-text-tertiary, #6b7078);
294
+ }
295
+ /* Uniform hover feedback for EVERY tab in a closed edge group — active AND
296
+ inactive. The base hover rule (`.fx-dockshell .dv-tab:not(.dv-active-tab):hover`)
297
+ can't reach edge groups (ShellManager hoists them into `.dv-shell`, outside the
298
+ inner `.fx-dockshell`) AND deliberately skips the active tab, so left/right side
299
+ strips got the wrong hover on inactive tabs and none on the (neutralized) active
300
+ tab. This single `.fx-dockwrap`-anchored rule (the ancestor edge groups DO live
301
+ under, same as the neutralizers) restores a consistent hover for both.
302
+ `!important` to beat the neutralizers above and the base theme. */
303
+ .fx-dockwrap
304
+ .dv-groupview-edge:not(.fx-edge-drawer-open)
305
+ .dv-tab:hover {
306
+ background-color: var(--color-interaction-selected-neutral) !important;
307
+ color: var(--color-text-primary) !important;
308
+ }
309
+
310
+ /* Declarative single-tab strategies. Dockview owns tab counting and adds
311
+ `.dv-single-tab`; panel descriptors only declare the preferred presentation.
312
+ `data-fx-dock-title-state="visible"` is the user override used by the
313
+ restore affordance, while `hidden` is set by the tab context menu. */
314
+ .fx-dockshell
315
+ .dv-groupview:has(.fx-panel[data-dock-single-tab="hideTitle"]):not([data-fx-dock-title-state="visible"])
316
+ > .dv-tabs-and-actions-container.dv-single-tab,
317
+ .fx-dockshell
318
+ .groupview:has(.fx-panel[data-dock-single-tab="hideTitle"]):not([data-fx-dock-title-state="visible"])
319
+ > .dv-tabs-and-actions-container.dv-single-tab,
320
+ .fx-dockshell
321
+ .dv-groupview[data-fx-dock-title-state="hidden"]
322
+ > .dv-tabs-and-actions-container.dv-single-tab,
323
+ .fx-dockshell
324
+ .groupview[data-fx-dock-title-state="hidden"]
325
+ > .dv-tabs-and-actions-container.dv-single-tab {
326
+ height: 0 !important;
327
+ min-height: 0 !important;
328
+ max-height: 0 !important;
329
+ overflow: hidden !important;
330
+ opacity: 0;
331
+ border: 0;
332
+ pointer-events: none;
333
+ }
334
+
335
+ /* The triangle is a real button, so a title-less single-panel group remains
336
+ keyboard- and screen-reader-reachable. It is emitted for every panel but
337
+ only exposed when the current group is actually title-less. */
338
+ .fx-dock-title-restore {
339
+ display: none;
340
+ position: absolute;
341
+ top: 0;
342
+ left: 0;
343
+ z-index: 3;
344
+ align-items: flex-start;
345
+ justify-content: flex-start;
346
+ width: 14px !important;
347
+ height: 20px !important;
348
+ margin: 0;
349
+ padding: 0;
350
+ border: 0;
351
+ background: transparent;
352
+ color: var(--color-text-tertiary, #778);
353
+ cursor: pointer;
354
+ }
355
+
356
+ .fx-dock-title-restore::before {
357
+ content: '';
358
+ width: 10px;
359
+ height: 10px;
360
+ align-self: flex-start;
361
+ background: var(--color-text-tertiary, #778);
362
+ clip-path: polygon(0 0, 100% 0, 0 100%);
363
+ transition: background 120ms ease;
364
+ }
365
+
366
+ .fx-dock-title-restore:hover::before,
367
+ .fx-dock-title-restore:focus-visible::before {
368
+ background: var(--lime, #7ee04a);
369
+ }
370
+
371
+ .fx-dock-title-restore:focus-visible {
372
+ outline: none;
373
+ }
374
+
375
+ .fx-dockshell .dv-groupview[data-fx-dock-title-state="hidden"] .fx-dock-title-restore,
376
+ .fx-dockshell .groupview[data-fx-dock-title-state="hidden"] .fx-dock-title-restore,
377
+ .fx-dockshell .dv-groupview:has(.fx-panel[data-dock-single-tab="hideTitle"]):not([data-fx-dock-title-state="visible"]) .fx-dock-title-restore,
378
+ .fx-dockshell .groupview:has(.fx-panel[data-dock-single-tab="hideTitle"]):not([data-fx-dock-title-state="visible"]) .fx-dock-title-restore {
379
+ display: inline-flex;
380
+ }
381
+
382
+ .fx-dockshell
383
+ .dv-groupview:has(.fx-panel[data-dock-single-tab="full"])
384
+ > .dv-tabs-and-actions-container.dv-single-tab .dv-scrollable,
385
+ .fx-dockshell
386
+ .groupview:has(.fx-panel[data-dock-single-tab="full"])
387
+ > .dv-tabs-and-actions-container.dv-single-tab .dv-scrollable,
388
+ .fx-dockshell
389
+ .dv-groupview:has(.fx-panel[data-dock-single-tab="full"])
390
+ > .dv-tabs-and-actions-container.dv-single-tab .dv-tabs-container,
391
+ .fx-dockshell
392
+ .groupview:has(.fx-panel[data-dock-single-tab="full"])
393
+ > .dv-tabs-and-actions-container.dv-single-tab .dv-tabs-container {
394
+ flex-grow: 1;
395
+ }
396
+
397
+ .fx-dockshell
398
+ .dv-groupview:has(.fx-panel[data-dock-single-tab="full"])
399
+ > .dv-tabs-and-actions-container.dv-single-tab .dv-tabs-container .dv-tab,
400
+ .fx-dockshell
401
+ .groupview:has(.fx-panel[data-dock-single-tab="full"])
402
+ > .dv-tabs-and-actions-container.dv-single-tab .dv-tabs-container .dv-tab {
403
+ flex-grow: 1;
404
+ padding: 0;
405
+ }
406
+
407
+ .fx-dockshell
408
+ .dv-groupview:has(.fx-panel[data-dock-single-tab="full"])
409
+ > .dv-tabs-and-actions-container.dv-single-tab .dv-void-container,
410
+ .fx-dockshell
411
+ .groupview:has(.fx-panel[data-dock-single-tab="full"])
412
+ > .dv-tabs-and-actions-container.dv-single-tab .dv-void-container {
413
+ flex-grow: 0;
414
+ }
415
+
416
+ /* UE-style resize affordance for CORE grid gaps only. Dockview's sash remains
417
+ the real hit target; hovering that target (not either panel body) reveals a
418
+ full-width 6px lime bar, which stays visible while resizing. Edge groups are
419
+ hoisted outside `.dv-dockview`, so their native shell sashes and overlay
420
+ drawer grip keep their existing behavior. */
421
+ .fx-dockshell .dv-dockview .dv-sash {
422
+ background: transparent !important;
423
+ }
424
+
425
+ .fx-dockshell .dv-dockview .dv-sash::after {
426
+ content: '';
427
+ position: absolute;
428
+ pointer-events: none;
429
+ opacity: 0;
430
+ background: var(--lime, #7ee04a);
431
+ transition: opacity 100ms ease;
432
+ }
433
+
434
+ /* Extend the 4px native hit target across the full 6px visual gap. */
435
+ .fx-dockshell
436
+ .dv-dockview
437
+ .dv-split-view-container.dv-horizontal
438
+ > .dv-sash-container
439
+ > .dv-sash::before {
440
+ content: '';
441
+ position: absolute;
442
+ inset: 0 -1px;
443
+ }
444
+
445
+ .fx-dockshell
446
+ .dv-dockview
447
+ .dv-split-view-container.dv-vertical
448
+ > .dv-sash-container
449
+ > .dv-sash::before {
450
+ content: '';
451
+ position: absolute;
452
+ inset: -1px 0;
453
+ }
454
+
455
+ .fx-dockshell
456
+ .dv-dockview
457
+ .dv-split-view-container.dv-horizontal
458
+ > .dv-sash-container
459
+ > .dv-sash::after {
460
+ inset: 0 -1px;
461
+ }
462
+
463
+ .fx-dockshell
464
+ .dv-dockview
465
+ .dv-split-view-container.dv-vertical
466
+ > .dv-sash-container
467
+ > .dv-sash::after {
468
+ inset: -1px 0;
469
+ }
470
+
471
+ .fx-dockshell .dv-dockview .dv-sash:hover::after,
472
+ .fx-dockshell .dv-dockview .dv-sash:active::after,
473
+ .fx-dockshell .dv-dockview .dv-sash.dv-sash-active::after {
474
+ opacity: 1;
475
+ }
476
+
477
+ /* Edge-strip tab titles: dockview uses writing-mode:vertical-rl. Default
478
+ text-orientation:mixed keeps CJK upright (stacked glyph-by-glyph) while
479
+ Latin rotates — Chinese then looks wrong next to English. Force sideways so
480
+ every title rotates the same way as "History" / "Capabilities".
481
+ No `.fx-dockshell` prefix: ShellManager hoists edge groups into `.dv-shell`. */
482
+ .dv-groupview-edge .dv-tabs-container.dv-tabs-container-vertical {
483
+ text-orientation: sideways;
484
+ /* Left/right strips render their first tab flush to the strip top; the drawer
485
+ it opens is inset 6px from that top. Pad the strip by the same 6px so the
486
+ first tab's top lines up with the flyout's top edge. */
487
+ padding-top: 6px;
488
+ }
489
+ /* Belt-and-suspenders: empty edge chrome stays unpainted. Drop-back uses the
490
+ root thin-edge overlay → onWillDrop routes into the edge group (edgeDrawer). */
491
+ .dv-groupview-edge.fx-edge-empty {
492
+ visibility: hidden;
493
+ pointer-events: none;
494
+ }
495
+ /* Edge tab hit-target + breathing room: labels must not hug the strip edges.
496
+ vertical-rl: physical padding-block ≈ along the strip, padding-inline ≈ thickness.
497
+ Bottom/top strips stay horizontal — same padding, min-width for length. */
498
+ .dv-groupview-edge .dv-tabs-container.dv-tabs-container-vertical > .dv-tab {
499
+ min-height: 104px;
500
+ padding: 10px 6px;
501
+ box-sizing: border-box;
502
+ }
503
+ .dv-groupview-edge .dv-tabs-container:not(.dv-tabs-container-vertical) > .dv-tab {
504
+ min-width: 104px;
505
+ padding: 6px 12px;
506
+ box-sizing: border-box;
507
+ }
508
+ .dv-groupview-edge .dv-default-tab {
509
+ padding: 4px 2px;
510
+ gap: 6px;
511
+ box-sizing: border-box;
512
+ }
513
+ .dv-groupview-edge .dv-default-tab .dv-default-tab-content {
514
+ margin: 0;
515
+ padding: 2px 0;
516
+ }
517
+ /* Vertical edge strips rotate the label via writing-mode; keep the leading icon
518
+ upright (and give it a hair more breathing room) so it reads at the tab head. */
519
+ .dv-groupview-edge .dv-tabs-container-vertical .fx-dock-tab-icon {
520
+ writing-mode: horizontal-tb;
521
+ margin-right: 0;
522
+ margin-bottom: 6px;
523
+ }
524
+
525
+ /* Edge tabs render a per-TAB Pin toggle in place of close (X) — DockTab picks the
526
+ glyph off `api.location`, so an edge tab never has a raw X to hide.
527
+ Gated exactly like the active-tab highlight: HIDDEN by default (dockview keeps
528
+ one tab "active" per group even while the drawer is closed, so a persistent pin
529
+ read like a selection). Revealed on hover, or on the active tab WHILE THE DRAWER
530
+ IS OPEN (`.fx-edge-drawer-open`); pinned tabs stay lit unconditionally. */
531
+ .dv-groupview-edge .dv-default-tab-action.fx-edge-pin {
532
+ display: inline-flex !important;
533
+ align-items: center;
534
+ justify-content: center;
535
+ opacity: 0;
536
+ color: var(--dv-activegroup-hiddenpanel-tab-color, #9aa0aa);
537
+ }
538
+ .dv-groupview-edge .dv-tab:hover .dv-default-tab-action.fx-edge-pin,
539
+ .dv-groupview-edge.fx-edge-drawer-open .dv-tab.dv-active-tab .dv-default-tab-action.fx-edge-pin {
540
+ opacity: 0.85;
541
+ }
542
+ .dv-groupview-edge .dv-default-tab-action.fx-edge-pin.fx-edge-pin--on {
543
+ opacity: 1;
544
+ color: var(--lime, #7ee04a);
545
+ }
546
+ .dv-groupview-edge .dv-default-tab-action.fx-edge-pin .fx-edge-pin-icon {
547
+ display: block;
548
+ width: 12px;
549
+ height: 12px;
550
+ flex: 0 0 auto;
551
+ }
552
+
553
+ :root {
554
+ /* Shared by the open-drawer group and the popover rule that must stay above
555
+ it — both live in the dock shell's stacking context. */
556
+ --fx-edge-drawer-z: 1000;
557
+ }
558
+
559
+ /* A keep-alive viewport is portalled outside dockview's stacking tree. While
560
+ an edge drawer owns foreground interaction, make the underlying surface
561
+ click-through so drawer controls cannot be intercepted by its canvas. */
562
+ html.fx-edge-drawer-visible .fx-surface-keepalive-item {
563
+ pointer-events: none !important;
564
+ }
565
+
566
+ /* Body-level host for the open edge-drawer flyout (see edgeDrawer.ts). Sits
567
+ above the keep-alive viewport (z-index: 40) but below footer drop overlays
568
+ (100) and dock popovers (1000). Viewport stays visible underneath. */
569
+ .fx-edge-drawer-portal-host {
570
+ position: fixed;
571
+ inset: 0;
572
+ pointer-events: none;
573
+ z-index: 50;
574
+ }
575
+ .fx-edge-drawer-portal-host > .fx-edge-drawer-grip {
576
+ pointer-events: auto;
577
+ }
578
+
579
+ /* Tab context menu — PageTabStrip DropdownMenu parity (lime hover + black text).
580
+ Scope under .fx-dockwrap (popover anchor lives on .dv-shell inside it).
581
+ CSS only; do NOT relocate .dv-popover-anchor (breaks edgeDrawer portal). */
582
+ .fx-dockwrap .dv-context-menu {
583
+ min-width: 186px;
584
+ padding: 4px !important;
585
+ background-color: var(--color-background-elevated, #242424) !important;
586
+ color: var(--color-text-secondary, rgba(255, 255, 255, 0.60));
587
+ border: 1px solid var(--color-border-default, #404040);
588
+ border-radius: var(--radius-md, 8px);
589
+ box-shadow: 0 4px 16px rgba(0, 0, 0, 0.45);
590
+ }
591
+ .fx-dockwrap .dv-context-menu-item {
592
+ height: auto;
593
+ min-height: 28px;
594
+ gap: 8px;
595
+ padding: 6px 8px;
596
+ border-radius: var(--radius-sm, 4px);
597
+ font-size: 12px;
598
+ line-height: 1.25;
599
+ color: var(--color-text-secondary, rgba(255, 255, 255, 0.60));
600
+ }
601
+ .fx-dockwrap .dv-context-menu-item .dv-svg,
602
+ .fx-dockwrap .dv-context-menu-item svg {
603
+ width: 16px;
604
+ height: 16px;
605
+ flex-shrink: 0;
606
+ }
607
+ .fx-dockwrap .dv-context-menu-item:not(.dv-context-menu-item--disabled):hover {
608
+ background-color: var(--color-brand-primary, #d4ff48) !important;
609
+ color: var(--color-text-on-bright-primary, #000000) !important;
610
+ }
611
+ .fx-dockwrap .dv-context-menu-item:not(.dv-context-menu-item--disabled):hover .dv-svg,
612
+ .fx-dockwrap .dv-context-menu-item:not(.dv-context-menu-item--disabled):hover svg {
613
+ color: var(--color-text-on-bright-primary, #000000);
614
+ fill: currentcolor;
615
+ }
616
+ .fx-dockwrap .dv-context-menu-item.dv-context-menu-item--disabled {
617
+ opacity: 0.5;
618
+ }
619
+ .fx-dockwrap .dv-context-menu-separator {
620
+ height: 1px;
621
+ margin: 4px;
622
+ background: var(--color-divider-subtle, rgba(255, 255, 255, 0.05));
623
+ }
624
+
625
+ /* ── Edge-group DRAWER overlay (see edgeDrawer.ts) ───────────────────────────
626
+ dockview keeps the edge group permanently collapsed (its splitview cell stays
627
+ at collapsedSize, so the grid NEVER shifts). When edgeDrawer.ts marks the
628
+ group `.fx-edge-drawer-open`, we reveal the group's `.dv-content-container` as
629
+ a `position: fixed` flyout anchored to the strip's inner edge — a true drawer
630
+ ON TOP of the content, not a splitview push. The CSS vars are written by
631
+ edgeDrawer.ts from the strip's live bounding rect. */
632
+ /* NOTE: no `.fx-dockshell` ancestor prefix — dockview's ShellManager hoists the
633
+ edge groups into a `.dv-shell` wrapper OUTSIDE the `.fx-dockshell` element, so
634
+ a prefixed selector never matches. We anchor purely on our own
635
+ `.fx-edge-drawer-open` marker class (added by edgeDrawer.ts), which only ever
636
+ lands on a DockShell edge group. */
637
+ .dv-groupview-edge.fx-edge-drawer-open {
638
+ /* The edge group remains in dockview's shell while its content is promoted
639
+ to a fixed drawer. Raise the WHOLE group, not only the content node:
640
+ dockview's sash/drop layers are siblings and otherwise win hit-testing on
641
+ the 1px boundary between the drawer and the underlying panel. */
642
+ position: relative;
643
+ z-index: var(--fx-edge-drawer-z) !important;
644
+ }
645
+
646
+ /* dockview mounts tab context menus (and the tab-overflow dropdown) into a
647
+ `.dv-popover-anchor` that is a SIBLING of the edge group, with an INLINE
648
+ `z-index: var(--dv-overlay-z-index)` = 999. An open drawer raises its group
649
+ past that, so right-clicking an edge tab built the menu but painted it
650
+ behind the flyout — the menu looked gone while the drawer was open, and
651
+ worked while it was closed. A popover is always the topmost dock chrome;
652
+ `!important` is what it takes to beat dockview's inline z-index. */
653
+ .dv-popover-anchor > * {
654
+ z-index: calc(var(--fx-edge-drawer-z) + 1) !important;
655
+ }
656
+
657
+ .dv-groupview-edge.fx-edge-drawer-open > .dv-content-container,
658
+ .fx-edge-drawer-portal-host > .dv-content-container {
659
+ /* UE-style: the flyout is INSET on its cross axis (the axis parallel to the
660
+ strip) so its far edges never sit flush on the shell's layout separators —
661
+ a full-height/width overlay reads as "no panel" because its border merges
662
+ with the sash line. 10px each end keeps the panel's own outline visible. */
663
+ --fx-edge-drawer-inset: 6px;
664
+ display: block !important;
665
+ position: fixed;
666
+ pointer-events: auto;
667
+ width: var(--fx-edge-drawer-width, 300px);
668
+ /* left/right strips: cross axis = vertical → inset top + bottom. */
669
+ height: calc(var(--fx-edge-strip-height) - 2 * var(--fx-edge-drawer-inset));
670
+ top: calc(var(--fx-edge-strip-top) + var(--fx-edge-drawer-inset));
671
+ z-index: 60;
672
+ background: var(--dv-group-view-background-color, #0d0d0f);
673
+ /* Floating (inset) flyout: outline the THREE free sides + a directional
674
+ elevation shadow. The side that meets the strip (the anchor edge) must stay
675
+ borderless + shadowless so the flyout reads as attached to the menu bar,
676
+ not floating over it — the per-direction rules below strip that edge's
677
+ border, flatten its corners and cast the shadow AWAY from the strip. */
678
+ border: 1px solid var(--dv-separator-border, #2a2d30);
679
+ border-radius: 6px;
680
+ overflow: hidden;
681
+ }
682
+ /* UE-style expand: the drawer wipes OUT from the strip's outer edge and fades in.
683
+ Animation is gated on `.fx-edge-drawer-animating` (toggled by edgeDrawer.ts) so
684
+ it REPLAYS on first open AND on same-strip tab switches — keeping OPEN alone
685
+ would leave the flyout static when Hierarchy↔Inspector etc. Because opening
686
+ flips `display: none → block`, we use `animation` (not `transition`). We do NOT
687
+ translate the box (that would drag it back OVER the strip); the box stays pinned
688
+ at its anchor and we reveal with `clip-path` growing away from the strip. */
689
+ @keyframes fx-edge-drawer-in-left { /* anchored left → grow right */
690
+ from { clip-path: inset(0 100% 0 0); opacity: 0.2; }
691
+ to { clip-path: inset(0 0 0 0); opacity: 1; }
692
+ }
693
+ @keyframes fx-edge-drawer-in-right { /* anchored right → grow left */
694
+ from { clip-path: inset(0 0 0 100%); opacity: 0.2; }
695
+ to { clip-path: inset(0 0 0 0); opacity: 1; }
696
+ }
697
+ @keyframes fx-edge-drawer-in-top { /* anchored top → grow down */
698
+ from { clip-path: inset(0 0 100% 0); opacity: 0.2; }
699
+ to { clip-path: inset(0 0 0 0); opacity: 1; }
700
+ }
701
+ @keyframes fx-edge-drawer-in-bottom { /* anchored bottom → grow up */
702
+ from { clip-path: inset(100% 0 0 0); opacity: 0.2; }
703
+ to { clip-path: inset(0 0 0 0); opacity: 1; }
704
+ }
705
+ /* Left strip → flyout to the right; right strip → flyout to the left. */
706
+ .dv-groupview-edge.dv-groupview-header-left.fx-edge-drawer-open > .dv-content-container,
707
+ .fx-edge-drawer-portal-host > .dv-content-container.dv-groupview-header-left {
708
+ /* Own the shared boundary while the drawer is open. The small overlap keeps
709
+ the underlying split sash from winning when the pointer lands exactly on
710
+ the panel border. */
711
+ left: calc(var(--fx-edge-drawer-left) - 3px);
712
+ width: calc(var(--fx-edge-drawer-width, 300px) + 3px);
713
+ /* keep the full border; only cast the shadow AWAY from the strip (rightward). */
714
+ box-shadow: 4px 0 12px rgba(0, 0, 0, 0.30), 1px 0 3px rgba(0, 0, 0, 0.22);
715
+ }
716
+ .dv-groupview-edge.dv-groupview-header-left.fx-edge-drawer-animating > .dv-content-container,
717
+ .fx-edge-drawer-portal-host > .dv-content-container.dv-groupview-header-left.fx-edge-drawer-animating {
718
+ animation: fx-edge-drawer-in-left 0.12s cubic-bezier(0.2, 0.8, 0.2, 1);
719
+ }
720
+ .dv-groupview-edge.dv-groupview-header-right.fx-edge-drawer-open > .dv-content-container,
721
+ .fx-edge-drawer-portal-host > .dv-content-container.dv-groupview-header-right {
722
+ right: calc(var(--fx-edge-drawer-right) - 3px);
723
+ width: calc(var(--fx-edge-drawer-width, 300px) + 3px);
724
+ box-shadow: -4px 0 12px rgba(0, 0, 0, 0.30), -1px 0 3px rgba(0, 0, 0, 0.22);
725
+ }
726
+ .dv-groupview-edge.dv-groupview-header-right.fx-edge-drawer-animating > .dv-content-container,
727
+ .fx-edge-drawer-portal-host > .dv-content-container.dv-groupview-header-right.fx-edge-drawer-animating {
728
+ animation: fx-edge-drawer-in-right 0.12s cubic-bezier(0.2, 0.8, 0.2, 1);
729
+ }
730
+ /* Top/bottom strips → full-width flyout dropping down / rising up. */
731
+ .dv-groupview-edge.dv-groupview-header-top.fx-edge-drawer-open > .dv-content-container,
732
+ .dv-groupview-edge.dv-groupview-header-bottom.fx-edge-drawer-open > .dv-content-container,
733
+ .fx-edge-drawer-portal-host > .dv-content-container.dv-groupview-header-top,
734
+ .fx-edge-drawer-portal-host > .dv-content-container.dv-groupview-header-bottom {
735
+ /* top/bottom strips: cross axis = horizontal → inset left + right, and reset
736
+ the vertical inset the base rule applied for left/right strips. */
737
+ left: calc(var(--fx-edge-strip-left) + var(--fx-edge-drawer-inset));
738
+ width: calc(var(--fx-edge-strip-width) - 2 * var(--fx-edge-drawer-inset));
739
+ height: var(--fx-edge-drawer-height, 300px);
740
+ }
741
+ .dv-groupview-edge.dv-groupview-header-top.fx-edge-drawer-open > .dv-content-container,
742
+ .fx-edge-drawer-portal-host > .dv-content-container.dv-groupview-header-top {
743
+ top: calc(var(--fx-edge-drawer-top) - 3px);
744
+ height: calc(var(--fx-edge-drawer-height, 300px) + 3px);
745
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.30), 0 1px 3px rgba(0, 0, 0, 0.22);
746
+ }
747
+ .dv-groupview-edge.dv-groupview-header-top.fx-edge-drawer-animating > .dv-content-container,
748
+ .fx-edge-drawer-portal-host > .dv-content-container.dv-groupview-header-top.fx-edge-drawer-animating {
749
+ animation: fx-edge-drawer-in-top 0.12s cubic-bezier(0.2, 0.8, 0.2, 1);
750
+ }
751
+ .dv-groupview-edge.dv-groupview-header-bottom.fx-edge-drawer-open > .dv-content-container,
752
+ .fx-edge-drawer-portal-host > .dv-content-container.dv-groupview-header-bottom {
753
+ top: auto;
754
+ bottom: calc(var(--fx-edge-drawer-bottom) - 3px);
755
+ height: calc(var(--fx-edge-drawer-height, 300px) + 3px);
756
+ box-shadow: 0 -4px 12px rgba(0, 0, 0, 0.30), 0 -1px 3px rgba(0, 0, 0, 0.22);
757
+ }
758
+ .dv-groupview-edge.dv-groupview-header-bottom.fx-edge-drawer-animating > .dv-content-container,
759
+ .fx-edge-drawer-portal-host > .dv-content-container.dv-groupview-header-bottom.fx-edge-drawer-animating {
760
+ animation: fx-edge-drawer-in-bottom 0.12s cubic-bezier(0.2, 0.8, 0.2, 1);
761
+ }
762
+ /* Our self-drawn resize grip (edgeDrawer.ts positions it inline via `fixed`).
763
+ Native dockview resize is a splitview sash that pushes the grid — forbidden here
764
+ — so this grip only rewrites the drawer size var. To match the app's native
765
+ resize feel it must LOOK the same: this shell tints the active sash lime
766
+ (`--dv-active-sash-color` + `.dv-sash-active`), so the grip shows the same lime
767
+ bar — but only WHILE dragging, not on mere hover (the resize cursor already
768
+ signals it's grabbable; a bar-on-enter reads as a spurious focus line). */
769
+ .fx-edge-drawer-grip {
770
+ z-index: 61;
771
+ background: transparent;
772
+ transition: background 0.1s ease;
773
+ }
774
+ .fx-edge-drawer-grip.fx-edge-drawer-grip--dragging {
775
+ background: var(--lime, #7ee04a);
776
+ }
777
+
778
+ /* Standalone Console dock panel. */
779
+ .fx-console-panel { display: flex; flex-direction: column; height: 100%; background: var(--color-background-base, #0d0d0f); }
780
+ .fx-console-bar { display: flex; align-items: center; gap: 8px; padding: 4px 10px; border-bottom: 1px solid var(--color-border-default, #2a2d30); font-family: var(--font-mono, monospace); font-size: 11px; color: var(--color-text-tertiary, #778); }
781
+ .fx-console-title { flex: 1 1 auto; }
782
+ .fx-console-clear { cursor: pointer; background: none; border: none; color: var(--color-text-tertiary, #778); font: inherit; }
783
+ .fx-console-clear:hover { color: var(--color-text-primary, #fff); }
784
+ .fx-console-body { flex: 1 1 auto; overflow: auto; padding: 4px 0; }
785
+
786
+ /* Per-group popout action in the tab bar's right actions slot. */
787
+ .fx-grp-popout {
788
+ display: inline-flex; align-items: center; justify-content: center;
789
+ height: 100%; padding: 0 8px; cursor: pointer; background: none; border: none;
790
+ color: var(--color-text-tertiary, #778); font-size: 13px;
791
+ }
792
+ .fx-grp-popout:hover { color: var(--lime, #7ee04a); }
793
+
794
+ /* Floating windows DO keep rounded corners + shadow (design: 圆角只留浮动/弹出窗). */
795
+ .fx-dockshell .dv-resize-container { border-radius: 8px; box-shadow: 0 14px 34px rgba(0, 0, 0, 0.55); overflow: hidden; }
796
+
797
+ /* Make the hosted panel bodies fill their group content area. */
798
+ .fx-dockshell .dv-react-part > * { height: 100%; width: 100%; }
799
+
800
+ /* Wrapper so the layout control can pin over the dock. */
801
+ .fx-dockwrap { position: relative; flex: 1 1 auto; min-width: 0; min-height: 0; display: flex; }
802
+
803
+ /* Secondary region — AuxBar. Fixed-width column to the right of DockShell;
804
+ DockShell keeps `flex: 1 1 auto` (from .fx-dockwrap above) and grows to fill
805
+ remaining space. Auto-hidden empty regions render as `null`, so this rule
806
+ only applies when AuxBar has ≥1 panel and actually occupies layout space.
807
+ Width is applied inline from useAuxBarWidth so drag updates propagate
808
+ without a CSS variable dance. Default + clamping live in the store.
809
+ position: relative anchors the .fx-auxbar-resizer absolutely at the left edge. */
810
+ .fx-dockregion-AuxBar { flex: 0 0 auto; position: relative; }
811
+
812
+ /* ChatDock — the fixed-width chat column right of the ActivityRail. Same
813
+ fixed-basis override as AuxBar so the inline width from useChatWidth wins
814
+ instead of splitting space with DockShell (which keeps .fx-dockwrap's
815
+ flex:1). Separation from the rail comes from the rail's 6px canvas gutter;
816
+ overflow:hidden is structural: the outer width pushes the editor while
817
+ clipping a full-width inner dock so chat cards never reflow through unusably
818
+ narrow intermediate states. */
819
+ .fx-dockregion-ChatDock {
820
+ flex: 0 0 auto;
821
+ position: relative;
822
+ overflow: hidden;
823
+ }
824
+ /* Collapse is a shell visibility flag, not a width mutation: preserve the
825
+ last drag-restored width in the store so expanding returns to the same size. */
826
+ .studio-shell[data-chatpanel-collapsed="1"] .fx-dockregion-ChatDock {
827
+ display: none;
828
+ }
829
+ /* The shared resizer normally occupies the 6px gutter at left:-6px. ChatDock
830
+ must clip its fixed-width inner dock during collapse/expand, which also clips
831
+ that outside child from hit-testing. Keep this instance inside the boundary;
832
+ the 6px edge remains draggable without weakening animation containment. */
833
+ .fx-dockregion-ChatDock > .fx-chat-resizer {
834
+ left: 0;
835
+ }
836
+ .fx-dockregion-ChatDock.is-anim {
837
+ transition: width var(--motion-duration-panel) var(--motion-ease-standard);
838
+ }
839
+ body.fx-chat-resizing .fx-dockregion-ChatDock { transition: none; }
840
+
841
+ .fx-chatdock-inner {
842
+ position: absolute;
843
+ inset: 0 auto 0 0;
844
+ display: flex;
845
+ flex-direction: column;
846
+ min-width: 0;
847
+ }
848
+
849
+ /* While a chat panel is being UE-dragged, collapse its fixed shell column so the
850
+ layout reflows exactly like lifting any grid panel (UE). The lifted panel is
851
+ re-parented into the body overlay for the live preview, so hiding the column
852
+ here never hides the drag preview. Removing the class on drop restores the
853
+ column when chat lands back home; a cross-instance drop into DockShell instead
854
+ fires onDidRemovePanel → chatColumnMounted:false, keeping it collapsed. */
855
+ html.fx-ue-dragging-chat .fx-dockregion-ChatDock { display: none !important; }
856
+
857
+ /* While dragging a dockview TAB/GROUP (fx-dock-dragging is scoped to tab-strip
858
+ drags in DockRegion — NOT in-panel HTML5 drags like Hierarchy rows), make the
859
+ hovered panel body transparent to the native drag so dockview's own drop
860
+ detection is reliable:
861
+
862
+ 1) iframes swallow native drag entirely, so the drop overlay never sees the
863
+ dragover over an iframe panel (Main preview / plugin panes).
864
+ 2) The keep-alive surface (Play/Edit viewport <canvas>) overlays the viewport
865
+ dockview anchor at z-index 40 / pointer-events:auto — post single-realm it
866
+ is no longer an <iframe>, so the iframe rule alone left the viewport unable
867
+ to accept drops ("viewport 下面放不了").
868
+ 3) Panel BODIES with densely-nested elements (Hierarchy tree rows, Assets grid)
869
+ generate HTML5 dragenter/dragleave flicker on their children; with the
870
+ abyss theme's in-place drop overlay that flicker clears dockview's drop
871
+ `_state`, so a split-your-own-group drop (drag Assets tab to the bottom of
872
+ the Hierarchy column) landed on a cleared state and snapped back. Killing
873
+ pointer-events on the body CHILDREN routes every drag event straight to the
874
+ panel content wrapper (single, stable dragover target) — no flicker.
875
+
876
+ IMPORTANT: disable the body CHILDREN (.dv-react-part > *), NOT .dv-react-part
877
+ itself — dockview's per-panel drop detection lives on the content wrapper;
878
+ disabling the wrapper breaks docking onto NON-iframe panels (chat / extension).
879
+ Global on <html> since dockview portals floating groups to <body>.
880
+
881
+ The tab strip must be SUBTRACTED: `dv-react-part` is dockview's class for EVERY
882
+ React mount point, not just panel bodies — tab renderers (ReactPanelHeaderPart →
883
+ .dv-tab > .dv-react-part > .dv-default-tab) and header actions
884
+ (ReactHeaderActionsRendererPart → .fx-dock-popout) use it too. Without the
885
+ :not(), a plain click inside the strip is fatal: DockRegion lights
886
+ fx-dock-dragging on the capture-phase `pointerdown`, the strip's contents lose
887
+ hit-testing before `pointerup` is targeted, so `click` retargets to the
888
+ .dv-react-part ancestor and never reaches the close (X) / pop-out handlers. */
889
+ html.fx-dock-dragging iframe,
890
+ html.fx-dock-dragging .fx-surface-keepalive-item { pointer-events: none !important; }
891
+ html.fx-dock-dragging
892
+ .fx-dockshell
893
+ .dv-react-part:not(.dv-tabs-and-actions-container *) > * { pointer-events: none !important; }
894
+ /* The UE tab-drag controller uses its own drag state. Keep the same stable
895
+ body hit target for that path so viewport children cannot swallow drops. */
896
+ html.fx-ue-dragging
897
+ .fx-dockshell
898
+ .dv-react-part:not(.dv-tabs-and-actions-container *) > * { pointer-events: none !important; }
899
+
900
+ /* Per-group "pop out to OS window" button (rightHeaderActionsComponent). */
901
+ .fx-dock-popout {
902
+ display: inline-flex; align-items: center; justify-content: center;
903
+ width: 22px; height: 22px; margin: 0 2px; padding: 0; cursor: pointer;
904
+ background: transparent; color: var(--color-text-secondary, #aab);
905
+ border: none; border-radius: 4px; font-size: 13px; line-height: 1;
906
+ }
907
+ .fx-dock-popout:hover { color: var(--color-text-primary, #fff); background: var(--color-background-base, #0e0e10); }
908
+
909
+ /* Layout control — pinned top-right, above the dock. */
910
+ .fx-dock-layout { position: absolute; top: 4px; right: 8px; z-index: var(--z-dropdown); font-family: var(--font-mono, monospace); }
911
+ .fx-dl-btn {
912
+ display: inline-flex; align-items: center; gap: 5px; padding: 3px 9px; cursor: pointer;
913
+ background: var(--color-background-elevated, #161619); color: var(--color-text-secondary, #aab);
914
+ border: 1px solid var(--color-border-default, #2a2d30); border-radius: 6px; font-size: 11px;
915
+ }
916
+ .fx-dl-btn:hover { color: var(--color-text-primary, #fff); border-color: var(--lime, #7ee04a); }
917
+ .fx-dl-menu {
918
+ position: absolute; top: 28px; right: 0; min-width: 160px; padding: 4px;
919
+ background: var(--color-background-elevated, #161619); border: 1px solid var(--color-border-default, #2a2d30);
920
+ border-radius: 8px; box-shadow: 0 10px 28px rgba(0, 0, 0, 0.5); display: flex; flex-direction: column; gap: 1px;
921
+ max-height: min(480px, calc(100vh - 60px)); overflow-y: auto;
922
+ }
923
+ /* 重置布局 pinned at the top — stays put while the panel list scrolls under it. */
924
+ .fx-dl-reset {
925
+ position: sticky; top: -4px; z-index: 1;
926
+ background: var(--color-background-elevated, #161619);
927
+ color: var(--lime, #7ee04a);
928
+ }
929
+ .fx-dl-menu::-webkit-scrollbar { width: 4px; }
930
+ .fx-dl-menu::-webkit-scrollbar-track { background: transparent; }
931
+ .fx-dl-menu::-webkit-scrollbar-thumb { background: var(--color-border-default, #2a2d30); border-radius: 2px; }
932
+ .fx-dl-menu::-webkit-scrollbar-thumb:hover { background: var(--color-text-tertiary, #778); }
933
+ .fx-dl-head { font-size: 10px; color: var(--color-text-tertiary, #778); padding: 3px 8px; text-transform: uppercase; letter-spacing: 0.06em; }
934
+ .fx-dl-item {
935
+ display: flex; align-items: center; gap: 6px; padding: 4px 8px; cursor: pointer; text-align: left;
936
+ background: none; border: none; color: var(--color-text-secondary, #aab); font: inherit; font-size: 11px; border-radius: 5px;
937
+ }
938
+ .fx-dl-item:hover { background: var(--color-interaction-hover, #23262a); color: var(--color-text-primary, #fff); }
939
+ .fx-dl-item.on { color: var(--color-text-primary, #fff); }
940
+ .fx-dl-check { width: 12px; color: var(--lime, #7ee04a); }
941
+ .fx-dl-icon { flex: 0 0 auto; color: var(--color-text-tertiary, #778); }
942
+ .fx-dl-item:hover .fx-dl-icon, .fx-dl-item.on .fx-dl-icon { color: var(--color-text-primary, #fff); }
943
+ .fx-dl-sep { height: 1px; background: var(--color-border-default, #2a2d30); margin: 3px 0; }
944
+ .fx-dl-empty { font-size: 10px; color: var(--color-text-tertiary, #778); padding: 2px 8px; }
945
+ .fx-dl-preset { display: flex; align-items: center; }
946
+ .fx-dl-grow { flex: 1 1 auto; min-width: 0; }
947
+ .fx-dl-del { cursor: pointer; background: none; border: none; color: var(--color-text-tertiary, #778); font: inherit; padding: 0 6px; }
948
+ .fx-dl-del:hover { color: var(--color-text-primary, #fff); }
949
+
950
+ /* EditorPanelFrame — editor sub-panels as outer DockShell leaves */
951
+ .ep-frame-wrap { display: flex; flex-direction: column; height: 100%; overflow: hidden; }
952
+ .ep-frame-iframe { flex: 1 1 auto; width: 100%; height: 100%; border: none; background: var(--dv-background-color, #151618); display: block; }
953
+ .ep-frame-unavailable {
954
+ flex: 1 1 auto;
955
+ display: flex;
956
+ flex-direction: column;
957
+ justify-content: center;
958
+ gap: 6px;
959
+ padding: 14px;
960
+ background: var(--dv-background-color, #151618);
961
+ color: var(--color-text-secondary, #aab);
962
+ font-size: 12px;
963
+ }
964
+ .ep-frame-unavailable-title { color: var(--color-text-primary, #eee); font-weight: 700; }
965
+ .ep-frame-unavailable-desc { color: var(--color-text-tertiary, #778); line-height: 1.45; }
966
+
967
+ /* WbPluginDockPanel — plugin as a top-level dock leaf */
968
+ .page-dock-panel { display: flex; flex-direction: column; height: 100%; overflow: hidden; }
969
+ .page-dock-standalone { position: relative; }
970
+ .page-dock-loading, .page-dock-placeholder { padding: 16px; font-size: 13px; color: var(--color-text-secondary, #aaa); }
971
+ .page-dock-error { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; }
972
+ .page-dock-error button { color: inherit; border: 1px solid currentColor; border-radius: 4px; padding: 4px 10px; }
973
+ .page-dock-name { font-weight: 700; color: var(--color-text-primary, #eee); margin-bottom: 4px; }
974
+ .page-dock-desc { font-size: 12px; margin-bottom: 8px; }
975
+ .page-dock-id { font-family: monospace; font-size: 10px; opacity: 0.5; }
976
+
977
+ /* AuxBar resize handle — 6px column on the LEFT edge. Cursor col-resize + a
978
+ subtle hover to signal draggability. During drag we overlay a full-viewport
979
+ catcher via ::after (below) to keep the pointer from being stolen by the
980
+ viewport iframe mid-drag. */
981
+ .fx-auxbar-resizer {
982
+ position: absolute;
983
+ left: 0;
984
+ top: 0;
985
+ bottom: 0;
986
+ width: 6px;
987
+ margin: 0;
988
+ cursor: col-resize;
989
+ z-index: 10;
990
+ background: transparent;
991
+ transition: background 120ms ease;
992
+ }
993
+ .resize-handle.fx-auxbar-resizer::after { content: none; }
994
+ .fx-auxbar-resizer:hover,
995
+ body.fx-auxbar-resizing .fx-auxbar-resizer {
996
+ background: rgba(120, 200, 255, 0.35);
997
+ }
998
+ /* During drag, put a transparent full-viewport overlay so the iframe
999
+ (engine viewport) can't intercept pointermove. The overlay itself is a
1000
+ pseudo-element so the pointer still reaches the resizer above it; iframes
1001
+ below inherit `pointer-events: none` from the rule that follows. */
1002
+ body.fx-auxbar-resizing::after {
1003
+ content: '';
1004
+ position: fixed;
1005
+ inset: 0;
1006
+ z-index: 9;
1007
+ cursor: col-resize;
1008
+ }
1009
+ body.fx-auxbar-resizing iframe { pointer-events: none; }
1010
+ .fx-page-empty {
1011
+ position: absolute;
1012
+ inset: 0;
1013
+ display: grid;
1014
+ place-items: center;
1015
+ color: var(--color-text-muted);
1016
+ background: var(--color-bg-canvas);
1017
+ pointer-events: none;
1018
+ }