@vellumai/web 0.10.3 → 0.10.4-staging.1
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.
- package/dist/assets/{AnimatePresence-CgXwEO42.js → AnimatePresence-Dfn9OLfv.js} +2 -2
- package/dist/assets/{BundleConfirmPage-DpfvIcwl.js → BundleConfirmPage-cwBrFi1K.js} +1 -1
- package/dist/assets/{Combination-4Qc3vrtW.js → Combination-DRz6Ez-m.js} +1 -1
- package/dist/assets/{QueryClientProvider-DKhXIxGb.js → QueryClientProvider-DgWA3A3c.js} +1 -1
- package/dist/assets/{about-page-CuSnWJFo.js → about-page-6YWjIdZL.js} +1 -1
- package/dist/assets/{account-page-CCYCSy2-.js → account-page-bNvk8mIC.js} +1 -1
- package/dist/assets/{account-shell-b6GjlQ0u.js → account-shell-B1geYjoc.js} +1 -1
- package/dist/assets/{add-credits-modal-Dy3I3Har.js → add-credits-modal-D-5W9e8w.js} +1 -1
- package/dist/assets/{advanced-page-CVnT0zH-.js → advanced-page-CuerkFrp.js} +1 -1
- package/dist/assets/ai-page-CsqhZcSf.js +1 -0
- package/dist/assets/{api-2kc3MHRz.js → api-DXPKXkDj.js} +1 -1
- package/dist/assets/{api-key-screen-DGVn66y4.js → api-key-screen-QS5FdtlL.js} +1 -1
- package/dist/assets/{app-info-BZYaLxCg.js → app-info-oX9MaK2d.js} +1 -1
- package/dist/assets/{archive-BFILUl9x.js → archive-Ct5g6T4N.js} +1 -1
- package/dist/assets/{archive-page-Dl6HLIJt.js → archive-page-Bh0LTWRp.js} +1 -1
- package/dist/assets/arrow-left-BPsKoNcb.js +1 -0
- package/dist/assets/arrow-up-CkZMv0kb.js +1 -0
- package/dist/assets/{assistant-api-DROTS3Y9.js → assistant-api-BdlaVxiH.js} +1 -1
- package/dist/assets/{assistant-feature-flag-store-Dl92XRsM.js → assistant-feature-flag-store-Ceb6N94N.js} +1 -1
- package/dist/assets/assistant-identity-store-ESeBny_J.js +1 -0
- package/dist/assets/{assistant-status-panel-BkIkvMYw.js → assistant-status-panel-DRHanMan.js} +1 -1
- package/dist/assets/auth-store-BzL2lSd1.js +7 -0
- package/dist/assets/ban-BW0pQzvY.js +1 -0
- package/dist/assets/{bell-DB1SrBre.js → bell-B-09xFrv.js} +1 -1
- package/dist/assets/{billing-page-Cq_yLwUC.js → billing-page-CEArOabV.js} +3 -3
- package/dist/assets/{bookmark-C3S-p0MQ.js → bookmark-B_4Mr1qd.js} +1 -1
- package/dist/assets/{bookmarks-page-CANlE7hP.js → bookmarks-page-BvkvZ7uy.js} +1 -1
- package/dist/assets/{brain-Bs6LnfHO.js → brain-CamcLepK.js} +1 -1
- package/dist/assets/{browser-CKX_K5ev.js → browser-CDQJAXkC.js} +2 -2
- package/dist/assets/{bug-DDcuQ3au.js → bug-BiiqXpDy.js} +1 -1
- package/dist/assets/{build-state-VC4tL7sK.js → build-state-BIN8lPRx.js} +1 -1
- package/dist/assets/{button-D7s2Q_uG.js → button-BvHa6F59.js} +1 -1
- package/dist/assets/{calendar-CpgH8CqM.js → calendar-Ba3kkcG0.js} +1 -1
- package/dist/assets/{capture-error-Hr1Yo2kx.js → capture-error-BaKOqBjF.js} +1 -1
- package/dist/assets/{card-BibIM9x3.js → card-D9_3ngHI.js} +1 -1
- package/dist/assets/check-DwLoiFa9.js +1 -0
- package/dist/assets/check-DxBmXJus.js +1 -0
- package/dist/assets/{checkbox-BqCzUvXM.js → checkbox-DNfwi5Hy.js} +1 -1
- package/dist/assets/chevron-left-CgekgptJ.js +1 -0
- package/dist/assets/chevron-right-DP15nqFC.js +1 -0
- package/dist/assets/{chevron-up-BRZN6p_l.js → chevron-up-CNrKWpd3.js} +1 -1
- package/dist/assets/{circle-alert-DvNg50UK.js → circle-alert-BB_iJtM8.js} +1 -1
- package/dist/assets/circle-check-Cwv8JCfw.js +1 -0
- package/dist/assets/{client-feature-flag-store-C1kdd1EO.js → client-feature-flag-store-kWvb3vtZ.js} +1 -1
- package/dist/assets/{cloud-off-rAv4OHmv.js → cloud-off-DpkRXr7O.js} +1 -1
- package/dist/assets/{cn-DvW5mxZR.js → cn-CFvi8Z0K.js} +1 -1
- package/dist/assets/code-7vvpMPgo.js +1 -0
- package/dist/assets/{command-palette-GZu_zgQg.js → command-palette-D1nNMvVX.js} +1 -1
- package/dist/assets/{command-palette-window-page-CzWu42Ee.js → command-palette-window-page-DrZt0RaG.js} +1 -1
- package/dist/assets/{community-page-Dhgypa-h.js → community-page-A8lshdka.js} +1 -1
- package/dist/assets/{confirm-dialog-CfOXCE1N.js → confirm-dialog-BtxNY4WU.js} +1 -1
- package/dist/assets/{connect-page-CDOcgzzL.js → connect-page-CuSSRk9J.js} +1 -1
- package/dist/assets/{consent-controls-BSZV4rW3.js → consent-controls-CYj9WfJh.js} +1 -1
- package/dist/assets/{contacts-gateway-dxw1KMN2.js → contacts-gateway-CHNyL-NU.js} +1 -1
- package/dist/assets/{contacts-page-route-C3QiOxjO.js → contacts-page-route-qsIGsjpD.js} +2 -2
- package/dist/assets/{conversation-list-fetchers-UPVZq_6O.js → conversation-list-fetchers-Bcp_Zesn.js} +1 -1
- package/dist/assets/{conversation-store-DK-7gFAt.js → conversation-store-6tz67quR.js} +1 -1
- package/dist/assets/{cpu-CiHv3fhs.js → cpu-PmmoD4_K.js} +1 -1
- package/dist/assets/{credit-card-BKRB1ZIi.js → credit-card-yPLmY1JU.js} +1 -1
- package/dist/assets/{danger-zone-redirect-page-CjqUKhk9.js → danger-zone-redirect-page-Dhgk9mkr.js} +1 -1
- package/dist/assets/debug-page-Ddv9MlOm.js +4 -0
- package/dist/assets/{deploy-dialogs-jf5VL1UP.js → deploy-dialogs-qdH6GTjP.js} +1 -1
- package/dist/assets/{detail-card-BIwpXT5F.js → detail-card-5TPdhuZN.js} +1 -1
- package/dist/assets/{developer-page-iEL4eJ8x.js → developer-page-BXl0qAXX.js} +1 -1
- package/dist/assets/{devices-page-RMaPGcXe.js → devices-page-DaZR3FC4.js} +1 -1
- package/dist/assets/{diagnostics-BEB4VPwC.js → diagnostics-D5xXiLo-.js} +1 -1
- package/dist/assets/{dictation-overlay-page-BxQCzLMY.js → dictation-overlay-page-DOdZ_KIz.js} +1 -1
- package/dist/assets/{dist-B0Gf-knw.js → dist-BkSUb6s0.js} +1 -1
- package/dist/assets/{dist-cApvLul2.js → dist-Ble8OyWO.js} +1 -1
- package/dist/assets/{document-viewer-page-57OuXxYw.js → document-viewer-page-XzPSoPVb.js} +1 -1
- package/dist/assets/{domain-field-DYwuCpup.js → domain-field-BGp08c4L.js} +1 -1
- package/dist/assets/{dropdown-CL8VmqrY.js → dropdown-SUNHYFiy.js} +1 -1
- package/dist/assets/{earn-credits-modal-Nm1VymMp.js → earn-credits-modal-D7ioWvNh.js} +1 -1
- package/dist/assets/{emails-page-0gRZqa6y.js → emails-page-BRnVsJnR.js} +1 -1
- package/dist/assets/{emoji-catalog-data-Dlkuvec0.js → emoji-catalog-data-hHp74TCA.js} +1 -1
- package/dist/assets/{environment-store-CvH3J6fT.js → environment-store-B5EGAqzg.js} +1 -1
- package/dist/assets/esm-8Mv545sP.js +2 -0
- package/dist/assets/esm-B35SBKTx.js +2 -0
- package/dist/assets/esm-B9nLiq-2.js +1 -0
- package/dist/assets/{esm-B3Lr4Bv0.js → esm-DQXfMjvW.js} +2 -2
- package/dist/assets/esm-Dz9uwqjb.js +2 -0
- package/dist/assets/esm-TyKOKslC.js +2 -0
- package/dist/assets/{external-link-DPAtkBJ2.js → external-link-h3UAe8eX.js} +1 -1
- package/dist/assets/{file-editor-BNkJJbUv.js → file-editor-Cy1TZHJJ.js} +1 -1
- package/dist/assets/{file-text-CmK9LY1p.js → file-text-Bxj0xAst.js} +1 -1
- package/dist/assets/funnel-events-Dz_DLI0Q.js +1 -0
- package/dist/assets/general-page-Dl7IYYSf.js +1 -0
- package/dist/assets/{globe-DYF_lSGm.js → globe-D7wvOZaZ.js} +1 -1
- package/dist/assets/{hard-drive-D7_5VMhi.js → hard-drive-CO7i5o4z.js} +1 -1
- package/dist/assets/{hatching-screen-KPinlCES.js → hatching-screen-YvbZlnsV.js} +1 -1
- package/dist/assets/home-page-route-B7AJU1pr.js +1 -0
- package/dist/assets/{hosting-screen-C14KAJ6m.js → hosting-screen-CKlP38Z3.js} +1 -1
- package/dist/assets/{identity-page-route-C0BFcTAF.js → identity-page-route-CZQEWoJK.js} +1 -1
- package/dist/assets/index-3zpPFBeR.js +132 -0
- package/dist/assets/index-PRuqIn_u.css +2 -0
- package/dist/assets/{info-_OtUK1cX.js → info-B4DDA6uP.js} +1 -1
- package/dist/assets/{info-BGLlcyt6.js → info-CNTT4WCe.js} +1 -1
- package/dist/assets/{input-C8kfrq9r.js → input-BLN3wmw2.js} +1 -1
- package/dist/assets/{inspect-page-CWasyuSO.js → inspect-page-AldHg0Dz.js} +4 -4
- package/dist/assets/{install-C3xe8ARr.js → install-D_GSceot.js} +1 -1
- package/dist/assets/integrations-page-b3sE-PDS.js +1 -0
- package/dist/assets/{intelligence-layout-CvTumtjv.js → intelligence-layout-CsM_YjdB.js} +1 -1
- package/dist/assets/{keyboard-shortcuts-page-kiOEZKzE.js → keyboard-shortcuts-page-Capx1ICA.js} +1 -1
- package/dist/assets/{lib-BWRK7bT2.js → lib-Bexzcbsy.js} +1 -1
- package/dist/assets/library-detail-page-DrgMdBPq.js +1 -0
- package/dist/assets/{library-page-BHejhapZ.js → library-page-Catpu3p0.js} +1 -1
- package/dist/assets/{link-2-CaszbD7P.js → link-2-DW8ruMGH.js} +1 -1
- package/dist/assets/{list-row-Cw9JYESP.js → list-row-l7sxQ4Tj.js} +1 -1
- package/dist/assets/loader-circle-cYXxWP5B.js +1 -0
- package/dist/assets/{local-mode-CvrNMtPF.js → local-mode-Cez1weue.js} +1 -1
- package/dist/assets/{log-in-2iOsufxq.js → log-in-Ci5ja9sN.js} +1 -1
- package/dist/assets/{login-flow-DPi11n3h.js → login-flow-DeMU71_M.js} +1 -1
- package/dist/assets/{login-page-BGLVK82t.js → login-page-DkNb0F3s.js} +1 -1
- package/dist/assets/{logout-page-Bl6AD21S.js → logout-page-POyojlS1.js} +1 -1
- package/dist/assets/{logs-layout-C9eUE1Pt.js → logs-layout-qJmOLDZF.js} +1 -1
- package/dist/assets/{memory-router-playground-page-Dhi3uqxr.js → memory-router-playground-page-DD6t0kqe.js} +1 -1
- package/dist/assets/{menu-C_97pis4.js → menu-_JM4udVm.js} +1 -1
- package/dist/assets/{messages-DHDZ32NT.js → messages-DCNfjhgv.js} +2 -2
- package/dist/assets/{minimize-2-JE_UHZlJ.js → minimize-2-DmC6-Woz.js} +1 -1
- package/dist/assets/{mobile-sidebar-drawer-DqXFL0Ke.js → mobile-sidebar-drawer-B4ol32hs.js} +1 -1
- package/dist/assets/{modal-D0Q3UWD0.js → modal-CH2iwSBx.js} +1 -1
- package/dist/assets/{monitor-D2okHi8o.js → monitor-B1YMXlZj.js} +1 -1
- package/dist/assets/{moon-CK8MXzOo.js → moon-DSWoApF5.js} +1 -1
- package/dist/assets/mutation-error-B5AKP6aC.js +1 -0
- package/dist/assets/{native-file-B-MK3Ngg.js → native-file-GuVJgNpB.js} +2 -2
- package/dist/assets/{notice-CqRgVmeL.js → notice-BhqKj_VM.js} +1 -1
- package/dist/assets/{notifications-page-pHiDPA0p.js → notifications-page-MRalDive.js} +1 -1
- package/dist/assets/{oauth-complete-page-DiGMWbOb.js → oauth-complete-page-DGOyh2u6.js} +1 -1
- package/dist/assets/{oauth-popup-complete-page-CwoZnzdc.js → oauth-popup-complete-page-BPxKmr_f.js} +1 -1
- package/dist/assets/{page-shell-cEGpH3P5.js → page-shell-cu3KBmqd.js} +1 -1
- package/dist/assets/{pairing-page-clFaUgzL.js → pairing-page-_ulPOW9r.js} +1 -1
- package/dist/assets/{panel-item-nGTDevWP.js → panel-item-DN2CyWOT.js} +1 -1
- package/dist/assets/{password-reset-page-DfYGL1Gv.js → password-reset-page-BfRXQpS_.js} +1 -1
- package/dist/assets/{pencil-DbB9rxpY.js → pencil-DUMCM9m-.js} +1 -1
- package/dist/assets/{platform-loopback-page-Df5bTTx8.js → platform-loopback-page-D3oAT6qE.js} +1 -1
- package/dist/assets/{plugin-detail-page-IRPeI4lP.js → plugin-detail-page-ClMMTrti.js} +1 -1
- package/dist/assets/{plugins-page-BaYp2QOe.js → plugins-page-y6Aom9qx.js} +1 -1
- package/dist/assets/{popover-CL-JL6vG.js → popover-BIr0nN9H.js} +1 -1
- package/dist/assets/prechat-route-MTnUk6MK.js +1 -0
- package/dist/assets/{prefs-C_oq5G87.js → prefs-C6e8pdrA.js} +1 -1
- package/dist/assets/{privacy-page-BUhxrIRn.js → privacy-page-gc352kAN.js} +1 -1
- package/dist/assets/privacy-screen-CQLPQPoM.js +1 -0
- package/dist/assets/{progress-bar-DIFlWPPg.js → progress-bar-ATg2lhDh.js} +1 -1
- package/dist/assets/{provider-callback-page-CxFC4PH1.js → provider-callback-page-BtYwaMxL.js} +1 -1
- package/dist/assets/{provider-key-nA35OC4Y.js → provider-key-BKR2QTfR.js} +1 -1
- package/dist/assets/{provider-signup-page-CdpT28xL.js → provider-signup-page-80V_D9ad.js} +1 -1
- package/dist/assets/proxy-T76Q62qP.js +1 -0
- package/dist/assets/{quick-input-page-C9jN8YtU.js → quick-input-page-B-7fTgJi.js} +1 -1
- package/dist/assets/{react-query.gen-CQLyoqYk.js → react-query.gen-BeTpj_Sy.js} +1 -1
- package/dist/assets/{react-query.gen-rp6Krcco.js → react-query.gen-breoeUVK.js} +1 -1
- package/dist/assets/{refresh-cw-Bf6LV0kG.js → refresh-cw-kmptQnpX.js} +1 -1
- package/dist/assets/{research-mock-page-ttrrPwo3.js → research-mock-page-DYPr-S2q.js} +1 -1
- package/dist/assets/research-onboarding-route-yYstHFq4.js +35 -0
- package/dist/assets/{resize-errors-DnJEbHn4.js → resize-errors-ocHCHRPn.js} +1 -1
- package/dist/assets/{resolved-assistants-store-Cp4J43BK.js → resolved-assistants-store-BrS8JBzC.js} +1 -1
- package/dist/assets/{return-to-ByvaXBKr.js → return-to-DlPFMVLx.js} +1 -1
- package/dist/assets/{review-terms-screen-DEiifDmK.js → review-terms-screen-DFlSm1tM.js} +1 -1
- package/dist/assets/risk-badge-CTIwePVV.js +1 -0
- package/dist/assets/{routes-DVqkwUEe.js → routes-Dzl0kj5j.js} +1 -1
- package/dist/assets/{save-DEBQ_gbb.js → save-DQyrotXP.js} +1 -1
- package/dist/assets/{schedules-D-4Rq6ZC.js → schedules-DZspBZ61.js} +1 -1
- package/dist/assets/{sdk.gen-D-_js_oC.js → sdk.gen-DSjI3deY.js} +1 -1
- package/dist/assets/{select-assistant-screen-UoixBMN2.js → select-assistant-screen-kcdnMYj7.js} +1 -1
- package/dist/assets/{setting-row-o44aWwYt.js → setting-row-DB3q3lgL.js} +1 -1
- package/dist/assets/settings-layout-DV4y_-8a.js +1 -0
- package/dist/assets/{share-feedback-modal-CTwByE7B.js → share-feedback-modal-CNGNLLDP.js} +1 -1
- package/dist/assets/{shortcut-keys-vM6sNj7W.js → shortcut-keys-D4E8qQgS.js} +1 -1
- package/dist/assets/{sidebar-tree-BJkXpCut.js → sidebar-tree-BCJVetMg.js} +1 -1
- package/dist/assets/{signup-page-CKDYl9Wb.js → signup-page-iM9szAKN.js} +1 -1
- package/dist/assets/{signup-shell-Bu5BM6II.js → signup-shell-GOG8-46O.js} +1 -1
- package/dist/assets/{skills-page-DVjqqfMw.js → skills-page-D3c3cuti.js} +1 -1
- package/dist/assets/{sound-manager-CzslfzDO.js → sound-manager-DwCzTycd.js} +1 -1
- package/dist/assets/{sounds-page-mens6EAJ.js → sounds-page-C3qbFW0l.js} +1 -1
- package/dist/assets/{sparkles-BICoewVE.js → sparkles-C8eL4LNF.js} +1 -1
- package/dist/assets/src-Dr68ou95.js +293 -0
- package/dist/assets/{stat-square-B0S3fO7O.js → stat-square-zBHENXcL.js} +1 -1
- package/dist/assets/{status-badge-pill-DYlAnX5m.js → status-badge-pill-CSitw8_5.js} +1 -1
- package/dist/assets/step-indicator-dots-D4A7eDFL.js +1 -0
- package/dist/assets/subagent-detail-panel-D3xm4yVF.js +4 -0
- package/dist/assets/{subagent-store-BLHGkTJR.js → subagent-store-CFwN6f1W.js} +1 -1
- package/dist/assets/system-events-page-CXlJ_J54.js +1 -0
- package/dist/assets/{system-events-redirect-page-C1hGE6n5.js → system-events-redirect-page-Bkigvq03.js} +1 -1
- package/dist/assets/{tag-B_-QAvJF.js → tag-64Evw5MO.js} +1 -1
- package/dist/assets/{three-dot-indicator-CLs7Rl-I.js → three-dot-indicator-DKd64wpF.js} +1 -1
- package/dist/assets/{tiptap-document-editor-D2t4qYzv.js → tiptap-document-editor-D031y5O7.js} +1 -1
- package/dist/assets/{toast-2TW5tj1Y.js → toast-VJ6jFKB9.js} +1 -1
- package/dist/assets/{toggle-X_kQW5my.js → toggle-zADptotB.js} +1 -1
- package/dist/assets/tool-detail-panel-Cq_SyoUG.js +2 -0
- package/dist/assets/{trace-page-DRWPaAuQ.js → trace-page-CEyVWa_4.js} +1 -1
- package/dist/assets/{triangle-alert-Bz1PpciW.js → triangle-alert-DqPPHRPD.js} +1 -1
- package/dist/assets/{triangle-alert-DKOyShqD.js → triangle-alert-eaW8jtCr.js} +1 -1
- package/dist/assets/{typography-BscuIPxA.js → typography-COqg6o2z.js} +1 -1
- package/dist/assets/{upgrade-cancel-page-Cwv5eMh9.js → upgrade-cancel-page-CM9JnbEO.js} +1 -1
- package/dist/assets/{upgrade-success-page-DnJ8Kyyj.js → upgrade-success-page-BxrXUjiP.js} +1 -1
- package/dist/assets/{usage-page-DJHRS0lZ.js → usage-page-DBmsLal7.js} +1 -1
- package/dist/assets/{use-active-assistant-id-C-RHQ9f6.js → use-active-assistant-id-jfqnc4T7.js} +1 -1
- package/dist/assets/{use-bus-subscription-BbiZXm1u.js → use-bus-subscription-CKWguMzy.js} +1 -1
- package/dist/assets/use-is-org-ready-DLZpD311.js +1 -0
- package/dist/assets/{use-onboarding-login-BEOH92mZ.js → use-onboarding-login-Cz1MgHw6.js} +1 -1
- package/dist/assets/use-plugin-drift-4-li_vW2.js +1 -0
- package/dist/assets/use-reduced-motion-DvKonyYy.js +1 -0
- package/dist/assets/{useQuery-B45lW1Kk.js → useBaseQuery-BOw_gWPH.js} +1 -1
- package/dist/assets/useInfiniteQuery-iPXlezAp.js +1 -0
- package/dist/assets/{useMutation-Lj4VunQV.js → useMutation-D3WkZnYg.js} +1 -1
- package/dist/assets/useQuery-cVuP8q1x.js +1 -0
- package/dist/assets/{user-plus-C0OyQU83.js → user-plus-CjFuXA3D.js} +1 -1
- package/dist/assets/{utils-IBnUZTqY.js → utils-Lep-7jRg.js} +1 -1
- package/dist/assets/{viewer-store-Dead64xY.js → viewer-store-Dened07w.js} +1 -1
- package/dist/assets/{voice-page-kQZ2ya5j.js → voice-page-C3zxM20t.js} +1 -1
- package/dist/assets/{weather-forecast-display-Cu3W6OZF.js → weather-forecast-display-DfsXEBSo.js} +1 -1
- package/dist/assets/{web-DOKyhuGQ.js → web-Broue3sZ.js} +1 -1
- package/dist/assets/{web-M3MS-KVB.js → web-C6Et8xNJ.js} +1 -1
- package/dist/assets/{web-B0S2ynRY.js → web-CNtrY6ZR.js} +1 -1
- package/dist/assets/{web-D0QcGl1O.js → web-CccL0uF5.js} +1 -1
- package/dist/assets/{web-Cg8gCWpB.js → web-CtAf2vJC.js} +1 -1
- package/dist/assets/{web-DJKnWTsF.js → web-Cygkn0vs.js} +1 -1
- package/dist/assets/{web-iUXw2JWQ.js → web-DuqCaaXx.js} +1 -1
- package/dist/assets/{welcome-screen-Bd7PCfAf.js → welcome-screen-RBmiq3Lq.js} +1 -1
- package/dist/assets/workflow-detail-panel-C2dD_hU2.js +1 -0
- package/dist/assets/{workspace-page-BR4pOxs5.js → workspace-page-lR8lzD2L.js} +1 -1
- package/dist/assets/x-649kPSQS.js +1 -0
- package/dist/assets/x-Bn5tweDc.js +1 -0
- package/dist/index.html +135 -134
- package/package.json +1 -1
- package/dist/assets/ai-page-kEbHR7cH.js +0 -1
- package/dist/assets/arrow-left-CP-EhDNF.js +0 -1
- package/dist/assets/arrow-up-nBfZxfhi.js +0 -1
- package/dist/assets/assistant-identity-store-CKjnoLSp.js +0 -1
- package/dist/assets/auth-store-Kfxhs2oI.js +0 -7
- package/dist/assets/ban-BpBuRCKI.js +0 -1
- package/dist/assets/check-CW0KmV0o.js +0 -1
- package/dist/assets/check-D6WkI0gF.js +0 -1
- package/dist/assets/chevron-left-DghyKSEE.js +0 -1
- package/dist/assets/chevron-right-B6vEpVY0.js +0 -1
- package/dist/assets/circle-check-DzlJxj_M.js +0 -1
- package/dist/assets/code-aMX9iMYa.js +0 -1
- package/dist/assets/debug-page-CBozmAQQ.js +0 -2
- package/dist/assets/esm-BVNBLzcW.js +0 -2
- package/dist/assets/esm-BtN-afz9.js +0 -1
- package/dist/assets/esm-D2xhPoyM.js +0 -2
- package/dist/assets/esm-DwNtkiSD.js +0 -2
- package/dist/assets/esm-pt1s0ryM.js +0 -2
- package/dist/assets/general-page-aZxTpnpI.js +0 -1
- package/dist/assets/home-page-route-CudtBGg1.js +0 -1
- package/dist/assets/index-Hcyzmz_5.css +0 -2
- package/dist/assets/index-PRnvH2Y1.js +0 -132
- package/dist/assets/integrations-page-WhBpTYP2.js +0 -1
- package/dist/assets/library-detail-page-rPvN9G1a.js +0 -1
- package/dist/assets/loader-circle-IIzBGiwm.js +0 -1
- package/dist/assets/mutation-error-CsyN8rYH.js +0 -1
- package/dist/assets/prechat-route-BaMWiiaf.js +0 -1
- package/dist/assets/privacy-screen-BaHYtKEt.js +0 -1
- package/dist/assets/proxy-DmIh4F51.js +0 -1
- package/dist/assets/reduced-motion-DYlLlcUm.js +0 -1
- package/dist/assets/research-onboarding-route-Cxai0fux.js +0 -36
- package/dist/assets/risk-badge-BA8R-HCI.js +0 -1
- package/dist/assets/settings-layout-CQ3Z9Raj.js +0 -1
- package/dist/assets/src-CK6bncSg.js +0 -293
- package/dist/assets/step-indicator-dots-CEVbsP8r.js +0 -1
- package/dist/assets/subagent-detail-panel-DVQAkMjF.js +0 -4
- package/dist/assets/system-events-page-Dro8iNrx.js +0 -1
- package/dist/assets/tool-detail-panel-DRD2DIMF.js +0 -2
- package/dist/assets/use-is-org-ready-BdtHeRV6.js +0 -1
- package/dist/assets/use-plugin-drift-Bj693x0f.js +0 -1
- package/dist/assets/use-reduced-motion-ChB7nOGe.js +0 -1
- package/dist/assets/workflow-detail-panel-CMmPPsuL.js +0 -1
- package/dist/assets/x-C8bCmIhD.js +0 -1
- package/dist/assets/x-KVxA2ZL0.js +0 -1
- /package/dist/assets/{api-errors-CveHbhgb.js → api-errors-B-g6gvNv.js} +0 -0
- /package/dist/assets/{avatar-bundled-components-BgAkdy0n.js → avatar-bundled-components-DoxUXsZB.js} +0 -0
- /package/dist/assets/{avatar-svg-compositor-CEmN7KGI.js → avatar-svg-compositor-Bzno7teV.js} +0 -0
- /package/dist/assets/{build.umd-B3KuSWeo.js → build.umd-C56vswwO.js} +0 -0
- /package/dist/assets/{client.gen-Cs6pCK0s.js → client.gen-BnoNy2w0.js} +0 -0
- /package/dist/assets/{composer-focus-Bp1AiP29.js → composer-focus-BZr63Cvs.js} +0 -0
- /package/dist/assets/{conversation-selection-CtKjA5Ni.js → conversation-selection-BV7USWf2.js} +0 -0
- /package/dist/assets/{create-selectors-BE0_e_Ed.js → create-selectors-BTyhO-eS.js} +0 -0
- /package/dist/assets/{createLucideIcon-Bjb-Kuq7.js → createLucideIcon-6rJ6BdB7.js} +0 -0
- /package/dist/assets/{createLucideIcon-BlMXrA59.js → createLucideIcon-D8roAprb.js} +0 -0
- /package/dist/assets/{definitions-lQvEBMJT.js → definitions-CtVlh_R5.js} +0 -0
- /package/dist/assets/{dist-BTp54SIT.js → dist-CzyDxYAs.js} +0 -0
- /package/dist/assets/{edit-chat-session-DJpqkkos.js → edit-chat-session-BYvbyTwd.js} +0 -0
- /package/dist/assets/{effective-timezone-DrYGH2Lb.js → effective-timezone-DAkNzd21.js} +0 -0
- /package/dist/assets/{event-bus-Dl7-I4aL.js → event-bus-CBil9JQT.js} +0 -0
- /package/dist/assets/{feature-flag-catalog-RK3_Ckyw.js → feature-flag-catalog-Br-v70vR.js} +0 -0
- /package/dist/assets/{format-CPOur310.js → format-HKnibeVj.js} +0 -0
- /package/dist/assets/{format-date-CLlHK5gl.js → format-date-DyMQp2_m.js} +0 -0
- /package/dist/assets/{format-file-size-BfZOpPdu.js → format-file-size-DOcXaUaE.js} +0 -0
- /package/dist/assets/{haptics-CXHZxyAg.js → haptics-CKwMH4eq.js} +0 -0
- /package/dist/assets/{impersonate-version-flag-n-4oNLiO.js → impersonate-version-flag-XVa1Tm2F.js} +0 -0
- /package/dist/assets/{infiniteQueryOptions-C6p49ZmI.js → infiniteQueryOptions-DTCCTa10.js} +0 -0
- /package/dist/assets/{is-electron-C_ZTVhv8.js → is-electron-URCUw74P.js} +0 -0
- /package/dist/assets/{jsx-runtime-CVSDxk6A.js → jsx-runtime-B-mvcaJS.js} +0 -0
- /package/dist/assets/{llm-dimension-CQdmYu05.js → llm-dimension-Dx3xIzPP.js} +0 -0
- /package/dist/assets/{misc-BN2o2MEB.js → misc-CBD9JJCY.js} +0 -0
- /package/dist/assets/{native-deep-link-BYNI6pkW.js → native-deep-link-DmJ7Ty6z.js} +0 -0
- /package/dist/assets/{pdf-pz4ipUHd.js → pdf-DNWhOzmB.js} +0 -0
- /package/dist/assets/{prechat-B28Vzu55.js → prechat-BuuzFtal.js} +0 -0
- /package/dist/assets/{prechat-names-CRduluk-.js → prechat-names-Bo5bdzfH.js} +0 -0
- /package/dist/assets/{public-asset-Fx_laYnf.js → public-asset-BTisO-cB.js} +0 -0
- /package/dist/assets/{queryOptions-BtNi-_9H.js → queryOptions-DGyQTr3e.js} +0 -0
- /package/dist/assets/{sdk.gen-1aYqVbMj.js → sdk.gen-CC1iYdd0.js} +0 -0
- /package/dist/assets/{semver-yC_Iq9co.js → semver-DpADL11z.js} +0 -0
- /package/dist/assets/{tool-call-status-DTV5jmaU.js → tool-call-status-DNS6Y_vi.js} +0 -0
- /package/dist/assets/{typed-storage-Dctd_K9F.js → typed-storage-Chj38wph.js} +0 -0
- /package/dist/assets/{usage-window-Wgtgd-cv.js → usage-window-dm_mRqGo.js} +0 -0
- /package/dist/assets/{use-is-mobile-Cy10kl9u.js → use-is-mobile-BF5x8sr8.js} +0 -0
- /package/dist/assets/{workflow-status-DmbjJPT4.js → workflow-status-B53qU9DS.js} +0 -0
- /package/dist/assets/{xterm-MKaw0cT7.js → xterm-CQ7wuPsS.js} +0 -0
- /package/dist/assets/{xterm-addon-fit-BFDQtfbG.js → xterm-addon-fit-CamgTlEH.js} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./jsx-runtime-CVSDxk6A.js";var r=e(t(),1);function i(e,t){if(typeof e==`function`)return e(t);e!=null&&(e.current=t)}function a(...e){return t=>{let n=!1,r=e.map(e=>{let r=i(e,t);return!n&&typeof r==`function`&&(n=!0),r});if(n)return()=>{for(let t=0;t<r.length;t++){let n=r[t];typeof n==`function`?n():i(e[t],null)}}}}function o(...e){return r.useCallback(a(...e),e)}var s=n(),c=Symbol.for(`react.lazy`),l=r.use;function u(e){return typeof e==`object`&&!!e&&`then`in e}function d(e){return typeof e==`object`&&!!e&&`$$typeof`in e&&e.$$typeof===c&&`_payload`in e&&u(e._payload)}function ee(e){let t=te(e),n=r.forwardRef((e,n)=>{let{children:i,...a}=e;d(i)&&typeof l==`function`&&(i=l(i._payload));let o=r.Children.toArray(i),c=o.find(h);if(c){let e=c.props.children,i=o.map(t=>t===c?r.Children.count(e)>1?r.Children.only(null):r.isValidElement(e)?e.props.children:null:t);return(0,s.jsx)(t,{...a,ref:n,children:r.isValidElement(e)?r.cloneElement(e,void 0,i):null})}return(0,s.jsx)(t,{...a,ref:n,children:i})});return n.displayName=`${e}.Slot`,n}var f=ee(`Slot`);function te(e){let t=r.forwardRef((e,t)=>{let{children:n,...i}=e;if(d(n)&&typeof l==`function`&&(n=l(n._payload)),r.isValidElement(n)){let e=_(n),o=g(i,n.props);return n.type!==r.Fragment&&(o.ref=t?a(t,e):e),r.cloneElement(n,o)}return r.Children.count(n)>1?r.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var p=Symbol(`radix.slottable`);function m(e){let t=({children:e})=>(0,s.jsx)(s.Fragment,{children:e});return t.displayName=`${e}.Slottable`,t.__radixId=p,t}var ne=m(`Slottable`);function h(e){return r.isValidElement(e)&&typeof e.type==`function`&&`__radixId`in e.type&&e.type.__radixId===p}function g(e,t){let n={...t};for(let r in t){let i=e[r],a=t[r];/^on[A-Z]/.test(r)?i&&a?n[r]=(...e)=>{let t=a(...e);return i(...e),t}:i&&(n[r]=i):r===`style`?n[r]={...i,...a}:r===`className`&&(n[r]=[i,a].filter(Boolean).join(` `))}return{...e,...n}}function _(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}function v(e){var t,n,r=``;if(typeof e==`string`||typeof e==`number`)r+=e;else if(typeof e==`object`)if(Array.isArray(e)){var i=e.length;for(t=0;t<i;t++)e[t]&&(n=v(e[t]))&&(r&&(r+=` `),r+=n)}else for(n in e)e[n]&&(r&&(r+=` `),r+=n);return r}function y(){for(var e,t,n=0,r=``,i=arguments.length;n<i;n++)(e=arguments[n])&&(t=v(e))&&(r&&(r+=` `),r+=t);return r}var b=(e,t)=>{let n=Array(e.length+t.length);for(let t=0;t<e.length;t++)n[t]=e[t];for(let r=0;r<t.length;r++)n[e.length+r]=t[r];return n},x=(e,t)=>({classGroupId:e,validator:t}),S=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),C=`-`,w=[],T=`arbitrary..`,re=e=>{let t=O(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:e=>{if(e.startsWith(`[`)&&e.endsWith(`]`))return D(e);let n=e.split(C);return E(n,+(n[0]===``&&n.length>1),t)},getConflictingClassGroupIds:(e,t)=>{if(t){let t=r[e],i=n[e];return t?i?b(i,t):t:i||w}return n[e]||w}}},E=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;let r=e[t],i=n.nextPart.get(r);if(i){let n=E(e,t+1,i);if(n)return n}let a=n.validators;if(a===null)return;let o=t===0?e.join(C):e.slice(t).join(C),s=a.length;for(let e=0;e<s;e++){let t=a[e];if(t.validator(o))return t.classGroupId}},D=e=>e.slice(1,-1).indexOf(`:`)===-1?void 0:(()=>{let t=e.slice(1,-1),n=t.indexOf(`:`),r=t.slice(0,n);return r?T+r:void 0})(),O=e=>{let{theme:t,classGroups:n}=e;return k(n,t)},k=(e,t)=>{let n=S();for(let r in e){let i=e[r];A(i,n,r,t)}return n},A=(e,t,n,r)=>{let i=e.length;for(let a=0;a<i;a++){let i=e[a];j(i,t,n,r)}},j=(e,t,n,r)=>{if(typeof e==`string`){M(e,t,n);return}if(typeof e==`function`){ie(e,t,n,r);return}ae(e,t,n,r)},M=(e,t,n)=>{let r=e===``?t:N(t,e);r.classGroupId=n},ie=(e,t,n,r)=>{if(P(e)){A(e(r),t,n,r);return}t.validators===null&&(t.validators=[]),t.validators.push(x(n,e))},ae=(e,t,n,r)=>{let i=Object.entries(e),a=i.length;for(let e=0;e<a;e++){let[a,o]=i[e];A(o,N(t,a),n,r)}},N=(e,t)=>{let n=e,r=t.split(C),i=r.length;for(let e=0;e<i;e++){let t=r[e],i=n.nextPart.get(t);i||(i=S(),n.nextPart.set(t,i)),n=i}return n},P=e=>`isThemeGetter`in e&&e.isThemeGetter===!0,F=e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let t=0,n=Object.create(null),r=Object.create(null),i=(i,a)=>{n[i]=a,t++,t>e&&(t=0,r=n,n=Object.create(null))};return{get(e){let t=n[e];if(t!==void 0)return t;if((t=r[e])!==void 0)return i(e,t),t},set(e,t){e in n?n[e]=t:i(e,t)}}},I=`!`,L=`:`,oe=[],R=(e,t,n,r,i)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:r,isExternal:i}),se=e=>{let{prefix:t,experimentalParseClassName:n}=e,r=e=>{let t=[],n=0,r=0,i=0,a,o=e.length;for(let s=0;s<o;s++){let o=e[s];if(n===0&&r===0){if(o===L){t.push(e.slice(i,s)),i=s+1;continue}if(o===`/`){a=s;continue}}o===`[`?n++:o===`]`?n--:o===`(`?r++:o===`)`&&r--}let s=t.length===0?e:e.slice(i),c=s,l=!1;s.endsWith(I)?(c=s.slice(0,-1),l=!0):s.startsWith(I)&&(c=s.slice(1),l=!0);let u=a&&a>i?a-i:void 0;return R(t,l,c,u)};if(t){let e=t+L,n=r;r=t=>t.startsWith(e)?n(t.slice(e.length)):R(oe,!1,t,void 0,!0)}if(n){let e=r;r=t=>n({className:t,parseClassName:e})}return r},z=e=>{let t=new Map;return e.orderSensitiveModifiers.forEach((e,n)=>{t.set(e,1e6+n)}),e=>{let n=[],r=[];for(let i=0;i<e.length;i++){let a=e[i],o=a[0]===`[`,s=t.has(a);o||s?(r.length>0&&(r.sort(),n.push(...r),r=[]),n.push(a)):r.push(a)}return r.length>0&&(r.sort(),n.push(...r)),n}},B=e=>({cache:F(e.cacheSize),parseClassName:se(e),sortModifiers:z(e),postfixLookupClassGroupIds:ce(e),...re(e)}),ce=e=>{let t=Object.create(null),n=e.postfixLookupClassGroups;if(n)for(let e=0;e<n.length;e++)t[n[e]]=!0;return t},V=/\s+/,le=(e,t)=>{let{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:i,sortModifiers:a,postfixLookupClassGroupIds:o}=t,s=[],c=e.trim().split(V),l=``;for(let e=c.length-1;e>=0;--e){let t=c[e],{isExternal:u,modifiers:d,hasImportantModifier:ee,baseClassName:f,maybePostfixModifierPosition:te}=n(t);if(u){l=t+(l.length>0?` `+l:l);continue}let p=!!te,m;if(p){m=r(f.substring(0,te));let e=m&&o[m]?r(f):void 0;e&&e!==m&&(m=e,p=!1)}else m=r(f);if(!m){if(!p){l=t+(l.length>0?` `+l:l);continue}if(m=r(f),!m){l=t+(l.length>0?` `+l:l);continue}p=!1}let ne=d.length===0?``:d.length===1?d[0]:a(d).join(`:`),h=ee?ne+I:ne,g=h+m;if(s.indexOf(g)>-1)continue;s.push(g);let _=i(m,p);for(let e=0;e<_.length;++e){let t=_[e];s.push(h+t)}l=t+(l.length>0?` `+l:l)}return l},ue=(...e)=>{let t=0,n,r,i=``;for(;t<e.length;)(n=e[t++])&&(r=de(n))&&(i&&(i+=` `),i+=r);return i},de=e=>{if(typeof e==`string`)return e;let t,n=``;for(let r=0;r<e.length;r++)e[r]&&(t=de(e[r]))&&(n&&(n+=` `),n+=t);return n},fe=(e,...t)=>{let n,r,i,a,o=o=>(n=B(t.reduce((e,t)=>t(e),e())),r=n.cache.get,i=n.cache.set,a=s,s(o)),s=e=>{let t=r(e);if(t)return t;let a=le(e,n);return i(e,a),a};return a=o,(...e)=>a(ue(...e))},pe=[],H=e=>{let t=t=>t[e]||pe;return t.isThemeGetter=!0,t},me=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,he=/^\((?:(\w[\w-]*):)?(.+)\)$/i,ge=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,_e=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,ve=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,ye=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,be=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,xe=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,U=e=>ge.test(e),W=e=>!!e&&!Number.isNaN(Number(e)),G=e=>!!e&&Number.isInteger(Number(e)),Se=e=>e.endsWith(`%`)&&W(e.slice(0,-1)),K=e=>_e.test(e),Ce=()=>!0,we=e=>ve.test(e)&&!ye.test(e),Te=()=>!1,Ee=e=>be.test(e),De=e=>xe.test(e),Oe=e=>!q(e)&&!Y(e),ke=e=>e.startsWith(`@container`)&&(e[10]===`/`&&e[11]!==void 0||e[11]===`s`&&e[16]!==void 0&&e.startsWith(`-size/`,10)||e[11]===`n`&&e[18]!==void 0&&e.startsWith(`-normal/`,10)),Ae=e=>Z(e,Ge,Te),q=e=>me.test(e),J=e=>Z(e,Ke,we),je=e=>Z(e,qe,W),Me=e=>Z(e,Ye,Ce),Ne=e=>Z(e,Je,Te),Pe=e=>Z(e,Ue,Te),Fe=e=>Z(e,We,De),Ie=e=>Z(e,Xe,Ee),Y=e=>he.test(e),X=e=>Q(e,Ke),Le=e=>Q(e,Je),Re=e=>Q(e,Ue),ze=e=>Q(e,Ge),Be=e=>Q(e,We),Ve=e=>Q(e,Xe,!0),He=e=>Q(e,Ye,!0),Z=(e,t,n)=>{let r=me.exec(e);return r?r[1]?t(r[1]):n(r[2]):!1},Q=(e,t,n=!1)=>{let r=he.exec(e);return r?r[1]?t(r[1]):n:!1},Ue=e=>e===`position`||e===`percentage`,We=e=>e===`image`||e===`url`,Ge=e=>e===`length`||e===`size`||e===`bg-size`,Ke=e=>e===`length`,qe=e=>e===`number`,Je=e=>e===`family-name`,Ye=e=>e===`number`||e===`weight`,Xe=e=>e===`shadow`,Ze=()=>{let e=H(`color`),t=H(`font`),n=H(`text`),r=H(`font-weight`),i=H(`tracking`),a=H(`leading`),o=H(`breakpoint`),s=H(`container`),c=H(`spacing`),l=H(`radius`),u=H(`shadow`),d=H(`inset-shadow`),ee=H(`text-shadow`),f=H(`drop-shadow`),te=H(`blur`),p=H(`perspective`),m=H(`aspect`),ne=H(`ease`),h=H(`animate`),g=()=>[`auto`,`avoid`,`all`,`avoid-page`,`page`,`left`,`right`,`column`],_=()=>[`center`,`top`,`bottom`,`left`,`right`,`top-left`,`left-top`,`top-right`,`right-top`,`bottom-right`,`right-bottom`,`bottom-left`,`left-bottom`],v=()=>[..._(),Y,q],y=()=>[`auto`,`hidden`,`clip`,`visible`,`scroll`],b=()=>[`auto`,`contain`,`none`],x=()=>[Y,q,c],S=()=>[U,`full`,`auto`,...x()],C=()=>[G,`none`,`subgrid`,Y,q],w=()=>[`auto`,{span:[`full`,G,Y,q]},G,Y,q],T=()=>[G,`auto`,Y,q],re=()=>[`auto`,`min`,`max`,`fr`,Y,q],E=()=>[`start`,`end`,`center`,`between`,`around`,`evenly`,`stretch`,`baseline`,`center-safe`,`end-safe`],D=()=>[`start`,`end`,`center`,`stretch`,`center-safe`,`end-safe`],O=()=>[`auto`,...x()],k=()=>[U,`auto`,`full`,`dvw`,`dvh`,`lvw`,`lvh`,`svw`,`svh`,`min`,`max`,`fit`,...x()],A=()=>[U,`screen`,`full`,`dvw`,`lvw`,`svw`,`min`,`max`,`fit`,...x()],j=()=>[U,`screen`,`full`,`lh`,`dvh`,`lvh`,`svh`,`min`,`max`,`fit`,...x()],M=()=>[e,Y,q],ie=()=>[..._(),Re,Pe,{position:[Y,q]}],ae=()=>[`no-repeat`,{repeat:[``,`x`,`y`,`space`,`round`]}],N=()=>[`auto`,`cover`,`contain`,ze,Ae,{size:[Y,q]}],P=()=>[Se,X,J],F=()=>[``,`none`,`full`,l,Y,q],I=()=>[``,W,X,J],L=()=>[`solid`,`dashed`,`dotted`,`double`],oe=()=>[`normal`,`multiply`,`screen`,`overlay`,`darken`,`lighten`,`color-dodge`,`color-burn`,`hard-light`,`soft-light`,`difference`,`exclusion`,`hue`,`saturation`,`color`,`luminosity`],R=()=>[W,Se,Re,Pe],se=()=>[``,`none`,te,Y,q],z=()=>[`none`,W,Y,q],B=()=>[`none`,W,Y,q],ce=()=>[W,Y,q],V=()=>[U,`full`,...x()];return{cacheSize:500,theme:{animate:[`spin`,`ping`,`pulse`,`bounce`],aspect:[`video`],blur:[K],breakpoint:[K],color:[Ce],container:[K],"drop-shadow":[K],ease:[`in`,`out`,`in-out`],font:[Oe],"font-weight":[`thin`,`extralight`,`light`,`normal`,`medium`,`semibold`,`bold`,`extrabold`,`black`],"inset-shadow":[K],leading:[`none`,`tight`,`snug`,`normal`,`relaxed`,`loose`],perspective:[`dramatic`,`near`,`normal`,`midrange`,`distant`,`none`],radius:[K],shadow:[K],spacing:[`px`,W],text:[K],"text-shadow":[K],tracking:[`tighter`,`tight`,`normal`,`wide`,`wider`,`widest`]},classGroups:{aspect:[{aspect:[`auto`,`square`,U,q,Y,m]}],container:[`container`],"container-type":[{"@container":[``,`normal`,`size`,Y,q]}],"container-named":[ke],columns:[{columns:[W,q,Y,s]}],"break-after":[{"break-after":g()}],"break-before":[{"break-before":g()}],"break-inside":[{"break-inside":[`auto`,`avoid`,`avoid-page`,`avoid-column`]}],"box-decoration":[{"box-decoration":[`slice`,`clone`]}],box:[{box:[`border`,`content`]}],display:[`block`,`inline-block`,`inline`,`flex`,`inline-flex`,`table`,`inline-table`,`table-caption`,`table-cell`,`table-column`,`table-column-group`,`table-footer-group`,`table-header-group`,`table-row-group`,`table-row`,`flow-root`,`grid`,`inline-grid`,`contents`,`list-item`,`hidden`],sr:[`sr-only`,`not-sr-only`],float:[{float:[`right`,`left`,`none`,`start`,`end`]}],clear:[{clear:[`left`,`right`,`both`,`none`,`start`,`end`]}],isolation:[`isolate`,`isolation-auto`],"object-fit":[{object:[`contain`,`cover`,`fill`,`none`,`scale-down`]}],"object-position":[{object:v()}],overflow:[{overflow:y()}],"overflow-x":[{"overflow-x":y()}],"overflow-y":[{"overflow-y":y()}],overscroll:[{overscroll:b()}],"overscroll-x":[{"overscroll-x":b()}],"overscroll-y":[{"overscroll-y":b()}],position:[`static`,`fixed`,`absolute`,`relative`,`sticky`],inset:[{inset:S()}],"inset-x":[{"inset-x":S()}],"inset-y":[{"inset-y":S()}],start:[{"inset-s":S(),start:S()}],end:[{"inset-e":S(),end:S()}],"inset-bs":[{"inset-bs":S()}],"inset-be":[{"inset-be":S()}],top:[{top:S()}],right:[{right:S()}],bottom:[{bottom:S()}],left:[{left:S()}],visibility:[`visible`,`invisible`,`collapse`],z:[{z:[G,`auto`,Y,q]}],basis:[{basis:[U,`full`,`auto`,s,...x()]}],"flex-direction":[{flex:[`row`,`row-reverse`,`col`,`col-reverse`]}],"flex-wrap":[{flex:[`nowrap`,`wrap`,`wrap-reverse`]}],flex:[{flex:[W,U,`auto`,`initial`,`none`,q]}],grow:[{grow:[``,W,Y,q]}],shrink:[{shrink:[``,W,Y,q]}],order:[{order:[G,`first`,`last`,`none`,Y,q]}],"grid-cols":[{"grid-cols":C()}],"col-start-end":[{col:w()}],"col-start":[{"col-start":T()}],"col-end":[{"col-end":T()}],"grid-rows":[{"grid-rows":C()}],"row-start-end":[{row:w()}],"row-start":[{"row-start":T()}],"row-end":[{"row-end":T()}],"grid-flow":[{"grid-flow":[`row`,`col`,`dense`,`row-dense`,`col-dense`]}],"auto-cols":[{"auto-cols":re()}],"auto-rows":[{"auto-rows":re()}],gap:[{gap:x()}],"gap-x":[{"gap-x":x()}],"gap-y":[{"gap-y":x()}],"justify-content":[{justify:[...E(),`normal`]}],"justify-items":[{"justify-items":[...D(),`normal`]}],"justify-self":[{"justify-self":[`auto`,...D()]}],"align-content":[{content:[`normal`,...E()]}],"align-items":[{items:[...D(),{baseline:[``,`last`]}]}],"align-self":[{self:[`auto`,...D(),{baseline:[``,`last`]}]}],"place-content":[{"place-content":E()}],"place-items":[{"place-items":[...D(),`baseline`]}],"place-self":[{"place-self":[`auto`,...D()]}],p:[{p:x()}],px:[{px:x()}],py:[{py:x()}],ps:[{ps:x()}],pe:[{pe:x()}],pbs:[{pbs:x()}],pbe:[{pbe:x()}],pt:[{pt:x()}],pr:[{pr:x()}],pb:[{pb:x()}],pl:[{pl:x()}],m:[{m:O()}],mx:[{mx:O()}],my:[{my:O()}],ms:[{ms:O()}],me:[{me:O()}],mbs:[{mbs:O()}],mbe:[{mbe:O()}],mt:[{mt:O()}],mr:[{mr:O()}],mb:[{mb:O()}],ml:[{ml:O()}],"space-x":[{"space-x":x()}],"space-x-reverse":[`space-x-reverse`],"space-y":[{"space-y":x()}],"space-y-reverse":[`space-y-reverse`],size:[{size:k()}],"inline-size":[{inline:[`auto`,...A()]}],"min-inline-size":[{"min-inline":[`auto`,...A()]}],"max-inline-size":[{"max-inline":[`none`,...A()]}],"block-size":[{block:[`auto`,...j()]}],"min-block-size":[{"min-block":[`auto`,...j()]}],"max-block-size":[{"max-block":[`none`,...j()]}],w:[{w:[s,`screen`,...k()]}],"min-w":[{"min-w":[s,`screen`,`none`,...k()]}],"max-w":[{"max-w":[s,`screen`,`none`,`prose`,{screen:[o]},...k()]}],h:[{h:[`screen`,`lh`,...k()]}],"min-h":[{"min-h":[`screen`,`lh`,`none`,...k()]}],"max-h":[{"max-h":[`screen`,`lh`,...k()]}],"font-size":[{text:[`base`,n,X,J]}],"font-smoothing":[`antialiased`,`subpixel-antialiased`],"font-style":[`italic`,`not-italic`],"font-weight":[{font:[r,He,Me]}],"font-stretch":[{"font-stretch":[`ultra-condensed`,`extra-condensed`,`condensed`,`semi-condensed`,`normal`,`semi-expanded`,`expanded`,`extra-expanded`,`ultra-expanded`,Se,q]}],"font-family":[{font:[Le,Ne,t]}],"font-features":[{"font-features":[q]}],"fvn-normal":[`normal-nums`],"fvn-ordinal":[`ordinal`],"fvn-slashed-zero":[`slashed-zero`],"fvn-figure":[`lining-nums`,`oldstyle-nums`],"fvn-spacing":[`proportional-nums`,`tabular-nums`],"fvn-fraction":[`diagonal-fractions`,`stacked-fractions`],tracking:[{tracking:[i,Y,q]}],"line-clamp":[{"line-clamp":[W,`none`,Y,je]}],leading:[{leading:[a,...x()]}],"list-image":[{"list-image":[`none`,Y,q]}],"list-style-position":[{list:[`inside`,`outside`]}],"list-style-type":[{list:[`disc`,`decimal`,`none`,Y,q]}],"text-alignment":[{text:[`left`,`center`,`right`,`justify`,`start`,`end`]}],"placeholder-color":[{placeholder:M()}],"text-color":[{text:M()}],"text-decoration":[`underline`,`overline`,`line-through`,`no-underline`],"text-decoration-style":[{decoration:[...L(),`wavy`]}],"text-decoration-thickness":[{decoration:[W,`from-font`,`auto`,Y,J]}],"text-decoration-color":[{decoration:M()}],"underline-offset":[{"underline-offset":[W,`auto`,Y,q]}],"text-transform":[`uppercase`,`lowercase`,`capitalize`,`normal-case`],"text-overflow":[`truncate`,`text-ellipsis`,`text-clip`],"text-wrap":[{text:[`wrap`,`nowrap`,`balance`,`pretty`]}],indent:[{indent:x()}],"tab-size":[{tab:[G,Y,q]}],"vertical-align":[{align:[`baseline`,`top`,`middle`,`bottom`,`text-top`,`text-bottom`,`sub`,`super`,Y,q]}],whitespace:[{whitespace:[`normal`,`nowrap`,`pre`,`pre-line`,`pre-wrap`,`break-spaces`]}],break:[{break:[`normal`,`words`,`all`,`keep`]}],wrap:[{wrap:[`break-word`,`anywhere`,`normal`]}],hyphens:[{hyphens:[`none`,`manual`,`auto`]}],content:[{content:[`none`,Y,q]}],"bg-attachment":[{bg:[`fixed`,`local`,`scroll`]}],"bg-clip":[{"bg-clip":[`border`,`padding`,`content`,`text`]}],"bg-origin":[{"bg-origin":[`border`,`padding`,`content`]}],"bg-position":[{bg:ie()}],"bg-repeat":[{bg:ae()}],"bg-size":[{bg:N()}],"bg-image":[{bg:[`none`,{linear:[{to:[`t`,`tr`,`r`,`br`,`b`,`bl`,`l`,`tl`]},G,Y,q],radial:[``,Y,q],conic:[G,Y,q]},Be,Fe]}],"bg-color":[{bg:M()}],"gradient-from-pos":[{from:P()}],"gradient-via-pos":[{via:P()}],"gradient-to-pos":[{to:P()}],"gradient-from":[{from:M()}],"gradient-via":[{via:M()}],"gradient-to":[{to:M()}],rounded:[{rounded:F()}],"rounded-s":[{"rounded-s":F()}],"rounded-e":[{"rounded-e":F()}],"rounded-t":[{"rounded-t":F()}],"rounded-r":[{"rounded-r":F()}],"rounded-b":[{"rounded-b":F()}],"rounded-l":[{"rounded-l":F()}],"rounded-ss":[{"rounded-ss":F()}],"rounded-se":[{"rounded-se":F()}],"rounded-ee":[{"rounded-ee":F()}],"rounded-es":[{"rounded-es":F()}],"rounded-tl":[{"rounded-tl":F()}],"rounded-tr":[{"rounded-tr":F()}],"rounded-br":[{"rounded-br":F()}],"rounded-bl":[{"rounded-bl":F()}],"border-w":[{border:I()}],"border-w-x":[{"border-x":I()}],"border-w-y":[{"border-y":I()}],"border-w-s":[{"border-s":I()}],"border-w-e":[{"border-e":I()}],"border-w-bs":[{"border-bs":I()}],"border-w-be":[{"border-be":I()}],"border-w-t":[{"border-t":I()}],"border-w-r":[{"border-r":I()}],"border-w-b":[{"border-b":I()}],"border-w-l":[{"border-l":I()}],"divide-x":[{"divide-x":I()}],"divide-x-reverse":[`divide-x-reverse`],"divide-y":[{"divide-y":I()}],"divide-y-reverse":[`divide-y-reverse`],"border-style":[{border:[...L(),`hidden`,`none`]}],"divide-style":[{divide:[...L(),`hidden`,`none`]}],"border-color":[{border:M()}],"border-color-x":[{"border-x":M()}],"border-color-y":[{"border-y":M()}],"border-color-s":[{"border-s":M()}],"border-color-e":[{"border-e":M()}],"border-color-bs":[{"border-bs":M()}],"border-color-be":[{"border-be":M()}],"border-color-t":[{"border-t":M()}],"border-color-r":[{"border-r":M()}],"border-color-b":[{"border-b":M()}],"border-color-l":[{"border-l":M()}],"divide-color":[{divide:M()}],"outline-style":[{outline:[...L(),`none`,`hidden`]}],"outline-offset":[{"outline-offset":[W,Y,q]}],"outline-w":[{outline:[``,W,X,J]}],"outline-color":[{outline:M()}],shadow:[{shadow:[``,`none`,u,Ve,Ie]}],"shadow-color":[{shadow:M()}],"inset-shadow":[{"inset-shadow":[`none`,d,Ve,Ie]}],"inset-shadow-color":[{"inset-shadow":M()}],"ring-w":[{ring:I()}],"ring-w-inset":[`ring-inset`],"ring-color":[{ring:M()}],"ring-offset-w":[{"ring-offset":[W,J]}],"ring-offset-color":[{"ring-offset":M()}],"inset-ring-w":[{"inset-ring":I()}],"inset-ring-color":[{"inset-ring":M()}],"text-shadow":[{"text-shadow":[`none`,ee,Ve,Ie]}],"text-shadow-color":[{"text-shadow":M()}],opacity:[{opacity:[W,Y,q]}],"mix-blend":[{"mix-blend":[...oe(),`plus-darker`,`plus-lighter`]}],"bg-blend":[{"bg-blend":oe()}],"mask-clip":[{"mask-clip":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]},`mask-no-clip`],"mask-composite":[{mask:[`add`,`subtract`,`intersect`,`exclude`]}],"mask-image-linear-pos":[{"mask-linear":[W]}],"mask-image-linear-from-pos":[{"mask-linear-from":R()}],"mask-image-linear-to-pos":[{"mask-linear-to":R()}],"mask-image-linear-from-color":[{"mask-linear-from":M()}],"mask-image-linear-to-color":[{"mask-linear-to":M()}],"mask-image-t-from-pos":[{"mask-t-from":R()}],"mask-image-t-to-pos":[{"mask-t-to":R()}],"mask-image-t-from-color":[{"mask-t-from":M()}],"mask-image-t-to-color":[{"mask-t-to":M()}],"mask-image-r-from-pos":[{"mask-r-from":R()}],"mask-image-r-to-pos":[{"mask-r-to":R()}],"mask-image-r-from-color":[{"mask-r-from":M()}],"mask-image-r-to-color":[{"mask-r-to":M()}],"mask-image-b-from-pos":[{"mask-b-from":R()}],"mask-image-b-to-pos":[{"mask-b-to":R()}],"mask-image-b-from-color":[{"mask-b-from":M()}],"mask-image-b-to-color":[{"mask-b-to":M()}],"mask-image-l-from-pos":[{"mask-l-from":R()}],"mask-image-l-to-pos":[{"mask-l-to":R()}],"mask-image-l-from-color":[{"mask-l-from":M()}],"mask-image-l-to-color":[{"mask-l-to":M()}],"mask-image-x-from-pos":[{"mask-x-from":R()}],"mask-image-x-to-pos":[{"mask-x-to":R()}],"mask-image-x-from-color":[{"mask-x-from":M()}],"mask-image-x-to-color":[{"mask-x-to":M()}],"mask-image-y-from-pos":[{"mask-y-from":R()}],"mask-image-y-to-pos":[{"mask-y-to":R()}],"mask-image-y-from-color":[{"mask-y-from":M()}],"mask-image-y-to-color":[{"mask-y-to":M()}],"mask-image-radial":[{"mask-radial":[Y,q]}],"mask-image-radial-from-pos":[{"mask-radial-from":R()}],"mask-image-radial-to-pos":[{"mask-radial-to":R()}],"mask-image-radial-from-color":[{"mask-radial-from":M()}],"mask-image-radial-to-color":[{"mask-radial-to":M()}],"mask-image-radial-shape":[{"mask-radial":[`circle`,`ellipse`]}],"mask-image-radial-size":[{"mask-radial":[{closest:[`side`,`corner`],farthest:[`side`,`corner`]}]}],"mask-image-radial-pos":[{"mask-radial-at":_()}],"mask-image-conic-pos":[{"mask-conic":[W]}],"mask-image-conic-from-pos":[{"mask-conic-from":R()}],"mask-image-conic-to-pos":[{"mask-conic-to":R()}],"mask-image-conic-from-color":[{"mask-conic-from":M()}],"mask-image-conic-to-color":[{"mask-conic-to":M()}],"mask-mode":[{mask:[`alpha`,`luminance`,`match`]}],"mask-origin":[{"mask-origin":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]}],"mask-position":[{mask:ie()}],"mask-repeat":[{mask:ae()}],"mask-size":[{mask:N()}],"mask-type":[{"mask-type":[`alpha`,`luminance`]}],"mask-image":[{mask:[`none`,Y,q]}],filter:[{filter:[``,`none`,Y,q]}],blur:[{blur:se()}],brightness:[{brightness:[W,Y,q]}],contrast:[{contrast:[W,Y,q]}],"drop-shadow":[{"drop-shadow":[``,`none`,f,Ve,Ie]}],"drop-shadow-color":[{"drop-shadow":M()}],grayscale:[{grayscale:[``,W,Y,q]}],"hue-rotate":[{"hue-rotate":[W,Y,q]}],invert:[{invert:[``,W,Y,q]}],saturate:[{saturate:[W,Y,q]}],sepia:[{sepia:[``,W,Y,q]}],"backdrop-filter":[{"backdrop-filter":[``,`none`,Y,q]}],"backdrop-blur":[{"backdrop-blur":se()}],"backdrop-brightness":[{"backdrop-brightness":[W,Y,q]}],"backdrop-contrast":[{"backdrop-contrast":[W,Y,q]}],"backdrop-grayscale":[{"backdrop-grayscale":[``,W,Y,q]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[W,Y,q]}],"backdrop-invert":[{"backdrop-invert":[``,W,Y,q]}],"backdrop-opacity":[{"backdrop-opacity":[W,Y,q]}],"backdrop-saturate":[{"backdrop-saturate":[W,Y,q]}],"backdrop-sepia":[{"backdrop-sepia":[``,W,Y,q]}],"border-collapse":[{border:[`collapse`,`separate`]}],"border-spacing":[{"border-spacing":x()}],"border-spacing-x":[{"border-spacing-x":x()}],"border-spacing-y":[{"border-spacing-y":x()}],"table-layout":[{table:[`auto`,`fixed`]}],caption:[{caption:[`top`,`bottom`]}],transition:[{transition:[``,`all`,`colors`,`opacity`,`shadow`,`transform`,`none`,Y,q]}],"transition-behavior":[{transition:[`normal`,`discrete`]}],duration:[{duration:[W,`initial`,Y,q]}],ease:[{ease:[`linear`,`initial`,ne,Y,q]}],delay:[{delay:[W,Y,q]}],animate:[{animate:[`none`,h,Y,q]}],backface:[{backface:[`hidden`,`visible`]}],perspective:[{perspective:[p,Y,q]}],"perspective-origin":[{"perspective-origin":v()}],rotate:[{rotate:z()}],"rotate-x":[{"rotate-x":z()}],"rotate-y":[{"rotate-y":z()}],"rotate-z":[{"rotate-z":z()}],scale:[{scale:B()}],"scale-x":[{"scale-x":B()}],"scale-y":[{"scale-y":B()}],"scale-z":[{"scale-z":B()}],"scale-3d":[`scale-3d`],skew:[{skew:ce()}],"skew-x":[{"skew-x":ce()}],"skew-y":[{"skew-y":ce()}],transform:[{transform:[Y,q,``,`none`,`gpu`,`cpu`]}],"transform-origin":[{origin:v()}],"transform-style":[{transform:[`3d`,`flat`]}],translate:[{translate:V()}],"translate-x":[{"translate-x":V()}],"translate-y":[{"translate-y":V()}],"translate-z":[{"translate-z":V()}],"translate-none":[`translate-none`],zoom:[{zoom:[G,Y,q]}],accent:[{accent:M()}],appearance:[{appearance:[`none`,`auto`]}],"caret-color":[{caret:M()}],"color-scheme":[{scheme:[`normal`,`dark`,`light`,`light-dark`,`only-dark`,`only-light`]}],cursor:[{cursor:[`auto`,`default`,`pointer`,`wait`,`text`,`move`,`help`,`not-allowed`,`none`,`context-menu`,`progress`,`cell`,`crosshair`,`vertical-text`,`alias`,`copy`,`no-drop`,`grab`,`grabbing`,`all-scroll`,`col-resize`,`row-resize`,`n-resize`,`e-resize`,`s-resize`,`w-resize`,`ne-resize`,`nw-resize`,`se-resize`,`sw-resize`,`ew-resize`,`ns-resize`,`nesw-resize`,`nwse-resize`,`zoom-in`,`zoom-out`,Y,q]}],"field-sizing":[{"field-sizing":[`fixed`,`content`]}],"pointer-events":[{"pointer-events":[`auto`,`none`]}],resize:[{resize:[`none`,``,`y`,`x`]}],"scroll-behavior":[{scroll:[`auto`,`smooth`]}],"scrollbar-thumb-color":[{"scrollbar-thumb":M()}],"scrollbar-track-color":[{"scrollbar-track":M()}],"scrollbar-gutter":[{"scrollbar-gutter":[`auto`,`stable`,`both`]}],"scrollbar-w":[{scrollbar:[`auto`,`thin`,`none`]}],"scroll-m":[{"scroll-m":x()}],"scroll-mx":[{"scroll-mx":x()}],"scroll-my":[{"scroll-my":x()}],"scroll-ms":[{"scroll-ms":x()}],"scroll-me":[{"scroll-me":x()}],"scroll-mbs":[{"scroll-mbs":x()}],"scroll-mbe":[{"scroll-mbe":x()}],"scroll-mt":[{"scroll-mt":x()}],"scroll-mr":[{"scroll-mr":x()}],"scroll-mb":[{"scroll-mb":x()}],"scroll-ml":[{"scroll-ml":x()}],"scroll-p":[{"scroll-p":x()}],"scroll-px":[{"scroll-px":x()}],"scroll-py":[{"scroll-py":x()}],"scroll-ps":[{"scroll-ps":x()}],"scroll-pe":[{"scroll-pe":x()}],"scroll-pbs":[{"scroll-pbs":x()}],"scroll-pbe":[{"scroll-pbe":x()}],"scroll-pt":[{"scroll-pt":x()}],"scroll-pr":[{"scroll-pr":x()}],"scroll-pb":[{"scroll-pb":x()}],"scroll-pl":[{"scroll-pl":x()}],"snap-align":[{snap:[`start`,`end`,`center`,`align-none`]}],"snap-stop":[{snap:[`normal`,`always`]}],"snap-type":[{snap:[`none`,`x`,`y`,`both`]}],"snap-strictness":[{snap:[`mandatory`,`proximity`]}],touch:[{touch:[`auto`,`none`,`manipulation`]}],"touch-x":[{"touch-pan":[`x`,`left`,`right`]}],"touch-y":[{"touch-pan":[`y`,`up`,`down`]}],"touch-pz":[`touch-pinch-zoom`],select:[{select:[`none`,`text`,`all`,`auto`]}],"will-change":[{"will-change":[`auto`,`scroll`,`contents`,`transform`,Y,q]}],fill:[{fill:[`none`,...M()]}],"stroke-w":[{stroke:[W,X,J,je]}],stroke:[{stroke:[`none`,...M()]}],"forced-color-adjust":[{"forced-color-adjust":[`auto`,`none`]}]},conflictingClassGroups:{"container-named":[`container-type`],overflow:[`overflow-x`,`overflow-y`],overscroll:[`overscroll-x`,`overscroll-y`],inset:[`inset-x`,`inset-y`,`inset-bs`,`inset-be`,`start`,`end`,`top`,`right`,`bottom`,`left`],"inset-x":[`right`,`left`],"inset-y":[`top`,`bottom`],flex:[`basis`,`grow`,`shrink`],gap:[`gap-x`,`gap-y`],p:[`px`,`py`,`ps`,`pe`,`pbs`,`pbe`,`pt`,`pr`,`pb`,`pl`],px:[`pr`,`pl`],py:[`pt`,`pb`],m:[`mx`,`my`,`ms`,`me`,`mbs`,`mbe`,`mt`,`mr`,`mb`,`ml`],mx:[`mr`,`ml`],my:[`mt`,`mb`],size:[`w`,`h`],"font-size":[`leading`],"fvn-normal":[`fvn-ordinal`,`fvn-slashed-zero`,`fvn-figure`,`fvn-spacing`,`fvn-fraction`],"fvn-ordinal":[`fvn-normal`],"fvn-slashed-zero":[`fvn-normal`],"fvn-figure":[`fvn-normal`],"fvn-spacing":[`fvn-normal`],"fvn-fraction":[`fvn-normal`],"line-clamp":[`display`,`overflow`],rounded:[`rounded-s`,`rounded-e`,`rounded-t`,`rounded-r`,`rounded-b`,`rounded-l`,`rounded-ss`,`rounded-se`,`rounded-ee`,`rounded-es`,`rounded-tl`,`rounded-tr`,`rounded-br`,`rounded-bl`],"rounded-s":[`rounded-ss`,`rounded-es`],"rounded-e":[`rounded-se`,`rounded-ee`],"rounded-t":[`rounded-tl`,`rounded-tr`],"rounded-r":[`rounded-tr`,`rounded-br`],"rounded-b":[`rounded-br`,`rounded-bl`],"rounded-l":[`rounded-tl`,`rounded-bl`],"border-spacing":[`border-spacing-x`,`border-spacing-y`],"border-w":[`border-w-x`,`border-w-y`,`border-w-s`,`border-w-e`,`border-w-bs`,`border-w-be`,`border-w-t`,`border-w-r`,`border-w-b`,`border-w-l`],"border-w-x":[`border-w-r`,`border-w-l`],"border-w-y":[`border-w-t`,`border-w-b`],"border-color":[`border-color-x`,`border-color-y`,`border-color-s`,`border-color-e`,`border-color-bs`,`border-color-be`,`border-color-t`,`border-color-r`,`border-color-b`,`border-color-l`],"border-color-x":[`border-color-r`,`border-color-l`],"border-color-y":[`border-color-t`,`border-color-b`],translate:[`translate-x`,`translate-y`,`translate-none`],"translate-none":[`translate`,`translate-x`,`translate-y`,`translate-z`],"scroll-m":[`scroll-mx`,`scroll-my`,`scroll-ms`,`scroll-me`,`scroll-mbs`,`scroll-mbe`,`scroll-mt`,`scroll-mr`,`scroll-mb`,`scroll-ml`],"scroll-mx":[`scroll-mr`,`scroll-ml`],"scroll-my":[`scroll-mt`,`scroll-mb`],"scroll-p":[`scroll-px`,`scroll-py`,`scroll-ps`,`scroll-pe`,`scroll-pbs`,`scroll-pbe`,`scroll-pt`,`scroll-pr`,`scroll-pb`,`scroll-pl`],"scroll-px":[`scroll-pr`,`scroll-pl`],"scroll-py":[`scroll-pt`,`scroll-pb`],touch:[`touch-x`,`touch-y`,`touch-pz`],"touch-x":[`touch`],"touch-y":[`touch`],"touch-pz":[`touch`]},conflictingClassGroupModifiers:{"font-size":[`leading`]},postfixLookupClassGroups:[`container-type`],orderSensitiveModifiers:[`*`,`**`,`after`,`backdrop`,`before`,`details-content`,`file`,`first-letter`,`first-line`,`marker`,`placeholder`,`selection`]}},Qe=(e,{cacheSize:t,prefix:n,experimentalParseClassName:r,extend:i={},override:a={}})=>($(e,`cacheSize`,t),$(e,`prefix`,n),$(e,`experimentalParseClassName`,r),$e(e.theme,a.theme),$e(e.classGroups,a.classGroups),$e(e.conflictingClassGroups,a.conflictingClassGroups),$e(e.conflictingClassGroupModifiers,a.conflictingClassGroupModifiers),$(e,`postfixLookupClassGroups`,a.postfixLookupClassGroups),$(e,`orderSensitiveModifiers`,a.orderSensitiveModifiers),et(e.theme,i.theme),et(e.classGroups,i.classGroups),et(e.conflictingClassGroups,i.conflictingClassGroups),et(e.conflictingClassGroupModifiers,i.conflictingClassGroupModifiers),tt(e,i,`postfixLookupClassGroups`),tt(e,i,`orderSensitiveModifiers`),e),$=(e,t,n)=>{n!==void 0&&(e[t]=n)},$e=(e,t)=>{if(t)for(let n in t)$(e,n,t[n])},et=(e,t)=>{if(t)for(let n in t)tt(e,t,n)},tt=(e,t,n)=>{let r=t[n];r!==void 0&&(e[n]=e[n]?e[n].concat(r):r)},nt=((e,...t)=>typeof e==`function`?fe(Ze,e,...t):fe(()=>Qe(Ze(),e),...t))({extend:{classGroups:{"font-size":[{text:[`title-large`,`title-medium`,`title-small`,`body-large-default`,`body-large-lighter`,`body-medium-default`,`body-medium-lighter`,`body-small-default`,`body-small-emphasised`,`label-medium-default`,`label-small-default`,`chat`]}]}}});function rt(...e){return nt(y(e))}export{a,ne as i,y as n,o,f as r,rt as t};
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./jsx-runtime-B-mvcaJS.js";var r=e(t(),1);function i(e,t){if(typeof e==`function`)return e(t);e!=null&&(e.current=t)}function a(...e){return t=>{let n=!1,r=e.map(e=>{let r=i(e,t);return!n&&typeof r==`function`&&(n=!0),r});if(n)return()=>{for(let t=0;t<r.length;t++){let n=r[t];typeof n==`function`?n():i(e[t],null)}}}}function o(...e){return r.useCallback(a(...e),e)}var s=n(),c=Symbol.for(`react.lazy`),l=r.use;function u(e){return typeof e==`object`&&!!e&&`then`in e}function d(e){return typeof e==`object`&&!!e&&`$$typeof`in e&&e.$$typeof===c&&`_payload`in e&&u(e._payload)}function ee(e){let t=te(e),n=r.forwardRef((e,n)=>{let{children:i,...a}=e;d(i)&&typeof l==`function`&&(i=l(i._payload));let o=r.Children.toArray(i),c=o.find(h);if(c){let e=c.props.children,i=o.map(t=>t===c?r.Children.count(e)>1?r.Children.only(null):r.isValidElement(e)?e.props.children:null:t);return(0,s.jsx)(t,{...a,ref:n,children:r.isValidElement(e)?r.cloneElement(e,void 0,i):null})}return(0,s.jsx)(t,{...a,ref:n,children:i})});return n.displayName=`${e}.Slot`,n}var f=ee(`Slot`);function te(e){let t=r.forwardRef((e,t)=>{let{children:n,...i}=e;if(d(n)&&typeof l==`function`&&(n=l(n._payload)),r.isValidElement(n)){let e=_(n),o=g(i,n.props);return n.type!==r.Fragment&&(o.ref=t?a(t,e):e),r.cloneElement(n,o)}return r.Children.count(n)>1?r.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var p=Symbol(`radix.slottable`);function m(e){let t=({children:e})=>(0,s.jsx)(s.Fragment,{children:e});return t.displayName=`${e}.Slottable`,t.__radixId=p,t}var ne=m(`Slottable`);function h(e){return r.isValidElement(e)&&typeof e.type==`function`&&`__radixId`in e.type&&e.type.__radixId===p}function g(e,t){let n={...t};for(let r in t){let i=e[r],a=t[r];/^on[A-Z]/.test(r)?i&&a?n[r]=(...e)=>{let t=a(...e);return i(...e),t}:i&&(n[r]=i):r===`style`?n[r]={...i,...a}:r===`className`&&(n[r]=[i,a].filter(Boolean).join(` `))}return{...e,...n}}function _(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}function v(e){var t,n,r=``;if(typeof e==`string`||typeof e==`number`)r+=e;else if(typeof e==`object`)if(Array.isArray(e)){var i=e.length;for(t=0;t<i;t++)e[t]&&(n=v(e[t]))&&(r&&(r+=` `),r+=n)}else for(n in e)e[n]&&(r&&(r+=` `),r+=n);return r}function y(){for(var e,t,n=0,r=``,i=arguments.length;n<i;n++)(e=arguments[n])&&(t=v(e))&&(r&&(r+=` `),r+=t);return r}var b=(e,t)=>{let n=Array(e.length+t.length);for(let t=0;t<e.length;t++)n[t]=e[t];for(let r=0;r<t.length;r++)n[e.length+r]=t[r];return n},x=(e,t)=>({classGroupId:e,validator:t}),S=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),C=`-`,w=[],T=`arbitrary..`,re=e=>{let t=O(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:e=>{if(e.startsWith(`[`)&&e.endsWith(`]`))return D(e);let n=e.split(C);return E(n,+(n[0]===``&&n.length>1),t)},getConflictingClassGroupIds:(e,t)=>{if(t){let t=r[e],i=n[e];return t?i?b(i,t):t:i||w}return n[e]||w}}},E=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;let r=e[t],i=n.nextPart.get(r);if(i){let n=E(e,t+1,i);if(n)return n}let a=n.validators;if(a===null)return;let o=t===0?e.join(C):e.slice(t).join(C),s=a.length;for(let e=0;e<s;e++){let t=a[e];if(t.validator(o))return t.classGroupId}},D=e=>e.slice(1,-1).indexOf(`:`)===-1?void 0:(()=>{let t=e.slice(1,-1),n=t.indexOf(`:`),r=t.slice(0,n);return r?T+r:void 0})(),O=e=>{let{theme:t,classGroups:n}=e;return k(n,t)},k=(e,t)=>{let n=S();for(let r in e){let i=e[r];A(i,n,r,t)}return n},A=(e,t,n,r)=>{let i=e.length;for(let a=0;a<i;a++){let i=e[a];j(i,t,n,r)}},j=(e,t,n,r)=>{if(typeof e==`string`){M(e,t,n);return}if(typeof e==`function`){ie(e,t,n,r);return}ae(e,t,n,r)},M=(e,t,n)=>{let r=e===``?t:N(t,e);r.classGroupId=n},ie=(e,t,n,r)=>{if(P(e)){A(e(r),t,n,r);return}t.validators===null&&(t.validators=[]),t.validators.push(x(n,e))},ae=(e,t,n,r)=>{let i=Object.entries(e),a=i.length;for(let e=0;e<a;e++){let[a,o]=i[e];A(o,N(t,a),n,r)}},N=(e,t)=>{let n=e,r=t.split(C),i=r.length;for(let e=0;e<i;e++){let t=r[e],i=n.nextPart.get(t);i||(i=S(),n.nextPart.set(t,i)),n=i}return n},P=e=>`isThemeGetter`in e&&e.isThemeGetter===!0,F=e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let t=0,n=Object.create(null),r=Object.create(null),i=(i,a)=>{n[i]=a,t++,t>e&&(t=0,r=n,n=Object.create(null))};return{get(e){let t=n[e];if(t!==void 0)return t;if((t=r[e])!==void 0)return i(e,t),t},set(e,t){e in n?n[e]=t:i(e,t)}}},I=`!`,L=`:`,oe=[],R=(e,t,n,r,i)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:r,isExternal:i}),se=e=>{let{prefix:t,experimentalParseClassName:n}=e,r=e=>{let t=[],n=0,r=0,i=0,a,o=e.length;for(let s=0;s<o;s++){let o=e[s];if(n===0&&r===0){if(o===L){t.push(e.slice(i,s)),i=s+1;continue}if(o===`/`){a=s;continue}}o===`[`?n++:o===`]`?n--:o===`(`?r++:o===`)`&&r--}let s=t.length===0?e:e.slice(i),c=s,l=!1;s.endsWith(I)?(c=s.slice(0,-1),l=!0):s.startsWith(I)&&(c=s.slice(1),l=!0);let u=a&&a>i?a-i:void 0;return R(t,l,c,u)};if(t){let e=t+L,n=r;r=t=>t.startsWith(e)?n(t.slice(e.length)):R(oe,!1,t,void 0,!0)}if(n){let e=r;r=t=>n({className:t,parseClassName:e})}return r},z=e=>{let t=new Map;return e.orderSensitiveModifiers.forEach((e,n)=>{t.set(e,1e6+n)}),e=>{let n=[],r=[];for(let i=0;i<e.length;i++){let a=e[i],o=a[0]===`[`,s=t.has(a);o||s?(r.length>0&&(r.sort(),n.push(...r),r=[]),n.push(a)):r.push(a)}return r.length>0&&(r.sort(),n.push(...r)),n}},B=e=>({cache:F(e.cacheSize),parseClassName:se(e),sortModifiers:z(e),postfixLookupClassGroupIds:ce(e),...re(e)}),ce=e=>{let t=Object.create(null),n=e.postfixLookupClassGroups;if(n)for(let e=0;e<n.length;e++)t[n[e]]=!0;return t},V=/\s+/,le=(e,t)=>{let{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:i,sortModifiers:a,postfixLookupClassGroupIds:o}=t,s=[],c=e.trim().split(V),l=``;for(let e=c.length-1;e>=0;--e){let t=c[e],{isExternal:u,modifiers:d,hasImportantModifier:ee,baseClassName:f,maybePostfixModifierPosition:te}=n(t);if(u){l=t+(l.length>0?` `+l:l);continue}let p=!!te,m;if(p){m=r(f.substring(0,te));let e=m&&o[m]?r(f):void 0;e&&e!==m&&(m=e,p=!1)}else m=r(f);if(!m){if(!p){l=t+(l.length>0?` `+l:l);continue}if(m=r(f),!m){l=t+(l.length>0?` `+l:l);continue}p=!1}let ne=d.length===0?``:d.length===1?d[0]:a(d).join(`:`),h=ee?ne+I:ne,g=h+m;if(s.indexOf(g)>-1)continue;s.push(g);let _=i(m,p);for(let e=0;e<_.length;++e){let t=_[e];s.push(h+t)}l=t+(l.length>0?` `+l:l)}return l},ue=(...e)=>{let t=0,n,r,i=``;for(;t<e.length;)(n=e[t++])&&(r=de(n))&&(i&&(i+=` `),i+=r);return i},de=e=>{if(typeof e==`string`)return e;let t,n=``;for(let r=0;r<e.length;r++)e[r]&&(t=de(e[r]))&&(n&&(n+=` `),n+=t);return n},fe=(e,...t)=>{let n,r,i,a,o=o=>(n=B(t.reduce((e,t)=>t(e),e())),r=n.cache.get,i=n.cache.set,a=s,s(o)),s=e=>{let t=r(e);if(t)return t;let a=le(e,n);return i(e,a),a};return a=o,(...e)=>a(ue(...e))},pe=[],H=e=>{let t=t=>t[e]||pe;return t.isThemeGetter=!0,t},me=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,he=/^\((?:(\w[\w-]*):)?(.+)\)$/i,ge=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,_e=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,ve=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,ye=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,be=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,xe=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,U=e=>ge.test(e),W=e=>!!e&&!Number.isNaN(Number(e)),G=e=>!!e&&Number.isInteger(Number(e)),Se=e=>e.endsWith(`%`)&&W(e.slice(0,-1)),K=e=>_e.test(e),Ce=()=>!0,we=e=>ve.test(e)&&!ye.test(e),Te=()=>!1,Ee=e=>be.test(e),De=e=>xe.test(e),Oe=e=>!q(e)&&!Y(e),ke=e=>e.startsWith(`@container`)&&(e[10]===`/`&&e[11]!==void 0||e[11]===`s`&&e[16]!==void 0&&e.startsWith(`-size/`,10)||e[11]===`n`&&e[18]!==void 0&&e.startsWith(`-normal/`,10)),Ae=e=>Z(e,Ge,Te),q=e=>me.test(e),J=e=>Z(e,Ke,we),je=e=>Z(e,qe,W),Me=e=>Z(e,Ye,Ce),Ne=e=>Z(e,Je,Te),Pe=e=>Z(e,Ue,Te),Fe=e=>Z(e,We,De),Ie=e=>Z(e,Xe,Ee),Y=e=>he.test(e),X=e=>Q(e,Ke),Le=e=>Q(e,Je),Re=e=>Q(e,Ue),ze=e=>Q(e,Ge),Be=e=>Q(e,We),Ve=e=>Q(e,Xe,!0),He=e=>Q(e,Ye,!0),Z=(e,t,n)=>{let r=me.exec(e);return r?r[1]?t(r[1]):n(r[2]):!1},Q=(e,t,n=!1)=>{let r=he.exec(e);return r?r[1]?t(r[1]):n:!1},Ue=e=>e===`position`||e===`percentage`,We=e=>e===`image`||e===`url`,Ge=e=>e===`length`||e===`size`||e===`bg-size`,Ke=e=>e===`length`,qe=e=>e===`number`,Je=e=>e===`family-name`,Ye=e=>e===`number`||e===`weight`,Xe=e=>e===`shadow`,Ze=()=>{let e=H(`color`),t=H(`font`),n=H(`text`),r=H(`font-weight`),i=H(`tracking`),a=H(`leading`),o=H(`breakpoint`),s=H(`container`),c=H(`spacing`),l=H(`radius`),u=H(`shadow`),d=H(`inset-shadow`),ee=H(`text-shadow`),f=H(`drop-shadow`),te=H(`blur`),p=H(`perspective`),m=H(`aspect`),ne=H(`ease`),h=H(`animate`),g=()=>[`auto`,`avoid`,`all`,`avoid-page`,`page`,`left`,`right`,`column`],_=()=>[`center`,`top`,`bottom`,`left`,`right`,`top-left`,`left-top`,`top-right`,`right-top`,`bottom-right`,`right-bottom`,`bottom-left`,`left-bottom`],v=()=>[..._(),Y,q],y=()=>[`auto`,`hidden`,`clip`,`visible`,`scroll`],b=()=>[`auto`,`contain`,`none`],x=()=>[Y,q,c],S=()=>[U,`full`,`auto`,...x()],C=()=>[G,`none`,`subgrid`,Y,q],w=()=>[`auto`,{span:[`full`,G,Y,q]},G,Y,q],T=()=>[G,`auto`,Y,q],re=()=>[`auto`,`min`,`max`,`fr`,Y,q],E=()=>[`start`,`end`,`center`,`between`,`around`,`evenly`,`stretch`,`baseline`,`center-safe`,`end-safe`],D=()=>[`start`,`end`,`center`,`stretch`,`center-safe`,`end-safe`],O=()=>[`auto`,...x()],k=()=>[U,`auto`,`full`,`dvw`,`dvh`,`lvw`,`lvh`,`svw`,`svh`,`min`,`max`,`fit`,...x()],A=()=>[U,`screen`,`full`,`dvw`,`lvw`,`svw`,`min`,`max`,`fit`,...x()],j=()=>[U,`screen`,`full`,`lh`,`dvh`,`lvh`,`svh`,`min`,`max`,`fit`,...x()],M=()=>[e,Y,q],ie=()=>[..._(),Re,Pe,{position:[Y,q]}],ae=()=>[`no-repeat`,{repeat:[``,`x`,`y`,`space`,`round`]}],N=()=>[`auto`,`cover`,`contain`,ze,Ae,{size:[Y,q]}],P=()=>[Se,X,J],F=()=>[``,`none`,`full`,l,Y,q],I=()=>[``,W,X,J],L=()=>[`solid`,`dashed`,`dotted`,`double`],oe=()=>[`normal`,`multiply`,`screen`,`overlay`,`darken`,`lighten`,`color-dodge`,`color-burn`,`hard-light`,`soft-light`,`difference`,`exclusion`,`hue`,`saturation`,`color`,`luminosity`],R=()=>[W,Se,Re,Pe],se=()=>[``,`none`,te,Y,q],z=()=>[`none`,W,Y,q],B=()=>[`none`,W,Y,q],ce=()=>[W,Y,q],V=()=>[U,`full`,...x()];return{cacheSize:500,theme:{animate:[`spin`,`ping`,`pulse`,`bounce`],aspect:[`video`],blur:[K],breakpoint:[K],color:[Ce],container:[K],"drop-shadow":[K],ease:[`in`,`out`,`in-out`],font:[Oe],"font-weight":[`thin`,`extralight`,`light`,`normal`,`medium`,`semibold`,`bold`,`extrabold`,`black`],"inset-shadow":[K],leading:[`none`,`tight`,`snug`,`normal`,`relaxed`,`loose`],perspective:[`dramatic`,`near`,`normal`,`midrange`,`distant`,`none`],radius:[K],shadow:[K],spacing:[`px`,W],text:[K],"text-shadow":[K],tracking:[`tighter`,`tight`,`normal`,`wide`,`wider`,`widest`]},classGroups:{aspect:[{aspect:[`auto`,`square`,U,q,Y,m]}],container:[`container`],"container-type":[{"@container":[``,`normal`,`size`,Y,q]}],"container-named":[ke],columns:[{columns:[W,q,Y,s]}],"break-after":[{"break-after":g()}],"break-before":[{"break-before":g()}],"break-inside":[{"break-inside":[`auto`,`avoid`,`avoid-page`,`avoid-column`]}],"box-decoration":[{"box-decoration":[`slice`,`clone`]}],box:[{box:[`border`,`content`]}],display:[`block`,`inline-block`,`inline`,`flex`,`inline-flex`,`table`,`inline-table`,`table-caption`,`table-cell`,`table-column`,`table-column-group`,`table-footer-group`,`table-header-group`,`table-row-group`,`table-row`,`flow-root`,`grid`,`inline-grid`,`contents`,`list-item`,`hidden`],sr:[`sr-only`,`not-sr-only`],float:[{float:[`right`,`left`,`none`,`start`,`end`]}],clear:[{clear:[`left`,`right`,`both`,`none`,`start`,`end`]}],isolation:[`isolate`,`isolation-auto`],"object-fit":[{object:[`contain`,`cover`,`fill`,`none`,`scale-down`]}],"object-position":[{object:v()}],overflow:[{overflow:y()}],"overflow-x":[{"overflow-x":y()}],"overflow-y":[{"overflow-y":y()}],overscroll:[{overscroll:b()}],"overscroll-x":[{"overscroll-x":b()}],"overscroll-y":[{"overscroll-y":b()}],position:[`static`,`fixed`,`absolute`,`relative`,`sticky`],inset:[{inset:S()}],"inset-x":[{"inset-x":S()}],"inset-y":[{"inset-y":S()}],start:[{"inset-s":S(),start:S()}],end:[{"inset-e":S(),end:S()}],"inset-bs":[{"inset-bs":S()}],"inset-be":[{"inset-be":S()}],top:[{top:S()}],right:[{right:S()}],bottom:[{bottom:S()}],left:[{left:S()}],visibility:[`visible`,`invisible`,`collapse`],z:[{z:[G,`auto`,Y,q]}],basis:[{basis:[U,`full`,`auto`,s,...x()]}],"flex-direction":[{flex:[`row`,`row-reverse`,`col`,`col-reverse`]}],"flex-wrap":[{flex:[`nowrap`,`wrap`,`wrap-reverse`]}],flex:[{flex:[W,U,`auto`,`initial`,`none`,q]}],grow:[{grow:[``,W,Y,q]}],shrink:[{shrink:[``,W,Y,q]}],order:[{order:[G,`first`,`last`,`none`,Y,q]}],"grid-cols":[{"grid-cols":C()}],"col-start-end":[{col:w()}],"col-start":[{"col-start":T()}],"col-end":[{"col-end":T()}],"grid-rows":[{"grid-rows":C()}],"row-start-end":[{row:w()}],"row-start":[{"row-start":T()}],"row-end":[{"row-end":T()}],"grid-flow":[{"grid-flow":[`row`,`col`,`dense`,`row-dense`,`col-dense`]}],"auto-cols":[{"auto-cols":re()}],"auto-rows":[{"auto-rows":re()}],gap:[{gap:x()}],"gap-x":[{"gap-x":x()}],"gap-y":[{"gap-y":x()}],"justify-content":[{justify:[...E(),`normal`]}],"justify-items":[{"justify-items":[...D(),`normal`]}],"justify-self":[{"justify-self":[`auto`,...D()]}],"align-content":[{content:[`normal`,...E()]}],"align-items":[{items:[...D(),{baseline:[``,`last`]}]}],"align-self":[{self:[`auto`,...D(),{baseline:[``,`last`]}]}],"place-content":[{"place-content":E()}],"place-items":[{"place-items":[...D(),`baseline`]}],"place-self":[{"place-self":[`auto`,...D()]}],p:[{p:x()}],px:[{px:x()}],py:[{py:x()}],ps:[{ps:x()}],pe:[{pe:x()}],pbs:[{pbs:x()}],pbe:[{pbe:x()}],pt:[{pt:x()}],pr:[{pr:x()}],pb:[{pb:x()}],pl:[{pl:x()}],m:[{m:O()}],mx:[{mx:O()}],my:[{my:O()}],ms:[{ms:O()}],me:[{me:O()}],mbs:[{mbs:O()}],mbe:[{mbe:O()}],mt:[{mt:O()}],mr:[{mr:O()}],mb:[{mb:O()}],ml:[{ml:O()}],"space-x":[{"space-x":x()}],"space-x-reverse":[`space-x-reverse`],"space-y":[{"space-y":x()}],"space-y-reverse":[`space-y-reverse`],size:[{size:k()}],"inline-size":[{inline:[`auto`,...A()]}],"min-inline-size":[{"min-inline":[`auto`,...A()]}],"max-inline-size":[{"max-inline":[`none`,...A()]}],"block-size":[{block:[`auto`,...j()]}],"min-block-size":[{"min-block":[`auto`,...j()]}],"max-block-size":[{"max-block":[`none`,...j()]}],w:[{w:[s,`screen`,...k()]}],"min-w":[{"min-w":[s,`screen`,`none`,...k()]}],"max-w":[{"max-w":[s,`screen`,`none`,`prose`,{screen:[o]},...k()]}],h:[{h:[`screen`,`lh`,...k()]}],"min-h":[{"min-h":[`screen`,`lh`,`none`,...k()]}],"max-h":[{"max-h":[`screen`,`lh`,...k()]}],"font-size":[{text:[`base`,n,X,J]}],"font-smoothing":[`antialiased`,`subpixel-antialiased`],"font-style":[`italic`,`not-italic`],"font-weight":[{font:[r,He,Me]}],"font-stretch":[{"font-stretch":[`ultra-condensed`,`extra-condensed`,`condensed`,`semi-condensed`,`normal`,`semi-expanded`,`expanded`,`extra-expanded`,`ultra-expanded`,Se,q]}],"font-family":[{font:[Le,Ne,t]}],"font-features":[{"font-features":[q]}],"fvn-normal":[`normal-nums`],"fvn-ordinal":[`ordinal`],"fvn-slashed-zero":[`slashed-zero`],"fvn-figure":[`lining-nums`,`oldstyle-nums`],"fvn-spacing":[`proportional-nums`,`tabular-nums`],"fvn-fraction":[`diagonal-fractions`,`stacked-fractions`],tracking:[{tracking:[i,Y,q]}],"line-clamp":[{"line-clamp":[W,`none`,Y,je]}],leading:[{leading:[a,...x()]}],"list-image":[{"list-image":[`none`,Y,q]}],"list-style-position":[{list:[`inside`,`outside`]}],"list-style-type":[{list:[`disc`,`decimal`,`none`,Y,q]}],"text-alignment":[{text:[`left`,`center`,`right`,`justify`,`start`,`end`]}],"placeholder-color":[{placeholder:M()}],"text-color":[{text:M()}],"text-decoration":[`underline`,`overline`,`line-through`,`no-underline`],"text-decoration-style":[{decoration:[...L(),`wavy`]}],"text-decoration-thickness":[{decoration:[W,`from-font`,`auto`,Y,J]}],"text-decoration-color":[{decoration:M()}],"underline-offset":[{"underline-offset":[W,`auto`,Y,q]}],"text-transform":[`uppercase`,`lowercase`,`capitalize`,`normal-case`],"text-overflow":[`truncate`,`text-ellipsis`,`text-clip`],"text-wrap":[{text:[`wrap`,`nowrap`,`balance`,`pretty`]}],indent:[{indent:x()}],"tab-size":[{tab:[G,Y,q]}],"vertical-align":[{align:[`baseline`,`top`,`middle`,`bottom`,`text-top`,`text-bottom`,`sub`,`super`,Y,q]}],whitespace:[{whitespace:[`normal`,`nowrap`,`pre`,`pre-line`,`pre-wrap`,`break-spaces`]}],break:[{break:[`normal`,`words`,`all`,`keep`]}],wrap:[{wrap:[`break-word`,`anywhere`,`normal`]}],hyphens:[{hyphens:[`none`,`manual`,`auto`]}],content:[{content:[`none`,Y,q]}],"bg-attachment":[{bg:[`fixed`,`local`,`scroll`]}],"bg-clip":[{"bg-clip":[`border`,`padding`,`content`,`text`]}],"bg-origin":[{"bg-origin":[`border`,`padding`,`content`]}],"bg-position":[{bg:ie()}],"bg-repeat":[{bg:ae()}],"bg-size":[{bg:N()}],"bg-image":[{bg:[`none`,{linear:[{to:[`t`,`tr`,`r`,`br`,`b`,`bl`,`l`,`tl`]},G,Y,q],radial:[``,Y,q],conic:[G,Y,q]},Be,Fe]}],"bg-color":[{bg:M()}],"gradient-from-pos":[{from:P()}],"gradient-via-pos":[{via:P()}],"gradient-to-pos":[{to:P()}],"gradient-from":[{from:M()}],"gradient-via":[{via:M()}],"gradient-to":[{to:M()}],rounded:[{rounded:F()}],"rounded-s":[{"rounded-s":F()}],"rounded-e":[{"rounded-e":F()}],"rounded-t":[{"rounded-t":F()}],"rounded-r":[{"rounded-r":F()}],"rounded-b":[{"rounded-b":F()}],"rounded-l":[{"rounded-l":F()}],"rounded-ss":[{"rounded-ss":F()}],"rounded-se":[{"rounded-se":F()}],"rounded-ee":[{"rounded-ee":F()}],"rounded-es":[{"rounded-es":F()}],"rounded-tl":[{"rounded-tl":F()}],"rounded-tr":[{"rounded-tr":F()}],"rounded-br":[{"rounded-br":F()}],"rounded-bl":[{"rounded-bl":F()}],"border-w":[{border:I()}],"border-w-x":[{"border-x":I()}],"border-w-y":[{"border-y":I()}],"border-w-s":[{"border-s":I()}],"border-w-e":[{"border-e":I()}],"border-w-bs":[{"border-bs":I()}],"border-w-be":[{"border-be":I()}],"border-w-t":[{"border-t":I()}],"border-w-r":[{"border-r":I()}],"border-w-b":[{"border-b":I()}],"border-w-l":[{"border-l":I()}],"divide-x":[{"divide-x":I()}],"divide-x-reverse":[`divide-x-reverse`],"divide-y":[{"divide-y":I()}],"divide-y-reverse":[`divide-y-reverse`],"border-style":[{border:[...L(),`hidden`,`none`]}],"divide-style":[{divide:[...L(),`hidden`,`none`]}],"border-color":[{border:M()}],"border-color-x":[{"border-x":M()}],"border-color-y":[{"border-y":M()}],"border-color-s":[{"border-s":M()}],"border-color-e":[{"border-e":M()}],"border-color-bs":[{"border-bs":M()}],"border-color-be":[{"border-be":M()}],"border-color-t":[{"border-t":M()}],"border-color-r":[{"border-r":M()}],"border-color-b":[{"border-b":M()}],"border-color-l":[{"border-l":M()}],"divide-color":[{divide:M()}],"outline-style":[{outline:[...L(),`none`,`hidden`]}],"outline-offset":[{"outline-offset":[W,Y,q]}],"outline-w":[{outline:[``,W,X,J]}],"outline-color":[{outline:M()}],shadow:[{shadow:[``,`none`,u,Ve,Ie]}],"shadow-color":[{shadow:M()}],"inset-shadow":[{"inset-shadow":[`none`,d,Ve,Ie]}],"inset-shadow-color":[{"inset-shadow":M()}],"ring-w":[{ring:I()}],"ring-w-inset":[`ring-inset`],"ring-color":[{ring:M()}],"ring-offset-w":[{"ring-offset":[W,J]}],"ring-offset-color":[{"ring-offset":M()}],"inset-ring-w":[{"inset-ring":I()}],"inset-ring-color":[{"inset-ring":M()}],"text-shadow":[{"text-shadow":[`none`,ee,Ve,Ie]}],"text-shadow-color":[{"text-shadow":M()}],opacity:[{opacity:[W,Y,q]}],"mix-blend":[{"mix-blend":[...oe(),`plus-darker`,`plus-lighter`]}],"bg-blend":[{"bg-blend":oe()}],"mask-clip":[{"mask-clip":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]},`mask-no-clip`],"mask-composite":[{mask:[`add`,`subtract`,`intersect`,`exclude`]}],"mask-image-linear-pos":[{"mask-linear":[W]}],"mask-image-linear-from-pos":[{"mask-linear-from":R()}],"mask-image-linear-to-pos":[{"mask-linear-to":R()}],"mask-image-linear-from-color":[{"mask-linear-from":M()}],"mask-image-linear-to-color":[{"mask-linear-to":M()}],"mask-image-t-from-pos":[{"mask-t-from":R()}],"mask-image-t-to-pos":[{"mask-t-to":R()}],"mask-image-t-from-color":[{"mask-t-from":M()}],"mask-image-t-to-color":[{"mask-t-to":M()}],"mask-image-r-from-pos":[{"mask-r-from":R()}],"mask-image-r-to-pos":[{"mask-r-to":R()}],"mask-image-r-from-color":[{"mask-r-from":M()}],"mask-image-r-to-color":[{"mask-r-to":M()}],"mask-image-b-from-pos":[{"mask-b-from":R()}],"mask-image-b-to-pos":[{"mask-b-to":R()}],"mask-image-b-from-color":[{"mask-b-from":M()}],"mask-image-b-to-color":[{"mask-b-to":M()}],"mask-image-l-from-pos":[{"mask-l-from":R()}],"mask-image-l-to-pos":[{"mask-l-to":R()}],"mask-image-l-from-color":[{"mask-l-from":M()}],"mask-image-l-to-color":[{"mask-l-to":M()}],"mask-image-x-from-pos":[{"mask-x-from":R()}],"mask-image-x-to-pos":[{"mask-x-to":R()}],"mask-image-x-from-color":[{"mask-x-from":M()}],"mask-image-x-to-color":[{"mask-x-to":M()}],"mask-image-y-from-pos":[{"mask-y-from":R()}],"mask-image-y-to-pos":[{"mask-y-to":R()}],"mask-image-y-from-color":[{"mask-y-from":M()}],"mask-image-y-to-color":[{"mask-y-to":M()}],"mask-image-radial":[{"mask-radial":[Y,q]}],"mask-image-radial-from-pos":[{"mask-radial-from":R()}],"mask-image-radial-to-pos":[{"mask-radial-to":R()}],"mask-image-radial-from-color":[{"mask-radial-from":M()}],"mask-image-radial-to-color":[{"mask-radial-to":M()}],"mask-image-radial-shape":[{"mask-radial":[`circle`,`ellipse`]}],"mask-image-radial-size":[{"mask-radial":[{closest:[`side`,`corner`],farthest:[`side`,`corner`]}]}],"mask-image-radial-pos":[{"mask-radial-at":_()}],"mask-image-conic-pos":[{"mask-conic":[W]}],"mask-image-conic-from-pos":[{"mask-conic-from":R()}],"mask-image-conic-to-pos":[{"mask-conic-to":R()}],"mask-image-conic-from-color":[{"mask-conic-from":M()}],"mask-image-conic-to-color":[{"mask-conic-to":M()}],"mask-mode":[{mask:[`alpha`,`luminance`,`match`]}],"mask-origin":[{"mask-origin":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]}],"mask-position":[{mask:ie()}],"mask-repeat":[{mask:ae()}],"mask-size":[{mask:N()}],"mask-type":[{"mask-type":[`alpha`,`luminance`]}],"mask-image":[{mask:[`none`,Y,q]}],filter:[{filter:[``,`none`,Y,q]}],blur:[{blur:se()}],brightness:[{brightness:[W,Y,q]}],contrast:[{contrast:[W,Y,q]}],"drop-shadow":[{"drop-shadow":[``,`none`,f,Ve,Ie]}],"drop-shadow-color":[{"drop-shadow":M()}],grayscale:[{grayscale:[``,W,Y,q]}],"hue-rotate":[{"hue-rotate":[W,Y,q]}],invert:[{invert:[``,W,Y,q]}],saturate:[{saturate:[W,Y,q]}],sepia:[{sepia:[``,W,Y,q]}],"backdrop-filter":[{"backdrop-filter":[``,`none`,Y,q]}],"backdrop-blur":[{"backdrop-blur":se()}],"backdrop-brightness":[{"backdrop-brightness":[W,Y,q]}],"backdrop-contrast":[{"backdrop-contrast":[W,Y,q]}],"backdrop-grayscale":[{"backdrop-grayscale":[``,W,Y,q]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[W,Y,q]}],"backdrop-invert":[{"backdrop-invert":[``,W,Y,q]}],"backdrop-opacity":[{"backdrop-opacity":[W,Y,q]}],"backdrop-saturate":[{"backdrop-saturate":[W,Y,q]}],"backdrop-sepia":[{"backdrop-sepia":[``,W,Y,q]}],"border-collapse":[{border:[`collapse`,`separate`]}],"border-spacing":[{"border-spacing":x()}],"border-spacing-x":[{"border-spacing-x":x()}],"border-spacing-y":[{"border-spacing-y":x()}],"table-layout":[{table:[`auto`,`fixed`]}],caption:[{caption:[`top`,`bottom`]}],transition:[{transition:[``,`all`,`colors`,`opacity`,`shadow`,`transform`,`none`,Y,q]}],"transition-behavior":[{transition:[`normal`,`discrete`]}],duration:[{duration:[W,`initial`,Y,q]}],ease:[{ease:[`linear`,`initial`,ne,Y,q]}],delay:[{delay:[W,Y,q]}],animate:[{animate:[`none`,h,Y,q]}],backface:[{backface:[`hidden`,`visible`]}],perspective:[{perspective:[p,Y,q]}],"perspective-origin":[{"perspective-origin":v()}],rotate:[{rotate:z()}],"rotate-x":[{"rotate-x":z()}],"rotate-y":[{"rotate-y":z()}],"rotate-z":[{"rotate-z":z()}],scale:[{scale:B()}],"scale-x":[{"scale-x":B()}],"scale-y":[{"scale-y":B()}],"scale-z":[{"scale-z":B()}],"scale-3d":[`scale-3d`],skew:[{skew:ce()}],"skew-x":[{"skew-x":ce()}],"skew-y":[{"skew-y":ce()}],transform:[{transform:[Y,q,``,`none`,`gpu`,`cpu`]}],"transform-origin":[{origin:v()}],"transform-style":[{transform:[`3d`,`flat`]}],translate:[{translate:V()}],"translate-x":[{"translate-x":V()}],"translate-y":[{"translate-y":V()}],"translate-z":[{"translate-z":V()}],"translate-none":[`translate-none`],zoom:[{zoom:[G,Y,q]}],accent:[{accent:M()}],appearance:[{appearance:[`none`,`auto`]}],"caret-color":[{caret:M()}],"color-scheme":[{scheme:[`normal`,`dark`,`light`,`light-dark`,`only-dark`,`only-light`]}],cursor:[{cursor:[`auto`,`default`,`pointer`,`wait`,`text`,`move`,`help`,`not-allowed`,`none`,`context-menu`,`progress`,`cell`,`crosshair`,`vertical-text`,`alias`,`copy`,`no-drop`,`grab`,`grabbing`,`all-scroll`,`col-resize`,`row-resize`,`n-resize`,`e-resize`,`s-resize`,`w-resize`,`ne-resize`,`nw-resize`,`se-resize`,`sw-resize`,`ew-resize`,`ns-resize`,`nesw-resize`,`nwse-resize`,`zoom-in`,`zoom-out`,Y,q]}],"field-sizing":[{"field-sizing":[`fixed`,`content`]}],"pointer-events":[{"pointer-events":[`auto`,`none`]}],resize:[{resize:[`none`,``,`y`,`x`]}],"scroll-behavior":[{scroll:[`auto`,`smooth`]}],"scrollbar-thumb-color":[{"scrollbar-thumb":M()}],"scrollbar-track-color":[{"scrollbar-track":M()}],"scrollbar-gutter":[{"scrollbar-gutter":[`auto`,`stable`,`both`]}],"scrollbar-w":[{scrollbar:[`auto`,`thin`,`none`]}],"scroll-m":[{"scroll-m":x()}],"scroll-mx":[{"scroll-mx":x()}],"scroll-my":[{"scroll-my":x()}],"scroll-ms":[{"scroll-ms":x()}],"scroll-me":[{"scroll-me":x()}],"scroll-mbs":[{"scroll-mbs":x()}],"scroll-mbe":[{"scroll-mbe":x()}],"scroll-mt":[{"scroll-mt":x()}],"scroll-mr":[{"scroll-mr":x()}],"scroll-mb":[{"scroll-mb":x()}],"scroll-ml":[{"scroll-ml":x()}],"scroll-p":[{"scroll-p":x()}],"scroll-px":[{"scroll-px":x()}],"scroll-py":[{"scroll-py":x()}],"scroll-ps":[{"scroll-ps":x()}],"scroll-pe":[{"scroll-pe":x()}],"scroll-pbs":[{"scroll-pbs":x()}],"scroll-pbe":[{"scroll-pbe":x()}],"scroll-pt":[{"scroll-pt":x()}],"scroll-pr":[{"scroll-pr":x()}],"scroll-pb":[{"scroll-pb":x()}],"scroll-pl":[{"scroll-pl":x()}],"snap-align":[{snap:[`start`,`end`,`center`,`align-none`]}],"snap-stop":[{snap:[`normal`,`always`]}],"snap-type":[{snap:[`none`,`x`,`y`,`both`]}],"snap-strictness":[{snap:[`mandatory`,`proximity`]}],touch:[{touch:[`auto`,`none`,`manipulation`]}],"touch-x":[{"touch-pan":[`x`,`left`,`right`]}],"touch-y":[{"touch-pan":[`y`,`up`,`down`]}],"touch-pz":[`touch-pinch-zoom`],select:[{select:[`none`,`text`,`all`,`auto`]}],"will-change":[{"will-change":[`auto`,`scroll`,`contents`,`transform`,Y,q]}],fill:[{fill:[`none`,...M()]}],"stroke-w":[{stroke:[W,X,J,je]}],stroke:[{stroke:[`none`,...M()]}],"forced-color-adjust":[{"forced-color-adjust":[`auto`,`none`]}]},conflictingClassGroups:{"container-named":[`container-type`],overflow:[`overflow-x`,`overflow-y`],overscroll:[`overscroll-x`,`overscroll-y`],inset:[`inset-x`,`inset-y`,`inset-bs`,`inset-be`,`start`,`end`,`top`,`right`,`bottom`,`left`],"inset-x":[`right`,`left`],"inset-y":[`top`,`bottom`],flex:[`basis`,`grow`,`shrink`],gap:[`gap-x`,`gap-y`],p:[`px`,`py`,`ps`,`pe`,`pbs`,`pbe`,`pt`,`pr`,`pb`,`pl`],px:[`pr`,`pl`],py:[`pt`,`pb`],m:[`mx`,`my`,`ms`,`me`,`mbs`,`mbe`,`mt`,`mr`,`mb`,`ml`],mx:[`mr`,`ml`],my:[`mt`,`mb`],size:[`w`,`h`],"font-size":[`leading`],"fvn-normal":[`fvn-ordinal`,`fvn-slashed-zero`,`fvn-figure`,`fvn-spacing`,`fvn-fraction`],"fvn-ordinal":[`fvn-normal`],"fvn-slashed-zero":[`fvn-normal`],"fvn-figure":[`fvn-normal`],"fvn-spacing":[`fvn-normal`],"fvn-fraction":[`fvn-normal`],"line-clamp":[`display`,`overflow`],rounded:[`rounded-s`,`rounded-e`,`rounded-t`,`rounded-r`,`rounded-b`,`rounded-l`,`rounded-ss`,`rounded-se`,`rounded-ee`,`rounded-es`,`rounded-tl`,`rounded-tr`,`rounded-br`,`rounded-bl`],"rounded-s":[`rounded-ss`,`rounded-es`],"rounded-e":[`rounded-se`,`rounded-ee`],"rounded-t":[`rounded-tl`,`rounded-tr`],"rounded-r":[`rounded-tr`,`rounded-br`],"rounded-b":[`rounded-br`,`rounded-bl`],"rounded-l":[`rounded-tl`,`rounded-bl`],"border-spacing":[`border-spacing-x`,`border-spacing-y`],"border-w":[`border-w-x`,`border-w-y`,`border-w-s`,`border-w-e`,`border-w-bs`,`border-w-be`,`border-w-t`,`border-w-r`,`border-w-b`,`border-w-l`],"border-w-x":[`border-w-r`,`border-w-l`],"border-w-y":[`border-w-t`,`border-w-b`],"border-color":[`border-color-x`,`border-color-y`,`border-color-s`,`border-color-e`,`border-color-bs`,`border-color-be`,`border-color-t`,`border-color-r`,`border-color-b`,`border-color-l`],"border-color-x":[`border-color-r`,`border-color-l`],"border-color-y":[`border-color-t`,`border-color-b`],translate:[`translate-x`,`translate-y`,`translate-none`],"translate-none":[`translate`,`translate-x`,`translate-y`,`translate-z`],"scroll-m":[`scroll-mx`,`scroll-my`,`scroll-ms`,`scroll-me`,`scroll-mbs`,`scroll-mbe`,`scroll-mt`,`scroll-mr`,`scroll-mb`,`scroll-ml`],"scroll-mx":[`scroll-mr`,`scroll-ml`],"scroll-my":[`scroll-mt`,`scroll-mb`],"scroll-p":[`scroll-px`,`scroll-py`,`scroll-ps`,`scroll-pe`,`scroll-pbs`,`scroll-pbe`,`scroll-pt`,`scroll-pr`,`scroll-pb`,`scroll-pl`],"scroll-px":[`scroll-pr`,`scroll-pl`],"scroll-py":[`scroll-pt`,`scroll-pb`],touch:[`touch-x`,`touch-y`,`touch-pz`],"touch-x":[`touch`],"touch-y":[`touch`],"touch-pz":[`touch`]},conflictingClassGroupModifiers:{"font-size":[`leading`]},postfixLookupClassGroups:[`container-type`],orderSensitiveModifiers:[`*`,`**`,`after`,`backdrop`,`before`,`details-content`,`file`,`first-letter`,`first-line`,`marker`,`placeholder`,`selection`]}},Qe=(e,{cacheSize:t,prefix:n,experimentalParseClassName:r,extend:i={},override:a={}})=>($(e,`cacheSize`,t),$(e,`prefix`,n),$(e,`experimentalParseClassName`,r),$e(e.theme,a.theme),$e(e.classGroups,a.classGroups),$e(e.conflictingClassGroups,a.conflictingClassGroups),$e(e.conflictingClassGroupModifiers,a.conflictingClassGroupModifiers),$(e,`postfixLookupClassGroups`,a.postfixLookupClassGroups),$(e,`orderSensitiveModifiers`,a.orderSensitiveModifiers),et(e.theme,i.theme),et(e.classGroups,i.classGroups),et(e.conflictingClassGroups,i.conflictingClassGroups),et(e.conflictingClassGroupModifiers,i.conflictingClassGroupModifiers),tt(e,i,`postfixLookupClassGroups`),tt(e,i,`orderSensitiveModifiers`),e),$=(e,t,n)=>{n!==void 0&&(e[t]=n)},$e=(e,t)=>{if(t)for(let n in t)$(e,n,t[n])},et=(e,t)=>{if(t)for(let n in t)tt(e,t,n)},tt=(e,t,n)=>{let r=t[n];r!==void 0&&(e[n]=e[n]?e[n].concat(r):r)},nt=((e,...t)=>typeof e==`function`?fe(Ze,e,...t):fe(()=>Qe(Ze(),e),...t))({extend:{classGroups:{"font-size":[{text:[`title-large`,`title-medium`,`title-small`,`body-large-default`,`body-large-lighter`,`body-medium-default`,`body-medium-lighter`,`body-small-default`,`body-small-emphasised`,`label-medium-default`,`label-small-default`,`chat`]}]}}});function rt(...e){return nt(y(e))}export{a,ne as i,y as n,o,f as r,rt as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as e}from"./createLucideIcon-D8roAprb.js";var t=e(`code`,[[`path`,{d:`m16 18 6-6-6-6`,key:`eg8j8`}],[`path`,{d:`m8 6-6 6 6 6`,key:`ppft3o`}]]);export{t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{O as n,t as r}from"./button-
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{O as n,t as r}from"./button-BvHa6F59.js";import{t as i}from"./jsx-runtime-B-mvcaJS.js";import{t as a}from"./typography-COqg6o2z.js";import{t as o}from"./panel-item-DN2CyWOT.js";import"./src-Dr68ou95.js";import{t as s}from"./loader-circle-cYXxWP5B.js";import{t as c}from"./x-Bn5tweDc.js";import{n as l}from"./use-is-mobile-BF5x8sr8.js";import{Jr as u}from"./index-3zpPFBeR.js";var d=e(t(),1),f=e(n(),1),p=i();function m({icon:e,title:t,subtitle:n,shortcutHint:r,isSelected:i,onClick:a,surface:s=`overlay`}){let c=e;return s===`window`?(0,p.jsxs)(`button`,{type:`button`,role:`option`,"aria-current":i?`page`:void 0,"aria-selected":i,onClick:a,className:[`flex h-10 w-full items-center gap-3 rounded-md px-3 text-left text-sm font-medium outline-none transition-colors`,i?`bg-[var(--surface-active)] text-[var(--content-default)]`:`text-[var(--content-secondary)] hover:bg-[var(--surface-overlay)] hover:text-[var(--content-default)]`].join(` `),children:[c?(0,p.jsx)(c,{size:16,"aria-hidden":!0,className:i?`shrink-0 text-[var(--content-default)]`:`shrink-0 text-[var(--content-tertiary)]`}):null,(0,p.jsxs)(`span`,{className:`flex min-w-0 flex-1 items-center gap-2`,children:[(0,p.jsx)(`span`,{className:`truncate`,children:t}),n?(0,p.jsx)(`span`,{className:`shrink-0 truncate text-xs text-[var(--content-tertiary)]`,children:n}):null,r?(0,p.jsx)(`span`,{className:`ml-auto shrink-0 text-xs text-[var(--content-tertiary)]`,children:r}):null]})]}):(0,p.jsx)(o,{icon:e,label:(0,p.jsxs)(`span`,{className:`flex min-w-0 flex-1 items-center gap-2`,children:[(0,p.jsx)(`span`,{className:`truncate`,children:t}),n?(0,p.jsx)(`span`,{className:`shrink-0 truncate text-[var(--content-tertiary)] text-body-small-default`,children:n}):null,r?(0,p.jsx)(`span`,{className:`ml-auto shrink-0 text-[var(--content-tertiary)] text-body-small-default`,children:r}):null]}),active:i,onSelect:a,className:`px-3 py-2`})}var h=({isOpen:e,onClose:t,query:n,onQueryChange:i,selectedIndex:o,sections:h,isSearching:g=!1,onItemSelect:_,onKeyDown:v,surface:y=`overlay`})=>{let b=l(),x=(0,d.useRef)(null),S=(0,d.useRef)(null),C=(0,d.useRef)(null);(0,d.useEffect)(()=>{if(e){let e=requestAnimationFrame(()=>{S.current?.focus()});return()=>cancelAnimationFrame(e)}},[e]),(0,d.useEffect)(()=>{if(!e||!C.current)return;let t=C.current.querySelector(`[aria-current='page']`);t&&t.scrollIntoView({block:`nearest`})},[e,o]);let w=(0,d.useCallback)(e=>{e.target===x.current&&t()},[t]);if(!e)return null;let T=0,E=y===`window`,D=b&&!E,O=(0,p.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 border-b border-[var(--border-base)] px-4 py-3`,children:[g?(0,p.jsx)(s,{size:16,"aria-hidden":!0,className:`shrink-0 animate-spin text-[var(--content-tertiary)]`}):(0,p.jsx)(u,{size:16,"aria-hidden":!0,className:`shrink-0 text-[var(--content-tertiary)]`}),(0,p.jsx)(`input`,{ref:S,type:`text`,value:n,onChange:e=>i(e.target.value),placeholder:`Search conversations, memories…`,className:E?`min-w-0 flex-1 bg-transparent text-sm font-medium text-[var(--content-default)] placeholder:text-[var(--content-tertiary)] outline-none`:`min-w-0 flex-1 bg-transparent text-body-medium-lighter text-[var(--content-default)] placeholder:text-[var(--content-tertiary)] outline-none`,"aria-label":`Search`}),n?D?(0,p.jsx)(`button`,{type:`button`,className:`shrink-0 text-body-medium-lighter text-[var(--content-tertiary)]`,onClick:()=>i(``),"aria-label":`Clear search`,children:`Clear`}):E?(0,p.jsx)(`button`,{type:`button`,className:`flex size-7 shrink-0 items-center justify-center rounded-md text-[var(--content-tertiary)] transition-colors hover:bg-[var(--surface-overlay)] hover:text-[var(--content-default)]`,"aria-label":`Clear search`,onClick:()=>i(``),children:(0,p.jsx)(c,{size:16,"aria-hidden":!0})}):(0,p.jsx)(r,{variant:`ghost`,size:`compact`,iconOnly:(0,p.jsx)(c,{}),"aria-label":`Clear search`,onClick:()=>i(``),tintColor:`var(--content-tertiary)`}):D?null:(0,p.jsx)(`kbd`,{className:E?`shrink-0 rounded-md border border-[var(--border-base)] bg-[var(--surface-active)] px-1.5 py-0.5 text-xs font-medium text-[var(--content-secondary)]`:`shrink-0 rounded-md border border-[var(--border-base)] bg-[var(--surface-active)] px-1.5 py-0.5 text-label-small-default text-[var(--content-tertiary)]`,children:`⌘K`}),D?(0,p.jsx)(r,{variant:`ghost`,size:`compact`,iconOnly:(0,p.jsx)(c,{}),expandOnMobile:!1,"aria-label":`Close search`,onClick:t,tintColor:`var(--content-tertiary)`}):null]}),k=(0,p.jsx)(`div`,{ref:C,className:D?`flex-1 overflow-y-auto overscroll-contain p-2`:`max-h-[360px] overflow-y-auto overscroll-contain p-2`,role:`listbox`,children:h.length===0?(0,p.jsx)(`div`,{className:`px-3 py-6 text-center`,children:(0,p.jsx)(a,{variant:`body-medium-lighter`,className:`text-[var(--content-tertiary)]`,children:g?`Searching…`:`No results`})}):h.map(e=>(0,p.jsxs)(`div`,{role:`group`,"aria-label":e.label,children:[(0,p.jsx)(a,{variant:`label-small-default`,as:`div`,className:E?`px-3 pb-1 pt-2 text-xs font-semibold text-[var(--content-tertiary)]`:`px-3 pb-1 pt-2 text-[var(--content-tertiary)]`,children:e.label}),e.items.map(e=>{let t=T++;return(0,p.jsx)(m,{icon:e.icon,title:e.title,subtitle:e.subtitle,shortcutHint:D?void 0:e.shortcutHint,isSelected:t===o,onClick:()=>_?.(e,t),surface:y},e.id)})]},e.id))});if(D)return(0,p.jsxs)(`div`,{className:`absolute inset-0 z-30 flex flex-col bg-[var(--surface-lift)]`,role:`dialog`,"aria-modal":`true`,"aria-label":`Search`,onKeyDown:v,style:{paddingTop:`var(--safe-area-inset-top, env(safe-area-inset-top, 0px))`,paddingBottom:`var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px))`,paddingLeft:`var(--safe-area-inset-left, env(safe-area-inset-left, 0px))`,paddingRight:`var(--safe-area-inset-right, env(safe-area-inset-right, 0px))`},children:[O,k]});let A=(0,p.jsx)(`div`,{ref:x,role:`dialog`,"aria-modal":`true`,"aria-label":`Command palette`,className:y===`window`?`flex h-full w-full items-start justify-center bg-transparent p-3`:`fixed inset-0 z-50 flex items-start justify-center bg-black/40 pt-[15vh]`,onClick:w,onKeyDown:v,children:(0,p.jsxs)(`div`,{className:`flex w-full max-w-[560px] flex-col overflow-hidden rounded-xl border border-[var(--border-base)] bg-[var(--surface-base)] shadow-xl`,children:[O,k]})});return y===`window`?A:(0,f.createPortal)(A,document.body)};export{h as CommandPalette};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./jsx-runtime-
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./jsx-runtime-B-mvcaJS.js";import{at as r}from"./local-mode-Cez1weue.js";import{n as i}from"./resolved-assistants-store-BrS8JBzC.js";import{V as a,X as o,i as s,n as c,o as l}from"./auth-store-BzL2lSd1.js";import{t as u}from"./client-feature-flag-store-kWvb3vtZ.js";import{Dn as d,Gn as f,Gt as p,Jt as m,Pt as h,Wt as g,zn as _}from"./index-3zpPFBeR.js";import{CommandPalette as v}from"./command-palette-D1nNMvVX.js";var y=e(t(),1),b=n(),x=()=>void 0,S=e=>void 0,C=e=>{switch(e.id){case`action-new-conversation`:return{kind:`newConversation`};case`action-current-conversation`:return{kind:`currentConversation`};case`action-settings`:return{kind:`openSettings`};case`action-library`:return{kind:`openLibrary`};case`action-intelligence`:return{kind:`openIdentity`};case`action-back`:return{kind:`navigateBack`};case`action-forward`:return{kind:`navigateForward`};case`action-zoom-in`:return{kind:`zoomIn`};case`action-zoom-out`:return{kind:`zoomOut`};case`action-actual-size`:return{kind:`actualSize`};default:return e.id.startsWith(`conv-`)?{kind:`openConversation`,conversationId:e.id.slice(5)}:e.id.startsWith(`search-conv-`)?{kind:`openConversation`,conversationId:e.id.slice(12)}:e.id.startsWith(`search-schedule-`)||e.id.startsWith(`search-contact-`)?{kind:`openIdentity`}:null}};function w(){let e=c.use.sessionStatus(),t=l(),n=s();f(),d(!t),_({sessionStatus:e,hasPlatformSession:n});let w=i.use.assistants(),T=i.use.activeAssistantId(),E=i.use.selectedAssistantId(),D=a.use.currentOrganizationId(),O=u.use.multiPlatformAssistant(),k=(0,y.useMemo)(()=>{let e=O&&!r()&&D?o(D):T;if(!e)return null;let t=w.find(t=>t.id===e);return t?{id:t.id,name:t.name}:null},[O,T,w,D,E]),A=k?.id??null,{conversations:j}=m(A,!0),M=(0,y.useCallback)(e=>{let t=C(e);t&&p(t)},[]),{commandPalette:N,mergedSections:P,handleItemSelect:F}=h({assistantId:A,assistantName:k?.name,conversations:j,activeConversationId:void 0,startNewConversation:x,switchConversation:x,navigate:S,navigateToSettings:x,isOpen:!0,onClose:()=>{g()},onItemSelect:M});return(0,b.jsx)(`div`,{className:`h-screen w-screen bg-transparent`,children:(0,b.jsx)(v,{isOpen:!0,surface:`window`,onClose:N.close,query:N.query,onQueryChange:N.setQuery,selectedIndex:N.selectedIndex,sections:P,isSearching:N.isSearching,onItemSelect:F,onKeyDown:N.handleKeyDown})})}export{w as CommandPaletteWindowPage};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"./button-
|
|
1
|
+
import{t as e}from"./button-BvHa6F59.js";import{t}from"./jsx-runtime-B-mvcaJS.js";import{t as n}from"./card-D9_3ngHI.js";import{t as r}from"./tag-64Evw5MO.js";import{t as i}from"./createLucideIcon-D8roAprb.js";import{t as a}from"./bug-BiiqXpDy.js";import{t as o}from"./external-link-h3UAe8eX.js";import{t as s}from"./globe-D7wvOZaZ.js";import{t as c}from"./sparkles-C8eL4LNF.js";import{Nr as l,a as u,i as d,n as f,na as p,ni as m,o as h,ot as g,wi as _,zr as v}from"./index-3zpPFBeR.js";var y=i(`git-pull-request`,[[`circle`,{cx:`18`,cy:`18`,r:`3`,key:`1xkwt0`}],[`circle`,{cx:`6`,cy:`6`,r:`3`,key:`1lh9wr`}],[`path`,{d:`M13 6h3a2 2 0 0 1 2 2v7`,key:`1yeb86`}],[`line`,{x1:`6`,x2:`6`,y1:`9`,y2:`21`,key:`rroup`}]]),b=t();function x({size:e=24,className:t,style:n}){return(0,b.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,width:e,height:e,fill:`currentColor`,className:t,style:n,"aria-hidden":!0,children:(0,b.jsx)(`path`,{d:`M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12`})})}function S({size:e=24,className:t,style:n}){return(0,b.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,width:e,height:e,fill:`currentColor`,className:t,style:n,"aria-hidden":!0,children:(0,b.jsx)(`path`,{d:`M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z`})})}function C({size:e=24,className:t,style:n}){return(0,b.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,width:e,height:e,fill:`currentColor`,className:t,style:n,"aria-hidden":!0,children:(0,b.jsx)(`path`,{d:`M23.498 6.186a3.016 3.016 0 0 0-2.122-2.136C19.505 3.545 12 3.545 12 3.545s-7.505 0-9.377.505A3.017 3.017 0 0 0 .502 6.186C0 8.07 0 12 0 12s0 3.93.502 5.814a3.016 3.016 0 0 0 2.122 2.136c1.871.505 9.376.505 9.376.505s7.505 0 9.377-.505a3.015 3.015 0 0 0 2.122-2.136C24 15.93 24 12 24 12s0-3.93-.502-5.814ZM9.545 15.568V8.432L15.818 12l-6.273 3.568Z`})})}function w(){return(0,b.jsx)(n,{padding:`lg`,className:`bg-[var(--surface-lift)]`,children:(0,b.jsxs)(`div`,{className:`relative`,children:[(0,b.jsx)(`div`,{className:`pointer-events-none absolute -right-16 -top-16 h-64 w-64 rounded-full opacity-30 blur-3xl`,style:{background:`radial-gradient(circle, var(--system-mid-weak) 0%, transparent 70%)`},"aria-hidden":!0}),(0,b.jsxs)(`div`,{className:`relative flex flex-col items-start gap-3`,children:[(0,b.jsxs)(r,{tone:`neutral`,children:[(0,b.jsx)(m,{className:`h-3.5 w-3.5`}),`Community`]}),(0,b.jsx)(`h1`,{className:`text-[28px] font-semibold leading-tight tracking-tight text-[var(--content-emphasised)]`,children:`Build with us, in the open.`}),(0,b.jsx)(`p`,{className:`max-w-xl text-body-medium-default text-[color:var(--content-tertiary)]`,children:`Vellum is built in the open with a growing community of developers, designers, and tinkerers. Here's how to get involved.`})]})]})})}function T({icon:e,text:t}){return(0,b.jsxs)(`li`,{className:`flex items-center gap-3`,children:[(0,b.jsx)(`span`,{className:`flex size-7 shrink-0 items-center justify-center rounded-md bg-[var(--surface-base)]`,children:(0,b.jsx)(e,{size:14,className:`text-[var(--content-secondary)]`,"aria-hidden":!0})}),(0,b.jsx)(`span`,{className:`text-body-medium-lighter text-[color:var(--content-secondary)]`,children:t})]})}function E({accentColor:t,iconColor:r=`var(--aux-white)`,label:i,icon:a,title:o,subtitle:s,benefits:c,primaryAction:l,secondaryAction:u}){return(0,b.jsx)(n,{padding:`lg`,className:`flex-1`,children:(0,b.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,b.jsxs)(`div`,{className:`flex items-start justify-between`,children:[(0,b.jsx)(`span`,{className:`flex size-10 items-center justify-center rounded-lg`,style:{backgroundColor:t,color:r},children:a}),(0,b.jsx)(`span`,{className:`text-label-medium-default uppercase tracking-wider text-[color:var(--content-tertiary)]`,children:i})]}),(0,b.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,b.jsx)(`h2`,{className:`text-title-medium text-[var(--content-emphasised)]`,children:o}),(0,b.jsx)(`p`,{className:`text-body-medium-lighter text-[color:var(--content-tertiary)]`,children:s})]}),(0,b.jsx)(`ul`,{className:`flex flex-col gap-3`,children:c.map(({icon:e,text:t})=>(0,b.jsx)(T,{icon:e,text:t},t))}),(0,b.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,b.jsxs)(e,{onClick:l.onClick,children:[l.icon,l.label]}),u&&(0,b.jsxs)(e,{variant:`ghost`,onClick:()=>window.open(u.href,`_blank`,`noopener,noreferrer`),children:[u.label,(0,b.jsx)(p,{className:`h-3.5 w-3.5`})]})]})]})})}function D({icon:e,iconBg:t,iconColor:r=`white`,title:i,description:a,href:s}){return(0,b.jsx)(`a`,{href:s,target:`_blank`,rel:`noopener noreferrer`,className:`flex flex-1 cursor-pointer`,children:(0,b.jsx)(n,{className:`flex-1 transition-shadow hover:shadow-md`,padding:`lg`,children:(0,b.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,b.jsxs)(`div`,{className:`flex items-start justify-between`,children:[(0,b.jsx)(`span`,{className:`flex size-10 items-center justify-center rounded-lg`,style:{backgroundColor:t,color:r},children:e}),(0,b.jsx)(o,{size:14,className:`text-[var(--content-tertiary)]`,"aria-hidden":!0})]}),(0,b.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,b.jsx)(`span`,{className:`text-title-medium text-[var(--content-emphasised)]`,children:i}),(0,b.jsx)(`p`,{className:`text-body-medium-lighter text-[color:var(--content-tertiary)]`,children:a})]})]})})})}function O(){let{handleStar:e}=h();return(0,b.jsxs)(`div`,{className:`space-y-6`,children:[(0,b.jsx)(w,{}),(0,b.jsxs)(`div`,{className:`grid grid-cols-1 gap-4 md:grid-cols-2`,children:[(0,b.jsx)(E,{accentColor:`var(--content-emphasised)`,iconColor:`var(--surface-base)`,label:`Open Source`,icon:(0,b.jsx)(x,{size:20}),title:`Vellum is open source`,subtitle:`Read the source, star the repo, and contribute fixes and features on GitHub.`,benefits:[{icon:v,text:`Star the repo to follow updates`},{icon:a,text:`Open issues and report bugs`},{icon:y,text:`Contribute fixes and new features`}],primaryAction:{label:`Star on GitHub`,icon:(0,b.jsx)(v,{size:16}),onClick:e},secondaryAction:{label:`View source`,href:u}}),(0,b.jsx)(E,{accentColor:`#5865F2`,label:`Discord`,icon:(0,b.jsx)(g,{size:20}),title:`Join our community`,subtitle:`Talk to the team, share feedback, request features, and get answers faster.`,benefits:[{icon:_,text:`Talk directly with the team`},{icon:c,text:`Share feedback and request features`},{icon:l,text:`Get answers faster from the community`}],primaryAction:{label:`Join Discord`,icon:(0,b.jsx)(g,{size:16,style:{color:`currentColor`}}),onClick:d}})]}),(0,b.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,b.jsx)(`h2`,{className:`text-label-medium-default uppercase tracking-wider text-[color:var(--content-tertiary)]`,children:`More from Vellum`}),(0,b.jsxs)(`div`,{className:`grid grid-cols-1 gap-4 md:grid-cols-3`,children:[(0,b.jsx)(D,{icon:(0,b.jsx)(s,{size:20}),iconBg:`#22c55e`,title:`Community Hub`,description:`Showcases, guides, and projects shared by the community.`,href:f}),(0,b.jsx)(D,{icon:(0,b.jsx)(S,{size:20}),iconBg:`var(--content-default)`,iconColor:`var(--surface-base)`,title:`Follow on X`,description:`Product updates, releases, and behind-the-scenes.`,href:`https://x.com/vellum_ai`}),(0,b.jsx)(D,{icon:(0,b.jsx)(C,{size:20}),iconBg:`#ef4444`,title:`YouTube channel`,description:`Walkthroughs, tutorials, and product deep-dives.`,href:`https://www.youtube.com/@Vellum_AI`})]})]})]})}export{O as CommunityPage};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"./button-
|
|
1
|
+
import{t as e}from"./button-BvHa6F59.js";import{t}from"./jsx-runtime-B-mvcaJS.js";import{t as n}from"./createLucideIcon-6rJ6BdB7.js";import{t as r}from"./triangle-alert-eaW8jtCr.js";import{t as i}from"./modal-CH2iwSBx.js";var a=n(`loader-circle`,[[`path`,{d:`M21 12a9 9 0 1 1-6.219-8.56`,key:`13zald`}]]),o=t(),s=`data-confirm-dialog-confirm`;function c({open:t,title:n,message:c,confirmLabel:l=`Confirm`,cancelLabel:u=`Cancel`,destructive:d=!1,isPending:f=!1,onConfirm:p,onCancel:m}){return(0,o.jsx)(i.Root,{open:t,onOpenChange:e=>{!e&&!f&&m()},children:(0,o.jsxs)(i.Content,{size:`sm`,hideCloseButton:!0,onOpenAutoFocus:e=>{let t=e.currentTarget?.querySelector(`[${s}]`);t&&(e.preventDefault(),t.focus())},onEscapeKeyDown:e=>{e.preventDefault(),e.stopPropagation(),f||m()},children:[(0,o.jsx)(i.Header,{children:(0,o.jsx)(i.Title,{icon:d?r:void 0,children:n})}),(0,o.jsx)(i.Body,{children:(0,o.jsx)(i.Description,{children:c})}),(0,o.jsxs)(i.Footer,{children:[(0,o.jsx)(e,{variant:`outlined`,onClick:m,disabled:f,children:u}),(0,o.jsx)(e,{variant:d?`danger`:`primary`,onClick:p,disabled:f,leftIcon:f?(0,o.jsx)(a,{className:`animate-spin`}):void 0,[s]:``,children:l})]})]})})}export{c as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./button-
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./button-BvHa6F59.js";import{d as r,h as i}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{n as a}from"./QueryClientProvider-DgWA3A3c.js";import{t as o}from"./useMutation-D3WkZnYg.js";import{t as s}from"./jsx-runtime-B-mvcaJS.js";import{t as c}from"./typography-COqg6o2z.js";import{t as l}from"./card-D9_3ngHI.js";import{n as u}from"./toast-VJ6jFKB9.js";import{t as d}from"./link-2-DW8ruMGH.js";import{t as f}from"./loader-circle-cYXxWP5B.js";import{t as p}from"./triangle-alert-DqPPHRPD.js";import{a as m}from"./routes-Dzl0kj5j.js";import{t as h}from"./use-active-assistant-id-jfqnc4T7.js";import{n as g,o as _}from"./contacts-gateway-CHNyL-NU.js";var v=e(t(),1),y=s();function b(e){let t=e[0];return typeof t==`object`&&!!t&&t._id===`contactsGet`}function x(e,t){switch(e){case`expired`:case`not_found`:return`This invite link has expired or already been used.`;case`already_redeemed_by_other`:return`This invite has already been claimed by someone else.`;case`sender_not_found`:return`The sender's assistant could not be found.`;case`not_platform_managed`:return`A2A invite links are only supported for platform-hosted assistants.`;default:return t||`Something went wrong. Please try again.`}}function S(){return(0,y.jsx)(C,{assistantId:h()})}function C({assistantId:e}){let t=r(),s=a(),[h]=i(),S=(0,v.useMemo)(()=>_(h),[h]),C=o({mutationFn:()=>{if(!S)throw Error(`Invalid invite link`);return g(e,{senderAssistantId:S.senderAssistantId,token:S.token})},onSuccess:e=>{e.success&&(s.invalidateQueries({predicate:e=>b(e.queryKey)}),e.alreadyConnected?u(`Already connected`):u(`Connected!`),t(m.contacts.root))}}),w=(0,v.useCallback)(()=>{t(m.contacts.root)},[t]),T=(0,v.useCallback)(()=>{C.mutate()},[C]),E=(0,v.useMemo)(()=>C.isError?C.error instanceof Error?C.error.message:`Something went wrong. Please try again.`:C.data&&!C.data.success?x(C.data.errorCode,C.data.error):null,[C.isError,C.error,C.data]);return S?(0,y.jsx)(`div`,{className:`flex min-h-full items-center justify-center p-6`,children:(0,y.jsx)(l,{className:`w-full max-w-md`,children:(0,y.jsxs)(`div`,{className:`flex flex-col gap-4 p-6`,children:[(0,y.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,y.jsx)(d,{className:`h-6 w-6`,style:{color:`var(--content-secondary)`}}),(0,y.jsx)(c,{variant:`title-small`,children:`Connect assistants`})]}),(0,y.jsx)(c,{variant:`body-medium-lighter`,style:{color:`var(--content-secondary)`},children:`Accepting this link will create a trusted A2A connection between your assistant and the sender's.`}),E&&(0,y.jsxs)(`div`,{className:`flex items-center gap-2 rounded-md p-3`,style:{backgroundColor:`var(--surface-negative-subtle)`,color:`var(--system-negative-strong)`},children:[(0,y.jsx)(p,{className:`h-4 w-4 shrink-0`}),(0,y.jsx)(c,{variant:`body-small-default`,children:E})]}),(0,y.jsxs)(`div`,{className:`flex gap-2 pt-2`,children:[(0,y.jsx)(n,{variant:`primary`,onClick:T,disabled:C.isPending,children:C.isPending?(0,y.jsxs)(`span`,{className:`flex items-center gap-2`,children:[(0,y.jsx)(f,{className:`h-4 w-4 animate-spin`}),`Connecting…`]}):`Connect`}),(0,y.jsx)(n,{variant:`outlined`,onClick:w,disabled:C.isPending,children:`Cancel`})]})]})})}):(0,y.jsx)(`div`,{className:`flex min-h-full items-center justify-center p-6`,children:(0,y.jsx)(l,{className:`w-full max-w-md`,children:(0,y.jsxs)(`div`,{className:`flex flex-col gap-4 p-6`,children:[(0,y.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,y.jsx)(p,{className:`h-6 w-6`,style:{color:`var(--system-negative-strong)`}}),(0,y.jsx)(c,{variant:`title-small`,children:`Invalid invite link`})]}),(0,y.jsx)(c,{variant:`body-medium-lighter`,style:{color:`var(--content-secondary)`},children:`The link you followed is missing required parameters and cannot be used.`}),(0,y.jsx)(`div`,{className:`flex gap-2 pt-2`,children:(0,y.jsx)(n,{variant:`primary`,onClick:w,children:`Go to Contacts`})})]})})})}export{S as ConnectPage};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"./jsx-runtime-
|
|
1
|
+
import{t as e}from"./jsx-runtime-B-mvcaJS.js";import{t}from"./card-D9_3ngHI.js";import{t as n}from"./checkbox-DNfwi5Hy.js";import{a as r,i}from"./routes-Dzl0kj5j.js";import{t as a}from"./setting-row-DB3q3lgL.js";var o=e(),s=[`[&_button[data-state=checked]]:bg-[var(--primary-base)]`,`[&_svg]:text-[var(--content-inset)]`,`[&_button[data-state=unchecked]]:bg-[var(--surface-base)]`,`[&_button[data-state=unchecked]]:border-[var(--border-element)]`].join(` `),c=`mb-2.5 ml-1 text-body-small-default font-medium uppercase tracking-wider text-[var(--content-tertiary)]`,l={privacy:{href:r.docs.legal.privacyPolicy,text:`Privacy and AI Data Sharing Policy`,aria:`I agree to the Privacy and AI Data Sharing Policy`},tos:{href:r.docs.legal.termsOfUse,text:`Terms of Service`,aria:`I agree to the Terms of Service`}};function u({kind:e,checked:t,onChange:r}){let a=l[e];return(0,o.jsx)(n,{checked:t,onCheckedChange:e=>r(e===!0),label:(0,o.jsxs)(`span`,{className:`text-body-medium-lighter text-[var(--content-default)]`,children:[`I agree to the`,` `,(0,o.jsx)(`a`,{href:i(a.href),target:`_blank`,rel:`noreferrer`,className:`underline`,children:a.text})]}),"aria-label":a.aria,className:s})}function d(){return(0,o.jsx)(`div`,{className:`h-px bg-[var(--surface-active)] dark:bg-[var(--surface-lift)]`})}function f({notes:e}){return!e||e.length===0?null:(0,o.jsxs)(`div`,{className:`rounded-r-md border-l-2 border-[var(--content-secondary)] bg-[var(--surface-base)] py-3 pl-3.5 pr-3.5`,children:[(0,o.jsx)(`p`,{className:`text-body-small-default font-medium text-[var(--content-secondary)]`,children:`What's changed`}),e.length===1?(0,o.jsx)(`p`,{className:`mt-1.5 text-body-medium-lighter text-[var(--content-default)]`,children:e[0]}):(0,o.jsx)(`ul`,{className:`mt-2 flex flex-col gap-1.5`,children:e.map(e=>(0,o.jsxs)(`li`,{className:`flex gap-2.5 text-body-medium-lighter text-[var(--content-default)]`,children:[(0,o.jsx)(`span`,{"aria-hidden":!0,className:`mt-[0.5em] h-1 w-1 flex-none rounded-full bg-[var(--content-tertiary)]`}),(0,o.jsx)(`span`,{children:e})]},e))})]})}function p({electron:e,showAnalytics:n=!0,showDiagnostics:r=!0,shareAnalytics:i,shareDiagnostics:s,onShareAnalyticsChange:l,onShareDiagnosticsChange:u,className:f,style:p}){return(0,o.jsxs)(`section`,{className:f,style:p,children:[(0,o.jsx)(`p`,{className:c,children:`Privacy preferences`}),(0,o.jsx)(t,{padding:e?`sm`:`md`,className:`w-full`,children:(0,o.jsxs)(`div`,{className:`flex flex-col ${e?`gap-3`:`gap-4`}`,children:[n&&(0,o.jsx)(a,{label:`Share Analytics`,helperText:`Send aggregated product usage data`,checked:i,onChange:l}),n&&r&&(0,o.jsx)(d,{}),r&&(0,o.jsx)(a,{label:`Share Diagnostics`,helperText:`Send crash reports, conversation traces, and session replay data`,checked:s,onChange:u})]})})]})}function m({electron:e,showPrivacy:n=!0,showTos:r=!0,privacyConsent:i,tosAccepted:a,onPrivacyChange:s,onTosChange:l,privacyNotes:d,tosNotes:p,className:m,style:h}){return(0,o.jsxs)(`section`,{className:m,style:h,children:[(0,o.jsx)(`p`,{className:c,children:`Agreements`}),(0,o.jsx)(t,{padding:e?`sm`:`md`,className:`w-full`,children:(0,o.jsxs)(`div`,{className:`flex flex-col ${e?`gap-3.5`:`gap-4`}`,children:[n&&(0,o.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,o.jsx)(f,{notes:d}),(0,o.jsx)(u,{kind:`privacy`,checked:i,onChange:s})]}),r&&(0,o.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,o.jsx)(f,{notes:p}),(0,o.jsx)(u,{kind:`tos`,checked:a,onChange:l})]})]})})]})}export{p as n,m as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as e,r as t,t as n}from"./api-errors-
|
|
1
|
+
import{n as e,r as t,t as n}from"./api-errors-B-g6gvNv.js";import{t as r}from"./client.gen-BnoNy2w0.js";import{a as i}from"./routes-Dzl0kj5j.js";function a(e){let t=typeof window<`u`?window.location.origin:``,n=new URLSearchParams({senderAssistantId:e.senderAssistantId,token:e.token});return`${t}${i.connect}?${n.toString()}`}function o(e){let t=e.get(`senderAssistantId`)?.trim(),n=e.get(`token`)?.trim();return!t||!n?null:{senderAssistantId:t,token:n}}async function s(i,a){let{data:o,error:s,response:c}=await r.post({url:`/v1/assistants/{assistant_id}/contacts/`,path:{assistant_id:i},body:a,headers:{"Content-Type":`application/json`},throwOnError:!1});if(e(c,s,`Failed to save contact`),!c.ok||!o?.contact)throw new n(c.status,t(s,c,`Failed to save contact`));return o.contact}async function c(i,a){let{error:o,response:s}=await r.delete({url:`/v1/assistants/{assistant_id}/contacts/{contact_id}/`,path:{assistant_id:i,contact_id:a},throwOnError:!1});if(e(s,o,`Failed to delete contact`),!s.ok&&s.status!==204)throw new n(s.status,t(o,s,`Failed to delete contact`))}async function l(i,a){let{error:o,response:s}=await r.post({url:`/v1/assistants/{assistant_id}/contact-channels/{channel_id}/verify/`,path:{assistant_id:i,channel_id:a},throwOnError:!1});if(e(s,o,`Failed to verify channel`),!s.ok)throw new n(s.status,t(o,s,`Failed to verify channel`))}async function u(i,a){let{data:o,error:s,response:c}=await r.post({url:`/v1/assistants/{assistant_id}/a2a/invites/redeem/`,path:{assistant_id:i},body:{sender_assistant_id:a.senderAssistantId,token:a.token},headers:{"Content-Type":`application/json`},throwOnError:!1});if(e(c,s,`Failed to redeem A2A invite`),!c.ok)throw new n(c.status,t(s,c,`Failed to redeem A2A invite`));return{success:o?.success??!0,alreadyConnected:o?.already_connected,error:o?.error,errorCode:o?.error_code}}export{a,l as i,u as n,o,s as r,c as t};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./button-
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./button-BvHa6F59.js";import{d as r}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{n as i}from"./QueryClientProvider-DgWA3A3c.js";import{t as a}from"./useMutation-D3WkZnYg.js";import{t as o}from"./jsx-runtime-B-mvcaJS.js";import{t as s}from"./useQuery-cVuP8q1x.js";import{t as c}from"./typography-COqg6o2z.js";import{t as l}from"./card-D9_3ngHI.js";import{t as u}from"./dropdown-SUNHYFiy.js";import{t as d}from"./panel-item-DN2CyWOT.js";import{c as f,l as p}from"./src-Dr68ou95.js";import{t as m}from"./confirm-dialog-BtxNY4WU.js";import{t as h}from"./tag-64Evw5MO.js";import{t as g}from"./input-BLN3wmw2.js";import{t as _}from"./modal-CH2iwSBx.js";import{n as v}from"./toast-VJ6jFKB9.js";import{t as y}from"./createLucideIcon-D8roAprb.js";import{t as b}from"./arrow-left-BPsKoNcb.js";import{t as x}from"./check-DwLoiFa9.js";import{t as S}from"./chevron-right-DP15nqFC.js";import{t as C}from"./link-2-DW8ruMGH.js";import{t as w}from"./loader-circle-cYXxWP5B.js";import{t as T}from"./pencil-DUMCM9m-.js";import{t as E}from"./user-plus-CjFuXA3D.js";import{Bt as D,Ht as O,It as ee,Ut as k,Vt as te,x as ne,zt as re}from"./sdk.gen-CC1iYdd0.js";import{B as ie,H as ae,Mt as oe,U as se,V as ce,_ as le,a as ue,jt as de,o as fe,s as pe,v as me,y as A}from"./react-query.gen-BeTpj_Sy.js";import{n as j,r as M,t as N}from"./api-errors-B-g6gvNv.js";import{t as P}from"./client.gen-BnoNy2w0.js";import{a as he}from"./routes-Dzl0kj5j.js";import{t as ge}from"./assistant-identity-store-ESeBny_J.js";import{n as _e}from"./viewer-store-Dened07w.js";import{t as ve}from"./conversation-store-6tz67quR.js";import{t as ye}from"./assistant-feature-flag-store-Ceb6N94N.js";import{t as be}from"./conversation-selection-BV7USWf2.js";import{$i as xe,Jr as F,Li as I,Ti as L,Zi as R,ai as z,li as B,pi as V,qr as H,ta as U,ti as Se}from"./index-3zpPFBeR.js";import{t as W}from"./use-active-assistant-id-jfqnc4T7.js";import{n as Ce,t as we}from"./mobile-sidebar-drawer-B4ol32hs.js";import{t as G}from"./detail-card-5TPdhuZN.js";import{a as Te,i as Ee,r as De,t as Oe}from"./contacts-gateway-CHNyL-NU.js";import{t as K}from"./mutation-error-B5AKP6aC.js";var ke=y(`circle-question-mark`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3`,key:`1u773s`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]),Ae=y(`ellipsis-vertical`,[[`circle`,{cx:`12`,cy:`12`,r:`1`,key:`41hilf`}],[`circle`,{cx:`12`,cy:`5`,r:`1`,key:`gxeob9`}],[`circle`,{cx:`12`,cy:`19`,r:`1`,key:`lyex9k`}]]),q=y(`git-merge`,[[`circle`,{cx:`18`,cy:`18`,r:`3`,key:`1xkwt0`}],[`circle`,{cx:`6`,cy:`6`,r:`3`,key:`1lh9wr`}],[`path`,{d:`M6 21V9a9 9 0 0 0 9 9`,key:`7kw0sc`}]]),J=e(t(),1),Y=o();function X({role:e,contactType:t}){let{label:n,tone:r}=je(e,t);return(0,Y.jsx)(h,{tone:r,children:n})}function je(e,t){switch(e){case`guardian`:return{label:`Guardian`,tone:`positive`};case`assistant`:return{label:`Assistant`,tone:`negative`};default:return t===`assistant`?{label:`Assistant`,tone:`negative`}:{label:`Human`,tone:`warning`}}}function Me({onClick:e}){return(0,Y.jsx)(n,{variant:`outlined`,size:`compact`,leftIcon:(0,Y.jsx)(C,{className:`h-3.5 w-3.5`}),onClick:e,children:`Share Connection Link`})}var Ne=[`no_one`,`guardian_only`,`trusted_contacts`,`any_contact`,`strangers`],Pe=new Set([`platform`,`a2a`]),Fe=new Set([`vellum`,`whatsapp`]);function Ie(e){return Fe.has(e)}var Le={no_one:`No one`,guardian_only:`Only you`,trusted_contacts:`Verified contacts`,any_contact:`Any contact`,strangers:`Strangers`},Re={no_one:`Hard-deny every inbound message on this channel.`,guardian_only:`Only messages sent by you are admitted.`,trusted_contacts:`Admit verified contacts and the guardian; deny everyone else.`,any_contact:`Admit any matched contact (verified or pending) and the guardian.`,strangers:`Admit everyone, including unrecognised senders.`},ze=Ne.map(e=>({value:e,label:Le[e],tooltip:Re[e]})),Be={no_one:{title:`Block all messages?`,message:`Setting this channel to “No one” hard-denies every inbound message — including messages from you.
|
|
2
2
|
|
|
3
3
|
You can reverse this at any time.`,confirmLabel:`Block all`,destructive:!0},any_contact:{title:`Allow any contact?`,message:`“Any contact” admits every matched contact in this channel — including pending, unverified ones — not just your verified contacts.
|
|
4
4
|
|
|
@@ -6,4 +6,4 @@ Best for channels consisting of only people you already trust.`,confirmLabel:`Al
|
|
|
6
6
|
|
|
7
7
|
Doing so could cost you money and open you up to security and privacy vulnerabilities.
|
|
8
8
|
|
|
9
|
-
Enable with extreme caution.`,confirmLabel:`Allow strangers`,destructive:!0}},Ve={slack:{label:`Slack`,Icon:L,disconnectMessage:`This clears the stored Slack bot and app tokens for this assistant. You can reconnect later.`},telegram:{label:`Telegram`,Icon:H,disconnectMessage:`This clears the stored Telegram bot token for this assistant. You can reconnect later.`},phone:{label:`Phone Calling`,Icon:z,disconnectMessage:`This clears the stored Twilio credentials for this assistant. You can reconnect later.`}};function He({assistantName:e,channels:t,pendingChannelKey:n=null,slackThreadMode:r,slackThreadModePending:i=!1,channelPolicies:a,policySavingKey:o=null,policiesLoading:s=!1,policiesError:c=!1,onChannelPolicyChange:l,onSetup:u,onDisconnect:d,onSaveTelegramToken:f,onSaveSlackConfig:p,onSlackThreadModeChange:h,onSaveTwilioCredentials:g,onGenerateInviteLink:_}){let v=e.trim()||`your assistant`,[y,b]=(0,J.useState)(null),[x,S]=(0,J.useState)(new Set),[C,w]=(0,J.useState)(null),T=y?Ve[y]:null,E=C?Be[C.policy]:null,D=(e,t)=>{if(Be[t]){w({channelKey:e,policy:t});return}l?.(e,t)},O=e=>{S(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})};return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-6`,children:[(0,Y.jsx)(G,{title:`${v} (Your Assistant)`,accessory:(0,Y.jsx)(X,{role:`assistant`}),compactAccessory:!0}),(0,Y.jsx)(G,{title:`Channels`,subtitle:`Manage where ${v} can be reached.`,children:(0,Y.jsx)(`div`,{className:`flex flex-col`,children:t.map((e,t)=>(0,Y.jsxs)(`div`,{children:[t>0?(0,Y.jsx)(`div`,{className:`border-t`,style:{borderColor:`var(--border-base)`}}):null,(0,Y.jsx)(Z,{channel:e,pending:n===e.key,expanded:x.has(e.key),onToggleExpand:()=>O(e.key),onSetup:u?()=>u(e.key):void 0,onDisconnect:d?()=>b(e.key):void 0,onSaveTelegramToken:f,onSaveSlackConfig:p,slackThreadMode:r,slackThreadModePending:i,onSlackThreadModeChange:h,onSaveTwilioCredentials:g,policy:a?.[e.key],policySaving:o===e.key,policyLoading:s,policyError:c,onPolicyChange:l?t=>D(e.key,t):void 0})]},e.key))})}),_?(0,Y.jsx)(Me,{onClick:_}):null,(0,Y.jsx)(m,{open:y!==null,title:`Disconnect ${T?.label??``}?`,message:T?.disconnectMessage??``,confirmLabel:`Disconnect`,destructive:!0,onConfirm:()=>{y&&d&&d(y),b(null)},onCancel:()=>b(null)}),(0,Y.jsx)(m,{open:C!==null,title:E?.title??``,message:E?.message??``,confirmLabel:E?.confirmLabel??`Confirm`,destructive:E?.destructive??!1,onConfirm:()=>{C&&l?.(C.channelKey,C.policy),w(null)},onCancel:()=>w(null)})]})}function Z({channel:e,pending:t,expanded:r,onToggleExpand:i,onSetup:a,onDisconnect:o,onSaveTelegramToken:s,onSaveSlackConfig:c,slackThreadMode:l,slackThreadModePending:u=!1,onSlackThreadModeChange:d,onSaveTwilioCredentials:f,policy:p,policySaving:m=!1,policyLoading:h=!1,policyError:g=!1,onPolicyChange:_}){let v=Ve[e.key],y=e.status===`ready`;return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-2 py-4`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,Y.jsx)(`button`,{type:`button`,className:`flex shrink-0 items-center justify-center`,onClick:i,style:{color:`var(--content-secondary)`},children:r?(0,Y.jsx)(xe,{className:`h-4 w-4`}):(0,Y.jsx)(S,{className:`h-4 w-4`})}),(0,Y.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:v.label}),e.address?(0,Y.jsx)(`span`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:e.address}):null,(0,Y.jsx)(`div`,{className:`ml-auto flex items-center gap-2`,children:y?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-1 h-8 px-2.5 rounded-md whitespace-nowrap select-none text-body-small-emphasised leading-none bg-[var(--content-default)] text-[var(--surface-base)]`,children:[(0,Y.jsx)(R,{className:`h-3 w-3`}),`Connected`]}),(0,Y.jsx)(n,{type:`button`,variant:`danger`,onClick:o,disabled:!o||t,children:t?`Disconnecting…`:`Disconnect`})]}):(0,Y.jsx)(n,{type:`button`,variant:`outlined`,onClick:a,disabled:!a||t,children:t?`Opening…`:`Set up`})})]}),!y&&e.key===`telegram`&&r?(0,Y.jsx)(Q,{onSave:s}):null,!y&&e.key===`slack`&&r?(0,Y.jsx)($,{onSave:c}):null,!y&&e.key===`phone`&&r?(0,Y.jsx)(Ge,{onSave:f}):null,y&&r?(0,Y.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[_?(0,Y.jsx)(Ue,{policy:p,saving:m,loading:h,error:g,onChange:_}):null,e.key===`telegram`?(0,Y.jsx)(Q,{onSave:s}):null,e.key===`slack`?(0,Y.jsx)(We,{threadMode:l,pending:u,onThreadModeChange:d}):null,e.key===`phone`?(0,Y.jsx)(Ge,{onSave:f}):null]}):null]})}function Ue({policy:e,saving:t=!1,loading:n=!1,error:r=!1,onChange:i}){let a=e??`trusted_contacts`;return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-2 pl-7`,children:[(0,Y.jsx)(c,{as:`span`,variant:`body-small-emphasised`,className:`text-[color:var(--content-secondary)]`,children:`Who Can Reach`}),n?(0,Y.jsx)(c,{as:`span`,variant:`body-small-default`,className:`text-[color:var(--content-tertiary)]`,children:`Loading…`}):r?(0,Y.jsx)(c,{as:`span`,variant:`body-small-default`,className:`text-[color:var(--content-negative)]`,children:`Couldn’t load this setting. Try reopening this page.`}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`div`,{style:{maxWidth:280},children:(0,Y.jsx)(u,{value:a,onChange:i,options:ze,disabled:t,"aria-label":`Channel trust floor`})}),(0,Y.jsx)(c,{as:`span`,variant:`body-small-default`,className:`text-[color:var(--content-tertiary)]`,children:Re[a]})]})]})}function Q({onSave:e}){let[t,r]=(0,J.useState)(``),[i,a]=(0,J.useState)(!1),[o,s]=(0,J.useState)(null),c=t.trim().length>0&&!i;return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-3 pl-7`,children:[(0,Y.jsx)(g,{label:`Bot Token`,type:`password`,value:t,onChange:e=>r(e.target.value),placeholder:`Paste your Telegram bot token`,disabled:i,fullWidth:!0}),o?(0,Y.jsx)(`p`,{className:`text-label-small`,style:{color:`var(--content-negative)`},children:o}):null,(0,Y.jsx)(`div`,{children:(0,Y.jsx)(n,{type:`button`,onClick:async()=>{if(!(!e||!c)){a(!0),s(null);try{await e(t.trim()),r(``)}catch(e){s(e instanceof Error?e.message:`Failed to save`)}finally{a(!1)}}},disabled:!c,children:i?`Saving…`:`Save`})})]})}function $({onSave:e}){let[t,r]=(0,J.useState)(``),[i,a]=(0,J.useState)(``),[o,s]=(0,J.useState)(!1),[c,l]=(0,J.useState)(null),u=t.trim().length>0&&i.trim().length>0&&!o;return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-3 pl-7`,children:[(0,Y.jsx)(g,{label:`Bot Token`,type:`password`,value:t,onChange:e=>r(e.target.value),placeholder:`xoxb-...`,disabled:o,fullWidth:!0}),(0,Y.jsx)(g,{label:`App Token`,type:`password`,value:i,onChange:e=>a(e.target.value),placeholder:`xapp-...`,disabled:o,fullWidth:!0}),c?(0,Y.jsx)(`p`,{className:`text-label-small`,style:{color:`var(--content-negative)`},children:c}):null,(0,Y.jsx)(`div`,{children:(0,Y.jsx)(n,{type:`button`,onClick:async()=>{if(!(!e||!u)){s(!0),l(null);try{await e(t.trim(),i.trim()),r(``),a(``)}catch(e){l(e instanceof Error?e.message:`Failed to save`)}finally{s(!1)}}},disabled:!u,children:o?`Saving…`:`Save`})})]})}function We({threadMode:e,pending:t=!1,onThreadModeChange:n}){return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-3 pl-7`,children:[(0,Y.jsx)(c,{as:`span`,variant:`body-small-emphasised`,className:`text-[color:var(--content-secondary)]`,children:`Thread Behavior`}),(0,Y.jsxs)(f,{value:e??`mention_only`,onValueChange:e=>n?.(e),disabled:t||!n,"aria-label":`Slack thread behavior`,children:[(0,Y.jsx)(p,{value:`mention_only`,label:`Mentions only`,helperText:`Bot only responds when @mentioned.`}),(0,Y.jsx)(p,{value:`mention_then_thread`,label:`Follow threads after first mention`,helperText:`After an @mention in a thread, bot listens to all subsequent replies.`})]})]})}function Ge({onSave:e}){let[t,r]=(0,J.useState)(``),[i,a]=(0,J.useState)(``),[o,s]=(0,J.useState)(!1),[c,l]=(0,J.useState)(null),u=t.trim().length>0&&i.trim().length>0&&!o;return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-3 pl-7`,children:[(0,Y.jsx)(g,{label:`Account SID`,type:`text`,value:t,onChange:e=>r(e.target.value),placeholder:`ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx`,disabled:o,fullWidth:!0}),(0,Y.jsx)(g,{label:`Auth Token`,type:`password`,value:i,onChange:e=>a(e.target.value),placeholder:`Twilio auth token`,disabled:o,fullWidth:!0}),c?(0,Y.jsx)(`p`,{className:`text-label-small`,style:{color:`var(--content-negative)`},children:c}):null,(0,Y.jsx)(`div`,{children:(0,Y.jsx)(n,{type:`button`,onClick:async()=>{if(!(!e||!u)){s(!0),l(null);try{await e(t.trim(),i.trim()),r(``),a(``)}catch(e){l(e instanceof Error?e.message:`Failed to save`)}finally{s(!1)}}},disabled:!u,children:o?`Saving…`:`Save`})})]})}var Ke=new Set([`telegram`,`phone`,`vellum`,`whatsapp`,`slack`,`email`,`platform`,`a2a`]);function qe(e){return Ke.has(e)}function Je(e,t){return e.id===`a2a`?t&&t.status!==`revoked`?{kind:`connected`}:{kind:`setup`}:t?.status===`verified`||t?.status===`active`&&t?.verifiedAt!=null?{kind:`verified`}:t?.status===`blocked`?{kind:`none`}:t&&t.status!==`revoked`?{kind:`unverified`}:{kind:`setup`}}function Ye(e,t,n){let r=[],i=new Set;if(e)for(let t of e)t.id===`a2a`&&!n||(r.push(t),i.add(t.id));for(let e of t)e.status===`revoked`||i.has(e.type)||e.type===`a2a`&&!n||qe(e.type)&&(r.push({id:e.type,label:e.type.charAt(0).toUpperCase()+e.type.slice(1),subtitle:``,icon:`help-circle`,supportsVerification:!1,setupMessages:{guardian:``,contact:``}}),i.add(e.type));return r}function Xe({name:e,className:t,style:n}){switch(e){case`bot`:return(0,Y.jsx)(U,{className:t,style:n});case`hash`:return(0,Y.jsx)(L,{className:t,style:n});case`send`:return(0,Y.jsx)(H,{className:t,style:n});case`phone`:return(0,Y.jsx)(z,{className:t,style:n});case`mail`:return(0,Y.jsx)(V,{className:t,style:n});case`message-square`:return(0,Y.jsx)(B,{className:t,style:n});default:return(0,Y.jsx)(ke,{className:t,style:n})}}function Ze({contactChannels:e,availableChannels:t,a2aEnabled:n,setupLabel:r=`Invite`,verifyLoading:i,verifySubject:a=`self`,onSetupChannel:o,onVerifyChannel:s,onRevokeChannel:c}){let[l,u]=(0,J.useState)(null),[d,f]=(0,J.useState)(null),p=new Map;for(let t of e)t.status!==`revoked`&&(p.has(t.type)||p.set(t.type,t));return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`div`,{className:`flex flex-col`,children:Ye(t,e,n).map((e,t)=>{let n=p.get(e.id);return(0,Y.jsxs)(`div`,{children:[t>0&&(0,Y.jsx)(`div`,{className:`border-t`,style:{borderColor:`var(--border-base)`}}),(0,Y.jsx)(Qe,{info:e,existing:n,setupLabel:r,verifyLoading:i,onSetup:o?()=>o(e.id):void 0,onVerify:s&&e.supportsVerification?()=>u(e):void 0,onRevoke:c&&n?()=>f({channelId:n.id,channel:e}):void 0})]},e.id)})}),l&&(0,Y.jsx)(m,{open:!0,title:`Verify ${l.label}`,message:a===`contact`?`This will mark this contact's ${l.label} channel as verified. Your assistant will recognize them when they reach out from it.`:`This will mark your ${l.label} channel as verified. Your assistant will recognize you when you reach out from it.`,confirmLabel:`Verify`,onConfirm:()=>{l&&(s?.(l.id),u(null))},onCancel:()=>u(null)}),d&&(0,Y.jsx)(m,{open:!0,title:`Revoke ${d.channel.label}`,message:`This will disconnect the verified channel. The contact will need to re-verify to use this channel again.`,confirmLabel:`Revoke`,destructive:!0,onConfirm:()=>{c?.(d.channelId,d.channel.id),f(null)},onCancel:()=>f(null)})]})}function Qe({info:e,existing:t,setupLabel:r,verifyLoading:i,onSetup:a,onVerify:o,onRevoke:s}){let c=Je(e,t);return(0,Y.jsxs)(`div`,{className:`flex items-center gap-3 py-4`,children:[(0,Y.jsx)(Xe,{name:e.icon,className:`h-4 w-4 shrink-0`,style:{color:`var(--content-secondary)`}}),(0,Y.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e.label}),t?.address?(0,Y.jsx)(`span`,{className:`truncate text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:t.address}):null,(0,Y.jsx)(`div`,{className:`ml-auto flex shrink-0 items-center gap-2`,children:c.kind===`connected`?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-1 h-8 px-2.5 rounded-md whitespace-nowrap select-none text-body-small-emphasised leading-none bg-[var(--content-default)] text-[var(--surface-base)]`,children:[(0,Y.jsx)(R,{className:`h-3 w-3`}),`Connected`]}),s?(0,Y.jsx)(n,{variant:`danger`,onClick:s,children:`Revoke`}):null]}):c.kind===`verified`?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-1 h-8 px-2.5 rounded-md whitespace-nowrap select-none text-body-small-emphasised leading-none bg-[var(--content-default)] text-[var(--surface-base)]`,children:[(0,Y.jsx)(R,{className:`h-3 w-3`}),`Verified`]}),s?(0,Y.jsx)(n,{variant:`danger`,onClick:s,children:`Revoke`}):null]}):c.kind===`unverified`?(0,Y.jsx)(n,{variant:`outlined`,onClick:o,disabled:!o||i,children:i?`Verifying…`:`Verify`}):c.kind===`setup`?e.id===`a2a`?null:(0,Y.jsx)(n,{variant:`outlined`,onClick:a,disabled:!a,children:r}):null})]})}function $e(e){return(0,Y.jsx)(et,{...e},e.contact.id)}function et({contact:e,savePending:t,deletePending:r,verifyPending:i,mergePending:a=!1,canMerge:o=!1,availableChannels:s,a2aEnabled:c,onSave:l,onDelete:u,onMerge:d,onSetupChannel:f,onVerifyChannel:p,onRevokeChannel:h}){let _=e.displayName===`New Contact`,[v,y]=(0,J.useState)(_?``:e.displayName),[b,x]=(0,J.useState)(e.notes??``),[S,C]=(0,J.useState)(!1),w=v.trim(),T=b.trim(),E=_?``:e.displayName,D=e.notes??``,O=w!==E||T!==D,ee=w.length>0&&O&&!t&&!r,k=_&&e.channels.length===0&&e.interactionCount===0,te=w||e.displayName,ne=`${e.interactionCount} interaction${e.interactionCount===1?``:`s`}`;return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-6`,children:[(0,Y.jsx)(G,{title:te,accessory:(0,Y.jsx)(X,{role:e.role,contactType:e.contactType}),compactAccessory:!0,subtitle:ne,children:(0,Y.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,Y.jsx)(g,{label:`Name`,type:`text`,value:v,onChange:e=>y(e.target.value),placeholder:`Give this human a name`,autoFocus:_,disabled:t||r,fullWidth:!0}),(0,Y.jsx)(g,{label:`Notes`,type:`text`,value:b,onChange:e=>x(e.target.value),placeholder:`Optional notes about the human which AI will take into account`,disabled:t||r,fullWidth:!0}),(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,Y.jsx)(n,{type:`button`,onClick:()=>l({displayName:w,notes:T}),disabled:!ee,children:t?`Saving…`:`Save`}),d?(0,Y.jsx)(n,{type:`button`,variant:`outlined`,onClick:d,disabled:!o||k||O||a||t||r,title:o?k?`Save this contact before merging`:O?`Save your changes before merging`:void 0:`No other contacts available to merge`,children:a?`Merging…`:`Merge…`}):null,(0,Y.jsx)(n,{type:`button`,variant:`danger`,onClick:()=>{k?u():C(!0)},disabled:r,children:r?`Deleting…`:`Delete Contact`})]})]})}),(0,Y.jsx)(G,{title:`Channels`,subtitle:`Once verified, your assistant will recognize this contact when they message from these channels.`,children:(0,Y.jsx)(Ze,{contactChannels:e.channels,availableChannels:s,a2aEnabled:c,verifyLoading:i,verifySubject:`contact`,onSetupChannel:f,onVerifyChannel:p,onRevokeChannel:h})}),(0,Y.jsx)(m,{open:S,title:`Delete ${e.displayName}?`,message:`This will permanently delete this contact and all their channels. This action cannot be undone.`,confirmLabel:`Delete`,destructive:!0,onConfirm:()=>{C(!1),u()},onCancel:()=>C(!1)})]})}function tt(e){return(0,Y.jsx)(nt,{...e},`${e.survivor.id}:${e.open?`open`:`closed`}`)}function nt({open:e,survivor:t,candidates:r,pending:i,errorMessage:a,onMerge:o,onClose:s}){let[l,u]=(0,J.useState)(``),[d,f]=(0,J.useState)(null);(0,J.useEffect)(()=>{d&&!r.some(e=>e.id===d)&&f(null)},[r,d]);let p=(0,J.useMemo)(()=>{let e=l.trim().toLowerCase();return e?r.filter(t=>t.displayName.toLowerCase().includes(e)):r},[r,l]),m=d?r.find(e=>e.id===d)??null:null,h=st(t);return(0,Y.jsx)(_.Root,{open:e,onOpenChange:e=>{!e&&!i&&s()},children:(0,Y.jsxs)(_.Content,{size:`md`,children:[(0,Y.jsxs)(_.Header,{children:[(0,Y.jsx)(_.Title,{icon:q,children:m?`Merge "${m.displayName}" into ${h}?`:`Merge another contact into ${h}`}),(0,Y.jsx)(_.Description,{children:m?`Channels and notes from the merged contact will move over. The merged contact will be deleted.`:`The contact you pick will be deleted. Its channels and notes will be added to this one.`})]}),(0,Y.jsxs)(_.Body,{className:`flex flex-col gap-3`,children:[m?(0,Y.jsx)(at,{survivor:t,donor:m}):r.length===0?(0,Y.jsx)(ot,{}):(0,Y.jsx)(rt,{search:l,onSearch:u,candidates:p,onPick:f}),a?(0,Y.jsx)(c,{as:`p`,variant:`body-small-default`,className:`text-(--system-negative-strong)`,role:`alert`,children:a}):null]}),(0,Y.jsx)(_.Footer,{children:m?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(n,{variant:`outlined`,onClick:()=>f(null),disabled:i,leftIcon:(0,Y.jsx)(b,{"aria-hidden":!0}),children:`Back`}),(0,Y.jsx)(n,{variant:`danger`,onClick:()=>o(m.id),disabled:i,children:i?`Merging…`:`Merge`})]}):(0,Y.jsx)(n,{variant:`outlined`,onClick:s,disabled:i,children:`Cancel`})})]})})}function rt({search:e,onSearch:t,candidates:n,onPick:r}){return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(g,{type:`text`,value:e,onChange:e=>t(e.target.value),placeholder:`Search contacts`,leftIcon:(0,Y.jsx)(F,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),fullWidth:!0}),(0,Y.jsx)(`div`,{className:`flex max-h-[320px] min-h-[120px] flex-col gap-1 overflow-y-auto`,role:`listbox`,"aria-label":`Select a contact to merge`,children:n.length===0?(0,Y.jsx)(c,{as:`p`,variant:`body-small-default`,className:`px-3 py-4 text-center text-(--content-tertiary)`,children:`No matching contacts`}):n.map(e=>(0,Y.jsx)(it,{contact:e,onPick:()=>r(e.id)},e.id))})]})}function it({contact:e,onPick:t}){let n=dt(e).join(` | `)||void 0;return(0,Y.jsx)(d,{asChild:!0,label:``,children:(0,Y.jsx)(`button`,{type:`button`,onClick:t,role:`option`,"aria-selected":`false`,className:`flex h-auto w-full items-center gap-2 rounded-[6px] px-[8px] py-2 text-left`,children:(0,Y.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,Y.jsx)(`span`,{className:`truncate text-body-medium-default`,children:e.displayName}),n?(0,Y.jsx)(`span`,{className:`truncate text-body-small-default text-(--content-tertiary)`,children:n}):null]})})})}function at({survivor:e,donor:t}){let n=st(e),{moved:r,duplicates:i}=ut(e,t);return(0,Y.jsxs)(`ul`,{className:`flex flex-col gap-2 text-body-medium-lighter text-(--content-secondary)`,children:[(0,Y.jsxs)(`li`,{children:[(0,Y.jsxs)(`span`,{className:`text-(--content-default)`,children:[`“`,t.displayName,`”`]}),` `,`will be deleted.`]}),(0,Y.jsx)(`li`,{children:r.length===0?`No new channels will move to ${n}.`:`${r.length} channel${r.length===1?``:`s`} will move to ${n}: ${r.map(e=>lt(e.type)).join(`, `)}.`}),i.length>0?(0,Y.jsxs)(`li`,{className:`text-(--content-tertiary)`,children:[i.length,` duplicate channel`,i.length===1?``:`s`,` already on `,n,` `,`(skipped).`]}):null,t.notes?(0,Y.jsx)(`li`,{children:`Notes from the merged contact will be appended.`}):null,(0,Y.jsx)(`li`,{className:`text-(--content-tertiary)`,children:`This cannot be undone.`})]})}function ot(){return(0,Y.jsx)(c,{as:`p`,variant:`body-medium-lighter`,className:`px-3 py-6 text-center text-(--content-tertiary)`,children:`No other contacts available to merge.`})}function st(e){return e.role===`guardian`?!e.displayName||e.displayName.startsWith(`vellum-principal-`)?`you`:`${e.displayName} (you)`:e.displayName||`this contact`}var ct={slack:`Slack`,telegram:`Telegram`,phone:`Phone`,email:`Email`,whatsapp:`WhatsApp`};function lt(e){return ct[e.toLowerCase()]??e}function ut(e,t){let n=[],r=[];for(let i of t.channels)i.status!==`revoked`&&(e.channels.some(e=>e.type===i.type&&e.address.toLowerCase()===i.address.toLowerCase())?r.push(i):n.push(i));return{moved:n,duplicates:r}}function dt(e){let t=new Set,n=[];for(let r of e.channels){if(r.status===`revoked`)continue;let e=r.type.toLowerCase();t.has(e)||(t.add(e),n.push(ct[e]??r.type))}return n}function ft({loading:e,guardian:t,assistantName:r,regularContacts:i,selection:a,onSelect:o,onAddContact:s,addingContact:c=!1}){let[u,d]=(0,J.useState)(``),f=u.trim()?i.filter(e=>e.displayName.toLowerCase().includes(u.trim().toLowerCase())):i;return(0,Y.jsx)(l,{className:`h-full`,children:(0,Y.jsxs)(`div`,{className:`flex h-full min-w-0 flex-col gap-4`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,Y.jsx)(`h2`,{className:`text-title-medium`,style:{color:`var(--content-default)`},children:`Entries`}),(0,Y.jsx)(n,{type:`button`,variant:`ghost`,iconOnly:c?(0,Y.jsx)(w,{className:`animate-spin`,"aria-hidden":!0}):(0,Y.jsx)(Se,{"aria-hidden":!0}),onClick:s,disabled:c,"aria-label":`Add contact`,tintColor:`var(--content-secondary)`})]}),(0,Y.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[t?(0,Y.jsx)(pt,{name:t.displayName?`${t.displayName} (You)`:`You`,role:t.role,channelTypes:t.channelTypes,selected:a?.kind===`contact`&&a.contactId===t.id,onClick:()=>o({kind:`contact`,contactId:t.id}),trailingIcon:`pencil`}):null,(0,Y.jsx)(pt,{name:r?.trim()||`Your Assistant`,role:`assistant`,selected:a?.kind===`assistant`,onClick:()=>o({kind:`assistant`}),trailingIcon:`more`})]}),(0,Y.jsx)(`div`,{className:`border-t`,style:{borderColor:`var(--border-base)`}}),i.length>0?(0,Y.jsx)(g,{type:`text`,value:u,onChange:e=>d(e.target.value),placeholder:`Search Contacts`,leftIcon:(0,Y.jsx)(F,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),fullWidth:!0}):null,i.length>0?(0,Y.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[f.map(e=>(0,Y.jsx)(pt,{name:e.displayName,role:e.role,contactType:e.contactType,channelTypes:e.channelTypes,selected:a?.kind===`contact`&&a.contactId===e.id,onClick:()=>o({kind:`contact`,contactId:e.id}),trailingIcon:`more`},e.id)),f.length===0?(0,Y.jsx)(`p`,{className:`px-3 py-4 text-center text-body-small-default`,style:{color:`var(--content-tertiary)`},children:`No matching contacts`}):null]}):e?null:(0,Y.jsx)(n,{type:`button`,variant:`ghost`,onClick:s,disabled:c,tintColor:`var(--primary-base)`,leftIcon:c?(0,Y.jsx)(w,{className:`animate-spin`,"aria-hidden":!0}):(0,Y.jsx)(E,{"aria-hidden":!0}),children:`Add Contact`})]})})}function pt({name:e,role:t,contactType:n,channelTypes:r,selected:i,onClick:a,trailingIcon:o}){let s=r&&r.length>0?r.join(` | `):void 0;return(0,Y.jsx)(d,{asChild:!0,active:i,label:``,trailingAction:o===`pencil`?(0,Y.jsx)(T,{className:`h-3.5 w-3.5`,"aria-hidden":!0}):o===`more`?(0,Y.jsx)(Ae,{className:`h-3.5 w-3.5`,"aria-hidden":!0}):void 0,children:(0,Y.jsxs)(`button`,{type:`button`,onClick:a,className:`flex h-auto w-full items-center gap-2 rounded-[6px] px-[8px] py-2 text-left`,children:[(0,Y.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,Y.jsx)(`span`,{className:`truncate text-body-medium-default`,children:e}),s?(0,Y.jsx)(`span`,{className:`truncate text-body-small-default`,style:{color:`var(--content-tertiary)`},children:s}):null]}),(0,Y.jsx)(`span`,{className:`shrink-0`,children:(0,Y.jsx)(X,{role:t,contactType:n})})]})})}function mt(e){let t=e-Date.now();if(t<=0)return`Expired`;let n=Math.ceil(t/(1e3*60*60*24));return n===1?`Expires in 1 day`:`Expires in ${n} days`}function ht({open:e,assistantId:t,onClose:r}){let[i,a]=(0,J.useState)(!1),s=(0,J.useRef)(null),l=(0,J.useRef)(!1),u=o({...ie({path:{assistant_id:t}})}),d=(0,J.useRef)(u.mutate);(0,J.useLayoutEffect)(()=>{d.current=u.mutate});let f=(0,J.useRef)(u.reset);(0,J.useLayoutEffect)(()=>{f.current=u.reset}),(0,J.useEffect)(()=>{e&&!l.current&&d.current({path:{assistant_id:t}}),l.current=e},[e,t]),(0,J.useEffect)(()=>()=>{s.current&&clearTimeout(s.current)},[]);let p=(0,J.useCallback)(()=>{f.current(),a(!1),s.current&&=(clearTimeout(s.current),null),r()},[r]),m=(0,J.useCallback)(e=>{navigator.clipboard.writeText(e).then(()=>{a(!0),s.current&&clearTimeout(s.current),s.current=setTimeout(()=>a(!1),2e3)})},[]),h=u.isSuccess&&u.data.token?Te({senderAssistantId:t,token:u.data.token}):``;return(0,Y.jsx)(_.Root,{open:e,onOpenChange:e=>{e||p()},children:(0,Y.jsxs)(_.Content,{size:`sm`,children:[(0,Y.jsx)(_.Header,{children:(0,Y.jsx)(_.Title,{children:`Share Connection Link`})}),(0,Y.jsx)(_.Body,{children:u.isPending?(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 py-2 text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:[(0,Y.jsx)(w,{className:`h-4 w-4 animate-spin`}),`Creating invite link…`]}):u.isError?(0,Y.jsxs)(`div`,{className:`space-y-3`,children:[(0,Y.jsx)(`p`,{role:`alert`,className:`!m-0 text-body-medium-lighter`,style:{color:`var(--system-negative-strong)`},children:`Failed to create invite link. Make sure A2A is enabled for your assistant.`}),(0,Y.jsx)(n,{variant:`outlined`,onClick:()=>u.mutate({path:{assistant_id:t}}),children:`Try Again`})]}):u.isSuccess?(0,Y.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,Y.jsx)(c,{variant:`body-medium-lighter`,style:{color:`var(--content-secondary)`},children:`Share this link with another assistant owner to establish a connection.`}),(0,Y.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Y.jsx)(g,{type:`text`,readOnly:!0,value:h,fullWidth:!0,wrapperClassName:`flex-1`,className:`font-mono`,onFocus:e=>e.currentTarget.select()}),(0,Y.jsx)(`button`,{type:`button`,onClick:()=>m(h),"aria-label":`Copy invite link`,className:`flex h-9 w-9 shrink-0 items-center justify-center rounded-md border border-[var(--border-base)] hover:bg-[var(--surface-hover)]`,children:i?(0,Y.jsx)(x,{className:`h-4 w-4`}):(0,Y.jsx)(I,{className:`h-4 w-4`})})]}),u.data.expiresAt!=null&&(0,Y.jsx)(c,{variant:`body-small-default`,style:{color:`var(--content-tertiary)`},children:mt(u.data.expiresAt)})]}):null}),(0,Y.jsx)(_.Footer,{children:(0,Y.jsx)(n,{variant:`outlined`,onClick:p,children:`Done`})})]})})}function gt(e){return(0,Y.jsx)(_t,{...e},e.contact.id)}function _t({contact:e,savePending:t,verifyPending:r,mergePending:i=!1,canMerge:a=!1,availableChannels:o,a2aEnabled:s,onSave:c,onMerge:l,onSetupChannel:u,onVerifyChannel:d,onRevokeChannel:f,onGenerateInviteLink:p}){let m=e.displayName.startsWith(`vellum-principal-`),h=m?``:e.displayName,[_,v]=(0,J.useState)(h),[y,b]=(0,J.useState)(e.notes??``),x=_.trim(),S=y.trim(),C=x!==h.trim()||S!==(e.notes??``).trim(),w=C&&!t,T=`${e.interactionCount} interaction${e.interactionCount===1?``:`s`}`;return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-6`,children:[(0,Y.jsx)(G,{title:m?`You`:`${e.displayName} (You)`,accessory:(0,Y.jsx)(X,{role:`guardian`}),compactAccessory:!0,subtitle:T,children:(0,Y.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,Y.jsx)(g,{label:`Name`,type:`text`,value:_,onChange:e=>v(e.target.value),placeholder:`Your name`,disabled:t,fullWidth:!0}),(0,Y.jsx)(g,{label:`Notes`,type:`text`,value:y,onChange:e=>b(e.target.value),placeholder:`Notes about yourself which AI will take into account`,disabled:t,fullWidth:!0}),(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,Y.jsx)(n,{variant:`primary`,onClick:()=>c({displayName:x||e.displayName,notes:S}),disabled:!w,children:t?`Saving…`:`Save`}),l?(0,Y.jsx)(n,{variant:`outlined`,onClick:l,disabled:!a||C||i||t,title:a?C?`Save your changes before merging`:void 0:`No other contacts available to merge`,children:i?`Merging…`:`Merge…`}):null]})]})}),(0,Y.jsx)(G,{title:`Channels`,subtitle:`Once verified, your assistant will recognize you when you message from these channels.`,children:(0,Y.jsx)(Ze,{contactChannels:e.channels,availableChannels:o,a2aEnabled:s,setupLabel:`Verify me`,verifyLoading:r,onSetupChannel:u,onVerifyChannel:d,onRevokeChannel:f})}),p?(0,Y.jsx)(Me,{onClick:p}):null]})}function vt(e){return typeof e==`string`&&Ne.includes(e)}function yt(e){return Pe.has(e)}async function bt(e){let{data:t,error:n,response:r}=await P.get({url:`/v1/assistants/{assistant_id}/channel-admission-policy/`,path:{assistant_id:e},throwOnError:!1});if(j(r,n,`Failed to load channel policies.`),!r.ok)throw new N(r.status,M(n,r,`Failed to load channel policies.`));return(t?.policies??[]).filter(e=>!yt(e.channelType)&&!Ie(e.channelType)).map(e=>({...e,policy:vt(e.policy)?e.policy:`trusted_contacts`}))}async function xt(e,t,n,r){if(yt(t))throw new N(403,`Channel "${t}" is internal and is not user-configurable.`);let{data:i,error:a,response:o}=await P.put({url:`/v1/assistants/{assistant_id}/channel-admission-policy/{channel_type}`,path:{assistant_id:e,channel_type:t},body:{policy:n,note:r??null},headers:{"Content-Type":`application/json`},throwOnError:!1});if(j(o,a,`Failed to save channel policy.`),!o.ok)throw new N(o.status,M(a,o,`Failed to save channel policy.`));if(!i?.policy)throw new N(500,`Gateway returned no policy in response.`);return i.policy}var St=new Set([`slack`,`telegram`,`phone`]);function Ct(e){let t=i(),n=ye.use.channelTrustFloors(),r=(0,J.useMemo)(()=>[`channel-admission-policy`,e],[e]),s=a({queryKey:r,queryFn:()=>bt(e),enabled:n}),c=(0,J.useMemo)(()=>{let e={};for(let t of s.data??[])St.has(t.channelType)&&(e[t.channelType]=t.policy);return e},[s.data]),l=o({mutationFn:({channelKey:t,policy:n})=>xt(e,t,n),onSuccess:()=>t.invalidateQueries({queryKey:r}),onError:K(`Failed to save channel policy`)}),u=(0,J.useCallback)((e,t)=>{l.mutate({channelKey:e,policy:t})},[l]);return n?{policies:c,savingKey:l.isPending?l.variables?.channelKey??null:null,isLoading:s.isPending,isError:s.isError,onChange:u}:{policies:void 0,savingKey:null,isLoading:!1,isError:!1,onChange:void 0}}var wt=[{id:`slack`,label:`Slack`,subtitle:`Message your assistant from Slack`,icon:`hash`,supportsVerification:!0,setupMessages:{guardian:`I'd like to verify my identity as your guardian on Slack. Can you help me set that up?`,contact:`I'd like to verify a contact's Slack identity. Can you walk me through it?`}},{id:`telegram`,label:`Telegram`,subtitle:`Message your assistant from Telegram`,icon:`send`,supportsVerification:!0,setupMessages:{guardian:`I'd like to verify my identity as your guardian on Telegram. Can you help me set that up?`,contact:`I'd like to verify a contact's Telegram identity. Can you walk me through it?`}},{id:`phone`,label:`Phone Calling`,subtitle:`Call or text your assistant via phone`,icon:`phone`,supportsVerification:!0,setupMessages:{guardian:`I'd like to verify my identity as your guardian for phone calls. Can you help me set that up?`,contact:`I'd like to verify a contact's phone number. Can you help me set that up?`}}],Tt={slack:`I want to reach you on Slack. Let's set it up.`,telegram:`I want to reach you on Telegram. Let's set it up.`,phone:`I want to be able to call you. Let's set you up with a phone number.`},Et=15e3,Dt=[];function Ot({assistantId:e,onStartSetupConversation:t}){let n=ye.use.a2aChannel(),r=ge.use.name(),s=i(),[c,l]=(0,J.useState)({kind:`assistant`}),[u,d]=(0,J.useState)(!1),[f,p]=(0,J.useState)(!1),[m,h]=(0,J.useState)(!1),g=r??`your assistant`,_=(0,J.useMemo)(()=>({path:{assistant_id:e}}),[e]),y=me(_),b=(0,J.useMemo)(()=>({path:{assistant_id:e}}),[e]),x=pe(b),S=a({...le(_),enabled:!!e,select:e=>e.contacts}),C=a({...fe(b),enabled:!!e,refetchInterval:Et,select:e=>e.snapshots}),w=a({...ue({path:{assistant_id:e}}),enabled:!!e,queryFn:async({signal:t})=>{let{data:n,error:r,response:i}=await ne({path:{assistant_id:e},signal:t,throwOnError:!1});if(!i||i.status===404)return{channels:wt};if(!i.ok)throw r??Error(`Failed to fetch channel availability`);return n},select:e=>e.channels}).data??Dt,T=S.data,E=(0,J.useMemo)(()=>T?.find(e=>e.role===`guardian`)??null,[T]),ie=(0,J.useMemo)(()=>T?.filter(e=>e.role!==`guardian`)??[],[T]),j=(0,J.useMemo)(()=>c.kind===`contact`?T?.find(e=>e.id===c.contactId)??null:null,[T,c]),M=C.data??[],N=(0,J.useMemo)(()=>!T||!j?[]:T.filter(e=>e.id!==j.id&&e.role!==`guardian`),[T,j]),P=N.length>0,he=(0,J.useRef)(!1);(0,J.useEffect)(()=>{he.current||E&&(he.current=!0,l({kind:`contact`,contactId:E.id}))},[E]);let _e=(0,J.useMemo)(()=>At(M),[M]),ve=_e.some(e=>e.key===`slack`&&e.status===`ready`),be=(0,J.useMemo)(()=>({path:{assistant_id:e}}),[e]),xe=a({...ce(be),enabled:ve,select:e=>e.threadMode}).data,F=Ct(e),I=(0,J.useCallback)(()=>s.invalidateQueries({queryKey:y}),[s,y]),L=(0,J.useCallback)(()=>s.invalidateQueries({queryKey:x}),[s,x]),R=o({mutationFn:()=>De(e,{displayName:`New Contact`}),onMutate:async()=>{await s.cancelQueries({queryKey:y})},onSuccess:e=>{A(s,_,t=>t?{...t,contacts:[...t.contacts,e]}:void 0),l({kind:`contact`,contactId:e.id})},onError:K(`Failed to create contact`),onSettled:()=>I()}),z=o({mutationFn:t=>Oe(e,t),onSuccess:(e,t)=>{A(s,_,e=>e?{...e,contacts:e.contacts.filter(e=>e.id!==t)}:void 0),l({kind:`assistant`})},onError:K(`Failed to delete contact`),onSettled:()=>I()}),B=o({mutationFn:({contactId:t,patch:n})=>De(e,{id:t,displayName:n.displayName,notes:n.notes}),onSuccess:e=>{A(s,_,t=>t?{...t,contacts:t.contacts.map(t=>t.id===e.id?e:t)}:void 0)},onError:K(`Failed to save contact`),onSettled:()=>I()}),V=oe({onMutate:async()=>{await s.cancelQueries({queryKey:y})},onSuccess:(e,t)=>{let n=e.contact,r=t.body.mergeId;n&&(A(s,_,e=>e?{...e,contacts:e.contacts.filter(e=>e.id!==r).map(e=>e.id===n.id?n:e)}:void 0),l({kind:`contact`,contactId:n.id})),h(!1),v.success(`Contacts merged`)},onSettled:()=>I()}),H=(0,J.useCallback)(e=>{l(e),p(!1),h(!1),V.reset()},[V]),U=(0,J.useCallback)(()=>{V.reset(),h(!0)},[V]),Se=(0,J.useCallback)(()=>{V.isPending||(h(!1),V.reset())},[V]),W=o({mutationFn:async t=>{let n={path:{assistant_id:e},throwOnError:!0};t===`slack`?await ee(n):t===`telegram`?await D(n):t===`phone`&&await O(n)},onSettled:()=>L()}),G=de({onSuccess:()=>I()}),Te=(0,J.useCallback)((t,n)=>{G.mutate({path:{assistant_id:e,contactChannelId:t},body:{status:`revoked`}})},[G,e]),ke=o({mutationFn:t=>te({path:{assistant_id:e},body:{botToken:t},throwOnError:!0}),onSettled:()=>L()}),Ae=o({mutationFn:({botToken:t,appToken:n})=>re({path:{assistant_id:e},body:{botToken:t,appToken:n},throwOnError:!0}),onSettled:()=>L()}),q=o({...se(),onSuccess:()=>{s.invalidateQueries({queryKey:ae(be)})}}),X=o({mutationFn:({accountSid:t,authToken:n})=>k({path:{assistant_id:e},body:{accountSid:t,authToken:n},throwOnError:!0}),onSettled:()=>L()}),je=(0,J.useCallback)(async e=>{await ke.mutateAsync(e)},[ke]),Me=(0,J.useCallback)(async(e,t)=>{await Ae.mutateAsync({botToken:e,appToken:t})},[Ae]),Ne=(0,J.useCallback)(t=>{q.mutate({path:{assistant_id:e},body:{threadMode:t}})},[q,e]),Pe=(0,J.useCallback)(async(e,t)=>{await X.mutateAsync({accountSid:e,authToken:t})},[X]),Fe=(0,J.useCallback)(()=>{R.isPending||R.mutate()},[R]),Ie=(0,J.useCallback)(()=>{d(!0)},[]),Le=(0,J.useCallback)(()=>{d(!1),I()},[I]),Re=(0,J.useCallback)(e=>{t&&t(Tt[e])},[t]),ze=(0,J.useCallback)(e=>{W.mutate(e)},[W]),Be=(0,J.useCallback)(e=>{if(!t)return;let n=w.find(t=>t.id===e)?.setupMessages.contact;n&&t(n)},[w,t]),Ve=(0,J.useCallback)(e=>{if(!t)return;let n=w.find(t=>t.id===e)?.setupMessages.guardian;n&&t(n)},[w,t]),Z=o({mutationFn:t=>Ee(e,t.channelId),onSuccess:()=>I(),onError:K(`Failed to verify channel`)}),Ue=(0,J.useCallback)(e=>{if(!j)return;let t=j.channels.find(t=>t.type===e&&t.status!==`revoked`);t&&Z.mutate({channelId:t.id})},[j,Z]),Q=z.isPending?z.variables:null,$=(0,J.useMemo)(()=>j?B.isPending&&B.variables?.contactId===j.id?{...j,displayName:B.variables.patch.displayName,notes:B.variables.patch.notes}:j:null,[j,B.isPending,B.variables]),We={loading:S.isLoading,assistantName:g,guardian:E?{id:E.id,displayName:E.displayName.startsWith(`vellum-principal-`)?``:E.displayName,role:E.role,channelTypes:Nt(E.channels,n)}:null,regularContacts:ie.filter(e=>e.id!==Q).map(e=>({id:e.id,displayName:e.displayName,role:e.role,contactType:e.contactType,channelTypes:Nt(e.channels,n)})),selection:c,onAddContact:Fe,addingContact:R.isPending};return(0,Y.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-4 overflow-hidden sm:flex-row sm:gap-6`,children:[(0,Y.jsx)(`div`,{className:`flex items-center sm:hidden`,children:(0,Y.jsx)(Ce,{onClick:()=>p(!0)})}),(0,Y.jsx)(we,{open:f,onClose:()=>p(!1),title:`Contacts`,children:(0,Y.jsx)(ft,{...We,onSelect:H})}),(0,Y.jsx)(`aside`,{className:`hidden min-h-0 w-[320px] shrink-0 overflow-y-auto self-stretch sm:block`,children:(0,Y.jsx)(ft,{...We,onSelect:H})}),(0,Y.jsx)(`section`,{className:`min-h-0 min-w-0 flex-1 overflow-y-auto`,children:c.kind===`assistant`||c.kind===`contact`&&c.contactId===Q?(0,Y.jsx)(He,{assistantName:g,channels:_e,pendingChannelKey:W.isPending?W.variables??null:null,slackThreadMode:xe,slackThreadModePending:q.isPending,channelPolicies:F.policies,policySavingKey:F.savingKey,policiesLoading:F.isLoading,policiesError:F.isError,onChannelPolicyChange:F.onChange,onSetup:t?Re:void 0,onDisconnect:ze,onSaveTelegramToken:je,onSaveSlackConfig:Me,onSlackThreadModeChange:Ne,onSaveTwilioCredentials:Pe,onGenerateInviteLink:n?Ie:void 0}):$?$.role===`guardian`?(0,Y.jsx)(gt,{contact:$,savePending:B.isPending,verifyPending:Z.isPending,mergePending:V.isPending,canMerge:P,availableChannels:w,a2aEnabled:n,onSave:e=>{B.mutate({contactId:$.id,patch:e})},onMerge:U,onSetupChannel:t?Ve:void 0,onVerifyChannel:Ue,onRevokeChannel:Te,onGenerateInviteLink:n?Ie:void 0}):(0,Y.jsx)($e,{contact:$,savePending:B.isPending,deletePending:z.isPending,verifyPending:Z.isPending,mergePending:V.isPending,canMerge:P,availableChannels:w,a2aEnabled:n,onSave:e=>{B.mutate({contactId:$.id,patch:e})},onDelete:()=>{z.mutate($.id)},onMerge:U,onSetupChannel:t?Be:void 0,onVerifyChannel:Ue,onRevokeChannel:Te}):(0,Y.jsx)(kt,{})}),j?(0,Y.jsx)(tt,{open:m,survivor:j,candidates:N,pending:V.isPending,errorMessage:V.error instanceof Error?V.error.message:V.error?`Failed to merge contacts`:null,onMerge:t=>V.mutate({path:{assistant_id:e},body:{keepId:j.id,mergeId:t}}),onClose:Se}):null,(0,Y.jsx)(ht,{open:u,assistantId:e,onClose:Le})]})}function kt(){return(0,Y.jsx)(`div`,{className:`flex h-full items-center justify-center py-16`,children:(0,Y.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:`Select a contact`})})}function At(e){let t=new Map;for(let n of e)t.set(n.channel,n);return[`slack`,`telegram`,`phone`].map(e=>{let n=t.get(e);return{key:e,status:jt(n),address:n?.channelHandle??void 0}})}function jt(e){return e?e.ready||e.setupStatus===`ready`?`ready`:e.setupStatus===`incomplete`?`incomplete`:`not_configured`:`not_configured`}var Mt={slack:`Slack`,telegram:`Telegram`,phone:`Phone`,email:`Email`,whatsapp:`WhatsApp`,a2a:`A2A`};function Nt(e,t){let n=new Set,r=[];for(let i of e){if(i.status===`revoked`)continue;let e=i.type.toLowerCase();n.has(e)||e===`a2a`&&!t||(n.add(e),r.push(Mt[e]??i.type))}return r}function Pt(){let e=r(),t=W();return(0,Y.jsx)(Ot,{assistantId:t,onStartSetupConversation:t=>{_e.getState().setMainView(`chat`);let n=be();ve.getState().setActiveConversationId(n),e(`${he.conversation(n)}?prompt=${encodeURIComponent(t)}`)}},t)}export{Pt as ContactsPageRoute};
|
|
9
|
+
Enable with extreme caution.`,confirmLabel:`Allow strangers`,destructive:!0}},Ve={slack:{label:`Slack`,Icon:L,disconnectMessage:`This clears the stored Slack bot and app tokens for this assistant. You can reconnect later.`},telegram:{label:`Telegram`,Icon:H,disconnectMessage:`This clears the stored Telegram bot token for this assistant. You can reconnect later.`},phone:{label:`Phone Calling`,Icon:z,disconnectMessage:`This clears the stored Twilio credentials for this assistant. You can reconnect later.`}};function He({assistantName:e,channels:t,pendingChannelKey:n=null,slackThreadMode:r,slackThreadModePending:i=!1,channelPolicies:a,policySavingKey:o=null,policiesLoading:s=!1,policiesError:c=!1,onChannelPolicyChange:l,onSetup:u,onDisconnect:d,onSaveTelegramToken:f,onSaveSlackConfig:p,onSlackThreadModeChange:h,onSaveTwilioCredentials:g,onGenerateInviteLink:_}){let v=e.trim()||`your assistant`,[y,b]=(0,J.useState)(null),[x,S]=(0,J.useState)(new Set),[C,w]=(0,J.useState)(null),T=y?Ve[y]:null,E=C?Be[C.policy]:null,D=(e,t)=>{if(Be[t]){w({channelKey:e,policy:t});return}l?.(e,t)},O=e=>{S(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})};return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-6`,children:[(0,Y.jsx)(G,{title:`${v} (Your Assistant)`,accessory:(0,Y.jsx)(X,{role:`assistant`}),compactAccessory:!0}),(0,Y.jsx)(G,{title:`Channels`,subtitle:`Manage where ${v} can be reached.`,children:(0,Y.jsx)(`div`,{className:`flex flex-col`,children:t.map((e,t)=>(0,Y.jsxs)(`div`,{children:[t>0?(0,Y.jsx)(`div`,{className:`border-t`,style:{borderColor:`var(--border-base)`}}):null,(0,Y.jsx)(Z,{channel:e,pending:n===e.key,expanded:x.has(e.key),onToggleExpand:()=>O(e.key),onSetup:u?()=>u(e.key):void 0,onDisconnect:d?()=>b(e.key):void 0,onSaveTelegramToken:f,onSaveSlackConfig:p,slackThreadMode:r,slackThreadModePending:i,onSlackThreadModeChange:h,onSaveTwilioCredentials:g,policy:a?.[e.key],policySaving:o===e.key,policyLoading:s,policyError:c,onPolicyChange:l?t=>D(e.key,t):void 0})]},e.key))})}),_?(0,Y.jsx)(Me,{onClick:_}):null,(0,Y.jsx)(m,{open:y!==null,title:`Disconnect ${T?.label??``}?`,message:T?.disconnectMessage??``,confirmLabel:`Disconnect`,destructive:!0,onConfirm:()=>{y&&d&&d(y),b(null)},onCancel:()=>b(null)}),(0,Y.jsx)(m,{open:C!==null,title:E?.title??``,message:E?.message??``,confirmLabel:E?.confirmLabel??`Confirm`,destructive:E?.destructive??!1,onConfirm:()=>{C&&l?.(C.channelKey,C.policy),w(null)},onCancel:()=>w(null)})]})}function Z({channel:e,pending:t,expanded:r,onToggleExpand:i,onSetup:a,onDisconnect:o,onSaveTelegramToken:s,onSaveSlackConfig:c,slackThreadMode:l,slackThreadModePending:u=!1,onSlackThreadModeChange:d,onSaveTwilioCredentials:f,policy:p,policySaving:m=!1,policyLoading:h=!1,policyError:g=!1,onPolicyChange:_}){let v=Ve[e.key],y=e.status===`ready`;return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-2 py-4`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,Y.jsx)(`button`,{type:`button`,className:`flex shrink-0 items-center justify-center`,onClick:i,style:{color:`var(--content-secondary)`},children:r?(0,Y.jsx)(xe,{className:`h-4 w-4`}):(0,Y.jsx)(S,{className:`h-4 w-4`})}),(0,Y.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:v.label}),e.address?(0,Y.jsx)(`span`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:e.address}):null,(0,Y.jsx)(`div`,{className:`ml-auto flex items-center gap-2`,children:y?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-1 h-8 px-2.5 rounded-md whitespace-nowrap select-none text-body-small-emphasised leading-none bg-[var(--content-default)] text-[var(--surface-base)]`,children:[(0,Y.jsx)(R,{className:`h-3 w-3`}),`Connected`]}),(0,Y.jsx)(n,{type:`button`,variant:`danger`,onClick:o,disabled:!o||t,children:t?`Disconnecting…`:`Disconnect`})]}):(0,Y.jsx)(n,{type:`button`,variant:`outlined`,onClick:a,disabled:!a||t,children:t?`Opening…`:`Set up`})})]}),!y&&e.key===`telegram`&&r?(0,Y.jsx)(Q,{onSave:s}):null,!y&&e.key===`slack`&&r?(0,Y.jsx)($,{onSave:c}):null,!y&&e.key===`phone`&&r?(0,Y.jsx)(Ge,{onSave:f}):null,y&&r?(0,Y.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[_?(0,Y.jsx)(Ue,{policy:p,saving:m,loading:h,error:g,onChange:_}):null,e.key===`telegram`?(0,Y.jsx)(Q,{onSave:s}):null,e.key===`slack`?(0,Y.jsx)(We,{threadMode:l,pending:u,onThreadModeChange:d}):null,e.key===`phone`?(0,Y.jsx)(Ge,{onSave:f}):null]}):null]})}function Ue({policy:e,saving:t=!1,loading:n=!1,error:r=!1,onChange:i}){let a=e??`trusted_contacts`;return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-2 pl-7`,children:[(0,Y.jsx)(c,{as:`span`,variant:`body-small-emphasised`,className:`text-[color:var(--content-secondary)]`,children:`Who Can Reach`}),n?(0,Y.jsx)(c,{as:`span`,variant:`body-small-default`,className:`text-[color:var(--content-tertiary)]`,children:`Loading…`}):r?(0,Y.jsx)(c,{as:`span`,variant:`body-small-default`,className:`text-[color:var(--content-negative)]`,children:`Couldn’t load this setting. Try reopening this page.`}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`div`,{style:{maxWidth:280},children:(0,Y.jsx)(u,{value:a,onChange:i,options:ze,disabled:t,"aria-label":`Channel trust floor`})}),(0,Y.jsx)(c,{as:`span`,variant:`body-small-default`,className:`text-[color:var(--content-tertiary)]`,children:Re[a]})]})]})}function Q({onSave:e}){let[t,r]=(0,J.useState)(``),[i,a]=(0,J.useState)(!1),[o,s]=(0,J.useState)(null),c=t.trim().length>0&&!i;return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-3 pl-7`,children:[(0,Y.jsx)(g,{label:`Bot Token`,type:`password`,value:t,onChange:e=>r(e.target.value),placeholder:`Paste your Telegram bot token`,disabled:i,fullWidth:!0}),o?(0,Y.jsx)(`p`,{className:`text-label-small`,style:{color:`var(--content-negative)`},children:o}):null,(0,Y.jsx)(`div`,{children:(0,Y.jsx)(n,{type:`button`,onClick:async()=>{if(!(!e||!c)){a(!0),s(null);try{await e(t.trim()),r(``)}catch(e){s(e instanceof Error?e.message:`Failed to save`)}finally{a(!1)}}},disabled:!c,children:i?`Saving…`:`Save`})})]})}function $({onSave:e}){let[t,r]=(0,J.useState)(``),[i,a]=(0,J.useState)(``),[o,s]=(0,J.useState)(!1),[c,l]=(0,J.useState)(null),u=t.trim().length>0&&i.trim().length>0&&!o;return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-3 pl-7`,children:[(0,Y.jsx)(g,{label:`Bot Token`,type:`password`,value:t,onChange:e=>r(e.target.value),placeholder:`xoxb-...`,disabled:o,fullWidth:!0}),(0,Y.jsx)(g,{label:`App Token`,type:`password`,value:i,onChange:e=>a(e.target.value),placeholder:`xapp-...`,disabled:o,fullWidth:!0}),c?(0,Y.jsx)(`p`,{className:`text-label-small`,style:{color:`var(--content-negative)`},children:c}):null,(0,Y.jsx)(`div`,{children:(0,Y.jsx)(n,{type:`button`,onClick:async()=>{if(!(!e||!u)){s(!0),l(null);try{await e(t.trim(),i.trim()),r(``),a(``)}catch(e){l(e instanceof Error?e.message:`Failed to save`)}finally{s(!1)}}},disabled:!u,children:o?`Saving…`:`Save`})})]})}function We({threadMode:e,pending:t=!1,onThreadModeChange:n}){return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-3 pl-7`,children:[(0,Y.jsx)(c,{as:`span`,variant:`body-small-emphasised`,className:`text-[color:var(--content-secondary)]`,children:`Thread Behavior`}),(0,Y.jsxs)(p,{value:e??`mention_only`,onValueChange:e=>n?.(e),disabled:t||!n,"aria-label":`Slack thread behavior`,children:[(0,Y.jsx)(f,{value:`mention_only`,label:`Mentions only`,helperText:`Bot only responds when @mentioned.`}),(0,Y.jsx)(f,{value:`mention_then_thread`,label:`Follow threads after first mention`,helperText:`After an @mention in a thread, bot listens to all subsequent replies.`})]})]})}function Ge({onSave:e}){let[t,r]=(0,J.useState)(``),[i,a]=(0,J.useState)(``),[o,s]=(0,J.useState)(!1),[c,l]=(0,J.useState)(null),u=t.trim().length>0&&i.trim().length>0&&!o;return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-3 pl-7`,children:[(0,Y.jsx)(g,{label:`Account SID`,type:`text`,value:t,onChange:e=>r(e.target.value),placeholder:`ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx`,disabled:o,fullWidth:!0}),(0,Y.jsx)(g,{label:`Auth Token`,type:`password`,value:i,onChange:e=>a(e.target.value),placeholder:`Twilio auth token`,disabled:o,fullWidth:!0}),c?(0,Y.jsx)(`p`,{className:`text-label-small`,style:{color:`var(--content-negative)`},children:c}):null,(0,Y.jsx)(`div`,{children:(0,Y.jsx)(n,{type:`button`,onClick:async()=>{if(!(!e||!u)){s(!0),l(null);try{await e(t.trim(),i.trim()),r(``),a(``)}catch(e){l(e instanceof Error?e.message:`Failed to save`)}finally{s(!1)}}},disabled:!u,children:o?`Saving…`:`Save`})})]})}var Ke=new Set([`telegram`,`phone`,`vellum`,`whatsapp`,`slack`,`email`,`platform`,`a2a`]);function qe(e){return Ke.has(e)}function Je(e,t){return e.id===`a2a`?t&&t.status!==`revoked`?{kind:`connected`}:{kind:`setup`}:t?.status===`verified`||t?.status===`active`&&t?.verifiedAt!=null?{kind:`verified`}:t?.status===`blocked`?{kind:`none`}:t&&t.status!==`revoked`?{kind:`unverified`}:{kind:`setup`}}function Ye(e,t,n){let r=[],i=new Set;if(e)for(let t of e)t.id===`a2a`&&!n||(r.push(t),i.add(t.id));for(let e of t)e.status===`revoked`||i.has(e.type)||e.type===`a2a`&&!n||qe(e.type)&&(r.push({id:e.type,label:e.type.charAt(0).toUpperCase()+e.type.slice(1),subtitle:``,icon:`help-circle`,supportsVerification:!1,setupMessages:{guardian:``,contact:``}}),i.add(e.type));return r}function Xe({name:e,className:t,style:n}){switch(e){case`bot`:return(0,Y.jsx)(U,{className:t,style:n});case`hash`:return(0,Y.jsx)(L,{className:t,style:n});case`send`:return(0,Y.jsx)(H,{className:t,style:n});case`phone`:return(0,Y.jsx)(z,{className:t,style:n});case`mail`:return(0,Y.jsx)(V,{className:t,style:n});case`message-square`:return(0,Y.jsx)(B,{className:t,style:n});default:return(0,Y.jsx)(ke,{className:t,style:n})}}function Ze({contactChannels:e,availableChannels:t,a2aEnabled:n,setupLabel:r=`Invite`,verifyLoading:i,verifySubject:a=`self`,onSetupChannel:o,onVerifyChannel:s,onRevokeChannel:c}){let[l,u]=(0,J.useState)(null),[d,f]=(0,J.useState)(null),p=new Map;for(let t of e)t.status!==`revoked`&&(p.has(t.type)||p.set(t.type,t));return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`div`,{className:`flex flex-col`,children:Ye(t,e,n).map((e,t)=>{let n=p.get(e.id);return(0,Y.jsxs)(`div`,{children:[t>0&&(0,Y.jsx)(`div`,{className:`border-t`,style:{borderColor:`var(--border-base)`}}),(0,Y.jsx)(Qe,{info:e,existing:n,setupLabel:r,verifyLoading:i,onSetup:o?()=>o(e.id):void 0,onVerify:s&&e.supportsVerification?()=>u(e):void 0,onRevoke:c&&n?()=>f({channelId:n.id,channel:e}):void 0})]},e.id)})}),l&&(0,Y.jsx)(m,{open:!0,title:`Verify ${l.label}`,message:a===`contact`?`This will mark this contact's ${l.label} channel as verified. Your assistant will recognize them when they reach out from it.`:`This will mark your ${l.label} channel as verified. Your assistant will recognize you when you reach out from it.`,confirmLabel:`Verify`,onConfirm:()=>{l&&(s?.(l.id),u(null))},onCancel:()=>u(null)}),d&&(0,Y.jsx)(m,{open:!0,title:`Revoke ${d.channel.label}`,message:`This will disconnect the verified channel. The contact will need to re-verify to use this channel again.`,confirmLabel:`Revoke`,destructive:!0,onConfirm:()=>{c?.(d.channelId,d.channel.id),f(null)},onCancel:()=>f(null)})]})}function Qe({info:e,existing:t,setupLabel:r,verifyLoading:i,onSetup:a,onVerify:o,onRevoke:s}){let c=Je(e,t);return(0,Y.jsxs)(`div`,{className:`flex items-center gap-3 py-4`,children:[(0,Y.jsx)(Xe,{name:e.icon,className:`h-4 w-4 shrink-0`,style:{color:`var(--content-secondary)`}}),(0,Y.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e.label}),t?.address?(0,Y.jsx)(`span`,{className:`truncate text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:t.address}):null,(0,Y.jsx)(`div`,{className:`ml-auto flex shrink-0 items-center gap-2`,children:c.kind===`connected`?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-1 h-8 px-2.5 rounded-md whitespace-nowrap select-none text-body-small-emphasised leading-none bg-[var(--content-default)] text-[var(--surface-base)]`,children:[(0,Y.jsx)(R,{className:`h-3 w-3`}),`Connected`]}),s?(0,Y.jsx)(n,{variant:`danger`,onClick:s,children:`Revoke`}):null]}):c.kind===`verified`?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-1 h-8 px-2.5 rounded-md whitespace-nowrap select-none text-body-small-emphasised leading-none bg-[var(--content-default)] text-[var(--surface-base)]`,children:[(0,Y.jsx)(R,{className:`h-3 w-3`}),`Verified`]}),s?(0,Y.jsx)(n,{variant:`danger`,onClick:s,children:`Revoke`}):null]}):c.kind===`unverified`?(0,Y.jsx)(n,{variant:`outlined`,onClick:o,disabled:!o||i,children:i?`Verifying…`:`Verify`}):c.kind===`setup`?e.id===`a2a`?null:(0,Y.jsx)(n,{variant:`outlined`,onClick:a,disabled:!a,children:r}):null})]})}function $e(e){return(0,Y.jsx)(et,{...e},e.contact.id)}function et({contact:e,savePending:t,deletePending:r,verifyPending:i,mergePending:a=!1,canMerge:o=!1,availableChannels:s,a2aEnabled:c,onSave:l,onDelete:u,onMerge:d,onSetupChannel:f,onVerifyChannel:p,onRevokeChannel:h}){let _=e.displayName===`New Contact`,[v,y]=(0,J.useState)(_?``:e.displayName),[b,x]=(0,J.useState)(e.notes??``),[S,C]=(0,J.useState)(!1),w=v.trim(),T=b.trim(),E=_?``:e.displayName,D=e.notes??``,O=w!==E||T!==D,ee=w.length>0&&O&&!t&&!r,k=_&&e.channels.length===0&&e.interactionCount===0,te=w||e.displayName,ne=`${e.interactionCount} interaction${e.interactionCount===1?``:`s`}`;return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-6`,children:[(0,Y.jsx)(G,{title:te,accessory:(0,Y.jsx)(X,{role:e.role,contactType:e.contactType}),compactAccessory:!0,subtitle:ne,children:(0,Y.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,Y.jsx)(g,{label:`Name`,type:`text`,value:v,onChange:e=>y(e.target.value),placeholder:`Give this human a name`,autoFocus:_,disabled:t||r,fullWidth:!0}),(0,Y.jsx)(g,{label:`Notes`,type:`text`,value:b,onChange:e=>x(e.target.value),placeholder:`Optional notes about the human which AI will take into account`,disabled:t||r,fullWidth:!0}),(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,Y.jsx)(n,{type:`button`,onClick:()=>l({displayName:w,notes:T}),disabled:!ee,children:t?`Saving…`:`Save`}),d?(0,Y.jsx)(n,{type:`button`,variant:`outlined`,onClick:d,disabled:!o||k||O||a||t||r,title:o?k?`Save this contact before merging`:O?`Save your changes before merging`:void 0:`No other contacts available to merge`,children:a?`Merging…`:`Merge…`}):null,(0,Y.jsx)(n,{type:`button`,variant:`danger`,onClick:()=>{k?u():C(!0)},disabled:r,children:r?`Deleting…`:`Delete Contact`})]})]})}),(0,Y.jsx)(G,{title:`Channels`,subtitle:`Once verified, your assistant will recognize this contact when they message from these channels.`,children:(0,Y.jsx)(Ze,{contactChannels:e.channels,availableChannels:s,a2aEnabled:c,verifyLoading:i,verifySubject:`contact`,onSetupChannel:f,onVerifyChannel:p,onRevokeChannel:h})}),(0,Y.jsx)(m,{open:S,title:`Delete ${e.displayName}?`,message:`This will permanently delete this contact and all their channels. This action cannot be undone.`,confirmLabel:`Delete`,destructive:!0,onConfirm:()=>{C(!1),u()},onCancel:()=>C(!1)})]})}function tt(e){return(0,Y.jsx)(nt,{...e},`${e.survivor.id}:${e.open?`open`:`closed`}`)}function nt({open:e,survivor:t,candidates:r,pending:i,errorMessage:a,onMerge:o,onClose:s}){let[l,u]=(0,J.useState)(``),[d,f]=(0,J.useState)(null);(0,J.useEffect)(()=>{d&&!r.some(e=>e.id===d)&&f(null)},[r,d]);let p=(0,J.useMemo)(()=>{let e=l.trim().toLowerCase();return e?r.filter(t=>t.displayName.toLowerCase().includes(e)):r},[r,l]),m=d?r.find(e=>e.id===d)??null:null,h=st(t);return(0,Y.jsx)(_.Root,{open:e,onOpenChange:e=>{!e&&!i&&s()},children:(0,Y.jsxs)(_.Content,{size:`md`,children:[(0,Y.jsxs)(_.Header,{children:[(0,Y.jsx)(_.Title,{icon:q,children:m?`Merge "${m.displayName}" into ${h}?`:`Merge another contact into ${h}`}),(0,Y.jsx)(_.Description,{children:m?`Channels and notes from the merged contact will move over. The merged contact will be deleted.`:`The contact you pick will be deleted. Its channels and notes will be added to this one.`})]}),(0,Y.jsxs)(_.Body,{className:`flex flex-col gap-3`,children:[m?(0,Y.jsx)(at,{survivor:t,donor:m}):r.length===0?(0,Y.jsx)(ot,{}):(0,Y.jsx)(rt,{search:l,onSearch:u,candidates:p,onPick:f}),a?(0,Y.jsx)(c,{as:`p`,variant:`body-small-default`,className:`text-(--system-negative-strong)`,role:`alert`,children:a}):null]}),(0,Y.jsx)(_.Footer,{children:m?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(n,{variant:`outlined`,onClick:()=>f(null),disabled:i,leftIcon:(0,Y.jsx)(b,{"aria-hidden":!0}),children:`Back`}),(0,Y.jsx)(n,{variant:`danger`,onClick:()=>o(m.id),disabled:i,children:i?`Merging…`:`Merge`})]}):(0,Y.jsx)(n,{variant:`outlined`,onClick:s,disabled:i,children:`Cancel`})})]})})}function rt({search:e,onSearch:t,candidates:n,onPick:r}){return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(g,{type:`text`,value:e,onChange:e=>t(e.target.value),placeholder:`Search contacts`,leftIcon:(0,Y.jsx)(F,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),fullWidth:!0}),(0,Y.jsx)(`div`,{className:`flex max-h-[320px] min-h-[120px] flex-col gap-1 overflow-y-auto`,role:`listbox`,"aria-label":`Select a contact to merge`,children:n.length===0?(0,Y.jsx)(c,{as:`p`,variant:`body-small-default`,className:`px-3 py-4 text-center text-(--content-tertiary)`,children:`No matching contacts`}):n.map(e=>(0,Y.jsx)(it,{contact:e,onPick:()=>r(e.id)},e.id))})]})}function it({contact:e,onPick:t}){let n=dt(e).join(` | `)||void 0;return(0,Y.jsx)(d,{asChild:!0,label:``,children:(0,Y.jsx)(`button`,{type:`button`,onClick:t,role:`option`,"aria-selected":`false`,className:`flex h-auto w-full items-center gap-2 rounded-[6px] px-[8px] py-2 text-left`,children:(0,Y.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,Y.jsx)(`span`,{className:`truncate text-body-medium-default`,children:e.displayName}),n?(0,Y.jsx)(`span`,{className:`truncate text-body-small-default text-(--content-tertiary)`,children:n}):null]})})})}function at({survivor:e,donor:t}){let n=st(e),{moved:r,duplicates:i}=ut(e,t);return(0,Y.jsxs)(`ul`,{className:`flex flex-col gap-2 text-body-medium-lighter text-(--content-secondary)`,children:[(0,Y.jsxs)(`li`,{children:[(0,Y.jsxs)(`span`,{className:`text-(--content-default)`,children:[`“`,t.displayName,`”`]}),` `,`will be deleted.`]}),(0,Y.jsx)(`li`,{children:r.length===0?`No new channels will move to ${n}.`:`${r.length} channel${r.length===1?``:`s`} will move to ${n}: ${r.map(e=>lt(e.type)).join(`, `)}.`}),i.length>0?(0,Y.jsxs)(`li`,{className:`text-(--content-tertiary)`,children:[i.length,` duplicate channel`,i.length===1?``:`s`,` already on `,n,` `,`(skipped).`]}):null,t.notes?(0,Y.jsx)(`li`,{children:`Notes from the merged contact will be appended.`}):null,(0,Y.jsx)(`li`,{className:`text-(--content-tertiary)`,children:`This cannot be undone.`})]})}function ot(){return(0,Y.jsx)(c,{as:`p`,variant:`body-medium-lighter`,className:`px-3 py-6 text-center text-(--content-tertiary)`,children:`No other contacts available to merge.`})}function st(e){return e.role===`guardian`?!e.displayName||e.displayName.startsWith(`vellum-principal-`)?`you`:`${e.displayName} (you)`:e.displayName||`this contact`}var ct={slack:`Slack`,telegram:`Telegram`,phone:`Phone`,email:`Email`,whatsapp:`WhatsApp`};function lt(e){return ct[e.toLowerCase()]??e}function ut(e,t){let n=[],r=[];for(let i of t.channels)i.status!==`revoked`&&(e.channels.some(e=>e.type===i.type&&e.address.toLowerCase()===i.address.toLowerCase())?r.push(i):n.push(i));return{moved:n,duplicates:r}}function dt(e){let t=new Set,n=[];for(let r of e.channels){if(r.status===`revoked`)continue;let e=r.type.toLowerCase();t.has(e)||(t.add(e),n.push(ct[e]??r.type))}return n}function ft({loading:e,guardian:t,assistantName:r,regularContacts:i,selection:a,onSelect:o,onAddContact:s,addingContact:c=!1}){let[u,d]=(0,J.useState)(``),f=u.trim()?i.filter(e=>e.displayName.toLowerCase().includes(u.trim().toLowerCase())):i;return(0,Y.jsx)(l,{className:`h-full`,children:(0,Y.jsxs)(`div`,{className:`flex h-full min-w-0 flex-col gap-4`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,Y.jsx)(`h2`,{className:`text-title-medium`,style:{color:`var(--content-default)`},children:`Entries`}),(0,Y.jsx)(n,{type:`button`,variant:`ghost`,iconOnly:c?(0,Y.jsx)(w,{className:`animate-spin`,"aria-hidden":!0}):(0,Y.jsx)(Se,{"aria-hidden":!0}),onClick:s,disabled:c,"aria-label":`Add contact`,tintColor:`var(--content-secondary)`})]}),(0,Y.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[t?(0,Y.jsx)(pt,{name:t.displayName?`${t.displayName} (You)`:`You`,role:t.role,channelTypes:t.channelTypes,selected:a?.kind===`contact`&&a.contactId===t.id,onClick:()=>o({kind:`contact`,contactId:t.id}),trailingIcon:`pencil`}):null,(0,Y.jsx)(pt,{name:r?.trim()||`Your Assistant`,role:`assistant`,selected:a?.kind===`assistant`,onClick:()=>o({kind:`assistant`}),trailingIcon:`more`})]}),(0,Y.jsx)(`div`,{className:`border-t`,style:{borderColor:`var(--border-base)`}}),i.length>0?(0,Y.jsx)(g,{type:`text`,value:u,onChange:e=>d(e.target.value),placeholder:`Search Contacts`,leftIcon:(0,Y.jsx)(F,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),fullWidth:!0}):null,i.length>0?(0,Y.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[f.map(e=>(0,Y.jsx)(pt,{name:e.displayName,role:e.role,contactType:e.contactType,channelTypes:e.channelTypes,selected:a?.kind===`contact`&&a.contactId===e.id,onClick:()=>o({kind:`contact`,contactId:e.id}),trailingIcon:`more`},e.id)),f.length===0?(0,Y.jsx)(`p`,{className:`px-3 py-4 text-center text-body-small-default`,style:{color:`var(--content-tertiary)`},children:`No matching contacts`}):null]}):e?null:(0,Y.jsx)(n,{type:`button`,variant:`ghost`,onClick:s,disabled:c,tintColor:`var(--primary-base)`,leftIcon:c?(0,Y.jsx)(w,{className:`animate-spin`,"aria-hidden":!0}):(0,Y.jsx)(E,{"aria-hidden":!0}),children:`Add Contact`})]})})}function pt({name:e,role:t,contactType:n,channelTypes:r,selected:i,onClick:a,trailingIcon:o}){let s=r&&r.length>0?r.join(` | `):void 0;return(0,Y.jsx)(d,{asChild:!0,active:i,label:``,trailingAction:o===`pencil`?(0,Y.jsx)(T,{className:`h-3.5 w-3.5`,"aria-hidden":!0}):o===`more`?(0,Y.jsx)(Ae,{className:`h-3.5 w-3.5`,"aria-hidden":!0}):void 0,children:(0,Y.jsxs)(`button`,{type:`button`,onClick:a,className:`flex h-auto w-full items-center gap-2 rounded-[6px] px-[8px] py-2 text-left`,children:[(0,Y.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,Y.jsx)(`span`,{className:`truncate text-body-medium-default`,children:e}),s?(0,Y.jsx)(`span`,{className:`truncate text-body-small-default`,style:{color:`var(--content-tertiary)`},children:s}):null]}),(0,Y.jsx)(`span`,{className:`shrink-0`,children:(0,Y.jsx)(X,{role:t,contactType:n})})]})})}function mt(e){let t=e-Date.now();if(t<=0)return`Expired`;let n=Math.ceil(t/(1e3*60*60*24));return n===1?`Expires in 1 day`:`Expires in ${n} days`}function ht({open:e,assistantId:t,onClose:r}){let[i,o]=(0,J.useState)(!1),s=(0,J.useRef)(null),l=(0,J.useRef)(!1),u=a({...ie({path:{assistant_id:t}})}),d=(0,J.useRef)(u.mutate);(0,J.useLayoutEffect)(()=>{d.current=u.mutate});let f=(0,J.useRef)(u.reset);(0,J.useLayoutEffect)(()=>{f.current=u.reset}),(0,J.useEffect)(()=>{e&&!l.current&&d.current({path:{assistant_id:t}}),l.current=e},[e,t]),(0,J.useEffect)(()=>()=>{s.current&&clearTimeout(s.current)},[]);let p=(0,J.useCallback)(()=>{f.current(),o(!1),s.current&&=(clearTimeout(s.current),null),r()},[r]),m=(0,J.useCallback)(e=>{navigator.clipboard.writeText(e).then(()=>{o(!0),s.current&&clearTimeout(s.current),s.current=setTimeout(()=>o(!1),2e3)})},[]),h=u.isSuccess&&u.data.token?Te({senderAssistantId:t,token:u.data.token}):``;return(0,Y.jsx)(_.Root,{open:e,onOpenChange:e=>{e||p()},children:(0,Y.jsxs)(_.Content,{size:`sm`,children:[(0,Y.jsx)(_.Header,{children:(0,Y.jsx)(_.Title,{children:`Share Connection Link`})}),(0,Y.jsx)(_.Body,{children:u.isPending?(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 py-2 text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:[(0,Y.jsx)(w,{className:`h-4 w-4 animate-spin`}),`Creating invite link…`]}):u.isError?(0,Y.jsxs)(`div`,{className:`space-y-3`,children:[(0,Y.jsx)(`p`,{role:`alert`,className:`!m-0 text-body-medium-lighter`,style:{color:`var(--system-negative-strong)`},children:`Failed to create invite link. Make sure A2A is enabled for your assistant.`}),(0,Y.jsx)(n,{variant:`outlined`,onClick:()=>u.mutate({path:{assistant_id:t}}),children:`Try Again`})]}):u.isSuccess?(0,Y.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,Y.jsx)(c,{variant:`body-medium-lighter`,style:{color:`var(--content-secondary)`},children:`Share this link with another assistant owner to establish a connection.`}),(0,Y.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Y.jsx)(g,{type:`text`,readOnly:!0,value:h,fullWidth:!0,wrapperClassName:`flex-1`,className:`font-mono`,onFocus:e=>e.currentTarget.select()}),(0,Y.jsx)(`button`,{type:`button`,onClick:()=>m(h),"aria-label":`Copy invite link`,className:`flex h-9 w-9 shrink-0 items-center justify-center rounded-md border border-[var(--border-base)] hover:bg-[var(--surface-hover)]`,children:i?(0,Y.jsx)(x,{className:`h-4 w-4`}):(0,Y.jsx)(I,{className:`h-4 w-4`})})]}),u.data.expiresAt!=null&&(0,Y.jsx)(c,{variant:`body-small-default`,style:{color:`var(--content-tertiary)`},children:mt(u.data.expiresAt)})]}):null}),(0,Y.jsx)(_.Footer,{children:(0,Y.jsx)(n,{variant:`outlined`,onClick:p,children:`Done`})})]})})}function gt(e){return(0,Y.jsx)(_t,{...e},e.contact.id)}function _t({contact:e,savePending:t,verifyPending:r,mergePending:i=!1,canMerge:a=!1,availableChannels:o,a2aEnabled:s,onSave:c,onMerge:l,onSetupChannel:u,onVerifyChannel:d,onRevokeChannel:f,onGenerateInviteLink:p}){let m=e.displayName.startsWith(`vellum-principal-`),h=m?``:e.displayName,[_,v]=(0,J.useState)(h),[y,b]=(0,J.useState)(e.notes??``),x=_.trim(),S=y.trim(),C=x!==h.trim()||S!==(e.notes??``).trim(),w=C&&!t,T=`${e.interactionCount} interaction${e.interactionCount===1?``:`s`}`;return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-6`,children:[(0,Y.jsx)(G,{title:m?`You`:`${e.displayName} (You)`,accessory:(0,Y.jsx)(X,{role:`guardian`}),compactAccessory:!0,subtitle:T,children:(0,Y.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,Y.jsx)(g,{label:`Name`,type:`text`,value:_,onChange:e=>v(e.target.value),placeholder:`Your name`,disabled:t,fullWidth:!0}),(0,Y.jsx)(g,{label:`Notes`,type:`text`,value:y,onChange:e=>b(e.target.value),placeholder:`Notes about yourself which AI will take into account`,disabled:t,fullWidth:!0}),(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,Y.jsx)(n,{variant:`primary`,onClick:()=>c({displayName:x||e.displayName,notes:S}),disabled:!w,children:t?`Saving…`:`Save`}),l?(0,Y.jsx)(n,{variant:`outlined`,onClick:l,disabled:!a||C||i||t,title:a?C?`Save your changes before merging`:void 0:`No other contacts available to merge`,children:i?`Merging…`:`Merge…`}):null]})]})}),(0,Y.jsx)(G,{title:`Channels`,subtitle:`Once verified, your assistant will recognize you when you message from these channels.`,children:(0,Y.jsx)(Ze,{contactChannels:e.channels,availableChannels:o,a2aEnabled:s,setupLabel:`Verify me`,verifyLoading:r,onSetupChannel:u,onVerifyChannel:d,onRevokeChannel:f})}),p?(0,Y.jsx)(Me,{onClick:p}):null]})}function vt(e){return typeof e==`string`&&Ne.includes(e)}function yt(e){return Pe.has(e)}async function bt(e){let{data:t,error:n,response:r}=await P.get({url:`/v1/assistants/{assistant_id}/channel-admission-policy/`,path:{assistant_id:e},throwOnError:!1});if(j(r,n,`Failed to load channel policies.`),!r.ok)throw new N(r.status,M(n,r,`Failed to load channel policies.`));return(t?.policies??[]).filter(e=>!yt(e.channelType)&&!Ie(e.channelType)).map(e=>({...e,policy:vt(e.policy)?e.policy:`trusted_contacts`}))}async function xt(e,t,n,r){if(yt(t))throw new N(403,`Channel "${t}" is internal and is not user-configurable.`);let{data:i,error:a,response:o}=await P.put({url:`/v1/assistants/{assistant_id}/channel-admission-policy/{channel_type}`,path:{assistant_id:e,channel_type:t},body:{policy:n,note:r??null},headers:{"Content-Type":`application/json`},throwOnError:!1});if(j(o,a,`Failed to save channel policy.`),!o.ok)throw new N(o.status,M(a,o,`Failed to save channel policy.`));if(!i?.policy)throw new N(500,`Gateway returned no policy in response.`);return i.policy}var St=new Set([`slack`,`telegram`,`phone`]);function Ct(e){let t=i(),n=ye.use.channelTrustFloors(),r=(0,J.useMemo)(()=>[`channel-admission-policy`,e],[e]),o=s({queryKey:r,queryFn:()=>bt(e),enabled:n}),c=(0,J.useMemo)(()=>{let e={};for(let t of o.data??[])St.has(t.channelType)&&(e[t.channelType]=t.policy);return e},[o.data]),l=a({mutationFn:({channelKey:t,policy:n})=>xt(e,t,n),onSuccess:()=>t.invalidateQueries({queryKey:r}),onError:K(`Failed to save channel policy`)}),u=(0,J.useCallback)((e,t)=>{l.mutate({channelKey:e,policy:t})},[l]);return n?{policies:c,savingKey:l.isPending?l.variables?.channelKey??null:null,isLoading:o.isPending,isError:o.isError,onChange:u}:{policies:void 0,savingKey:null,isLoading:!1,isError:!1,onChange:void 0}}var wt=[{id:`slack`,label:`Slack`,subtitle:`Message your assistant from Slack`,icon:`hash`,supportsVerification:!0,setupMessages:{guardian:`I'd like to verify my identity as your guardian on Slack. Can you help me set that up?`,contact:`I'd like to verify a contact's Slack identity. Can you walk me through it?`}},{id:`telegram`,label:`Telegram`,subtitle:`Message your assistant from Telegram`,icon:`send`,supportsVerification:!0,setupMessages:{guardian:`I'd like to verify my identity as your guardian on Telegram. Can you help me set that up?`,contact:`I'd like to verify a contact's Telegram identity. Can you walk me through it?`}},{id:`phone`,label:`Phone Calling`,subtitle:`Call or text your assistant via phone`,icon:`phone`,supportsVerification:!0,setupMessages:{guardian:`I'd like to verify my identity as your guardian for phone calls. Can you help me set that up?`,contact:`I'd like to verify a contact's phone number. Can you help me set that up?`}}],Tt={slack:`I want to reach you on Slack. Let's set it up.`,telegram:`I want to reach you on Telegram. Let's set it up.`,phone:`I want to be able to call you. Let's set you up with a phone number.`},Et=15e3,Dt=[];function Ot({assistantId:e,onStartSetupConversation:t}){let n=ye.use.a2aChannel(),r=ge.use.name(),o=i(),[c,l]=(0,J.useState)({kind:`assistant`}),[u,d]=(0,J.useState)(!1),[f,p]=(0,J.useState)(!1),[m,h]=(0,J.useState)(!1),g=r??`your assistant`,_=(0,J.useMemo)(()=>({path:{assistant_id:e}}),[e]),y=me(_),b=(0,J.useMemo)(()=>({path:{assistant_id:e}}),[e]),x=pe(b),S=s({...le(_),enabled:!!e,select:e=>e.contacts}),C=s({...fe(b),enabled:!!e,refetchInterval:Et,select:e=>e.snapshots}),w=s({...ue({path:{assistant_id:e}}),enabled:!!e,queryFn:async({signal:t})=>{let{data:n,error:r,response:i}=await ne({path:{assistant_id:e},signal:t,throwOnError:!1});if(!i||i.status===404)return{channels:wt};if(!i.ok)throw r??Error(`Failed to fetch channel availability`);return n},select:e=>e.channels}).data??Dt,T=S.data,E=(0,J.useMemo)(()=>T?.find(e=>e.role===`guardian`)??null,[T]),ie=(0,J.useMemo)(()=>T?.filter(e=>e.role!==`guardian`)??[],[T]),j=(0,J.useMemo)(()=>c.kind===`contact`?T?.find(e=>e.id===c.contactId)??null:null,[T,c]),M=C.data??[],N=(0,J.useMemo)(()=>!T||!j?[]:T.filter(e=>e.id!==j.id&&e.role!==`guardian`),[T,j]),P=N.length>0,he=(0,J.useRef)(!1);(0,J.useEffect)(()=>{he.current||E&&(he.current=!0,l({kind:`contact`,contactId:E.id}))},[E]);let _e=(0,J.useMemo)(()=>At(M),[M]),ve=_e.some(e=>e.key===`slack`&&e.status===`ready`),be=(0,J.useMemo)(()=>({path:{assistant_id:e}}),[e]),xe=s({...ce(be),enabled:ve,select:e=>e.threadMode}).data,F=Ct(e),I=(0,J.useCallback)(()=>o.invalidateQueries({queryKey:y}),[o,y]),L=(0,J.useCallback)(()=>o.invalidateQueries({queryKey:x}),[o,x]),R=a({mutationFn:()=>De(e,{displayName:`New Contact`}),onMutate:async()=>{await o.cancelQueries({queryKey:y})},onSuccess:e=>{A(o,_,t=>t?{...t,contacts:[...t.contacts,e]}:void 0),l({kind:`contact`,contactId:e.id})},onError:K(`Failed to create contact`),onSettled:()=>I()}),z=a({mutationFn:t=>Oe(e,t),onSuccess:(e,t)=>{A(o,_,e=>e?{...e,contacts:e.contacts.filter(e=>e.id!==t)}:void 0),l({kind:`assistant`})},onError:K(`Failed to delete contact`),onSettled:()=>I()}),B=a({mutationFn:({contactId:t,patch:n})=>De(e,{id:t,displayName:n.displayName,notes:n.notes}),onSuccess:e=>{A(o,_,t=>t?{...t,contacts:t.contacts.map(t=>t.id===e.id?e:t)}:void 0)},onError:K(`Failed to save contact`),onSettled:()=>I()}),V=oe({onMutate:async()=>{await o.cancelQueries({queryKey:y})},onSuccess:(e,t)=>{let n=e.contact,r=t.body.mergeId;n&&(A(o,_,e=>e?{...e,contacts:e.contacts.filter(e=>e.id!==r).map(e=>e.id===n.id?n:e)}:void 0),l({kind:`contact`,contactId:n.id})),h(!1),v.success(`Contacts merged`)},onSettled:()=>I()}),H=(0,J.useCallback)(e=>{l(e),p(!1),h(!1),V.reset()},[V]),U=(0,J.useCallback)(()=>{V.reset(),h(!0)},[V]),Se=(0,J.useCallback)(()=>{V.isPending||(h(!1),V.reset())},[V]),W=a({mutationFn:async t=>{let n={path:{assistant_id:e},throwOnError:!0};t===`slack`?await ee(n):t===`telegram`?await D(n):t===`phone`&&await O(n)},onSettled:()=>L()}),G=de({onSuccess:()=>I()}),Te=(0,J.useCallback)((t,n)=>{G.mutate({path:{assistant_id:e,contactChannelId:t},body:{status:`revoked`}})},[G,e]),ke=a({mutationFn:t=>te({path:{assistant_id:e},body:{botToken:t},throwOnError:!0}),onSettled:()=>L()}),Ae=a({mutationFn:({botToken:t,appToken:n})=>re({path:{assistant_id:e},body:{botToken:t,appToken:n},throwOnError:!0}),onSettled:()=>L()}),q=a({...se(),onSuccess:()=>{o.invalidateQueries({queryKey:ae(be)})}}),X=a({mutationFn:({accountSid:t,authToken:n})=>k({path:{assistant_id:e},body:{accountSid:t,authToken:n},throwOnError:!0}),onSettled:()=>L()}),je=(0,J.useCallback)(async e=>{await ke.mutateAsync(e)},[ke]),Me=(0,J.useCallback)(async(e,t)=>{await Ae.mutateAsync({botToken:e,appToken:t})},[Ae]),Ne=(0,J.useCallback)(t=>{q.mutate({path:{assistant_id:e},body:{threadMode:t}})},[q,e]),Pe=(0,J.useCallback)(async(e,t)=>{await X.mutateAsync({accountSid:e,authToken:t})},[X]),Fe=(0,J.useCallback)(()=>{R.isPending||R.mutate()},[R]),Ie=(0,J.useCallback)(()=>{d(!0)},[]),Le=(0,J.useCallback)(()=>{d(!1),I()},[I]),Re=(0,J.useCallback)(e=>{t&&t(Tt[e])},[t]),ze=(0,J.useCallback)(e=>{W.mutate(e)},[W]),Be=(0,J.useCallback)(e=>{if(!t)return;let n=w.find(t=>t.id===e)?.setupMessages.contact;n&&t(n)},[w,t]),Ve=(0,J.useCallback)(e=>{if(!t)return;let n=w.find(t=>t.id===e)?.setupMessages.guardian;n&&t(n)},[w,t]),Z=a({mutationFn:t=>Ee(e,t.channelId),onSuccess:()=>I(),onError:K(`Failed to verify channel`)}),Ue=(0,J.useCallback)(e=>{if(!j)return;let t=j.channels.find(t=>t.type===e&&t.status!==`revoked`);t&&Z.mutate({channelId:t.id})},[j,Z]),Q=z.isPending?z.variables:null,$=(0,J.useMemo)(()=>j?B.isPending&&B.variables?.contactId===j.id?{...j,displayName:B.variables.patch.displayName,notes:B.variables.patch.notes}:j:null,[j,B.isPending,B.variables]),We={loading:S.isLoading,assistantName:g,guardian:E?{id:E.id,displayName:E.displayName.startsWith(`vellum-principal-`)?``:E.displayName,role:E.role,channelTypes:Nt(E.channels,n)}:null,regularContacts:ie.filter(e=>e.id!==Q).map(e=>({id:e.id,displayName:e.displayName,role:e.role,contactType:e.contactType,channelTypes:Nt(e.channels,n)})),selection:c,onAddContact:Fe,addingContact:R.isPending};return(0,Y.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-4 overflow-hidden sm:flex-row sm:gap-6`,children:[(0,Y.jsx)(`div`,{className:`flex items-center sm:hidden`,children:(0,Y.jsx)(Ce,{onClick:()=>p(!0)})}),(0,Y.jsx)(we,{open:f,onClose:()=>p(!1),title:`Contacts`,children:(0,Y.jsx)(ft,{...We,onSelect:H})}),(0,Y.jsx)(`aside`,{className:`hidden min-h-0 w-[320px] shrink-0 overflow-y-auto self-stretch sm:block`,children:(0,Y.jsx)(ft,{...We,onSelect:H})}),(0,Y.jsx)(`section`,{className:`min-h-0 min-w-0 flex-1 overflow-y-auto`,children:c.kind===`assistant`||c.kind===`contact`&&c.contactId===Q?(0,Y.jsx)(He,{assistantName:g,channels:_e,pendingChannelKey:W.isPending?W.variables??null:null,slackThreadMode:xe,slackThreadModePending:q.isPending,channelPolicies:F.policies,policySavingKey:F.savingKey,policiesLoading:F.isLoading,policiesError:F.isError,onChannelPolicyChange:F.onChange,onSetup:t?Re:void 0,onDisconnect:ze,onSaveTelegramToken:je,onSaveSlackConfig:Me,onSlackThreadModeChange:Ne,onSaveTwilioCredentials:Pe,onGenerateInviteLink:n?Ie:void 0}):$?$.role===`guardian`?(0,Y.jsx)(gt,{contact:$,savePending:B.isPending,verifyPending:Z.isPending,mergePending:V.isPending,canMerge:P,availableChannels:w,a2aEnabled:n,onSave:e=>{B.mutate({contactId:$.id,patch:e})},onMerge:U,onSetupChannel:t?Ve:void 0,onVerifyChannel:Ue,onRevokeChannel:Te,onGenerateInviteLink:n?Ie:void 0}):(0,Y.jsx)($e,{contact:$,savePending:B.isPending,deletePending:z.isPending,verifyPending:Z.isPending,mergePending:V.isPending,canMerge:P,availableChannels:w,a2aEnabled:n,onSave:e=>{B.mutate({contactId:$.id,patch:e})},onDelete:()=>{z.mutate($.id)},onMerge:U,onSetupChannel:t?Be:void 0,onVerifyChannel:Ue,onRevokeChannel:Te}):(0,Y.jsx)(kt,{})}),j?(0,Y.jsx)(tt,{open:m,survivor:j,candidates:N,pending:V.isPending,errorMessage:V.error instanceof Error?V.error.message:V.error?`Failed to merge contacts`:null,onMerge:t=>V.mutate({path:{assistant_id:e},body:{keepId:j.id,mergeId:t}}),onClose:Se}):null,(0,Y.jsx)(ht,{open:u,assistantId:e,onClose:Le})]})}function kt(){return(0,Y.jsx)(`div`,{className:`flex h-full items-center justify-center py-16`,children:(0,Y.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:`Select a contact`})})}function At(e){let t=new Map;for(let n of e)t.set(n.channel,n);return[`slack`,`telegram`,`phone`].map(e=>{let n=t.get(e);return{key:e,status:jt(n),address:n?.channelHandle??void 0}})}function jt(e){return e?e.ready||e.setupStatus===`ready`?`ready`:e.setupStatus===`incomplete`?`incomplete`:`not_configured`:`not_configured`}var Mt={slack:`Slack`,telegram:`Telegram`,phone:`Phone`,email:`Email`,whatsapp:`WhatsApp`,a2a:`A2A`};function Nt(e,t){let n=new Set,r=[];for(let i of e){if(i.status===`revoked`)continue;let e=i.type.toLowerCase();n.has(e)||e===`a2a`&&!t||(n.add(e),r.push(Mt[e]??i.type))}return r}function Pt(){let e=r(),t=W();return(0,Y.jsx)(Ot,{assistantId:t,onStartSetupConversation:t=>{_e.getState().setMainView(`chat`);let n=be();ve.getState().setActiveConversationId(n),e(`${he.conversation(n)}?prompt=${encodeURIComponent(t)}`)}},t)}export{Pt as ContactsPageRoute};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"./capture-error-
|
|
1
|
+
import{t as e}from"./capture-error-BaKOqBjF.js";import{t}from"./queryOptions-DGyQTr3e.js";import{J as n}from"./sdk.gen-CC1iYdd0.js";import{n as r,r as i,t as a}from"./api-errors-B-g6gvNv.js";function o(e){return e.surfacedAt==null?e.conversationType===`background`||e.conversationType===`scheduled`||e.groupId===`system:background`||e.groupId===`system:scheduled`:!1}function s(e){return e.conversationType===`scheduled`||e.groupId===`system:scheduled`}function c(e){return!e.hasUnseenLatestAssistantMessage&&!o(e)&&e.conversationId!=null&&e.latestAssistantMessageAt!=null}function l(e){return e.hasUnseenLatestAssistantMessage===!0&&!o(e)&&e.conversationId!=null}function u(e){return e.hasUnseenLatestAssistantMessage===!0&&!o(e)&&e.archivedAt==null}function d(e){return typeof e==`number`&&Number.isFinite(e)?e:void 0}function f(e){return typeof e==`string`?e:void 0}function p(e){if(e)return{sourceChannel:e.sourceChannel,externalChatId:e.externalChatId,externalThreadId:e.externalThreadId,externalChatName:e.externalChatName,externalUserId:f(e.externalUserId),displayName:f(e.displayName),username:f(e.username),slackChannel:e.slackChannel?{channelId:e.slackChannel.channelId,name:e.slackChannel.name,link:e.slackChannel.link?.webUrl?{webUrl:e.slackChannel.link.webUrl}:void 0}:void 0,slackThread:e.slackThread?{channelId:e.slackThread.channelId,threadTs:e.slackThread.threadTs,link:e.slackThread.link?.appUrl||e.slackThread.link?.webUrl?{appUrl:e.slackThread.link.appUrl,webUrl:e.slackThread.link.webUrl}:void 0}:void 0}}function m(e){let t=e.assistantAttention,n=e.channelBinding?.sourceChannel??f(e.conversationOriginChannel);return{conversationId:e.id,title:e.title,createdAt:d(e.createdAt),lastMessageAt:d(e.lastMessageAt??e.updatedAt),hasUnseenLatestAssistantMessage:t?.hasUnseenLatestAssistantMessage,latestAssistantMessageAt:d(t?.latestAssistantMessageAt),lastSeenAssistantMessageAt:d(t?.lastSeenAssistantMessageAt),archivedAt:e.archivedAt,surfacedAt:d(e.surfacedAt),groupId:f(e.groupId),source:e.source,isPinned:e.isPinned,conversationType:e.conversationType,scheduleJobId:e.scheduleJobId,displayOrder:d(e.displayOrder),channelBinding:p(e.channelBinding),originChannel:n,isProcessing:e.isProcessing}}function h(e){return m(e)}var g=`conversation-list`;function _(e){return[g,e??``]}function v(e){return[g,e??``,`foreground`]}function y(e){return[g,e??``,`archived`]}function b(e){return[g,e??``,`background`]}function x(e){return[g,e??``,`scheduled`]}function S(e){return[g,e??``,`channel`]}function C(e){return(t,n)=>(n[e]??0)-(t[e]??0)}var w=50,T=200;async function E(e,t,o={}){let{conversationType:s,archiveStatus:c,originChannel:l}=o,{data:u,error:d,response:f}=await n({path:{assistant_id:e},query:{limit:w,offset:t,...s?{conversationType:s}:{},...c?{archiveStatus:c}:{},...l?{originChannel:l}:{}},throwOnError:!1});if(r(f,d,`Failed to list conversations.`),!f.ok){let e=i(d,f,`Failed to list conversations.`);throw new a(f.status,e)}return{conversations:(u?.conversations??[]).map(m),hasMore:u?.hasMore??!1}}async function D(e,t={}){let n=[],r=new Set;for(let i=0;i<T;i++){let{conversations:a,hasMore:o}=await E(e,i*w,t);for(let e of a)r.has(e.conversationId)||(r.add(e.conversationId),n.push(e));if(!o||a.length===0)break}return n}async function O(t,n=`active`,r=`lastMessageAt`){let i=n===`active`?{}:{archiveStatus:n},a={...i,conversationType:`background`},[o,s]=await Promise.allSettled([D(t,i),D(t,a)]);if(o.status===`rejected`)throw o.reason;let c=o.value,l=[];s.status===`fulfilled`?l=s.value:e(s.reason,{context:`fetchMergedConversationList.background(${n})`,level:`warning`,extra:{assistantId:t}});let u=new Set,d=[];for(let e of[...c,...l])u.has(e.conversationId)||(u.add(e.conversationId),d.push(e));return d.sort(C(r)),d}async function k(e){return[...await D(e)].sort(C(`lastMessageAt`))}async function A(e){return(await D(e,{conversationType:`background`})).filter(e=>!s(e)).sort(C(`lastMessageAt`))}async function j(e){return[...await D(e,{conversationType:`scheduled`})].sort(C(`lastMessageAt`))}async function M(e){return O(e,`archived`,`archivedAt`)}async function N(e){let t=await E(e,0);return{...t,conversations:[...t.conversations].sort(C(`lastMessageAt`))}}async function P(e){let t=await E(e,0,{conversationType:`background`});return{...t,conversations:t.conversations.filter(e=>!s(e)).sort(C(`lastMessageAt`))}}async function F(e){let t=await E(e,0,{conversationType:`scheduled`});return{...t,conversations:[...t.conversations].sort(C(`lastMessageAt`))}}var I=3e4;function L(e){return t({queryKey:v(e),queryFn:()=>k(e),staleTime:I})}function R(e){return t({queryKey:b(e),queryFn:()=>A(e),staleTime:I})}function z(e){return t({queryKey:x(e),queryFn:()=>j(e),staleTime:I})}function B(e){return t({queryKey:y(e),queryFn:()=>M(e),staleTime:I})}export{u as _,L as a,P as c,S as d,z as f,c as g,l as h,b as i,N as l,h as m,y as n,_ as o,x as p,R as r,v as s,B as t,F as u,o as v,s as y};
|