@rubytech/create-maxy-code 0.1.533 → 0.1.535

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 (234) hide show
  1. package/package.json +1 -1
  2. package/payload/platform/plugins/admin/skills/platform-architecture/SKILL.md +3 -1
  3. package/payload/platform/plugins/admin/skills/whats-new/SKILL.md +13 -0
  4. package/payload/platform/plugins/docs/references/admin-ui.md +2 -0
  5. package/payload/platform/plugins/email/mcp/dist/__tests__/signature.test.js +40 -1
  6. package/payload/platform/plugins/email/mcp/dist/__tests__/signature.test.js.map +1 -1
  7. package/payload/platform/plugins/email/mcp/dist/lib/compose.d.ts.map +1 -1
  8. package/payload/platform/plugins/email/mcp/dist/lib/compose.js +4 -1
  9. package/payload/platform/plugins/email/mcp/dist/lib/compose.js.map +1 -1
  10. package/payload/platform/plugins/email/mcp/dist/lib/signature.d.ts +27 -0
  11. package/payload/platform/plugins/email/mcp/dist/lib/signature.d.ts.map +1 -1
  12. package/payload/platform/plugins/email/mcp/dist/lib/signature.js +62 -2
  13. package/payload/platform/plugins/email/mcp/dist/lib/signature.js.map +1 -1
  14. package/payload/platform/plugins/memory/skills/preference-audit/SKILL.md +11 -1
  15. package/payload/platform/plugins/whatsapp/PLUGIN.md +10 -2
  16. package/payload/platform/plugins/whatsapp/mcp/dist/index.js +41 -3
  17. package/payload/platform/plugins/whatsapp/mcp/dist/index.js.map +1 -1
  18. package/payload/platform/plugins/whatsapp/skills/manage-whatsapp-config/SKILL.md +17 -1
  19. package/payload/platform/scripts/__tests__/vnc-cdp-liveness.test.sh +14 -12
  20. package/payload/platform/scripts/vnc.sh +24 -19
  21. package/payload/platform/services/claude-session-manager/dist/canonical-tool-names.generated.d.ts.map +1 -1
  22. package/payload/platform/services/claude-session-manager/dist/canonical-tool-names.generated.js +1 -0
  23. package/payload/platform/services/claude-session-manager/dist/canonical-tool-names.generated.js.map +1 -1
  24. package/payload/platform/services/claude-session-manager/dist/http-server.d.ts.map +1 -1
  25. package/payload/platform/services/claude-session-manager/dist/http-server.js +35 -1
  26. package/payload/platform/services/claude-session-manager/dist/http-server.js.map +1 -1
  27. package/payload/platform/services/claude-session-manager/dist/index.js +13 -4
  28. package/payload/platform/services/claude-session-manager/dist/index.js.map +1 -1
  29. package/payload/platform/services/claude-session-manager/dist/preference-reconciliation-audit.d.ts +1 -1
  30. package/payload/platform/services/claude-session-manager/dist/preference-reconciliation-audit.d.ts.map +1 -1
  31. package/payload/platform/services/claude-session-manager/dist/preference-reconciliation-audit.js +46 -3
  32. package/payload/platform/services/claude-session-manager/dist/preference-reconciliation-audit.js.map +1 -1
  33. package/payload/platform/services/claude-session-manager/dist/rc-daemon.d.ts +9 -0
  34. package/payload/platform/services/claude-session-manager/dist/rc-daemon.d.ts.map +1 -1
  35. package/payload/platform/services/claude-session-manager/dist/rc-daemon.js +7 -0
  36. package/payload/platform/services/claude-session-manager/dist/rc-daemon.js.map +1 -1
  37. package/payload/platform/services/claude-session-manager/dist/specialist-roster.d.ts +12 -0
  38. package/payload/platform/services/claude-session-manager/dist/specialist-roster.d.ts.map +1 -0
  39. package/payload/platform/services/claude-session-manager/dist/specialist-roster.js +75 -0
  40. package/payload/platform/services/claude-session-manager/dist/specialist-roster.js.map +1 -0
  41. package/payload/platform/services/claude-session-manager/dist/system-prompt.d.ts +5 -0
  42. package/payload/platform/services/claude-session-manager/dist/system-prompt.d.ts.map +1 -1
  43. package/payload/platform/services/claude-session-manager/dist/system-prompt.js +10 -2
  44. package/payload/platform/services/claude-session-manager/dist/system-prompt.js.map +1 -1
  45. package/payload/server/{chunk-AJC3SQSF.js → chunk-4QCYFTAI.js} +198 -8
  46. package/payload/server/{manager-PLRHVALC.js → manager-ZNHQQCED.js} +1 -1
  47. package/payload/server/public/activity.html +5 -5
  48. package/payload/server/public/agents.html +4 -4
  49. package/payload/server/public/assets/AdminLoginScreens-DxjuTFjL.js +1 -0
  50. package/payload/server/public/assets/AdminLoginScreens-DxjuTFjL.js.br +0 -0
  51. package/payload/server/public/assets/AdminLoginScreens-DxjuTFjL.js.gz +0 -0
  52. package/payload/server/public/assets/AdminShell-B6H3J5C2.js +2 -0
  53. package/payload/server/public/assets/AdminShell-B6H3J5C2.js.br +0 -0
  54. package/payload/server/public/assets/AdminShell-B6H3J5C2.js.gz +0 -0
  55. package/payload/server/public/assets/CdpScreencastSurface-BRSv89v-.js +1 -0
  56. package/payload/server/public/assets/CdpScreencastSurface-BRSv89v-.js.br +0 -0
  57. package/payload/server/public/assets/CdpScreencastSurface-BRSv89v-.js.gz +0 -0
  58. package/payload/server/public/assets/{activity-0IcMRF5a.js → activity-DKeRUjQ9.js} +1 -1
  59. package/payload/server/public/assets/activity-DKeRUjQ9.js.br +0 -0
  60. package/payload/server/public/assets/activity-DKeRUjQ9.js.gz +0 -0
  61. package/payload/server/public/assets/admin-BxRWjeyZ.js +1 -0
  62. package/payload/server/public/assets/admin-BxRWjeyZ.js.br +0 -0
  63. package/payload/server/public/assets/admin-BxRWjeyZ.js.gz +0 -0
  64. package/payload/server/public/assets/{agents-xjw-fJjo.js → agents-CrR_OMe8.js} +1 -1
  65. package/payload/server/public/assets/agents-CrR_OMe8.js.br +0 -0
  66. package/payload/server/public/assets/agents-CrR_OMe8.js.gz +0 -0
  67. package/payload/server/public/assets/{browser-ByWKTnUQ.js → browser-sfwnP1kH.js} +1 -1
  68. package/payload/server/public/assets/browser-sfwnP1kH.js.br +0 -0
  69. package/payload/server/public/assets/browser-sfwnP1kH.js.gz +0 -0
  70. package/payload/server/public/assets/{calendar-DX2tE1B2.js → calendar-ByLH0Q5p.js} +1 -1
  71. package/payload/server/public/assets/calendar-ByLH0Q5p.js.br +0 -0
  72. package/payload/server/public/assets/calendar-ByLH0Q5p.js.gz +0 -0
  73. package/payload/server/public/assets/chat-C3xYZlGo.js +1 -0
  74. package/payload/server/public/assets/chat-C3xYZlGo.js.br +2 -0
  75. package/payload/server/public/assets/chat-C3xYZlGo.js.gz +0 -0
  76. package/payload/server/public/assets/chevron-left-C0HG8MBj.js +1 -0
  77. package/payload/server/public/assets/chevron-right-B49Xpptm.js +1 -0
  78. package/payload/server/public/assets/chevron-right-B49Xpptm.js.br +0 -0
  79. package/payload/server/public/assets/clock-CJq9vvt8.js +1 -0
  80. package/payload/server/public/assets/clock-CJq9vvt8.js.br +0 -0
  81. package/payload/server/public/assets/clock-CJq9vvt8.js.gz +0 -0
  82. package/payload/server/public/assets/data-DmeTKd-P.js +1 -0
  83. package/payload/server/public/assets/data-DmeTKd-P.js.br +0 -0
  84. package/payload/server/public/assets/data-DmeTKd-P.js.gz +0 -0
  85. package/payload/server/public/assets/{file-download-ChX5qAB2.js → file-download-BWe9Muoh.js} +1 -1
  86. package/payload/server/public/assets/file-download-BWe9Muoh.js.br +0 -0
  87. package/payload/server/public/assets/file-download-BWe9Muoh.js.gz +0 -0
  88. package/payload/server/public/assets/{file-text-DziWy8hF.js → file-text-5osg-EVb.js} +1 -1
  89. package/payload/server/public/assets/file-text-5osg-EVb.js.br +0 -0
  90. package/payload/server/public/assets/file-text-5osg-EVb.js.gz +0 -0
  91. package/payload/server/public/assets/{graph-Ci8RmSp3.js → graph-CAUo1OTY.js} +2 -2
  92. package/payload/server/public/assets/graph-CAUo1OTY.js.br +0 -0
  93. package/payload/server/public/assets/graph-CAUo1OTY.js.gz +0 -0
  94. package/payload/server/public/assets/{graph-labels-JkRVzaVL.js → graph-labels-TJ-3ljQo.js} +1 -1
  95. package/payload/server/public/assets/graph-labels-TJ-3ljQo.js.br +0 -0
  96. package/payload/server/public/assets/graph-labels-TJ-3ljQo.js.gz +0 -0
  97. package/payload/server/public/assets/{maximize-2-DnINkTp0.js → maximize-2-S9W3q1O4.js} +1 -1
  98. package/payload/server/public/assets/maximize-2-S9W3q1O4.js.br +0 -0
  99. package/payload/server/public/assets/maximize-2-S9W3q1O4.js.gz +0 -0
  100. package/payload/server/public/assets/operator-CzOJfank.js +1 -0
  101. package/payload/server/public/assets/operator-CzOJfank.js.br +0 -0
  102. package/payload/server/public/assets/operator-CzOJfank.js.gz +0 -0
  103. package/payload/server/public/assets/page-BUFW-PWF.js +32 -0
  104. package/payload/server/public/assets/page-BUFW-PWF.js.br +0 -0
  105. package/payload/server/public/assets/page-BUFW-PWF.js.gz +0 -0
  106. package/payload/server/public/assets/page-jT4queFM.js +1 -0
  107. package/payload/server/public/assets/page-jT4queFM.js.br +0 -0
  108. package/payload/server/public/assets/page-jT4queFM.js.gz +0 -0
  109. package/payload/server/public/assets/public-Cx2ddU9a.js +1 -0
  110. package/payload/server/public/assets/public-Cx2ddU9a.js.br +0 -0
  111. package/payload/server/public/assets/public-Cx2ddU9a.js.gz +0 -0
  112. package/payload/server/public/assets/{rotate-ccw-CfaIgRAI.js → rotate-ccw-C2qSSBFA.js} +1 -1
  113. package/payload/server/public/assets/rotate-ccw-C2qSSBFA.js.br +0 -0
  114. package/payload/server/public/assets/rotate-ccw-C2qSSBFA.js.gz +0 -0
  115. package/payload/server/public/assets/{routines-BIlcD8sn.js → routines-80uEwjng.js} +1 -1
  116. package/payload/server/public/assets/routines-80uEwjng.js.br +0 -0
  117. package/payload/server/public/assets/routines-80uEwjng.js.gz +0 -0
  118. package/payload/server/public/assets/{skills-DGID2WqF.js → skills-CmsYXVd3.js} +1 -1
  119. package/payload/server/public/assets/skills-CmsYXVd3.js.br +0 -0
  120. package/payload/server/public/assets/skills-CmsYXVd3.js.gz +0 -0
  121. package/payload/server/public/assets/tasks-CFfvn-KE.js +3 -0
  122. package/payload/server/public/assets/tasks-CFfvn-KE.js.br +0 -0
  123. package/payload/server/public/assets/tasks-CFfvn-KE.js.gz +0 -0
  124. package/payload/server/public/assets/{time-entry-format-DNl35lg9.js → time-entry-format-BD99oR05.js} +1 -1
  125. package/payload/server/public/assets/time-entry-format-BD99oR05.js.br +0 -0
  126. package/payload/server/public/assets/time-entry-format-BD99oR05.js.gz +0 -0
  127. package/payload/server/public/assets/{triangle-alert-DI_VASJO.js → triangle-alert-CuRAK3jk.js} +1 -1
  128. package/payload/server/public/assets/triangle-alert-CuRAK3jk.js.br +0 -0
  129. package/payload/server/public/assets/triangle-alert-CuRAK3jk.js.gz +0 -0
  130. package/payload/server/public/assets/{useCopyFeedback-Bu0ZQZQM.js → useCopyFeedback-BGzzIsSD.js} +1 -1
  131. package/payload/server/public/assets/useCopyFeedback-BGzzIsSD.js.br +0 -0
  132. package/payload/server/public/assets/useCopyFeedback-BGzzIsSD.js.gz +0 -0
  133. package/payload/server/public/assets/{useSubAccountSwitcher-CZBZ3iV8.css → useSubAccountSwitcher-BDQ8Wsdt.css} +1 -1
  134. package/payload/server/public/assets/useSubAccountSwitcher-BDQ8Wsdt.css.br +0 -0
  135. package/payload/server/public/assets/{useSubAccountSwitcher-CZBZ3iV8.css.gz → useSubAccountSwitcher-BDQ8Wsdt.css.gz} +0 -0
  136. package/payload/server/public/assets/useSubAccountSwitcher-D1VtIEp2.js +14 -0
  137. package/payload/server/public/assets/useSubAccountSwitcher-D1VtIEp2.js.br +0 -0
  138. package/payload/server/public/assets/useSubAccountSwitcher-D1VtIEp2.js.gz +0 -0
  139. package/payload/server/public/assets/useVoiceRecorder-fpwWw2VW.js +2 -0
  140. package/payload/server/public/assets/useVoiceRecorder-fpwWw2VW.js.br +0 -0
  141. package/payload/server/public/assets/useVoiceRecorder-fpwWw2VW.js.gz +0 -0
  142. package/payload/server/public/assets/{wrench-p4gW_ImW.js → wrench-DxSsCrue.js} +1 -1
  143. package/payload/server/public/assets/wrench-DxSsCrue.js.br +2 -0
  144. package/payload/server/public/assets/wrench-DxSsCrue.js.gz +0 -0
  145. package/payload/server/public/browser.html +5 -5
  146. package/payload/server/public/calendar.html +7 -7
  147. package/payload/server/public/chat.html +13 -13
  148. package/payload/server/public/data.html +12 -12
  149. package/payload/server/public/graph.html +9 -9
  150. package/payload/server/public/index.html +16 -16
  151. package/payload/server/public/operator.html +15 -15
  152. package/payload/server/public/public.html +13 -13
  153. package/payload/server/public/routines.html +7 -7
  154. package/payload/server/public/skills.html +5 -5
  155. package/payload/server/public/tasks.html +6 -6
  156. package/payload/server/server.js +460 -28
  157. package/payload/server/public/assets/AdminLoginScreens-CGRty7xT.js +0 -1
  158. package/payload/server/public/assets/AdminLoginScreens-CGRty7xT.js.br +0 -0
  159. package/payload/server/public/assets/AdminLoginScreens-CGRty7xT.js.gz +0 -0
  160. package/payload/server/public/assets/AdminShell-BQy9Ob22.js +0 -2
  161. package/payload/server/public/assets/AdminShell-BQy9Ob22.js.br +0 -0
  162. package/payload/server/public/assets/AdminShell-BQy9Ob22.js.gz +0 -0
  163. package/payload/server/public/assets/CdpScreencastSurface-BrDZji8F.js +0 -1
  164. package/payload/server/public/assets/CdpScreencastSurface-BrDZji8F.js.br +0 -0
  165. package/payload/server/public/assets/CdpScreencastSurface-BrDZji8F.js.gz +0 -0
  166. package/payload/server/public/assets/activity-0IcMRF5a.js.br +0 -0
  167. package/payload/server/public/assets/activity-0IcMRF5a.js.gz +0 -0
  168. package/payload/server/public/assets/admin-CKy-bmrs.js +0 -1
  169. package/payload/server/public/assets/admin-CKy-bmrs.js.br +0 -0
  170. package/payload/server/public/assets/admin-CKy-bmrs.js.gz +0 -0
  171. package/payload/server/public/assets/agents-xjw-fJjo.js.br +0 -0
  172. package/payload/server/public/assets/agents-xjw-fJjo.js.gz +0 -0
  173. package/payload/server/public/assets/browser-ByWKTnUQ.js.br +0 -0
  174. package/payload/server/public/assets/browser-ByWKTnUQ.js.gz +0 -0
  175. package/payload/server/public/assets/calendar-DX2tE1B2.js.br +0 -0
  176. package/payload/server/public/assets/calendar-DX2tE1B2.js.gz +0 -0
  177. package/payload/server/public/assets/chat-DkNDthRg.js +0 -1
  178. package/payload/server/public/assets/chat-DkNDthRg.js.br +0 -0
  179. package/payload/server/public/assets/chat-DkNDthRg.js.gz +0 -0
  180. package/payload/server/public/assets/chevron-left-CPwk14nY.js +0 -1
  181. package/payload/server/public/assets/chevron-right-Bz6INVTF.js +0 -1
  182. package/payload/server/public/assets/chevron-right-Bz6INVTF.js.br +0 -0
  183. package/payload/server/public/assets/clock-3YLNejcB.js +0 -1
  184. package/payload/server/public/assets/clock-3YLNejcB.js.br +0 -0
  185. package/payload/server/public/assets/clock-3YLNejcB.js.gz +0 -0
  186. package/payload/server/public/assets/data-DiDeaOUN.js +0 -1
  187. package/payload/server/public/assets/data-DiDeaOUN.js.br +0 -0
  188. package/payload/server/public/assets/data-DiDeaOUN.js.gz +0 -0
  189. package/payload/server/public/assets/file-download-ChX5qAB2.js.br +0 -0
  190. package/payload/server/public/assets/file-download-ChX5qAB2.js.gz +0 -0
  191. package/payload/server/public/assets/file-text-DziWy8hF.js.br +0 -0
  192. package/payload/server/public/assets/file-text-DziWy8hF.js.gz +0 -0
  193. package/payload/server/public/assets/graph-Ci8RmSp3.js.br +0 -0
  194. package/payload/server/public/assets/graph-Ci8RmSp3.js.gz +0 -0
  195. package/payload/server/public/assets/graph-labels-JkRVzaVL.js.br +0 -0
  196. package/payload/server/public/assets/graph-labels-JkRVzaVL.js.gz +0 -0
  197. package/payload/server/public/assets/maximize-2-DnINkTp0.js.br +0 -0
  198. package/payload/server/public/assets/maximize-2-DnINkTp0.js.gz +0 -0
  199. package/payload/server/public/assets/operator-CFOJBXCH.js +0 -1
  200. package/payload/server/public/assets/operator-CFOJBXCH.js.br +0 -0
  201. package/payload/server/public/assets/operator-CFOJBXCH.js.gz +0 -0
  202. package/payload/server/public/assets/page-BGv8bLm5.js +0 -32
  203. package/payload/server/public/assets/page-BGv8bLm5.js.br +0 -0
  204. package/payload/server/public/assets/page-BGv8bLm5.js.gz +0 -0
  205. package/payload/server/public/assets/page-DXTCBZRa.js +0 -1
  206. package/payload/server/public/assets/page-DXTCBZRa.js.br +0 -0
  207. package/payload/server/public/assets/page-DXTCBZRa.js.gz +0 -0
  208. package/payload/server/public/assets/public-yBY2wTJN.js +0 -1
  209. package/payload/server/public/assets/public-yBY2wTJN.js.br +0 -0
  210. package/payload/server/public/assets/public-yBY2wTJN.js.gz +0 -0
  211. package/payload/server/public/assets/rotate-ccw-CfaIgRAI.js.br +0 -0
  212. package/payload/server/public/assets/rotate-ccw-CfaIgRAI.js.gz +0 -0
  213. package/payload/server/public/assets/routines-BIlcD8sn.js.br +0 -0
  214. package/payload/server/public/assets/routines-BIlcD8sn.js.gz +0 -0
  215. package/payload/server/public/assets/skills-DGID2WqF.js.br +0 -0
  216. package/payload/server/public/assets/skills-DGID2WqF.js.gz +0 -0
  217. package/payload/server/public/assets/tasks-BukjwR7A.js +0 -3
  218. package/payload/server/public/assets/tasks-BukjwR7A.js.br +0 -0
  219. package/payload/server/public/assets/tasks-BukjwR7A.js.gz +0 -0
  220. package/payload/server/public/assets/time-entry-format-DNl35lg9.js.br +0 -0
  221. package/payload/server/public/assets/time-entry-format-DNl35lg9.js.gz +0 -0
  222. package/payload/server/public/assets/triangle-alert-DI_VASJO.js.br +0 -0
  223. package/payload/server/public/assets/triangle-alert-DI_VASJO.js.gz +0 -0
  224. package/payload/server/public/assets/useCopyFeedback-Bu0ZQZQM.js.br +0 -0
  225. package/payload/server/public/assets/useCopyFeedback-Bu0ZQZQM.js.gz +0 -0
  226. package/payload/server/public/assets/useSubAccountSwitcher-B6Ns2Z43.js +0 -14
  227. package/payload/server/public/assets/useSubAccountSwitcher-B6Ns2Z43.js.br +0 -0
  228. package/payload/server/public/assets/useSubAccountSwitcher-B6Ns2Z43.js.gz +0 -0
  229. package/payload/server/public/assets/useSubAccountSwitcher-CZBZ3iV8.css.br +0 -0
  230. package/payload/server/public/assets/useVoiceRecorder-CbVwXEjY.js +0 -2
  231. package/payload/server/public/assets/useVoiceRecorder-CbVwXEjY.js.br +0 -0
  232. package/payload/server/public/assets/useVoiceRecorder-CbVwXEjY.js.gz +0 -0
  233. package/payload/server/public/assets/wrench-p4gW_ImW.js.br +0 -0
  234. package/payload/server/public/assets/wrench-p4gW_ImW.js.gz +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"specialist-roster.js","sourceRoot":"","sources":["../src/specialist-roster.ts"],"names":[],"mappings":"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"}
