@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,10 @@
1
+ /** 已登记的跨-surface 深链 topic。payload 见下方 map。 */
2
+ export type DeepLinkTopic = 'bus:expand-plugin' | 'bus:filter-kind' | 'sidebar:focus-plugin' | 'sidebar:flash-kind' | 'chat:flash-bus-chip';
3
+ /** producer:发一条深链意图(retain 一次,晚挂载的消费者会补到)。 */
4
+ export declare function emitDeepLink(topic: DeepLinkTopic, payload: string): void;
5
+ /** producer:清掉某 topic 的 retained 快照 + 通知在线消费者复位(原 `setPendingX(null)`)。
6
+ * 用于"打开 B 面但不要带上一次残留的深链"(如 Dashboard goBus 只想开面板、不预过滤)。 */
7
+ export declare function clearDeepLink(topic: DeepLinkTopic): void;
8
+ /** consumer hook:镜像原 `pendingX / setPendingX(null)` 对,但值由 interface bus 承载。
9
+ * 返回 `[value, clear]`:value 来自 retained 快照 + 后续 publish;clear() 清 retained + 本地。 */
10
+ export declare function useDeepLink(topic: DeepLinkTopic): [string | null, () => void];
@@ -0,0 +1,35 @@
1
+ // 跨-surface 深链意图 —— 建在 interface bus primitive 之上的一层薄封装(R5/P2)。
2
+ //
3
+ // 背景:原来这些"点了 A 面里的东西 → 跳到 B 面并高亮/展开/过滤"的意图,是往 interface
4
+ // store 里塞 `pending*` 字段(producer set、consumer 读到后 act + 清空)实现的。
5
+ // 那让 interface store 变成了跨 app 导航总线(app 领域态漏进 foundation)。R5/P2 把它们改成走 bus:
6
+ // - producer:`emitDeepLink(topic, payload)` —— retain 一次(快照语义)
7
+ // - consumer:`useDeepLink(topic)` → [value, clear],clear 时清 retained + 本地
8
+ //
9
+ // 为什么 retain:这些深链常跨一次 mode 切换(如 Sidebar 点一下 → setMode('bus') →
10
+ // BusAdminPanel 此刻才挂载)。retain 让"晚挂载的消费者"在 subscribe 时立即补到值,
11
+ // 复刻原 store 字段"持续到被消费"的行为。消费者消费后 clear,避免重复触发。
12
+ //
13
+ // interface foundation 纯度说明:topic 字符串是"跨 surface 导航意图",其消费者(BusAdminPanel/Sidebar
14
+ // 等壳内 surface)目前仍驻留 interface(见 17b §7.4 —— 这些是壳/残留,非新耦合)。
15
+ // bus primitive 本身零 app 语义;本文件只是把散落的 topic 常量收敛到一处、加类型。
16
+ import { useEffect, useState, useCallback } from 'react';
17
+ import { publish, subscribe, peek, clearRetained } from './bus';
18
+ /** producer:发一条深链意图(retain 一次,晚挂载的消费者会补到)。 */
19
+ export function emitDeepLink(topic, payload) {
20
+ publish(topic, payload, { retain: true });
21
+ }
22
+ /** producer:清掉某 topic 的 retained 快照 + 通知在线消费者复位(原 `setPendingX(null)`)。
23
+ * 用于"打开 B 面但不要带上一次残留的深链"(如 Dashboard goBus 只想开面板、不预过滤)。 */
24
+ export function clearDeepLink(topic) {
25
+ clearRetained(topic);
26
+ publish(topic, null);
27
+ }
28
+ /** consumer hook:镜像原 `pendingX / setPendingX(null)` 对,但值由 interface bus 承载。
29
+ * 返回 `[value, clear]`:value 来自 retained 快照 + 后续 publish;clear() 清 retained + 本地。 */
30
+ export function useDeepLink(topic) {
31
+ const [val, setVal] = useState(() => peek(topic) ?? null);
32
+ useEffect(() => subscribe(topic, (p) => setVal(p ?? null)), [topic]);
33
+ const clear = useCallback(() => { clearRetained(topic); setVal(null); }, [topic]);
34
+ return [val, clear];
35
+ }
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Imperative async replacement for the browser's blocking `confirm()` /
3
+ * `alert()`, rendered with the shadcn AlertDialog so it matches the design
4
+ * system and is non-blocking.
5
+ *
6
+ * if (!(await confirmDialog({ body: '确认删除?', danger: true }))) return;
7
+ * await alertDialog({ body: '保存失败' });
8
+ * const decision = await unsavedChangesDialog({ body: '…' });
9
+ *
10
+ * A single <DialogHost /> (mounted in App) subscribes to a module-level queue.
11
+ * This is plain UI plumbing — it carries no tool/surface semantics, so it does
12
+ * not touch the dual-modality path.
13
+ */
14
+ import { type ReactNode } from 'react';
15
+ export interface ConfirmOptions {
16
+ title?: string;
17
+ body?: ReactNode;
18
+ confirmText?: string;
19
+ cancelText?: string;
20
+ /** Style the confirm button as destructive. */
21
+ danger?: boolean;
22
+ }
23
+ export interface AlertOptions {
24
+ title?: string;
25
+ body?: ReactNode;
26
+ okText?: string;
27
+ }
28
+ export type UnsavedChangesDecision = 'save' | 'discard' | 'cancel';
29
+ export interface UnsavedChangesOptions {
30
+ title?: string;
31
+ body?: ReactNode;
32
+ saveText?: string;
33
+ discardText?: string;
34
+ cancelText?: string;
35
+ }
36
+ export declare function confirmDialog(options: ConfirmOptions): Promise<boolean>;
37
+ export declare function alertDialog(options?: AlertOptions): Promise<void>;
38
+ export declare function __resetDialogQueueForTests(): void;
39
+ export declare function unsavedChangesDialog(options?: UnsavedChangesOptions): Promise<UnsavedChangesDecision>;
40
+ export declare function DialogHost(): React.ReactElement | null;
@@ -0,0 +1,103 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ /**
3
+ * Imperative async replacement for the browser's blocking `confirm()` /
4
+ * `alert()`, rendered with the shadcn AlertDialog so it matches the design
5
+ * system and is non-blocking.
6
+ *
7
+ * if (!(await confirmDialog({ body: '确认删除?', danger: true }))) return;
8
+ * await alertDialog({ body: '保存失败' });
9
+ * const decision = await unsavedChangesDialog({ body: '…' });
10
+ *
11
+ * A single <DialogHost /> (mounted in App) subscribes to a module-level queue.
12
+ * This is plain UI plumbing — it carries no tool/surface semantics, so it does
13
+ * not touch the dual-modality path.
14
+ */
15
+ import { useEffect, useState } from 'react';
16
+ import { useTranslation } from '../i18n';
17
+ import { AlertDialog, AlertDialogContent, AlertDialogHeader, AlertDialogFooter, AlertDialogTitle, AlertDialogDescription, AlertDialogAction, AlertDialogCancel, } from '../components/ui/alert-dialog';
18
+ let queue = [];
19
+ let seq = 0;
20
+ const listeners = new Set();
21
+ function emit() {
22
+ const snapshot = queue.slice();
23
+ listeners.forEach((l) => l(snapshot));
24
+ }
25
+ function takeRequest(id) {
26
+ const req = queue.find((r) => r.id === id);
27
+ if (!req)
28
+ return undefined;
29
+ queue = queue.filter((r) => r.id !== id);
30
+ emit();
31
+ return req;
32
+ }
33
+ function resolveConfirmAlert(id, value) {
34
+ const req = takeRequest(id);
35
+ if (!req || req.kind === 'unsaved')
36
+ return;
37
+ req.resolve(value);
38
+ }
39
+ function resolveUnsaved(id, value) {
40
+ const req = takeRequest(id);
41
+ if (!req || req.kind !== 'unsaved')
42
+ return;
43
+ req.resolve(value);
44
+ }
45
+ export function confirmDialog(options) {
46
+ return new Promise((resolve) => {
47
+ queue.push({ id: ++seq, kind: 'confirm', options, resolve });
48
+ emit();
49
+ });
50
+ }
51
+ export function alertDialog(options = {}) {
52
+ return new Promise((resolve) => {
53
+ queue.push({ id: ++seq, kind: 'alert', options, resolve: () => resolve() });
54
+ emit();
55
+ });
56
+ }
57
+ export function __resetDialogQueueForTests() {
58
+ queue = [];
59
+ emit();
60
+ }
61
+ export function unsavedChangesDialog(options = {}) {
62
+ return new Promise((resolve) => {
63
+ queue.push({ id: ++seq, kind: 'unsaved', options, resolve });
64
+ emit();
65
+ });
66
+ }
67
+ export function DialogHost() {
68
+ const { t } = useTranslation();
69
+ const [reqs, setReqs] = useState(queue);
70
+ useEffect(() => {
71
+ const listener = (next) => setReqs(next);
72
+ listeners.add(listener);
73
+ listener(queue.slice());
74
+ return () => {
75
+ listeners.delete(listener);
76
+ };
77
+ }, []);
78
+ const head = reqs[0];
79
+ if (!head)
80
+ return null;
81
+ const isConfirm = head.kind === 'confirm';
82
+ const isUnsaved = head.kind === 'unsaved';
83
+ return (_jsx(AlertDialog, { open: true, onOpenChange: (open) => {
84
+ if (!open) {
85
+ if (isUnsaved)
86
+ resolveUnsaved(head.id, 'cancel');
87
+ else
88
+ resolveConfirmAlert(head.id, false);
89
+ }
90
+ }, children: _jsxs(AlertDialogContent, { children: [_jsxs(AlertDialogHeader, { children: [head.options.title ? (_jsx(AlertDialogTitle, { children: head.options.title })) : (_jsx(AlertDialogTitle, { className: "sr-only", children: isUnsaved
91
+ ? t('dialog.unsavedTitle')
92
+ : isConfirm
93
+ ? t('dialog.confirmActionTitle')
94
+ : t('dialog.alertTitle') })), head.options.body && (
95
+ // Body is the primary message here (most confirm/alert calls pass
96
+ // no title), so use full foreground instead of the muted default —
97
+ // muted-foreground (60% opacity) reads as illegible grey-on-dark.
98
+ _jsx(AlertDialogDescription, { asChild: true, className: "whitespace-pre-line text-foreground", children: _jsx("div", { children: head.options.body }) }))] }), _jsx(AlertDialogFooter, { children: isUnsaved ? (_jsxs(_Fragment, { children: [_jsx(AlertDialogCancel, { onClick: () => resolveUnsaved(head.id, 'cancel'), children: head.options.cancelText ?? t('common.cancel') }), _jsx(AlertDialogAction, { className: "bg-destructive text-destructive-foreground hover:bg-destructive/90", onClick: () => resolveUnsaved(head.id, 'discard'), children: head.options.discardText ?? t('dialog.discardChanges') }), _jsx(AlertDialogAction, { autoFocus: true, onClick: () => resolveUnsaved(head.id, 'save'), children: head.options.saveText ?? t('common.save') })] })) : (_jsxs(_Fragment, { children: [isConfirm && (_jsx(AlertDialogCancel, { onClick: () => resolveConfirmAlert(head.id, false), children: head.options.cancelText ?? t('common.cancel') })), _jsx(AlertDialogAction, { autoFocus: true, className: isConfirm && head.options.danger
99
+ ? 'bg-destructive text-destructive-foreground hover:bg-destructive/90'
100
+ : undefined, onClick: () => resolveConfirmAlert(head.id, true), children: isConfirm
101
+ ? head.options.confirmText ?? t('common.confirm')
102
+ : head.options.okText ?? t('common.ok') })] })) })] }) }));
103
+ }
@@ -0,0 +1,27 @@
1
+ /** One editor gateway operation dispatch (the "事件" feed row). */
2
+ export interface GatewayRun {
3
+ readonly runId: string;
4
+ /** e.g. "document.edit" / "asset.import". */
5
+ readonly operationId: string;
6
+ /** "succeeded" | "failed" | "running" | … (kept open — carrier owns the set). */
7
+ readonly status: string;
8
+ /** epoch ms; 0 when the carrier didn't stamp one. */
9
+ readonly ts: number;
10
+ readonly error?: string;
11
+ }
12
+ /** Live engine / project / scene / asset facts (the diagnostics popover). */
13
+ export interface EditorFacts {
14
+ /** Runtime identity, e.g. "game-runtime/v1 · browser". */
15
+ readonly engine: string;
16
+ /** Active game slug. */
17
+ readonly project: string;
18
+ /** Current scene id/name. */
19
+ readonly scene: string;
20
+ readonly assets: number;
21
+ }
22
+ export declare const EDITOR_RUNS_TOPIC = "editor:gatewayRuns";
23
+ export declare const EDITOR_FACTS_TOPIC = "editor:facts";
24
+ /** Subscribe to the latest gateway-run feed (empty until studio publishes). */
25
+ export declare function useGatewayRuns(): readonly GatewayRun[];
26
+ /** Subscribe to the latest editor facts (undefined until studio publishes). */
27
+ export declare function useEditorFacts(): EditorFacts | undefined;
@@ -0,0 +1,25 @@
1
+ // editor-facts bus contract — the read-side view models + topic names for the
2
+ // footer's Events / Diagnostics panels.
3
+ //
4
+ // Data-plane wiring (ADR-0030 §4): the footer panels live in interface but the
5
+ // truth (editor gateway operation runs + engine/scene/asset facts) lives in the
6
+ // studio/editor realm, which interface must never import. So studio (the owner
7
+ // of the editor realm) publishes onto the shared cross-app bus with `retain`,
8
+ // and these interface panels subscribe. interface only knows these flat view
9
+ // models — nothing about the editor transport, gateway, or `@forgeax/editor`.
10
+ //
11
+ // The topic strings are exported so the studio publisher imports the SAME names
12
+ // (single source of truth). interface's own `BusTopics` stays empty per the bus
13
+ // design; the studio publisher does the `declare module` augmentation next to
14
+ // its `publish()` calls.
15
+ import { useBusSnapshot } from './use-bus-snapshot';
16
+ export const EDITOR_RUNS_TOPIC = 'editor:gatewayRuns';
17
+ export const EDITOR_FACTS_TOPIC = 'editor:facts';
18
+ /** Subscribe to the latest gateway-run feed (empty until studio publishes). */
19
+ export function useGatewayRuns() {
20
+ return useBusSnapshot(EDITOR_RUNS_TOPIC) ?? [];
21
+ }
22
+ /** Subscribe to the latest editor facts (undefined until studio publishes). */
23
+ export function useEditorFacts() {
24
+ return useBusSnapshot(EDITOR_FACTS_TOPIC);
25
+ }
@@ -0,0 +1,140 @@
1
+ import type { ExtensionManifestV2 } from '@forgeax/types';
2
+ export interface ExtensionModelBindingInfo {
3
+ channel: string;
4
+ vendor: string;
5
+ models: string[];
6
+ roles?: string[];
7
+ }
8
+ export interface ExtensionSkillInfo {
9
+ id: string;
10
+ trigger: string;
11
+ }
12
+ export interface ExtensionToolInfo {
13
+ id: string;
14
+ exposedToAI?: boolean;
15
+ }
16
+ export interface ExtensionEventInfo {
17
+ name: string;
18
+ }
19
+ export interface ExtensionCliProviderInfo {
20
+ id: string;
21
+ displayName: string;
22
+ models?: string[];
23
+ capabilities: {
24
+ streaming: boolean;
25
+ thinking: boolean;
26
+ toolCalls: boolean;
27
+ subAgents: boolean;
28
+ sessions: boolean;
29
+ };
30
+ }
31
+ export interface ExtensionEntryInfo {
32
+ frontend?: string;
33
+ /** Phase A3: standalone iframe-served plugin entry. When `start`/`port` is
34
+ * set, the host can mount the plugin via an iframe + postMessage RPC
35
+ * (createExtensionPort). Gated by `VITE_FX_USE_IFRAME=true` until B-phase. */
36
+ standalone?: {
37
+ start?: string;
38
+ port?: number;
39
+ readyProbe?: string;
40
+ embeddedAlso?: boolean;
41
+ };
42
+ }
43
+ export interface ExtensionAgentInfo {
44
+ id: string;
45
+ role?: string;
46
+ personaFile?: string;
47
+ memoryDir?: string;
48
+ preferredCliProvider?: string;
49
+ defaultLang?: string;
50
+ multiInstance?: boolean;
51
+ }
52
+ export interface ExtensionSourceInfo {
53
+ origin: 'builtin' | 'npm' | 'user' | 'project' | 'dev';
54
+ /** Browser-safe path relative to the selected origin root. */
55
+ relativeManifestPath: string;
56
+ }
57
+ export interface ExtensionInfo {
58
+ id: string;
59
+ version: string;
60
+ kind: string;
61
+ displayName: {
62
+ zh?: string;
63
+ en?: string;
64
+ ja?: string;
65
+ } | string;
66
+ description?: {
67
+ zh?: string;
68
+ en?: string;
69
+ ja?: string;
70
+ } | string;
71
+ icon?: string;
72
+ experimental?: boolean;
73
+ contributes?: ExtensionManifestV2['contributes'];
74
+ modelBinding?: ExtensionModelBindingInfo;
75
+ skills?: ExtensionSkillInfo[];
76
+ tools?: ExtensionToolInfo[];
77
+ events?: ExtensionEventInfo[];
78
+ cliProvider?: ExtensionCliProviderInfo;
79
+ agent?: ExtensionAgentInfo;
80
+ entry?: ExtensionEntryInfo;
81
+ /** Explicit host-validated runtime metadata for externally-owned development artifacts. */
82
+ frontendUrl?: string;
83
+ moduleUrl?: string;
84
+ allowedOrigin?: string;
85
+ runtimeMode?: 'native-module' | 'dev' | 'embedded' | 'standalone';
86
+ registryGeneration?: number;
87
+ /** Runtime-resolved origin; never an absolute host filesystem path. */
88
+ source?: ExtensionSourceInfo;
89
+ /** kind=agent 才有:统一命名。title=「中文职能·英文名」,sub=灰字英文职能。 */
90
+ naming?: {
91
+ title: string;
92
+ sub: string;
93
+ };
94
+ }
95
+ export interface ExtensionListResponse {
96
+ kind: string | null;
97
+ count: number;
98
+ generation?: number;
99
+ items: ExtensionInfo[];
100
+ }
101
+ export type SharedCapabilityKind = 'skill' | 'command' | 'mcp' | 'extension' | 'memory' | 'tool';
102
+ export interface SharedCapabilityInfo {
103
+ capabilityId: string;
104
+ kind: SharedCapabilityKind;
105
+ extensionId: string;
106
+ extensionVersion: string;
107
+ origin: 'builtin' | 'user' | 'project';
108
+ trustTier: 'own' | 'imported';
109
+ localId: string;
110
+ generation: number;
111
+ lifecycle: {
112
+ state: 'load' | 'activate' | 'ready' | 'reload' | 'deactivate' | 'broken';
113
+ reloadable: boolean;
114
+ requiresRestart: boolean;
115
+ };
116
+ shadowedBy: Array<{
117
+ origin: string;
118
+ originPath: string;
119
+ }>;
120
+ metadata?: Record<string, unknown>;
121
+ }
122
+ export interface SharedCapabilityListResponse {
123
+ generation: number;
124
+ loadedAt: number;
125
+ capabilities: SharedCapabilityInfo[];
126
+ issues: string[];
127
+ }
128
+ export declare function listSharedCapabilities(): Promise<SharedCapabilityListResponse>;
129
+ export declare function pickLang(text: ExtensionInfo['displayName'] | ExtensionInfo['description'], lang?: 'zh' | 'en', fallback?: string): string;
130
+ /**
131
+ * Strip known package scopes from a manifest id → flat marketplace slug.
132
+ * Longer scopes first so `@forgeax-extension/…` is never misread as `@forgeax/…`.
133
+ */
134
+ export declare function extensionIdSlug(id: string): string;
135
+ /** Render the browser-safe source descriptor returned by the runtime. */
136
+ export declare function extensionManifestSourceLabel(extension: Pick<ExtensionInfo, 'id' | 'version' | 'source'>): string;
137
+ export declare function listExtensions(kind?: string): Promise<ExtensionListResponse>;
138
+ export declare function listExtensionsShared(opts?: {
139
+ force?: boolean;
140
+ }): Promise<ExtensionListResponse>;
@@ -0,0 +1,90 @@
1
+ export async function listSharedCapabilities() {
2
+ const empty = {
3
+ generation: 0,
4
+ loadedAt: 0,
5
+ capabilities: [],
6
+ issues: [],
7
+ };
8
+ const res = await fetch('/api/extensions/capabilities');
9
+ if (!res.ok || !res.headers.get('content-type')?.includes('application/json'))
10
+ return empty;
11
+ return (await res.json());
12
+ }
13
+ export function pickLang(text, lang = 'zh', fallback = '') {
14
+ if (!text)
15
+ return fallback;
16
+ if (typeof text === 'string')
17
+ return text;
18
+ return text[lang] ?? text.zh ?? text.en ?? fallback;
19
+ }
20
+ /**
21
+ * Strip known package scopes from a manifest id → flat marketplace slug.
22
+ * Longer scopes first so `@forgeax-extension/…` is never misread as `@forgeax/…`.
23
+ */
24
+ export function extensionIdSlug(id) {
25
+ return id
26
+ .replace(/^@forgeax-extension\//, '')
27
+ .replace(/^@forgeax\//, '');
28
+ }
29
+ /** Render the browser-safe source descriptor returned by the runtime. */
30
+ export function extensionManifestSourceLabel(extension) {
31
+ if (!extension.source)
32
+ return `extension:${extension.id}@${extension.version}`;
33
+ if (extension.source.origin === 'npm') {
34
+ return `npm:${extension.id}@${extension.version}/forgeax-extension.json`;
35
+ }
36
+ return `${extension.source.origin}:${extension.source.relativeManifestPath}`;
37
+ }
38
+ export async function listExtensions(kind) {
39
+ const url = kind
40
+ ? `/api/extensions/list?kind=${encodeURIComponent(kind)}`
41
+ : '/api/extensions/list';
42
+ const empty = { kind: kind ?? null, count: 0, items: [] };
43
+ const res = await fetch(url);
44
+ // The extension bus is a Studio-only product surface. The
45
+ // standalone editor has NO bus router, so its absence is EXPECTED, not an
46
+ // error — degrade to an empty list either way the "no backend" shows up:
47
+ // - no `--game`: unknown /api routes fall to the SPA fallback → 200 + html
48
+ // - with `--game`: the game-backend answers non-bus routes → 404 + json
49
+ // (Before, only the html case degraded; the 404+json slipped past the !ok
50
+ // guard and threw an Uncaught error in DockShell's boot effect.)
51
+ if (!res.ok)
52
+ return empty;
53
+ if (!res.headers.get('content-type')?.includes('application/json')) {
54
+ return empty;
55
+ }
56
+ const payload = (await res.json());
57
+ if (!Array.isArray(payload.items))
58
+ return empty;
59
+ return {
60
+ kind: typeof payload.kind === 'string' || payload.kind === null ? payload.kind : empty.kind,
61
+ count: typeof payload.count === 'number' ? payload.count : payload.items.length,
62
+ ...(typeof payload.generation === 'number' ? { generation: payload.generation } : {}),
63
+ items: payload.items,
64
+ };
65
+ }
66
+ // Shared short-TTL cache + in-flight dedupe for the full (no-kind) plugin
67
+ // list. Many surfaces (ExtensionHostPanel, activity entries, BuildBadge, …)
68
+ // fetch this concurrently; without dedupe each mount fires its own request and
69
+ // a single slow/failed one can leave that panel stuck. `force` bypasses the
70
+ // TTL (used by pollers that need to observe a manifest that just gained
71
+ // entry.standalone) but still rides any in-flight request.
72
+ let _busAllCache = null;
73
+ let _busAllInflight = null;
74
+ const BUS_ALL_TTL_MS = 2000;
75
+ export async function listExtensionsShared(opts) {
76
+ if (!opts?.force && _busAllCache && Date.now() - _busAllCache.ts < BUS_ALL_TTL_MS) {
77
+ return _busAllCache.data;
78
+ }
79
+ if (_busAllInflight)
80
+ return _busAllInflight;
81
+ _busAllInflight = listExtensions()
82
+ .then((data) => {
83
+ _busAllCache = { ts: Date.now(), data };
84
+ return data;
85
+ })
86
+ .finally(() => {
87
+ _busAllInflight = null;
88
+ });
89
+ return _busAllInflight;
90
+ }
@@ -0,0 +1,54 @@
1
+ /** file-activity-stream — interface side of the per-session file-activity
2
+ * ledger.
3
+ *
4
+ * Subscribes to `onSessionEvent` and consumes two event types emitted by
5
+ * the server's AgentFsRecorder (packages/server/src/fs/agent-fs-recorder.ts):
6
+ *
7
+ * file-activity:start → an agent is about to write a file (lock on)
8
+ * file-activity:done → write completed; ledger has the new record
9
+ *
10
+ * We expose two pieces of derived state:
11
+ *
12
+ * - `useFileLocks(sid)` — Map<absPath, { agentPath, op, since }> of files
13
+ * currently being edited. Drives the 🔒 indicator on AgentsPanel /
14
+ * Page rows.
15
+ * - `useFileActivityVersion(sid)` — monotonically increasing counter that
16
+ * bumps every time a 'done' event arrives. Panels that fetch the
17
+ * ledger via REST (`/api/sessions/:sid/file-activity`) include this
18
+ * version in their useEffect deps to auto-refresh on writes — no
19
+ * polling needed.
20
+ *
21
+ * Events with type `file-activity:*` are routed here exclusively; the
22
+ * session-stream dispatch explicitly skips them (they'd otherwise be
23
+ * rendered as system messages by the fallback path). */
24
+ export interface FileLockSnapshot {
25
+ agentPath: string;
26
+ op: string;
27
+ since: number;
28
+ }
29
+ /** Wired in main.tsx alongside subscribeSessionStream. Idempotent — same
30
+ * handler key, HMR-safe. */
31
+ export declare function subscribeFileActivityStream(): void;
32
+ /** React hook — locks for a given session. Re-renders whenever any
33
+ * file-activity event for that sid arrives. Returns empty Map for unknown
34
+ * / inactive sids. */
35
+ export declare function useFileLocks(sid: string | null): Map<string, FileLockSnapshot>;
36
+ /** React hook — bumps every time a file-activity:done lands for `sid`.
37
+ * Plug into useEffect deps to revalidate ledger fetches without polling. */
38
+ export declare function useFileActivityVersion(sid: string | null): number;
39
+ /** Evict a session's accumulated lock/version state. The module-level `_state`
40
+ * Map grows one entry per session that ever emits a file-activity event and was
41
+ * NEVER pruned, so every closed session permanently retained its entry (mem leak
42
+ * case-10 — symmetric to store.ts closeSession evicting liveAgents /
43
+ * agentFileActivity). closeSession calls this so closed sessions don't linger. */
44
+ export declare function dropFileActivitySession(sid: string): void;
45
+ /** Test / debug helper — clears all in-memory state. */
46
+ export declare function _resetFileActivityStreamForTesting(): void;
47
+ /** Test / debug — number of sessions currently retained in `_state`. The
48
+ * module-private Map is unreachable from the store DEV bridge, so the leak repro
49
+ * reads it through this seam. */
50
+ export declare function _fileActivityStreamSessionCount(): number;
51
+ /** Test / debug — seed a session's `_state` entry with `locks` open file locks,
52
+ * exactly the way a live `file-activity:start` event would (getOrInit + locks.set).
53
+ * Lets the deterministic repro exercise the close-session leak without a live WS. */
54
+ export declare function _seedFileActivityForTest(sid: string, locks: number): void;
@@ -0,0 +1,123 @@
1
+ /** file-activity-stream — interface side of the per-session file-activity
2
+ * ledger.
3
+ *
4
+ * Subscribes to `onSessionEvent` and consumes two event types emitted by
5
+ * the server's AgentFsRecorder (packages/server/src/fs/agent-fs-recorder.ts):
6
+ *
7
+ * file-activity:start → an agent is about to write a file (lock on)
8
+ * file-activity:done → write completed; ledger has the new record
9
+ *
10
+ * We expose two pieces of derived state:
11
+ *
12
+ * - `useFileLocks(sid)` — Map<absPath, { agentPath, op, since }> of files
13
+ * currently being edited. Drives the 🔒 indicator on AgentsPanel /
14
+ * Page rows.
15
+ * - `useFileActivityVersion(sid)` — monotonically increasing counter that
16
+ * bumps every time a 'done' event arrives. Panels that fetch the
17
+ * ledger via REST (`/api/sessions/:sid/file-activity`) include this
18
+ * version in their useEffect deps to auto-refresh on writes — no
19
+ * polling needed.
20
+ *
21
+ * Events with type `file-activity:*` are routed here exclusively; the
22
+ * session-stream dispatch explicitly skips them (they'd otherwise be
23
+ * rendered as system messages by the fallback path). */
24
+ import { useEffect, useState, useSyncExternalStore } from 'react';
25
+ import { getSessionClient } from '../store-parts/session-client';
26
+ const _state = new Map();
27
+ const _listeners = new Set();
28
+ function getOrInit(sid) {
29
+ let s = _state.get(sid);
30
+ if (!s) {
31
+ s = { locks: new Map(), version: 0 };
32
+ _state.set(sid, s);
33
+ }
34
+ return s;
35
+ }
36
+ function notify() {
37
+ for (const l of _listeners)
38
+ l();
39
+ }
40
+ function dispatchFileActivity(evt) {
41
+ const t = evt.event.type;
42
+ if (t !== 'file-activity:start' && t !== 'file-activity:done')
43
+ return;
44
+ const sid = evt.sid;
45
+ const p = evt.event.payload;
46
+ if (typeof p.path !== 'string' || typeof p.agentPath !== 'string')
47
+ return;
48
+ const state = getOrInit(sid);
49
+ if (t === 'file-activity:start') {
50
+ state.locks.set(p.path, {
51
+ agentPath: p.agentPath,
52
+ op: p.op ?? 'write',
53
+ since: p.ts ?? Date.now(),
54
+ });
55
+ }
56
+ else {
57
+ state.locks.delete(p.path);
58
+ state.version += 1;
59
+ }
60
+ notify();
61
+ }
62
+ /** Wired in main.tsx alongside subscribeSessionStream. Idempotent — same
63
+ * handler key, HMR-safe. */
64
+ export function subscribeFileActivityStream() {
65
+ getSessionClient().onSessionEvent('file-activity', dispatchFileActivity);
66
+ }
67
+ function subscribe(cb) {
68
+ _listeners.add(cb);
69
+ return () => { _listeners.delete(cb); };
70
+ }
71
+ /** React hook — locks for a given session. Re-renders whenever any
72
+ * file-activity event for that sid arrives. Returns empty Map for unknown
73
+ * / inactive sids. */
74
+ export function useFileLocks(sid) {
75
+ const snapshot = useSyncExternalStore(subscribe, () => (sid ? _state.get(sid)?.locks ?? _emptyLocks : _emptyLocks), () => _emptyLocks);
76
+ return snapshot;
77
+ }
78
+ const _emptyLocks = new Map();
79
+ /** React hook — bumps every time a file-activity:done lands for `sid`.
80
+ * Plug into useEffect deps to revalidate ledger fetches without polling. */
81
+ export function useFileActivityVersion(sid) {
82
+ const [v, setV] = useState(0);
83
+ useEffect(() => {
84
+ if (!sid)
85
+ return;
86
+ return subscribe(() => {
87
+ const next = _state.get(sid)?.version ?? 0;
88
+ setV(next);
89
+ });
90
+ }, [sid]);
91
+ return v;
92
+ }
93
+ /** Evict a session's accumulated lock/version state. The module-level `_state`
94
+ * Map grows one entry per session that ever emits a file-activity event and was
95
+ * NEVER pruned, so every closed session permanently retained its entry (mem leak
96
+ * case-10 — symmetric to store.ts closeSession evicting liveAgents /
97
+ * agentFileActivity). closeSession calls this so closed sessions don't linger. */
98
+ export function dropFileActivitySession(sid) {
99
+ if (_state.delete(sid))
100
+ notify();
101
+ }
102
+ /** Test / debug helper — clears all in-memory state. */
103
+ export function _resetFileActivityStreamForTesting() {
104
+ _state.clear();
105
+ notify();
106
+ }
107
+ /** Test / debug — number of sessions currently retained in `_state`. The
108
+ * module-private Map is unreachable from the store DEV bridge, so the leak repro
109
+ * reads it through this seam. */
110
+ export function _fileActivityStreamSessionCount() {
111
+ return _state.size;
112
+ }
113
+ /** Test / debug — seed a session's `_state` entry with `locks` open file locks,
114
+ * exactly the way a live `file-activity:start` event would (getOrInit + locks.set).
115
+ * Lets the deterministic repro exercise the close-session leak without a live WS. */
116
+ export function _seedFileActivityForTest(sid, locks) {
117
+ const st = getOrInit(sid);
118
+ for (let i = 0; i < locks; i++) {
119
+ st.locks.set('seed/' + sid + '/' + i + '.ts', { agentPath: 'agents/forge', op: 'edit', since: 0 });
120
+ }
121
+ st.version += 1;
122
+ notify();
123
+ }
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Shared file-family taxonomy used by the interface file tree and chat assets.
3
+ *
4
+ * Keep this module free of React and CSS imports. The family key is the
5
+ * contract; visual consumers map it to `--fx-family-*` tokens.
6
+ */
7
+ export type FileFamily = 'code' | 'config' | 'doc' | 'scene' | 'pack' | 'meta' | 'image' | 'audio' | 'model' | 'data';
8
+ export interface FileFamilyDefinition {
9
+ readonly key: FileFamily;
10
+ readonly label: string;
11
+ readonly extensions: readonly string[];
12
+ }
13
+ export declare const FAMILY_ORDER: readonly FileFamilyDefinition[];
14
+ /** Classify a file path by its final extension. Unknown files are `data`. */
15
+ export declare function familyOf(path: string): FileFamily;