@elizaos/app-core 2.0.0-alpha.37

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 (1082) hide show
  1. package/.turbo/turbo-build.log +2 -0
  2. package/LICENSE +21 -0
  3. package/dist/App.d.ts +5 -0
  4. package/dist/App.d.ts.map +1 -0
  5. package/dist/App.js +198 -0
  6. package/dist/actions/character.d.ts +27 -0
  7. package/dist/actions/character.d.ts.map +1 -0
  8. package/dist/actions/character.js +97 -0
  9. package/dist/actions/chat-helpers.d.ts +47 -0
  10. package/dist/actions/chat-helpers.d.ts.map +1 -0
  11. package/dist/actions/chat-helpers.js +79 -0
  12. package/dist/actions/cloud.d.ts +17 -0
  13. package/dist/actions/cloud.d.ts.map +1 -0
  14. package/dist/actions/cloud.js +43 -0
  15. package/dist/actions/index.d.ts +12 -0
  16. package/dist/actions/index.d.ts.map +1 -0
  17. package/dist/actions/index.js +11 -0
  18. package/dist/actions/lifecycle.d.ts +43 -0
  19. package/dist/actions/lifecycle.d.ts.map +1 -0
  20. package/dist/actions/lifecycle.js +118 -0
  21. package/dist/actions/onboarding.d.ts +12 -0
  22. package/dist/actions/onboarding.d.ts.map +1 -0
  23. package/dist/actions/onboarding.js +28 -0
  24. package/dist/actions/triggers.d.ts +23 -0
  25. package/dist/actions/triggers.d.ts.map +1 -0
  26. package/dist/actions/triggers.js +148 -0
  27. package/dist/api/client.d.ts +2823 -0
  28. package/dist/api/client.d.ts.map +1 -0
  29. package/dist/api/client.js +2392 -0
  30. package/dist/api/index.d.ts +2 -0
  31. package/dist/api/index.d.ts.map +1 -0
  32. package/dist/api/index.js +1 -0
  33. package/dist/autonomy/index.d.ts +48 -0
  34. package/dist/autonomy/index.d.ts.map +1 -0
  35. package/dist/autonomy/index.js +330 -0
  36. package/dist/bridge/capacitor-bridge.d.ts +153 -0
  37. package/dist/bridge/capacitor-bridge.d.ts.map +1 -0
  38. package/dist/bridge/capacitor-bridge.js +193 -0
  39. package/dist/bridge/electrobun-rpc.d.ts +19 -0
  40. package/dist/bridge/electrobun-rpc.d.ts.map +1 -0
  41. package/dist/bridge/electrobun-rpc.js +27 -0
  42. package/dist/bridge/electrobun-runtime.d.ts +3 -0
  43. package/dist/bridge/electrobun-runtime.d.ts.map +1 -0
  44. package/dist/bridge/electrobun-runtime.js +17 -0
  45. package/dist/bridge/index.d.ts +6 -0
  46. package/dist/bridge/index.d.ts.map +1 -0
  47. package/dist/bridge/index.js +5 -0
  48. package/dist/bridge/native-plugins.d.ts +82 -0
  49. package/dist/bridge/native-plugins.d.ts.map +1 -0
  50. package/dist/bridge/native-plugins.js +39 -0
  51. package/dist/bridge/plugin-bridge.d.ts +116 -0
  52. package/dist/bridge/plugin-bridge.d.ts.map +1 -0
  53. package/dist/bridge/plugin-bridge.js +203 -0
  54. package/dist/bridge/storage-bridge.d.ts +39 -0
  55. package/dist/bridge/storage-bridge.d.ts.map +1 -0
  56. package/dist/bridge/storage-bridge.js +135 -0
  57. package/dist/chat/index.d.ts +57 -0
  58. package/dist/chat/index.d.ts.map +1 -0
  59. package/dist/chat/index.js +161 -0
  60. package/dist/coding/index.d.ts +25 -0
  61. package/dist/coding/index.d.ts.map +1 -0
  62. package/dist/coding/index.js +25 -0
  63. package/dist/components/AdvancedPageView.d.ts +17 -0
  64. package/dist/components/AdvancedPageView.d.ts.map +1 -0
  65. package/dist/components/AdvancedPageView.js +137 -0
  66. package/dist/components/AgentActivityBox.d.ts +7 -0
  67. package/dist/components/AgentActivityBox.d.ts.map +1 -0
  68. package/dist/components/AgentActivityBox.js +25 -0
  69. package/dist/components/ApiKeyConfig.d.ts +26 -0
  70. package/dist/components/ApiKeyConfig.d.ts.map +1 -0
  71. package/dist/components/ApiKeyConfig.js +121 -0
  72. package/dist/components/AppsPageView.d.ts +7 -0
  73. package/dist/components/AppsPageView.d.ts.map +1 -0
  74. package/dist/components/AppsPageView.js +31 -0
  75. package/dist/components/AppsView.d.ts +8 -0
  76. package/dist/components/AppsView.d.ts.map +1 -0
  77. package/dist/components/AppsView.js +149 -0
  78. package/dist/components/AvatarLoader.d.ts +9 -0
  79. package/dist/components/AvatarLoader.d.ts.map +1 -0
  80. package/dist/components/AvatarLoader.js +45 -0
  81. package/dist/components/AvatarSelector.d.ts +23 -0
  82. package/dist/components/AvatarSelector.d.ts.map +1 -0
  83. package/dist/components/AvatarSelector.js +105 -0
  84. package/dist/components/BscTradePanel.d.ts +22 -0
  85. package/dist/components/BscTradePanel.d.ts.map +1 -0
  86. package/dist/components/BscTradePanel.js +221 -0
  87. package/dist/components/BugReportModal.d.ts +2 -0
  88. package/dist/components/BugReportModal.d.ts.map +1 -0
  89. package/dist/components/BugReportModal.js +218 -0
  90. package/dist/components/CharacterView.d.ts +8 -0
  91. package/dist/components/CharacterView.d.ts.map +1 -0
  92. package/dist/components/CharacterView.js +703 -0
  93. package/dist/components/ChatAvatar.d.ts +8 -0
  94. package/dist/components/ChatAvatar.d.ts.map +1 -0
  95. package/dist/components/ChatAvatar.js +89 -0
  96. package/dist/components/ChatComposer.d.ts +37 -0
  97. package/dist/components/ChatComposer.d.ts.map +1 -0
  98. package/dist/components/ChatComposer.js +136 -0
  99. package/dist/components/ChatMessage.d.ts +24 -0
  100. package/dist/components/ChatMessage.d.ts.map +1 -0
  101. package/dist/components/ChatMessage.js +167 -0
  102. package/dist/components/ChatModalView.d.ts +10 -0
  103. package/dist/components/ChatModalView.d.ts.map +1 -0
  104. package/dist/components/ChatModalView.js +57 -0
  105. package/dist/components/ChatView.d.ts +14 -0
  106. package/dist/components/ChatView.d.ts.map +1 -0
  107. package/dist/components/ChatView.js +511 -0
  108. package/dist/components/CloudSourceControls.d.ts +13 -0
  109. package/dist/components/CloudSourceControls.d.ts.map +1 -0
  110. package/dist/components/CloudSourceControls.js +14 -0
  111. package/dist/components/CodingAgentSettingsSection.d.ts +2 -0
  112. package/dist/components/CodingAgentSettingsSection.d.ts.map +1 -0
  113. package/dist/components/CodingAgentSettingsSection.js +268 -0
  114. package/dist/components/CommandPalette.d.ts +2 -0
  115. package/dist/components/CommandPalette.d.ts.map +1 -0
  116. package/dist/components/CommandPalette.js +181 -0
  117. package/dist/components/CompanionSceneHost.d.ts +15 -0
  118. package/dist/components/CompanionSceneHost.d.ts.map +1 -0
  119. package/dist/components/CompanionSceneHost.js +343 -0
  120. package/dist/components/CompanionShell.d.ts +17 -0
  121. package/dist/components/CompanionShell.d.ts.map +1 -0
  122. package/dist/components/CompanionShell.js +15 -0
  123. package/dist/components/CompanionView.d.ts +2 -0
  124. package/dist/components/CompanionView.d.ts.map +1 -0
  125. package/dist/components/CompanionView.js +22 -0
  126. package/dist/components/ConfigPageView.d.ts +11 -0
  127. package/dist/components/ConfigPageView.d.ts.map +1 -0
  128. package/dist/components/ConfigPageView.js +275 -0
  129. package/dist/components/ConfigSaveFooter.d.ts +8 -0
  130. package/dist/components/ConfigSaveFooter.d.ts.map +1 -0
  131. package/dist/components/ConfigSaveFooter.js +10 -0
  132. package/dist/components/ConfirmModal.d.ts +61 -0
  133. package/dist/components/ConfirmModal.d.ts.map +1 -0
  134. package/dist/components/ConfirmModal.js +164 -0
  135. package/dist/components/ConnectionFailedBanner.d.ts +6 -0
  136. package/dist/components/ConnectionFailedBanner.d.ts.map +1 -0
  137. package/dist/components/ConnectionFailedBanner.js +22 -0
  138. package/dist/components/ConnectorsPageView.d.ts +7 -0
  139. package/dist/components/ConnectorsPageView.d.ts.map +1 -0
  140. package/dist/components/ConnectorsPageView.js +8 -0
  141. package/dist/components/ConversationsSidebar.d.ts +9 -0
  142. package/dist/components/ConversationsSidebar.d.ts.map +1 -0
  143. package/dist/components/ConversationsSidebar.js +116 -0
  144. package/dist/components/CustomActionEditor.d.ts +10 -0
  145. package/dist/components/CustomActionEditor.d.ts.map +1 -0
  146. package/dist/components/CustomActionEditor.js +578 -0
  147. package/dist/components/CustomActionsPanel.d.ts +9 -0
  148. package/dist/components/CustomActionsPanel.d.ts.map +1 -0
  149. package/dist/components/CustomActionsPanel.js +107 -0
  150. package/dist/components/CustomActionsView.d.ts +2 -0
  151. package/dist/components/CustomActionsView.d.ts.map +1 -0
  152. package/dist/components/CustomActionsView.js +134 -0
  153. package/dist/components/DatabasePageView.d.ts +5 -0
  154. package/dist/components/DatabasePageView.d.ts.map +1 -0
  155. package/dist/components/DatabasePageView.js +28 -0
  156. package/dist/components/DatabaseView.d.ts +9 -0
  157. package/dist/components/DatabaseView.d.ts.map +1 -0
  158. package/dist/components/DatabaseView.js +311 -0
  159. package/dist/components/ElizaCloudDashboard.d.ts +2 -0
  160. package/dist/components/ElizaCloudDashboard.d.ts.map +1 -0
  161. package/dist/components/ElizaCloudDashboard.js +657 -0
  162. package/dist/components/EmotePicker.d.ts +2 -0
  163. package/dist/components/EmotePicker.d.ts.map +1 -0
  164. package/dist/components/EmotePicker.js +343 -0
  165. package/dist/components/ErrorBoundary.d.ts +22 -0
  166. package/dist/components/ErrorBoundary.d.ts.map +1 -0
  167. package/dist/components/ErrorBoundary.js +31 -0
  168. package/dist/components/FineTuningView.d.ts +2 -0
  169. package/dist/components/FineTuningView.d.ts.map +1 -0
  170. package/dist/components/FineTuningView.js +433 -0
  171. package/dist/components/GameView.d.ts +11 -0
  172. package/dist/components/GameView.d.ts.map +1 -0
  173. package/dist/components/GameView.js +295 -0
  174. package/dist/components/GameViewOverlay.d.ts +8 -0
  175. package/dist/components/GameViewOverlay.d.ts.map +1 -0
  176. package/dist/components/GameViewOverlay.js +70 -0
  177. package/dist/components/GlobalEmoteOverlay.d.ts +2 -0
  178. package/dist/components/GlobalEmoteOverlay.d.ts.map +1 -0
  179. package/dist/components/GlobalEmoteOverlay.js +112 -0
  180. package/dist/components/Header.d.ts +8 -0
  181. package/dist/components/Header.d.ts.map +1 -0
  182. package/dist/components/Header.js +121 -0
  183. package/dist/components/HeartbeatsView.d.ts +2 -0
  184. package/dist/components/HeartbeatsView.d.ts.map +1 -0
  185. package/dist/components/HeartbeatsView.js +378 -0
  186. package/dist/components/InventoryView.d.ts +10 -0
  187. package/dist/components/InventoryView.d.ts.map +1 -0
  188. package/dist/components/InventoryView.js +162 -0
  189. package/dist/components/KnowledgeView.d.ts +20 -0
  190. package/dist/components/KnowledgeView.d.ts.map +1 -0
  191. package/dist/components/KnowledgeView.js +480 -0
  192. package/dist/components/LanguageDropdown.d.ts +30 -0
  193. package/dist/components/LanguageDropdown.d.ts.map +1 -0
  194. package/dist/components/LanguageDropdown.js +98 -0
  195. package/dist/components/LifoMonitorPanel.d.ts +21 -0
  196. package/dist/components/LifoMonitorPanel.d.ts.map +1 -0
  197. package/dist/components/LifoMonitorPanel.js +24 -0
  198. package/dist/components/LifoSandboxView.d.ts +5 -0
  199. package/dist/components/LifoSandboxView.d.ts.map +1 -0
  200. package/dist/components/LifoSandboxView.js +333 -0
  201. package/dist/components/LoadingScreen.d.ts +13 -0
  202. package/dist/components/LoadingScreen.d.ts.map +1 -0
  203. package/dist/components/LoadingScreen.js +39 -0
  204. package/dist/components/LogsPageView.d.ts +2 -0
  205. package/dist/components/LogsPageView.d.ts.map +1 -0
  206. package/dist/components/LogsPageView.js +7 -0
  207. package/dist/components/LogsView.d.ts +5 -0
  208. package/dist/components/LogsView.d.ts.map +1 -0
  209. package/dist/components/LogsView.js +71 -0
  210. package/dist/components/MediaGalleryView.d.ts +9 -0
  211. package/dist/components/MediaGalleryView.d.ts.map +1 -0
  212. package/dist/components/MediaGalleryView.js +236 -0
  213. package/dist/components/MediaSettingsSection.d.ts +11 -0
  214. package/dist/components/MediaSettingsSection.d.ts.map +1 -0
  215. package/dist/components/MediaSettingsSection.js +329 -0
  216. package/dist/components/MessageContent.d.ts +51 -0
  217. package/dist/components/MessageContent.d.ts.map +1 -0
  218. package/dist/components/MessageContent.js +553 -0
  219. package/dist/components/OnboardingWizard.d.ts +2 -0
  220. package/dist/components/OnboardingWizard.d.ts.map +1 -0
  221. package/dist/components/OnboardingWizard.js +59 -0
  222. package/dist/components/PairingView.d.ts +5 -0
  223. package/dist/components/PairingView.d.ts.map +1 -0
  224. package/dist/components/PairingView.js +28 -0
  225. package/dist/components/PermissionsSection.d.ts +20 -0
  226. package/dist/components/PermissionsSection.d.ts.map +1 -0
  227. package/dist/components/PermissionsSection.js +368 -0
  228. package/dist/components/PluginsPageView.d.ts +5 -0
  229. package/dist/components/PluginsPageView.d.ts.map +1 -0
  230. package/dist/components/PluginsPageView.js +8 -0
  231. package/dist/components/PluginsView.d.ts +21 -0
  232. package/dist/components/PluginsView.d.ts.map +1 -0
  233. package/dist/components/PluginsView.js +1531 -0
  234. package/dist/components/ProviderSwitcher.d.ts +42 -0
  235. package/dist/components/ProviderSwitcher.d.ts.map +1 -0
  236. package/dist/components/ProviderSwitcher.js +480 -0
  237. package/dist/components/RestartBanner.d.ts +2 -0
  238. package/dist/components/RestartBanner.d.ts.map +1 -0
  239. package/dist/components/RestartBanner.js +36 -0
  240. package/dist/components/RuntimeView.d.ts +10 -0
  241. package/dist/components/RuntimeView.d.ts.map +1 -0
  242. package/dist/components/RuntimeView.js +165 -0
  243. package/dist/components/SaveCommandModal.d.ts +12 -0
  244. package/dist/components/SaveCommandModal.d.ts.map +1 -0
  245. package/dist/components/SaveCommandModal.js +84 -0
  246. package/dist/components/SecretsView.d.ts +9 -0
  247. package/dist/components/SecretsView.d.ts.map +1 -0
  248. package/dist/components/SecretsView.js +249 -0
  249. package/dist/components/SettingsView.d.ts +9 -0
  250. package/dist/components/SettingsView.d.ts.map +1 -0
  251. package/dist/components/SettingsView.js +230 -0
  252. package/dist/components/ShellOverlays.d.ts +8 -0
  253. package/dist/components/ShellOverlays.d.ts.map +1 -0
  254. package/dist/components/ShellOverlays.js +10 -0
  255. package/dist/components/ShortcutsOverlay.d.ts +2 -0
  256. package/dist/components/ShortcutsOverlay.d.ts.map +1 -0
  257. package/dist/components/ShortcutsOverlay.js +79 -0
  258. package/dist/components/SkillsView.d.ts +11 -0
  259. package/dist/components/SkillsView.d.ts.map +1 -0
  260. package/dist/components/SkillsView.js +358 -0
  261. package/dist/components/StartupFailureView.d.ts +8 -0
  262. package/dist/components/StartupFailureView.d.ts.map +1 -0
  263. package/dist/components/StartupFailureView.js +15 -0
  264. package/dist/components/StreamView.d.ts +16 -0
  265. package/dist/components/StreamView.d.ts.map +1 -0
  266. package/dist/components/StreamView.js +300 -0
  267. package/dist/components/StripeEmbeddedCheckout.d.ts +24 -0
  268. package/dist/components/StripeEmbeddedCheckout.d.ts.map +1 -0
  269. package/dist/components/StripeEmbeddedCheckout.js +101 -0
  270. package/dist/components/SubscriptionStatus.d.ts +22 -0
  271. package/dist/components/SubscriptionStatus.d.ts.map +1 -0
  272. package/dist/components/SubscriptionStatus.js +301 -0
  273. package/dist/components/SystemWarningBanner.d.ts +6 -0
  274. package/dist/components/SystemWarningBanner.d.ts.map +1 -0
  275. package/dist/components/SystemWarningBanner.js +46 -0
  276. package/dist/components/ThemeToggle.d.ts +21 -0
  277. package/dist/components/ThemeToggle.d.ts.map +1 -0
  278. package/dist/components/ThemeToggle.js +24 -0
  279. package/dist/components/TrajectoriesView.d.ts +12 -0
  280. package/dist/components/TrajectoriesView.d.ts.map +1 -0
  281. package/dist/components/TrajectoriesView.js +183 -0
  282. package/dist/components/TrajectoryDetailView.d.ts +13 -0
  283. package/dist/components/TrajectoryDetailView.d.ts.map +1 -0
  284. package/dist/components/TrajectoryDetailView.js +112 -0
  285. package/dist/components/TriggersView.d.ts +2 -0
  286. package/dist/components/TriggersView.d.ts.map +1 -0
  287. package/dist/components/TriggersView.js +1 -0
  288. package/dist/components/VectorBrowserView.d.ts +10 -0
  289. package/dist/components/VectorBrowserView.d.ts.map +1 -0
  290. package/dist/components/VectorBrowserView.js +997 -0
  291. package/dist/components/VoiceConfigView.d.ts +11 -0
  292. package/dist/components/VoiceConfigView.d.ts.map +1 -0
  293. package/dist/components/VoiceConfigView.js +329 -0
  294. package/dist/components/VrmStage.d.ts +21 -0
  295. package/dist/components/VrmStage.d.ts.map +1 -0
  296. package/dist/components/VrmStage.js +252 -0
  297. package/dist/components/WhatsAppQrOverlay.d.ts +8 -0
  298. package/dist/components/WhatsAppQrOverlay.d.ts.map +1 -0
  299. package/dist/components/WhatsAppQrOverlay.js +63 -0
  300. package/dist/components/apps/AppDetailPane.d.ts +15 -0
  301. package/dist/components/apps/AppDetailPane.d.ts.map +1 -0
  302. package/dist/components/apps/AppDetailPane.js +13 -0
  303. package/dist/components/apps/AppsCatalogGrid.d.ts +20 -0
  304. package/dist/components/apps/AppsCatalogGrid.d.ts.map +1 -0
  305. package/dist/components/apps/AppsCatalogGrid.js +18 -0
  306. package/dist/components/apps/extensions/HyperscapeAppDetailPanel.d.ts +3 -0
  307. package/dist/components/apps/extensions/HyperscapeAppDetailPanel.d.ts.map +1 -0
  308. package/dist/components/apps/extensions/HyperscapeAppDetailPanel.js +253 -0
  309. package/dist/components/apps/extensions/registry.d.ts +4 -0
  310. package/dist/components/apps/extensions/registry.d.ts.map +1 -0
  311. package/dist/components/apps/extensions/registry.js +10 -0
  312. package/dist/components/apps/extensions/types.d.ts +7 -0
  313. package/dist/components/apps/extensions/types.d.ts.map +1 -0
  314. package/dist/components/apps/extensions/types.js +1 -0
  315. package/dist/components/apps/helpers.d.ts +7 -0
  316. package/dist/components/apps/helpers.d.ts.map +1 -0
  317. package/dist/components/apps/helpers.js +46 -0
  318. package/dist/components/avatar/VrmAnimationLoader.d.ts +30 -0
  319. package/dist/components/avatar/VrmAnimationLoader.d.ts.map +1 -0
  320. package/dist/components/avatar/VrmAnimationLoader.js +99 -0
  321. package/dist/components/avatar/VrmBlinkController.d.ts +37 -0
  322. package/dist/components/avatar/VrmBlinkController.d.ts.map +1 -0
  323. package/dist/components/avatar/VrmBlinkController.js +98 -0
  324. package/dist/components/avatar/VrmCameraManager.d.ts +57 -0
  325. package/dist/components/avatar/VrmCameraManager.d.ts.map +1 -0
  326. package/dist/components/avatar/VrmCameraManager.js +277 -0
  327. package/dist/components/avatar/VrmEngine.d.ts +229 -0
  328. package/dist/components/avatar/VrmEngine.d.ts.map +1 -0
  329. package/dist/components/avatar/VrmEngine.js +1950 -0
  330. package/dist/components/avatar/VrmFootShadow.d.ts +18 -0
  331. package/dist/components/avatar/VrmFootShadow.d.ts.map +1 -0
  332. package/dist/components/avatar/VrmFootShadow.js +83 -0
  333. package/dist/components/avatar/VrmViewer.d.ts +45 -0
  334. package/dist/components/avatar/VrmViewer.d.ts.map +1 -0
  335. package/dist/components/avatar/VrmViewer.js +341 -0
  336. package/dist/components/avatar/mixamoVRMRigMap.d.ts +3 -0
  337. package/dist/components/avatar/mixamoVRMRigMap.d.ts.map +1 -0
  338. package/dist/components/avatar/mixamoVRMRigMap.js +56 -0
  339. package/dist/components/avatar/retargetMixamoFbxToVrm.d.ts +9 -0
  340. package/dist/components/avatar/retargetMixamoFbxToVrm.d.ts.map +1 -0
  341. package/dist/components/avatar/retargetMixamoFbxToVrm.js +88 -0
  342. package/dist/components/avatar/retargetMixamoGltfToVrm.d.ts +11 -0
  343. package/dist/components/avatar/retargetMixamoGltfToVrm.d.ts.map +1 -0
  344. package/dist/components/avatar/retargetMixamoGltfToVrm.js +80 -0
  345. package/dist/components/chainConfig.d.ts +84 -0
  346. package/dist/components/chainConfig.d.ts.map +1 -0
  347. package/dist/components/chainConfig.js +268 -0
  348. package/dist/components/companion/CompanionHeader.d.ts +15 -0
  349. package/dist/components/companion/CompanionHeader.d.ts.map +1 -0
  350. package/dist/components/companion/CompanionHeader.js +7 -0
  351. package/dist/components/companion/CompanionSceneHost.d.ts +2 -0
  352. package/dist/components/companion/CompanionSceneHost.d.ts.map +1 -0
  353. package/dist/components/companion/CompanionSceneHost.js +1 -0
  354. package/dist/components/companion/VrmStage.d.ts +3 -0
  355. package/dist/components/companion/VrmStage.d.ts.map +1 -0
  356. package/dist/components/companion/VrmStage.js +1 -0
  357. package/dist/components/companion/walletUtils.d.ts +95 -0
  358. package/dist/components/companion/walletUtils.d.ts.map +1 -0
  359. package/dist/components/companion/walletUtils.js +167 -0
  360. package/dist/components/companion-shell-styles.d.ts +38 -0
  361. package/dist/components/companion-shell-styles.d.ts.map +1 -0
  362. package/dist/components/companion-shell-styles.js +248 -0
  363. package/dist/components/confirm-delete-control.d.ts +16 -0
  364. package/dist/components/confirm-delete-control.d.ts.map +1 -0
  365. package/dist/components/confirm-delete-control.js +12 -0
  366. package/dist/components/conversations/ConversationListItem.d.ts +31 -0
  367. package/dist/components/conversations/ConversationListItem.d.ts.map +1 -0
  368. package/dist/components/conversations/ConversationListItem.js +52 -0
  369. package/dist/components/conversations/conversation-utils.d.ts +9 -0
  370. package/dist/components/conversations/conversation-utils.d.ts.map +1 -0
  371. package/dist/components/conversations/conversation-utils.js +138 -0
  372. package/dist/components/format.d.ts +54 -0
  373. package/dist/components/format.d.ts.map +1 -0
  374. package/dist/components/format.js +82 -0
  375. package/dist/components/index.d.ts +93 -0
  376. package/dist/components/index.d.ts.map +1 -0
  377. package/dist/components/index.js +92 -0
  378. package/dist/components/inventory/CopyableAddress.d.ts +8 -0
  379. package/dist/components/inventory/CopyableAddress.d.ts.map +1 -0
  380. package/dist/components/inventory/CopyableAddress.js +18 -0
  381. package/dist/components/inventory/InventoryToolbar.d.ts +25 -0
  382. package/dist/components/inventory/InventoryToolbar.d.ts.map +1 -0
  383. package/dist/components/inventory/InventoryToolbar.js +28 -0
  384. package/dist/components/inventory/NftGrid.d.ts +13 -0
  385. package/dist/components/inventory/NftGrid.d.ts.map +1 -0
  386. package/dist/components/inventory/NftGrid.js +29 -0
  387. package/dist/components/inventory/TokenLogo.d.ts +12 -0
  388. package/dist/components/inventory/TokenLogo.d.ts.map +1 -0
  389. package/dist/components/inventory/TokenLogo.js +33 -0
  390. package/dist/components/inventory/TokensTable.d.ts +24 -0
  391. package/dist/components/inventory/TokensTable.d.ts.map +1 -0
  392. package/dist/components/inventory/TokensTable.js +26 -0
  393. package/dist/components/inventory/constants.d.ts +52 -0
  394. package/dist/components/inventory/constants.d.ts.map +1 -0
  395. package/dist/components/inventory/constants.js +121 -0
  396. package/dist/components/inventory/index.d.ts +9 -0
  397. package/dist/components/inventory/index.d.ts.map +1 -0
  398. package/dist/components/inventory/index.js +8 -0
  399. package/dist/components/inventory/media-url.d.ts +6 -0
  400. package/dist/components/inventory/media-url.d.ts.map +1 -0
  401. package/dist/components/inventory/media-url.js +28 -0
  402. package/dist/components/inventory/useInventoryData.d.ts +53 -0
  403. package/dist/components/inventory/useInventoryData.d.ts.map +1 -0
  404. package/dist/components/inventory/useInventoryData.js +332 -0
  405. package/dist/components/knowledge-upload-image.d.ts +27 -0
  406. package/dist/components/knowledge-upload-image.d.ts.map +1 -0
  407. package/dist/components/knowledge-upload-image.js +146 -0
  408. package/dist/components/labels.d.ts +6 -0
  409. package/dist/components/labels.d.ts.map +1 -0
  410. package/dist/components/labels.js +40 -0
  411. package/dist/components/onboarding/ActivateStep.d.ts +2 -0
  412. package/dist/components/onboarding/ActivateStep.d.ts.map +1 -0
  413. package/dist/components/onboarding/ActivateStep.js +6 -0
  414. package/dist/components/onboarding/ConnectionStep.d.ts +2 -0
  415. package/dist/components/onboarding/ConnectionStep.d.ts.map +1 -0
  416. package/dist/components/onboarding/ConnectionStep.js +552 -0
  417. package/dist/components/onboarding/OnboardingPanel.d.ts +9 -0
  418. package/dist/components/onboarding/OnboardingPanel.d.ts.map +1 -0
  419. package/dist/components/onboarding/OnboardingPanel.js +24 -0
  420. package/dist/components/onboarding/OnboardingStepNav.d.ts +2 -0
  421. package/dist/components/onboarding/OnboardingStepNav.d.ts.map +1 -0
  422. package/dist/components/onboarding/OnboardingStepNav.js +14 -0
  423. package/dist/components/onboarding/PermissionsStep.d.ts +2 -0
  424. package/dist/components/onboarding/PermissionsStep.d.ts.map +1 -0
  425. package/dist/components/onboarding/PermissionsStep.js +7 -0
  426. package/dist/components/onboarding/RpcStep.d.ts +2 -0
  427. package/dist/components/onboarding/RpcStep.d.ts.map +1 -0
  428. package/dist/components/onboarding/RpcStep.js +125 -0
  429. package/dist/components/onboarding/WakeUpStep.d.ts +2 -0
  430. package/dist/components/onboarding/WakeUpStep.d.ts.map +1 -0
  431. package/dist/components/onboarding/WakeUpStep.js +82 -0
  432. package/dist/components/permissions/PermissionIcon.d.ts +4 -0
  433. package/dist/components/permissions/PermissionIcon.d.ts.map +1 -0
  434. package/dist/components/permissions/PermissionIcon.js +12 -0
  435. package/dist/components/permissions/StreamingPermissions.d.ts +20 -0
  436. package/dist/components/permissions/StreamingPermissions.d.ts.map +1 -0
  437. package/dist/components/permissions/StreamingPermissions.js +173 -0
  438. package/dist/components/plugins/showcase-data.d.ts +7 -0
  439. package/dist/components/plugins/showcase-data.d.ts.map +1 -0
  440. package/dist/components/plugins/showcase-data.js +464 -0
  441. package/dist/components/shared/ShellHeaderControls.d.ts +27 -0
  442. package/dist/components/shared/ShellHeaderControls.d.ts.map +1 -0
  443. package/dist/components/shared/ShellHeaderControls.js +60 -0
  444. package/dist/components/skeletons.d.ts +17 -0
  445. package/dist/components/skeletons.d.ts.map +1 -0
  446. package/dist/components/skeletons.js +22 -0
  447. package/dist/components/stream/ActivityFeed.d.ts +5 -0
  448. package/dist/components/stream/ActivityFeed.d.ts.map +1 -0
  449. package/dist/components/stream/ActivityFeed.js +57 -0
  450. package/dist/components/stream/AvatarPip.d.ts +5 -0
  451. package/dist/components/stream/AvatarPip.d.ts.map +1 -0
  452. package/dist/components/stream/AvatarPip.js +6 -0
  453. package/dist/components/stream/ChatContent.d.ts +6 -0
  454. package/dist/components/stream/ChatContent.d.ts.map +1 -0
  455. package/dist/components/stream/ChatContent.js +69 -0
  456. package/dist/components/stream/ChatTicker.d.ts +5 -0
  457. package/dist/components/stream/ChatTicker.d.ts.map +1 -0
  458. package/dist/components/stream/ChatTicker.js +34 -0
  459. package/dist/components/stream/IdleContent.d.ts +5 -0
  460. package/dist/components/stream/IdleContent.d.ts.map +1 -0
  461. package/dist/components/stream/IdleContent.js +17 -0
  462. package/dist/components/stream/StatusBar.d.ts +36 -0
  463. package/dist/components/stream/StatusBar.d.ts.map +1 -0
  464. package/dist/components/stream/StatusBar.js +140 -0
  465. package/dist/components/stream/StreamSettings.d.ts +33 -0
  466. package/dist/components/stream/StreamSettings.d.ts.map +1 -0
  467. package/dist/components/stream/StreamSettings.js +99 -0
  468. package/dist/components/stream/StreamTerminal.d.ts +2 -0
  469. package/dist/components/stream/StreamTerminal.d.ts.map +1 -0
  470. package/dist/components/stream/StreamTerminal.js +52 -0
  471. package/dist/components/stream/StreamVoiceConfig.d.ts +10 -0
  472. package/dist/components/stream/StreamVoiceConfig.d.ts.map +1 -0
  473. package/dist/components/stream/StreamVoiceConfig.js +88 -0
  474. package/dist/components/stream/helpers.d.ts +32 -0
  475. package/dist/components/stream/helpers.d.ts.map +1 -0
  476. package/dist/components/stream/helpers.js +110 -0
  477. package/dist/components/stream/overlays/OverlayLayer.d.ts +20 -0
  478. package/dist/components/stream/overlays/OverlayLayer.d.ts.map +1 -0
  479. package/dist/components/stream/overlays/OverlayLayer.js +24 -0
  480. package/dist/components/stream/overlays/built-in/ActionTickerWidget.d.ts +8 -0
  481. package/dist/components/stream/overlays/built-in/ActionTickerWidget.d.ts.map +1 -0
  482. package/dist/components/stream/overlays/built-in/ActionTickerWidget.js +44 -0
  483. package/dist/components/stream/overlays/built-in/AlertPopupWidget.d.ts +7 -0
  484. package/dist/components/stream/overlays/built-in/AlertPopupWidget.d.ts.map +1 -0
  485. package/dist/components/stream/overlays/built-in/AlertPopupWidget.js +62 -0
  486. package/dist/components/stream/overlays/built-in/BrandingWidget.d.ts +7 -0
  487. package/dist/components/stream/overlays/built-in/BrandingWidget.d.ts.map +1 -0
  488. package/dist/components/stream/overlays/built-in/BrandingWidget.js +36 -0
  489. package/dist/components/stream/overlays/built-in/CustomHtmlWidget.d.ts +26 -0
  490. package/dist/components/stream/overlays/built-in/CustomHtmlWidget.d.ts.map +1 -0
  491. package/dist/components/stream/overlays/built-in/CustomHtmlWidget.js +78 -0
  492. package/dist/components/stream/overlays/built-in/PeonGlassWidget.d.ts +11 -0
  493. package/dist/components/stream/overlays/built-in/PeonGlassWidget.d.ts.map +1 -0
  494. package/dist/components/stream/overlays/built-in/PeonGlassWidget.js +188 -0
  495. package/dist/components/stream/overlays/built-in/PeonHudWidget.d.ts +10 -0
  496. package/dist/components/stream/overlays/built-in/PeonHudWidget.d.ts.map +1 -0
  497. package/dist/components/stream/overlays/built-in/PeonHudWidget.js +168 -0
  498. package/dist/components/stream/overlays/built-in/PeonSakuraWidget.d.ts +11 -0
  499. package/dist/components/stream/overlays/built-in/PeonSakuraWidget.d.ts.map +1 -0
  500. package/dist/components/stream/overlays/built-in/PeonSakuraWidget.js +213 -0
  501. package/dist/components/stream/overlays/built-in/ThoughtBubbleWidget.d.ts +8 -0
  502. package/dist/components/stream/overlays/built-in/ThoughtBubbleWidget.d.ts.map +1 -0
  503. package/dist/components/stream/overlays/built-in/ThoughtBubbleWidget.js +59 -0
  504. package/dist/components/stream/overlays/built-in/ViewerCountWidget.d.ts +7 -0
  505. package/dist/components/stream/overlays/built-in/ViewerCountWidget.d.ts.map +1 -0
  506. package/dist/components/stream/overlays/built-in/ViewerCountWidget.js +34 -0
  507. package/dist/components/stream/overlays/built-in/index.d.ts +13 -0
  508. package/dist/components/stream/overlays/built-in/index.d.ts.map +1 -0
  509. package/dist/components/stream/overlays/built-in/index.js +12 -0
  510. package/dist/components/stream/overlays/registry.d.ts +11 -0
  511. package/dist/components/stream/overlays/registry.d.ts.map +1 -0
  512. package/dist/components/stream/overlays/registry.js +16 -0
  513. package/dist/components/stream/overlays/types.d.ts +67 -0
  514. package/dist/components/stream/overlays/types.d.ts.map +1 -0
  515. package/dist/components/stream/overlays/types.js +7 -0
  516. package/dist/components/stream/overlays/useOverlayLayout.d.ts +27 -0
  517. package/dist/components/stream/overlays/useOverlayLayout.d.ts.map +1 -0
  518. package/dist/components/stream/overlays/useOverlayLayout.js +162 -0
  519. package/dist/components/trajectory-format.d.ts +6 -0
  520. package/dist/components/trajectory-format.d.ts.map +1 -0
  521. package/dist/components/trajectory-format.js +43 -0
  522. package/dist/components/ui-badges.d.ts +23 -0
  523. package/dist/components/ui-badges.d.ts.map +1 -0
  524. package/dist/components/ui-badges.js +38 -0
  525. package/dist/components/ui-switch.d.ts +14 -0
  526. package/dist/components/ui-switch.d.ts.map +1 -0
  527. package/dist/components/ui-switch.js +15 -0
  528. package/dist/components/vector-browser-three.d.ts +4 -0
  529. package/dist/components/vector-browser-three.d.ts.map +1 -0
  530. package/dist/components/vector-browser-three.js +19 -0
  531. package/dist/config/config-catalog.d.ts +376 -0
  532. package/dist/config/config-catalog.d.ts.map +1 -0
  533. package/dist/config/config-catalog.js +724 -0
  534. package/dist/config/config-field.d.ts +68 -0
  535. package/dist/config/config-field.d.ts.map +1 -0
  536. package/dist/config/config-field.js +821 -0
  537. package/dist/config/config-renderer.d.ts +176 -0
  538. package/dist/config/config-renderer.d.ts.map +1 -0
  539. package/dist/config/config-renderer.js +403 -0
  540. package/dist/config/index.d.ts +5 -0
  541. package/dist/config/index.d.ts.map +1 -0
  542. package/dist/config/index.js +4 -0
  543. package/dist/config/ui-renderer.d.ts +26 -0
  544. package/dist/config/ui-renderer.d.ts.map +1 -0
  545. package/dist/config/ui-renderer.js +815 -0
  546. package/dist/config/ui-spec.d.ts +164 -0
  547. package/dist/config/ui-spec.d.ts.map +1 -0
  548. package/dist/config/ui-spec.js +13 -0
  549. package/dist/events/index.d.ts +42 -0
  550. package/dist/events/index.d.ts.map +1 -0
  551. package/dist/events/index.js +41 -0
  552. package/dist/hooks/index.d.ts +14 -0
  553. package/dist/hooks/index.d.ts.map +1 -0
  554. package/dist/hooks/index.js +13 -0
  555. package/dist/hooks/useBugReport.d.ts +14 -0
  556. package/dist/hooks/useBugReport.d.ts.map +1 -0
  557. package/dist/hooks/useBugReport.js +18 -0
  558. package/dist/hooks/useCanvasWindow.d.ts +38 -0
  559. package/dist/hooks/useCanvasWindow.d.ts.map +1 -0
  560. package/dist/hooks/useCanvasWindow.js +273 -0
  561. package/dist/hooks/useChatAvatarVoice.d.ts +10 -0
  562. package/dist/hooks/useChatAvatarVoice.d.ts.map +1 -0
  563. package/dist/hooks/useChatAvatarVoice.js +71 -0
  564. package/dist/hooks/useContextMenu.d.ts +17 -0
  565. package/dist/hooks/useContextMenu.d.ts.map +1 -0
  566. package/dist/hooks/useContextMenu.js +100 -0
  567. package/dist/hooks/useKeyboardShortcuts.d.ts +17 -0
  568. package/dist/hooks/useKeyboardShortcuts.d.ts.map +1 -0
  569. package/dist/hooks/useKeyboardShortcuts.js +67 -0
  570. package/dist/hooks/useLifoSync.d.ts +18 -0
  571. package/dist/hooks/useLifoSync.d.ts.map +1 -0
  572. package/dist/hooks/useLifoSync.js +113 -0
  573. package/dist/hooks/useMemoryMonitor.d.ts +87 -0
  574. package/dist/hooks/useMemoryMonitor.d.ts.map +1 -0
  575. package/dist/hooks/useMemoryMonitor.js +210 -0
  576. package/dist/hooks/useRenderGuard.d.ts +17 -0
  577. package/dist/hooks/useRenderGuard.d.ts.map +1 -0
  578. package/dist/hooks/useRenderGuard.js +36 -0
  579. package/dist/hooks/useRetakeCapture.d.ts +12 -0
  580. package/dist/hooks/useRetakeCapture.d.ts.map +1 -0
  581. package/dist/hooks/useRetakeCapture.js +59 -0
  582. package/dist/hooks/useStreamPopoutNavigation.d.ts +3 -0
  583. package/dist/hooks/useStreamPopoutNavigation.d.ts.map +1 -0
  584. package/dist/hooks/useStreamPopoutNavigation.js +17 -0
  585. package/dist/hooks/useTimeout.d.ts +11 -0
  586. package/dist/hooks/useTimeout.d.ts.map +1 -0
  587. package/dist/hooks/useTimeout.js +32 -0
  588. package/dist/hooks/useVoiceChat.d.ts +129 -0
  589. package/dist/hooks/useVoiceChat.d.ts.map +1 -0
  590. package/dist/hooks/useVoiceChat.js +1071 -0
  591. package/dist/hooks/useWhatsAppPairing.d.ts +11 -0
  592. package/dist/hooks/useWhatsAppPairing.d.ts.map +1 -0
  593. package/dist/hooks/useWhatsAppPairing.js +95 -0
  594. package/dist/i18n/index.d.ts +7 -0
  595. package/dist/i18n/index.d.ts.map +1 -0
  596. package/dist/i18n/index.js +53 -0
  597. package/dist/i18n/locales/en.json +1196 -0
  598. package/dist/i18n/locales/es.json +1196 -0
  599. package/dist/i18n/locales/ko.json +1196 -0
  600. package/dist/i18n/locales/pt.json +1196 -0
  601. package/dist/i18n/locales/zh-CN.json +1196 -0
  602. package/dist/i18n/messages.d.ts +6 -0
  603. package/dist/i18n/messages.d.ts.map +1 -0
  604. package/dist/i18n/messages.js +14 -0
  605. package/dist/index.d.ts +5 -0
  606. package/dist/index.d.ts.map +1 -0
  607. package/dist/index.js +6 -0
  608. package/dist/navigation/index.d.ts +27 -0
  609. package/dist/navigation/index.d.ts.map +1 -0
  610. package/dist/navigation/index.js +230 -0
  611. package/dist/package.json +161 -0
  612. package/dist/platform/browser-launch.d.ts +2 -0
  613. package/dist/platform/browser-launch.d.ts.map +1 -0
  614. package/dist/platform/browser-launch.js +109 -0
  615. package/dist/platform/index.d.ts +64 -0
  616. package/dist/platform/index.d.ts.map +1 -0
  617. package/dist/platform/index.js +155 -0
  618. package/dist/platform/init.d.ts +40 -0
  619. package/dist/platform/init.d.ts.map +1 -0
  620. package/dist/platform/init.js +158 -0
  621. package/dist/providers/index.d.ts +13 -0
  622. package/dist/providers/index.d.ts.map +1 -0
  623. package/dist/providers/index.js +72 -0
  624. package/dist/state/AppContext.d.ts +11 -0
  625. package/dist/state/AppContext.d.ts.map +1 -0
  626. package/dist/state/AppContext.js +4496 -0
  627. package/dist/state/index.d.ts +7 -0
  628. package/dist/state/index.d.ts.map +1 -0
  629. package/dist/state/index.js +6 -0
  630. package/dist/state/internal.d.ts +6 -0
  631. package/dist/state/internal.d.ts.map +1 -0
  632. package/dist/state/internal.js +5 -0
  633. package/dist/state/parsers.d.ts +26 -0
  634. package/dist/state/parsers.d.ts.map +1 -0
  635. package/dist/state/parsers.js +255 -0
  636. package/dist/state/persistence.d.ts +36 -0
  637. package/dist/state/persistence.d.ts.map +1 -0
  638. package/dist/state/persistence.js +254 -0
  639. package/dist/state/types.d.ts +402 -0
  640. package/dist/state/types.d.ts.map +1 -0
  641. package/dist/state/types.js +70 -0
  642. package/dist/state/ui-preferences.d.ts +3 -0
  643. package/dist/state/ui-preferences.d.ts.map +1 -0
  644. package/dist/state/ui-preferences.js +1 -0
  645. package/dist/state/useApp.d.ts +4 -0
  646. package/dist/state/useApp.d.ts.map +1 -0
  647. package/dist/state/useApp.js +22 -0
  648. package/dist/state/vrm.d.ts +19 -0
  649. package/dist/state/vrm.d.ts.map +1 -0
  650. package/dist/state/vrm.js +65 -0
  651. package/dist/stories/AppMockProvider.d.ts +15 -0
  652. package/dist/stories/AppMockProvider.d.ts.map +1 -0
  653. package/dist/stories/AppMockProvider.js +14 -0
  654. package/dist/styles/anime.css +6324 -0
  655. package/dist/styles/base.css +196 -0
  656. package/dist/styles/onboarding-game.css +716 -0
  657. package/dist/styles/styles.css +2085 -0
  658. package/dist/styles/xterm.css +241 -0
  659. package/dist/types/index.d.ts +657 -0
  660. package/dist/types/index.d.ts.map +1 -0
  661. package/dist/types/index.js +1 -0
  662. package/dist/utils/asset-url.d.ts +26 -0
  663. package/dist/utils/asset-url.d.ts.map +1 -0
  664. package/dist/utils/asset-url.js +99 -0
  665. package/dist/utils/assistant-text.d.ts +2 -0
  666. package/dist/utils/assistant-text.d.ts.map +1 -0
  667. package/dist/utils/assistant-text.js +161 -0
  668. package/dist/utils/clipboard.d.ts +2 -0
  669. package/dist/utils/clipboard.d.ts.map +1 -0
  670. package/dist/utils/clipboard.js +38 -0
  671. package/dist/utils/desktop-dialogs.d.ts +19 -0
  672. package/dist/utils/desktop-dialogs.d.ts.map +1 -0
  673. package/dist/utils/desktop-dialogs.js +50 -0
  674. package/dist/utils/index.d.ts +7 -0
  675. package/dist/utils/index.d.ts.map +1 -0
  676. package/dist/utils/index.js +6 -0
  677. package/dist/utils/number-parsing.d.ts +44 -0
  678. package/dist/utils/number-parsing.d.ts.map +1 -0
  679. package/dist/utils/number-parsing.js +56 -0
  680. package/dist/utils/openExternalUrl.d.ts +2 -0
  681. package/dist/utils/openExternalUrl.d.ts.map +1 -0
  682. package/dist/utils/openExternalUrl.js +17 -0
  683. package/dist/utils/spoken-text.d.ts +2 -0
  684. package/dist/utils/spoken-text.d.ts.map +1 -0
  685. package/dist/utils/spoken-text.js +56 -0
  686. package/dist/utils/streaming-text.d.ts +3 -0
  687. package/dist/utils/streaming-text.d.ts.map +1 -0
  688. package/dist/utils/streaming-text.js +87 -0
  689. package/dist/voice/index.d.ts +2 -0
  690. package/dist/voice/index.d.ts.map +1 -0
  691. package/dist/voice/index.js +1 -0
  692. package/dist/voice/types.d.ts +25 -0
  693. package/dist/voice/types.d.ts.map +1 -0
  694. package/dist/voice/types.js +166 -0
  695. package/package.json +86 -0
  696. package/src/App.tsx +469 -0
  697. package/src/actions/character.ts +113 -0
  698. package/src/actions/chat-helpers.ts +100 -0
  699. package/src/actions/cloud.ts +59 -0
  700. package/src/actions/index.ts +12 -0
  701. package/src/actions/lifecycle.ts +175 -0
  702. package/src/actions/onboarding.ts +46 -0
  703. package/src/actions/triggers.ts +190 -0
  704. package/src/ambient.d.ts +16 -0
  705. package/src/api/client.ts +5616 -0
  706. package/src/api/index.ts +1 -0
  707. package/src/autonomy/index.ts +477 -0
  708. package/src/bridge/capacitor-bridge.ts +295 -0
  709. package/src/bridge/electrobun-rpc.ts +58 -0
  710. package/src/bridge/electrobun-runtime.ts +28 -0
  711. package/src/bridge/index.ts +5 -0
  712. package/src/bridge/native-plugins.ts +134 -0
  713. package/src/bridge/plugin-bridge.ts +352 -0
  714. package/src/bridge/storage-bridge.ts +162 -0
  715. package/src/chat/index.ts +251 -0
  716. package/src/coding/index.ts +43 -0
  717. package/src/components/AdvancedPageView.tsx +362 -0
  718. package/src/components/AgentActivityBox.tsx +49 -0
  719. package/src/components/ApiKeyConfig.tsx +224 -0
  720. package/src/components/AppsPageView.tsx +52 -0
  721. package/src/components/AppsView.tsx +293 -0
  722. package/src/components/AvatarLoader.tsx +86 -0
  723. package/src/components/AvatarSelector.tsx +223 -0
  724. package/src/components/BscTradePanel.tsx +549 -0
  725. package/src/components/BugReportModal.tsx +499 -0
  726. package/src/components/CharacterView.tsx +1623 -0
  727. package/src/components/ChatAvatar.test.ts +96 -0
  728. package/src/components/ChatAvatar.tsx +147 -0
  729. package/src/components/ChatComposer.tsx +330 -0
  730. package/src/components/ChatMessage.tsx +448 -0
  731. package/src/components/ChatModalView.test.tsx +118 -0
  732. package/src/components/ChatModalView.tsx +125 -0
  733. package/src/components/ChatView.tsx +999 -0
  734. package/src/components/CloudSourceControls.tsx +80 -0
  735. package/src/components/CodingAgentSettingsSection.tsx +536 -0
  736. package/src/components/CommandPalette.tsx +284 -0
  737. package/src/components/CompanionSceneHost.tsx +498 -0
  738. package/src/components/CompanionShell.tsx +31 -0
  739. package/src/components/CompanionView.tsx +109 -0
  740. package/src/components/ConfigPageView.tsx +722 -0
  741. package/src/components/ConfigSaveFooter.tsx +41 -0
  742. package/src/components/ConfirmModal.tsx +379 -0
  743. package/src/components/ConnectionFailedBanner.tsx +91 -0
  744. package/src/components/ConnectorsPageView.tsx +13 -0
  745. package/src/components/ConversationsSidebar.tsx +279 -0
  746. package/src/components/CustomActionEditor.tsx +1125 -0
  747. package/src/components/CustomActionsPanel.tsx +288 -0
  748. package/src/components/CustomActionsView.tsx +322 -0
  749. package/src/components/DatabasePageView.tsx +55 -0
  750. package/src/components/DatabaseView.tsx +814 -0
  751. package/src/components/ElizaCloudDashboard.tsx +1696 -0
  752. package/src/components/EmotePicker.tsx +529 -0
  753. package/src/components/ErrorBoundary.tsx +76 -0
  754. package/src/components/FineTuningView.tsx +1080 -0
  755. package/src/components/GameView.tsx +551 -0
  756. package/src/components/GameViewOverlay.tsx +133 -0
  757. package/src/components/GlobalEmoteOverlay.tsx +152 -0
  758. package/src/components/Header.test.tsx +413 -0
  759. package/src/components/Header.tsx +400 -0
  760. package/src/components/HeartbeatsView.tsx +1002 -0
  761. package/src/components/InventoryView.tsx +372 -0
  762. package/src/components/KnowledgeView.tsx +1128 -0
  763. package/src/components/LanguageDropdown.tsx +187 -0
  764. package/src/components/LifoMonitorPanel.tsx +196 -0
  765. package/src/components/LifoSandboxView.tsx +499 -0
  766. package/src/components/LoadingScreen.tsx +77 -0
  767. package/src/components/LogsPageView.tsx +17 -0
  768. package/src/components/LogsView.tsx +239 -0
  769. package/src/components/MediaGalleryView.tsx +432 -0
  770. package/src/components/MediaSettingsSection.tsx +893 -0
  771. package/src/components/MessageContent.tsx +815 -0
  772. package/src/components/OnboardingWizard.test.tsx +107 -0
  773. package/src/components/OnboardingWizard.tsx +186 -0
  774. package/src/components/PairingView.tsx +110 -0
  775. package/src/components/PermissionsSection.tsx +818 -0
  776. package/src/components/PluginsPageView.tsx +9 -0
  777. package/src/components/PluginsView.tsx +3152 -0
  778. package/src/components/ProviderSwitcher.tsx +874 -0
  779. package/src/components/RestartBanner.tsx +76 -0
  780. package/src/components/RuntimeView.tsx +460 -0
  781. package/src/components/SaveCommandModal.tsx +211 -0
  782. package/src/components/SecretsView.tsx +569 -0
  783. package/src/components/SettingsView.tsx +825 -0
  784. package/src/components/ShellOverlays.tsx +41 -0
  785. package/src/components/ShortcutsOverlay.tsx +155 -0
  786. package/src/components/SkillsView.tsx +1435 -0
  787. package/src/components/StartupFailureView.tsx +63 -0
  788. package/src/components/StreamView.tsx +483 -0
  789. package/src/components/StripeEmbeddedCheckout.tsx +155 -0
  790. package/src/components/SubscriptionStatus.tsx +634 -0
  791. package/src/components/SystemWarningBanner.tsx +71 -0
  792. package/src/components/ThemeToggle.tsx +100 -0
  793. package/src/components/TrajectoriesView.tsx +526 -0
  794. package/src/components/TrajectoryDetailView.tsx +426 -0
  795. package/src/components/TriggersView.tsx +1 -0
  796. package/src/components/VectorBrowserView.tsx +1633 -0
  797. package/src/components/VoiceConfigView.tsx +674 -0
  798. package/src/components/VrmStage.test.ts +219 -0
  799. package/src/components/VrmStage.tsx +432 -0
  800. package/src/components/WhatsAppQrOverlay.tsx +230 -0
  801. package/src/components/__tests__/chainConfig.test.ts +220 -0
  802. package/src/components/apps/AppDetailPane.tsx +242 -0
  803. package/src/components/apps/AppsCatalogGrid.tsx +137 -0
  804. package/src/components/apps/extensions/HyperscapeAppDetailPanel.tsx +577 -0
  805. package/src/components/apps/extensions/registry.ts +16 -0
  806. package/src/components/apps/extensions/types.ts +9 -0
  807. package/src/components/apps/helpers.ts +44 -0
  808. package/src/components/avatar/VrmAnimationLoader.test.ts +164 -0
  809. package/src/components/avatar/VrmAnimationLoader.ts +151 -0
  810. package/src/components/avatar/VrmBlinkController.ts +118 -0
  811. package/src/components/avatar/VrmCameraManager.ts +407 -0
  812. package/src/components/avatar/VrmEngine.ts +2678 -0
  813. package/src/components/avatar/VrmFootShadow.ts +96 -0
  814. package/src/components/avatar/VrmViewer.tsx +421 -0
  815. package/src/components/avatar/__tests__/VrmCameraManager.test.ts +168 -0
  816. package/src/components/avatar/__tests__/VrmEngine.test.ts +1574 -0
  817. package/src/components/avatar/mixamoVRMRigMap.ts +62 -0
  818. package/src/components/avatar/retargetMixamoFbxToVrm.ts +144 -0
  819. package/src/components/avatar/retargetMixamoGltfToVrm.ts +119 -0
  820. package/src/components/chainConfig.ts +380 -0
  821. package/src/components/companion/CompanionHeader.tsx +47 -0
  822. package/src/components/companion/CompanionSceneHost.tsx +5 -0
  823. package/src/components/companion/VrmStage.tsx +2 -0
  824. package/src/components/companion/__tests__/walletUtils.test.ts +742 -0
  825. package/src/components/companion/walletUtils.ts +290 -0
  826. package/src/components/companion-shell-styles.test.ts +146 -0
  827. package/src/components/companion-shell-styles.ts +270 -0
  828. package/src/components/confirm-delete-control.tsx +69 -0
  829. package/src/components/conversations/ConversationListItem.tsx +185 -0
  830. package/src/components/conversations/conversation-utils.ts +151 -0
  831. package/src/components/format.ts +131 -0
  832. package/src/components/index.ts +92 -0
  833. package/src/components/inventory/CopyableAddress.tsx +41 -0
  834. package/src/components/inventory/InventoryToolbar.tsx +142 -0
  835. package/src/components/inventory/NftGrid.tsx +99 -0
  836. package/src/components/inventory/TokenLogo.tsx +71 -0
  837. package/src/components/inventory/TokensTable.tsx +216 -0
  838. package/src/components/inventory/constants.ts +170 -0
  839. package/src/components/inventory/index.ts +29 -0
  840. package/src/components/inventory/media-url.test.ts +38 -0
  841. package/src/components/inventory/media-url.ts +36 -0
  842. package/src/components/inventory/useInventoryData.ts +460 -0
  843. package/src/components/knowledge-upload-image.ts +215 -0
  844. package/src/components/labels.ts +46 -0
  845. package/src/components/onboarding/ActivateStep.tsx +30 -0
  846. package/src/components/onboarding/ConnectionStep.tsx +1530 -0
  847. package/src/components/onboarding/OnboardingPanel.tsx +39 -0
  848. package/src/components/onboarding/OnboardingStepNav.tsx +31 -0
  849. package/src/components/onboarding/PermissionsStep.tsx +20 -0
  850. package/src/components/onboarding/RpcStep.tsx +402 -0
  851. package/src/components/onboarding/WakeUpStep.tsx +184 -0
  852. package/src/components/permissions/PermissionIcon.tsx +25 -0
  853. package/src/components/permissions/StreamingPermissions.tsx +376 -0
  854. package/src/components/plugins/showcase-data.ts +481 -0
  855. package/src/components/shared/ShellHeaderControls.tsx +193 -0
  856. package/src/components/skeletons.tsx +88 -0
  857. package/src/components/stream/ActivityFeed.tsx +113 -0
  858. package/src/components/stream/AvatarPip.tsx +10 -0
  859. package/src/components/stream/ChatContent.tsx +126 -0
  860. package/src/components/stream/ChatTicker.tsx +55 -0
  861. package/src/components/stream/IdleContent.tsx +73 -0
  862. package/src/components/stream/StatusBar.tsx +469 -0
  863. package/src/components/stream/StreamSettings.tsx +506 -0
  864. package/src/components/stream/StreamTerminal.tsx +94 -0
  865. package/src/components/stream/StreamVoiceConfig.tsx +160 -0
  866. package/src/components/stream/helpers.ts +134 -0
  867. package/src/components/stream/overlays/OverlayLayer.tsx +75 -0
  868. package/src/components/stream/overlays/built-in/ActionTickerWidget.tsx +64 -0
  869. package/src/components/stream/overlays/built-in/AlertPopupWidget.tsx +87 -0
  870. package/src/components/stream/overlays/built-in/BrandingWidget.tsx +51 -0
  871. package/src/components/stream/overlays/built-in/CustomHtmlWidget.tsx +105 -0
  872. package/src/components/stream/overlays/built-in/PeonGlassWidget.tsx +265 -0
  873. package/src/components/stream/overlays/built-in/PeonHudWidget.tsx +247 -0
  874. package/src/components/stream/overlays/built-in/PeonSakuraWidget.tsx +278 -0
  875. package/src/components/stream/overlays/built-in/ThoughtBubbleWidget.tsx +77 -0
  876. package/src/components/stream/overlays/built-in/ViewerCountWidget.tsx +46 -0
  877. package/src/components/stream/overlays/built-in/index.ts +13 -0
  878. package/src/components/stream/overlays/registry.ts +22 -0
  879. package/src/components/stream/overlays/types.ts +90 -0
  880. package/src/components/stream/overlays/useOverlayLayout.ts +218 -0
  881. package/src/components/trajectory-format.ts +50 -0
  882. package/src/components/ui-badges.tsx +109 -0
  883. package/src/components/ui-switch.tsx +57 -0
  884. package/src/components/vector-browser-three.ts +27 -0
  885. package/src/config/config-catalog.ts +1092 -0
  886. package/src/config/config-field.tsx +1900 -0
  887. package/src/config/config-renderer.tsx +730 -0
  888. package/src/config/index.ts +11 -0
  889. package/src/config/ui-renderer.tsx +1751 -0
  890. package/src/config/ui-spec.ts +256 -0
  891. package/src/events/index.ts +89 -0
  892. package/src/hooks/index.ts +13 -0
  893. package/src/hooks/useBugReport.tsx +43 -0
  894. package/src/hooks/useCanvasWindow.ts +372 -0
  895. package/src/hooks/useChatAvatarVoice.ts +111 -0
  896. package/src/hooks/useContextMenu.ts +127 -0
  897. package/src/hooks/useKeyboardShortcuts.ts +86 -0
  898. package/src/hooks/useLifoSync.ts +143 -0
  899. package/src/hooks/useMemoryMonitor.ts +335 -0
  900. package/src/hooks/useRenderGuard.ts +43 -0
  901. package/src/hooks/useRetakeCapture.ts +67 -0
  902. package/src/hooks/useStreamPopoutNavigation.ts +27 -0
  903. package/src/hooks/useTimeout.ts +37 -0
  904. package/src/hooks/useVoiceChat.ts +1443 -0
  905. package/src/hooks/useWhatsAppPairing.ts +123 -0
  906. package/src/i18n/index.ts +76 -0
  907. package/src/i18n/locales/en.json +1196 -0
  908. package/src/i18n/locales/es.json +1196 -0
  909. package/src/i18n/locales/ko.json +1196 -0
  910. package/src/i18n/locales/pt.json +1196 -0
  911. package/src/i18n/locales/zh-CN.json +1196 -0
  912. package/src/i18n/messages.ts +21 -0
  913. package/src/index.ts +6 -0
  914. package/src/navigation/index.ts +282 -0
  915. package/src/navigation.test.ts +189 -0
  916. package/src/platform/browser-launch.test.ts +94 -0
  917. package/src/platform/browser-launch.ts +149 -0
  918. package/src/platform/index.ts +261 -0
  919. package/src/platform/init.ts +236 -0
  920. package/src/providers/index.ts +82 -0
  921. package/src/state/AppContext.tsx +5737 -0
  922. package/src/state/index.ts +6 -0
  923. package/src/state/internal.ts +77 -0
  924. package/src/state/parsers.test.ts +124 -0
  925. package/src/state/parsers.ts +309 -0
  926. package/src/state/persistence.ts +278 -0
  927. package/src/state/types.ts +694 -0
  928. package/src/state/ui-preferences.ts +3 -0
  929. package/src/state/useApp.ts +23 -0
  930. package/src/state/vrm.ts +76 -0
  931. package/src/stories/AppMockProvider.tsx +32 -0
  932. package/src/stories/ChatEmptyState.stories.tsx +27 -0
  933. package/src/stories/ChatMessage.stories.tsx +115 -0
  934. package/src/stories/CompanionHeader.stories.tsx +74 -0
  935. package/src/stories/CompanionView.stories.tsx +33 -0
  936. package/src/stories/ConversationListItem.stories.tsx +102 -0
  937. package/src/stories/TypingIndicator.stories.tsx +28 -0
  938. package/src/styles/anime.css +6324 -0
  939. package/src/styles/base.css +196 -0
  940. package/src/styles/onboarding-game.css +716 -0
  941. package/src/styles/styles.css +2085 -0
  942. package/src/styles/xterm.css +241 -0
  943. package/src/types/index.ts +715 -0
  944. package/src/types/react-test-renderer.d.ts +45 -0
  945. package/src/utils/asset-url.ts +110 -0
  946. package/src/utils/assistant-text.ts +172 -0
  947. package/src/utils/clipboard.ts +41 -0
  948. package/src/utils/desktop-dialogs.ts +80 -0
  949. package/src/utils/index.ts +6 -0
  950. package/src/utils/number-parsing.ts +125 -0
  951. package/src/utils/openExternalUrl.ts +20 -0
  952. package/src/utils/spoken-text.ts +65 -0
  953. package/src/utils/streaming-text.ts +120 -0
  954. package/src/voice/index.ts +1 -0
  955. package/src/voice/types.ts +197 -0
  956. package/test/app/AppContext.pty-sessions.test.tsx +143 -0
  957. package/test/app/MessageContent.test.tsx +326 -0
  958. package/test/app/PermissionsOnboarding.test.tsx +216 -0
  959. package/test/app/PermissionsSection.test.tsx +186 -0
  960. package/test/app/advanced-trajectory-fine-tuning.e2e.test.ts +397 -0
  961. package/test/app/agent-activity-box.test.tsx +132 -0
  962. package/test/app/agent-transfer-lock.test.ts +274 -0
  963. package/test/app/api-client-electron-fallback.test.ts +139 -0
  964. package/test/app/api-client-timeout.test.ts +75 -0
  965. package/test/app/api-client-ws.test.ts +98 -0
  966. package/test/app/api-client.ws-max-reconnect.test.ts +139 -0
  967. package/test/app/api-client.ws-reconnect.test.ts +157 -0
  968. package/test/app/app-context-autonomy-events.test.ts +478 -0
  969. package/test/app/apps-page-view.test.ts +114 -0
  970. package/test/app/apps-view.test.ts +769 -0
  971. package/test/app/autonomous-workflows.e2e.test.ts +765 -0
  972. package/test/app/autonomy-events.test.ts +150 -0
  973. package/test/app/avatar-selector.test.tsx +52 -0
  974. package/test/app/bsc-trade-panel.test.tsx +134 -0
  975. package/test/app/bug-report-modal.test.tsx +353 -0
  976. package/test/app/character-customization.e2e.test.ts +1168 -0
  977. package/test/app/chat-advanced-features.e2e.test.ts +706 -0
  978. package/test/app/chat-composer.test.tsx +181 -0
  979. package/test/app/chat-language-header.test.ts +64 -0
  980. package/test/app/chat-message.test.tsx +222 -0
  981. package/test/app/chat-modal-view.test.tsx +191 -0
  982. package/test/app/chat-routine-filter.test.ts +96 -0
  983. package/test/app/chat-send-lock.test.ts +1302 -0
  984. package/test/app/chat-stream-api-client.test.tsx +390 -0
  985. package/test/app/chat-view-game-modal.test.tsx +661 -0
  986. package/test/app/chat-view.test.tsx +877 -0
  987. package/test/app/cloud-api.e2e.test.ts +258 -0
  988. package/test/app/cloud-login-flow.e2e.test.ts +494 -0
  989. package/test/app/cloud-login-lock.test.ts +411 -0
  990. package/test/app/command-palette.test.tsx +184 -0
  991. package/test/app/command-registry.test.ts +75 -0
  992. package/test/app/companion-greeting-wave.test.tsx +443 -0
  993. package/test/app/companion-stale-conversation.test.tsx +424 -0
  994. package/test/app/companion-view.test.tsx +686 -0
  995. package/test/app/confirm-delete-control.test.ts +79 -0
  996. package/test/app/confirm-modal.test.tsx +219 -0
  997. package/test/app/connectors-ui.e2e.test.ts +508 -0
  998. package/test/app/conversations-sidebar-game-modal.test.tsx +260 -0
  999. package/test/app/conversations-sidebar.test.tsx +160 -0
  1000. package/test/app/custom-actions-smoke.test.ts +387 -0
  1001. package/test/app/custom-avatar-api-client.test.ts +207 -0
  1002. package/test/app/desktop-utils.test.ts +145 -0
  1003. package/test/app/electrobun-rpc-bridge.test.ts +83 -0
  1004. package/test/app/events.test.ts +88 -0
  1005. package/test/app/export-import-flows.e2e.test.ts +700 -0
  1006. package/test/app/fine-tuning-view.test.ts +471 -0
  1007. package/test/app/game-view-auth-session.test.tsx +186 -0
  1008. package/test/app/game-view.test.ts +444 -0
  1009. package/test/app/global-emote-overlay.test.tsx +106 -0
  1010. package/test/app/header-status.test.tsx +149 -0
  1011. package/test/app/i18n.test.ts +152 -0
  1012. package/test/app/inventory-bsc-view.test.ts +908 -0
  1013. package/test/app/knowledge-ui.e2e.test.ts +762 -0
  1014. package/test/app/knowledge-upload-helpers.test.ts +124 -0
  1015. package/test/app/lifecycle-lock.test.ts +267 -0
  1016. package/test/app/lifo-popout-utils.test.ts +208 -0
  1017. package/test/app/lifo-safe-endpoint.test.ts +34 -0
  1018. package/test/app/loading-screen.test.tsx +45 -0
  1019. package/test/app/memory-monitor.test.ts +332 -0
  1020. package/test/app/navigation.test.tsx +29 -0
  1021. package/test/app/onboarding-finish-lock.test.ts +500 -0
  1022. package/test/app/onboarding-language.test.tsx +161 -0
  1023. package/test/app/onboarding-steps.test.tsx +371 -0
  1024. package/test/app/open-external-url.test.ts +65 -0
  1025. package/test/app/pages-navigation-smoke.e2e.test.ts +633 -0
  1026. package/test/app/pairing-lock.test.ts +260 -0
  1027. package/test/app/pairing-view.test.tsx +74 -0
  1028. package/test/app/permissions-section.test.ts +432 -0
  1029. package/test/app/plugin-bridge.test.ts +109 -0
  1030. package/test/app/plugins-ui.e2e.test.ts +605 -0
  1031. package/test/app/plugins-view-game-modal.test.tsx +650 -0
  1032. package/test/app/plugins-view-toggle-restart.test.ts +129 -0
  1033. package/test/app/provider-dropdown-default.test.tsx +164 -0
  1034. package/test/app/restart-banner.test.tsx +197 -0
  1035. package/test/app/retake-capture.test.ts +84 -0
  1036. package/test/app/sandbox-api-client.test.ts +108 -0
  1037. package/test/app/save-command-modal.test.tsx +109 -0
  1038. package/test/app/secrets-view.test.tsx +92 -0
  1039. package/test/app/settings-control-styles.test.tsx +142 -0
  1040. package/test/app/settings-reset.e2e.test.ts +728 -0
  1041. package/test/app/settings-sections.e2e.test.ts +614 -0
  1042. package/test/app/shared-format.test.ts +44 -0
  1043. package/test/app/shared-switch.test.ts +69 -0
  1044. package/test/app/shell-mode-switching.e2e.test.ts +829 -0
  1045. package/test/app/shell-mode-tab-memory.test.tsx +283 -0
  1046. package/test/app/shell-overlays.test.tsx +50 -0
  1047. package/test/app/shortcuts-overlay.test.tsx +111 -0
  1048. package/test/app/sse-interruption.test.ts +122 -0
  1049. package/test/app/startup-asset-missing.e2e.test.ts +126 -0
  1050. package/test/app/startup-backend-missing.e2e.test.ts +118 -0
  1051. package/test/app/startup-chat.e2e.test.ts +305 -0
  1052. package/test/app/startup-conversation-restore.test.tsx +344 -0
  1053. package/test/app/startup-failure-view.test.tsx +103 -0
  1054. package/test/app/startup-onboarding.e2e.test.ts +612 -0
  1055. package/test/app/startup-timeout.test.tsx +80 -0
  1056. package/test/app/startup-token-401.e2e.test.ts +103 -0
  1057. package/test/app/stream-helpers.test.ts +46 -0
  1058. package/test/app/stream-popout-navigation.test.tsx +41 -0
  1059. package/test/app/stream-status-bar.test.tsx +89 -0
  1060. package/test/app/theme-toggle.test.tsx +33 -0
  1061. package/test/app/training-api-client.test.ts +128 -0
  1062. package/test/app/trajectories-view.test.tsx +220 -0
  1063. package/test/app/triggers-api-client.test.ts +77 -0
  1064. package/test/app/triggers-navigation.test.ts +118 -0
  1065. package/test/app/triggers-view.e2e.test.ts +674 -0
  1066. package/test/app/update-channel-lock.test.ts +259 -0
  1067. package/test/app/vector-browser.async-cleanup.test.tsx +367 -0
  1068. package/test/app/vector-browser.e2e.test.ts +653 -0
  1069. package/test/app/vrm-stage.test.tsx +351 -0
  1070. package/test/app/vrm-viewer.test.tsx +298 -0
  1071. package/test/app/wallet-api-save-lock.test.ts +277 -0
  1072. package/test/app/wallet-hooks.test.ts +405 -0
  1073. package/test/app/wallet-ui-flows.e2e.test.ts +556 -0
  1074. package/test/avatar/asset-url.test.ts +90 -0
  1075. package/test/avatar/avatar-selector.test.ts +173 -0
  1076. package/test/avatar/mixamo-vrm-rig-map.test.ts +111 -0
  1077. package/test/avatar/voice-chat-streaming-text.test.ts +96 -0
  1078. package/test/avatar/voice-chat.test.ts +391 -0
  1079. package/test/ui/command-palette-commands.test.ts +57 -0
  1080. package/test/ui/ui-renderer.test.ts +39 -0
  1081. package/tsconfig.build.json +19 -0
  1082. package/tsconfig.json +21 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MessageContent.d.ts","sourceRoot":"","sources":["../../src/components/MessageContent.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAc,MAAM,uBAAuB,CAAC;AAG7E,OAAO,EAIL,KAAK,OAAO,EAEZ,KAAK,MAAM,EACZ,MAAM,0BAA0B,CAAC;AAqClC,UAAU,mBAAmB;IAC3B,OAAO,EAAE,mBAAmB,CAAC;CAC9B;AAyFD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAGvD;AAED,sEAAsE;AACtE,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,IAAI,CAW1D;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,MAAM,GAAG,IAAI,CAsDhE;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,GACX,KAAK,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC,CAmElE;AA2FD,gHAAgH;AAChH,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAEpD;AA0VD,wBAAgB,cAAc,CAAC,EAAE,OAAO,EAAE,EAAE,mBAAmB,2CA4D9D"}
