dorkos 0.111.0 → 0.114.0

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 (192) hide show
  1. package/core-extensions/hello-world/index.ts +2 -2
  2. package/dist/bin/cli.js +13549 -1698
  3. package/dist/browser/native/package-manifest.json +1 -1
  4. package/dist/browser/source-manifest.json +1 -1
  5. package/dist/client/assets/{AboutPage-BKzqcz_A.js → AboutPage-mErbIY0l.js} +1 -1
  6. package/dist/client/assets/{ActivityErrorState-BXOZg9ve.js → ActivityErrorState-AlI4F82u.js} +1 -1
  7. package/dist/client/assets/{ActivityPage-CFN2MEAV.js → ActivityPage-CHUqb-8c.js} +1 -1
  8. package/dist/client/assets/{ActivityRow-CujXx04u.js → ActivityRow-Baqdr6cP.js} +1 -1
  9. package/dist/client/assets/AdapterIcon-C_fBZXHQ.js +1 -0
  10. package/dist/client/assets/{AdapterSetupWizard-3Bt9HEWF.js → AdapterSetupWizard-BL70qy2J.js} +2 -2
  11. package/dist/client/assets/{AgentRequestCard-CAaBGC0L.js → AgentRequestCard-CcMh6JyE.js} +3 -3
  12. package/dist/client/assets/{AppearancePage-BEe-Gssu.js → AppearancePage-t9SnSRs-.js} +1 -1
  13. package/dist/client/assets/{AttentionSignalRow-Cp0AJs73.js → AttentionSignalRow-jlgWaSSd.js} +1 -1
  14. package/dist/client/assets/{BaseTanStackRouterDevtoolsPanel-B-iktbLX-CN1iW2cB.js → BaseTanStackRouterDevtoolsPanel-B-iktbLX-DHr_AhUv.js} +3 -3
  15. package/dist/client/assets/{BlintzCanvas-B7qs2dxW.js → BlintzCanvas-Bq4e7n__.js} +1 -1
  16. package/dist/client/assets/{CanvasCsvContent-DiB5zXOC.js → CanvasCsvContent-OR226CLS.js} +2 -2
  17. package/dist/client/assets/CanvasFileContent-BejM-9Wg.js +2 -0
  18. package/dist/client/assets/CanvasModel3dContent-BD-eCVsX.js +2 -0
  19. package/dist/client/assets/{CodeMirrorDiff-BJhflpbC.js → CodeMirrorDiff-D7BWMOim.js} +1 -1
  20. package/dist/client/assets/{CodeMirrorEditor-SkdXRKSN.js → CodeMirrorEditor-BodwsIG7.js} +1 -1
  21. package/dist/client/assets/{CommitmentList-DsEn6iK1.js → CommitmentList-YVb3yTvO.js} +1 -1
  22. package/dist/client/assets/{CommitmentsPage-W5h0GjRr.js → CommitmentsPage-DL_jJQbw.js} +1 -1
  23. package/dist/client/assets/{ConnectionAccessLists-DVFqelmV.js → ConnectionAccessLists-BPsgToSR.js} +1 -1
  24. package/dist/client/assets/{ConnectionsPage-CZhSh2mO.js → ConnectionsPage-D7vlYnjf.js} +2 -2
  25. package/dist/client/assets/{ConventionPage-DcDBP-vR.js → ConventionPage-BR7I3AdE.js} +3 -3
  26. package/dist/client/assets/{ExtensionPageRoute-mKN8Jqyx.js → ExtensionPageRoute-CzXGvVRm.js} +2 -2
  27. package/dist/client/assets/{FloatingTanStackRouterDevtools-CqogiFob-CGXG-x9g.js → FloatingTanStackRouterDevtools-CqogiFob-BV3h0rFa.js} +1 -1
  28. package/dist/client/assets/HandlePage-B33P0oh0.js +1 -0
  29. package/dist/client/assets/{HeartbeatPage-DFf7Udem.js → HeartbeatPage-CfjZuvtQ.js} +1 -1
  30. package/dist/client/assets/{LexicalField-vJ284m2H.js → LexicalField-Cc6wFZAZ.js} +2 -2
  31. package/dist/client/assets/{ManagesPage-mDuaA2JT.js → ManagesPage-BxHSb65X.js} +1 -1
  32. package/dist/client/assets/{Marketplace-BoiupH2Z.js → Marketplace-EgG6JmBG.js} +4 -4
  33. package/dist/client/assets/{MarketplaceSourcesView-krw9hUyu.js → MarketplaceSourcesView-D9kq9hl6.js} +1 -1
  34. package/dist/client/assets/{McpAppFrame-DmHduNgp.js → McpAppFrame-6zxszx9A.js} +2 -2
  35. package/dist/client/assets/{McpSigninBody-DoY09n4J.js → McpSigninBody-DBWSc6bm.js} +1 -1
  36. package/dist/client/assets/{Model3dViewer-BZEdR7-9.js → Model3dViewer-CgeJ2v-F.js} +1 -1
  37. package/dist/client/assets/NamePage-MfybpnwN.js +1 -0
  38. package/dist/client/assets/NewDirectMessageMenu-BnBO4aGI.js +1 -0
  39. package/dist/client/assets/{NotificationsPage-CybW1eIb.js → NotificationsPage-C5aRITCd.js} +1 -1
  40. package/dist/client/assets/{OpenMeshSwitch-DrmjsCDY.js → OpenMeshSwitch-UKMQeS7-.js} +2 -2
  41. package/dist/client/assets/{OperatorIdentityForm-byU2FeSU.js → OperatorIdentityForm-DH2au7QU.js} +1 -1
  42. package/dist/client/assets/{PermissionsPage-CP3kbqyJ.js → PermissionsPage-BgLLmdg2.js} +1 -1
  43. package/dist/client/assets/{PersonalityPopover-BLsjgaum.js → PersonalityPopover-vLDfndfo.js} +1 -1
  44. package/dist/client/assets/PhotoPage-BgyB3B2_.js +1 -0
  45. package/dist/client/assets/{PreviewRefusedNotice-fTN8MJ1h.js → PreviewRefusedNotice-Dh3SCC_A.js} +1 -1
  46. package/dist/client/assets/{PromptSuggestionChips-BZOaY5Tx.js → PromptSuggestionChips-EO_0zbzq.js} +1 -1
  47. package/dist/client/assets/{ReportsToPopover-B6JvfRt3.js → ReportsToPopover-C9Ceg1AW.js} +1 -1
  48. package/dist/client/assets/{RoomSurface-BM0QO_av.js → RoomSurface-B8ec3_at.js} +8 -8
  49. package/dist/client/assets/{RoomsPage-B-NOCLXC.js → RoomsPage-pPw8vrsB.js} +1 -1
  50. package/dist/client/assets/{RunsOnPopover-D1jQQatj.js → RunsOnPopover-CJoSj8w7.js} +1 -1
  51. package/dist/client/assets/RuntimeSetupDialog-Cqn_Grel.js +1 -0
  52. package/dist/client/assets/SessionsPage-BASybh9v.js +1 -0
  53. package/dist/client/assets/{SkillsPage-CPTFjEUe.js → SkillsPage-DL0909et.js} +1 -1
  54. package/dist/client/assets/{TasksPage-BRUqs3v5.js → TasksPage-BwUW6dia.js} +1 -1
  55. package/dist/client/assets/{ToolsPage-C25kL822.js → ToolsPage-C3xfGWdb.js} +2 -2
  56. package/dist/client/assets/{TopologyGraph-of6Cp5Kj.js → TopologyGraph-D7Ik1Xt6.js} +1 -1
  57. package/dist/client/assets/{TourHost-zwSilkjm.js → TourHost-Db0fxAXo.js} +1 -1
  58. package/dist/client/assets/{UnlinkDialog-BgwHAqdW.js → UnlinkDialog-TTK5Z_QD.js} +1 -1
  59. package/dist/client/assets/{WidgetErrorCard-BQwrR6PJ.js → WidgetErrorCard-D--KcgW1.js} +24 -29
  60. package/dist/client/assets/_shell-CGWsN6Gs.js +88 -0
  61. package/dist/client/assets/{_shell._home-BkP0NafS.js → _shell._home-CzpVyTzo.js} +1 -1
  62. package/dist/client/assets/{_shell._home.activity-BO_2ciGK.js → _shell._home.activity-BbWquOK0.js} +1 -1
  63. package/dist/client/assets/_shell._home.index-Cg0nRFMN.js +3 -0
  64. package/dist/client/assets/_shell._home.tasks-BpoOVihw.js +1 -0
  65. package/dist/client/assets/{_shell._home.workspaces-B34Uk1SP.js → _shell._home.workspaces-DVF1rM3t.js} +1 -1
  66. package/dist/client/assets/_shell.channels-CCGSs0Bn.js +10 -0
  67. package/dist/client/assets/{_shell.connections-BNbeBrxQ.js → _shell.connections-0_34lXIQ.js} +1 -1
  68. package/dist/client/assets/{_shell.feedback-requests-B71l48KB.js → _shell.feedback-requests-C6alx2ox.js} +1 -1
  69. package/dist/client/assets/_shell.marketplace-Dp-p8E3V.js +1 -0
  70. package/dist/client/assets/_shell.marketplace_.sources-SN2Fb1eb.js +1 -0
  71. package/dist/client/assets/{_shell.session-ybAc0bwn.js → _shell.session-Bt3jdQdD.js} +15 -15
  72. package/dist/client/assets/_shell.team-BIwJNdkd.js +28 -0
  73. package/dist/client/assets/_shell.x._extensionId-Bjn-MKsP.js +1 -0
  74. package/dist/client/assets/_shell.x._extensionId_._-Bjn-MKsP.js +1 -0
  75. package/dist/client/assets/{agent-browser-Cs8abkZs.js → agent-browser-CO5haI5Y.js} +1 -1
  76. package/dist/client/assets/{banner-CU2Nh3Kv.js → banner-Dh5mO27l.js} +2 -2
  77. package/dist/client/assets/{card-BTgwskmX.js → card-CKZCX8ol.js} +1 -1
  78. package/dist/client/assets/{file-DlQX-hKl.js → file-CMPbZedq.js} +1 -1
  79. package/dist/client/assets/{file-exclamation-point-Dg2iCyPM.js → file-exclamation-point-emLeXvmw.js} +1 -1
  80. package/dist/client/assets/file-text-9a0DChCq.js +6 -0
  81. package/dist/client/assets/{find-latest-widget-fence-BGiexm6r.js → find-latest-widget-fence--3kWMT1F.js} +3 -3
  82. package/dist/client/assets/{git-branch-Dq_w3Iyx.js → git-branch-hfu8isLA.js} +1 -1
  83. package/dist/client/assets/{heart-Bp14wOx6.js → heart-SRafwnSd.js} +1 -1
  84. package/dist/client/assets/{highlighted-body-KPVGNVTW-kD1HK_wk.js → highlighted-body-KPVGNVTW-Dxwd3mxT.js} +1 -1
  85. package/dist/client/assets/index-3GDQSKet.js +1 -0
  86. package/dist/client/assets/{index-BA-nPsLw.js → index-BB18IeC2.js} +1 -1
  87. package/dist/client/assets/index-BBQMqcO_.js +1 -0
  88. package/dist/client/assets/{index-CcV9S7cO.js → index-BDfoFNcA.js} +1 -1
  89. package/dist/client/assets/{index-DNglWRBB.js → index-BNn3-chz.js} +1 -1
  90. package/dist/client/assets/{index-Dm53S0up.js → index-BRGOMmOM.js} +1 -1
  91. package/dist/client/assets/{index-5OyUurJr.js → index-BTXBESRm.js} +1 -1
  92. package/dist/client/assets/{index-B8R78Nnj.js → index-BTreBsWa.js} +2 -2
  93. package/dist/client/assets/{index-kHXlTLUx.js → index-BUVKya1M.js} +8 -8
  94. package/dist/client/assets/{index-aDNEGBTK.js → index-BYp9xcmS.js} +1 -1
  95. package/dist/client/assets/{index-DnmtTIUB.js → index-BokDvdOG.js} +1 -1
  96. package/dist/client/assets/{index-BxrZwUJp.js → index-C3xuhmPa.js} +2 -2
  97. package/dist/client/assets/{index-B6_ikFYj.js → index-C4nEz6I-.js} +1 -1
  98. package/dist/client/assets/{index-Dr-0P6rd.js → index-C63bLSO4.js} +267 -262
  99. package/dist/client/assets/{index-Cc280M3V.js → index-C7BTAdSc.js} +1 -1
  100. package/dist/client/assets/{index-knGXyHhh.js → index-CAlXjm0N.js} +1 -1
  101. package/dist/client/assets/index-CTxEG5rD.js +1 -0
  102. package/dist/client/assets/{index-gu2JYnOq.js → index-CbFo-7kM.js} +1 -1
  103. package/dist/client/assets/{index-DKlxz3u7.js → index-Ch41JOI2.js} +1 -1
  104. package/dist/client/assets/{index-BxUoa3yn.js → index-CkknQ52Q.js} +5 -5
  105. package/dist/client/assets/{index-C-DN0Vg_.js → index-Cow815Qa.js} +1 -1
  106. package/dist/client/assets/{index-DO6a5Hey.js → index-Cp7oifSs.js} +1 -1
  107. package/dist/client/assets/{index--3UwFg2s.js → index-CpYs0Lli.js} +1 -1
  108. package/dist/client/assets/{index-C99173Ze.js → index-D0Nd2LA-.js} +1 -1
  109. package/dist/client/assets/{index-BeBmUxo_.js → index-D67aFWxz.js} +1 -1
  110. package/dist/client/assets/index-DFEF2MFy.css +1 -0
  111. package/dist/client/assets/{index-CAhJGlSW.js → index-DIlV08Vw.js} +1 -1
  112. package/dist/client/assets/{index-BHsZlKfx.js → index-DLNwEM2Q.js} +1 -1
  113. package/dist/client/assets/{index-PxSRtDpP.js → index-DLZi_nae.js} +1 -1
  114. package/dist/client/assets/{index-LszRbEbX.js → index-DRqEM5Wb.js} +1 -1
  115. package/dist/client/assets/{index-B0OZehWe.js → index-DX-j3Ul0.js} +1 -1
  116. package/dist/client/assets/{index-CKCMjqcu.js → index-DX7V94qe.js} +1 -1
  117. package/dist/client/assets/{index-C_uYJzKi.js → index-D_Wc_qTa.js} +3 -3
  118. package/dist/client/assets/{index-DW6zqLoM.js → index-DdsKmfEH.js} +1 -1
  119. package/dist/client/assets/{index-DHUToGjI.js → index-DmTI5Hye.js} +1 -1
  120. package/dist/client/assets/{index-DKQDBIWq.js → index-YswfjpmW.js} +1 -1
  121. package/dist/client/assets/{index-DSPs6GF4.js → index-g_5oOlG6.js} +1 -1
  122. package/dist/client/assets/{index-DS-thlE8.js → index-iD0epmn3.js} +1 -1
  123. package/dist/client/assets/{index-CDWsIVX7.js → index-lJc8v0Z3.js} +1 -1
  124. package/dist/client/assets/index-t7gsOfUI.js +1 -0
  125. package/dist/client/assets/kickoff-xkt4LpIP.js +3 -0
  126. package/dist/client/assets/{layers-B0oCOfxz.js → layers-Cy8Tme6i.js} +1 -1
  127. package/dist/client/assets/{lightbulb-D80IzMqz.js → lightbulb-tNm7gLYi.js} +1 -1
  128. package/dist/client/assets/{markdown-content-aNzh-54y.js → markdown-content-CoK3F0c0.js} +1 -1
  129. package/dist/client/assets/{mention-pill-BxMK0xuY.js → mention-pill-Bgs_yujj.js} +1 -1
  130. package/dist/client/assets/{message-square-off-D-CJXmTq.js → message-square-off-CF2Bzen3.js} +1 -1
  131. package/dist/client/assets/{owner-notice-BkrTEMDm.js → owner-notice-cgCWG4hG.js} +1 -1
  132. package/dist/client/assets/{package-CoTlAnXZ.js → package-DE8sQpId.js} +1 -1
  133. package/dist/client/assets/{page-container-CPxW5T9E.js → page-container-BoXmmBSs.js} +1 -1
  134. package/dist/client/assets/{paperclip-Cj1P85mz.js → paperclip-IgDeVFea.js} +1 -1
  135. package/dist/client/assets/{radio-DICkTr_p.js → radio-BzTkFBDD.js} +1 -1
  136. package/dist/client/assets/{room-files-source-BywWQPBN.js → room-files-source-CIIDTSTA.js} +2 -2
  137. package/dist/client/assets/{rotate-ccw-clock-cx5RyP4l.js → rotate-ccw-clock-CGcSqHnk.js} +1 -1
  138. package/dist/client/assets/{rotate-cw-DrGRGSwy.js → rotate-cw-DaduzRfP.js} +1 -1
  139. package/dist/client/assets/{scroll-area-XlDz8u4m.js → scroll-area-DW0-Liri.js} +1 -1
  140. package/dist/client/assets/{search-x-LIKnWE64.js → search-x-Sme5ElYi.js} +1 -1
  141. package/dist/client/assets/{shield-x-DioB6qH_.js → shield-x-Bh5xap8N.js} +1 -1
  142. package/dist/client/assets/{soul-file-C7YgkNET.js → soul-file-NcuTUIiB.js} +1 -1
  143. package/dist/client/assets/{table-P4N5xQn2.js → table-BEtvgYmW.js} +1 -1
  144. package/dist/client/assets/{use-connector-management-pgVHbXoO.js → use-connector-management-Cohvs7jD.js} +1 -1
  145. package/dist/client/assets/{use-delete-binding-DxEiOjjh.js → use-delete-binding-C19umm_i.js} +1 -1
  146. package/dist/client/assets/{use-dev-links-BImQrE6g.js → use-dev-links-DRnLdl--.js} +1 -1
  147. package/dist/client/assets/{use-external-adapter-catalog-D8KHMSZU.js → use-external-adapter-catalog-BOn9aj72.js} +1 -1
  148. package/dist/client/assets/use-full-activity-feed-BpQANbns.js +1 -0
  149. package/dist/client/assets/use-is-below-desktop-5LlietdR.js +1 -0
  150. package/dist/client/assets/{use-jump-back-in-D9tBJ4v5.js → use-jump-back-in-CkFErfWY.js} +3 -3
  151. package/dist/client/assets/{use-mesh-topology-DBeqzUoy.js → use-mesh-topology-CIsDeAY0.js} +1 -1
  152. package/dist/client/assets/use-panel-tab-placements-AFrWTQ0a.js +1 -0
  153. package/dist/client/assets/use-pending-read-Dol8yvIx.js +1 -0
  154. package/dist/client/assets/{use-personality-commit-Gfoi__sT.js → use-personality-commit-fUtuc2lC.js} +1 -1
  155. package/dist/client/assets/{use-promo-activation-Bv1gnqKq.js → use-promo-activation-Dxt-1yuT.js} +3 -3
  156. package/dist/client/assets/{use-pulse-freshness-SFRdnugS.js → use-pulse-freshness-DRRM5Hza.js} +1 -1
  157. package/dist/client/assets/{use-room-follow-claim-Cf20JiJ_.js → use-room-follow-claim-huRfaa4e.js} +1 -1
  158. package/dist/client/assets/{use-roving-tab-list-3Pb7ps4E.js → use-roving-tab-list-BZIBAGgJ.js} +1 -1
  159. package/dist/client/assets/{use-session-canvas-BaXuEhw8.js → use-session-canvas-CZIsr9qL.js} +4 -4
  160. package/dist/client/assets/{use-session-diagnostics-7xxJ6zQQ.js → use-session-diagnostics-C41hV7rK.js} +4 -4
  161. package/dist/client/assets/{use-unclaimed-chats-D4k-EK_f.js → use-unclaimed-chats-BMlFQ2v1.js} +1 -1
  162. package/dist/client/index.html +2 -2
  163. package/dist/server/index.js +123677 -118335
  164. package/dist/server/index.js.map +2 -2
  165. package/package.json +7 -8
  166. package/dist/client/assets/AdapterIcon-BdM7K69W.js +0 -1
  167. package/dist/client/assets/CanvasFileContent-CDNfnWMW.js +0 -2
  168. package/dist/client/assets/CanvasModel3dContent-C7EINmuq.js +0 -2
  169. package/dist/client/assets/HandlePage-Bun58ePo.js +0 -1
  170. package/dist/client/assets/NamePage-CXyClUPJ.js +0 -1
  171. package/dist/client/assets/NewDirectMessageMenu-BjqYwnXW.js +0 -1
  172. package/dist/client/assets/PhotoPage-hn5b42qN.js +0 -1
  173. package/dist/client/assets/RuntimeSetupDialog-ufwCvCJB.js +0 -1
  174. package/dist/client/assets/SessionsPage-CBE1KHYg.js +0 -1
  175. package/dist/client/assets/_shell-bcx2y7VT.js +0 -88
  176. package/dist/client/assets/_shell._home.index-B-OFwU9u.js +0 -3
  177. package/dist/client/assets/_shell._home.tasks-jAQczH7j.js +0 -1
  178. package/dist/client/assets/_shell.channels-CGzsxvXD.js +0 -10
  179. package/dist/client/assets/_shell.marketplace-3YAsNaRk.js +0 -1
  180. package/dist/client/assets/_shell.marketplace_.sources-cI3nNBXr.js +0 -1
  181. package/dist/client/assets/_shell.team-BE_60YS4.js +0 -28
  182. package/dist/client/assets/_shell.x._extensionId-jiyP599c.js +0 -1
  183. package/dist/client/assets/_shell.x._extensionId_._-jiyP599c.js +0 -1
  184. package/dist/client/assets/index-B2JJZXsq.js +0 -1
  185. package/dist/client/assets/index-BAjUSKoJ.js +0 -1
  186. package/dist/client/assets/index-BpDY3eoD.js +0 -1
  187. package/dist/client/assets/index-ExcAk4pE.css +0 -1
  188. package/dist/client/assets/index-F7Lcwnfm.js +0 -1
  189. package/dist/client/assets/kickoff-Btbza7bw.js +0 -3
  190. package/dist/client/assets/use-full-activity-feed-2o7GNAMe.js +0 -1
  191. package/dist/client/assets/use-is-below-desktop-DBet5zg_.js +0 -1
  192. package/dist/client/assets/use-pending-read-DmrlNHS0.js +0 -1