@@ -128,6 +128,11 @@ export type AppendBlockResult = {
128
128
  reason: 'host-unresolved' | 'identity-unresolved' | 'soul-empty' | 'knowledge-missing' | 'knowledge-empty';
129
129
  detail: string;
130
130
  };
131
+ export declare const SPECIALIST_DOMAINS_ROUTING_CLAUSE = "Specialist subagents own these domains. Match user intent to a tool below and delegate to the specialist. Fall back to memory-search only when no tool here matches. ToolSearch is a last-resort escape hatch for tools not listed in any domain \u2014 not a routing mechanism; prefer admitting ignorance over discovering.";
132
+ export declare function renderSpecialistDomains(domains: readonly SpecialistDomain[] | undefined): {
133
+ body: string | null;
134
+ bytes: number;
135
+ };
131
136
  export declare function composeAppendSystemPrompt(host: HostContext, sources: IdentitySources, extras?: ComposeExtras): AppendBlockResult;
132
137
  /** Task 1214 — the admin voice contract slice: the `## How you sound` heading
133
138
  * through end of file (the complement of `stripVoiceSection`). Returns null
@@ -1 +1 @@
1
- {"version":3,"file":"system-prompt.d.ts","sourceRoot":"","sources":["../src/system-prompt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"system-prompt.d.ts","sourceRoot":"","sources":["../src/system-prompt.ts"],"names":[],"mappings":"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"}
@@ -149,10 +149,18 @@ function renderPluginManifest(plugins) {
149
149
  const inner = parts.join('\n').replace(/\n+$/, '');
150
150
  return { body: inner, bytes: Buffer.byteLength(inner, 'utf8') };
151
151
  }
152
- function renderSpecialistDomains(domains) {
152
+ // Task 2237 — cross-process lockstep with `ui/app/lib/specialist-domains-clause.ts`.
153
+ // The manager cannot import from `ui/app`, so the string is duplicated here and a
154
+ // test reads the UI source to keep the duplicate honest. Emitted inside the
155
+ // renderer rather than at either call site, so `/public-spawn` and `/rc-spawn`
156
+ // cannot drift on whether the roster carries an instruction to delegate. Until
157
+ // now the clause was an unimported constant and no composer emitted it at all,
158
+ // so every roster shipped as a bare list with nothing telling the agent to use it.
159
+ export const SPECIALIST_DOMAINS_ROUTING_CLAUSE = "Specialist subagents own these domains. Match user intent to a tool below and delegate to the specialist. Fall back to memory-search only when no tool here matches. ToolSearch is a last-resort escape hatch for tools not listed in any domain — not a routing mechanism; prefer admitting ignorance over discovering.";
160
+ export function renderSpecialistDomains(domains) {
153
161
  if (!domains || domains.length === 0)
154
162
  return { body: null, bytes: 0 };
155
- const parts = [];
163
+ const parts = [SPECIALIST_DOMAINS_ROUTING_CLAUSE, ''];
156
164
  for (const d of domains) {
157
165
  parts.push(`## ${d.name}`);
158
166
  parts.push(d.description);
@@ -1 +1 @@
1
- {"version":3,"file":"system-prompt.js","sourceRoot":"","sources":["../src/system-prompt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"system-prompt.js","sourceRoot":"","sources":["../src/system-prompt.ts"],"names":[],"mappings":"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"}
@@ -51,6 +51,24 @@ var WhatsAppConfigSchema = z.object({
51
51
  z.object({ managesAccount: z.string(), mode: z.enum(["active", "passive"]).optional() })
52
52
  ])
53
53
  ).optional().describe("Account-manager bindings: E.164 phone \u2192 sub-account. The value is a bare sub-account UUID (mode 'active', the default: a full admin session) or { managesAccount, mode } where mode 'passive' selects a constrained requirement-intake spawn (only work-create, no reply). A bare string and an object without mode both resolve to 'active'. Managed via add-account-manager / remove-account-manager. A phone here must not also be in adminPhones. Read only from the account whose account.json the manager loads its config from (the house); add-account-manager is refused on any other account, and a map left there is inert and purged at boot."),
54
+ registeredParties: z.record(
55
+ z.string(),
56
+ // Task 2234 — deliberately NO regex on `party` here, even though the
57
+ // write path enforces one. `parseWhatsAppConfigTolerant` recovers only
58
+ // from unrecognized_keys; any other issue fails the WHOLE parse, and the
59
+ // manager then loads `whatsAppConfig = {}` (manager.ts). That empties
60
+ // adminPhones and accountManagers and defaults dmPolicy to "disabled",
61
+ // so a single hand-edited label would take down routing for the entire
62
+ // install. A content constraint here converts one bad row into a
63
+ // total outage.
64
+ //
65
+ // The bound is enforced where it fails closed for that row alone:
66
+ // `setRegisteredParty` refuses the write, `registeredPartyFor` refuses to
67
+ // match a malformed row (so it can never reach a log line or the spawn
68
+ // env), and the /rc-spawn body guard re-checks. `.strict()` stays — an
69
+ // unknown key inside the entry IS recoverable by the tolerant parser.
70
+ z.object({ account: z.string(), party: z.string() }).strict()
71
+ ).optional().describe("Registered non-operator counterparties: E.164 phone \u2192 { account, party }. The sender is admitted to the PUBLIC agent on that account's own number, carrying the label; they are never granted admin, which is what separates this from accountManagers. Reached on the house number they take the normal DM policy instead. 'party' is an operator-chosen label (e.g. 'driver'), lowercase letters, digits and hyphens, 1-64 characters; the platform carries it and never interprets it. Managed via add-registered-party / remove-registered-party. A phone here must not also be in adminPhones or accountManagers. Read only from the account whose account.json the manager loads its config from (the house); add-registered-party is refused on any other account, and a map left there is inert and purged at boot."),
54
72
  allowFrom: z.array(z.string()).optional().describe("Phone numbers allowed to message the public agent when DM policy is 'allowlist'. Add '*' for open access. Does not affect admin routing \u2014 use adminPhones for that."),
55
73
  sendReadReceipts: z.boolean().optional().default(true).describe("Whether to send read receipts (blue ticks) when messages are received. Disabling may feel less responsive but preserves privacy."),
56
74
  mediaMaxMb: z.number().int().positive().optional().default(50).describe("Maximum file size in MB for media the agent will download and process."),
@@ -406,6 +424,7 @@ function appendNotifyEligible(entry2) {
406
424
  allowed: entry2.allowed,
407
425
  reason: entry2.reason,
408
426
  passive: entry2.passive,
427
+ party: entry2.party,
409
428
  persistAccount: entry2.persistAccount,
410
429
  ts: (/* @__PURE__ */ new Date()).toISOString()