@@ -0,0 +1,553 @@
1
+ import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
2
+ import { client } from "@elizaos/app-core/api";
3
+ import { paramsToSchema } from "@elizaos/app-core/components";
4
+ import { ConfigRenderer, defaultRegistry, UiRenderer, } from "@elizaos/app-core/config";
5
+ import { useApp } from "@elizaos/app-core/state";
6
+ import { stripAssistantStageDirections } from "@elizaos/app-core/utils";
7
+ import { Button } from "@elizaos/ui";
8
+ import { useCallback, useEffect, useMemo, useRef, useState } from "react";
9
+ /** Reject prototype-pollution keys that should never be traversed or rendered. */
10
+ const BLOCKED_IDS = new Set(["__proto__", "constructor", "prototype"]);
11
+ const SAFE_PLUGIN_ID_RE = /^[\w-]+$/;
12
+ function createSafeRecord() {
13
+ return Object.create(null);
14
+ }
15
+ function sanitizePatchValue(value) {
16
+ if (Array.isArray(value)) {
17
+ return value.map((item) => sanitizePatchValue(item));
18
+ }
19
+ if (!value || typeof value !== "object") {
20
+ return value;
21
+ }
22
+ const safe = createSafeRecord();
23
+ for (const [key, nestedValue] of Object.entries(value)) {
24
+ if (BLOCKED_IDS.has(key))
25
+ continue;
26
+ safe[key] = sanitizePatchValue(nestedValue);
27
+ }
28
+ return safe;
29
+ }
30
+ function isSafeNormalizedPluginId(id) {
31
+ return !BLOCKED_IDS.has(id) && SAFE_PLUGIN_ID_RE.test(id);
32
+ }
33
+ // ── Detection ───────────────────────────────────────────────────────
34
+ const CONFIG_RE = /\[CONFIG:([@\w][\w@./:-]*)\]/g;
35
+ const FENCED_JSON_RE = /```(?:json)?\s*\n([\s\S]*?)```/g;
36
+ /**
37
+ * Strip ElizaOS action XML blocks (`<actions>...</actions>` and
38
+ * `<params>...</params>`) from displayed text. These are framework
39
+ * metadata, not user-facing content.
40
+ */
41
+ const ACTION_XML_RE = /\s*<actions>[\s\S]*?<\/actions>\s*|\s*<params>[\s\S]*?<\/params>\s*/g;
42
+ const HIDDEN_XML_BLOCK_RE = /<(think|analysis|reasoning|scratchpad|tool_calls?|tools?)\b[^>]*>[\s\S]*?(?:<\/\1>|$)/gi;
43
+ function extractXmlTag(raw, tag, opts) {
44
+ const open = `<${tag}>`;
45
+ const close = `</${tag}>`;
46
+ const start = raw.indexOf(open);
47
+ if (start < 0)
48
+ return null;
49
+ const contentStart = start + open.length;
50
+ const end = raw.indexOf(close, contentStart);
51
+ if (end < 0) {
52
+ return opts?.allowPartial ? raw.slice(contentStart) : null;
53
+ }
54
+ return raw.slice(contentStart, end);
55
+ }
56
+ function normalizeDisplayText(text) {
57
+ let normalized = text;
58
+ // Hide framework-selected actions and tool params from chat bubbles.
59
+ normalized = normalized.replace(ACTION_XML_RE, "");
60
+ normalized = normalized.replace(HIDDEN_XML_BLOCK_RE, " ");
61
+ // Some prompts emit structured XML wrappers like:
62
+ // <response><thought>...</thought><text>...</text></response>
63
+ // Show only the user-facing <text>, even while it is still streaming.
64
+ if (normalized.includes("<response>")) {
65
+ const wrappedText = extractXmlTag(normalized, "text", {
66
+ allowPartial: true,
67
+ });
68
+ if (wrappedText !== null) {
69
+ normalized = wrappedText;
70
+ }
71
+ else {
72
+ return "";
73
+ }
74
+ }
75
+ // Drop any leftover wrapper tags without disturbing plain text.
76
+ normalized = normalized.replace(/<\/?(response|text|thought)\b[^>]*>/gi, "");
77
+ normalized = stripAssistantStageDirections(normalized);
78
+ return normalized.trim();
79
+ }
80
+ function tryParse(s) {
81
+ try {
82
+ return JSON.parse(s);
83
+ }
84
+ catch {
85
+ return null;
86
+ }
87
+ }
88
+ function isUiSpec(obj) {
89
+ if (!obj || typeof obj !== "object")
90
+ return false;
91
+ const c = obj;
92
+ return (typeof c.root === "string" &&
93
+ typeof c.elements === "object" &&
94
+ c.elements !== null);
95
+ }
96
+ // ── JSONL patch support (Chat Mode) ─────────────────────────────────
97
+ /**
98
+ * Quick pre-check: does this line look like a JSON patch object?
99
+ * Handles both compact `{"op":` and spaced `{ "op":` formats.
100
+ */
101
+ export function looksLikePatch(trimmed) {
102
+ if (!trimmed.startsWith("{"))
103
+ return false;
104
+ return trimmed.includes('"op"') && trimmed.includes('"path"');
105
+ }
106
+ /** Try to parse a single line as an RFC 6902 JSON Patch operation. */
107
+ export function tryParsePatch(line) {
108
+ const t = line.trim();
109
+ if (!looksLikePatch(t))
110
+ return null;
111
+ try {
112
+ const obj = JSON.parse(t);
113
+ if (typeof obj.op === "string" && typeof obj.path === "string")
114
+ return obj;
115
+ return null;
116
+ }
117
+ catch {
118
+ return null;
119
+ }
120
+ }
121
+ /**
122
+ * Apply a list of RFC 6902 patches to build a UiSpec.
123
+ *
124
+ * Only handles the paths the catalog emits:
125
+ * /root → spec.root
126
+ * /elements/<id> → spec.elements[id]
127
+ * /state/<key> → spec.state[key]
128
+ * /state → spec.state (whole object)
129
+ */
130
+ export function compilePatches(patches) {
131
+ const spec = { elements: {}, state: createSafeRecord() };
132
+ for (const patch of patches) {
133
+ if (patch.op !== "add" && patch.op !== "replace")
134
+ continue;
135
+ const { path, value } = patch;
136
+ const parts = path.split("/").filter(Boolean);
137
+ if (parts.length === 0)
138
+ continue;
139
+ if (parts[0] === "root" && parts.length === 1) {
140
+ spec.root = value;
141
+ }
142
+ else if (parts[0] === "elements" && parts.length === 2) {
143
+ spec.elements[parts[1]] = value;
144
+ }
145
+ else if (parts[0] === "state" && parts.length === 1) {
146
+ const nextState = sanitizePatchValue(value);
147
+ spec.state =
148
+ nextState && typeof nextState === "object" && !Array.isArray(nextState)
149
+ ? nextState
150
+ : createSafeRecord();
151
+ }
152
+ else if (parts[0] === "state" && parts.length >= 2) {
153
+ // Nested state path: /state/key or /state/key/subkey
154
+ let cursor = spec.state;
155
+ let blockedPath = false;
156
+ for (let i = 1; i < parts.length - 1; i++) {
157
+ const k = parts[i];
158
+ if (BLOCKED_IDS.has(k)) {
159
+ blockedPath = true;
160
+ break;
161
+ }
162
+ if (!cursor[k] ||
163
+ typeof cursor[k] !== "object" ||
164
+ Array.isArray(cursor[k])) {
165
+ cursor[k] = createSafeRecord();
166
+ }
167
+ cursor = cursor[k];
168
+ }
169
+ if (blockedPath)
170
+ continue;
171
+ const leaf = parts[parts.length - 1];
172
+ if (BLOCKED_IDS.has(leaf))
173
+ continue;
174
+ cursor[leaf] = sanitizePatchValue(value);
175
+ }
176
+ }
177
+ return isUiSpec(spec) ? spec : null;
178
+ }
179
+ /**
180
+ * Scan `text` for blocks of consecutive JSONL patch lines and return
181
+ * their character regions plus the compiled UiSpec.
182
+ *
183
+ * A patch block is a run of lines where each non-empty line parses as a
184
+ * valid PatchOp. A single empty line between patch lines is allowed.
185
+ */
186
+ export function findPatchRegions(text) {
187
+ const results = [];
188
+ const lines = text.split("\n");
189
+ let blockStart = -1;
190
+ let blockEnd = 0;
191
+ let patches = [];
192
+ let rawLines = [];
193
+ let pos = 0;
194
+ const flush = () => {
195
+ if (patches.length >= 1) {
196
+ const spec = compilePatches(patches);
197
+ if (spec) {
198
+ results.push({
199
+ start: blockStart,
200
+ end: blockEnd,
201
+ spec,
202
+ raw: rawLines.join("\n"),
203
+ });
204
+ }
205
+ }
206
+ blockStart = -1;
207
+ patches = [];
208
+ rawLines = [];
209
+ };
210
+ for (let i = 0; i < lines.length; i++) {
211
+ const line = lines[i];
212
+ // +1 for the newline that split() consumed (except the very last line)
213
+ const lineLen = line.length + (i < lines.length - 1 ? 1 : 0);
214
+ const trimmed = line.trim();
215
+ if (looksLikePatch(trimmed)) {
216
+ const patch = tryParsePatch(trimmed);
217
+ if (patch) {
218
+ if (blockStart === -1)
219
+ blockStart = pos;
220
+ patches.push(patch);
221
+ rawLines.push(line);
222
+ blockEnd = pos + lineLen;
223
+ pos += lineLen;
224
+ continue;
225
+ }
226
+ }
227
+ // Empty line: peek ahead to see if the next non-empty line is a patch
228
+ if (trimmed.length === 0 && blockStart !== -1) {
229
+ const nextPatch = lines.slice(i + 1).find((l) => l.trim().length > 0);
230
+ if (nextPatch && tryParsePatch(nextPatch) !== null) {
231
+ // Allow the gap and keep going
232
+ pos += lineLen;
233
+ continue;
234
+ }
235
+ }
236
+ // Non-patch content — flush any open block
237
+ if (blockStart !== -1)
238
+ flush();
239
+ pos += lineLen;
240
+ }
241
+ if (blockStart !== -1)
242
+ flush();
243
+ return results;
244
+ }
245
+ /**
246
+ * Parse message text for [CONFIG:id] markers, fenced UiSpec JSON, and
247
+ * inline JSONL patch blocks (Chat Mode).
248
+ * Returns an array of segments for rendering.
249
+ */
250
+ function parseSegments(text) {
251
+ const cleaned = normalizeDisplayText(text);
252
+ if (!cleaned)
253
+ return [{ kind: "text", text: "" }];
254
+ // Build a unified list of match regions sorted by position
255
+ const regions = [];
256
+ // 1. Find [CONFIG:pluginId] markers
257
+ CONFIG_RE.lastIndex = 0;
258
+ let m = CONFIG_RE.exec(cleaned);
259
+ while (m !== null) {
260
+ regions.push({
261
+ start: m.index,
262
+ end: m.index + m[0].length,
263
+ segment: { kind: "config", pluginId: m[1] },
264
+ });
265
+ m = CONFIG_RE.exec(cleaned);
266
+ }
267
+ // 2. Find fenced JSON that is a UiSpec (Generate Mode / legacy format)
268
+ FENCED_JSON_RE.lastIndex = 0;
269
+ m = FENCED_JSON_RE.exec(cleaned);
270
+ while (m !== null) {
271
+ const json = m[1].trim();
272
+ const parsed = tryParse(json);
273
+ if (parsed && isUiSpec(parsed)) {
274
+ regions.push({
275
+ start: m.index,
276
+ end: m.index + m[0].length,
277
+ segment: { kind: "ui-spec", spec: parsed, raw: json },
278
+ });
279
+ }
280
+ m = FENCED_JSON_RE.exec(cleaned);
281
+ }
282
+ // 3. Find inline JSONL patch blocks (Chat Mode)
283
+ for (const patch of findPatchRegions(cleaned)) {
284
+ // Skip if this region overlaps with an already-found fenced block
285
+ const overlaps = regions.some((r) => patch.start < r.end && patch.end > r.start);
286
+ if (!overlaps) {
287
+ regions.push({
288
+ start: patch.start,
289
+ end: patch.end,
290
+ segment: { kind: "ui-spec", spec: patch.spec, raw: patch.raw },
291
+ });
292
+ }
293
+ }
294
+ // No special content found — return plain text
295
+ if (regions.length === 0) {
296
+ return [{ kind: "text", text: cleaned }];
297
+ }
298
+ // Sort by start position, then interleave with text segments
299
+ regions.sort((a, b) => a.start - b.start);
300
+ const segments = [];
301
+ let cursor = 0;
302
+ for (const r of regions) {
303
+ // Skip overlapping regions
304
+ if (r.start < cursor)
305
+ continue;
306
+ // Push preceding text
307
+ if (r.start > cursor) {
308
+ const t = cleaned.slice(cursor, r.start);
309
+ if (t.trim())
310
+ segments.push({ kind: "text", text: t });
311
+ }
312
+ segments.push(r.segment);
313
+ cursor = r.end;
314
+ }
315
+ // Trailing text
316
+ if (cursor < cleaned.length) {
317
+ const t = cleaned.slice(cursor);
318
+ if (t.trim())
319
+ segments.push({ kind: "text", text: t });
320
+ }
321
+ return segments;
322
+ }
323
+ // ── InlinePluginConfig ──────────────────────────────────────────────
324
+ /** Normalize plugin ID: strip @scope/plugin- prefix so both "discord" and "@elizaos/plugin-discord" resolve. */
325
+ export function normalizePluginId(id) {
326
+ return id.replace(/^@[^/]+\/plugin-/, "");
327
+ }
328
+ function buildInlinePluginConfigModel(plugin, values) {
329
+ const pluginParams = plugin?.parameters ?? [];
330
+ const hasConfigurableParams = pluginParams.length > 0;
331
+ if (!hasConfigurableParams || !plugin?.id) {
332
+ return {
333
+ hasConfigurableParams: false,
334
+ hints: {},
335
+ mergedValues: values,
336
+ schema: null,
337
+ setKeys: new Set(),
338
+ };
339
+ }
340
+ const auto = paramsToSchema(pluginParams, plugin.id);
341
+ if (plugin.configUiHints) {
342
+ for (const [key, serverHint] of Object.entries(plugin.configUiHints)) {
343
+ auto.hints[key] = { ...auto.hints[key], ...serverHint };
344
+ }
345
+ }
346
+ const initialValues = {};
347
+ const setKeys = new Set();
348
+ for (const param of pluginParams) {
349
+ if (param.isSet) {
350
+ setKeys.add(param.key);
351
+ }
352
+ if (param.isSet && !param.sensitive && param.currentValue != null) {
353
+ initialValues[param.key] = param.currentValue;
354
+ }
355
+ }
356
+ for (const [key, value] of Object.entries(values)) {
357
+ if (value != null && value !== "") {
358
+ setKeys.add(key);
359
+ }
360
+ }
361
+ return {
362
+ hasConfigurableParams: true,
363
+ hints: auto.hints,
364
+ mergedValues: { ...initialValues, ...values },
365
+ schema: auto.schema,
366
+ setKeys,
367
+ };
368
+ }
369
+ function InlinePluginConfig({ pluginId: rawPluginId }) {
370
+ const pluginId = normalizePluginId(rawPluginId);
371
+ const [plugin, setPlugin] = useState(null);
372
+ const [loading, setLoading] = useState(true);
373
+ const [values, setValues] = useState({});
374
+ const [saving, setSaving] = useState(false);
375
+ const [saved, setSaved] = useState(false);
376
+ const [enabling, setEnabling] = useState(false);
377
+ const [error, setError] = useState(null);
378
+ const [dismissed, setDismissed] = useState(false);
379
+ const mountedRef = useRef(true);
380
+ const refreshTimerRef = useRef(null);
381
+ const { setActionNotice, loadPlugins, t } = useApp();
382
+ // Track mount state — reset to true on each mount (needed for StrictMode
383
+ // which unmounts/remounts and would leave the ref false otherwise).
384
+ useEffect(() => {
385
+ mountedRef.current = true;
386
+ return () => {
387
+ mountedRef.current = false;
388
+ if (refreshTimerRef.current)
389
+ clearTimeout(refreshTimerRef.current);
390
+ };
391
+ }, []);
392
+ // Self-contained: fetch plugin data directly from API
393
+ const fetchPlugin = useCallback(async () => {
394
+ try {
395
+ const { plugins } = await client.getPlugins();
396
+ if (!mountedRef.current)
397
+ return;
398
+ const found = plugins.find((p) => p.id === pluginId);
399
+ setPlugin(found ?? null);
400
+ }
401
+ catch {
402
+ if (mountedRef.current)
403
+ setError("Failed to load plugin info.");
404
+ }
405
+ finally {
406
+ if (mountedRef.current)
407
+ setLoading(false);
408
+ }
409
+ }, [pluginId]);
410
+ useEffect(() => {
411
+ void fetchPlugin();
412
+ }, [fetchPlugin]);
413
+ const { hasConfigurableParams, hints, mergedValues, schema, setKeys } = useMemo(() => buildInlinePluginConfigModel(plugin, values), [plugin, values]);
414
+ const handleChange = useCallback((key, value) => {
415
+ setValues((prev) => ({ ...prev, [key]: value }));
416
+ setSaved(false);
417
+ setError(null);
418
+ }, []);
419
+ const handleSave = useCallback(async () => {
420
+ setSaving(true);
421
+ setError(null);
422
+ try {
423
+ const patch = {};
424
+ for (const [k, v] of Object.entries(values)) {
425
+ if (v != null && v !== "")
426
+ patch[k] = String(v);
427
+ }
428
+ await client.updatePlugin(pluginId, { config: patch });
429
+ if (mountedRef.current)
430
+ setSaved(true);
431
+ await fetchPlugin();
432
+ }
433
+ catch (e) {
434
+ if (mountedRef.current)
435
+ setError(e instanceof Error ? e.message : "Failed to save.");
436
+ }
437
+ finally {
438
+ if (mountedRef.current)
439
+ setSaving(false);
440
+ }
441
+ }, [pluginId, values, fetchPlugin]);
442
+ const handleToggle = useCallback(async (enable) => {
443
+ setEnabling(true);
444
+ setError(null);
445
+ try {
446
+ // Save pending config first, then toggle — same as the Plugins page
447
+ if (enable) {
448
+ const patch = {};
449
+ for (const [k, v] of Object.entries(values)) {
450
+ if (v != null && v !== "")
451
+ patch[k] = String(v);
452
+ }
453
+ if (Object.keys(patch).length > 0) {
454
+ await client.updatePlugin(pluginId, { config: patch });
455
+ }
456
+ }
457
+ // Exact same call as the ON button in PluginsView
458
+ await client.updatePlugin(pluginId, { enabled: enable });
459
+ // Refresh shared plugin state so Plugins page shows updated status
460
+ await loadPlugins();
461
+ if (enable && mountedRef.current) {
462
+ const tabLabel = plugin?.category === "feature"
463
+ ? "Plugins > Features"
464
+ : plugin?.category === "connector"
465
+ ? "Plugins > Connectors"
466
+ : "Plugins > System";
467
+ setActionNotice(`${plugin?.name ?? pluginId} enabled! Find it in ${tabLabel}.`, "success", 4000);
468
+ setDismissed(true);
469
+ }
470
+ // Wait for agent restart then refresh (with cleanup on unmount)
471
+ refreshTimerRef.current = setTimeout(() => void fetchPlugin(), 3000);
472
+ }
473
+ catch (e) {
474
+ if (mountedRef.current) {
475
+ setError(e instanceof Error
476
+ ? e.message
477
+ : `Failed to ${enable ? "enable" : "disable"} plugin.`);
478
+ }
479
+ }
480
+ finally {
481
+ if (mountedRef.current)
482
+ setEnabling(false);
483
+ }
484
+ }, [pluginId, plugin, values, fetchPlugin, loadPlugins, setActionNotice]);
485
+ if (dismissed) {
486
+ return (_jsxs("div", { className: "my-2 px-3 py-2 border border-ok/30 bg-ok/5 text-xs text-ok", children: [plugin?.name ?? pluginId, " ", t("messagecontent.Enabled")] }));
487
+ }
488
+ if (loading) {
489
+ return (_jsxs("div", { className: "my-2 px-3 py-2 border border-border bg-card text-xs text-muted italic", children: [t("common.loading"), " ", pluginId, " ", t("messagecontent.configuration")] }));
490
+ }
491
+ if (!plugin) {
492
+ return (_jsxs("div", { className: "my-2 px-3 py-2 border border-border bg-card text-xs text-muted italic", children: [t("messagecontent.Plugin"), pluginId, t("messagecontent.NotFound")] }));
493
+ }
494
+ const isEnabled = plugin.enabled;
495
+ return (_jsxs("div", { className: "my-2 border border-border bg-card overflow-hidden", children: [_jsxs("div", { className: "flex items-center justify-between px-3 py-2 bg-bg-hover border-b border-border", children: [_jsxs("div", { className: "flex items-center gap-2 text-xs font-bold text-txt", children: [plugin.icon ? (_jsx("span", { className: "text-[13px]", children: plugin.icon })) : (_jsx("span", { className: "text-[13px] opacity-60", children: "\u2699\uFE0F" })), _jsxs("span", { children: [plugin.name, " ", t("messagecontent.Configuration")] })] }), _jsxs("div", { className: "flex items-center gap-2", children: [plugin.configured && (_jsx("span", { className: "text-[10px] text-ok font-medium", children: t("messagecontent.Configured") })), _jsx("span", { className: `text-[10px] font-medium ${isEnabled ? "text-ok" : "text-muted"}`, children: isEnabled ? "Active" : "Inactive" })] })] }), schema && hasConfigurableParams ? (_jsx("div", { className: "p-3", children: _jsx(ConfigRenderer, { schema: schema, hints: hints, values: mergedValues, setKeys: setKeys, registry: defaultRegistry, pluginId: plugin.id, onChange: handleChange }) })) : (_jsx("div", { className: "px-3 py-2 text-xs text-muted italic", children: t("messagecontent.NoConfigurablePara") })), _jsxs("div", { className: "flex items-center gap-2 px-3 py-2 border-t border-border flex-wrap", children: [schema && hasConfigurableParams && (_jsx(Button, { variant: "default", size: "sm", className: "px-4 py-1.5 h-7 text-xs shadow-sm bg-accent text-accent-fg hover:opacity-90 disabled:opacity-40", onClick: handleSave, disabled: saving || enabling || Object.keys(values).length === 0, children: saving ? "Saving..." : "Save" })), !isEnabled ? (_jsx(Button, { variant: "outline", size: "sm", className: "px-4 py-1.5 h-7 text-xs border-ok/50 text-ok bg-ok/5 hover:bg-ok/10 hover:text-ok disabled:opacity-40", onClick: () => void handleToggle(true), disabled: enabling || saving, children: enabling ? "Enabling..." : "Enable Plugin" })) : (_jsx(Button, { variant: "outline", size: "sm", className: "px-4 py-1.5 h-7 text-xs text-muted hover:border-danger hover:text-danger disabled:opacity-40", onClick: () => void handleToggle(false), disabled: enabling || saving, children: enabling ? "Disabling..." : "Disable" })), saved && (_jsx("span", { className: "text-xs text-ok", children: t("messagecontent.Saved") })), error && _jsx("span", { className: "text-xs text-danger", children: error })] })] }));
496
+ }
497
+ // ── UiSpec block ────────────────────────────────────────────────────
498
+ function UiSpecBlock({ spec, raw }) {
499
+ const { t } = useApp();
500
+ const { sendActionMessage } = useApp();
501
+ const [showRaw, setShowRaw] = useState(false);
502
+ const handleAction = useCallback((action, params) => {
503
+ const paramsStr = params ? ` ${JSON.stringify(params)}` : "";
504
+ void sendActionMessage(`[action:${action}]${paramsStr}`);
505
+ }, [sendActionMessage]);
506
+ return (_jsxs("div", { className: "my-2 border border-border overflow-hidden", children: [_jsxs("div", { className: "flex items-center justify-between px-3 py-1.5 bg-bg-hover border-b border-border", children: [_jsx("span", { className: "text-[10px] font-semibold text-muted uppercase tracking-wider", children: t("messagecontent.InteractiveUI") }), _jsx(Button, { variant: "link", size: "sm", className: "h-auto p-0 text-[10px] text-txt hover:underline decoration-accent/50 underline-offset-2", onClick: () => setShowRaw((v) => !v), children: showRaw ? "Hide JSON" : "View JSON" })] }), showRaw && (_jsx("div", { className: "px-3 py-2 bg-card border-b border-border overflow-x-auto", children: _jsx("pre", { className: "text-[10px] text-muted font-mono whitespace-pre-wrap break-words m-0", children: raw }) })), _jsx("div", { className: "p-3", children: _jsx(UiRenderer, { spec: spec, onAction: handleAction }) })] }));
507
+ }
508
+ // ── Main component ──────────────────────────────────────────────────
509
+ export function MessageContent({ message }) {
510
+ // Parse segments — memoize to avoid re-parsing on every render
511
+ const segments = useMemo(() => {
512
+ try {
513
+ return parseSegments(message.text);
514
+ }
515
+ catch {
516
+ // If parsing fails, just show plain text
517
+ return [{ kind: "text", text: message.text }];
518
+ }
519
+ }, [message.text]);
520
+ // Fast path: single plain-text segment (most messages)
521
+ if (segments.length === 1 && segments[0].kind === "text") {
522
+ return _jsx("div", { className: "whitespace-pre-wrap", children: segments[0].text });
523
+ }
524
+ return (_jsx("div", { children: (() => {
525
+ const keyCounts = new Map();
526
+ const nextKey = (base) => {
527
+ const nextCount = (keyCounts.get(base) ?? 0) + 1;
528
+ keyCounts.set(base, nextCount);
529
+ return `${base}:${nextCount}`;
530
+ };
531
+ return segments.map((seg) => {
532
+ const baseKey = seg.kind === "text"
533
+ ? `text:${seg.text.slice(0, 80)}`
534
+ : seg.kind === "config"
535
+ ? `config:${seg.pluginId}`
536
+ : `ui:${seg.raw.slice(0, 80)}`;
537
+ const segmentKey = nextKey(baseKey);
538
+ switch (seg.kind) {
539
+ case "text":
540
+ return (_jsx("div", { className: "whitespace-pre-wrap", children: seg.text }, segmentKey));
541
+ case "config":
542
+ if (!isSafeNormalizedPluginId(normalizePluginId(seg.pluginId))) {
543
+ return null;
544
+ }
545
+ return (_jsx(InlinePluginConfig, { pluginId: seg.pluginId }, segmentKey));
546
+ case "ui-spec":
547
+ return (_jsx(UiSpecBlock, { spec: seg.spec, raw: seg.raw }, segmentKey));
548
+ default:
549
+ return null;
550
+ }
551
+ });
552
+ })() }));
553
+ }
@@ -0,0 +1,2 @@
1
+ export declare function OnboardingWizard(): import("react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=OnboardingWizard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OnboardingWizard.d.ts","sourceRoot":"","sources":["../../src/components/OnboardingWizard.tsx"],"names":[],"mappings":"AAoBA,wBAAgB,gBAAgB,4CAqK/B"}
@@ -0,0 +1,59 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { LanguageDropdown } from "@elizaos/app-core/components";
3
+ import { normalizeLanguage } from "@elizaos/app-core/i18n";
4
+ import { applyUiTheme, getVrmPreviewUrl, getVrmUrl, useApp, } from "@elizaos/app-core/state";
5
+ import { resolveAppAssetUrl } from "@elizaos/app-core/utils";
6
+ import { useEffect } from "react";
7
+ import { VrmStage } from "./companion/VrmStage";
8
+ import { ActivateStep } from "./onboarding/ActivateStep";
9
+ import { ConnectionStep } from "./onboarding/ConnectionStep";
10
+ import { OnboardingPanel } from "./onboarding/OnboardingPanel";
11
+ import { OnboardingStepNav } from "./onboarding/OnboardingStepNav";
12
+ import { PermissionsStep } from "./onboarding/PermissionsStep";
13
+ import { RpcStep } from "./onboarding/RpcStep";
14
+ import { WakeUpStep } from "./onboarding/WakeUpStep";
15
+ export function OnboardingWizard() {
16
+ const { onboardingStep, selectedVrmIndex, customVrmUrl, uiLanguage, uiTheme, setState, t, } = useApp();
17
+ const setUiLanguage = (lang) => setState("uiLanguage", normalizeLanguage(lang));
18
+ // Use same VRM resolution logic as CompanionView for character unification
19
+ const safeSelectedVrmIndex = selectedVrmIndex > 0 ? selectedVrmIndex : 1;
20
+ const vrmPath = selectedVrmIndex === 0 && customVrmUrl
21
+ ? customVrmUrl
22
+ : getVrmUrl(safeSelectedVrmIndex);
23
+ const fallbackPreview = selectedVrmIndex > 0
24
+ ? getVrmPreviewUrl(safeSelectedVrmIndex)
25
+ : getVrmPreviewUrl(1);
26
+ const worldUrl = resolveAppAssetUrl("worlds/companion-day.spz");
27
+ useEffect(() => {
28
+ // Onboarding keeps a fixed "light" chrome; companion mode owns day/night scenes.
29
+ applyUiTheme("light");
30
+ return () => {
31
+ applyUiTheme(uiTheme);
32
+ };
33
+ }, [uiTheme]);
34
+ function renderStep() {
35
+ switch (onboardingStep) {
36
+ case "wakeUp":
37
+ return _jsx(WakeUpStep, {});
38
+ case "connection":
39
+ return _jsx(ConnectionStep, {});
40
+ case "rpc":
41
+ return _jsx(RpcStep, {});
42
+ case "senses":
43
+ return _jsx(PermissionsStep, {});
44
+ case "activate":
45
+ return _jsx(ActivateStep, {});
46
+ default:
47
+ return null;
48
+ }
49
+ }
50
+ return (_jsxs("div", { className: "onboarding-screen", children: [_jsx("div", { className: "onboarding-bg" }), _jsx("div", { className: "onboarding-bg-overlay" }), _jsx(VrmStage, { vrmPath: vrmPath, worldUrl: worldUrl, fallbackPreviewUrl: fallbackPreview, cameraProfile: "companion_close", initialCompanionZoomNormalized: 1, t: t }), _jsxs("svg", { className: "onboarding-corner onboarding-corner--tl", viewBox: "0 0 36 36", fill: "none", stroke: "rgba(240,185,11,0.18)", strokeWidth: "1", "aria-hidden": "true", children: [_jsx("path", { d: "M0 18 L0 0 L18 0" }), _jsx("circle", { cx: "0", cy: "0", r: "2", fill: "rgba(240,185,11,0.25)", stroke: "none" })] }), _jsxs("svg", { className: "onboarding-corner onboarding-corner--tr", viewBox: "0 0 36 36", fill: "none", stroke: "rgba(240,185,11,0.18)", strokeWidth: "1", "aria-hidden": "true", children: [_jsx("path", { d: "M0 18 L0 0 L18 0" }), _jsx("circle", { cx: "0", cy: "0", r: "2", fill: "rgba(240,185,11,0.25)", stroke: "none" })] }), _jsxs("svg", { className: "onboarding-corner onboarding-corner--bl", viewBox: "0 0 36 36", fill: "none", stroke: "rgba(240,185,11,0.18)", strokeWidth: "1", "aria-hidden": "true", children: [_jsx("path", { d: "M0 18 L0 0 L18 0" }), _jsx("circle", { cx: "0", cy: "0", r: "2", fill: "rgba(240,185,11,0.25)", stroke: "none" })] }), _jsxs("svg", { className: "onboarding-corner onboarding-corner--br", viewBox: "0 0 36 36", fill: "none", stroke: "rgba(240,185,11,0.18)", strokeWidth: "1", "aria-hidden": "true", children: [_jsx("path", { d: "M0 18 L0 0 L18 0" }), _jsx("circle", { cx: "0", cy: "0", r: "2", fill: "rgba(240,185,11,0.25)", stroke: "none" })] }), _jsx("div", { style: {
51
+ position: "absolute",
52
+ top: "1rem",
53
+ right: "1rem",
54
+ zIndex: 50,
55
+ display: "flex",
56
+ gap: "0.5rem",
57
+ alignItems: "center",
58
+ }, children: _jsx(LanguageDropdown, { uiLanguage: uiLanguage, setUiLanguage: setUiLanguage, t: t, variant: "companion" }) }), _jsxs("div", { className: "onboarding-ui-overlay", children: [_jsx(OnboardingStepNav, {}), _jsx(OnboardingPanel, { step: onboardingStep, children: renderStep() })] })] }));
59
+ }
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Pairing view component — simple pairing screen for authentication.
3
+ */
4
+ export declare function PairingView(): import("react/jsx-runtime").JSX.Element;
5
+ //# sourceMappingURL=PairingView.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PairingView.d.ts","sourceRoot":"","sources":["../../src/components/PairingView.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAOH,wBAAgB,WAAW,4CAoG1B"}
@@ -0,0 +1,28 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ /**
3
+ * Pairing view component — simple pairing screen for authentication.
4
+ */
5
+ import { useApp } from "../state";
6
+ const PAIRING_DOCS_URL = "https://github.com/milady-ai/milady/blob/develop/docs/api-reference.mdx#authenticate-via-pairing-code";
7
+ export function PairingView() {
8
+ const { pairingEnabled, pairingExpiresAt, pairingCodeInput, pairingError, pairingBusy, handlePairingSubmit, setState, t, } = useApp();
9
+ const handleCodeChange = (e) => {
10
+ setState("pairingCodeInput", e.target.value);
11
+ };
12
+ const handleSubmit = (e) => {
13
+ e.preventDefault();
14
+ void handlePairingSubmit();
15
+ };
16
+ const formatExpiry = (timestamp) => {
17
+ if (!timestamp)
18
+ return "";
19
+ const now = Date.now();
20
+ const diff = timestamp - now;
21
+ if (diff <= 0)
22
+ return "Expired";
23
+ const minutes = Math.floor(diff / 60000);
24
+ const seconds = Math.floor((diff % 60000) / 1000);
25
+ return `Expires in ${minutes}:${seconds.toString().padStart(2, "0")}`;
26
+ };
27
+ return (_jsxs("div", { className: "max-w-[560px] mx-auto mt-15 p-6 border border-border bg-card rounded-[10px]", children: [_jsx("h1", { className: "text-lg font-semibold mb-2 text-txt-strong", children: t("pairingview.PairingRequired") }), _jsx("p", { className: "text-muted mb-4 leading-relaxed", children: t("pairingview.EnterThePairingCo") }), pairingEnabled ? (_jsxs("form", { onSubmit: handleSubmit, children: [_jsxs("div", { children: [_jsx("label", { htmlFor: "pairing-code", className: "text-sm text-txt-strong block mb-2", children: t("pairingview.PairingCode") }), _jsx("input", { id: "pairing-code", type: "text", value: pairingCodeInput, onChange: handleCodeChange, placeholder: t("pairingview.EnterPairingCode"), disabled: pairingBusy, className: "w-full px-3 py-2.5 rounded-lg border border-border bg-bg-muted text-txt text-sm focus:border-accent focus:outline-none disabled:opacity-50 disabled:cursor-not-allowed" })] }), _jsx("div", { className: "mt-3 flex gap-2.5", children: _jsx("button", { type: "submit", className: "px-6 py-2 border border-accent bg-accent text-accent-fg text-sm cursor-pointer hover:bg-accent-hover disabled:opacity-40 disabled:cursor-not-allowed", disabled: pairingBusy || !pairingCodeInput.trim(), children: pairingBusy ? "Pairing..." : "Submit" }) }), pairingError && (_jsx("p", { className: "mt-2.5 text-danger text-[13px]", children: pairingError })), pairingExpiresAt && (_jsx("p", { className: "mt-2.5 text-muted text-[13px]", children: formatExpiry(pairingExpiresAt) }))] })) : (_jsxs("div", { className: "text-muted text-sm space-y-2", children: [_jsx("p", { children: t("pairingview.PairingIsNotEnabl") }), _jsx("p", { children: t("pairingview.NextSteps") }), _jsxs("ol", { className: "list-decimal pl-5 space-y-1", children: [_jsx("li", { children: t("pairingview.AskTheServerOwner") }), _jsx("li", { children: t("pairingview.EnablePairingOnTh") })] }), _jsx("a", { href: PAIRING_DOCS_URL, target: "_blank", rel: "noreferrer", className: "inline-flex px-3 py-2 border border-border rounded text-txt hover:border-accent hover:text-txt", children: t("pairingview.PairingSetupDocs") })] }))] }));
28
+ }