@elizaos/app-core 2.0.0-alpha.52 → 2.0.0-alpha.53

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 (1108) hide show
  1. package/{dist/actions → actions}/character.d.ts +2 -2
  2. package/{dist/actions → actions}/character.d.ts.map +1 -1
  3. package/{dist/actions → actions}/cloud.d.ts +2 -2
  4. package/{dist/actions → actions}/cloud.d.ts.map +1 -1
  5. package/{dist/actions → actions}/lifecycle.d.ts +3 -3
  6. package/{dist/actions → actions}/lifecycle.d.ts.map +1 -1
  7. package/{dist/actions → actions}/lifecycle.js +1 -1
  8. package/{dist/actions → actions}/triggers.d.ts +2 -2
  9. package/{dist/actions → actions}/triggers.d.ts.map +1 -1
  10. package/{dist/api → api}/client.d.ts +5 -5
  11. package/{dist/api → api}/client.d.ts.map +1 -1
  12. package/{dist/api → api}/client.js +20 -20
  13. package/{dist/bridge → bridge}/capacitor-bridge.d.ts +10 -10
  14. package/{dist/bridge → bridge}/capacitor-bridge.d.ts.map +1 -1
  15. package/{dist/bridge → bridge}/capacitor-bridge.js +7 -7
  16. package/{dist/bridge → bridge}/electrobun-rpc.js +1 -1
  17. package/{dist/bridge → bridge}/plugin-bridge.d.ts +4 -4
  18. package/{dist/bridge → bridge}/plugin-bridge.d.ts.map +1 -1
  19. package/{dist/bridge → bridge}/plugin-bridge.js +1 -1
  20. package/{dist/bridge → bridge}/storage-bridge.js +3 -3
  21. package/{dist/chat → chat}/index.d.ts +1 -1
  22. package/{dist/chat → chat}/index.d.ts.map +1 -1
  23. package/{dist/chat → chat}/index.js +1 -1
  24. package/{dist/components → components}/BugReportModal.js +1 -1
  25. package/{dist/components → components}/CommandPalette.js +1 -1
  26. package/{dist/components → components}/CompanionSceneHost.js +1 -1
  27. package/{dist/components → components}/ElizaCloudDashboard.js +2 -2
  28. package/{dist/components → components}/EmotePicker.js +2 -2
  29. package/{dist/components → components}/GlobalEmoteOverlay.js +4 -4
  30. package/{dist/components → components}/PairingView.js +1 -1
  31. package/{dist/components → components}/ProviderSwitcher.js +16 -16
  32. package/{dist/components → components}/SecretsView.js +1 -1
  33. package/{dist/components → components}/StartupFailureView.js +1 -1
  34. package/{dist/components → components}/StreamView.js +4 -4
  35. package/{dist/components → components}/StripeEmbeddedCheckout.js +2 -2
  36. package/{dist/components → components}/SubscriptionStatus.js +1 -1
  37. package/{dist/components → components}/VoiceConfigView.js +1 -1
  38. package/{dist/components → components}/avatar/VrmEngine.js +1 -1
  39. package/{dist/components → components}/avatar/VrmViewer.d.ts +1 -1
  40. package/{dist/components → components}/avatar/VrmViewer.d.ts.map +1 -1
  41. package/{dist/components → components}/avatar/VrmViewer.js +3 -3
  42. package/{dist/components → components}/companion/walletUtils.d.ts +1 -1
  43. package/{dist/components → components}/companion/walletUtils.d.ts.map +1 -1
  44. package/{dist/components → components}/companion/walletUtils.js +1 -1
  45. package/{dist/components → components}/format.d.ts +1 -1
  46. package/{dist/components → components}/format.js +1 -1
  47. package/{dist/components → components}/permissions/StreamingPermissions.js +1 -1
  48. package/{dist/components → components}/stream/StatusBar.js +2 -2
  49. package/{dist/components → components}/stream/overlays/useOverlayLayout.d.ts +1 -1
  50. package/{dist/components → components}/stream/overlays/useOverlayLayout.js +2 -2
  51. package/events/index.d.ts +42 -0
  52. package/events/index.d.ts.map +1 -0
  53. package/{dist/events → events}/index.js +16 -16
  54. package/{dist/hooks → hooks}/useRetakeCapture.js +1 -1
  55. package/{src/i18n → i18n}/locales/en.json +9 -9
  56. package/{src/i18n → i18n}/locales/es.json +10 -10
  57. package/{src/i18n → i18n}/locales/ko.json +9 -9
  58. package/{src/i18n → i18n}/locales/pt.json +9 -9
  59. package/{src/i18n → i18n}/locales/zh-CN.json +10 -10
  60. package/{dist/navigation → navigation}/index.js +1 -1
  61. package/package.json +142 -52
  62. package/{dist/platform → platform}/browser-launch.js +1 -1
  63. package/{dist/platform → platform}/init.d.ts +1 -1
  64. package/{dist/platform → platform}/init.d.ts.map +1 -1
  65. package/{dist/platform → platform}/init.js +5 -5
  66. package/{dist/platform → platform}/lifo.d.ts +1 -1
  67. package/{dist/platform → platform}/lifo.d.ts.map +1 -1
  68. package/{dist/platform → platform}/lifo.js +1 -1
  69. package/{dist/state → state}/AppContext.js +14 -14
  70. package/{dist/state → state}/onboarding-resume.js +1 -1
  71. package/{dist/state → state}/persistence.js +11 -11
  72. package/{dist/state → state}/vrm.d.ts +1 -1
  73. package/{dist/state → state}/vrm.d.ts.map +1 -1
  74. package/{dist/state → state}/vrm.js +6 -6
  75. package/{dist/utils → utils}/asset-url.d.ts +1 -1
  76. package/{dist/utils → utils}/asset-url.js +2 -2
  77. package/.turbo/turbo-build.log +0 -12
  78. package/LICENSE +0 -21
  79. package/dist/events/index.d.ts +0 -42
  80. package/dist/events/index.d.ts.map +0 -1
  81. package/dist/i18n/locales/en.json +0 -1195
  82. package/dist/i18n/locales/es.json +0 -1195
  83. package/dist/i18n/locales/ko.json +0 -1195
  84. package/dist/i18n/locales/pt.json +0 -1195
  85. package/dist/i18n/locales/zh-CN.json +0 -1195
  86. package/src/App.tsx +0 -498
  87. package/src/actions/character.test.ts +0 -139
  88. package/src/actions/character.ts +0 -152
  89. package/src/actions/chat-helpers.ts +0 -100
  90. package/src/actions/cloud.ts +0 -59
  91. package/src/actions/index.ts +0 -12
  92. package/src/actions/lifecycle.ts +0 -175
  93. package/src/actions/onboarding.ts +0 -42
  94. package/src/actions/triggers.ts +0 -190
  95. package/src/ambient.d.ts +0 -16
  96. package/src/api/client.ts +0 -5339
  97. package/src/api/index.ts +0 -1
  98. package/src/autonomy/index.ts +0 -477
  99. package/src/bridge/capacitor-bridge.ts +0 -295
  100. package/src/bridge/electrobun-rpc.ts +0 -58
  101. package/src/bridge/electrobun-runtime.ts +0 -28
  102. package/src/bridge/index.ts +0 -5
  103. package/src/bridge/native-plugins.ts +0 -134
  104. package/src/bridge/plugin-bridge.ts +0 -352
  105. package/src/bridge/storage-bridge.ts +0 -162
  106. package/src/chat/index.ts +0 -250
  107. package/src/coding/index.ts +0 -43
  108. package/src/components/AdvancedPageView.tsx +0 -362
  109. package/src/components/AgentActivityBox.tsx +0 -49
  110. package/src/components/ApiKeyConfig.tsx +0 -224
  111. package/src/components/AppsPageView.tsx +0 -52
  112. package/src/components/AppsView.tsx +0 -293
  113. package/src/components/AvatarLoader.tsx +0 -92
  114. package/src/components/AvatarSelector.tsx +0 -223
  115. package/src/components/BscTradePanel.tsx +0 -549
  116. package/src/components/BugReportModal.tsx +0 -499
  117. package/src/components/CharacterView.tsx +0 -1814
  118. package/src/components/ChatAvatar.test.ts +0 -97
  119. package/src/components/ChatAvatar.tsx +0 -147
  120. package/src/components/ChatComposer.tsx +0 -330
  121. package/src/components/ChatMessage.tsx +0 -448
  122. package/src/components/ChatModalView.test.tsx +0 -118
  123. package/src/components/ChatModalView.tsx +0 -125
  124. package/src/components/ChatView.tsx +0 -992
  125. package/src/components/CloudSourceControls.tsx +0 -80
  126. package/src/components/CodingAgentSettingsSection.tsx +0 -538
  127. package/src/components/CommandPalette.tsx +0 -284
  128. package/src/components/CompanionSceneHost.tsx +0 -497
  129. package/src/components/CompanionShell.tsx +0 -31
  130. package/src/components/CompanionView.tsx +0 -109
  131. package/src/components/ConfigPageView.tsx +0 -762
  132. package/src/components/ConfigSaveFooter.tsx +0 -41
  133. package/src/components/ConfirmModal.tsx +0 -379
  134. package/src/components/ConnectionFailedBanner.tsx +0 -91
  135. package/src/components/ConnectorsPageView.tsx +0 -13
  136. package/src/components/ConversationsSidebar.tsx +0 -279
  137. package/src/components/CustomActionEditor.tsx +0 -1127
  138. package/src/components/CustomActionsPanel.tsx +0 -288
  139. package/src/components/CustomActionsView.tsx +0 -322
  140. package/src/components/DatabasePageView.tsx +0 -55
  141. package/src/components/DatabaseView.tsx +0 -814
  142. package/src/components/ElizaCloudDashboard.tsx +0 -1696
  143. package/src/components/EmotePicker.tsx +0 -529
  144. package/src/components/ErrorBoundary.tsx +0 -76
  145. package/src/components/FineTuningView.tsx +0 -1080
  146. package/src/components/GameView.tsx +0 -551
  147. package/src/components/GameViewOverlay.tsx +0 -133
  148. package/src/components/GlobalEmoteOverlay.tsx +0 -152
  149. package/src/components/Header.test.tsx +0 -413
  150. package/src/components/Header.tsx +0 -403
  151. package/src/components/HeartbeatsView.tsx +0 -1003
  152. package/src/components/InventoryView.tsx +0 -388
  153. package/src/components/KnowledgeView.tsx +0 -1128
  154. package/src/components/LanguageDropdown.tsx +0 -188
  155. package/src/components/LifoMonitorPanel.tsx +0 -196
  156. package/src/components/LifoSandboxView.tsx +0 -499
  157. package/src/components/LoadingScreen.tsx +0 -112
  158. package/src/components/LogsPageView.tsx +0 -17
  159. package/src/components/LogsView.tsx +0 -239
  160. package/src/components/MediaGalleryView.tsx +0 -433
  161. package/src/components/MediaSettingsSection.tsx +0 -893
  162. package/src/components/MessageContent.tsx +0 -815
  163. package/src/components/OnboardingWizard.test.tsx +0 -104
  164. package/src/components/OnboardingWizard.tsx +0 -206
  165. package/src/components/PairingView.tsx +0 -110
  166. package/src/components/PermissionsSection.tsx +0 -1186
  167. package/src/components/PluginsPageView.tsx +0 -9
  168. package/src/components/PluginsView.tsx +0 -3165
  169. package/src/components/ProviderSwitcher.tsx +0 -905
  170. package/src/components/RestartBanner.tsx +0 -76
  171. package/src/components/RuntimeView.tsx +0 -460
  172. package/src/components/SaveCommandModal.tsx +0 -211
  173. package/src/components/SecretsView.tsx +0 -569
  174. package/src/components/SettingsView.tsx +0 -825
  175. package/src/components/ShellOverlays.tsx +0 -41
  176. package/src/components/ShortcutsOverlay.tsx +0 -155
  177. package/src/components/SkillsView.tsx +0 -1435
  178. package/src/components/StartupFailureView.tsx +0 -63
  179. package/src/components/StreamView.tsx +0 -483
  180. package/src/components/StripeEmbeddedCheckout.tsx +0 -155
  181. package/src/components/SubscriptionStatus.tsx +0 -640
  182. package/src/components/SystemWarningBanner.tsx +0 -71
  183. package/src/components/ThemeToggle.tsx +0 -100
  184. package/src/components/TrajectoriesView.tsx +0 -526
  185. package/src/components/TrajectoryDetailView.tsx +0 -426
  186. package/src/components/TriggersView.tsx +0 -1
  187. package/src/components/VectorBrowserView.tsx +0 -1633
  188. package/src/components/VoiceConfigView.tsx +0 -674
  189. package/src/components/VrmStage.test.ts +0 -219
  190. package/src/components/VrmStage.tsx +0 -432
  191. package/src/components/WhatsAppQrOverlay.tsx +0 -230
  192. package/src/components/__tests__/chainConfig.test.ts +0 -220
  193. package/src/components/apps/AppDetailPane.tsx +0 -242
  194. package/src/components/apps/AppsCatalogGrid.tsx +0 -137
  195. package/src/components/apps/extensions/registry.ts +0 -13
  196. package/src/components/apps/extensions/types.ts +0 -9
  197. package/src/components/apps/helpers.ts +0 -43
  198. package/src/components/avatar/VrmAnimationLoader.test.ts +0 -164
  199. package/src/components/avatar/VrmAnimationLoader.ts +0 -151
  200. package/src/components/avatar/VrmBlinkController.ts +0 -118
  201. package/src/components/avatar/VrmCameraManager.ts +0 -407
  202. package/src/components/avatar/VrmEngine.ts +0 -2696
  203. package/src/components/avatar/VrmFootShadow.ts +0 -96
  204. package/src/components/avatar/VrmViewer.tsx +0 -421
  205. package/src/components/avatar/__tests__/VrmCameraManager.test.ts +0 -168
  206. package/src/components/avatar/__tests__/VrmEngine.test.ts +0 -1574
  207. package/src/components/avatar/mixamoVRMRigMap.ts +0 -62
  208. package/src/components/avatar/retargetMixamoFbxToVrm.ts +0 -144
  209. package/src/components/avatar/retargetMixamoGltfToVrm.ts +0 -119
  210. package/src/components/chainConfig.ts +0 -380
  211. package/src/components/companion/CompanionHeader.tsx +0 -47
  212. package/src/components/companion/CompanionSceneHost.tsx +0 -5
  213. package/src/components/companion/VrmStage.tsx +0 -2
  214. package/src/components/companion/__tests__/walletUtils.test.ts +0 -742
  215. package/src/components/companion/walletUtils.ts +0 -290
  216. package/src/components/companion-shell-styles.test.ts +0 -142
  217. package/src/components/companion-shell-styles.ts +0 -270
  218. package/src/components/confirm-delete-control.tsx +0 -69
  219. package/src/components/conversations/ConversationListItem.tsx +0 -185
  220. package/src/components/conversations/conversation-utils.ts +0 -151
  221. package/src/components/format.ts +0 -131
  222. package/src/components/index.ts +0 -94
  223. package/src/components/inventory/CopyableAddress.tsx +0 -41
  224. package/src/components/inventory/InventoryToolbar.tsx +0 -142
  225. package/src/components/inventory/NftGrid.tsx +0 -99
  226. package/src/components/inventory/TokenLogo.tsx +0 -71
  227. package/src/components/inventory/TokensTable.tsx +0 -216
  228. package/src/components/inventory/constants.ts +0 -170
  229. package/src/components/inventory/index.ts +0 -29
  230. package/src/components/inventory/media-url.test.ts +0 -38
  231. package/src/components/inventory/media-url.ts +0 -36
  232. package/src/components/inventory/useInventoryData.ts +0 -460
  233. package/src/components/knowledge-upload-image.ts +0 -215
  234. package/src/components/labels.ts +0 -46
  235. package/src/components/onboarding/ActivateStep.tsx +0 -30
  236. package/src/components/onboarding/ConnectionStep.tsx +0 -1530
  237. package/src/components/onboarding/IdentityStep.tsx +0 -272
  238. package/src/components/onboarding/OnboardingPanel.tsx +0 -39
  239. package/src/components/onboarding/OnboardingStepNav.tsx +0 -31
  240. package/src/components/onboarding/PermissionsStep.tsx +0 -20
  241. package/src/components/onboarding/RpcStep.tsx +0 -402
  242. package/src/components/permissions/PermissionIcon.tsx +0 -25
  243. package/src/components/permissions/StreamingPermissions.tsx +0 -413
  244. package/src/components/plugins/showcase-data.ts +0 -481
  245. package/src/components/shared/ShellHeaderControls.tsx +0 -193
  246. package/src/components/shared-companion-scene-context.ts +0 -15
  247. package/src/components/skeletons.tsx +0 -88
  248. package/src/components/stream/ActivityFeed.tsx +0 -113
  249. package/src/components/stream/AvatarPip.tsx +0 -10
  250. package/src/components/stream/ChatContent.tsx +0 -126
  251. package/src/components/stream/ChatTicker.tsx +0 -55
  252. package/src/components/stream/IdleContent.tsx +0 -73
  253. package/src/components/stream/StatusBar.tsx +0 -469
  254. package/src/components/stream/StreamSettings.tsx +0 -506
  255. package/src/components/stream/StreamTerminal.tsx +0 -94
  256. package/src/components/stream/StreamVoiceConfig.tsx +0 -160
  257. package/src/components/stream/helpers.ts +0 -134
  258. package/src/components/stream/overlays/OverlayLayer.tsx +0 -75
  259. package/src/components/stream/overlays/built-in/ActionTickerWidget.tsx +0 -64
  260. package/src/components/stream/overlays/built-in/AlertPopupWidget.tsx +0 -87
  261. package/src/components/stream/overlays/built-in/BrandingWidget.tsx +0 -51
  262. package/src/components/stream/overlays/built-in/CustomHtmlWidget.tsx +0 -105
  263. package/src/components/stream/overlays/built-in/PeonGlassWidget.tsx +0 -265
  264. package/src/components/stream/overlays/built-in/PeonHudWidget.tsx +0 -247
  265. package/src/components/stream/overlays/built-in/PeonSakuraWidget.tsx +0 -278
  266. package/src/components/stream/overlays/built-in/ThoughtBubbleWidget.tsx +0 -77
  267. package/src/components/stream/overlays/built-in/ViewerCountWidget.tsx +0 -46
  268. package/src/components/stream/overlays/built-in/index.ts +0 -13
  269. package/src/components/stream/overlays/registry.ts +0 -22
  270. package/src/components/stream/overlays/types.ts +0 -90
  271. package/src/components/stream/overlays/useOverlayLayout.ts +0 -218
  272. package/src/components/trajectory-format.ts +0 -50
  273. package/src/components/ui-badges.tsx +0 -109
  274. package/src/components/ui-switch.tsx +0 -57
  275. package/src/components/vector-browser-three.ts +0 -27
  276. package/src/config/config-catalog.ts +0 -1092
  277. package/src/config/config-field.tsx +0 -1924
  278. package/src/config/config-renderer.tsx +0 -734
  279. package/src/config/index.ts +0 -11
  280. package/src/config/ui-renderer.tsx +0 -1751
  281. package/src/config/ui-spec.ts +0 -256
  282. package/src/events/index.ts +0 -89
  283. package/src/hooks/index.ts +0 -13
  284. package/src/hooks/useBugReport.tsx +0 -43
  285. package/src/hooks/useCanvasWindow.ts +0 -372
  286. package/src/hooks/useChatAvatarVoice.ts +0 -111
  287. package/src/hooks/useContextMenu.ts +0 -127
  288. package/src/hooks/useKeyboardShortcuts.ts +0 -86
  289. package/src/hooks/useLifoSync.ts +0 -143
  290. package/src/hooks/useMemoryMonitor.ts +0 -334
  291. package/src/hooks/useRenderGuard.ts +0 -43
  292. package/src/hooks/useRetakeCapture.ts +0 -67
  293. package/src/hooks/useStreamPopoutNavigation.ts +0 -27
  294. package/src/hooks/useTimeout.ts +0 -37
  295. package/src/hooks/useVoiceChat.ts +0 -1440
  296. package/src/hooks/useWhatsAppPairing.ts +0 -123
  297. package/src/i18n/index.ts +0 -76
  298. package/src/i18n/messages.ts +0 -21
  299. package/src/index.ts +0 -6
  300. package/src/navigation/index.ts +0 -282
  301. package/src/navigation.test.ts +0 -189
  302. package/src/onboarding-config.test.ts +0 -104
  303. package/src/onboarding-config.ts +0 -114
  304. package/src/platform/browser-launch.test.ts +0 -94
  305. package/src/platform/browser-launch.ts +0 -149
  306. package/src/platform/index.ts +0 -58
  307. package/src/platform/init.ts +0 -236
  308. package/src/platform/lifo.ts +0 -225
  309. package/src/providers/index.ts +0 -99
  310. package/src/state/AppContext.tsx +0 -5869
  311. package/src/state/index.ts +0 -6
  312. package/src/state/internal.ts +0 -86
  313. package/src/state/onboarding-resume.test.ts +0 -135
  314. package/src/state/onboarding-resume.ts +0 -263
  315. package/src/state/parsers.test.ts +0 -124
  316. package/src/state/parsers.ts +0 -309
  317. package/src/state/persistence.ts +0 -320
  318. package/src/state/shell-routing.ts +0 -32
  319. package/src/state/types.ts +0 -696
  320. package/src/state/ui-preferences.ts +0 -3
  321. package/src/state/useApp.ts +0 -23
  322. package/src/state/vrm.ts +0 -76
  323. package/src/stories/AppMockProvider.tsx +0 -32
  324. package/src/stories/ChatEmptyState.stories.tsx +0 -27
  325. package/src/stories/ChatMessage.stories.tsx +0 -115
  326. package/src/stories/CompanionHeader.stories.tsx +0 -74
  327. package/src/stories/CompanionView.stories.tsx +0 -33
  328. package/src/stories/ConversationListItem.stories.tsx +0 -102
  329. package/src/stories/TypingIndicator.stories.tsx +0 -28
  330. package/src/types/index.ts +0 -715
  331. package/src/types/react-test-renderer.d.ts +0 -45
  332. package/src/utils/asset-url.ts +0 -110
  333. package/src/utils/assistant-text.ts +0 -172
  334. package/src/utils/clipboard.ts +0 -41
  335. package/src/utils/desktop-dialogs.ts +0 -80
  336. package/src/utils/index.ts +0 -6
  337. package/src/utils/number-parsing.ts +0 -125
  338. package/src/utils/openExternalUrl.ts +0 -20
  339. package/src/utils/spoken-text.ts +0 -65
  340. package/src/utils/streaming-text.ts +0 -120
  341. package/src/voice/index.ts +0 -1
  342. package/src/voice/types.ts +0 -197
  343. package/src/wallet-rpc.ts +0 -176
  344. package/test/app/AppContext.pty-sessions.test.tsx +0 -143
  345. package/test/app/MessageContent.test.tsx +0 -366
  346. package/test/app/PermissionsOnboarding.test.tsx +0 -356
  347. package/test/app/PermissionsSection.test.tsx +0 -573
  348. package/test/app/advanced-trajectory-fine-tuning.e2e.test.ts +0 -397
  349. package/test/app/agent-activity-box.test.tsx +0 -132
  350. package/test/app/agent-transfer-lock.test.ts +0 -274
  351. package/test/app/api-client-electron-fallback.test.ts +0 -139
  352. package/test/app/api-client-timeout.test.ts +0 -75
  353. package/test/app/api-client-ws.test.ts +0 -98
  354. package/test/app/api-client.ws-max-reconnect.test.ts +0 -139
  355. package/test/app/api-client.ws-reconnect.test.ts +0 -157
  356. package/test/app/app-context-autonomy-events.test.ts +0 -478
  357. package/test/app/apps-page-view.test.ts +0 -114
  358. package/test/app/apps-view.test.ts +0 -591
  359. package/test/app/autonomous-workflows.e2e.test.ts +0 -765
  360. package/test/app/autonomy-events.test.ts +0 -150
  361. package/test/app/avatar-selector.test.tsx +0 -52
  362. package/test/app/bsc-trade-panel.test.tsx +0 -134
  363. package/test/app/bug-report-modal.test.tsx +0 -353
  364. package/test/app/character-customization.e2e.test.ts +0 -1199
  365. package/test/app/chat-advanced-features.e2e.test.ts +0 -706
  366. package/test/app/chat-composer.test.tsx +0 -181
  367. package/test/app/chat-language-header.test.ts +0 -64
  368. package/test/app/chat-message.test.tsx +0 -222
  369. package/test/app/chat-modal-view.test.tsx +0 -191
  370. package/test/app/chat-routine-filter.test.ts +0 -96
  371. package/test/app/chat-send-lock.test.ts +0 -1465
  372. package/test/app/chat-stream-api-client.test.tsx +0 -390
  373. package/test/app/chat-view-game-modal.test.tsx +0 -661
  374. package/test/app/chat-view.test.tsx +0 -877
  375. package/test/app/cloud-api.e2e.test.ts +0 -258
  376. package/test/app/cloud-login-flow.e2e.test.ts +0 -494
  377. package/test/app/cloud-login-lock.test.ts +0 -412
  378. package/test/app/command-palette.test.tsx +0 -184
  379. package/test/app/command-registry.test.ts +0 -75
  380. package/test/app/companion-greeting-wave.test.tsx +0 -431
  381. package/test/app/companion-stale-conversation.test.tsx +0 -447
  382. package/test/app/companion-view.test.tsx +0 -690
  383. package/test/app/confirm-delete-control.test.ts +0 -79
  384. package/test/app/confirm-modal.test.tsx +0 -219
  385. package/test/app/connectors-ui.e2e.test.ts +0 -508
  386. package/test/app/conversations-sidebar-game-modal.test.tsx +0 -265
  387. package/test/app/conversations-sidebar.test.tsx +0 -185
  388. package/test/app/custom-actions-smoke.test.ts +0 -387
  389. package/test/app/custom-avatar-api-client.test.ts +0 -207
  390. package/test/app/desktop-utils.test.ts +0 -145
  391. package/test/app/electrobun-rpc-bridge.test.ts +0 -83
  392. package/test/app/events.test.ts +0 -88
  393. package/test/app/export-import-flows.e2e.test.ts +0 -700
  394. package/test/app/fine-tuning-view.test.ts +0 -471
  395. package/test/app/game-view-auth-session.test.tsx +0 -187
  396. package/test/app/game-view.test.ts +0 -444
  397. package/test/app/global-emote-overlay.test.tsx +0 -106
  398. package/test/app/header-status.test.tsx +0 -149
  399. package/test/app/i18n.test.ts +0 -152
  400. package/test/app/inventory-bsc-view.test.ts +0 -940
  401. package/test/app/knowledge-ui.e2e.test.ts +0 -762
  402. package/test/app/knowledge-upload-helpers.test.ts +0 -124
  403. package/test/app/lifecycle-lock.test.ts +0 -267
  404. package/test/app/lifo-popout-utils.test.ts +0 -208
  405. package/test/app/lifo-safe-endpoint.test.ts +0 -34
  406. package/test/app/loading-screen.test.tsx +0 -45
  407. package/test/app/memory-monitor.test.ts +0 -332
  408. package/test/app/navigation.test.tsx +0 -22
  409. package/test/app/onboarding-finish-lock.test.ts +0 -673
  410. package/test/app/onboarding-language.test.tsx +0 -160
  411. package/test/app/onboarding-steps.test.tsx +0 -375
  412. package/test/app/open-external-url.test.ts +0 -65
  413. package/test/app/pages-navigation-smoke.e2e.test.ts +0 -638
  414. package/test/app/pairing-lock.test.ts +0 -260
  415. package/test/app/pairing-view.test.tsx +0 -74
  416. package/test/app/permissions-section.test.ts +0 -432
  417. package/test/app/plugin-bridge.test.ts +0 -109
  418. package/test/app/plugins-ui.e2e.test.ts +0 -605
  419. package/test/app/plugins-view-game-modal.test.tsx +0 -687
  420. package/test/app/plugins-view-toggle-restart.test.ts +0 -129
  421. package/test/app/provider-dropdown-default.test.tsx +0 -300
  422. package/test/app/restart-banner.test.tsx +0 -197
  423. package/test/app/retake-capture.test.ts +0 -84
  424. package/test/app/sandbox-api-client.test.ts +0 -108
  425. package/test/app/save-command-modal.test.tsx +0 -109
  426. package/test/app/secrets-view.test.tsx +0 -92
  427. package/test/app/settings-control-styles.test.tsx +0 -142
  428. package/test/app/settings-reset.e2e.test.ts +0 -726
  429. package/test/app/settings-sections.e2e.test.ts +0 -614
  430. package/test/app/shared-format.test.ts +0 -44
  431. package/test/app/shared-switch.test.ts +0 -69
  432. package/test/app/shell-mode-switching.e2e.test.ts +0 -840
  433. package/test/app/shell-mode-tab-memory.test.tsx +0 -58
  434. package/test/app/shell-overlays.test.tsx +0 -50
  435. package/test/app/shortcuts-overlay.test.tsx +0 -111
  436. package/test/app/sse-interruption.test.ts +0 -122
  437. package/test/app/startup-asset-missing.e2e.test.ts +0 -126
  438. package/test/app/startup-backend-missing.e2e.test.ts +0 -118
  439. package/test/app/startup-chat.e2e.test.ts +0 -322
  440. package/test/app/startup-conversation-restore.test.tsx +0 -381
  441. package/test/app/startup-failure-view.test.tsx +0 -103
  442. package/test/app/startup-onboarding.e2e.test.ts +0 -618
  443. package/test/app/startup-timeout.test.tsx +0 -80
  444. package/test/app/startup-token-401.e2e.test.ts +0 -103
  445. package/test/app/stream-helpers.test.ts +0 -46
  446. package/test/app/stream-popout-navigation.test.tsx +0 -41
  447. package/test/app/stream-status-bar.test.tsx +0 -89
  448. package/test/app/theme-toggle.test.tsx +0 -33
  449. package/test/app/training-api-client.test.ts +0 -128
  450. package/test/app/trajectories-view.test.tsx +0 -220
  451. package/test/app/triggers-api-client.test.ts +0 -77
  452. package/test/app/triggers-navigation.test.ts +0 -113
  453. package/test/app/triggers-view.e2e.test.ts +0 -675
  454. package/test/app/update-channel-lock.test.ts +0 -259
  455. package/test/app/vector-browser.async-cleanup.test.tsx +0 -367
  456. package/test/app/vector-browser.e2e.test.ts +0 -653
  457. package/test/app/vrm-stage.test.tsx +0 -351
  458. package/test/app/vrm-viewer.test.tsx +0 -298
  459. package/test/app/wallet-api-save-lock.test.ts +0 -299
  460. package/test/app/wallet-hooks.test.ts +0 -405
  461. package/test/app/wallet-ui-flows.e2e.test.ts +0 -556
  462. package/test/avatar/asset-url.test.ts +0 -90
  463. package/test/avatar/avatar-selector.test.ts +0 -173
  464. package/test/avatar/mixamo-vrm-rig-map.test.ts +0 -111
  465. package/test/avatar/voice-chat-streaming-text.test.ts +0 -96
  466. package/test/avatar/voice-chat.test.ts +0 -391
  467. package/test/browser-extension/README.md +0 -138
  468. package/test/browser-extension/test-harness.ts +0 -499
  469. package/test/capacitor-plugins.e2e.test.ts +0 -168
  470. package/test/test-types.ts +0 -5
  471. package/test/ui/command-palette-commands.test.ts +0 -57
  472. package/test/ui/ui-renderer.test.ts +0 -39
  473. package/test/utils/assistant-text.test.ts +0 -68
  474. package/test/utils/streaming-text.test.ts +0 -89
  475. package/tsconfig.build.json +0 -19
  476. package/tsconfig.json +0 -20
  477. package/tsconfig.typecheck.json +0 -12
  478. /package/{dist/App.d.ts → App.d.ts} +0 -0
  479. /package/{dist/App.d.ts.map → App.d.ts.map} +0 -0
  480. /package/{dist/App.js → App.js} +0 -0
  481. /package/{dist/actions → actions}/character.js +0 -0
  482. /package/{dist/actions → actions}/chat-helpers.d.ts +0 -0
  483. /package/{dist/actions → actions}/chat-helpers.d.ts.map +0 -0
  484. /package/{dist/actions → actions}/chat-helpers.js +0 -0
  485. /package/{dist/actions → actions}/cloud.js +0 -0
  486. /package/{dist/actions → actions}/index.d.ts +0 -0
  487. /package/{dist/actions → actions}/index.d.ts.map +0 -0
  488. /package/{dist/actions → actions}/index.js +0 -0
  489. /package/{dist/actions → actions}/onboarding.d.ts +0 -0
  490. /package/{dist/actions → actions}/onboarding.d.ts.map +0 -0
  491. /package/{dist/actions → actions}/onboarding.js +0 -0
  492. /package/{dist/actions → actions}/triggers.js +0 -0
  493. /package/{dist/api → api}/index.d.ts +0 -0
  494. /package/{dist/api → api}/index.d.ts.map +0 -0
  495. /package/{dist/api → api}/index.js +0 -0
  496. /package/{dist/autonomy → autonomy}/index.d.ts +0 -0
  497. /package/{dist/autonomy → autonomy}/index.d.ts.map +0 -0
  498. /package/{dist/autonomy → autonomy}/index.js +0 -0
  499. /package/{dist/bridge → bridge}/electrobun-rpc.d.ts +0 -0
  500. /package/{dist/bridge → bridge}/electrobun-rpc.d.ts.map +0 -0
  501. /package/{dist/bridge → bridge}/electrobun-runtime.d.ts +0 -0
  502. /package/{dist/bridge → bridge}/electrobun-runtime.d.ts.map +0 -0
  503. /package/{dist/bridge → bridge}/electrobun-runtime.js +0 -0
  504. /package/{dist/bridge → bridge}/index.d.ts +0 -0
  505. /package/{dist/bridge → bridge}/index.d.ts.map +0 -0
  506. /package/{dist/bridge → bridge}/index.js +0 -0
  507. /package/{dist/bridge → bridge}/native-plugins.d.ts +0 -0
  508. /package/{dist/bridge → bridge}/native-plugins.d.ts.map +0 -0
  509. /package/{dist/bridge → bridge}/native-plugins.js +0 -0
  510. /package/{dist/bridge → bridge}/storage-bridge.d.ts +0 -0
  511. /package/{dist/bridge → bridge}/storage-bridge.d.ts.map +0 -0
  512. /package/{dist/coding → coding}/index.d.ts +0 -0
  513. /package/{dist/coding → coding}/index.d.ts.map +0 -0
  514. /package/{dist/coding → coding}/index.js +0 -0
  515. /package/{dist/components → components}/AdvancedPageView.d.ts +0 -0
  516. /package/{dist/components → components}/AdvancedPageView.d.ts.map +0 -0
  517. /package/{dist/components → components}/AdvancedPageView.js +0 -0
  518. /package/{dist/components → components}/AgentActivityBox.d.ts +0 -0
  519. /package/{dist/components → components}/AgentActivityBox.d.ts.map +0 -0
  520. /package/{dist/components → components}/AgentActivityBox.js +0 -0
  521. /package/{dist/components → components}/ApiKeyConfig.d.ts +0 -0
  522. /package/{dist/components → components}/ApiKeyConfig.d.ts.map +0 -0
  523. /package/{dist/components → components}/ApiKeyConfig.js +0 -0
  524. /package/{dist/components → components}/AppsPageView.d.ts +0 -0
  525. /package/{dist/components → components}/AppsPageView.d.ts.map +0 -0
  526. /package/{dist/components → components}/AppsPageView.js +0 -0
  527. /package/{dist/components → components}/AppsView.d.ts +0 -0
  528. /package/{dist/components → components}/AppsView.d.ts.map +0 -0
  529. /package/{dist/components → components}/AppsView.js +0 -0
  530. /package/{dist/components → components}/AvatarLoader.d.ts +0 -0
  531. /package/{dist/components → components}/AvatarLoader.d.ts.map +0 -0
  532. /package/{dist/components → components}/AvatarLoader.js +0 -0
  533. /package/{dist/components → components}/AvatarSelector.d.ts +0 -0
  534. /package/{dist/components → components}/AvatarSelector.d.ts.map +0 -0
  535. /package/{dist/components → components}/AvatarSelector.js +0 -0
  536. /package/{dist/components → components}/BscTradePanel.d.ts +0 -0
  537. /package/{dist/components → components}/BscTradePanel.d.ts.map +0 -0
  538. /package/{dist/components → components}/BscTradePanel.js +0 -0
  539. /package/{dist/components → components}/BugReportModal.d.ts +0 -0
  540. /package/{dist/components → components}/BugReportModal.d.ts.map +0 -0
  541. /package/{dist/components → components}/CharacterView.d.ts +0 -0
  542. /package/{dist/components → components}/CharacterView.d.ts.map +0 -0
  543. /package/{dist/components → components}/CharacterView.js +0 -0
  544. /package/{dist/components → components}/ChatAvatar.d.ts +0 -0
  545. /package/{dist/components → components}/ChatAvatar.d.ts.map +0 -0
  546. /package/{dist/components → components}/ChatAvatar.js +0 -0
  547. /package/{dist/components → components}/ChatComposer.d.ts +0 -0
  548. /package/{dist/components → components}/ChatComposer.d.ts.map +0 -0
  549. /package/{dist/components → components}/ChatComposer.js +0 -0
  550. /package/{dist/components → components}/ChatMessage.d.ts +0 -0
  551. /package/{dist/components → components}/ChatMessage.d.ts.map +0 -0
  552. /package/{dist/components → components}/ChatMessage.js +0 -0
  553. /package/{dist/components → components}/ChatModalView.d.ts +0 -0
  554. /package/{dist/components → components}/ChatModalView.d.ts.map +0 -0
  555. /package/{dist/components → components}/ChatModalView.js +0 -0
  556. /package/{dist/components → components}/ChatView.d.ts +0 -0
  557. /package/{dist/components → components}/ChatView.d.ts.map +0 -0
  558. /package/{dist/components → components}/ChatView.js +0 -0
  559. /package/{dist/components → components}/CloudSourceControls.d.ts +0 -0
  560. /package/{dist/components → components}/CloudSourceControls.d.ts.map +0 -0
  561. /package/{dist/components → components}/CloudSourceControls.js +0 -0
  562. /package/{dist/components → components}/CodingAgentSettingsSection.d.ts +0 -0
  563. /package/{dist/components → components}/CodingAgentSettingsSection.d.ts.map +0 -0
  564. /package/{dist/components → components}/CodingAgentSettingsSection.js +0 -0
  565. /package/{dist/components → components}/CommandPalette.d.ts +0 -0
  566. /package/{dist/components → components}/CommandPalette.d.ts.map +0 -0
  567. /package/{dist/components → components}/CompanionSceneHost.d.ts +0 -0
  568. /package/{dist/components → components}/CompanionSceneHost.d.ts.map +0 -0
  569. /package/{dist/components → components}/CompanionShell.d.ts +0 -0
  570. /package/{dist/components → components}/CompanionShell.d.ts.map +0 -0
  571. /package/{dist/components → components}/CompanionShell.js +0 -0
  572. /package/{dist/components → components}/CompanionView.d.ts +0 -0
  573. /package/{dist/components → components}/CompanionView.d.ts.map +0 -0
  574. /package/{dist/components → components}/CompanionView.js +0 -0
  575. /package/{dist/components → components}/ConfigPageView.d.ts +0 -0
  576. /package/{dist/components → components}/ConfigPageView.d.ts.map +0 -0
  577. /package/{dist/components → components}/ConfigPageView.js +0 -0
  578. /package/{dist/components → components}/ConfigSaveFooter.d.ts +0 -0
  579. /package/{dist/components → components}/ConfigSaveFooter.d.ts.map +0 -0
  580. /package/{dist/components → components}/ConfigSaveFooter.js +0 -0
  581. /package/{dist/components → components}/ConfirmModal.d.ts +0 -0
  582. /package/{dist/components → components}/ConfirmModal.d.ts.map +0 -0
  583. /package/{dist/components → components}/ConfirmModal.js +0 -0
  584. /package/{dist/components → components}/ConnectionFailedBanner.d.ts +0 -0
  585. /package/{dist/components → components}/ConnectionFailedBanner.d.ts.map +0 -0
  586. /package/{dist/components → components}/ConnectionFailedBanner.js +0 -0
  587. /package/{dist/components → components}/ConnectorsPageView.d.ts +0 -0
  588. /package/{dist/components → components}/ConnectorsPageView.d.ts.map +0 -0
  589. /package/{dist/components → components}/ConnectorsPageView.js +0 -0
  590. /package/{dist/components → components}/ConversationsSidebar.d.ts +0 -0
  591. /package/{dist/components → components}/ConversationsSidebar.d.ts.map +0 -0
  592. /package/{dist/components → components}/ConversationsSidebar.js +0 -0
  593. /package/{dist/components → components}/CustomActionEditor.d.ts +0 -0
  594. /package/{dist/components → components}/CustomActionEditor.d.ts.map +0 -0
  595. /package/{dist/components → components}/CustomActionEditor.js +0 -0
  596. /package/{dist/components → components}/CustomActionsPanel.d.ts +0 -0
  597. /package/{dist/components → components}/CustomActionsPanel.d.ts.map +0 -0
  598. /package/{dist/components → components}/CustomActionsPanel.js +0 -0
  599. /package/{dist/components → components}/CustomActionsView.d.ts +0 -0
  600. /package/{dist/components → components}/CustomActionsView.d.ts.map +0 -0
  601. /package/{dist/components → components}/CustomActionsView.js +0 -0
  602. /package/{dist/components → components}/DatabasePageView.d.ts +0 -0
  603. /package/{dist/components → components}/DatabasePageView.d.ts.map +0 -0
  604. /package/{dist/components → components}/DatabasePageView.js +0 -0
  605. /package/{dist/components → components}/DatabaseView.d.ts +0 -0
  606. /package/{dist/components → components}/DatabaseView.d.ts.map +0 -0
  607. /package/{dist/components → components}/DatabaseView.js +0 -0
  608. /package/{dist/components → components}/ElizaCloudDashboard.d.ts +0 -0
  609. /package/{dist/components → components}/ElizaCloudDashboard.d.ts.map +0 -0
  610. /package/{dist/components → components}/EmotePicker.d.ts +0 -0
  611. /package/{dist/components → components}/EmotePicker.d.ts.map +0 -0
  612. /package/{dist/components → components}/ErrorBoundary.d.ts +0 -0
  613. /package/{dist/components → components}/ErrorBoundary.d.ts.map +0 -0
  614. /package/{dist/components → components}/ErrorBoundary.js +0 -0
  615. /package/{dist/components → components}/FineTuningView.d.ts +0 -0
  616. /package/{dist/components → components}/FineTuningView.d.ts.map +0 -0
  617. /package/{dist/components → components}/FineTuningView.js +0 -0
  618. /package/{dist/components → components}/GameView.d.ts +0 -0
  619. /package/{dist/components → components}/GameView.d.ts.map +0 -0
  620. /package/{dist/components → components}/GameView.js +0 -0
  621. /package/{dist/components → components}/GameViewOverlay.d.ts +0 -0
  622. /package/{dist/components → components}/GameViewOverlay.d.ts.map +0 -0
  623. /package/{dist/components → components}/GameViewOverlay.js +0 -0
  624. /package/{dist/components → components}/GlobalEmoteOverlay.d.ts +0 -0
  625. /package/{dist/components → components}/GlobalEmoteOverlay.d.ts.map +0 -0
  626. /package/{dist/components → components}/Header.d.ts +0 -0
  627. /package/{dist/components → components}/Header.d.ts.map +0 -0
  628. /package/{dist/components → components}/Header.js +0 -0
  629. /package/{dist/components → components}/HeartbeatsView.d.ts +0 -0
  630. /package/{dist/components → components}/HeartbeatsView.d.ts.map +0 -0
  631. /package/{dist/components → components}/HeartbeatsView.js +0 -0
  632. /package/{dist/components → components}/InventoryView.d.ts +0 -0
  633. /package/{dist/components → components}/InventoryView.d.ts.map +0 -0
  634. /package/{dist/components → components}/InventoryView.js +0 -0
  635. /package/{dist/components → components}/KnowledgeView.d.ts +0 -0
  636. /package/{dist/components → components}/KnowledgeView.d.ts.map +0 -0
  637. /package/{dist/components → components}/KnowledgeView.js +0 -0
  638. /package/{dist/components → components}/LanguageDropdown.d.ts +0 -0
  639. /package/{dist/components → components}/LanguageDropdown.d.ts.map +0 -0
  640. /package/{dist/components → components}/LanguageDropdown.js +0 -0
  641. /package/{dist/components → components}/LifoMonitorPanel.d.ts +0 -0
  642. /package/{dist/components → components}/LifoMonitorPanel.d.ts.map +0 -0
  643. /package/{dist/components → components}/LifoMonitorPanel.js +0 -0
  644. /package/{dist/components → components}/LifoSandboxView.d.ts +0 -0
  645. /package/{dist/components → components}/LifoSandboxView.d.ts.map +0 -0
  646. /package/{dist/components → components}/LifoSandboxView.js +0 -0
  647. /package/{dist/components → components}/LoadingScreen.d.ts +0 -0
  648. /package/{dist/components → components}/LoadingScreen.d.ts.map +0 -0
  649. /package/{dist/components → components}/LoadingScreen.js +0 -0
  650. /package/{dist/components → components}/LogsPageView.d.ts +0 -0
  651. /package/{dist/components → components}/LogsPageView.d.ts.map +0 -0
  652. /package/{dist/components → components}/LogsPageView.js +0 -0
  653. /package/{dist/components → components}/LogsView.d.ts +0 -0
  654. /package/{dist/components → components}/LogsView.d.ts.map +0 -0
  655. /package/{dist/components → components}/LogsView.js +0 -0
  656. /package/{dist/components → components}/MediaGalleryView.d.ts +0 -0
  657. /package/{dist/components → components}/MediaGalleryView.d.ts.map +0 -0
  658. /package/{dist/components → components}/MediaGalleryView.js +0 -0
  659. /package/{dist/components → components}/MediaSettingsSection.d.ts +0 -0
  660. /package/{dist/components → components}/MediaSettingsSection.d.ts.map +0 -0
  661. /package/{dist/components → components}/MediaSettingsSection.js +0 -0
  662. /package/{dist/components → components}/MessageContent.d.ts +0 -0
  663. /package/{dist/components → components}/MessageContent.d.ts.map +0 -0
  664. /package/{dist/components → components}/MessageContent.js +0 -0
  665. /package/{dist/components → components}/OnboardingWizard.d.ts +0 -0
  666. /package/{dist/components → components}/OnboardingWizard.d.ts.map +0 -0
  667. /package/{dist/components → components}/OnboardingWizard.js +0 -0
  668. /package/{dist/components → components}/PairingView.d.ts +0 -0
  669. /package/{dist/components → components}/PairingView.d.ts.map +0 -0
  670. /package/{dist/components → components}/PermissionsSection.d.ts +0 -0
  671. /package/{dist/components → components}/PermissionsSection.d.ts.map +0 -0
  672. /package/{dist/components → components}/PermissionsSection.js +0 -0
  673. /package/{dist/components → components}/PluginsPageView.d.ts +0 -0
  674. /package/{dist/components → components}/PluginsPageView.d.ts.map +0 -0
  675. /package/{dist/components → components}/PluginsPageView.js +0 -0
  676. /package/{dist/components → components}/PluginsView.d.ts +0 -0
  677. /package/{dist/components → components}/PluginsView.d.ts.map +0 -0
  678. /package/{dist/components → components}/PluginsView.js +0 -0
  679. /package/{dist/components → components}/ProviderSwitcher.d.ts +0 -0
  680. /package/{dist/components → components}/ProviderSwitcher.d.ts.map +0 -0
  681. /package/{dist/components → components}/RestartBanner.d.ts +0 -0
  682. /package/{dist/components → components}/RestartBanner.d.ts.map +0 -0
  683. /package/{dist/components → components}/RestartBanner.js +0 -0
  684. /package/{dist/components → components}/RuntimeView.d.ts +0 -0
  685. /package/{dist/components → components}/RuntimeView.d.ts.map +0 -0
  686. /package/{dist/components → components}/RuntimeView.js +0 -0
  687. /package/{dist/components → components}/SaveCommandModal.d.ts +0 -0
  688. /package/{dist/components → components}/SaveCommandModal.d.ts.map +0 -0
  689. /package/{dist/components → components}/SaveCommandModal.js +0 -0
  690. /package/{dist/components → components}/SecretsView.d.ts +0 -0
  691. /package/{dist/components → components}/SecretsView.d.ts.map +0 -0
  692. /package/{dist/components → components}/SettingsView.d.ts +0 -0
  693. /package/{dist/components → components}/SettingsView.d.ts.map +0 -0
  694. /package/{dist/components → components}/SettingsView.js +0 -0
  695. /package/{dist/components → components}/ShellOverlays.d.ts +0 -0
  696. /package/{dist/components → components}/ShellOverlays.d.ts.map +0 -0
  697. /package/{dist/components → components}/ShellOverlays.js +0 -0
  698. /package/{dist/components → components}/ShortcutsOverlay.d.ts +0 -0
  699. /package/{dist/components → components}/ShortcutsOverlay.d.ts.map +0 -0
  700. /package/{dist/components → components}/ShortcutsOverlay.js +0 -0
  701. /package/{dist/components → components}/SkillsView.d.ts +0 -0
  702. /package/{dist/components → components}/SkillsView.d.ts.map +0 -0
  703. /package/{dist/components → components}/SkillsView.js +0 -0
  704. /package/{dist/components → components}/StartupFailureView.d.ts +0 -0
  705. /package/{dist/components → components}/StartupFailureView.d.ts.map +0 -0
  706. /package/{dist/components → components}/StreamView.d.ts +0 -0
  707. /package/{dist/components → components}/StreamView.d.ts.map +0 -0
  708. /package/{dist/components → components}/StripeEmbeddedCheckout.d.ts +0 -0
  709. /package/{dist/components → components}/StripeEmbeddedCheckout.d.ts.map +0 -0
  710. /package/{dist/components → components}/SubscriptionStatus.d.ts +0 -0
  711. /package/{dist/components → components}/SubscriptionStatus.d.ts.map +0 -0
  712. /package/{dist/components → components}/SystemWarningBanner.d.ts +0 -0
  713. /package/{dist/components → components}/SystemWarningBanner.d.ts.map +0 -0
  714. /package/{dist/components → components}/SystemWarningBanner.js +0 -0
  715. /package/{dist/components → components}/ThemeToggle.d.ts +0 -0
  716. /package/{dist/components → components}/ThemeToggle.d.ts.map +0 -0
  717. /package/{dist/components → components}/ThemeToggle.js +0 -0
  718. /package/{dist/components → components}/TrajectoriesView.d.ts +0 -0
  719. /package/{dist/components → components}/TrajectoriesView.d.ts.map +0 -0
  720. /package/{dist/components → components}/TrajectoriesView.js +0 -0
  721. /package/{dist/components → components}/TrajectoryDetailView.d.ts +0 -0
  722. /package/{dist/components → components}/TrajectoryDetailView.d.ts.map +0 -0
  723. /package/{dist/components → components}/TrajectoryDetailView.js +0 -0
  724. /package/{dist/components → components}/TriggersView.d.ts +0 -0
  725. /package/{dist/components → components}/TriggersView.d.ts.map +0 -0
  726. /package/{dist/components → components}/TriggersView.js +0 -0
  727. /package/{dist/components → components}/VectorBrowserView.d.ts +0 -0
  728. /package/{dist/components → components}/VectorBrowserView.d.ts.map +0 -0
  729. /package/{dist/components → components}/VectorBrowserView.js +0 -0
  730. /package/{dist/components → components}/VoiceConfigView.d.ts +0 -0
  731. /package/{dist/components → components}/VoiceConfigView.d.ts.map +0 -0
  732. /package/{dist/components → components}/VrmStage.d.ts +0 -0
  733. /package/{dist/components → components}/VrmStage.d.ts.map +0 -0
  734. /package/{dist/components → components}/VrmStage.js +0 -0
  735. /package/{dist/components → components}/WhatsAppQrOverlay.d.ts +0 -0
  736. /package/{dist/components → components}/WhatsAppQrOverlay.d.ts.map +0 -0
  737. /package/{dist/components → components}/WhatsAppQrOverlay.js +0 -0
  738. /package/{dist/components → components}/apps/AppDetailPane.d.ts +0 -0
  739. /package/{dist/components → components}/apps/AppDetailPane.d.ts.map +0 -0
  740. /package/{dist/components → components}/apps/AppDetailPane.js +0 -0
  741. /package/{dist/components → components}/apps/AppsCatalogGrid.d.ts +0 -0
  742. /package/{dist/components → components}/apps/AppsCatalogGrid.d.ts.map +0 -0
  743. /package/{dist/components → components}/apps/AppsCatalogGrid.js +0 -0
  744. /package/{dist/components → components}/apps/extensions/registry.d.ts +0 -0
  745. /package/{dist/components → components}/apps/extensions/registry.d.ts.map +0 -0
  746. /package/{dist/components → components}/apps/extensions/registry.js +0 -0
  747. /package/{dist/components → components}/apps/extensions/types.d.ts +0 -0
  748. /package/{dist/components → components}/apps/extensions/types.d.ts.map +0 -0
  749. /package/{dist/components → components}/apps/extensions/types.js +0 -0
  750. /package/{dist/components → components}/apps/helpers.d.ts +0 -0
  751. /package/{dist/components → components}/apps/helpers.d.ts.map +0 -0
  752. /package/{dist/components → components}/apps/helpers.js +0 -0
  753. /package/{dist/components → components}/avatar/VrmAnimationLoader.d.ts +0 -0
  754. /package/{dist/components → components}/avatar/VrmAnimationLoader.d.ts.map +0 -0
  755. /package/{dist/components → components}/avatar/VrmAnimationLoader.js +0 -0
  756. /package/{dist/components → components}/avatar/VrmBlinkController.d.ts +0 -0
  757. /package/{dist/components → components}/avatar/VrmBlinkController.d.ts.map +0 -0
  758. /package/{dist/components → components}/avatar/VrmBlinkController.js +0 -0
  759. /package/{dist/components → components}/avatar/VrmCameraManager.d.ts +0 -0
  760. /package/{dist/components → components}/avatar/VrmCameraManager.d.ts.map +0 -0
  761. /package/{dist/components → components}/avatar/VrmCameraManager.js +0 -0
  762. /package/{dist/components → components}/avatar/VrmEngine.d.ts +0 -0
  763. /package/{dist/components → components}/avatar/VrmEngine.d.ts.map +0 -0
  764. /package/{dist/components → components}/avatar/VrmFootShadow.d.ts +0 -0
  765. /package/{dist/components → components}/avatar/VrmFootShadow.d.ts.map +0 -0
  766. /package/{dist/components → components}/avatar/VrmFootShadow.js +0 -0
  767. /package/{dist/components → components}/avatar/mixamoVRMRigMap.d.ts +0 -0
  768. /package/{dist/components → components}/avatar/mixamoVRMRigMap.d.ts.map +0 -0
  769. /package/{dist/components → components}/avatar/mixamoVRMRigMap.js +0 -0
  770. /package/{dist/components → components}/avatar/retargetMixamoFbxToVrm.d.ts +0 -0
  771. /package/{dist/components → components}/avatar/retargetMixamoFbxToVrm.d.ts.map +0 -0
  772. /package/{dist/components → components}/avatar/retargetMixamoFbxToVrm.js +0 -0
  773. /package/{dist/components → components}/avatar/retargetMixamoGltfToVrm.d.ts +0 -0
  774. /package/{dist/components → components}/avatar/retargetMixamoGltfToVrm.d.ts.map +0 -0
  775. /package/{dist/components → components}/avatar/retargetMixamoGltfToVrm.js +0 -0
  776. /package/{dist/components → components}/chainConfig.d.ts +0 -0
  777. /package/{dist/components → components}/chainConfig.d.ts.map +0 -0
  778. /package/{dist/components → components}/chainConfig.js +0 -0
  779. /package/{dist/components → components}/companion/CompanionHeader.d.ts +0 -0
  780. /package/{dist/components → components}/companion/CompanionHeader.d.ts.map +0 -0
  781. /package/{dist/components → components}/companion/CompanionHeader.js +0 -0
  782. /package/{dist/components → components}/companion/CompanionSceneHost.d.ts +0 -0
  783. /package/{dist/components → components}/companion/CompanionSceneHost.d.ts.map +0 -0
  784. /package/{dist/components → components}/companion/CompanionSceneHost.js +0 -0
  785. /package/{dist/components → components}/companion/VrmStage.d.ts +0 -0
  786. /package/{dist/components → components}/companion/VrmStage.d.ts.map +0 -0
  787. /package/{dist/components → components}/companion/VrmStage.js +0 -0
  788. /package/{dist/components → components}/companion-shell-styles.d.ts +0 -0
  789. /package/{dist/components → components}/companion-shell-styles.d.ts.map +0 -0
  790. /package/{dist/components → components}/companion-shell-styles.js +0 -0
  791. /package/{dist/components → components}/confirm-delete-control.d.ts +0 -0
  792. /package/{dist/components → components}/confirm-delete-control.d.ts.map +0 -0
  793. /package/{dist/components → components}/confirm-delete-control.js +0 -0
  794. /package/{dist/components → components}/conversations/ConversationListItem.d.ts +0 -0
  795. /package/{dist/components → components}/conversations/ConversationListItem.d.ts.map +0 -0
  796. /package/{dist/components → components}/conversations/ConversationListItem.js +0 -0
  797. /package/{dist/components → components}/conversations/conversation-utils.d.ts +0 -0
  798. /package/{dist/components → components}/conversations/conversation-utils.d.ts.map +0 -0
  799. /package/{dist/components → components}/conversations/conversation-utils.js +0 -0
  800. /package/{dist/components → components}/format.d.ts.map +0 -0
  801. /package/{dist/components → components}/index.d.ts +0 -0
  802. /package/{dist/components → components}/index.d.ts.map +0 -0
  803. /package/{dist/components → components}/index.js +0 -0
  804. /package/{dist/components → components}/inventory/CopyableAddress.d.ts +0 -0
  805. /package/{dist/components → components}/inventory/CopyableAddress.d.ts.map +0 -0
  806. /package/{dist/components → components}/inventory/CopyableAddress.js +0 -0
  807. /package/{dist/components → components}/inventory/InventoryToolbar.d.ts +0 -0
  808. /package/{dist/components → components}/inventory/InventoryToolbar.d.ts.map +0 -0
  809. /package/{dist/components → components}/inventory/InventoryToolbar.js +0 -0
  810. /package/{dist/components → components}/inventory/NftGrid.d.ts +0 -0
  811. /package/{dist/components → components}/inventory/NftGrid.d.ts.map +0 -0
  812. /package/{dist/components → components}/inventory/NftGrid.js +0 -0
  813. /package/{dist/components → components}/inventory/TokenLogo.d.ts +0 -0
  814. /package/{dist/components → components}/inventory/TokenLogo.d.ts.map +0 -0
  815. /package/{dist/components → components}/inventory/TokenLogo.js +0 -0
  816. /package/{dist/components → components}/inventory/TokensTable.d.ts +0 -0
  817. /package/{dist/components → components}/inventory/TokensTable.d.ts.map +0 -0
  818. /package/{dist/components → components}/inventory/TokensTable.js +0 -0
  819. /package/{dist/components → components}/inventory/constants.d.ts +0 -0
  820. /package/{dist/components → components}/inventory/constants.d.ts.map +0 -0
  821. /package/{dist/components → components}/inventory/constants.js +0 -0
  822. /package/{dist/components → components}/inventory/index.d.ts +0 -0
  823. /package/{dist/components → components}/inventory/index.d.ts.map +0 -0
  824. /package/{dist/components → components}/inventory/index.js +0 -0
  825. /package/{dist/components → components}/inventory/media-url.d.ts +0 -0
  826. /package/{dist/components → components}/inventory/media-url.d.ts.map +0 -0
  827. /package/{dist/components → components}/inventory/media-url.js +0 -0
  828. /package/{dist/components → components}/inventory/useInventoryData.d.ts +0 -0
  829. /package/{dist/components → components}/inventory/useInventoryData.d.ts.map +0 -0
  830. /package/{dist/components → components}/inventory/useInventoryData.js +0 -0
  831. /package/{dist/components → components}/knowledge-upload-image.d.ts +0 -0
  832. /package/{dist/components → components}/knowledge-upload-image.d.ts.map +0 -0
  833. /package/{dist/components → components}/knowledge-upload-image.js +0 -0
  834. /package/{dist/components → components}/labels.d.ts +0 -0
  835. /package/{dist/components → components}/labels.d.ts.map +0 -0
  836. /package/{dist/components → components}/labels.js +0 -0
  837. /package/{dist/components → components}/onboarding/ActivateStep.d.ts +0 -0
  838. /package/{dist/components → components}/onboarding/ActivateStep.d.ts.map +0 -0
  839. /package/{dist/components → components}/onboarding/ActivateStep.js +0 -0
  840. /package/{dist/components → components}/onboarding/ConnectionStep.d.ts +0 -0
  841. /package/{dist/components → components}/onboarding/ConnectionStep.d.ts.map +0 -0
  842. /package/{dist/components → components}/onboarding/ConnectionStep.js +0 -0
  843. /package/{dist/components → components}/onboarding/IdentityStep.d.ts +0 -0
  844. /package/{dist/components → components}/onboarding/IdentityStep.d.ts.map +0 -0
  845. /package/{dist/components → components}/onboarding/IdentityStep.js +0 -0
  846. /package/{dist/components → components}/onboarding/OnboardingPanel.d.ts +0 -0
  847. /package/{dist/components → components}/onboarding/OnboardingPanel.d.ts.map +0 -0
  848. /package/{dist/components → components}/onboarding/OnboardingPanel.js +0 -0
  849. /package/{dist/components → components}/onboarding/OnboardingStepNav.d.ts +0 -0
  850. /package/{dist/components → components}/onboarding/OnboardingStepNav.d.ts.map +0 -0
  851. /package/{dist/components → components}/onboarding/OnboardingStepNav.js +0 -0
  852. /package/{dist/components → components}/onboarding/PermissionsStep.d.ts +0 -0
  853. /package/{dist/components → components}/onboarding/PermissionsStep.d.ts.map +0 -0
  854. /package/{dist/components → components}/onboarding/PermissionsStep.js +0 -0
  855. /package/{dist/components → components}/onboarding/RpcStep.d.ts +0 -0
  856. /package/{dist/components → components}/onboarding/RpcStep.d.ts.map +0 -0
  857. /package/{dist/components → components}/onboarding/RpcStep.js +0 -0
  858. /package/{dist/components → components}/permissions/PermissionIcon.d.ts +0 -0
  859. /package/{dist/components → components}/permissions/PermissionIcon.d.ts.map +0 -0
  860. /package/{dist/components → components}/permissions/PermissionIcon.js +0 -0
  861. /package/{dist/components → components}/permissions/StreamingPermissions.d.ts +0 -0
  862. /package/{dist/components → components}/permissions/StreamingPermissions.d.ts.map +0 -0
  863. /package/{dist/components → components}/plugins/showcase-data.d.ts +0 -0
  864. /package/{dist/components → components}/plugins/showcase-data.d.ts.map +0 -0
  865. /package/{dist/components → components}/plugins/showcase-data.js +0 -0
  866. /package/{dist/components → components}/shared/ShellHeaderControls.d.ts +0 -0
  867. /package/{dist/components → components}/shared/ShellHeaderControls.d.ts.map +0 -0
  868. /package/{dist/components → components}/shared/ShellHeaderControls.js +0 -0
  869. /package/{dist/components → components}/shared-companion-scene-context.d.ts +0 -0
  870. /package/{dist/components → components}/shared-companion-scene-context.d.ts.map +0 -0
  871. /package/{dist/components → components}/shared-companion-scene-context.js +0 -0
  872. /package/{dist/components → components}/skeletons.d.ts +0 -0
  873. /package/{dist/components → components}/skeletons.d.ts.map +0 -0
  874. /package/{dist/components → components}/skeletons.js +0 -0
  875. /package/{dist/components → components}/stream/ActivityFeed.d.ts +0 -0
  876. /package/{dist/components → components}/stream/ActivityFeed.d.ts.map +0 -0
  877. /package/{dist/components → components}/stream/ActivityFeed.js +0 -0
  878. /package/{dist/components → components}/stream/AvatarPip.d.ts +0 -0
  879. /package/{dist/components → components}/stream/AvatarPip.d.ts.map +0 -0
  880. /package/{dist/components → components}/stream/AvatarPip.js +0 -0
  881. /package/{dist/components → components}/stream/ChatContent.d.ts +0 -0
  882. /package/{dist/components → components}/stream/ChatContent.d.ts.map +0 -0
  883. /package/{dist/components → components}/stream/ChatContent.js +0 -0
  884. /package/{dist/components → components}/stream/ChatTicker.d.ts +0 -0
  885. /package/{dist/components → components}/stream/ChatTicker.d.ts.map +0 -0
  886. /package/{dist/components → components}/stream/ChatTicker.js +0 -0
  887. /package/{dist/components → components}/stream/IdleContent.d.ts +0 -0
  888. /package/{dist/components → components}/stream/IdleContent.d.ts.map +0 -0
  889. /package/{dist/components → components}/stream/IdleContent.js +0 -0
  890. /package/{dist/components → components}/stream/StatusBar.d.ts +0 -0
  891. /package/{dist/components → components}/stream/StatusBar.d.ts.map +0 -0
  892. /package/{dist/components → components}/stream/StreamSettings.d.ts +0 -0
  893. /package/{dist/components → components}/stream/StreamSettings.d.ts.map +0 -0
  894. /package/{dist/components → components}/stream/StreamSettings.js +0 -0
  895. /package/{dist/components → components}/stream/StreamTerminal.d.ts +0 -0
  896. /package/{dist/components → components}/stream/StreamTerminal.d.ts.map +0 -0
  897. /package/{dist/components → components}/stream/StreamTerminal.js +0 -0
  898. /package/{dist/components → components}/stream/StreamVoiceConfig.d.ts +0 -0
  899. /package/{dist/components → components}/stream/StreamVoiceConfig.d.ts.map +0 -0
  900. /package/{dist/components → components}/stream/StreamVoiceConfig.js +0 -0
  901. /package/{dist/components → components}/stream/helpers.d.ts +0 -0
  902. /package/{dist/components → components}/stream/helpers.d.ts.map +0 -0
  903. /package/{dist/components → components}/stream/helpers.js +0 -0
  904. /package/{dist/components → components}/stream/overlays/OverlayLayer.d.ts +0 -0
  905. /package/{dist/components → components}/stream/overlays/OverlayLayer.d.ts.map +0 -0
  906. /package/{dist/components → components}/stream/overlays/OverlayLayer.js +0 -0
  907. /package/{dist/components → components}/stream/overlays/built-in/ActionTickerWidget.d.ts +0 -0
  908. /package/{dist/components → components}/stream/overlays/built-in/ActionTickerWidget.d.ts.map +0 -0
  909. /package/{dist/components → components}/stream/overlays/built-in/ActionTickerWidget.js +0 -0
  910. /package/{dist/components → components}/stream/overlays/built-in/AlertPopupWidget.d.ts +0 -0
  911. /package/{dist/components → components}/stream/overlays/built-in/AlertPopupWidget.d.ts.map +0 -0
  912. /package/{dist/components → components}/stream/overlays/built-in/AlertPopupWidget.js +0 -0
  913. /package/{dist/components → components}/stream/overlays/built-in/BrandingWidget.d.ts +0 -0
  914. /package/{dist/components → components}/stream/overlays/built-in/BrandingWidget.d.ts.map +0 -0
  915. /package/{dist/components → components}/stream/overlays/built-in/BrandingWidget.js +0 -0
  916. /package/{dist/components → components}/stream/overlays/built-in/CustomHtmlWidget.d.ts +0 -0
  917. /package/{dist/components → components}/stream/overlays/built-in/CustomHtmlWidget.d.ts.map +0 -0
  918. /package/{dist/components → components}/stream/overlays/built-in/CustomHtmlWidget.js +0 -0
  919. /package/{dist/components → components}/stream/overlays/built-in/PeonGlassWidget.d.ts +0 -0
  920. /package/{dist/components → components}/stream/overlays/built-in/PeonGlassWidget.d.ts.map +0 -0
  921. /package/{dist/components → components}/stream/overlays/built-in/PeonGlassWidget.js +0 -0
  922. /package/{dist/components → components}/stream/overlays/built-in/PeonHudWidget.d.ts +0 -0
  923. /package/{dist/components → components}/stream/overlays/built-in/PeonHudWidget.d.ts.map +0 -0
  924. /package/{dist/components → components}/stream/overlays/built-in/PeonHudWidget.js +0 -0
  925. /package/{dist/components → components}/stream/overlays/built-in/PeonSakuraWidget.d.ts +0 -0
  926. /package/{dist/components → components}/stream/overlays/built-in/PeonSakuraWidget.d.ts.map +0 -0
  927. /package/{dist/components → components}/stream/overlays/built-in/PeonSakuraWidget.js +0 -0
  928. /package/{dist/components → components}/stream/overlays/built-in/ThoughtBubbleWidget.d.ts +0 -0
  929. /package/{dist/components → components}/stream/overlays/built-in/ThoughtBubbleWidget.d.ts.map +0 -0
  930. /package/{dist/components → components}/stream/overlays/built-in/ThoughtBubbleWidget.js +0 -0
  931. /package/{dist/components → components}/stream/overlays/built-in/ViewerCountWidget.d.ts +0 -0
  932. /package/{dist/components → components}/stream/overlays/built-in/ViewerCountWidget.d.ts.map +0 -0
  933. /package/{dist/components → components}/stream/overlays/built-in/ViewerCountWidget.js +0 -0
  934. /package/{dist/components → components}/stream/overlays/built-in/index.d.ts +0 -0
  935. /package/{dist/components → components}/stream/overlays/built-in/index.d.ts.map +0 -0
  936. /package/{dist/components → components}/stream/overlays/built-in/index.js +0 -0
  937. /package/{dist/components → components}/stream/overlays/registry.d.ts +0 -0
  938. /package/{dist/components → components}/stream/overlays/registry.d.ts.map +0 -0
  939. /package/{dist/components → components}/stream/overlays/registry.js +0 -0
  940. /package/{dist/components → components}/stream/overlays/types.d.ts +0 -0
  941. /package/{dist/components → components}/stream/overlays/types.d.ts.map +0 -0
  942. /package/{dist/components → components}/stream/overlays/types.js +0 -0
  943. /package/{dist/components → components}/stream/overlays/useOverlayLayout.d.ts.map +0 -0
  944. /package/{dist/components → components}/trajectory-format.d.ts +0 -0
  945. /package/{dist/components → components}/trajectory-format.d.ts.map +0 -0
  946. /package/{dist/components → components}/trajectory-format.js +0 -0
  947. /package/{dist/components → components}/ui-badges.d.ts +0 -0
  948. /package/{dist/components → components}/ui-badges.d.ts.map +0 -0
  949. /package/{dist/components → components}/ui-badges.js +0 -0
  950. /package/{dist/components → components}/ui-switch.d.ts +0 -0
  951. /package/{dist/components → components}/ui-switch.d.ts.map +0 -0
  952. /package/{dist/components → components}/ui-switch.js +0 -0
  953. /package/{dist/components → components}/vector-browser-three.d.ts +0 -0
  954. /package/{dist/components → components}/vector-browser-three.d.ts.map +0 -0
  955. /package/{dist/components → components}/vector-browser-three.js +0 -0
  956. /package/{dist/config → config}/config-catalog.d.ts +0 -0
  957. /package/{dist/config → config}/config-catalog.d.ts.map +0 -0
  958. /package/{dist/config → config}/config-catalog.js +0 -0
  959. /package/{dist/config → config}/config-field.d.ts +0 -0
  960. /package/{dist/config → config}/config-field.d.ts.map +0 -0
  961. /package/{dist/config → config}/config-field.js +0 -0
  962. /package/{dist/config → config}/config-renderer.d.ts +0 -0
  963. /package/{dist/config → config}/config-renderer.d.ts.map +0 -0
  964. /package/{dist/config → config}/config-renderer.js +0 -0
  965. /package/{dist/config → config}/index.d.ts +0 -0
  966. /package/{dist/config → config}/index.d.ts.map +0 -0
  967. /package/{dist/config → config}/index.js +0 -0
  968. /package/{dist/config → config}/ui-renderer.d.ts +0 -0
  969. /package/{dist/config → config}/ui-renderer.d.ts.map +0 -0
  970. /package/{dist/config → config}/ui-renderer.js +0 -0
  971. /package/{dist/config → config}/ui-spec.d.ts +0 -0
  972. /package/{dist/config → config}/ui-spec.d.ts.map +0 -0
  973. /package/{dist/config → config}/ui-spec.js +0 -0
  974. /package/{dist/hooks → hooks}/index.d.ts +0 -0
  975. /package/{dist/hooks → hooks}/index.d.ts.map +0 -0
  976. /package/{dist/hooks → hooks}/index.js +0 -0
  977. /package/{dist/hooks → hooks}/useBugReport.d.ts +0 -0
  978. /package/{dist/hooks → hooks}/useBugReport.d.ts.map +0 -0
  979. /package/{dist/hooks → hooks}/useBugReport.js +0 -0
  980. /package/{dist/hooks → hooks}/useCanvasWindow.d.ts +0 -0
  981. /package/{dist/hooks → hooks}/useCanvasWindow.d.ts.map +0 -0
  982. /package/{dist/hooks → hooks}/useCanvasWindow.js +0 -0
  983. /package/{dist/hooks → hooks}/useChatAvatarVoice.d.ts +0 -0
  984. /package/{dist/hooks → hooks}/useChatAvatarVoice.d.ts.map +0 -0
  985. /package/{dist/hooks → hooks}/useChatAvatarVoice.js +0 -0
  986. /package/{dist/hooks → hooks}/useContextMenu.d.ts +0 -0
  987. /package/{dist/hooks → hooks}/useContextMenu.d.ts.map +0 -0
  988. /package/{dist/hooks → hooks}/useContextMenu.js +0 -0
  989. /package/{dist/hooks → hooks}/useKeyboardShortcuts.d.ts +0 -0
  990. /package/{dist/hooks → hooks}/useKeyboardShortcuts.d.ts.map +0 -0
  991. /package/{dist/hooks → hooks}/useKeyboardShortcuts.js +0 -0
  992. /package/{dist/hooks → hooks}/useLifoSync.d.ts +0 -0
  993. /package/{dist/hooks → hooks}/useLifoSync.d.ts.map +0 -0
  994. /package/{dist/hooks → hooks}/useLifoSync.js +0 -0
  995. /package/{dist/hooks → hooks}/useMemoryMonitor.d.ts +0 -0
  996. /package/{dist/hooks → hooks}/useMemoryMonitor.d.ts.map +0 -0
  997. /package/{dist/hooks → hooks}/useMemoryMonitor.js +0 -0
  998. /package/{dist/hooks → hooks}/useRenderGuard.d.ts +0 -0
  999. /package/{dist/hooks → hooks}/useRenderGuard.d.ts.map +0 -0
  1000. /package/{dist/hooks → hooks}/useRenderGuard.js +0 -0
  1001. /package/{dist/hooks → hooks}/useRetakeCapture.d.ts +0 -0
  1002. /package/{dist/hooks → hooks}/useRetakeCapture.d.ts.map +0 -0
  1003. /package/{dist/hooks → hooks}/useStreamPopoutNavigation.d.ts +0 -0
  1004. /package/{dist/hooks → hooks}/useStreamPopoutNavigation.d.ts.map +0 -0
  1005. /package/{dist/hooks → hooks}/useStreamPopoutNavigation.js +0 -0
  1006. /package/{dist/hooks → hooks}/useTimeout.d.ts +0 -0
  1007. /package/{dist/hooks → hooks}/useTimeout.d.ts.map +0 -0
  1008. /package/{dist/hooks → hooks}/useTimeout.js +0 -0
  1009. /package/{dist/hooks → hooks}/useVoiceChat.d.ts +0 -0
  1010. /package/{dist/hooks → hooks}/useVoiceChat.d.ts.map +0 -0
  1011. /package/{dist/hooks → hooks}/useVoiceChat.js +0 -0
  1012. /package/{dist/hooks → hooks}/useWhatsAppPairing.d.ts +0 -0
  1013. /package/{dist/hooks → hooks}/useWhatsAppPairing.d.ts.map +0 -0
  1014. /package/{dist/hooks → hooks}/useWhatsAppPairing.js +0 -0
  1015. /package/{dist/i18n → i18n}/index.d.ts +0 -0
  1016. /package/{dist/i18n → i18n}/index.d.ts.map +0 -0
  1017. /package/{dist/i18n → i18n}/index.js +0 -0
  1018. /package/{dist/i18n → i18n}/messages.d.ts +0 -0
  1019. /package/{dist/i18n → i18n}/messages.d.ts.map +0 -0
  1020. /package/{dist/i18n → i18n}/messages.js +0 -0
  1021. /package/{dist/index.d.ts → index.d.ts} +0 -0
  1022. /package/{dist/index.d.ts.map → index.d.ts.map} +0 -0
  1023. /package/{dist/index.js → index.js} +0 -0
  1024. /package/{dist/navigation → navigation}/index.d.ts +0 -0
  1025. /package/{dist/navigation → navigation}/index.d.ts.map +0 -0
  1026. /package/{dist/onboarding-config.d.ts → onboarding-config.d.ts} +0 -0
  1027. /package/{dist/onboarding-config.d.ts.map → onboarding-config.d.ts.map} +0 -0
  1028. /package/{dist/onboarding-config.js → onboarding-config.js} +0 -0
  1029. /package/{dist/platform → platform}/browser-launch.d.ts +0 -0
  1030. /package/{dist/platform → platform}/browser-launch.d.ts.map +0 -0
  1031. /package/{dist/platform → platform}/index.d.ts +0 -0
  1032. /package/{dist/platform → platform}/index.d.ts.map +0 -0
  1033. /package/{dist/platform → platform}/index.js +0 -0
  1034. /package/{dist/providers → providers}/index.d.ts +0 -0
  1035. /package/{dist/providers → providers}/index.d.ts.map +0 -0
  1036. /package/{dist/providers → providers}/index.js +0 -0
  1037. /package/{dist/state → state}/AppContext.d.ts +0 -0
  1038. /package/{dist/state → state}/AppContext.d.ts.map +0 -0
  1039. /package/{dist/state → state}/index.d.ts +0 -0
  1040. /package/{dist/state → state}/index.d.ts.map +0 -0
  1041. /package/{dist/state → state}/index.js +0 -0
  1042. /package/{dist/state → state}/internal.d.ts +0 -0
  1043. /package/{dist/state → state}/internal.d.ts.map +0 -0
  1044. /package/{dist/state → state}/internal.js +0 -0
  1045. /package/{dist/state → state}/onboarding-resume.d.ts +0 -0
  1046. /package/{dist/state → state}/onboarding-resume.d.ts.map +0 -0
  1047. /package/{dist/state → state}/parsers.d.ts +0 -0
  1048. /package/{dist/state → state}/parsers.d.ts.map +0 -0
  1049. /package/{dist/state → state}/parsers.js +0 -0
  1050. /package/{dist/state → state}/persistence.d.ts +0 -0
  1051. /package/{dist/state → state}/persistence.d.ts.map +0 -0
  1052. /package/{dist/state → state}/shell-routing.d.ts +0 -0
  1053. /package/{dist/state → state}/shell-routing.d.ts.map +0 -0
  1054. /package/{dist/state → state}/shell-routing.js +0 -0
  1055. /package/{dist/state → state}/types.d.ts +0 -0
  1056. /package/{dist/state → state}/types.d.ts.map +0 -0
  1057. /package/{dist/state → state}/types.js +0 -0
  1058. /package/{dist/state → state}/ui-preferences.d.ts +0 -0
  1059. /package/{dist/state → state}/ui-preferences.d.ts.map +0 -0
  1060. /package/{dist/state → state}/ui-preferences.js +0 -0
  1061. /package/{dist/state → state}/useApp.d.ts +0 -0
  1062. /package/{dist/state → state}/useApp.d.ts.map +0 -0
  1063. /package/{dist/state → state}/useApp.js +0 -0
  1064. /package/{dist/stories → stories}/AppMockProvider.d.ts +0 -0
  1065. /package/{dist/stories → stories}/AppMockProvider.d.ts.map +0 -0
  1066. /package/{dist/stories → stories}/AppMockProvider.js +0 -0
  1067. /package/{src/styles → styles}/anime.css +0 -0
  1068. /package/{src/styles → styles}/base.css +0 -0
  1069. /package/{src/styles → styles}/onboarding-game.css +0 -0
  1070. /package/{src/styles → styles}/styles.css +0 -0
  1071. /package/{src/styles → styles}/xterm.css +0 -0
  1072. /package/{dist/types → types}/index.d.ts +0 -0
  1073. /package/{dist/types → types}/index.d.ts.map +0 -0
  1074. /package/{dist/types → types}/index.js +0 -0
  1075. /package/{dist/utils → utils}/asset-url.d.ts.map +0 -0
  1076. /package/{dist/utils → utils}/assistant-text.d.ts +0 -0
  1077. /package/{dist/utils → utils}/assistant-text.d.ts.map +0 -0
  1078. /package/{dist/utils → utils}/assistant-text.js +0 -0
  1079. /package/{dist/utils → utils}/clipboard.d.ts +0 -0
  1080. /package/{dist/utils → utils}/clipboard.d.ts.map +0 -0
  1081. /package/{dist/utils → utils}/clipboard.js +0 -0
  1082. /package/{dist/utils → utils}/desktop-dialogs.d.ts +0 -0
  1083. /package/{dist/utils → utils}/desktop-dialogs.d.ts.map +0 -0
  1084. /package/{dist/utils → utils}/desktop-dialogs.js +0 -0
  1085. /package/{dist/utils → utils}/index.d.ts +0 -0
  1086. /package/{dist/utils → utils}/index.d.ts.map +0 -0
  1087. /package/{dist/utils → utils}/index.js +0 -0
  1088. /package/{dist/utils → utils}/number-parsing.d.ts +0 -0
  1089. /package/{dist/utils → utils}/number-parsing.d.ts.map +0 -0
  1090. /package/{dist/utils → utils}/number-parsing.js +0 -0
  1091. /package/{dist/utils → utils}/openExternalUrl.d.ts +0 -0
  1092. /package/{dist/utils → utils}/openExternalUrl.d.ts.map +0 -0
  1093. /package/{dist/utils → utils}/openExternalUrl.js +0 -0
  1094. /package/{dist/utils → utils}/spoken-text.d.ts +0 -0
  1095. /package/{dist/utils → utils}/spoken-text.d.ts.map +0 -0
  1096. /package/{dist/utils → utils}/spoken-text.js +0 -0
  1097. /package/{dist/utils → utils}/streaming-text.d.ts +0 -0
  1098. /package/{dist/utils → utils}/streaming-text.d.ts.map +0 -0
  1099. /package/{dist/utils → utils}/streaming-text.js +0 -0
  1100. /package/{dist/voice → voice}/index.d.ts +0 -0
  1101. /package/{dist/voice → voice}/index.d.ts.map +0 -0
  1102. /package/{dist/voice → voice}/index.js +0 -0
  1103. /package/{dist/voice → voice}/types.d.ts +0 -0
  1104. /package/{dist/voice → voice}/types.d.ts.map +0 -0
  1105. /package/{dist/voice → voice}/types.js +0 -0
  1106. /package/{dist/wallet-rpc.d.ts → wallet-rpc.d.ts} +0 -0
  1107. /package/{dist/wallet-rpc.d.ts.map → wallet-rpc.d.ts.map} +0 -0
  1108. /package/{dist/wallet-rpc.js → wallet-rpc.js} +0 -0