411
430
  };
@@ -1362,6 +1381,95 @@ function mediaFallbackBody(extracted) {
1362
1381
  return extracted.mediaType ? `[${extracted.mediaType}]` : "";
1363
1382
  }
1364
1383
 
1384
+ // app/lib/whatsapp/inbound/live-location-census.ts
1385
+ import {
1386
+ extractMessageContent as extractMessageContent2,
1387
+ normalizeMessageContent as normalizeMessageContent2
1388
+ } from "@whiskeysockets/baileys";
1389
+ var WIRE_TAG2 = "[whatsapp:wire]";
1390
+ function formatLiveLocationPayloadLine(msg) {
1391
+ const content = msg.message ? normalizeMessageContent2(msg.message) : null;
1392
+ const inner = content ? extractMessageContent2(content) : null;
1393
+ const live = inner?.liveLocationMessage;
1394
+ if (!live) return null;
1395
+ const num = (v) => v === null || v === void 0 ? "none" : String(v);
1396
+ const captionBytes = live.caption ? Buffer.byteLength(live.caption, "utf8") : 0;
1397
+ const thumbBytes = live.jpegThumbnail ? live.jpegThumbnail.length : 0;
1398
+ return `${WIRE_TAG2} op=live-location-payload msgKeyId=${msg.key?.id ?? "none"} seq=${num(live.sequenceNumber)} timeOffsetS=${num(live.timeOffset)} accuracyM=${num(live.accuracyInMeters)} speedMps=${num(live.speedInMps)} headingDeg=${num(live.degreesClockwiseFromMagneticNorth)} captionBytes=${captionBytes} thumbBytes=${thumbBytes} envDurationS=${num(msg.duration)} envFinal=${msg.finalLiveLocation ? "yes" : "no"}`;
1399
+ }
1400
+ function liveLocationTargetJid(msg) {
1401
+ if (msg.key?.fromMe) return null;
1402
+ const remoteJid = msg.key?.remoteJid;
1403
+ if (!remoteJid) return null;
1404
+ return remoteJid.endsWith("@g.us") ? msg.key?.participant ?? remoteJid : remoteJid;
1405
+ }
1406
+ function formatMessageUpdateLine(u) {
1407
+ const names = u.update ? Object.keys(u.update) : [];
1408
+ return `${WIRE_TAG2} op=message-update msgKeyId=${u.key?.id ?? "none"} fields=${names.length ? names.join(",") : "none"}`;
1409
+ }
1410
+
1411
+ // app/lib/whatsapp/live-location.ts
1412
+ var WIRE_TAG3 = "[whatsapp:wire]";
1413
+ var REARM_MS = 3e4;
1414
+ var SILENCE_MS = 9e4;
1415
+ var subscriptions = /* @__PURE__ */ new Map();
1416
+ var keyOf = (account, jid) => `${account}:${jid}`;
1417
+ function sendEnrolment(sock, account, jid) {
1418
+ const node = {
1419
+ tag: "iq",
1420
+ attrs: { xmlns: "location", type: "get", to: "s.whatsapp.net", target: jid },
1421
+ content: [{ tag: "subscribe", attrs: { participants: "true" } }]
1422
+ };
1423
+ Promise.resolve(sock.query(node)).catch((err) => {
1424
+ console.error(
1425
+ `${WIRE_TAG3} op=live-location-subscribe account=${account} jid=${jid} outcome=fail reason=${(err instanceof Error ? err.message : String(err)).slice(0, 120)}`
1426
+ );
1427
+ });
1428
+ }
1429
+ function subscribeLiveLocation(sock, account, jid) {
1430
+ const key = keyOf(account, jid);
1431
+ const existing = subscriptions.get(key);
1432
+ if (existing) {
1433
+ existing.lastSeenAt = Date.now();
1434
+ return;
1435
+ }
1436
+ const timer = setInterval(() => {
1437
+ const sub = subscriptions.get(key);
1438
+ if (!sub) return;
1439
+ if (Date.now() - sub.lastSeenAt >= SILENCE_MS) {
1440
+ console.error(
1441
+ `${WIRE_TAG3} op=live-location-subscribe account=${account} jid=${jid} outcome=stopped reason=silence`
1442
+ );
1443
+ stopLiveLocation(account, jid);
1444
+ return;
1445
+ }
1446
+ sendEnrolment(sock, account, jid);
1447
+ }, REARM_MS);
1448
+ subscriptions.set(key, { timer, lastSeenAt: Date.now(), account });
1449
+ console.error(
1450
+ `${WIRE_TAG3} op=live-location-subscribe account=${account} jid=${jid} outcome=armed rearmMs=${REARM_MS}`
1451
+ );
1452
+ sendEnrolment(sock, account, jid);
1453
+ }
1454
+ function noteMessageFrom(account, jid) {
1455
+ const sub = subscriptions.get(keyOf(account, jid));
1456
+ if (sub) sub.lastSeenAt = Date.now();
1457
+ }
1458
+ function stopLiveLocation(account, jid) {
1459
+ const key = keyOf(account, jid);
1460
+ const sub = subscriptions.get(key);
1461
+ if (!sub) return;
1462
+ clearInterval(sub.timer);
1463
+ subscriptions.delete(key);
1464
+ }
1465
+ function stopLiveLocationForAccount(account) {
1466
+ for (const [key, sub] of [...subscriptions]) {
1467
+ if (sub.account !== account) continue;
1468
+ clearInterval(sub.timer);
1469
+ subscriptions.delete(key);
1470
+ }
1471
+ }
1472
+
1365
1473
  // app/lib/whatsapp/inbound/reaction.ts
