@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,315 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useCallback, useEffect, useLayoutEffect, useMemo, useRef, useState, useSyncExternalStore } from 'react';
3
+ import { RotateCcw } from 'lucide-react';
4
+ import { DockviewReact, themeAbyss, } from 'dockview';
5
+
6
+ import { AnchoredResizeHandle, DockLayoutMenu } from '@forgeax/app-shell/react';
7
+ import { createDockLayoutControlState, createDockLayoutPersistence, createDockPanelCommands, createDockReadyActivation, createDockScopeTransition, hasMountedPanelPlacement, installDockLayoutObservation, installDockLayoutReset, installDockPanelCommandSubscriptions, installDockPanelVisibilityTracking, pruneSerializedDockLayout, } from '@forgeax/app-shell/dock';
8
+ import { useTranslation, t as panelT } from '../../i18n/index.js';
9
+ import { BASE_PANEL_COMPONENTS, BASE_PANEL_TITLE, BASE_PANEL_WINDOWING, buildEditorPanelComponents, CORE_PANEL_IDS, OPTIONAL_PANEL_IDS, } from './panelRegistry.js';
10
+ import { usePanelRenderers } from './panelRenderers.js';
11
+ import { DockTab } from './DockTab.js';
12
+ import { iconForDockPanel } from '../../lib/panel-tab-icons.js';
13
+ import { resolveRegion } from './resolveRegion.js';
14
+ import { registerDockRegion, registerDockviewApi } from './dockviewRegistry.js';
15
+ import { auxBarWidthStore, useAuxBarWidth } from './useAuxBarWidth.js';
16
+ import { chatWidthStore, useChatWidth } from '../ChatColumn/useChatWidth.js';
17
+ import { SessionTabStrip } from '../ChatColumn/SessionTabStrip.js';
18
+ import { useHost } from '../../core/app-shell/index.js';
19
+ import { pageLayoutStore, pageLayoutToDockview } from '../../core/page-platform/index.js';
20
+ import { getCurrentProject } from '../../lib/project-context.js';
21
+ import { pageRuntimeOwnsPanel } from './panelWindowing.js';
22
+ import { withDockTitleRestore } from './dockTitle.js';
23
+ import { installEdgeDrawer } from './edgeDrawer.js';
24
+ import { FOOTER_PANEL_IDS } from './footer-panels.js';
25
+ import { isFooterPanelId, isFooterPanelUserVisible, setFooterPanelUserVisible, subscribeFooterPanelVisibility, requestFooterPanelEnsure, } from './footer-panel-visibility.js';
26
+ import { createPanelTabCommands } from './panelTabCommands.js';
27
+ import { createStudioTabContextMenuHandler } from './studioTabMenuProvider.js';
28
+ import { installUeDockDrag } from './ueDrag/controller.js';
29
+ import { pingAnchorRelayout } from '../../lib/surfaceAnchors.js';
30
+
31
+ const FORGEAX_DOCK_THEME = { ...themeAbyss, name: 'forgeax-abyss', gap: 6 };
32
+ export function DockRegion({ region }) {
33
+ const host = useHost();
34
+ const renderers = usePanelRenderers();
35
+ const editorPanelIds = renderers.editorPanelIds;
36
+ const auxBarWidth = useAuxBarWidth();
37
+ const chatWidth = useChatWidth();
38
+ const pageSession = useSyncExternalStore(host.pages.subscribe, host.pages.getSnapshot, host.pages.getSnapshot);
39
+ const activePage = pageSession.instances.find((page) => page.encodedKey === pageSession.activeKey);
40
+ const resolvedPage = activePage ? host.pageRegistry.get(activePage.typeId) : undefined;
41
+ const pageScope = useMemo(() => {
42
+ if (region === 'ChatDock' || !activePage || !resolvedPage || resolvedPage.status !== 'available')
43
+ return null;
44
+ const layout = 'grid' in resolvedPage.layout
45
+ ? resolvedPage.layout
46
+ : pageLayoutToDockview(activePage.typeId, resolvedPage.definition.title, resolvedPage.panels, resolvedPage.layout);
47
+ return {
48
+ layoutId: activePage.typeId,
49
+ identity: { pageTypeId: activePage.typeId, layoutVersion: resolvedPage.definition.layoutVersion ?? 1 },
50
+ layout,
51
+ panelIds: resolvedPage.panels.map((panel) => panel.id),
52
+ };
53
+ }, [activePage, region, resolvedPage]);
54
+ const pagePanelIds = useMemo(() => new Set(pageScope?.panelIds ?? []), [pageScope]);
55
+ const panels = renderers.panels;
56
+ const isMember = useCallback((id) => {
57
+ if (id === 'chat')
58
+ return region === 'ChatDock';
59
+ if (region === 'ChatDock')
60
+ return false;
61
+ if (id.startsWith('ep:') && !editorPanelIds.includes(id.slice(3)))
62
+ return false;
63
+ if (pageScope && !pagePanelIds.has(id))
64
+ return false;
65
+ const descriptor = panels?.[id];
66
+ if (descriptor && !(descriptor.when?.() ?? true))
67
+ return false;
68
+ return resolveRegion(id, descriptor ?? {}, {}) === region;
69
+ }, [editorPanelIds, pagePanelIds, pageScope, panels, region]);
70
+ const isMemberRef = useRef(isMember);
71
+ useLayoutEffect(() => { isMemberRef.current = isMember; }, [isMember]);
72
+ const components = useMemo(() => ({
73
+ ...(resolvedPage?.status === 'available' && activePage
74
+ ? Object.fromEntries(resolvedPage.panels
75
+ .filter((placement) => pageRuntimeOwnsPanel(placement.id, new Set(Object.keys(BASE_PANEL_COMPONENTS)), editorPanelIds))
76
+ .map((placement) => [placement.id, withDockTitleRestore(() => (placement.panelType.runtime.kind === 'iframe'
77
+ ? _jsx("iframe", { src: placement.panelType.runtime.src, title: placement.id, style: { width: '100%', height: '100%', border: 0 } })
78
+ : placement.panelType.runtime.render({
79
+ pageKey: activePage.key,
80
+ placementId: placement.id,
81
+ pageContext: activePage.context,
82
+ initialProps: placement.initialProps,
83
+ })))]))
84
+ : {}),
85
+ ...BASE_PANEL_COMPONENTS,
86
+ ...buildEditorPanelComponents(editorPanelIds),
87
+ }), [activePage, editorPanelIds, resolvedPage]);
88
+ const componentKeys = useMemo(() => new Set(Object.keys(components)), [components]);
89
+ const componentKeysRef = useRef(componentKeys);
90
+ useLayoutEffect(() => { componentKeysRef.current = componentKeys; }, [componentKeys]);
91
+ /** Stable signature — HMR refreshes panel render fns without changing registered ids. */
92
+ const componentKeysSignature = useMemo(() => [...componentKeys].sort().join('\0'), [componentKeys]);
93
+ const pageScopeKey = useMemo(() => {
94
+ if (!pageScope)
95
+ return '';
96
+ return `${pageScope.layoutId}:${pageScope.identity.layoutVersion}:${pageScope.panelIds.join(',')}`;
97
+ }, [pageScope]);
98
+ const readyActivation = useMemo(() => createDockReadyActivation(), []);
99
+ const layoutControl = useMemo(() => createDockLayoutControlState(), []);
100
+ const applyScopeRef = useRef(() => { });
101
+ const wrapRef = useRef(null);
102
+ const [chatMounted, setChatMounted] = useState(true);
103
+ const storageKey = useCallback((scope) => (`forgeax:project:${getCurrentProject()}:page-layout:${scope.layoutId}:${region}`), [region]);
104
+ const persistedScope = useCallback((scope) => ({
105
+ key: storageKey(scope),
106
+ identity: scope.identity,
107
+ }), [storageKey]);
108
+ const layoutPersistence = useMemo(() => createDockLayoutPersistence({
109
+ load: (key, identity) => pageLayoutStore.load(key, identity),
110
+ save: (key, identity, layout) => pageLayoutStore.save(key, identity, layout),
111
+ remove: (key) => pageLayoutStore.remove(key),
112
+ }), []);
113
+ const titleFor = useCallback((id) => {
114
+ const panelId = id.startsWith('ep:') ? id.slice(3) : id;
115
+ const key = `dockShell.panelTitles.${panelId}`;
116
+ const localized = panelT(key);
117
+ return localized !== key ? localized : panels?.[panelId]?.title ?? BASE_PANEL_TITLE[id] ?? id;
118
+ }, [panels]);
119
+ const windowingSources = useMemo(() => ({
120
+ basePanelIds: new Set(Object.keys(BASE_PANEL_COMPONENTS)),
121
+ baseWindowing: BASE_PANEL_WINDOWING,
122
+ pageWindowing: {},
123
+ }), []);
124
+ const panelTabCommands = useMemo(() => createPanelTabCommands({
125
+ getApi: () => readyActivation.getCurrent(),
126
+ titleFor,
127
+ }), [readyActivation, titleFor]);
128
+ const getTabContextMenuItems = useMemo(() => createStudioTabContextMenuHandler({
129
+ region,
130
+ getWrapEl: () => wrapRef.current,
131
+ getApi: () => readyActivation.getCurrent(),
132
+ commands: panelTabCommands,
133
+ windowingSources,
134
+ }), [panelTabCommands, region, windowingSources, readyActivation]);
135
+ const applyScope = useCallback((api, scope) => {
136
+ if (region === 'ChatDock') {
137
+ try {
138
+ api.clear();
139
+ }
140
+ catch { /* noop */ }
141
+ if (componentKeysRef.current.has('chat')) {
142
+ api.addPanel({ id: 'chat', component: 'chat', title: titleFor('chat') });
143
+ }
144
+ return;
145
+ }
146
+ if (!scope || region !== 'DockShell') {
147
+ try {
148
+ api.clear();
149
+ }
150
+ catch { /* noop */ }
151
+ return;
152
+ }
153
+ layoutPersistence.restore(persistedScope(scope), (saved) => {
154
+ const allowedPanelIds = new Set(scope.panelIds);
155
+ const candidate = saved ? pruneSerializedDockLayout(saved, componentKeysRef.current, allowedPanelIds) : null;
156
+ const defaultLayout = pruneSerializedDockLayout(scope.layout, componentKeysRef.current, allowedPanelIds);
157
+ if (!defaultLayout)
158
+ return;
159
+ try {
160
+ api.clear();
161
+ }
162
+ catch { /* noop */ }
163
+ try {
164
+ if (candidate) {
165
+ api.fromJSON(candidate);
166
+ if (hasMountedPanelPlacement(scope.panelIds, new Set(api.panels.map((panel) => panel.id))))
167
+ return;
168
+ try {
169
+ api.clear();
170
+ }
171
+ catch { /* noop */ }
172
+ }
173
+ api.fromJSON(defaultLayout);
174
+ }
175
+ catch {
176
+ try {
177
+ api.clear();
178
+ api.fromJSON(defaultLayout);
179
+ }
180
+ catch { /* invalid contribution stays empty */ }
181
+ }
182
+ pingAnchorRelayout();
183
+ });
184
+ }, [layoutPersistence, persistedScope, region, titleFor]);
185
+ useLayoutEffect(() => { applyScopeRef.current = applyScope; }, [applyScope]);
186
+ const scopeTransition = useMemo(() => createDockScopeTransition({
187
+ getLive: () => readyActivation.getCurrent(),
188
+ save: (api, scope) => {
189
+ if (region === 'DockShell')
190
+ layoutPersistence.save(persistedScope(scope), api.toJSON());
191
+ },
192
+ apply: (api, scope) => applyScopeRef.current(api, scope),
193
+ }, pageScope), [layoutPersistence, persistedScope, readyActivation, region]);
194
+ const onReady = useCallback((event) => {
195
+ const api = event.api;
196
+ const wrap = wrapRef.current;
197
+ const activated = readyActivation.replace(api, [
198
+ () => registerDockviewApi(api),
199
+ ...(wrap ? [() => registerDockRegion({ viewId: api.id, region, api, wrapEl: wrap })] : []),
200
+ () => installDockPanelVisibilityTracking(api, {
201
+ onAdded: (id) => { if (region === 'ChatDock' && id === 'chat')
202
+ setChatMounted(true); },
203
+ onRemoved: (id) => { if (region === 'ChatDock' && id === 'chat')
204
+ setChatMounted(false); },
205
+ }),
206
+ () => installDockLayoutObservation(api, {
207
+ getCurrentScope: scopeTransition.getCurrent,
208
+ ...(region === 'DockShell' ? {
209
+ captureAndSave: (scope) => (layoutPersistence.captureAndSave(persistedScope(scope), () => {
210
+ const raw = api.toJSON();
211
+ const pruned = pruneSerializedDockLayout(raw, componentKeysRef.current, new Set(scope.panelIds));
212
+ return pruned ?? raw;
213
+ })),
214
+ } : {}),
215
+ onCommitted: () => {
216
+ layoutControl.refresh();
217
+ pingAnchorRelayout();
218
+ },
219
+ }),
220
+ ...(region === 'DockShell' && wrap ? [
221
+ () => installEdgeDrawer(api, wrap),
222
+ () => installUeDockDrag(api, wrap, {
223
+ region,
224
+ moveTo: () => { },
225
+ titleFor,
226
+ }),
227
+ ] : []),
228
+ ]);
229
+ if (activated)
230
+ scopeTransition.applyCurrent();
231
+ }, [layoutControl, layoutPersistence, persistedScope, readyActivation, region, scopeTransition, titleFor]);
232
+ useEffect(() => () => {
233
+ readyActivation.dispose();
234
+ }, [readyActivation]);
235
+ useEffect(() => {
236
+ scopeTransition.transition(pageScope);
237
+ }, [componentKeysSignature, pageScope, pageScopeKey, scopeTransition]);
238
+ const basePanelCommands = useMemo(() => createDockPanelCommands({
239
+ getPanel: (id) => readyActivation.getCurrent()?.getPanel(id)?.api,
240
+ addPanel: (options) => { readyActivation.getCurrent()?.addPanel(options); },
241
+ canOpen: (id) => Boolean(readyActivation.getCurrent() && isMemberRef.current(id) && componentKeysRef.current.has(id)),
242
+ titleFor,
243
+ authoredLayout: () => scopeTransition.getCurrent()?.layout,
244
+ fallbackPanelId: () => readyActivation.getCurrent()?.panels.find((panel) => panel.api.location.type === 'grid')?.id,
245
+ }), [readyActivation, scopeTransition, titleFor]);
246
+ const panelCommands = useMemo(() => ({
247
+ open(id) {
248
+ if (FOOTER_PANEL_IDS.has(id)) {
249
+ setFooterPanelUserVisible(id, true);
250
+ requestFooterPanelEnsure();
251
+ return basePanelCommands.focus(id) || Boolean(readyActivation.getCurrent()?.getPanel(id));
252
+ }
253
+ return basePanelCommands.open(id);
254
+ },
255
+ close(id) {
256
+ if (FOOTER_PANEL_IDS.has(id))
257
+ setFooterPanelUserVisible(id, false);
258
+ return basePanelCommands.close(id);
259
+ },
260
+ focus(id) {
261
+ return basePanelCommands.focus(id);
262
+ },
263
+ reveal(id) {
264
+ if (FOOTER_PANEL_IDS.has(id)) {
265
+ setFooterPanelUserVisible(id, true);
266
+ requestFooterPanelEnsure();
267
+ if (!readyActivation.getCurrent()?.getPanel(id))
268
+ return true;
269
+ return basePanelCommands.reveal(id);
270
+ }
271
+ return basePanelCommands.reveal(id);
272
+ },
273
+ }), [basePanelCommands, readyActivation]);
274
+ const reopen = useCallback((id) => { panelCommands.open(id); }, [panelCommands]);
275
+ useEffect(() => installDockPanelCommandSubscriptions({
276
+ onOpen: (listener) => ({ dispose: host.bus.on('panel:open', ({ id }) => listener(id)) }),
277
+ onClose: (listener) => ({ dispose: host.bus.on('panel:close', ({ id }) => listener(id)) }),
278
+ onFocus: (listener) => ({ dispose: host.bus.on('panel:focus', ({ id }) => listener(id)) }),
279
+ onReveal: (listener) => ({ dispose: host.bus.on('panel:reveal', ({ id }) => listener(id)) }),
280
+ }, panelCommands), [host, panelCommands]);
281
+ useEffect(() => installDockLayoutReset({
282
+ onReset: (listener) => ({ dispose: host.bus.on('dock:reset', listener) }),
283
+ }, {
284
+ getCurrentScope: scopeTransition.getCurrent,
285
+ clear: (scope) => layoutPersistence.clear(persistedScope(scope)),
286
+ getLive: readyActivation.getCurrent,
287
+ apply: (api, scope) => applyScope(api, scope),
288
+ }), [applyScope, host, layoutPersistence, persistedScope, readyActivation, scopeTransition]);
289
+ const eligible = Object.keys(panels ?? {}).filter(isMember).length;
290
+ if (region !== 'DockShell' && region !== 'ChatDock' && eligible === 0)
291
+ return null;
292
+ const dockview = (_jsx(DockviewReact, { className: "fx-dockshell", theme: FORGEAX_DOCK_THEME, components: components, defaultTabComponent: DockTab, getTabContextMenuItems: getTabContextMenuItems, onReady: onReady, disableFloatingGroups: false, hideBorders: true }));
293
+ return (_jsxs("div", { className: `fx-dockwrap fx-dockregion fx-dockregion-${region}`, ref: wrapRef, "data-fx-slot": region, style: region === 'AuxBar' ? { width: auxBarWidth } : region === 'ChatDock' ? { width: chatWidth, ...(chatMounted ? {} : { display: 'none' }) } : undefined, children: [region === 'AuxBar' && (_jsx(AnchoredResizeHandle, { orientation: "col", className: "fx-auxbar-resizer", ariaLabel: "Resize auxiliary bar", readSize: auxBarWidthStore.getSnapshot, writeSize: auxBarWidthStore.setSize, resizingBodyClassName: "fx-auxbar-resizing" })), region === 'ChatDock' && (_jsx(AnchoredResizeHandle, { orientation: "col", className: "fx-chat-resizer", ariaLabel: "Resize chat panel", readSize: chatWidthStore.getSnapshot, writeSize: chatWidthStore.setSize, resizingBodyClassName: "fx-chat-resizing" })), region === 'ChatDock' ? (_jsxs("div", { className: "fx-chatdock-inner", style: { width: chatWidth }, children: [_jsx(SessionTabStrip, {}), dockview] })) : dockview, region === 'DockShell' && !pageScope && (_jsx("div", { className: "fx-page-empty", role: "status", children: _jsx("span", { children: panelT('dockShell.emptySurface') }) })), region === 'DockShell' && (_jsx(LayoutControl, { getApi: readyActivation.getCurrent, layoutControl: layoutControl, panels: (pageScope?.panelIds ?? []).map((id) => ({ id, title: titleFor(id) })), onReopen: reopen }))] }));
294
+ }
295
+ function LayoutControl({ getApi, layoutControl, panels, onReopen, }) {
296
+ const host = useHost();
297
+ const { t } = useTranslation();
298
+ const onToggle = useCallback((listener) => ({
299
+ dispose: host.bus.on('dock:layout-toggle', (payload) => listener(payload.rect)),
300
+ }), [host]);
301
+ useEffect(() => subscribeFooterPanelVisibility(() => layoutControl.refresh()), [layoutControl]);
302
+ const isPanelOpen = useCallback((panelId) => (isFooterPanelId(panelId)
303
+ ? isFooterPanelUserVisible(panelId)
304
+ : Boolean(getApi()?.getPanel(panelId))), [getApi]);
305
+ const closePanel = useCallback((panelId) => {
306
+ if (isFooterPanelId(panelId))
307
+ setFooterPanelUserVisible(panelId, false);
308
+ getApi()?.getPanel(panelId)?.api.close();
309
+ }, [getApi]);
310
+ return (_jsx(DockLayoutMenu, { state: layoutControl, onToggle: onToggle, isPanelOpen: isPanelOpen, closePanel: closePanel, reopenPanel: onReopen, onReset: () => { void host.commands.execute('app.dock.reset'); }, resetLabel: t('dockShell.resetLayout'), sectionLabel: t('dockShell.mainPanels'), emptyLabel: t('dockShell.emptySurface'), resetIcon: _jsx(RotateCcw, { size: 12 }), panels: panels.map((panel) => {
311
+ const Icon = iconForDockPanel(panel.id);
312
+ return { ...panel, icon: _jsx(Icon, { size: 13 }) };
313
+ }) }));
314
+ }
315
+ export const PAGE_DOCK_PANEL_IDS = [...CORE_PANEL_IDS, ...OPTIONAL_PANEL_IDS];
@@ -0,0 +1,139 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ // Custom dockview tab — the default tab with a leading Lucide panel icon.
3
+ //
4
+ // Wired as `<DockviewReact defaultTabComponent={DockTab} />`, so every dock tab
5
+ // (static, ep:*, page-mode) gets an icon without touching per-panel registration.
6
+ //
7
+ // This is a faithful re-implementation of dockview's `DockviewDefaultTab`
8
+ // (node_modules/dockview .../dockview/defaultTab.js): it forwards the pointer
9
+ // handlers dockview injects for drag/activate and preserves the exact
10
+ // `.dv-default-tab` / `.dv-default-tab-content` / `.dv-default-tab-action` DOM
11
+ // hooks the stylesheets and `edgeDrawer.ts`'s click routing key off. The
12
+ // additions are a leading `.fx-dock-tab-icon` (inside `.dv-default-tab`, so the
13
+ // whole tab stays draggable/clickable), a Lucide `X` close glyph (design-system
14
+ // on-brand, avoids a deep `dockview/.../svg` import), and a Lucide `Pin` that
15
+ // takes the X's place on edge-strip tabs (see `useEdgePin` below).
16
+ //
17
+ // CLOSE BUTTON: React synthetic events and native mousedown/click are
18
+ // unreliable here because calling preventDefault() on pointerdown (needed to
19
+ // prevent tab activation) suppresses subsequent mousedown/click per the W3C
20
+ // Pointer Events spec. The public App Shell interaction hook owns that native
21
+ // pointerdown and the matching middle-button session; this file only injects
22
+ // Dockview close policy and forwards Dockview's tab handlers.
23
+ import { useCallback, useMemo, } from 'react';
24
+ import { DockTabAction, DockTabFrame, DockTabIcon, DockTabStatusSummary, DockTabTitle, useLiveTabPlacement, useLiveTabTitle, useTabPinnedState, useTabCloseInteractions, } from '@forgeax/app-shell/react';
25
+ import { Pin, X } from 'lucide-react';
26
+ import { barePanelId, iconForDockPanel } from '../../lib/panel-tab-icons.js';
27
+ import { EDGE_PIN_CLASS, edgePinStateSource } from './edgePinStore.js';
28
+ import { useTranslation } from '../../i18n/index.js';
29
+ import { useHealthStore } from '../StatusBar/healthStore.js';
30
+ const EMPTY_HEALTH_ENTRIES = Object.freeze([]);
31
+ /** Track the live tab title (dockview mutates it via `api.setTitle`). */
32
+ function useTitle(api) {
33
+ const source = useMemo(() => ({
34
+ getTitle: () => api.title,
35
+ subscribe: (listener) => {
36
+ const disposable = api.onDidTitleChange(listener);
37
+ return () => disposable.dispose();
38
+ },
39
+ }), [api]);
40
+ return useLiveTabTitle(source);
41
+ }
42
+ /**
43
+ * The displayed tab name is DERIVED at render — never read from the persisted
44
+ * layout. Same shape as the icon (`iconForDockPanel(api.id)`): the panel id is
45
+ * the key, i18n is the lookup. `dockShell.panelTitles.<bareId>` wins and is
46
+ * locale-reactive (useTranslation re-renders on language change), so a stored
47
+ * `api.title` baked into the dockview layout JSON is ignored for keyed panels.
48
+ * Panels without a catalog key (host-injected editor/extension panels) fall
49
+ * back to the live `api.title` the host set at mount — their own name, as-is.
50
+ */
51
+ function useDockTabName(api) {
52
+ const stored = useTitle(api);
53
+ const { t } = useTranslation();
54
+ const key = `dockShell.panelTitles.${barePanelId(api.id)}`;
55
+ const localized = t(key);
56
+ return localized !== key ? localized : stored;
57
+ }
58
+ function useInfoIssueCounts(panelId) {
59
+ const entries = useHealthStore((s) => (barePanelId(panelId) === 'info' ? s.entries : EMPTY_HEALTH_ENTRIES));
60
+ return useMemo(() => {
61
+ if (barePanelId(panelId) !== 'info')
62
+ return null;
63
+ let error = 0;
64
+ let warn = 0;
65
+ for (const entry of entries) {
66
+ if (entry.level === 'error')
67
+ error++;
68
+ else if (entry.level === 'warn')
69
+ warn++;
70
+ }
71
+ return { error, warn };
72
+ }, [entries, panelId]);
73
+ }
74
+ /**
75
+ * Edge-strip tabs show a per-tab Pin toggle where a grid tab shows close (X) —
76
+ * see edgeDrawer.ts for the rules. Both bits are DERIVED from live dockview
77
+ * state, so the first paint after a refresh is already correct:
78
+ * `onDidLocationChange` fires on any group change (dockviewPanelApi sets it from
79
+ * the `group` setter), which covers dragging a panel into or out of a strip.
80
+ */
81
+ function useEdgePin(api) {
82
+ const source = useMemo(() => ({
83
+ getPlacement: () => ({
84
+ isEdge: api.location.type === 'edge',
85
+ groupId: api.group.id,
86
+ }),
87
+ subscribe: (listener) => {
88
+ const disposable = api.onDidLocationChange(listener);
89
+ return () => disposable.dispose();
90
+ },
91
+ }), [api]);
92
+ const home = useLiveTabPlacement(source) ?? {
93
+ isEdge: false,
94
+ groupId: api.group.id,
95
+ };
96
+ const pinned = useTabPinnedState(edgePinStateSource, home.groupId, api.id);
97
+ return { isEdge: home.isEdge, pinned };
98
+ }
99
+ export function DockTab({ api, containerApi: _containerApi, params: _params, hideClose, closeActionOverride, onPointerDown, onPointerUp, onPointerLeave, tabLocation: _tabLocation, ...rest }) {
100
+ const title = useDockTabName(api);
101
+ const infoIssueCounts = useInfoIssueCounts(api.id);
102
+ const Icon = iconForDockPanel(api.id);
103
+ const { isEdge, pinned } = useEdgePin(api);
104
+ const close = useCallback(() => {
105
+ if (closeActionOverride)
106
+ closeActionOverride();
107
+ else
108
+ api.close();
109
+ }, [api, closeActionOverride]);
110
+ const closeInteractions = useTabCloseInteractions({
111
+ close,
112
+ disabled: hideClose,
113
+ onPointerDown,
114
+ onPointerUp,
115
+ onPointerLeave,
116
+ });
117
+ const onBtnPointerDown = useCallback((event) => event.preventDefault(), []);
118
+ const infoStatusItems = infoIssueCounts === null
119
+ ? []
120
+ : [
121
+ ...(infoIssueCounts.error > 0
122
+ ? [{ id: 'errors', tone: 'error', icon: '✖', value: infoIssueCounts.error }]
123
+ : []),
124
+ ...(infoIssueCounts.warn > 0
125
+ ? [{ id: 'warnings', tone: 'warning', icon: '⚠', value: infoIssueCounts.warn }]
126
+ : []),
127
+ ];
128
+ const action = hideClose
129
+ ? undefined
130
+ : isEdge
131
+ ? (
132
+ // The toggle itself is driven by edgeDrawer's capture-phase click
133
+ // handler (it must preventDefault dockview's native expand before the
134
+ // event ever reaches React), so this renders state and carries the
135
+ // panel id that handler reads back — no onClick of its own.
136
+ _jsx(DockTabAction, { className: `${EDGE_PIN_CLASS}${pinned ? ` ${EDGE_PIN_CLASS}--on` : ''}`, "data-fx-edge-pin-panel": api.id, role: "button", "aria-pressed": pinned, "aria-label": pinned ? 'Unpin tab' : 'Pin tab', title: pinned ? 'Unpin' : 'Pin', onPointerDown: onBtnPointerDown, children: _jsx(Pin, { className: "fx-edge-pin-icon", size: 12, "aria-hidden": true }) }))
137
+ : (_jsx(DockTabAction, { ref: closeInteractions.closeRef, children: _jsx(X, { size: 14, "aria-hidden": true }) }));
138
+ return (_jsxs(DockTabFrame, { "data-testid": "dockview-dv-default-tab", ...rest, onPointerDown: closeInteractions.onPointerDown, onPointerUp: closeInteractions.onPointerUp, onPointerLeave: closeInteractions.onPointerLeave, leading: (_jsx(DockTabIcon, { children: _jsx(Icon, { size: 14, "aria-hidden": true }) })), action: action, children: [_jsx(DockTabTitle, { children: title }), infoIssueCounts !== null && infoStatusItems.length > 0 && (_jsx(DockTabStatusSummary, { "aria-label": `${infoIssueCounts.error} errors, ${infoIssueCounts.warn} warnings`, items: infoStatusItems }))] }));
139
+ }
@@ -0,0 +1,68 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { lazy, Suspense } from 'react';
3
+ import { useTranslation } from '../../i18n/index.js';
4
+ import { pickLang } from '../../lib/extension-api.js';
5
+ import { useExtensionManifest } from '../../lib/use-extension-manifest.js';
6
+ import { useShellStore } from '../../store.js';
7
+ import { usePanelRenderers } from './panelRenderers.js';
8
+ import { ExtensionRuntimeFrame } from './ExtensionRuntimeFrame.js';
9
+ import { isExtensionHostExtension, useExtensionCatalogEntry } from './extensionRuntime.js';
10
+ import { usesExternalIframeRuntime } from './extension-runtime-selection.js';
11
+ import { NativeExtensionHost } from '../ExtensionHost/NativeExtensionHost.js';
12
+ // Keep Extension Platform transport out of standalone DockShell's static import graph. Catalog
13
+ // Pages load this runtime only when an iframe-backed placement is mounted.
14
+ const StandaloneExtensionIframe = lazy(() => import('../MainArea/StandaloneExtensionIframe.js').then((module) => ({
15
+ default: module.StandaloneExtensionIframe,
16
+ })));
17
+ function LegacyStandalonePanel({ manifest, pane, }) {
18
+ const { t } = useTranslation();
19
+ return (_jsx("div", { className: "page-dock-panel page-dock-standalone", children: _jsx(Suspense, { fallback: _jsx("div", { className: "page-dock-loading", children: t('extensionDock.loadingExtensionGeneric') }), children: _jsx(StandaloneExtensionIframe, { plugin: manifest, pane: pane, active: true }) }) }));
20
+ }
21
+ function HostedExtensionRuntimePanel({ extensionId, pane, onEditorAssetImport, }) {
22
+ const { t } = useTranslation();
23
+ const activeGameSlug = useShellStore((state) => state.activeGameSlug);
24
+ const activeGameResolved = useShellStore((state) => state.activeGameResolved);
25
+ const runtime = useExtensionCatalogEntry(extensionId, activeGameSlug, activeGameResolved);
26
+ if (runtime.loading) {
27
+ return _jsx("div", { className: "page-dock-loading", children: t('extensionDock.loadingExtensionHost') });
28
+ }
29
+ if (runtime.error) {
30
+ return (_jsxs("div", { className: "page-dock-loading page-dock-error", role: "alert", children: [_jsx("div", { children: t('extensionDock.extensionHostFailed', { error: runtime.error.message }) }), _jsx("button", { type: "button", onClick: runtime.retry, children: t('extensionDock.retry') })] }));
31
+ }
32
+ if (runtime.descriptor && activeGameSlug) {
33
+ return (_jsx("div", { className: "page-dock-panel page-dock-standalone", children: _jsx(ExtensionRuntimeFrame, { descriptor: runtime.descriptor, gameId: activeGameSlug, pane: pane, onEditorAssetImport: onEditorAssetImport }) }));
34
+ }
35
+ return (_jsxs("div", { className: "page-dock-loading page-dock-error", role: "alert", children: [_jsx("div", { children: activeGameSlug
36
+ ? t('extensionDock.extensionExtensionMissing', { extensionId })
37
+ : t('extensionDock.extensionGameRequired') }), _jsx("button", { type: "button", onClick: runtime.retry, children: t('extensionDock.retry') })] }));
38
+ }
39
+ /** Render one Page placement for a Extension extension. The Page owns panel
40
+ * availability and position; `pane` only selects the extension's content mode. */
41
+ export function ExtensionHostPanel({ extensionId, pane }) {
42
+ const { t, i18n } = useTranslation();
43
+ const manifest = useExtensionManifest(extensionId);
44
+ const { extensionPanels, editor } = usePanelRenderers();
45
+ const InlinePanel = extensionPanels?.[extensionId];
46
+ if (InlinePanel) {
47
+ return (_jsx("div", { className: "page-dock-panel page-dock-inline", children: _jsx(InlinePanel, {}) }));
48
+ }
49
+ if (!manifest || manifest === 'loading') {
50
+ return (_jsx("div", { className: "page-dock-panel", children: _jsx("div", { className: "page-dock-loading", children: t('extensionDock.loadingExtension', { extensionId }) }) }));
51
+ }
52
+ const label = pickLang(manifest.displayName, i18n.language, manifest.id);
53
+ if (manifest.runtimeMode === 'native-module'
54
+ && manifest.moduleUrl) {
55
+ return (_jsx("div", { className: "page-dock-panel page-dock-standalone", children: _jsx(NativeExtensionHost, { extensionId: manifest.id, moduleUrl: manifest.moduleUrl, allowedOrigin: manifest.allowedOrigin, generation: manifest.registryGeneration ?? 0, active: true }) }));
56
+ }
57
+ // Explicit legacy runtimes are iframe-backed even though their persisted Studio
58
+ // manifest intentionally contains no standalone process command/port. The
59
+ // Host-projected frontendUrl is the authority for this externally-owned mode.
60
+ if (usesExternalIframeRuntime(manifest)) {
61
+ if (!isExtensionHostExtension(manifest.id)) {
62
+ return _jsx(LegacyStandalonePanel, { manifest: manifest, pane: pane });
63
+ }
64
+ return (_jsx(HostedExtensionRuntimePanel, { extensionId: extensionId, pane: pane, onEditorAssetImport: editor?.importAssetSource }));
65
+ }
66
+ const description = pickLang(manifest.description ?? '', i18n.language, '');
67
+ return (_jsxs("div", { className: "page-dock-panel page-dock-placeholder", children: [_jsx("div", { className: "page-dock-name", children: label }), description && _jsx("div", { className: "page-dock-desc", children: description }), _jsx("div", { className: "page-dock-id", children: manifest.id })] }));
68
+ }
@@ -0,0 +1,56 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { useCallback, useEffect, useRef } from 'react';
3
+ import { ExtensionFrame } from '@forgeax/extension-host/react';
4
+ import { getLocale } from '../../i18n/index.js';
5
+ import { attachExtensionEditorAssetImportBridge } from './extension-editor-bridge.js';
6
+ import { EXTENSION_API_BASE } from './extensionRuntime.js';
7
+ export const TRUSTED_EXTENSION_SANDBOX = 'allow-scripts allow-same-origin';
8
+ export function extensionRuntimeUrl(runtimeUrl, pane) {
9
+ if (!pane)
10
+ return runtimeUrl;
11
+ const url = new URL(runtimeUrl, window.location.href);
12
+ url.searchParams.set('pane', pane);
13
+ return url.origin === window.location.origin
14
+ ? `${url.pathname}${url.search}${url.hash}`
15
+ : url.toString();
16
+ }
17
+ export function extensionFrameContext(descriptor, gameId) {
18
+ const runtimeId = encodeURIComponent(descriptor.runtimeId);
19
+ const encodedGameId = encodeURIComponent(gameId);
20
+ return {
21
+ extensionId: descriptor.extensionId,
22
+ runtimeId: descriptor.runtimeId,
23
+ gameId,
24
+ locale: getLocale(),
25
+ theme: 'dark',
26
+ endpoints: {
27
+ toolCall: `${EXTENSION_API_BASE}tools/call`,
28
+ gamePackage: `${EXTENSION_API_BASE}games/${encodedGameId}/package?runtimeId=${runtimeId}`,
29
+ extensionApi: `${EXTENSION_API_BASE}extension/${runtimeId}?gameId=${encodedGameId}`,
30
+ gameVersions: `${EXTENSION_API_BASE}games/${encodedGameId}/versions`,
31
+ gameComponents: `${EXTENSION_API_BASE}games/${encodedGameId}/components`,
32
+ },
33
+ capabilities: ['tools.call', 'project.files', 'game.package', 'media', 'versioning', 'extension.http'],
34
+ };
35
+ }
36
+ export function ExtensionRuntimeFrame({ descriptor, gameId, pane, onEditorAssetImport, }) {
37
+ const frameRef = useRef(null);
38
+ const importHandlerRef = useRef(onEditorAssetImport);
39
+ importHandlerRef.current = onEditorAssetImport;
40
+ const onFrameLoad = useCallback((event) => {
41
+ frameRef.current = event.currentTarget;
42
+ }, []);
43
+ useEffect(() => {
44
+ return attachExtensionEditorAssetImportBridge({
45
+ ownerWindow: window,
46
+ frameWindow: () => frameRef.current?.contentWindow ?? null,
47
+ importAssetSource: (request) => {
48
+ const handler = importHandlerRef.current;
49
+ return handler
50
+ ? handler(request)
51
+ : { ok: false, error: '当前 Studio 没有可用的 Editor Gateway' };
52
+ },
53
+ });
54
+ }, []);
55
+ return (_jsx(ExtensionFrame, { runtimeUrl: extensionRuntimeUrl(descriptor.runtimeUrl, pane), context: extensionFrameContext(descriptor, gameId), sandbox: TRUSTED_EXTENSION_SANDBOX, title: pane ? `${descriptor.title} — ${pane}` : descriptor.title, "data-extension-runtime": descriptor.extensionId, "data-extension-pane": pane, style: { display: 'block', width: '100%', height: '100%', border: 0 }, onLoad: onFrameLoad }));
56
+ }
@@ -0,0 +1,9 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { useTranslation } from '../../i18n/index.js';
3
+ import { useFloatingSurfaces } from '../../lib/platform/index.js';
4
+ import { DetachedPanelBoundary, SurfacePlaceholder } from '@forgeax/app-shell/react';
5
+ export function PanelWindowingBoundary({ capability, children, }) {
6
+ const { t } = useTranslation();
7
+ const floatingSurfaces = useFloatingSurfaces();
8
+ return (_jsx(DetachedPanelBoundary, { capability: capability, floatingSurfaces: floatingSurfaces, placeholder: (_jsx(SurfacePlaceholder, { title: t('dockShell.detachedWindowPlaceholder') })), children: children }));
9
+ }