@@ -1,1092 +0,0 @@
1
- /**
2
- * Plugin config catalog & registry — reverse-engineered from vercel-labs/json-render.
3
- *
4
- * json-render pattern:
5
- * defineCatalog(schema, { components, actions, functions }) → type-safe catalog
6
- * defineRegistry(catalog, { components, actions }) → maps catalog → renderers/handlers
7
- * <Renderer spec={} registry={} /> → traverses spec, renders
8
- *
9
- * Our adaptation for plugin config forms:
10
- * defineCatalog({ fields, actions?, functions? }) → field + action + validation catalog
11
- * defineRegistry(catalog, renderers, actionHandlers?) → maps types → render/handler functions
12
- * <ConfigRenderer> → reads JSON Schema + uiHints, renders form
13
- *
14
- * New in Phase 2 (json-render feature parity):
15
- * - Actions: catalog actions with Zod params + registry handlers
16
- * - Rich visibility: LogicExpression (and/or/not/eq/neq/gt/gte/lt/lte)
17
- * - Validation checks: declarative checks (required/email/minLength/pattern/...)
18
- * - Data binding: DynamicValue with path resolution (getByPath/setByPath)
19
- * - Prompt generation: catalog.prompt() for AI system prompts
20
- *
21
- * @module config-catalog
22
- */
23
-
24
- import type { ReactNode } from "react";
25
- import { z } from "zod";
26
- import type {
27
- ConfigUiHint,
28
- DynamicValue,
29
- LogicExpression,
30
- ShowIfCondition,
31
- ValidationCheck,
32
- ValidationConfig,
33
- VisibilityCondition,
34
- } from "../types";
35
-
36
- // ── JSON Schema types (subset we consume) ──────────────────────────────
37
-
38
- export interface JsonSchemaProperty {
39
- type?: string | string[];
40
- enum?: unknown[];
41
- const?: unknown;
42
- default?: unknown;
43
- description?: string;
44
- format?: string;
45
- minimum?: number;
46
- maximum?: number;
47
- minLength?: number;
48
- maxLength?: number;
49
- pattern?: string;
50
- properties?: Record<string, JsonSchemaProperty>;
51
- items?: JsonSchemaProperty;
52
- required?: string[];
53
- oneOf?: JsonSchemaProperty[];
54
- anyOf?: JsonSchemaProperty[];
55
- additionalProperties?: boolean | JsonSchemaProperty;
56
- }
57
-
58
- export interface JsonSchemaObject extends JsonSchemaProperty {
59
- type: "object";
60
- properties: Record<string, JsonSchemaProperty>;
61
- }
62
-
63
- // ── Dynamic value resolution (≈ json-render DynamicValue + getByPath) ───
64
-
65
- /**
66
- * Get a value from a nested object by slash-delimited path (JSON Pointer).
67
- *
68
- * @example
69
- * getByPath({ a: { b: 42 } }, "a/b") // → 42
70
- * getByPath({ items: [1, 2] }, "items/0") // → 1
71
- */
72
- export function getByPath(obj: unknown, path: string): unknown {
73
- if (!path || path === "/") return obj;
74
- const segments = (path.startsWith("/") ? path.slice(1) : path).split("/");
75
- let current: unknown = obj;
76
- for (const seg of segments) {
77
- if (current == null) return undefined;
78
- if (Array.isArray(current)) {
79
- current = current[parseInt(seg, 10)];
80
- } else if (typeof current === "object") {
81
- current = (current as Record<string, unknown>)[seg];
82
- } else {
83
- return undefined;
84
- }
85
- }
86
- return current;
87
- }
88
-
89
- /**
90
- * Set a value in a nested object by slash-delimited path.
91
- */
92
- export function setByPath(
93
- obj: Record<string, unknown>,
94
- path: string,
95
- value: unknown,
96
- ): void {
97
- const segments = (path.startsWith("/") ? path.slice(1) : path).split("/");
98
- if (segments.length === 0) return;
99
- const BLOCKED_KEYS = ["__proto__", "constructor", "prototype"];
100
- for (const seg of segments) {
101
- if (BLOCKED_KEYS.includes(seg)) return; // silently reject dangerous paths
102
- }
103
- let current: Record<string, unknown> = obj;
104
- for (let i = 0; i < segments.length - 1; i++) {
105
- const seg = segments[i];
106
- if (!(seg in current) || typeof current[seg] !== "object") {
107
- current[seg] = /^\d+$/.test(segments[i + 1]) ? [] : {};
108
- }
109
- current = current[seg] as Record<string, unknown>;
110
- }
111
- current[segments[segments.length - 1]] = value;
112
- }
113
-
114
- /**
115
- * Resolve a DynamicValue — if it's a {path} reference, look up in state.
116
- */
117
- export function resolveDynamic<T>(
118
- value: DynamicValue<T>,
119
- state: Record<string, unknown>,
120
- ): T | undefined {
121
- if (value != null && typeof value === "object" && "path" in value) {
122
- return getByPath(state, (value as { path: string }).path) as T | undefined;
123
- }
124
- return value as T;
125
- }
126
-
127
- /**
128
- * Search for a field value by name — ported from json-render's dashboard example.
129
- *
130
- * Resolution order:
131
- * 1. Direct params lookup
132
- * 2. Params with path format (JSON Pointer)
133
- * 3. State walk through common form prefixes (form, newItem, create, edit, root)
134
- */
135
- export function findFormValue(
136
- fieldName: string,
137
- params?: Record<string, unknown>,
138
- state?: Record<string, unknown>,
139
- ): unknown {
140
- // 1. Check direct params
141
- if (params && fieldName in params) return params[fieldName];
142
-
143
- // 2. Check params with path format
144
- if (params) {
145
- const pathValue = getByPath(params, `/${fieldName}`);
146
- if (pathValue !== undefined) return pathValue;
147
- }
148
-
149
- // 3. Search state - check common form prefixes
150
- if (state) {
151
- const prefixes = ["form", "newItem", "create", "edit", ""];
152
- for (const prefix of prefixes) {
153
- const path = prefix ? `/${prefix}/${fieldName}` : `/${fieldName}`;
154
- const val = getByPath(state, path);
155
- if (val !== undefined) return val;
156
- }
157
- }
158
-
159
- return undefined;
160
- }
161
-
162
- /**
163
- * Interpolate `{{path}}` references in a template string using context values.
164
- *
165
- * Useful for action onSuccess/onError messages that reference state values.
166
- *
167
- * @example
168
- * interpolateString("Created {{/form/name}} successfully", { form: { name: "Foo" } })
169
- * // → "Created Foo successfully"
170
- */
171
- export function interpolateString(
172
- template: string,
173
- context: Record<string, unknown>,
174
- ): string {
175
- return template.replace(/\{\{([^}]+)\}\}/g, (_, path) => {
176
- const value = getByPath(
177
- context,
178
- path.trim().startsWith("/") ? path.trim() : `/${path.trim()}`,
179
- );
180
- return value !== undefined ? String(value) : "";
181
- });
182
- }
183
-
184
- // ── Rich visibility evaluation (≈ json-render evaluateVisibility) ───────
185
-
186
- /**
187
- * Evaluate a LogicExpression against a state model.
188
- */
189
- export function evaluateLogicExpression(
190
- expr: LogicExpression,
191
- state: Record<string, unknown>,
192
- ): boolean {
193
- if ("and" in expr)
194
- return (expr as { and: LogicExpression[] }).and.every((e) =>
195
- evaluateLogicExpression(e, state),
196
- );
197
- if ("or" in expr)
198
- return (expr as { or: LogicExpression[] }).or.some((e) =>
199
- evaluateLogicExpression(e, state),
200
- );
201
- if ("not" in expr)
202
- return !evaluateLogicExpression(
203
- (expr as { not: LogicExpression }).not,
204
- state,
205
- );
206
- if ("path" in expr)
207
- return Boolean(getByPath(state, (expr as { path: string }).path));
208
- if ("eq" in expr) {
209
- const [l, r] = (expr as { eq: [DynamicValue, DynamicValue] }).eq;
210
- return resolveDynamic(l, state) === resolveDynamic(r, state);
211
- }
212
- if ("neq" in expr) {
213
- const [l, r] = (expr as { neq: [DynamicValue, DynamicValue] }).neq;
214
- return resolveDynamic(l, state) !== resolveDynamic(r, state);
215
- }
216
- if ("gt" in expr) {
217
- const [l, r] = (
218
- expr as { gt: [DynamicValue<number>, DynamicValue<number>] }
219
- ).gt;
220
- const lv = resolveDynamic(l, state),
221
- rv = resolveDynamic(r, state);
222
- return typeof lv === "number" && typeof rv === "number" && lv > rv;
223
- }
224
- if ("gte" in expr) {
225
- const [l, r] = (
226
- expr as { gte: [DynamicValue<number>, DynamicValue<number>] }
227
- ).gte;
228
- const lv = resolveDynamic(l, state),
229
- rv = resolveDynamic(r, state);
230
- return typeof lv === "number" && typeof rv === "number" && lv >= rv;
231
- }
232
- if ("lt" in expr) {
233
- const [l, r] = (
234
- expr as { lt: [DynamicValue<number>, DynamicValue<number>] }
235
- ).lt;
236
- const lv = resolveDynamic(l, state),
237
- rv = resolveDynamic(r, state);
238
- return typeof lv === "number" && typeof rv === "number" && lv < rv;
239
- }
240
- if ("lte" in expr) {
241
- const [l, r] = (
242
- expr as { lte: [DynamicValue<number>, DynamicValue<number>] }
243
- ).lte;
244
- const lv = resolveDynamic(l, state),
245
- rv = resolveDynamic(r, state);
246
- return typeof lv === "number" && typeof rv === "number" && lv <= rv;
247
- }
248
- return false;
249
- }
250
-
251
- /**
252
- * Evaluate a full VisibilityCondition.
253
- */
254
- export function evaluateVisibility(
255
- condition: VisibilityCondition | undefined,
256
- state: Record<string, unknown>,
257
- ): boolean {
258
- if (condition === undefined) return true;
259
- if (typeof condition === "boolean") return condition;
260
- if ("path" in condition && !("and" in condition) && !("or" in condition)) {
261
- return Boolean(getByPath(state, (condition as { path: string }).path));
262
- }
263
- return evaluateLogicExpression(condition as LogicExpression, state);
264
- }
265
-
266
- /**
267
- * Evaluate a legacy ShowIfCondition (backwards compat).
268
- */
269
- export function evaluateShowIf(
270
- condition: ShowIfCondition | undefined,
271
- values: Record<string, unknown>,
272
- ): boolean {
273
- if (!condition) return true;
274
- const val = values[condition.field];
275
- switch (condition.op) {
276
- case "eq":
277
- return val === condition.value;
278
- case "neq":
279
- return val !== condition.value;
280
- case "in":
281
- return Array.isArray(condition.value) && condition.value.includes(val);
282
- case "truthy":
283
- return Boolean(val);
284
- case "falsy":
285
- return !val;
286
- default:
287
- return true;
288
- }
289
- }
290
-
291
- // ── Visibility helpers (≈ json-render visibility.*) ─────────────────────
292
-
293
- export const visibility = {
294
- always: true as const,
295
- never: false as const,
296
- when: (path: string): VisibilityCondition => ({ path }),
297
- and: (...conditions: LogicExpression[]): LogicExpression => ({
298
- and: conditions,
299
- }),
300
- or: (...conditions: LogicExpression[]): LogicExpression => ({
301
- or: conditions,
302
- }),
303
- not: (condition: LogicExpression): LogicExpression => ({ not: condition }),
304
- eq: (left: DynamicValue, right: DynamicValue): LogicExpression => ({
305
- eq: [left, right],
306
- }),
307
- neq: (left: DynamicValue, right: DynamicValue): LogicExpression => ({
308
- neq: [left, right],
309
- }),
310
- gt: (
311
- left: DynamicValue<number>,
312
- right: DynamicValue<number>,
313
- ): LogicExpression => ({ gt: [left, right] }),
314
- gte: (
315
- left: DynamicValue<number>,
316
- right: DynamicValue<number>,
317
- ): LogicExpression => ({ gte: [left, right] }),
318
- lt: (
319
- left: DynamicValue<number>,
320
- right: DynamicValue<number>,
321
- ): LogicExpression => ({ lt: [left, right] }),
322
- lte: (
323
- left: DynamicValue<number>,
324
- right: DynamicValue<number>,
325
- ): LogicExpression => ({ lte: [left, right] }),
326
- };
327
-
328
- // ── Built-in validation functions (≈ json-render builtInValidationFunctions)
329
-
330
- export type ValidationFunction = (
331
- value: unknown,
332
- args?: Record<string, unknown>,
333
- ) => boolean;
334
-
335
- export const builtInValidators: Record<string, ValidationFunction> = {
336
- required: (value) => {
337
- if (value == null) return false;
338
- if (typeof value === "string") return value.trim().length > 0;
339
- if (Array.isArray(value)) return value.length > 0;
340
- return true;
341
- },
342
- email: (value) =>
343
- typeof value === "string" && /^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(value),
344
- minLength: (value, args) =>
345
- typeof value === "string" &&
346
- typeof args?.min === "number" &&
347
- value.length >= args.min,
348
- maxLength: (value, args) =>
349
- typeof value === "string" &&
350
- typeof args?.max === "number" &&
351
- value.length <= args.max,
352
- pattern: (value, args) => {
353
- if (typeof value !== "string" || typeof args?.pattern !== "string")
354
- return false;
355
- try {
356
- return new RegExp(args.pattern).test(value);
357
- } catch {
358
- return false;
359
- }
360
- },
361
- min: (value, args) =>
362
- typeof value === "number" &&
363
- typeof args?.min === "number" &&
364
- value >= args.min,
365
- max: (value, args) =>
366
- typeof value === "number" &&
367
- typeof args?.max === "number" &&
368
- value <= args.max,
369
- numeric: (value) =>
370
- typeof value === "number"
371
- ? !Number.isNaN(value)
372
- : typeof value === "string" && !Number.isNaN(parseFloat(value)),
373
- url: (value) => {
374
- if (typeof value !== "string") return false;
375
- try {
376
- new URL(value);
377
- return true;
378
- } catch {
379
- return false;
380
- }
381
- },
382
- matches: (value, args) => value === args?.other,
383
- };
384
-
385
- /**
386
- * Run validation checks for a field value.
387
- */
388
- export function runValidation(
389
- config: ValidationConfig,
390
- value: unknown,
391
- state: Record<string, unknown>,
392
- customFunctions?: Record<string, ValidationFunction>,
393
- ): { valid: boolean; errors: string[] } {
394
- const errors: string[] = [];
395
-
396
- // Check if validation is enabled
397
- if (config.enabled && !evaluateLogicExpression(config.enabled, state)) {
398
- return { valid: true, errors: [] };
399
- }
400
-
401
- if (config.checks) {
402
- for (const check of config.checks) {
403
- // Resolve dynamic args
404
- const resolvedArgs: Record<string, unknown> = {};
405
- if (check.args) {
406
- for (const [k, v] of Object.entries(check.args)) {
407
- resolvedArgs[k] = resolveDynamic(v, state);
408
- }
409
- }
410
- const fn = builtInValidators[check.fn] ?? customFunctions?.[check.fn];
411
- if (fn && !fn(value, resolvedArgs)) {
412
- errors.push(check.message);
413
- }
414
- }
415
- }
416
-
417
- return { valid: errors.length === 0, errors };
418
- }
419
-
420
- // ── Validation check helpers (≈ json-render check.*) ────────────────────
421
-
422
- export const check = {
423
- required: (message = "This field is required"): ValidationCheck => ({
424
- fn: "required",
425
- message,
426
- }),
427
- email: (message = "Invalid email address"): ValidationCheck => ({
428
- fn: "email",
429
- message,
430
- }),
431
- minLength: (min: number, message?: string): ValidationCheck => ({
432
- fn: "minLength",
433
- args: { min },
434
- message: message ?? `Must be at least ${min} characters`,
435
- }),
436
- maxLength: (max: number, message?: string): ValidationCheck => ({
437
- fn: "maxLength",
438
- args: { max },
439
- message: message ?? `Must be at most ${max} characters`,
440
- }),
441
- pattern: (pattern: string, message = "Invalid format"): ValidationCheck => ({
442
- fn: "pattern",
443
- args: { pattern },
444
- message,
445
- }),
446
- min: (min: number, message?: string): ValidationCheck => ({
447
- fn: "min",
448
- args: { min },
449
- message: message ?? `Must be at least ${min}`,
450
- }),
451
- max: (max: number, message?: string): ValidationCheck => ({
452
- fn: "max",
453
- args: { max },
454
- message: message ?? `Must be at most ${max}`,
455
- }),
456
- url: (message = "Invalid URL"): ValidationCheck => ({ fn: "url", message }),
457
- matches: (
458
- otherPath: string,
459
- message = "Fields must match",
460
- ): ValidationCheck => ({
461
- fn: "matches",
462
- args: { other: { path: otherPath } },
463
- message,
464
- }),
465
- };
466
-
467
- // ── Action definitions (≈ json-render ActionDefinition) ─────────────────
468
-
469
- export interface ActionDefinition<TParams = Record<string, unknown>> {
470
- /** Zod schema for params validation. */
471
- params?: z.ZodType<TParams>;
472
- /** Description for AI and documentation. */
473
- description?: string;
474
- }
475
-
476
- export type ActionHandler<
477
- TParams = Record<string, unknown>,
478
- TResult = unknown,
479
- > = (
480
- params: TParams,
481
- state: Record<string, unknown>,
482
- ) => Promise<TResult> | TResult;
483
-
484
- // ── Field definition (≈ json-render ComponentDefinition) ───────────────
485
-
486
- export interface FieldDefinition<TValidator extends z.ZodType = z.ZodType> {
487
- /** Zod schema for validating field values. */
488
- validator: TValidator;
489
- /** Human-readable description (used for documentation / AI prompts). */
490
- description: string;
491
- }
492
-
493
- // ── Catalog (≈ json-render Catalog) ────────────────────────────────────
494
-
495
- export interface FieldCatalog<
496
- TFields extends Record<string, FieldDefinition> = Record<
497
- string,
498
- FieldDefinition
499
- >,
500
- TActions extends Record<string, ActionDefinition> = Record<
501
- string,
502
- ActionDefinition
503
- >,
504
- > {
505
- readonly fields: TFields;
506
- readonly fieldNames: string[];
507
- readonly actions: TActions;
508
- readonly actionNames: string[];
509
- readonly functions: Record<string, ValidationFunction>;
510
- /** Check if a field type is registered. */
511
- hasField(type: string): boolean;
512
- /** Check if an action is registered. */
513
- hasAction(name: string): boolean;
514
- /** Validate a value against a field type's Zod schema. */
515
- validate(type: string, value: unknown): z.ZodSafeParseResult<unknown>;
516
- /** Resolve a JSON Schema property + optional UI hint to a field type name. */
517
- resolveType(property: JsonSchemaProperty, hint?: ConfigUiHint): string;
518
- /** Generate an AI system prompt describing the catalog's capabilities. */
519
- prompt(): string;
520
- }
521
-
522
- /**
523
- * Catalog configuration.
524
- */
525
- export interface CatalogConfig<
526
- TFields extends Record<string, FieldDefinition> = Record<
527
- string,
528
- FieldDefinition
529
- >,
530
- TActions extends Record<string, ActionDefinition> = Record<
531
- string,
532
- ActionDefinition
533
- >,
534
- > {
535
- /** Field type definitions. */
536
- fields: TFields;
537
- /** Action definitions. */
538
- actions?: TActions;
539
- /** Custom validation functions. */
540
- functions?: Record<string, ValidationFunction>;
541
- }
542
-
543
- /**
544
- * Create a type-safe field catalog.
545
- *
546
- * Equivalent to json-render's `defineCatalog(schema, config)`.
547
- * Supports fields, actions, custom validation functions, and prompt generation.
548
- */
549
- export function defineCatalog<
550
- TFields extends Record<string, FieldDefinition>,
551
- TActions extends Record<string, ActionDefinition> = Record<
552
- string,
553
- ActionDefinition
554
- >,
555
- >(
556
- fieldsOrConfig: TFields | CatalogConfig<TFields, TActions>,
557
- ): FieldCatalog<TFields, TActions> {
558
- // Support both old (fields-only) and new (full config) signatures.
559
- // Old format: { text: { validator, ... }, ... } — values have "validator".
560
- // New format: { fields: { text: { ... } }, actions?: { ... } } — top-level "fields" key.
561
- const firstVal = Object.values(fieldsOrConfig)[0];
562
- const isPlainFields =
563
- firstVal &&
564
- typeof firstVal === "object" &&
565
- "validator" in (firstVal as Record<string, unknown>);
566
- const config: CatalogConfig<TFields, TActions> = isPlainFields
567
- ? { fields: fieldsOrConfig as TFields, actions: {} as TActions }
568
- : (fieldsOrConfig as CatalogConfig<TFields, TActions>);
569
-
570
- const fields = config.fields;
571
- const actions = config.actions ?? ({} as TActions);
572
- const functions = config.functions ?? {};
573
- const fieldNames = Object.keys(fields);
574
- const actionNames = Object.keys(actions);
575
-
576
- return {
577
- fields,
578
- fieldNames,
579
- actions,
580
- actionNames,
581
- functions,
582
-
583
- hasField(type: string): boolean {
584
- return type in fields;
585
- },
586
-
587
- hasAction(name: string): boolean {
588
- return name in actions;
589
- },
590
-
591
- validate(type: string, value: unknown) {
592
- const def = fields[type];
593
- if (!def)
594
- return {
595
- success: false,
596
- error: new z.ZodError([
597
- {
598
- code: "custom",
599
- message: `Unknown field type: ${type}`,
600
- path: [],
601
- },
602
- ]),
603
- } as z.ZodSafeParseResult<unknown>;
604
- return def.validator.safeParse(value);
605
- },
606
-
607
- resolveType(property: JsonSchemaProperty, hint?: ConfigUiHint): string {
608
- return resolveFieldType(property, hint, fieldNames);
609
- },
610
-
611
- prompt(): string {
612
- return generateCatalogPrompt(fields, actions, functions);
613
- },
614
- };
615
- }
616
-
617
- // ── Prompt generation (≈ json-render catalog.prompt()) ──────────────────
618
-
619
- function generateCatalogPrompt(
620
- fields: Record<string, FieldDefinition>,
621
- actions: Record<string, ActionDefinition>,
622
- functions: Record<string, ValidationFunction>,
623
- ): string {
624
- const lines: string[] = [];
625
-
626
- lines.push("# Plugin Configuration UI Catalog");
627
- lines.push("");
628
- lines.push(
629
- "You are generating a plugin configuration form. Below are the available field types, actions, and validation functions.",
630
- );
631
- lines.push("");
632
-
633
- // Field types
634
- lines.push("## Field Types");
635
- lines.push("");
636
- for (const [name, def] of Object.entries(fields)) {
637
- lines.push(`- **${name}**: ${def.description}`);
638
- }
639
- lines.push("");
640
-
641
- // Actions
642
- if (Object.keys(actions).length > 0) {
643
- lines.push("## Actions");
644
- lines.push("");
645
- for (const [name, def] of Object.entries(actions)) {
646
- lines.push(`- **${name}**: ${def.description ?? "No description"}`);
647
- }
648
- lines.push("");
649
- }
650
-
651
- // Validation functions
652
- const allFunctions = { ...builtInValidators, ...functions };
653
- lines.push("## Validation Functions");
654
- lines.push("");
655
- lines.push(`Built-in: ${Object.keys(allFunctions).join(", ")}`);
656
- lines.push("");
657
-
658
- // Schema format
659
- lines.push("## Schema Format");
660
- lines.push("");
661
- lines.push(
662
- "Each field is described by a JSON Schema property + ConfigUiHint:",
663
- );
664
- lines.push("```json");
665
- lines.push(
666
- JSON.stringify(
667
- {
668
- FIELD_NAME: {
669
- schema: { type: "string", description: "..." },
670
- hint: {
671
- type: "text",
672
- label: "...",
673
- help: "...",
674
- group: "...",
675
- validation: { checks: [{ fn: "required", message: "..." }] },
676
- },
677
- },
678
- },
679
- null,
680
- 2,
681
- ),
682
- );
683
- lines.push("```");
684
- lines.push("");
685
-
686
- // Visibility
687
- lines.push("## Visibility Conditions");
688
- lines.push("");
689
- lines.push("Fields support `visible` conditions using LogicExpression:");
690
- lines.push('- `{ path: "FIELD_NAME" }` — truthy check');
691
- lines.push('- `{ eq: [{ path: "FIELD" }, "value"] }` — equality');
692
- lines.push(
693
- "- `{ and: [...] }`, `{ or: [...] }`, `{ not: {...} }` — logical operators",
694
- );
695
- lines.push("- `{ gt, gte, lt, lte }` — numeric comparisons");
696
-
697
- return lines.join("\n");
698
- }
699
-
700
- // ── Render props (≈ json-render ComponentRenderProps) ──────────────────
701
-
702
- /**
703
- * Props passed to every field renderer function.
704
- *
705
- * Plugin authors implementing custom renderers receive this interface
706
- * as the single argument to their render function.
707
- *
708
- * @example
709
- * ```tsx
710
- * const MyCustomField: FieldRenderer = (props: FieldRenderProps) => (
711
- * <input
712
- * value={String(props.value ?? "")}
713
- * onChange={(e) => props.onChange(e.target.value)}
714
- * placeholder={props.hint.placeholder}
715
- * disabled={props.readonly}
716
- * />
717
- * );
718
- * ```
719
- */
720
- export interface FieldRenderProps {
721
- /** Config key identifier (e.g., "OPENAI_API_KEY"). */
722
- key: string;
723
- /** Current field value, may be any JSON-compatible type. */
724
- value: unknown;
725
- /** JSON Schema property definition for this field. */
726
- schema: JsonSchemaProperty;
727
- /** UI rendering hints from the plugin manifest. */
728
- hint: ConfigUiHint;
729
- /** Resolved field type name from the catalog (e.g., "text", "select"). */
730
- fieldType: string;
731
- /** Callback to update the field value. */
732
- onChange: (value: unknown) => void;
733
- /** Whether the field currently has a configured value. */
734
- isSet: boolean;
735
- /** Whether the field is required by the schema. */
736
- required: boolean;
737
- /** Validation error messages for this field. */
738
- errors?: string[];
739
- /** Whether the field should be non-editable. */
740
- readonly?: boolean;
741
- /** For sensitive fields — async callback to fetch the real value from the server. */
742
- onReveal?: () => Promise<string | null>;
743
- /** Dispatch a named action with optional parameters. */
744
- onAction?: (
745
- action: string,
746
- params?: Record<string, unknown>,
747
- ) => Promise<unknown>;
748
- }
749
-
750
- /** A render function that returns a React node for a given field type. */
751
- export type FieldRenderer = (props: FieldRenderProps) => ReactNode;
752
-
753
- // ── Registry (≈ json-render ComponentRegistry + defineRegistry) ────────
754
-
755
- export interface FieldRegistry<
756
- TFields extends Record<string, FieldDefinition> = Record<
757
- string,
758
- FieldDefinition
759
- >,
760
- TActions extends Record<string, ActionDefinition> = Record<
761
- string,
762
- ActionDefinition
763
- >,
764
- > {
765
- readonly catalog: FieldCatalog<TFields, TActions>;
766
- readonly renderers: Record<string, FieldRenderer>;
767
- readonly actionHandlers: Record<string, ActionHandler>;
768
- /** Look up the renderer for a field type. Returns undefined if not registered. */
769
- resolve(type: string): FieldRenderer | undefined;
770
- /** Like resolve(), but falls back to the "text" renderer. */
771
- resolveOrFallback(type: string): FieldRenderer;
772
- /** Look up the handler for an action. */
773
- resolveAction(name: string): ActionHandler | undefined;
774
- }
775
-
776
- /**
777
- * Create a field registry that maps catalog field types to render functions.
778
- *
779
- * Equivalent to json-render's `defineRegistry(catalog, { components, actions })`.
780
- */
781
- export function defineRegistry<
782
- TFields extends Record<string, FieldDefinition>,
783
- TActions extends Record<string, ActionDefinition> = Record<
784
- string,
785
- ActionDefinition
786
- >,
787
- >(
788
- catalog: FieldCatalog<TFields, TActions>,
789
- renderers: Partial<Record<keyof TFields & string, FieldRenderer>>,
790
- actionHandlers?: Partial<Record<keyof TActions & string, ActionHandler>>,
791
- ): FieldRegistry<TFields, TActions> {
792
- const rendererMap = renderers as Record<string, FieldRenderer>;
793
- const handlerMap = (actionHandlers ?? {}) as Record<string, ActionHandler>;
794
-
795
- return {
796
- catalog,
797
- renderers: rendererMap,
798
- actionHandlers: handlerMap,
799
-
800
- resolve(type: string): FieldRenderer | undefined {
801
- return rendererMap[type];
802
- },
803
-
804
- resolveOrFallback(type: string): FieldRenderer {
805
- return rendererMap[type] ?? rendererMap.text;
806
- },
807
-
808
- resolveAction(name: string): ActionHandler | undefined {
809
- return handlerMap[name];
810
- },
811
- };
812
- }
813
-
814
- // ── Field type resolution ──────────────────────────────────────────────
815
-
816
- /**
817
- * Resolve a JSON Schema property + ConfigUiHint to a field type name.
818
- *
819
- * Priority order:
820
- * 1. Explicit hint.type override (if it's a known type)
821
- * 2. hint.sensitive → "password"
822
- * 3. Schema enum/options → "select"
823
- * 4. Schema type + format heuristics
824
- * 5. Fallback → "text"
825
- */
826
- function resolveFieldType(
827
- property: JsonSchemaProperty,
828
- hint: ConfigUiHint | undefined,
829
- knownTypes: string[],
830
- ): string {
831
- const knownSet = new Set(knownTypes);
832
-
833
- // 1. Explicit type override from hint
834
- const hintType = (hint as Record<string, unknown> | undefined)?.type as
835
- | string
836
- | undefined;
837
- if (hintType && knownSet.has(hintType)) return hintType;
838
-
839
- // 2. Sensitive → password
840
- if (hint?.sensitive) return knownSet.has("password") ? "password" : "text";
841
-
842
- // 3. Enum → select
843
- if (property.enum?.length || property.oneOf?.length) {
844
- return knownSet.has("select") ? "select" : "text";
845
- }
846
-
847
- // 4. Schema type + format
848
- const schemaType = Array.isArray(property.type)
849
- ? property.type[0]
850
- : property.type;
851
-
852
- switch (schemaType) {
853
- case "boolean":
854
- return knownSet.has("boolean") ? "boolean" : "text";
855
- case "number":
856
- case "integer":
857
- return knownSet.has("number") ? "number" : "text";
858
- case "array":
859
- if (property.items?.enum && knownSet.has("multiselect"))
860
- return "multiselect";
861
- return knownSet.has("array") ? "array" : "text";
862
- case "object":
863
- if (property.additionalProperties && knownSet.has("keyvalue"))
864
- return "keyvalue";
865
- return knownSet.has("json") ? "json" : "text";
866
- default:
867
- break;
868
- }
869
-
870
- // String format heuristics
871
- if (schemaType === "string" || !schemaType) {
872
- const fmt = property.format;
873
- if (fmt === "uri" || fmt === "url")
874
- return knownSet.has("url") ? "url" : "text";
875
- if (fmt === "email") return knownSet.has("email") ? "email" : "text";
876
- if (fmt === "date-time")
877
- return knownSet.has("datetime")
878
- ? "datetime"
879
- : knownSet.has("date")
880
- ? "date"
881
- : "text";
882
- if (fmt === "date") return knownSet.has("date") ? "date" : "text";
883
- if (fmt === "color") return knownSet.has("color") ? "color" : "text";
884
-
885
- // Multiline heuristic: maxLength > 200 or no maxLength with "text" hint
886
- if (property.maxLength && property.maxLength > 200) {
887
- return knownSet.has("textarea") ? "textarea" : "text";
888
- }
889
- }
890
-
891
- // 5. Fallback
892
- return "text";
893
- }
894
-
895
- // ── Default catalog ────────────────────────────────────────────────────
896
-
897
- /**
898
- * The standard field catalog with 23 basic field types + built-in actions.
899
- */
900
- export const defaultCatalog = defineCatalog({
901
- fields: {
902
- text: {
903
- validator: z.string(),
904
- description: "Single-line text input",
905
- },
906
- password: {
907
- validator: z.string(),
908
- description: "Masked input with show/hide toggle and API-backed reveal",
909
- },
910
- number: {
911
- validator: z.coerce.number(),
912
- description: "Numeric input with optional min/max/step",
913
- },
914
- boolean: {
915
- validator: z.coerce.boolean(),
916
- description: "Toggle switch (on/off)",
917
- },
918
- url: {
919
- validator: z.string(),
920
- description: "URL input with validation",
921
- },
922
- select: {
923
- validator: z.string(),
924
- description: "Single-select dropdown from enum values",
925
- },
926
- textarea: {
927
- validator: z.string(),
928
- description: "Multi-line text input for long values",
929
- },
930
- email: {
931
- validator: z.string().email().or(z.literal("")),
932
- description: "Email address input with validation",
933
- },
934
- color: {
935
- validator: z
936
- .string()
937
- .regex(/^#[0-9a-fA-F]{3,8}$/)
938
- .or(z.literal("")),
939
- description: "Color picker with hex value display",
940
- },
941
- radio: {
942
- validator: z.string(),
943
- description: "Single-select radio button group with descriptions",
944
- },
945
- multiselect: {
946
- validator: z.array(z.string()).or(z.string()),
947
- description: "Multi-select checkbox group for array values",
948
- },
949
- date: {
950
- validator: z.string(),
951
- description: "Date or date-time input",
952
- },
953
- json: {
954
- validator: z.string(),
955
- description: "JSON editor with syntax highlighting and validation",
956
- },
957
- code: {
958
- validator: z.string(),
959
- description: "Code editor with syntax highlighting",
960
- },
961
- array: {
962
- validator: z.array(z.unknown()),
963
- description: "Repeatable field group with add/remove items",
964
- },
965
- keyvalue: {
966
- validator: z.record(z.string(), z.string()),
967
- description: "Key-value pair editor with add/remove rows",
968
- },
969
- datetime: {
970
- validator: z.string(),
971
- description: "Date and time picker input",
972
- },
973
- file: {
974
- validator: z.string(),
975
- description: "File path or upload input",
976
- },
977
- custom: {
978
- validator: z.unknown(),
979
- description: "Plugin-provided custom React component",
980
- },
981
- markdown: {
982
- validator: z.string(),
983
- description: "Markdown editor with preview toggle",
984
- },
985
- "checkbox-group": {
986
- validator: z.array(z.string()).or(z.string()),
987
- description: "Checkbox group for multiple selections with descriptions",
988
- },
989
- group: {
990
- validator: z.record(z.string(), z.unknown()).or(z.string()),
991
- description: "Fieldset container for grouping related configuration",
992
- },
993
- table: {
994
- validator: z.array(z.record(z.string(), z.string())).or(z.string()),
995
- description: "Tabular data editor with add/remove rows",
996
- },
997
- },
998
- actions: {
999
- save: {
1000
- params: z.object({}),
1001
- description: "Save the current configuration",
1002
- },
1003
- reset: {
1004
- params: z.object({}),
1005
- description: "Reset all fields to their defaults",
1006
- },
1007
- testConnection: {
1008
- params: z.object({ key: z.string().optional() }),
1009
- description: "Test the connection/API key validity",
1010
- },
1011
- },
1012
- });
1013
-
1014
- // ── Schema traversal helpers ───────────────────────────────────────────
1015
-
1016
- export interface ResolvedField {
1017
- key: string;
1018
- schema: JsonSchemaProperty;
1019
- hint: ConfigUiHint;
1020
- fieldType: string;
1021
- required: boolean;
1022
- group: string;
1023
- order: number;
1024
- advanced: boolean;
1025
- hidden: boolean;
1026
- width: "full" | "half" | "third";
1027
- showIf?: ShowIfCondition;
1028
- visible?: VisibilityCondition;
1029
- validation?: ValidationConfig;
1030
- readonly: boolean;
1031
- }
1032
-
1033
- /**
1034
- * Walk a JSON Schema object's properties and resolve each to a field descriptor.
1035
- *
1036
- * This is the equivalent of json-render's spec traversal — it turns a declarative
1037
- * schema into an ordered list of renderable field descriptors.
1038
- */
1039
- export function resolveFields(
1040
- schema: JsonSchemaObject | JsonSchemaProperty,
1041
- hints: Record<string, ConfigUiHint>,
1042
- catalog: FieldCatalog,
1043
- ): ResolvedField[] {
1044
- const properties = schema.properties ?? {};
1045
- const requiredKeys = new Set(schema.required ?? []);
1046
- const fields: ResolvedField[] = [];
1047
-
1048
- // Field types that are compact enough for half-width columns
1049
- const HALF_WIDTH_TYPES = new Set([
1050
- "text",
1051
- "password",
1052
- "number",
1053
- "url",
1054
- "email",
1055
- "boolean",
1056
- "select",
1057
- "date",
1058
- "datetime",
1059
- "color",
1060
- "file",
1061
- ]);
1062
-
1063
- for (const [key, prop] of Object.entries(properties)) {
1064
- const hint = hints[key] ?? {};
1065
- const fieldType = catalog.resolveType(prop, hint);
1066
- fields.push({
1067
- key,
1068
- schema: prop,
1069
- hint,
1070
- fieldType,
1071
- required: requiredKeys.has(key),
1072
- group: hint.group ?? "general",
1073
- order: hint.order ?? 999,
1074
- advanced: hint.advanced ?? false,
1075
- hidden: hint.hidden ?? false,
1076
- width: hint.width ?? (HALF_WIDTH_TYPES.has(fieldType) ? "half" : "full"),
1077
- showIf: hint.showIf,
1078
- visible: hint.visible,
1079
- validation: hint.validation,
1080
- readonly: hint.readonly ?? false,
1081
- });
1082
- }
1083
-
1084
- // Sort: non-advanced before advanced, then by order, then alphabetically
1085
- fields.sort((a, b) => {
1086
- if (a.advanced !== b.advanced) return a.advanced ? 1 : -1;
1087
- if (a.order !== b.order) return a.order - b.order;
1088
- return a.key.localeCompare(b.key);
1089
- });
1090
-
1091
- return fields;
1092
- }