1366
1474
  function toMillis(v) {
1367
1475
  if (v == null) return null;
@@ -1635,6 +1743,17 @@ function managerPhonesForAccount(accountManagers, subAccountId) {
1635
1743
  return phones;
1636
1744
  }
1637
1745
 
1746
+ // app/lib/whatsapp/registered-party.ts
1747
+ var PARTY_LABEL_PATTERN = /^[a-z0-9-]{1,64}$/;
1748
+ function registeredPartyFor(registeredParties, phone) {
1749
+ for (const [partyPhone, entry2] of Object.entries(registeredParties)) {
1750
+ if (!entry2 || !entry2.account || typeof entry2.party !== "string") continue;
1751
+ if (!PARTY_LABEL_PATTERN.test(entry2.party)) continue;
1752
+ if (phonesMatch(partyPhone, phone)) return { account: entry2.account, party: entry2.party };
1753
+ }
1754
+ return null;
1755
+ }
1756
+
1638
1757
  // app/lib/whatsapp/inbound/access-control.ts
1639
1758
  function resolveAccountConfig(config, accountConfig) {
1640
1759
  return {
@@ -1645,6 +1764,10 @@ function resolveAccountConfig(config, accountConfig) {
1645
1764
  // Account-manager bindings are a house-level routing table only — never a
1646
1765
  // per-account override, so this reads the top-level map unconditionally.
1647
1766
  accountManagers: config.accountManagers ?? {},
1767
+ // Task 2234 — a house-level routing table exactly as accountManagers is, so
1768
+ // it reads the top level unconditionally and reports no source: there is no
1769
+ // inheritance to describe.
1770
+ registeredParties: config.registeredParties ?? {},
1648
1771
  sources: {
1649
1772
  dmPolicy: accountConfig?.dmPolicy !== void 0 ? "account" : "house",
1650
1773
  adminPhones: accountConfig?.adminPhones !== void 0 ? "account" : "house",
@@ -1692,6 +1815,19 @@ function checkDmAccess(params) {
1692
1815
  if (managed && houseAccountId !== void 0 && accountId === houseAccountId) {
1693
1816
  return managerAdmit(managed);
1694
1817
  }
1818
+ const party = registeredPartyFor(cfg.registeredParties, senderPhone);
1819
+ if (party && accountId !== void 0 && party.account === accountId) {
1820
+ if (params.isValidAccount && !params.isValidAccount(party.account)) {
1821
+ return { allowed: false, reason: "registered-party-unresolved", agentType: "public" };
1822
+ }
1823
+ return {
1824
+ allowed: true,
1825
+ reason: "registered-party",
1826
+ agentType: "public",
1827
+ effectiveAccountId: accountId,
1828
+ party: party.party
1829
+ };
1830
+ }
1695
1831
  switch (cfg.dmPolicy) {
1696
1832
  case "open":
1697
1833
  return {
@@ -1750,7 +1886,22 @@ async function resolveDmAccess(params) {
1750
1886
  if (!e164 || !params.accountId) return base;
1751
1887
  try {
1752
1888
  const personId = await params.resolvePersonByPhone(params.accountId, e164);
1753
- return { ...base, personId };
1889
+ if (personId) return { ...base, personId };
1890
+ if (base.reason !== "registered-party" || !params.ensurePartyPerson) return { ...base, personId };
1891
+ let created = null;
1892
+ try {
1893
+ created = await params.ensurePartyPerson(params.accountId, e164);
1894
+ } catch (err) {
1895
+ console.error(
1896
+ `[whatsapp:route] op=registered-party-person-unresolved senderId=${e164} account=${params.accountId} party=${base.party ?? ""} err=${err instanceof Error ? err.message : String(err)}`
1897
+ );
1898
+ return { ...base, personId: null };
1899
+ }
1900
+ if (created) return { ...base, personId: created };
1901
+ console.error(
1902
+ `[whatsapp:route] op=registered-party-person-unresolved senderId=${e164} account=${params.accountId} party=${base.party ?? ""}`
1903
+ );
1904
+ return { ...base, personId: null };
1754
1905
  } catch (err) {
1755
1906
  console.error(
1756
1907
  `[whatsapp:route] op=person-resolve-error senderId=${e164} err=${err instanceof Error ? err.message : String(err)}`
@@ -2031,13 +2182,17 @@ async function findGrantByContact(contactValue, agentSlug, accountId) {
2031
2182
  }
2032
2183
  }
2033
2184
  async function resolvePersonByPhone(accountId, phone) {
2185
+ const bare = normalizeE164(phone);
2186
+ if (!bare) return null;
2187
+ const plus = `+${bare}`;
2034
2188
  const session = getSession2();
2035
2189
  try {
2036
2190
  const result = await session.run(
2037
- `MATCH (p:Person {accountId: $accountId, phone: $phone})
2191
+ `MATCH (p:Person {accountId: $accountId})
2192
+ WHERE p.phone IN [$bare, $plus] OR p.telephone IN [$bare, $plus]
2038
2193
  RETURN elementId(p) AS personId
2039
2194
  LIMIT 1`,
2040
- { accountId, phone }
2195
+ { accountId, bare, plus }
2041
2196
  );
2042
2197
  if (result.records.length === 0) return null;
2043
2198
  return result.records[0].get("personId");
@@ -2927,7 +3082,7 @@ import { join as join6 } from "path";
2927
3082
  import {
2928
3083
  downloadMediaMessage,
2929
3084
  downloadContentFromMessage,
2930
- normalizeMessageContent as normalizeMessageContent2
3085
+ normalizeMessageContent as normalizeMessageContent3
2931
3086
  } from "@whiskeysockets/baileys";
2932
3087
 
2933
3088
  // app/lib/attachments.ts
@@ -3467,7 +3622,7 @@ async function streamToBuffer(stream) {
3467
3622
  async function downloadInboundMediaBuffer(msg, sock, opts) {
3468
3623
  const rawMessage = msg.message;
3469
3624
  if (!rawMessage) return void 0;
3470
- const content = normalizeMessageContent2(rawMessage);
3625
+ const content = normalizeMessageContent3(rawMessage);
3471
3626
  if (!content) return void 0;
3472
3627
  const inner = content;
3473
3628
  const mimetype = inner.imageMessage?.mimetype ?? inner.videoMessage?.mimetype ?? inner.audioMessage?.mimetype ?? inner.documentMessage?.mimetype ?? inner.stickerMessage?.mimetype ?? void 0;
@@ -4511,6 +4666,7 @@ function watchForDisconnect(conn) {
4511
4666
  if (!conn.sock) return;
4512
4667
  conn.sock.ev.on("connection.update", (update) => {
4513
4668
  if (update.connection === "close") {
4669
+ stopLiveLocationForAccount(conn.accountId);
4514
4670
  if (connections.get(conn.accountId) !== conn) return;
4515
4671
  console.error(`${TAG17} socket disconnected for account=${conn.accountId}`);
4516
4672
  conn.connected = false;
@@ -4659,6 +4815,13 @@ function monitorInbound(conn) {
4659
4815
  let receiptDeferredToWorker = false;
4660
4816
  let dmAccess = null;
4661
4817
  const extracted = extractMessage(msg);
4818
+ const liveLocationLine = formatLiveLocationPayloadLine(msg);
4819
+ if (liveLocationLine) console.error(liveLocationLine);
4820
+ const liveTargetJid = liveLocationTargetJid(msg);
4821
+ if (liveTargetJid) {
4822
+ noteMessageFrom(conn.accountId, liveTargetJid);
4823
+ if (liveLocationLine) subscribeLiveLocation(sock, conn.accountId, liveTargetJid);
4824
+ }
4662
4825
  const mediaServable = !!(extracted.mediaType && extracted.mimetype);
4663
4826
  if (!extracted.text && !mediaServable && msg.key.id) {
4664
4827
  markDeclined({
@@ -4713,12 +4876,13 @@ function monitorInbound(conn) {
4713
4876
  allowed: dmAccess?.allowed === true,
4714
4877
  reason: dmAccess?.reason ?? "group",
4715
4878
  passive: dmAccess?.passive === true,
4879
+ party: dmAccess?.party,
4716
4880
  persistAccount: persistAccountId
4717
4881
  });
4718
4882
  }
4719
4883
  if (notifyDecision.emit && msg.key.id) {
4720
4884
  console.error(
4721
- `[wa-notify] op=eligible msgId=${msg.key.id} account=${persistAccountId} senderType=${notifyDecision.senderType} reason=${dmAccess?.reason ?? "none"} passive=${dmAccess?.passive === true}`
4885
+ `[wa-notify] op=eligible msgId=${msg.key.id} account=${persistAccountId} senderType=${notifyDecision.senderType} reason=${dmAccess?.reason ?? "none"} passive=${dmAccess?.passive === true}` + (dmAccess?.party ? ` party=${dmAccess.party}` : "")
4722
4886
  );
4723
4887
  if (onNotify) {
4724
4888
  try {
@@ -4985,6 +5149,9 @@ function monitorInbound(conn) {
4985
5149
  }
4986
5150
  }
4987
5151
  });
5152
+ sock.ev.on("messages.update", (updates) => {
5153
+ for (const u of updates ?? []) console.error(formatMessageUpdateLine(u));
5154
+ });
4988
5155
  console.error(`[whatsapp-reaction] op=subscribed account=${conn.platformAccountId}`);
4989
5156
  sock.ev.on("messages.reaction", async (reactions) => {
4990
5157
  for (const entry2 of reactions) {
@@ -5117,16 +5284,34 @@ async function handleInboundMessage(conn, msg) {
5117
5284
  // Task 2227 — the account of the number messaged decides the arm.
5118
5285
  houseAccountId: conn.houseAccountId,
5119
5286
  isValidAccount: (id) => isValidAccountId(id),
5120
- resolvePersonByPhone
5287
+ resolvePersonByPhone,
5288
+ // Task 2234 — the resolve-or-create for a registered party, and ONLY for a
5289
+ // registered party (the gate gates the call on the reason). A public admit
5290
+ // with no :Person is dropped `public-unresolved`, so without this an
5291
+ // operator-registered counterparty vanishes on their first message. Same
5292
+ // MERGE the passive path uses (server/index.ts), so a party and a passive
5293
+ // manager anchor their :Person identically.
5294
+ ensurePartyPerson: (accountId, phone) => ensureManagerPerson(accountId, phone)
5121
5295
  });
5122
5296
  }
5123
5297
  console.error(
5124
- `${TAG17} inbound account=${conn.accountId} from=${senderPhone} group=${isGroup} access=${accessResult.allowed ? "allowed" : "blocked"}(${accessResult.reason}) agent=${accessResult.agentType} effectiveAccount=${accessResult.effectiveAccountId ?? ""} destAccount=${conn.platformAccountId}` + // Task 2235an inherited policy behaves exactly like a set one until the
5298
+ `${TAG17} inbound account=${conn.accountId} from=${senderPhone} group=${isGroup} access=${accessResult.allowed ? "allowed" : "blocked"}(${accessResult.reason}) agent=${accessResult.agentType} effectiveAccount=${accessResult.effectiveAccountId ?? ""} destAccount=${conn.platformAccountId}` + // Task 2234the sender class is not derivable from `agent=public` alone:
5299
+ // a registered party and an open-policy stranger both read `public`. The
5300
+ // label is the only thing on this line that separates them.
5301
+ (accessResult.party ? ` party=${accessResult.party}` : "") + // Task 2235 — an inherited policy behaves exactly like a set one until the
5125
5302
  // house changes, so the verdict has to say which it was. Emitted only for the
5126
5303
  // arms a policy field actually decided; the self-phone and account-manager
5127
5304
  // arms consult none, and stamping them would assert something untrue.
5128
5305
  (accessResult.policySource ? ` policySource=${accessResult.policySource} policyField=${accessResult.policyField}` : "") + (extracted.mediaType ? ` media=${extracted.mediaType}` : "") + (extracted.quotedMessage ? ` replyTo=${extracted.quotedMessage.id}` : "")
5129
5306
  );
5307
+ if (!isGroup && accessResult.reason !== "registered-party") {
5308
+ const shadowedParty = registeredPartyFor(whatsAppConfig.registeredParties ?? {}, senderPhone);
5309
+ if (shadowedParty && shadowedParty.account === conn.platformAccountId) {
5310
+ console.error(
5311
+ `${TAG17} op=registered-party-shadowed phone=${senderPhone} account=${shadowedParty.account} party=${shadowedParty.party} shadowedBy=${accessResult.reason}`
5312
+ );
5313
+ }
5314
+ }
5130
5315
  if (!accessResult.allowed && accessResult.reason === "account-manager-unresolved") {
5131
5316
  console.error(
5132
5317
  `[whatsapp-native] op=account-manager-reject senderId=${senderPhone} reason=unresolved-effective-account`
@@ -5210,6 +5395,9 @@ async function handleInboundMessage(conn, msg) {
5210
5395
  accountId: conn.accountId,
5211
5396
  agentType: accessResult.agentType,
5212
5397
  passive: accessResult.passive === true,
5398
+ // Task 2234 — the gate's registered-party label, undefined for every other
5399
+ // sender. Rides to the gateway and on to the spawn env.
5400
+ party: accessResult.party,
5213
5401
  personId: accessResult.personId ?? null,
5214
5402
  senderPhone,
5215
5403
  text: extracted.text,
@@ -5312,6 +5500,8 @@ export {
5312
5500
  readLidMap,
5313
5501
  managedAccountFor,
5314
5502
  managerPhonesForAccount,
5503
+ PARTY_LABEL_PATTERN,
5504
+ registeredPartyFor,
5315
5505
  resolveAccountConfig,
5316
5506
  isAdminPhone,
5317
5507
  buildPolicyInheritance,
@@ -30,7 +30,7 @@ import {
30
30
  startConnection,
31
31
  stopConnection,
32
32
  storeMessage
33
- } from "./chunk-AJC3SQSF.js";
33
+ } from "./chunk-4QCYFTAI.js";
34
34
  import "./chunk-BP7LH7MC.js";
35
35
  import "./chunk-PFF6I7KP.js";
36
36
  export {
@@ -5,12 +5,12 @@
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
6
  <title>Activity — Maxy</title>
7
7
  <link rel="icon" href="/favicon.ico">
8
- <script type="module" crossorigin src="/assets/activity-0IcMRF5a.js"></script>
8
+ <script type="module" crossorigin src="/assets/activity-DKeRUjQ9.js"></script>
9
9
  <link rel="modulepreload" crossorigin href="/assets/chunk-CltuBf4Z.js">
10
- <link rel="modulepreload" crossorigin href="/assets/useSubAccountSwitcher-B6Ns2Z43.js">
11
- <link rel="modulepreload" crossorigin href="/assets/AdminShell-BQy9Ob22.js">
12
- <link rel="modulepreload" crossorigin href="/assets/triangle-alert-DI_VASJO.js">
13
- <link rel="stylesheet" crossorigin href="/assets/useSubAccountSwitcher-CZBZ3iV8.css">
10
+ <link rel="modulepreload" crossorigin href="/assets/useSubAccountSwitcher-D1VtIEp2.js">
11
+ <link rel="modulepreload" crossorigin href="/assets/AdminShell-B6H3J5C2.js">
12
+ <link rel="modulepreload" crossorigin href="/assets/triangle-alert-CuRAK3jk.js">
13
+ <link rel="stylesheet" crossorigin href="/assets/useSubAccountSwitcher-BDQ8Wsdt.css">
14
14
  <link rel="stylesheet" href="/brand-defaults.css">
15
15
  </head>
16
16
  <body>
@@ -5,11 +5,11 @@
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
6
  <title>Agents — Maxy</title>
7
7
  <link rel="icon" href="/favicon.ico">
8
- <script type="module" crossorigin src="/assets/agents-xjw-fJjo.js"></script>
8
+ <script type="module" crossorigin src="/assets/agents-CrR_OMe8.js"></script>
9
9
  <link rel="modulepreload" crossorigin href="/assets/chunk-CltuBf4Z.js">
10
- <link rel="modulepreload" crossorigin href="/assets/useSubAccountSwitcher-B6Ns2Z43.js">
11
- <link rel="modulepreload" crossorigin href="/assets/AdminShell-BQy9Ob22.js">
12
- <link rel="stylesheet" crossorigin href="/assets/useSubAccountSwitcher-CZBZ3iV8.css">
10
+ <link rel="modulepreload" crossorigin href="/assets/useSubAccountSwitcher-D1VtIEp2.js">
11
+ <link rel="modulepreload" crossorigin href="/assets/AdminShell-B6H3J5C2.js">
12
+ <link rel="stylesheet" crossorigin href="/assets/useSubAccountSwitcher-BDQ8Wsdt.css">
13
13
  <link rel="stylesheet" href="/brand-defaults.css">
14
14
  </head>
15
15
  <body>
@@ -0,0 +1 @@
1
+ import{o as e}from"./chunk-CltuBf4Z.js";import{B as t,H as n,J as r,R as i,W as a,g as o}from"./useSubAccountSwitcher-D1VtIEp2.js";import{k as s}from"./useVoiceRecorder-fpwWw2VW.js";import{E as c,T as l,w as u}from"./AdminShell-B6H3J5C2.js";import{t as d}from"./CdpScreencastSurface-BRSv89v-.js";var f=e(r(),1);function p(e=`admin`){let[t,n]=(0,f.useState)(`loading`),[r,i]=(0,f.useState)(``),[o,l]=(0,f.useState)(``),[u,d]=(0,f.useState)(``),[p,m]=(0,f.useState)(!1),[h,g]=(0,f.useState)(!1),[_,v]=(0,f.useState)(!1),[y,b]=(0,f.useState)(!1),[x,S]=(0,f.useState)(!1),[C,w]=(0,f.useState)(null),[T,E]=(0,f.useState)(null),[D,O]=(0,f.useState)(void 0),[k,A]=(0,f.useState)(null),[j,M]=(0,f.useState)(void 0),[N,P]=(0,f.useState)(null),[F,I]=(0,f.useState)(null),[L,R]=(0,f.useState)(void 0),z=(0,f.useRef)(void 0),[B,V]=(0,f.useState)(!1),[H,U]=(0,f.useState)(!0);(0,f.useEffect)(()=>{typeof window>`u`||fetch(`/api/remote-auth/status`).then(e=>e.ok?e.json():null).then(e=>{e?.configured&&V(!0)}).catch(()=>{})},[]);let W=(0,f.useRef)(null),G=(0,f.useRef)(null);(0,f.useEffect)(()=>{async function e(){let e=null;try{e=sessionStorage.getItem(`maxy-admin-session-key`)}catch{}if(!e)return!1;try{let t=await fetch(`/api/admin/session?session_key=${encodeURIComponent(e)}`);if(t.status===401){try{sessionStorage.removeItem(`maxy-admin-session-key`)}catch{}return!1}if(!t.ok)return!1;let r=await t.json();w(r.session_key),I(r.sessionId??null),O(r.businessName),A(r.role??null),M(r.userName===void 0?null:r.userName),P(r.avatar??null);let i=s(r.thinkingView);return z.current=i,R(i),n(`chat`),!0}catch(e){return console.error(`[admin] session restore failed:`,e),!1}}async function t(r=2){try{let i=await fetch(`/api/health`);if(!i.ok){if(r>0)return await new Promise(e=>setTimeout(e,1500)),t(r-1);console.error(`[admin] health check returned ${i.status} after retries`),n(`set-pin`);return}let a=await i.json();if(!a.pin_configured){n(`set-pin`);return}U(!!a.claude_authenticated);let o=!1;try{o=new URLSearchParams(window.location.search).get(`connect`)===`claude`}catch{}if(o){try{let e=new URL(window.location.href);e.searchParams.delete(`connect`),window.history.replaceState(null,``,e.pathname+e.search+e.hash)}catch{}if(!a.claude_authenticated){n(`connect-claude`);return}}if(await e())return;n(`enter-pin`)}catch(e){if(r>0)return await new Promise(e=>setTimeout(e,1500)),t(r-1);console.error(`[admin] health check failed:`,e),n(`set-pin`)}}t()},[]),(0,f.useEffect)(()=>{t===`chat`&&C&&fetch(`/api/admin/claude-info?session_key=${encodeURIComponent(C)}`).then(e=>{if(e.ok)return e.json()}).then(e=>{e&&E(e)}).catch(()=>{})},[t,C]);let K=(0,f.useRef)(null);(0,f.useEffect)(()=>{if(t!==`chat`)return;let e=setInterval(async()=>{try{let e=await fetch(`/api/health`);if(e.ok){let t=await e.json();U(t.auth_status!==`dead`&&t.auth_status!==`missing`)}}catch{}if(C)try{let e=await fetch(`/api/admin/session?session_key=${encodeURIComponent(C)}`);if(e.status!==401)return;let t=(await e.clone().json().catch(()=>null))?.code??`unknown-401`;if(t===`remote-auth-required`){a(`heartbeat`,`/api/admin/session`);return}console.warn(`[admin-auth] outcome=heartbeat-detected-expiry code=${t}`),K.current?.()}catch{}},300*1e3);return()=>clearInterval(e)},[t,C]),(0,f.useEffect)(()=>{t===`connect-claude`&&fetch(`/api/health`).then(e=>e.ok?e.json():null).then(e=>{e?.claude_authenticated&&(U(!0),n(`enter-pin`))}).catch(()=>{})},[t]);async function q(e,t){g(!0);try{let r=await fetch(`/api/admin/session`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({pin:e,...t?{accountId:t}:{}})});if(!r.ok){let e=await r.json().catch(()=>({}));if(r.status===401&&e?.code===`remote-auth-required`){a(`enter-pin`,`/api/admin/session`);return}d(e.error||`Invalid PIN`);return}let o=await r.json();w(o.session_key),I(o.sessionId??null),O(o.businessName),A(o.role??null),M(o.userName===void 0?null:o.userName),P(o.avatar??null);let c=s(o.thinkingView);z.current=c,R(c);try{sessionStorage.setItem(`maxy-admin-session-key`,o.session_key)}catch{}i(``),n(`chat`)}catch(e){console.error(`[admin] connection error:`,e),d(`Could not connect.`)}finally{g(!1)}}let J=(0,f.useCallback)(async e=>{if(e.preventDefault(),h)return;d(``);let t=o.trim();if(!t){d(`Please enter your name.`);return}if(r.length<4){d(`PIN must be at least 4 characters.`);return}let s=r;g(!0);try{let e=await fetch(`/api/onboarding/set-pin`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({pin:s,name:t})});if(!e.ok){let t=await e.json().catch(()=>({}));if(e.status===401&&t?.code===`remote-auth-required`){a(`set-pin`,`/api/onboarding/set-pin`);return}if(e.status===409){try{let e=await fetch(`/api/health`);if(e.ok){let r=await e.json();r.pin_configured&&r.claude_authenticated?n(`enter-pin`):r.pin_configured?n(`connect-claude`):d(t.error||`Failed to set PIN.`)}else n(`enter-pin`)}catch{n(`enter-pin`)}return}d(t.error||`Failed to set PIN.`);return}let r=await fetch(`/api/health`);if((r.ok?await r.json():null)?.claude_authenticated){await q(s);return}i(``),n(`connect-claude`)}catch(e){console.error(`[admin] connection error:`,e),d(`Could not connect.`)}finally{g(!1)}},[r,h,o]),Y=(0,f.useCallback)(async e=>{e.preventDefault(),d(``),await q(r)},[r]),X=(0,f.useCallback)(async()=>{S(!0);try{if(!await c())return console.warn(`[admin-ui] claude-disconnect not verified — credentials may persist; staying put`),!1;U(!1),w(null),A(null),M(void 0),P(null);try{sessionStorage.removeItem(`maxy-admin-session-key`)}catch{}return n(`connect-claude`),!0}finally{S(!1)}},[]),Z=(0,f.useCallback)(()=>{w(null),A(null),M(void 0),P(null);try{sessionStorage.removeItem(`maxy-admin-session-key`)}catch{}i(``),d(``),n(`enter-pin`)},[]);return(0,f.useEffect)(()=>{K.current=Z},[Z]),{appState:t,setAppState:n,pin:r,setPin:i,operatorName:o,setOperatorName:l,pinError:u,setPinError:d,showPin:p,setShowPin:m,pinLoading:h,authPolling:_,setAuthPolling:v,authLoading:y,setAuthLoading:b,disconnecting:x,cacheKey:C,setCacheKey:w,claudeInfo:T,setClaudeInfo:E,businessName:D,role:k,userName:j,userAvatar:N,sessionId:F,setSessionId:I,expandAll:L,setExpandAll:R,expandAllDefaultRef:z,remoteAuthEnabled:B,claudeConnected:H,pinInputRef:W,setPinFormRef:G,handleSetPin:J,handleLogin:Y,handleDisconnect:X,handleLogout:Z}}var m=n();function h({inputRef:e,value:t,onChange:n,onComplete:r,showPin:i,autoFocus:a}){let o=(0,f.useRef)([]);function s(e,r){r.key===`Backspace`?(r.preventDefault(),t[e]?n(t.slice(0,e)+t.slice(e+1)):e>0&&(n(t.slice(0,e-1)+t.slice(e)),o.current[e-1]?.focus())):r.key===`ArrowLeft`&&e>0?o.current[e-1]?.focus():r.key===`ArrowRight`&&e<5?o.current[e+1]?.focus():r.key===`Enter`&&(r.preventDefault(),r.currentTarget.form?.requestSubmit())}function c(e,i){let a=i.nativeEvent.data;if(!a||!/^\d$/.test(a))return;let s=t.split(``);for(s[e]=a;s.length<e;)s.push(``);let c=s.join(``).replace(/\D/g,``).slice(0,6);n(c),c.length===6?r?.(c):e<5&&o.current[e+1]?.focus()}function l(e){e.preventDefault();let t=e.clipboardData.getData(`text`).replace(/\D/g,``).slice(0,6);t&&(n(t),t.length===6?r?.(t):o.current[t.length]?.focus())}return(0,m.jsx)(`div`,{className:`pin-field`,children:Array.from({length:6}).map((n,r)=>(0,m.jsx)(`input`,{ref:t=>{o.current[r]=t,r===0&&e&&(e.current=t)},type:`text`,inputMode:`numeric`,className:`pin-box${t[r]?` pin-box-filled`:``}`,value:t[r]?i?t[r]:`•`:``,onKeyDown:e=>s(r,e),onInput:e=>c(r,e),onPaste:l,onFocus:e=>e.target.select(),autoFocus:a&&r===0,autoComplete:`off`,maxLength:1,"aria-label":`PIN digit ${r+1}`},r))})}function g(e){let{pin:n,setPin:r,showPin:a,setShowPin:o,pinLoading:s,pinError:c,pinInputRef:d,setPinFormRef:f,onSubmit:p,operatorName:g,setOperatorName:_}=e;return(0,m.jsx)(`div`,{className:`connect-page`,children:(0,m.jsxs)(`div`,{className:`connect-content`,children:[(0,m.jsx)(`img`,{src:t,alt:i.productName,className:`connect-logo connect-logo--maxy`}),!i.logoContainsName&&(0,m.jsxs)(`h1`,{className:`connect-title`,children:[`Welcome to `,i.productName]}),(0,m.jsxs)(`p`,{className:`connect-subtitle`,children:[`Tell `,i.productName,` who you are, then choose a PIN.`]}),(0,m.jsxs)(`form`,{ref:f,onSubmit:p,className:`connect-pin-form`,children:[(0,m.jsxs)(`div`,{className:`pin-input-row`,children:[(0,m.jsx)(`input`,{type:`text`,className:`connect-name-input`,placeholder:`Your full name`,value:g,onChange:e=>_(e.target.value),autoComplete:`name`,autoFocus:!0,required:!0,"aria-label":`Your full name`}),(0,m.jsx)(`div`,{style:{width:38,flexShrink:0},"aria-hidden":`true`})]}),(0,m.jsxs)(`div`,{className:`pin-input-row`,children:[(0,m.jsx)(h,{inputRef:d,value:n,onChange:r,onComplete:()=>{},showPin:a}),(0,m.jsx)(u,{variant:`send`,type:`submit`,disabled:!n||!g.trim(),loading:s,"aria-label":`Set PIN`,children:(0,m.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,m.jsx)(`line`,{x1:`5`,y1:`12`,x2:`19`,y2:`12`}),(0,m.jsx)(`polyline`,{points:`12 5 19 12 12 19`})]})})]}),(0,m.jsx)(l,{checked:a,onChange:()=>o(e=>!e),label:`Show PIN`})]}),c&&(0,m.jsx)(`p`,{className:`admin-pin-error`,children:c})]})})}function _(e){let{pin:n,setPin:r,showPin:a,setShowPin:o,pinLoading:s,pinError:c,pinInputRef:d,onSubmit:f,remoteAuthEnabled:p,onSignOutRemote:g}=e;return(0,m.jsxs)(`div`,{className:`connect-page`,children:[p&&g&&(0,m.jsx)(`button`,{type:`button`,className:`connect-signout`,onClick:g,children:`Sign out`}),(0,m.jsxs)(`div`,{className:`connect-content`,children:[(0,m.jsx)(`img`,{src:t,alt:i.productName,className:`connect-logo connect-logo--maxy`}),!i.logoContainsName&&(0,m.jsx)(`h1`,{className:`connect-title`,children:i.productName}),(0,m.jsxs)(`form`,{onSubmit:f,className:`connect-pin-form`,children:[(0,m.jsxs)(`div`,{className:`pin-input-row`,children:[(0,m.jsx)(h,{inputRef:d,value:n,onChange:r,onComplete:()=>{},showPin:a,autoFocus:!0}),(0,m.jsx)(u,{variant:`send`,type:`submit`,disabled:!n,loading:s,children:(0,m.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,m.jsx)(`line`,{x1:`5`,y1:`12`,x2:`19`,y2:`12`}),(0,m.jsx)(`polyline`,{points:`12 5 19 12 12 19`})]})})]}),(0,m.jsx)(`div`,{className:`pin-options`,children:(0,m.jsx)(l,{checked:a,onChange:()=>o(e=>!e),label:`Show PIN`})})]}),c&&(0,m.jsx)(`p`,{className:`admin-pin-error`,children:c})]})]})}function v(e){let{authPolling:n,setAuthPolling:r,authLoading:a,setAuthLoading:o,pinError:s,setPinError:c,setAppState:l}=e,[p,h]=(0,f.useState)(!1),[g,_]=(0,f.useState)(!1),[v,y]=(0,f.useState)(``),[b,x]=(0,f.useState)(``),[S,C]=(0,f.useState)(``),[w,T]=(0,f.useState)(null),[E,D]=(0,f.useState)(null),[O,k]=(0,f.useState)(!1);(0,f.useEffect)(()=>{try{D(sessionStorage.getItem(`maxy-admin-session-key`))}catch{}k(!0)},[]);async function A(){C(``);try{let e=await(await fetch(`/api/onboarding/claude-auth`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({action:`paste-code`,code:b})})).json();e.accepted?(C(`Code submitted. Finishing sign-in…`),x(``)):C(e.error||`Could not submit code.`)}catch(e){console.error(`[admin] paste-code error:`,e),C(`Could not submit code.`)}}async function j(){_(!0),c(``);try{let e=await(await fetch(`/api/onboarding/claude-auth`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({action:`launch-browser`})})).json();e.launched?h(!0):e.error&&c(e.error)}catch(e){console.error(`[admin] browser launch error:`,e),c(`Could not launch browser.`)}_(!1)}async function M(){o(!0),c(``);try{let e=await(await fetch(`/api/onboarding/claude-auth`,{method:`POST`})).json();if(e.started){r(!0),h(!0),o(!1),y(e.transport||``);for(let e=0;e<120;e++){await new Promise(e=>setTimeout(e,2e3));let e=await(await fetch(`/api/onboarding/claude-auth`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({action:`wait`})})).json();if(typeof e.authTargetId==`string`&&T(e.authTargetId),e.authenticated){await fetch(`/api/onboarding/claude-auth`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({action:`stop`})}),l(`enter-pin`);return}}c(`Timed out waiting for sign-in. Try again.`),r(!1)}else e.error&&c(e.error)}catch(e){console.error(`[admin] auth flow error:`,e),c(`Could not start auth flow.`)}o(!1)}async function N(){await fetch(`/api/onboarding/claude-auth`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({action:`stop`})}),r(!1),c(``)}return n||p?(0,m.jsxs)(`div`,{style:{display:`flex`,flexDirection:`column`,height:`100dvh`,overflow:`auto`},children:[(0,m.jsxs)(`header`,{className:`chat-header`,style:{paddingBottom:`12px`,flexShrink:0,position:`relative`,maxWidth:`680px`,width:`100%`,margin:`0 auto`,padding:`24px 20px 12px`},children:[n?(0,m.jsx)(`button`,{onClick:N,style:{position:`absolute`,top:`12px`,right:`12px`,background:`none`,border:`none`,color:`#999`,fontSize:`13px`,cursor:`pointer`,padding:`4px 8px`},"aria-label":`Cancel`,children:`✕`}):(0,m.jsx)(`button`,{onClick:()=>h(!1),style:{position:`absolute`,top:`12px`,right:`12px`,background:`none`,border:`none`,color:`#999`,fontSize:`13px`,cursor:`pointer`,padding:`4px 8px`},"aria-label":`Close browser`,children:`✕`}),(0,m.jsx)(`img`,{src:`/brand/claude.png`,alt:`Claude`,className:`chat-logo`}),(0,m.jsx)(`h1`,{className:`chat-tagline`,children:`Connect Claude`}),(0,m.jsx)(`p`,{className:`chat-intro`,children:n?`Sign in and authorize in the browser below.`:`Open your email or prepare your accounts, then sign in.`}),!n&&(0,m.jsx)(`div`,{style:{marginTop:`12px`},children:(0,m.jsx)(u,{variant:`primary`,onClick:M,disabled:a,children:a?(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)(`span`,{className:`spin`,style:{display:`inline-block`},children:`✱`}),` Connecting…`]}):`Sign in to Claude`})}),n&&v===`native`&&(0,m.jsxs)(`div`,{style:{marginTop:`14px`,maxWidth:`420px`,margin:`14px auto 0`,display:`flex`,flexDirection:`column`,gap:`8px`},children:[(0,m.jsx)(`label`,{style:{fontSize:`12px`,color:`#999`,lineHeight:1.4},children:`If the browser didn't finish sign-in, paste the code or full redirect URL from Claude's page:`}),(0,m.jsxs)(`div`,{style:{display:`flex`,gap:`8px`},children:[(0,m.jsx)(`input`,{type:`text`,value:b,onChange:e=>x(e.target.value),placeholder:`Paste code or redirect URL`,style:{flex:1,padding:`8px 10px`,fontSize:`13px`,border:`1px solid #ccc`,borderRadius:`6px`}}),(0,m.jsx)(u,{variant:`primary`,onClick:A,disabled:!b.trim(),children:`Submit`})]}),S&&(0,m.jsx)(`p`,{style:{fontSize:`12px`,color:`#999`,margin:0},children:S})]})]}),(0,m.jsx)(`div`,{style:{flex:1,display:`flex`,flexDirection:`column`,minHeight:0,gap:`10px`,padding:`0 0 16px`},children:O&&(0,m.jsx)(d,{preferTargetId:w,cacheKey:E})}),s&&(0,m.jsx)(`p`,{className:`admin-pin-error`,style:{textAlign:`center`,padding:`0 20px 16px`},children:s})]}):(0,m.jsx)(`div`,{className:`connect-page`,children:(0,m.jsxs)(`div`,{className:`connect-content`,children:[(0,m.jsxs)(`div`,{className:`connect-logos`,children:[(0,m.jsx)(`div`,{className:`connect-logo-wrap`,children:(0,m.jsx)(`img`,{src:`/brand/claude.png`,alt:`Claude`,className:`connect-logo`})}),(0,m.jsx)(`svg`,{className:`connect-arrow`,viewBox:`0 0 48 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,children:(0,m.jsx)(`path`,{d:`M0 12h44m0 0l-8-8m8 8l-8 8`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`})}),(0,m.jsxs)(`div`,{className:`connect-logo-wrap`,children:[(0,m.jsx)(`img`,{src:t,alt:i.productName,className:`connect-logo connect-logo--maxy`}),!i.logoContainsName&&(0,m.jsx)(`span`,{className:`connect-logo-label`,children:i.productName})]})]}),(0,m.jsxs)(`h1`,{className:`connect-title`,children:[`Connect Claude to power `,i.productName]}),(0,m.jsx)(`p`,{className:`connect-subtitle`,children:`Sign in with your Anthropic account to get started.`}),(0,m.jsx)(u,{variant:`primary`,onClick:M,disabled:a,children:a?(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)(`span`,{className:`spin`,style:{display:`inline-block`},children:`✱`}),` Connecting…`]}):`Sign in to Claude`}),(0,m.jsx)(`p`,{style:{marginTop:`6px`,fontSize:`11px`,color:`#999`,maxWidth:`300px`,textAlign:`center`,lineHeight:`1.4`},children:`First time? You may need to sign into your email and Anthropic account in the browser before connecting.`}),(0,m.jsx)(`button`,{onClick:j,disabled:g,style:{marginTop:`12px`,background:`none`,border:`none`,color:`var(--color-primary, #666)`,fontSize:`13px`,cursor:`pointer`,textDecoration:`underline`,textUnderlineOffset:`3px`},children:g?`Launching…`:`Open browser first`}),s&&(0,m.jsx)(`p`,{className:`admin-pin-error`,children:s})]})})}function y({auth:e}){return e.appState===`loading`?(0,m.jsx)(o,{surface:`gate`}):e.appState===`set-pin`?(0,m.jsx)(g,{pin:e.pin,setPin:e.setPin,showPin:e.showPin,setShowPin:e.setShowPin,pinLoading:e.pinLoading,pinError:e.pinError,pinInputRef:e.pinInputRef,setPinFormRef:e.setPinFormRef,onSubmit:e.handleSetPin,operatorName:e.operatorName,setOperatorName:e.setOperatorName}):e.appState===`connect-claude`?(0,m.jsx)(v,{authPolling:e.authPolling,setAuthPolling:e.setAuthPolling,authLoading:e.authLoading,setAuthLoading:e.setAuthLoading,pinError:e.pinError,setPinError:e.setPinError,setAppState:e.setAppState}):e.appState===`enter-pin`?(0,m.jsx)(_,{pin:e.pin,setPin:e.setPin,showPin:e.showPin,setShowPin:e.setShowPin,pinLoading:e.pinLoading,pinError:e.pinError,pinInputRef:e.pinInputRef,onSubmit:e.handleLogin,remoteAuthEnabled:e.remoteAuthEnabled,onSignOutRemote:()=>{window.location.href=`/__remote-auth/logout`}}):null}export{p as n,y as t};