@elizaos/ui 2.0.0-alpha.85 → 2.0.0-beta.2

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 (1995) hide show
  1. package/App.d.ts +6 -0
  2. package/App.d.ts.map +1 -0
  3. package/App.js +593 -0
  4. package/api/agent-client-type-shim.d.ts +106 -0
  5. package/api/agent-client-type-shim.d.ts.map +1 -0
  6. package/api/agent-client-type-shim.js +1 -0
  7. package/api/android-native-agent-transport.d.ts +21 -0
  8. package/api/android-native-agent-transport.d.ts.map +1 -0
  9. package/api/android-native-agent-transport.js +113 -0
  10. package/api/auth/sessions.d.ts +4 -0
  11. package/api/auth/sessions.d.ts.map +1 -0
  12. package/api/auth/sessions.js +5 -0
  13. package/api/auth-client.d.ts +130 -0
  14. package/api/auth-client.d.ts.map +1 -0
  15. package/api/auth-client.js +286 -0
  16. package/api/client-agent.d.ts +730 -0
  17. package/api/client-agent.d.ts.map +1 -0
  18. package/api/client-agent.js +1669 -0
  19. package/api/client-automations.d.ts +8 -0
  20. package/api/client-automations.d.ts.map +1 -0
  21. package/api/client-automations.js +7 -0
  22. package/api/client-base.d.ts +89 -0
  23. package/api/client-base.d.ts.map +1 -0
  24. package/api/client-base.js +827 -0
  25. package/api/client-browser-workspace.d.ts +25 -0
  26. package/api/client-browser-workspace.d.ts.map +1 -0
  27. package/api/client-browser-workspace.js +98 -0
  28. package/api/client-chat.d.ts +389 -0
  29. package/api/client-chat.d.ts.map +1 -0
  30. package/api/client-chat.js +601 -0
  31. package/api/client-cloud.d.ts +292 -0
  32. package/api/client-cloud.d.ts.map +1 -0
  33. package/api/client-cloud.js +1395 -0
  34. package/api/client-computeruse.d.ts +32 -0
  35. package/api/client-computeruse.d.ts.map +1 -0
  36. package/api/client-computeruse.js +16 -0
  37. package/api/client-imessage.d.ts +68 -0
  38. package/api/client-imessage.d.ts.map +1 -0
  39. package/api/client-imessage.js +74 -0
  40. package/api/client-local-inference.d.ts +62 -0
  41. package/api/client-local-inference.d.ts.map +1 -0
  42. package/api/client-local-inference.js +87 -0
  43. package/api/client-skills.d.ts +475 -0
  44. package/api/client-skills.d.ts.map +1 -0
  45. package/api/client-skills.js +608 -0
  46. package/api/client-types-babylon.d.ts +254 -0
  47. package/api/client-types-babylon.d.ts.map +1 -0
  48. package/api/client-types-babylon.js +2 -0
  49. package/api/client-types-character.d.ts +39 -0
  50. package/api/client-types-character.d.ts.map +1 -0
  51. package/api/client-types-character.js +1 -0
  52. package/api/client-types-chat.d.ts +562 -0
  53. package/api/client-types-chat.d.ts.map +1 -0
  54. package/api/client-types-chat.js +17 -0
  55. package/api/client-types-cloud.d.ts +941 -0
  56. package/api/client-types-cloud.d.ts.map +1 -0
  57. package/api/client-types-cloud.js +57 -0
  58. package/api/client-types-config.d.ts +613 -0
  59. package/api/client-types-config.d.ts.map +1 -0
  60. package/api/client-types-config.js +5 -0
  61. package/api/client-types-core.d.ts +438 -0
  62. package/api/client-types-core.d.ts.map +1 -0
  63. package/api/client-types-core.js +31 -0
  64. package/api/client-types-experience.d.ts +97 -0
  65. package/api/client-types-experience.d.ts.map +1 -0
  66. package/api/client-types-experience.js +1 -0
  67. package/api/client-types-relationships.d.ts +181 -0
  68. package/api/client-types-relationships.d.ts.map +1 -0
  69. package/api/client-types-relationships.js +1 -0
  70. package/api/client-types-steward.d.ts +85 -0
  71. package/api/client-types-steward.d.ts.map +1 -0
  72. package/api/client-types-steward.js +9 -0
  73. package/api/client-types.d.ts +9 -0
  74. package/api/client-types.d.ts.map +1 -0
  75. package/api/client-types.js +12 -0
  76. package/api/client-vault.d.ts +53 -0
  77. package/api/client-vault.d.ts.map +1 -0
  78. package/api/client-vault.js +48 -0
  79. package/api/client-wallet.d.ts +130 -0
  80. package/api/client-wallet.d.ts.map +1 -0
  81. package/api/client-wallet.js +228 -0
  82. package/api/client-workflow.d.ts +26 -0
  83. package/api/client-workflow.d.ts.map +1 -0
  84. package/api/client-workflow.js +70 -0
  85. package/api/client.d.ts +39 -0
  86. package/api/client.d.ts.map +1 -0
  87. package/api/client.js +37 -0
  88. package/api/csrf-client.d.ts +21 -0
  89. package/api/csrf-client.d.ts.map +1 -0
  90. package/api/csrf-client.js +70 -0
  91. package/api/desktop-http-transport.d.ts +3 -0
  92. package/api/desktop-http-transport.d.ts.map +1 -0
  93. package/api/desktop-http-transport.js +72 -0
  94. package/api/index.d.ts +2 -0
  95. package/api/index.d.ts.map +1 -0
  96. package/api/index.js +1 -0
  97. package/api/ios-local-agent-kernel.d.ts +4 -0
  98. package/api/ios-local-agent-kernel.d.ts.map +1 -0
  99. package/api/ios-local-agent-kernel.js +2108 -0
  100. package/api/ios-local-agent-transport.d.ts +5 -0
  101. package/api/ios-local-agent-transport.d.ts.map +1 -0
  102. package/api/ios-local-agent-transport.js +28 -0
  103. package/api/ittp-agent-transport.d.ts +14 -0
  104. package/api/ittp-agent-transport.d.ts.map +1 -0
  105. package/api/ittp-agent-transport.js +15 -0
  106. package/api/native-cloud-http-transport.d.ts +3 -0
  107. package/api/native-cloud-http-transport.d.ts.map +1 -0
  108. package/api/native-cloud-http-transport.js +75 -0
  109. package/api/request-timeout.d.ts +2 -0
  110. package/api/request-timeout.d.ts.map +1 -0
  111. package/api/request-timeout.js +22 -0
  112. package/api/response.d.ts +12 -0
  113. package/api/response.d.ts.map +1 -0
  114. package/api/response.js +36 -0
  115. package/api/runtime-mode-client.d.ts +23 -0
  116. package/api/runtime-mode-client.d.ts.map +1 -0
  117. package/api/runtime-mode-client.js +54 -0
  118. package/api/transport.d.ts +7 -0
  119. package/api/transport.d.ts.map +1 -0
  120. package/api/transport.js +5 -0
  121. package/app-shell-components.d.ts +50 -0
  122. package/app-shell-components.d.ts.map +1 -0
  123. package/app-shell-components.js +48 -0
  124. package/app-shell-registry.d.ts +29 -0
  125. package/app-shell-registry.d.ts.map +1 -0
  126. package/app-shell-registry.js +21 -0
  127. package/bridge/capacitor-bridge.d.ts +153 -0
  128. package/bridge/capacitor-bridge.d.ts.map +1 -0
  129. package/bridge/capacitor-bridge.js +195 -0
  130. package/bridge/electrobun-rpc.d.ts +85 -0
  131. package/bridge/electrobun-rpc.d.ts.map +1 -0
  132. package/bridge/electrobun-rpc.js +114 -0
  133. package/bridge/electrobun-runtime.d.ts +3 -0
  134. package/bridge/electrobun-runtime.d.ts.map +1 -0
  135. package/bridge/electrobun-runtime.js +45 -0
  136. package/bridge/gateway-discovery.d.ts +17 -0
  137. package/bridge/gateway-discovery.d.ts.map +1 -0
  138. package/bridge/gateway-discovery.js +49 -0
  139. package/bridge/index.d.ts +7 -0
  140. package/bridge/index.d.ts.map +1 -0
  141. package/bridge/index.js +6 -0
  142. package/bridge/native-plugins.d.ts +504 -0
  143. package/bridge/native-plugins.d.ts.map +1 -0
  144. package/bridge/native-plugins.js +67 -0
  145. package/bridge/plugin-bridge.d.ts +133 -0
  146. package/bridge/plugin-bridge.d.ts.map +1 -0
  147. package/bridge/plugin-bridge.js +241 -0
  148. package/bridge/storage-bridge.d.ts +39 -0
  149. package/bridge/storage-bridge.d.ts.map +1 -0
  150. package/bridge/storage-bridge.js +142 -0
  151. package/browser.d.ts +72 -0
  152. package/browser.d.ts.map +1 -0
  153. package/browser.js +68 -0
  154. package/build-variant.d.ts +16 -0
  155. package/build-variant.d.ts.map +1 -0
  156. package/build-variant.js +31 -0
  157. package/character/character-draft-helpers.d.ts +35 -0
  158. package/character/character-draft-helpers.d.ts.map +1 -0
  159. package/character/character-draft-helpers.js +270 -0
  160. package/character-catalog.d.ts +7 -0
  161. package/character-catalog.d.ts.map +1 -0
  162. package/character-catalog.js +29 -0
  163. package/chat/coding-agent-session-state.d.ts +16 -0
  164. package/chat/coding-agent-session-state.d.ts.map +1 -0
  165. package/chat/coding-agent-session-state.js +27 -0
  166. package/chat/index.d.ts +65 -0
  167. package/chat/index.d.ts.map +1 -0
  168. package/chat/index.js +225 -0
  169. package/components/accounts/AccountCard.d.ts +30 -0
  170. package/components/accounts/AccountCard.d.ts.map +1 -0
  171. package/components/accounts/AccountCard.js +159 -0
  172. package/components/accounts/AccountList.d.ts +15 -0
  173. package/components/accounts/AccountList.d.ts.map +1 -0
  174. package/components/accounts/AccountList.js +75 -0
  175. package/components/accounts/AddAccountDialog.d.ts +33 -0
  176. package/components/accounts/AddAccountDialog.d.ts.map +1 -0
  177. package/components/accounts/AddAccountDialog.js +396 -0
  178. package/components/accounts/EditableAccountLabel.d.ts +11 -0
  179. package/components/accounts/EditableAccountLabel.d.ts.map +1 -0
  180. package/components/accounts/EditableAccountLabel.js +45 -0
  181. package/components/accounts/RotationStrategyPicker.d.ts +16 -0
  182. package/components/accounts/RotationStrategyPicker.d.ts.map +1 -0
  183. package/components/accounts/RotationStrategyPicker.js +45 -0
  184. package/components/apps/AppsCatalogGrid.d.ts +14 -0
  185. package/components/apps/AppsCatalogGrid.d.ts.map +1 -0
  186. package/components/apps/AppsCatalogGrid.js +208 -0
  187. package/components/apps/AppsSidebar.d.ts +22 -0
  188. package/components/apps/AppsSidebar.d.ts.map +1 -0
  189. package/components/apps/AppsSidebar.js +98 -0
  190. package/components/apps/GameView.d.ts +18 -0
  191. package/components/apps/GameView.d.ts.map +1 -0
  192. package/components/apps/GameView.js +1133 -0
  193. package/components/apps/GameViewOverlay.d.ts +2 -0
  194. package/components/apps/GameViewOverlay.d.ts.map +1 -0
  195. package/components/apps/GameViewOverlay.js +120 -0
  196. package/components/apps/RunningAppsRow.d.ts +12 -0
  197. package/components/apps/RunningAppsRow.d.ts.map +1 -0
  198. package/components/apps/RunningAppsRow.js +35 -0
  199. package/components/apps/app-identity.d.ts +32 -0
  200. package/components/apps/app-identity.d.ts.map +1 -0
  201. package/components/apps/app-identity.js +182 -0
  202. package/components/apps/apps-cache.d.ts +5 -0
  203. package/components/apps/apps-cache.d.ts.map +1 -0
  204. package/components/apps/apps-cache.js +47 -0
  205. package/components/apps/catalog-loader.d.ts +7 -0
  206. package/components/apps/catalog-loader.d.ts.map +1 -0
  207. package/components/apps/catalog-loader.js +47 -0
  208. package/components/apps/extensions/registry.d.ts +12 -0
  209. package/components/apps/extensions/registry.d.ts.map +1 -0
  210. package/components/apps/extensions/registry.js +23 -0
  211. package/components/apps/extensions/surface.d.ts +34 -0
  212. package/components/apps/extensions/surface.d.ts.map +1 -0
  213. package/components/apps/extensions/surface.js +96 -0
  214. package/components/apps/extensions/types.d.ts +7 -0
  215. package/components/apps/extensions/types.d.ts.map +1 -0
  216. package/components/apps/extensions/types.js +1 -0
  217. package/components/apps/helpers.d.ts +58 -0
  218. package/components/apps/helpers.d.ts.map +1 -0
  219. package/components/apps/helpers.js +379 -0
  220. package/components/apps/internal-tool-apps.d.ts +18 -0
  221. package/components/apps/internal-tool-apps.d.ts.map +1 -0
  222. package/components/apps/internal-tool-apps.js +173 -0
  223. package/components/apps/launch-history.d.ts +16 -0
  224. package/components/apps/launch-history.d.ts.map +1 -0
  225. package/components/apps/launch-history.js +77 -0
  226. package/components/apps/load-apps-catalog.d.ts +13 -0
  227. package/components/apps/load-apps-catalog.d.ts.map +1 -0
  228. package/components/apps/load-apps-catalog.js +67 -0
  229. package/components/apps/overlay-app-api.d.ts +67 -0
  230. package/components/apps/overlay-app-api.d.ts.map +1 -0
  231. package/components/apps/overlay-app-api.js +8 -0
  232. package/components/apps/overlay-app-registry.d.ts +55 -0
  233. package/components/apps/overlay-app-registry.d.ts.map +1 -0
  234. package/components/apps/overlay-app-registry.js +108 -0
  235. package/components/apps/per-app-config.d.ts +19 -0
  236. package/components/apps/per-app-config.d.ts.map +1 -0
  237. package/components/apps/per-app-config.js +99 -0
  238. package/components/apps/run-attention.d.ts +3 -0
  239. package/components/apps/run-attention.d.ts.map +1 -0
  240. package/components/apps/run-attention.js +77 -0
  241. package/components/apps/surfaces/GameOperatorShell.d.ts +47 -0
  242. package/components/apps/surfaces/GameOperatorShell.d.ts.map +1 -0
  243. package/components/apps/surfaces/GameOperatorShell.js +42 -0
  244. package/components/apps/surfaces/registry.d.ts +11 -0
  245. package/components/apps/surfaces/registry.d.ts.map +1 -0
  246. package/components/apps/surfaces/registry.js +23 -0
  247. package/components/apps/surfaces/types.d.ts +10 -0
  248. package/components/apps/surfaces/types.d.ts.map +1 -0
  249. package/components/apps/surfaces/types.js +1 -0
  250. package/components/apps/useRegistryCatalog.d.ts +14 -0
  251. package/components/apps/useRegistryCatalog.d.ts.map +1 -0
  252. package/components/apps/useRegistryCatalog.js +52 -0
  253. package/components/apps/viewer-auth.d.ts +7 -0
  254. package/components/apps/viewer-auth.d.ts.map +1 -0
  255. package/components/apps/viewer-auth.js +55 -0
  256. package/components/auth/LoginView.d.ts +17 -0
  257. package/components/auth/LoginView.d.ts.map +1 -0
  258. package/components/auth/LoginView.js +62 -0
  259. package/components/character/CharacterEditor.d.ts +12 -0
  260. package/components/character/CharacterEditor.d.ts.map +1 -0
  261. package/components/character/CharacterEditor.js +885 -0
  262. package/components/character/CharacterEditorPanels.d.ts +35 -0
  263. package/components/character/CharacterEditorPanels.d.ts.map +1 -0
  264. package/components/character/CharacterEditorPanels.js +250 -0
  265. package/components/character/CharacterExperienceWorkspace.d.ts +11 -0
  266. package/components/character/CharacterExperienceWorkspace.d.ts.map +1 -0
  267. package/components/character/CharacterExperienceWorkspace.js +453 -0
  268. package/components/character/CharacterHubView.d.ts +22 -0
  269. package/components/character/CharacterHubView.d.ts.map +1 -0
  270. package/components/character/CharacterHubView.js +695 -0
  271. package/components/character/CharacterLearnedSkillsSection.d.ts +2 -0
  272. package/components/character/CharacterLearnedSkillsSection.d.ts.map +1 -0
  273. package/components/character/CharacterLearnedSkillsSection.js +76 -0
  274. package/components/character/CharacterOverviewSection.d.ts +27 -0
  275. package/components/character/CharacterOverviewSection.d.ts.map +1 -0
  276. package/components/character/CharacterOverviewSection.js +36 -0
  277. package/components/character/CharacterPersonalityTimeline.d.ts +5 -0
  278. package/components/character/CharacterPersonalityTimeline.d.ts.map +1 -0
  279. package/components/character/CharacterPersonalityTimeline.js +33 -0
  280. package/components/character/CharacterRelationshipsSection.d.ts +7 -0
  281. package/components/character/CharacterRelationshipsSection.d.ts.map +1 -0
  282. package/components/character/CharacterRelationshipsSection.js +4 -0
  283. package/components/character/CharacterRoster.d.ts +32 -0
  284. package/components/character/CharacterRoster.d.ts.map +1 -0
  285. package/components/character/CharacterRoster.js +111 -0
  286. package/components/character/MusicLibraryCharacterWidget.d.ts +3 -0
  287. package/components/character/MusicLibraryCharacterWidget.d.ts.map +1 -0
  288. package/components/character/MusicLibraryCharacterWidget.js +27 -0
  289. package/components/character/character-editor-helpers.d.ts +42 -0
  290. package/components/character/character-editor-helpers.d.ts.map +1 -0
  291. package/components/character/character-editor-helpers.js +58 -0
  292. package/components/character/character-greeting.d.ts +5 -0
  293. package/components/character/character-greeting.d.ts.map +1 -0
  294. package/components/character/character-greeting.js +22 -0
  295. package/components/character/character-hub-helpers.d.ts +14 -0
  296. package/components/character/character-hub-helpers.d.ts.map +1 -0
  297. package/components/character/character-hub-helpers.js +140 -0
  298. package/components/character/character-hub-types.d.ts +60 -0
  299. package/components/character/character-hub-types.d.ts.map +1 -0
  300. package/components/character/character-hub-types.js +1 -0
  301. package/components/character/character-voice-config.d.ts +33 -0
  302. package/components/character/character-voice-config.d.ts.map +1 -0
  303. package/components/character/character-voice-config.js +95 -0
  304. package/components/chat/AccountRequiredCard.d.ts +19 -0
  305. package/components/chat/AccountRequiredCard.d.ts.map +1 -0
  306. package/components/chat/AccountRequiredCard.js +35 -0
  307. package/components/chat/AgentActivityBox.d.ts +8 -0
  308. package/components/chat/AgentActivityBox.d.ts.map +1 -0
  309. package/components/chat/AgentActivityBox.js +33 -0
  310. package/components/chat/AppsSection.d.ts +13 -0
  311. package/components/chat/AppsSection.d.ts.map +1 -0
  312. package/components/chat/AppsSection.js +198 -0
  313. package/components/chat/ConnectorAccountPicker.d.ts +16 -0
  314. package/components/chat/ConnectorAccountPicker.d.ts.map +1 -0
  315. package/components/chat/ConnectorAccountPicker.js +65 -0
  316. package/components/chat/MessageContent.d.ts +42 -0
  317. package/components/chat/MessageContent.d.ts.map +1 -0
  318. package/components/chat/MessageContent.js +831 -0
  319. package/components/chat/SaveCommandModal.d.ts +9 -0
  320. package/components/chat/SaveCommandModal.d.ts.map +1 -0
  321. package/components/chat/SaveCommandModal.js +59 -0
  322. package/components/chat/TasksEventsPanel.d.ts +30 -0
  323. package/components/chat/TasksEventsPanel.d.ts.map +1 -0
  324. package/components/chat/TasksEventsPanel.js +139 -0
  325. package/components/chat/WidgetVisibilityPanel.d.ts +25 -0
  326. package/components/chat/WidgetVisibilityPanel.d.ts.map +1 -0
  327. package/components/chat/WidgetVisibilityPanel.js +30 -0
  328. package/components/chat/chat-source-registration.d.ts +1 -0
  329. package/components/chat/chat-source-registration.d.ts.map +1 -0
  330. package/components/chat/chat-source-registration.js +1 -0
  331. package/components/chat/connector-send-as.d.ts +40 -0
  332. package/components/chat/connector-send-as.d.ts.map +1 -0
  333. package/components/chat/connector-send-as.js +95 -0
  334. package/components/chat/message-choice-parser.d.ts +20 -0
  335. package/components/chat/message-choice-parser.d.ts.map +1 -0
  336. package/components/chat/message-choice-parser.js +53 -0
  337. package/components/chat/widgets/ChoiceWidget.d.ts +24 -0
  338. package/components/chat/widgets/ChoiceWidget.d.ts.map +1 -0
  339. package/components/chat/widgets/ChoiceWidget.js +38 -0
  340. package/components/chat/widgets/agent-orchestrator.d.ts +20 -0
  341. package/components/chat/widgets/agent-orchestrator.d.ts.map +1 -0
  342. package/components/chat/widgets/agent-orchestrator.js +273 -0
  343. package/components/chat/widgets/browser-status.d.ts +14 -0
  344. package/components/chat/widgets/browser-status.d.ts.map +1 -0
  345. package/components/chat/widgets/browser-status.js +109 -0
  346. package/components/chat/widgets/music-player.d.ts +4 -0
  347. package/components/chat/widgets/music-player.d.ts.map +1 -0
  348. package/components/chat/widgets/music-player.js +133 -0
  349. package/components/chat/widgets/registry.d.ts +8 -0
  350. package/components/chat/widgets/registry.d.ts.map +1 -0
  351. package/components/chat/widgets/registry.js +7 -0
  352. package/components/chat/widgets/shared.d.ts +17 -0
  353. package/components/chat/widgets/shared.d.ts.map +1 -0
  354. package/components/chat/widgets/shared.js +8 -0
  355. package/components/chat/widgets/todo.d.ts +3 -0
  356. package/components/chat/widgets/todo.d.ts.map +1 -0
  357. package/components/chat/widgets/todo.js +109 -0
  358. package/components/chat/widgets/types.d.ts +16 -0
  359. package/components/chat/widgets/types.d.ts.map +1 -0
  360. package/components/chat/widgets/types.js +1 -0
  361. package/components/cloud/CloudSourceControls.d.ts +13 -0
  362. package/components/cloud/CloudSourceControls.d.ts.map +1 -0
  363. package/components/cloud/CloudSourceControls.js +19 -0
  364. package/components/cloud/CloudStatusBadge.d.ts +33 -0
  365. package/components/cloud/CloudStatusBadge.d.ts.map +1 -0
  366. package/components/cloud/CloudStatusBadge.js +98 -0
  367. package/components/cloud/FlaminaGuide.d.ts +10 -0
  368. package/components/cloud/FlaminaGuide.d.ts.map +1 -0
  369. package/components/cloud/FlaminaGuide.js +86 -0
  370. package/components/cloud/StripeEmbeddedCheckout.d.ts +24 -0
  371. package/components/cloud/StripeEmbeddedCheckout.d.ts.map +1 -0
  372. package/components/cloud/StripeEmbeddedCheckout.js +101 -0
  373. package/components/companion/injected.d.ts +9 -0
  374. package/components/companion/injected.d.ts.map +1 -0
  375. package/components/companion/injected.js +22 -0
  376. package/components/composites/chat/chat-attachment-strip.d.ts +9 -0
  377. package/components/composites/chat/chat-attachment-strip.d.ts.map +1 -0
  378. package/components/composites/chat/chat-attachment-strip.js +8 -0
  379. package/components/composites/chat/chat-bubble.d.ts +14 -0
  380. package/components/composites/chat/chat-bubble.d.ts.map +1 -0
  381. package/components/composites/chat/chat-bubble.js +7 -0
  382. package/components/composites/chat/chat-composer-shell.d.ts +14 -0
  383. package/components/composites/chat/chat-composer-shell.d.ts.map +1 -0
  384. package/components/composites/chat/chat-composer-shell.js +25 -0
  385. package/components/composites/chat/chat-composer.d.ts +45 -0
  386. package/components/composites/chat/chat-composer.d.ts.map +1 -0
  387. package/components/composites/chat/chat-composer.js +297 -0
  388. package/components/composites/chat/chat-conversation-item.d.ts +21 -0
  389. package/components/composites/chat/chat-conversation-item.d.ts.map +1 -0
  390. package/components/composites/chat/chat-conversation-item.js +118 -0
  391. package/components/composites/chat/chat-conversation-rename-dialog.d.ts +22 -0
  392. package/components/composites/chat/chat-conversation-rename-dialog.d.ts.map +1 -0
  393. package/components/composites/chat/chat-conversation-rename-dialog.js +14 -0
  394. package/components/composites/chat/chat-empty-state.d.ts +19 -0
  395. package/components/composites/chat/chat-empty-state.d.ts.map +1 -0
  396. package/components/composites/chat/chat-empty-state.js +8 -0
  397. package/components/composites/chat/chat-message-actions.d.ts +14 -0
  398. package/components/composites/chat/chat-message-actions.d.ts.map +1 -0
  399. package/components/composites/chat/chat-message-actions.js +10 -0
  400. package/components/composites/chat/chat-message.d.ts +18 -0
  401. package/components/composites/chat/chat-message.d.ts.map +1 -0
  402. package/components/composites/chat/chat-message.js +267 -0
  403. package/components/composites/chat/chat-sidebar.d.ts +54 -0
  404. package/components/composites/chat/chat-sidebar.d.ts.map +1 -0
  405. package/components/composites/chat/chat-sidebar.js +64 -0
  406. package/components/composites/chat/chat-source.d.ts +23 -0
  407. package/components/composites/chat/chat-source.d.ts.map +1 -0
  408. package/components/composites/chat/chat-source.js +60 -0
  409. package/components/composites/chat/chat-thread-layout.d.ts +22 -0
  410. package/components/composites/chat/chat-thread-layout.d.ts.map +1 -0
  411. package/components/composites/chat/chat-thread-layout.js +37 -0
  412. package/components/composites/chat/chat-transcript.d.ts +19 -0
  413. package/components/composites/chat/chat-transcript.d.ts.map +1 -0
  414. package/components/composites/chat/chat-transcript.js +88 -0
  415. package/components/composites/chat/chat-types.d.ts +91 -0
  416. package/components/composites/chat/chat-types.d.ts.map +1 -0
  417. package/components/composites/chat/chat-types.js +1 -0
  418. package/components/composites/chat/chat-typing-indicator.d.ts +10 -0
  419. package/components/composites/chat/chat-typing-indicator.d.ts.map +1 -0
  420. package/components/composites/chat/chat-typing-indicator.js +10 -0
  421. package/components/composites/chat/create-task-popover.d.ts +13 -0
  422. package/components/composites/chat/create-task-popover.d.ts.map +1 -0
  423. package/components/composites/chat/create-task-popover.js +44 -0
  424. package/components/composites/chat/index.d.ts +18 -0
  425. package/components/composites/chat/index.d.ts.map +1 -0
  426. package/components/composites/chat/index.js +17 -0
  427. package/components/composites/chat/permission-card.d.ts +92 -0
  428. package/components/composites/chat/permission-card.d.ts.map +1 -0
  429. package/components/composites/chat/permission-card.js +254 -0
  430. package/components/composites/form-field/form-field.d.ts +14 -0
  431. package/components/composites/form-field/form-field.d.ts.map +1 -0
  432. package/components/composites/form-field/form-field.js +8 -0
  433. package/components/composites/form-field/index.d.ts +2 -0
  434. package/components/composites/form-field/index.d.ts.map +1 -0
  435. package/components/composites/form-field/index.js +1 -0
  436. package/components/composites/index.d.ts +26 -0
  437. package/components/composites/index.d.ts.map +1 -0
  438. package/components/composites/index.js +25 -0
  439. package/components/composites/page-panel/index.d.ts +29 -0
  440. package/components/composites/page-panel/index.d.ts.map +1 -0
  441. package/components/composites/page-panel/index.js +28 -0
  442. package/components/composites/page-panel/page-panel-collapsible-section.d.ts +4 -0
  443. package/components/composites/page-panel/page-panel-collapsible-section.d.ts.map +1 -0
  444. package/components/composites/page-panel/page-panel-collapsible-section.js +60 -0
  445. package/components/composites/page-panel/page-panel-empty.d.ts +3 -0
  446. package/components/composites/page-panel/page-panel-empty.d.ts.map +1 -0
  447. package/components/composites/page-panel/page-panel-empty.js +15 -0
  448. package/components/composites/page-panel/page-panel-frame.d.ts +5 -0
  449. package/components/composites/page-panel/page-panel-frame.d.ts.map +1 -0
  450. package/components/composites/page-panel/page-panel-frame.js +9 -0
  451. package/components/composites/page-panel/page-panel-header.d.ts +7 -0
  452. package/components/composites/page-panel/page-panel-header.d.ts.map +1 -0
  453. package/components/composites/page-panel/page-panel-header.js +30 -0
  454. package/components/composites/page-panel/page-panel-loading.d.ts +3 -0
  455. package/components/composites/page-panel/page-panel-loading.d.ts.map +1 -0
  456. package/components/composites/page-panel/page-panel-loading.js +13 -0
  457. package/components/composites/page-panel/page-panel-root.d.ts +7 -0
  458. package/components/composites/page-panel/page-panel-root.d.ts.map +1 -0
  459. package/components/composites/page-panel/page-panel-root.js +17 -0
  460. package/components/composites/page-panel/page-panel-toolbar.d.ts +4 -0
  461. package/components/composites/page-panel/page-panel-toolbar.d.ts.map +1 -0
  462. package/components/composites/page-panel/page-panel-toolbar.js +6 -0
  463. package/components/composites/page-panel/page-panel-types.d.ts +66 -0
  464. package/components/composites/page-panel/page-panel-types.d.ts.map +1 -0
  465. package/components/composites/page-panel/page-panel-types.js +1 -0
  466. package/components/composites/search/index.d.ts +3 -0
  467. package/components/composites/search/index.d.ts.map +1 -0
  468. package/components/composites/search/index.js +2 -0
  469. package/components/composites/search/search-input.d.ts.map +1 -0
  470. package/components/{ui → composites/search}/search-input.js +3 -2
  471. package/components/{ui/search-bar.d.ts → composites/search/searchbar.d.ts} +8 -7
  472. package/components/composites/search/searchbar.d.ts.map +1 -0
  473. package/components/composites/search/searchbar.js +25 -0
  474. package/components/composites/sidebar/index.d.ts +11 -0
  475. package/components/composites/sidebar/index.d.ts.map +1 -0
  476. package/components/composites/sidebar/index.js +10 -0
  477. package/components/composites/sidebar/sidebar-auto-rail.d.ts +15 -0
  478. package/components/composites/sidebar/sidebar-auto-rail.d.ts.map +1 -0
  479. package/components/composites/sidebar/sidebar-auto-rail.js +292 -0
  480. package/components/composites/sidebar/sidebar-body.d.ts +4 -0
  481. package/components/composites/sidebar/sidebar-body.d.ts.map +1 -0
  482. package/components/composites/sidebar/sidebar-body.js +7 -0
  483. package/components/composites/sidebar/sidebar-collapsed-rail.d.ts +11 -0
  484. package/components/composites/sidebar/sidebar-collapsed-rail.d.ts.map +1 -0
  485. package/components/composites/sidebar/sidebar-collapsed-rail.js +13 -0
  486. package/components/composites/sidebar/sidebar-content.d.ts +78 -0
  487. package/components/composites/sidebar/sidebar-content.d.ts.map +1 -0
  488. package/components/composites/sidebar/sidebar-content.js +94 -0
  489. package/components/composites/sidebar/sidebar-filter-bar.d.ts +3 -0
  490. package/components/composites/sidebar/sidebar-filter-bar.d.ts.map +1 -0
  491. package/components/composites/sidebar/sidebar-filter-bar.js +14 -0
  492. package/components/composites/sidebar/sidebar-header-stack.d.ts +3 -0
  493. package/components/composites/sidebar/sidebar-header-stack.d.ts.map +1 -0
  494. package/components/composites/sidebar/sidebar-header-stack.js +6 -0
  495. package/components/composites/sidebar/sidebar-header.d.ts +9 -0
  496. package/components/composites/sidebar/sidebar-header.d.ts.map +1 -0
  497. package/components/composites/sidebar/sidebar-header.js +6 -0
  498. package/components/composites/sidebar/sidebar-panel.d.ts +3 -0
  499. package/components/composites/sidebar/sidebar-panel.d.ts.map +1 -0
  500. package/components/composites/sidebar/sidebar-panel.js +18 -0
  501. package/components/composites/sidebar/sidebar-root.d.ts +4 -0
  502. package/components/composites/sidebar/sidebar-root.d.ts.map +1 -0
  503. package/components/composites/sidebar/sidebar-root.js +491 -0
  504. package/components/composites/sidebar/sidebar-scroll-region.d.ts +3 -0
  505. package/components/composites/sidebar/sidebar-scroll-region.d.ts.map +1 -0
  506. package/components/composites/sidebar/sidebar-scroll-region.js +18 -0
  507. package/components/composites/sidebar/sidebar-types.d.ts +77 -0
  508. package/components/composites/sidebar/sidebar-types.d.ts.map +1 -0
  509. package/components/composites/sidebar/sidebar-types.js +1 -0
  510. package/components/composites/skills/index.d.ts +2 -0
  511. package/components/composites/skills/index.d.ts.map +1 -0
  512. package/components/composites/skills/index.js +1 -0
  513. package/components/composites/skills/skill-sidebar-item.d.ts +16 -0
  514. package/components/composites/skills/skill-sidebar-item.d.ts.map +1 -0
  515. package/components/composites/skills/skill-sidebar-item.js +7 -0
  516. package/components/composites/trajectories/index.d.ts +8 -0
  517. package/components/composites/trajectories/index.d.ts.map +1 -0
  518. package/components/composites/trajectories/index.js +7 -0
  519. package/components/composites/trajectories/trajectory-cache-stats.d.ts +14 -0
  520. package/components/composites/trajectories/trajectory-cache-stats.d.ts.map +1 -0
  521. package/components/composites/trajectories/trajectory-cache-stats.js +5 -0
  522. package/components/composites/trajectories/trajectory-code-block.d.ts +13 -0
  523. package/components/composites/trajectories/trajectory-code-block.d.ts.map +1 -0
  524. package/components/composites/trajectories/trajectory-code-block.js +13 -0
  525. package/components/composites/trajectories/trajectory-context-diff-list.d.ts +18 -0
  526. package/components/composites/trajectories/trajectory-context-diff-list.d.ts.map +1 -0
  527. package/components/composites/trajectories/trajectory-context-diff-list.js +9 -0
  528. package/components/composites/trajectories/trajectory-event-timeline.d.ts +19 -0
  529. package/components/composites/trajectories/trajectory-event-timeline.d.ts.map +1 -0
  530. package/components/composites/trajectories/trajectory-event-timeline.js +21 -0
  531. package/components/composites/trajectories/trajectory-llm-call-card.d.ts +34 -0
  532. package/components/composites/trajectories/trajectory-llm-call-card.d.ts.map +1 -0
  533. package/components/composites/trajectories/trajectory-llm-call-card.js +14 -0
  534. package/components/composites/trajectories/trajectory-pipeline-graph.d.ts +26 -0
  535. package/components/composites/trajectories/trajectory-pipeline-graph.d.ts.map +1 -0
  536. package/components/composites/trajectories/trajectory-pipeline-graph.js +46 -0
  537. package/components/composites/trajectories/trajectory-sidebar-item.d.ts +15 -0
  538. package/components/composites/trajectories/trajectory-sidebar-item.d.ts.map +1 -0
  539. package/components/composites/trajectories/trajectory-sidebar-item.js +8 -0
  540. package/components/config-ui/config-control-primitives.d.ts +14 -0
  541. package/components/config-ui/config-control-primitives.d.ts.map +1 -0
  542. package/components/config-ui/config-control-primitives.js +22 -0
  543. package/components/config-ui/config-field.d.ts +58 -0
  544. package/components/config-ui/config-field.d.ts.map +1 -0
  545. package/components/config-ui/config-field.js +874 -0
  546. package/components/config-ui/config-renderer.d.ts +164 -0
  547. package/components/config-ui/config-renderer.d.ts.map +1 -0
  548. package/components/config-ui/config-renderer.js +396 -0
  549. package/components/config-ui/index.d.ts +5 -0
  550. package/components/config-ui/index.d.ts.map +1 -0
  551. package/components/config-ui/index.js +4 -0
  552. package/components/config-ui/ui-renderer.d.ts +15 -0
  553. package/components/config-ui/ui-renderer.d.ts.map +1 -0
  554. package/components/config-ui/ui-renderer.js +826 -0
  555. package/components/connectors/BlueBubblesStatusPanel.d.ts +2 -0
  556. package/components/connectors/BlueBubblesStatusPanel.d.ts.map +1 -0
  557. package/components/connectors/BlueBubblesStatusPanel.js +61 -0
  558. package/components/connectors/ConnectorAccountAuditList.d.ts +8 -0
  559. package/components/connectors/ConnectorAccountAuditList.d.ts.map +1 -0
  560. package/components/connectors/ConnectorAccountAuditList.js +58 -0
  561. package/components/connectors/ConnectorAccountCard.d.ts +17 -0
  562. package/components/connectors/ConnectorAccountCard.d.ts.map +1 -0
  563. package/components/connectors/ConnectorAccountCard.js +80 -0
  564. package/components/connectors/ConnectorAccountList.d.ts +13 -0
  565. package/components/connectors/ConnectorAccountList.d.ts.map +1 -0
  566. package/components/connectors/ConnectorAccountList.js +82 -0
  567. package/components/connectors/ConnectorAccountPrivacySelector.d.ts +13 -0
  568. package/components/connectors/ConnectorAccountPrivacySelector.d.ts.map +1 -0
  569. package/components/connectors/ConnectorAccountPrivacySelector.js +66 -0
  570. package/components/connectors/ConnectorAccountPurposeSelector.d.ts +12 -0
  571. package/components/connectors/ConnectorAccountPurposeSelector.d.ts.map +1 -0
  572. package/components/connectors/ConnectorAccountPurposeSelector.js +51 -0
  573. package/components/connectors/ConnectorAccountSetupScope.d.ts +8 -0
  574. package/components/connectors/ConnectorAccountSetupScope.d.ts.map +1 -0
  575. package/components/connectors/ConnectorAccountSetupScope.js +25 -0
  576. package/components/connectors/ConnectorModeSelector.d.ts +37 -0
  577. package/components/connectors/ConnectorModeSelector.d.ts.map +1 -0
  578. package/components/connectors/ConnectorModeSelector.js +257 -0
  579. package/components/connectors/ConnectorSetupPanel.d.ts +12 -0
  580. package/components/connectors/ConnectorSetupPanel.d.ts.map +1 -0
  581. package/components/connectors/ConnectorSetupPanel.js +110 -0
  582. package/components/connectors/DiscordLocalConnectorPanel.d.ts +2 -0
  583. package/components/connectors/DiscordLocalConnectorPanel.d.ts.map +1 -0
  584. package/components/connectors/DiscordLocalConnectorPanel.js +249 -0
  585. package/components/connectors/IMessageStatusPanel.d.ts +2 -0
  586. package/components/connectors/IMessageStatusPanel.d.ts.map +1 -0
  587. package/components/connectors/IMessageStatusPanel.js +63 -0
  588. package/components/connectors/SignalQrOverlay.d.ts +7 -0
  589. package/components/connectors/SignalQrOverlay.d.ts.map +1 -0
  590. package/components/connectors/SignalQrOverlay.js +64 -0
  591. package/components/connectors/TelegramAccountConnectorPanel.d.ts +2 -0
  592. package/components/connectors/TelegramAccountConnectorPanel.d.ts.map +1 -0
  593. package/components/connectors/TelegramAccountConnectorPanel.js +202 -0
  594. package/components/connectors/TelegramBotSetupPanel.d.ts +2 -0
  595. package/components/connectors/TelegramBotSetupPanel.d.ts.map +1 -0
  596. package/components/connectors/TelegramBotSetupPanel.js +81 -0
  597. package/components/connectors/WhatsAppQrOverlay.d.ts +9 -0
  598. package/components/connectors/WhatsAppQrOverlay.d.ts.map +1 -0
  599. package/components/connectors/WhatsAppQrOverlay.js +54 -0
  600. package/components/connectors/connector-account-options.d.ts +42 -0
  601. package/components/connectors/connector-account-options.d.ts.map +1 -0
  602. package/components/connectors/connector-account-options.js +209 -0
  603. package/components/conversations/ConversationRenameDialog.d.ts +9 -0
  604. package/components/conversations/ConversationRenameDialog.d.ts.map +1 -0
  605. package/components/conversations/ConversationRenameDialog.js +46 -0
  606. package/components/conversations/ConversationsSidebar.d.ts +9 -0
  607. package/components/conversations/ConversationsSidebar.d.ts.map +1 -0
  608. package/components/conversations/ConversationsSidebar.js +557 -0
  609. package/components/conversations/brand-icons.d.ts +12 -0
  610. package/components/conversations/brand-icons.d.ts.map +1 -0
  611. package/components/conversations/brand-icons.js +52 -0
  612. package/components/conversations/conversation-sidebar-model.d.ts +66 -0
  613. package/components/conversations/conversation-sidebar-model.d.ts.map +1 -0
  614. package/components/conversations/conversation-sidebar-model.js +343 -0
  615. package/components/conversations/conversation-utils.d.ts +9 -0
  616. package/components/conversations/conversation-utils.d.ts.map +1 -0
  617. package/components/conversations/conversation-utils.js +144 -0
  618. package/components/custom-actions/CustomActionEditor.d.ts +10 -0
  619. package/components/custom-actions/CustomActionEditor.d.ts.map +1 -0
  620. package/components/custom-actions/CustomActionEditor.js +385 -0
  621. package/components/custom-actions/CustomActionsPanel.d.ts +9 -0
  622. package/components/custom-actions/CustomActionsPanel.d.ts.map +1 -0
  623. package/components/custom-actions/CustomActionsPanel.js +158 -0
  624. package/components/custom-actions/CustomActionsView.d.ts +2 -0
  625. package/components/custom-actions/CustomActionsView.d.ts.map +1 -0
  626. package/components/custom-actions/CustomActionsView.js +144 -0
  627. package/components/custom-actions/custom-action-form.d.ts +44 -0
  628. package/components/custom-actions/custom-action-form.d.ts.map +1 -0
  629. package/components/custom-actions/custom-action-form.js +237 -0
  630. package/components/index.d.ts +109 -0
  631. package/components/index.d.ts.map +1 -0
  632. package/components/index.js +110 -0
  633. package/components/local-inference/ActiveModelBar.d.ts +10 -0
  634. package/components/local-inference/ActiveModelBar.d.ts.map +1 -0
  635. package/components/local-inference/ActiveModelBar.js +19 -0
  636. package/components/local-inference/DeviceBridgeStatus.d.ts +2 -0
  637. package/components/local-inference/DeviceBridgeStatus.d.ts.map +1 -0
  638. package/components/local-inference/DeviceBridgeStatus.js +39 -0
  639. package/components/local-inference/DevicesPanel.d.ts +8 -0
  640. package/components/local-inference/DevicesPanel.d.ts.map +1 -0
  641. package/components/local-inference/DevicesPanel.js +44 -0
  642. package/components/local-inference/DownloadProgress.d.ts +7 -0
  643. package/components/local-inference/DownloadProgress.d.ts.map +1 -0
  644. package/components/local-inference/DownloadProgress.js +8 -0
  645. package/components/local-inference/DownloadQueue.d.ts +15 -0
  646. package/components/local-inference/DownloadQueue.d.ts.map +1 -0
  647. package/components/local-inference/DownloadQueue.js +21 -0
  648. package/components/local-inference/FirstRunOffer.d.ts +11 -0
  649. package/components/local-inference/FirstRunOffer.d.ts.map +1 -0
  650. package/components/local-inference/FirstRunOffer.js +39 -0
  651. package/components/local-inference/HardwareBadge.d.ts +7 -0
  652. package/components/local-inference/HardwareBadge.d.ts.map +1 -0
  653. package/components/local-inference/HardwareBadge.js +10 -0
  654. package/components/local-inference/HuggingFaceSearch.d.ts +22 -0
  655. package/components/local-inference/HuggingFaceSearch.d.ts.map +1 -0
  656. package/components/local-inference/HuggingFaceSearch.js +68 -0
  657. package/components/local-inference/LocalInferencePanel.d.ts +5 -0
  658. package/components/local-inference/LocalInferencePanel.d.ts.map +1 -0
  659. package/components/local-inference/LocalInferencePanel.js +225 -0
  660. package/components/local-inference/ModelCard.d.ts +20 -0
  661. package/components/local-inference/ModelCard.d.ts.map +1 -0
  662. package/components/local-inference/ModelCard.js +21 -0
  663. package/components/local-inference/ModelHubView.d.ts +18 -0
  664. package/components/local-inference/ModelHubView.d.ts.map +1 -0
  665. package/components/local-inference/ModelHubView.js +40 -0
  666. package/components/local-inference/ProvidersList.d.ts +2 -0
  667. package/components/local-inference/ProvidersList.d.ts.map +1 -0
  668. package/components/local-inference/ProvidersList.js +51 -0
  669. package/components/local-inference/RoutingMatrix.d.ts +2 -0
  670. package/components/local-inference/RoutingMatrix.d.ts.map +1 -0
  671. package/components/local-inference/RoutingMatrix.js +98 -0
  672. package/components/local-inference/SlotAssignments.d.ts +15 -0
  673. package/components/local-inference/SlotAssignments.d.ts.map +1 -0
  674. package/components/local-inference/SlotAssignments.js +48 -0
  675. package/components/local-inference/hub-utils.d.ts +27 -0
  676. package/components/local-inference/hub-utils.d.ts.map +1 -0
  677. package/components/local-inference/hub-utils.js +87 -0
  678. package/components/onboarding/BootstrapStep.d.ts +35 -0
  679. package/components/onboarding/BootstrapStep.d.ts.map +1 -0
  680. package/components/onboarding/BootstrapStep.js +151 -0
  681. package/components/onboarding/PasswordSetupStep.d.ts +28 -0
  682. package/components/onboarding/PasswordSetupStep.d.ts.map +1 -0
  683. package/components/onboarding/PasswordSetupStep.js +82 -0
  684. package/components/onboarding/onboarding-form-primitives.d.ts +54 -0
  685. package/components/onboarding/onboarding-form-primitives.d.ts.map +1 -0
  686. package/components/onboarding/onboarding-form-primitives.js +55 -0
  687. package/components/onboarding/onboarding-step-chrome.d.ts +40 -0
  688. package/components/onboarding/onboarding-step-chrome.d.ts.map +1 -0
  689. package/components/onboarding/onboarding-step-chrome.js +74 -0
  690. package/components/pages/AppDetailsView.d.ts +34 -0
  691. package/components/pages/AppDetailsView.d.ts.map +1 -0
  692. package/components/pages/AppDetailsView.js +350 -0
  693. package/components/pages/AppsPageView.d.ts +12 -0
  694. package/components/pages/AppsPageView.d.ts.map +1 -0
  695. package/components/pages/AppsPageView.js +58 -0
  696. package/components/pages/AppsView.d.ts +3 -0
  697. package/components/pages/AppsView.d.ts.map +1 -0
  698. package/components/pages/AppsView.js +840 -0
  699. package/components/pages/AutomationsChatPane.d.ts +19 -0
  700. package/components/pages/AutomationsChatPane.d.ts.map +1 -0
  701. package/components/pages/AutomationsChatPane.js +15 -0
  702. package/components/pages/AutomationsFeed.d.ts +38 -0
  703. package/components/pages/AutomationsFeed.d.ts.map +1 -0
  704. package/components/pages/AutomationsFeed.js +278 -0
  705. package/components/pages/BrowserWorkspaceView.d.ts +17 -0
  706. package/components/pages/BrowserWorkspaceView.d.ts.map +1 -0
  707. package/components/pages/BrowserWorkspaceView.js +1586 -0
  708. package/components/pages/ChatModalView.d.ts +13 -0
  709. package/components/pages/ChatModalView.d.ts.map +1 -0
  710. package/components/pages/ChatModalView.js +17 -0
  711. package/components/pages/ChatPanelLayout.d.ts +11 -0
  712. package/components/pages/ChatPanelLayout.d.ts.map +1 -0
  713. package/components/pages/ChatPanelLayout.js +37 -0
  714. package/components/pages/ChatView.d.ts +24 -0
  715. package/components/pages/ChatView.d.ts.map +1 -0
  716. package/components/pages/ChatView.js +630 -0
  717. package/components/pages/ConfigPageView.d.ts +12 -0
  718. package/components/pages/ConfigPageView.d.ts.map +1 -0
  719. package/components/pages/ConfigPageView.js +297 -0
  720. package/components/pages/ConnectorsPageView.d.ts +8 -0
  721. package/components/pages/ConnectorsPageView.d.ts.map +1 -0
  722. package/components/pages/ConnectorsPageView.js +8 -0
  723. package/components/pages/DatabasePageView.d.ts +5 -0
  724. package/components/pages/DatabasePageView.d.ts.map +1 -0
  725. package/components/pages/DatabasePageView.js +33 -0
  726. package/components/pages/DatabaseView.d.ts +6 -0
  727. package/components/pages/DatabaseView.d.ts.map +1 -0
  728. package/components/pages/DatabaseView.js +247 -0
  729. package/components/pages/DocumentsView.d.ts +12 -0
  730. package/components/pages/DocumentsView.d.ts.map +1 -0
  731. package/components/pages/DocumentsView.js +660 -0
  732. package/components/pages/ElizaCloudDashboard.d.ts +2 -0
  733. package/components/pages/ElizaCloudDashboard.d.ts.map +1 -0
  734. package/components/pages/ElizaCloudDashboard.js +486 -0
  735. package/components/pages/ElizaOsAppsView.d.ts +4 -0
  736. package/components/pages/ElizaOsAppsView.d.ts.map +1 -0
  737. package/components/pages/ElizaOsAppsView.js +618 -0
  738. package/components/pages/HeartbeatForm.d.ts +56 -0
  739. package/components/pages/HeartbeatForm.d.ts.map +1 -0
  740. package/components/pages/HeartbeatForm.js +215 -0
  741. package/components/pages/HeartbeatsView.d.ts +3 -0
  742. package/components/pages/HeartbeatsView.d.ts.map +1 -0
  743. package/components/pages/HeartbeatsView.js +399 -0
  744. package/components/pages/HomePlaceholderView.d.ts +16 -0
  745. package/components/pages/HomePlaceholderView.d.ts.map +1 -0
  746. package/components/pages/HomePlaceholderView.js +17 -0
  747. package/components/pages/LogsView.d.ts +12 -0
  748. package/components/pages/LogsView.d.ts.map +1 -0
  749. package/components/pages/LogsView.js +90 -0
  750. package/components/pages/MediaGalleryView.d.ts +6 -0
  751. package/components/pages/MediaGalleryView.d.ts.map +1 -0
  752. package/components/pages/MediaGalleryView.js +273 -0
  753. package/components/pages/MemoryDetailPanel.d.ts +5 -0
  754. package/components/pages/MemoryDetailPanel.d.ts.map +1 -0
  755. package/components/pages/MemoryDetailPanel.js +17 -0
  756. package/components/pages/MemoryViewerView.d.ts +5 -0
  757. package/components/pages/MemoryViewerView.d.ts.map +1 -0
  758. package/components/pages/MemoryViewerView.js +234 -0
  759. package/components/pages/PageScopedChatPane.d.ts +51 -0
  760. package/components/pages/PageScopedChatPane.d.ts.map +1 -0
  761. package/components/pages/PageScopedChatPane.js +586 -0
  762. package/components/pages/PluginCard.d.ts +36 -0
  763. package/components/pages/PluginCard.d.ts.map +1 -0
  764. package/components/pages/PluginCard.js +128 -0
  765. package/components/pages/PluginConfigForm.d.ts +29 -0
  766. package/components/pages/PluginConfigForm.d.ts.map +1 -0
  767. package/components/pages/PluginConfigForm.js +133 -0
  768. package/components/pages/PluginsPageView.d.ts +9 -0
  769. package/components/pages/PluginsPageView.d.ts.map +1 -0
  770. package/components/pages/PluginsPageView.js +5 -0
  771. package/components/pages/PluginsView.d.ts +11 -0
  772. package/components/pages/PluginsView.d.ts.map +1 -0
  773. package/components/pages/PluginsView.js +813 -0
  774. package/components/pages/RelationshipsGraphPanel.d.ts +8 -0
  775. package/components/pages/RelationshipsGraphPanel.d.ts.map +1 -0
  776. package/components/pages/RelationshipsGraphPanel.js +696 -0
  777. package/components/pages/RelationshipsIdentityCluster.d.ts +5 -0
  778. package/components/pages/RelationshipsIdentityCluster.d.ts.map +1 -0
  779. package/components/pages/RelationshipsIdentityCluster.js +17 -0
  780. package/components/pages/RelationshipsView.d.ts +5 -0
  781. package/components/pages/RelationshipsView.d.ts.map +1 -0
  782. package/components/pages/RelationshipsView.js +5 -0
  783. package/components/pages/ReleaseCenterView.d.ts +2 -0
  784. package/components/pages/ReleaseCenterView.d.ts.map +1 -0
  785. package/components/pages/ReleaseCenterView.js +216 -0
  786. package/components/pages/RuntimeView.d.ts +5 -0
  787. package/components/pages/RuntimeView.d.ts.map +1 -0
  788. package/components/pages/RuntimeView.js +283 -0
  789. package/components/pages/SecretsView.d.ts +5 -0
  790. package/components/pages/SecretsView.d.ts.map +1 -0
  791. package/components/pages/SecretsView.js +245 -0
  792. package/components/pages/SettingsView.d.ts +6 -0
  793. package/components/pages/SettingsView.d.ts.map +1 -0
  794. package/components/pages/SettingsView.js +526 -0
  795. package/components/pages/SkillsView.d.ts +6 -0
  796. package/components/pages/SkillsView.d.ts.map +1 -0
  797. package/components/pages/SkillsView.js +205 -0
  798. package/components/pages/SqlEditorPanel.d.ts +13 -0
  799. package/components/pages/SqlEditorPanel.d.ts.map +1 -0
  800. package/components/pages/SqlEditorPanel.js +19 -0
  801. package/components/pages/StreamView.d.ts +4 -0
  802. package/components/pages/StreamView.d.ts.map +1 -0
  803. package/components/pages/StreamView.js +113 -0
  804. package/components/pages/TaskEditor.d.ts +39 -0
  805. package/components/pages/TaskEditor.d.ts.map +1 -0
  806. package/components/pages/TaskEditor.js +71 -0
  807. package/components/pages/TasksPageView.d.ts +2 -0
  808. package/components/pages/TasksPageView.d.ts.map +1 -0
  809. package/components/pages/TasksPageView.js +10 -0
  810. package/components/pages/TrajectoriesView.d.ts +9 -0
  811. package/components/pages/TrajectoriesView.d.ts.map +1 -0
  812. package/components/pages/TrajectoriesView.js +282 -0
  813. package/components/pages/TrajectoryDetailView.d.ts +7 -0
  814. package/components/pages/TrajectoryDetailView.d.ts.map +1 -0
  815. package/components/pages/TrajectoryDetailView.js +410 -0
  816. package/components/pages/VectorBrowserView.d.ts +13 -0
  817. package/components/pages/VectorBrowserView.d.ts.map +1 -0
  818. package/components/pages/VectorBrowserView.js +863 -0
  819. package/components/pages/WorkflowEditor.d.ts +26 -0
  820. package/components/pages/WorkflowEditor.d.ts.map +1 -0
  821. package/components/pages/WorkflowEditor.js +156 -0
  822. package/components/pages/WorkflowGraphViewer.d.ts +13 -0
  823. package/components/pages/WorkflowGraphViewer.d.ts.map +1 -0
  824. package/components/pages/WorkflowGraphViewer.js +378 -0
  825. package/components/pages/automation-conversations.d.ts +16 -0
  826. package/components/pages/automation-conversations.d.ts.map +1 -0
  827. package/components/pages/automation-conversations.js +204 -0
  828. package/components/pages/automations-missing-creds.d.ts +25 -0
  829. package/components/pages/automations-missing-creds.d.ts.map +1 -0
  830. package/components/pages/automations-missing-creds.js +39 -0
  831. package/components/pages/browser-wallet-consent-format.d.ts +20 -0
  832. package/components/pages/browser-wallet-consent-format.d.ts.map +1 -0
  833. package/components/pages/browser-wallet-consent-format.js +76 -0
  834. package/components/pages/browser-workspace-wallet.d.ts +80 -0
  835. package/components/pages/browser-workspace-wallet.d.ts.map +1 -0
  836. package/components/pages/browser-workspace-wallet.js +135 -0
  837. package/components/pages/chat-view-hooks.d.ts +65 -0
  838. package/components/pages/chat-view-hooks.d.ts.map +1 -0
  839. package/components/pages/chat-view-hooks.js +531 -0
  840. package/components/pages/cloud-dashboard-utils.d.ts +91 -0
  841. package/components/pages/cloud-dashboard-utils.d.ts.map +1 -0
  842. package/components/pages/cloud-dashboard-utils.js +284 -0
  843. package/components/pages/config-page-sections.d.ts +86 -0
  844. package/components/pages/config-page-sections.d.ts.map +1 -0
  845. package/components/pages/config-page-sections.js +205 -0
  846. package/components/pages/database-utils.d.ts +30 -0
  847. package/components/pages/database-utils.d.ts.map +1 -0
  848. package/components/pages/database-utils.js +133 -0
  849. package/components/pages/documents-detail.d.ts +9 -0
  850. package/components/pages/documents-detail.d.ts.map +1 -0
  851. package/components/pages/documents-detail.js +168 -0
  852. package/components/pages/documents-upload.d.ts +31 -0
  853. package/components/pages/documents-upload.d.ts.map +1 -0
  854. package/components/pages/documents-upload.js +178 -0
  855. package/components/pages/heartbeat-utils.d.ts +105 -0
  856. package/components/pages/heartbeat-utils.d.ts.map +1 -0
  857. package/components/pages/heartbeat-utils.js +368 -0
  858. package/components/pages/page-scoped-conversations.d.ts +62 -0
  859. package/components/pages/page-scoped-conversations.d.ts.map +1 -0
  860. package/components/pages/page-scoped-conversations.js +271 -0
  861. package/components/pages/plugin-list-utils.d.ts +67 -0
  862. package/components/pages/plugin-list-utils.d.ts.map +1 -0
  863. package/components/pages/plugin-list-utils.js +665 -0
  864. package/components/pages/plugin-view-connectors.d.ts +57 -0
  865. package/components/pages/plugin-view-connectors.d.ts.map +1 -0
  866. package/components/pages/plugin-view-connectors.js +371 -0
  867. package/components/pages/plugin-view-dialogs.d.ts +36 -0
  868. package/components/pages/plugin-view-dialogs.d.ts.map +1 -0
  869. package/components/pages/plugin-view-dialogs.js +63 -0
  870. package/components/pages/plugin-view-modal.d.ts +34 -0
  871. package/components/pages/plugin-view-modal.d.ts.map +1 -0
  872. package/components/pages/plugin-view-modal.js +29 -0
  873. package/components/pages/plugin-view-sidebar.d.ts +36 -0
  874. package/components/pages/plugin-view-sidebar.d.ts.map +1 -0
  875. package/components/pages/plugin-view-sidebar.js +42 -0
  876. package/components/pages/relationships/RelationshipsActivityFeed.d.ts +2 -0
  877. package/components/pages/relationships/RelationshipsActivityFeed.d.ts.map +1 -0
  878. package/components/pages/relationships/RelationshipsActivityFeed.js +85 -0
  879. package/components/pages/relationships/RelationshipsCandidateMergesPanel.d.ts +6 -0
  880. package/components/pages/relationships/RelationshipsCandidateMergesPanel.d.ts.map +1 -0
  881. package/components/pages/relationships/RelationshipsCandidateMergesPanel.js +73 -0
  882. package/components/pages/relationships/RelationshipsPersonPanels.d.ts +30 -0
  883. package/components/pages/relationships/RelationshipsPersonPanels.d.ts.map +1 -0
  884. package/components/pages/relationships/RelationshipsPersonPanels.js +319 -0
  885. package/components/pages/relationships/RelationshipsSidebar.d.ts +10 -0
  886. package/components/pages/relationships/RelationshipsSidebar.d.ts.map +1 -0
  887. package/components/pages/relationships/RelationshipsSidebar.js +16 -0
  888. package/components/pages/relationships/RelationshipsWorkspaceView.d.ts +7 -0
  889. package/components/pages/relationships/RelationshipsWorkspaceView.d.ts.map +1 -0
  890. package/components/pages/relationships/RelationshipsWorkspaceView.js +130 -0
  891. package/components/pages/relationships/relationships-utils.d.ts +16 -0
  892. package/components/pages/relationships/relationships-utils.d.ts.map +1 -0
  893. package/components/pages/relationships/relationships-utils.js +105 -0
  894. package/components/pages/skill-detail-panel.d.ts +13 -0
  895. package/components/pages/skill-detail-panel.d.ts.map +1 -0
  896. package/components/pages/skill-detail-panel.js +161 -0
  897. package/components/pages/skill-marketplace.d.ts +38 -0
  898. package/components/pages/skill-marketplace.d.ts.map +1 -0
  899. package/components/pages/skill-marketplace.js +114 -0
  900. package/components/pages/useBrowserWorkspaceWalletBridge.d.ts +43 -0
  901. package/components/pages/useBrowserWorkspaceWalletBridge.d.ts.map +1 -0
  902. package/components/pages/useBrowserWorkspaceWalletBridge.js +362 -0
  903. package/components/pages/vector-browser-utils.d.ts +50 -0
  904. package/components/pages/vector-browser-utils.d.ts.map +1 -0
  905. package/components/pages/vector-browser-utils.js +243 -0
  906. package/components/pages/workflow-graph-events.d.ts +15 -0
  907. package/components/pages/workflow-graph-events.d.ts.map +1 -0
  908. package/components/pages/workflow-graph-events.js +17 -0
  909. package/components/permissions/PermissionIcon.d.ts +4 -0
  910. package/components/permissions/PermissionIcon.d.ts.map +1 -0
  911. package/components/permissions/PermissionIcon.js +22 -0
  912. package/components/permissions/StreamingPermissions.d.ts +21 -0
  913. package/components/permissions/StreamingPermissions.d.ts.map +1 -0
  914. package/components/permissions/StreamingPermissions.js +255 -0
  915. package/components/plugins/showcase-data.d.ts +4 -0
  916. package/components/plugins/showcase-data.d.ts.map +1 -0
  917. package/components/plugins/showcase-data.js +461 -0
  918. package/components/policy-controls/ApprovedAddressesSection.d.ts +7 -0
  919. package/components/policy-controls/ApprovedAddressesSection.d.ts.map +1 -0
  920. package/components/policy-controls/ApprovedAddressesSection.js +74 -0
  921. package/components/policy-controls/AutoApproveSection.d.ts +7 -0
  922. package/components/policy-controls/AutoApproveSection.d.ts.map +1 -0
  923. package/components/policy-controls/AutoApproveSection.js +14 -0
  924. package/components/policy-controls/PolicyToggle.d.ts +15 -0
  925. package/components/policy-controls/PolicyToggle.d.ts.map +1 -0
  926. package/components/policy-controls/PolicyToggle.js +12 -0
  927. package/components/policy-controls/RateLimitSection.d.ts +7 -0
  928. package/components/policy-controls/RateLimitSection.d.ts.map +1 -0
  929. package/components/policy-controls/RateLimitSection.js +11 -0
  930. package/components/policy-controls/SpendingLimitSection.d.ts +7 -0
  931. package/components/policy-controls/SpendingLimitSection.d.ts.map +1 -0
  932. package/components/policy-controls/SpendingLimitSection.js +15 -0
  933. package/components/policy-controls/TimeWindowSection.d.ts +7 -0
  934. package/components/policy-controls/TimeWindowSection.d.ts.map +1 -0
  935. package/components/policy-controls/TimeWindowSection.js +40 -0
  936. package/components/policy-controls/constants.d.ts +11 -0
  937. package/components/policy-controls/constants.d.ts.map +1 -0
  938. package/components/policy-controls/constants.js +41 -0
  939. package/components/policy-controls/helpers.d.ts +13 -0
  940. package/components/policy-controls/helpers.d.ts.map +1 -0
  941. package/components/policy-controls/helpers.js +43 -0
  942. package/components/policy-controls/index.d.ts +10 -0
  943. package/components/policy-controls/index.d.ts.map +1 -0
  944. package/components/policy-controls/index.js +9 -0
  945. package/components/policy-controls/types.d.ts +58 -0
  946. package/components/policy-controls/types.d.ts.map +1 -0
  947. package/components/policy-controls/types.js +7 -0
  948. package/components/primitives/index.d.ts +24 -0
  949. package/components/primitives/index.d.ts.map +1 -0
  950. package/components/primitives/index.js +23 -0
  951. package/components/release-center/sections.d.ts +49 -0
  952. package/components/release-center/sections.d.ts.map +1 -0
  953. package/components/release-center/sections.js +79 -0
  954. package/components/release-center/shared.d.ts +13 -0
  955. package/components/release-center/shared.d.ts.map +1 -0
  956. package/components/release-center/shared.js +38 -0
  957. package/components/release-center/types.d.ts +79 -0
  958. package/components/release-center/types.d.ts.map +1 -0
  959. package/components/release-center/types.js +5 -0
  960. package/components/settings/ApiKeyConfig.d.ts +36 -0
  961. package/components/settings/ApiKeyConfig.d.ts.map +1 -0
  962. package/components/settings/ApiKeyConfig.js +148 -0
  963. package/components/settings/AppearanceSettingsSection.d.ts +2 -0
  964. package/components/settings/AppearanceSettingsSection.d.ts.map +1 -0
  965. package/components/settings/AppearanceSettingsSection.js +253 -0
  966. package/components/settings/AppsManagementSection.d.ts +12 -0
  967. package/components/settings/AppsManagementSection.d.ts.map +1 -0
  968. package/components/settings/AppsManagementSection.js +285 -0
  969. package/components/settings/CapabilitiesSection.d.ts +2 -0
  970. package/components/settings/CapabilitiesSection.d.ts.map +1 -0
  971. package/components/settings/CapabilitiesSection.js +97 -0
  972. package/components/settings/CloudInstancePanel.d.ts +2 -0
  973. package/components/settings/CloudInstancePanel.d.ts.map +1 -0
  974. package/components/settings/CloudInstancePanel.js +48 -0
  975. package/components/settings/DesktopWorkspaceSection.d.ts +7 -0
  976. package/components/settings/DesktopWorkspaceSection.d.ts.map +1 -0
  977. package/components/settings/DesktopWorkspaceSection.js +503 -0
  978. package/components/settings/IdentitySettingsSection.d.ts +2 -0
  979. package/components/settings/IdentitySettingsSection.d.ts.map +1 -0
  980. package/components/settings/IdentitySettingsSection.js +310 -0
  981. package/components/settings/PermissionsSection.d.ts +2 -0
  982. package/components/settings/PermissionsSection.d.ts.map +1 -0
  983. package/components/settings/PermissionsSection.js +156 -0
  984. package/components/settings/PolicyControlsView.d.ts +2 -0
  985. package/components/settings/PolicyControlsView.d.ts.map +1 -0
  986. package/components/settings/PolicyControlsView.js +232 -0
  987. package/components/settings/ProviderSwitcher.d.ts +22 -0
  988. package/components/settings/ProviderSwitcher.d.ts.map +1 -0
  989. package/components/settings/ProviderSwitcher.js +657 -0
  990. package/components/settings/RuntimeSettingsSection.d.ts +10 -0
  991. package/components/settings/RuntimeSettingsSection.d.ts.map +1 -0
  992. package/components/settings/RuntimeSettingsSection.js +173 -0
  993. package/components/settings/SecretsManagerSection.d.ts +21 -0
  994. package/components/settings/SecretsManagerSection.d.ts.map +1 -0
  995. package/components/settings/SecretsManagerSection.js +339 -0
  996. package/components/settings/SecuritySettingsSection.d.ts +2 -0
  997. package/components/settings/SecuritySettingsSection.d.ts.map +1 -0
  998. package/components/settings/SecuritySettingsSection.js +381 -0
  999. package/components/settings/SubscriptionStatus.d.ts +33 -0
  1000. package/components/settings/SubscriptionStatus.d.ts.map +1 -0
  1001. package/components/settings/SubscriptionStatus.js +291 -0
  1002. package/components/settings/VaultInventoryPanel.d.ts +61 -0
  1003. package/components/settings/VaultInventoryPanel.d.ts.map +1 -0
  1004. package/components/settings/VaultInventoryPanel.js +283 -0
  1005. package/components/settings/VoiceConfigView.d.ts +5 -0
  1006. package/components/settings/VoiceConfigView.d.ts.map +1 -0
  1007. package/components/settings/VoiceConfigView.js +505 -0
  1008. package/components/settings/WalletKeysSection.d.ts +19 -0
  1009. package/components/settings/WalletKeysSection.d.ts.map +1 -0
  1010. package/components/settings/WalletKeysSection.js +167 -0
  1011. package/components/settings/cloud-model-schema.d.ts +26 -0
  1012. package/components/settings/cloud-model-schema.d.ts.map +1 -0
  1013. package/components/settings/cloud-model-schema.js +108 -0
  1014. package/components/settings/permission-controls.d.ts +37 -0
  1015. package/components/settings/permission-controls.d.ts.map +1 -0
  1016. package/components/settings/permission-controls.js +480 -0
  1017. package/components/settings/permission-types.d.ts +44 -0
  1018. package/components/settings/permission-types.d.ts.map +1 -0
  1019. package/components/settings/permission-types.js +319 -0
  1020. package/components/settings/settings-control-primitives.d.ts +11 -0
  1021. package/components/settings/settings-control-primitives.d.ts.map +1 -0
  1022. package/components/settings/settings-control-primitives.js +14 -0
  1023. package/components/settings/vault-tabs/LoginsTab.d.ts +9 -0
  1024. package/components/settings/vault-tabs/LoginsTab.d.ts.map +1 -0
  1025. package/components/settings/vault-tabs/LoginsTab.js +189 -0
  1026. package/components/settings/vault-tabs/OverviewTab.d.ts +60 -0
  1027. package/components/settings/vault-tabs/OverviewTab.d.ts.map +1 -0
  1028. package/components/settings/vault-tabs/OverviewTab.js +260 -0
  1029. package/components/settings/vault-tabs/RoutingTab.d.ts +22 -0
  1030. package/components/settings/vault-tabs/RoutingTab.d.ts.map +1 -0
  1031. package/components/settings/vault-tabs/RoutingTab.js +175 -0
  1032. package/components/settings/vault-tabs/SecretsTab.d.ts +17 -0
  1033. package/components/settings/vault-tabs/SecretsTab.d.ts.map +1 -0
  1034. package/components/settings/vault-tabs/SecretsTab.js +11 -0
  1035. package/components/settings/vault-tabs/types.d.ts +105 -0
  1036. package/components/settings/vault-tabs/types.d.ts.map +1 -0
  1037. package/components/settings/vault-tabs/types.js +8 -0
  1038. package/components/shared/AppPageSidebar.d.ts +12 -0
  1039. package/components/shared/AppPageSidebar.d.ts.map +1 -0
  1040. package/components/shared/AppPageSidebar.js +119 -0
  1041. package/components/shared/CollapsibleSidebarSection.d.ts +19 -0
  1042. package/components/shared/CollapsibleSidebarSection.d.ts.map +1 -0
  1043. package/components/shared/CollapsibleSidebarSection.js +12 -0
  1044. package/components/shared/LanguageDropdown.d.ts +24 -0
  1045. package/components/shared/LanguageDropdown.d.ts.map +1 -0
  1046. package/components/shared/LanguageDropdown.js +37 -0
  1047. package/components/shared/ThemeToggle.d.ts +14 -0
  1048. package/components/shared/ThemeToggle.d.ts.map +1 -0
  1049. package/components/shared/ThemeToggle.js +14 -0
  1050. package/components/shared/confirm-delete-control.d.ts +19 -0
  1051. package/components/shared/confirm-delete-control.d.ts.map +1 -0
  1052. package/components/shared/confirm-delete-control.js +19 -0
  1053. package/components/shell/BugReportModal.d.ts +2 -0
  1054. package/components/shell/BugReportModal.d.ts.map +1 -0
  1055. package/components/shell/BugReportModal.js +366 -0
  1056. package/components/shell/CommandPalette.d.ts +2 -0
  1057. package/components/shell/CommandPalette.d.ts.map +1 -0
  1058. package/components/shell/CommandPalette.js +185 -0
  1059. package/components/shell/ComputerUseApprovalOverlay.d.ts +2 -0
  1060. package/components/shell/ComputerUseApprovalOverlay.d.ts.map +1 -0
  1061. package/components/shell/ComputerUseApprovalOverlay.js +171 -0
  1062. package/components/shell/ConnectionFailedBanner.d.ts +6 -0
  1063. package/components/shell/ConnectionFailedBanner.d.ts.map +1 -0
  1064. package/components/shell/ConnectionFailedBanner.js +23 -0
  1065. package/components/shell/ConnectionLostOverlay.d.ts +2 -0
  1066. package/components/shell/ConnectionLostOverlay.d.ts.map +1 -0
  1067. package/components/shell/ConnectionLostOverlay.js +49 -0
  1068. package/components/shell/DnaLoader.d.ts +8 -0
  1069. package/components/shell/DnaLoader.d.ts.map +1 -0
  1070. package/components/shell/DnaLoader.js +50 -0
  1071. package/components/shell/Header.d.ts +12 -0
  1072. package/components/shell/Header.d.ts.map +1 -0
  1073. package/components/shell/Header.js +316 -0
  1074. package/components/shell/LoadingScreen.d.ts +13 -0
  1075. package/components/shell/LoadingScreen.d.ts.map +1 -0
  1076. package/components/shell/LoadingScreen.js +86 -0
  1077. package/components/shell/PairingCommandHint.d.ts +4 -0
  1078. package/components/shell/PairingCommandHint.d.ts.map +1 -0
  1079. package/components/shell/PairingCommandHint.js +68 -0
  1080. package/components/shell/PairingView.d.ts +2 -0
  1081. package/components/shell/PairingView.d.ts.map +1 -0
  1082. package/components/shell/PairingView.js +43 -0
  1083. package/components/shell/RestartBanner.d.ts +2 -0
  1084. package/components/shell/RestartBanner.d.ts.map +1 -0
  1085. package/components/shell/RestartBanner.js +39 -0
  1086. package/components/shell/RuntimeGate.d.ts +51 -0
  1087. package/components/shell/RuntimeGate.d.ts.map +1 -0
  1088. package/components/shell/RuntimeGate.js +1293 -0
  1089. package/components/shell/ShellHeaderControls.d.ts +44 -0
  1090. package/components/shell/ShellHeaderControls.d.ts.map +1 -0
  1091. package/components/shell/ShellHeaderControls.js +80 -0
  1092. package/components/shell/ShellOverlays.d.ts +5 -0
  1093. package/components/shell/ShellOverlays.d.ts.map +1 -0
  1094. package/components/shell/ShellOverlays.js +15 -0
  1095. package/components/shell/ShortcutsOverlay.d.ts +2 -0
  1096. package/components/shell/ShortcutsOverlay.d.ts.map +1 -0
  1097. package/components/shell/ShortcutsOverlay.js +58 -0
  1098. package/components/shell/SplashServerChooser.d.ts +14 -0
  1099. package/components/shell/SplashServerChooser.d.ts.map +1 -0
  1100. package/components/shell/SplashServerChooser.js +23 -0
  1101. package/components/shell/StartupFailureView.d.ts +8 -0
  1102. package/components/shell/StartupFailureView.d.ts.map +1 -0
  1103. package/components/shell/StartupFailureView.js +148 -0
  1104. package/components/shell/StartupShell.d.ts +12 -0
  1105. package/components/shell/StartupShell.d.ts.map +1 -0
  1106. package/components/shell/StartupShell.js +234 -0
  1107. package/components/shell/SystemWarningBanner.d.ts +6 -0
  1108. package/components/shell/SystemWarningBanner.d.ts.map +1 -0
  1109. package/components/shell/SystemWarningBanner.js +44 -0
  1110. package/components/shell/onboarding-theme.d.ts +6 -0
  1111. package/components/shell/onboarding-theme.d.ts.map +1 -0
  1112. package/components/shell/onboarding-theme.js +29 -0
  1113. package/components/shell/pairing-command.d.ts +9 -0
  1114. package/components/shell/pairing-command.d.ts.map +1 -0
  1115. package/components/shell/pairing-command.js +48 -0
  1116. package/components/steward/injected.d.ts +5 -0
  1117. package/components/steward/injected.d.ts.map +1 -0
  1118. package/components/steward/injected.js +14 -0
  1119. package/components/stream/StatusBar.d.ts +10 -0
  1120. package/components/stream/StatusBar.d.ts.map +1 -0
  1121. package/components/stream/StatusBar.js +65 -0
  1122. package/components/stream/helpers.d.ts +15 -0
  1123. package/components/stream/helpers.d.ts.map +1 -0
  1124. package/components/stream/helpers.js +16 -0
  1125. package/components/tool-events/ToolCallEventLog.d.ts +10 -0
  1126. package/components/tool-events/ToolCallEventLog.d.ts.map +1 -0
  1127. package/components/tool-events/ToolCallEventLog.js +81 -0
  1128. package/components/training/InferenceEndpointPanel.d.ts +2 -0
  1129. package/components/training/InferenceEndpointPanel.d.ts.map +1 -0
  1130. package/components/training/InferenceEndpointPanel.js +63 -0
  1131. package/components/training/JobDetailPanel.d.ts +7 -0
  1132. package/components/training/JobDetailPanel.d.ts.map +1 -0
  1133. package/components/training/JobDetailPanel.js +74 -0
  1134. package/components/training/TrainingDashboard.d.ts +2 -0
  1135. package/components/training/TrainingDashboard.d.ts.map +1 -0
  1136. package/components/training/TrainingDashboard.js +86 -0
  1137. package/components/training/hooks/useTrainingApi.d.ts +59 -0
  1138. package/components/training/hooks/useTrainingApi.d.ts.map +1 -0
  1139. package/components/training/hooks/useTrainingApi.js +343 -0
  1140. package/components/training/injected.d.ts +3 -0
  1141. package/components/training/injected.d.ts.map +1 -0
  1142. package/components/training/injected.js +8 -0
  1143. package/components/training/types.d.ts +56 -0
  1144. package/components/training/types.d.ts.map +1 -0
  1145. package/components/training/types.js +1 -0
  1146. package/components/ui/admin-dialog.d.ts +50 -0
  1147. package/components/ui/admin-dialog.d.ts.map +1 -0
  1148. package/components/ui/admin-dialog.js +48 -0
  1149. package/components/ui/badge.d.ts +1 -1
  1150. package/components/ui/badge.d.ts.map +1 -1
  1151. package/components/ui/badge.js +1 -1
  1152. package/components/ui/banner.d.ts +1 -1
  1153. package/components/ui/banner.d.ts.map +1 -1
  1154. package/components/ui/banner.js +3 -2
  1155. package/components/ui/button.d.ts +1 -1
  1156. package/components/ui/button.d.ts.map +1 -1
  1157. package/components/ui/button.js +13 -11
  1158. package/components/ui/card.d.ts +8 -2
  1159. package/components/ui/card.d.ts.map +1 -1
  1160. package/components/ui/card.js +18 -3
  1161. package/components/ui/checkbox.d.ts.map +1 -1
  1162. package/components/ui/checkbox.js +1 -1
  1163. package/components/ui/confirm-delete.d.ts +9 -1
  1164. package/components/ui/confirm-delete.d.ts.map +1 -1
  1165. package/components/ui/confirm-delete.js +8 -5
  1166. package/components/ui/confirm-dialog.d.ts +28 -4
  1167. package/components/ui/confirm-dialog.d.ts.map +1 -1
  1168. package/components/ui/confirm-dialog.js +59 -24
  1169. package/components/ui/connection-status.d.ts +6 -0
  1170. package/components/ui/connection-status.d.ts.map +1 -1
  1171. package/components/ui/connection-status.js +21 -21
  1172. package/components/ui/copy-button.d.ts.map +1 -1
  1173. package/components/ui/copy-button.js +1 -1
  1174. package/components/ui/dialog.d.ts +6 -1
  1175. package/components/ui/dialog.d.ts.map +1 -1
  1176. package/components/ui/dialog.js +5 -4
  1177. package/components/ui/drawer-sheet.d.ts +19 -0
  1178. package/components/ui/drawer-sheet.d.ts.map +1 -0
  1179. package/components/ui/drawer-sheet.js +21 -0
  1180. package/components/ui/dropdown-menu.d.ts.map +1 -1
  1181. package/components/ui/dropdown-menu.js +1 -1
  1182. package/components/ui/empty-state.d.ts.map +1 -1
  1183. package/components/ui/empty-state.js +1 -1
  1184. package/components/ui/error-boundary.d.ts +4 -0
  1185. package/components/ui/error-boundary.d.ts.map +1 -1
  1186. package/components/ui/error-boundary.js +2 -2
  1187. package/components/ui/field-switch.d.ts +8 -0
  1188. package/components/ui/field-switch.d.ts.map +1 -0
  1189. package/components/ui/field-switch.js +10 -0
  1190. package/components/ui/field.d.ts +12 -0
  1191. package/components/ui/field.d.ts.map +1 -0
  1192. package/components/ui/field.js +21 -0
  1193. package/components/ui/form-select.d.ts +14 -0
  1194. package/components/ui/form-select.d.ts.map +1 -0
  1195. package/components/ui/form-select.js +9 -0
  1196. package/components/ui/grid.d.ts +1 -1
  1197. package/components/ui/grid.d.ts.map +1 -1
  1198. package/components/ui/grid.js +1 -1
  1199. package/components/ui/input.d.ts +8 -2
  1200. package/components/ui/input.d.ts.map +1 -1
  1201. package/components/ui/input.js +24 -4
  1202. package/components/ui/label.d.ts +1 -2
  1203. package/components/ui/label.d.ts.map +1 -1
  1204. package/components/ui/label.js +3 -4
  1205. package/components/ui/new-action-button.d.ts +7 -0
  1206. package/components/ui/new-action-button.d.ts.map +1 -0
  1207. package/components/ui/new-action-button.js +13 -0
  1208. package/components/ui/popover.d.ts.map +1 -1
  1209. package/components/ui/popover.js +1 -1
  1210. package/components/ui/save-footer.d.ts.map +1 -1
  1211. package/components/ui/save-footer.js +3 -2
  1212. package/components/ui/section-card.d.ts.map +1 -1
  1213. package/components/ui/section-card.js +4 -3
  1214. package/components/ui/segmented-control.d.ts +18 -0
  1215. package/components/ui/segmented-control.d.ts.map +1 -0
  1216. package/components/ui/segmented-control.js +10 -0
  1217. package/components/ui/select.d.ts.map +1 -1
  1218. package/components/ui/select.js +8 -7
  1219. package/components/ui/separator.d.ts.map +1 -1
  1220. package/components/ui/separator.js +1 -1
  1221. package/components/ui/settings-controls.d.ts +41 -0
  1222. package/components/ui/settings-controls.d.ts.map +1 -0
  1223. package/components/ui/settings-controls.js +60 -0
  1224. package/components/ui/skeleton.d.ts +7 -14
  1225. package/components/ui/skeleton.d.ts.map +1 -1
  1226. package/components/ui/skeleton.js +9 -22
  1227. package/components/ui/slider.d.ts.map +1 -1
  1228. package/components/ui/slider.js +1 -1
  1229. package/components/ui/spinner.d.ts.map +1 -1
  1230. package/components/ui/spinner.js +1 -1
  1231. package/components/ui/stack.d.ts +3 -3
  1232. package/components/ui/stack.d.ts.map +1 -1
  1233. package/components/ui/stack.js +1 -1
  1234. package/components/ui/status-badge.d.ts +11 -10
  1235. package/components/ui/status-badge.d.ts.map +1 -1
  1236. package/components/ui/status-badge.js +59 -32
  1237. package/components/ui/switch.d.ts.map +1 -1
  1238. package/components/ui/switch.js +3 -3
  1239. package/components/ui/tabs.d.ts.map +1 -1
  1240. package/components/ui/tabs.js +1 -1
  1241. package/components/ui/tag-editor.d.ts +4 -16
  1242. package/components/ui/tag-editor.d.ts.map +1 -1
  1243. package/components/ui/tag-editor.js +31 -29
  1244. package/components/ui/textarea.d.ts +8 -2
  1245. package/components/ui/textarea.d.ts.map +1 -1
  1246. package/components/ui/textarea.js +24 -4
  1247. package/components/ui/tooltip-extended.d.ts +8 -68
  1248. package/components/ui/tooltip-extended.d.ts.map +1 -1
  1249. package/components/ui/tooltip-extended.js +15 -124
  1250. package/components/ui/tooltip.d.ts +10 -0
  1251. package/components/ui/tooltip.d.ts.map +1 -1
  1252. package/components/ui/tooltip.js +6 -3
  1253. package/components/ui/typography.d.ts +1 -1
  1254. package/components/ui/typography.d.ts.map +1 -1
  1255. package/components/ui/typography.js +2 -2
  1256. package/components/workspace/AppWorkspaceChrome.d.ts +62 -0
  1257. package/components/workspace/AppWorkspaceChrome.d.ts.map +1 -0
  1258. package/components/workspace/AppWorkspaceChrome.js +227 -0
  1259. package/config/allowed-hosts.d.ts +8 -0
  1260. package/config/allowed-hosts.d.ts.map +1 -0
  1261. package/config/allowed-hosts.js +43 -0
  1262. package/config/api-key-prefix-hints.d.ts +25 -0
  1263. package/config/api-key-prefix-hints.d.ts.map +1 -0
  1264. package/config/api-key-prefix-hints.js +26 -0
  1265. package/config/app-config.d.ts +273 -0
  1266. package/config/app-config.d.ts.map +1 -0
  1267. package/config/app-config.js +31 -0
  1268. package/config/boot-config-react.d.ts +5 -0
  1269. package/config/boot-config-react.d.ts.map +1 -0
  1270. package/config/boot-config-react.js +7 -0
  1271. package/config/boot-config-store.d.ts +265 -0
  1272. package/config/boot-config-store.d.ts.map +1 -0
  1273. package/config/boot-config-store.js +143 -0
  1274. package/config/boot-config.d.ts +6 -0
  1275. package/config/boot-config.d.ts.map +1 -0
  1276. package/config/boot-config.js +5 -0
  1277. package/config/branding-react.d.ts +4 -0
  1278. package/config/branding-react.d.ts.map +1 -0
  1279. package/config/branding-react.js +11 -0
  1280. package/config/branding.d.ts +69 -0
  1281. package/config/branding.d.ts.map +1 -0
  1282. package/config/branding.js +23 -0
  1283. package/config/cloud-only.d.ts +6 -0
  1284. package/config/cloud-only.d.ts.map +1 -0
  1285. package/config/cloud-only.js +15 -0
  1286. package/config/config-catalog.d.ts +371 -0
  1287. package/config/config-catalog.d.ts.map +1 -0
  1288. package/config/config-catalog.js +709 -0
  1289. package/config/index.d.ts +9 -0
  1290. package/config/index.d.ts.map +1 -0
  1291. package/config/index.js +11 -0
  1292. package/config/plugin-ui-spec.d.ts +42 -0
  1293. package/config/plugin-ui-spec.d.ts.map +1 -0
  1294. package/config/plugin-ui-spec.js +256 -0
  1295. package/config/ui-spec.d.ts +164 -0
  1296. package/config/ui-spec.d.ts.map +1 -0
  1297. package/config/ui-spec.js +13 -0
  1298. package/content-packs/apply-pack.d.ts +33 -0
  1299. package/content-packs/apply-pack.d.ts.map +1 -0
  1300. package/content-packs/apply-pack.js +96 -0
  1301. package/content-packs/bundled-packs.d.ts +14 -0
  1302. package/content-packs/bundled-packs.d.ts.map +1 -0
  1303. package/content-packs/bundled-packs.js +106 -0
  1304. package/content-packs/index.d.ts +4 -0
  1305. package/content-packs/index.d.ts.map +1 -0
  1306. package/content-packs/index.js +3 -0
  1307. package/content-packs/load-pack.d.ts +34 -0
  1308. package/content-packs/load-pack.d.ts.map +1 -0
  1309. package/content-packs/load-pack.js +151 -0
  1310. package/desktop-runtime/AppWindowRenderer.d.ts +17 -0
  1311. package/desktop-runtime/AppWindowRenderer.d.ts.map +1 -0
  1312. package/desktop-runtime/AppWindowRenderer.js +327 -0
  1313. package/desktop-runtime/DesktopOnboardingRuntime.d.ts +9 -0
  1314. package/desktop-runtime/DesktopOnboardingRuntime.d.ts.map +1 -0
  1315. package/desktop-runtime/DesktopOnboardingRuntime.js +10 -0
  1316. package/desktop-runtime/DesktopSurfaceNavigationRuntime.d.ts +2 -0
  1317. package/desktop-runtime/DesktopSurfaceNavigationRuntime.d.ts.map +1 -0
  1318. package/desktop-runtime/DesktopSurfaceNavigationRuntime.js +48 -0
  1319. package/desktop-runtime/DesktopTrayRuntime.d.ts +11 -0
  1320. package/desktop-runtime/DesktopTrayRuntime.d.ts.map +1 -0
  1321. package/desktop-runtime/DesktopTrayRuntime.js +265 -0
  1322. package/desktop-runtime/DetachedShellRoot.d.ts +10 -0
  1323. package/desktop-runtime/DetachedShellRoot.d.ts.map +1 -0
  1324. package/desktop-runtime/DetachedShellRoot.js +114 -0
  1325. package/desktop-runtime/index.d.ts +6 -0
  1326. package/desktop-runtime/index.d.ts.map +1 -0
  1327. package/desktop-runtime/index.js +5 -0
  1328. package/events/index.d.ts +62 -0
  1329. package/events/index.d.ts.map +1 -0
  1330. package/events/index.js +51 -0
  1331. package/hooks/index.d.ts +20 -0
  1332. package/hooks/index.d.ts.map +1 -0
  1333. package/hooks/index.js +19 -0
  1334. package/hooks/useAccounts.d.ts +41 -0
  1335. package/hooks/useAccounts.d.ts.map +1 -0
  1336. package/hooks/useAccounts.js +250 -0
  1337. package/hooks/useActivityEvents.d.ts +20 -0
  1338. package/hooks/useActivityEvents.d.ts.map +1 -0
  1339. package/hooks/useActivityEvents.js +145 -0
  1340. package/hooks/useAuthStatus.d.ts +49 -0
  1341. package/hooks/useAuthStatus.d.ts.map +1 -0
  1342. package/hooks/useAuthStatus.js +90 -0
  1343. package/hooks/useAutomationDeepLink.d.ts +29 -0
  1344. package/hooks/useAutomationDeepLink.d.ts.map +1 -0
  1345. package/hooks/useAutomationDeepLink.js +63 -0
  1346. package/hooks/useBugReport.d.ts +26 -0
  1347. package/hooks/useBugReport.d.ts.map +1 -0
  1348. package/hooks/useBugReport.js +28 -0
  1349. package/hooks/useChatAvatarVoiceBridge.d.ts +12 -0
  1350. package/hooks/useChatAvatarVoiceBridge.d.ts.map +1 -0
  1351. package/hooks/useChatAvatarVoiceBridge.js +21 -0
  1352. package/hooks/useConnectorAccounts.d.ts +39 -0
  1353. package/hooks/useConnectorAccounts.d.ts.map +1 -0
  1354. package/hooks/useConnectorAccounts.js +268 -0
  1355. package/hooks/useConnectorSendAsAccount.d.ts +28 -0
  1356. package/hooks/useConnectorSendAsAccount.d.ts.map +1 -0
  1357. package/hooks/useConnectorSendAsAccount.js +61 -0
  1358. package/hooks/useContextMenu.d.ts +17 -0
  1359. package/hooks/useContextMenu.d.ts.map +1 -0
  1360. package/hooks/useContextMenu.js +142 -0
  1361. package/hooks/useDebouncedValue.d.ts +7 -0
  1362. package/hooks/useDebouncedValue.d.ts.map +1 -0
  1363. package/hooks/useDebouncedValue.js +14 -0
  1364. package/hooks/useDocumentVisibility.d.ts +3 -0
  1365. package/hooks/useDocumentVisibility.d.ts.map +1 -0
  1366. package/hooks/useDocumentVisibility.js +28 -0
  1367. package/hooks/useKeyboardShortcuts.d.ts +22 -0
  1368. package/hooks/useKeyboardShortcuts.d.ts.map +1 -0
  1369. package/hooks/useKeyboardShortcuts.js +64 -0
  1370. package/hooks/useLinkedSidebarSelection.d.ts +16 -0
  1371. package/hooks/useLinkedSidebarSelection.d.ts.map +1 -0
  1372. package/hooks/useLinkedSidebarSelection.js +117 -0
  1373. package/hooks/useMediaQuery.d.ts +4 -0
  1374. package/hooks/useMediaQuery.d.ts.map +1 -0
  1375. package/hooks/useMediaQuery.js +30 -0
  1376. package/hooks/useRenderGuard.d.ts +17 -0
  1377. package/hooks/useRenderGuard.d.ts.map +1 -0
  1378. package/hooks/useRenderGuard.js +36 -0
  1379. package/hooks/useRuntimeMode.d.ts +46 -0
  1380. package/hooks/useRuntimeMode.d.ts.map +1 -0
  1381. package/hooks/useRuntimeMode.js +81 -0
  1382. package/hooks/useSecretsManagerModal.d.ts +49 -0
  1383. package/hooks/useSecretsManagerModal.d.ts.map +1 -0
  1384. package/hooks/useSecretsManagerModal.js +101 -0
  1385. package/hooks/useSecretsManagerShortcut.d.ts +36 -0
  1386. package/hooks/useSecretsManagerShortcut.d.ts.map +1 -0
  1387. package/hooks/useSecretsManagerShortcut.js +80 -0
  1388. package/hooks/useSignalPairing.d.ts +12 -0
  1389. package/hooks/useSignalPairing.d.ts.map +1 -0
  1390. package/hooks/useSignalPairing.js +130 -0
  1391. package/hooks/useStreamPopoutNavigation.d.ts +3 -0
  1392. package/hooks/useStreamPopoutNavigation.d.ts.map +1 -0
  1393. package/hooks/useStreamPopoutNavigation.js +4 -0
  1394. package/hooks/useTimeout.d.ts +5 -0
  1395. package/hooks/useTimeout.d.ts.map +1 -0
  1396. package/hooks/useTimeout.js +26 -0
  1397. package/hooks/useVoiceChat.d.ts +37 -0
  1398. package/hooks/useVoiceChat.d.ts.map +1 -0
  1399. package/hooks/useVoiceChat.js +1311 -0
  1400. package/hooks/useWhatsAppPairing.d.ts +12 -0
  1401. package/hooks/useWhatsAppPairing.d.ts.map +1 -0
  1402. package/hooks/useWhatsAppPairing.js +96 -0
  1403. package/hooks/useWorkflowGenerationState.d.ts +20 -0
  1404. package/hooks/useWorkflowGenerationState.d.ts.map +1 -0
  1405. package/hooks/useWorkflowGenerationState.js +43 -0
  1406. package/i18n/index.d.ts +7 -0
  1407. package/i18n/index.d.ts.map +1 -0
  1408. package/i18n/index.js +60 -0
  1409. package/i18n/locales/en.json +3293 -0
  1410. package/i18n/locales/es.json +3293 -0
  1411. package/i18n/locales/ko.json +3293 -0
  1412. package/i18n/locales/pt.json +3293 -0
  1413. package/i18n/locales/tl.json +3293 -0
  1414. package/i18n/locales/vi.json +3293 -0
  1415. package/i18n/locales/zh-CN.json +3293 -0
  1416. package/i18n/messages.d.ts +6 -0
  1417. package/i18n/messages.d.ts.map +1 -0
  1418. package/i18n/messages.js +26 -0
  1419. package/index.d.ts +39 -40
  1420. package/index.d.ts.map +1 -1
  1421. package/index.js +40 -43
  1422. package/layouts/chat-panel-layout/chat-panel-layout.d.ts +11 -0
  1423. package/layouts/chat-panel-layout/chat-panel-layout.d.ts.map +1 -0
  1424. package/layouts/chat-panel-layout/chat-panel-layout.js +37 -0
  1425. package/layouts/chat-panel-layout/index.d.ts +2 -0
  1426. package/layouts/chat-panel-layout/index.d.ts.map +1 -0
  1427. package/layouts/chat-panel-layout/index.js +1 -0
  1428. package/layouts/content-layout/content-layout.d.ts +21 -0
  1429. package/layouts/content-layout/content-layout.d.ts.map +1 -0
  1430. package/layouts/content-layout/content-layout.js +5 -0
  1431. package/layouts/content-layout/index.d.ts +2 -0
  1432. package/layouts/content-layout/index.d.ts.map +1 -0
  1433. package/layouts/content-layout/index.js +1 -0
  1434. package/layouts/index.d.ts +5 -0
  1435. package/layouts/index.d.ts.map +1 -0
  1436. package/layouts/index.js +4 -0
  1437. package/layouts/page-layout/index.d.ts +5 -0
  1438. package/layouts/page-layout/index.d.ts.map +1 -0
  1439. package/layouts/page-layout/index.js +4 -0
  1440. package/layouts/page-layout/page-layout-header.d.ts +287 -0
  1441. package/layouts/page-layout/page-layout-header.d.ts.map +1 -0
  1442. package/layouts/page-layout/page-layout-header.js +8 -0
  1443. package/layouts/page-layout/page-layout-mobile-drawer.d.ts +3 -0
  1444. package/layouts/page-layout/page-layout-mobile-drawer.d.ts.map +1 -0
  1445. package/layouts/page-layout/page-layout-mobile-drawer.js +37 -0
  1446. package/layouts/page-layout/page-layout-types.d.ts +15 -0
  1447. package/layouts/page-layout/page-layout-types.d.ts.map +1 -0
  1448. package/layouts/page-layout/page-layout-types.js +1 -0
  1449. package/layouts/page-layout/page-layout.d.ts +3 -0
  1450. package/layouts/page-layout/page-layout.d.ts.map +1 -0
  1451. package/layouts/page-layout/page-layout.js +5 -0
  1452. package/layouts/workspace-layout/index.d.ts +4 -0
  1453. package/layouts/workspace-layout/index.d.ts.map +1 -0
  1454. package/layouts/workspace-layout/index.js +3 -0
  1455. package/layouts/workspace-layout/workspace-layout-types.d.ts +19 -0
  1456. package/layouts/workspace-layout/workspace-layout-types.d.ts.map +1 -0
  1457. package/layouts/workspace-layout/workspace-layout-types.js +1 -0
  1458. package/layouts/workspace-layout/workspace-layout.d.ts +3 -0
  1459. package/layouts/workspace-layout/workspace-layout.d.ts.map +1 -0
  1460. package/layouts/workspace-layout/workspace-layout.js +65 -0
  1461. package/layouts/workspace-layout/workspace-mobile-sidebar-controls.d.ts +13 -0
  1462. package/layouts/workspace-layout/workspace-mobile-sidebar-controls.d.ts.map +1 -0
  1463. package/layouts/workspace-layout/workspace-mobile-sidebar-controls.js +5 -0
  1464. package/lib/floating-layers.d.ts +17 -0
  1465. package/lib/floating-layers.d.ts.map +1 -0
  1466. package/lib/floating-layers.js +19 -0
  1467. package/lib/utils.d.ts +0 -3
  1468. package/lib/utils.d.ts.map +1 -1
  1469. package/lib/utils.js +0 -3
  1470. package/navigation/index.d.ts +70 -0
  1471. package/navigation/index.d.ts.map +1 -0
  1472. package/navigation/index.js +409 -0
  1473. package/navigation/main-tab.d.ts +58 -0
  1474. package/navigation/main-tab.d.ts.map +1 -0
  1475. package/navigation/main-tab.js +76 -0
  1476. package/onboarding/auto-download-recommended.d.ts +30 -0
  1477. package/onboarding/auto-download-recommended.d.ts.map +1 -0
  1478. package/onboarding/auto-download-recommended.js +105 -0
  1479. package/onboarding/flow.d.ts +66 -0
  1480. package/onboarding/flow.d.ts.map +1 -0
  1481. package/onboarding/flow.js +100 -0
  1482. package/onboarding/local-agent-token.d.ts +6 -0
  1483. package/onboarding/local-agent-token.d.ts.map +1 -0
  1484. package/onboarding/local-agent-token.js +79 -0
  1485. package/onboarding/mobile-runtime-mode.d.ts +19 -0
  1486. package/onboarding/mobile-runtime-mode.d.ts.map +1 -0
  1487. package/onboarding/mobile-runtime-mode.js +91 -0
  1488. package/onboarding/pre-seed-local-runtime.d.ts +53 -0
  1489. package/onboarding/pre-seed-local-runtime.d.ts.map +1 -0
  1490. package/onboarding/pre-seed-local-runtime.js +111 -0
  1491. package/onboarding/probe-local-agent.d.ts +51 -0
  1492. package/onboarding/probe-local-agent.d.ts.map +1 -0
  1493. package/onboarding/probe-local-agent.js +235 -0
  1494. package/onboarding/reload-into-runtime-picker.d.ts +25 -0
  1495. package/onboarding/reload-into-runtime-picker.d.ts.map +1 -0
  1496. package/onboarding/reload-into-runtime-picker.js +45 -0
  1497. package/onboarding/server-target.d.ts +4 -0
  1498. package/onboarding/server-target.d.ts.map +1 -0
  1499. package/onboarding/server-target.js +13 -0
  1500. package/onboarding-config.d.ts +61 -0
  1501. package/onboarding-config.d.ts.map +1 -0
  1502. package/onboarding-config.js +172 -0
  1503. package/package.json +33 -15
  1504. package/platform/android-runtime.d.ts +33 -0
  1505. package/platform/android-runtime.d.ts.map +1 -0
  1506. package/platform/android-runtime.js +61 -0
  1507. package/platform/browser-launch.d.ts +10 -0
  1508. package/platform/browser-launch.d.ts.map +1 -0
  1509. package/platform/browser-launch.js +147 -0
  1510. package/platform/cloud-preference-patch.d.ts +11 -0
  1511. package/platform/cloud-preference-patch.d.ts.map +1 -0
  1512. package/platform/cloud-preference-patch.js +85 -0
  1513. package/platform/desktop-permissions-client.d.ts +3 -0
  1514. package/platform/desktop-permissions-client.d.ts.map +1 -0
  1515. package/platform/desktop-permissions-client.js +246 -0
  1516. package/platform/empty-node-module.d.ts +58 -0
  1517. package/platform/empty-node-module.d.ts.map +1 -0
  1518. package/platform/empty-node-module.js +46 -0
  1519. package/platform/index.d.ts +12 -0
  1520. package/platform/index.d.ts.map +1 -0
  1521. package/platform/index.js +16 -0
  1522. package/platform/init.d.ts +73 -0
  1523. package/platform/init.d.ts.map +1 -0
  1524. package/platform/init.js +204 -0
  1525. package/platform/ios-runtime.d.ts +16 -0
  1526. package/platform/ios-runtime.d.ts.map +1 -0
  1527. package/platform/ios-runtime.js +81 -0
  1528. package/platform/is-native-server.d.ts +14 -0
  1529. package/platform/is-native-server.d.ts.map +1 -0
  1530. package/platform/is-native-server.js +16 -0
  1531. package/platform/onboarding-reset.d.ts +11 -0
  1532. package/platform/onboarding-reset.d.ts.map +1 -0
  1533. package/platform/onboarding-reset.js +127 -0
  1534. package/platform/types.d.ts +28 -0
  1535. package/platform/types.d.ts.map +1 -0
  1536. package/platform/types.js +1 -0
  1537. package/platform/window-shell.d.ts +28 -0
  1538. package/platform/window-shell.d.ts.map +1 -0
  1539. package/platform/window-shell.js +73 -0
  1540. package/providers/index.d.ts +26 -0
  1541. package/providers/index.d.ts.map +1 -0
  1542. package/providers/index.js +115 -0
  1543. package/services/local-inference/active-model.d.ts +180 -0
  1544. package/services/local-inference/active-model.d.ts.map +1 -0
  1545. package/services/local-inference/active-model.js +362 -0
  1546. package/services/local-inference/assignments.d.ts +58 -0
  1547. package/services/local-inference/assignments.d.ts.map +1 -0
  1548. package/services/local-inference/assignments.js +179 -0
  1549. package/services/local-inference/bundled-models.d.ts +34 -0
  1550. package/services/local-inference/bundled-models.d.ts.map +1 -0
  1551. package/services/local-inference/bundled-models.js +104 -0
  1552. package/services/local-inference/catalog.d.ts +55 -0
  1553. package/services/local-inference/catalog.d.ts.map +1 -0
  1554. package/services/local-inference/catalog.js +271 -0
  1555. package/services/local-inference/device-bridge.d.ts +138 -0
  1556. package/services/local-inference/device-bridge.d.ts.map +1 -0
  1557. package/services/local-inference/device-bridge.js +773 -0
  1558. package/services/local-inference/dflash-doctor.d.ts +22 -0
  1559. package/services/local-inference/dflash-doctor.d.ts.map +1 -0
  1560. package/services/local-inference/dflash-doctor.js +139 -0
  1561. package/services/local-inference/dflash-server.d.ts +76 -0
  1562. package/services/local-inference/dflash-server.d.ts.map +1 -0
  1563. package/services/local-inference/dflash-server.js +451 -0
  1564. package/services/local-inference/downloader.d.ts +48 -0
  1565. package/services/local-inference/downloader.d.ts.map +1 -0
  1566. package/services/local-inference/downloader.js +688 -0
  1567. package/services/local-inference/engine.d.ts +54 -0
  1568. package/services/local-inference/engine.d.ts.map +1 -0
  1569. package/services/local-inference/engine.js +223 -0
  1570. package/services/local-inference/external-scanner.d.ts +17 -0
  1571. package/services/local-inference/external-scanner.d.ts.map +1 -0
  1572. package/services/local-inference/external-scanner.js +261 -0
  1573. package/services/local-inference/handler-registry.d.ts +72 -0
  1574. package/services/local-inference/handler-registry.d.ts.map +1 -0
  1575. package/services/local-inference/handler-registry.js +163 -0
  1576. package/services/local-inference/hardware.d.ts +26 -0
  1577. package/services/local-inference/hardware.d.ts.map +1 -0
  1578. package/services/local-inference/hardware.js +149 -0
  1579. package/services/local-inference/hf-search.d.ts +19 -0
  1580. package/services/local-inference/hf-search.d.ts.map +1 -0
  1581. package/services/local-inference/hf-search.js +169 -0
  1582. package/services/local-inference/index.d.ts +9 -0
  1583. package/services/local-inference/index.d.ts.map +1 -0
  1584. package/services/local-inference/index.js +6 -0
  1585. package/services/local-inference/paths.d.ts +8 -0
  1586. package/services/local-inference/paths.d.ts.map +1 -0
  1587. package/services/local-inference/paths.js +7 -0
  1588. package/services/local-inference/providers.d.ts +61 -0
  1589. package/services/local-inference/providers.d.ts.map +1 -0
  1590. package/services/local-inference/providers.js +306 -0
  1591. package/services/local-inference/readiness.d.ts +9 -0
  1592. package/services/local-inference/readiness.d.ts.map +1 -0
  1593. package/services/local-inference/readiness.js +153 -0
  1594. package/services/local-inference/recommendation.d.ts +46 -0
  1595. package/services/local-inference/recommendation.d.ts.map +1 -0
  1596. package/services/local-inference/recommendation.js +260 -0
  1597. package/services/local-inference/registry.d.ts +35 -0
  1598. package/services/local-inference/registry.d.ts.map +1 -0
  1599. package/services/local-inference/registry.js +117 -0
  1600. package/services/local-inference/routing-policy.d.ts +55 -0
  1601. package/services/local-inference/routing-policy.d.ts.map +1 -0
  1602. package/services/local-inference/routing-policy.js +195 -0
  1603. package/services/local-inference/routing-preferences.d.ts +8 -0
  1604. package/services/local-inference/routing-preferences.d.ts.map +1 -0
  1605. package/services/local-inference/routing-preferences.js +7 -0
  1606. package/services/local-inference/service.d.ts +59 -0
  1607. package/services/local-inference/service.d.ts.map +1 -0
  1608. package/services/local-inference/service.js +185 -0
  1609. package/services/local-inference/types.d.ts +239 -0
  1610. package/services/local-inference/types.d.ts.map +1 -0
  1611. package/services/local-inference/types.js +21 -0
  1612. package/services/local-inference/verify.d.ts +8 -0
  1613. package/services/local-inference/verify.d.ts.map +1 -0
  1614. package/services/local-inference/verify.js +7 -0
  1615. package/shell-params.d.ts +12 -0
  1616. package/shell-params.d.ts.map +1 -0
  1617. package/shell-params.js +21 -0
  1618. package/slots/task-coordinator-slots.d.ts +39 -0
  1619. package/slots/task-coordinator-slots.d.ts.map +1 -0
  1620. package/slots/task-coordinator-slots.js +21 -0
  1621. package/state/AppContext.d.ts +13 -0
  1622. package/state/AppContext.d.ts.map +1 -0
  1623. package/state/AppContext.js +1750 -0
  1624. package/state/ChatComposerContext.d.ts +28 -0
  1625. package/state/ChatComposerContext.d.ts.map +1 -0
  1626. package/state/ChatComposerContext.js +30 -0
  1627. package/state/CompanionSceneConfigContext.d.ts +27 -0
  1628. package/state/CompanionSceneConfigContext.d.ts.map +1 -0
  1629. package/state/CompanionSceneConfigContext.js +32 -0
  1630. package/state/PtySessionsContext.d.ts +15 -0
  1631. package/state/PtySessionsContext.d.ts.map +1 -0
  1632. package/state/PtySessionsContext.js +15 -0
  1633. package/state/TranslationContext.d.ts +37 -0
  1634. package/state/TranslationContext.d.ts.map +1 -0
  1635. package/state/TranslationContext.js +63 -0
  1636. package/state/action-notice.d.ts +7 -0
  1637. package/state/action-notice.d.ts.map +1 -0
  1638. package/state/action-notice.js +1 -0
  1639. package/state/agent-profile-types.d.ts +29 -0
  1640. package/state/agent-profile-types.d.ts.map +1 -0
  1641. package/state/agent-profile-types.js +1 -0
  1642. package/state/agent-profiles.d.ts +16 -0
  1643. package/state/agent-profiles.d.ts.map +1 -0
  1644. package/state/agent-profiles.js +119 -0
  1645. package/state/agent-runtime-target.d.ts +14 -0
  1646. package/state/agent-runtime-target.d.ts.map +1 -0
  1647. package/state/agent-runtime-target.js +50 -0
  1648. package/state/agent-startup-timing.d.ts +15 -0
  1649. package/state/agent-startup-timing.d.ts.map +1 -0
  1650. package/state/agent-startup-timing.js +28 -0
  1651. package/state/autonomy.d.ts +48 -0
  1652. package/state/autonomy.d.ts.map +1 -0
  1653. package/state/autonomy.js +336 -0
  1654. package/state/chat-conversation-guards.d.ts +6 -0
  1655. package/state/chat-conversation-guards.d.ts.map +1 -0
  1656. package/state/chat-conversation-guards.js +47 -0
  1657. package/state/complete-reset-local-state-after-wipe.d.ts +52 -0
  1658. package/state/complete-reset-local-state-after-wipe.d.ts.map +1 -0
  1659. package/state/complete-reset-local-state-after-wipe.js +24 -0
  1660. package/state/config-readers.d.ts +7 -0
  1661. package/state/config-readers.d.ts.map +1 -0
  1662. package/state/config-readers.js +8 -0
  1663. package/state/connector-deeplink.d.ts +30 -0
  1664. package/state/connector-deeplink.d.ts.map +1 -0
  1665. package/state/connector-deeplink.js +46 -0
  1666. package/state/handle-reset-applied-from-main.d.ts +31 -0
  1667. package/state/handle-reset-applied-from-main.d.ts.map +1 -0
  1668. package/state/handle-reset-applied-from-main.js +38 -0
  1669. package/state/index.d.ts +16 -0
  1670. package/state/index.d.ts.map +1 -0
  1671. package/state/index.js +15 -0
  1672. package/state/internal.d.ts +9 -0
  1673. package/state/internal.d.ts.map +1 -0
  1674. package/state/internal.js +9 -0
  1675. package/state/navigation-events.d.ts +12 -0
  1676. package/state/navigation-events.d.ts.map +1 -0
  1677. package/state/navigation-events.js +25 -0
  1678. package/state/onboarding-bootstrap.d.ts +28 -0
  1679. package/state/onboarding-bootstrap.d.ts.map +1 -0
  1680. package/state/onboarding-bootstrap.js +76 -0
  1681. package/state/onboarding-restart.d.ts +8 -0
  1682. package/state/onboarding-restart.d.ts.map +1 -0
  1683. package/state/onboarding-restart.js +8 -0
  1684. package/state/onboarding-resume.d.ts +9 -0
  1685. package/state/onboarding-resume.d.ts.map +1 -0
  1686. package/state/onboarding-resume.js +93 -0
  1687. package/state/parsers.d.ts +33 -0
  1688. package/state/parsers.d.ts.map +1 -0
  1689. package/state/parsers.js +354 -0
  1690. package/state/persistence.d.ts +111 -0
  1691. package/state/persistence.d.ts.map +1 -0
  1692. package/state/persistence.js +794 -0
  1693. package/state/shell-routing.d.ts +12 -0
  1694. package/state/shell-routing.d.ts.map +1 -0
  1695. package/state/shell-routing.js +21 -0
  1696. package/state/startup-coordinator.d.ts +158 -0
  1697. package/state/startup-coordinator.d.ts.map +1 -0
  1698. package/state/startup-coordinator.js +284 -0
  1699. package/state/startup-phase-hydrate.d.ts +74 -0
  1700. package/state/startup-phase-hydrate.d.ts.map +1 -0
  1701. package/state/startup-phase-hydrate.js +482 -0
  1702. package/state/startup-phase-poll.d.ts +61 -0
  1703. package/state/startup-phase-poll.d.ts.map +1 -0
  1704. package/state/startup-phase-poll.js +303 -0
  1705. package/state/startup-phase-restore.d.ts +55 -0
  1706. package/state/startup-phase-restore.d.ts.map +1 -0
  1707. package/state/startup-phase-restore.js +344 -0
  1708. package/state/startup-phase-runtime.d.ts +36 -0
  1709. package/state/startup-phase-runtime.d.ts.map +1 -0
  1710. package/state/startup-phase-runtime.js +152 -0
  1711. package/state/types.d.ts +652 -0
  1712. package/state/types.d.ts.map +1 -0
  1713. package/state/types.js +63 -0
  1714. package/state/ui-preferences.d.ts +3 -0
  1715. package/state/ui-preferences.d.ts.map +1 -0
  1716. package/state/ui-preferences.js +1 -0
  1717. package/state/useApp.d.ts +4 -0
  1718. package/state/useApp.d.ts.map +1 -0
  1719. package/state/useApp.js +32 -0
  1720. package/state/useAppProviderEffects.d.ts +24 -0
  1721. package/state/useAppProviderEffects.d.ts.map +1 -0
  1722. package/state/useAppProviderEffects.js +122 -0
  1723. package/state/useAppShellState.d.ts +34 -0
  1724. package/state/useAppShellState.d.ts.map +1 -0
  1725. package/state/useAppShellState.js +81 -0
  1726. package/state/useCharacterState.d.ts +52 -0
  1727. package/state/useCharacterState.d.ts.map +1 -0
  1728. package/state/useCharacterState.js +208 -0
  1729. package/state/useChatCallbacks.d.ts +170 -0
  1730. package/state/useChatCallbacks.d.ts.map +1 -0
  1731. package/state/useChatCallbacks.js +790 -0
  1732. package/state/useChatLifecycle.d.ts +104 -0
  1733. package/state/useChatLifecycle.d.ts.map +1 -0
  1734. package/state/useChatLifecycle.js +751 -0
  1735. package/state/useChatSend.d.ts +83 -0
  1736. package/state/useChatSend.d.ts.map +1 -0
  1737. package/state/useChatSend.js +951 -0
  1738. package/state/useChatState.d.ts +144 -0
  1739. package/state/useChatState.d.ts.map +1 -0
  1740. package/state/useChatState.js +251 -0
  1741. package/state/useCloudState.d.ts +73 -0
  1742. package/state/useCloudState.d.ts.map +1 -0
  1743. package/state/useCloudState.js +668 -0
  1744. package/state/useDataLoaders.d.ts +88 -0
  1745. package/state/useDataLoaders.d.ts.map +1 -0
  1746. package/state/useDataLoaders.js +394 -0
  1747. package/state/useDeveloperMode.d.ts +4 -0
  1748. package/state/useDeveloperMode.d.ts.map +1 -0
  1749. package/state/useDeveloperMode.js +54 -0
  1750. package/state/useDisplayPreferences.d.ts +23 -0
  1751. package/state/useDisplayPreferences.d.ts.map +1 -0
  1752. package/state/useDisplayPreferences.js +64 -0
  1753. package/state/useExportImportState.d.ts +32 -0
  1754. package/state/useExportImportState.d.ts.map +1 -0
  1755. package/state/useExportImportState.js +140 -0
  1756. package/state/useLifecycleState.d.ts +123 -0
  1757. package/state/useLifecycleState.d.ts.map +1 -0
  1758. package/state/useLifecycleState.js +258 -0
  1759. package/state/useLogsState.d.ts +24 -0
  1760. package/state/useLogsState.d.ts.map +1 -0
  1761. package/state/useLogsState.js +87 -0
  1762. package/state/useMiscUiState.d.ts +89 -0
  1763. package/state/useMiscUiState.d.ts.map +1 -0
  1764. package/state/useMiscUiState.js +154 -0
  1765. package/state/useNavigationState.d.ts +29 -0
  1766. package/state/useNavigationState.d.ts.map +1 -0
  1767. package/state/useNavigationState.js +122 -0
  1768. package/state/useOnboardingCallbacks.d.ts +100 -0
  1769. package/state/useOnboardingCallbacks.d.ts.map +1 -0
  1770. package/state/useOnboardingCallbacks.js +804 -0
  1771. package/state/useOnboardingCompat.d.ts +61 -0
  1772. package/state/useOnboardingCompat.d.ts.map +1 -0
  1773. package/state/useOnboardingCompat.js +110 -0
  1774. package/state/useOnboardingState.d.ts +126 -0
  1775. package/state/useOnboardingState.d.ts.map +1 -0
  1776. package/state/useOnboardingState.js +263 -0
  1777. package/state/usePairingState.d.ts +22 -0
  1778. package/state/usePairingState.d.ts.map +1 -0
  1779. package/state/usePairingState.js +73 -0
  1780. package/state/usePluginsSkillsState.d.ts +142 -0
  1781. package/state/usePluginsSkillsState.d.ts.map +1 -0
  1782. package/state/usePluginsSkillsState.js +630 -0
  1783. package/state/useStartupCoordinator.d.ts +40 -0
  1784. package/state/useStartupCoordinator.d.ts.map +1 -0
  1785. package/state/useStartupCoordinator.js +194 -0
  1786. package/state/useTriggersState.d.ts +29 -0
  1787. package/state/useTriggersState.d.ts.map +1 -0
  1788. package/state/useTriggersState.js +198 -0
  1789. package/state/useVincentState.d.ts +3 -0
  1790. package/state/useVincentState.d.ts.map +1 -0
  1791. package/state/useVincentState.js +13 -0
  1792. package/state/useWalletState.d.ts +97 -0
  1793. package/state/useWalletState.d.ts.map +1 -0
  1794. package/state/useWalletState.js +533 -0
  1795. package/state/vrm.d.ts +10 -0
  1796. package/state/vrm.d.ts.map +1 -0
  1797. package/state/vrm.js +70 -0
  1798. package/stories/layout-story-fixtures.d.ts +14 -0
  1799. package/stories/layout-story-fixtures.d.ts.map +1 -0
  1800. package/stories/layout-story-fixtures.js +33 -0
  1801. package/styles/base.css +330 -0
  1802. package/styles/brand-gold.css +471 -0
  1803. package/styles/electrobun-mac-window-drag.css +106 -0
  1804. package/styles/onboarding-game.css +568 -0
  1805. package/styles/styles.css +420 -0
  1806. package/styles/theme.css +70 -194
  1807. package/styles/xterm.css +241 -0
  1808. package/terminal/links.d.ts +9 -0
  1809. package/terminal/links.d.ts.map +1 -0
  1810. package/terminal/links.js +20 -0
  1811. package/terminal/palette.d.ts +11 -0
  1812. package/terminal/palette.d.ts.map +1 -0
  1813. package/terminal/palette.js +12 -0
  1814. package/terminal/theme.d.ts +17 -0
  1815. package/terminal/theme.d.ts.map +1 -0
  1816. package/terminal/theme.js +24 -0
  1817. package/themes/apply-theme.d.ts +24 -0
  1818. package/themes/apply-theme.d.ts.map +1 -0
  1819. package/themes/apply-theme.js +130 -0
  1820. package/types/index.d.ts +655 -0
  1821. package/types/index.d.ts.map +1 -0
  1822. package/types/index.js +4 -0
  1823. package/utils/asset-url.d.ts +24 -0
  1824. package/utils/asset-url.d.ts.map +1 -0
  1825. package/utils/asset-url.js +150 -0
  1826. package/utils/assistant-text.d.ts +2 -0
  1827. package/utils/assistant-text.d.ts.map +1 -0
  1828. package/utils/assistant-text.js +167 -0
  1829. package/utils/automation-feed-filter.d.ts +12 -0
  1830. package/utils/automation-feed-filter.d.ts.map +1 -0
  1831. package/utils/automation-feed-filter.js +21 -0
  1832. package/utils/browser-tab-kit-types.d.ts +81 -0
  1833. package/utils/browser-tab-kit-types.d.ts.map +1 -0
  1834. package/utils/browser-tab-kit-types.js +22 -0
  1835. package/utils/browser-tabs-renderer-registry.d.ts +56 -0
  1836. package/utils/browser-tabs-renderer-registry.d.ts.map +1 -0
  1837. package/utils/browser-tabs-renderer-registry.js +1223 -0
  1838. package/utils/character-message-examples.d.ts +7 -0
  1839. package/utils/character-message-examples.d.ts.map +1 -0
  1840. package/utils/character-message-examples.js +122 -0
  1841. package/utils/clipboard.d.ts +2 -0
  1842. package/utils/clipboard.d.ts.map +1 -0
  1843. package/utils/clipboard.js +38 -0
  1844. package/utils/cloud-status.d.ts +3 -0
  1845. package/utils/cloud-status.d.ts.map +1 -0
  1846. package/utils/cloud-status.js +10 -0
  1847. package/utils/cron-format.d.ts +32 -0
  1848. package/utils/cron-format.d.ts.map +1 -0
  1849. package/utils/cron-format.js +96 -0
  1850. package/utils/desktop-bug-report.d.ts +35 -0
  1851. package/utils/desktop-bug-report.d.ts.map +1 -0
  1852. package/utils/desktop-bug-report.js +47 -0
  1853. package/utils/desktop-dialogs.d.ts +24 -0
  1854. package/utils/desktop-dialogs.d.ts.map +1 -0
  1855. package/utils/desktop-dialogs.js +165 -0
  1856. package/utils/desktop-workspace.d.ts +86 -0
  1857. package/utils/desktop-workspace.d.ts.map +1 -0
  1858. package/utils/desktop-workspace.js +162 -0
  1859. package/utils/documents-upload-image.d.ts +27 -0
  1860. package/utils/documents-upload-image.d.ts.map +1 -0
  1861. package/utils/documents-upload-image.js +146 -0
  1862. package/utils/eliza-cloud-model-route.d.ts +3 -0
  1863. package/utils/eliza-cloud-model-route.d.ts.map +1 -0
  1864. package/utils/eliza-cloud-model-route.js +9 -0
  1865. package/utils/eliza-globals.d.ts +13 -0
  1866. package/utils/eliza-globals.d.ts.map +1 -0
  1867. package/utils/eliza-globals.js +48 -0
  1868. package/utils/eliza-root.d.ts +9 -0
  1869. package/utils/eliza-root.d.ts.map +1 -0
  1870. package/utils/eliza-root.js +101 -0
  1871. package/utils/env.d.ts +29 -0
  1872. package/utils/env.d.ts.map +1 -0
  1873. package/utils/env.js +49 -0
  1874. package/utils/errors.d.ts +13 -0
  1875. package/utils/errors.d.ts.map +1 -0
  1876. package/utils/errors.js +25 -0
  1877. package/utils/exec-safety.d.ts +2 -0
  1878. package/utils/exec-safety.d.ts.map +1 -0
  1879. package/utils/exec-safety.js +21 -0
  1880. package/utils/format.d.ts +66 -0
  1881. package/utils/format.d.ts.map +1 -0
  1882. package/utils/format.js +121 -0
  1883. package/utils/globals.d.ts +7 -0
  1884. package/utils/globals.d.ts.map +1 -0
  1885. package/utils/globals.js +47 -0
  1886. package/utils/index.d.ts +34 -0
  1887. package/utils/index.d.ts.map +1 -0
  1888. package/utils/index.js +33 -0
  1889. package/utils/labels.d.ts +6 -0
  1890. package/utils/labels.d.ts.map +1 -0
  1891. package/utils/labels.js +41 -0
  1892. package/utils/log-prefix.d.ts +2 -0
  1893. package/utils/log-prefix.d.ts.map +1 -0
  1894. package/utils/log-prefix.js +53 -0
  1895. package/utils/name-tokens.d.ts +24 -0
  1896. package/utils/name-tokens.d.ts.map +1 -0
  1897. package/utils/name-tokens.js +36 -0
  1898. package/utils/namespace-defaults.d.ts +6 -0
  1899. package/utils/namespace-defaults.d.ts.map +1 -0
  1900. package/utils/namespace-defaults.js +15 -0
  1901. package/utils/number-parsing.d.ts +26 -0
  1902. package/utils/number-parsing.d.ts.map +1 -0
  1903. package/utils/number-parsing.js +51 -0
  1904. package/utils/openExternalUrl.d.ts +22 -0
  1905. package/utils/openExternalUrl.d.ts.map +1 -0
  1906. package/utils/openExternalUrl.js +108 -0
  1907. package/utils/owner-name.d.ts +3 -0
  1908. package/utils/owner-name.d.ts.map +1 -0
  1909. package/utils/owner-name.js +7 -0
  1910. package/utils/rate-limiter.d.ts +32 -0
  1911. package/utils/rate-limiter.d.ts.map +1 -0
  1912. package/utils/rate-limiter.js +52 -0
  1913. package/utils/serialise.d.ts +12 -0
  1914. package/utils/serialise.d.ts.map +1 -0
  1915. package/utils/serialise.js +21 -0
  1916. package/utils/sql-compat.d.ts +10 -0
  1917. package/utils/sql-compat.d.ts.map +1 -0
  1918. package/utils/sql-compat.js +111 -0
  1919. package/utils/streaming-text.d.ts +9 -0
  1920. package/utils/streaming-text.d.ts.map +1 -0
  1921. package/utils/streaming-text.js +112 -0
  1922. package/utils/subscription-auth.d.ts +9 -0
  1923. package/utils/subscription-auth.d.ts.map +1 -0
  1924. package/utils/subscription-auth.js +48 -0
  1925. package/utils/task-schedule.d.ts +14 -0
  1926. package/utils/task-schedule.d.ts.map +1 -0
  1927. package/utils/task-schedule.js +36 -0
  1928. package/utils/trajectory-format.d.ts +6 -0
  1929. package/utils/trajectory-format.d.ts.map +1 -0
  1930. package/utils/trajectory-format.js +43 -0
  1931. package/utils/tts-debug.d.ts +9 -0
  1932. package/utils/tts-debug.d.ts.map +1 -0
  1933. package/utils/tts-debug.js +69 -0
  1934. package/utils/workflow-json.d.ts +44 -0
  1935. package/utils/workflow-json.d.ts.map +1 -0
  1936. package/utils/workflow-json.js +127 -0
  1937. package/voice/character-voice-config.d.ts +9 -0
  1938. package/voice/character-voice-config.d.ts.map +1 -0
  1939. package/voice/character-voice-config.js +83 -0
  1940. package/voice/index.d.ts +3 -0
  1941. package/voice/index.d.ts.map +1 -0
  1942. package/voice/index.js +2 -0
  1943. package/voice/types.d.ts +3 -0
  1944. package/voice/types.d.ts.map +1 -0
  1945. package/voice/types.js +1 -0
  1946. package/voice/voice-chat-playback.d.ts +32 -0
  1947. package/voice/voice-chat-playback.d.ts.map +1 -0
  1948. package/voice/voice-chat-playback.js +209 -0
  1949. package/voice/voice-chat-recording.d.ts +6 -0
  1950. package/voice/voice-chat-recording.d.ts.map +1 -0
  1951. package/voice/voice-chat-recording.js +46 -0
  1952. package/voice/voice-chat-types.d.ts +193 -0
  1953. package/voice/voice-chat-types.d.ts.map +1 -0
  1954. package/voice/voice-chat-types.js +194 -0
  1955. package/widgets/WidgetHost.d.ts +32 -0
  1956. package/widgets/WidgetHost.d.ts.map +1 -0
  1957. package/widgets/WidgetHost.js +62 -0
  1958. package/widgets/index.d.ts +7 -0
  1959. package/widgets/index.d.ts.map +1 -0
  1960. package/widgets/index.js +3 -0
  1961. package/widgets/registry-store.d.ts +23 -0
  1962. package/widgets/registry-store.d.ts.map +1 -0
  1963. package/widgets/registry-store.js +34 -0
  1964. package/widgets/registry.d.ts +44 -0
  1965. package/widgets/registry.d.ts.map +1 -0
  1966. package/widgets/registry.js +177 -0
  1967. package/widgets/types.d.ts +39 -0
  1968. package/widgets/types.d.ts.map +1 -0
  1969. package/widgets/types.js +1 -0
  1970. package/widgets/useChatSidebarVisibility.d.ts +16 -0
  1971. package/widgets/useChatSidebarVisibility.d.ts.map +1 -0
  1972. package/widgets/useChatSidebarVisibility.js +54 -0
  1973. package/widgets/visibility.d.ts +55 -0
  1974. package/widgets/visibility.d.ts.map +1 -0
  1975. package/widgets/visibility.js +90 -0
  1976. package/LICENSE +0 -21
  1977. package/components/ui/chat-atoms.d.ts +0 -26
  1978. package/components/ui/chat-atoms.d.ts.map +0 -1
  1979. package/components/ui/chat-atoms.js +0 -17
  1980. package/components/ui/search-bar.d.ts.map +0 -1
  1981. package/components/ui/search-bar.js +0 -19
  1982. package/components/ui/search-input.d.ts.map +0 -1
  1983. package/components/ui/sonner.d.ts +0 -5
  1984. package/components/ui/sonner.d.ts.map +0 -1
  1985. package/components/ui/sonner.js +0 -15
  1986. package/components/ui/tag-input.d.ts +0 -19
  1987. package/components/ui/tag-input.d.ts.map +0 -1
  1988. package/components/ui/tag-input.js +0 -28
  1989. package/components/ui/themed-select.d.ts +0 -27
  1990. package/components/ui/themed-select.d.ts.map +0 -1
  1991. package/components/ui/themed-select.js +0 -57
  1992. package/lib/button-styles.d.ts +0 -12
  1993. package/lib/button-styles.d.ts.map +0 -1
  1994. package/lib/button-styles.js +0 -11
  1995. /package/components/{ui → composites/search}/search-input.d.ts +0 -0
