@rubytech/create-maxy-code 0.1.308 → 0.1.309

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 (179) hide show
  1. package/dist/__tests__/claude-ptys-slice.test.js +1 -1
  2. package/dist/__tests__/cloudflared-slice.test.js +1 -1
  3. package/dist/__tests__/macos-darwin-branch.test.js +4 -6
  4. package/package.json +1 -1
  5. package/payload/platform/lib/admin-access-password/__tests__/index.test.ts +28 -0
  6. package/payload/platform/lib/admin-access-password/dist/index.d.ts +9 -0
  7. package/payload/platform/lib/admin-access-password/dist/index.d.ts.map +1 -1
  8. package/payload/platform/lib/admin-access-password/dist/index.js +26 -0
  9. package/payload/platform/lib/admin-access-password/dist/index.js.map +1 -1
  10. package/payload/platform/lib/admin-access-password/src/index.ts +24 -0
  11. package/payload/platform/lib/models/dist/index.d.ts +7 -0
  12. package/payload/platform/lib/models/dist/index.d.ts.map +1 -1
  13. package/payload/platform/lib/models/dist/index.js +10 -0
  14. package/payload/platform/lib/models/dist/index.js.map +1 -1
  15. package/payload/platform/lib/models/src/index.ts +10 -0
  16. package/payload/platform/plugins/admin/mcp/dist/index.js +4 -1
  17. package/payload/platform/plugins/admin/mcp/dist/index.js.map +1 -1
  18. package/payload/platform/plugins/admin/skills/platform-architecture/SKILL.md +21 -1
  19. package/payload/platform/plugins/docs/references/admin-ui.md +20 -0
  20. package/payload/platform/services/claude-session-manager/dist/http-server.d.ts +1 -0
  21. package/payload/platform/services/claude-session-manager/dist/http-server.d.ts.map +1 -1
  22. package/payload/platform/services/claude-session-manager/dist/http-server.js +11 -0
  23. package/payload/platform/services/claude-session-manager/dist/http-server.js.map +1 -1
  24. package/payload/server/{chunk-FBGIHWWM.js → chunk-J6WDAWFJ.js} +20 -0
  25. package/payload/server/maxy-edge.js +1 -1
  26. package/payload/server/public/assets/AccessGate-CU4Qw6M6.js +1 -0
  27. package/payload/server/public/assets/AdminLoginScreens-DUpRIM1h.js +1 -0
  28. package/payload/server/public/assets/AdminShell-DkoQSsqo.js +1 -0
  29. package/payload/server/public/assets/{Checkbox-8elc7oXU.js → Checkbox-DMA1hVhn.js} +1 -1
  30. package/payload/server/public/assets/OperatorConversations-BIHiyyxU.js +1 -0
  31. package/payload/server/public/assets/admin-BHvOMcCh.js +1 -0
  32. package/payload/server/public/assets/{arc-DxSm8tli.js → arc-Dl9QFDgW.js} +1 -1
  33. package/payload/server/public/assets/architecture-YZFGNWBL-Crq5RSDG.js +1 -0
  34. package/payload/server/public/assets/{architectureDiagram-Q4EWVU46-7JSAh0vL.js → architectureDiagram-Q4EWVU46-CNLQUVi9.js} +1 -1
  35. package/payload/server/public/assets/{audio-attachment-mime-DzbKNqbH.js → audio-attachment-mime-DOBET-W1.js} +3 -3
  36. package/payload/server/public/assets/{blockDiagram-DXYQGD6D-DLoVmHKD.js → blockDiagram-DXYQGD6D-B-QxfVjk.js} +1 -1
  37. package/payload/server/public/assets/brand-4F9ZXBF8.css +1 -0
  38. package/payload/server/public/assets/{brand-Dh5UlVO2.js → brand-C7kj0USi.js} +1 -1
  39. package/payload/server/public/assets/browser-eLSiC7_b.js +1 -0
  40. package/payload/server/public/assets/{c4Diagram-AHTNJAMY-Nv1G0o9P.js → c4Diagram-AHTNJAMY-NuYFvPDU.js} +1 -1
  41. package/payload/server/public/assets/channel-KT66MFN2.js +1 -0
  42. package/payload/server/public/assets/chat-DedpVKUl.js +1 -0
  43. package/payload/server/public/assets/{chunk-2KRD3SAO-BpqPMhoA.js → chunk-2KRD3SAO-l5VL1KQm.js} +1 -1
  44. package/payload/server/public/assets/{chunk-336JU56O-DgXHlVU_.js → chunk-336JU56O-C5gVznC2.js} +2 -2
  45. package/payload/server/public/assets/chunk-426QAEUC-CWMiOm8Y.js +1 -0
  46. package/payload/server/public/assets/{chunk-4BX2VUAB-nwyZSZH8.js → chunk-4BX2VUAB-BtMVz_Sq.js} +1 -1
  47. package/payload/server/public/assets/{chunk-4TB4RGXK-Tfxz9LHX.js → chunk-4TB4RGXK-C8-dmCuT.js} +1 -1
  48. package/payload/server/public/assets/{chunk-55IACEB6-6FMJQGXG.js → chunk-55IACEB6-C5gWvEJW.js} +1 -1
  49. package/payload/server/public/assets/{chunk-5FUZZQ4R-g2FgZF3D.js → chunk-5FUZZQ4R-BZ7VZoAC.js} +1 -1
  50. package/payload/server/public/assets/{chunk-5PVQY5BW-DtLwXsPH.js → chunk-5PVQY5BW-C_ajQOGC.js} +1 -1
  51. package/payload/server/public/assets/{chunk-67CJDMHE-K91CP5ZU.js → chunk-67CJDMHE-BJOR2dwK.js} +1 -1
  52. package/payload/server/public/assets/{chunk-7N4EOEYR-BGpCQhqK.js → chunk-7N4EOEYR-DvZLpquX.js} +1 -1
  53. package/payload/server/public/assets/{chunk-AA7GKIK3-jkDbInck.js → chunk-AA7GKIK3-h5tVsPlW.js} +1 -1
  54. package/payload/server/public/assets/{chunk-BSJP7CBP-mDosdzGs.js → chunk-BSJP7CBP-DLOF2-m3.js} +1 -1
  55. package/payload/server/public/assets/{chunk-CIAEETIT-DhBxewpQ.js → chunk-CIAEETIT-CQRQMPCf.js} +1 -1
  56. package/payload/server/public/assets/{chunk-EDXVE4YY-B7c-9Emg.js → chunk-EDXVE4YY-K9-EfuM2.js} +1 -1
  57. package/payload/server/public/assets/{chunk-ENJZ2VHE-Cqhhncox.js → chunk-ENJZ2VHE-DVoy6NvU.js} +1 -1
  58. package/payload/server/public/assets/{chunk-FMBD7UC4-BpDq6wj1.js → chunk-FMBD7UC4-CQn_2o2b.js} +1 -1
  59. package/payload/server/public/assets/{chunk-FOC6F5B3-Ds02-ktu.js → chunk-FOC6F5B3-CuN73goS.js} +1 -1
  60. package/payload/server/public/assets/{chunk-ICPOFSXX-BTX5POFr.js → chunk-ICPOFSXX-CKhl9J-H.js} +2 -2
  61. package/payload/server/public/assets/{chunk-K5T4RW27-Du1PXXBU.js → chunk-K5T4RW27-CBskuQmq.js} +1 -1
  62. package/payload/server/public/assets/{chunk-KGLVRYIC-siasOAf8.js → chunk-KGLVRYIC-Chtjt8xK.js} +1 -1
  63. package/payload/server/public/assets/{chunk-LIHQZDEY-xf1rbZtf.js → chunk-LIHQZDEY-EOBiBNSH.js} +1 -1
  64. package/payload/server/public/assets/{chunk-ORNJ4GCN-DeTLQ_LD.js → chunk-ORNJ4GCN-uPPq-5MN.js} +1 -1
  65. package/payload/server/public/assets/{chunk-OYMX7WX6-DQ7_oVJn.js → chunk-OYMX7WX6-BRzbxJOT.js} +1 -1
  66. package/payload/server/public/assets/chunk-QZHKN3VN-DCzpF46A.js +1 -0
  67. package/payload/server/public/assets/{chunk-U2HBQHQK-CXmFUKgn.js → chunk-U2HBQHQK-Bndyn5nF.js} +1 -1
  68. package/payload/server/public/assets/{chunk-X2U36JSP-Bj8-8Wkz.js → chunk-X2U36JSP-BspGBHXW.js} +1 -1
  69. package/payload/server/public/assets/{chunk-XPW4576I-Con3TXqt.js → chunk-XPW4576I-HgXQ2k9h.js} +1 -1
  70. package/payload/server/public/assets/{chunk-YZCP3GAM-Dx8BHGWf.js → chunk-YZCP3GAM-C7oTyCnw.js} +1 -1
  71. package/payload/server/public/assets/{chunk-ZZ45TVLE-Dp4Q5Y-f.js → chunk-ZZ45TVLE-CufWa7QL.js} +1 -1
  72. package/payload/server/public/assets/classDiagram-6PBFFD2Q-QOU4HzJJ.js +1 -0
  73. package/payload/server/public/assets/classDiagram-v2-HSJHXN6E-DcOUai3Z.js +1 -0
  74. package/payload/server/public/assets/clone-CHh05KN-.js +1 -0
  75. package/payload/server/public/assets/{cose-bilkent-S5V4N54A-pZiCv69E.js → cose-bilkent-S5V4N54A-BM3yEbF-.js} +1 -1
  76. package/payload/server/public/assets/{dagre-CLqhEgbL.js → dagre-C7WHNZO8.js} +1 -1
  77. package/payload/server/public/assets/{dagre-KV5264BT-BCxE8iyk.js → dagre-KV5264BT-bcZx3l06.js} +1 -1
  78. package/payload/server/public/assets/data-BcoBY39U.js +1 -0
  79. package/payload/server/public/assets/{diagram-5BDNPKRD-slUEdZzz.js → diagram-5BDNPKRD-B7VotaMF.js} +1 -1
  80. package/payload/server/public/assets/{diagram-G4DWMVQ6-DPcraMfu.js → diagram-G4DWMVQ6-CWWvEsFx.js} +1 -1
  81. package/payload/server/public/assets/{diagram-MMDJMWI5-DR6luhGK.js → diagram-MMDJMWI5-DYHVkTYJ.js} +1 -1
  82. package/payload/server/public/assets/{diagram-TYMM5635-Jap1B4wA.js → diagram-TYMM5635-CHeB6Ama.js} +1 -1
  83. package/payload/server/public/assets/{dist-Dbh7HrZX.js → dist-CjjtmoWL.js} +1 -1
  84. package/payload/server/public/assets/{erDiagram-SMLLAGMA-DJKUs2hO.js → erDiagram-SMLLAGMA-C9gog8QP.js} +1 -1
  85. package/payload/server/public/assets/{flatten-Cl1Bc3dR.js → flatten-QcJDm7yK.js} +1 -1
  86. package/payload/server/public/assets/{flowDiagram-DWJPFMVM-C8W-ZZ9W.js → flowDiagram-DWJPFMVM-B2O9lKTh.js} +1 -1
  87. package/payload/server/public/assets/{ganttDiagram-T4ZO3ILL-DYCX4Xu2.js → ganttDiagram-T4ZO3ILL-DEa4AwbR.js} +1 -1
  88. package/payload/server/public/assets/gitGraph-7Q5UKJZL-BC-u4jgy.js +1 -0
  89. package/payload/server/public/assets/{gitGraphDiagram-UUTBAWPF-CZu_fpgS.js → gitGraphDiagram-UUTBAWPF-BjXPQpBL.js} +1 -1
  90. package/payload/server/public/assets/{graph-DKSjcpmR.js → graph-C7Hye_vp.js} +2 -2
  91. package/payload/server/public/assets/{graph-labels-CVWPQgBV.js → graph-labels-YYgGsEVd.js} +1 -1
  92. package/payload/server/public/assets/{graphlib-Bdp7TA4y.js → graphlib-CBevn2DP.js} +1 -1
  93. package/payload/server/public/assets/info-OMHHGYJF-DPUetTz-.js +1 -0
  94. package/payload/server/public/assets/infoDiagram-42DDH7IO-q2dl09-M.js +2 -0
  95. package/payload/server/public/assets/{isEmpty-D1pGOD1J.js → isEmpty-BO6BAEn7.js} +1 -1
  96. package/payload/server/public/assets/{ishikawaDiagram-UXIWVN3A-B7KfIX6z.js → ishikawaDiagram-UXIWVN3A-CPLfpvqv.js} +1 -1
  97. package/payload/server/public/assets/{journeyDiagram-VCZTEJTY-CSDwBfhF.js → journeyDiagram-VCZTEJTY-CTHe8MiD.js} +1 -1
  98. package/payload/server/public/assets/{kanban-definition-6JOO6SKY-CWzcEKTr.js → kanban-definition-6JOO6SKY-Bm9h1O3Y.js} +1 -1
  99. package/payload/server/public/assets/{line-BNQSlbYn.js → line-C31b0rtY.js} +1 -1
  100. package/payload/server/public/assets/{linear-BN6kGN93.js → linear-Cfm_8_pU.js} +1 -1
  101. package/payload/server/public/assets/{mermaid-parser.core-CcFhkElq.js → mermaid-parser.core-B3tGwOcE.js} +2 -2
  102. package/payload/server/public/assets/{mermaid.core-BsIeJ7Cc.js → mermaid.core-BM3s85ZW.js} +3 -3
  103. package/payload/server/public/assets/{mindmap-definition-QFDTVHPH-CQVzj6D_.js → mindmap-definition-QFDTVHPH-CaGv_mIB.js} +1 -1
  104. package/payload/server/public/assets/operator-WsXhcbBF.js +1 -0
  105. package/payload/server/public/assets/{ordinal-CBZeH4Yp.js → ordinal-jLCwuvYg.js} +1 -1
  106. package/payload/server/public/assets/packet-4T2RLAQJ-BcfR-ZwA.js +1 -0
  107. package/payload/server/public/assets/page-BhHTnqv4.js +1 -0
  108. package/payload/server/public/assets/pie-ZZUOXDRM-BiKgZdNB.js +1 -0
  109. package/payload/server/public/assets/{pieDiagram-DEJITSTG-DnrQ9fyn.js → pieDiagram-DEJITSTG-BhAXps4u.js} +1 -1
  110. package/payload/server/public/assets/public-ViXjC_dA.js +6 -0
  111. package/payload/server/public/assets/public-next-BKECyMz2.js +1 -0
  112. package/payload/server/public/assets/{quadrantDiagram-34T5L4WZ-BQWlCyWi.js → quadrantDiagram-34T5L4WZ-BWtTdNs8.js} +1 -1
  113. package/payload/server/public/assets/radar-PYXPWWZC-nvCjiW_J.js +1 -0
  114. package/payload/server/public/assets/{reduce-PuPlFPRX.js → reduce-Dmi_NdVH.js} +1 -1
  115. package/payload/server/public/assets/{requirementDiagram-MS252O5E-Du_vZhU1.js → requirementDiagram-MS252O5E-CWU0qCcP.js} +1 -1
  116. package/payload/server/public/assets/{sankeyDiagram-XADWPNL6-Cf6Z8GPQ.js → sankeyDiagram-XADWPNL6-DYvutQld.js} +1 -1
  117. package/payload/server/public/assets/{sequenceDiagram-FGHM5R23-CS8GVol8.js → sequenceDiagram-FGHM5R23-Cir0hBWS.js} +1 -1
  118. package/payload/server/public/assets/{src-BoaldmnP.js → src-CwB968DO.js} +1 -1
  119. package/payload/server/public/assets/{stateDiagram-FHFEXIEX-Bv1NW2F1.js → stateDiagram-FHFEXIEX-Be-h8YSS.js} +1 -1
  120. package/payload/server/public/assets/stateDiagram-v2-QKLJ7IA2-CAnmjSj7.js +1 -0
  121. package/payload/server/public/assets/{timeline-definition-GMOUNBTQ-ClGYAsr0.js → timeline-definition-GMOUNBTQ-C3C4Wuyk.js} +1 -1
  122. package/payload/server/public/assets/treeView-SZITEDCU-BinXCVyM.js +1 -0
  123. package/payload/server/public/assets/treemap-W4RFUUIX-CSmh20Ze.js +1 -0
  124. package/payload/server/public/assets/{useSelectionMode-FIodJKzS.js → useSelectionMode-CG_Iel5F.js} +1 -1
  125. package/payload/server/public/assets/{vennDiagram-DHZGUBPP-C2wTcxQT.js → vennDiagram-DHZGUBPP-mDclw0Sa.js} +1 -1
  126. package/payload/server/public/assets/wardley-RL74JXVD-BiCmRKWx.js +1 -0
  127. package/payload/server/public/assets/{wardleyDiagram-NUSXRM2D-D86-ivEx.js → wardleyDiagram-NUSXRM2D-mvk-YA9g.js} +1 -1
  128. package/payload/server/public/assets/{xychartDiagram-5P7HB3ND-Ba5WAN8P.js → xychartDiagram-5P7HB3ND-9M7k1hmD.js} +1 -1
  129. package/payload/server/public/browser.html +8 -8
  130. package/payload/server/public/chat.html +11 -11
  131. package/payload/server/public/data.html +7 -7
  132. package/payload/server/public/graph.html +10 -10
  133. package/payload/server/public/index.html +10 -10
  134. package/payload/server/public/operator.html +13 -13
  135. package/payload/server/public/public-next.html +24 -0
  136. package/payload/server/public/public.html +9 -8
  137. package/payload/server/server.js +819 -614
  138. package/dist/__tests__/onboarding-state-readback.test.js +0 -61
  139. package/dist/__tests__/rss-sampler-installer.test.js +0 -27
  140. package/dist/onboarding-readback.js +0 -27
  141. package/payload/server/public/assets/AdminLoginScreens-BZIA9Z6o.js +0 -1
  142. package/payload/server/public/assets/AdminShell-iazLHsk7.js +0 -1
  143. package/payload/server/public/assets/admin-BEx6o3fa.js +0 -1
  144. package/payload/server/public/assets/architecture-YZFGNWBL-6g9jRVgc.js +0 -1
  145. package/payload/server/public/assets/brand-CmMZe4RK.css +0 -1
  146. package/payload/server/public/assets/browser-D16sPVkI.js +0 -1
  147. package/payload/server/public/assets/channel-BgQLJanG.js +0 -1
  148. package/payload/server/public/assets/chat-x4PnXhkd.js +0 -1
  149. package/payload/server/public/assets/chunk-426QAEUC-Dr_XVuUq.js +0 -1
  150. package/payload/server/public/assets/chunk-QZHKN3VN-DF4o9HRJ.js +0 -1
  151. package/payload/server/public/assets/classDiagram-6PBFFD2Q-DAbPKU6u.js +0 -1
  152. package/payload/server/public/assets/classDiagram-v2-HSJHXN6E-BKuFQLcv.js +0 -1
  153. package/payload/server/public/assets/clone-DnNHGhNe.js +0 -1
  154. package/payload/server/public/assets/data-DqG45sq0.js +0 -1
  155. package/payload/server/public/assets/file-download-BvGS7Qmi.js +0 -1
  156. package/payload/server/public/assets/gitGraph-7Q5UKJZL-g7mvu6IY.js +0 -1
  157. package/payload/server/public/assets/info-OMHHGYJF-DZqJuIkB.js +0 -1
  158. package/payload/server/public/assets/infoDiagram-42DDH7IO-cGfGccHz.js +0 -2
  159. package/payload/server/public/assets/operator-Cnzbhdh2.js +0 -1
  160. package/payload/server/public/assets/packet-4T2RLAQJ-Hn8rlHpy.js +0 -1
  161. package/payload/server/public/assets/page-CH8JQkQN.js +0 -1
  162. package/payload/server/public/assets/pie-ZZUOXDRM-BPGWVqBm.js +0 -1
  163. package/payload/server/public/assets/public-CA90VhI9.js +0 -6
  164. package/payload/server/public/assets/radar-PYXPWWZC-DMdLrj3E.js +0 -1
  165. package/payload/server/public/assets/stateDiagram-v2-QKLJ7IA2-BGUCxPmp.js +0 -1
  166. package/payload/server/public/assets/treeView-SZITEDCU-CWxofUbI.js +0 -1
  167. package/payload/server/public/assets/treemap-W4RFUUIX-Cfgb_ZG0.js +0 -1
  168. package/payload/server/public/assets/wardley-RL74JXVD-B45olYjj.js +0 -1
  169. /package/payload/server/public/assets/{file-download-qc_xy7Az.css → OperatorConversations-qc_xy7Az.css} +0 -0
  170. /package/payload/server/public/assets/{_baseFor-brRjpUOX.js → _baseFor-D8P3gUw3.js} +0 -0
  171. /package/payload/server/public/assets/{array-BGFCBI0e.js → array-CLwNaqU1.js} +0 -0
  172. /package/payload/server/public/assets/{chunk-Pqm5yXtL.js → chunk-CAM3fms7.js} +0 -0
  173. /package/payload/server/public/assets/{cytoscape.esm-TvRJ2tGX.js → cytoscape.esm-mZ4wTuB7.js} +0 -0
  174. /package/payload/server/public/assets/{defaultLocale-CRZydyG6.js → defaultLocale-D_VMtRaY.js} +0 -0
  175. /package/payload/server/public/assets/{init-B8gtcn7T.js → init-vVpfz1D6.js} +0 -0
  176. /package/payload/server/public/assets/{katex-RxgSu_dy.js → katex-DaHGEgm7.js} +0 -0
  177. /package/payload/server/public/assets/{path-DZF-JdEe.js → path-CuyvWNAH.js} +0 -0
  178. /package/payload/server/public/assets/{preload-helper-CQ36nxok.js → preload-helper-TKOBYGYD.js} +0 -0
  179. /package/payload/server/public/assets/{rough.esm-6CnTHTkH.js → rough.esm-JX0wREDd.js} +0 -0