@@ -1,6 +1,6 @@
1
- import{a4 as de,g8 as _,cQ as ue,g9 as V,b1 as Q,af as me,aj as he,r as d,ag as fe,j as s,cV as ge,cW as Oe,cX as xe,cY as _e,ga as q,cZ as ve,B as x,aP as ye,da as Ee,F as be,Z as Re,c_ as pe,gb as Te,eJ as M,gc as X,gd as Ne}from"./index-Dr-0P6rd.js";import{M as Ce}from"./markdown-content-aNzh-54y.js";import{F as Se}from"./file-exclamation-point-Dg2iCyPM.js";/**
1
+ import{a4 as de,gq as _,cT as ue,gr as V,b4 as Q,af as me,aj as he,r as d,ag as fe,j as s,cY as ge,cZ as Oe,c_ as xe,c$ as _e,gs as q,d0 as ve,B as x,aS as ye,dd as Ee,F as Re,Z as be,d1 as pe,gt as Te,ek as M,gu as X,gv as Ne}from"./index-C63bLSO4.js";import{M as Ce}from"./markdown-content-CoK3F0c0.js";import{F as Se}from"./file-exclamation-point-emLeXvmw.js";/**
2
2
  * @license lucide-react v1.48.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
5
5
  * See the LICENSE file in the root directory of this source tree.
6
- */const J={name:"share-2",size:24,node:[["circle",{cx:"18",cy:"5",r:"3",key:"gq8acd"}],["circle",{cx:"6",cy:"12",r:"3",key:"w7nqdw"}],["circle",{cx:"18",cy:"19",r:"3",key:"1xt0gg"}],["line",{x1:"8.59",x2:"15.42",y1:"13.51",y2:"17.49",key:"47mynk"}],["line",{x1:"15.41",x2:"8.59",y1:"6.51",y2:"10.49",key:"1n3mei"}]]};J.node;const Fe=de(J),De=["CONFLICT","COPY_INTO_SELF","DIR_NOT_EMPTY","NOT_FOUND","REFUSE_ROOT","OUTSIDE_BOUNDARY"];function we(e){const t=_(e);return t!==void 0&&De.includes(t)?t:void 0}const Ae="Can’t copy a folder into itself",w="ROOM_REPO_CONFIG_UNSAFE",L="Room files are locked: their git settings could run a program. See the DorkOS log.",Ie={CONFLICT:"That name already exists",COPY_INTO_SELF:Ae,DIR_NOT_EMPTY:"This folder isn’t empty",NOT_FOUND:"That item no longer exists",REFUSE_ROOT:"Can’t change the top folder",OUTSIDE_BOUNDARY:"That’s outside the folders DorkOS can use"};function st(e,t){const o=we(e);ue.error(o?Ie[o]:t)}const Me=new Map([["ROOM_UPLOAD_TOO_MANY_FILES",`Nothing was uploaded. One upload takes up to ${V} files.`],["FILE_TOO_LARGE","A file is bigger than this room allows, so nothing changed."],["REPO_CAP_EXCEEDED","This room’s files are full, so nothing changed. Delete something first."],["MAIN_CHECKOUT_DIRTY","Changes are paused. Somebody changed these files outside DorkOS. See the warning above."],["MERGE_IN_FLIGHT","Somebody else is changing these files. Nothing changed. Try again in a moment."],["PEOPLE_ONLY","Only a person can change files here. Agents bring work in by merging."],["ROOM_FILE_PATH_INVALID","That name can’t be used in room files, so nothing changed."],["ROOM_FILE_NOT_READABLE","That can’t be changed here."],["ROOM_FILE_NOT_FOUND","That’s gone from the room’s files, so nothing changed. The list is refreshed."],["ATTACHMENT_NOT_FOUND","That file is no longer in this room’s chat."],["ROOM_HAS_NO_REPO","This room no longer has its own files."],["ROOM_REPOS_DISABLED","Room files are turned off on this install, so nothing changed."],["ROOM_REPO_GIT_UNAVAILABLE","Room files need git, and git isn’t installed on this computer."],["ROOM_NOT_FOUND","This room no longer exists."],["ROOM_ARCHIVED","This room is archived, so its files can’t be changed."],[w,L]]),Le=new Set(["FILE_TOO_LARGE","ROOM_FILE_PATH_INVALID","ROOM_FILE_NOT_READABLE",w]);function ke(e){return e.replace(/`([^`]*)`/g,"“$1”").trim()}function je(e){const t=_(e);if(t===void 0)return;const o=Me.get(t);if(o!==void 0)return k(e)??o}function k(e){const t=_(e);if(!(t===void 0||!Le.has(t))&&!(!(e instanceof Error)||e.message.trim()===""))return ke(e.message)}function nt(e){return`“${e}” already exists there, so nothing changed. Pick another name.`}function ot(e){if(_(e)!==w)return;const t=e.body,o=typeof(t==null?void 0:t.command)=="string"&&t.command!==""?t.command:null;return{message:k(e)??L,command:o}}const Pe="—";function Ue(e){if(e==null)return{label:Pe,title:null};const t=Q(e.at);return{label:`${e.author} · ${t}`,title:`${e.subject} · ${e.author}, ${t}`}}function ze(e){return/\.(md|markdown|mdx)$/i.test(e)}function Be(e){return e<1024?`${e} bytes`:e<1024*1024?`${Math.round(e/1024)} KB`:`${(e/(1024*1024)).toFixed(1)} MB`}function Ke(e,t){return e.editable&&e.save!==void 0&&t!==void 0&&t.body.kind==="text"}function it({source:e,path:t,isNew:o=!1,onCreated:a,onClose:c}){const r=e.read,i=me(),n=["file-explorer","preview",e.scopeKey,t],m=he({queryKey:n,queryFn:()=>r(t),enabled:t!==null&&r!==void 0&&!o}),h=o&&t!==null?{path:t,size:0,commit:null,lastCommit:null,body:{kind:"text",text:""}}:m.data,[v,j]=d.useState(!1),[P,U]=d.useState(null),A=e.showToEveryone,Z=d.useCallback(async l=>{if(A!==void 0){j(!0),U(null);try{await A(l),c()}catch(u){U(u instanceof Error&&u.message.trim().length>0?u.message:"Couldn’t reach DorkOS. Check your connection and try again.")}finally{j(!1)}}},[A,c]),[g,N]=d.useState(o),[b,R]=d.useState(""),[z,C]=d.useState({text:"",commit:null}),[y,O]=d.useState(null),[I,f]=d.useState(null),[B,p]=d.useState(!1),[ee,S]=d.useState(!1),K=d.useRef(null),$=d.useRef(null),H=d.useRef(!1),E=g&&b!==z.text,te=E||g&&o,Y=ee&&E,F=d.useCallback(()=>{N(!1),R(""),C({text:"",commit:null}),O(null),f(null),p(!1),S(!1)},[]),[se,ne]=d.useState(t);se!==t&&(ne(t),(g||b!==""||y!==null||I!==null||B)&&F(),o&&N(!0));const T=fe({mutationFn:l=>e.save({path:t,baseCommit:l.baseCommit,text:l.text}),onSuccess:(l,u)=>{if(l.status==="saved"){C({text:u.text,commit:l.commit}),O(null),f(null),p(!0),o&&(a==null||a()),i.invalidateQueries({queryKey:n}),i.invalidateQueries({queryKey:["file-explorer","tree",e.scopeKey]});return}if(p(!1),l.status==="conflict"){O(ce=>({commit:l.commit,lastCommit:l.lastCommit,again:ce!==null})),f(null);return}O(null),f(l.reason)},onError:()=>{p(!1),O(null),f("Couldn’t save. Try again in a moment.")}}),G=Ke(e,h),oe=()=>{h===void 0||h.body.kind!=="text"||(R(h.body.text),C({text:h.body.text,commit:h.commit??null}),O(null),f(null),p(!1),N(!0))},ie=()=>{if(o){F(),c();return}N(!1),R(""),O(null),f(null),S(!1)},ae=async()=>{const l=await m.refetch();if(l.isError||l.data===void 0){f("Couldn’t get their version, so nothing changed.");return}const u=l.data;if(u.body.kind!=="text"){f(u.body.kind==="not-readable"?`${u.body.reason} Your text is still here. Save over theirs, or copy it out first.`:"Their version can’t be shown here, so nothing changed.");return}R(u.body.text),C({text:u.body.text,commit:u.commit??null}),O(null),f(null)},re=()=>{y!==null&&T.mutate({text:b,baseCommit:y.commit})},le=()=>{if(E){S(!0);return}F(),c()};return d.useEffect(()=>{var l,u;g?(l=K.current)==null||l.focus():H.current&&((u=$.current)==null||u.focus()),H.current=g},[g]),s.jsx(ge,{open:t!==null,onOpenChange:l=>!l&&le(),children:s.jsxs(Oe,{className:"max-h-[80vh] sm:max-w-2xl",children:[s.jsxs(xe,{children:[s.jsx(_e,{className:"truncate font-mono text-sm",children:t===null?"":q(t)}),s.jsx(ve,{className:"truncate text-xs",children:o&&t!==null?`${t} · New file`:He(h,t)})]}),!g&&(e.showToEveryone!==void 0||G)&&s.jsxs("div",{className:"flex justify-end gap-1 px-4",children:[e.showToEveryone!==void 0&&t!==null&&s.jsxs(x,{type:"button",variant:"ghost",size:"sm",disabled:v,className:"text-muted-foreground hover:text-foreground gap-1.5",onClick:()=>void Z(t),children:[s.jsx(Fe,{className:"size-(--size-icon-xs)"}),v?"Putting it there…":"Put on the canvas"]}),G&&s.jsxs(x,{ref:$,type:"button",variant:"ghost",size:"sm",className:"text-muted-foreground hover:text-foreground gap-1.5",onClick:oe,children:[s.jsx(ye,{className:"size-(--size-icon-xs)"}),"Edit"]})]}),P!==null&&s.jsx("p",{role:"status",className:"text-destructive px-4 pb-1 text-xs",children:P}),y!==null&&s.jsx($e,{conflict:y,onTakeTheirs:()=>void ae(),onKeepMine:re,busy:T.isPending||m.isFetching}),I!==null&&s.jsx("p",{role:"alert",className:"bg-destructive/10 text-destructive mx-4 rounded-md px-3 py-2 text-sm",children:I}),s.jsx(Ee,{className:"min-h-0 flex-1 overflow-auto",children:m.isPending&&!o?s.jsx("div",{className:"flex h-32 items-center justify-center",children:s.jsx(be,{size:"md",className:"text-muted-foreground",label:"Loading the file"})}):m.isError&&!o||h===void 0?s.jsx(D,{children:"This file couldn’t be read."}):g?s.jsx("textarea",{ref:K,"aria-label":`${t===null?"File":q(t)} contents`,value:b,onChange:l=>R(l.target.value),spellCheck:!1,autoComplete:"off",className:Re("text-foreground/90 border-border/60 bg-background field-sizing-content","focus-visible:border-ring focus-visible:ring-ring min-h-64 w-full","resize-none rounded-md border px-3 py-2 font-mono text-xs","whitespace-pre-wrap focus-visible:ring-[3px] focus-visible:outline-none")}):s.jsx(Ye,{file:h})}),g&&s.jsxs(pe,{className:"items-center gap-2 sm:justify-between",children:[s.jsx("span",{className:"text-muted-foreground text-xs","aria-live":"polite",children:T.isPending?"Saving…":Y?"You haven’t saved your changes.":B&&!E?"Saved":E?"Not saved yet":""}),s.jsx("span",{className:"flex gap-2",children:Y?s.jsxs(s.Fragment,{children:[s.jsx(x,{type:"button",variant:"ghost",size:"sm",onClick:()=>S(!1),children:"Keep editing"}),s.jsx(x,{type:"button",variant:"destructive",size:"sm",onClick:()=>{F(),c()},children:"Discard changes"})]}):s.jsxs(s.Fragment,{children:[s.jsx(x,{type:"button",variant:"ghost",size:"sm",onClick:ie,children:E?"Discard":o?"Cancel":"Done"}),s.jsx(x,{type:"button",size:"sm",disabled:!te||T.isPending||y!==null,onClick:()=>T.mutate({text:b,baseCommit:z.commit}),children:"Save"})]})})]})]})})}function $e({conflict:e,onTakeTheirs:t,onKeepMine:o,busy:a}){const c=e.lastCommit,r=c===null?"Somebody":c.author;return s.jsxs("div",{role:"alert",className:"border-border/60 bg-muted/40 mx-4 space-y-2 rounded-md border px-3 py-2 text-sm",children:[s.jsx("p",{children:e.again?`${r} changed this file again, so it still isn’t saved.`:`${r} changed this file while you edited, so nothing was saved.`}),c!==null&&s.jsxs("p",{className:"text-muted-foreground text-xs",children:[c.subject," · ",Q(c.at)]}),s.jsxs("div",{className:"flex flex-wrap gap-2",children:[s.jsx(x,{type:"button",variant:"outline",size:"sm",disabled:a,onClick:t,children:"Open their version"}),s.jsx(x,{type:"button",variant:"destructive",size:"sm",disabled:a,onClick:o,children:"Save mine over it"})]}),s.jsx("p",{className:"text-muted-foreground text-xs",children:"Opening theirs replaces what you typed here."})]})}function He(e,t){if(t===null)return"";const o=e===void 0?null:Ue(e.lastCommit);return o===null?t:`${t} · ${o.label}`}function Ye({file:e}){switch(e.body.kind){case"text":return ze(e.path)?s.jsx(Ce,{content:e.body.text,className:"text-sm",errorFallback:"This file couldn’t be displayed."}):s.jsx("pre",{className:"text-foreground/90 overflow-x-auto font-mono text-xs whitespace-pre",children:e.body.text});case"binary":return s.jsx(D,{children:"Only text files can be shown or edited here."});case"too-large":return s.jsxs(D,{children:["Files over ",Be(e.body.maxBytes)," aren’t shown here."]});case"not-readable":return s.jsx(D,{children:e.body.reason})}}function D({children:e}){return s.jsxs("div",{className:"text-muted-foreground flex h-32 flex-col items-center justify-center gap-2 px-6 text-center text-sm",children:[s.jsx(Se,{className:"size-(--size-icon-md) opacity-60"}),s.jsx("span",{children:e})]})}const Ge=new Map([["REQUEST_TOO_LARGE","Too much text to save here. Put big files in the room’s attachments."],["FILE_TOO_LARGE","This file is bigger than the room allows, so it wasn’t saved."],["REPO_CAP_EXCEEDED","This room’s files are full, so nothing was saved."],["MAIN_CHECKOUT_DIRTY","Saving is paused. Somebody changed these files outside DorkOS. See the warning above."],["MERGE_IN_FLIGHT","Somebody else is saving these files. Nothing was saved. Try again in a moment."],["PEOPLE_ONLY","Only a person can save here. Agents bring work in by merging."],["ROOM_FILE_NOT_TEXT","This file isn’t plain text, so it can’t be saved here."],["ROOM_FILE_PATH_INVALID","That file name points somewhere else, so nothing was saved."],["ROOM_FILE_NOT_FOUND","This file is gone from the room, so there was nothing to save over."],["ROOM_FILE_NOT_READABLE","This file can’t be edited here."],["ROOM_HAS_NO_REPO","This room no longer has its own files."],["ROOM_REPOS_DISABLED","Room files are turned off on this install, so nothing was saved."],["ROOM_REPO_GIT_UNAVAILABLE","Room files need git, and git isn’t installed on this computer."],["ROOM_NOT_FOUND","This room no longer exists."],["ROOM_ARCHIVED","This room is archived, so its files can’t be changed."],[w,L]]);function qe(e){return e===void 0?void 0:Ge.get(e)}function W(e){if(typeof e!="object"||e===null)return null;const t=Te.safeParse(e.body);return t.success?t.data.conflict:null}const Ve=15e3;function Qe(e,t,o){const a=JSON.stringify(M.entries(t));let c=0,r=null;const i=e.getQueryCache().subscribe(n=>{if(n.type!=="updated"||JSON.stringify(n.query.queryKey)!==a||r!==null)return;const m=Math.max(0,Ve-(Date.now()-c));r=setTimeout(()=>{r=null,c=Date.now(),o()},m)});return()=>{r!==null&&clearTimeout(r),i()}}function Xe(e){return{name:e.name,path:e.path,type:e.kind==="dir"?"dir":"file",size:e.size,isSymlink:e.kind==="symlink",lastCommit:e.lastCommit}}const Je=new Map([["ROOM_FILE_NOT_READABLE","This isn’t a file that can be shown here."],["ROOM_FILE_NOT_FOUND","This file is no longer in the room."]]);function at(e){const{transport:t,queryClient:o,roomId:a,canChange:c=!0}=e,r=async i=>{try{return{status:"changed",commit:(await i()).commit}}catch(n){return We(n,o,a)}};return{scopeKey:`room:${a}`,cwd:null,writable:c,provenance:!0,filtersHidden:!1,preview:"inline",async showToEveryone(i){await t.openRoomCanvasDocument(a,{type:"file",sourcePath:i})},editable:c,changes:c?{maxUploadFiles:V,upload:i=>r(()=>t.uploadRoomFiles(a,{dir:i.dir,baseCommit:i.baseCommit,replace:i.replace,files:i.files})),move:i=>r(()=>t.moveRoomFile(a,i)),remove:i=>r(()=>t.deleteRoomFile(a,i))}:void 0,async list(i){try{const n=await t.readRoomFiles(a,i===""?void 0:i);return{entries:n.entries.map(Xe),commit:n.commit}}catch(n){if(_(n)!==Ne)throw n;return{entries:[],absent:!0}}},async read(i){try{const n=await t.readRoomFileContent(a,i);return{path:n.path,size:n.size,lastCommit:n.lastCommit,commit:n.commit,body:n.body.kind==="text"?{kind:"text",text:n.body.text}:n.body.kind==="binary"?{kind:"binary"}:{kind:"too-large",maxBytes:n.body.maxBytes}}}catch(n){const m=Je.get(_(n)??"");if(m===void 0)throw n;return{path:i,size:0,lastCommit:null,commit:null,body:{kind:"not-readable",reason:m}}}},async save(i){try{const n=await t.saveRoomFile(a,{path:i.path,baseCommit:i.baseCommit,text:i.text});return{status:"saved",commit:n.commit,lastCommit:n.lastCommit,committed:n.committed}}catch(n){const m=_(n);if(m===X){const v=W(n);return v!==null?{status:"conflict",commit:v.commit,lastCommit:v.lastCommit}:{status:"refused",reason:"Somebody changed this file while you edited it. Nothing was saved. Reopen it to see theirs."}}m==="MAIN_CHECKOUT_DIRTY"&&o.invalidateQueries({queryKey:M.repoStatus(a)});const h=k(n)??qe(m);if(h===void 0)throw n;return{status:"refused",reason:h}}},events(i){return Qe(o,a,i)}}}function We(e,t,o){const a=_(e);if(a===X){const r=W(e);return r!==null?{status:"conflict",path:r.path,commit:r.commit,lastCommit:r.lastCommit}:{status:"refused",reason:"Somebody changed these files after you opened them. Nothing changed. Check, then try again."}}if(a==="ROOM_FILE_EXISTS"){const r=e instanceof Error?e.message.replace(/`([^`]*)`/g,"“$1”"):"";return{status:"exists",reason:r.trim()!==""?r:"Something with that name is already there."}}a==="MAIN_CHECKOUT_DIRTY"&&t.invalidateQueries({queryKey:M.repoStatus(o)});const c=je(e);if(c===void 0)throw e;return{status:"refused",reason:c}}export{Ae as C,it as F,Pe as N,Ve as R,ot as a,We as b,at as c,we as g,nt as n,Ue as p,je as r,st as t,Qe as w};
6
+ */const J={name:"share-2",size:24,node:[["circle",{cx:"18",cy:"5",r:"3",key:"gq8acd"}],["circle",{cx:"6",cy:"12",r:"3",key:"w7nqdw"}],["circle",{cx:"18",cy:"19",r:"3",key:"1xt0gg"}],["line",{x1:"8.59",x2:"15.42",y1:"13.51",y2:"17.49",key:"47mynk"}],["line",{x1:"15.41",x2:"8.59",y1:"6.51",y2:"10.49",key:"1n3mei"}]]};J.node;const Fe=de(J),De=["CONFLICT","COPY_INTO_SELF","DIR_NOT_EMPTY","NOT_FOUND","REFUSE_ROOT","OUTSIDE_BOUNDARY"];function we(e){const t=_(e);return t!==void 0&&De.includes(t)?t:void 0}const Ae="Can’t copy a folder into itself",w="ROOM_REPO_CONFIG_UNSAFE",L="Room files are locked: their git settings could run a program. See the DorkOS log.",Ie={CONFLICT:"That name already exists",COPY_INTO_SELF:Ae,DIR_NOT_EMPTY:"This folder isn’t empty",NOT_FOUND:"That item no longer exists",REFUSE_ROOT:"Can’t change the top folder",OUTSIDE_BOUNDARY:"That’s outside the folders DorkOS can use"};function st(e,t){const o=we(e);ue.error(o?Ie[o]:t)}const Me=new Map([["ROOM_UPLOAD_TOO_MANY_FILES",`Nothing was uploaded. One upload takes up to ${V} files.`],["FILE_TOO_LARGE","A file is bigger than this room allows, so nothing changed."],["REPO_CAP_EXCEEDED","This room’s files are full, so nothing changed. Delete something first."],["MAIN_CHECKOUT_DIRTY","Changes are paused. Somebody changed these files outside DorkOS. See the warning above."],["MERGE_IN_FLIGHT","Somebody else is changing these files. Nothing changed. Try again in a moment."],["PEOPLE_ONLY","Only a person can change files here. Agents bring work in by merging."],["ROOM_FILE_PATH_INVALID","That name can’t be used in room files, so nothing changed."],["ROOM_FILE_NOT_READABLE","That can’t be changed here."],["ROOM_FILE_NOT_FOUND","That’s gone from the room’s files, so nothing changed. The list is refreshed."],["ATTACHMENT_NOT_FOUND","That file is no longer in this room’s chat."],["ROOM_HAS_NO_REPO","This room no longer has its own files."],["ROOM_REPOS_DISABLED","Room files are turned off on this install, so nothing changed."],["ROOM_REPO_GIT_UNAVAILABLE","Room files need git, and git isn’t installed on this computer."],["ROOM_NOT_FOUND","This room no longer exists."],["ROOM_ARCHIVED","This room is archived, so its files can’t be changed."],[w,L]]),Le=new Set(["FILE_TOO_LARGE","ROOM_FILE_PATH_INVALID","ROOM_FILE_NOT_READABLE",w]);function ke(e){return e.replace(/`([^`]*)`/g,"“$1”").trim()}function je(e){const t=_(e);if(t===void 0)return;const o=Me.get(t);if(o!==void 0)return k(e)??o}function k(e){const t=_(e);if(!(t===void 0||!Le.has(t))&&!(!(e instanceof Error)||e.message.trim()===""))return ke(e.message)}function nt(e){return`“${e}” already exists there, so nothing changed. Pick another name.`}function ot(e){if(_(e)!==w)return;const t=e.body,o=typeof(t==null?void 0:t.command)=="string"&&t.command!==""?t.command:null;return{message:k(e)??L,command:o}}const Pe="—";function Ue(e){if(e==null)return{label:Pe,title:null};const t=Q(e.at);return{label:`${e.author} · ${t}`,title:`${e.subject} · ${e.author}, ${t}`}}function ze(e){return/\.(md|markdown|mdx)$/i.test(e)}function Be(e){return e<1024?`${e} bytes`:e<1024*1024?`${Math.round(e/1024)} KB`:`${(e/(1024*1024)).toFixed(1)} MB`}function $e(e,t){return e.editable&&e.save!==void 0&&t!==void 0&&t.body.kind==="text"}function it({source:e,path:t,isNew:o=!1,onCreated:a,onClose:c}){const r=e.read,i=me(),n=["file-explorer","preview",e.scopeKey,t],m=he({queryKey:n,queryFn:()=>r(t),enabled:t!==null&&r!==void 0&&!o}),h=o&&t!==null?{path:t,size:0,commit:null,lastCommit:null,body:{kind:"text",text:""}}:m.data,[v,j]=d.useState(!1),[P,U]=d.useState(null),A=e.showToEveryone,W=d.useCallback(async l=>{if(A!==void 0){j(!0),U(null);try{await A(l),c()}catch(u){U(u instanceof Error&&u.message.trim().length>0?u.message:"Couldn’t reach DorkOS. Check your connection and try again.")}finally{j(!1)}}},[A,c]),[g,N]=d.useState(o),[R,b]=d.useState(""),[z,C]=d.useState({text:"",commit:null}),[y,O]=d.useState(null),[I,f]=d.useState(null),[B,p]=d.useState(!1),[ee,S]=d.useState(!1),$=d.useRef(null),K=d.useRef(null),H=d.useRef(!1),E=g&&R!==z.text,te=E||g&&o,Y=ee&&E,F=d.useCallback(()=>{N(!1),b(""),C({text:"",commit:null}),O(null),f(null),p(!1),S(!1)},[]),[se,ne]=d.useState(t);se!==t&&(ne(t),(g||R!==""||y!==null||I!==null||B)&&F(),o&&N(!0));const T=fe({mutationFn:l=>e.save({path:t,baseCommit:l.baseCommit,text:l.text}),onSuccess:(l,u)=>{if(l.status==="saved"){C({text:u.text,commit:l.commit}),O(null),f(null),p(!0),o&&(a==null||a()),i.invalidateQueries({queryKey:n}),i.invalidateQueries({queryKey:["file-explorer","tree",e.scopeKey]});return}if(p(!1),l.status==="conflict"){O(ce=>({commit:l.commit,lastCommit:l.lastCommit,again:ce!==null})),f(null);return}O(null),f(l.reason)},onError:()=>{p(!1),O(null),f("Couldn’t save. Try again in a moment.")}}),G=$e(e,h),oe=()=>{h===void 0||h.body.kind!=="text"||(b(h.body.text),C({text:h.body.text,commit:h.commit??null}),O(null),f(null),p(!1),N(!0))},ie=()=>{if(o){F(),c();return}N(!1),b(""),O(null),f(null),S(!1)},ae=async()=>{const l=await m.refetch();if(l.isError||l.data===void 0){f("Couldn’t get their version, so nothing changed.");return}const u=l.data;if(u.body.kind!=="text"){f(u.body.kind==="not-readable"?`${u.body.reason} Your text is still here. Save over theirs, or copy it out first.`:"Their version can’t be shown here, so nothing changed.");return}b(u.body.text),C({text:u.body.text,commit:u.commit??null}),O(null),f(null)},re=()=>{y!==null&&T.mutate({text:R,baseCommit:y.commit})},le=()=>{if(E){S(!0);return}F(),c()};return d.useEffect(()=>{var l,u;g?(l=$.current)==null||l.focus():H.current&&((u=K.current)==null||u.focus()),H.current=g},[g]),s.jsx(ge,{open:t!==null,onOpenChange:l=>!l&&le(),children:s.jsxs(Oe,{className:"max-h-[80vh] sm:max-w-2xl",children:[s.jsxs(xe,{children:[s.jsx(_e,{className:"truncate font-mono text-sm",children:t===null?"":q(t)}),s.jsx(ve,{className:"truncate text-xs",children:o&&t!==null?`${t} · New file`:He(h,t)})]}),!g&&(e.showToEveryone!==void 0||G)&&s.jsxs("div",{className:"flex justify-end gap-1 px-4",children:[e.showToEveryone!==void 0&&t!==null&&s.jsxs(x,{type:"button",variant:"ghost",size:"sm",disabled:v,className:"text-muted-foreground hover:text-foreground gap-1.5",onClick:()=>void W(t),children:[s.jsx(Fe,{className:"size-(--size-icon-xs)"}),v?"Putting it there…":"Put on the canvas"]}),G&&s.jsxs(x,{ref:K,type:"button",variant:"ghost",size:"sm",className:"text-muted-foreground hover:text-foreground gap-1.5",onClick:oe,children:[s.jsx(ye,{className:"size-(--size-icon-xs)"}),"Edit"]})]}),P!==null&&s.jsx("p",{role:"status",className:"text-destructive px-4 pb-1 text-xs",children:P}),y!==null&&s.jsx(Ke,{conflict:y,onTakeTheirs:()=>void ae(),onKeepMine:re,busy:T.isPending||m.isFetching}),I!==null&&s.jsx("p",{role:"alert",className:"bg-destructive/10 text-destructive mx-4 rounded-md px-3 py-2 text-sm",children:I}),s.jsx(Ee,{className:"min-h-0 flex-1 overflow-auto",children:m.isPending&&!o?s.jsx("div",{className:"flex h-32 items-center justify-center",children:s.jsx(Re,{size:"md",className:"text-muted-foreground",label:"Loading the file"})}):m.isError&&!o||h===void 0?s.jsx(D,{children:"This file couldn’t be read."}):g?s.jsx("textarea",{ref:$,"aria-label":`${t===null?"File":q(t)} contents`,value:R,onChange:l=>b(l.target.value),spellCheck:!1,autoComplete:"off",className:be("text-foreground/90 border-border/60 bg-background field-sizing-content","focus-visible:border-ring focus-visible:ring-ring min-h-64 w-full","resize-none rounded-md border px-3 py-2 font-mono text-xs","whitespace-pre-wrap focus-visible:ring-[3px] focus-visible:outline-none")}):s.jsx(Ye,{file:h})}),g&&s.jsxs(pe,{className:"items-center gap-2 sm:justify-between",children:[s.jsx("span",{className:"text-muted-foreground text-xs","aria-live":"polite",children:T.isPending?"Saving…":Y?"You haven’t saved your changes.":B&&!E?"Saved":E?"Not saved yet":""}),s.jsx("span",{className:"flex gap-2",children:Y?s.jsxs(s.Fragment,{children:[s.jsx(x,{type:"button",variant:"ghost",size:"sm",onClick:()=>S(!1),children:"Keep editing"}),s.jsx(x,{type:"button",variant:"destructive",size:"sm",onClick:()=>{F(),c()},children:"Discard changes"})]}):s.jsxs(s.Fragment,{children:[s.jsx(x,{type:"button",variant:"ghost",size:"sm",onClick:ie,children:E?"Discard":o?"Cancel":"Done"}),s.jsx(x,{type:"button",size:"sm",disabled:!te||T.isPending||y!==null,onClick:()=>T.mutate({text:R,baseCommit:z.commit}),children:"Save"})]})})]})]})})}function Ke({conflict:e,onTakeTheirs:t,onKeepMine:o,busy:a}){const c=e.lastCommit,r=c===null?"Somebody":c.author;return s.jsxs("div",{role:"alert",className:"border-border/60 bg-muted/40 mx-4 space-y-2 rounded-md border px-3 py-2 text-sm",children:[s.jsx("p",{children:e.again?`${r} changed this file again, so it still isn’t saved.`:`${r} changed this file while you edited, so nothing was saved.`}),c!==null&&s.jsxs("p",{className:"text-muted-foreground text-xs",children:[c.subject," · ",Q(c.at)]}),s.jsxs("div",{className:"flex flex-wrap gap-2",children:[s.jsx(x,{type:"button",variant:"outline",size:"sm",disabled:a,onClick:t,children:"Open their version"}),s.jsx(x,{type:"button",variant:"destructive",size:"sm",disabled:a,onClick:o,children:"Save mine over it"})]}),s.jsx("p",{className:"text-muted-foreground text-xs",children:"Opening theirs replaces what you typed here."})]})}function He(e,t){if(t===null)return"";const o=e===void 0?null:Ue(e.lastCommit);return o===null?t:`${t} · ${o.label}`}function Ye({file:e}){switch(e.body.kind){case"text":return ze(e.path)?s.jsx(Ce,{content:e.body.text,className:"text-sm",errorFallback:"This file couldn’t be displayed."}):s.jsx("pre",{className:"text-foreground/90 overflow-x-auto font-mono text-xs whitespace-pre",children:e.body.text});case"binary":return s.jsx(D,{children:"Only text files can be shown or edited here."});case"too-large":return s.jsxs(D,{children:["Files over ",Be(e.body.maxBytes)," aren’t shown here."]});case"not-readable":return s.jsx(D,{children:e.body.reason})}}function D({children:e}){return s.jsxs("div",{className:"text-muted-foreground flex h-32 flex-col items-center justify-center gap-2 px-6 text-center text-sm",children:[s.jsx(Se,{className:"size-(--size-icon-md) opacity-60"}),s.jsx("span",{children:e})]})}const Ge=new Map([["REQUEST_TOO_LARGE","Too much text to save here. Put big files in the room’s attachments."],["FILE_TOO_LARGE","This file is bigger than the room allows, so it wasn’t saved."],["REPO_CAP_EXCEEDED","This room’s files are full, so nothing was saved."],["MAIN_CHECKOUT_DIRTY","Saving is paused. Somebody changed these files outside DorkOS. See the warning above."],["MERGE_IN_FLIGHT","Somebody else is saving these files. Nothing was saved. Try again in a moment."],["PEOPLE_ONLY","Only a person can save here. Agents bring work in by merging."],["ROOM_FILE_NOT_TEXT","This file isn’t plain text, so it can’t be saved here."],["ROOM_FILE_PATH_INVALID","That file name points somewhere else, so nothing was saved."],["ROOM_FILE_NOT_FOUND","This file is gone from the room, so there was nothing to save over."],["ROOM_FILE_NOT_READABLE","This file can’t be edited here."],["ROOM_HAS_NO_REPO","This room no longer has its own files."],["ROOM_REPOS_DISABLED","Room files are turned off on this install, so nothing was saved."],["ROOM_REPO_GIT_UNAVAILABLE","Room files need git, and git isn’t installed on this computer."],["ROOM_NOT_FOUND","This room no longer exists."],["ROOM_ARCHIVED","This room is archived, so its files can’t be changed."],[w,L]]);function qe(e){return e===void 0?void 0:Ge.get(e)}function Z(e){if(typeof e!="object"||e===null)return null;const t=Te.safeParse(e.body);return t.success?t.data.conflict:null}const Ve=15e3;function Qe(e,t,o){const a=JSON.stringify(M.entries(t));let c=0,r=null;const i=e.getQueryCache().subscribe(n=>{if(n.type!=="updated"||JSON.stringify(n.query.queryKey)!==a||r!==null)return;const m=Math.max(0,Ve-(Date.now()-c));r=setTimeout(()=>{r=null,c=Date.now(),o()},m)});return()=>{r!==null&&clearTimeout(r),i()}}function Xe(e){return{name:e.name,path:e.path,type:e.kind==="dir"?"dir":"file",size:e.size,isSymlink:e.kind==="symlink",lastCommit:e.lastCommit}}const Je=new Map([["ROOM_FILE_NOT_READABLE","This isn’t a file that can be shown here."],["ROOM_FILE_NOT_FOUND","This file is no longer in the room."]]);function at(e){const{transport:t,queryClient:o,roomId:a,canChange:c=!0}=e,r=async i=>{try{return{status:"changed",commit:(await i()).commit}}catch(n){return Ze(n,o,a)}};return{scopeKey:`room:${a}`,cwd:null,writable:c,provenance:!0,filtersHidden:!1,preview:"inline",async showToEveryone(i){await t.openRoomCanvasDocument(a,{type:"file",sourcePath:i})},editable:c,changes:c?{maxUploadFiles:V,upload:i=>r(()=>t.uploadRoomFiles(a,{dir:i.dir,baseCommit:i.baseCommit,replace:i.replace,files:i.files})),move:i=>r(()=>t.moveRoomFile(a,i)),remove:i=>r(()=>t.deleteRoomFile(a,i))}:void 0,async list(i){try{const n=await t.readRoomFiles(a,i===""?void 0:i);return{entries:n.entries.map(Xe),commit:n.commit}}catch(n){if(_(n)!==Ne)throw n;return{entries:[],absent:!0}}},async read(i){try{const n=await t.readRoomFileContent(a,i);return{path:n.path,size:n.size,lastCommit:n.lastCommit,commit:n.commit,body:n.body.kind==="text"?{kind:"text",text:n.body.text}:n.body.kind==="binary"?{kind:"binary"}:{kind:"too-large",maxBytes:n.body.maxBytes}}}catch(n){const m=Je.get(_(n)??"");if(m===void 0)throw n;return{path:i,size:0,lastCommit:null,commit:null,body:{kind:"not-readable",reason:m}}}},async save(i){try{const n=await t.saveRoomFile(a,{path:i.path,baseCommit:i.baseCommit,text:i.text});return{status:"saved",commit:n.commit,lastCommit:n.lastCommit,committed:n.committed}}catch(n){const m=_(n);if(m===X){const v=Z(n);return v!==null?{status:"conflict",commit:v.commit,lastCommit:v.lastCommit}:{status:"refused",reason:"Somebody changed this file while you edited it. Nothing was saved. Reopen it to see theirs."}}m==="MAIN_CHECKOUT_DIRTY"&&o.invalidateQueries({queryKey:M.repoStatus(a)});const h=k(n)??qe(m);if(h===void 0)throw n;return{status:"refused",reason:h}}},events(i){return Qe(o,a,i)}}}function Ze(e,t,o){const a=_(e);if(a===X){const r=Z(e);return r!==null?{status:"conflict",path:r.path,commit:r.commit,lastCommit:r.lastCommit}:{status:"refused",reason:"Somebody changed these files after you opened them. Nothing changed. Check, then try again."}}if(a==="ROOM_FILE_EXISTS"){const r=e instanceof Error?e.message.replace(/`([^`]*)`/g,"“$1”"):"";return{status:"exists",reason:r.trim()!==""?r:"Something with that name is already there."}}a==="MAIN_CHECKOUT_DIRTY"&&t.invalidateQueries({queryKey:M.repoStatus(o)});const c=je(e);if(c===void 0)throw e;return{status:"refused",reason:c}}export{Ae as C,it as F,Pe as N,Ve as R,ot as a,Ze as b,at as c,we as g,nt as n,Ue as p,je as r,st as t,Qe as w};
@@ -1,4 +1,4 @@
1
- import{a4 as e}from"./index-Dr-0P6rd.js";/**
1
+ import{a4 as e}from"./index-C63bLSO4.js";/**
2
2
  * @license lucide-react v1.48.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
@@ -1,4 +1,4 @@
1
- import{a4 as a}from"./index-Dr-0P6rd.js";/**
1
+ import{a4 as a}from"./index-C63bLSO4.js";/**
2
2
  * @license lucide-react v1.48.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
@@ -1 +1 @@
1
- import{r as c,j as b,b9 as X,ba as R,bb as T,bc as j,bd as ne,be as C,bf as le,bg as ce,bh as ae,bi as U,bj as se}from"./index-Dr-0P6rd.js";var ie=Object.defineProperty,h=(n,e)=>ie(n,"name",{value:e,configurable:!0});function J(n,e){return c.useReducer((t,r)=>e[t][r]??t,n)}h(J,"useStateMachine");var K="ScrollArea",[Q,je]=ne(K),[ue,g]=Q(K),de=c.forwardRef(h(function(e,t){const{__scopeScrollArea:r,type:s="hover",dir:o,scrollHideDelay:l=600,...a}=e,[i,u]=c.useState(null),[S,f]=c.useState(null),[v,d]=c.useState(null),[m,w]=c.useState(null),[y,Y]=c.useState(null),[P,z]=c.useState(0),[M,I]=c.useState(0),[O,_]=c.useState(!1),[N,L]=c.useState(!1),p=T(t,u),A=ae(o);return b.jsx(ue,{scope:r,type:s,dir:A,scrollHideDelay:l,scrollArea:i,viewport:S,onViewportChange:f,content:v,onContentChange:d,scrollbarX:m,onScrollbarXChange:w,scrollbarXEnabled:O,onScrollbarXEnabledChange:_,scrollbarY:y,onScrollbarYChange:Y,scrollbarYEnabled:N,onScrollbarYEnabledChange:L,onCornerWidthChange:z,onCornerHeightChange:I,children:b.jsx(j.div,{dir:A,...a,ref:p,style:{position:"relative","--radix-scroll-area-corner-width":P+"px","--radix-scroll-area-corner-height":M+"px",...e.style}})})},"ScrollArea")),he="ScrollAreaViewport",fe=c.forwardRef(h(function(e,t){const{__scopeScrollArea:r,children:s,nonce:o,...l}=e,a=g(he,r),i=c.useRef(null),u=T(t,i,a.onViewportChange);return b.jsxs(b.Fragment,{children:[b.jsx(Se,{nonce:o}),b.jsx(j.div,{"data-radix-scroll-area-viewport":"",...l,ref:u,style:{overflowX:a.scrollbarXEnabled?"scroll":"hidden",overflowY:a.scrollbarYEnabled?"scroll":"hidden",...e.style},children:b.jsx("div",{ref:a.onContentChange,style:{minWidth:"100%",display:"table"},children:s})})]})},"ScrollAreaViewport")),Se=c.memo(h(function({nonce:e}){return b.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}"},nonce:e})},"ScrollAreaViewportStyle"),(n,e)=>n.nonce===e.nonce),x="ScrollAreaScrollbar",be=c.forwardRef(h(function(e,t){const{forceMount:r,...s}=e,o=g(x,e.__scopeScrollArea),{onScrollbarXEnabledChange:l,onScrollbarYEnabledChange:a}=o,i=e.orientation==="horizontal";return c.useEffect(()=>(i?l(!0):a(!0),()=>{i?l(!1):a(!1)}),[i,l,a]),o.type==="hover"?b.jsx(me,{...s,ref:t,forceMount:r}):o.type==="scroll"?b.jsx(ve,{...s,ref:t,forceMount:r}):o.type==="auto"?b.jsx(Z,{...s,ref:t,forceMount:r}):o.type==="always"?b.jsx(F,{...s,ref:t,"data-state":"visible"}):null},"ScrollAreaScrollbar")),me=c.forwardRef(h(function(e,t){const{forceMount:r,...s}=e,o=g(x,e.__scopeScrollArea),[l,a]=c.useState(!1);return c.useEffect(()=>{const i=o.scrollArea;let u=0;if(i){const S=h(()=>{window.clearTimeout(u),a(!0)},"handlePointerEnter"),f=h(()=>{u=window.setTimeout(()=>a(!1),o.scrollHideDelay)},"handlePointerLeave");return i.addEventListener("pointerenter",S),i.addEventListener("pointerleave",f),()=>{window.clearTimeout(u),i.removeEventListener("pointerenter",S),i.removeEventListener("pointerleave",f)}}},[o.scrollArea,o.scrollHideDelay]),b.jsx(X,{present:r||l,children:b.jsx(Z,{"data-state":l?"visible":"hidden",...s,ref:t})})},"ScrollAreaScrollbarHover")),ve=c.forwardRef(h(function(e,t){const{forceMount:r,...s}=e,o=g(x,e.__scopeScrollArea),l=e.orientation==="horizontal",a=H(()=>u("SCROLL_END"),100),[i,u]=J("hidden",{hidden:{SCROLL:"scrolling"},scrolling:{SCROLL_END:"idle",POINTER_ENTER:"interacting"},interacting:{SCROLL:"interacting",POINTER_LEAVE:"idle"},idle:{HIDE:"hidden",SCROLL:"scrolling",POINTER_ENTER:"interacting"}});return c.useEffect(()=>{if(i==="idle"){const S=window.setTimeout(()=>u("HIDE"),o.scrollHideDelay);return()=>window.clearTimeout(S)}},[i,o.scrollHideDelay,u]),c.useEffect(()=>{const S=o.viewport,f=l?"scrollLeft":"scrollTop";if(S){let v=S[f];const d=h(()=>{const m=S[f];v!==m&&(u("SCROLL"),a()),v=m},"handleScroll");return S.addEventListener("scroll",d),()=>S.removeEventListener("scroll",d)}},[o.viewport,l,u,a]),b.jsx(X,{present:r||i!=="hidden",children:b.jsx(F,{"data-state":i==="hidden"?"hidden":"visible",...s,ref:t,onPointerEnter:R(e.onPointerEnter,()=>u("POINTER_ENTER")),onPointerLeave:R(e.onPointerLeave,()=>u("POINTER_LEAVE"))})})},"ScrollAreaScrollbarScroll")),Z=c.forwardRef(h(function(e,t){const r=g(x,e.__scopeScrollArea),{forceMount:s,...o}=e,[l,a]=c.useState(!1),i=e.orientation==="horizontal",u=H(()=>{if(r.viewport){const S=r.viewport.offsetWidth<r.viewport.scrollWidth,f=r.viewport.offsetHeight<r.viewport.scrollHeight;a(i?S:f)}},10);return E(r.viewport,u),E(r.content,u),b.jsx(X,{present:s||l,children:b.jsx(F,{"data-state":l?"visible":"hidden",...o,ref:t})})},"ScrollAreaScrollbarAuto")),F=c.forwardRef(h(function(e,t){const{orientation:r="vertical",...s}=e,o=g(x,e.__scopeScrollArea),l=c.useRef(null),a=c.useRef(0),[i,u]=c.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),S=$(i.viewport,i.content),f={...s,sizes:i,onSizesChange:u,hasThumb:S>0&&S<1,onThumbChange:h(d=>l.current=d,"onThumbChange"),onThumbPointerUp:h(()=>a.current=0,"onThumbPointerUp"),onThumbPointerDown:h(d=>a.current=d,"onThumbPointerDown")};function v(d,m){return te(d,a.current,i,m)}return h(v,"getScrollPosition"),r==="horizontal"?b.jsx(pe,{...f,ref:t,onThumbPositionChange:()=>{if(o.viewport&&l.current){const d=o.viewport.scrollLeft,m=B(d,i,o.dir);l.current.style.transform=`translate3d(${m}px, 0, 0)`}},onWheelScroll:d=>{o.viewport&&(o.viewport.scrollLeft=d)},onDragScroll:d=>{o.viewport&&(o.viewport.scrollLeft=v(d,o.dir))}}):r==="vertical"?b.jsx(we,{...f,ref:t,onThumbPositionChange:()=>{if(o.viewport&&l.current){const d=o.viewport.scrollTop,m=B(d,i);l.current.style.transform=`translate3d(0, ${m}px, 0)`}},onWheelScroll:d=>{o.viewport&&(o.viewport.scrollTop=d)},onDragScroll:d=>{o.viewport&&(o.viewport.scrollTop=v(d))}}):null},"ScrollAreaScrollbarVisible")),pe=c.forwardRef(h(function(e,t){const{sizes:r,onSizesChange:s,...o}=e,l=g(x,e.__scopeScrollArea),[a,i]=c.useState(),u=c.useRef(null),S=T(t,u,l.onScrollbarXChange);return c.useEffect(()=>{u.current&&i(getComputedStyle(u.current))},[u]),b.jsx(re,{"data-orientation":"horizontal",...o,ref:S,sizes:r,style:{bottom:0,left:l.dir==="rtl"?"var(--radix-scroll-area-corner-width)":0,right:l.dir==="ltr"?"var(--radix-scroll-area-corner-width)":0,"--radix-scroll-area-thumb-width":W(r)+"px",...e.style},onThumbPointerDown:f=>e.onThumbPointerDown(f.x),onDragScroll:f=>e.onDragScroll(f.x),onWheelScroll:(f,v)=>{if(l.viewport){const d=l.viewport.scrollLeft+f.deltaX;e.onWheelScroll(d),G(d,v)&&f.preventDefault()}},onResize:()=>{u.current&&l.viewport&&a&&s({content:l.viewport.scrollWidth,viewport:l.viewport.offsetWidth,scrollbar:{size:u.current.clientWidth,paddingStart:D(a.paddingLeft),paddingEnd:D(a.paddingRight)}})}})},"ScrollAreaScrollbarX")),we=c.forwardRef(h(function(e,t){const{sizes:r,onSizesChange:s,...o}=e,l=g(x,e.__scopeScrollArea),[a,i]=c.useState(),u=c.useRef(null),S=T(t,u,l.onScrollbarYChange);return c.useEffect(()=>{u.current&&i(getComputedStyle(u.current))},[u]),b.jsx(re,{"data-orientation":"vertical",...o,ref:S,sizes:r,style:{top:0,right:l.dir==="ltr"?0:void 0,left:l.dir==="rtl"?0:void 0,bottom:"var(--radix-scroll-area-corner-height)","--radix-scroll-area-thumb-height":W(r)+"px",...e.style},onThumbPointerDown:f=>e.onThumbPointerDown(f.y),onDragScroll:f=>e.onDragScroll(f.y),onWheelScroll:(f,v)=>{if(l.viewport){const d=l.viewport.scrollTop+f.deltaY;e.onWheelScroll(d),G(d,v)&&f.preventDefault()}},onResize:()=>{u.current&&l.viewport&&a&&s({content:l.viewport.scrollHeight,viewport:l.viewport.offsetHeight,scrollbar:{size:u.current.clientHeight,paddingStart:D(a.paddingTop),paddingEnd:D(a.paddingBottom)}})}})},"ScrollAreaScrollbarY")),[ge,ee]=Q(x),re=c.forwardRef(h(function(e,t){const{__scopeScrollArea:r,sizes:s,hasThumb:o,onThumbChange:l,onThumbPointerUp:a,onThumbPointerDown:i,onThumbPositionChange:u,onDragScroll:S,onWheelScroll:f,onResize:v,...d}=e,m=g(x,r),[w,y]=c.useState(null),Y=T(t,y),P=c.useRef(null),z=c.useRef(""),M=m.viewport,I=s.content-s.viewport,O=C(f),_=C(u),N=H(v,10);function L(p){if(P.current){const A=p.clientX-P.current.left,V=p.clientY-P.current.top;S({x:A,y:V})}}return h(L,"handleDragScroll"),c.useEffect(()=>{const p=h(A=>{const V=A.target;(w==null?void 0:w.contains(V))&&O(A,I)},"handleWheel");return document.addEventListener("wheel",p,{passive:!1}),()=>document.removeEventListener("wheel",p,{passive:!1})},[M,w,I,O]),c.useEffect(_,[s,_]),E(w,N),E(m.content,N),b.jsx(ge,{scope:r,scrollbar:w,hasThumb:o,onThumbChange:C(l),onThumbPointerUp:C(a),onThumbPositionChange:_,onThumbPointerDown:C(i),children:b.jsx(j.div,{...d,ref:Y,style:{position:"absolute",...d.style},onPointerDown:R(e.onPointerDown,p=>{p.button===0&&(p.target.setPointerCapture(p.pointerId),P.current=w.getBoundingClientRect(),z.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",m.viewport&&(m.viewport.style.scrollBehavior="auto"),L(p))}),onPointerMove:R(e.onPointerMove,L),onPointerUp:R(e.onPointerUp,p=>{const A=p.target;A.hasPointerCapture(p.pointerId)&&A.releasePointerCapture(p.pointerId),document.body.style.webkitUserSelect=z.current,m.viewport&&(m.viewport.style.scrollBehavior=""),P.current=null})})})},"ScrollAreaScrollbarImpl")),k="ScrollAreaThumb",Ae=c.forwardRef(h(function(e,t){const{forceMount:r,...s}=e,o=ee(k,e.__scopeScrollArea);return b.jsx(X,{present:r||o.hasThumb,children:b.jsx(xe,{ref:t,...s})})},"ScrollAreaThumb")),xe=c.forwardRef(h(function(e,t){const{__scopeScrollArea:r,style:s,...o}=e,l=g(k,r),a=ee(k,r),{onThumbPositionChange:i}=a,u=T(t,a.onThumbChange),S=c.useRef(void 0),f=H(()=>{S.current&&(S.current(),S.current=void 0)},100);return c.useEffect(()=>{const v=l.viewport;if(v){const d=h(()=>{if(f(),!S.current){const m=Re(v,i);S.current=m,i()}},"handleScroll");return i(),v.addEventListener("scroll",d),()=>v.removeEventListener("scroll",d)}},[l.viewport,f,i]),b.jsx(j.div,{"data-state":a.hasThumb?"visible":"hidden",...o,ref:u,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...s},onPointerDownCapture:R(e.onPointerDownCapture,v=>{const m=v.target.getBoundingClientRect(),w=v.clientX-m.left,y=v.clientY-m.top;a.onThumbPointerDown({x:w,y})}),onPointerUp:R(e.onPointerUp,a.onThumbPointerUp)})},"ScrollAreaThumbImpl")),oe="ScrollAreaCorner",Pe=c.forwardRef(h(function(e,t){const r=g(oe,e.__scopeScrollArea),s=!!(r.scrollbarX&&r.scrollbarY);return r.type!=="scroll"&&s?b.jsx(Ce,{...e,ref:t}):null},"ScrollAreaCorner")),Ce=c.forwardRef(h(function(e,t){const{__scopeScrollArea:r,...s}=e,o=g(oe,r),[l,a]=c.useState(0),[i,u]=c.useState(0),S=!!(l&&i),{onCornerWidthChange:f,onCornerHeightChange:v}=o;return E(o.scrollbarX,()=>{var m;const d=((m=o.scrollbarX)==null?void 0:m.offsetHeight)||0;o.onCornerHeightChange(d),u(d)}),E(o.scrollbarY,()=>{var m;const d=((m=o.scrollbarY)==null?void 0:m.offsetWidth)||0;o.onCornerWidthChange(d),a(d)}),c.useEffect(()=>()=>{f(0),v(0)},[f,v]),S?b.jsx(j.div,{...s,ref:t,style:{width:l,height:i,position:"absolute",right:o.dir==="ltr"?0:void 0,left:o.dir==="rtl"?0:void 0,bottom:0,...e.style}}):null},"ScrollAreaCornerImpl"));function D(n){return n?parseInt(n,10):0}h(D,"toInt");function $(n,e){const t=n/e;return isNaN(t)?0:t}h($,"getThumbRatio");function W(n){const e=$(n.viewport,n.content),t=n.scrollbar.paddingStart+n.scrollbar.paddingEnd,r=(n.scrollbar.size-t)*e;return Math.max(r,18)}h(W,"getThumbSize");function te(n,e,t,r="ltr"){const s=W(t),o=s/2,l=e||o,a=s-l,i=t.scrollbar.paddingStart+l,u=t.scrollbar.size-t.scrollbar.paddingEnd-a,S=t.content-t.viewport,f=r==="ltr"?[0,S]:[S*-1,0];return q([i,u],f)(n)}h(te,"getScrollPositionFromPointer");function B(n,e,t="ltr"){const r=W(e),s=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,o=e.scrollbar.size-s,l=e.content-e.viewport,a=o-r,i=t==="ltr"?[0,l]:[l*-1,0],u=ce(n,i);return q([0,l],[0,a])(u)}h(B,"getThumbOffsetFromScroll");function q(n,e){return t=>{if(n[0]===n[1]||e[0]===e[1])return e[0];const r=(e[1]-e[0])/(n[1]-n[0]);return e[0]+r*(t-n[0])}}h(q,"linearScale");function G(n,e){return n>0&&n<e}h(G,"isScrollingWithinScrollbarBounds");var Re=h((n,e=()=>{})=>{let t={left:n.scrollLeft,top:n.scrollTop},r=0;return h((function s(){const o={left:n.scrollLeft,top:n.scrollTop},l=t.left!==o.left,a=t.top!==o.top;(l||a)&&e(),t=o,r=window.requestAnimationFrame(s)}),"loop")(),()=>window.cancelAnimationFrame(r)},"addUnlinkedScrollListener");function H(n,e){const t=C(n),r=c.useRef(0);return c.useEffect(()=>()=>window.clearTimeout(r.current),[]),c.useCallback(()=>{window.clearTimeout(r.current),r.current=window.setTimeout(t,e)},[t,e])}h(H,"useDebounceCallback");function E(n,e){const t=C(e);le(()=>{let r=0;if(n){const s=new ResizeObserver(()=>{cancelAnimationFrame(r),r=window.requestAnimationFrame(t)});return s.observe(n),()=>{window.cancelAnimationFrame(r),s.unobserve(n)}}},[n,t])}h(E,"useResizeObserver");var Ee=de,Te=fe,ye=Pe;function We({className:n,children:e,viewportRef:t,viewportClassName:r,...s}){return b.jsxs(Ee,{"data-slot":"scroll-area",className:U("relative",n),...s,children:[b.jsx(Te,{ref:t,"data-slot":"scroll-area-viewport",className:U("size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:outline-1 motion-reduce:transition-none!",se,"[&>div]:!block",r),children:e}),b.jsx(_e,{}),b.jsx(ye,{})]})}function _e({className:n,orientation:e="vertical",...t}){return b.jsx(be,{"data-slot":"scroll-area-scrollbar",orientation:e,className:U("flex touch-none p-px transition-colors select-none motion-reduce:transition-none!",e==="vertical"&&"h-full w-2.5 border-l border-l-transparent",e==="horizontal"&&"h-2.5 flex-col border-t border-t-transparent",n),...t,children:b.jsx(Ae,{"data-slot":"scroll-area-thumb",className:"bg-dui-border relative flex-1 rounded-full"})})}export{We as S};
1
+ import{r as c,j as b,bc as X,bd as R,be as T,bf as j,bg as ne,bh as C,bi as le,bj as ce,bk as ae,bl as U,bm as se}from"./index-C63bLSO4.js";var ie=Object.defineProperty,h=(n,e)=>ie(n,"name",{value:e,configurable:!0});function J(n,e){return c.useReducer((t,r)=>e[t][r]??t,n)}h(J,"useStateMachine");var K="ScrollArea",[Q,je]=ne(K),[ue,g]=Q(K),de=c.forwardRef(h(function(e,t){const{__scopeScrollArea:r,type:s="hover",dir:o,scrollHideDelay:l=600,...a}=e,[i,u]=c.useState(null),[S,f]=c.useState(null),[v,d]=c.useState(null),[m,w]=c.useState(null),[y,Y]=c.useState(null),[P,z]=c.useState(0),[M,I]=c.useState(0),[O,_]=c.useState(!1),[N,L]=c.useState(!1),p=T(t,u),A=ae(o);return b.jsx(ue,{scope:r,type:s,dir:A,scrollHideDelay:l,scrollArea:i,viewport:S,onViewportChange:f,content:v,onContentChange:d,scrollbarX:m,onScrollbarXChange:w,scrollbarXEnabled:O,onScrollbarXEnabledChange:_,scrollbarY:y,onScrollbarYChange:Y,scrollbarYEnabled:N,onScrollbarYEnabledChange:L,onCornerWidthChange:z,onCornerHeightChange:I,children:b.jsx(j.div,{dir:A,...a,ref:p,style:{position:"relative","--radix-scroll-area-corner-width":P+"px","--radix-scroll-area-corner-height":M+"px",...e.style}})})},"ScrollArea")),he="ScrollAreaViewport",fe=c.forwardRef(h(function(e,t){const{__scopeScrollArea:r,children:s,nonce:o,...l}=e,a=g(he,r),i=c.useRef(null),u=T(t,i,a.onViewportChange);return b.jsxs(b.Fragment,{children:[b.jsx(Se,{nonce:o}),b.jsx(j.div,{"data-radix-scroll-area-viewport":"",...l,ref:u,style:{overflowX:a.scrollbarXEnabled?"scroll":"hidden",overflowY:a.scrollbarYEnabled?"scroll":"hidden",...e.style},children:b.jsx("div",{ref:a.onContentChange,style:{minWidth:"100%",display:"table"},children:s})})]})},"ScrollAreaViewport")),Se=c.memo(h(function({nonce:e}){return b.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}"},nonce:e})},"ScrollAreaViewportStyle"),(n,e)=>n.nonce===e.nonce),x="ScrollAreaScrollbar",be=c.forwardRef(h(function(e,t){const{forceMount:r,...s}=e,o=g(x,e.__scopeScrollArea),{onScrollbarXEnabledChange:l,onScrollbarYEnabledChange:a}=o,i=e.orientation==="horizontal";return c.useEffect(()=>(i?l(!0):a(!0),()=>{i?l(!1):a(!1)}),[i,l,a]),o.type==="hover"?b.jsx(me,{...s,ref:t,forceMount:r}):o.type==="scroll"?b.jsx(ve,{...s,ref:t,forceMount:r}):o.type==="auto"?b.jsx(Z,{...s,ref:t,forceMount:r}):o.type==="always"?b.jsx(F,{...s,ref:t,"data-state":"visible"}):null},"ScrollAreaScrollbar")),me=c.forwardRef(h(function(e,t){const{forceMount:r,...s}=e,o=g(x,e.__scopeScrollArea),[l,a]=c.useState(!1);return c.useEffect(()=>{const i=o.scrollArea;let u=0;if(i){const S=h(()=>{window.clearTimeout(u),a(!0)},"handlePointerEnter"),f=h(()=>{u=window.setTimeout(()=>a(!1),o.scrollHideDelay)},"handlePointerLeave");return i.addEventListener("pointerenter",S),i.addEventListener("pointerleave",f),()=>{window.clearTimeout(u),i.removeEventListener("pointerenter",S),i.removeEventListener("pointerleave",f)}}},[o.scrollArea,o.scrollHideDelay]),b.jsx(X,{present:r||l,children:b.jsx(Z,{"data-state":l?"visible":"hidden",...s,ref:t})})},"ScrollAreaScrollbarHover")),ve=c.forwardRef(h(function(e,t){const{forceMount:r,...s}=e,o=g(x,e.__scopeScrollArea),l=e.orientation==="horizontal",a=H(()=>u("SCROLL_END"),100),[i,u]=J("hidden",{hidden:{SCROLL:"scrolling"},scrolling:{SCROLL_END:"idle",POINTER_ENTER:"interacting"},interacting:{SCROLL:"interacting",POINTER_LEAVE:"idle"},idle:{HIDE:"hidden",SCROLL:"scrolling",POINTER_ENTER:"interacting"}});return c.useEffect(()=>{if(i==="idle"){const S=window.setTimeout(()=>u("HIDE"),o.scrollHideDelay);return()=>window.clearTimeout(S)}},[i,o.scrollHideDelay,u]),c.useEffect(()=>{const S=o.viewport,f=l?"scrollLeft":"scrollTop";if(S){let v=S[f];const d=h(()=>{const m=S[f];v!==m&&(u("SCROLL"),a()),v=m},"handleScroll");return S.addEventListener("scroll",d),()=>S.removeEventListener("scroll",d)}},[o.viewport,l,u,a]),b.jsx(X,{present:r||i!=="hidden",children:b.jsx(F,{"data-state":i==="hidden"?"hidden":"visible",...s,ref:t,onPointerEnter:R(e.onPointerEnter,()=>u("POINTER_ENTER")),onPointerLeave:R(e.onPointerLeave,()=>u("POINTER_LEAVE"))})})},"ScrollAreaScrollbarScroll")),Z=c.forwardRef(h(function(e,t){const r=g(x,e.__scopeScrollArea),{forceMount:s,...o}=e,[l,a]=c.useState(!1),i=e.orientation==="horizontal",u=H(()=>{if(r.viewport){const S=r.viewport.offsetWidth<r.viewport.scrollWidth,f=r.viewport.offsetHeight<r.viewport.scrollHeight;a(i?S:f)}},10);return E(r.viewport,u),E(r.content,u),b.jsx(X,{present:s||l,children:b.jsx(F,{"data-state":l?"visible":"hidden",...o,ref:t})})},"ScrollAreaScrollbarAuto")),F=c.forwardRef(h(function(e,t){const{orientation:r="vertical",...s}=e,o=g(x,e.__scopeScrollArea),l=c.useRef(null),a=c.useRef(0),[i,u]=c.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),S=$(i.viewport,i.content),f={...s,sizes:i,onSizesChange:u,hasThumb:S>0&&S<1,onThumbChange:h(d=>l.current=d,"onThumbChange"),onThumbPointerUp:h(()=>a.current=0,"onThumbPointerUp"),onThumbPointerDown:h(d=>a.current=d,"onThumbPointerDown")};function v(d,m){return te(d,a.current,i,m)}return h(v,"getScrollPosition"),r==="horizontal"?b.jsx(pe,{...f,ref:t,onThumbPositionChange:()=>{if(o.viewport&&l.current){const d=o.viewport.scrollLeft,m=B(d,i,o.dir);l.current.style.transform=`translate3d(${m}px, 0, 0)`}},onWheelScroll:d=>{o.viewport&&(o.viewport.scrollLeft=d)},onDragScroll:d=>{o.viewport&&(o.viewport.scrollLeft=v(d,o.dir))}}):r==="vertical"?b.jsx(we,{...f,ref:t,onThumbPositionChange:()=>{if(o.viewport&&l.current){const d=o.viewport.scrollTop,m=B(d,i);l.current.style.transform=`translate3d(0, ${m}px, 0)`}},onWheelScroll:d=>{o.viewport&&(o.viewport.scrollTop=d)},onDragScroll:d=>{o.viewport&&(o.viewport.scrollTop=v(d))}}):null},"ScrollAreaScrollbarVisible")),pe=c.forwardRef(h(function(e,t){const{sizes:r,onSizesChange:s,...o}=e,l=g(x,e.__scopeScrollArea),[a,i]=c.useState(),u=c.useRef(null),S=T(t,u,l.onScrollbarXChange);return c.useEffect(()=>{u.current&&i(getComputedStyle(u.current))},[u]),b.jsx(re,{"data-orientation":"horizontal",...o,ref:S,sizes:r,style:{bottom:0,left:l.dir==="rtl"?"var(--radix-scroll-area-corner-width)":0,right:l.dir==="ltr"?"var(--radix-scroll-area-corner-width)":0,"--radix-scroll-area-thumb-width":W(r)+"px",...e.style},onThumbPointerDown:f=>e.onThumbPointerDown(f.x),onDragScroll:f=>e.onDragScroll(f.x),onWheelScroll:(f,v)=>{if(l.viewport){const d=l.viewport.scrollLeft+f.deltaX;e.onWheelScroll(d),G(d,v)&&f.preventDefault()}},onResize:()=>{u.current&&l.viewport&&a&&s({content:l.viewport.scrollWidth,viewport:l.viewport.offsetWidth,scrollbar:{size:u.current.clientWidth,paddingStart:D(a.paddingLeft),paddingEnd:D(a.paddingRight)}})}})},"ScrollAreaScrollbarX")),we=c.forwardRef(h(function(e,t){const{sizes:r,onSizesChange:s,...o}=e,l=g(x,e.__scopeScrollArea),[a,i]=c.useState(),u=c.useRef(null),S=T(t,u,l.onScrollbarYChange);return c.useEffect(()=>{u.current&&i(getComputedStyle(u.current))},[u]),b.jsx(re,{"data-orientation":"vertical",...o,ref:S,sizes:r,style:{top:0,right:l.dir==="ltr"?0:void 0,left:l.dir==="rtl"?0:void 0,bottom:"var(--radix-scroll-area-corner-height)","--radix-scroll-area-thumb-height":W(r)+"px",...e.style},onThumbPointerDown:f=>e.onThumbPointerDown(f.y),onDragScroll:f=>e.onDragScroll(f.y),onWheelScroll:(f,v)=>{if(l.viewport){const d=l.viewport.scrollTop+f.deltaY;e.onWheelScroll(d),G(d,v)&&f.preventDefault()}},onResize:()=>{u.current&&l.viewport&&a&&s({content:l.viewport.scrollHeight,viewport:l.viewport.offsetHeight,scrollbar:{size:u.current.clientHeight,paddingStart:D(a.paddingTop),paddingEnd:D(a.paddingBottom)}})}})},"ScrollAreaScrollbarY")),[ge,ee]=Q(x),re=c.forwardRef(h(function(e,t){const{__scopeScrollArea:r,sizes:s,hasThumb:o,onThumbChange:l,onThumbPointerUp:a,onThumbPointerDown:i,onThumbPositionChange:u,onDragScroll:S,onWheelScroll:f,onResize:v,...d}=e,m=g(x,r),[w,y]=c.useState(null),Y=T(t,y),P=c.useRef(null),z=c.useRef(""),M=m.viewport,I=s.content-s.viewport,O=C(f),_=C(u),N=H(v,10);function L(p){if(P.current){const A=p.clientX-P.current.left,V=p.clientY-P.current.top;S({x:A,y:V})}}return h(L,"handleDragScroll"),c.useEffect(()=>{const p=h(A=>{const V=A.target;(w==null?void 0:w.contains(V))&&O(A,I)},"handleWheel");return document.addEventListener("wheel",p,{passive:!1}),()=>document.removeEventListener("wheel",p,{passive:!1})},[M,w,I,O]),c.useEffect(_,[s,_]),E(w,N),E(m.content,N),b.jsx(ge,{scope:r,scrollbar:w,hasThumb:o,onThumbChange:C(l),onThumbPointerUp:C(a),onThumbPositionChange:_,onThumbPointerDown:C(i),children:b.jsx(j.div,{...d,ref:Y,style:{position:"absolute",...d.style},onPointerDown:R(e.onPointerDown,p=>{p.button===0&&(p.target.setPointerCapture(p.pointerId),P.current=w.getBoundingClientRect(),z.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",m.viewport&&(m.viewport.style.scrollBehavior="auto"),L(p))}),onPointerMove:R(e.onPointerMove,L),onPointerUp:R(e.onPointerUp,p=>{const A=p.target;A.hasPointerCapture(p.pointerId)&&A.releasePointerCapture(p.pointerId),document.body.style.webkitUserSelect=z.current,m.viewport&&(m.viewport.style.scrollBehavior=""),P.current=null})})})},"ScrollAreaScrollbarImpl")),k="ScrollAreaThumb",Ae=c.forwardRef(h(function(e,t){const{forceMount:r,...s}=e,o=ee(k,e.__scopeScrollArea);return b.jsx(X,{present:r||o.hasThumb,children:b.jsx(xe,{ref:t,...s})})},"ScrollAreaThumb")),xe=c.forwardRef(h(function(e,t){const{__scopeScrollArea:r,style:s,...o}=e,l=g(k,r),a=ee(k,r),{onThumbPositionChange:i}=a,u=T(t,a.onThumbChange),S=c.useRef(void 0),f=H(()=>{S.current&&(S.current(),S.current=void 0)},100);return c.useEffect(()=>{const v=l.viewport;if(v){const d=h(()=>{if(f(),!S.current){const m=Re(v,i);S.current=m,i()}},"handleScroll");return i(),v.addEventListener("scroll",d),()=>v.removeEventListener("scroll",d)}},[l.viewport,f,i]),b.jsx(j.div,{"data-state":a.hasThumb?"visible":"hidden",...o,ref:u,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...s},onPointerDownCapture:R(e.onPointerDownCapture,v=>{const m=v.target.getBoundingClientRect(),w=v.clientX-m.left,y=v.clientY-m.top;a.onThumbPointerDown({x:w,y})}),onPointerUp:R(e.onPointerUp,a.onThumbPointerUp)})},"ScrollAreaThumbImpl")),oe="ScrollAreaCorner",Pe=c.forwardRef(h(function(e,t){const r=g(oe,e.__scopeScrollArea),s=!!(r.scrollbarX&&r.scrollbarY);return r.type!=="scroll"&&s?b.jsx(Ce,{...e,ref:t}):null},"ScrollAreaCorner")),Ce=c.forwardRef(h(function(e,t){const{__scopeScrollArea:r,...s}=e,o=g(oe,r),[l,a]=c.useState(0),[i,u]=c.useState(0),S=!!(l&&i),{onCornerWidthChange:f,onCornerHeightChange:v}=o;return E(o.scrollbarX,()=>{var m;const d=((m=o.scrollbarX)==null?void 0:m.offsetHeight)||0;o.onCornerHeightChange(d),u(d)}),E(o.scrollbarY,()=>{var m;const d=((m=o.scrollbarY)==null?void 0:m.offsetWidth)||0;o.onCornerWidthChange(d),a(d)}),c.useEffect(()=>()=>{f(0),v(0)},[f,v]),S?b.jsx(j.div,{...s,ref:t,style:{width:l,height:i,position:"absolute",right:o.dir==="ltr"?0:void 0,left:o.dir==="rtl"?0:void 0,bottom:0,...e.style}}):null},"ScrollAreaCornerImpl"));function D(n){return n?parseInt(n,10):0}h(D,"toInt");function $(n,e){const t=n/e;return isNaN(t)?0:t}h($,"getThumbRatio");function W(n){const e=$(n.viewport,n.content),t=n.scrollbar.paddingStart+n.scrollbar.paddingEnd,r=(n.scrollbar.size-t)*e;return Math.max(r,18)}h(W,"getThumbSize");function te(n,e,t,r="ltr"){const s=W(t),o=s/2,l=e||o,a=s-l,i=t.scrollbar.paddingStart+l,u=t.scrollbar.size-t.scrollbar.paddingEnd-a,S=t.content-t.viewport,f=r==="ltr"?[0,S]:[S*-1,0];return q([i,u],f)(n)}h(te,"getScrollPositionFromPointer");function B(n,e,t="ltr"){const r=W(e),s=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,o=e.scrollbar.size-s,l=e.content-e.viewport,a=o-r,i=t==="ltr"?[0,l]:[l*-1,0],u=ce(n,i);return q([0,l],[0,a])(u)}h(B,"getThumbOffsetFromScroll");function q(n,e){return t=>{if(n[0]===n[1]||e[0]===e[1])return e[0];const r=(e[1]-e[0])/(n[1]-n[0]);return e[0]+r*(t-n[0])}}h(q,"linearScale");function G(n,e){return n>0&&n<e}h(G,"isScrollingWithinScrollbarBounds");var Re=h((n,e=()=>{})=>{let t={left:n.scrollLeft,top:n.scrollTop},r=0;return h((function s(){const o={left:n.scrollLeft,top:n.scrollTop},l=t.left!==o.left,a=t.top!==o.top;(l||a)&&e(),t=o,r=window.requestAnimationFrame(s)}),"loop")(),()=>window.cancelAnimationFrame(r)},"addUnlinkedScrollListener");function H(n,e){const t=C(n),r=c.useRef(0);return c.useEffect(()=>()=>window.clearTimeout(r.current),[]),c.useCallback(()=>{window.clearTimeout(r.current),r.current=window.setTimeout(t,e)},[t,e])}h(H,"useDebounceCallback");function E(n,e){const t=C(e);le(()=>{let r=0;if(n){const s=new ResizeObserver(()=>{cancelAnimationFrame(r),r=window.requestAnimationFrame(t)});return s.observe(n),()=>{window.cancelAnimationFrame(r),s.unobserve(n)}}},[n,t])}h(E,"useResizeObserver");var Ee=de,Te=fe,ye=Pe;function We({className:n,children:e,viewportRef:t,viewportClassName:r,...s}){return b.jsxs(Ee,{"data-slot":"scroll-area",className:U("relative",n),...s,children:[b.jsx(Te,{ref:t,"data-slot":"scroll-area-viewport",className:U("size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:outline-1 motion-reduce:transition-none!",se,"[&>div]:!block",r),children:e}),b.jsx(_e,{}),b.jsx(ye,{})]})}function _e({className:n,orientation:e="vertical",...t}){return b.jsx(be,{"data-slot":"scroll-area-scrollbar",orientation:e,className:U("flex touch-none p-px transition-colors select-none motion-reduce:transition-none!",e==="vertical"&&"h-full w-2.5 border-l border-l-transparent",e==="horizontal"&&"h-2.5 flex-col border-t border-t-transparent",n),...t,children:b.jsx(Ae,{"data-slot":"scroll-area-thumb",className:"bg-dui-border relative flex-1 rounded-full"})})}export{We as S};
@@ -1,4 +1,4 @@
1
- import{bV as D,ci as _,r as n,a4 as q}from"./index-Dr-0P6rd.js";const C="asc";function L(t){if(!t)return{field:"",direction:C};const a=t.indexOf(":");if(a===-1)return{field:t,direction:C};const r=t.slice(0,a),s=t.slice(a+1);return{field:r,direction:s==="desc"?"desc":"asc"}}function z(t,a){return Object.fromEntries(Object.entries(t).map(([r,s])=>{const i=a[r];return[r,i!==void 0?s.deserialize(i):s.defaultValue]}))}function N(t,a){const r=t.serialize(a),s=t.serialize(t.defaultValue);return r===s?void 0:r}function $(t,a={}){const{debounce:r={}}=a,s=D(),i=_({strict:!1}),{definitions:u,defaultValues:k}=t,d=z(u,i),[O,f]=n.useState(d),x=n.useRef(i);n.useEffect(()=>{x.current!==i&&(x.current=i,f(z(u,i)))},[i,u]);const S=n.useRef({}),{field:V,direction:h}=L(i.sort),p=n.useCallback((e,o)=>{s({search:c=>({...c,[e]:o})})},[s]),j=n.useCallback((e,o)=>{const l=u[e];if(!l)return;const c=N(l,o),b=r[e];if(b!==void 0&&b>0){f(g=>({...g,[e]:o}));const v=S.current[e];v!==void 0&&clearTimeout(v),S.current[e]=setTimeout(()=>{delete S.current[e],p(e,c)},b)}else f(v=>({...v,[e]:o})),p(e,c)},[u,r,p]),R=n.useCallback(e=>{const o=k[e];u[e]&&(f(c=>({...c,[e]:o})),p(e,void 0))},[u,k,p]),T=n.useCallback(()=>{const e=new Set(Object.keys(u));f({...k}),s({search:l=>{const c={...l};for(const b of e)delete c[b];return delete c.sort,c}})},[u,k,s]),A=n.useCallback((e,o=C)=>{s({search:c=>({...c,sort:`${e}:${o}`})})},[s]),E=t.isFiltered(d),F=t.activeCount(d),I=n.useCallback(()=>t.describeActive(d),[t,d]);return{values:d,inputValues:O,sortField:V,sortDirection:h,isFiltered:E,activeCount:F,set:j,clear:R,clearAll:T,setSort:A,describeActive:I,schema:t}}/**
1
+ import{bY as D,cl as _,r as n,a4 as q}from"./index-C63bLSO4.js";const C="asc";function L(t){if(!t)return{field:"",direction:C};const a=t.indexOf(":");if(a===-1)return{field:t,direction:C};const r=t.slice(0,a),s=t.slice(a+1);return{field:r,direction:s==="desc"?"desc":"asc"}}function z(t,a){return Object.fromEntries(Object.entries(t).map(([r,s])=>{const i=a[r];return[r,i!==void 0?s.deserialize(i):s.defaultValue]}))}function N(t,a){const r=t.serialize(a),s=t.serialize(t.defaultValue);return r===s?void 0:r}function $(t,a={}){const{debounce:r={}}=a,s=D(),i=_({strict:!1}),{definitions:u,defaultValues:k}=t,d=z(u,i),[O,f]=n.useState(d),x=n.useRef(i);n.useEffect(()=>{x.current!==i&&(x.current=i,f(z(u,i)))},[i,u]);const S=n.useRef({}),{field:h,direction:j}=L(i.sort),p=n.useCallback((e,o)=>{s({search:c=>({...c,[e]:o})})},[s]),R=n.useCallback((e,o)=>{const l=u[e];if(!l)return;const c=N(l,o),b=r[e];if(b!==void 0&&b>0){f(g=>({...g,[e]:o}));const v=S.current[e];v!==void 0&&clearTimeout(v),S.current[e]=setTimeout(()=>{delete S.current[e],p(e,c)},b)}else f(v=>({...v,[e]:o})),p(e,c)},[u,r,p]),T=n.useCallback(e=>{const o=k[e];u[e]&&(f(c=>({...c,[e]:o})),p(e,void 0))},[u,k,p]),V=n.useCallback(()=>{const e=new Set(Object.keys(u));f({...k}),s({search:l=>{const c={...l};for(const b of e)delete c[b];return delete c.sort,c}})},[u,k,s]),A=n.useCallback((e,o=C)=>{s({search:c=>({...c,sort:`${e}:${o}`})})},[s]),E=t.isFiltered(d),F=t.activeCount(d),I=n.useCallback(()=>t.describeActive(d),[t,d]);return{values:d,inputValues:O,sortField:h,sortDirection:j,isFiltered:E,activeCount:F,set:R,clear:T,clearAll:V,setSort:A,describeActive:I,schema:t}}/**
2
2
  * @license lucide-react v1.48.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
@@ -1,4 +1,4 @@
1
- import{a4 as a}from"./index-Dr-0P6rd.js";/**
1
+ import{a4 as a}from"./index-C63bLSO4.js";/**
2
2
  * @license lucide-react v1.48.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
@@ -1 +1 @@
1
- import{a1 as e,a2 as n}from"./index-Dr-0P6rd.js";function s(t,o){return n(o,t)}function u(t,o){return{traits:o,soulContent:s(o,e(t.soulContent??""))}}export{u as p,s};
1
+ import{a1 as e,a2 as n}from"./index-C63bLSO4.js";function s(t,o){return n(o,t)}function u(t,o){return{traits:o,soulContent:s(o,e(t.soulContent??""))}}export{u as p,s};
@@ -1 +1 @@
1
- import{j as e,Z as l}from"./index-Dr-0P6rd.js";function s({className:a,...t}){return e.jsx("div",{"data-slot":"table-container",className:"relative w-full overflow-auto",children:e.jsx("table",{"data-slot":"table",className:l("w-full caption-bottom text-sm",a),...t})})}function r({className:a,...t}){return e.jsx("thead",{"data-slot":"table-header",className:l("[&_tr]:border-b",a),...t})}function d({className:a,...t}){return e.jsx("tbody",{"data-slot":"table-body",className:l("[&_tr:last-child]:border-0",a),...t})}function n({className:a,...t}){return e.jsx("tr",{"data-slot":"table-row",className:l("hover:bg-accent data-[state=selected]:bg-muted border-b transition-colors duration-150",a),...t})}function c({className:a,...t}){return e.jsx("th",{"data-slot":"table-head",className:l("text-muted-foreground h-10 px-2 text-left align-middle font-medium [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",a),...t})}function b({className:a,...t}){return e.jsx("td",{"data-slot":"table-cell",className:l("p-2 align-middle [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",a),...t})}export{s as T,d as a,n as b,b as c,r as d,c as e};
1
+ import{j as e,Z as l}from"./index-C63bLSO4.js";function s({className:a,...t}){return e.jsx("div",{"data-slot":"table-container",className:"relative w-full overflow-auto",children:e.jsx("table",{"data-slot":"table",className:l("w-full caption-bottom text-sm",a),...t})})}function r({className:a,...t}){return e.jsx("thead",{"data-slot":"table-header",className:l("[&_tr]:border-b",a),...t})}function d({className:a,...t}){return e.jsx("tbody",{"data-slot":"table-body",className:l("[&_tr:last-child]:border-0",a),...t})}function n({className:a,...t}){return e.jsx("tr",{"data-slot":"table-row",className:l("hover:bg-accent data-[state=selected]:bg-muted border-b transition-colors duration-150",a),...t})}function c({className:a,...t}){return e.jsx("th",{"data-slot":"table-head",className:l("text-muted-foreground h-10 px-2 text-left align-middle font-medium [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",a),...t})}function b({className:a,...t}){return e.jsx("td",{"data-slot":"table-cell",className:l("p-2 align-middle [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",a),...t})}export{s as T,d as a,n as b,b as c,r as d,c as e};
@@ -1 +1 @@
1
- import{ae as a,aj as y,af as l,ag as p,aI as r,r as g}from"./index-Dr-0P6rd.js";function C(e,t={}){const n=a();return y({queryKey:r.reviewList(e),queryFn:()=>n.getConnectorManagementReviews(e),enabled:t.enabled??!0,refetchInterval:t.refetchInterval,refetchIntervalInBackground:!1})}function d(e){const t=a();return y({queryKey:r.review(e??""),queryFn:()=>t.getConnectorManagementReview(e??""),enabled:e!==null&&e!==""})}function f(e){const t=a();return y({queryKey:r.agentRequestList(e),queryFn:()=>t.getConnectorAgentRequests(e),meta:{suppressErrorToast:!0}})}function R(e){const t=a();return y({queryKey:r.sessionAgentRequests(e??""),queryFn:()=>t.getConnectorAgentRequests(void 0,e??""),enabled:!!e,meta:{suppressErrorToast:!0}})}function m(e){const t=a();return y({queryKey:r.agentRequest(e??""),queryFn:()=>t.getConnectorAgentRequest(e??""),enabled:e!==null&&e!==""})}function A(){const e=a(),t=l();return p({mutationFn:({requestId:n,decision:o})=>e.resolveConnectorAgentRequest(n,o),meta:{suppressErrorToast:!0},onSuccess:(n,{requestId:o})=>{t.setQueryData(r.agentRequest(o),n),t.invalidateQueries({queryKey:r.agentRequests(),predicate:u=>u.queryKey[3]!==o}),t.invalidateQueries({queryKey:r.connections()})}})}function K(e){const t=a();return p({mutationFn:n=>t.startConnectorAgentRequestAuthentication(e??"",n),meta:{suppressErrorToast:!0}})}function h(e,t){var v;const n=a(),o=l(),u=y({queryKey:r.agentRequestAuthentication(e??"",t??""),queryFn:()=>n.pollConnectorAgentRequestAuthentication(e??"",t??""),enabled:!!(e&&t),refetchInterval:s=>{var c;const i=(c=s.state.data)==null?void 0:c.state;return i==="starting"||i==="pending"?2e3:!1},staleTime:0,meta:{suppressErrorToast:!0}});return g.useEffect(()=>{var i;const s=(i=u.data)==null?void 0:i.state;!s||!e||(s==="connected"&&o.invalidateQueries({queryKey:r.connections()}),(s==="connected"||s==="failed"||s==="expired"||s==="start_unknown")&&o.invalidateQueries({queryKey:r.agentRequests(),predicate:c=>c.queryKey[4]!=="authentication-flow"}))},[(v=u.data)==null?void 0:v.state,o,e]),u}function E(){const e=a(),t=l();return p({mutationFn:({reviewRequestId:n,decision:o})=>e.resolveConnectorManagementReview(n,{decision:o}),meta:{suppressErrorToast:!0},onSuccess:(n,{reviewRequestId:o})=>{t.setQueryData(r.review(o),n.review),t.invalidateQueries({queryKey:r.reviewList("pending")}),t.invalidateQueries({queryKey:r.reviewList("resolved")}),t.invalidateQueries({queryKey:r.connections()})}})}function F(){const e=a();return p({mutationFn:({connectionId:t})=>e.previewConnectorReconciliation({connectionId:t}),meta:{suppressErrorToast:!0}})}function Q(){const e=a(),t=l();return p({mutationFn:n=>e.applyConnectorReconciliation(n),meta:{suppressErrorToast:!0},onSuccess:()=>{t.invalidateQueries({queryKey:r.connections()})}})}function T(){const e=a(),t=l();return p({mutationFn:({connectionId:n})=>e.stopSharingConnectorWithEveryAgent(n),meta:{suppressErrorToast:!0},onSuccess:()=>{t.invalidateQueries({queryKey:r.connections()})}})}function w(e,t){var v;const n=a(),o=l(),u=y({queryKey:r.authenticationFlow(e??""),queryFn:()=>n.pollConnectorAuthentication(e??""),enabled:t&&e!==null&&e!=="",refetchInterval:s=>{var c;const i=(c=s.state.data)==null?void 0:c.state;return i==="starting"||i==="pending"?2e3:!1},staleTime:0,gcTime:0,meta:{suppressErrorToast:!0}});return g.useEffect(()=>{var s;((s=u.data)==null?void 0:s.state)==="connected"&&o.invalidateQueries({queryKey:r.connections()})},[(v=u.data)==null?void 0:v.state,o]),u}export{Q as a,T as b,K as c,h as d,A as e,f,C as g,m as h,d as i,E as j,w as k,R as l,F as u};
1
+ import{ae as a,aj as y,af as l,ag as p,aL as r,r as g}from"./index-C63bLSO4.js";function C(e,t={}){const n=a();return y({queryKey:r.reviewList(e),queryFn:()=>n.getConnectorManagementReviews(e),enabled:t.enabled??!0,refetchInterval:t.refetchInterval,refetchIntervalInBackground:!1})}function d(e){const t=a();return y({queryKey:r.review(e??""),queryFn:()=>t.getConnectorManagementReview(e??""),enabled:e!==null&&e!==""})}function f(e){const t=a();return y({queryKey:r.agentRequestList(e),queryFn:()=>t.getConnectorAgentRequests(e),meta:{suppressErrorToast:!0}})}function R(e){const t=a();return y({queryKey:r.sessionAgentRequests(e??""),queryFn:()=>t.getConnectorAgentRequests(void 0,e??""),enabled:!!e,meta:{suppressErrorToast:!0}})}function m(e){const t=a();return y({queryKey:r.agentRequest(e??""),queryFn:()=>t.getConnectorAgentRequest(e??""),enabled:e!==null&&e!==""})}function A(){const e=a(),t=l();return p({mutationFn:({requestId:n,decision:o})=>e.resolveConnectorAgentRequest(n,o),meta:{suppressErrorToast:!0},onSuccess:(n,{requestId:o})=>{t.setQueryData(r.agentRequest(o),n),t.invalidateQueries({queryKey:r.agentRequests(),predicate:u=>u.queryKey[3]!==o}),t.invalidateQueries({queryKey:r.connections()})}})}function K(e){const t=a();return p({mutationFn:n=>t.startConnectorAgentRequestAuthentication(e??"",n),meta:{suppressErrorToast:!0}})}function h(e,t){var v;const n=a(),o=l(),u=y({queryKey:r.agentRequestAuthentication(e??"",t??""),queryFn:()=>n.pollConnectorAgentRequestAuthentication(e??"",t??""),enabled:!!(e&&t),refetchInterval:s=>{var c;const i=(c=s.state.data)==null?void 0:c.state;return i==="starting"||i==="pending"?2e3:!1},staleTime:0,meta:{suppressErrorToast:!0}});return g.useEffect(()=>{var i;const s=(i=u.data)==null?void 0:i.state;!s||!e||(s==="connected"&&o.invalidateQueries({queryKey:r.connections()}),(s==="connected"||s==="failed"||s==="expired"||s==="start_unknown")&&o.invalidateQueries({queryKey:r.agentRequests(),predicate:c=>c.queryKey[4]!=="authentication-flow"}))},[(v=u.data)==null?void 0:v.state,o,e]),u}function E(){const e=a(),t=l();return p({mutationFn:({reviewRequestId:n,decision:o})=>e.resolveConnectorManagementReview(n,{decision:o}),meta:{suppressErrorToast:!0},onSuccess:(n,{reviewRequestId:o})=>{t.setQueryData(r.review(o),n.review),t.invalidateQueries({queryKey:r.reviewList("pending")}),t.invalidateQueries({queryKey:r.reviewList("resolved")}),t.invalidateQueries({queryKey:r.connections()})}})}function F(){const e=a();return p({mutationFn:({connectionId:t})=>e.previewConnectorReconciliation({connectionId:t}),meta:{suppressErrorToast:!0}})}function Q(){const e=a(),t=l();return p({mutationFn:n=>e.applyConnectorReconciliation(n),meta:{suppressErrorToast:!0},onSuccess:()=>{t.invalidateQueries({queryKey:r.connections()})}})}function T(){const e=a(),t=l();return p({mutationFn:({connectionId:n})=>e.stopSharingConnectorWithEveryAgent(n),meta:{suppressErrorToast:!0},onSuccess:()=>{t.invalidateQueries({queryKey:r.connections()})}})}function w(e,t){var v;const n=a(),o=l(),u=y({queryKey:r.authenticationFlow(e??""),queryFn:()=>n.pollConnectorAuthentication(e??""),enabled:t&&e!==null&&e!=="",refetchInterval:s=>{var c;const i=(c=s.state.data)==null?void 0:c.state;return i==="starting"||i==="pending"?2e3:!1},staleTime:0,gcTime:0,meta:{suppressErrorToast:!0}});return g.useEffect(()=>{var s;((s=u.data)==null?void 0:s.state)==="connected"&&o.invalidateQueries({queryKey:r.connections()})},[(v=u.data)==null?void 0:v.state,o]),u}export{Q as a,T as b,K as c,h as d,A as e,f,C as g,m as h,d as i,E as j,w as k,R as l,F as u};
@@ -1 +1 @@
1
- import{ae as a,af as r,ag as o,ah as s}from"./index-Dr-0P6rd.js";function i(){const e=a(),t=r();return o({mutationFn:n=>e.deleteBinding(n),onSuccess:()=>{t.invalidateQueries({queryKey:[...s]})},meta:{errorLabel:"Couldn’t remove that connection"}})}export{i as u};
1
+ import{ae as a,af as r,ag as o,ah as s}from"./index-C63bLSO4.js";function i(){const e=a(),t=r();return o({mutationFn:n=>e.deleteBinding(n),onSuccess:()=>{t.invalidateQueries({queryKey:[...s]})},meta:{errorLabel:"Couldn’t remove that connection"}})}export{i as u};
@@ -1 +1 @@
1
- import{ae as s,aj as r,af as i,r as n,ak as a,al as t}from"./index-Dr-0P6rd.js";function l(){const e=s();return r({queryKey:a.devLinks(),queryFn:()=>e.listDevLinks()})}function o(){const e=i();return n.useCallback(()=>{e.invalidateQueries({queryKey:[...a.all,"installed"]}),e.invalidateQueries({queryKey:t.all}),e.invalidateQueries({queryKey:["commands"]})},[e])}export{l as a,o as u};
1
+ import{ae as s,aj as r,af as i,r as n,ak as a,al as t}from"./index-C63bLSO4.js";function l(){const e=s();return r({queryKey:a.devLinks(),queryFn:()=>e.listDevLinks()})}function o(){const e=i();return n.useCallback(()=>{e.invalidateQueries({queryKey:[...a.all,"installed"]}),e.invalidateQueries({queryKey:t.all}),e.invalidateQueries({queryKey:["commands"]})},[e])}export{l as a,o as u};
@@ -1 +1 @@
1
- import{ai as s,r as n}from"./index-Dr-0P6rd.js";const u="internal";function i(e=!0){const t=s(e),r=n.useMemo(()=>{var a;return((a=t.data)==null?void 0:a.filter(o=>o.manifest.category!==u))??[]},[t.data]);return{...t,data:r}}export{i as u};
1
+ import{ai as s,r as n}from"./index-C63bLSO4.js";const u="internal";function i(e=!0){const t=s(e),r=n.useMemo(()=>{var a;return((a=t.data)==null?void 0:a.filter(o=>o.manifest.category!==u))??[]},[t.data]);return{...t,data:r}}export{i as u};
@@ -0,0 +1 @@
1
+ import{ae as r,as as a}from"./index-C63bLSO4.js";const s=["activity"];function o(t={}){const i=r();return a({queryKey:[...s,t],queryFn:({pageParam:e})=>i.listActivityEvents({...t,limit:50,before:e}),initialPageParam:void 0,getNextPageParam:e=>e.nextCursor??void 0,staleTime:3e4,refetchOnWindowFocus:!0})}export{s as A,o as u};
@@ -0,0 +1 @@
1
+ import{at as e}from"./index-C63bLSO4.js";const t=1024;function s(){return e(`(max-width: ${t-1}px)`)}export{s as u};
@@ -1,11 +1,11 @@
1
- import{r as p,a4 as h,j as d,fv as N,Z as x,fw as M,fx as _,fy as S,fz as L,fA as m,eO as T,fB as C,fC as D,fD as E}from"./index-Dr-0P6rd.js";function J(){const[e,t]=p.useState(()=>y());return p.useEffect(()=>{const n=window.visualViewport;if(!n)return;const s=()=>{const r=y();t(i=>i===r?i:r)};return n.addEventListener("resize",s),n.addEventListener("scroll",s),()=>{n.removeEventListener("resize",s),n.removeEventListener("scroll",s)}},[]),e}function y(){const e=typeof window<"u"?window.visualViewport:void 0;return!e||e.scale>1?0:Math.max(0,Math.round(window.innerHeight-(e.height+e.offsetTop)))}/**
1
+ import{r as p,a4 as v,j as d,fT as N,Z as x,fU as M,fV as _,eV as S,fW as T,fX as m,ep as L,eT as C,fY as E,fZ as D}from"./index-C63bLSO4.js";function J(){const[e,t]=p.useState(()=>y());return p.useEffect(()=>{const n=window.visualViewport;if(!n)return;const s=()=>{const r=y();t(i=>i===r?i:r)};return n.addEventListener("resize",s),n.addEventListener("scroll",s),()=>{n.removeEventListener("resize",s),n.removeEventListener("scroll",s)}},[]),e}function y(){const e=typeof window<"u"?window.visualViewport:void 0;return!e||e.scale>1?0:Math.max(0,Math.round(window.innerHeight-(e.height+e.offsetTop)))}/**
2
2
  * @license lucide-react v1.48.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
5
5
  * See the LICENSE file in the root directory of this source tree.
6
- */const A={name:"at-sign",size:24,node:[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M16 8v5a3 3 0 0 0 6 0v-1a10 10 0 1 0-4 8",key:"7n84p3"}]]};A.node;const R=h(A);/**
6
+ */const A={name:"at-sign",size:24,node:[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M16 8v5a3 3 0 0 0 6 0v-1a10 10 0 1 0-4 8",key:"7n84p3"}]]};A.node;const U=v(A);/**
7
7
  * @license lucide-react v1.48.0 - ISC
8
8
  *
9
9
  * This source code is licensed under the ISC license.
10
10
  * See the LICENSE file in the root directory of this source tree.
11
- */const g={name:"repeat",size:24,node:[["path",{d:"m17 2 4 4-4 4",key:"nntrym"}],["path",{d:"M3 11v-1a4 4 0 0 1 4-4h14",key:"84bu3i"}],["path",{d:"m7 22-4-4 4-4",key:"1wqhfi"}],["path",{d:"M21 13v1a4 4 0 0 1-4 4H3",key:"1rx37r"}]]};g.node;const U=h(g),O=new Set(["ArrowLeft","ArrowRight","ArrowUp","ArrowDown","Home","End"]);function Y({gripStyle:e,onDragging:t,onResizeEnd:n,disabled:s=!1,...r}){const i=a=>{!s&&O.has(a.key)&&(n==null||n())};return d.jsx(N,{...r,disabled:s,tabIndex:s?-1:0,"aria-disabled":s||void 0,onDragging:a=>{t==null||t(a),a||n==null||n()},onKeyDown:i,className:"group relative outline-none",style:{width:0,overflow:"visible"},children:d.jsx("div",{className:"absolute inset-y-0 -left-1 z-10 flex w-2 items-center justify-center",style:e,children:d.jsx("div",{"data-slot":"pane-resize-line",className:x("h-full w-px transition-colors duration-500",!s&&"group-hover:bg-ring/50 group-focus-visible:bg-ring group-focus-visible:transition-none")})})})}const k=8;function I(e){if(e==null)return null;const t=e.replace(/\s+/g," ").trim();return t.length===0?null:t}function B(e){if(L(e)){const n=e.unreadCount??0;return n===1?"1 new message":`${n} new messages`}const t=e.working??0;return t>0?t===1?"1 agent working":`${t} agents working`:I(e.topic)}function w(e){return{kind:"session",id:e.id,name:_(e.title),summary:I(e.lastMessagePreview),lastActivityAt:e.updatedAt,session:e}}function H(e){return{kind:e.kind==="dm"?"dm":"channel",id:e.id,name:S(e),summary:B(e),lastActivityAt:e.lastActivityAt,room:e}}function l(e){if(e===void 0)return null;const t=Date.parse(e);return Number.isNaN(t)?null:t}function j(e){return e.kind==="session"?m("session",e.id):m("room",e.id)}function v(e,t){const n=[l(t[j(e)]),...e.kind==="session"?[l(e.session.lastTouchedByYouAt),l(e.session.userLastMessageAt)]:[]].filter(s=>s!==null);return n.length>0?Math.max(...n):l(e.lastActivityAt)??Number.NEGATIVE_INFINITY}function K(e){return(t,n)=>v(n,e)-v(t,e)||n.id.localeCompare(t.id)}function W(e){const t=new Set;return e.filter(n=>{const s=`${n.kind}:${n.id}`;return t.has(s)?!1:(t.add(s),!0)})}function b(e,t){return!(t.has(e.id)||e.unreadCount===null||e.lastActivityAt===e.createdAt)}function P({sessions:e,rooms:t,mutedRoomIds:n=new Set,interactions:s={},limit:r=k}){const{yours:i,spinOffs:a,automated:o}=M(e),f=K(s),u=[...i.map(w),...t.filter(c=>b(c,n)).map(H)].sort(f);return{items:W(u).slice(0,r),automated:[...a,...o].map(w).sort(f).slice(0,r)}}const V=3,$=E;function Q({limit:e=k,mutedRoomIds:t,enabled:n=!0}={}){var u,c;const s=T(Math.max(e*V,$),{enabled:n}),r=C({enabled:n}),i=D(),a=(u=s.data)==null?void 0:u.sessions,o=r.data;return{...p.useMemo(()=>P({sessions:a??[],rooms:o??[],mutedRoomIds:t,interactions:i,limit:e}),[a,o,t,i,e]),isLoading:n&&(s.isLoading||r.isLoading),warnings:((c=s.data)==null?void 0:c.warnings)??[]}}export{R as A,Y as P,U as R,J as a,Q as u};
11
+ */const g={name:"repeat",size:24,node:[["path",{d:"m17 2 4 4-4 4",key:"nntrym"}],["path",{d:"M3 11v-1a4 4 0 0 1 4-4h14",key:"84bu3i"}],["path",{d:"m7 22-4-4 4-4",key:"1wqhfi"}],["path",{d:"M21 13v1a4 4 0 0 1-4 4H3",key:"1rx37r"}]]};g.node;const Y=v(g),O=new Set(["ArrowLeft","ArrowRight","ArrowUp","ArrowDown","Home","End"]);function R({gripStyle:e,onDragging:t,onResizeEnd:n,disabled:s=!1,...r}){const i=a=>{!s&&O.has(a.key)&&(n==null||n())};return d.jsx(N,{...r,disabled:s,tabIndex:s?-1:0,"aria-disabled":s||void 0,onDragging:a=>{t==null||t(a),a||n==null||n()},onKeyDown:i,className:"group relative outline-none",style:{width:0,overflow:"visible"},children:d.jsx("div",{className:"absolute inset-y-0 -left-1 z-10 flex w-2 items-center justify-center",style:e,children:d.jsx("div",{"data-slot":"pane-resize-line",className:x("h-full w-px transition-colors duration-500",!s&&"group-hover:bg-ring/50 group-focus-visible:bg-ring group-focus-visible:transition-none")})})})}const k=8;function I(e){if(e==null)return null;const t=e.replace(/\s+/g," ").trim();return t.length===0?null:t}function B(e){if(T(e)){const n=e.unreadCount??0;return n===1?"1 new message":`${n} new messages`}const t=e.working??0;return t>0?t===1?"1 agent working":`${t} agents working`:I(e.topic)}function w(e){return{kind:"session",id:e.id,name:_(e.title),summary:I(e.lastMessagePreview),lastActivityAt:e.updatedAt,session:e}}function H(e){return{kind:e.kind==="dm"?"dm":"channel",id:e.id,name:S(e),summary:B(e),lastActivityAt:e.lastActivityAt,room:e}}function l(e){if(e===void 0)return null;const t=Date.parse(e);return Number.isNaN(t)?null:t}function V(e){return e.kind==="session"?m("session",e.id):m("room",e.id)}function h(e,t){const n=[l(t[V(e)]),...e.kind==="session"?[l(e.session.lastTouchedByYouAt),l(e.session.userLastMessageAt)]:[]].filter(s=>s!==null);return n.length>0?Math.max(...n):l(e.lastActivityAt)??Number.NEGATIVE_INFINITY}function W(e){return(t,n)=>h(n,e)-h(t,e)||n.id.localeCompare(t.id)}function j(e){const t=new Set;return e.filter(n=>{const s=`${n.kind}:${n.id}`;return t.has(s)?!1:(t.add(s),!0)})}function K(e,t){return!(t.has(e.id)||e.unreadCount===null||e.lastActivityAt===e.createdAt)}function b({sessions:e,rooms:t,mutedRoomIds:n=new Set,interactions:s={},limit:r=k}){const{yours:i,spinOffs:a,automated:o}=M(e),f=W(s),u=[...i.map(w),...t.filter(c=>K(c,n)).map(H)].sort(f);return{items:j(u).slice(0,r),automated:[...a,...o].map(w).sort(f).slice(0,r)}}const P=3,$=D;function Z({limit:e=k,mutedRoomIds:t,enabled:n=!0}={}){var u,c;const s=L(Math.max(e*P,$),{enabled:n}),r=C({enabled:n}),i=E(),a=(u=s.data)==null?void 0:u.sessions,o=r.data;return{...p.useMemo(()=>b({sessions:a??[],rooms:o??[],mutedRoomIds:t,interactions:i,limit:e}),[a,o,t,i,e]),isLoading:n&&(s.isLoading||r.isLoading),warnings:((c=s.data)==null?void 0:c.warnings)??[]}}export{U as A,R as P,Y as R,J as a,Z as u};
@@ -1 +1 @@
1
- import{ae as t,aj as s}from"./index-Dr-0P6rd.js";const u=["mesh","topology"];function a(e,o=!0){const r=t();return s({queryKey:[...u,e],queryFn:()=>r.getMeshTopology(e),enabled:o,staleTime:3e4,refetchInterval:3e4})}export{a as u};
1
+ import{ae as t,aj as s}from"./index-C63bLSO4.js";const u=["mesh","topology"];function a(e,o=!0){const r=t();return s({queryKey:[...u,e],queryFn:()=>r.getMeshTopology(e),enabled:o,staleTime:3e4,refetchInterval:3e4})}export{a as u};
@@ -0,0 +1 @@
1
+ import{ap as f,ae as y,af as d,ag as T,aq as P,ar as i,r as b}from"./index-C63bLSO4.js";const l=Object.freeze([]);function p(){var e;const{data:t}=f();return((e=t==null?void 0:t.ui)==null?void 0:e.panelTabs)??l}function m(t,e,u){const r=t.filter(a=>a.tab!==e);if(!u)return r;const o={tab:e,show:u.show,hide:u.hide},n=t.findIndex(a=>a.tab===e);return n===-1?[...r,o]:[...r.slice(0,n),o,...r.slice(n)]}function C(){const t=y(),e=d(),u=T({mutationKey:P,mutationFn:({next:n})=>t.updateConfig({ui:{panelTabs:n}}),onError:(n,{previous:a})=>{a!==void 0&&e.setQueryData(i.current(),a)},onSettled:()=>{e.invalidateQueries({queryKey:i.current()})}}),{mutate:r}=u;return{setPlacement:b.useCallback((n,a)=>{const s=e.getQueryData(i.current());if(!(s!=null&&s.ui))return;e.cancelQueries({queryKey:i.current()});const c=m(s.ui.panelTabs??l,n,a);e.setQueryData(i.current(),{...s,ui:{...s.ui,panelTabs:c}}),r({next:c,previous:s})},[r,e]),isPending:u.isPending}}export{C as a,p as u};
@@ -0,0 +1 @@
1
+ import{am as n}from"./index-C63bLSO4.js";function r(s){const e=n();return s||e}export{r as u};
@@ -1 +1 @@
1
- import{r as u,gk as Oe,bd as Le,bb as H,d0 as Fe,j as t,ba as F,bh as He,bc as U,gl as Ke,bg as ye,gm as Ge,bi as X,bj as ze,gn as Ue,go as Ye,Z as P,ao as we,gp as ve,dc as We,gq as qe,bl as pe,a3 as re,gr as Xe,cR as xe,gs as Ze}from"./index-Dr-0P6rd.js";import{g as Je}from"./dorkbot-templates-8Yu9POWJ.js";import{p as G}from"./sound-D3r8dGFH.js";import{p as Qe}from"./soul-file-C7YgkNET.js";var et=Object.defineProperty,h=(r,e)=>et(r,"name",{value:e,configurable:!0}),je=["PageUp","PageDown"],ke=["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"],Ce={"from-left":["Home","PageDown","ArrowDown","ArrowLeft"],"from-right":["Home","PageDown","ArrowDown","ArrowRight"],"from-bottom":["Home","PageDown","ArrowDown","ArrowLeft"],"from-top":["Home","PageDown","ArrowUp","ArrowLeft"]},Y="Slider",[oe,tt,rt]=Oe(Y),[ae,Ot]=Le(Y,[rt]),[nt,W]=ae(Y),st=u.forwardRef(h(function(e,s){const{name:a,min:i=0,max:n=100,step:d=1,orientation:l="horizontal",disabled:p=!1,minStepsBetweenThumbs:c=0,defaultValue:o=[i],value:x,onValueChange:f=h(()=>{},"onValueChange"),onValueCommit:g=h(()=>{},"onValueCommit"),inverted:j=!1,form:v,...S}=e,R=u.useRef(new Set),C=u.useRef(0),T=u.useRef(!1),_=l==="horizontal"?ot:it,[k,O]=u.useState(null),b=H(s,O),[m=[],w]=Fe({prop:x,defaultProp:o,onChange:h(y=>{var D;(D=[...R.current][C.current])==null||D.focus({preventScroll:!0,focusVisible:T.current}),T.current=!1,f(y)},"onChange")}),B=u.useRef(m),q=u.useRef(m);u.useEffect(()=>{const y=v?k==null?void 0:k.ownerDocument.getElementById(v):k==null?void 0:k.closest("form");if(y instanceof HTMLFormElement){const N=h(()=>w(q.current),"reset");return y.addEventListener("reset",N),()=>y.removeEventListener("reset",N)}},[k,v,w]);function I(y){const N=_e(m,y);E(y,N)}h(I,"handleSlideStart");function $(y){E(y,C.current)}h($,"handleSlideMove");function M(){String(m)!==String(B.current)&&g(m)}h(M,"handleSlideEnd");function E(y,N,{commit:D}={commit:!1}){const fe=ce(d),te=z(Math.round((y-i)/d)*d+i,fe),K=ye(te,[i,n]);w((L=[])=>{const V=Te(L,K,N);if(De(V,c*d)){C.current=V.indexOf(K);const me=String(V)!==String(L);return me&&D&&g(V),me?V:L}else return L})}return h(E,"updateValues"),t.jsx(nt,{scope:e.__scopeSlider,name:a,disabled:p,min:i,max:n,valueIndexToChangeRef:C,thumbs:R.current,values:m,orientation:l,form:v,children:t.jsx(oe.Provider,{scope:e.__scopeSlider,children:t.jsx(oe.Slot,{scope:e.__scopeSlider,children:t.jsx(_,{"aria-disabled":p,"data-disabled":p?"":void 0,...S,ref:b,onPointerDown:F(S.onPointerDown,()=>{p||(B.current=m,T.current=!1)}),min:i,max:n,inverted:j,onSlideStart:p?void 0:I,onSlideMove:p?void 0:$,onSlideEnd:p?void 0:M,onHomeKeyDown:()=>{p||(T.current=!0,E(i,0,{commit:!0}))},onEndKeyDown:()=>{p||(T.current=!0,E(n,m.length-1,{commit:!0}))},onStepKeyDown:({event:y,direction:N})=>{if(!p){T.current=!0;const te=je.includes(y.key)||y.shiftKey&&ke.includes(y.key)?10:1,K=C.current,L=m[K],V=Ie(L,{min:i,step:d,direction:N,multiplier:te});E(V,K,{commit:!0})}}})})})})},"Slider")),[Re,Me]=ae(Y,{startEdge:"left",endEdge:"right",size:"width",direction:1}),ot=u.forwardRef(h(function(e,s){const{min:a,max:i,dir:n,inverted:d,onSlideStart:l,onSlideMove:p,onSlideEnd:c,onStepKeyDown:o,...x}=e,[f,g]=u.useState(null),j=H(s,g),v=u.useRef(void 0),S=He(n),R=S==="ltr",C=R&&!d||!R&&d;function T(A){const _=v.current||f.getBoundingClientRect(),k=[0,_.width],b=ee(k,C?[a,i]:[i,a]);return v.current=_,b(A-_.left)}return h(T,"getValueFromPointer"),t.jsx(Re,{scope:e.__scopeSlider,startEdge:C?"left":"right",endEdge:C?"right":"left",direction:C?1:-1,size:"width",children:t.jsx(Ee,{dir:S,"data-orientation":"horizontal",...x,ref:j,style:{...x.style,"--radix-slider-thumb-transform":"translateX(-50%)"},onSlideStart:A=>{const _=T(A.clientX);l==null||l(_)},onSlideMove:A=>{const _=T(A.clientX);p==null||p(_)},onSlideEnd:()=>{v.current=void 0,c==null||c()},onStepKeyDown:A=>{const k=Ce[C?"from-left":"from-right"].includes(A.key);o==null||o({event:A,direction:k?-1:1})}})})},"SliderHorizontal")),it=u.forwardRef(h(function(e,s){const{min:a,max:i,inverted:n,onSlideStart:d,onSlideMove:l,onSlideEnd:p,onStepKeyDown:c,...o}=e,x=u.useRef(null),f=H(s,x),g=u.useRef(void 0),j=!n;function v(S){const R=g.current||x.current.getBoundingClientRect(),C=[0,R.height],A=ee(C,j?[i,a]:[a,i]);return g.current=R,A(S-R.top)}return h(v,"getValueFromPointer"),t.jsx(Re,{scope:e.__scopeSlider,startEdge:j?"bottom":"top",endEdge:j?"top":"bottom",size:"height",direction:j?1:-1,children:t.jsx(Ee,{"data-orientation":"vertical",...o,ref:f,style:{...o.style,"--radix-slider-thumb-transform":"translateY(50%)"},onSlideStart:S=>{const R=v(S.clientY);d==null||d(R)},onSlideMove:S=>{const R=v(S.clientY);l==null||l(R)},onSlideEnd:()=>{g.current=void 0,p==null||p()},onStepKeyDown:S=>{const C=Ce[j?"from-bottom":"from-top"].includes(S.key);c==null||c({event:S,direction:C?-1:1})}})})},"SliderVertical")),Ee=u.forwardRef(h(function(e,s){const{__scopeSlider:a,onSlideStart:i,onSlideMove:n,onSlideEnd:d,onHomeKeyDown:l,onEndKeyDown:p,onStepKeyDown:c,...o}=e,x=W(Y,a);return t.jsx(U.span,{...o,ref:s,onKeyDown:F(e.onKeyDown,f=>{f.key==="Home"?(l(f),f.preventDefault()):f.key==="End"?(p(f),f.preventDefault()):je.concat(ke).includes(f.key)&&(c(f),f.preventDefault())}),onPointerDown:F(e.onPointerDown,f=>{const g=f.target;g.setPointerCapture(f.pointerId),f.preventDefault(),x.thumbs.has(g)?g.focus({preventScroll:!0,focusVisible:!1}):i(f)}),onPointerMove:F(e.onPointerMove,f=>{f.target.hasPointerCapture(f.pointerId)&&n(f)}),onPointerUp:F(e.onPointerUp,f=>{const g=f.target;g.hasPointerCapture(f.pointerId)&&(g.releasePointerCapture(f.pointerId),d(f))})})},"SliderImpl")),at="SliderTrack",lt=u.forwardRef(h(function(e,s){const{__scopeSlider:a,...i}=e,n=W(at,a);return t.jsx(U.span,{"data-disabled":n.disabled?"":void 0,"data-orientation":n.orientation,...i,ref:s})},"SliderTrack")),he="SliderRange",ct=u.forwardRef(h(function(e,s){const{__scopeSlider:a,...i}=e,n=W(he,a),d=Me(he,a),l=u.useRef(null),p=H(s,l),c=n.values.length,o=n.values.map(g=>le(g,n.min,n.max)),x=c>1?Math.min(...o):0,f=100-Math.max(...o);return t.jsx(U.span,{"data-orientation":n.orientation,"data-disabled":n.disabled?"":void 0,...i,ref:p,style:{...e.style,[d.startEdge]:x+"%",[d.endEdge]:f+"%"}})},"SliderRange")),dt="SliderThumb",[ut,Pe]=ae(dt),ft="SliderThumbProvider";function Ae(r){const{__scopeSlider:e,name:s,children:a,internal_do_not_use_render:i}=r,n=W(ft,e),d=tt(e),[l,p]=u.useState(null),c=u.useMemo(()=>l?d().findIndex(S=>S.ref.current===l):-1,[d,l]),o=Ge(l),x=l?!!n.form||!!l.closest("form"):!0,f=n.values[c],g=s??(n.name?n.name+(n.values.length>1?"[]":""):void 0),j=f===void 0?0:le(f,n.min,n.max);u.useEffect(()=>{if(l)return n.thumbs.add(l),()=>{n.thumbs.delete(l)}},[l,n.thumbs]);const v={value:f,name:g,form:n.form,isFormControl:x,index:c,thumb:l,onThumbChange:p,percent:j,size:o};return t.jsx(ut,{scope:e,...v,children:Ve(i)?i(v):a})}h(Ae,"SliderThumbProvider");var ne="SliderThumbTrigger",mt=u.forwardRef(h(function(e,s){const{__scopeSlider:a,...i}=e,n=W(ne,a),d=Me(ne,a),{index:l,value:p,percent:c,size:o,onThumbChange:x}=Pe(ne,a),f=H(s,x),g=Ne(l,n.values.length),j=o==null?void 0:o[d.size],v=j?$e(j,c,d.direction):0;return t.jsx("span",{style:{transform:"var(--radix-slider-thumb-transform)",position:"absolute",[d.startEdge]:`calc(${c}% + ${v}px)`},children:t.jsx(oe.ItemSlot,{scope:a,children:t.jsx(U.span,{role:"slider","aria-label":e["aria-label"]||g,"aria-valuemin":n.min,"aria-valuenow":p,"aria-valuemax":n.max,"aria-orientation":n.orientation,"data-orientation":n.orientation,"data-disabled":n.disabled?"":void 0,tabIndex:n.disabled?void 0:0,...i,ref:f,style:p===void 0?{display:"none"}:e.style,onFocus:F(e.onFocus,()=>{n.valueIndexToChangeRef.current=l})})})})},"SliderThumbTrigger")),pt=u.forwardRef(h(function(e,s){const{__scopeSlider:a,name:i,...n}=e;return t.jsx(Ae,{__scopeSlider:a,name:i,internal_do_not_use_render:({index:d,isFormControl:l})=>t.jsxs(t.Fragment,{children:[t.jsx(mt,{...n,ref:s,__scopeSlider:a}),l?t.jsx(ht,{__scopeSlider:a},d):null]})})},"SliderThumb")),xt="SliderBubbleInput",ht=u.forwardRef(h(function({__scopeSlider:e,...s},a){const{value:i,name:n,form:d}=Pe(xt,e),l=u.useRef(null),p=H(l,a),c=Ke(i);return u.useEffect(()=>{const o=l.current;if(!o)return;const x=window.HTMLInputElement.prototype,g=Object.getOwnPropertyDescriptor(x,"value").set;if(c!==i&&g){const j=new Event("input",{bubbles:!0});g.call(o,i),o.dispatchEvent(j)}},[c,i]),t.jsx(U.input,{style:{display:"none"},name:n,form:d,...s,ref:p,defaultValue:i})},"SliderBubbleInput"));function Te(r=[],e,s){const a=[...r];return a[s]=e,a.sort((i,n)=>i-n)}h(Te,"getNextSortedValues");function le(r,e,s){const n=100/(s-e)*(r-e);return ye(n,[0,100])}h(le,"convertValueToPercentage");function Ne(r,e){return e>2?`Value ${r+1} of ${e}`:e===2?["Minimum","Maximum"][r]:void 0}h(Ne,"getLabel");function _e(r,e){if(r.length===1)return 0;const s=r.map(i=>Math.abs(i-e)),a=Math.min(...s);return s.indexOf(a)}h(_e,"getClosestValueIndex");function $e(r,e,s){const a=r/2,n=ee([0,50],[0,a]);return(a-n(e)*s)*s}h($e,"getThumbInBoundsOffset");function Be(r){return r.slice(0,-1).map((e,s)=>r[s+1]-e)}h(Be,"getStepsBetweenValues");function De(r,e){if(e>0){const s=Be(r);return Math.min(...s)>=e}return!0}h(De,"hasMinStepsBetweenValues");function ee(r,e){return s=>{if(r[0]===r[1]||e[0]===e[1])return e[0];const a=(e[1]-e[0])/(r[1]-r[0]);return e[0]+a*(s-r[0])}}h(ee,"linearScale");function ce(r){if(!Number.isFinite(r))return 0;const e=r.toString();if(e.includes("e")){const[a,i]=e.split("e"),n=a.split(".")[1]||"",d=Number(i);return Math.max(0,n.length-d)}const s=e.split(".")[1];return s?s.length:0}h(ce,"getDecimalCount");function z(r,e){const s=Math.pow(10,e);return Math.round(r*s)/s}h(z,"roundValue");function Ie(r,{min:e,step:s,direction:a,multiplier:i}){const n=ce(s),d=(r-e)/s,l=Math.round(d),p=z(l*s+e,n)===z(r,n);let c;return p?c=l+i*a:a>0?c=Math.ceil(d):c=Math.floor(d),z(c*s+e,n)}h(Ie,"getNextStepValue");function Ve(r){return typeof r=="function"}h(Ve,"isFunction");function gt({className:r,defaultValue:e,value:s,min:a=0,max:i=100,...n}){const d=u.useMemo(()=>Array.isArray(s)?s:Array.isArray(e)?e:[a,i],[s,e,a,i]);return t.jsxs(st,{"data-slot":"slider",defaultValue:e,value:s,min:a,max:i,className:X("relative flex w-full touch-none items-center select-none data-[disabled]:opacity-50 data-[orientation=vertical]:h-full data-[orientation=vertical]:min-h-44 data-[orientation=vertical]:w-auto data-[orientation=vertical]:flex-col",r),...n,children:[t.jsx(lt,{"data-slot":"slider-track",className:X("bg-dui-muted relative grow overflow-hidden rounded-full data-[orientation=horizontal]:h-1.5 data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-1.5"),children:t.jsx(ct,{"data-slot":"slider-range",className:X("bg-dui-primary absolute data-[orientation=horizontal]:h-full data-[orientation=vertical]:w-full")})}),Array.from({length:d.length},(l,p)=>t.jsx(pt,{"data-slot":"slider-thumb",className:X("border-dui-primary hover:ring-dui-ring/50 block size-4 shrink-0 rounded-full border bg-white shadow-sm transition-[color,box-shadow] hover:ring-4 focus-visible:outline-hidden disabled:pointer-events-none disabled:opacity-50 motion-reduce:transition-none!",ze)},p))]})}const ge={light:{heroGlow:"28",heroGlowOuter:"14",pillBgStart:"20",pillBgEnd:"14",pillBorder:"50",pillGlow:"30"},dark:{heroGlow:"18",heroGlowOuter:"08",pillBgStart:"12",pillBgEnd:"08",pillBorder:"40",pillGlow:"33"}};function bt(){return document.documentElement.classList.contains("dark")}function St(){return!1}function yt(r){const e=new MutationObserver(s=>{for(const a of s)if(a.attributeName==="class"){r();return}});return e.observe(document.documentElement,{attributes:!0,attributeFilter:["class"]}),()=>e.disconnect()}function de(){return u.useSyncExternalStore(yt,bt,St)}function wt(){return de()?ge.dark:ge.light}function vt({traits:r,onChange:e,onSliderChange:s}){const a=u.useCallback((i,n)=>{s==null||s(i,n),e({...r,[i]:n})},[r,e,s]);return t.jsx("div",{className:"space-y-4",children:Ue.map(i=>t.jsx(jt,{name:i,level:r[i]??3,onChange:a},i))})}function jt({name:r,level:e,onChange:s}){const a=Ye[r][e];return t.jsxs("div",{className:"space-y-2",children:[t.jsxs("div",{className:"flex items-center justify-between text-sm",children:[t.jsx("span",{className:"font-medium capitalize",children:r}),t.jsxs("span",{className:"text-muted-foreground",children:[e,"/5 ",a.label]})]}),t.jsx(gt,{value:[e],onValueChange:([i])=>s(r,i),min:1,max:5,step:1,"aria-label":`${r} trait level`})]})}const kt=we("inline-flex shrink-0 items-center gap-1.5 rounded-full border font-medium transition-[color,background-color,border-color,box-shadow]",{variants:{size:{sm:"text-2xs px-2.5 py-1",md:"px-3 py-1 text-xs"},state:{rest:"bg-accent text-muted-foreground hover:text-foreground border-transparent",active:"text-foreground",glowing:"text-foreground"}},defaultVariants:{size:"md",state:"rest"}}),Ct=we("",{variants:{gradient:{true:"bg-clip-text text-transparent",false:""}},defaultVariants:{gradient:!1}});function Rt({emoji:r,name:e,colors:s,size:a="md",state:i="rest",gradientText:n=!1,className:d,style:l,...p}){const c=de(),o=wt(),x=i==="active"||i==="glowing";return t.jsxs("button",{type:"button",className:P(kt({size:a,state:i}),d),style:{...x?{borderColor:c?s.stroke+o.pillBorder:s.stroke+"AA",background:`linear-gradient(135deg, ${s.nebula}${o.pillBgStart}, ${s.wisp}${o.pillBgEnd})`,...i==="glowing"?{boxShadow:`0 0 12px ${s.nebula}${o.pillGlow}`}:{}}:{},...l},...p,children:[t.jsx("span",{children:r}),t.jsx("span",{className:Ct({gradient:n}),style:n?{backgroundImage:`linear-gradient(135deg, ${s.stroke}, ${s.strokeEnd})`,...c?{}:{filter:"brightness(0.65) saturate(1.3)"}}:void 0,children:e})]})}const Mt=["Verbosity","Autonomy","Chaos","Creativity","Humor","Spice"],Z=["verbosity","autonomy","chaos","creativity","humor","spice"],Q=6,ue=5,be=3,Et=800,Pt=600,Se={light:{nebulaCenter:.45,nebulaMid:.25,wispStart:.2,fillStart:.25,fillEnd:.15,haloBase:.25,haloAmplitude:.12,breatheMin:.25,breatheMax:.4,guideBase:.1,guideStep:.04,axis:.12,stardustPeak:1,glowBlur:12,vertexBlur:4},dark:{nebulaCenter:.35,nebulaMid:.15,wispStart:.12,fillStart:.35,fillEnd:.25,haloBase:.15,haloAmplitude:.1,breatheMin:.15,breatheMax:.25,guideBase:.06,guideStep:.02,axis:.08,stardustPeak:.8,glowBlur:10,vertexBlur:4}},At=[{r:1.2,dur:"9s",fade:"4.5s",begin:"0s",path:"M0,0 C30,-40 60,0 40,40 C20,60 -20,40 -30,10 C-40,-20 -10,-50 0,0"},{r:.9,dur:"7s",fade:"3.5s",begin:"0s",path:"M0,0 C-20,30 -40,20 -30,-10 C-20,-30 10,-40 20,-20 C30,0 20,30 0,0"},{r:1,dur:"11s",fade:"5s",begin:"0s",path:"M0,0 C40,10 30,50 0,40 C-30,30 -40,-10 -20,-30 C0,-50 30,-20 0,0"},{r:.7,dur:"8s",fade:"4s",begin:"2s",path:"M0,0 C15,-35 45,-15 35,20 C25,45 -15,40 -25,15 C-35,-10 -5,-40 0,0"},{r:1.1,dur:"12s",fade:"6s",begin:"1s",path:"M0,0 C-25,25 -45,5 -30,-20 C-15,-45 20,-35 30,-10 C40,15 15,35 0,0"}];function J(r,e,s,a){const i=Math.PI*2*r/Q-Math.PI/2,n=e/ue*a;return{x:s+n*Math.cos(i),y:s+n*Math.sin(i)}}function ie(r){return r.map(e=>`${e.x},${e.y}`).join(" ")}function Tt(r,e,s){return ie(Array.from({length:Q},(a,i)=>J(i,r*ue,e,s)))}function Nt(r){return r<.5?4*r*r*r:1-(-2*r+2)**3/2}function _t({traits:r,colors:e=ve,size:s=180,animated:a=!0,className:i}){const n=u.useId().replace(/:/g,""),d=de(),l=d?Se.dark:Se.light,p=u.useRef(l);p.current=l;const c=d?{strokeStart:e.stroke,strokeEnd:e.strokeEnd,fillStart:e.fill,fillEnd:e.fillEnd,dot:e.dot,glow:e.glow}:{strokeStart:e.fill,strokeEnd:e.fillEnd,fillStart:e.stroke,fillEnd:e.strokeEnd,dot:e.fill,glow:e.stroke},o=s/2,x=s*.32,f=x+16,g=s/200,j=u.useRef(null),v=u.useRef(null),S=u.useRef([]),R=u.useRef([]),C=u.useRef({current:{...r},from:null,target:{...r},morphStart:0,breathe:0}),T=u.useRef(r);u.useEffect(()=>{const b=T.current;if(Z.some(w=>b[w]!==r[w])){const w=C.current;if(a){w.from={...w.current},w.target={...r},w.morphStart=performance.now();const B=v.current;if(B){const q=performance.now();(function I(){const $=Math.min((performance.now()-q)/Pt,1),M=1-(1-$)*(1-$);B.setAttribute("r",String(x*(.7+.6*M))),B.setAttribute("opacity",String(.4*(1-M))),$<1&&requestAnimationFrame(I)})()}}else Object.assign(w.current,r),Object.assign(w.target,r)}T.current=r},[r,a,x]),u.useEffect(()=>{if(!a)return;let b;const m=C.current;function w(){var $;m.breathe+=.015;const B=1+Math.sin(m.breathe)*.04;if(m.from){const M=Math.min((performance.now()-m.morphStart)/Et,1),E=Nt(M);for(const y of Z)m.current[y]=m.from[y]+(m.target[y]-m.from[y])*E;M>=1&&(m.from=null,Object.assign(m.current,m.target))}const I=Z.map(M=>m.current[M]).map((M,E)=>J(E,M*B,o,x));($=j.current)==null||$.setAttribute("points",ie(I)),I.forEach((M,E)=>{const y=S.current[E],N=R.current[E];if(y){y.setAttribute("cx",String(M.x)),y.setAttribute("cy",String(M.y)),y.setAttribute("r",String(8+Math.sin(m.breathe+E*1.2)*3));const D=p.current;y.setAttribute("opacity",String(D.haloBase+Math.sin(m.breathe+E)*D.haloAmplitude))}N&&(N.setAttribute("cx",String(M.x)),N.setAttribute("cy",String(M.y)),N.setAttribute("r",String(3.5+Math.sin(m.breathe+E*.8)*.8)))}),b=requestAnimationFrame(w)}return b=requestAnimationFrame(w),()=>cancelAnimationFrame(b)},[a,o,x]);const A=Z.map((b,m)=>J(m,r[b],o,x)),_=ie(A),k={transition:"stop-color 0.6s ease"},O={transition:"fill 0.6s ease"};return t.jsxs("svg",{viewBox:`0 0 ${s} ${s}`,className:P("aspect-square",i),"aria-label":"Personality radar chart",role:"img",children:[t.jsxs("defs",{children:[d?t.jsxs("filter",{id:`ng-${n}`,x:"-80%",y:"-80%",width:"260%",height:"260%",children:[t.jsx("feGaussianBlur",{stdDeviation:l.glowBlur,result:"blur"}),t.jsxs("feMerge",{children:[t.jsx("feMergeNode",{in:"blur"}),t.jsx("feMergeNode",{in:"blur"}),t.jsx("feMergeNode",{in:"SourceGraphic"})]})]}):t.jsx("filter",{id:`ng-${n}`,x:"-50%",y:"-30%",width:"200%",height:"200%",children:t.jsx("feDropShadow",{dx:"0",dy:"2",stdDeviation:"6",floodColor:c.strokeStart,floodOpacity:"0.18"})}),t.jsxs("filter",{id:`vg-${n}`,x:"-100%",y:"-100%",width:"300%",height:"300%",children:[t.jsx("feGaussianBlur",{stdDeviation:l.vertexBlur,result:"blur"}),t.jsxs("feMerge",{children:[t.jsx("feMergeNode",{in:"blur"}),t.jsx("feMergeNode",{in:"SourceGraphic"})]})]}),t.jsxs("radialGradient",{id:`nc-${n}`,cx:"50%",cy:"50%",r:"50%",children:[t.jsx("stop",{offset:"0%",style:{stopColor:e.nebula,stopOpacity:l.nebulaCenter,...k}}),t.jsx("stop",{offset:"50%",style:{stopColor:e.nebula,stopOpacity:l.nebulaMid,...k}}),t.jsx("stop",{offset:"100%",style:{stopColor:"var(--nebula-edge)"},stopOpacity:0})]}),t.jsxs("radialGradient",{id:`nw-${n}`,cx:"35%",cy:"35%",r:"60%",children:[t.jsx("stop",{offset:"0%",style:{stopColor:e.wisp,stopOpacity:l.wispStart,...k}}),t.jsx("stop",{offset:"100%",style:{stopColor:"var(--nebula-edge)"},stopOpacity:0})]}),t.jsxs("linearGradient",{id:`sf-${n}`,x1:"0%",y1:"0%",x2:"100%",y2:"100%",children:[t.jsx("stop",{offset:"0%",style:{stopColor:c.fillStart,stopOpacity:l.fillStart,...k}}),t.jsx("stop",{offset:"100%",style:{stopColor:c.fillEnd,stopOpacity:l.fillEnd,...k}})]}),t.jsxs("linearGradient",{id:`ss-${n}`,x1:"0%",y1:"0%",x2:"100%",y2:"100%",children:[t.jsx("stop",{offset:"0%",style:{stopColor:c.strokeStart,...k}}),t.jsx("stop",{offset:"100%",style:{stopColor:c.strokeEnd,...k}})]})]}),t.jsx("circle",{cx:o,cy:o,r:s*.44,fill:`url(#nc-${n})`,children:a&&t.jsx("animateTransform",{attributeName:"transform",type:"rotate",values:`0 ${o} ${o};360 ${o} ${o}`,dur:"90s",repeatCount:"indefinite"})}),t.jsx("ellipse",{cx:o*.94,cy:o*.97,rx:s*.35,ry:s*.25,fill:`url(#nw-${n})`,children:a&&t.jsx("animateTransform",{attributeName:"transform",type:"rotate",values:`0 ${o} ${o};-360 ${o} ${o}`,dur:"60s",repeatCount:"indefinite"})}),a&&t.jsxs("circle",{cx:o,cy:o,r:x*.92,fill:"none",style:{stroke:c.strokeStart,transition:"stroke 0.6s ease"},strokeWidth:.3,opacity:l.breatheMin,children:[t.jsx("animate",{attributeName:"r",values:`${x*.85};${x*1.08};${x*.85}`,dur:"4s",repeatCount:"indefinite",calcMode:"spline",keySplines:"0.4 0 0.6 1;0.4 0 0.6 1"}),t.jsx("animate",{attributeName:"opacity",values:`${l.breatheMin};${l.breatheMax};${l.breatheMin}`,dur:"4s",repeatCount:"indefinite",calcMode:"spline",keySplines:"0.4 0 0.6 1;0.4 0 0.6 1"})]}),a&&t.jsx("g",{transform:`translate(${o},${o}) scale(${g})`,children:At.map((b,m)=>t.jsxs("circle",{r:b.r,style:{fill:c.dot,...O},children:[t.jsx("animateMotion",{dur:b.dur,repeatCount:"indefinite",begin:b.begin,path:b.path}),t.jsx("animate",{attributeName:"opacity",values:`0;${l.stardustPeak};0`,dur:b.fade,repeatCount:"indefinite",begin:b.begin})]},`star-${m}`))}),t.jsx("circle",{ref:v,cx:o,cy:o,r:0,fill:e.nebula,opacity:0}),Array.from({length:be},(b,m)=>t.jsx("polygon",{points:Tt((m+1)/be,o,x),fill:"none",stroke:d?"currentColor":c.strokeStart,strokeWidth:.5,opacity:l.guideBase+m*l.guideStep},`ring-${m}`)),Array.from({length:Q},(b,m)=>{const w=J(m,ue,o,x);return t.jsx("line",{x1:o,y1:o,x2:w.x,y2:w.y,stroke:d?"currentColor":c.strokeStart,strokeWidth:.5,opacity:l.axis},`axis-${m}`)}),t.jsx("polygon",{ref:j,points:_,fill:`url(#sf-${n})`,stroke:`url(#ss-${n})`,strokeWidth:2,strokeLinejoin:"round",filter:`url(#ng-${n})`}),A.map((b,m)=>t.jsx("circle",{ref:w=>{S.current[m]=w},cx:b.x,cy:b.y,r:8,style:{fill:c.glow,...O},opacity:l.haloBase},`halo-${m}`)),A.map((b,m)=>t.jsx("circle",{ref:w=>{R.current[m]=w},cx:b.x,cy:b.y,r:d?4:4.5,style:{fill:c.dot,...O},stroke:d?"none":"white",strokeWidth:d?0:1.5,filter:`url(#vg-${n})`},`dot-${m}`)),Mt.map((b,m)=>{const w=Math.PI*2*m/Q-Math.PI/2;return t.jsx("text",{x:o+f*Math.cos(w),y:o+f*Math.sin(w),textAnchor:"middle",dominantBaseline:"middle",fill:"currentColor",opacity:.5,fontSize:8,className:"select-none",children:b},b)})]})}const se={duration:.2,ease:"easeInOut"};function Lt({traits:r,onTraitsChange:e,compact:s=!1,layout:a="inline",sampleLabel:i="How this agent talks",className:n}){const[d,l]=u.useState("presets"),p=We()??!1,c=a==="stacked",o=qe(r),x=(o==null?void 0:o.colors)??ve,f=c?Je(r,o==null?void 0:o.id):"",g=u.useCallback(S=>{e(S.traits),l("presets"),G()},[e]),j=u.useCallback(()=>{l("custom"),G()},[]),v=u.useCallback(()=>{l("presets"),G()},[]);return t.jsxs("div",{className:P("@container/picker w-full",n),children:[t.jsxs("div",{className:P("flex flex-col items-center gap-3",!c&&"@[480px]/picker:flex-row @[480px]/picker:items-center @[480px]/picker:gap-6",c&&"gap-4"),children:[t.jsxs("div",{className:P("flex flex-col items-center gap-1",!c&&"@[480px]/picker:w-[200px] @[480px]/picker:shrink-0",c&&"gap-1.5"),children:[t.jsx("div",{"data-testid":"personality-radar",children:t.jsx(_t,{traits:r,colors:x,size:c?240:s?180:200,className:P(c&&"w-full max-w-[240px]",!c&&(s?"w-[90%] max-w-[240px]":"w-full max-w-[200px]"))})}),t.jsxs("div",{className:"text-center",children:[t.jsx("h3",{className:P("bg-clip-text font-bold text-transparent",c?"text-base":"text-sm"),style:{backgroundImage:`linear-gradient(135deg, ${x.stroke}, ${x.strokeEnd})`},children:(o==null?void 0:o.name)??"Custom"}),t.jsx("p",{className:P("text-muted-foreground mt-0.5",c?"text-xs":"text-2xs"),children:(o==null?void 0:o.tagline)??"A custom blend of personality traits."})]})]}),t.jsx("div",{className:P("flex w-full min-w-0 flex-col items-center gap-3",!c&&"@[480px]/picker:items-start"),children:t.jsx(pe,{mode:"wait",initial:!1,children:d==="presets"?t.jsxs(re.div,{initial:{opacity:0,y:6},animate:{opacity:1,y:0},exit:{opacity:0,y:-6},transition:se,className:P("flex max-w-sm flex-wrap justify-center gap-1.5",!c&&"@[480px]/picker:justify-start"),"data-testid":"preset-pills",children:[Xe.map(S=>t.jsx(Rt,{emoji:S.emoji,name:S.name,colors:S.colors,size:s?"sm":"md",state:(o==null?void 0:o.id)===S.id?"glowing":"rest",onClick:()=>g(S)},S.id)),t.jsxs("button",{type:"button",onClick:j,className:P("inline-flex shrink-0 items-center gap-1.5 rounded-full border border-dashed font-medium transition-[color,border-color]","text-muted-foreground hover:text-foreground hover:border-foreground/20 border-border",s?"text-2xs px-2.5 py-1":"px-3 py-1 text-xs"),"data-testid":"custom-toggle",children:[t.jsx(xe,{className:"size-3"}),t.jsx("span",{children:"Custom"})]})]},"presets"):t.jsxs(re.div,{initial:{opacity:0,y:6},animate:{opacity:1,y:0},exit:{opacity:0,y:-6},transition:se,className:P("flex w-full flex-col items-center gap-3",!c&&"@[480px]/picker:items-start"),children:[t.jsxs("div",{className:"flex gap-1.5","data-testid":"custom-mode-pills",children:[t.jsxs("button",{type:"button",onClick:v,className:P("inline-flex shrink-0 items-center gap-1.5 rounded-full border border-dashed font-medium transition-[color,border-color]","text-muted-foreground hover:text-foreground hover:border-foreground/20 border-border",s?"text-2xs px-2.5 py-1":"px-3 py-1 text-xs"),"data-testid":"presets-toggle",children:[t.jsx("span",{children:"←"}),t.jsx("span",{children:"Presets"})]}),t.jsxs("span",{className:P("bg-accent text-foreground inline-flex shrink-0 items-center gap-1.5 rounded-full border font-medium","border-foreground/15",s?"text-2xs px-2.5 py-1":"px-3 py-1 text-xs"),children:[t.jsx(xe,{className:"size-3"}),t.jsx("span",{children:"Custom"})]})]}),t.jsx("div",{className:P("w-full",s?"max-w-sm":"max-w-md"),onPointerDown:()=>G(),children:t.jsx(vt,{traits:r,onChange:e,onSliderChange:()=>G()})})]},"custom")})})]}),t.jsxs("div",{className:P("w-full max-w-sm",c?"mt-4 flex flex-col items-center":"hidden"),children:[t.jsx("span",{className:"text-muted-foreground text-3xs self-start font-medium tracking-wider uppercase",children:i}),t.jsx("div",{className:"border-primary/40 bg-accent/40 mt-1 w-full rounded-md border-l-2 py-2 pr-3 pl-3",children:c?t.jsx(pe,{mode:"wait",initial:!1,children:t.jsxs(re.p,{"data-testid":"personality-sample",initial:p?!1:{opacity:0,y:4},animate:{opacity:1,y:0},exit:p?void 0:{opacity:0,y:-4},transition:se,className:"text-muted-foreground text-xs leading-relaxed italic",children:["“",f,"”"]},f)}):t.jsx("p",{className:"text-muted-foreground text-xs leading-relaxed italic",children:(o==null?void 0:o.sampleResponse)??"Custom blend. Pick a preset to see a sample reply."})})]})]})}const $t=400;function Ft(r,e){const s=(r==null?void 0:r.traits)??Ze,[a,i]=u.useState(null),n=u.useRef(null),d=u.useRef(null),l=u.useRef({agent:r,update:e});u.useEffect(()=>{l.current={agent:r,update:e}});const p=(r==null?void 0:r.id)??null;u.useEffect(()=>{n.current!==null&&(clearTimeout(n.current),n.current=null),d.current=null,i(null)},[p]);const c=u.useCallback(()=>{n.current!==null&&(clearTimeout(n.current),n.current=null);const x=d.current;if(d.current=null,x===null)return;const{agent:f,update:g}=l.current;f!==null&&g(Qe(f,x))},[]);u.useEffect(()=>()=>c(),[c]);const o=u.useCallback(x=>{i(x),d.current=x,n.current!==null&&clearTimeout(n.current),n.current=setTimeout(c,$t)},[c]);return{traits:a??s,onTraitsChange:o}}export{Lt as P,Ft as u};
1
+ import{r as u,gC as Oe,bg as Le,be as H,d3 as Fe,j as t,bd as F,bk as He,bf as U,gD as Ke,bj as ye,gE as Ge,bl as q,bm as ze,gF as Ue,gG as Ye,Z as P,ao as we,gH as ve,df as We,gI as Xe,bo as pe,a3 as re,gJ as qe,cU as xe,gK as Je}from"./index-C63bLSO4.js";import{g as Ze}from"./dorkbot-templates-8Yu9POWJ.js";import{p as G}from"./sound-D3r8dGFH.js";import{p as Qe}from"./soul-file-NcuTUIiB.js";var et=Object.defineProperty,h=(r,e)=>et(r,"name",{value:e,configurable:!0}),je=["PageUp","PageDown"],ke=["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"],Ce={"from-left":["Home","PageDown","ArrowDown","ArrowLeft"],"from-right":["Home","PageDown","ArrowDown","ArrowRight"],"from-bottom":["Home","PageDown","ArrowDown","ArrowLeft"],"from-top":["Home","PageDown","ArrowUp","ArrowLeft"]},Y="Slider",[oe,tt,rt]=Oe(Y),[ae,Ot]=Le(Y,[rt]),[nt,W]=ae(Y),st=u.forwardRef(h(function(e,s){const{name:a,min:i=0,max:n=100,step:d=1,orientation:l="horizontal",disabled:p=!1,minStepsBetweenThumbs:c=0,defaultValue:o=[i],value:x,onValueChange:f=h(()=>{},"onValueChange"),onValueCommit:g=h(()=>{},"onValueCommit"),inverted:j=!1,form:v,...S}=e,R=u.useRef(new Set),C=u.useRef(0),T=u.useRef(!1),_=l==="horizontal"?ot:it,[k,O]=u.useState(null),b=H(s,O),[m=[],w]=Fe({prop:x,defaultProp:o,onChange:h(y=>{var B;(B=[...R.current][C.current])==null||B.focus({preventScroll:!0,focusVisible:T.current}),T.current=!1,f(y)},"onChange")}),$=u.useRef(m),X=u.useRef(m);u.useEffect(()=>{const y=v?k==null?void 0:k.ownerDocument.getElementById(v):k==null?void 0:k.closest("form");if(y instanceof HTMLFormElement){const N=h(()=>w(X.current),"reset");return y.addEventListener("reset",N),()=>y.removeEventListener("reset",N)}},[k,v,w]);function I(y){const N=_e(m,y);E(y,N)}h(I,"handleSlideStart");function D(y){E(y,C.current)}h(D,"handleSlideMove");function M(){String(m)!==String($.current)&&g(m)}h(M,"handleSlideEnd");function E(y,N,{commit:B}={commit:!1}){const fe=ce(d),te=z(Math.round((y-i)/d)*d+i,fe),K=ye(te,[i,n]);w((L=[])=>{const V=Te(L,K,N);if(Be(V,c*d)){C.current=V.indexOf(K);const me=String(V)!==String(L);return me&&B&&g(V),me?V:L}else return L})}return h(E,"updateValues"),t.jsx(nt,{scope:e.__scopeSlider,name:a,disabled:p,min:i,max:n,valueIndexToChangeRef:C,thumbs:R.current,values:m,orientation:l,form:v,children:t.jsx(oe.Provider,{scope:e.__scopeSlider,children:t.jsx(oe.Slot,{scope:e.__scopeSlider,children:t.jsx(_,{"aria-disabled":p,"data-disabled":p?"":void 0,...S,ref:b,onPointerDown:F(S.onPointerDown,()=>{p||($.current=m,T.current=!1)}),min:i,max:n,inverted:j,onSlideStart:p?void 0:I,onSlideMove:p?void 0:D,onSlideEnd:p?void 0:M,onHomeKeyDown:()=>{p||(T.current=!0,E(i,0,{commit:!0}))},onEndKeyDown:()=>{p||(T.current=!0,E(n,m.length-1,{commit:!0}))},onStepKeyDown:({event:y,direction:N})=>{if(!p){T.current=!0;const te=je.includes(y.key)||y.shiftKey&&ke.includes(y.key)?10:1,K=C.current,L=m[K],V=Ie(L,{min:i,step:d,direction:N,multiplier:te});E(V,K,{commit:!0})}}})})})})},"Slider")),[Re,Me]=ae(Y,{startEdge:"left",endEdge:"right",size:"width",direction:1}),ot=u.forwardRef(h(function(e,s){const{min:a,max:i,dir:n,inverted:d,onSlideStart:l,onSlideMove:p,onSlideEnd:c,onStepKeyDown:o,...x}=e,[f,g]=u.useState(null),j=H(s,g),v=u.useRef(void 0),S=He(n),R=S==="ltr",C=R&&!d||!R&&d;function T(A){const _=v.current||f.getBoundingClientRect(),k=[0,_.width],b=ee(k,C?[a,i]:[i,a]);return v.current=_,b(A-_.left)}return h(T,"getValueFromPointer"),t.jsx(Re,{scope:e.__scopeSlider,startEdge:C?"left":"right",endEdge:C?"right":"left",direction:C?1:-1,size:"width",children:t.jsx(Ee,{dir:S,"data-orientation":"horizontal",...x,ref:j,style:{...x.style,"--radix-slider-thumb-transform":"translateX(-50%)"},onSlideStart:A=>{const _=T(A.clientX);l==null||l(_)},onSlideMove:A=>{const _=T(A.clientX);p==null||p(_)},onSlideEnd:()=>{v.current=void 0,c==null||c()},onStepKeyDown:A=>{const k=Ce[C?"from-left":"from-right"].includes(A.key);o==null||o({event:A,direction:k?-1:1})}})})},"SliderHorizontal")),it=u.forwardRef(h(function(e,s){const{min:a,max:i,inverted:n,onSlideStart:d,onSlideMove:l,onSlideEnd:p,onStepKeyDown:c,...o}=e,x=u.useRef(null),f=H(s,x),g=u.useRef(void 0),j=!n;function v(S){const R=g.current||x.current.getBoundingClientRect(),C=[0,R.height],A=ee(C,j?[i,a]:[a,i]);return g.current=R,A(S-R.top)}return h(v,"getValueFromPointer"),t.jsx(Re,{scope:e.__scopeSlider,startEdge:j?"bottom":"top",endEdge:j?"top":"bottom",size:"height",direction:j?1:-1,children:t.jsx(Ee,{"data-orientation":"vertical",...o,ref:f,style:{...o.style,"--radix-slider-thumb-transform":"translateY(50%)"},onSlideStart:S=>{const R=v(S.clientY);d==null||d(R)},onSlideMove:S=>{const R=v(S.clientY);l==null||l(R)},onSlideEnd:()=>{g.current=void 0,p==null||p()},onStepKeyDown:S=>{const C=Ce[j?"from-bottom":"from-top"].includes(S.key);c==null||c({event:S,direction:C?-1:1})}})})},"SliderVertical")),Ee=u.forwardRef(h(function(e,s){const{__scopeSlider:a,onSlideStart:i,onSlideMove:n,onSlideEnd:d,onHomeKeyDown:l,onEndKeyDown:p,onStepKeyDown:c,...o}=e,x=W(Y,a);return t.jsx(U.span,{...o,ref:s,onKeyDown:F(e.onKeyDown,f=>{f.key==="Home"?(l(f),f.preventDefault()):f.key==="End"?(p(f),f.preventDefault()):je.concat(ke).includes(f.key)&&(c(f),f.preventDefault())}),onPointerDown:F(e.onPointerDown,f=>{const g=f.target;g.setPointerCapture(f.pointerId),f.preventDefault(),x.thumbs.has(g)?g.focus({preventScroll:!0,focusVisible:!1}):i(f)}),onPointerMove:F(e.onPointerMove,f=>{f.target.hasPointerCapture(f.pointerId)&&n(f)}),onPointerUp:F(e.onPointerUp,f=>{const g=f.target;g.hasPointerCapture(f.pointerId)&&(g.releasePointerCapture(f.pointerId),d(f))})})},"SliderImpl")),at="SliderTrack",lt=u.forwardRef(h(function(e,s){const{__scopeSlider:a,...i}=e,n=W(at,a);return t.jsx(U.span,{"data-disabled":n.disabled?"":void 0,"data-orientation":n.orientation,...i,ref:s})},"SliderTrack")),he="SliderRange",ct=u.forwardRef(h(function(e,s){const{__scopeSlider:a,...i}=e,n=W(he,a),d=Me(he,a),l=u.useRef(null),p=H(s,l),c=n.values.length,o=n.values.map(g=>le(g,n.min,n.max)),x=c>1?Math.min(...o):0,f=100-Math.max(...o);return t.jsx(U.span,{"data-orientation":n.orientation,"data-disabled":n.disabled?"":void 0,...i,ref:p,style:{...e.style,[d.startEdge]:x+"%",[d.endEdge]:f+"%"}})},"SliderRange")),dt="SliderThumb",[ut,Pe]=ae(dt),ft="SliderThumbProvider";function Ae(r){const{__scopeSlider:e,name:s,children:a,internal_do_not_use_render:i}=r,n=W(ft,e),d=tt(e),[l,p]=u.useState(null),c=u.useMemo(()=>l?d().findIndex(S=>S.ref.current===l):-1,[d,l]),o=Ge(l),x=l?!!n.form||!!l.closest("form"):!0,f=n.values[c],g=s??(n.name?n.name+(n.values.length>1?"[]":""):void 0),j=f===void 0?0:le(f,n.min,n.max);u.useEffect(()=>{if(l)return n.thumbs.add(l),()=>{n.thumbs.delete(l)}},[l,n.thumbs]);const v={value:f,name:g,form:n.form,isFormControl:x,index:c,thumb:l,onThumbChange:p,percent:j,size:o};return t.jsx(ut,{scope:e,...v,children:Ve(i)?i(v):a})}h(Ae,"SliderThumbProvider");var ne="SliderThumbTrigger",mt=u.forwardRef(h(function(e,s){const{__scopeSlider:a,...i}=e,n=W(ne,a),d=Me(ne,a),{index:l,value:p,percent:c,size:o,onThumbChange:x}=Pe(ne,a),f=H(s,x),g=Ne(l,n.values.length),j=o==null?void 0:o[d.size],v=j?De(j,c,d.direction):0;return t.jsx("span",{style:{transform:"var(--radix-slider-thumb-transform)",position:"absolute",[d.startEdge]:`calc(${c}% + ${v}px)`},children:t.jsx(oe.ItemSlot,{scope:a,children:t.jsx(U.span,{role:"slider","aria-label":e["aria-label"]||g,"aria-valuemin":n.min,"aria-valuenow":p,"aria-valuemax":n.max,"aria-orientation":n.orientation,"data-orientation":n.orientation,"data-disabled":n.disabled?"":void 0,tabIndex:n.disabled?void 0:0,...i,ref:f,style:p===void 0?{display:"none"}:e.style,onFocus:F(e.onFocus,()=>{n.valueIndexToChangeRef.current=l})})})})},"SliderThumbTrigger")),pt=u.forwardRef(h(function(e,s){const{__scopeSlider:a,name:i,...n}=e;return t.jsx(Ae,{__scopeSlider:a,name:i,internal_do_not_use_render:({index:d,isFormControl:l})=>t.jsxs(t.Fragment,{children:[t.jsx(mt,{...n,ref:s,__scopeSlider:a}),l?t.jsx(ht,{__scopeSlider:a},d):null]})})},"SliderThumb")),xt="SliderBubbleInput",ht=u.forwardRef(h(function({__scopeSlider:e,...s},a){const{value:i,name:n,form:d}=Pe(xt,e),l=u.useRef(null),p=H(l,a),c=Ke(i);return u.useEffect(()=>{const o=l.current;if(!o)return;const x=window.HTMLInputElement.prototype,g=Object.getOwnPropertyDescriptor(x,"value").set;if(c!==i&&g){const j=new Event("input",{bubbles:!0});g.call(o,i),o.dispatchEvent(j)}},[c,i]),t.jsx(U.input,{style:{display:"none"},name:n,form:d,...s,ref:p,defaultValue:i})},"SliderBubbleInput"));function Te(r=[],e,s){const a=[...r];return a[s]=e,a.sort((i,n)=>i-n)}h(Te,"getNextSortedValues");function le(r,e,s){const n=100/(s-e)*(r-e);return ye(n,[0,100])}h(le,"convertValueToPercentage");function Ne(r,e){return e>2?`Value ${r+1} of ${e}`:e===2?["Minimum","Maximum"][r]:void 0}h(Ne,"getLabel");function _e(r,e){if(r.length===1)return 0;const s=r.map(i=>Math.abs(i-e)),a=Math.min(...s);return s.indexOf(a)}h(_e,"getClosestValueIndex");function De(r,e,s){const a=r/2,n=ee([0,50],[0,a]);return(a-n(e)*s)*s}h(De,"getThumbInBoundsOffset");function $e(r){return r.slice(0,-1).map((e,s)=>r[s+1]-e)}h($e,"getStepsBetweenValues");function Be(r,e){if(e>0){const s=$e(r);return Math.min(...s)>=e}return!0}h(Be,"hasMinStepsBetweenValues");function ee(r,e){return s=>{if(r[0]===r[1]||e[0]===e[1])return e[0];const a=(e[1]-e[0])/(r[1]-r[0]);return e[0]+a*(s-r[0])}}h(ee,"linearScale");function ce(r){if(!Number.isFinite(r))return 0;const e=r.toString();if(e.includes("e")){const[a,i]=e.split("e"),n=a.split(".")[1]||"",d=Number(i);return Math.max(0,n.length-d)}const s=e.split(".")[1];return s?s.length:0}h(ce,"getDecimalCount");function z(r,e){const s=Math.pow(10,e);return Math.round(r*s)/s}h(z,"roundValue");function Ie(r,{min:e,step:s,direction:a,multiplier:i}){const n=ce(s),d=(r-e)/s,l=Math.round(d),p=z(l*s+e,n)===z(r,n);let c;return p?c=l+i*a:a>0?c=Math.ceil(d):c=Math.floor(d),z(c*s+e,n)}h(Ie,"getNextStepValue");function Ve(r){return typeof r=="function"}h(Ve,"isFunction");function gt({className:r,defaultValue:e,value:s,min:a=0,max:i=100,...n}){const d=u.useMemo(()=>Array.isArray(s)?s:Array.isArray(e)?e:[a,i],[s,e,a,i]);return t.jsxs(st,{"data-slot":"slider",defaultValue:e,value:s,min:a,max:i,className:q("relative flex w-full touch-none items-center select-none data-[disabled]:opacity-50 data-[orientation=vertical]:h-full data-[orientation=vertical]:min-h-44 data-[orientation=vertical]:w-auto data-[orientation=vertical]:flex-col",r),...n,children:[t.jsx(lt,{"data-slot":"slider-track",className:q("bg-dui-muted relative grow overflow-hidden rounded-full data-[orientation=horizontal]:h-1.5 data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-1.5"),children:t.jsx(ct,{"data-slot":"slider-range",className:q("bg-dui-primary absolute data-[orientation=horizontal]:h-full data-[orientation=vertical]:w-full")})}),Array.from({length:d.length},(l,p)=>t.jsx(pt,{"data-slot":"slider-thumb",className:q("border-dui-primary hover:ring-dui-ring/50 block size-4 shrink-0 rounded-full border bg-white shadow-sm transition-[color,box-shadow] hover:ring-4 focus-visible:outline-hidden disabled:pointer-events-none disabled:opacity-50 motion-reduce:transition-none!",ze)},p))]})}const ge={light:{heroGlow:"28",heroGlowOuter:"14",pillBgStart:"20",pillBgEnd:"14",pillBorder:"50",pillGlow:"30"},dark:{heroGlow:"18",heroGlowOuter:"08",pillBgStart:"12",pillBgEnd:"08",pillBorder:"40",pillGlow:"33"}};function bt(){return document.documentElement.classList.contains("dark")}function St(){return!1}function yt(r){const e=new MutationObserver(s=>{for(const a of s)if(a.attributeName==="class"){r();return}});return e.observe(document.documentElement,{attributes:!0,attributeFilter:["class"]}),()=>e.disconnect()}function de(){return u.useSyncExternalStore(yt,bt,St)}function wt(){return de()?ge.dark:ge.light}function vt({traits:r,onChange:e,onSliderChange:s}){const a=u.useCallback((i,n)=>{s==null||s(i,n),e({...r,[i]:n})},[r,e,s]);return t.jsx("div",{className:"space-y-4",children:Ue.map(i=>t.jsx(jt,{name:i,level:r[i]??3,onChange:a},i))})}function jt({name:r,level:e,onChange:s}){const a=Ye[r][e];return t.jsxs("div",{className:"space-y-2",children:[t.jsxs("div",{className:"flex items-center justify-between text-sm",children:[t.jsx("span",{className:"font-medium capitalize",children:r}),t.jsxs("span",{className:"text-muted-foreground",children:[e,"/5 ",a.label]})]}),t.jsx(gt,{value:[e],onValueChange:([i])=>s(r,i),min:1,max:5,step:1,"aria-label":`${r} trait level`})]})}const kt=we("inline-flex shrink-0 items-center gap-1.5 rounded-full border font-medium transition-[color,background-color,border-color,box-shadow]",{variants:{size:{sm:"text-2xs px-2.5 py-1",md:"px-3 py-1 text-xs"},state:{rest:"bg-accent text-muted-foreground hover:text-foreground border-transparent",active:"text-foreground",glowing:"text-foreground"}},defaultVariants:{size:"md",state:"rest"}}),Ct=we("",{variants:{gradient:{true:"bg-clip-text text-transparent",false:""}},defaultVariants:{gradient:!1}});function Rt({emoji:r,name:e,colors:s,size:a="md",state:i="rest",gradientText:n=!1,className:d,style:l,...p}){const c=de(),o=wt(),x=i==="active"||i==="glowing";return t.jsxs("button",{type:"button",className:P(kt({size:a,state:i}),d),style:{...x?{borderColor:c?s.stroke+o.pillBorder:s.stroke+"AA",background:`linear-gradient(135deg, ${s.nebula}${o.pillBgStart}, ${s.wisp}${o.pillBgEnd})`,...i==="glowing"?{boxShadow:`0 0 12px ${s.nebula}${o.pillGlow}`}:{}}:{},...l},...p,children:[t.jsx("span",{children:r}),t.jsx("span",{className:Ct({gradient:n}),style:n?{backgroundImage:`linear-gradient(135deg, ${s.stroke}, ${s.strokeEnd})`,...c?{}:{filter:"brightness(0.65) saturate(1.3)"}}:void 0,children:e})]})}const Mt=["Verbosity","Autonomy","Chaos","Creativity","Humor","Spice"],J=["verbosity","autonomy","chaos","creativity","humor","spice"],Q=6,ue=5,be=3,Et=800,Pt=600,Se={light:{nebulaCenter:.45,nebulaMid:.25,wispStart:.2,fillStart:.25,fillEnd:.15,haloBase:.25,haloAmplitude:.12,breatheMin:.25,breatheMax:.4,guideBase:.1,guideStep:.04,axis:.12,stardustPeak:1,glowBlur:12,vertexBlur:4},dark:{nebulaCenter:.35,nebulaMid:.15,wispStart:.12,fillStart:.35,fillEnd:.25,haloBase:.15,haloAmplitude:.1,breatheMin:.15,breatheMax:.25,guideBase:.06,guideStep:.02,axis:.08,stardustPeak:.8,glowBlur:10,vertexBlur:4}},At=[{r:1.2,dur:"9s",fade:"4.5s",begin:"0s",path:"M0,0 C30,-40 60,0 40,40 C20,60 -20,40 -30,10 C-40,-20 -10,-50 0,0"},{r:.9,dur:"7s",fade:"3.5s",begin:"0s",path:"M0,0 C-20,30 -40,20 -30,-10 C-20,-30 10,-40 20,-20 C30,0 20,30 0,0"},{r:1,dur:"11s",fade:"5s",begin:"0s",path:"M0,0 C40,10 30,50 0,40 C-30,30 -40,-10 -20,-30 C0,-50 30,-20 0,0"},{r:.7,dur:"8s",fade:"4s",begin:"2s",path:"M0,0 C15,-35 45,-15 35,20 C25,45 -15,40 -25,15 C-35,-10 -5,-40 0,0"},{r:1.1,dur:"12s",fade:"6s",begin:"1s",path:"M0,0 C-25,25 -45,5 -30,-20 C-15,-45 20,-35 30,-10 C40,15 15,35 0,0"}];function Z(r,e,s,a){const i=Math.PI*2*r/Q-Math.PI/2,n=e/ue*a;return{x:s+n*Math.cos(i),y:s+n*Math.sin(i)}}function ie(r){return r.map(e=>`${e.x},${e.y}`).join(" ")}function Tt(r,e,s){return ie(Array.from({length:Q},(a,i)=>Z(i,r*ue,e,s)))}function Nt(r){return r<.5?4*r*r*r:1-(-2*r+2)**3/2}function _t({traits:r,colors:e=ve,size:s=180,animated:a=!0,className:i}){const n=u.useId().replace(/:/g,""),d=de(),l=d?Se.dark:Se.light,p=u.useRef(l);p.current=l;const c=d?{strokeStart:e.stroke,strokeEnd:e.strokeEnd,fillStart:e.fill,fillEnd:e.fillEnd,dot:e.dot,glow:e.glow}:{strokeStart:e.fill,strokeEnd:e.fillEnd,fillStart:e.stroke,fillEnd:e.strokeEnd,dot:e.fill,glow:e.stroke},o=s/2,x=s*.32,f=x+16,g=s/200,j=u.useRef(null),v=u.useRef(null),S=u.useRef([]),R=u.useRef([]),C=u.useRef({current:{...r},from:null,target:{...r},morphStart:0,breathe:0}),T=u.useRef(r);u.useEffect(()=>{const b=T.current;if(J.some(w=>b[w]!==r[w])){const w=C.current;if(a){w.from={...w.current},w.target={...r},w.morphStart=performance.now();const $=v.current;if($){const X=performance.now();(function I(){const D=Math.min((performance.now()-X)/Pt,1),M=1-(1-D)*(1-D);$.setAttribute("r",String(x*(.7+.6*M))),$.setAttribute("opacity",String(.4*(1-M))),D<1&&requestAnimationFrame(I)})()}}else Object.assign(w.current,r),Object.assign(w.target,r)}T.current=r},[r,a,x]),u.useEffect(()=>{if(!a)return;let b;const m=C.current;function w(){var D;m.breathe+=.015;const $=1+Math.sin(m.breathe)*.04;if(m.from){const M=Math.min((performance.now()-m.morphStart)/Et,1),E=Nt(M);for(const y of J)m.current[y]=m.from[y]+(m.target[y]-m.from[y])*E;M>=1&&(m.from=null,Object.assign(m.current,m.target))}const I=J.map(M=>m.current[M]).map((M,E)=>Z(E,M*$,o,x));(D=j.current)==null||D.setAttribute("points",ie(I)),I.forEach((M,E)=>{const y=S.current[E],N=R.current[E];if(y){y.setAttribute("cx",String(M.x)),y.setAttribute("cy",String(M.y)),y.setAttribute("r",String(8+Math.sin(m.breathe+E*1.2)*3));const B=p.current;y.setAttribute("opacity",String(B.haloBase+Math.sin(m.breathe+E)*B.haloAmplitude))}N&&(N.setAttribute("cx",String(M.x)),N.setAttribute("cy",String(M.y)),N.setAttribute("r",String(3.5+Math.sin(m.breathe+E*.8)*.8)))}),b=requestAnimationFrame(w)}return b=requestAnimationFrame(w),()=>cancelAnimationFrame(b)},[a,o,x]);const A=J.map((b,m)=>Z(m,r[b],o,x)),_=ie(A),k={transition:"stop-color 0.6s ease"},O={transition:"fill 0.6s ease"};return t.jsxs("svg",{viewBox:`0 0 ${s} ${s}`,className:P("aspect-square",i),"aria-label":"Personality radar chart",role:"img",children:[t.jsxs("defs",{children:[d?t.jsxs("filter",{id:`ng-${n}`,x:"-80%",y:"-80%",width:"260%",height:"260%",children:[t.jsx("feGaussianBlur",{stdDeviation:l.glowBlur,result:"blur"}),t.jsxs("feMerge",{children:[t.jsx("feMergeNode",{in:"blur"}),t.jsx("feMergeNode",{in:"blur"}),t.jsx("feMergeNode",{in:"SourceGraphic"})]})]}):t.jsx("filter",{id:`ng-${n}`,x:"-50%",y:"-30%",width:"200%",height:"200%",children:t.jsx("feDropShadow",{dx:"0",dy:"2",stdDeviation:"6",floodColor:c.strokeStart,floodOpacity:"0.18"})}),t.jsxs("filter",{id:`vg-${n}`,x:"-100%",y:"-100%",width:"300%",height:"300%",children:[t.jsx("feGaussianBlur",{stdDeviation:l.vertexBlur,result:"blur"}),t.jsxs("feMerge",{children:[t.jsx("feMergeNode",{in:"blur"}),t.jsx("feMergeNode",{in:"SourceGraphic"})]})]}),t.jsxs("radialGradient",{id:`nc-${n}`,cx:"50%",cy:"50%",r:"50%",children:[t.jsx("stop",{offset:"0%",style:{stopColor:e.nebula,stopOpacity:l.nebulaCenter,...k}}),t.jsx("stop",{offset:"50%",style:{stopColor:e.nebula,stopOpacity:l.nebulaMid,...k}}),t.jsx("stop",{offset:"100%",style:{stopColor:"var(--nebula-edge)"},stopOpacity:0})]}),t.jsxs("radialGradient",{id:`nw-${n}`,cx:"35%",cy:"35%",r:"60%",children:[t.jsx("stop",{offset:"0%",style:{stopColor:e.wisp,stopOpacity:l.wispStart,...k}}),t.jsx("stop",{offset:"100%",style:{stopColor:"var(--nebula-edge)"},stopOpacity:0})]}),t.jsxs("linearGradient",{id:`sf-${n}`,x1:"0%",y1:"0%",x2:"100%",y2:"100%",children:[t.jsx("stop",{offset:"0%",style:{stopColor:c.fillStart,stopOpacity:l.fillStart,...k}}),t.jsx("stop",{offset:"100%",style:{stopColor:c.fillEnd,stopOpacity:l.fillEnd,...k}})]}),t.jsxs("linearGradient",{id:`ss-${n}`,x1:"0%",y1:"0%",x2:"100%",y2:"100%",children:[t.jsx("stop",{offset:"0%",style:{stopColor:c.strokeStart,...k}}),t.jsx("stop",{offset:"100%",style:{stopColor:c.strokeEnd,...k}})]})]}),t.jsx("circle",{cx:o,cy:o,r:s*.44,fill:`url(#nc-${n})`,children:a&&t.jsx("animateTransform",{attributeName:"transform",type:"rotate",values:`0 ${o} ${o};360 ${o} ${o}`,dur:"90s",repeatCount:"indefinite"})}),t.jsx("ellipse",{cx:o*.94,cy:o*.97,rx:s*.35,ry:s*.25,fill:`url(#nw-${n})`,children:a&&t.jsx("animateTransform",{attributeName:"transform",type:"rotate",values:`0 ${o} ${o};-360 ${o} ${o}`,dur:"60s",repeatCount:"indefinite"})}),a&&t.jsxs("circle",{cx:o,cy:o,r:x*.92,fill:"none",style:{stroke:c.strokeStart,transition:"stroke 0.6s ease"},strokeWidth:.3,opacity:l.breatheMin,children:[t.jsx("animate",{attributeName:"r",values:`${x*.85};${x*1.08};${x*.85}`,dur:"4s",repeatCount:"indefinite",calcMode:"spline",keySplines:"0.4 0 0.6 1;0.4 0 0.6 1"}),t.jsx("animate",{attributeName:"opacity",values:`${l.breatheMin};${l.breatheMax};${l.breatheMin}`,dur:"4s",repeatCount:"indefinite",calcMode:"spline",keySplines:"0.4 0 0.6 1;0.4 0 0.6 1"})]}),a&&t.jsx("g",{transform:`translate(${o},${o}) scale(${g})`,children:At.map((b,m)=>t.jsxs("circle",{r:b.r,style:{fill:c.dot,...O},children:[t.jsx("animateMotion",{dur:b.dur,repeatCount:"indefinite",begin:b.begin,path:b.path}),t.jsx("animate",{attributeName:"opacity",values:`0;${l.stardustPeak};0`,dur:b.fade,repeatCount:"indefinite",begin:b.begin})]},`star-${m}`))}),t.jsx("circle",{ref:v,cx:o,cy:o,r:0,fill:e.nebula,opacity:0}),Array.from({length:be},(b,m)=>t.jsx("polygon",{points:Tt((m+1)/be,o,x),fill:"none",stroke:d?"currentColor":c.strokeStart,strokeWidth:.5,opacity:l.guideBase+m*l.guideStep},`ring-${m}`)),Array.from({length:Q},(b,m)=>{const w=Z(m,ue,o,x);return t.jsx("line",{x1:o,y1:o,x2:w.x,y2:w.y,stroke:d?"currentColor":c.strokeStart,strokeWidth:.5,opacity:l.axis},`axis-${m}`)}),t.jsx("polygon",{ref:j,points:_,fill:`url(#sf-${n})`,stroke:`url(#ss-${n})`,strokeWidth:2,strokeLinejoin:"round",filter:`url(#ng-${n})`}),A.map((b,m)=>t.jsx("circle",{ref:w=>{S.current[m]=w},cx:b.x,cy:b.y,r:8,style:{fill:c.glow,...O},opacity:l.haloBase},`halo-${m}`)),A.map((b,m)=>t.jsx("circle",{ref:w=>{R.current[m]=w},cx:b.x,cy:b.y,r:d?4:4.5,style:{fill:c.dot,...O},stroke:d?"none":"white",strokeWidth:d?0:1.5,filter:`url(#vg-${n})`},`dot-${m}`)),Mt.map((b,m)=>{const w=Math.PI*2*m/Q-Math.PI/2;return t.jsx("text",{x:o+f*Math.cos(w),y:o+f*Math.sin(w),textAnchor:"middle",dominantBaseline:"middle",fill:"currentColor",opacity:.5,fontSize:8,className:"select-none",children:b},b)})]})}const se={duration:.2,ease:"easeInOut"};function Lt({traits:r,onTraitsChange:e,compact:s=!1,layout:a="inline",sampleLabel:i="How this agent talks",className:n}){const[d,l]=u.useState("presets"),p=We()??!1,c=a==="stacked",o=Xe(r),x=(o==null?void 0:o.colors)??ve,f=c?Ze(r,o==null?void 0:o.id):"",g=u.useCallback(S=>{e(S.traits),l("presets"),G()},[e]),j=u.useCallback(()=>{l("custom"),G()},[]),v=u.useCallback(()=>{l("presets"),G()},[]);return t.jsxs("div",{className:P("@container/picker w-full",n),children:[t.jsxs("div",{className:P("flex flex-col items-center gap-3",!c&&"@[480px]/picker:flex-row @[480px]/picker:items-center @[480px]/picker:gap-6",c&&"gap-4"),children:[t.jsxs("div",{className:P("flex flex-col items-center gap-1",!c&&"@[480px]/picker:w-[200px] @[480px]/picker:shrink-0",c&&"gap-1.5"),children:[t.jsx("div",{"data-testid":"personality-radar",children:t.jsx(_t,{traits:r,colors:x,size:c?240:s?180:200,className:P(c&&"w-full max-w-[240px]",!c&&(s?"w-[90%] max-w-[240px]":"w-full max-w-[200px]"))})}),t.jsxs("div",{className:"text-center",children:[t.jsx("h3",{className:P("bg-clip-text font-bold text-transparent",c?"text-base":"text-sm"),style:{backgroundImage:`linear-gradient(135deg, ${x.stroke}, ${x.strokeEnd})`},children:(o==null?void 0:o.name)??"Custom"}),t.jsx("p",{className:P("text-muted-foreground mt-0.5",c?"text-xs":"text-2xs"),children:(o==null?void 0:o.tagline)??"A custom blend of personality traits."})]})]}),t.jsx("div",{className:P("flex w-full min-w-0 flex-col items-center gap-3",!c&&"@[480px]/picker:items-start"),children:t.jsx(pe,{mode:"wait",initial:!1,children:d==="presets"?t.jsxs(re.div,{initial:{opacity:0,y:6},animate:{opacity:1,y:0},exit:{opacity:0,y:-6},transition:se,className:P("flex max-w-sm flex-wrap justify-center gap-1.5",!c&&"@[480px]/picker:justify-start"),"data-testid":"preset-pills",children:[qe.map(S=>t.jsx(Rt,{emoji:S.emoji,name:S.name,colors:S.colors,size:s?"sm":"md",state:(o==null?void 0:o.id)===S.id?"glowing":"rest",onClick:()=>g(S)},S.id)),t.jsxs("button",{type:"button",onClick:j,className:P("inline-flex shrink-0 items-center gap-1.5 rounded-full border border-dashed font-medium transition-[color,border-color]","text-muted-foreground hover:text-foreground hover:border-foreground/20 border-border",s?"text-2xs px-2.5 py-1":"px-3 py-1 text-xs"),"data-testid":"custom-toggle",children:[t.jsx(xe,{className:"size-3"}),t.jsx("span",{children:"Custom"})]})]},"presets"):t.jsxs(re.div,{initial:{opacity:0,y:6},animate:{opacity:1,y:0},exit:{opacity:0,y:-6},transition:se,className:P("flex w-full flex-col items-center gap-3",!c&&"@[480px]/picker:items-start"),children:[t.jsxs("div",{className:"flex gap-1.5","data-testid":"custom-mode-pills",children:[t.jsxs("button",{type:"button",onClick:v,className:P("inline-flex shrink-0 items-center gap-1.5 rounded-full border border-dashed font-medium transition-[color,border-color]","text-muted-foreground hover:text-foreground hover:border-foreground/20 border-border",s?"text-2xs px-2.5 py-1":"px-3 py-1 text-xs"),"data-testid":"presets-toggle",children:[t.jsx("span",{children:"←"}),t.jsx("span",{children:"Presets"})]}),t.jsxs("span",{className:P("bg-accent text-foreground inline-flex shrink-0 items-center gap-1.5 rounded-full border font-medium","border-foreground/15",s?"text-2xs px-2.5 py-1":"px-3 py-1 text-xs"),children:[t.jsx(xe,{className:"size-3"}),t.jsx("span",{children:"Custom"})]})]}),t.jsx("div",{className:P("w-full",s?"max-w-sm":"max-w-md"),onPointerDown:()=>G(),children:t.jsx(vt,{traits:r,onChange:e,onSliderChange:()=>G()})})]},"custom")})})]}),t.jsxs("div",{className:P("w-full max-w-sm",c?"mt-4 flex flex-col items-center":"hidden"),children:[t.jsx("span",{className:"text-muted-foreground text-3xs self-start font-medium tracking-wider uppercase",children:i}),t.jsx("div",{className:"border-primary/40 bg-accent/40 mt-1 w-full rounded-md border-l-2 py-2 pr-3 pl-3",children:c?t.jsx(pe,{mode:"wait",initial:!1,children:t.jsxs(re.p,{"data-testid":"personality-sample",initial:p?!1:{opacity:0,y:4},animate:{opacity:1,y:0},exit:p?void 0:{opacity:0,y:-4},transition:se,className:"text-muted-foreground text-xs leading-relaxed italic",children:["“",f,"”"]},f)}):t.jsx("p",{className:"text-muted-foreground text-xs leading-relaxed italic",children:(o==null?void 0:o.sampleResponse)??"Custom blend. Pick a preset to see a sample reply."})})]})]})}const Dt=400;function Ft(r,e){const s=(r==null?void 0:r.traits)??Je,[a,i]=u.useState(null),n=u.useRef(null),d=u.useRef(null),l=u.useRef({agent:r,update:e});u.useEffect(()=>{l.current={agent:r,update:e}});const p=(r==null?void 0:r.id)??null;u.useEffect(()=>{n.current!==null&&(clearTimeout(n.current),n.current=null),d.current=null,i(null)},[p]);const c=u.useCallback(()=>{n.current!==null&&(clearTimeout(n.current),n.current=null);const x=d.current;if(d.current=null,x===null)return;const{agent:f,update:g}=l.current;f!==null&&g(Qe(f,x))},[]);u.useEffect(()=>()=>c(),[c]);const o=u.useCallback(x=>{i(x),d.current=x,n.current!==null&&clearTimeout(n.current),n.current=setTimeout(c,Dt)},[c]);return{traits:a??s,onTraitsChange:o}}export{Lt as P,Ft as u};
@@ -1,11 +1,11 @@
1
- import{a4 as f,j as t,Z as m,B as y,g4 as C,gZ as v,g_ as A,fp as k,aR as N,b2 as R,bV as T,c0 as E,n as b,l as M,g$ as L,aN as U,r as d,b8 as _,g1 as z,h0 as O,dw as P,h1 as I,aS as F,dK as q,h2 as B,cV as G,cW as Y,h3 as Z,cX as $,cY as V,cZ as W,da as H,ef as K}from"./index-Dr-0P6rd.js";import{R as J}from"./use-jump-back-in-D9tBJ4v5.js";/**
1
+ import{a4 as x,j as t,Z as m,B as y,gn as C,hf as v,hg as A,fN as k,aU as N,b5 as R,bY as T,c3 as E,n as b,l as M,hh as L,aQ as U,r as d,bb as z,gk as _,hi as O,dz as P,hj as I,aV as F,ap as q,hk as Y,cY as B,cZ as G,hl as $,c_ as Z,c$ as H,d0 as V,dd as W,fb as J}from"./index-C63bLSO4.js";import{R as K}from"./use-jump-back-in-CkFErfWY.js";/**
2
2
  * @license lucide-react v1.48.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
5
5
  * See the LICENSE file in the root directory of this source tree.
6
- */const w={name:"moon",size:24,node:[["path",{d:"M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401",key:"kfwtm"}]]};w.node;const S=f(w);/**
6
+ */const w={name:"moon",size:24,node:[["path",{d:"M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401",key:"kfwtm"}]]};w.node;const S=x(w);/**
7
7
  * @license lucide-react v1.48.0 - ISC
8
8
  *
9
9
  * This source code is licensed under the ISC license.
10
10
  * See the LICENSE file in the root directory of this source tree.
11
- */const D={name:"network",size:24,node:[["rect",{x:"16",y:"16",width:"6",height:"6",rx:"1",key:"4q2zg0"}],["rect",{x:"2",y:"16",width:"6",height:"6",rx:"1",key:"8cvhb9"}],["rect",{x:"9",y:"2",width:"6",height:"6",rx:"1",key:"1egb70"}],["path",{d:"M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3",key:"1jsf9p"}],["path",{d:"M12 12V8",key:"2874zd"}]]};D.node;const X=f(D);function Q(){return!0}const ee={indigo:{box:"bg-indigo-500/10",icon:"text-indigo-500"},purple:{box:"bg-purple-500/10",icon:"text-purple-500"},emerald:{box:"bg-emerald-500/10",icon:"text-emerald-500"}};function h({icon:e,tint:n,title:s,subtitle:o,highlights:a,primaryAction:i,secondaryAction:r}){const l=ee[n];return t.jsxs("div",{className:"space-y-4",children:[t.jsxs("div",{className:"flex items-center gap-3",children:[t.jsx("div",{className:m("flex size-10 items-center justify-center rounded-lg",l.box),children:t.jsx(e,{className:m("size-5",l.icon),"aria-hidden":!0})}),t.jsxs("div",{children:[t.jsx("h3",{className:"text-sm font-medium",children:s}),t.jsx("p",{className:"text-muted-foreground text-xs",children:o})]})]}),t.jsx("div",{className:"bg-muted/50 space-y-3 rounded-lg p-4",children:a.map(({icon:c,title:u,description:p})=>t.jsxs("div",{className:"flex items-start gap-3",children:[t.jsx(c,{className:"text-muted-foreground mt-0.5 size-4","aria-hidden":!0}),t.jsxs("div",{children:[t.jsx("p",{className:"text-xs font-medium",children:u}),t.jsx("p",{className:"text-muted-foreground text-xs",children:p})]})]},u))}),t.jsxs("div",{className:"flex justify-end gap-2",children:[t.jsx(y,{variant:"ghost",size:"sm",onClick:r.onClick,children:r.label}),t.jsx(y,{size:"sm",onClick:i.onClick,children:i.label})]})]})}function te({onClose:e}){const n=C(),s=()=>{e(),n()};return t.jsx(h,{icon:k,tint:"purple",title:"Get notified where you already are",subtitle:"Slack, Telegram, and more",highlights:[{icon:v,title:"Notifications",description:"Hear when agents finish or need you"},{icon:A,title:"Reply from chat",description:"Answer agents from Telegram or Slack"}],primaryAction:{label:"Connect Telegram & Slack",onClick:s},secondaryAction:{label:"Not now",onClick:e}})}function se({onClose:e}){const{open:n}=N(),s=()=>{e(),n()};return t.jsx(h,{icon:S,tint:"indigo",title:"Agents that work on a schedule",subtitle:"Put any skill on a timer",highlights:[{icon:R,title:"Any schedule",description:"Daily, hourly, or your own timing"},{icon:J,title:"Come back to results",description:"Agents start the work for you"}],primaryAction:{label:"Create a schedule",onClick:s},secondaryAction:{label:"Not now",onClick:e}})}function ne({onClose:e}){const n=T(),s=()=>{e(),n({...M.team()})};return t.jsx(h,{icon:b,tint:"emerald",title:"Let your agents work together",subtitle:"Agents can message each other",highlights:[{icon:E,title:"Shared work",description:"Agents hand tasks to each other"},{icon:X,title:"Topology view",description:"See which agents talk to each other"}],primaryAction:{label:"Open Team",onClick:s},secondaryAction:{label:"Not now",onClick:e}})}const he=[{id:"remote-access",placements:["dashboard-sidebar"],priority:90,shouldShow:e=>!e.isDesktopApp&&!e.remoteAccessConfigured,content:{icon:L,title:"Use DorkOS on the go",shortDescription:"Access your agents from anywhere",ctaLabel:"Learn more"},action:{type:"action",handler:()=>U.getState().setRemoteAccessOpen(!0)}},{id:"relay-adapters",placements:["dashboard-sidebar"],priority:80,shouldShow:e=>e.isRelayEnabled&&!e.hasAdapter("slack")&&!e.hasAdapter("telegram"),content:{icon:k,title:"Connect to Slack & Telegram",shortDescription:"Get notifications where you already are",ctaLabel:"Learn more"},action:{type:"dialog",component:te}},{id:"schedules",placements:["dashboard-sidebar"],priority:70,shouldShow:e=>e.isTasksEnabled&&e.sessionCount>0&&e.taskCount===0,content:{icon:S,title:"Run agents on a schedule",shortDescription:"Come back to finished work",ctaLabel:"Set up",suggestion:{question:"Want agents working while you’re away?",action:"Set up a schedule"}},action:{type:"dialog",component:se}},{id:"agent-chat",placements:[],priority:60,shouldShow:e=>e.isMeshEnabled&&e.agentCount>=2,content:{icon:b,title:"Agents working together",shortDescription:"Let your agents collaborate",ctaLabel:"Learn more",suggestion:{question:"Want two agents to split a job?",action:"Show me"}},action:{type:"dialog",component:ne}}];function pe(e,n,s,o){return e.filter(a=>!s.includes(a.id)).filter(a=>a.shouldShow(n)).sort((a,i)=>i.priority-a.priority).slice(0,o)}function ae(){return Q()}const x="dorkos-first-use-date",oe=1e3*60*60*24;function ie(){try{const e=localStorage.getItem(x);if(e){const s=new Date(e);if(!isNaN(s.getTime()))return s}const n=new Date;return localStorage.setItem(x,n.toISOString()),n}catch{return new Date}}function re(){const e=ie();return Math.floor((Date.now()-e.getTime())/oe)}function ce(){const[e]=d.useState(re);return e}function ge(){const e=_(),n=ae(),s=z(),{sessions:o}=O(),{data:a}=P(),i=ce(),{data:r}=I(s),{data:l}=F(e),{data:c}=q(),u=((c==null?void 0:c.tunnel.enabled)??!1)||((c==null?void 0:c.tunnel.tokenConfigured)??!1);return{hasAdapter:d.useCallback(j=>r?r.some(g=>g.config.type===j&&g.status.state==="connected"):!1,[r]),isTasksEnabled:e,isMeshEnabled:n,isRelayEnabled:s,sessionCount:o.length,agentCount:(a==null?void 0:a.agents.length)??0,taskCount:(l==null?void 0:l.length)??0,daysSinceFirstUse:i,isDesktopApp:B(),remoteAccessConfigured:u}}function le({promo:e,open:n,onOpenChange:s}){const o=d.useCallback(()=>{s(!1)},[s]);if(e.action.type!=="dialog")return null;const a=e.action.component;return t.jsx(G,{open:n,onOpenChange:s,children:t.jsxs(Y,{className:"max-h-[85vh] max-w-lg gap-0 p-0",children:[t.jsx(Z,{}),t.jsxs($,{className:"p-4 pb-0",children:[t.jsx(V,{className:"text-sm font-medium",children:e.content.title}),t.jsx(W,{className:"sr-only",children:e.content.shortDescription})]}),t.jsx(H,{className:"p-4",children:t.jsx(a,{onClose:o})})]})})}function me(e){const[n,s]=d.useState(!1),{action:o}=e,a=d.useCallback(()=>{switch(o.type){case"dialog":s(!0);return;case"navigate":K(o.to);return;case"action":o.handler();return;default:{const r=o;throw new Error(`Unhandled promo action: ${JSON.stringify(r)}`)}}},[o]),i=o.type==="dialog"?t.jsx(le,{promo:e,open:n,onOpenChange:s}):null;return{activate:a,dialog:i}}export{S as M,he as P,me as a,pe as s,ge as u};
11
+ */const j={name:"network",size:24,node:[["rect",{x:"16",y:"16",width:"6",height:"6",rx:"1",key:"4q2zg0"}],["rect",{x:"2",y:"16",width:"6",height:"6",rx:"1",key:"8cvhb9"}],["rect",{x:"9",y:"2",width:"6",height:"6",rx:"1",key:"1egb70"}],["path",{d:"M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3",key:"1jsf9p"}],["path",{d:"M12 12V8",key:"2874zd"}]]};j.node;const Q=x(j);function X(){return!0}const ee={indigo:{box:"bg-indigo-500/10",icon:"text-indigo-500"},purple:{box:"bg-purple-500/10",icon:"text-purple-500"},emerald:{box:"bg-emerald-500/10",icon:"text-emerald-500"}};function h({icon:e,tint:n,title:s,subtitle:o,highlights:a,primaryAction:i,secondaryAction:r}){const l=ee[n];return t.jsxs("div",{className:"space-y-4",children:[t.jsxs("div",{className:"flex items-center gap-3",children:[t.jsx("div",{className:m("flex size-10 items-center justify-center rounded-lg",l.box),children:t.jsx(e,{className:m("size-5",l.icon),"aria-hidden":!0})}),t.jsxs("div",{children:[t.jsx("h3",{className:"text-sm font-medium",children:s}),t.jsx("p",{className:"text-muted-foreground text-xs",children:o})]})]}),t.jsx("div",{className:"bg-muted/50 space-y-3 rounded-lg p-4",children:a.map(({icon:c,title:u,description:p})=>t.jsxs("div",{className:"flex items-start gap-3",children:[t.jsx(c,{className:"text-muted-foreground mt-0.5 size-4","aria-hidden":!0}),t.jsxs("div",{children:[t.jsx("p",{className:"text-xs font-medium",children:u}),t.jsx("p",{className:"text-muted-foreground text-xs",children:p})]})]},u))}),t.jsxs("div",{className:"flex justify-end gap-2",children:[t.jsx(y,{variant:"ghost",size:"sm",onClick:r.onClick,children:r.label}),t.jsx(y,{size:"sm",onClick:i.onClick,children:i.label})]})]})}function te({onClose:e}){const n=C(),s=()=>{e(),n()};return t.jsx(h,{icon:k,tint:"purple",title:"Get notified where you already are",subtitle:"Slack, Telegram, and more",highlights:[{icon:v,title:"Notifications",description:"Hear when agents finish or need you"},{icon:A,title:"Reply from chat",description:"Answer agents from Telegram or Slack"}],primaryAction:{label:"Connect Telegram & Slack",onClick:s},secondaryAction:{label:"Not now",onClick:e}})}function se({onClose:e}){const{open:n}=N(),s=()=>{e(),n()};return t.jsx(h,{icon:S,tint:"indigo",title:"Agents that work on a schedule",subtitle:"Put any skill on a timer",highlights:[{icon:R,title:"Any schedule",description:"Daily, hourly, or your own timing"},{icon:K,title:"Come back to results",description:"Agents start the work for you"}],primaryAction:{label:"Create a schedule",onClick:s},secondaryAction:{label:"Not now",onClick:e}})}function ne({onClose:e}){const n=T(),s=()=>{e(),n({...M.team()})};return t.jsx(h,{icon:b,tint:"emerald",title:"Let your agents work together",subtitle:"Agents can message each other",highlights:[{icon:E,title:"Shared work",description:"Agents hand tasks to each other"},{icon:Q,title:"Topology view",description:"See which agents talk to each other"}],primaryAction:{label:"Open Team",onClick:s},secondaryAction:{label:"Not now",onClick:e}})}const he=[{id:"remote-access",placements:["dashboard-sidebar"],priority:90,shouldShow:e=>!e.isDesktopApp&&!e.remoteAccessConfigured,content:{icon:L,title:"Use DorkOS on the go",shortDescription:"Access your agents from anywhere",ctaLabel:"Learn more"},action:{type:"action",handler:()=>U.getState().setRemoteAccessOpen(!0)}},{id:"relay-adapters",placements:["dashboard-sidebar"],priority:80,shouldShow:e=>e.isRelayEnabled&&!e.hasAdapter("slack")&&!e.hasAdapter("telegram"),content:{icon:k,title:"Connect to Slack & Telegram",shortDescription:"Get notifications where you already are",ctaLabel:"Learn more"},action:{type:"dialog",component:te}},{id:"schedules",placements:["dashboard-sidebar"],priority:70,shouldShow:e=>e.isTasksEnabled&&e.sessionCount>0&&e.taskCount===0,content:{icon:S,title:"Run agents on a schedule",shortDescription:"Come back to finished work",ctaLabel:"Set up",suggestion:{question:"Want agents working while you’re away?",action:"Set up a schedule"}},action:{type:"dialog",component:se}},{id:"agent-chat",placements:[],priority:60,shouldShow:e=>e.isMeshEnabled&&e.agentCount>=2,content:{icon:b,title:"Agents working together",shortDescription:"Let your agents collaborate",ctaLabel:"Learn more",suggestion:{question:"Want two agents to split a job?",action:"Show me"}},action:{type:"dialog",component:ne}}];function pe(e,n,s,o){return e.filter(a=>!s.includes(a.id)).filter(a=>a.shouldShow(n)).sort((a,i)=>i.priority-a.priority).slice(0,o)}function ae(){return X()}const f="dorkos-first-use-date",oe=1e3*60*60*24;function ie(){try{const e=localStorage.getItem(f);if(e){const s=new Date(e);if(!isNaN(s.getTime()))return s}const n=new Date;return localStorage.setItem(f,n.toISOString()),n}catch{return new Date}}function re(){const e=ie();return Math.floor((Date.now()-e.getTime())/oe)}function ce(){const[e]=d.useState(re);return e}function ge(){const e=z(),n=ae(),s=_(),{sessions:o}=O(),{data:a}=P(),i=ce(),{data:r}=I(s),{data:l}=F(e),{data:c}=q(),u=((c==null?void 0:c.tunnel.enabled)??!1)||((c==null?void 0:c.tunnel.tokenConfigured)??!1);return{hasAdapter:d.useCallback(D=>r?r.some(g=>g.config.type===D&&g.status.state==="connected"):!1,[r]),isTasksEnabled:e,isMeshEnabled:n,isRelayEnabled:s,sessionCount:o.length,agentCount:(a==null?void 0:a.agents.length)??0,taskCount:(l==null?void 0:l.length)??0,daysSinceFirstUse:i,isDesktopApp:Y(),remoteAccessConfigured:u}}function le({promo:e,open:n,onOpenChange:s}){const o=d.useCallback(()=>{s(!1)},[s]);if(e.action.type!=="dialog")return null;const a=e.action.component;return t.jsx(B,{open:n,onOpenChange:s,children:t.jsxs(G,{className:"max-h-[85vh] max-w-lg gap-0 p-0",children:[t.jsx($,{}),t.jsxs(Z,{className:"p-4 pb-0",children:[t.jsx(H,{className:"text-sm font-medium",children:e.content.title}),t.jsx(V,{className:"sr-only",children:e.content.shortDescription})]}),t.jsx(W,{className:"p-4",children:t.jsx(a,{onClose:o})})]})})}function me(e){const[n,s]=d.useState(!1),{action:o}=e,a=d.useCallback(()=>{switch(o.type){case"dialog":s(!0);return;case"navigate":J(o.to);return;case"action":o.handler();return;default:{const r=o;throw new Error(`Unhandled promo action: ${JSON.stringify(r)}`)}}},[o]),i=o.type==="dialog"?t.jsx(le,{promo:e,open:n,onOpenChange:s}):null;return{activate:a,dialog:i}}export{S as M,he as P,me as a,pe as s,ge as u};
@@ -1 +1 @@
1
- import{ae as h,aj as E,r as T,br as p,an as a,bs as y,bt as m,bu as A}from"./index-Dr-0P6rd.js";import{A as D}from"./use-full-activity-feed-2o7GNAMe.js";const f=15,g=["dashboard-activity"],w=["Today","Yesterday","This week","Earlier"];function I(d){const s=new Date,e=new Date(s);e.setHours(0,0,0,0);const _=new Date(e);_.setDate(_.getDate()-1);const o=new Date(e);o.setDate(o.getDate()-o.getDay());const l=new Map;for(const n of d){const c=new Date(n.occurredAt);let i;c>=e?i="Today":c>=_?i="Yesterday":c>=o?i="This week":i="Earlier";const u=l.get(i)??[];u.push(n),l.set(i,u)}return w.filter(n=>l.has(n)).map(n=>({label:n,items:l.get(n)}))}function k(){const d=h(),{data:s,isLoading:e}=E({queryKey:g,queryFn:()=>d.listActivityEvents({limit:f}),staleTime:3e4,refetchOnWindowFocus:!0});return{groups:T.useMemo(()=>I((s==null?void 0:s.items)??[]),[s==null?void 0:s.items]),hasMore:(s==null?void 0:s.nextCursor)!=null,isLoading:e}}const r=[g,D],t={relay_message:r,relay_flow:r,relay_adapters_changed:r,relay_bindings_changed:r,extension_reloaded:r,task_run_failed:[...r,y],task_run_updated:[y],relay_dead_letter:[m],mesh_liveness_changed:[A],tasks_changed:r},S=1200;function v(d=S){const s=p({coalesceMs:d}),e=_=>s(_.map(o=>({queryKey:o})));a("relay_message",()=>e(t.relay_message)),a("relay_flow",()=>e(t.relay_flow)),a("relay_adapters_changed",()=>e(t.relay_adapters_changed)),a("relay_bindings_changed",()=>e(t.relay_bindings_changed)),a("extension_reloaded",()=>e(t.extension_reloaded)),a("task_run_failed",()=>e(t.task_run_failed)),a("task_run_updated",()=>e(t.task_run_updated)),a("relay_dead_letter",()=>e(t.relay_dead_letter)),a("mesh_liveness_changed",()=>e(t.mesh_liveness_changed)),a("tasks_changed",()=>e(t.tasks_changed))}export{v as a,k as u};
1
+ import{ae as h,aj as E,r as T,bu as p,an as a,bv as y,bw as m,bx as A}from"./index-C63bLSO4.js";import{A as D}from"./use-full-activity-feed-BpQANbns.js";const f=15,g=["dashboard-activity"],w=["Today","Yesterday","This week","Earlier"];function I(d){const s=new Date,e=new Date(s);e.setHours(0,0,0,0);const _=new Date(e);_.setDate(_.getDate()-1);const o=new Date(e);o.setDate(o.getDate()-o.getDay());const l=new Map;for(const n of d){const c=new Date(n.occurredAt);let i;c>=e?i="Today":c>=_?i="Yesterday":c>=o?i="This week":i="Earlier";const u=l.get(i)??[];u.push(n),l.set(i,u)}return w.filter(n=>l.has(n)).map(n=>({label:n,items:l.get(n)}))}function k(){const d=h(),{data:s,isLoading:e}=E({queryKey:g,queryFn:()=>d.listActivityEvents({limit:f}),staleTime:3e4,refetchOnWindowFocus:!0});return{groups:T.useMemo(()=>I((s==null?void 0:s.items)??[]),[s==null?void 0:s.items]),hasMore:(s==null?void 0:s.nextCursor)!=null,isLoading:e}}const r=[g,D],t={relay_message:r,relay_flow:r,relay_adapters_changed:r,relay_bindings_changed:r,extension_reloaded:r,task_run_failed:[...r,y],task_run_updated:[y],relay_dead_letter:[m],mesh_liveness_changed:[A],tasks_changed:r},S=1200;function v(d=S){const s=p({coalesceMs:d}),e=_=>s(_.map(o=>({queryKey:o})));a("relay_message",()=>e(t.relay_message)),a("relay_flow",()=>e(t.relay_flow)),a("relay_adapters_changed",()=>e(t.relay_adapters_changed)),a("relay_bindings_changed",()=>e(t.relay_bindings_changed)),a("extension_reloaded",()=>e(t.extension_reloaded)),a("task_run_failed",()=>e(t.task_run_failed)),a("task_run_updated",()=>e(t.task_run_updated)),a("relay_dead_letter",()=>e(t.relay_dead_letter)),a("mesh_liveness_changed",()=>e(t.mesh_liveness_changed)),a("tasks_changed",()=>e(t.tasks_changed))}export{v as a,k as u};
@@ -1 +1 @@
1
- import{aE as a,r,ae as E,aF as p,aG as F}from"./index-Dr-0P6rd.js";function g(e){const n=a(l=>l.forgetRoom);r.useEffect(()=>{if(e!==null)return()=>n(e)},[e,n])}function L(e){const n=E(),l=a(t=>{var o;return e?((o=t.intent[e])==null?void 0:o.leaderId)??null:null}),u=a(t=>t.startFollowing),s=a(t=>t.stopFollowing),c=a(t=>t.sweep),f=r.useCallback(t=>{e&&u(e,t)},[e,u]),w=r.useCallback(()=>{e&&s(e)},[e,s]);return r.useEffect(()=>{const t=setInterval(()=>c(),p);return()=>clearInterval(t)},[c]),r.useEffect(()=>{if(!e||l===null)return;let t=!0;const o=()=>{n.followRoomMember(e,l).catch(()=>{t&&s(e)})};o();const v=setInterval(o,F),i=()=>s(e);return window.addEventListener("blur",i),window.addEventListener("pagehide",i),()=>{t=!1,clearInterval(v),window.removeEventListener("blur",i),window.removeEventListener("pagehide",i),n.unfollowRoomMember(e).catch(()=>{})}},[n,e,l,s]),{following:l,follow:f,stop:w}}export{g as a,L as u};
1
+ import{aH as a,r,ae as p,aI as E,aJ as F}from"./index-C63bLSO4.js";function g(e){const n=a(l=>l.forgetRoom);r.useEffect(()=>{if(e!==null)return()=>n(e)},[e,n])}function L(e){const n=p(),l=a(t=>{var o;return e?((o=t.intent[e])==null?void 0:o.leaderId)??null:null}),u=a(t=>t.startFollowing),s=a(t=>t.stopFollowing),c=a(t=>t.sweep),f=r.useCallback(t=>{e&&u(e,t)},[e,u]),w=r.useCallback(()=>{e&&s(e)},[e,s]);return r.useEffect(()=>{const t=setInterval(()=>c(),E);return()=>clearInterval(t)},[c]),r.useEffect(()=>{if(!e||l===null)return;let t=!0;const o=()=>{n.followRoomMember(e,l).catch(()=>{t&&s(e)})};o();const v=setInterval(o,F),i=()=>s(e);return window.addEventListener("blur",i),window.addEventListener("pagehide",i),()=>{t=!1,clearInterval(v),window.removeEventListener("blur",i),window.removeEventListener("pagehide",i),n.unfollowRoomMember(e).catch(()=>{})}},[n,e,l,s]),{following:l,follow:f,stop:w}}export{g as a,L as u};
@@ -1 +1 @@
1
- import{r as p}from"./index-Dr-0P6rd.js";function x({orderedIds:n,activeId:l,onActivate:a,onClose:f,getFallbackFocus:s}){const o=p.useRef(new Map),k=l&&n.includes(l)?l:n[0]??null,c=p.useCallback(e=>{var b;e&&((b=o.current.get(e))==null||b.focus())},[]),u=p.useCallback(e=>{a(e,"keyboard"),c(e)},[a,c]);return{getTabProps:p.useCallback(e=>({ref:t=>{t?o.current.set(e,t):o.current.delete(e)},tabIndex:e===k?0:-1,onClick:()=>a(e,"pointer"),onKeyDown:t=>{var i;const r=n.indexOf(e);if(r===-1)return;const D=n.length-1;switch(t.key){case"ArrowRight":t.preventDefault(),u(n[r===D?0:r+1]);break;case"ArrowLeft":t.preventDefault(),u(n[r===0?D:r-1]);break;case"Home":t.preventDefault(),u(n[0]);break;case"End":t.preventDefault(),u(n[D]);break;case"Delete":{if(!f)return;t.preventDefault();const w=n[r+1]??n[r-1]??null;f(e,"keyboard"),w?c(w):(i=s==null?void 0:s())==null||i.focus();break}}},...f?{"aria-keyshortcuts":"Delete"}:{}}),[n,k,a,f,s,u,c])}}export{x as u};
1
+ import{r as p}from"./index-C63bLSO4.js";function x({orderedIds:n,activeId:l,onActivate:a,onClose:f,getFallbackFocus:s}){const o=p.useRef(new Map),k=l&&n.includes(l)?l:n[0]??null,c=p.useCallback(e=>{var b;e&&((b=o.current.get(e))==null||b.focus())},[]),u=p.useCallback(e=>{a(e,"keyboard"),c(e)},[a,c]);return{getTabProps:p.useCallback(e=>({ref:t=>{t?o.current.set(e,t):o.current.delete(e)},tabIndex:e===k?0:-1,onClick:()=>a(e,"pointer"),onKeyDown:t=>{var i;const r=n.indexOf(e);if(r===-1)return;const D=n.length-1;switch(t.key){case"ArrowRight":t.preventDefault(),u(n[r===D?0:r+1]);break;case"ArrowLeft":t.preventDefault(),u(n[r===0?D:r-1]);break;case"Home":t.preventDefault(),u(n[0]);break;case"End":t.preventDefault(),u(n[D]);break;case"Delete":{if(!f)return;t.preventDefault();const w=n[r+1]??n[r-1]??null;f(e,"keyboard"),w?c(w):(i=s==null?void 0:s())==null||i.focus();break}}},...f?{"aria-keyshortcuts":"Delete"}:{}}),[n,k,a,f,s,u,c])}}export{x as u};