@elizaos/ui 2.0.0-alpha.382 → 2.0.0-alpha.385

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 (777) hide show
  1. package/apps/app-companion/src/components/avatar/VrmViewer.d.ts.map +1 -1
  2. package/apps/app-companion/src/components/avatar/VrmViewer.js +2 -1
  3. package/apps/app-companion/src/components/companion/CompanionAppView.d.ts.map +1 -1
  4. package/apps/app-companion/src/components/companion/CompanionAppView.js +2 -1
  5. package/apps/app-companion/src/components/companion/CompanionView.d.ts.map +1 -1
  6. package/apps/app-companion/src/components/companion/CompanionView.js +2 -1
  7. package/apps/app-companion/src/components/companion/EmotePicker.d.ts.map +1 -1
  8. package/apps/app-companion/src/components/companion/EmotePicker.js +1 -1
  9. package/apps/app-companion/src/components/companion/scene-overlay-bridge.d.ts.map +1 -1
  10. package/apps/app-companion/src/components/companion/scene-overlay-bridge.js +2 -1
  11. package/apps/app-companion/src/index.d.ts +3 -3
  12. package/apps/app-companion/src/index.d.ts.map +1 -1
  13. package/apps/app-companion/src/index.js +3 -3
  14. package/apps/app-elizamaker/src/drop-service.d.ts +2 -2
  15. package/apps/app-elizamaker/src/drop-service.d.ts.map +1 -1
  16. package/apps/app-elizamaker/src/twitter-verify.d.ts +2 -2
  17. package/apps/app-elizamaker/src/twitter-verify.d.ts.map +1 -1
  18. package/apps/app-lifeops/src/api/client-lifeops.d.ts +1 -1
  19. package/apps/app-lifeops/src/api/client-lifeops.d.ts.map +1 -1
  20. package/apps/app-lifeops/src/contracts/index.d.ts +1 -1
  21. package/apps/app-lifeops/src/contracts/index.d.ts.map +1 -1
  22. package/apps/app-lifeops/src/contracts/index.js +1 -1
  23. package/apps/app-lifeops/src/inbox/message-fetcher.d.ts.map +1 -1
  24. package/apps/app-lifeops/src/inbox/message-fetcher.js +4 -2
  25. package/apps/app-lifeops/src/lifeops/google-managed-client.d.ts.map +1 -1
  26. package/apps/app-lifeops/src/lifeops/google-managed-client.js +4 -3
  27. package/apps/app-lifeops/src/lifeops/paypal-managed-client.d.ts.map +1 -1
  28. package/apps/app-lifeops/src/lifeops/paypal-managed-client.js +4 -3
  29. package/apps/app-lifeops/src/lifeops/plaid-managed-client.d.ts.map +1 -1
  30. package/apps/app-lifeops/src/lifeops/plaid-managed-client.js +4 -3
  31. package/apps/app-lifeops/src/lifeops/repository.d.ts +12 -1
  32. package/apps/app-lifeops/src/lifeops/repository.d.ts.map +1 -1
  33. package/apps/app-lifeops/src/lifeops/repository.js +135 -0
  34. package/apps/app-lifeops/src/lifeops/schedule-sync-client.js +1 -1
  35. package/apps/app-lifeops/src/lifeops/schema.d.ts +4587 -3791
  36. package/apps/app-lifeops/src/lifeops/schema.d.ts.map +1 -1
  37. package/apps/app-lifeops/src/lifeops/schema.js +30 -0
  38. package/apps/app-lifeops/src/lifeops/service-mixin-inbox.d.ts +2 -0
  39. package/apps/app-lifeops/src/lifeops/service-mixin-inbox.d.ts.map +1 -1
  40. package/apps/app-lifeops/src/lifeops/service-mixin-inbox.js +103 -13
  41. package/apps/app-lifeops/src/routes/cloud-features-routes.d.ts.map +1 -1
  42. package/apps/app-lifeops/src/routes/cloud-features-routes.js +2 -1
  43. package/apps/app-lifeops/src/routes/travel-provider-relay-routes.d.ts.map +1 -1
  44. package/apps/app-lifeops/src/routes/travel-provider-relay-routes.js +2 -1
  45. package/package.json +1 -1
  46. package/packages/agent/src/actions/grounded-action-reply.d.ts.map +1 -1
  47. package/packages/agent/src/actions/grounded-action-reply.js +1 -1
  48. package/packages/agent/src/actions/index.d.ts +1 -0
  49. package/packages/agent/src/actions/index.d.ts.map +1 -1
  50. package/packages/agent/src/actions/index.js +1 -0
  51. package/packages/agent/src/actions/scratchpad.d.ts +7 -0
  52. package/packages/agent/src/actions/scratchpad.d.ts.map +1 -0
  53. package/packages/agent/src/actions/scratchpad.js +394 -0
  54. package/packages/agent/src/actions/settings-actions.js +1 -1
  55. package/packages/agent/src/actions/terminal.d.ts.map +1 -1
  56. package/packages/agent/src/actions/terminal.js +10 -2
  57. package/packages/agent/src/api/apps-routes.d.ts.map +1 -1
  58. package/packages/agent/src/api/apps-routes.js +171 -0
  59. package/packages/agent/src/api/binance-skill-helpers.d.ts.map +1 -1
  60. package/packages/agent/src/api/chat-routes.d.ts +3 -0
  61. package/packages/agent/src/api/chat-routes.d.ts.map +1 -1
  62. package/packages/agent/src/api/chat-routes.js +33 -14
  63. package/packages/agent/src/api/conversation-routes.js +2 -2
  64. package/packages/agent/src/api/misc-routes.d.ts.map +1 -1
  65. package/packages/agent/src/api/misc-routes.js +2 -2
  66. package/packages/agent/src/api/permissions-routes.js +1 -1
  67. package/packages/agent/src/api/plugin-routes.d.ts.map +1 -1
  68. package/packages/agent/src/api/plugin-routes.js +7 -1
  69. package/packages/agent/src/api/provider-switch-config.js +1 -1
  70. package/packages/agent/src/api/registry-service.d.ts +1 -1
  71. package/packages/agent/src/api/registry-service.d.ts.map +1 -1
  72. package/packages/agent/src/api/server-auth.d.ts.map +1 -1
  73. package/packages/agent/src/api/server-auth.js +119 -1
  74. package/packages/agent/src/api/server-helpers-auth.d.ts.map +1 -1
  75. package/packages/agent/src/api/server-helpers-auth.js +119 -1
  76. package/packages/agent/src/api/server-helpers-swarm.d.ts +1 -1
  77. package/packages/agent/src/api/server-helpers-swarm.d.ts.map +1 -1
  78. package/packages/agent/src/api/server-helpers.js +1 -1
  79. package/packages/agent/src/api/server-types.d.ts +2 -2
  80. package/packages/agent/src/api/server-types.d.ts.map +1 -1
  81. package/packages/agent/src/api/server.d.ts.map +1 -1
  82. package/packages/agent/src/api/server.js +5 -4
  83. package/packages/agent/src/api/training-backend-check.d.ts +1 -1
  84. package/packages/agent/src/api/training-backend-check.d.ts.map +1 -1
  85. package/packages/agent/src/api/training-backend-check.js +1 -1
  86. package/packages/agent/src/api/training-routes.d.ts +1 -1
  87. package/packages/agent/src/api/training-routes.d.ts.map +1 -1
  88. package/packages/agent/src/api/training-routes.js +1 -1
  89. package/packages/agent/src/api/training-service-like.d.ts +1 -1
  90. package/packages/agent/src/api/training-service-like.d.ts.map +1 -1
  91. package/packages/agent/src/api/trajectory-routes.d.ts +1 -1
  92. package/packages/agent/src/api/trajectory-routes.d.ts.map +1 -1
  93. package/packages/agent/src/api/trajectory-routes.js +1 -1
  94. package/packages/agent/src/api/wallet-capability.js +1 -1
  95. package/packages/agent/src/api/wallet-evm-balance.js +1 -1
  96. package/packages/agent/src/api/wallet.d.ts +1 -1
  97. package/packages/agent/src/api/wallet.d.ts.map +1 -1
  98. package/packages/agent/src/api/wallet.js +2 -2
  99. package/packages/agent/src/awareness/index.d.ts +2 -0
  100. package/packages/agent/src/awareness/index.d.ts.map +1 -0
  101. package/packages/agent/src/awareness/index.js +1 -0
  102. package/packages/agent/src/config/config.d.ts.map +1 -1
  103. package/packages/agent/src/config/config.js +2 -0
  104. package/packages/agent/src/config/index.d.ts +1 -0
  105. package/packages/agent/src/config/index.d.ts.map +1 -1
  106. package/packages/agent/src/config/index.js +1 -0
  107. package/packages/agent/src/config/model-metadata.d.ts +20 -0
  108. package/packages/agent/src/config/model-metadata.d.ts.map +1 -0
  109. package/packages/agent/src/config/model-metadata.js +133 -0
  110. package/packages/agent/src/config/zod-schema.core.d.ts +28 -28
  111. package/packages/agent/src/config/zod-schema.core.d.ts.map +1 -1
  112. package/packages/agent/src/config/zod-schema.core.js +16 -9
  113. package/packages/agent/src/config/zod-schema.d.ts +10 -10
  114. package/packages/agent/src/index.d.ts +6 -11
  115. package/packages/agent/src/index.d.ts.map +1 -1
  116. package/packages/agent/src/index.js +8 -10
  117. package/packages/agent/src/providers/media-provider.js +1 -1
  118. package/packages/agent/src/runtime/custom-actions.d.ts.map +1 -1
  119. package/packages/agent/src/runtime/custom-actions.js +1 -1
  120. package/packages/agent/src/runtime/eliza-plugin.d.ts.map +1 -1
  121. package/packages/agent/src/runtime/eliza-plugin.js +6 -0
  122. package/packages/agent/src/runtime/eliza.d.ts.map +1 -1
  123. package/packages/agent/src/runtime/eliza.js +7 -7
  124. package/packages/agent/src/runtime/prompt-optimization.d.ts +24 -1
  125. package/packages/agent/src/runtime/prompt-optimization.d.ts.map +1 -1
  126. package/packages/agent/src/runtime/prompt-optimization.js +292 -27
  127. package/packages/agent/src/runtime/trajectory-internals.d.ts +1 -0
  128. package/packages/agent/src/runtime/trajectory-internals.d.ts.map +1 -1
  129. package/packages/agent/src/runtime/trajectory-storage.d.ts.map +1 -1
  130. package/packages/agent/src/runtime/trajectory-storage.js +3 -0
  131. package/packages/agent/src/services/index.d.ts +4 -4
  132. package/packages/agent/src/services/index.d.ts.map +1 -1
  133. package/packages/agent/src/services/index.js +2 -2
  134. package/packages/agent/src/services/registry-client-app-meta.d.ts.map +1 -1
  135. package/packages/agent/src/services/registry-client-app-meta.js +0 -61
  136. package/packages/agent/src/services/skill-marketplace.d.ts.map +1 -1
  137. package/packages/app-core/src/App.js +1 -1
  138. package/packages/app-core/src/api/auth.js +1 -1
  139. package/packages/app-core/src/api/client-agent.d.ts +1 -2
  140. package/packages/app-core/src/api/client-agent.d.ts.map +1 -1
  141. package/packages/app-core/src/api/client-chat.d.ts +10 -1
  142. package/packages/app-core/src/api/client-chat.d.ts.map +1 -1
  143. package/packages/app-core/src/api/client-chat.js +33 -0
  144. package/packages/app-core/src/api/client-skills.d.ts.map +1 -1
  145. package/packages/app-core/src/api/client-types-chat.d.ts +1 -0
  146. package/packages/app-core/src/api/client-types-chat.d.ts.map +1 -1
  147. package/packages/app-core/src/api/client-types-config.d.ts +2 -2
  148. package/packages/app-core/src/api/client-types-config.d.ts.map +1 -1
  149. package/packages/app-core/src/api/client-wallet.d.ts +2 -4
  150. package/packages/app-core/src/api/client-wallet.d.ts.map +1 -1
  151. package/packages/app-core/src/api/client.d.ts +3 -4
  152. package/packages/app-core/src/api/client.d.ts.map +1 -1
  153. package/packages/app-core/src/api/client.js +1 -1
  154. package/packages/app-core/src/api/compat-route-shared.d.ts +1 -1
  155. package/packages/app-core/src/api/compat-route-shared.d.ts.map +1 -1
  156. package/packages/app-core/src/api/compat-route-shared.js +117 -1
  157. package/packages/app-core/src/api/server-cloud-tts.js +1 -1
  158. package/packages/app-core/src/api/trusted-local-request.d.ts +4 -0
  159. package/packages/app-core/src/api/trusted-local-request.d.ts.map +1 -0
  160. package/packages/app-core/src/api/trusted-local-request.js +176 -0
  161. package/packages/app-core/src/autonomy/index.d.ts.map +1 -1
  162. package/packages/app-core/src/autonomy/index.js +3 -1
  163. package/packages/app-core/src/components/auth/LoginView.d.ts +3 -23
  164. package/packages/app-core/src/components/auth/LoginView.d.ts.map +1 -1
  165. package/packages/app-core/src/components/auth/LoginView.js +43 -33
  166. package/packages/app-core/src/components/chat/AppsSection.d.ts.map +1 -1
  167. package/packages/app-core/src/components/chat/AppsSection.js +61 -6
  168. package/packages/app-core/src/components/chat/MessageContent.d.ts.map +1 -1
  169. package/packages/app-core/src/components/chat/MessageContent.js +26 -3
  170. package/packages/app-core/src/components/chat/message-choice-parser.d.ts +20 -0
  171. package/packages/app-core/src/components/chat/message-choice-parser.d.ts.map +1 -0
  172. package/packages/app-core/src/components/chat/message-choice-parser.js +53 -0
  173. package/packages/app-core/src/components/chat/widgets/ChoiceWidget.d.ts +24 -0
  174. package/packages/app-core/src/components/chat/widgets/ChoiceWidget.d.ts.map +1 -0
  175. package/packages/app-core/src/components/chat/widgets/ChoiceWidget.js +38 -0
  176. package/packages/app-core/src/components/connectors/ConnectorSetupPanel.js +1 -1
  177. package/packages/app-core/src/components/custom-actions/CustomActionEditor.d.ts.map +1 -1
  178. package/packages/app-core/src/components/custom-actions/CustomActionsPanel.d.ts.map +1 -1
  179. package/packages/app-core/src/components/custom-actions/CustomActionsView.d.ts.map +1 -1
  180. package/packages/app-core/src/components/custom-actions/custom-action-form.d.ts.map +1 -1
  181. package/packages/app-core/src/components/pages/BrowserWorkspaceView.js +1 -1
  182. package/packages/app-core/src/components/pages/KnowledgeView.d.ts.map +1 -1
  183. package/packages/app-core/src/components/pages/KnowledgeView.js +11 -1
  184. package/packages/app-core/src/components/pages/PluginConfigForm.d.ts.map +1 -1
  185. package/packages/app-core/src/components/pages/PluginConfigForm.js +1 -1
  186. package/packages/app-core/src/components/pages/ScratchpadView.d.ts +2 -0
  187. package/packages/app-core/src/components/pages/ScratchpadView.d.ts.map +1 -0
  188. package/packages/app-core/src/components/pages/ScratchpadView.js +364 -0
  189. package/packages/app-core/src/components/pages/SettingsView.d.ts.map +1 -1
  190. package/packages/app-core/src/components/pages/SettingsView.js +29 -5
  191. package/packages/app-core/src/components/pages/VectorBrowserView.d.ts.map +1 -1
  192. package/packages/app-core/src/components/pages/VectorBrowserView.js +1 -1
  193. package/packages/app-core/src/components/pages/config-page-sections.d.ts +1 -1
  194. package/packages/app-core/src/components/pages/config-page-sections.d.ts.map +1 -1
  195. package/packages/app-core/src/components/pages/config-page-sections.js +1 -1
  196. package/packages/app-core/src/components/pages/plugin-list-utils.d.ts +1 -1
  197. package/packages/app-core/src/components/pages/plugin-list-utils.d.ts.map +1 -1
  198. package/packages/app-core/src/components/pages/useBrowserWorkspaceWalletBridge.d.ts +1 -1
  199. package/packages/app-core/src/components/pages/useBrowserWorkspaceWalletBridge.d.ts.map +1 -1
  200. package/packages/app-core/src/components/pages/useBrowserWorkspaceWalletBridge.js +1 -1
  201. package/packages/app-core/src/components/settings/ApiKeyConfig.js +1 -1
  202. package/packages/app-core/src/components/settings/AppearanceSettingsSection.d.ts.map +1 -1
  203. package/packages/app-core/src/components/settings/AppearanceSettingsSection.js +1 -1
  204. package/packages/app-core/src/components/settings/AppsManagementSection.d.ts +12 -0
  205. package/packages/app-core/src/components/settings/AppsManagementSection.d.ts.map +1 -0
  206. package/packages/app-core/src/components/settings/AppsManagementSection.js +285 -0
  207. package/packages/app-core/src/components/settings/PermissionsSection.js +1 -1
  208. package/packages/app-core/src/components/settings/ProviderSwitcher.d.ts.map +1 -1
  209. package/packages/app-core/src/components/settings/ProviderSwitcher.js +2 -2
  210. package/packages/app-core/src/components/settings/SecuritySettingsSection.d.ts.map +1 -1
  211. package/packages/app-core/src/components/settings/SecuritySettingsSection.js +150 -33
  212. package/packages/app-core/src/components/settings/cloud-model-schema.d.ts +1 -1
  213. package/packages/app-core/src/components/settings/cloud-model-schema.d.ts.map +1 -1
  214. package/packages/app-core/src/components/shell/Header.d.ts.map +1 -1
  215. package/packages/app-core/src/components/shell/Header.js +28 -1
  216. package/packages/app-core/src/components/steward/injected.d.ts.map +1 -1
  217. package/packages/app-core/src/components/steward/injected.js +1 -1
  218. package/packages/app-core/src/components/training/injected.d.ts.map +1 -1
  219. package/packages/app-core/src/components/training/injected.js +1 -1
  220. package/packages/app-core/src/config/boot-config-store.d.ts +1 -1
  221. package/packages/app-core/src/config/boot-config-store.d.ts.map +1 -1
  222. package/packages/app-core/src/content-packs/bundled-packs.d.ts.map +1 -1
  223. package/packages/app-core/src/hooks/index.d.ts +0 -2
  224. package/packages/app-core/src/hooks/index.d.ts.map +1 -1
  225. package/packages/app-core/src/hooks/index.js +0 -2
  226. package/packages/app-core/src/hooks/useAuthStatus.d.ts +5 -0
  227. package/packages/app-core/src/hooks/useAuthStatus.d.ts.map +1 -1
  228. package/packages/app-core/src/hooks/useAuthStatus.js +41 -18
  229. package/packages/app-core/src/hooks/useSignalPairing.d.ts +1 -1
  230. package/packages/app-core/src/hooks/useSignalPairing.d.ts.map +1 -1
  231. package/packages/app-core/src/hooks/useWhatsAppPairing.d.ts +1 -1
  232. package/packages/app-core/src/hooks/useWhatsAppPairing.d.ts.map +1 -1
  233. package/packages/app-core/src/i18n/locales/en.json +0 -1
  234. package/packages/app-core/src/i18n/locales/es.json +0 -1
  235. package/packages/app-core/src/i18n/locales/ko.json +0 -1
  236. package/packages/app-core/src/i18n/locales/pt.json +0 -1
  237. package/packages/app-core/src/i18n/locales/tl.json +0 -1
  238. package/packages/app-core/src/i18n/locales/vi.json +0 -1
  239. package/packages/app-core/src/i18n/locales/zh-CN.json +0 -1
  240. package/packages/app-core/src/index.d.ts +0 -1
  241. package/packages/app-core/src/index.d.ts.map +1 -1
  242. package/packages/app-core/src/index.js +0 -1
  243. package/packages/app-core/src/runtime/channel-plugin-map.d.ts.map +1 -1
  244. package/packages/app-core/src/runtime/channel-plugin-map.js +1 -1
  245. package/packages/app-core/src/runtime/plugin-manager-guard.d.ts.map +1 -1
  246. package/packages/app-core/src/runtime/plugin-manager-guard.js +1 -1
  247. package/packages/app-core/src/services/plugin-installer.d.ts.map +1 -1
  248. package/packages/app-core/src/services/plugin-installer.js +1 -8
  249. package/packages/app-core/src/state/index.d.ts +0 -1
  250. package/packages/app-core/src/state/index.d.ts.map +1 -1
  251. package/packages/app-core/src/state/index.js +0 -1
  252. package/packages/app-core/src/state/startup-phase-restore.d.ts.map +1 -1
  253. package/packages/app-core/src/state/startup-phase-restore.js +1 -1
  254. package/packages/app-core/src/state/useOnboardingState.js +2 -2
  255. package/packages/app-core/src/state/usePluginsSkillsState.d.ts +4 -4
  256. package/packages/app-core/src/types/index.d.ts +1 -1
  257. package/packages/app-core/src/types/index.d.ts.map +1 -1
  258. package/packages/shared/src/contracts/index.d.ts +1 -0
  259. package/packages/shared/src/contracts/index.d.ts.map +1 -1
  260. package/packages/shared/src/contracts/index.js +1 -0
  261. package/packages/shared/src/contracts/scratchpad.d.ts +136 -0
  262. package/packages/shared/src/contracts/scratchpad.d.ts.map +1 -0
  263. package/packages/shared/src/contracts/scratchpad.js +90 -0
  264. package/packages/shared/src/index.d.ts +13 -13
  265. package/packages/shared/src/index.d.ts.map +1 -1
  266. package/packages/shared/src/index.js +19 -19
  267. package/packages/shared/src/spoken-text.js +1 -1
  268. package/packages/typescript/src/features/advanced-capabilities/evaluators/factExtractor.d.ts.map +1 -1
  269. package/packages/typescript/src/features/advanced-capabilities/evaluators/factExtractor.js +12 -6
  270. package/packages/typescript/src/generated/action-docs.d.ts +25 -0
  271. package/packages/typescript/src/generated/action-docs.d.ts.map +1 -1
  272. package/packages/typescript/src/generated/action-docs.js +51 -0
  273. package/packages/typescript/src/services/message.d.ts.map +1 -1
  274. package/packages/typescript/src/services/message.js +1 -3
  275. package/packages/typescript/src/types/tools.d.ts.map +1 -1
  276. package/packages/typescript/src/types/tools.js +7 -3
  277. package/apps/app-lifeops/src/action.d.ts +0 -3
  278. package/apps/app-lifeops/src/action.d.ts.map +0 -1
  279. package/apps/app-lifeops/src/action.js +0 -351
  280. package/apps/app-lifeops/src/actions/activity-report.d.ts +0 -13
  281. package/apps/app-lifeops/src/actions/activity-report.d.ts.map +0 -1
  282. package/apps/app-lifeops/src/actions/activity-report.js +0 -313
  283. package/apps/app-lifeops/src/actions/app-blocker.d.ts +0 -7
  284. package/apps/app-lifeops/src/actions/app-blocker.d.ts.map +0 -1
  285. package/apps/app-lifeops/src/actions/app-blocker.js +0 -454
  286. package/apps/app-lifeops/src/actions/approval.d.ts +0 -21
  287. package/apps/app-lifeops/src/actions/approval.d.ts.map +0 -1
  288. package/apps/app-lifeops/src/actions/approval.js +0 -342
  289. package/apps/app-lifeops/src/actions/autofill.d.ts +0 -35
  290. package/apps/app-lifeops/src/actions/autofill.d.ts.map +0 -1
  291. package/apps/app-lifeops/src/actions/autofill.js +0 -475
  292. package/apps/app-lifeops/src/actions/book-travel-executor.d.ts +0 -9
  293. package/apps/app-lifeops/src/actions/book-travel-executor.d.ts.map +0 -1
  294. package/apps/app-lifeops/src/actions/book-travel-executor.js +0 -65
  295. package/apps/app-lifeops/src/actions/book-travel.d.ts +0 -5
  296. package/apps/app-lifeops/src/actions/book-travel.d.ts.map +0 -1
  297. package/apps/app-lifeops/src/actions/book-travel.js +0 -491
  298. package/apps/app-lifeops/src/actions/calendar.d.ts +0 -19
  299. package/apps/app-lifeops/src/actions/calendar.d.ts.map +0 -1
  300. package/apps/app-lifeops/src/actions/calendar.js +0 -3189
  301. package/apps/app-lifeops/src/actions/calendly.d.ts +0 -3
  302. package/apps/app-lifeops/src/actions/calendly.d.ts.map +0 -1
  303. package/apps/app-lifeops/src/actions/calendly.js +0 -285
  304. package/apps/app-lifeops/src/actions/chat-thread-control.d.ts +0 -3
  305. package/apps/app-lifeops/src/actions/chat-thread-control.d.ts.map +0 -1
  306. package/apps/app-lifeops/src/actions/chat-thread-control.js +0 -260
  307. package/apps/app-lifeops/src/actions/checkin.d.ts +0 -8
  308. package/apps/app-lifeops/src/actions/checkin.d.ts.map +0 -1
  309. package/apps/app-lifeops/src/actions/checkin.js +0 -230
  310. package/apps/app-lifeops/src/actions/computer-use.d.ts +0 -14
  311. package/apps/app-lifeops/src/actions/computer-use.d.ts.map +0 -1
  312. package/apps/app-lifeops/src/actions/computer-use.js +0 -365
  313. package/apps/app-lifeops/src/actions/cross-channel-send.d.ts +0 -34
  314. package/apps/app-lifeops/src/actions/cross-channel-send.d.ts.map +0 -1
  315. package/apps/app-lifeops/src/actions/cross-channel-send.js +0 -964
  316. package/apps/app-lifeops/src/actions/device-bus.d.ts +0 -19
  317. package/apps/app-lifeops/src/actions/device-bus.d.ts.map +0 -1
  318. package/apps/app-lifeops/src/actions/device-bus.js +0 -386
  319. package/apps/app-lifeops/src/actions/dossier.d.ts +0 -5
  320. package/apps/app-lifeops/src/actions/dossier.d.ts.map +0 -1
  321. package/apps/app-lifeops/src/actions/dossier.js +0 -227
  322. package/apps/app-lifeops/src/actions/email-unsubscribe.d.ts +0 -5
  323. package/apps/app-lifeops/src/actions/email-unsubscribe.d.ts.map +0 -1
  324. package/apps/app-lifeops/src/actions/email-unsubscribe.js +0 -172
  325. package/apps/app-lifeops/src/actions/gmail.d.ts +0 -57
  326. package/apps/app-lifeops/src/actions/gmail.d.ts.map +0 -1
  327. package/apps/app-lifeops/src/actions/gmail.js +0 -2540
  328. package/apps/app-lifeops/src/actions/health.d.ts +0 -9
  329. package/apps/app-lifeops/src/actions/health.d.ts.map +0 -1
  330. package/apps/app-lifeops/src/actions/health.js +0 -398
  331. package/apps/app-lifeops/src/actions/inbox.d.ts +0 -5
  332. package/apps/app-lifeops/src/actions/inbox.d.ts.map +0 -1
  333. package/apps/app-lifeops/src/actions/inbox.js +0 -1244
  334. package/apps/app-lifeops/src/actions/intent-sync.d.ts +0 -5
  335. package/apps/app-lifeops/src/actions/intent-sync.d.ts.map +0 -1
  336. package/apps/app-lifeops/src/actions/intent-sync.js +0 -326
  337. package/apps/app-lifeops/src/actions/life-goal-extractor.d.ts +0 -69
  338. package/apps/app-lifeops/src/actions/life-goal-extractor.d.ts.map +0 -1
  339. package/apps/app-lifeops/src/actions/life-goal-extractor.js +0 -420
  340. package/apps/app-lifeops/src/actions/life-param-extractor.d.ts +0 -78
  341. package/apps/app-lifeops/src/actions/life-param-extractor.d.ts.map +0 -1
  342. package/apps/app-lifeops/src/actions/life-param-extractor.js +0 -431
  343. package/apps/app-lifeops/src/actions/life-recent-context.d.ts +0 -9
  344. package/apps/app-lifeops/src/actions/life-recent-context.d.ts.map +0 -1
  345. package/apps/app-lifeops/src/actions/life-recent-context.js +0 -78
  346. package/apps/app-lifeops/src/actions/life-update-extractor.d.ts +0 -27
  347. package/apps/app-lifeops/src/actions/life-update-extractor.d.ts.map +0 -1
  348. package/apps/app-lifeops/src/actions/life-update-extractor.js +0 -195
  349. package/apps/app-lifeops/src/actions/life.d.ts +0 -5
  350. package/apps/app-lifeops/src/actions/life.d.ts.map +0 -1
  351. package/apps/app-lifeops/src/actions/life.extractor.d.ts +0 -18
  352. package/apps/app-lifeops/src/actions/life.extractor.d.ts.map +0 -1
  353. package/apps/app-lifeops/src/actions/life.extractor.js +0 -363
  354. package/apps/app-lifeops/src/actions/life.js +0 -3247
  355. package/apps/app-lifeops/src/actions/lifeops-connector.d.ts +0 -5
  356. package/apps/app-lifeops/src/actions/lifeops-connector.d.ts.map +0 -1
  357. package/apps/app-lifeops/src/actions/lifeops-connector.js +0 -683
  358. package/apps/app-lifeops/src/actions/lifeops-extraction-config.d.ts +0 -16
  359. package/apps/app-lifeops/src/actions/lifeops-extraction-config.d.ts.map +0 -1
  360. package/apps/app-lifeops/src/actions/lifeops-extraction-config.js +0 -25
  361. package/apps/app-lifeops/src/actions/lifeops-google-helpers.d.ts +0 -64
  362. package/apps/app-lifeops/src/actions/lifeops-google-helpers.d.ts.map +0 -1
  363. package/apps/app-lifeops/src/actions/lifeops-google-helpers.js +0 -671
  364. package/apps/app-lifeops/src/actions/lifeops-mutate.d.ts +0 -5
  365. package/apps/app-lifeops/src/actions/lifeops-mutate.d.ts.map +0 -1
  366. package/apps/app-lifeops/src/actions/lifeops-mutate.js +0 -769
  367. package/apps/app-lifeops/src/actions/list-remote-sessions.d.ts +0 -6
  368. package/apps/app-lifeops/src/actions/list-remote-sessions.d.ts.map +0 -1
  369. package/apps/app-lifeops/src/actions/list-remote-sessions.js +0 -45
  370. package/apps/app-lifeops/src/actions/non-actionable-request.d.ts +0 -17
  371. package/apps/app-lifeops/src/actions/non-actionable-request.d.ts.map +0 -1
  372. package/apps/app-lifeops/src/actions/non-actionable-request.js +0 -25
  373. package/apps/app-lifeops/src/actions/owner-app-block.d.ts +0 -12
  374. package/apps/app-lifeops/src/actions/owner-app-block.d.ts.map +0 -1
  375. package/apps/app-lifeops/src/actions/owner-app-block.js +0 -144
  376. package/apps/app-lifeops/src/actions/owner-calendar.d.ts +0 -15
  377. package/apps/app-lifeops/src/actions/owner-calendar.d.ts.map +0 -1
  378. package/apps/app-lifeops/src/actions/owner-calendar.js +0 -762
  379. package/apps/app-lifeops/src/actions/owner-inbox.d.ts +0 -5
  380. package/apps/app-lifeops/src/actions/owner-inbox.d.ts.map +0 -1
  381. package/apps/app-lifeops/src/actions/owner-inbox.js +0 -662
  382. package/apps/app-lifeops/src/actions/owner-remote-desktop.d.ts +0 -12
  383. package/apps/app-lifeops/src/actions/owner-remote-desktop.d.ts.map +0 -1
  384. package/apps/app-lifeops/src/actions/owner-remote-desktop.js +0 -173
  385. package/apps/app-lifeops/src/actions/owner-schedule.d.ts +0 -3
  386. package/apps/app-lifeops/src/actions/owner-schedule.d.ts.map +0 -1
  387. package/apps/app-lifeops/src/actions/owner-schedule.js +0 -174
  388. package/apps/app-lifeops/src/actions/owner-screen-time.d.ts +0 -10
  389. package/apps/app-lifeops/src/actions/owner-screen-time.d.ts.map +0 -1
  390. package/apps/app-lifeops/src/actions/owner-screen-time.js +0 -213
  391. package/apps/app-lifeops/src/actions/owner-website-block.d.ts +0 -12
  392. package/apps/app-lifeops/src/actions/owner-website-block.d.ts.map +0 -1
  393. package/apps/app-lifeops/src/actions/owner-website-block.js +0 -424
  394. package/apps/app-lifeops/src/actions/password-manager.d.ts +0 -5
  395. package/apps/app-lifeops/src/actions/password-manager.d.ts.map +0 -1
  396. package/apps/app-lifeops/src/actions/password-manager.js +0 -217
  397. package/apps/app-lifeops/src/actions/payments.d.ts +0 -5
  398. package/apps/app-lifeops/src/actions/payments.d.ts.map +0 -1
  399. package/apps/app-lifeops/src/actions/payments.js +0 -236
  400. package/apps/app-lifeops/src/actions/relationships.d.ts +0 -12
  401. package/apps/app-lifeops/src/actions/relationships.d.ts.map +0 -1
  402. package/apps/app-lifeops/src/actions/relationships.js +0 -880
  403. package/apps/app-lifeops/src/actions/remote-desktop.d.ts +0 -5
  404. package/apps/app-lifeops/src/actions/remote-desktop.d.ts.map +0 -1
  405. package/apps/app-lifeops/src/actions/remote-desktop.js +0 -248
  406. package/apps/app-lifeops/src/actions/revoke-remote-session.d.ts +0 -6
  407. package/apps/app-lifeops/src/actions/revoke-remote-session.d.ts.map +0 -1
  408. package/apps/app-lifeops/src/actions/revoke-remote-session.js +0 -73
  409. package/apps/app-lifeops/src/actions/schedule-x-dm-reply.d.ts +0 -3
  410. package/apps/app-lifeops/src/actions/schedule-x-dm-reply.d.ts.map +0 -1
  411. package/apps/app-lifeops/src/actions/schedule-x-dm-reply.js +0 -134
  412. package/apps/app-lifeops/src/actions/scheduled-trigger-task.d.ts +0 -19
  413. package/apps/app-lifeops/src/actions/scheduled-trigger-task.d.ts.map +0 -1
  414. package/apps/app-lifeops/src/actions/scheduled-trigger-task.js +0 -82
  415. package/apps/app-lifeops/src/actions/scheduling.d.ts +0 -70
  416. package/apps/app-lifeops/src/actions/scheduling.d.ts.map +0 -1
  417. package/apps/app-lifeops/src/actions/scheduling.js +0 -1078
  418. package/apps/app-lifeops/src/actions/screen-time.d.ts +0 -8
  419. package/apps/app-lifeops/src/actions/screen-time.d.ts.map +0 -1
  420. package/apps/app-lifeops/src/actions/screen-time.js +0 -249
  421. package/apps/app-lifeops/src/actions/search-across-channels.d.ts +0 -13
  422. package/apps/app-lifeops/src/actions/search-across-channels.d.ts.map +0 -1
  423. package/apps/app-lifeops/src/actions/search-across-channels.js +0 -338
  424. package/apps/app-lifeops/src/actions/start-remote-session.d.ts +0 -14
  425. package/apps/app-lifeops/src/actions/start-remote-session.d.ts.map +0 -1
  426. package/apps/app-lifeops/src/actions/start-remote-session.js +0 -139
  427. package/apps/app-lifeops/src/actions/subscriptions.d.ts +0 -5
  428. package/apps/app-lifeops/src/actions/subscriptions.d.ts.map +0 -1
  429. package/apps/app-lifeops/src/actions/subscriptions.js +0 -404
  430. package/apps/app-lifeops/src/actions/timezone-normalization.d.ts +0 -4
  431. package/apps/app-lifeops/src/actions/timezone-normalization.d.ts.map +0 -1
  432. package/apps/app-lifeops/src/actions/timezone-normalization.js +0 -159
  433. package/apps/app-lifeops/src/actions/twilio-call.d.ts +0 -20
  434. package/apps/app-lifeops/src/actions/twilio-call.d.ts.map +0 -1
  435. package/apps/app-lifeops/src/actions/twilio-call.js +0 -853
  436. package/apps/app-lifeops/src/actions/update-owner-profile.d.ts +0 -5
  437. package/apps/app-lifeops/src/actions/update-owner-profile.d.ts.map +0 -1
  438. package/apps/app-lifeops/src/actions/update-owner-profile.js +0 -181
  439. package/apps/app-lifeops/src/actions/x-read.d.ts +0 -5
  440. package/apps/app-lifeops/src/actions/x-read.d.ts.map +0 -1
  441. package/apps/app-lifeops/src/actions/x-read.js +0 -561
  442. package/apps/app-lifeops/src/activity-profile/activity-tracker-service.d.ts +0 -36
  443. package/apps/app-lifeops/src/activity-profile/activity-tracker-service.d.ts.map +0 -1
  444. package/apps/app-lifeops/src/activity-profile/activity-tracker-service.js +0 -160
  445. package/apps/app-lifeops/src/activity-profile/analyzer.d.ts +0 -23
  446. package/apps/app-lifeops/src/activity-profile/analyzer.d.ts.map +0 -1
  447. package/apps/app-lifeops/src/activity-profile/analyzer.js +0 -555
  448. package/apps/app-lifeops/src/activity-profile/presence-signal-bridge-service.d.ts +0 -14
  449. package/apps/app-lifeops/src/activity-profile/presence-signal-bridge-service.d.ts.map +0 -1
  450. package/apps/app-lifeops/src/activity-profile/presence-signal-bridge-service.js +0 -133
  451. package/apps/app-lifeops/src/activity-profile/proactive-planner.d.ts +0 -71
  452. package/apps/app-lifeops/src/activity-profile/proactive-planner.d.ts.map +0 -1
  453. package/apps/app-lifeops/src/activity-profile/proactive-planner.js +0 -567
  454. package/apps/app-lifeops/src/activity-profile/proactive-worker.d.ts +0 -32
  455. package/apps/app-lifeops/src/activity-profile/proactive-worker.d.ts.map +0 -1
  456. package/apps/app-lifeops/src/activity-profile/proactive-worker.js +0 -676
  457. package/apps/app-lifeops/src/activity-profile/service.d.ts +0 -11
  458. package/apps/app-lifeops/src/activity-profile/service.d.ts.map +0 -1
  459. package/apps/app-lifeops/src/activity-profile/service.js +0 -246
  460. package/apps/app-lifeops/src/app-blocker/access.d.ts +0 -8
  461. package/apps/app-lifeops/src/app-blocker/access.d.ts.map +0 -1
  462. package/apps/app-lifeops/src/app-blocker/access.js +0 -35
  463. package/apps/app-lifeops/src/app-blocker/engine.d.ts +0 -10
  464. package/apps/app-lifeops/src/app-blocker/engine.d.ts.map +0 -1
  465. package/apps/app-lifeops/src/app-blocker/engine.js +0 -43
  466. package/apps/app-lifeops/src/components/AppBlockerSettingsCard.d.ts +0 -3
  467. package/apps/app-lifeops/src/components/AppBlockerSettingsCard.d.ts.map +0 -1
  468. package/apps/app-lifeops/src/components/AppBlockerSettingsCard.js +0 -189
  469. package/apps/app-lifeops/src/components/BrowserBridgeSetupPanel.d.ts +0 -2
  470. package/apps/app-lifeops/src/components/BrowserBridgeSetupPanel.d.ts.map +0 -1
  471. package/apps/app-lifeops/src/components/BrowserBridgeSetupPanel.js +0 -1065
  472. package/apps/app-lifeops/src/components/BrowserBridgeStatusChip.d.ts +0 -7
  473. package/apps/app-lifeops/src/components/BrowserBridgeStatusChip.d.ts.map +0 -1
  474. package/apps/app-lifeops/src/components/BrowserBridgeStatusChip.js +0 -74
  475. package/apps/app-lifeops/src/components/DataSourcesStrip.d.ts +0 -14
  476. package/apps/app-lifeops/src/components/DataSourcesStrip.d.ts.map +0 -1
  477. package/apps/app-lifeops/src/components/DataSourcesStrip.js +0 -36
  478. package/apps/app-lifeops/src/components/EventEditorDrawer.d.ts +0 -23
  479. package/apps/app-lifeops/src/components/EventEditorDrawer.d.ts.map +0 -1
  480. package/apps/app-lifeops/src/components/EventEditorDrawer.js +0 -514
  481. package/apps/app-lifeops/src/components/LifeOpsActivitySignalsEffect.d.ts +0 -2
  482. package/apps/app-lifeops/src/components/LifeOpsActivitySignalsEffect.d.ts.map +0 -1
  483. package/apps/app-lifeops/src/components/LifeOpsActivitySignalsEffect.js +0 -10
  484. package/apps/app-lifeops/src/components/LifeOpsCalendarSection.d.ts +0 -15
  485. package/apps/app-lifeops/src/components/LifeOpsCalendarSection.d.ts.map +0 -1
  486. package/apps/app-lifeops/src/components/LifeOpsCalendarSection.js +0 -515
  487. package/apps/app-lifeops/src/components/LifeOpsChatAdapter.d.ts +0 -34
  488. package/apps/app-lifeops/src/components/LifeOpsChatAdapter.d.ts.map +0 -1
  489. package/apps/app-lifeops/src/components/LifeOpsChatAdapter.js +0 -175
  490. package/apps/app-lifeops/src/components/LifeOpsFeatureTogglesSection.d.ts +0 -2
  491. package/apps/app-lifeops/src/components/LifeOpsFeatureTogglesSection.d.ts.map +0 -1
  492. package/apps/app-lifeops/src/components/LifeOpsFeatureTogglesSection.js +0 -99
  493. package/apps/app-lifeops/src/components/LifeOpsHabitVisuals.d.ts +0 -37
  494. package/apps/app-lifeops/src/components/LifeOpsHabitVisuals.d.ts.map +0 -1
  495. package/apps/app-lifeops/src/components/LifeOpsHabitVisuals.js +0 -88
  496. package/apps/app-lifeops/src/components/LifeOpsInboxSection.d.ts +0 -13
  497. package/apps/app-lifeops/src/components/LifeOpsInboxSection.d.ts.map +0 -1
  498. package/apps/app-lifeops/src/components/LifeOpsInboxSection.js +0 -490
  499. package/apps/app-lifeops/src/components/LifeOpsLinkBankButton.d.ts +0 -12
  500. package/apps/app-lifeops/src/components/LifeOpsLinkBankButton.d.ts.map +0 -1
  501. package/apps/app-lifeops/src/components/LifeOpsLinkBankButton.js +0 -92
  502. package/apps/app-lifeops/src/components/LifeOpsLinkPaypalButton.d.ts +0 -12
  503. package/apps/app-lifeops/src/components/LifeOpsLinkPaypalButton.d.ts.map +0 -1
  504. package/apps/app-lifeops/src/components/LifeOpsLinkPaypalButton.js +0 -160
  505. package/apps/app-lifeops/src/components/LifeOpsMoneySection.d.ts +0 -3
  506. package/apps/app-lifeops/src/components/LifeOpsMoneySection.d.ts.map +0 -1
  507. package/apps/app-lifeops/src/components/LifeOpsMoneySection.js +0 -373
  508. package/apps/app-lifeops/src/components/LifeOpsNavRail.d.ts +0 -9
  509. package/apps/app-lifeops/src/components/LifeOpsNavRail.d.ts.map +0 -1
  510. package/apps/app-lifeops/src/components/LifeOpsNavRail.js +0 -93
  511. package/apps/app-lifeops/src/components/LifeOpsOperationalPanels.d.ts +0 -4
  512. package/apps/app-lifeops/src/components/LifeOpsOperationalPanels.d.ts.map +0 -1
  513. package/apps/app-lifeops/src/components/LifeOpsOperationalPanels.js +0 -274
  514. package/apps/app-lifeops/src/components/LifeOpsOverviewSection.d.ts +0 -7
  515. package/apps/app-lifeops/src/components/LifeOpsOverviewSection.d.ts.map +0 -1
  516. package/apps/app-lifeops/src/components/LifeOpsOverviewSection.js +0 -670
  517. package/apps/app-lifeops/src/components/LifeOpsPageSections.d.ts +0 -42
  518. package/apps/app-lifeops/src/components/LifeOpsPageSections.d.ts.map +0 -1
  519. package/apps/app-lifeops/src/components/LifeOpsPageSections.js +0 -166
  520. package/apps/app-lifeops/src/components/LifeOpsPageView.d.ts +0 -2
  521. package/apps/app-lifeops/src/components/LifeOpsPageView.d.ts.map +0 -1
  522. package/apps/app-lifeops/src/components/LifeOpsPageView.js +0 -565
  523. package/apps/app-lifeops/src/components/LifeOpsRemindersSection.d.ts +0 -2
  524. package/apps/app-lifeops/src/components/LifeOpsRemindersSection.d.ts.map +0 -1
  525. package/apps/app-lifeops/src/components/LifeOpsRemindersSection.js +0 -749
  526. package/apps/app-lifeops/src/components/LifeOpsResizableSidebar.d.ts +0 -27
  527. package/apps/app-lifeops/src/components/LifeOpsResizableSidebar.d.ts.map +0 -1
  528. package/apps/app-lifeops/src/components/LifeOpsResizableSidebar.js +0 -106
  529. package/apps/app-lifeops/src/components/LifeOpsScreenTimeSection.d.ts +0 -2
  530. package/apps/app-lifeops/src/components/LifeOpsScreenTimeSection.d.ts.map +0 -1
  531. package/apps/app-lifeops/src/components/LifeOpsScreenTimeSection.js +0 -373
  532. package/apps/app-lifeops/src/components/LifeOpsSectionContent.d.ts +0 -10
  533. package/apps/app-lifeops/src/components/LifeOpsSectionContent.d.ts.map +0 -1
  534. package/apps/app-lifeops/src/components/LifeOpsSectionContent.js +0 -30
  535. package/apps/app-lifeops/src/components/LifeOpsSelectionContext.d.ts +0 -21
  536. package/apps/app-lifeops/src/components/LifeOpsSelectionContext.d.ts.map +0 -1
  537. package/apps/app-lifeops/src/components/LifeOpsSelectionContext.js +0 -30
  538. package/apps/app-lifeops/src/components/LifeOpsSettingsSection.d.ts +0 -20
  539. package/apps/app-lifeops/src/components/LifeOpsSettingsSection.d.ts.map +0 -1
  540. package/apps/app-lifeops/src/components/LifeOpsSettingsSection.js +0 -597
  541. package/apps/app-lifeops/src/components/LifeOpsSetupGate.d.ts +0 -13
  542. package/apps/app-lifeops/src/components/LifeOpsSetupGate.d.ts.map +0 -1
  543. package/apps/app-lifeops/src/components/LifeOpsSetupGate.js +0 -134
  544. package/apps/app-lifeops/src/components/LifeOpsSleepSection.d.ts +0 -10
  545. package/apps/app-lifeops/src/components/LifeOpsSleepSection.d.ts.map +0 -1
  546. package/apps/app-lifeops/src/components/LifeOpsSleepSection.js +0 -425
  547. package/apps/app-lifeops/src/components/LifeOpsWorkspaceShell.d.ts +0 -11
  548. package/apps/app-lifeops/src/components/LifeOpsWorkspaceShell.d.ts.map +0 -1
  549. package/apps/app-lifeops/src/components/LifeOpsWorkspaceShell.js +0 -49
  550. package/apps/app-lifeops/src/components/LifeOpsWorkspaceView.d.ts +0 -2
  551. package/apps/app-lifeops/src/components/LifeOpsWorkspaceView.d.ts.map +0 -1
  552. package/apps/app-lifeops/src/components/LifeOpsWorkspaceView.js +0 -1041
  553. package/apps/app-lifeops/src/components/MessagingConnectorCards.d.ts +0 -7
  554. package/apps/app-lifeops/src/components/MessagingConnectorCards.d.ts.map +0 -1
  555. package/apps/app-lifeops/src/components/MessagingConnectorCards.js +0 -643
  556. package/apps/app-lifeops/src/components/MissingSourceCard.d.ts +0 -9
  557. package/apps/app-lifeops/src/components/MissingSourceCard.d.ts.map +0 -1
  558. package/apps/app-lifeops/src/components/MissingSourceCard.js +0 -5
  559. package/apps/app-lifeops/src/components/MobileSignalsSetupCard.d.ts +0 -2
  560. package/apps/app-lifeops/src/components/MobileSignalsSetupCard.d.ts.map +0 -1
  561. package/apps/app-lifeops/src/components/MobileSignalsSetupCard.js +0 -162
  562. package/apps/app-lifeops/src/components/SleepInspectionPanel.d.ts +0 -8
  563. package/apps/app-lifeops/src/components/SleepInspectionPanel.d.ts.map +0 -1
  564. package/apps/app-lifeops/src/components/SleepInspectionPanel.js +0 -59
  565. package/apps/app-lifeops/src/components/WebsiteBlockerSettingsCard.d.ts +0 -3
  566. package/apps/app-lifeops/src/components/WebsiteBlockerSettingsCard.d.ts.map +0 -1
  567. package/apps/app-lifeops/src/components/WebsiteBlockerSettingsCard.js +0 -75
  568. package/apps/app-lifeops/src/components/WhatsAppQrOverlay.d.ts +0 -8
  569. package/apps/app-lifeops/src/components/WhatsAppQrOverlay.d.ts.map +0 -1
  570. package/apps/app-lifeops/src/components/WhatsAppQrOverlay.js +0 -48
  571. package/apps/app-lifeops/src/components/lifeops-labels.d.ts +0 -2
  572. package/apps/app-lifeops/src/components/lifeops-labels.d.ts.map +0 -1
  573. package/apps/app-lifeops/src/components/lifeops-labels.js +0 -5
  574. package/apps/app-lifeops/src/events/index.d.ts +0 -34
  575. package/apps/app-lifeops/src/events/index.d.ts.map +0 -1
  576. package/apps/app-lifeops/src/events/index.js +0 -23
  577. package/apps/app-lifeops/src/followup/actions/listOverdueFollowups.d.ts +0 -3
  578. package/apps/app-lifeops/src/followup/actions/listOverdueFollowups.d.ts.map +0 -1
  579. package/apps/app-lifeops/src/followup/actions/listOverdueFollowups.js +0 -48
  580. package/apps/app-lifeops/src/followup/actions/markFollowupDone.d.ts +0 -3
  581. package/apps/app-lifeops/src/followup/actions/markFollowupDone.d.ts.map +0 -1
  582. package/apps/app-lifeops/src/followup/actions/markFollowupDone.js +0 -173
  583. package/apps/app-lifeops/src/followup/actions/setFollowupThreshold.d.ts +0 -3
  584. package/apps/app-lifeops/src/followup/actions/setFollowupThreshold.d.ts.map +0 -1
  585. package/apps/app-lifeops/src/followup/actions/setFollowupThreshold.js +0 -172
  586. package/apps/app-lifeops/src/followup/followup-tracker.d.ts +0 -82
  587. package/apps/app-lifeops/src/followup/followup-tracker.d.ts.map +0 -1
  588. package/apps/app-lifeops/src/followup/followup-tracker.js +0 -279
  589. package/apps/app-lifeops/src/followup/index.d.ts +0 -5
  590. package/apps/app-lifeops/src/followup/index.d.ts.map +0 -1
  591. package/apps/app-lifeops/src/followup/index.js +0 -4
  592. package/apps/app-lifeops/src/hooks/useCalendarWeek.d.ts +0 -28
  593. package/apps/app-lifeops/src/hooks/useCalendarWeek.d.ts.map +0 -1
  594. package/apps/app-lifeops/src/hooks/useCalendarWeek.js +0 -93
  595. package/apps/app-lifeops/src/hooks/useDiscordConnector.d.ts +0 -14
  596. package/apps/app-lifeops/src/hooks/useDiscordConnector.d.ts.map +0 -1
  597. package/apps/app-lifeops/src/hooks/useDiscordConnector.js +0 -126
  598. package/apps/app-lifeops/src/hooks/useGoogleLifeOpsConnector.d.ts +0 -29
  599. package/apps/app-lifeops/src/hooks/useGoogleLifeOpsConnector.d.ts.map +0 -1
  600. package/apps/app-lifeops/src/hooks/useGoogleLifeOpsConnector.js +0 -481
  601. package/apps/app-lifeops/src/hooks/useIMessageConnector.d.ts +0 -10
  602. package/apps/app-lifeops/src/hooks/useIMessageConnector.d.ts.map +0 -1
  603. package/apps/app-lifeops/src/hooks/useIMessageConnector.js +0 -50
  604. package/apps/app-lifeops/src/hooks/useInbox.d.ts +0 -34
  605. package/apps/app-lifeops/src/hooks/useInbox.d.ts.map +0 -1
  606. package/apps/app-lifeops/src/hooks/useInbox.js +0 -98
  607. package/apps/app-lifeops/src/hooks/useLifeOpsActivitySignals.d.ts +0 -2
  608. package/apps/app-lifeops/src/hooks/useLifeOpsActivitySignals.d.ts.map +0 -1
  609. package/apps/app-lifeops/src/hooks/useLifeOpsActivitySignals.js +0 -382
  610. package/apps/app-lifeops/src/hooks/useLifeOpsAppState.d.ts +0 -21
  611. package/apps/app-lifeops/src/hooks/useLifeOpsAppState.d.ts.map +0 -1
  612. package/apps/app-lifeops/src/hooks/useLifeOpsAppState.js +0 -83
  613. package/apps/app-lifeops/src/hooks/useLifeOpsCapabilitiesStatus.d.ts +0 -8
  614. package/apps/app-lifeops/src/hooks/useLifeOpsCapabilitiesStatus.d.ts.map +0 -1
  615. package/apps/app-lifeops/src/hooks/useLifeOpsCapabilitiesStatus.js +0 -60
  616. package/apps/app-lifeops/src/hooks/useLifeOpsScheduleInspection.d.ts +0 -18
  617. package/apps/app-lifeops/src/hooks/useLifeOpsScheduleInspection.d.ts.map +0 -1
  618. package/apps/app-lifeops/src/hooks/useLifeOpsScheduleInspection.js +0 -66
  619. package/apps/app-lifeops/src/hooks/useLifeOpsScheduleState.d.ts +0 -14
  620. package/apps/app-lifeops/src/hooks/useLifeOpsScheduleState.d.ts.map +0 -1
  621. package/apps/app-lifeops/src/hooks/useLifeOpsScheduleState.js +0 -79
  622. package/apps/app-lifeops/src/hooks/useLifeOpsSection.d.ts +0 -18
  623. package/apps/app-lifeops/src/hooks/useLifeOpsSection.d.ts.map +0 -1
  624. package/apps/app-lifeops/src/hooks/useLifeOpsSection.js +0 -78
  625. package/apps/app-lifeops/src/hooks/useLifeOpsXConnector.d.ts +0 -14
  626. package/apps/app-lifeops/src/hooks/useLifeOpsXConnector.d.ts.map +0 -1
  627. package/apps/app-lifeops/src/hooks/useLifeOpsXConnector.js +0 -160
  628. package/apps/app-lifeops/src/hooks/useSignalConnector.d.ts +0 -16
  629. package/apps/app-lifeops/src/hooks/useSignalConnector.d.ts.map +0 -1
  630. package/apps/app-lifeops/src/hooks/useSignalConnector.js +0 -198
  631. package/apps/app-lifeops/src/hooks/useTelegramConnector.d.ts +0 -21
  632. package/apps/app-lifeops/src/hooks/useTelegramConnector.d.ts.map +0 -1
  633. package/apps/app-lifeops/src/hooks/useTelegramConnector.js +0 -177
  634. package/apps/app-lifeops/src/hooks/useWhatsAppConnector.d.ts +0 -8
  635. package/apps/app-lifeops/src/hooks/useWhatsAppConnector.d.ts.map +0 -1
  636. package/apps/app-lifeops/src/hooks/useWhatsAppConnector.js +0 -58
  637. package/apps/app-lifeops/src/hooks/useWhatsAppPairing.d.ts +0 -12
  638. package/apps/app-lifeops/src/hooks/useWhatsAppPairing.d.ts.map +0 -1
  639. package/apps/app-lifeops/src/hooks/useWhatsAppPairing.js +0 -152
  640. package/apps/app-lifeops/src/inbox/config.d.ts +0 -7
  641. package/apps/app-lifeops/src/inbox/config.d.ts.map +0 -1
  642. package/apps/app-lifeops/src/inbox/config.js +0 -67
  643. package/apps/app-lifeops/src/inbox/reflection.d.ts +0 -40
  644. package/apps/app-lifeops/src/inbox/reflection.d.ts.map +0 -1
  645. package/apps/app-lifeops/src/inbox/reflection.js +0 -115
  646. package/apps/app-lifeops/src/inbox/repository.d.ts +0 -52
  647. package/apps/app-lifeops/src/inbox/repository.d.ts.map +0 -1
  648. package/apps/app-lifeops/src/inbox/repository.js +0 -262
  649. package/apps/app-lifeops/src/inbox/triage-classifier.d.ts +0 -15
  650. package/apps/app-lifeops/src/inbox/triage-classifier.d.ts.map +0 -1
  651. package/apps/app-lifeops/src/inbox/triage-classifier.js +0 -179
  652. package/apps/app-lifeops/src/index.d.ts +0 -20
  653. package/apps/app-lifeops/src/index.d.ts.map +0 -1
  654. package/apps/app-lifeops/src/index.js +0 -18
  655. package/apps/app-lifeops/src/lifeops/approval-queue.d.ts +0 -24
  656. package/apps/app-lifeops/src/lifeops/approval-queue.d.ts.map +0 -1
  657. package/apps/app-lifeops/src/lifeops/approval-queue.js +0 -500
  658. package/apps/app-lifeops/src/lifeops/approval-queue.types.d.ts +0 -166
  659. package/apps/app-lifeops/src/lifeops/approval-queue.types.d.ts.map +0 -1
  660. package/apps/app-lifeops/src/lifeops/approval-queue.types.js +0 -22
  661. package/apps/app-lifeops/src/lifeops/autofill-whitelist.d.ts +0 -15
  662. package/apps/app-lifeops/src/lifeops/autofill-whitelist.d.ts.map +0 -1
  663. package/apps/app-lifeops/src/lifeops/autofill-whitelist.js +0 -116
  664. package/apps/app-lifeops/src/lifeops/background-planner-dispatch.d.ts +0 -60
  665. package/apps/app-lifeops/src/lifeops/background-planner-dispatch.d.ts.map +0 -1
  666. package/apps/app-lifeops/src/lifeops/background-planner-dispatch.js +0 -134
  667. package/apps/app-lifeops/src/lifeops/background-planner.d.ts +0 -141
  668. package/apps/app-lifeops/src/lifeops/background-planner.d.ts.map +0 -1
  669. package/apps/app-lifeops/src/lifeops/background-planner.js +0 -377
  670. package/apps/app-lifeops/src/lifeops/calendly-client.d.ts +0 -61
  671. package/apps/app-lifeops/src/lifeops/calendly-client.d.ts.map +0 -1
  672. package/apps/app-lifeops/src/lifeops/calendly-client.js +0 -234
  673. package/apps/app-lifeops/src/lifeops/checkin/schedule-resolver.d.ts +0 -14
  674. package/apps/app-lifeops/src/lifeops/checkin/schedule-resolver.d.ts.map +0 -1
  675. package/apps/app-lifeops/src/lifeops/checkin/schedule-resolver.js +0 -27
  676. package/apps/app-lifeops/src/lifeops/cross-channel-search.d.ts +0 -88
  677. package/apps/app-lifeops/src/lifeops/cross-channel-search.d.ts.map +0 -1
  678. package/apps/app-lifeops/src/lifeops/cross-channel-search.js +0 -446
  679. package/apps/app-lifeops/src/lifeops/intent-sync.d.ts +0 -59
  680. package/apps/app-lifeops/src/lifeops/intent-sync.d.ts.map +0 -1
  681. package/apps/app-lifeops/src/lifeops/intent-sync.js +0 -305
  682. package/apps/app-lifeops/src/lifeops/notifications-push.d.ts +0 -37
  683. package/apps/app-lifeops/src/lifeops/notifications-push.d.ts.map +0 -1
  684. package/apps/app-lifeops/src/lifeops/notifications-push.js +0 -92
  685. package/apps/app-lifeops/src/lifeops/password-manager-bridge.d.ts +0 -50
  686. package/apps/app-lifeops/src/lifeops/password-manager-bridge.d.ts.map +0 -1
  687. package/apps/app-lifeops/src/lifeops/password-manager-bridge.js +0 -448
  688. package/apps/app-lifeops/src/lifeops/remote-desktop.d.ts +0 -38
  689. package/apps/app-lifeops/src/lifeops/remote-desktop.d.ts.map +0 -1
  690. package/apps/app-lifeops/src/lifeops/remote-desktop.js +0 -372
  691. package/apps/app-lifeops/src/lifeops/runtime.d.ts +0 -11
  692. package/apps/app-lifeops/src/lifeops/runtime.d.ts.map +0 -1
  693. package/apps/app-lifeops/src/lifeops/runtime.js +0 -57
  694. package/apps/app-lifeops/src/lifeops/screen-context.d.ts +0 -52
  695. package/apps/app-lifeops/src/lifeops/screen-context.d.ts.map +0 -1
  696. package/apps/app-lifeops/src/lifeops/screen-context.js +0 -349
  697. package/apps/app-lifeops/src/lifeops-route.d.ts +0 -74
  698. package/apps/app-lifeops/src/lifeops-route.d.ts.map +0 -1
  699. package/apps/app-lifeops/src/lifeops-route.js +0 -204
  700. package/apps/app-lifeops/src/platform/index.d.ts +0 -2
  701. package/apps/app-lifeops/src/platform/index.d.ts.map +0 -1
  702. package/apps/app-lifeops/src/platform/index.js +0 -1
  703. package/apps/app-lifeops/src/platform/lifeops-github.d.ts +0 -15
  704. package/apps/app-lifeops/src/platform/lifeops-github.d.ts.map +0 -1
  705. package/apps/app-lifeops/src/platform/lifeops-github.js +0 -135
  706. package/apps/app-lifeops/src/plugin.d.ts +0 -33
  707. package/apps/app-lifeops/src/plugin.d.ts.map +0 -1
  708. package/apps/app-lifeops/src/plugin.js +0 -316
  709. package/apps/app-lifeops/src/provider.d.ts +0 -4
  710. package/apps/app-lifeops/src/provider.d.ts.map +0 -1
  711. package/apps/app-lifeops/src/provider.js +0 -77
  712. package/apps/app-lifeops/src/providers/activity-profile.d.ts +0 -3
  713. package/apps/app-lifeops/src/providers/activity-profile.d.ts.map +0 -1
  714. package/apps/app-lifeops/src/providers/activity-profile.js +0 -140
  715. package/apps/app-lifeops/src/providers/app-blocker.d.ts +0 -3
  716. package/apps/app-lifeops/src/providers/app-blocker.d.ts.map +0 -1
  717. package/apps/app-lifeops/src/providers/app-blocker.js +0 -86
  718. package/apps/app-lifeops/src/providers/cross-channel-context.d.ts +0 -29
  719. package/apps/app-lifeops/src/providers/cross-channel-context.d.ts.map +0 -1
  720. package/apps/app-lifeops/src/providers/cross-channel-context.js +0 -182
  721. package/apps/app-lifeops/src/providers/inbox-triage.d.ts +0 -3
  722. package/apps/app-lifeops/src/providers/inbox-triage.d.ts.map +0 -1
  723. package/apps/app-lifeops/src/providers/inbox-triage.js +0 -90
  724. package/apps/app-lifeops/src/providers/lifeops.d.ts +0 -3
  725. package/apps/app-lifeops/src/providers/lifeops.d.ts.map +0 -1
  726. package/apps/app-lifeops/src/providers/lifeops.js +0 -197
  727. package/apps/app-lifeops/src/remote/pairing-code.d.ts +0 -39
  728. package/apps/app-lifeops/src/remote/pairing-code.d.ts.map +0 -1
  729. package/apps/app-lifeops/src/remote/pairing-code.js +0 -76
  730. package/apps/app-lifeops/src/remote/remote-session-service.d.ts +0 -107
  731. package/apps/app-lifeops/src/remote/remote-session-service.d.ts.map +0 -1
  732. package/apps/app-lifeops/src/remote/remote-session-service.js +0 -253
  733. package/apps/app-lifeops/src/service.d.ts +0 -32
  734. package/apps/app-lifeops/src/service.d.ts.map +0 -1
  735. package/apps/app-lifeops/src/service.js +0 -67
  736. package/apps/app-lifeops/src/travel-time/calendar-create.d.ts +0 -17
  737. package/apps/app-lifeops/src/travel-time/calendar-create.d.ts.map +0 -1
  738. package/apps/app-lifeops/src/travel-time/calendar-create.js +0 -21
  739. package/apps/app-lifeops/src/travel-time/service.d.ts +0 -60
  740. package/apps/app-lifeops/src/travel-time/service.d.ts.map +0 -1
  741. package/apps/app-lifeops/src/travel-time/service.js +0 -142
  742. package/apps/app-lifeops/src/utils/lifeops-url.d.ts +0 -5
  743. package/apps/app-lifeops/src/utils/lifeops-url.d.ts.map +0 -1
  744. package/apps/app-lifeops/src/utils/lifeops-url.js +0 -35
  745. package/apps/app-lifeops/src/website-blocker/chat-integration/actions/blockUntilTaskComplete.d.ts +0 -3
  746. package/apps/app-lifeops/src/website-blocker/chat-integration/actions/blockUntilTaskComplete.d.ts.map +0 -1
  747. package/apps/app-lifeops/src/website-blocker/chat-integration/actions/blockUntilTaskComplete.js +0 -246
  748. package/apps/app-lifeops/src/website-blocker/chat-integration/actions/listActiveBlocks.d.ts +0 -3
  749. package/apps/app-lifeops/src/website-blocker/chat-integration/actions/listActiveBlocks.d.ts.map +0 -1
  750. package/apps/app-lifeops/src/website-blocker/chat-integration/actions/listActiveBlocks.js +0 -83
  751. package/apps/app-lifeops/src/website-blocker/chat-integration/actions/releaseBlock.d.ts +0 -3
  752. package/apps/app-lifeops/src/website-blocker/chat-integration/actions/releaseBlock.d.ts.map +0 -1
  753. package/apps/app-lifeops/src/website-blocker/chat-integration/actions/releaseBlock.js +0 -98
  754. package/apps/app-lifeops/src/website-blocker/chat-integration/block-rule-reconciler.d.ts +0 -7
  755. package/apps/app-lifeops/src/website-blocker/chat-integration/block-rule-reconciler.d.ts.map +0 -1
  756. package/apps/app-lifeops/src/website-blocker/chat-integration/block-rule-reconciler.js +0 -111
  757. package/apps/app-lifeops/src/website-blocker/chat-integration/block-rule-schema.d.ts +0 -39
  758. package/apps/app-lifeops/src/website-blocker/chat-integration/block-rule-schema.d.ts.map +0 -1
  759. package/apps/app-lifeops/src/website-blocker/chat-integration/block-rule-schema.js +0 -123
  760. package/apps/app-lifeops/src/website-blocker/chat-integration/block-rule-service.d.ts +0 -21
  761. package/apps/app-lifeops/src/website-blocker/chat-integration/block-rule-service.d.ts.map +0 -1
  762. package/apps/app-lifeops/src/website-blocker/chat-integration/block-rule-service.js +0 -258
  763. package/apps/app-lifeops/src/website-blocker/chat-integration/index.d.ts +0 -8
  764. package/apps/app-lifeops/src/website-blocker/chat-integration/index.d.ts.map +0 -1
  765. package/apps/app-lifeops/src/website-blocker/chat-integration/index.js +0 -6
  766. package/packages/app-core/src/api/client-lifeops.d.ts +0 -35
  767. package/packages/app-core/src/api/client-lifeops.d.ts.map +0 -1
  768. package/packages/app-core/src/api/client-lifeops.js +0 -114
  769. package/packages/app-core/src/hooks/useGoogleLifeOpsConnector.d.ts +0 -20
  770. package/packages/app-core/src/hooks/useGoogleLifeOpsConnector.d.ts.map +0 -1
  771. package/packages/app-core/src/hooks/useGoogleLifeOpsConnector.js +0 -69
  772. package/packages/app-core/src/hooks/useLifeOpsAppState.d.ts +0 -21
  773. package/packages/app-core/src/hooks/useLifeOpsAppState.d.ts.map +0 -1
  774. package/packages/app-core/src/hooks/useLifeOpsAppState.js +0 -81
  775. package/packages/app-core/src/services/steward-sidecar.d.ts +0 -6
  776. package/packages/app-core/src/services/steward-sidecar.d.ts.map +0 -1
  777. package/packages/app-core/src/services/steward-sidecar.js +0 -5