@@ -0,0 +1,1586 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { Capacitor } from "@capacitor/core";
3
+ import { Button, ConfirmDialog, Input, SidebarCollapsedActionButton, SidebarContent, SidebarPanel, SidebarScrollRegion, useConfirm, useIntervalWhenDocumentVisible, WorkspaceLayout, } from "@elizaos/ui";
4
+ import { ExternalLink, FolderOpen, Plus, RefreshCw, X } from "lucide-react";
5
+ import { useCallback, useEffect, useMemo, useRef, useState, } from "react";
6
+ import { client, } from "../../api/index.js";
7
+ import { MOBILE_RUNTIME_MODE_CHANGED_EVENT } from "../../events/index.js";
8
+ import { readPersistedMobileRuntimeMode } from "../../onboarding/mobile-runtime-mode.js";
9
+ import { useApp } from "../../state/index.js";
10
+ import { openExternalUrl } from "../../utils/index.js";
11
+ import { BROWSER_TAB_PRELOAD_SCRIPT, setBrowserTabsRendererImpl, } from "../../utils/browser-tabs-renderer-registry.js";
12
+ import { AppPageSidebar } from "../shared/AppPageSidebar.js";
13
+ import { CollapsibleSidebarSection } from "../shared/CollapsibleSidebarSection.js";
14
+ import { AppWorkspaceChrome, } from "../workspace/AppWorkspaceChrome.js";
15
+ import { decodeBase64ForPreview, decodeSignableMessage, formatAddressForDisplay, formatWeiForDisplay, truncateMessageForDisplay, } from "./browser-wallet-consent-format.js";
16
+ import { buildBrowserWorkspaceWalletState, } from "./browser-workspace-wallet.js";
17
+ import { getBrowserPageScopeCopy } from "./page-scoped-conversations.js";
18
+ import { useBrowserWorkspaceWalletBridge } from "./useBrowserWorkspaceWalletBridge.js";
19
+ const POLL_INTERVAL_MS = 2_500;
20
+ const BROWSER_BRIDGE_POLL_INTERVAL_MS = 4_000;
21
+ const BROWSER_WORKSPACE_AGENT_PARTITION = "persist:eliza-browser-agent";
22
+ const BROWSER_WORKSPACE_APP_PARTITION = "persist:eliza-browser-app";
23
+ // Default URL when the user opens a fresh tab via "+". The docs site
24
+ // respects prefers-color-scheme so the OS theme drives light/dark.
25
+ const BROWSER_WORKSPACE_DEFAULT_HOME_URL = "https://docs.elizaos.ai/";
26
+ const BROWSER_WORKSPACE_COLLAPSED_SECTIONS_STORAGE_KEY = "eliza:browser-workspace:collapsed-sections";
27
+ function isWebviewTagElement(value) {
28
+ if (!(value instanceof HTMLElement))
29
+ return false;
30
+ const candidate = value;
31
+ return (typeof candidate.loadURL === "function" &&
32
+ typeof candidate.reload === "function" &&
33
+ typeof candidate.executeJavascript === "function");
34
+ }
35
+ function readStoredBrowserWorkspaceCollapsedSections() {
36
+ if (typeof window === "undefined")
37
+ return new Set();
38
+ try {
39
+ const raw = window.localStorage.getItem(BROWSER_WORKSPACE_COLLAPSED_SECTIONS_STORAGE_KEY);
40
+ if (!raw)
41
+ return new Set();
42
+ const parsed = JSON.parse(raw);
43
+ if (!Array.isArray(parsed))
44
+ return new Set();
45
+ return new Set(parsed.filter((value) => value === "agent" || value === "app" || value === "user"));
46
+ }
47
+ catch {
48
+ return new Set();
49
+ }
50
+ }
51
+ function persistBrowserWorkspaceCollapsedSections(sections) {
52
+ if (typeof window === "undefined")
53
+ return;
54
+ try {
55
+ window.localStorage.setItem(BROWSER_WORKSPACE_COLLAPSED_SECTIONS_STORAGE_KEY, JSON.stringify([...sections]));
56
+ }
57
+ catch {
58
+ /* ignore sandboxed storage */
59
+ }
60
+ }
61
+ function resolveBrowserWorkspaceTabSectionKey(tab) {
62
+ const partition = tab.partition.trim().toLowerCase();
63
+ if (partition === BROWSER_WORKSPACE_AGENT_PARTITION) {
64
+ return "agent";
65
+ }
66
+ if (partition === BROWSER_WORKSPACE_APP_PARTITION) {
67
+ return "app";
68
+ }
69
+ return "user";
70
+ }
71
+ function resolveBrowserWorkspaceTabPartition(sectionKey) {
72
+ switch (sectionKey) {
73
+ case "agent":
74
+ return BROWSER_WORKSPACE_AGENT_PARTITION;
75
+ case "app":
76
+ return BROWSER_WORKSPACE_APP_PARTITION;
77
+ case "user":
78
+ return undefined;
79
+ }
80
+ }
81
+ function isBrowserBridgePlugin(plugin) {
82
+ const identifiers = [plugin.id, plugin.name, plugin.npmName]
83
+ .filter((value) => typeof value === "string")
84
+ .map((value) => value.trim().toLowerCase());
85
+ return identifiers.some((value) => value === "browser" ||
86
+ value === "browser-bridge" ||
87
+ value === "plugin-browser" ||
88
+ value === "@elizaos/plugin-browser");
89
+ }
90
+ function isBrowserWorkspaceSessionMode(mode) {
91
+ // Cloud is the only mode that still uses the snapshot-preview UX. Desktop
92
+ // mode renders <electrobun-webview> tags directly into the React tree, so
93
+ // there's no need to poll for screenshot data.
94
+ return mode === "cloud";
95
+ }
96
+ function normalizeBrowserWorkspaceInputUrl(rawUrl, t) {
97
+ const trimmed = rawUrl.trim();
98
+ if (!trimmed)
99
+ return null;
100
+ if (trimmed === "about:blank")
101
+ return trimmed;
102
+ const candidate = /^[a-zA-Z][a-zA-Z\d+.-]*:/.test(trimmed)
103
+ ? trimmed
104
+ : `https://${trimmed}`;
105
+ let parsed;
106
+ try {
107
+ parsed = new URL(candidate);
108
+ }
109
+ catch {
110
+ throw new Error(t("browserworkspace.InvalidUrl", {
111
+ defaultValue: "Enter a valid http or https URL.",
112
+ }));
113
+ }
114
+ if (parsed.protocol !== "http:" && parsed.protocol !== "https:") {
115
+ throw new Error(t("browserworkspace.UnsupportedProtocol", {
116
+ defaultValue: "Only http and https URLs are supported.",
117
+ }));
118
+ }
119
+ return parsed.toString();
120
+ }
121
+ function readBrowserWorkspaceQueryParam(name) {
122
+ if (typeof window === "undefined")
123
+ return null;
124
+ const rawSearch = window.location.search || window.location.hash.split("?")[1] || "";
125
+ const params = new URLSearchParams(rawSearch.startsWith("?") ? rawSearch.slice(1) : rawSearch);
126
+ const value = params.get(name)?.trim();
127
+ return value ? value : null;
128
+ }
129
+ function inferBrowserWorkspaceTitle(url, t) {
130
+ if (url === "about:blank") {
131
+ return t("browserworkspace.NewTab", {
132
+ defaultValue: "New tab",
133
+ });
134
+ }
135
+ try {
136
+ return (new URL(url).hostname.replace(/^www\./, "") ||
137
+ t("nav.browser", {
138
+ defaultValue: "Browser",
139
+ }));
140
+ }
141
+ catch {
142
+ return t("nav.browser", {
143
+ defaultValue: "Browser",
144
+ });
145
+ }
146
+ }
147
+ function getBrowserWorkspaceTabKind(tab) {
148
+ return tab.kind === "internal" ? "internal" : "standard";
149
+ }
150
+ function isInternalBrowserWorkspaceTab(tab) {
151
+ return getBrowserWorkspaceTabKind(tab) === "internal";
152
+ }
153
+ function isBrowserWorkspaceFrameBlockedUrl(url) {
154
+ try {
155
+ const parsed = new URL(url);
156
+ return /(^|\.)discord\.com$/i.test(parsed.hostname);
157
+ }
158
+ catch {
159
+ return false;
160
+ }
161
+ }
162
+ function getBrowserWorkspaceTabLabel(tab, t) {
163
+ const trimmedTitle = tab.title.trim();
164
+ if (trimmedTitle && trimmedTitle !== "Browser")
165
+ return trimmedTitle;
166
+ return inferBrowserWorkspaceTitle(tab.url, t);
167
+ }
168
+ function getBrowserWorkspaceTabMonogram(label) {
169
+ const alphanumeric = label.trim().replace(/[^a-z0-9]/gi, "");
170
+ return (alphanumeric[0] ?? "B").toUpperCase();
171
+ }
172
+ function getBrowserWorkspaceTabDescription(tab, mode) {
173
+ const details = [];
174
+ if (isInternalBrowserWorkspaceTab(tab)) {
175
+ details.push("Internal");
176
+ }
177
+ if (mode !== "web") {
178
+ if (tab.provider?.trim()) {
179
+ details.push(tab.provider.trim());
180
+ }
181
+ if (tab.status?.trim()) {
182
+ details.push(tab.status.trim());
183
+ }
184
+ }
185
+ details.push(tab.url);
186
+ return details.join(" · ");
187
+ }
188
+ function resolveBrowserWorkspaceSelection(tabs, selectedId) {
189
+ if (selectedId && tabs.some((tab) => tab.id === selectedId)) {
190
+ return selectedId;
191
+ }
192
+ const visibleTab = tabs.find((tab) => tab.visible);
193
+ return visibleTab?.id ?? tabs[0]?.id ?? null;
194
+ }
195
+ function parseEip155ChainId(value) {
196
+ if (typeof value === "number" && Number.isFinite(value) && value > 0) {
197
+ return value;
198
+ }
199
+ if (typeof value !== "string")
200
+ return null;
201
+ const trimmed = value.trim();
202
+ if (!trimmed)
203
+ return null;
204
+ const parsed = trimmed.startsWith("0x")
205
+ ? Number.parseInt(trimmed.slice(2), 16)
206
+ : Number(trimmed);
207
+ return Number.isFinite(parsed) && parsed > 0 ? parsed : null;
208
+ }
209
+ export function BrowserWorkspaceView() {
210
+ const { getStewardPending, getStewardStatus, setActionNotice, t, plugins, uiTheme, walletAddresses, walletConfig, } = useApp();
211
+ const [workspace, setWorkspace] = useState({
212
+ mode: "web",
213
+ tabs: [],
214
+ });
215
+ const [browserWalletState, setBrowserWalletState] = useState(() => buildBrowserWorkspaceWalletState({
216
+ pendingApprovals: 0,
217
+ stewardStatus: null,
218
+ walletAddresses,
219
+ walletConfig,
220
+ }));
221
+ const [selectedTabId, setSelectedTabId] = useState(null);
222
+ const [locationInput, setLocationInput] = useState("");
223
+ const [locationDirty, setLocationDirty] = useState(false);
224
+ const [loading, setLoading] = useState(true);
225
+ const [loadError, setLoadError] = useState(null);
226
+ const [snapshotError, setSnapshotError] = useState(null);
227
+ const [tabSnapshots, setTabSnapshots] = useState({});
228
+ const [busyAction, setBusyAction] = useState(null);
229
+ const [collapsedSections, setCollapsedSections] = useState(() => readStoredBrowserWorkspaceCollapsedSections());
230
+ const [browserBridgeAvailable, setBrowserBridgeAvailable] = useState(false);
231
+ const [browserBridgeLoading, setBrowserBridgeLoading] = useState(true);
232
+ const [browserBridgeCompanions, setBrowserBridgeCompanions] = useState([]);
233
+ const [browserBridgePackageStatus, setBrowserBridgePackageStatus] = useState(null);
234
+ const [mobileRuntimeMode, setMobileRuntimeMode] = useState(readPersistedMobileRuntimeMode);
235
+ const initialBrowseUrlRef = useRef(undefined);
236
+ const initialBrowseHandledRef = useRef(false);
237
+ const iframeRefs = useRef(new Map());
238
+ const electrobunWebviewRefs = useRef(new Map());
239
+ const pendingTabExecsRef = useRef(new Map());
240
+ const tabExecCounterRef = useRef(0);
241
+ const tabChainIdRef = useRef(new Map());
242
+ const browserWalletStateRef = useRef(null);
243
+ // Per-session "the user already allowed this domain to read accounts"
244
+ // set. EIP-1193 dApps poll `eth_accounts` after connect; without this
245
+ // the consent modal would re-prompt on every poll. Cleared when the
246
+ // workspace unmounts (i.e. app restart). A persistent vault-backed
247
+ // version is a follow-up — see Phase 2 brief.
248
+ const walletConnectAllowedDomainsRef = useRef(new Set());
249
+ // Ref-mirror of the selected tab id so the register callback (which is
250
+ // memoized on handleTabHostMessage only) can read the current selection
251
+ // without a fresh closure each render.
252
+ const selectedTabIdRef = useRef(null);
253
+ const getStewardPendingRef = useRef(getStewardPending);
254
+ const getStewardStatusRef = useRef(getStewardStatus);
255
+ const setActionNoticeRef = useRef(setActionNotice);
256
+ const tRef = useRef(t);
257
+ const walletAddressesRef = useRef(walletAddresses);
258
+ const walletConfigRef = useRef(walletConfig);
259
+ const previousSelectedTabIdRef = useRef(null);
260
+ if (typeof initialBrowseUrlRef.current === "undefined") {
261
+ const browseParam = readBrowserWorkspaceQueryParam("browse");
262
+ try {
263
+ initialBrowseUrlRef.current = browseParam
264
+ ? normalizeBrowserWorkspaceInputUrl(browseParam, t)
265
+ : null;
266
+ }
267
+ catch {
268
+ initialBrowseUrlRef.current = null;
269
+ }
270
+ }
271
+ const selectedTab = useMemo(() => workspace.tabs.find((tab) => tab.id === selectedTabId) ?? null, [selectedTabId, workspace.tabs]);
272
+ const selectedTabSnapshot = selectedTabId
273
+ ? (tabSnapshots[selectedTabId] ?? null)
274
+ : null;
275
+ const selectedTabLiveViewUrl = selectedTab?.interactiveLiveViewUrl ?? selectedTab?.liveViewUrl ?? null;
276
+ const selectedTabIsInternal = selectedTab
277
+ ? isInternalBrowserWorkspaceTab(selectedTab)
278
+ : false;
279
+ const newBrowserWorkspaceTabSeedUrl = selectedTabIsInternal
280
+ ? "about:blank"
281
+ : locationInput || BROWSER_WORKSPACE_DEFAULT_HOME_URL;
282
+ const groupedTabs = useMemo(() => workspace.tabs.reduce((groups, tab) => {
283
+ groups[resolveBrowserWorkspaceTabSectionKey(tab)].push(tab);
284
+ return groups;
285
+ }, { user: [], agent: [], app: [] }), [workspace.tabs]);
286
+ const collapsedRailTabs = useMemo(() => [...groupedTabs.user, ...groupedTabs.agent, ...groupedTabs.app], [groupedTabs]);
287
+ const primaryBrowserBridgeCompanion = useMemo(() => browserBridgeCompanions.find((companion) => companion.connectionState === "connected") ??
288
+ browserBridgeCompanions[0] ??
289
+ null, [browserBridgeCompanions]);
290
+ const browserBridgeConnected = primaryBrowserBridgeCompanion?.connectionState === "connected";
291
+ const toggleSidebarSectionCollapsed = useCallback((key) => {
292
+ setCollapsedSections((current) => {
293
+ if (key !== "agent" && key !== "app" && key !== "user") {
294
+ return current;
295
+ }
296
+ const next = new Set(current);
297
+ if (next.has(key)) {
298
+ next.delete(key);
299
+ }
300
+ else {
301
+ next.add(key);
302
+ }
303
+ return next;
304
+ });
305
+ }, []);
306
+ const browserBridgeSupported = useMemo(() => plugins.some((plugin) => isBrowserBridgePlugin(plugin)), [plugins]);
307
+ const browserBridgeUnsupportedInNativeLocalMode = Capacitor.isNativePlatform() && mobileRuntimeMode === "local";
308
+ useEffect(() => {
309
+ getStewardPendingRef.current = getStewardPending;
310
+ getStewardStatusRef.current = getStewardStatus;
311
+ setActionNoticeRef.current = setActionNotice;
312
+ tRef.current = t;
313
+ walletAddressesRef.current = walletAddresses;
314
+ walletConfigRef.current = walletConfig;
315
+ }, [
316
+ getStewardPending,
317
+ getStewardStatus,
318
+ setActionNotice,
319
+ t,
320
+ walletAddresses,
321
+ walletConfig,
322
+ ]);
323
+ useEffect(() => {
324
+ if (typeof document === "undefined")
325
+ return;
326
+ const syncRuntimeMode = () => {
327
+ setMobileRuntimeMode(readPersistedMobileRuntimeMode());
328
+ };
329
+ document.addEventListener(MOBILE_RUNTIME_MODE_CHANGED_EVENT, syncRuntimeMode);
330
+ return () => {
331
+ document.removeEventListener(MOBILE_RUNTIME_MODE_CHANGED_EVENT, syncRuntimeMode);
332
+ };
333
+ }, []);
334
+ const loadBrowserWalletState = useCallback(async () => {
335
+ try {
336
+ const stewardStatus = await getStewardStatusRef
337
+ .current()
338
+ .catch(() => null);
339
+ const resolvedWalletConfig = walletConfigRef.current ??
340
+ (await client.getWalletConfig().catch(() => null));
341
+ const pendingApprovals = stewardStatus?.connected === true
342
+ ? (await getStewardPendingRef.current().catch(() => [])).length
343
+ : 0;
344
+ const nextState = buildBrowserWorkspaceWalletState({
345
+ pendingApprovals,
346
+ stewardStatus,
347
+ walletAddresses: walletAddressesRef.current,
348
+ walletConfig: resolvedWalletConfig,
349
+ });
350
+ setBrowserWalletState(nextState);
351
+ return nextState;
352
+ }
353
+ catch (error) {
354
+ const message = error instanceof Error ? error.message : String(error);
355
+ const nextState = buildBrowserWorkspaceWalletState({
356
+ pendingApprovals: 0,
357
+ stewardStatus: {
358
+ available: false,
359
+ configured: false,
360
+ connected: false,
361
+ error: message,
362
+ },
363
+ walletAddresses: walletAddressesRef.current,
364
+ walletConfig: walletConfigRef.current,
365
+ });
366
+ setBrowserWalletState(nextState);
367
+ return nextState;
368
+ }
369
+ }, []);
370
+ const loadBrowserBridgeState = useCallback(async (options) => {
371
+ if (browserBridgeUnsupportedInNativeLocalMode) {
372
+ setBrowserBridgeCompanions([]);
373
+ setBrowserBridgePackageStatus(null);
374
+ setBrowserBridgeAvailable(false);
375
+ setBrowserBridgeLoading(false);
376
+ return;
377
+ }
378
+ if (!options?.silent) {
379
+ setBrowserBridgeLoading(true);
380
+ }
381
+ const [companionsResult, packageResult] = await Promise.allSettled([
382
+ client.fetch("/api/browser-bridge/companions"),
383
+ client.fetch("/api/browser-bridge/packages"),
384
+ ]);
385
+ if (companionsResult.status === "fulfilled") {
386
+ setBrowserBridgeCompanions(companionsResult.value.companions);
387
+ }
388
+ else {
389
+ setBrowserBridgeCompanions([]);
390
+ }
391
+ if (packageResult.status === "fulfilled") {
392
+ setBrowserBridgePackageStatus(packageResult.value.status);
393
+ }
394
+ else {
395
+ setBrowserBridgePackageStatus(null);
396
+ }
397
+ setBrowserBridgeAvailable(companionsResult.status === "fulfilled" ||
398
+ packageResult.status === "fulfilled");
399
+ if (!options?.silent) {
400
+ setBrowserBridgeLoading(false);
401
+ }
402
+ }, [browserBridgeUnsupportedInNativeLocalMode]);
403
+ const loadWorkspace = useCallback(async (options) => {
404
+ if (!options?.silent) {
405
+ setLoading(true);
406
+ }
407
+ try {
408
+ const snapshot = await client.getBrowserWorkspace();
409
+ setWorkspace(snapshot);
410
+ setLoadError(null);
411
+ setSelectedTabId((current) => resolveBrowserWorkspaceSelection(snapshot.tabs, options?.preferTabId ?? current));
412
+ }
413
+ catch (error) {
414
+ const message = error instanceof Error
415
+ ? error.message
416
+ : tRef.current("browserworkspace.LoadFailed", {
417
+ defaultValue: "Failed to load browser workspace.",
418
+ });
419
+ setLoadError(message);
420
+ }
421
+ finally {
422
+ if (!options?.silent) {
423
+ setLoading(false);
424
+ }
425
+ }
426
+ }, []);
427
+ const runBrowserWorkspaceAction = useCallback(async (actionKey, action, onErrorMessage) => {
428
+ setBusyAction(actionKey);
429
+ try {
430
+ await action();
431
+ }
432
+ catch (error) {
433
+ const message = error instanceof Error
434
+ ? error.message
435
+ : (onErrorMessage ??
436
+ tRef.current("browserworkspace.ActionFailed", {
437
+ defaultValue: "Browser action failed.",
438
+ }));
439
+ setActionNoticeRef.current(message, "error", 4_000);
440
+ }
441
+ finally {
442
+ setBusyAction(null);
443
+ }
444
+ }, []);
445
+ const loadSelectedBrowserWorkspaceSnapshot = useCallback(async (tabId, mode) => {
446
+ if (!isBrowserWorkspaceSessionMode(mode)) {
447
+ setSnapshotError(null);
448
+ return;
449
+ }
450
+ try {
451
+ const snapshot = await client.snapshotBrowserWorkspaceTab(tabId);
452
+ setTabSnapshots((current) => {
453
+ if (current[tabId] === snapshot.data) {
454
+ return current;
455
+ }
456
+ return { ...current, [tabId]: snapshot.data };
457
+ });
458
+ setSnapshotError(null);
459
+ }
460
+ catch (error) {
461
+ const message = error instanceof Error
462
+ ? error.message
463
+ : tRef.current("browserworkspace.SnapshotFailed", {
464
+ defaultValue: "Failed to load browser session preview.",
465
+ });
466
+ setSnapshotError(message);
467
+ }
468
+ }, []);
469
+ const openNewBrowserWorkspaceTab = useCallback(async (rawUrl, sectionKey = "user") => {
470
+ const url = normalizeBrowserWorkspaceInputUrl(rawUrl, t);
471
+ if (!url) {
472
+ throw new Error(t("browserworkspace.EnterUrlToOpen", {
473
+ defaultValue: "Enter a URL to open.",
474
+ }));
475
+ }
476
+ const request = {
477
+ url,
478
+ title: inferBrowserWorkspaceTitle(url, t),
479
+ partition: resolveBrowserWorkspaceTabPartition(sectionKey),
480
+ show: true,
481
+ };
482
+ const { tab } = await client.openBrowserWorkspaceTab(request);
483
+ await loadWorkspace({ preferTabId: tab.id, silent: true });
484
+ setSelectedTabId(tab.id);
485
+ setLocationInput(tab.url);
486
+ setLocationDirty(false);
487
+ }, [loadWorkspace, t]);
488
+ const activateBrowserWorkspaceTab = useCallback(async (tabId) => {
489
+ setSelectedTabId(tabId);
490
+ const { tab } = await client.showBrowserWorkspaceTab(tabId);
491
+ await loadWorkspace({ preferTabId: tab.id, silent: true });
492
+ }, [loadWorkspace]);
493
+ const navigateSelectedBrowserWorkspaceTab = useCallback(async (rawUrl) => {
494
+ if (selectedTab && isInternalBrowserWorkspaceTab(selectedTab)) {
495
+ throw new Error(t("browserworkspace.InternalTabUrlManaged", {
496
+ defaultValue: "This internal tab manages its own URL.",
497
+ }));
498
+ }
499
+ const url = normalizeBrowserWorkspaceInputUrl(rawUrl, t);
500
+ if (!url) {
501
+ throw new Error(t("browserworkspace.EnterUrlToNavigate", {
502
+ defaultValue: "Enter a URL to navigate.",
503
+ }));
504
+ }
505
+ if (!selectedTabId) {
506
+ await openNewBrowserWorkspaceTab(url);
507
+ return;
508
+ }
509
+ const { tab } = await client.navigateBrowserWorkspaceTab(selectedTabId, url);
510
+ if (workspace.mode === "web") {
511
+ // React won't re-navigate an existing iframe when only the src
512
+ // attribute changes (same key = same DOM element). Set the src
513
+ // directly via the ref in embedded web mode only.
514
+ const iframe = iframeRefs.current.get(selectedTabId);
515
+ if (iframe && iframe.src !== tab.url) {
516
+ iframe.src = tab.url;
517
+ }
518
+ }
519
+ else if (workspace.mode === "desktop") {
520
+ const tag = electrobunWebviewRefs.current.get(selectedTabId);
521
+ tag?.loadURL(tab.url);
522
+ }
523
+ await loadWorkspace({ preferTabId: tab.id, silent: true });
524
+ setLocationInput(tab.url);
525
+ setLocationDirty(false);
526
+ }, [
527
+ loadWorkspace,
528
+ openNewBrowserWorkspaceTab,
529
+ selectedTab,
530
+ selectedTabId,
531
+ t,
532
+ workspace.mode,
533
+ ]);
534
+ const registerBrowserWorkspaceIframe = useCallback((tabId, iframe) => {
535
+ if (!iframe) {
536
+ iframeRefs.current.delete(tabId);
537
+ return;
538
+ }
539
+ iframeRefs.current.set(tabId, iframe);
540
+ }, []);
541
+ // Keep a ref so the host-message handler always sees the latest wallet
542
+ // state without needing a fresh closure per render.
543
+ browserWalletStateRef.current = browserWalletState;
544
+ selectedTabIdRef.current = selectedTabId;
545
+ // Wallet-action consent (eth_sendTransaction, personal_sign, eth_sign,
546
+ // first-time eth_requestAccounts). Must be declared before
547
+ // handleTabWalletRequest references it.
548
+ const { confirm: walletActionConfirm, modalProps: walletActionModalProps } = useConfirm();
549
+ const handleTabWalletRequest = useCallback(async (req) => {
550
+ const tag = electrobunWebviewRefs.current.get(req.tabId);
551
+ const reply = (payload) => {
552
+ if (!tag)
553
+ return;
554
+ tag.executeJavascript(`window.__elizaWalletReply(${JSON.stringify(req.requestId)}, ${JSON.stringify(payload)})`);
555
+ };
556
+ const walletState = browserWalletStateRef.current;
557
+ if (!walletState) {
558
+ reply({ error: "Wallet state not yet loaded." });
559
+ return;
560
+ }
561
+ const domain = (req.hostname || "this site").trim();
562
+ try {
563
+ const evmAddress = walletState.evmAddress;
564
+ const solanaAddress = walletState.solanaAddress;
565
+ if (req.protocol === "evm") {
566
+ switch (req.method) {
567
+ case "eth_requestAccounts": {
568
+ if (!evmAddress) {
569
+ reply({
570
+ error: walletState.reason ?? "No EVM wallet connected.",
571
+ });
572
+ return;
573
+ }
574
+ const allowed = walletConnectAllowedDomainsRef.current.has(domain) ||
575
+ (await walletActionConfirm({
576
+ title: `Connect Eliza wallet to ${domain}`,
577
+ message: `${domain} is requesting your wallet address. Allow it to read ${formatAddressForDisplay(evmAddress)}?`,
578
+ confirmLabel: "Connect",
579
+ cancelLabel: "Reject",
580
+ }));
581
+ if (!allowed) {
582
+ reply({ error: "User rejected wallet connection." });
583
+ return;
584
+ }
585
+ walletConnectAllowedDomainsRef.current.add(domain);
586
+ reply({ result: [evmAddress] });
587
+ return;
588
+ }
589
+ case "eth_accounts": {
590
+ if (!evmAddress) {
591
+ reply({ result: [] });
592
+ return;
593
+ }
594
+ // Per EIP-1193, eth_accounts returns the list of accounts
595
+ // the dApp is already authorized to use; an unauthorized
596
+ // dApp must see [], not a prompt. We honour that here so
597
+ // we don't block silent polls behind a consent dialog.
598
+ if (!walletConnectAllowedDomainsRef.current.has(domain)) {
599
+ reply({ result: [] });
600
+ return;
601
+ }
602
+ reply({ result: [evmAddress] });
603
+ return;
604
+ }
605
+ case "eth_chainId": {
606
+ const chainId = tabChainIdRef.current.get(req.tabId) ?? 1;
607
+ reply({ result: `0x${chainId.toString(16)}` });
608
+ return;
609
+ }
610
+ case "wallet_switchEthereumChain": {
611
+ const arr = Array.isArray(req.params) ? req.params : [req.params];
612
+ const next = arr[0] && typeof arr[0] === "object"
613
+ ? arr[0].chainId
614
+ : null;
615
+ const chainHex = typeof next === "string" ? next : "";
616
+ const chainId = chainHex.startsWith("0x")
617
+ ? Number.parseInt(chainHex.slice(2), 16)
618
+ : Number(chainHex);
619
+ if (!Number.isFinite(chainId) || chainId <= 0) {
620
+ reply({
621
+ error: "wallet_switchEthereumChain requires a valid chainId.",
622
+ });
623
+ return;
624
+ }
625
+ tabChainIdRef.current.set(req.tabId, chainId);
626
+ reply({ result: null });
627
+ return;
628
+ }
629
+ case "personal_sign":
630
+ case "eth_sign": {
631
+ if (!walletState.messageSigningAvailable) {
632
+ reply({
633
+ error: walletState.mode === "steward"
634
+ ? "Browser message signing requires a local wallet key."
635
+ : (walletState.reason ??
636
+ "Browser wallet message signing is unavailable."),
637
+ });
638
+ return;
639
+ }
640
+ const arr = Array.isArray(req.params) ? req.params : [];
641
+ const message = typeof arr[0] === "string"
642
+ ? arr[0]
643
+ : typeof arr[1] === "string"
644
+ ? arr[1]
645
+ : null;
646
+ if (!message) {
647
+ reply({
648
+ error: "Browser wallet signing requires a message payload.",
649
+ });
650
+ return;
651
+ }
652
+ const allowed = await walletActionConfirm({
653
+ title: `${domain} wants to sign a message`,
654
+ message: `Message preview:\n\n${truncateMessageForDisplay(decodeSignableMessage(message))}\n\nAllow signing?`,
655
+ confirmLabel: "Sign",
656
+ cancelLabel: "Reject",
657
+ });
658
+ if (!allowed) {
659
+ reply({ error: "User rejected message signing." });
660
+ return;
661
+ }
662
+ const result = await client.signBrowserWalletMessage(message);
663
+ reply({ result: result.signature });
664
+ return;
665
+ }
666
+ case "eth_sendTransaction": {
667
+ if (!walletState.transactionSigningAvailable) {
668
+ reply({
669
+ error: walletState.reason ??
670
+ "Browser wallet transaction signing is unavailable.",
671
+ });
672
+ return;
673
+ }
674
+ const arr = Array.isArray(req.params) ? req.params : [req.params];
675
+ const tx = arr[0] && typeof arr[0] === "object"
676
+ ? arr[0]
677
+ : null;
678
+ if (!tx) {
679
+ reply({
680
+ error: "eth_sendTransaction requires a transaction object.",
681
+ });
682
+ return;
683
+ }
684
+ const txChainId = parseEip155ChainId(tx.chainId);
685
+ const chainId = txChainId ?? tabChainIdRef.current.get(req.tabId) ?? 1;
686
+ tabChainIdRef.current.set(req.tabId, chainId);
687
+ const value = typeof tx.value === "string"
688
+ ? tx.value.startsWith("0x")
689
+ ? BigInt(tx.value).toString()
690
+ : tx.value
691
+ : "0";
692
+ const to = typeof tx.to === "string" ? tx.to : "";
693
+ const allowed = await walletActionConfirm({
694
+ title: `${domain} wants to send a transaction`,
695
+ message: `From: ${formatAddressForDisplay(evmAddress ?? "")}\nTo: ${formatAddressForDisplay(to)}\nValue: ${formatWeiForDisplay(value)}\nChain: ${chainId}\n\nAllow this transaction?`,
696
+ confirmLabel: "Send",
697
+ cancelLabel: "Reject",
698
+ });
699
+ if (!allowed) {
700
+ reply({ error: "User rejected transaction." });
701
+ return;
702
+ }
703
+ const result = await client.sendBrowserWalletTransaction({
704
+ broadcast: true,
705
+ chainId,
706
+ to,
707
+ value,
708
+ data: typeof tx.data === "string" ? tx.data : undefined,
709
+ description: typeof tx.description === "string"
710
+ ? tx.description
711
+ : undefined,
712
+ });
713
+ reply({ result: result.txHash ?? result.txId ?? null });
714
+ const next = await loadBrowserWalletState();
715
+ browserWalletStateRef.current = next;
716
+ return;
717
+ }
718
+ default:
719
+ reply({ error: `Unsupported EVM method: ${req.method}` });
720
+ return;
721
+ }
722
+ }
723
+ if (req.protocol === "solana") {
724
+ switch (req.method) {
725
+ case "connect": {
726
+ if (!solanaAddress) {
727
+ reply({
728
+ error: walletState.reason ?? "No Solana wallet connected.",
729
+ });
730
+ return;
731
+ }
732
+ const allowed = walletConnectAllowedDomainsRef.current.has(domain) ||
733
+ (await walletActionConfirm({
734
+ title: `Connect Eliza Solana wallet to ${domain}`,
735
+ message: `${domain} is requesting your Solana address. Allow it to read ${formatAddressForDisplay(solanaAddress)}?`,
736
+ confirmLabel: "Connect",
737
+ cancelLabel: "Reject",
738
+ }));
739
+ if (!allowed) {
740
+ reply({ error: "User rejected wallet connection." });
741
+ return;
742
+ }
743
+ walletConnectAllowedDomainsRef.current.add(domain);
744
+ reply({ result: { publicKey: solanaAddress } });
745
+ return;
746
+ }
747
+ case "signMessage": {
748
+ if (!walletState.solanaMessageSigningAvailable) {
749
+ reply({
750
+ error: walletState.reason ??
751
+ "Solana message signing is unavailable.",
752
+ });
753
+ return;
754
+ }
755
+ const messageBase64 = req.params && typeof req.params === "object"
756
+ ? req.params.messageBase64
757
+ : undefined;
758
+ const message = req.params && typeof req.params === "object"
759
+ ? req.params.message
760
+ : undefined;
761
+ const previewSource = message ??
762
+ (messageBase64
763
+ ? decodeBase64ForPreview(messageBase64)
764
+ : "(no message preview available)");
765
+ const allowed = await walletActionConfirm({
766
+ title: `${domain} wants to sign a Solana message`,
767
+ message: `Message preview:\n\n${truncateMessageForDisplay(previewSource)}\n\nAllow signing?`,
768
+ confirmLabel: "Sign",
769
+ cancelLabel: "Reject",
770
+ });
771
+ if (!allowed) {
772
+ reply({ error: "User rejected message signing." });
773
+ return;
774
+ }
775
+ const result = await client.signBrowserSolanaMessage({
776
+ ...(messageBase64 ? { messageBase64 } : {}),
777
+ ...(message ? { message } : {}),
778
+ });
779
+ reply({ result });
780
+ return;
781
+ }
782
+ case "signTransaction":
783
+ case "signAndSendTransaction": {
784
+ if (!walletState.solanaTransactionSigningAvailable) {
785
+ reply({
786
+ error: walletState.reason ??
787
+ "Solana transaction signing is unavailable.",
788
+ });
789
+ return;
790
+ }
791
+ const transactionBase64 = req.params && typeof req.params === "object"
792
+ ? req.params
793
+ .transactionBase64
794
+ : undefined;
795
+ if (!transactionBase64) {
796
+ reply({
797
+ error: "Solana transaction signing requires transactionBase64.",
798
+ });
799
+ return;
800
+ }
801
+ const willBroadcast = req.method === "signAndSendTransaction";
802
+ const allowed = await walletActionConfirm({
803
+ title: `${domain} wants to ${willBroadcast ? "send" : "sign"} a Solana transaction`,
804
+ message: `From: ${formatAddressForDisplay(solanaAddress ?? "")}\n${willBroadcast ? "Will broadcast on submit." : "Returns the signed bytes to the dApp; the dApp may broadcast."}\n\nAllow?`,
805
+ confirmLabel: willBroadcast ? "Send" : "Sign",
806
+ cancelLabel: "Reject",
807
+ });
808
+ if (!allowed) {
809
+ reply({ error: "User rejected transaction." });
810
+ return;
811
+ }
812
+ const result = await client.sendBrowserSolanaTransaction({
813
+ transactionBase64,
814
+ broadcast: willBroadcast,
815
+ });
816
+ reply({ result });
817
+ return;
818
+ }
819
+ default:
820
+ reply({ error: `Unsupported Solana method: ${req.method}` });
821
+ return;
822
+ }
823
+ }
824
+ reply({ error: `Unsupported wallet protocol: ${req.protocol}` });
825
+ }
826
+ catch (error) {
827
+ const message = error instanceof Error ? error.message : String(error);
828
+ reply({ error: message });
829
+ }
830
+ }, [loadBrowserWalletState, walletActionConfirm]);
831
+ // ── Vault autofill ────────────────────────────────────────────────
832
+ // The in-tab preload sends `__elizaVaultAutofillRequest` whenever it
833
+ // detects a login form. We resolve credentials from the vault via the
834
+ // app API, prompt the user once per domain (unless they have flagged
835
+ // the domain as auto-allow), then reply with the field values to fill.
836
+ // No silent autofill: every reply that carries fields requires explicit
837
+ // user consent, either at request time or via a previously stored
838
+ // `creds.<domain>.:autoallow` entry.
839
+ const { confirm: vaultAutofillConfirm, modalProps: vaultAutofillModalProps } = useConfirm();
840
+ const handleTabVaultAutofillRequest = useCallback(async (req) => {
841
+ const tag = electrobunWebviewRefs.current.get(req.tabId);
842
+ const reply = (payload) => {
843
+ if (!tag)
844
+ return;
845
+ tag.executeJavascript(`window.__elizaVaultReply(${JSON.stringify(req.requestId)}, ${JSON.stringify(payload)})`);
846
+ };
847
+ const userHint = req.fieldHints.find((h) => h.kind === "username");
848
+ const passwordHint = req.fieldHints.find((h) => h.kind === "password");
849
+ if (!passwordHint) {
850
+ // No password slot — nothing to autofill.
851
+ reply({ fields: {} });
852
+ return;
853
+ }
854
+ try {
855
+ // Aggregate from every signed-in backend. The manager filters by
856
+ // domain (case-insensitive); external adapters list everything
857
+ // and filter client-side because their CLIs don't accept a
858
+ // domain filter.
859
+ const { logins } = await client.listSavedLogins(req.domain);
860
+ // The manager already filters by domain, but we double-check
861
+ // here against the registrable hostname. External entries with
862
+ // a missing or non-matching domain are dropped — they aren't
863
+ // valid candidates for this form.
864
+ const requestDomain = req.domain.toLowerCase();
865
+ const candidates = logins.filter((l) => typeof l.domain === "string" &&
866
+ l.domain.toLowerCase() === requestDomain);
867
+ if (candidates.length === 0) {
868
+ reply({ fields: {} });
869
+ return;
870
+ }
871
+ // Pick the most-recently-modified entry. Multi-account selection
872
+ // is a future UI improvement — at first save time only one entry
873
+ // typically exists per domain.
874
+ const sorted = [...candidates].sort((a, b) => b.updatedAt - a.updatedAt);
875
+ const chosen = sorted[0];
876
+ if (!chosen) {
877
+ reply({ fields: {} });
878
+ return;
879
+ }
880
+ const sourceLabel = chosen.source === "1password"
881
+ ? "1Password"
882
+ : chosen.source === "bitwarden"
883
+ ? "Bitwarden"
884
+ : "local vault";
885
+ const allowed = await client.getAutofillAllowed(req.domain);
886
+ const consented = allowed ||
887
+ (await vaultAutofillConfirm({
888
+ title: `Autofill ${req.domain}`,
889
+ message: `Sign in as ${chosen.username || chosen.title} from ${sourceLabel}?\n\nEliza will fill the saved username and password for this site.`,
890
+ confirmLabel: "Allow",
891
+ cancelLabel: "Deny",
892
+ }));
893
+ if (!consented) {
894
+ reply({ fields: {} });
895
+ return;
896
+ }
897
+ const reveal = await client.revealSavedLogin(chosen.source, chosen.identifier);
898
+ const fields = {};
899
+ if (userHint)
900
+ fields[userHint.selector] = reveal.username;
901
+ fields[passwordHint.selector] = reveal.password;
902
+ reply({ fields });
903
+ }
904
+ catch (error) {
905
+ const message = error instanceof Error ? error.message : String(error);
906
+ reply({ error: message });
907
+ }
908
+ }, [vaultAutofillConfirm]);
909
+ const handleTabHostMessage = useCallback((event) => {
910
+ const detail = event.detail;
911
+ if (!detail || typeof detail.type !== "string")
912
+ return;
913
+ if (detail.type === "__elizaTabExecResult" &&
914
+ typeof detail.requestId === "number") {
915
+ const pending = pendingTabExecsRef.current.get(detail.requestId);
916
+ if (!pending)
917
+ return;
918
+ pendingTabExecsRef.current.delete(detail.requestId);
919
+ clearTimeout(pending.timer);
920
+ pending.resolve({
921
+ ok: detail.ok === true,
922
+ result: detail.result,
923
+ error: detail.error,
924
+ });
925
+ return;
926
+ }
927
+ if (detail.type === "__elizaWalletRequest" &&
928
+ typeof detail.requestId === "number" &&
929
+ typeof detail.protocol === "string" &&
930
+ typeof detail.method === "string") {
931
+ const tag = isWebviewTagElement(event.currentTarget)
932
+ ? event.currentTarget
933
+ : null;
934
+ const tabId = [...electrobunWebviewRefs.current.entries()].find(([, el]) => el === tag)?.[0] ?? null;
935
+ if (!tabId)
936
+ return;
937
+ void handleTabWalletRequest({
938
+ tabId,
939
+ requestId: detail.requestId,
940
+ protocol: detail.protocol,
941
+ method: detail.method,
942
+ params: detail.params,
943
+ hostname: typeof detail.hostname === "string" ? detail.hostname : "",
944
+ });
945
+ return;
946
+ }
947
+ if (detail.type === "__elizaVaultAutofillRequest" &&
948
+ typeof detail.requestId === "number" &&
949
+ typeof detail.domain === "string" &&
950
+ typeof detail.url === "string" &&
951
+ Array.isArray(detail.fieldHints)) {
952
+ const tag = isWebviewTagElement(event.currentTarget)
953
+ ? event.currentTarget
954
+ : null;
955
+ const tabId = [...electrobunWebviewRefs.current.entries()].find(([, el]) => el === tag)?.[0] ?? null;
956
+ if (!tabId)
957
+ return;
958
+ const fieldHints = [];
959
+ for (const hint of detail.fieldHints) {
960
+ if (hint &&
961
+ (hint.kind === "username" || hint.kind === "password") &&
962
+ typeof hint.selector === "string" &&
963
+ hint.selector.length > 0) {
964
+ fieldHints.push({ kind: hint.kind, selector: hint.selector });
965
+ }
966
+ }
967
+ void handleTabVaultAutofillRequest({
968
+ tabId,
969
+ requestId: detail.requestId,
970
+ domain: detail.domain,
971
+ url: detail.url,
972
+ fieldHints,
973
+ });
974
+ }
975
+ }, [handleTabWalletRequest, handleTabVaultAutofillRequest]);
976
+ const registerBrowserWorkspaceElectrobunWebview = useCallback((tabId, element) => {
977
+ const previous = electrobunWebviewRefs.current.get(tabId);
978
+ if (previous && previous !== element) {
979
+ previous.off("host-message", handleTabHostMessage);
980
+ }
981
+ if (!element) {
982
+ electrobunWebviewRefs.current.delete(tabId);
983
+ return;
984
+ }
985
+ if (previous !== element) {
986
+ element.on("host-message", handleTabHostMessage);
987
+ // Poke the OOPIF to read fresh dimensions multiple times — the
988
+ // tag auto-syncs only on its own ResizeObserver firing, and that
989
+ // can miss the initial layout settle if the parent flex chain is
990
+ // still computing on first mount.
991
+ const sync = () => {
992
+ try {
993
+ element.syncDimensions(true);
994
+ }
995
+ catch {
996
+ // Element may have unmounted.
997
+ }
998
+ };
999
+ if (typeof requestAnimationFrame === "function") {
1000
+ requestAnimationFrame(() => requestAnimationFrame(sync));
1001
+ }
1002
+ else {
1003
+ setTimeout(sync, 0);
1004
+ }
1005
+ // Safety net for late-settling layouts (image-driven shifts, web
1006
+ // fonts loading, etc.). The poll loop in the upstream tag runs
1007
+ // every 100ms anyway — these poke a forceSync on top.
1008
+ setTimeout(sync, 250);
1009
+ setTimeout(sync, 1000);
1010
+ // Hide the native OOPIF immediately if the tag isn't the active
1011
+ // one — otherwise its native view sits over the surface and
1012
+ // intercepts clicks while React still has it in the tree.
1013
+ if (selectedTabIdRef.current && selectedTabIdRef.current !== tabId) {
1014
+ try {
1015
+ element.toggleHidden(true);
1016
+ }
1017
+ catch {
1018
+ // best-effort
1019
+ }
1020
+ }
1021
+ }
1022
+ electrobunWebviewRefs.current.set(tabId, element);
1023
+ }, [handleTabHostMessage]);
1024
+ // Track the surface container so layout changes (sidebar collapse,
1025
+ // window resize, route entry) re-poke every mounted tag. Without this
1026
+ // the OOPIF can latch at whatever rect it had on first mount because
1027
+ // Electrobun's OverlaySyncController only fires onSync when the rect
1028
+ // *changes* — a small-but-stable rect persists.
1029
+ const browserSurfaceRef = useRef(null);
1030
+ useEffect(() => {
1031
+ const surface = browserSurfaceRef.current;
1032
+ if (!surface || typeof ResizeObserver === "undefined")
1033
+ return;
1034
+ const pokeAll = () => {
1035
+ for (const element of electrobunWebviewRefs.current.values()) {
1036
+ try {
1037
+ element?.syncDimensions(true);
1038
+ }
1039
+ catch {
1040
+ // Tag may have been unmounted between observation and dispatch.
1041
+ }
1042
+ }
1043
+ };
1044
+ const observer = new ResizeObserver(() => pokeAll());
1045
+ observer.observe(surface);
1046
+ window.addEventListener("resize", pokeAll);
1047
+ return () => {
1048
+ observer.disconnect();
1049
+ window.removeEventListener("resize", pokeAll);
1050
+ };
1051
+ }, []);
1052
+ // Drive native hide/show on every tag whenever selection changes. The
1053
+ // HTML `hidden` attribute does NOT propagate to the OOPIF — only the
1054
+ // tag's `toggleHidden(bool)` method does. Without this, inactive tabs'
1055
+ // OOPIFs stay painted over the surface as native views and intercept
1056
+ // clicks intended for sibling UI (e.g. the top app nav).
1057
+ useEffect(() => {
1058
+ if (workspace.mode !== "desktop")
1059
+ return;
1060
+ for (const [tabId, element] of electrobunWebviewRefs.current.entries()) {
1061
+ if (!element)
1062
+ continue;
1063
+ try {
1064
+ element.toggleHidden(tabId !== selectedTabId);
1065
+ element.syncDimensions(true);
1066
+ }
1067
+ catch {
1068
+ // best-effort
1069
+ }
1070
+ }
1071
+ }, [selectedTabId, workspace.mode]);
1072
+ // On unmount, hide every OOPIF so leftover native views don't bleed onto
1073
+ // other routes between React's unmount and the tag's
1074
+ // disconnectedCallback firing.
1075
+ useEffect(() => {
1076
+ const refs = electrobunWebviewRefs;
1077
+ return () => {
1078
+ for (const element of refs.current.values()) {
1079
+ try {
1080
+ element?.toggleHidden(true);
1081
+ }
1082
+ catch {
1083
+ // best-effort
1084
+ }
1085
+ }
1086
+ };
1087
+ }, []);
1088
+ useEffect(() => {
1089
+ const tagsRef = electrobunWebviewRefs;
1090
+ const pendingsRef = pendingTabExecsRef;
1091
+ const counterRef = tabExecCounterRef;
1092
+ setBrowserTabsRendererImpl({
1093
+ evaluate: (id, script, timeoutMs) => new Promise((resolve) => {
1094
+ const tag = tagsRef.current.get(id);
1095
+ if (!tag) {
1096
+ resolve({
1097
+ ok: false,
1098
+ error: `browser workspace tab ${id} is not mounted in the renderer`,
1099
+ });
1100
+ return;
1101
+ }
1102
+ counterRef.current += 1;
1103
+ const requestId = counterRef.current;
1104
+ const timer = setTimeout(() => {
1105
+ if (pendingsRef.current.delete(requestId)) {
1106
+ resolve({
1107
+ ok: false,
1108
+ error: `browser workspace tab eval timed out after ${timeoutMs}ms`,
1109
+ });
1110
+ }
1111
+ }, timeoutMs);
1112
+ pendingsRef.current.set(requestId, { resolve, timer });
1113
+ tag.executeJavascript(`window.__elizaTabExec(${JSON.stringify(requestId)}, ${JSON.stringify(script)})`);
1114
+ }),
1115
+ getTabRect: async (id) => {
1116
+ const tag = tagsRef.current.get(id);
1117
+ if (!tag)
1118
+ return null;
1119
+ const rect = tag.getBoundingClientRect();
1120
+ if (rect.width <= 0 || rect.height <= 0)
1121
+ return null;
1122
+ return {
1123
+ x: rect.x,
1124
+ y: rect.y,
1125
+ width: rect.width,
1126
+ height: rect.height,
1127
+ };
1128
+ },
1129
+ });
1130
+ return () => {
1131
+ setBrowserTabsRendererImpl(null);
1132
+ for (const pending of pendingsRef.current.values()) {
1133
+ clearTimeout(pending.timer);
1134
+ pending.resolve({
1135
+ ok: false,
1136
+ error: "BrowserWorkspaceView unmounted",
1137
+ });
1138
+ }
1139
+ pendingsRef.current.clear();
1140
+ };
1141
+ }, []);
1142
+ const { postBrowserWalletReady } = useBrowserWorkspaceWalletBridge({
1143
+ iframeRefs,
1144
+ workspaceTabs: workspace.mode === "web" ? workspace.tabs : [],
1145
+ walletState: browserWalletState,
1146
+ loadWalletState: loadBrowserWalletState,
1147
+ });
1148
+ const closeBrowserWorkspaceTabById = useCallback(async (tabId) => {
1149
+ await client.closeBrowserWorkspaceTab(tabId);
1150
+ const snapshot = await client.getBrowserWorkspace();
1151
+ const nextId = snapshot.tabs.find((tab) => tab.id === selectedTabId)?.id ??
1152
+ snapshot.tabs[0]?.id ??
1153
+ null;
1154
+ if (nextId && nextId !== selectedTabId) {
1155
+ await client.showBrowserWorkspaceTab(nextId);
1156
+ }
1157
+ await loadWorkspace({
1158
+ preferTabId: nextId,
1159
+ silent: true,
1160
+ });
1161
+ }, [loadWorkspace, selectedTabId]);
1162
+ useEffect(() => {
1163
+ void loadWorkspace();
1164
+ }, [loadWorkspace]);
1165
+ useEffect(() => {
1166
+ persistBrowserWorkspaceCollapsedSections(collapsedSections);
1167
+ }, [collapsedSections]);
1168
+ useEffect(() => {
1169
+ void loadBrowserWalletState();
1170
+ }, [loadBrowserWalletState]);
1171
+ useEffect(() => {
1172
+ if (workspace.mode !== "web" || !browserBridgeSupported) {
1173
+ setBrowserBridgeAvailable(false);
1174
+ setBrowserBridgeCompanions([]);
1175
+ setBrowserBridgePackageStatus(null);
1176
+ setBrowserBridgeLoading(false);
1177
+ return;
1178
+ }
1179
+ void loadBrowserBridgeState();
1180
+ }, [browserBridgeSupported, loadBrowserBridgeState, workspace.mode]);
1181
+ useIntervalWhenDocumentVisible(() => {
1182
+ void loadWorkspace({ preferTabId: selectedTabId, silent: true });
1183
+ }, POLL_INTERVAL_MS);
1184
+ useEffect(() => {
1185
+ if (!selectedTabId || !isBrowserWorkspaceSessionMode(workspace.mode)) {
1186
+ setSnapshotError(null);
1187
+ return;
1188
+ }
1189
+ void loadSelectedBrowserWorkspaceSnapshot(selectedTabId, workspace.mode);
1190
+ }, [loadSelectedBrowserWorkspaceSnapshot, selectedTabId, workspace.mode]);
1191
+ useIntervalWhenDocumentVisible(() => {
1192
+ if (!selectedTabId || !isBrowserWorkspaceSessionMode(workspace.mode)) {
1193
+ return;
1194
+ }
1195
+ void loadSelectedBrowserWorkspaceSnapshot(selectedTabId, workspace.mode);
1196
+ }, POLL_INTERVAL_MS, Boolean(selectedTabId) && isBrowserWorkspaceSessionMode(workspace.mode));
1197
+ useIntervalWhenDocumentVisible(() => {
1198
+ void loadBrowserWalletState();
1199
+ }, 5_000);
1200
+ useIntervalWhenDocumentVisible(() => {
1201
+ void loadBrowserBridgeState({ silent: true });
1202
+ }, BROWSER_BRIDGE_POLL_INTERVAL_MS, workspace.mode === "web" && browserBridgeSupported);
1203
+ useEffect(() => {
1204
+ const currentSelectedId = selectedTab?.id ?? null;
1205
+ if (currentSelectedId !== previousSelectedTabIdRef.current) {
1206
+ previousSelectedTabIdRef.current = currentSelectedId;
1207
+ setLocationInput(selectedTab?.url ?? "");
1208
+ setLocationDirty(false);
1209
+ return;
1210
+ }
1211
+ if (!locationDirty) {
1212
+ setLocationInput(selectedTab?.url ?? "");
1213
+ }
1214
+ }, [locationDirty, selectedTab?.id, selectedTab?.url]);
1215
+ useEffect(() => {
1216
+ if (!initialBrowseUrlRef.current ||
1217
+ initialBrowseHandledRef.current ||
1218
+ loading) {
1219
+ return;
1220
+ }
1221
+ initialBrowseHandledRef.current = true;
1222
+ const existing = workspace.tabs.find((tab) => tab.url === initialBrowseUrlRef.current);
1223
+ if (existing) {
1224
+ void runBrowserWorkspaceAction(`show:${existing.id}`, async () => {
1225
+ await activateBrowserWorkspaceTab(existing.id);
1226
+ }, t("browserworkspace.OpenInitialBrowseFailed", {
1227
+ defaultValue: "Failed to activate the requested browser tab.",
1228
+ }));
1229
+ return;
1230
+ }
1231
+ void runBrowserWorkspaceAction("open:initial-browse", async () => {
1232
+ await openNewBrowserWorkspaceTab(initialBrowseUrlRef.current ?? "");
1233
+ }, t("browserworkspace.OpenInitialBrowseFailed", {
1234
+ defaultValue: "Failed to open the requested browser tab.",
1235
+ }));
1236
+ }, [
1237
+ activateBrowserWorkspaceTab,
1238
+ loading,
1239
+ openNewBrowserWorkspaceTab,
1240
+ runBrowserWorkspaceAction,
1241
+ t,
1242
+ workspace.tabs,
1243
+ ]);
1244
+ const reloadSelectedBrowserWorkspaceTab = useCallback(async () => {
1245
+ if (!selectedTab)
1246
+ return;
1247
+ if (workspace.mode === "web") {
1248
+ const iframe = iframeRefs.current.get(selectedTab.id);
1249
+ if (iframe) {
1250
+ iframe.src = selectedTab.url;
1251
+ }
1252
+ return;
1253
+ }
1254
+ if (workspace.mode === "desktop") {
1255
+ const tag = electrobunWebviewRefs.current.get(selectedTab.id);
1256
+ tag?.reload();
1257
+ return;
1258
+ }
1259
+ await client.navigateBrowserWorkspaceTab(selectedTab.id, selectedTab.url);
1260
+ }, [selectedTab, workspace.mode]);
1261
+ const installBrowserBridgeExtension = useCallback(async () => {
1262
+ await runBrowserWorkspaceAction("browser-bridge:install", async () => {
1263
+ let nextPackageStatus = browserBridgePackageStatus;
1264
+ if (!nextPackageStatus?.chromeBuildPath) {
1265
+ const buildResponse = await client.fetch("/api/browser-bridge/packages/chrome/build", {
1266
+ method: "POST",
1267
+ });
1268
+ nextPackageStatus = buildResponse.status;
1269
+ setBrowserBridgePackageStatus(buildResponse.status);
1270
+ }
1271
+ const revealResponse = await client.fetch("/api/browser-bridge/packages/open-path", {
1272
+ method: "POST",
1273
+ body: JSON.stringify({
1274
+ target: "chrome_build",
1275
+ revealOnly: true,
1276
+ }),
1277
+ });
1278
+ let openedManager = true;
1279
+ try {
1280
+ await client.fetch("/api/browser-bridge/packages/chrome/open-manager", {
1281
+ method: "POST",
1282
+ });
1283
+ }
1284
+ catch {
1285
+ openedManager = false;
1286
+ }
1287
+ setActionNoticeRef.current(openedManager
1288
+ ? t("browserworkspace.BrowserBridgeChromeReady", {
1289
+ defaultValue: "Chrome is ready. Click Load unpacked and choose {{path}}.",
1290
+ path: revealResponse.path,
1291
+ })
1292
+ : t("browserworkspace.BrowserBridgeFolderReady", {
1293
+ defaultValue: "The Agent Browser Bridge folder is ready at {{path}}. Open chrome://extensions, click Load unpacked, and choose that folder.",
1294
+ path: revealResponse.path,
1295
+ }), "success", 6_000);
1296
+ await loadBrowserBridgeState({ silent: true });
1297
+ }, t("browserworkspace.InstallBrowserBridgeFailed", {
1298
+ defaultValue: "Failed to prepare the Agent Browser Bridge extension.",
1299
+ }));
1300
+ }, [
1301
+ browserBridgePackageStatus,
1302
+ loadBrowserBridgeState,
1303
+ runBrowserWorkspaceAction,
1304
+ t,
1305
+ ]);
1306
+ const revealBrowserBridgeFolder = useCallback(async () => {
1307
+ await runBrowserWorkspaceAction("browser-bridge:reveal-folder", async () => {
1308
+ const response = await client.fetch("/api/browser-bridge/packages/open-path", {
1309
+ method: "POST",
1310
+ body: JSON.stringify({
1311
+ target: "chrome_build",
1312
+ revealOnly: true,
1313
+ }),
1314
+ });
1315
+ setActionNoticeRef.current(t("browserworkspace.BrowserBridgeFolderRevealed", {
1316
+ defaultValue: "Revealed the Agent Browser Bridge folder at {{path}}.",
1317
+ path: response.path,
1318
+ }), "success", 4_000);
1319
+ }, t("browserworkspace.OpenBrowserBridgeFolderFailed", {
1320
+ defaultValue: "Failed to reveal the Agent Browser Bridge extension folder.",
1321
+ }));
1322
+ }, [runBrowserWorkspaceAction, t]);
1323
+ const openBrowserBridgeChromeExtensions = useCallback(async () => {
1324
+ await runBrowserWorkspaceAction("browser-bridge:open-manager", async () => {
1325
+ await client.fetch("/api/browser-bridge/packages/chrome/open-manager", {
1326
+ method: "POST",
1327
+ });
1328
+ setActionNoticeRef.current(t("browserworkspace.BrowserBridgeOpenedChromeExtensions", {
1329
+ defaultValue: "Opened Chrome extensions. Click Load unpacked and choose the Agent Browser Bridge folder.",
1330
+ }), "success", 4_000);
1331
+ }, t("browserworkspace.OpenBrowserBridgeManagerFailed", {
1332
+ defaultValue: "Failed to open Chrome extensions.",
1333
+ }));
1334
+ }, [runBrowserWorkspaceAction, t]);
1335
+ const refreshBrowserBridgeConnection = useCallback(async () => {
1336
+ await runBrowserWorkspaceAction("browser-bridge:refresh", async () => {
1337
+ await loadBrowserBridgeState({ silent: true });
1338
+ setActionNoticeRef.current(t("browserworkspace.BrowserBridgeRefreshSuccess", {
1339
+ defaultValue: "Refreshed Agent Browser Bridge connection status.",
1340
+ }), "success", 3_000);
1341
+ }, t("browserworkspace.RefreshBrowserBridgeFailed", {
1342
+ defaultValue: "Failed to refresh Agent Browser Bridge status.",
1343
+ }));
1344
+ }, [loadBrowserBridgeState, runBrowserWorkspaceAction, t]);
1345
+ const browserPageScopeCopy = useMemo(() => getBrowserPageScopeCopy({
1346
+ browserBridgeConnected,
1347
+ browserBridgeInstallAvailable: browserBridgeSupported,
1348
+ browserLabel: primaryBrowserBridgeCompanion?.browser,
1349
+ profileLabel: primaryBrowserBridgeCompanion?.profileLabel,
1350
+ }), [
1351
+ browserBridgeConnected,
1352
+ browserBridgeSupported,
1353
+ primaryBrowserBridgeCompanion?.browser,
1354
+ primaryBrowserBridgeCompanion?.profileLabel,
1355
+ ]);
1356
+ const browserChatActions = !browserBridgeSupported ||
1357
+ browserBridgeUnsupportedInNativeLocalMode ||
1358
+ browserBridgeConnected ? null : (_jsxs(_Fragment, { children: [_jsx(Button, { size: "sm", disabled: busyAction !== null, onClick: () => void installBrowserBridgeExtension(), children: t("browserworkspace.InstallBrowserBridge", {
1359
+ defaultValue: "Install Agent Browser Bridge",
1360
+ }) }), _jsxs(Button, { variant: "outline", size: "sm", disabled: busyAction !== null || !browserBridgePackageStatus?.chromeBuildPath, onClick: () => void revealBrowserBridgeFolder(), children: [_jsx(FolderOpen, { className: "h-4 w-4" }), t("browserworkspace.OpenBrowserBridgeFolder", {
1361
+ defaultValue: "Open extension folder",
1362
+ })] }), _jsx(Button, { variant: "outline", size: "sm", disabled: busyAction !== null, onClick: () => void openBrowserBridgeChromeExtensions(), children: t("browserworkspace.OpenChromeExtensions", {
1363
+ defaultValue: "Open Chrome extensions",
1364
+ }) })] }));
1365
+ const browserPageScopedChatPaneProps = useMemo(() => ({
1366
+ introOverride: {
1367
+ title: browserPageScopeCopy.title,
1368
+ body: browserPageScopeCopy.body,
1369
+ actions: browserChatActions,
1370
+ },
1371
+ systemAddendumOverride: browserPageScopeCopy.systemAddendum,
1372
+ placeholderOverride: browserBridgeConnected
1373
+ ? t("browserworkspace.ChatPlaceholderConnected", {
1374
+ defaultValue: "Message",
1375
+ })
1376
+ : t("browserworkspace.ChatPlaceholderInstallBridge", {
1377
+ defaultValue: "Message",
1378
+ }),
1379
+ }), [browserBridgeConnected, browserChatActions, browserPageScopeCopy, t]);
1380
+ const tabsLabel = t("browserworkspace.Tabs", {
1381
+ defaultValue: "Tabs",
1382
+ });
1383
+ const userTabsLabel = t("browserworkspace.UserTabs", {
1384
+ defaultValue: "User Tabs",
1385
+ });
1386
+ const agentTabsLabel = t("browserworkspace.AgentTabs", {
1387
+ defaultValue: "Agent Tabs",
1388
+ });
1389
+ const appTabsLabel = t("browserworkspace.AppTabs", {
1390
+ defaultValue: "App Tabs",
1391
+ });
1392
+ const newTabLabel = t("browserworkspace.NewTab", {
1393
+ defaultValue: "New tab",
1394
+ });
1395
+ const closeTabLabel = t("browserworkspace.CloseTab", {
1396
+ defaultValue: "Close tab",
1397
+ });
1398
+ const goLabel = t("browserworkspace.Go", {
1399
+ defaultValue: "Go",
1400
+ });
1401
+ function renderBrowserWorkspaceTabRow(tab) {
1402
+ const active = tab.id === selectedTabId;
1403
+ const tabHasSessionFocus = workspace.mode === "web" ? tab.visible : active;
1404
+ const label = getBrowserWorkspaceTabLabel(tab, t);
1405
+ const description = getBrowserWorkspaceTabDescription(tab, workspace.mode);
1406
+ const tabIsInternal = isInternalBrowserWorkspaceTab(tab);
1407
+ return (_jsxs("div", { className: "group relative", children: [_jsxs("button", { type: "button", role: "tab", "aria-selected": active, "aria-current": active ? "page" : undefined, title: tab.url, onClick: () => void runBrowserWorkspaceAction(`show:${tab.id}`, async () => {
1408
+ await activateBrowserWorkspaceTab(tab.id);
1409
+ }), className: `flex w-full min-w-0 items-start gap-1.5 rounded-[var(--radius-sm)] px-1.5 py-1 text-left transition-colors ${tabIsInternal ? "pr-1.5" : "pr-7"} ${active ? "bg-bg-muted/50 text-txt" : "text-txt hover:bg-bg-muted/50"}`, children: [_jsx("span", { className: "mt-0.5 inline-flex h-3.5 w-3.5 shrink-0 items-center justify-center text-muted/70", children: tabHasSessionFocus ? (_jsxs(_Fragment, { children: [_jsx("span", { "aria-hidden": true, className: "h-2 w-2 rounded-full bg-accent shadow-[0_0_4px_var(--accent)]" }), _jsx("span", { className: "sr-only", children: t("browserworkspace.AgentActive", {
1410
+ defaultValue: "Agent is on this tab",
1411
+ }) })] })) : (_jsx("span", { className: "text-[10px] font-semibold leading-none", children: getBrowserWorkspaceTabMonogram(label) })) }), _jsxs("span", { className: "min-w-0 flex-1", children: [_jsx("span", { className: "block truncate text-xs-tight font-medium leading-snug", children: label }), _jsx("span", { className: "block truncate text-[11px] leading-snug text-muted/65", children: description })] })] }), tabIsInternal ? null : (_jsx("button", { type: "button", "aria-label": `${closeTabLabel} ${label}`, title: `${closeTabLabel}: ${label}`, className: `absolute right-0 top-1/2 inline-flex h-5 w-5 -translate-y-1/2 items-center justify-center rounded-[var(--radius-sm)] text-muted transition-opacity hover:bg-bg-muted/50 hover:text-danger focus-visible:opacity-100 ${active
1412
+ ? "opacity-100"
1413
+ : "opacity-0 group-hover:opacity-100 group-focus-within:opacity-100"}`, onClick: (event) => {
1414
+ event.preventDefault();
1415
+ event.stopPropagation();
1416
+ void runBrowserWorkspaceAction(`close:${tab.id}`, async () => {
1417
+ await closeBrowserWorkspaceTabById(tab.id);
1418
+ });
1419
+ }, children: _jsx(X, { className: "h-3 w-3" }) }))] }, tab.id));
1420
+ }
1421
+ const browserTabsSidebar = (_jsx(AppPageSidebar, { testId: "browser-workspace-sidebar", collapsible: true, contentIdentity: "browser-workspace-tabs", collapseButtonTestId: "browser-workspace-sidebar-collapse-toggle", expandButtonTestId: "browser-workspace-sidebar-expand-toggle", collapseButtonAriaLabel: t("browserworkspace.CollapseTabs", {
1422
+ defaultValue: "Collapse browser tabs",
1423
+ }), expandButtonAriaLabel: t("browserworkspace.ExpandTabs", {
1424
+ defaultValue: "Expand browser tabs",
1425
+ }), mobileTitle: _jsx(SidebarContent.SectionLabel, { children: tabsLabel }), collapsedRailAction: _jsx(SidebarCollapsedActionButton, { "aria-label": newTabLabel, onClick: () => void runBrowserWorkspaceAction("open:new", async () => {
1426
+ await openNewBrowserWorkspaceTab(newBrowserWorkspaceTabSeedUrl, "user");
1427
+ }), children: _jsx(Plus, { className: "h-4 w-4" }) }), collapsedRailItems: collapsedRailTabs.map((tab) => {
1428
+ const label = getBrowserWorkspaceTabLabel(tab, t);
1429
+ const active = tab.id === selectedTabId;
1430
+ const tabHasSessionFocus = workspace.mode === "web" ? tab.visible : active;
1431
+ return (_jsx(SidebarContent.RailItem, { "aria-label": label, title: label, active: active, indicatorTone: tabHasSessionFocus ? "accent" : undefined, onClick: () => void runBrowserWorkspaceAction(`show:${tab.id}`, async () => {
1432
+ await activateBrowserWorkspaceTab(tab.id);
1433
+ }), children: getBrowserWorkspaceTabMonogram(label) }, tab.id));
1434
+ }), "aria-label": tabsLabel, children: _jsx(SidebarScrollRegion, { className: "scrollbar-hide px-1 pb-3 pt-1 [scrollbar-width:none] [&::-webkit-scrollbar]:hidden", children: _jsx(SidebarPanel, { className: "bg-transparent gap-0 p-0 shadow-none", children: _jsxs("div", { className: "space-y-3", children: [_jsx(CollapsibleSidebarSection, { sectionKey: "user", label: userTabsLabel, collapsed: collapsedSections.has("user"), onToggleCollapsed: toggleSidebarSectionCollapsed, onAdd: () => void runBrowserWorkspaceAction("open:new", async () => {
1435
+ await openNewBrowserWorkspaceTab(newBrowserWorkspaceTabSeedUrl, "user");
1436
+ }), addLabel: newTabLabel, emptyLabel: t("browserworkspace.NoUserTabs", {
1437
+ defaultValue: "No user tabs yet.",
1438
+ }), emptyClassName: "pl-3 pr-2 py-1 text-2xs text-muted/70", bodyClassName: "space-y-0.5 pl-3", hoverActionsOnDesktop: true, testIdPrefix: "browser-tab-section", children: groupedTabs.user.length > 0 ? (_jsx("div", { role: "tablist", "aria-label": userTabsLabel, className: "space-y-1", children: groupedTabs.user.map((tab) => renderBrowserWorkspaceTabRow(tab)) })) : null }), _jsx(CollapsibleSidebarSection, { sectionKey: "agent", label: agentTabsLabel, collapsed: collapsedSections.has("agent"), onToggleCollapsed: toggleSidebarSectionCollapsed, emptyLabel: t("browserworkspace.NoAgentTabs", {
1439
+ defaultValue: "No agent tabs yet.",
1440
+ }), emptyClassName: "pl-3 pr-2 py-1 text-2xs text-muted/70", bodyClassName: "space-y-0.5 pl-3", hoverActionsOnDesktop: true, testIdPrefix: "browser-tab-section", children: groupedTabs.agent.length > 0 ? (_jsx("div", { role: "tablist", "aria-label": agentTabsLabel, className: "space-y-1", children: groupedTabs.agent.map((tab) => renderBrowserWorkspaceTabRow(tab)) })) : null }), _jsx(CollapsibleSidebarSection, { sectionKey: "app", label: appTabsLabel, collapsed: collapsedSections.has("app"), onToggleCollapsed: toggleSidebarSectionCollapsed, emptyLabel: t("browserworkspace.NoAppTabs", {
1441
+ defaultValue: "No app tabs yet.",
1442
+ }), emptyClassName: "pl-3 pr-2 py-1 text-2xs text-muted/70", bodyClassName: "space-y-0.5 pl-3", hoverActionsOnDesktop: true, testIdPrefix: "browser-tab-section", children: groupedTabs.app.length > 0 ? (_jsx("div", { role: "tablist", "aria-label": appTabsLabel, className: "space-y-1", children: groupedTabs.app.map((tab) => renderBrowserWorkspaceTabRow(tab)) })) : null })] }) }) }) }));
1443
+ const navNode = (_jsxs("div", { className: "flex items-center gap-2 border-b border-border/30 bg-card/20 px-3 py-2", children: [_jsx(Button, { variant: "ghost", size: "icon", className: "h-8 w-8", "aria-label": t("common.refresh", { defaultValue: "Refresh" }), disabled: !selectedTab || busyAction !== null, onClick: () => void runBrowserWorkspaceAction("reload:selected", async () => {
1444
+ await reloadSelectedBrowserWorkspaceTab();
1445
+ }), children: _jsx(RefreshCw, { className: "h-4 w-4" }) }), _jsx(Input, { value: locationInput, onChange: (event) => {
1446
+ setLocationInput(event.target.value);
1447
+ setLocationDirty(true);
1448
+ }, onKeyDown: (event) => {
1449
+ if (event.key === "Enter") {
1450
+ event.preventDefault();
1451
+ void runBrowserWorkspaceAction("navigate:enter", async () => {
1452
+ await navigateSelectedBrowserWorkspaceTab(locationInput);
1453
+ });
1454
+ }
1455
+ }, placeholder: t("browserworkspace.AddressPlaceholder", {
1456
+ defaultValue: selectedTabIsInternal
1457
+ ? "Internal tab URL is managed by the app"
1458
+ : "Enter a URL",
1459
+ }), "data-testid": "browser-workspace-address-input", disabled: busyAction !== null || selectedTabIsInternal, className: "h-8 min-w-0 flex-1 rounded-full border-border/40 bg-card/70 px-4 text-sm text-txt" }), _jsx(Button, { variant: "outline", size: "sm", className: "h-8 shrink-0 px-3", "aria-label": goLabel, disabled: busyAction !== null ||
1460
+ selectedTabIsInternal ||
1461
+ locationInput.trim().length === 0, onClick: () => void runBrowserWorkspaceAction("navigate:click", async () => {
1462
+ await navigateSelectedBrowserWorkspaceTab(locationInput);
1463
+ }), children: goLabel }), _jsx(Button, { variant: "ghost", size: "icon", className: "h-8 w-8", "aria-label": t("browserworkspace.OpenExternal", {
1464
+ defaultValue: "Open external",
1465
+ }), disabled: !selectedTab || busyAction !== null, onClick: () => void runBrowserWorkspaceAction("open:external", async () => {
1466
+ if (!selectedTab)
1467
+ return;
1468
+ await openExternalUrl(selectedTab.url);
1469
+ }), children: _jsx(ExternalLink, { className: "h-4 w-4" }) })] }));
1470
+ const watchBannerLabel = busyAction
1471
+ ? t("browserworkspace.Working", {
1472
+ defaultValue: "Working: {{action}}",
1473
+ action: busyAction.replace(/[:\-_]+/g, " "),
1474
+ })
1475
+ : null;
1476
+ const browserSurface = (_jsxs("div", { ref: browserSurfaceRef, className: "relative flex-1 min-h-0 overflow-hidden bg-bg", children: [watchBannerLabel ? (_jsxs("div", { className: "absolute left-3 right-3 top-2 z-20 flex items-center gap-2 rounded-md border border-border/40 bg-card/80 px-3 py-1.5 text-xs text-muted shadow-sm backdrop-blur-sm", role: "status", "aria-live": "polite", "data-testid": "browser-workspace-watch-banner", children: [_jsx("span", { "aria-hidden": true, className: "inline-block h-1.5 w-1.5 animate-pulse rounded-full bg-accent shadow-[0_0_4px_var(--accent)]" }), _jsx("span", { className: "truncate", children: watchBannerLabel })] })) : null, loadError ? (_jsx("div", { className: "absolute left-1/2 top-6 z-20 -translate-x-1/2 rounded-md border border-danger/50 bg-danger/15 px-3 py-1.5 text-xs text-danger", role: "alert", children: loadError })) : null, workspace.tabs.length === 0 ? (_jsx("div", { className: "flex h-full items-center justify-center", children: _jsxs("div", { className: "flex max-w-sm flex-col items-center gap-3 text-center", children: [_jsx("div", { className: "text-sm font-semibold text-txt", children: loading
1477
+ ? t("browserworkspace.Loading", {
1478
+ defaultValue: "Loading browser workspace",
1479
+ })
1480
+ : t("browserworkspace.EmptyTitle", {
1481
+ defaultValue: "No browser tabs yet",
1482
+ }) }), _jsx("div", { className: "text-xs leading-5 text-muted", children: isBrowserWorkspaceSessionMode(workspace.mode)
1483
+ ? t("browserworkspace.EmptySessionDescription", {
1484
+ defaultValue: "Open a page to start a real browser session. The preview here follows the session instead of embedding the target site directly.",
1485
+ })
1486
+ : t("browserworkspace.EmptyDescription", {
1487
+ defaultValue: "Open a tab and watch the agent drive the page. Wallet and signing route through your local Steward — no extension required.",
1488
+ }) }), !loading ? (_jsx(Button, { size: "sm", className: "mt-1", disabled: busyAction !== null, onClick: () => void runBrowserWorkspaceAction("open:home", async () => {
1489
+ await openNewBrowserWorkspaceTab(BROWSER_WORKSPACE_DEFAULT_HOME_URL, "user");
1490
+ }), "data-testid": "browser-workspace-open-home", children: t("browserworkspace.OpenNewTab", {
1491
+ defaultValue: "Open new tab",
1492
+ }) })) : null, !loading &&
1493
+ workspace.mode === "web" &&
1494
+ browserBridgeSupported &&
1495
+ !browserBridgeUnsupportedInNativeLocalMode ? (_jsxs("div", { className: "mt-3 flex w-full flex-col gap-3 rounded-md border border-border/40 bg-card/35 p-3 text-left", children: [_jsxs("div", { className: "flex items-start justify-between gap-3", children: [_jsxs("div", { className: "min-w-0", children: [_jsx("div", { className: "text-xs font-semibold text-txt", children: t("browserworkspace.BrowserBridgeTitle", {
1496
+ defaultValue: "Agent Browser Bridge",
1497
+ }) }), _jsx("div", { className: "mt-1 text-xs leading-5 text-muted", children: t("browserworkspace.BrowserBridgeDescription", {
1498
+ defaultValue: "The agent can drive your real Chrome tabs with the Agent Browser Bridge extension.",
1499
+ }) }), _jsxs("div", { className: "mt-1 truncate text-[11px] text-muted", children: [browserBridgeConnected
1500
+ ? t("browserworkspace.BrowserBridgeConnected", {
1501
+ defaultValue: "Connected",
1502
+ })
1503
+ : browserBridgeAvailable
1504
+ ? t("browserworkspace.BrowserBridgeAvailable", {
1505
+ defaultValue: "Extension available",
1506
+ })
1507
+ : t("browserworkspace.BrowserBridgeNotConnected", {
1508
+ defaultValue: "Not connected",
1509
+ }), browserBridgePackageStatus?.chromeBuildPath
1510
+ ? ` - ${browserBridgePackageStatus.chromeBuildPath}`
1511
+ : ""] })] }), _jsx(Button, { variant: "ghost", size: "icon", className: "h-8 w-8 shrink-0", "aria-label": t("browserworkspace.RefreshBrowserBridge", {
1512
+ defaultValue: "Refresh Agent Browser Bridge",
1513
+ }), disabled: browserBridgeLoading || busyAction !== null, onClick: () => void refreshBrowserBridgeConnection(), children: _jsx(RefreshCw, { className: "h-4 w-4" }) })] }), _jsxs("div", { className: "flex flex-wrap gap-2", children: [_jsx(Button, { size: "sm", disabled: busyAction !== null, onClick: () => void installBrowserBridgeExtension(), children: t("browserworkspace.InstallBrowserBridge", {
1514
+ defaultValue: "Install Agent Browser Bridge",
1515
+ }) }), _jsxs(Button, { variant: "outline", size: "sm", disabled: busyAction !== null ||
1516
+ !browserBridgePackageStatus?.chromeBuildPath, onClick: () => void revealBrowserBridgeFolder(), children: [_jsx(FolderOpen, { className: "h-4 w-4" }), t("browserworkspace.OpenBrowserBridgeFolder", {
1517
+ defaultValue: "Open extension folder",
1518
+ })] }), _jsx(Button, { variant: "outline", size: "sm", disabled: busyAction !== null, onClick: () => void openBrowserBridgeChromeExtensions(), children: t("browserworkspace.OpenChromeExtensions", {
1519
+ defaultValue: "Open Chrome extensions",
1520
+ }) })] })] })) : null] }) })) : workspace.mode === "desktop" ? (workspace.tabs.map((tab) => {
1521
+ const active = tab.id === selectedTabId;
1522
+ const visibilityClass = active
1523
+ ? "pointer-events-auto opacity-100"
1524
+ : "pointer-events-none opacity-0";
1525
+ return (_jsx("electrobun-webview", { ref: (el) => registerBrowserWorkspaceElectrobunWebview(tab.id, el ?? null), src: tab.url, partition: tab.partition, preload: BROWSER_TAB_PRELOAD_SCRIPT,
1526
+ // Native OOPIF hide/show is driven by `tag.toggleHidden(bool)`
1527
+ // in the selection useEffect — the HTML `hidden` attribute
1528
+ // alone is a no-op for the underlying native view, which is
1529
+ // why inactive tabs were leaking pointer events through the
1530
+ // surface.
1531
+ className: `absolute inset-0 ${visibilityClass}`, style: { display: "block" } }, tab.id));
1532
+ })) : workspace.mode === "web" ? (workspace.tabs.map((tab) => {
1533
+ const active = tab.id === selectedTabId;
1534
+ const highlighted = tab.visible;
1535
+ const frameBlocked = isBrowserWorkspaceFrameBlockedUrl(tab.url);
1536
+ const visibilityClass = active
1537
+ ? "pointer-events-auto opacity-100"
1538
+ : "pointer-events-none opacity-0";
1539
+ if (frameBlocked) {
1540
+ return (_jsx("div", { className: `absolute inset-0 flex h-full w-full items-center justify-center bg-bg px-6 text-center transition-opacity ${visibilityClass}`, children: _jsxs("div", { className: "flex max-w-md flex-col items-center gap-3", children: [_jsx("div", { className: "text-sm font-semibold text-txt", children: t("browserworkspace.FrameBlockedTitle", {
1541
+ defaultValue: "Open this site outside the iframe",
1542
+ }) }), _jsx("div", { className: "text-xs leading-5 text-muted", children: t("browserworkspace.FrameBlockedDescription", {
1543
+ defaultValue: "Discord blocks embedded browser frames. Use Eliza Desktop Browser or a connected browser profile so LifeOps can inspect the page after login.",
1544
+ }) }), _jsxs(Button, { type: "button", size: "sm", variant: "outline", disabled: busyAction !== null, onClick: () => void runBrowserWorkspaceAction(`open:external:${tab.id}`, async () => {
1545
+ await openExternalUrl(tab.url);
1546
+ }), children: [_jsx(ExternalLink, { className: "h-4 w-4" }), t("browserworkspace.OpenExternal", {
1547
+ defaultValue: "Open external",
1548
+ })] })] }) }, tab.id));
1549
+ }
1550
+ return (_jsx("iframe", { ref: (iframe) => registerBrowserWorkspaceIframe(tab.id, iframe), title: getBrowserWorkspaceTabLabel(tab, t), src: tab.url, loading: "eager", sandbox: "allow-downloads allow-forms allow-modals allow-popups allow-popups-to-escape-sandbox allow-same-origin allow-scripts", allow: "clipboard-read; clipboard-write", referrerPolicy: "strict-origin-when-cross-origin",
1551
+ // Use bg-bg + colorScheme so the iframe's UA scrollbars and any
1552
+ // pre-paint background match the outer app theme instead of
1553
+ // flashing white in dark mode. Embedded sites still pick their
1554
+ // own theme based on the OS prefers-color-scheme; we can't force
1555
+ // that cross-origin without an extension content script.
1556
+ className: `absolute inset-0 h-full w-full border-0 bg-bg transition-opacity ${visibilityClass}`, style: { colorScheme: uiTheme }, onLoad: () => highlighted
1557
+ ? postBrowserWalletReady(tab, browserWalletState)
1558
+ : undefined }, tab.id));
1559
+ })) : (_jsxs("div", { className: "flex h-full flex-1 flex-col bg-bg", children: [_jsxs("div", { className: "flex flex-wrap items-center gap-2 border-b border-border/30 bg-card/20 px-3 py-2 text-xs text-muted", children: [_jsx("span", { className: "rounded-full border border-border/40 bg-card/60 px-2 py-1 font-medium text-txt", children: t("browserworkspace.CloudSession", {
1560
+ defaultValue: "Cloud browser session",
1561
+ }) }), selectedTab?.provider ? (_jsxs("span", { children: [t("common.provider", {
1562
+ defaultValue: "Provider",
1563
+ }), `: ${selectedTab.provider}`] })) : null, selectedTab?.status ? (_jsxs("span", { children: [t("common.status", {
1564
+ defaultValue: "Status",
1565
+ }), `: ${selectedTab.status}`] })) : null, selectedTabLiveViewUrl ? (_jsx("button", { type: "button", className: "rounded-md border border-border/40 px-2 py-1 text-txt hover:bg-card/60", onClick: () => void runBrowserWorkspaceAction("open:live-session", async () => {
1566
+ await openExternalUrl(selectedTabLiveViewUrl);
1567
+ }), children: t("browserworkspace.OpenLiveSession", {
1568
+ defaultValue: "Open live session",
1569
+ }) })) : null] }), _jsxs("div", { className: "relative flex min-h-0 flex-1 items-center justify-center overflow-hidden bg-card/15", children: [snapshotError ? (_jsx("div", { className: "absolute left-1/2 top-6 z-20 -translate-x-1/2 rounded-md border border-danger/50 bg-danger/15 px-3 py-1.5 text-xs text-danger", role: "alert", children: snapshotError })) : null, selectedTabSnapshot ? (_jsx("img", { alt: selectedTab
1570
+ ? getBrowserWorkspaceTabLabel(selectedTab, t)
1571
+ : t("browserworkspace.SessionPreview", {
1572
+ defaultValue: "Browser session preview",
1573
+ }), src: `data:image/png;base64,${selectedTabSnapshot}`, className: "h-full w-full object-contain" })) : (_jsxs("div", { className: "flex max-w-sm flex-col items-center gap-2 px-6 text-center", children: [_jsx("div", { className: "text-sm font-semibold text-txt", children: t("browserworkspace.SessionPreviewPending", {
1574
+ defaultValue: "Waiting for browser session preview",
1575
+ }) }), _jsx("div", { className: "text-xs text-muted", children: t("browserworkspace.SessionPreviewPendingDescription", {
1576
+ defaultValue: "The page is running in a real browser session. A fresh preview will appear here as the session updates.",
1577
+ }) })] }))] }), selectedTab ? (_jsxs("div", { className: "border-t border-border/30 bg-card/20 px-3 py-2 text-xs text-muted", children: [_jsx("div", { className: "truncate font-medium text-txt", children: getBrowserWorkspaceTabLabel(selectedTab, t) }), _jsx("div", { className: "truncate", children: selectedTab.url }), _jsx("div", { className: "mt-1", children: selectedTabIsInternal
1578
+ ? t("browserworkspace.InternalSessionDescription", {
1579
+ defaultValue: "This is an internal app-managed browser session. Use LifeOps actions to steer it; the URL is locked in the Browser view.",
1580
+ })
1581
+ : t("browserworkspace.RealSessionDescription", {
1582
+ defaultValue: "This is a real browser session, not a raw iframe embed. Use chat or browser actions to navigate and interact with sites like Google and Discord.",
1583
+ }) })] })) : null] }))] }));
1584
+ const mainNode = (_jsx(WorkspaceLayout, { sidebar: browserTabsSidebar, contentHeader: navNode, contentHeaderClassName: "mb-0", headerPlacement: "inside", contentPadding: false, contentClassName: "overflow-hidden", contentInnerClassName: "min-h-0 overflow-hidden", mobileSidebarLabel: tabsLabel, mobileSidebarTriggerClassName: "ml-3 mt-3", children: browserSurface }));
1585
+ return (_jsxs(_Fragment, { children: [_jsx(AppWorkspaceChrome, { testId: "browser-workspace-view", main: mainNode, chatScope: "page-browser", pageScopedChatPaneProps: browserPageScopedChatPaneProps }), _jsx(ConfirmDialog, { ...vaultAutofillModalProps }), _jsx(ConfirmDialog, { ...walletActionModalProps })] }));
1586
+ }