@@ -1,6 +0,0 @@
1
- import{o as e}from"./chunk-Pqm5yXtL.js";import{c as t,i as n,l as r,n as i,o as a,r as o,t as s,u as c}from"./brand-Dh5UlVO2.js";import{a as l,c as u,d,f,i as p,l as m,n as h,o as g,p as _,r as v,s as y,t as b,u as x}from"./audio-attachment-mime-DzbKNqbH.js";import{i as S,n as C,r as w,t as T}from"./useSelectionMode-FIodJKzS.js";import{t as E}from"./Checkbox-8elc7oXU.js";var D=t(`chevron-down`,[[`path`,{d:`m6 9 6 6 6-6`,key:`qrunsl`}]]),O=t(`copy`,[[`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`,key:`17jyea`}],[`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`,key:`zix9uf`}]]),k=t(`paperclip`,[[`path`,{d:`m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551`,key:`1miecu`}]]),A=t(`square-check-big`,[[`path`,{d:`M21 10.656V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h12.344`,key:`2acyp4`}],[`path`,{d:`m9 11 3 3L22 4`,key:`1pflzl`}]]),j=t(`square-plus`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M8 12h8`,key:`1wcyev`}],[`path`,{d:`M12 8v8`,key:`napkw2`}]]),M=r(),N=e(c(),1);function P(){let[e,t]=(0,N.useState)(null),[n,r]=(0,N.useState)(null),[i,a]=(0,N.useState)(`loading`),[o,s]=(0,N.useState)(``),[c,l]=(0,N.useState)(null),[f,p]=(0,N.useState)(null),[h,g]=(0,N.useState)(!1),[_,v]=(0,N.useState)(null),y=(0,N.useMemo)(()=>u(),[]),b=(0,N.useMemo)(()=>m(),[]),[S,C]=(0,N.useState)(null),w=(0,N.useRef)(y||``),T=(0,N.useRef)(null),E=(0,N.useRef)(null),D=(0,N.useRef)(!1),O=(0,N.useRef)(null),[k,A]=(0,N.useState)(`request-link`),[j,M]=(0,N.useState)(null),P=(0,N.useRef)(null),F=(0,N.useRef)(null);(0,N.useEffect)(()=>{try{let e=sessionStorage.getItem(`maxy_session`);e&&(F.current=e)}catch{}},[]);let I=(0,N.useCallback)(e=>{T.current=e,t(e);try{sessionStorage.setItem(`maxy_session`,e)}catch{}a(`chat`)},[]),L=(0,N.useCallback)(()=>{T.current=null;try{sessionStorage.removeItem(`maxy_session`)}catch{}t(null),a(`auth-required`),A(`request-link`)},[]),R=(0,N.useCallback)(async e=>{A(`verifying`);try{let t=w.current,n=await fetch(`/api/access/verify-token`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({token:e,agentSlug:t})});if(window.history.replaceState({},``,window.location.pathname),n.ok){let e=await n.json().catch(()=>({}));return e?.displayName&&M({displayName:e.displayName,contactValue:``,expiresAt:null,status:`active`}),!0}return A(`verify-failed`),!1}catch{return A(`verify-failed`),!1}},[]),z=(0,N.useCallback)(async()=>{if(T.current)return T.current;if(E.current)return E.current;let e=(async()=>{try{let e=F.current,n=await fetch(`/api/session`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({session_id:x(),...y?{agent:y}:{},...b?{group_slug:b}:{},...e?{session_key:e}:{}})});if(!n.ok){let e=await n.json().catch(()=>({error:``}));return d&&console.error(`[session] POST /api/session failed: ${n.status} ${n.statusText}`,e),n.status===404?r(e.error||`Agent not found`):n.status===503&&r(e.error||`Service unavailable`),null}let i=await n.json();if(i.auth_required){i.agent_id&&(w.current=i.agent_id),s(i.displayName||``),i.agentImage&&l(i.agentImage),i.agentImageShape&&p(i.agentImageShape),i.showAgentName&&g(i.showAgentName),i.branding&&v(i.branding),a(`auth-required`);let e=new URLSearchParams(window.location.search).get(`token`);return e?await R(e)&&window.location.reload():A(`request-link`),null}T.current=i.session_key,t(i.session_key),i.displayName&&s(i.displayName),i.agentImage&&l(i.agentImage),i.agentImageShape&&p(i.agentImageShape),i.showAgentName&&g(i.showAgentName),i.branding&&v(i.branding),a(`chat`),i.resumed&&i.messages&&(D.current=!0,O.current=i.messages),i.group&&C({groupSlug:i.groupSlug,groupName:i.groupName,participants:i.participants??[]});try{sessionStorage.setItem(`maxy_session`,i.session_key)}catch{}return i.session_key}catch(e){return d&&console.error(`[session] fetch /api/session threw:`,e),r(`Unable to connect. Please check your connection and try again.`),null}finally{E.current=null}})();return E.current=e,e},[y,b,R]);return{sessionId:e,cacheKeyRef:T,sessionError:n,pageState:i,setPageState:a,agentDisplayName:o,agentImage:c,agentImageShape:f,showAgentName:h,agentSlug:y,branding:_,resolvedSlugRef:w,ensureSession:z,startNewSession:(0,N.useCallback)(async()=>{T.current=null,E.current=null,F.current=null,D.current=!1,O.current=null,t(null),r(null);try{sessionStorage.removeItem(`maxy_session`)}catch{}await z()},[z]),enterChat:I,enterGate:L,resumedRef:D,resumeMessagesRef:O,gateState:k,setGateState:A,grantInfo:j,setGrantInfo:M,gateCacheKeyRef:P,groupContext:S,groupSlug:b}}async function*F(e){let t=e.body?.getReader();if(!t)throw Error(`No response stream`);let n=new TextDecoder,r=``;try{for(;;){let{done:e,value:i}=await t.read();if(e)break;r+=n.decode(i,{stream:!0});let a=r.split(`
2
- `);r=a.pop();for(let e of a){if(!e.startsWith(`data: `))continue;let t=e.slice(6);if(t===`[DONE]`)continue;let n;try{n=JSON.parse(t)}catch{continue}yield n}}}finally{t.cancel()}}function I({cacheKeyRef:e,ensureSession:t,sessionError:n,pageState:r,inputRef:i,agentSlug:a}){let[o,s]=(0,N.useState)([]),[c,l]=(0,N.useState)(!1),u=(0,N.useRef)(!1),f=e=>{u.current=e,l(e)},p=(0,N.useCallback)(async(o,c)=>{let l=c?.hidden??!1,p=c?.files??[];if(!o&&p.length===0||u.current)return!1;f(!0);let m=p.map(e=>({filename:e.name,mimeType:e.type})),h={role:`visitor`,content:c?.displayContent??o,attachments:m.length>0?m:void 0,timestamp:Date.now(),hidden:l},g;s(e=>{let t=[...e,h,{role:`maxy`,content:``,timestamp:Date.now()}];return g=t.length-1,t});try{let n=await t();if(!n)throw Error(`session`);let r=e=>{if(p.length>0){let t=new FormData;t.append(`message`,o),t.append(`session_key`,e),a&&t.append(`agent`,a);for(let e of p)t.append(`attachments`,e);return{body:t,headers:{}}}return{body:JSON.stringify({message:o,session_key:e,...a?{agent:a}:{}}),headers:{"Content-Type":`application/json`}}},{body:i,headers:c}=r(n),l=await fetch(`/api/chat`,{method:`POST`,headers:c,body:i});if(l.status===401){e.current=null;try{sessionStorage.removeItem(`maxy_session`)}catch{}d&&console.warn(`[session-expired] stale key cleared, retrying with fresh session`);let n=await t();if(!n)throw Error(`session`);({body:i,headers:c}=r(n)),l=await fetch(`/api/chat`,{method:`POST`,headers:c,body:i})}if(!l.ok){let e=await l.json().catch(()=>({}));throw Error(e.error||`Something went wrong`)}let u=``,f=``,m=()=>{f&&(u+=f,f=``,s(e=>{let t=[...e];return t[g]={...t[g],content:u},t}))},h=setInterval(m,60);try{for await(let e of F(l)){if(e.error)throw Object.assign(Error(e.error),{fromSSE:!0});e.text&&(f+=e.text),e.type===`component`&&(m(),s(t=>{let n=[...t],r={...n[g]},i=[...r.components||[]];return i.push({name:e.name,data:e.data,submitted:!1}),n[g]={...r,components:i},n}))}}finally{clearInterval(h),m()}return!0}catch(e){if(d&&console.error(`[chat] sendMessage failed:`,e),r===`auth-required`)return!1;let t=e instanceof Error?e.message:String(e),i=e instanceof Error&&e.fromSSE;return s(e=>{let r=[...e];return r[g]={...r[g],content:i?t:t===`session`?n??`I'm having trouble connecting right now. Try refreshing the page.`:`Sorry, I hit a snag. Try again in a moment.`},r}),!1}finally{f(!1),r===`chat`&&i.current?.focus()}},[e,t,n,r,i,a]);return{messages:o,setMessages:s,isStreaming:c,sendMessage:p,handleComponentSubmit:(0,N.useCallback)((e,t,n)=>{s(n=>{let r=[...n],i={...r[e]},a=[...i.components||[]];return a[t]={...a[t],submitted:!0},r[e]={...i,components:a},r}),p(n,{hidden:!0})},[p])}}function L({cacheKeyRef:e,groupSlug:t,isStreaming:n,setMessages:r}){let i=(0,N.useRef)(new Date().toISOString()),a=(0,N.useRef)(!0);(0,N.useEffect)(()=>{let e=()=>{a.current=document.visibilityState===`visible`};return document.addEventListener(`visibilitychange`,e),()=>document.removeEventListener(`visibilitychange`,e)},[]);let o=(0,N.useCallback)(async()=>{let n=e.current;if(!(!n||!t))try{let e=await fetch(`/api/group/messages?session_key=${encodeURIComponent(n)}&since=${encodeURIComponent(i.current)}`);if(!e.ok)return;let t=await e.json();if(!t.messages||t.messages.length===0)return;let a=t.messages[t.messages.length-1];a.timestamp&&(i.current=new Date(a.timestamp).toISOString()),r(e=>{let n=new Set(e.filter(e=>e.messageId).map(e=>e.messageId)),r=t.messages.filter(e=>!n.has(e.messageId)).map(e=>({role:e.role,content:e.content,timestamp:e.timestamp,senderName:e.senderName??void 0,senderVisitorId:e.senderVisitorId??void 0,messageId:e.messageId}));if(r.length===0)return e;let i=[...e,...r];return i.sort((e,t)=>e.timestamp-t.timestamp),i})}catch(e){console.error(`[group-poll] failed: ${e instanceof Error?e.message:String(e)}`)}},[e,t,r]);(0,N.useEffect)(()=>{if(!t)return;let e,r=!1;function i(){if(r)return;let t=a.current?3e3:3e4;e=setTimeout(async()=>{n||await o(),i()},t)}return i(),()=>{r=!0,clearTimeout(e)}},[t,n,o])}var R=a();function z({gateState:e,setGateState:t,grantInfo:n,resolvedSlugRef:r}){let[i,a]=(0,N.useState)(``),[o,s]=(0,N.useState)(!1),[c,l]=(0,N.useState)(null);async function u(e){e.preventDefault();let n=i.trim().toLowerCase();if(!n){l(`Enter the email you were invited on.`);return}s(!0),l(null);try{let e=await fetch(`/api/access/request-magic-link`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({contactValue:n,agentSlug:r.current})});if(e.status===429){l((await e.json().catch(()=>({})))?.error||`Too many requests. Try again later.`);return}t(`request-sent`)}catch{l(`Could not reach the server. Check your connection and try again.`)}finally{s(!1)}}return(0,R.jsxs)(`div`,{className:`access-gate`,children:[e===`verifying`&&(0,R.jsxs)(`div`,{className:`access-gate-message`,children:[(0,R.jsx)(`h2`,{children:`Verifying your link…`}),(0,R.jsx)(`p`,{children:`This takes a moment.`})]}),e===`verify-failed`&&(0,R.jsxs)(`div`,{className:`access-gate-message`,children:[(0,R.jsx)(`h2`,{children:`That link did not work`}),(0,R.jsx)(`p`,{children:`It may have expired, already been used, or been for a different agent. You can request a fresh one below.`}),(0,R.jsx)(w,{onClick:()=>{t(`request-link`),l(null)},children:`Request a new link`})]}),e===`request-link`&&(0,R.jsxs)(`form`,{className:`access-gate-form`,onSubmit:u,children:[(0,R.jsx)(`h2`,{children:n?.displayName?`Welcome back, ${n.displayName}`:`Sign in`}),(0,R.jsx)(`p`,{children:`Enter the email you were invited on and we will send you a fresh link.`}),(0,R.jsx)(`label`,{htmlFor:`access-email`,children:`Email`}),(0,R.jsx)(`input`,{id:`access-email`,type:`email`,inputMode:`email`,autoComplete:`email`,value:i,onChange:e=>a(e.target.value),disabled:o}),c&&(0,R.jsx)(`p`,{className:`access-gate-error`,children:c}),(0,R.jsx)(w,{type:`submit`,disabled:o||!i.trim(),children:o?`Sending…`:`Send me a link`})]}),e===`request-sent`&&(0,R.jsxs)(`div`,{className:`access-gate-message`,children:[(0,R.jsx)(`h2`,{children:`Check your email`}),(0,R.jsx)(`p`,{children:`If that address is on the invite list, a fresh link is on the way. It expires in 15 minutes.`}),(0,R.jsx)(w,{onClick:()=>{t(`request-link`),a(``),l(null)},children:`Try a different email`})]})]})}function B(e){let t=new Date(e),n=new Date,r=String(t.getHours()).padStart(2,`0`),i=String(t.getMinutes()).padStart(2,`0`),a=String(t.getSeconds()).padStart(2,`0`);return t.toDateString()===n.toDateString()?`${r}:${i}:${a}`:`${String(t.getDate()).padStart(2,`0`)}-${String(t.getMonth()+1).padStart(2,`0`)}-${t.getFullYear()} ${r}:${i}:${a}`}function ee({messages:e,isStreaming:t,sessionError:n,selectionMode:r,selectedItems:i,toggleSelectItem:a,remainingSuggestions:o,onSuggestionClick:s,isAtBottom:c,setIsAtBottom:l,isGroup:u,sessionId:d}){let[f,m]=(0,N.useState)(new Set),[h,g]=(0,N.useState)(new Set),v=(0,N.useRef)(null),y=(0,N.useRef)(null),b=(0,N.useRef)(null),x=(0,N.useRef)(!1),C=(0,N.useRef)(!1),T=(0,N.useRef)(!1),O=(0,N.useRef)(0),k=(0,N.useRef)(!1),A=(0,N.useRef)(new Map);k.current=t,(0,N.useEffect)(()=>{t&&!x.current&&c&&(C.current=!0)},[t,c]),(0,N.useEffect)(()=>{if(!C.current&&!c){x.current=t,T.current=!1;return}if(x.current&&!t&&b.current&&y.current){let e=b.current;if(e.offsetHeight>y.current.clientHeight){C.current=!1,T.current=!0,e.scrollIntoView({behavior:`smooth`,block:`start`}),x.current=t;return}}(c||C.current)&&!T.current&&v.current?.scrollIntoView({behavior:`smooth`}),x.current&&!t&&(C.current=!1),x.current=t},[e,c,t]),(0,N.useEffect)(()=>{let e=y.current;if(!e)return;let t=()=>{let t=e.scrollTop;k.current&&t<O.current&&(C.current=!1),O.current=t,l(e.scrollHeight-e.scrollTop-e.clientHeight<80)};return e.addEventListener(`scroll`,t,{passive:!0}),t(),()=>e.removeEventListener(`scroll`,t)},[l]),(0,N.useEffect)(()=>{function e(){g(e=>{let t=new Set;return A.current.forEach((n,r)=>{n.isConnected&&(f.has(r)?e.has(r)&&t.add(r):n.scrollHeight>n.clientHeight+2&&t.add(r))}),e.size===t.size&&[...e].every(e=>t.has(e))?e:t})}e();let t=new ResizeObserver(e);return A.current.forEach(e=>t.observe(e)),()=>t.disconnect()},[e.length,f]);let j=[...e].sort((e,t)=>e.timestamp-t.timestamp);(0,N.useEffect)(()=>{r&&console.log(`[selection] entered`,{sessionId:d??`unknown`,order:j.map(e=>({ts:e.timestamp,role:e.role,id:e.messageId}))})},[r]);let M=j.reduce((e,t,n)=>t.role===`maxy`&&!t.hidden?n:e,-1);return(0,R.jsxs)(`div`,{className:`chat-messages-wrap`,children:[r&&(0,R.jsx)(`div`,{className:`selection-overlay-band`}),(0,R.jsxs)(`div`,{className:`chat-messages`,ref:y,children:[n&&e.length===0&&(0,R.jsx)(`div`,{className:`session-error`,children:(0,R.jsx)(`p`,{children:n})}),j.map((e,n)=>{if(e.hidden)return null;let o=t&&n===j.length-1,s=`${e.timestamp}_${e.role}`,c=i.has(s);return(0,R.jsxs)(`div`,{ref:n===M?b:void 0,className:`message ${e.role}${c?` selected`:``}`,children:[r&&!o&&(0,R.jsx)(`div`,{className:`message-select-check`,children:(0,R.jsx)(E,{checked:c,onChange:()=>a(s)})}),(0,R.jsxs)(`div`,{className:`bubble`,children:[u&&e.role===`visitor`&&e.senderName&&(0,R.jsx)(`span`,{className:`bubble-sender`,children:e.senderName}),e.role===`visitor`&&e.content?(()=>{let t=f.has(n),r=h.has(n);return(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(`div`,{ref:e=>{e?A.current.set(n,e):A.current.delete(n)},className:t?`bubble-content`:`bubble-content clamped${r?` overflowing`:``}`,children:e.content}),r&&(0,R.jsx)(`div`,{className:`bubble-expand`,children:(0,R.jsx)(w,{variant:`icon`,className:t?`expanded`:``,onClick:()=>m(e=>{let t=new Set(e);return t.has(n)?t.delete(n):t.add(n),t}),"aria-label":t?`Collapse message`:`Expand message`,children:(0,R.jsx)(D,{size:14})})})]})})():e.content?(0,R.jsx)(p,{content:e.content,timestamp:B(e.timestamp)}):(0,R.jsxs)(`span`,{className:`typing-indicator`,children:[(0,R.jsx)(`span`,{className:`typing-dot`}),(0,R.jsx)(`span`,{className:`typing-dot`}),(0,R.jsx)(`span`,{className:`typing-dot`})]}),e.attachments&&e.attachments.length>0&&(0,R.jsx)(`div`,{className:`message-attachments`,children:e.attachments.map((e,t)=>(0,R.jsxs)(`span`,{className:`message-attachment-chip no-action`,children:[e.mimeType===`application/pdf`?(0,R.jsx)(S,{size:12}):e.mimeType.startsWith(`text/`)?(0,R.jsx)(_,{size:12}):null,(0,R.jsx)(`span`,{children:e.filename})]},t))}),e.role===`visitor`&&(0,R.jsx)(`span`,{className:`message-timestamp`,children:B(e.timestamp)})]})]},n)}),!t&&o.length>0&&(0,R.jsx)(`div`,{className:`chat-suggestions`,children:o.map(e=>(0,R.jsx)(w,{variant:`suggestion`,onClick:()=>s(e),children:e},e))}),(0,R.jsx)(`div`,{ref:v})]}),!c&&(0,R.jsx)(`button`,{className:`scroll-to-bottom`,onClick:()=>v.current?.scrollIntoView({behavior:`smooth`}),"aria-label":`Scroll to bottom`,children:(0,R.jsx)(D,{size:18})})]})}function te({selectedItems:e,messages:t,isStreaming:n,copySelected:r,selectAll:i,exitSelection:a,showCopyToast:o}){let[s,c]=(0,N.useState)(!1),l=(0,N.useRef)(null),u=(0,N.useRef)(!1);function d(e){let n=e.lastIndexOf(`_`),r=e.slice(0,n),i=e.slice(n+1),a=parseInt(r,10);return t.find(e=>e.timestamp===a&&e.role===i)?.content??``}function f(e,t){return parseInt(e.slice(0,e.lastIndexOf(`_`)),10)-parseInt(t.slice(0,t.lastIndexOf(`_`)),10)}function p(){let e=[...t].sort((e,t)=>e.timestamp-t.timestamp),n=[];for(let t of e){if(t.hidden||!t.content)continue;let e=t.role===`visitor`?`Visitor`:`Maxy`;n.push(`${e}:\n${t.content}`)}return n.join(`
3
-
4
- ---
5
-
6
- `)}N.useEffect(()=>{if(!s)return;let e=e=>{e.target.closest(`.selection-copy-wrap`)||c(!1)};return document.addEventListener(`pointerdown`,e),()=>document.removeEventListener(`pointerdown`,e)},[s]);function m(){l.current!==null&&(clearTimeout(l.current),l.current=null)}let h=[...t].sort((e,t)=>e.timestamp-t.timestamp),g=h.reduce((e,t,r)=>(t.hidden||n&&r===h.length-1||e.push(`${t.timestamp}_${t.role}`),e),[]),_=g.length>0&&g.every(t=>e.has(t));return(0,R.jsx)(`div`,{className:`chat-input-area`,children:(0,R.jsxs)(`div`,{className:`selection-bar`,children:[(0,R.jsxs)(`div`,{className:`selection-bar-left`,children:[(0,R.jsxs)(`button`,{type:`button`,className:`selection-select-all`,onClick:()=>i(g),disabled:g.length===0,"aria-label":_?`Deselect all`:`Select all`,title:_?`Deselect all`:`Select all`,children:[(0,R.jsx)(A,{size:16}),(0,R.jsx)(`span`,{children:_?`Deselect all`:`Select all`})]}),(0,R.jsxs)(`span`,{className:`selection-count`,children:[e.size,` Selected`]})]}),(0,R.jsxs)(`div`,{className:`selection-copy-wrap`,children:[(0,R.jsxs)(`button`,{type:`button`,className:`selection-copy`,onPointerDown:()=>{if(s){c(!1);return}u.current=!1,l.current=setTimeout(()=>{u.current=!0,c(!0),l.current=null},500)},onPointerUp:m,onPointerLeave:m,onPointerCancel:m,onClick:async()=>{u.current||await r(d,f)},children:[(0,R.jsx)(O,{size:18}),(0,R.jsx)(`span`,{children:`Copy`})]}),s&&(0,R.jsx)(`div`,{className:`copy-menu`,children:(0,R.jsx)(`button`,{type:`button`,className:`copy-menu-item`,onClick:async()=>{let e=p();e&&o(await T(e)),a()},children:`Copy all`})})]}),(0,R.jsx)(`button`,{type:`button`,className:`selection-cancel`,onClick:a,children:`Cancel`})]})})}var V=44,H=(0,N.forwardRef)(function({value:e,onChange:t,placeholder:n,disabled:r},i){let a=(0,N.useRef)(null),o=(0,N.useRef)(!1),s=(0,N.useCallback)((e,t)=>{let n=e.closest(`.chat-form`);n&&(n.dataset.expanded=t>V?`true`:``)},[]),c=(0,N.useCallback)(e=>{if(o.current)return;let t=window.innerHeight*.75;e.style.height=`auto`;let n=Math.min(e.scrollHeight,t);e.style.height=`${n}px`,e.style.overflowY=e.scrollHeight>t?`auto`:`hidden`,s(e,n)},[s]);return(0,N.useImperativeHandle)(i,()=>({focus(){a.current?.focus()},resetHeight(){if(!a.current)return;o.current=!1,a.current.style.height=``,a.current.style.overflowY=``;let e=a.current.closest(`.chat-form`);e&&(e.dataset.expanded=``)},getOffsetHeight(){return a.current?.offsetHeight??36},setHeight(e){a.current&&(o.current=!0,a.current.style.height=`${e}px`,s(a.current,e))}})),(0,R.jsx)(`textarea`,{ref:a,className:`chat-input`,rows:1,value:e,onChange:e=>{t(e.target.value),c(e.target)},onKeyDown:e=>{e.key===`Enter`&&!e.shiftKey&&!e.nativeEvent.isComposing&&(e.preventDefault(),e.currentTarget.closest(`form`)?.requestSubmit())},placeholder:n,disabled:r,"aria-label":n||`Type a message...`})});function U({inputRef:e}){let t=(0,N.useRef)(null);function n(n){e.current&&(n.preventDefault(),n.target.setPointerCapture(n.pointerId),t.current={startY:n.clientY,startH:e.current.getOffsetHeight()})}function r(n){if(!t.current||!e.current)return;let r=t.current.startY-n.clientY,i=window.innerHeight*.75,a=Math.max(36,Math.min(i,t.current.startH+r));e.current.setHeight(a)}function i(){t.current=null}return(0,R.jsx)(`div`,{className:`chat-resize-handle`,onPointerDown:n,onPointerMove:r,onPointerUp:i,"aria-label":`Resize input`,children:(0,R.jsx)(`div`,{className:`chat-resize-handle-bar`})})}function ne({input:e,setInput:t,placeholder:n,isStreaming:r,pendingFiles:i,setPendingFiles:a,attachError:o,setAttachError:s,isDragOver:c,setIsDragOver:u,inputRef:d,onSubmit:p,onSendVoiceNote:m}){let x=(0,N.useRef)(null),C=h(),T=C.state===`recording`||C.state===`paused`||C.state===`sending`,E=!T&&!r&&!e.trim()&&i.length===0;async function D(){let e=await C.send();if(!e)return;let t=e.type===`audio/ogg`?`.ogg`:e.type===`audio/mp4`?`.m4a`:`.webm`;m(new File([e],`voice-note${t}`,{type:e.type}))}function O(e){s(null);let t=e.find(e=>!b(e.type,y));if(t){s(`Unsupported file type: "${t.type}". Supported: images, PDF, plain text, markdown, CSV, calendar, voice notes.`);return}let n=e.find(e=>e.size>g);if(n){s(`"${n.name}" exceeds the 50 MB limit.`);return}a(t=>[...t,...e].slice(0,5))}function A(e){e.preventDefault(),u(!0)}function j(){u(!1)}function M(e){e.preventDefault(),u(!1),O([...e.dataTransfer.files])}return(0,R.jsxs)(`div`,{className:`chat-input-area`,children:[(0,R.jsx)(`input`,{ref:x,type:`file`,multiple:!0,accept:l,style:{display:`none`},onChange:e=>{e.target.files&&O([...e.target.files]),e.target.value=``}}),i.length>0&&(0,R.jsx)(`div`,{className:`attachment-strip`,children:i.map((e,t)=>(0,R.jsxs)(`div`,{className:`attachment-chip`,children:[e.type.startsWith(`image/`)?(0,R.jsx)(`img`,{src:URL.createObjectURL(e),alt:e.name,className:`attachment-chip-thumb`}):e.type.startsWith(`audio/`)?(0,R.jsx)(f,{size:14}):e.type===`application/pdf`?(0,R.jsx)(S,{size:14}):(0,R.jsx)(_,{size:14}),(0,R.jsx)(`span`,{className:`attachment-chip-name`,children:e.name}),(0,R.jsx)(`button`,{type:`button`,className:`attachment-chip-remove`,onClick:()=>a(e=>e.filter((e,n)=>n!==t)),"aria-label":`Remove ${e.name}`,children:`×`})]},t))}),o&&(0,R.jsx)(`p`,{className:`attach-error`,children:o}),C.state===`error`&&C.errorMessage&&(0,R.jsxs)(`p`,{className:`voice-error`,role:`alert`,children:[(0,R.jsx)(f,{size:14}),C.errorMessage]}),(0,R.jsx)(U,{inputRef:d}),T?(0,R.jsx)(`div`,{className:`chat-form voice-active`,children:(0,R.jsx)(v,{state:C.state,elapsedSeconds:C.elapsedSeconds,waveform:C.waveform,onTogglePause:C.togglePause,onDiscard:C.discard,onSend:D})}):(0,R.jsxs)(`form`,{className:`chat-form${c?` drag-over`:``}`,onSubmit:p,onDragOver:A,onDragLeave:j,onDrop:M,onPaste:e=>{let t=e.clipboardData?.items;if(!t)return;let n=[];for(let e of t){if(e.kind!==`file`)continue;let t=e.getAsFile();if(!t)continue;let r=t.type.split(`/`)[1]?.replace(`jpeg`,`jpg`)||`png`;n.push(new File([t],`pasted-image-${Date.now()}.${r}`,{type:t.type}))}n.length>0&&O(n)},children:[(0,R.jsx)(w,{variant:`icon`,type:`button`,onClick:()=>x.current?.click(),disabled:r,"aria-label":`Attach file`,children:(0,R.jsx)(k,{size:14})}),(0,R.jsx)(H,{ref:d,value:e,onChange:t,placeholder:n}),E?(0,R.jsx)(w,{variant:`send`,type:`button`,onClick:C.start,disabled:r,"aria-label":`Record voice note`,children:(0,R.jsx)(f,{size:14})}):(0,R.jsx)(w,{variant:`send`,type:`submit`,disabled:r||!e.trim()&&i.length===0,"aria-label":`Send message`,children:(0,R.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,R.jsx)(`line`,{x1:`5`,y1:`12`,x2:`19`,y2:`12`}),(0,R.jsx)(`polyline`,{points:`12 5 19 12 12 19`})]})})]})]})}var W=[];function G(){let[e,t]=(0,N.useState)(``),[r,a]=(0,N.useState)([]),[c,l]=(0,N.useState)(!1),[u,d]=(0,N.useState)(null),[f,p]=(0,N.useState)(W),[m,h]=(0,N.useState)(!0),g=(0,N.useRef)(null),{selectionMode:_,selectedItems:v,copyToast:y,exitSelection:b,enterSelection:x,toggleSelectItem:S,selectAll:w,copySelected:T,showCopyToast:E}=C(),D=P(),{sessionId:O,cacheKeyRef:k,sessionError:M,pageState:F,agentDisplayName:B,agentImage:V,agentImageShape:H,showAgentName:U,branding:G,agentSlug:re,ensureSession:K,startNewSession:ie,resumedRef:ae,resumeMessagesRef:q,groupContext:J,groupSlug:oe}=D,{messages:Y,setMessages:X,isStreaming:Z,sendMessage:Q}=I({cacheKeyRef:k,ensureSession:K,sessionError:M,pageState:F,inputRef:g,agentSlug:re});L({cacheKeyRef:k,groupSlug:oe,isStreaming:Z,setMessages:X}),(0,N.useEffect)(()=>{let e=!1;return(async()=>{let t=await K();if(!e&&t&&ae.current&&q.current&&q.current.length>0){let e=q.current.map(e=>({role:e.role,content:e.content,timestamp:e.timestamp}));e.sort((e,t)=>e.timestamp-t.timestamp),X(e),q.current=null}})(),()=>{e=!0}},[]),(0,N.useEffect)(()=>{F===`chat`&&g.current?.focus()},[F]),(0,N.useEffect)(()=>{if(F!==`chat`)return;history.pushState({maxyChat:!0},``);function e(){history.pushState({maxyChat:!0},``)}return window.addEventListener(`popstate`,e),()=>window.removeEventListener(`popstate`,e)},[F]),(0,N.useEffect)(()=>{if(!G)return;let e=document.body;if(G.primaryColor&&(e.style.setProperty(`--sage`,G.primaryColor),e.style.setProperty(`--sage-hover`,G.primaryColor),e.style.setProperty(`--sage-subtle`,G.primaryColor+`14`),e.style.setProperty(`--sage-glow`,G.primaryColor+`26`)),document.title=G.name,G.primaryColor){let e=document.querySelector(`meta[name="theme-color"]`);e||(e=document.createElement(`meta`),e.name=`theme-color`,document.head.appendChild(e)),e.content=G.primaryColor}if(G.faviconUrl){let e=document.querySelector(`link[rel="icon"]`);e||(e=document.createElement(`link`),e.rel=`icon`,document.head.appendChild(e)),e.href=G.faviconUrl}},[G]),(0,N.useEffect)(()=>{function e(e){e.key===`Escape`&&_&&b()}return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[_,b]);function se(){Z||(X([]),p(W),ie())}function $(e){if(!e&&r.length===0||Z)return;X(e=>e.map(e=>e.components?.some(e=>!e.submitted)?{...e,components:e.components.map(e=>e.submitted?e:{...e,submitted:!0})}:e)),p(t=>t.filter(t=>t!==e)),h(!0);let n=[...r];t(``),a([]),d(null),Q(e,{files:n})}function ce(t){t.preventDefault(),$(e.trim()),g.current?.resetHeight()}let le=G?.name||B||s.productName,ue=J?void 0:`Chat with ${le}.`;return(0,R.jsxs)(`div`,{className:`chat-page`,children:[(0,R.jsxs)(`header`,{className:`chat-header`,children:[(0,R.jsx)(`img`,{src:V||G?.logoUrl||n,alt:G?.name||s.productName,className:`chat-logo${V&&H===`circle`?` chat-logo--circle`:``}${V&&H===`rounded`?` chat-logo--rounded`:``}`,onError:e=>{e.target.src=G?.logoUrl||n}}),(0,R.jsxs)(`div`,{className:`chat-header-text`,children:[U!==`none`&&(0,R.jsx)(`h1`,{className:`chat-tagline`,children:J?.groupName||U&&B||G?.name||s.productName}),(0,R.jsx)(`p`,{className:`chat-intro`,children:J?`${J.participants.length} participants`:G?.tagline||``}),(0,R.jsx)(`p`,{className:`chat-ai-indicator`,children:`AI assistant`})]}),F===`chat`&&!_&&(0,R.jsxs)(`div`,{className:`chat-header-actions`,children:[(0,R.jsx)(`button`,{className:`chat-header-action`,onClick:se,disabled:Z,title:`New conversation`,"aria-label":`New conversation`,children:(0,R.jsx)(j,{size:16})}),(0,R.jsx)(`button`,{className:`chat-header-action`,onClick:x,title:`Select messages`,"aria-label":`Select messages`,children:(0,R.jsx)(A,{size:16})})]})]}),F===`loading`&&(0,R.jsx)(`div`,{className:`gate-wrap`,children:(0,R.jsx)(`div`,{className:`gate-loading`,children:(0,R.jsx)(`span`,{className:`spinner`})})}),F===`auth-required`&&(0,R.jsx)(z,{gateState:D.gateState,setGateState:D.setGateState,grantInfo:D.grantInfo,resolvedSlugRef:D.resolvedSlugRef}),F===`chat`&&(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(ee,{messages:Y,isStreaming:Z,sessionError:M,selectionMode:_,selectedItems:v,toggleSelectItem:S,remainingSuggestions:f,onSuggestionClick:$,isAtBottom:m,setIsAtBottom:h,isGroup:!!J,sessionId:O}),_?(0,R.jsx)(te,{selectedItems:v,messages:Y,isStreaming:Z,copySelected:T,selectAll:w,exitSelection:b,showCopyToast:E}):(0,R.jsx)(ne,{input:e,setInput:t,placeholder:ue,isStreaming:Z,pendingFiles:r,setPendingFiles:a,attachError:u,setAttachError:d,isDragOver:c,setIsDragOver:l,inputRef:g,onSubmit:ce,onSendVoiceNote:async e=>{t(``),a([]),d(null),await Q(``,{files:[e],displayContent:`[Voice note]`})||a(t=>[...t,e])}})]}),y&&(0,R.jsx)(`span`,{className:`copy-toast${y===`failed`?` copy-toast-failed`:``}`,children:y===`copied`?`Copied`:`Copy failed`}),(0,R.jsxs)(`footer`,{className:`chat-footer`,children:[(0,R.jsxs)(`a`,{href:o,children:[i,` `,`↗`]}),O&&(0,R.jsxs)(`span`,{style:{opacity:.35,fontSize:`10px`,fontFamily:`monospace`,marginLeft:`1rem`},children:[`Conversation · `,O.slice(0,8)]})]})]})}(0,M.createRoot)(document.getElementById(`root`)).render((0,R.jsx)(G,{}));
@@ -1 +0,0 @@
1
- import"./chunk-K5T4RW27-Du1PXXBU.js";import{n as e}from"./chunk-2KRD3SAO-BpqPMhoA.js";export{e as createRadarServices};
@@ -1 +0,0 @@
1
- import{h as e}from"./src-BoaldmnP.js";import"./chunk-ICPOFSXX-BTX5POFr.js";import"./dist-Dbh7HrZX.js";import"./chunk-5PVQY5BW-DtLwXsPH.js";import"./chunk-U2HBQHQK-CXmFUKgn.js";import"./chunk-BSJP7CBP-mDosdzGs.js";import"./chunk-ZZ45TVLE-Dp4Q5Y-f.js";import"./chunk-55IACEB6-6FMJQGXG.js";import"./chunk-EDXVE4YY-B7c-9Emg.js";import"./chunk-X2U36JSP-Bj8-8Wkz.js";import"./chunk-5FUZZQ4R-g2FgZF3D.js";import"./chunk-ENJZ2VHE-Cqhhncox.js";import"./chunk-336JU56O-DgXHlVU_.js";import{i as t,n,r,t as i}from"./chunk-OYMX7WX6-DQ7_oVJn.js";var a={parser:n,get db(){return new i(2)},renderer:r,styles:t,init:e(e=>{e.state||={},e.state.arrowMarkerAbsolute=e.arrowMarkerAbsolute},`init`)};export{a as diagram};
@@ -1 +0,0 @@
1
- import"./chunk-K5T4RW27-Du1PXXBU.js";import{n as e}from"./chunk-ORNJ4GCN-DeTLQ_LD.js";export{e as createTreeViewServices};
@@ -1 +0,0 @@
1
- import"./chunk-K5T4RW27-Du1PXXBU.js";import{n as e}from"./chunk-LIHQZDEY-xf1rbZtf.js";export{e as createTreemapServices};
@@ -1 +0,0 @@
1
- import"./chunk-K5T4RW27-Du1PXXBU.js";import{n as e}from"./chunk-CIAEETIT-DhBxewpQ.js";export{e as createWardleyServices};