@@ -1,643 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { Button, client, isElectrobunRuntime, openExternalUrl, useApp, } from "@elizaos/app-core";
3
- import { CheckCircle2, CircleAlert, CircleDashed, ExternalLink, Loader2, MessageCircle, Phone, Plug2, QrCode, RefreshCw, Unplug, } from "lucide-react";
4
- import { useCallback, useEffect, useState } from "react";
5
- import { useDiscordConnector } from "../hooks/useDiscordConnector.js";
6
- import { useIMessageConnector } from "../hooks/useIMessageConnector.js";
7
- import { useSignalConnector } from "../hooks/useSignalConnector.js";
8
- import { useTelegramConnector } from "../hooks/useTelegramConnector.js";
9
- import { useWhatsAppConnector } from "../hooks/useWhatsAppConnector.js";
10
- import { WhatsAppQrOverlay } from "./WhatsAppQrOverlay.js";
11
- function isIosRuntime() {
12
- if (typeof navigator !== "undefined" &&
13
- /iPad|iPhone|iPod/.test(navigator.userAgent)) {
14
- return true;
15
- }
16
- const capacitor = globalThis.Capacitor;
17
- return capacitor?.getPlatform?.() === "ios";
18
- }
19
- const MACOS_FULL_DISK_ACCESS_SETTINGS_URL = "x-apple.systempreferences:com.apple.preference.security?Privacy_AllFiles";
20
- const LIFEOPS_BROWSER_SETUP_ID = "lifeops-browser-setup";
21
- function ConnectorCardShell({ icon, platform, status, statusVariant, children, }) {
22
- const dotColor = statusVariant === "ok"
23
- ? "bg-emerald-500"
24
- : statusVariant === "warning"
25
- ? "bg-amber-500"
26
- : "bg-muted/40";
27
- return (_jsxs("div", { className: "space-y-2 rounded-2xl border border-border/20 bg-card/14 px-3 py-3", children: [_jsx("div", { className: "flex items-center justify-between gap-3", children: _jsxs("div", { className: "flex min-w-0 items-center gap-2.5", children: [icon, _jsx("span", { className: "text-sm font-medium text-txt", children: platform }), _jsx("span", { className: `inline-block h-1.5 w-1.5 rounded-full ${dotColor}`, title: status, "aria-label": status, role: "img" })] }) }), children] }));
28
- }
29
- function AccessPips({ items, label, }) {
30
- const dots = items.length > 0 ? items : ["muted"];
31
- const slots = ["a", "b", "c", "d", "e", "f"];
32
- return (_jsx("span", { "aria-label": label, className: "inline-flex items-center gap-1", role: "img", title: label, children: slots.slice(0, dots.slice(0, 6).length).map((slot, slotIndex) => {
33
- const tone = dots[slotIndex];
34
- const color = tone === "ok"
35
- ? "bg-emerald-500"
36
- : tone === "warning"
37
- ? "bg-amber-500"
38
- : "bg-muted/45";
39
- return (_jsx("span", { className: `h-1.5 w-1.5 rounded-full ${color}` }, slot));
40
- }) }));
41
- }
42
- function SignalIcon({ className }) {
43
- return (_jsx("svg", { viewBox: "0 0 24 24", fill: "currentColor", "aria-hidden": "true", className: className, children: _jsx("path", { d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zm-1-13h2v6h-2zm0 8h2v2h-2z" }) }));
44
- }
45
- function DiscordIcon({ className }) {
46
- return (_jsx("svg", { viewBox: "0 0 24 24", fill: "currentColor", "aria-hidden": "true", className: className, children: _jsx("path", { d: "M20.317 4.37a19.791 19.791 0 0 0-4.885-1.515.074.074 0 0 0-.079.037c-.21.375-.444.864-.608 1.25a18.27 18.27 0 0 0-5.487 0 12.64 12.64 0 0 0-.617-1.25.077.077 0 0 0-.079-.037A19.736 19.736 0 0 0 3.677 4.37a.07.07 0 0 0-.032.027C.533 9.046-.32 13.58.099 18.057a.082.082 0 0 0 .031.057 19.9 19.9 0 0 0 5.993 3.03.078.078 0 0 0 .084-.028c.462-.63.874-1.295 1.226-1.994a.076.076 0 0 0-.041-.106 13.107 13.107 0 0 1-1.872-.892.077.077 0 0 1-.008-.128 10.2 10.2 0 0 0 .372-.292.074.074 0 0 1 .077-.01c3.928 1.793 8.18 1.793 12.062 0a.074.074 0 0 1 .078.01c.12.098.246.198.373.292a.077.077 0 0 1-.006.127 12.299 12.299 0 0 1-1.873.892.077.077 0 0 0-.041.107c.36.698.772 1.362 1.225 1.993a.076.076 0 0 0 .084.028 19.839 19.839 0 0 0 6.002-3.03.077.077 0 0 0 .032-.054c.5-5.177-.838-9.674-3.549-13.66a.061.061 0 0 0-.031-.03z" }) }));
47
- }
48
- function TelegramIcon({ className }) {
49
- return (_jsx("svg", { viewBox: "0 0 24 24", fill: "currentColor", "aria-hidden": "true", className: className, children: _jsx("path", { d: "M11.944 0A12 12 0 0 0 0 12a12 12 0 0 0 12 12 12 12 0 0 0 12-12A12 12 0 0 0 12 0a12 12 0 0 0-.056 0zm4.962 7.224c.1-.002.321.023.465.14a.506.506 0 0 1 .171.325c.016.093.036.306.02.472-.18 1.898-.962 6.502-1.36 8.627-.168.9-.499 1.201-.82 1.23-.696.065-1.225-.46-1.9-.902-1.056-.693-1.653-1.124-2.678-1.8-1.185-.78-.417-1.21.258-1.91.177-.184 3.247-2.977 3.307-3.23.007-.032.014-.15-.056-.212s-.174-.041-.249-.024c-.106.024-1.793 1.14-5.061 3.345-.479.33-.913.49-1.302.48-.428-.008-1.252-.241-1.865-.44-.752-.245-1.349-.374-1.297-.789.027-.216.325-.437.893-.663 3.498-1.524 5.83-2.529 6.998-3.014 3.332-1.386 4.025-1.627 4.476-1.635z" }) }));
50
- }
51
- function WhatsAppIcon({ className }) {
52
- return (_jsx("svg", { viewBox: "0 0 24 24", fill: "currentColor", "aria-hidden": "true", className: className, children: _jsx("path", { d: "M19.11 4.93A9.9 9.9 0 0 0 12.04 2c-5.5 0-9.96 4.45-9.96 9.94 0 1.75.46 3.47 1.34 4.99L2 22l5.23-1.37a9.97 9.97 0 0 0 4.81 1.23h.01c5.49 0 9.95-4.45 9.95-9.94a9.87 9.87 0 0 0-2.89-6.99ZM12.05 20.2h-.01a8.25 8.25 0 0 1-4.2-1.14l-.3-.18-3.1.81.83-3.02-.2-.31a8.22 8.22 0 0 1-1.28-4.42 8.29 8.29 0 0 1 8.3-8.27c2.22 0 4.31.86 5.87 2.42a8.2 8.2 0 0 1 2.43 5.85 8.29 8.29 0 0 1-8.34 8.26Zm4.53-6.18c-.25-.12-1.48-.73-1.71-.82-.23-.08-.39-.12-.56.12-.16.24-.64.82-.78.98-.14.16-.29.18-.54.06-.25-.12-1.05-.39-2-.24-.74.33-1.37-1.11-1.52-1.35-.14-.24-.02-.37.11-.49.11-.11.25-.29.37-.43.12-.14.16-.24.24-.41.08-.16.04-.31-.02-.43-.06-.12-.56-1.34-.77-1.84-.2-.48-.4-.41-.56-.42h-.48c-.16 0-.43.06-.65.31-.22.24-.85.83-.85 2.03 0 1.19.87 2.35.99 2.51.12.16 1.7 2.59 4.12 3.63.58.25 1.03.4 1.38.51.58.18 1.1.15 1.52.09.46-.07 1.48-.61 1.69-1.2.21-.59.21-1.09.15-1.2-.06-.11-.22-.18-.47-.3Z" }) }));
53
- }
54
- function inferTelegramRetryState(args) {
55
- if (args.authState !== "error") {
56
- return args.authState;
57
- }
58
- const message = (args.authError ?? "").trim().toUpperCase();
59
- if (message.includes("PASSWORD_HASH_INVALID") ||
60
- message.includes("AUTH.CHECKPASSWORD") ||
61
- message.includes("TWO-FACTOR PASSWORD")) {
62
- return "waiting_for_password";
63
- }
64
- if (message.includes("PHONE_CODE_INVALID") ||
65
- message.includes("PHONE_CODE_EXPIRED") ||
66
- message.includes("LOGIN CODE")) {
67
- return "waiting_for_code";
68
- }
69
- if (message.includes("PROVISIONING CODE")) {
70
- return "waiting_for_provisioning_code";
71
- }
72
- return "error";
73
- }
74
- function browserAccessTitle(access) {
75
- if (access.source === "discord_desktop") {
76
- return "Discord Desktop App";
77
- }
78
- if (access.source === "desktop_browser") {
79
- return "Milady Desktop Browser";
80
- }
81
- const browserLabel = access.browser === "safari" ? "Safari" : "Chrome";
82
- const profileLabel = access.profileLabel?.trim() || "Default profile";
83
- return `Your Browser · ${browserLabel} / ${profileLabel}`;
84
- }
85
- function browserAccessBadge(access) {
86
- if (isBrowserAccessReady(access)) {
87
- return {
88
- label: access.tabState === "dm_inbox_visible" ? "Using now" : "Ready",
89
- tone: "ok",
90
- };
91
- }
92
- if (access.active || access.available) {
93
- return { label: "Available", tone: "warning" };
94
- }
95
- return { label: "Not ready", tone: "muted" };
96
- }
97
- function isBrowserAccessReady(access) {
98
- return (access.canControl &&
99
- access.siteAccessOk !== false &&
100
- access.nextAction === "none" &&
101
- (access.tabState === "dm_inbox_visible" ||
102
- access.tabState === "discord_open" ||
103
- access.tabState === "background_discord"));
104
- }
105
- function BrowserAccessStatusIcon({ label, tone, }) {
106
- const className = tone === "ok"
107
- ? "text-emerald-500"
108
- : tone === "warning"
109
- ? "text-amber-500"
110
- : "text-muted/55";
111
- const Icon = tone === "ok"
112
- ? CheckCircle2
113
- : tone === "warning"
114
- ? CircleAlert
115
- : CircleDashed;
116
- return (_jsx("span", { "aria-label": label, className: `inline-flex h-5 w-5 items-center justify-center ${className}`, role: "img", title: label, children: _jsx(Icon, { className: "h-4 w-4", "aria-hidden": true }) }));
117
- }
118
- function browserAccessSourceLabel(access) {
119
- if (!access) {
120
- return "your browser";
121
- }
122
- return access.source === "desktop_browser"
123
- ? "Milady Desktop Browser"
124
- : access.source === "discord_desktop"
125
- ? "Discord Desktop"
126
- : "Your Browser";
127
- }
128
- function browserAccessActionLabel(action) {
129
- switch (action) {
130
- case "connect_browser":
131
- return "Connect Your Browser";
132
- case "open_extension_popup":
133
- return "Open Extension Popup";
134
- case "enable_browser_access":
135
- return "Turn On Browser Access";
136
- case "enable_browser_control":
137
- return "Enable Browser Control";
138
- case "open_discord":
139
- return "Open Discord";
140
- case "open_dm_inbox":
141
- return "Open Discord DMs";
142
- case "focus_discord_manually":
143
- return "Open Discord Manually";
144
- case "focus_dm_inbox_manually":
145
- return "Focus DMs Manually";
146
- case "log_in":
147
- return "Log In to Discord";
148
- case "open_desktop_browser":
149
- return "Open Milady Desktop";
150
- case "relaunch_discord":
151
- return "Relaunch Discord";
152
- default:
153
- return null;
154
- }
155
- }
156
- function browserAccessMessage(access) {
157
- const sourceLabel = browserAccessSourceLabel(access);
158
- if (access.source === "discord_desktop") {
159
- if (access.nextAction === "relaunch_discord") {
160
- return "Relaunch Discord with local agent control enabled. This keeps your existing Discord login.";
161
- }
162
- if (access.authState === "logged_out") {
163
- return "Discord Desktop is controllable, but that session still needs you to log in.";
164
- }
165
- if (access.tabState === "missing") {
166
- return "Discord Desktop control is on, but no Discord page target was found yet.";
167
- }
168
- if (access.authState === "logged_in" &&
169
- access.tabState !== "dm_inbox_visible") {
170
- return "Discord Desktop is connected, but the DM inbox is not visible yet.";
171
- }
172
- return "Discord Desktop is ready for local agent control.";
173
- }
174
- if (access.source === "lifeops_browser") {
175
- if (!access.available && access.nextAction === "enable_browser_access") {
176
- return access.active
177
- ? "Browser access is paused in Agent Browser Bridge settings."
178
- : "Browser access is turned off in Agent Browser Bridge settings.";
179
- }
180
- if (access.nextAction === "connect_browser") {
181
- return "No browser profile is connected yet. Install the extension, then open its popup in the browser profile that has your account.";
182
- }
183
- if (access.nextAction === "open_extension_popup") {
184
- return "A browser was paired before, but no profile is connected right now. Reopen the extension popup in the browser profile you want LifeOps to use.";
185
- }
186
- if (access.authState === "logged_out") {
187
- return `Discord is open in ${sourceLabel}, but that profile still needs you to log in.`;
188
- }
189
- if (!access.canControl && access.tabState === "missing") {
190
- return `${sourceLabel} is connected, but browser control is off, so LifeOps cannot open Discord for you.`;
191
- }
192
- if (!access.canControl && access.tabState !== "dm_inbox_visible") {
193
- return `${sourceLabel} can see Discord, but browser control is off. Focus the Discord DM tab manually or turn browser control on.`;
194
- }
195
- if (access.siteAccessOk === false) {
196
- return `${sourceLabel} is connected, but Discord has not been granted yet in this profile. Open Discord there and retry.`;
197
- }
198
- if (access.tabState === "missing") {
199
- return `${sourceLabel} is connected, but Discord is not open in that browser profile yet.`;
200
- }
201
- if (access.authState === "logged_in" &&
202
- access.tabState !== "dm_inbox_visible") {
203
- return `${sourceLabel} sees your Discord session, but not the DM inbox yet.`;
204
- }
205
- return `${sourceLabel} is ready for Discord.`;
206
- }
207
- if (access.nextAction === "open_desktop_browser") {
208
- return "Open Milady Desktop to use its built-in browser for your Discord session.";
209
- }
210
- if (access.authState === "logged_out") {
211
- return "Discord is open in Milady Desktop Browser, but that session still needs you to log in.";
212
- }
213
- if (access.tabState === "missing") {
214
- return "Milady Desktop Browser is available, but Discord is not open there yet.";
215
- }
216
- if (access.authState === "logged_in" &&
217
- access.tabState !== "dm_inbox_visible") {
218
- return "Milady Desktop Browser sees your Discord session, but not the DM inbox yet.";
219
- }
220
- return "Milady Desktop Browser is ready for Discord.";
221
- }
222
- function focusBrowserSetupPanel() {
223
- if (typeof document === "undefined") {
224
- return false;
225
- }
226
- const element = document.getElementById(LIFEOPS_BROWSER_SETUP_ID);
227
- if (!element) {
228
- return false;
229
- }
230
- element.scrollIntoView({ behavior: "smooth", block: "start" });
231
- return true;
232
- }
233
- function browserAccessActionIcon(action) {
234
- switch (action) {
235
- case "connect_browser":
236
- case "open_extension_popup":
237
- case "enable_browser_access":
238
- case "enable_browser_control":
239
- return _jsx(Plug2, { className: "mr-1.5 h-3 w-3", "aria-hidden": true });
240
- case "log_in":
241
- case "open_desktop_browser":
242
- case "relaunch_discord":
243
- case "open_discord":
244
- case "open_dm_inbox":
245
- case "focus_discord_manually":
246
- case "focus_dm_inbox_manually":
247
- return action === "relaunch_discord" ? (_jsx(RefreshCw, { className: "mr-1.5 h-3 w-3", "aria-hidden": true })) : (_jsx(ExternalLink, { className: "mr-1.5 h-3 w-3", "aria-hidden": true }));
248
- default:
249
- return null;
250
- }
251
- }
252
- export function SignalConnectorCard() {
253
- const signal = useSignalConnector();
254
- const isConnected = signal.status?.connected === true;
255
- const pairingState = signal.pairingStatus?.state ?? null;
256
- const isPairing = !isConnected &&
257
- (pairingState === "generating_qr" ||
258
- pairingState === "waiting_for_scan" ||
259
- pairingState === "linking");
260
- const busy = signal.actionPending || signal.loading;
261
- return (_jsxs(ConnectorCardShell, { icon: _jsx(SignalIcon, { className: "h-5 w-5 shrink-0 text-muted" }), platform: "Signal", status: isConnected ? "Connected" : isPairing ? "Pairing..." : "Not connected", statusVariant: isConnected ? "ok" : "muted", children: [!isConnected && !isPairing ? (_jsx(Button, { size: "sm", className: "h-8 w-8 rounded-xl p-0", disabled: busy, onClick: () => void signal.startPairing(), title: "Link Signal", "aria-label": "Link Signal", children: signal.actionPending ? (_jsx(Loader2, { className: "h-3.5 w-3.5 animate-spin", "aria-hidden": true })) : (_jsx(QrCode, { className: "h-3.5 w-3.5", "aria-hidden": true })) })) : null, isPairing ? (_jsxs("div", { className: "space-y-3", children: [signal.pairingStatus?.qrDataUrl ? (_jsx("div", { className: "flex justify-center rounded-2xl bg-white p-3", children: _jsx("img", { src: signal.pairingStatus.qrDataUrl, alt: "Signal pairing QR code", className: "h-40 w-40" }) })) : (_jsxs("div", { className: "flex items-center gap-2 text-xs text-muted", children: [_jsx(Loader2, { className: "h-3.5 w-3.5 animate-spin" }), "Generating QR code..."] })), _jsx(Button, { size: "sm", variant: "outline", className: "h-8 w-8 rounded-xl p-0", onClick: () => void signal.stopPairing(), title: "Cancel", "aria-label": "Cancel", children: _jsx(Unplug, { className: "h-3.5 w-3.5", "aria-hidden": true }) })] })) : null, isConnected ? (_jsxs("div", { className: "space-y-2", children: [signal.status?.identity?.phoneNumber ? (_jsxs("div", { className: "flex items-center gap-1.5 text-xs text-muted", children: [_jsx(Phone, { className: "h-3.5 w-3.5" }), signal.status.identity.phoneNumber] })) : null, _jsx(Button, { size: "sm", variant: "outline", className: "h-8 w-8 rounded-xl p-0", disabled: busy, onClick: () => void signal.disconnect(), title: "Disconnect", "aria-label": "Disconnect", children: _jsx(Unplug, { className: "h-3.5 w-3.5", "aria-hidden": true }) })] })) : null, signal.error ? (_jsx("div", { className: "text-xs text-danger", children: signal.error })) : null] }));
262
- }
263
- export function DiscordConnectorCard() {
264
- const discord = useDiscordConnector();
265
- const { setActionNotice, setTab } = useApp();
266
- const busy = discord.actionPending || discord.loading;
267
- const username = discord.status?.identity?.username;
268
- const browserAccess = discord.status?.browserAccess ?? [];
269
- const activeDmInboxAccess = browserAccess.find((access) => access.active && access.tabState === "dm_inbox_visible") ?? null;
270
- const isConnected = discord.status?.connected === true || Boolean(activeDmInboxAccess);
271
- const desktopAccess = browserAccess.find((access) => access.source === "desktop_browser") ?? null;
272
- const discordDesktopAccess = browserAccess.find((access) => access.source === "discord_desktop") ?? null;
273
- const dmInboxVisible = discord.status?.dmInbox.visible === true || Boolean(activeDmInboxAccess);
274
- const canRelaunchDiscord = discordDesktopAccess?.nextAction === "relaunch_discord";
275
- const preferredDiscordDesktopAccess = !dmInboxVisible && canRelaunchDiscord
276
- ? discordDesktopAccess
277
- : discordDesktopAccess?.active
278
- ? discordDesktopAccess
279
- : null;
280
- const preferredAccess = preferredDiscordDesktopAccess ??
281
- browserAccess.find((access) => access.active) ??
282
- browserAccess.find((access) => access.available) ??
283
- discordDesktopAccess ??
284
- browserAccess[0] ??
285
- null;
286
- const available = discord.status?.available === true ||
287
- browserAccess.some((access) => access.available);
288
- const visibleDmCount = discord.status?.dmInbox.count ?? 0;
289
- const lastError = canRelaunchDiscord ? null : discord.status?.lastError;
290
- const visibleDmLabels = discord.status?.dmInbox.previews
291
- ?.map((preview) => preview.label)
292
- .filter((label, index, labels) => labels.indexOf(label) === index)
293
- .slice(0, 3) ?? [];
294
- const pairing = discord.status?.reason === "pairing" ||
295
- preferredAccess?.nextAction === "open_discord" ||
296
- preferredAccess?.nextAction === "open_dm_inbox" ||
297
- preferredAccess?.nextAction === "relaunch_discord";
298
- const authPending = discord.status?.reason === "auth_pending" ||
299
- preferredAccess?.authState === "logged_out";
300
- const showConnectButton = (available || canRelaunchDiscord) && (!isConnected || !dmInboxVisible);
301
- const statusLabel = dmInboxVisible
302
- ? `Connected • ${visibleDmCount} DM${visibleDmCount === 1 ? "" : "s"} visible`
303
- : authPending
304
- ? `Log in to Discord in ${browserAccessSourceLabel(preferredAccess)}`
305
- : preferredAccess?.nextAction === "relaunch_discord"
306
- ? "Relaunch Discord"
307
- : preferredAccess?.nextAction === "enable_browser_control"
308
- ? "Enable browser control"
309
- : preferredAccess?.nextAction === "connect_browser" ||
310
- preferredAccess?.nextAction === "open_extension_popup"
311
- ? "Connect Your Browser"
312
- : preferredAccess?.nextAction === "open_desktop_browser"
313
- ? "Open Milady Desktop"
314
- : !available
315
- ? "Browser access unavailable"
316
- : isConnected
317
- ? "Connected, opening DM inbox"
318
- : pairing
319
- ? `Opening Discord in ${browserAccessSourceLabel(preferredAccess)}…`
320
- : "Not connected";
321
- const statusVariant = isConnected
322
- ? dmInboxVisible
323
- ? "ok"
324
- : "warning"
325
- : pairing || authPending
326
- ? "warning"
327
- : "muted";
328
- const browserAccessTones = browserAccess.map((access) => isBrowserAccessReady(access)
329
- ? "ok"
330
- : access.active || access.available
331
- ? "warning"
332
- : "muted");
333
- const handleOpenDesktopDiscord = useCallback(async () => {
334
- try {
335
- await client.startDiscordConnector({
336
- side: "owner",
337
- source: "desktop_browser",
338
- });
339
- await discord.refresh();
340
- setTab("browser");
341
- setActionNotice("Opened Discord in Milady Desktop Browser.", "success", 3200);
342
- }
343
- catch (cause) {
344
- setActionNotice(cause instanceof Error && cause.message.trim().length > 0
345
- ? cause.message.trim()
346
- : "Milady Desktop Browser could not open Discord.", "error", 4200);
347
- }
348
- }, [discord, setActionNotice, setTab]);
349
- const handleBrowserAccessAction = useCallback(async (access) => {
350
- if (access.source === "desktop_browser") {
351
- await handleOpenDesktopDiscord();
352
- return;
353
- }
354
- if (access.source === "discord_desktop") {
355
- await discord.connect("discord_desktop");
356
- return;
357
- }
358
- switch (access.nextAction) {
359
- case "connect_browser":
360
- case "open_extension_popup":
361
- case "enable_browser_access":
362
- case "enable_browser_control":
363
- if (!focusBrowserSetupPanel()) {
364
- setTab("browser");
365
- }
366
- setActionNotice("Use Guided Browser Setup to connect the browser profile that is already logged in to Discord.", "info", 4200);
367
- return;
368
- case "focus_discord_manually":
369
- case "focus_dm_inbox_manually":
370
- setActionNotice("Open Discord in the connected browser profile, then refresh this card.", "info", 4200);
371
- return;
372
- case "log_in":
373
- case "open_discord":
374
- case "open_dm_inbox":
375
- await discord.connect(access.source);
376
- return;
377
- default:
378
- await discord.refresh();
379
- }
380
- }, [discord, handleOpenDesktopDiscord, setActionNotice, setTab]);
381
- return (_jsxs(ConnectorCardShell, { icon: _jsx(DiscordIcon, { className: "h-5 w-5 shrink-0 text-muted" }), platform: "Discord", status: statusLabel, statusVariant: statusVariant, children: [showConnectButton ? (_jsx(Button, { size: "sm", className: "h-8 w-8 rounded-xl p-0", disabled: busy || (!available && !canRelaunchDiscord), onClick: () => void discord.connect(preferredAccess?.source), title: browserAccessActionLabel(preferredAccess?.nextAction) ??
382
- (authPending
383
- ? "Open Discord Login"
384
- : isConnected
385
- ? "Show Discord DMs"
386
- : pairing
387
- ? "Open Discord"
388
- : "Connect Discord"), "aria-label": browserAccessActionLabel(preferredAccess?.nextAction) ??
389
- (authPending
390
- ? "Open Discord Login"
391
- : isConnected
392
- ? "Show Discord DMs"
393
- : pairing
394
- ? "Open Discord"
395
- : "Connect Discord"), children: preferredAccess?.nextAction === "relaunch_discord" ? (_jsx(RefreshCw, { className: "h-3.5 w-3.5", "aria-hidden": true })) : (_jsx(Plug2, { className: "h-3.5 w-3.5", "aria-hidden": true })) })) : null, isElectrobunRuntime() &&
396
- desktopAccess &&
397
- (desktopAccess.nextAction === "open_desktop_browser" ||
398
- desktopAccess.nextAction === "open_discord" ||
399
- desktopAccess.nextAction === "open_dm_inbox" ||
400
- (!dmInboxVisible && desktopAccess.available)) ? (_jsx(Button, { size: "sm", variant: "outline", className: "h-8 w-8 rounded-xl p-0", disabled: busy, onClick: () => void handleOpenDesktopDiscord(), title: "Open in Milady Desktop Browser", "aria-label": "Open in Milady Desktop Browser", children: _jsx(ExternalLink, { className: "h-3.5 w-3.5", "aria-hidden": true }) })) : null, isConnected ? (_jsxs("div", { className: "space-y-2", children: [username ? (_jsxs("div", { className: "flex items-center gap-1.5 text-xs text-muted", children: [_jsx(MessageCircle, { className: "h-3.5 w-3.5" }), String(username)] })) : null, dmInboxVisible ? (_jsx("div", { className: "text-xs text-muted", children: visibleDmLabels.length > 0
401
- ? visibleDmLabels.join(", ")
402
- : "DM inbox visible" })) : null, _jsx(Button, { size: "sm", variant: "outline", className: "h-8 w-8 rounded-xl p-0", disabled: busy, onClick: () => void discord.disconnect(), title: "Disconnect", "aria-label": "Disconnect", children: _jsx(Unplug, { className: "h-3.5 w-3.5", "aria-hidden": true }) })] })) : null, browserAccess.length > 0 ? (_jsxs("details", { className: "rounded-2xl bg-bg/24 px-3 py-2", children: [_jsxs("summary", { className: "flex cursor-pointer list-none items-center justify-between gap-3", children: [_jsx("span", { className: "text-xs font-semibold text-txt", children: "Sources" }), _jsx(AccessPips, { items: browserAccessTones, label: `${browserAccess.length} browser sources` })] }), _jsx("div", { className: "mt-2 space-y-2", children: browserAccess.map((access) => {
403
- const badge = browserAccessBadge(access);
404
- const actionLabel = browserAccessActionLabel(access.nextAction);
405
- return (_jsxs("div", { className: "rounded-2xl border border-border/20 bg-card/18 px-3 py-2", children: [_jsxs("div", { className: "flex flex-wrap items-center justify-between gap-2", children: [_jsx("div", { className: "text-xs font-semibold text-txt", children: browserAccessTitle(access) }), _jsx(BrowserAccessStatusIcon, { label: badge.label, tone: badge.tone })] }), _jsx("div", { className: "mt-1 text-xs text-muted", children: browserAccessMessage(access) }), _jsxs("div", { className: "mt-1 text-[11px] text-muted/80", children: [access.canControl ? "Control on" : "Control off", access.siteAccessOk === false
406
- ? " • Discord not granted yet"
407
- : "", access.tabState === "dm_inbox_visible"
408
- ? " • DM inbox visible"
409
- : access.tabState === "discord_open"
410
- ? " • Discord open"
411
- : access.tabState === "background_discord"
412
- ? " • Discord tab found"
413
- : ""] }), actionLabel ? (_jsxs(Button, { size: "sm", variant: access.source === "desktop_browser"
414
- ? "outline"
415
- : "default", className: "mt-2 h-8 rounded-xl px-3 text-xs font-semibold", disabled: busy, onClick: () => void handleBrowserAccessAction(access), title: actionLabel, "aria-label": actionLabel, children: [browserAccessActionIcon(access.nextAction), actionLabel] })) : null] }, `${access.source}:${access.browser ?? "desktop"}:${access.profileId ?? "default"}`));
416
- }) })] })) : null, discord.error ? (_jsx("div", { className: "text-xs text-danger", children: discord.error })) : lastError ? (_jsx("div", { className: "text-xs text-danger", children: lastError })) : null] }));
417
- }
418
- export function TelegramConnectorCard() {
419
- const telegram = useTelegramConnector();
420
- const [phoneInput, setPhoneInput] = useState("");
421
- const [codeInput, setCodeInput] = useState("");
422
- const [passwordInput, setPasswordInput] = useState("");
423
- const [loginOpen, setLoginOpen] = useState(false);
424
- const isConnected = telegram.status?.connected === true;
425
- const authError = telegram.status?.authError ?? telegram.error;
426
- const authState = inferTelegramRetryState({
427
- authState: telegram.authState ?? "idle",
428
- authError,
429
- });
430
- const busy = telegram.actionPending || telegram.loading || telegram.verifyPending;
431
- useEffect(() => {
432
- if (telegram.status?.phone && phoneInput.trim().length === 0) {
433
- setPhoneInput(telegram.status.phone);
434
- }
435
- }, [telegram.status?.phone, phoneInput]);
436
- useEffect(() => {
437
- if (isConnected) {
438
- setLoginOpen(false);
439
- return;
440
- }
441
- if (authState !== "idle" && authState !== "error") {
442
- setLoginOpen(true);
443
- }
444
- }, [authState, isConnected]);
445
- const handleSendCode = useCallback(() => {
446
- if (phoneInput.trim().length > 0) {
447
- void telegram.startAuth(phoneInput.trim());
448
- }
449
- }, [phoneInput, telegram]);
450
- const handleVerifyCode = useCallback(() => {
451
- if (codeInput.trim().length > 0) {
452
- void telegram.submitCode(codeInput.trim());
453
- }
454
- }, [codeInput, telegram]);
455
- const handleSubmitPassword = useCallback(() => {
456
- if (passwordInput.length > 0) {
457
- void telegram.submitPassword(passwordInput);
458
- }
459
- }, [passwordInput, telegram]);
460
- const handleRestartAuth = useCallback(() => {
461
- setCodeInput("");
462
- setPasswordInput("");
463
- void telegram.cancelAuth();
464
- }, [telegram]);
465
- const showStartStep = !isConnected &&
466
- !loginOpen &&
467
- (authState === "idle" || authState === "error");
468
- const showPhoneStep = !isConnected &&
469
- loginOpen &&
470
- (authState === "idle" || authState === "error");
471
- const showCodeStep = authState === "waiting_for_provisioning_code" ||
472
- authState === "waiting_for_code";
473
- const showPasswordStep = authState === "waiting_for_password";
474
- const statusLabel = isConnected
475
- ? "Connected"
476
- : authState === "waiting_for_provisioning_code"
477
- ? "Enter my.telegram.org code"
478
- : authState === "waiting_for_code"
479
- ? "Enter verification code"
480
- : authState === "waiting_for_password"
481
- ? "2FA password required"
482
- : authState === "error"
483
- ? "Retry Telegram login"
484
- : "Not connected";
485
- const statusVariant = isConnected
486
- ? "ok"
487
- : showCodeStep || showPasswordStep || authState === "error"
488
- ? "warning"
489
- : "muted";
490
- return (_jsxs(ConnectorCardShell, { icon: _jsx(TelegramIcon, { className: "h-5 w-5 shrink-0 text-muted" }), platform: "Telegram", status: statusLabel, statusVariant: statusVariant, children: [showStartStep ? (_jsx(Button, { size: "sm", className: "h-8 w-8 rounded-xl p-0", disabled: busy, onClick: () => setLoginOpen(true), title: authState === "error" ? "Retry" : "Connect", "aria-label": authState === "error" ? "Retry" : "Connect", children: _jsx(Plug2, { className: "h-3.5 w-3.5", "aria-hidden": true }) })) : null, showPhoneStep ? (_jsxs("div", { className: "flex items-center gap-2", children: [_jsx("input", { type: "tel", placeholder: "+1 234 567 8900", value: phoneInput, onChange: (e) => setPhoneInput(e.target.value), className: "h-8 flex-1 rounded-lg bg-bg/40 px-3 text-xs text-txt placeholder:text-muted/50 focus:outline-none focus:ring-1 focus:ring-primary/40", onKeyDown: (e) => {
491
- if (e.key === "Enter") {
492
- handleSendCode();
493
- }
494
- } }), _jsx(Button, { size: "sm", className: "h-8 rounded-xl px-3 text-xs font-semibold", disabled: busy || phoneInput.trim().length === 0, onClick: handleSendCode, children: "Send Code" })] })) : null, showCodeStep ? (_jsxs("div", { className: "flex flex-col gap-2", children: [_jsxs("div", { className: "flex items-center gap-2", children: [_jsx("input", { type: "text", placeholder: "Verification code", value: codeInput, onChange: (e) => setCodeInput(e.target.value), className: "h-8 flex-1 rounded-xl border border-border/28 bg-card/24 px-3 text-xs text-txt placeholder:text-muted/50 focus:outline-none focus:ring-1 focus:ring-primary/40", autoComplete: "one-time-code", onKeyDown: (e) => {
495
- if (e.key === "Enter") {
496
- handleVerifyCode();
497
- }
498
- } }), _jsx(Button, { size: "sm", className: "h-8 rounded-xl px-3 text-xs font-semibold", disabled: busy || codeInput.trim().length === 0, onClick: handleVerifyCode, children: "Verify" }), _jsx(Button, { size: "sm", variant: "outline", className: "h-8 rounded-xl px-3 text-xs font-semibold", disabled: busy, onClick: handleRestartAuth, children: "Restart" })] }), _jsx("div", { className: "text-xs text-muted", children: "Enter the login code Telegram sent to your app or SMS, then retry if the code was wrong or expired." })] })) : null, authState === "waiting_for_password" ? (_jsxs("div", { className: "flex items-center gap-2", children: [_jsx("input", { type: "password", placeholder: "2FA password", value: passwordInput, onChange: (e) => setPasswordInput(e.target.value), className: "h-8 flex-1 rounded-lg bg-bg/40 px-3 text-xs text-txt placeholder:text-muted/50 focus:outline-none focus:ring-1 focus:ring-primary/40", onKeyDown: (e) => {
499
- if (e.key === "Enter") {
500
- handleSubmitPassword();
501
- }
502
- } }), _jsx(Button, { size: "sm", className: "h-8 rounded-xl px-3 text-xs font-semibold", disabled: busy || passwordInput.length === 0, onClick: handleSubmitPassword, children: "Submit" })] })) : null, isConnected ? (_jsxs("div", { className: "space-y-2", children: [telegram.status?.identity ? (_jsxs("div", { className: "flex items-center gap-1.5 text-xs text-muted", children: [_jsx(Phone, { className: "h-3.5 w-3.5" }), String(telegram.status.identity.username ||
503
- telegram.status.identity.phone ||
504
- "")] })) : null, _jsx(Button, { size: "sm", variant: "outline", className: "h-8 w-8 rounded-xl p-0", disabled: busy, onClick: () => void telegram.disconnect(), title: "Disconnect", "aria-label": "Disconnect", children: _jsx(Unplug, { className: "h-3.5 w-3.5", "aria-hidden": true }) })] })) : null, authError ? (_jsx("div", { className: "text-xs text-danger", children: authError })) : null] }));
505
- }
506
- export function WhatsAppConnectorCard() {
507
- const whatsapp = useWhatsAppConnector();
508
- const [pairingOpen, setPairingOpen] = useState(false);
509
- const isConnected = whatsapp.status?.connected === true;
510
- const busy = whatsapp.loading;
511
- const statusLabel = busy
512
- ? "Checking..."
513
- : isConnected
514
- ? "Configured"
515
- : pairingOpen
516
- ? "Pairing"
517
- : "Needs setup";
518
- const statusVariant = isConnected
519
- ? "ok"
520
- : busy || pairingOpen
521
- ? "warning"
522
- : "muted";
523
- return (_jsxs(ConnectorCardShell, { icon: _jsx(WhatsAppIcon, { className: "h-5 w-5 shrink-0 text-muted" }), platform: "WhatsApp", status: statusLabel, statusVariant: statusVariant, children: [_jsxs("div", { className: "space-y-2", children: [whatsapp.status?.phoneNumberId ? (_jsxs("div", { className: "flex items-center gap-1.5 text-xs text-muted", children: [_jsx(Phone, { className: "h-3.5 w-3.5" }), "Phone number ID: ", whatsapp.status.phoneNumberId] })) : null, _jsxs("div", { className: "flex items-center gap-2", children: [!isConnected ? (_jsxs(Button, { size: "sm", className: "h-8 rounded-xl px-3 text-xs font-semibold", disabled: busy, onClick: () => setPairingOpen((open) => !open), title: pairingOpen ? "Hide WhatsApp QR" : "Pair WhatsApp", "aria-label": pairingOpen ? "Hide WhatsApp QR" : "Pair WhatsApp", children: [_jsx(QrCode, { className: "mr-1.5 h-3.5 w-3.5", "aria-hidden": true }), pairingOpen ? "Hide QR" : "Pair WhatsApp"] })) : null, _jsx(Button, { size: "sm", variant: "outline", className: "h-8 w-8 rounded-xl p-0", disabled: busy, onClick: () => void whatsapp.refresh(), title: "Refresh", "aria-label": "Refresh", children: _jsx(RefreshCw, { className: "h-3.5 w-3.5", "aria-hidden": true }) })] }), pairingOpen ? (_jsx(WhatsAppQrOverlay, { accountId: "default", connectedMessage: "WhatsApp is paired. LifeOps will reuse this local session.", onConnected: () => {
524
- setPairingOpen(false);
525
- void whatsapp.refresh();
526
- } })) : null] }), whatsapp.error ? (_jsx("div", { className: "text-xs text-danger", children: whatsapp.error })) : null] }));
527
- }
528
- function formatIMessageSendMode(sendMode) {
529
- switch (sendMode) {
530
- case "cli":
531
- return "imsg CLI";
532
- case "private-api":
533
- return "BlueBubbles Private API";
534
- case "apple-script":
535
- return "Messages.app AppleScript";
536
- default:
537
- return "Unavailable";
538
- }
539
- }
540
- function formatIMessageDiagnostic(code) {
541
- switch (code) {
542
- case "full_disk_access_required":
543
- return "Full Disk Access is required before Milady can read incoming Messages history.";
544
- case "chat_db_unavailable":
545
- return "Milady could not open Messages chat.db for incoming message reads.";
546
- case "native_bridge_not_connected":
547
- return "The native Messages bridge is loaded but not connected yet.";
548
- case "bluebubbles_private_api_disabled":
549
- return "BlueBubbles Private API is disabled, so sends rely on AppleScript.";
550
- case "bluebubbles_helper_disconnected":
551
- return "BlueBubbles helper is disconnected, which usually means the Mac-side send path is degraded.";
552
- case "no_backend_available":
553
- return "No local iMessage backend is available.";
554
- default:
555
- return code;
556
- }
557
- }
558
- export function IMessageConnectorCard() {
559
- const imessage = useIMessageConnector();
560
- const { setActionNotice } = useApp();
561
- const iosRuntime = isIosRuntime();
562
- const status = imessage.status;
563
- const busy = imessage.loading;
564
- const isConnected = status?.connected === true;
565
- const hostPlatform = status?.hostPlatform ?? "unknown";
566
- const runningOnMacHost = hostPlatform === "darwin";
567
- const nativeReadDegraded = status?.diagnostics.includes("full_disk_access_required") ||
568
- status?.diagnostics.includes("chat_db_unavailable");
569
- const isDegraded = Boolean(isConnected && nativeReadDegraded) ||
570
- Boolean(isConnected &&
571
- status?.bridgeType === "bluebubbles" &&
572
- (status.sendMode === "apple-script" ||
573
- status.helperConnected === false));
574
- const needsFullDiskAccess = imessage.fullDiskAccess?.status === "revoked";
575
- const showFullDiskAccessControls = runningOnMacHost && (needsFullDiskAccess || nativeReadDegraded);
576
- const bridgeLabel = status?.bridgeType === "native"
577
- ? "Messages.app"
578
- : status?.bridgeType === "bluebubbles"
579
- ? "BlueBubbles"
580
- : status?.bridgeType === "imsg"
581
- ? "imsg"
582
- : null;
583
- const statusLabel = busy && !status
584
- ? "Checking..."
585
- : isConnected
586
- ? bridgeLabel === "Messages.app" && nativeReadDegraded
587
- ? "Connected, needs Full Disk Access"
588
- : bridgeLabel
589
- ? `Connected via ${bridgeLabel}`
590
- : "Connected"
591
- : "Not connected";
592
- const statusVariant = isDegraded
593
- ? "warning"
594
- : showFullDiskAccessControls
595
- ? "warning"
596
- : isConnected
597
- ? "ok"
598
- : busy && !status
599
- ? "warning"
600
- : "muted";
601
- const bridgePips = [
602
- isConnected ? "ok" : "muted",
603
- status?.privateApiEnabled === false || status?.helperConnected === false
604
- ? "warning"
605
- : isConnected
606
- ? "ok"
607
- : "muted",
608
- status?.sendMode === "apple-script"
609
- ? "warning"
610
- : isConnected
611
- ? "ok"
612
- : "muted",
613
- ];
614
- const handleOpenFullDiskAccess = useCallback(async () => {
615
- try {
616
- await openExternalUrl(MACOS_FULL_DISK_ACCESS_SETTINGS_URL);
617
- setActionNotice("Opened macOS Full Disk Access settings.", "success", 3600);
618
- }
619
- catch (cause) {
620
- setActionNotice(cause instanceof Error && cause.message.trim().length > 0
621
- ? cause.message.trim()
622
- : "Milady could not open Full Disk Access settings.", "error", 5000);
623
- }
624
- }, [setActionNotice]);
625
- return (_jsx(ConnectorCardShell, { icon: _jsx(MessageCircle, { className: "h-5 w-5 shrink-0 text-muted" }), platform: "iMessage", status: statusLabel, statusVariant: statusVariant, children: _jsxs("div", { className: "space-y-2", children: [_jsx("div", { className: "text-xs text-muted", children: isConnected
626
- ? bridgeLabel === "Messages.app"
627
- ? nativeReadDegraded
628
- ? "Milady can send through Messages.app now. Grant Full Disk Access to let it read incoming iMessages from chat.db."
629
- : "Milady is using the native Mac Messages bridge for iMessage send and receive."
630
- : bridgeLabel === "BlueBubbles"
631
- ? status?.sendMode === "private-api"
632
- ? "LifeOps is using the Mac-side BlueBubbles bridge with Private API enabled."
633
- : "LifeOps is using the Mac-side BlueBubbles bridge. Sends are currently using the AppleScript fallback."
634
- : "LifeOps is using the Mac-side imsg bridge for iMessage access."
635
- : iosRuntime
636
- ? "iMessage access must run through a paired Mac or a remote Mac backend that has iMessage configured."
637
- : runningOnMacHost
638
- ? "Milady could not load the native Messages bridge. Refresh after enabling the iMessage connector or restarting the agent."
639
- : "iMessage bridging requires a Mac host running Messages.app." }), showFullDiskAccessControls ? (_jsx("div", { className: "flex flex-wrap items-center gap-2", children: _jsx(Button, { size: "sm", variant: "outline", className: "h-8 rounded-xl px-3 text-xs font-semibold", disabled: busy, onClick: () => void handleOpenFullDiskAccess(), children: "Open Full Disk Access" }) })) : null, showFullDiskAccessControls ? (_jsx("div", { className: "rounded-xl border border-border/40 bg-card/18 px-3 py-2 text-xs text-muted", children: "Full Disk Access is still blocked for the process running Milady, so reading `~/Library/Messages/chat.db` may stay limited until you allow it in System Settings \u2192 Privacy & Security \u2192 Full Disk Access." })) : null, status?.accountHandle ? (_jsxs("div", { className: "flex items-center gap-1.5 text-xs text-muted", children: [_jsx(Phone, { className: "h-3.5 w-3.5" }), status.accountHandle] })) : null, isConnected ? (_jsxs("details", { className: "rounded-2xl bg-bg/24 px-3 py-2", children: [_jsxs("summary", { className: "flex cursor-pointer list-none items-center justify-between gap-3", children: [_jsx("span", { className: "text-xs font-semibold text-txt", children: bridgeLabel ?? "Bridge" }), _jsx(AccessPips, { items: bridgePips, label: "iMessage bridge status" })] }), _jsxs("div", { className: "mt-2 rounded-xl border border-border/40 bg-card/18 px-3 py-2 text-xs text-muted", children: [_jsxs("div", { children: ["Send path: ", formatIMessageSendMode(status?.sendMode ?? "none")] }), status?.privateApiEnabled !== null ? (_jsxs("div", { children: ["Private API:", " ", status.privateApiEnabled ? "enabled" : "disabled"] })) : null, status?.helperConnected !== null ? (_jsxs("div", { children: ["Helper:", " ", status.helperConnected ? "connected" : "disconnected"] })) : null] })] })) : null, _jsx("div", { className: "flex items-center gap-2", children: _jsx(Button, { size: "sm", variant: "outline", className: "h-8 w-8 rounded-xl p-0", disabled: busy, onClick: () => void imessage.refresh(), title: "Refresh", "aria-label": "Refresh", children: busy ? (_jsx(Loader2, { className: "h-3.5 w-3.5 animate-spin", "aria-hidden": true })) : (_jsx(RefreshCw, { className: "h-3.5 w-3.5", "aria-hidden": true })) }) }), status?.error ? (_jsx("div", { className: "text-xs text-danger", children: status.error })) : null, status?.diagnostics.length ? (_jsxs("details", { className: "rounded-2xl bg-bg/24 px-3 py-2", children: [_jsxs("summary", { className: "flex cursor-pointer list-none items-center justify-between gap-3", children: [_jsx("span", { className: "text-xs font-semibold text-txt", children: "Diagnostics" }), _jsx(AccessPips, { items: status.diagnostics.map(() => "warning"), label: `${status.diagnostics.length} diagnostics` })] }), _jsx("div", { className: "mt-2 space-y-2", children: status.diagnostics.map((diagnostic) => (_jsx("div", { className: "rounded-xl border border-border/40 bg-card/18 px-3 py-2 text-xs text-muted", children: formatIMessageDiagnostic(diagnostic) }, diagnostic))) })] })) : null, imessage.error ? (_jsx("div", { className: "text-xs text-danger", children: imessage.error })) : null] }) }));
640
- }
641
- export function MessagingConnectorGrid() {
642
- return (_jsx("div", { className: "space-y-1", children: _jsxs("div", { className: "space-y-1", children: [_jsx(SignalConnectorCard, {}), _jsx(DiscordConnectorCard, {}), _jsx(WhatsAppConnectorCard, {}), _jsx(TelegramConnectorCard, {}), _jsx(IMessageConnectorCard, {})] }) }));
643
- }