@qredence/fleet 0.8.0 → 0.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +90 -0
- package/dist/web/client/assets/DialogTitle-BlVq-tcv.js +1 -0
- package/dist/web/client/assets/FloatingPortal-D8-EPDs2.js +1 -0
- package/dist/web/client/assets/activity-BPIKUzOU.js +1 -0
- package/dist/web/client/assets/agents-BMQXA18L.js +2 -0
- package/dist/web/client/assets/agents-page-D2soW46O.js +1 -0
- package/dist/web/client/assets/alert-CzWGeumf.js +1 -0
- package/dist/web/client/assets/alert-dialog-D-e1Pr4q.js +1 -0
- package/dist/web/client/assets/artifacts-panel-6JEdy6jU.js +1 -0
- package/dist/web/client/assets/badge-CzQFgmVK.js +1 -0
- package/dist/web/client/assets/chat-command-palette-Bxr5EkO6.js +1 -0
- package/dist/web/client/assets/chat-hpzV6IA6.js +57 -0
- package/dist/web/client/assets/chat-queries-ty76G6rK.js +3 -0
- package/dist/web/client/assets/clock-3-BwWCSCm_.js +1 -0
- package/dist/web/client/assets/{command-imgUMV3r.js → command-xo-NK4xO.js} +1 -1
- package/dist/web/client/assets/connectors-E4KW6hBL.js +2 -0
- package/dist/web/client/assets/connectors-page-CDzzjCIJ.js +1 -0
- package/dist/web/client/assets/create-project-dialog-Db-WhUmP.js +1 -0
- package/dist/web/client/assets/dialog-CK8dym6z.js +1 -0
- package/dist/web/client/assets/{fork-picker-dialog-Cgi48NnT.js → fork-picker-dialog-DSaFeUii.js} +1 -1
- package/dist/web/client/assets/globals-DDDleTbS.css +2 -0
- package/dist/web/client/assets/index-Cf8tRpHL.js +13 -0
- package/dist/web/client/assets/{input-7g8_nw-Z.js → input-CBoTMPC_.js} +1 -1
- package/dist/web/client/assets/{input-group-Nq03Qums.js → input-group-BFubAtz9.js} +1 -1
- package/dist/web/client/assets/mcp-connections-section-BsNhp1b2.js +2 -0
- package/dist/web/client/assets/message-queue-Btjt9wK2.js +1 -0
- package/dist/web/client/assets/{model-selector-list-Cp687pdm.js → model-selector-list-CbDAT0Rw.js} +1 -1
- package/dist/web/client/assets/mutation-Da9zdeWr.js +1 -0
- package/dist/web/client/assets/notify-BIL0-CGy.js +1 -0
- package/dist/web/client/assets/open-panel-action-message-SdA1VU42.js +1 -0
- package/dist/web/client/assets/openui-renderer-DG-iML7M.js +291 -0
- package/dist/web/client/assets/pencil-Cbgq3ybX.js +1 -0
- package/dist/web/client/assets/plus-DUP2JPVG.js +1 -0
- package/dist/web/client/assets/product-page-header-Ck6I13CE.js +1 -0
- package/dist/web/client/assets/provider-catalog-CLEDlH_v.js +1 -0
- package/dist/web/client/assets/provider-label-BItazQ6H.js +1 -0
- package/dist/web/client/assets/right-panel-context-CjX-HkDO.js +1 -0
- package/dist/web/client/assets/right-panel-registry-BAJ6TuEY.js +2 -0
- package/dist/web/client/assets/rotate-ccw-DLkfsmG9.js +1 -0
- package/dist/web/client/assets/routes--tnF7d6H.js +14 -0
- package/dist/web/client/assets/select-DYh951qi.js +1 -0
- package/dist/web/client/assets/{session-activity-panel-Bc4-HSfb.js → session-activity-panel-DwaXiSrS.js} +1 -1
- package/dist/web/client/assets/{session-insights-panel-D0v_DKcb.js → session-insights-panel-BXEmuJKf.js} +1 -1
- package/dist/web/client/assets/{session-tool-renderer-C7mYeUOs.js → session-tool-renderer-DEABxZG3.js} +25 -25
- package/dist/web/client/assets/{session-tree-panel-By9m9tGB.js → session-tree-panel-5QgMvXoX.js} +1 -1
- package/dist/web/client/assets/settings-dialog-BomLOETY.js +3 -0
- package/dist/web/client/assets/sparkles-CASAe1AI.js +1 -0
- package/dist/web/client/assets/{subagent-chat-panel-DsPmLZSf.js → subagent-chat-panel-R2RoX1Yt.js} +1 -1
- package/dist/web/client/assets/subagent-transcript-DVZhMo7a.js +1 -0
- package/dist/web/client/assets/{subagents-panel-gQ9BLfV3.js → subagents-panel-CMMRUP8F.js} +1 -1
- package/dist/web/client/assets/switch-BrxDfsX6.js +1 -0
- package/dist/web/client/assets/toast-BNWkgZ0u.js +1 -0
- package/dist/web/client/assets/{tool-output-normalizer-CADgEiI4.js → tool-output-normalizer-DDU09Zc6.js} +1 -1
- package/dist/web/client/assets/tool-part-normalizer-CF6bmJ0s.js +4 -0
- package/dist/web/client/assets/tool-result-7qREIVv_.js +5 -0
- package/dist/web/client/assets/tool-timeline-CGhwMeNl.js +2 -0
- package/dist/web/client/assets/trash-sm2UyOxe.js +1 -0
- package/dist/web/client/assets/types-gIgIxnnG.js +1 -0
- package/dist/web/client/assets/useNavigate-CVhM7pag.js +1 -0
- package/dist/web/client/assets/useRender-CzJUrRlB.js +1 -0
- package/dist/web/client/assets/useScrollLock-BcsteNzT.js +1 -0
- package/dist/web/client/assets/with-selector-B_VDO56x.js +1 -0
- package/dist/web/client/bundle-budget.json +6 -6
- package/dist/web/server/{_tanstack-start-manifest_v-BiNPG4xt-BZTMSM2I.js → _tanstack-start-manifest_v-Io433TLr-YWPNQWQI.js} +44 -23
- package/dist/web/server/agents-DOgCHixY-KUZP2VDO.js +22 -0
- package/dist/web/server/agents-page-BdiR9H8w-M6X6SXMF.js +215 -0
- package/dist/web/server/{artifacts-panel-CqGBNU4q-UHNMC7PK.js → artifacts-panel-cYqS54cM-K6SF3K6W.js} +27 -17
- package/dist/web/server/{chat-command-palette-B94-zIEz-ES2ZB4ZF.js → chat-command-palette-BDnwcymZ-DSTFIAOD.js} +22 -13
- package/dist/web/server/chunk-2ETDIMNM.js +40 -0
- package/dist/web/server/{chunk-K67IDUAI.js → chunk-2OC2FKHR.js} +42 -32
- package/dist/web/server/{chunk-2VKVSL6Y.js → chunk-35RIM6VP.js} +128 -127
- package/dist/web/server/{chunk-5GUEYYYO.js → chunk-37EK2TYH.js} +4591 -13688
- package/dist/web/server/chunk-5MOXRFX6.js +826 -0
- package/dist/web/server/chunk-6GYLXDX3.js +588 -0
- package/dist/web/server/chunk-7DQQMT5V.js +8993 -0
- package/dist/web/server/chunk-APOS34PW.js +8965 -0
- package/dist/web/server/{chunk-YQO36OP6.js → chunk-AXN2OBPF.js} +2 -4
- package/dist/web/server/chunk-BD7YKYWL.js +1007 -0
- package/dist/web/server/chunk-BLGKLQJG.js +432 -0
- package/dist/web/server/{chunk-BAHZXA4D.js → chunk-BZ2EAUZZ.js} +10 -12
- package/dist/web/server/chunk-C5XHGLET.js +193 -0
- package/dist/web/server/chunk-CE7U5QB2.js +42 -0
- package/dist/web/server/{chunk-E6T36NM5.js → chunk-FI3UF2GW.js} +36 -353
- package/dist/web/server/{chunk-LTTBT3J7.js → chunk-FNV3WZXL.js} +5 -9
- package/dist/web/server/{chunk-2FHYWKDN.js → chunk-FSQWWR2M.js} +46 -16
- package/dist/web/server/chunk-FT7HNDR5.js +143 -0
- package/dist/web/server/chunk-GNXIDE26.js +44 -0
- package/dist/web/server/{chunk-EAKPTSWR.js → chunk-HAFELESQ.js} +5 -7
- package/dist/web/server/{chunk-WSK55TKE.js → chunk-KBMRRJQN.js} +96 -10
- package/dist/web/server/chunk-KSGGSGOA.js +50 -0
- package/dist/web/server/{chunk-SGAQVAYL.js → chunk-NSFKPEFI.js} +2 -2
- package/dist/web/server/chunk-NZCEQWK2.js +6891 -0
- package/dist/web/server/chunk-OO7NBFQQ.js +15 -0
- package/dist/web/server/{chunk-EL2JCDAM.js → chunk-PQVTLG3E.js} +9 -9
- package/dist/web/server/{chunk-LQM6QR7S.js → chunk-Q4ECIATK.js} +61 -47
- package/dist/web/server/chunk-QOZCYKMA.js +769 -0
- package/dist/web/server/{chunk-CZLGB3NE.js → chunk-R4BS3KYI.js} +2 -4
- package/dist/web/server/{chunk-FB2QLQTN.js → chunk-RHJEOG37.js} +12 -13
- package/dist/web/server/chunk-RX2ZJARF.js +73 -0
- package/dist/web/server/chunk-TXZDDJCT.js +5115 -0
- package/dist/web/server/{chunk-OAYEN3JV.js → chunk-VDEUVEWL.js} +2253 -1
- package/dist/web/server/{chunk-ABMGW6QH.js → chunk-W2GI7NRX.js} +16140 -15708
- package/dist/web/server/{chunk-SI5IQSG4.js → chunk-W7GGECTL.js} +8 -7
- package/dist/web/server/connectors-Dv_uPdv0-2X5VWQXK.js +22 -0
- package/dist/web/server/connectors-page-DW75T-uH-EKRHUZ6K.js +66 -0
- package/dist/web/server/{create-project-dialog-CFPX6Ihl-EO4XTINS.js → create-project-dialog-BS5Sva46-BO4RLW2Q.js} +25 -14
- package/dist/web/server/{fork-picker-dialog-B2RBFzoZ-R6GXPSPL.js → fork-picker-dialog-DFpKOdAw-JPLJSYYU.js} +7 -10
- package/dist/web/server/{markdown-BvCfOB26-VDH4YOQD.js → markdown-Cc8V9dOF-JTNTJKQU.js} +5 -6
- package/dist/web/server/{markdown-code-SYc-BQvp-MR4FXT5C.js → markdown-code-gaRnbgNM-V5LIRYCD.js} +7 -8
- package/dist/web/server/{message-queue-D32rLiJo-HEBRGH5B.js → message-queue-nQ2_kU82-KKSLYR4S.js} +7 -14
- package/dist/web/server/{model-selector-list-DKzt_xEN-5ZPU6XDY.js → model-selector-list-By_G7_Hr-GXT27BZO.js} +12 -14
- package/dist/web/server/{openui-renderer-CeVtOdYl-PY37PCJI.js → openui-renderer-Q31y65CQ-QNVSP4NN.js} +20 -13
- package/dist/web/server/{prompt-suggestions-CpTK_fHV-Q4ILLZKC.js → prompt-suggestions-B67Uy5Rk-5SMTSIFQ.js} +5 -4
- package/dist/web/server/{repl-panel-1kSS1UGd-DDM5ADGZ.js → repl-panel-1kSS1UGd-POXRYDDJ.js} +2 -3
- package/dist/web/server/{resources-panel-S4NHlpz7-NF7WYYSR.js → resources-panel-CH8sG0Od-4BZN6SLY.js} +18 -10
- package/dist/web/server/router-8EzTM9Eq-COVGJKKX.js +23 -0
- package/dist/web/server/routes-88H0fiN3-WIAZJ3RT.js +124 -0
- package/dist/web/server/server.js +3 -3
- package/dist/web/server/{session-activity-panel-Bz2GrdMk-PCOXG46X.js → session-activity-panel-CgSOde03-B5RCAGB4.js} +18 -10
- package/dist/web/server/{session-insights-panel-CfMX2NRu-6HWZTTAC.js → session-insights-panel-BiVObm_6-AP4FITT7.js} +2 -12
- package/dist/web/server/{session-reasoning-panel-CpiTdyQz-O3B5CDKS.js → session-reasoning-panel-Dmny6YTk-D3HQV2YB.js} +17 -9
- package/dist/web/server/session-tool-renderer-BrnTO2w3-V6EE6AB2.js +34 -0
- package/dist/web/server/{session-tree-panel-CzkE0RFB-P4KWA7S2.js → session-tree-panel-BEqR_cAJ-TZS7VRCB.js} +18 -11
- package/dist/web/server/{settings-dialog-BUgVNpr1-THSYIOZL.js → settings-dialog-DkesVBrS-BAAA3YNU.js} +238 -847
- package/dist/web/server/{subagent-chat-panel-mw3kEFfK-CDYX7LST.js → subagent-chat-panel-Bfmt1bCE-DKDVH3NJ.js} +23 -15
- package/dist/web/server/{subagents-panel-2ZJfYrXG-NDJKHJHD.js → subagents-panel-ChJDDvad-GNCHDTPB.js} +24 -17
- package/dist/web/server/{workspace-panel-xznrPDLt-QCJRZOF3.js → workspace-panel-Cij_JylD-WPYSV5FA.js} +23 -15
- package/package.json +1 -1
- package/dist/web/client/assets/DialogTitle-RY2UDuCY.js +0 -1
- package/dist/web/client/assets/FloatingPortal-XC0MCNnD.js +0 -1
- package/dist/web/client/assets/action-swap-BWRUNKQA.js +0 -1
- package/dist/web/client/assets/alert-dialog-DGNvg0B1.js +0 -1
- package/dist/web/client/assets/artifacts-panel-BGXpKRJ7.js +0 -1
- package/dist/web/client/assets/badge-DM06QVqB.js +0 -57
- package/dist/web/client/assets/chat-command-palette-PenyaZBw.js +0 -1
- package/dist/web/client/assets/create-project-dialog-C00d5yCq.js +0 -1
- package/dist/web/client/assets/dialog-zCNOQI63.js +0 -1
- package/dist/web/client/assets/globals-BuMuB_ea.css +0 -2
- package/dist/web/client/assets/index-BqBdQGWs.js +0 -13
- package/dist/web/client/assets/message-queue-sSljtjYz.js +0 -1
- package/dist/web/client/assets/mutation-DOi2Qgfa.js +0 -1
- package/dist/web/client/assets/notify-Cqdu6EV8.js +0 -1
- package/dist/web/client/assets/openui-renderer-BdYTcn-_.js +0 -291
- package/dist/web/client/assets/provider-label-QrVOwKBO.js +0 -1
- package/dist/web/client/assets/right-panel-context-DHKWoetk.js +0 -1
- package/dist/web/client/assets/right-panel-registry-BaLZiKny.js +0 -2
- package/dist/web/client/assets/routes-BkFkhfO3.js +0 -16
- package/dist/web/client/assets/select-BhV4ikeN.js +0 -1
- package/dist/web/client/assets/settings-dialog-Dpt4Ha_m.js +0 -2
- package/dist/web/client/assets/sparkles-BwVa9zQJ.js +0 -1
- package/dist/web/client/assets/subagent-transcript-CNQ9wGk2.js +0 -1
- package/dist/web/client/assets/switch-C7Myu-Dt.js +0 -1
- package/dist/web/client/assets/toast-DlbKi6K-.js +0 -1
- package/dist/web/client/assets/tool-part-normalizer-CYK62WZM.js +0 -4
- package/dist/web/client/assets/tool-result-bjAGZ2qm.js +0 -5
- package/dist/web/client/assets/tool-timeline-eNqH1zj7.js +0 -2
- package/dist/web/client/assets/types-D5hZ8IyV.js +0 -1
- package/dist/web/client/assets/useRender-Bbk_fl72.js +0 -1
- package/dist/web/server/chunk-2PAW6K4Q.js +0 -56
- package/dist/web/server/chunk-7L5PCCYR.js +0 -2287
- package/dist/web/server/chunk-FB3UHLLN.js +0 -49
- package/dist/web/server/chunk-OSPDNT7S.js +0 -25404
- package/dist/web/server/router-DVKxZik_-254GZAJW.js +0 -30
- package/dist/web/server/routes-BTxAklRp-UM7ZTLLP.js +0 -140
- package/dist/web/server/session-tool-renderer-BZiOxtt1-T3ZGAQKX.js +0 -26
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{t}from"./react-Cvdyeg_0.js";import{t as n}from"./react-dom-B7th3XGm.js";import{t as r}from"./jsx-runtime-NZYk81nU.js";import{$ as i,B as a,C as o,D as s,E as c,F as l,G as u,H as d,J as f,K as p,O as m,P as h,Q as g,T as _,V as v,W as y,X as b,c as x,d as S,k as C,m as w,p as T,q as E,s as D,t as O,tt as k,w as A,z as j}from"./FloatingPortal-XC0MCNnD.js";import{t as M}from"./utils-oBThwhjm.js";import{C as N,D as P,E as F,F as I,I as L,M as R,N as z,O as B,P as V,T as ee,_ as H,a as U,b as W,c as te,d as G,f as K,g as ne,h as q,j as re,l as ie,m as J,o as ae,p as oe,t as se,u as ce,v as le,x as Y,y as X}from"./useButton-CvcmqA2s.js";import{E as ue,T as de,_ as fe,f as pe,g as me,h as he,l as ge,n as _e,o as ve,t as ye,u as be,v as xe,x as Se}from"./createBaseUIEventDetails-DIxvaz-Y.js";import{B as Z,C as Ce,F as we,G as Te,H as Ee,I as De,J as Oe,K as ke,P as Ae,S as je,U as Me,V as Ne,W as Pe,X as Fe,Z as Ie,a as Le,d as Re,r as ze}from"./DialogTitle-RY2UDuCY.js";import{n as Be,r as Ve,t as He}from"./useBaseUiId-lKfDDIcw.js";import{t as Ue}from"./check-BTwIaCtI.js";import{t as We}from"./chevron-down-Bse1ggZM.js";import{a as Ge,c as Ke,i as qe,l as Je,n as Ye,o as Xe,r as Ze}from"./input-7g8_nw-Z.js";import{c as Qe,s as $e,t as et}from"./surfaces-BUjUJTyD.js";import{t as tt}from"./useControlled-CkQSkSv1.js";var Q=e(t(),1),$=r(),nt=[`top`,`right`,`bottom`,`left`],rt=Math.min,it=Math.max,at=Math.round,ot=Math.floor,st=e=>({x:e,y:e}),ct={left:`right`,right:`left`,bottom:`top`,top:`bottom`};function lt(e,t,n){return it(e,rt(t,n))}function ut(e,t){return typeof e==`function`?e(t):e}function dt(e){return e.split(`-`)[0]}function ft(e){return e.split(`-`)[1]}function pt(e){return e===`x`?`y`:`x`}function mt(e){return e===`y`?`height`:`width`}function ht(e){let t=e[0];return t===`t`||t===`b`?`y`:`x`}function gt(e){return pt(ht(e))}function _t(e,t,n){n===void 0&&(n=!1);let r=ft(e),i=gt(e),a=mt(i),o=i===`x`?r===(n?`end`:`start`)?`right`:`left`:r===`start`?`bottom`:`top`;return t.reference[a]>t.floating[a]&&(o=Et(o)),[o,Et(o)]}function vt(e){let t=Et(e);return[yt(e),t,yt(t)]}function yt(e){return e.includes(`start`)?e.replace(`start`,`end`):e.replace(`end`,`start`)}var bt=[`left`,`right`],xt=[`right`,`left`],St=[`top`,`bottom`],Ct=[`bottom`,`top`];function wt(e,t,n){switch(e){case`top`:case`bottom`:return n?t?xt:bt:t?bt:xt;case`left`:case`right`:return t?St:Ct;default:return[]}}function Tt(e,t,n,r){let i=ft(e),a=wt(dt(e),n===`start`,r);return i&&(a=a.map(e=>e+`-`+i),t&&(a=a.concat(a.map(yt)))),a}function Et(e){let t=dt(e);return ct[t]+e.slice(t.length)}function Dt(e){return{top:e.top??0,right:e.right??0,bottom:e.bottom??0,left:e.left??0}}function Ot(e){return typeof e==`number`?{top:e,right:e,bottom:e,left:e}:Dt(e)}function kt(e){let{x:t,y:n,width:r,height:i}=e;return{width:r,height:i,top:n,left:t,right:t+r,bottom:n+i,x:t,y:n}}function At(e,t=-(2**53-1),n=2**53-1){return Math.max(t,Math.min(e,n))}function jt(e,t={}){let{enabled:n=!0,event:r=`click`,toggle:i=!0,ignoreMouse:a=!1,stickIfOpen:o=!0,touchOpenDelay:s=0,reason:c=he}=t,u=`rootStore`in e?e.rootStore:e,d=u.context.dataRef,f=Q.useRef(void 0),m=de(),h=g(),_=Q.useMemo(()=>{function e(e,t,n,r){let i=ye(c,t,n);e&&r===`touch`&&s>0?h.start(s,()=>{u.setOpen(!0,i)}):u.setOpen(e,i)}function t(e,t,n){let r=d.current.openEvent,a=u.select(`domReferenceElement`)!==t;return e&&a||!e||!i?!0:r&&o?!n(r.type):!1}return{onPointerDown(e){f.current=Me(e.pointerType,!0)&&Te(e.nativeEvent)?`virtual`:e.pointerType},onMouseDown(n){let i=f.current,o=n.nativeEvent,s=u.select(`open`);if(n.button!==0||r===`click`||Me(i,!0)&&a)return;let c=t(s,n.currentTarget,e=>e===`click`||e===`mousedown`),d=p(o);if(l(d)){e(c,o,d,i);return}let h=n.currentTarget;m.request(()=>{e(c,o,h,i)})},onClick(n){if(r===`mousedown-only`)return;let i=f.current;if(r===`mousedown`&&i){f.current=void 0;return}Me(i,!0)&&a||e(t(u.select(`open`),n.currentTarget,e=>e===`click`||e===`mousedown`||e===`keydown`||e===`keyup`),n.nativeEvent,n.currentTarget,i)},onKeyDown(){f.current=void 0}}},[d,r,a,c,u,o,i,m,h,s]);return Q.useMemo(()=>n?{reference:_}:I,[n,_])}function Mt(e,t,n){let{reference:r,floating:i}=e,a=ht(t),o=gt(t),s=mt(o),c=dt(t),l=a===`y`,u=r.x+r.width/2-i.width/2,d=r.y+r.height/2-i.height/2,f=r[s]/2-i[s]/2,p;switch(c){case`top`:p={x:u,y:r.y-i.height};break;case`bottom`:p={x:u,y:r.y+r.height};break;case`right`:p={x:r.x+r.width,y:d};break;case`left`:p={x:r.x-i.width,y:d};break;default:p={x:r.x,y:r.y}}let m=ft(t);return m&&(p[o]+=f*(m===`end`?1:-1)*(n&&l?-1:1)),p}async function Nt(e,t){t===void 0&&(t={});let{x:n,y:r,platform:i,rects:a,elements:o,strategy:s}=e,{boundary:c=`clippingAncestors`,rootBoundary:l=`viewport`,elementContext:u=`floating`,altBoundary:d=!1,padding:f=0}=ut(t,e),p=Ot(f),m=o[d?u===`floating`?`reference`:`floating`:u],h=kt(await i.getClippingRect({element:await(i.isElement==null?void 0:i.isElement(m))??!0?m:m.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(o.floating)),boundary:c,rootBoundary:l,strategy:s})),g=u===`floating`?{x:n,y:r,width:a.floating.width,height:a.floating.height}:a.reference,_=await(i.getOffsetParent==null?void 0:i.getOffsetParent(o.floating)),v=await(i.isElement==null?void 0:i.isElement(_))&&await(i.getScale==null?void 0:i.getScale(_))||{x:1,y:1},y=kt(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:o,rect:g,offsetParent:_,strategy:s}):g);return{top:(h.top-y.top+p.top)/v.y,bottom:(y.bottom-h.bottom+p.bottom)/v.y,left:(h.left-y.left+p.left)/v.x,right:(y.right-h.right+p.right)/v.x}}var Pt=50,Ft=async(e,t,n)=>{let{placement:r=`bottom`,strategy:i=`absolute`,middleware:a=[],platform:o}=n,s=o.detectOverflow?o:{...o,detectOverflow:Nt},c=await(o.isRTL==null?void 0:o.isRTL(t)),l=await o.getElementRects({reference:e,floating:t,strategy:i}),{x:u,y:d}=Mt(l,r,c),f=r,p=0,m={};for(let n=0;n<a.length;n++){let h=a[n];if(!h)continue;let{name:g,fn:_}=h,{x:v,y,data:b,reset:x}=await _({x:u,y:d,initialPlacement:r,placement:f,strategy:i,middlewareData:m,rects:l,platform:s,elements:{reference:e,floating:t}});u=v??u,d=y??d,m[g]={...m[g],...b},x&&p<Pt&&(p++,typeof x==`object`&&(x.placement&&(f=x.placement),x.rects&&(l=x.rects===!0?await o.getElementRects({reference:e,floating:t,strategy:i}):x.rects),{x:u,y:d}=Mt(l,f,c)),n=-1)}return{x:u,y:d,placement:f,strategy:i,middlewareData:m}},It=e=>({name:`arrow`,options:e,async fn(t){let{x:n,y:r,placement:i,rects:a,platform:o,elements:s,middlewareData:c}=t,{element:l,padding:u=0}=ut(e,t)||{};if(l==null)return{};let d=Ot(u),f={x:n,y:r},p=gt(i),m=mt(p),h=await o.getDimensions(l),g=p===`y`,_=g?`top`:`left`,v=g?`bottom`:`right`,y=g?`clientHeight`:`clientWidth`,b=a.reference[m]+a.reference[p]-f[p]-a.floating[m],x=f[p]-a.reference[p],S=await(o.getOffsetParent==null?void 0:o.getOffsetParent(l)),C=S?S[y]:0;(!C||!await(o.isElement==null?void 0:o.isElement(S)))&&(C=s.floating[y]||a.floating[m]);let w=b/2-x/2,T=C/2-h[m]/2-1,E=rt(d[_],T),D=rt(d[v],T),O=C-h[m]-D,k=C/2-h[m]/2+w,A=lt(E,k,O),j=!c.arrow&&ft(i)!=null&&k!==A&&a.reference[m]/2-(k<E?E:D)-h[m]/2<0,M=j?k<E?k-E:k-O:0;return{[p]:f[p]+M,data:{[p]:A,centerOffset:k-A-M,...j&&{alignmentOffset:M}},reset:j}}}),Lt=function(e){return e===void 0&&(e={}),{name:`flip`,options:e,async fn(t){var n;let{placement:r,middlewareData:i,rects:a,initialPlacement:o,platform:s,elements:c}=t,{mainAxis:l=!0,crossAxis:u=!0,fallbackPlacements:d,fallbackStrategy:f=`bestFit`,fallbackAxisSideDirection:p=`none`,flipAlignment:m=!0,...h}=ut(e,t);if((n=i.arrow)!=null&&n.alignmentOffset)return{};let g=dt(r),_=ht(o),v=dt(o)===o,y=await(s.isRTL==null?void 0:s.isRTL(c.floating)),b=d||(v||!m?[Et(o)]:vt(o)),x=p!==`none`;!d&&x&&b.push(...Tt(o,m,p,y));let S=[o,...b],C=await s.detectOverflow(t,h),w=[],T=i.flip?.overflows||[];if(l&&w.push(C[g]),u){let e=_t(r,a,y);w.push(C[e[0]],C[e[1]])}if(T=[...T,{placement:r,overflows:w}],!w.every(e=>e<=0)){let e=(i.flip?.index||0)+1,t=S[e];if(t&&(u!==`alignment`||_===ht(t)||T.every(e=>ht(e.placement)!==_||e.overflows[0]>0)))return{data:{index:e,overflows:T},reset:{placement:t}};let n=T.filter(e=>e.overflows[0]<=0).sort((e,t)=>e.overflows[1]-t.overflows[1])[0]?.placement;if(!n)switch(f){case`bestFit`:{let e=T.filter(e=>{if(x){let t=ht(e.placement);return t===_||t===`y`}return!0}).map(e=>[e.placement,e.overflows.filter(e=>e>0).reduce((e,t)=>e+t,0)]).sort((e,t)=>e[1]-t[1])[0]?.[0];e&&(n=e);break}case`initialPlacement`:n=o}if(r!==n)return{reset:{placement:n}}}return{}}}};function Rt(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function zt(e){return nt.some(t=>e[t]>=0)}var Bt=function(e){return e===void 0&&(e={}),{name:`hide`,options:e,async fn(t){let{rects:n,platform:r}=t,{strategy:i=`referenceHidden`,...a}=ut(e,t);switch(i){case`referenceHidden`:{let e=Rt(await r.detectOverflow(t,{...a,elementContext:`reference`}),n.reference);return{data:{referenceHiddenOffsets:e,referenceHidden:zt(e)}}}case`escaped`:{let e=Rt(await r.detectOverflow(t,{...a,altBoundary:!0}),n.floating);return{data:{escapedOffsets:e,escaped:zt(e)}}}default:return{}}}}},Vt=new Set([`left`,`top`]);async function Ht(e,t){let{placement:n,platform:r,elements:i}=e,a=await(r.isRTL==null?void 0:r.isRTL(i.floating)),o=dt(n),s=ft(n),c=ht(n)===`y`,l=Vt.has(o)?-1:1,u=a&&c?-1:1,d=ut(t,e),{mainAxis:f,crossAxis:p,alignmentAxis:m}=typeof d==`number`?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:d.mainAxis||0,crossAxis:d.crossAxis||0,alignmentAxis:d.alignmentAxis};return s&&typeof m==`number`&&(p=s===`end`?m*-1:m),c?{x:p*u,y:f*l}:{x:f*l,y:p*u}}var Ut=function(e){return e===void 0&&(e=0),{name:`offset`,options:e,async fn(t){var n;let{x:r,y:i,placement:a,middlewareData:o}=t,s=await Ht(t,e);return a===o.offset?.placement&&(n=o.arrow)!=null&&n.alignmentOffset?{}:{x:r+s.x,y:i+s.y,data:{...s,placement:a}}}}},Wt=function(e){return e===void 0&&(e={}),{name:`shift`,options:e,async fn(t){let{x:n,y:r,placement:i,platform:a}=t,{mainAxis:o=!0,crossAxis:s=!1,limiter:c={fn:e=>{let{x:t,y:n}=e;return{x:t,y:n}}},...l}=ut(e,t),u={x:n,y:r},d=await a.detectOverflow(t,l),f=ht(i),p=pt(f),m=u[p],h=u[f],g=(e,t)=>lt(t+d[e===`y`?`top`:`left`],t,t-d[e===`y`?`bottom`:`right`]);o&&(m=g(p,m)),s&&(h=g(f,h));let _=c.fn({...t,[p]:m,[f]:h});return{..._,data:{x:_.x-n,y:_.y-r,enabled:{[p]:o,[f]:s}}}}}},Gt=function(e){return e===void 0&&(e={}),{options:e,fn(t){let{x:n,y:r,placement:i,rects:a,middlewareData:o}=t,{offset:s=0,mainAxis:c=!0,crossAxis:l=!0}=ut(e,t),u={x:n,y:r},d=ht(i),f=pt(d),p=u[f],m=u[d],h=ut(s,t),g=typeof h==`number`?{mainAxis:h,crossAxis:0}:{mainAxis:h.mainAxis??0,crossAxis:h.crossAxis??0};if(c){let e=f===`y`?`height`:`width`,t=a.reference[f]-a.floating[e]+g.mainAxis,n=a.reference[f]+a.reference[e]-g.mainAxis;p<t?p=t:p>n&&(p=n)}if(l){let e=f===`y`?`width`:`height`,t=Vt.has(dt(i)),n=a.reference[d]-a.floating[e]+(t&&o.offset?.[d]||0)+(t?0:g.crossAxis),r=a.reference[d]+a.reference[e]+(t?0:o.offset?.[d]||0)-(t?g.crossAxis:0);m<n?m=n:m>r&&(m=r)}return{[f]:p,[d]:m}}}},Kt=function(e){return e===void 0&&(e={}),{name:`size`,options:e,async fn(t){let{placement:n,rects:r,platform:i,elements:a}=t,{apply:o=()=>{},...s}=ut(e,t),c=await i.detectOverflow(t,s),l=dt(n),u=ft(n),d=ht(n)===`y`,{width:f,height:p}=r.floating,m,h;l===`top`||l===`bottom`?(m=l,h=u===(await(i.isRTL==null?void 0:i.isRTL(a.floating))?`start`:`end`)?`left`:`right`):(h=l,m=u===`end`?`top`:`bottom`);let g=p-c.top-c.bottom,_=f-c.left-c.right,v=rt(p-c[m],g),y=rt(f-c[h],_),b=t.middlewareData.shift,x=!b,S=v,C=y;b!=null&&b.enabled.x&&(C=_),b!=null&&b.enabled.y&&(S=g),x&&!u&&(d?C=f-2*it(c.left,c.right):S=p-2*it(c.top,c.bottom)),await o({...t,availableWidth:C,availableHeight:S});let w=await i.getDimensions(a.floating);return f!==w.width||p!==w.height?{reset:{rects:!0}}:{}}}};function qt(e){let t=ie(e),n=parseFloat(t.width)||0,r=parseFloat(t.height)||0,i=W(e),a=i?e.offsetWidth:n,o=i?e.offsetHeight:r,s=at(n)!==a||at(r)!==o;return s&&(n=a,r=o),{width:n,height:r,$:s}}function Jt(e){return X(e)?e:e.contextElement}function Yt(e){let t=Jt(e);if(!W(t))return st(1);let n=t.getBoundingClientRect(),{width:r,height:i,$:a}=qt(t),o=(a?at(n.width):n.width)/r,s=(a?at(n.height):n.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!s||!Number.isFinite(s))&&(s=1),{x:o,y:s}}var Xt=st(0);function Zt(e){let t=H(e);return!P()||!t.visualViewport?Xt:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function Qt(e,t,n){return t===void 0&&(t=!1),!!n&&t&&n===H(e)}function $t(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);let i=e.getBoundingClientRect(),a=Jt(e),o=st(1);t&&(r?X(r)&&(o=Yt(r)):o=Yt(e));let s=Qt(a,n,r)?Zt(a):st(0),c=(i.left+s.x)/o.x,l=(i.top+s.y)/o.y,u=i.width/o.x,d=i.height/o.y;if(a&&r){let e=H(a),t=X(r)?H(r):r,n=e,i=K(n);for(;i&&t!==n;){let e=Yt(i),t=i.getBoundingClientRect(),r=ie(i),a=t.left+(i.clientLeft+parseFloat(r.paddingLeft))*e.x,o=t.top+(i.clientTop+parseFloat(r.paddingTop))*e.y;c*=e.x,l*=e.y,u*=e.x,d*=e.y,c+=a,l+=o,n=H(i),i=K(n)}}return kt({width:u,height:d,x:c,y:l})}function en(e,t){let n=J(e).scrollLeft;return t?t.left+n:$t(G(e)).left+n}function tn(e,t){let n=e.getBoundingClientRect();return{x:n.left+t.scrollLeft-en(e,n),y:n.top+t.scrollTop}}function nn(e){let{elements:t,rect:n,offsetParent:r,strategy:i}=e,a=i===`fixed`,o=G(r),s=t?F(t.floating):!1;if(r===o||s&&a)return n;let c={scrollLeft:0,scrollTop:0},l=st(1),u=st(0),d=W(r);if((d||!a)&&((oe(r)!==`body`||N(o))&&(c=J(r)),d)){let e=$t(r);l=Yt(r),u.x=e.x+r.clientLeft,u.y=e.y+r.clientTop}let f=o&&!d&&!a?tn(o,c):st(0);return{width:n.width*l.x,height:n.height*l.y,x:n.x*l.x-c.scrollLeft*l.x+u.x+f.x,y:n.y*l.y-c.scrollTop*l.y+u.y+f.y}}function rn(e){return e.getClientRects?Array.from(e.getClientRects()):[]}function an(e){let t=J(e),n=e.ownerDocument.body,r=it(e.scrollWidth,e.clientWidth,n.scrollWidth,n.clientWidth),i=it(e.scrollHeight,e.clientHeight,n.scrollHeight,n.clientHeight),a=-t.scrollLeft+en(e),o=-t.scrollTop;return ie(n).direction===`rtl`&&(a+=it(e.clientWidth,n.clientWidth)-r),{width:r,height:i,x:a,y:o}}var on=25;function sn(e,t,n){n===void 0&&(n=`viewport`);let r=n===`layoutViewport`,i=H(e),a=G(e),o=i.visualViewport,s=a.clientWidth,c=a.clientHeight,l=0,u=0;if(o){let e=!P()||t===`fixed`;r?e||(l=-o.offsetLeft,u=-o.offsetTop):(s=o.width,c=o.height,e&&(l=o.offsetLeft,u=o.offsetTop))}if(en(a)<=0){let e=a.ownerDocument,t=e.body,n=getComputedStyle(t),r=e.compatMode===`CSS1Compat`&&parseFloat(n.marginLeft)+parseFloat(n.marginRight)||0,i=Math.abs(a.clientWidth-t.clientWidth-r),o=getComputedStyle(a).scrollbarGutter===`stable both-edges`?i/2:i;o<=on&&(s-=o)}return{width:s,height:c,x:l,y:u}}function cn(e,t){let n=$t(e,!0,t===`fixed`),r=n.top+e.clientTop,i=n.left+e.clientLeft,a=Yt(e);return{width:e.clientWidth*a.x,height:e.clientHeight*a.y,x:i*a.x,y:r*a.y}}function ln(e,t,n){let r;if(t===`viewport`||t===`layoutViewport`)r=sn(e,n,t);else if(t===`document`)r=an(G(e));else if(X(t))r=cn(t,n);else{let n=Zt(e);r={x:t.x-n.x,y:t.y-n.y,width:t.width,height:t.height}}return kt(r)}function un(e,t){let n=t.get(e);if(n)return n;let r=q(e,[],!1).filter(e=>X(e)&&oe(e)!==`body`),i=null,a=ie(e).position===`fixed`,o=a?ne(e):e;for(;X(o)&&!Y(o);){let e=ie(o),t=le(o),n=i?i.position:a?`fixed`:``;!t&&(n===`fixed`||n===`absolute`&&e.position===`static`)?r=r.filter(e=>e!==o):i=e,o=ne(o)}return t.set(e,r),r}function dn(e){let{element:t,boundary:n,rootBoundary:r,strategy:i}=e,a=[...n===`clippingAncestors`?F(t)?[]:un(t,this._c):[].concat(n),r],o=ln(t,a[0],i),s=o.top,c=o.right,l=o.bottom,u=o.left;for(let e=1;e<a.length;e++){let n=ln(t,a[e],i);s=it(n.top,s),c=rt(n.right,c),l=rt(n.bottom,l),u=it(n.left,u)}return{width:c-u,height:l-s,x:u,y:s}}function fn(e){let{width:t,height:n}=qt(e);return{width:t,height:n}}function pn(e,t,n){let r=W(t),i=G(t),a=n===`fixed`,o=$t(e,!0,a,t),s={scrollLeft:0,scrollTop:0},c=st(0);if((r||!a)&&((oe(t)!==`body`||N(i))&&(s=J(t)),r)){let e=$t(t,!0,a,t);c.x=e.x+t.clientLeft,c.y=e.y+t.clientTop}!r&&i&&(c.x=en(i));let l=i&&!r&&!a?tn(i,s):st(0);return{x:o.left+s.scrollLeft-c.x-l.x,y:o.top+s.scrollTop-c.y-l.y,width:o.width,height:o.height}}function mn(e){return ie(e).position===`static`}function hn(e,t){if(!W(e)||ie(e).position===`fixed`)return null;if(t)return t(e);let n=e.offsetParent;return G(e)===n&&(n=n.ownerDocument.body),n}function gn(e,t){let n=H(e);if(F(e))return n;if(!W(e)){let t=ne(e);for(;t&&!Y(t);){if(X(t)&&!mn(t))return t;t=ne(t)}return n}let r=hn(e,t);for(;r&&ee(r)&&mn(r);)r=hn(r,t);return r&&Y(r)&&mn(r)&&!le(r)?n:r||ce(e)||n}var _n=async function(e){let t=this.getOffsetParent||gn,n=this.getDimensions,r=await n(e.floating);return{reference:pn(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function vn(e){return ie(e).direction===`rtl`}var yn={convertOffsetParentRelativeRectToViewportRelativeRect:nn,getDocumentElement:G,getClippingRect:dn,getOffsetParent:gn,getElementRects:_n,getClientRects:rn,getDimensions:fn,getScale:Yt,isElement:X,isRTL:vn};function bn(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function xn(e,t,n){let r=null,i,a=G(e);function o(){var e;clearTimeout(i),(e=r)==null||e.disconnect(),r=null}function s(n,c){n===void 0&&(n=!1),c===void 0&&(c=1),o();let l=e.getBoundingClientRect(),{left:u,top:d,width:f,height:p}=l;if(n||t(),!f||!p)return;let m=ot(d),h=ot(a.clientWidth-(u+f)),g=ot(a.clientHeight-(d+p)),_=ot(u),v={rootMargin:-m+`px `+-h+`px `+-g+`px `+-_+`px`,threshold:it(0,rt(1,c))||1},y=!0;function b(t){let n=t[0].intersectionRatio;if(!bn(l,e.getBoundingClientRect()))return s();if(n!==c){if(!y)return s();n?s(!1,n):i=setTimeout(()=>{s(!1,1e-7)},1e3)}y=!1}try{r=new IntersectionObserver(b,{...v,root:a.ownerDocument})}catch{r=new IntersectionObserver(b,v)}r.observe(e)}let c=H(e),l=()=>s(n);return c.addEventListener(`resize`,l),s(!0),()=>{c.removeEventListener(`resize`,l),o()}}function Sn(e,t,n,r){r===void 0&&(r={});let{ancestorScroll:i=!0,ancestorResize:a=!0,elementResize:o=typeof ResizeObserver==`function`,layoutShift:s=typeof IntersectionObserver==`function`,animationFrame:c=!1}=r,l=Jt(e),u=i||a?[...l?q(l):[],...t?q(t):[]]:[];u.forEach(e=>{i&&e.addEventListener(`scroll`,n),a&&e.addEventListener(`resize`,n)});let d=l&&s?xn(l,n,a):null,f=-1,p=null;o&&(p=new ResizeObserver(e=>{let[r]=e;r&&r.target===l&&p&&t&&(p.unobserve(t),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var e;(e=p)==null||e.observe(t)})),n()}),l&&!c&&p.observe(l),t&&p.observe(t));let m,h=c?$t(e):null;c&&g();function g(){let t=$t(e);h&&!bn(h,t)&&n(),h=t,m=requestAnimationFrame(g)}return n(),()=>{var e;u.forEach(e=>{i&&e.removeEventListener(`scroll`,n),a&&e.removeEventListener(`resize`,n)}),d?.(),(e=p)==null||e.disconnect(),p=null,c&&cancelAnimationFrame(m)}}var Cn=Ut,wn=Wt,Tn=Lt,En=Kt,Dn=Bt,On=It,kn=Gt,An=(e,t,n)=>{let r=new Map,i=n??{},a={...yn,...i.platform,_c:r};return Ft(e,t,{...i,platform:a})},jn=e(n(),1),Mn=typeof document<`u`?Q.useLayoutEffect:function(){};function Nn(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(typeof e==`function`&&e.toString()===t.toString())return!0;let n,r,i;if(e&&t&&typeof e==`object`){if(Array.isArray(e)){if(n=e.length,n!==t.length)return!1;for(r=n;r--!==0;)if(!Nn(e[r],t[r]))return!1;return!0}if(i=Object.keys(e),n=i.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!{}.hasOwnProperty.call(t,i[r]))return!1;for(r=n;r--!==0;){let n=i[r];if(!(n===`_owner`&&e.$$typeof)&&!Nn(e[n],t[n]))return!1}return!0}return e!==e&&t!==t}function Pn(e){return typeof window>`u`?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function Fn(e,t){let n=Pn(e);return Math.round(t*n)/n}function In(e){let t=Q.useRef(e);return Mn(()=>{t.current=e}),t}function Ln(e){e===void 0&&(e={});let{placement:t=`bottom`,strategy:n=`absolute`,middleware:r=[],platform:i,elements:{reference:a,floating:o}={},transform:s=!0,whileElementsMounted:c,open:l}=e,[u,d]=Q.useState({x:0,y:0,strategy:n,placement:t,middlewareData:{},isPositioned:!1}),[f,p]=Q.useState(r);Nn(f,r)||p(r);let[m,h]=Q.useState(null),[g,_]=Q.useState(null),v=Q.useCallback(e=>{e!==S.current&&(S.current=e,h(e))},[]),y=Q.useCallback(e=>{e!==C.current&&(C.current=e,_(e))},[]),b=a||m,x=o||g,S=Q.useRef(null),C=Q.useRef(null),w=Q.useRef(u),T=c!=null,E=In(c),D=In(i),O=In(l),k=Q.useCallback(()=>{if(!S.current||!C.current)return;let e={placement:t,strategy:n,middleware:f};D.current&&(e.platform=D.current),An(S.current,C.current,e).then(e=>{let t={...e,isPositioned:O.current!==!1};A.current&&!Nn(w.current,t)&&(w.current=t,jn.flushSync(()=>{d(t)}))})},[f,t,n,D,O]);Mn(()=>{l===!1&&w.current.isPositioned&&(w.current.isPositioned=!1,d(e=>({...e,isPositioned:!1})))},[l]);let A=Q.useRef(!1);Mn(()=>(A.current=!0,()=>{A.current=!1}),[]),Mn(()=>{if(b&&(S.current=b),x&&(C.current=x),b&&x){if(E.current)return E.current(b,x,k);k()}},[b,x,k,E,T]);let j=Q.useMemo(()=>({reference:S,floating:C,setReference:v,setFloating:y}),[v,y]),M=Q.useMemo(()=>({reference:b,floating:x}),[b,x]),N=Q.useMemo(()=>{let e={position:n,left:0,top:0};if(!M.floating)return e;let t=Fn(M.floating,u.x),r=Fn(M.floating,u.y);return s?{...e,transform:`translate(`+t+`px, `+r+`px)`,...Pn(M.floating)>=1.5&&{willChange:`transform`}}:{position:n,left:t,top:r}},[n,s,M.floating,u.x,u.y]);return Q.useMemo(()=>({...u,update:k,refs:j,elements:M,floatingStyles:N}),[u,k,j,M,N])}var Rn=e=>{function t(e){return{}.hasOwnProperty.call(e,`current`)}return{name:`arrow`,options:e,fn(n){let{element:r,padding:i}=typeof e==`function`?e(n):e;return r&&t(r)?r.current==null?{}:On({element:r.current,padding:i}).fn(n):r?On({element:r,padding:i}).fn(n):{}}}},zn=(e,t)=>{let n=Cn(e);return{name:n.name,fn:n.fn,options:[e,t]}},Bn=(e,t)=>{let n=wn(e);return{name:n.name,fn:n.fn,options:[e,t]}},Vn=(e,t)=>({fn:kn(e).fn,options:[e,t]}),Hn=(e,t)=>{let n=Tn(e);return{name:n.name,fn:n.fn,options:[e,t]}},Un=(e,t)=>{let n=En(e);return{name:n.name,fn:n.fn,options:[e,t]}},Wn=(e,t)=>{let n=Dn(e);return{name:n.name,fn:n.fn,options:[e,t]}},Gn=(e,t)=>{let n=Rn(e);return{name:n.name,fn:n.fn,options:[e,t]}};function Kn(e){let{open:t=!1,onOpenChange:n,elements:r={}}=e,i=fe(),a=Z()!=null,o=z(()=>new Ae({open:t,transitionStatus:void 0,onOpenChange:n,referenceElement:r.reference??null,floatingElement:r.floating??null,triggerElements:new je,floatingId:i,syncOnly:!1,nested:a})).current;return R(()=>{let e={open:t,floatingId:i};r.reference!==void 0&&(e.referenceElement=r.reference,e.domReferenceElement=X(r.reference)?r.reference:null),r.floating!==void 0&&(e.floatingElement=r.floating),o.update(e)},[t,i,r.reference,r.floating,o]),o.context.onOpenChange=n,o.context.nested=a,o}function qn(e){return Jn(e,e.rootContext)}function Jn(e,t){let{nodeId:n,externalTree:r}=e,i=t.useState(`referenceElement`),a=t.useState(`floatingElement`),o=t.useState(`domReferenceElement`),s=t.useState(`open`),c=t.useState(`floatingId`),[l,u]=Q.useState(null),[d,f]=Q.useState(void 0),[p,m]=Q.useState(void 0),h=Q.useRef(null),g=Ne(r),_=Q.useMemo(()=>({reference:i,floating:a,domReference:o}),[i,a,o]),v=Ln({...e,elements:{..._,...l&&{reference:l}}}),y=X(d)?d:null,b=p===void 0?t.state.floatingElement:p;t.useSyncedValue(`referenceElement`,d??null),t.useSyncedValue(`domReferenceElement`,d===void 0?o:y),t.useSyncedValue(`floatingElement`,b);let x=Q.useCallback(e=>{let t=X(e)?{getBoundingClientRect:()=>e.getBoundingClientRect(),getClientRects:()=>e.getClientRects(),contextElement:e}:e;u(t),v.refs.setReference(t)},[v.refs]),S=Q.useCallback(e=>{(X(e)||e===null)&&(h.current=e,f(e)),(X(v.refs.reference.current)||v.refs.reference.current===null||e!==null&&!X(e))&&v.refs.setReference(e)},[v.refs,f]),C=Q.useCallback(e=>{m(e),v.refs.setFloating(e)},[v.refs]),w=Q.useMemo(()=>({...v.refs,setReference:S,setFloating:C,setPositionReference:x,domReference:h}),[v.refs,S,C,x]),T=Q.useMemo(()=>({...v.elements,domReference:o}),[v.elements,o]),E=Q.useMemo(()=>({...v,dataRef:t.context.dataRef,open:s,onOpenChange:t.setOpen,events:t.context.events,floatingId:c,refs:w,elements:T,nodeId:n,rootStore:t}),[v,w,T,n,t,s,c]);return R(()=>{o&&(h.current=o)},[o]),R(()=>{t.context.dataRef.current.floatingContext=E;let e=g?.nodesRef.current.find(e=>e.id===n);e&&(e.context=E)}),Q.useMemo(()=>({...v,context:E,refs:w,elements:T,rootStore:t}),[v,w,T,E,t])}var Yn=`Escape`;function Xn(e){return f&&e.movementX===0&&e.movementY===0}function Zn(e,t,n){switch(e){case`vertical`:return t;case`horizontal`:return n;default:return t||n}}function Qn(e,t){return Zn(t,e===`ArrowUp`||e===`ArrowDown`,e===`ArrowLeft`||e===`ArrowRight`)}function $n(e,t,n){return Zn(t,e===`ArrowDown`,n?e===`ArrowLeft`:e===`ArrowRight`)||e===`Enter`||e===` `||e===``}function er(e,t,n){return Zn(t,n?e===a:e===v,e===j)}function tr(e,t,n,r){return t===`both`||t===`horizontal`&&r?e===Yn:Zn(t,n?e===v:e===a,e===d)}function nr(e,t){let{listRef:n,activeIndex:r,onNavigate:a=()=>{},enabled:c=!0,selectedIndex:l=null,allowEscape:d=!1,loopFocus:f=!1,nested:m=!1,rtl:g=!1,virtual:v=!1,focusItemOnOpen:b=`auto`,focusItemOnHover:x=!0,openOnArrowKeyDown:S=!0,disabledIndices:w=void 0,orientation:T=`vertical`,parentOrientation:E,id:D,resetOnPointerLeave:O=!0,externalTree:k,grid:j}=t,M=j!=null,N=`rootStore`in e?e.rootStore:e,P=N.useState(`open`),F=N.useState(`floatingElement`),I=N.useState(`domReferenceElement`),L=N.context.dataRef,z=C(F),V=h(I),ee=Ve(z),H=Z(),U=Ne(k),te=Q.useRef(b),G=Q.useRef(l??-1),K=Q.useRef(null),ne=Q.useRef(!0),q=B(e=>{a(G.current===-1?null:G.current,e)}),re=Q.useRef(!!F),ie=Q.useRef(P),J=Q.useRef(!1),ae=Q.useRef(!1),oe=Q.useRef(null),se=Ve(w),ce=Ve(P),le=Ve(l),Y=Ve(O),X=de(),ue=de(),fe=B(()=>{function e(e){v?U?.events.emit(`virtualfocus`,e):oe.current=Ee(e,{sync:J.current,preventScroll:!0})}let t=n.current[G.current],r=ae.current;t&&e(t),(J.current?e=>e():e=>X.request(e))(()=>{let i=n.current[G.current]||t;i&&(t||e(i),xe&&(r||!ne.current)&&i.scrollIntoView?.({block:`nearest`,inline:`nearest`}))})});R(()=>{L.current.orientation=T},[L,T]),R(()=>{c&&(P&&F?(G.current=l??-1,te.current&&l!=null&&(ae.current=!0,q())):re.current&&(G.current=-1,q()))},[c,P,F,l,q]),R(()=>{if(c){if(!P){J.current=!1;return}if(F){if(r==null){if(J.current=!1,le.current!=null)return;if(re.current&&(G.current=-1,fe()),(!ie.current||!re.current)&&te.current&&(K.current!=null||te.current===!0&&K.current==null)){let e=0,t=()=>{n.current[0]==null?(e<2&&(e?e=>ue.request(e):queueMicrotask)(t),e+=1):(G.current=K.current==null||$n(K.current,T,g)||m?_(n):A(n),K.current=null,q())};t()}}else s(n.current,r)||(G.current=r,fe(),ae.current=!1)}}},[c,P,F,r,le,m,n,T,g,q,fe,ue]),R(()=>{if(!c||F||!U||v||!re.current)return;let e=U.nodesRef.current,t=e.find(e=>e.id===H)?.context?.elements.floating,n=y(i(I??t??null)),r=e.some(e=>e.context&&u(e.context.elements.floating,n));t&&!r&&ne.current&&t.focus({preventScroll:!0})},[c,F,I,U,H,v]),R(()=>{ie.current=P,re.current=!!F}),R(()=>{P||(K.current=null,te.current=b)},[P,b]);let pe=r!=null,me=B(e=>{if(!ce.current)return;let t=n.current.indexOf(e.currentTarget);t!==-1&&(G.current!==t||r!==t)&&(G.current=t,q(e))}),he=B(()=>E??U?.nodesRef.current.find(e=>e.id===H)?.context?.dataRef?.current.orientation),ge=B(()=>_(n,se.current)),_e=B(e=>{if(ne.current=!1,J.current=!0,e.which===229||!ce.current&&e.currentTarget===ee.current)return;if(m&&tr(e.key,T,g,M)){Qn(e.key,he())||ke(e),N.setOpen(!1,ye(be,e.nativeEvent)),W(I)&&(v?U?.events.emit(`virtualfocus`,I):I.focus());return}let t=G.current,r=_(n,w),i=A(n,w);if(V||(e.key===`Home`&&(ke(e),G.current=r,q(e)),e.key===`End`&&(ke(e),G.current=i,q(e))),j!=null){let t=j(e,G.current,n,T,f,g,w,r,i);if(t!=null&&(G.current=t,q(e)),T===`both`)return}if(Qn(e.key,T)){if(ke(e),P&&!v&&y(e.currentTarget.ownerDocument)===e.currentTarget){G.current=$n(e.key,T,g)?r:i,q(e);return}$n(e.key,T,g)?f?t>=i?d&&t!==n.current.length?G.current=-1:(J.current=!1,G.current=r):G.current=o(n.current,{startingIndex:t,disabledIndices:w}):G.current=Math.min(i,o(n.current,{startingIndex:t,disabledIndices:w})):f?t<=r?d&&t!==-1?G.current=n.current.length:(J.current=!1,G.current=i):G.current=o(n.current,{startingIndex:t,decrement:!0,disabledIndices:w}):G.current=Math.max(r,o(n.current,{startingIndex:t,decrement:!0,disabledIndices:w})),s(n.current,G.current)&&(G.current=-1),q(e)}}),xe=Q.useMemo(()=>({onFocus(e){J.current=!0,me(e)},onClick:({currentTarget:e})=>e.focus({preventScroll:!0}),onMouseMove(e){Xn(e)||(J.current=!0,ae.current=!1,x&&me(e))},onPointerLeave(e){if(!ce.current||!ne.current||e.pointerType===`touch`)return;J.current=!0;let t=e.relatedTarget;if(!(!x||n.current.includes(t))&&Y.current&&(oe.current?.(),oe.current=null,G.current=-1,q(e),!v)){let e=ee.current,t=y(i(e));e&&u(e,t)&&e.focus({preventScroll:!0})}}}),[me,ce,ee,x,n,q,Y,v]),Se=Q.useMemo(()=>v&&P&&pe&&{"aria-activedescendant":`${D}-${r}`},[v,P,pe,D,r]),Ce=Q.useMemo(()=>({...V?{}:Se,onKeyDown(e){if(e.key===`Tab`&&e.shiftKey&&P&&!v){let t=p(e.nativeEvent);if(t&&!u(ee.current,t))return;ke(e),N.setOpen(!1,ye(ve,e.nativeEvent)),W(I)&&I.focus();return}_e(e)},onPointerMove(e){Xn(e)||(ne.current=!0)}}),[Se,_e,ee,V,N,P,v,I]),we=Q.useMemo(()=>{function e(e){N.setOpen(!0,ye(be,e.nativeEvent,e.currentTarget))}function t(e){b===`auto`&&Pe(e.nativeEvent)&&(te.current=!v)}function n(e){te.current=b,b===`auto`&&Te(e.nativeEvent)&&(te.current=!0)}return{onKeyDown(t){let n=N.select(`open`);ne.current=!1;let r=t.key.startsWith(`Arrow`),i=er(t.key,he(),g),a=Qn(t.key,T),o=(m?i:a)||t.key===`Enter`||t.key.trim()===``;if(v&&n)return _e(t);if(!(!n&&!S&&r)){if(o){let e=Qn(t.key,he());K.current=m&&e?null:t.key}if(m){i&&(ke(t),n?(G.current=ge(),q(t)):e(t));return}a&&(le.current!=null&&(G.current=le.current),ke(t),!n&&S?e(t):_e(t),n&&q(t))}},onFocus(e){N.select(`open`)&&!v&&(G.current=-1,q(e))},onPointerDown:n,onPointerEnter:n,onMouseDown:t,onClick:t}},[_e,b,ge,m,q,N,S,T,he,g,le,v]),De=Q.useMemo(()=>({...Se,...we}),[Se,we]);return Q.useMemo(()=>c?{reference:De,floating:Ce,item:xe,trigger:we}:{},[c,De,Ce,we,xe])}function rr(e,t){let{listRef:n,elementsRef:r,activeIndex:i,onMatch:a,disabledIndices:o,onTyping:s,enabled:l=!0,resetMs:d=750,selectedIndex:f=null}=t,p=`rootStore`in e?e.rootStore:e,h=p.useState(`open`),_=g(),v=Q.useRef(``),y=Q.useRef(f??i??-1),b=Q.useRef(null),x=B(e=>{function t(e){return r?.current[e]}function l(e){let n=t(e);return n&&!c(n)||n?.matches(`:disabled`)?!1:o==null||!m(V,e,o)}function u(e,t,n=0){if(e.length===0)return-1;let r=(n%e.length+e.length)%e.length,i=t.toLowerCase();for(let t=0;t<e.length;t+=1){let n=(r+t)%e.length;if(!(!e[n]?.toLowerCase().startsWith(i)||!l(n)))return n}return-1}let p=n.current;if(v.current.length>0&&e.key===` `&&(ke(e),s?.(!0)),v.current.length>0&&v.current[0]!==` `&&u(p,v.current)===-1&&e.key!==` `&&s?.(!1),p==null||e.key.length!==1||e.ctrlKey||e.metaKey||e.altKey)return;h&&e.key!==` `&&(ke(e),s?.(!0));let g=v.current===``;g&&(y.current=f??i??-1),p.every((e,t)=>e&&l(t)?e[0]?.toLowerCase()!==e[1]?.toLowerCase():!0)&&v.current===e.key&&(v.current=``,y.current=b.current),v.current+=e.key,_.start(d,()=>{v.current=``,y.current=b.current,s?.(!1)});let x=((g?f??i??-1:y.current)??0)+1,S=u(p,v.current,x);S===-1?e.key!==` `&&(v.current=``,s?.(!1)):(a?.(S),b.current=S)}),S=B(e=>{let t=e.relatedTarget,n=p.select(`domReferenceElement`),r=p.select(`floatingElement`);u(n,t)||u(r,t)||(_.clear(),v.current=``,y.current=b.current,s?.(!1))});R(()=>{!h&&f!==null||(_.clear(),b.current=null,v.current!==``&&(v.current=``))},[h,f,_]);let C=Q.useMemo(()=>({onKeyDown:x,onBlur:S}),[x,S]);return Q.useMemo(()=>l?{reference:C,floating:C}:{},[l,C])}var ir=Q.createContext(void 0);function ar(){return Q.useContext(ir)?.direction??`ltr`}var or=e=>({name:`arrow`,options:e,async fn(t){let{x:n,y:r,placement:i,rects:a,platform:o,elements:s,middlewareData:c}=t,{element:l,padding:u=0,offsetParent:d=`real`}=ut(e,t)||{};if(l==null)return{};let f=Ot(u),p={x:n,y:r},m=gt(i),h=mt(m),g=await o.getDimensions(l),_=m===`y`,v=_?`top`:`left`,y=_?`bottom`:`right`,b=_?`clientHeight`:`clientWidth`,x=a.reference[h]+a.reference[m]-p[m]-a.floating[h],S=p[m]-a.reference[m],C=d===`real`?await o.getOffsetParent?.(l):s.floating,w=s.floating[b]||a.floating[h];(!w||!await o.isElement?.(C))&&(w=s.floating[b]||a.floating[h]);let T=x/2-S/2,E=w/2-g[h]/2-1,D=Math.min(f[v],E),O=Math.min(f[y],E),k=D,A=w-g[h]-O,j=w/2-g[h]/2+T,M=lt(k,j,A),N=!c.arrow&&ft(i)!=null&&j!==M&&a.reference[h]/2-(j<k?D:O)-g[h]/2<0,P=N?j<k?j-k:j-A:0;return{[m]:p[m]+P,data:{[m]:M,centerOffset:j-M-P,...N&&{alignmentOffset:P}},reset:N}}}),sr=(e,t)=>{let{name:n,fn:r}=or(e);return{name:n,fn:r,options:[e,t]}},cr={name:`hide`,async fn(e){let{width:t,height:n,x:r,y:i}=e.rects.reference,a=t===0&&n===0&&r===0&&i===0,o=await e.platform.detectOverflow(e,{elementContext:`reference`});return{data:{referenceHidden:o.top-n>=0||o.right-t>=0||o.bottom-n>=0||o.left-t>=0||a}}}},lr={sideX:`left`,sideY:`top`},ur=`--available-width`,dr=`--available-height`,fr=`--anchor-width`,pr=`--anchor-height`,mr=`--transform-origin`,hr=ur,gr=dr;function _r(e,t,n){let r=e===`inline-start`||e===`inline-end`;return{top:`top`,right:r?n?`inline-start`:`inline-end`:`right`,bottom:`bottom`,left:r?n?`inline-end`:`inline-start`:`left`}[t]}function vr(e,t,n){let{rects:r,placement:i}=e;return{side:_r(t,dt(i),n),align:ft(i)||`center`,anchor:{width:r.reference.width,height:r.reference.height},positioner:{width:r.floating.width,height:r.floating.height}}}function yr(e){return br(e,qn)}function br(e,t){let{anchor:n,positionMethod:r=`absolute`,side:a=`bottom`,sideOffset:o=0,align:s=`center`,alignOffset:c=0,collisionBoundary:l,collisionPadding:u=5,sticky:d=!1,arrowPadding:f=5,disableAnchorTracking:p=!1,inline:m,keepMounted:h=!1,floatingRootContext:g,mounted:_,collisionAvoidance:v,shift:y,nodeId:b,adaptiveOrigin:x,lazyFlip:S=!1,externalTree:C}=e,[w,T]=Q.useState(null);!_&&w!==null&&T(null);let E=v.side||`flip`,D=v.align||`flip`,O=v.fallbackAxisSide||`end`,k=y?.crossAxis??!1,A=y?.rootBoundary,j=typeof n==`function`?n:void 0,M=B(j),N=j?M:n,P=Ve(n),F=Ve(_),I=ar()===`rtl`,L=w||{top:`top`,right:`right`,bottom:`bottom`,left:`left`,"inline-end":I?`left`:`right`,"inline-start":I?`right`:`left`}[a],z=s===`center`?L:`${L}-${s}`,V=u;typeof V==`number`?V={top:V,right:V,bottom:V,left:V}:V&&={top:V.top||0,right:V.right||0,bottom:V.bottom||0,left:V.left||0};let ee=+(a===`bottom`),U=+(a===`top`),W=+(a===`right`),te=+(a===`left`),G={boundary:l===`clipping-ancestors`?`clippingAncestors`:l,padding:V},K=Q.useRef(null),ne=Ve(o),q=Ve(c),re=typeof o==`function`?0:o,ie=typeof c==`function`?0:c,J=[];m&&J.push(m),J.push(zn(e=>{let t=vr(e,a,I),n=typeof ne.current==`function`?ne.current(t):ne.current,r=typeof q.current==`function`?q.current(t):q.current;return{mainAxis:n,crossAxis:r,alignmentAxis:r}},[re,ie,I,a]));let ae=D===`none`&&E!==`shift`,oe=!ae&&(d||k||E===`shift`),se=E===`none`?null:Hn({...G,padding:{top:V.top+1+ee,right:V.right+1+te,bottom:V.bottom+1+U,left:V.left+1+W},mainAxis:!k&&E===`flip`,crossAxis:D===`flip`&&`alignment`,fallbackAxisSideDirection:O}),ce=ae?null:Bn({...G,rootBoundary:A,mainAxis:D!==`none`,crossAxis:oe,limiter:d||k?void 0:Vn(e=>{if(!K.current)return{};let{width:t,height:n}=K.current.getBoundingClientRect(),r=ht(dt(e.placement)),i=r===`y`?t:n,a=r===`y`?V.left+V.right:V.top+V.bottom;return{offset:i/2+a/2}})},[G,d,k,A,V,D]);E===`shift`||D===`shift`||s===`center`?J.push(ce,se):J.push(se,ce),J.push(Un({...G,apply({elements:{floating:e},availableWidth:t,availableHeight:n,rects:r}){if(!F.current)return;let i=e.style;i.setProperty(hr,`${t}px`),i.setProperty(gr,`${n}px`);let a=H(e).devicePixelRatio||1,{x:o,y:s,width:c,height:l}=r.reference,u=(Math.round((o+c)*a)-Math.round(o*a))/a,d=(Math.round((s+l)*a)-Math.round(s*a))/a;i.setProperty(fr,`${u}px`),i.setProperty(pr,`${d}px`)}}),sr(e=>({element:K.current||i(e.elements.floating).createElement(`div`),padding:K.current?f:0,offsetParent:`floating`}),[f]),{name:`transformOrigin`,fn(e){let{elements:{floating:t},middlewareData:n,placement:r,platform:i,rects:s,y:c}=e,l=dt(r),u=ft(r),d=ht(l)===`y`,f=K.current,p=typeof o==`function`?o(vr(e,a,I)):o,m;m=!f&&u&&Math.abs(d?n.shift?.x||0:n.shift?.y||0)<=1?u===`start`===(d&&i.isRTL?.(t)===!0)?`100%`:`0%`:`${(d?n.arrow?.x||0:n.arrow?.y||0)+(d?f?.clientWidth||0:f?.clientHeight||0)/2}px`;let h=l===`top`||l===`left`?`calc(100% + ${p}px)`:`${-p}px`;return oe&&d&&Math.abs(n.shift?.y||0)>p&&(h=`${s.reference.y+s.reference.height/2-c}px`),t.style.setProperty(mr,d?`${m} ${h}`:`${h} ${m}`),{}}},cr,x),R(()=>{!_&&g&&g.update({referenceElement:null,floatingElement:null,domReferenceElement:null,positionReference:null})},[_,g]);let le=Q.useMemo(()=>({ancestorScroll:!p,elementResize:!p&&typeof ResizeObserver<`u`,layoutShift:!p&&typeof IntersectionObserver<`u`}),[p]),{refs:Y,elements:X,x:ue,y:de,middlewareData:fe,update:pe,placement:me,context:he,isPositioned:ge,floatingStyles:_e}=t({rootContext:g,open:h?_:void 0,placement:z,middleware:J,strategy:r,whileElementsMounted:h?void 0:(...e)=>Sn(...e,le),nodeId:b,externalTree:C}),{sideX:ve,sideY:ye}=fe.adaptiveOrigin||lr,be=ge?r:`fixed`,xe=Q.useMemo(()=>{let e;return e=ge?x?{position:be,[ve]:ue,[ye]:de}:{..._e,position:be}:{position:be,top:0,left:0},e[hr]=`100vw`,e[gr]=`100vh`,ge||(e.opacity=0),e},[x,be,ve,ue,ye,de,_e,ge]),Se=Q.useRef(null);R(()=>{if(!_)return;let e=P.current,t=typeof e==`function`?e():e,n=(xr(t)?t.current:t)||null;n!==Se.current&&(Y.setPositionReference(n),Se.current=n)},[_,Y,N,P]),Q.useEffect(()=>{if(!_)return;let e=P.current;typeof e!=`function`&&xr(e)&&e.current!==Se.current&&(Y.setPositionReference(e.current),Se.current=e.current)},[_,Y,N,P]),Q.useEffect(()=>{if(h&&_&&X.reference&&X.floating)return Sn(X.reference,X.floating,pe,le)},[h,_,X,pe,le]);let Z=dt(me),Ce=_r(a,Z,I),we=ft(me)||`center`,Te=!!fe.hide?.referenceHidden;R(()=>{S&&_&&ge&&Z!==L&&T(Z)},[S,_,ge,Z,L]);let Ee=Q.useMemo(()=>({position:`absolute`,top:fe.arrow?.y,left:fe.arrow?.x}),[fe.arrow]),De=fe.arrow?.centerOffset!==0;return Q.useMemo(()=>({positionerStyles:xe,arrowStyles:Ee,arrowRef:K,arrowUncentered:De,side:Ce,align:we,physicalSide:Z,anchorHidden:Te,refs:Y,context:he,isPositioned:ge,update:pe}),[xe,Ee,K,De,Ce,we,Z,Te,Y,he,ge,pe])}function xr(e){return e!=null&&`current`in e}function Sr(e){return e===`starting`?D:I}function Cr(e,t,{styles:n,transitionStatus:r,props:i,refs:a,hidden:o,inert:s=!1}){let c={...n};return s&&(c.pointerEvents=`none`),U(`div`,e,{state:t,ref:a,props:[{role:`presentation`,hidden:o,style:c},Sr(r),i],stateAttributesMapping:Oe})}var wr=[{id:`amazon-bedrock`,name:`Amazon Bedrock`,envVarName:`AWS_ACCESS_KEY_ID`},{id:`openai`,name:`OpenAI`,envVarName:`OPENAI_API_KEY`},{id:`openai-chat-completions`,name:`OpenAI Chat Completions`,envVarName:`OPENAI_CHAT_COMPLETIONS_API_KEY`},{id:`openai-chat-completions-base-url`,name:`OpenAI Chat Completions Base URL`,envVarName:`OPENAI_CHAT_COMPLETIONS_BASE_URL`},{id:`openai-chat-completions-model`,name:`OpenAI Chat Completions Model`,envVarName:`OPENAI_CHAT_COMPLETIONS_MODEL`},{id:`anthropic`,name:`Anthropic`,envVarName:`ANTHROPIC_API_KEY`},{id:`google-vertex`,name:`Google Vertex`,envVarName:`GOOGLE_CLOUD_API_KEY`},{id:`google`,name:`Google Gemini`,envVarName:`GEMINI_API_KEY`},{id:`mistral`,name:`Mistral`,envVarName:`MISTRAL_API_KEY`},{id:`groq`,name:`Groq`,envVarName:`GROQ_API_KEY`},{id:`openrouter`,name:`OpenRouter`,envVarName:`OPENROUTER_API_KEY`},{id:`vercel-ai-gateway`,name:`Vercel AI Gateway`,envVarName:`AI_GATEWAY_API_KEY`},{id:`github-copilot`,name:`GitHub Copilot`,envVarName:`GITHUB_COPILOT_TOKEN`,authType:`oauth`},{id:`ollama`,name:`Ollama`,envVarName:`OLLAMA_BASE_URL`},{id:`daytona`,name:`Daytona`,envVarName:`DAYTONA_API_KEY`},{id:`daytona-target`,name:`Daytona Target`,envVarName:`DAYTONA_TARGET`}],Tr=[`daytona`,`daytona-target`,`openai-chat-completions-base-url`,`openai-chat-completions-model`],Er=`openai-chat-completions`,Dr=`${Er}+`,Or=`custom+`;function kr(e){return e.startsWith(Or)}function Ar(e){return e===`openai-chat-completions`||e.startsWith(Dr)}function jr(e){return e.startsWith(Dr)}var Mr=wr.map(({id:e,name:t,envVarName:n,authType:r})=>({id:e,name:t,envVarName:n,authType:r})),Nr=Mr.flatMap(e=>Tr.includes(e.id)?[]:[e.id]);Mr.filter(e=>!Tr.includes(e.id)&&e.authType!==`oauth`),Array.from(new Set([...Mr.flatMap(e=>Nr.includes(e.id)||e.id===`openai-chat-completions-base-url`||e.id===`openai-chat-completions-model`?[e.envVarName]:[]),`HF_TOKEN`,`ANT_LING_API_KEY`,`AZURE_OPENAI_API_KEY`,`NVIDIA_API_KEY`,`DEEPSEEK_API_KEY`,`GOOGLE_CLOUD_API_KEY`,`CEREBRAS_API_KEY`,`XAI_API_KEY`,`RADIUS_API_KEY`,`ZAI_API_KEY`,`ZAI_CODING_CN_API_KEY`,`MINIMAX_API_KEY`,`MINIMAX_CN_API_KEY`,`MOONSHOT_API_KEY`,`FIREWORKS_API_KEY`,`TOGETHER_API_KEY`,`OPENCODE_API_KEY`,`KIMI_API_KEY`,`CLOUDFLARE_API_KEY`,`CLOUDFLARE_ACCOUNT_ID`,`CLOUDFLARE_GATEWAY_ID`,`XIAOMI_API_KEY`,`XIAOMI_TOKEN_PLAN_CN_API_KEY`,`XIAOMI_TOKEN_PLAN_AMS_API_KEY`,`XIAOMI_TOKEN_PLAN_SGP_API_KEY`,`ANTHROPIC_OAUTH_TOKEN`,`ANTHROPIC_OAUTH_KEY`,`COPILOT_GITHUB_TOKEN`,`GITHUB_COPILOT_TOKEN`,`AWS_SECRET_ACCESS_KEY`,`AWS_BEARER_TOKEN_BEDROCK`,`AWS_PROFILE`,`AWS_ACCESS_KEY_ID`,`DAYTONA_API_KEY`,`ORG_DAYTONA_API_KEY`,`DAYTONA_TARGET`]));function Pr(e){let t=Q.useRef(``),n=Q.useCallback(n=>{n.defaultPrevented||(t.current=n.pointerType,e(n,n.pointerType))},[e]);return{onClick:Q.useCallback(n=>{if(n.detail===0){e(n,`keyboard`);return}`pointerType`in n?e(n,n.pointerType):e(n,t.current),t.current=``},[e]),onPointerDown:n}}function Fr(e,t){let{onClick:n,onPointerDown:r}=Pr(B((n,r)=>{(typeof e==`function`?e():e)||t(r||(b?`touch`:``))}));return Q.useMemo(()=>({onClick:n,onPointerDown:r}),[n,r])}function Ir(e){let[t,n]=Q.useState(null),r=Fr(e,n);return Je(e,t=>{t&&!e&&n(null)}),Q.useMemo(()=>({openMethod:t,triggerProps:r}),[t,r])}function Lr({className:e,...t}){return(0,$.jsx)(`label`,{"data-slot":`label`,className:M(`flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50`,e),...t})}function Rr(e,t,n,r=!0,i){let[a,o]=Q.useState(),s=He(i?`${i}-label`:void 0),c=e??t??a;return R(()=>{let i=e||t||!r?void 0:zr(n.current,s);a!==i&&o(i)}),c}function zr(e,t){let n=Br(e);if(n)return!n.id&&t&&(n.id=t),n.id||void 0}function Br(e){if(!e)return;let t=e.parentElement;if(t&&t.tagName===`LABEL`)return t;let n=e.id;if(n){let t=e.nextElementSibling;if(t&&t.htmlFor===n)return t}let r=e.labels;return r&&r[0]}function Vr(e){let t=Q.useRef(!0);t.current&&(t.current=!1,e())}function Hr(e){let[t,n]=Q.useState({current:e,previous:null});return Object.is(e,t.current)||n({current:e,previous:t.current}),t.previous}function Ur(e){return e==null||e.hasAttribute(`disabled`)||e.getAttribute(`aria-disabled`)===`true`}var Wr=Q.createContext(void 0),Gr=Q.createContext(void 0),Kr=Q.createContext(void 0);function qr(){let e=Q.useContext(Wr);if(e===void 0)throw Error(re(60));return e}function Jr(){let e=Q.useContext(Gr);if(e===void 0)throw Error(re(101));return e}function Yr(){let e=Q.useContext(Kr);if(e===void 0)throw Error(re(61));return e}function Xr(e,t,n=Object.is){let{length:r}=e;if(r!==t.length)return!1;for(let i=0;i<r;i+=1)if(!n(e[i],t[i]))return!1;return!0}var Zr=(e,t)=>Object.is(e,t);function Qr(e,t,n){return e==null||t==null?Object.is(e,t):n(e,t)}function $r(e,t,n){return Array.isArray(e)&&Array.isArray(t)?!Xr(e,t,(e,t)=>Qr(e,t,n)):e!==t}function ei(e,t,n){return e?e.some(e=>e!==void 0&&Qr(t,e,n)):!1}function ti(e,t,n){return e?e.findIndex(e=>e!==void 0&&Qr(e,t,n)):-1}function ni(e,t){if(t!==Zr)return n=>ei(e,n,t);let n=new Set(e);return n.delete(void 0),t=>n.has(t)&&(t!==0||e.some(e=>Object.is(t,e)))}function ri(e,t,n,r){let i=r&&Array.isArray(t)?e.findIndex(ni(t,n)):ti(e,t,n);return i===-1?null:i}function ii(e,t,n,r,i,a){return ei(r,t,i)?a!=null&&e>a&&ei(r,n[a],i)?a:e:e===a?ri(n,r,i,!0):a}function ai(e,t,n){return e.filter(e=>!Qr(t,e,n))}function oi(e){if(e==null)return``;if(typeof e==`string`)return e;try{return JSON.stringify(e)}catch{return String(e)}}function si(e){return typeof e==`object`&&!!e&&Array.isArray(e.items)}function ci(e){return si(e?.[0])}function li(e){return ci(e)?e.flatMap(e=>e.items):e}function ui(e){if(!Array.isArray(e))return e!=null&&`null`in e;let t=e;if(ci(t)){for(let e of t)for(let t of e.items)if(t&&t.value==null&&t.label!=null)return!0;return!1}for(let e of t)if(e&&e.value==null&&e.label!=null)return!0;return!1}function di(e,t){if(t&&e!=null)return t(e)??``;if(e&&typeof e==`object`){if(`label`in e&&e.label!=null)return String(e.label);if(`value`in e)return String(e.value)}return oi(e)}function fi(e,t){return t&&e!=null?t(e)??``:e&&typeof e==`object`&&`value`in e&&`label`in e?oi(e.value):oi(e)}function pi(e,t,n){function r(){return di(e,n)}if(n&&e!=null)return n(e);if(e&&typeof e==`object`&&`label`in e&&e.label!=null)return e.label;if(t&&!Array.isArray(t))return(Object.hasOwn(t,e)?t[e]:void 0)??r();if(Array.isArray(t)){let n=li(t);if(typeof e!=`object`||!e){let t=n.find(t=>t.value===e);return t&&t.label!=null?t.label:r()}if(`value`in e){let t=n.find(t=>t&&t.value===e.value);if(t&&t.label!=null)return t.label}}return r()}function mi(e,t,n){return e.reduce((e,r,i)=>(i>0&&e.push(`, `),e.push((0,$.jsx)(Q.Fragment,{children:pi(r,t,n)},i)),e),[])}var hi={id:e=>e.id,labelId:e=>e.labelId,modal:e=>e.modal,items:e=>e.items,itemToStringLabel:e=>e.itemToStringLabel,isItemEqualToValue:e=>e.isItemEqualToValue,value:e=>e.value,hasSelectedValue:e=>{let{value:t,multiple:n,itemToStringValue:r}=e;return t==null?!1:n&&Array.isArray(t)?t.length>0:fi(t,r)!==``},hasNullItemLabel:(e,t)=>t?ui(e.items):!1,open:e=>e.open,mounted:e=>e.mounted,forceMount:e=>e.forceMount,transitionStatus:e=>e.transitionStatus,openMethod:e=>e.openMethod,activeIndex:e=>e.activeIndex,selectedIndex:e=>e.selectedIndex,isActive:(e,t)=>e.activeIndex===t,isSelected:(e,t)=>{let n=e.isItemEqualToValue,r=e.value;return e.multiple?Array.isArray(r)&&r.some(e=>Qr(t,e,n)):Qr(t,r,n)},isSelectedByFocus:(e,t)=>e.selectedIndex===t,popupProps:e=>e.popupProps,triggerProps:e=>e.triggerProps,triggerElement:e=>e.triggerElement,positionerElement:e=>e.positionerElement,listElement:e=>e.listElement,popupSide:e=>e.popupSide,scrollUpArrowVisible:e=>e.scrollUpArrowVisible,scrollDownArrowVisible:e=>e.scrollDownArrowVisible,hasScrollArrows:e=>e.hasScrollArrows};function gi(e,t){return Math.max(0,e-t)}function _i(e,t){if(t<=0)return 0;let n=At(e,0,t),r=n,i=t-n,a=r<=1,o=i<=1;return a&&o?r<=i?0:t:a?0:o?t:n}function vi(e){let{id:t,value:n,defaultValue:r=null,onValueChange:i,open:a,defaultOpen:o=!1,onOpenChange:s,name:c,form:l,autoComplete:u,disabled:d=!1,readOnly:f=!1,required:p=!1,modal:m=!0,actionsRef:h,inputRef:g,onOpenChangeComplete:_,items:v,multiple:y=!1,itemToStringLabel:b,itemToStringValue:x,isItemEqualToValue:S=Zr,highlightItemOnHover:C=!0,children:E}=e,{clearErrors:D}=Ge(),{setDirty:O,setTouched:A,setFocused:j,validityData:M,setFilled:N,name:P,disabled:F,validation:ee,validationMode:H}=Xe(),U=Ze({id:t}),W=F||d,G=P??c,[K,ne]=tt({controlled:n,default:y?r??V:r,name:`Select`,state:`value`}),[q,re]=tt({controlled:a,default:o,name:`Select`,state:`open`}),ie=Q.useRef([]),J=Q.useRef([]),oe=Q.useRef(null),se=Q.useRef(null),ce=Q.useRef(0),le=Q.useRef(null),Y=Q.useRef([]),X=Q.useRef(!1),ue=Q.useRef(null),de=Q.useRef(null),fe=Q.useRef({allowSelectedMouseUp:!1,allowUnselectedMouseUp:!1,dragY:0}),me=Q.useRef(!1),he=Q.useRef(K),{mounted:ge,setMounted:_e,transitionStatus:ve}=Be(q),{openMethod:be,triggerProps:Se}=Ir(q),Z=z(()=>new k({id:U,labelId:void 0,modal:m,multiple:y,itemToStringLabel:b,itemToStringValue:x,isItemEqualToValue:S,value:K,open:q,mounted:ge,transitionStatus:ve,items:v,forceMount:!1,openMethod:null,activeIndex:null,selectedIndex:null,popupProps:I,triggerProps:I,triggerElement:null,positionerElement:null,listElement:null,popupSide:null,scrollUpArrowVisible:!1,scrollDownArrowVisible:!1,hasScrollArrows:!1},{setValue:L,setOpen:L,handleScrollArrowVisibility:L,onOpenChangeComplete:L,listRef:ie,popupRef:oe,scrollHandlerRef:se,scrollArrowsMountedCountRef:ce,valueRef:le,valuesRef:Y,labelsRef:J,typingRef:X,selectionRef:fe,firstItemTextRef:ue,selectedItemTextRef:de,alignItemWithTriggerActiveRef:me,initialValueRef:he},hi)).current,Te=Z.useState(`activeIndex`),Ee=Z.useState(`selectedIndex`),De=Z.useState(`triggerElement`),Oe=Z.useState(`positionerElement`),ke=Hr(be),Ae=be??ke,je=Q.useMemo(()=>y?``:fi(K,x),[y,K,x]),Me=Q.useMemo(()=>y&&Array.isArray(K)?K.map(e=>fi(e,x)):fi(K,x),[y,K,x]),Ne=Ve(De),Pe=B(()=>Me);Ye(Ne,U,K,Pe,!W,c);let Fe=y?Array.isArray(K)&&K.length>0:K!=null&&je!==``;R(()=>{N(Fe)},[Fe,N]),R(function(){let e=ri(Y.current,K,S,y);e===null&&(de.current=null),!q&&Z.set(`selectedIndex`,e)},[y,q,K,S,Z]),Je(K,()=>{D(G),O($r(K,M.initialValue,S)),ee.change(K)});let Ie=B((e,t)=>{s?.(e,t),!t.isCanceled&&(re(e),!e&&(t.reason===`focus-out`||t.reason===`outside-press`)&&(A(!0),j(!1),H===`onBlur`&&ee.commit(K)))}),Le=B(()=>{_e(!1),Z.update({activeIndex:null,openMethod:null,scrollUpArrowVisible:!1,scrollDownArrowVisible:!1}),_?.(!1)});xe({enabled:!h,open:q,ref:oe,onComplete(){q||Le()}}),Q.useImperativeHandle(h,()=>({unmount:Le}),[Le]);let Re=B((e,t)=>{i?.(e,t),!t.isCanceled&&ne(e)}),ze=B(e=>{let t=gi(e.scrollHeight,e.clientHeight),n=_i(e.scrollTop,t),r=n>0,i=n<t;Z.set(`scrollUpArrowVisible`,r),Z.set(`scrollDownArrowVisible`,i)}),He=Kn({open:q,onOpenChange:Ie,elements:{reference:De,floating:Oe}}),Ue=jt(He,{enabled:!W,event:`mousedown`}),We=we(He),Ke=nr(He,{enabled:!W,listRef:ie,activeIndex:Te,selectedIndex:Ee,disabledIndices:V,onNavigate(e){e===null&&!q||Z.set(`activeIndex`,e)},focusItemOnHover:C}),qe=rr(He,{enabled:!W&&(q||!f&&!y),listRef:J,activeIndex:Te,selectedIndex:Ee,disabledIndices:e=>Ur(ie.current[e]),onMatch(e){q?Z.set(`activeIndex`,e):Re(Y.current[e],ye(pe))},onTyping(e){X.current=e}}),Qe=Q.useMemo(()=>ae(qe.reference,Ke.reference,We.reference,Ue.reference,Se),[Ue.reference,qe.reference,Ke.reference,We.reference,Se]),$e=Q.useMemo(()=>ae(Ce,qe.floating,Ke.floating,We.floating),[qe.floating,Ke.floating,We.floating]),et=Ke.item??I;Z.useContextCallback(`setValue`,Re),Z.useContextCallback(`setOpen`,Ie),Z.useContextCallback(`handleScrollArrowVisibility`,ze),Z.useContextCallback(`onOpenChangeComplete`,_),Vr(()=>{Z.update({popupProps:$e,triggerProps:Qe})}),Z.useSyncedValues({id:U,modal:m,multiple:y,value:K,open:q,mounted:ge,transitionStatus:ve,popupProps:$e,triggerProps:Qe,items:v,itemToStringLabel:b,itemToStringValue:x,isItemEqualToValue:S,openMethod:Ae});let nt=Q.useMemo(()=>({disabled:W,readOnly:f,required:p,multiple:y,highlightItemOnHover:C,itemProps:et}),[W,f,p,y,C,et]),rt=te(g,ee.inputRef),it=y?void 0:G,at=Q.useMemo(()=>!y||!Array.isArray(K)||!G?null:K.map(e=>{let t=fi(e,x);return(0,$.jsx)(`input`,{type:`hidden`,form:l,name:G,value:t,disabled:W},t)}),[y,K,l,G,x,W]);return(0,$.jsxs)(Wr.Provider,{value:Z,children:[(0,$.jsx)(Gr.Provider,{value:nt,children:(0,$.jsx)(Kr.Provider,{value:He,children:E})}),(0,$.jsx)(`input`,{...ee.getValidationProps(W,{onFocus(){Z.state.triggerElement?.focus({focusVisible:!0})},onChange(e){if(e.nativeEvent.defaultPrevented||W||f)return;let t=e.currentTarget.value,n=ye(pe,e.nativeEvent);function r(){if(y)return;let e=t.toLowerCase(),r=Y.current.findIndex(t=>fi(t,x).toLowerCase()===e||di(t,b).toLowerCase()===e);r===-1&&(r=Y.current.findIndex((t,n)=>{let r=J.current[n];return r!=null&&r.toLowerCase()===e}));let i=Y.current[r];i!=null&&Re(i,n)}Z.set(`forceMount`,!0),queueMicrotask(r)}}),id:U&&it==null?`${U}-hidden-input`:void 0,form:l,name:it,autoComplete:u,value:je,disabled:W,required:p&&!(y&&Fe),readOnly:f,ref:rt,style:G?w:T,tabIndex:-1,"aria-hidden":!0,suppressHydrationWarning:!0}),at]})}function yi(e,t){return e??t}var bi=5;function xi(e,t){let n=Si(t);return e.clientX>=n.left-bi&&e.clientX<=n.right+bi&&e.clientY>=n.top-bi&&e.clientY<=n.bottom+bi}function Si(e){let t=e.getBoundingClientRect(),n=H(e);if(E)return t;let r=n.getComputedStyle(e,`::before`),i=n.getComputedStyle(e,`::after`);if(r.content===`none`&&i.content===`none`)return t;let a=parseFloat(r.width)||0,o=parseFloat(r.height)||0,s=parseFloat(i.width)||0,c=parseFloat(i.height)||0,l=Math.max(t.width,a,s),u=Math.max(t.height,o,c),d=l-t.width,f=u-t.height;return{left:t.left-d/2,right:t.right+d/2,top:t.top-f/2,bottom:t.bottom+f/2}}var Ci=`data-popup-side`,wi=400,Ti={...Fe,...Ke,popupSide:e=>e?{[Ci]:e}:null,value:()=>null},Ei=Q.forwardRef(function(e,t){let{render:n,className:r,id:a,disabled:o=!1,nativeButton:s=!0,style:c,...l}=e,{setTouched:d,setFocused:f,validationMode:p,validation:m,state:h,disabled:_}=Xe(),{labelId:v}=qe(),y=qr(),{readOnly:b,required:x,disabled:S}=Jr(),w=_||S||o,T=y.useState(`open`),E=y.useState(`mounted`),D=y.useState(`value`),O=y.useState(`triggerProps`),k=y.useState(`positionerElement`),A=y.useState(`listElement`),j=y.useState(`popupSide`),M=y.useState(`id`),N=y.useState(`labelId`),P=y.useState(`hasSelectedValue`),F=E&&k?j:null,I=a??M,L=yi(v,N);Ze({id:a});let R=Ve(k),z=Q.useRef(null),{getButtonProps:B,buttonRef:V}=se({disabled:w,native:s}),ee=y.useStateSetter(`triggerElement`),H=g(),W=g(),te=g();Q.useEffect(()=>{if(T)return te.start(wi,()=>{y.context.selectionRef.current.allowUnselectedMouseUp=!0,y.context.selectionRef.current.allowSelectedMouseUp=!0}),()=>{te.clear()};y.context.selectionRef.current={allowSelectedMouseUp:!1,allowUnselectedMouseUp:!1,dragY:0},W.clear()},[T,y,W,te]);let G=ae(O,{id:I,role:`combobox`,"aria-expanded":T,"aria-haspopup":`listbox`,"aria-controls":T?A?.id??C(k)?.id:void 0,"aria-labelledby":L,"aria-readonly":b||void 0,"aria-required":x||void 0,tabIndex:w?-1:0,onFocus(e){f(!0),T&&y.context.alignItemWithTriggerActiveRef.current&&y.context.setOpen(!1,ye(pe,e.nativeEvent)),H.start(0,()=>{y.set(`forceMount`,!0)})},onBlur(e){u(k,e.relatedTarget)||(d(!0),f(!1),p===`onBlur`&&m.commit(D))},onMouseDown(e){if(T)return;let t=i(e.currentTarget);function n(e){if(!z.current)return;let t=e.target;u(z.current,t)||u(R.current,t)||xi(e,z.current)||y.context.setOpen(!1,ye(_e,e))}W.start(0,()=>{t.addEventListener(`mouseup`,n,{once:!0})})}},l,B),K=m.getValidationProps(w,G);K.role=`combobox`;let ne={...h,open:T,disabled:w,value:D,readOnly:b,popupSide:F,placeholder:!P};return U(`button`,e,{ref:[t,z,V,ee],state:ne,stateAttributesMapping:Ti,props:K})}),Di={value:()=>null},Oi=Q.forwardRef(function(e,t){let{className:n,render:r,children:i,placeholder:a,style:o,...s}=e,c=qr(),l=c.useState(`value`),u=c.useState(`items`),d=c.useState(`itemToStringLabel`),f=c.useState(`hasSelectedValue`),p=!f&&a!=null&&i==null,m=c.useState(`hasNullItemLabel`,p),h={value:l,placeholder:!f},g=null;return g=typeof i==`function`?i(l):i??(p&&!m?a:Array.isArray(l)?mi(l,u,d):pi(l,u,d)),U(`span`,e,{state:h,ref:[t,c.context.valueRef],props:[{children:g},s],stateAttributesMapping:Di})}),ki=Q.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,o={open:qr().useState(`open`)};return U(`span`,e,{state:o,ref:t,props:[{"aria-hidden":!0,children:`▼`},a],stateAttributesMapping:Ie})}),Ai=Q.forwardRef(function(e,t){let n=qr(),r=n.useState(`mounted`),i=n.useState(`forceMount`);return r||i?(0,$.jsx)(O,{ref:t,...e}):null}),ji=Q.createContext({register:()=>{},unregister:()=>{},subscribeMapChange:()=>()=>{},nextIndexRef:{current:0}});function Mi(){return Q.useContext(ji)}function Ni(e){let{children:t,elementsRef:n,labelsRef:r,onMapChange:i}=e,a=B(i),[,o]=Q.useState(!1),s=z(Fi).current,c=z(Pi).current,l=Q.useRef(0),u=Q.useRef(!0),d=Q.useRef(null),f=Q.useRef(null),p=B(()=>{u.current||(u.current=!0,o(e=>!e))}),m=B((e,t)=>{c.set(e,t),p()}),h=B(e=>{c.delete(e),p()}),g=B(e=>{let t=new Map;return n.current.length=0,r&&(r.current.length=0),e.forEach(e=>{t.set(e.element,{...e.registration.metadata??{},index:e.index}),n.current[e.index]=e.element,r&&(r.current[e.index]=e.registration.label===void 0?e.registration.textRef?.current?.textContent??e.element.textContent:e.registration.label)}),l.current=n.current.length,t});function _(e){if(f.current?.disconnect(),f.current=null,typeof MutationObserver!=`function`||e.length<2)return;let t=new MutationObserver(n=>{if(!Ri(n))return;let r=null;for(let n of e)if(n.isConnected){if(r&&zi(r,n)>0){t.disconnect(),p();return}r=n}});f.current=t;let n=new Set;for(let t=1;t<e.length;t+=1){let r=Li(e[t-1],e[t]);r&&n.add(r)}n.forEach(e=>t.observe(e,{childList:!0}))}let v=B(()=>{let[e,t]=Ii(c),n=g(e),r=d.current,i=!r||r.length!==e.length||e.some((e,t)=>{let n=r[t];return e.index!==n.index||e.element!==n.element||e.registration.index!==n.registration.index||e.registration.metadata!==n.registration.metadata});_(t),d.current=e,u.current=!1,i&&(s.forEach(e=>e(n)),a(n))});R(()=>(!u.current&&d.current&&g(d.current),()=>{n.current=[],r&&(r.current=[])}),[n,r,g]),R(()=>{u.current&&v()}),R(()=>()=>{f.current?.disconnect(),u.current=!0},[]);let y=B(e=>(s.add(e),()=>{s.delete(e)})),b=Q.useMemo(()=>({register:m,unregister:h,subscribeMapChange:y,nextIndexRef:l}),[m,h,y,l]);return(0,$.jsx)(ji.Provider,{value:b,children:t})}function Pi(){return new Map}function Fi(){return new Set}function Ii(e){let t=new Set,n=[],r=[];e.forEach((e,i)=>{if(!i.isConnected)return;let a=e.index,o={index:a??-1,element:i,registration:e};a===null?r.push(o):a>=0&&(t.add(a),n.push(o))});let i=0;return r.sort((e,t)=>zi(e.element,t.element)),r.forEach(e=>{for(;t.has(i);)i+=1;e.index=i,n.push(e),i+=1}),t.size>0&&n.sort((e,t)=>e.index-t.index),[n,r.map(e=>e.element)]}function Li(e,t){let n=e.parentElement;for(;n&&!n.contains(t);)n=n.parentElement;return n}function Ri(e){for(let t of e)for(let e=0;e<t.removedNodes.length;e+=1)if(t.removedNodes[e].isConnected)return!0;return!1}function zi(e,t){return e.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_FOLLOWING?-1:1}var Bi=Q.createContext(void 0);function Vi(){let e=Q.useContext(Bi);if(!e)throw Error(re(59));return e}function Hi(e,t){e&&Object.assign(e.style,t)}var Ui={position:`relative`,maxHeight:`100%`,overflowX:`hidden`,overflowY:`auto`},Wi=20;function Gi(e,t,n,r){let[a,o]=Q.useState(!1);R(()=>{if(!e||!t||n==null){o(!1);return}let r=i(n).documentElement.clientWidth,a=n.offsetWidth;o(r>0&&a>0&&a>=r-Wi)},[e,t,n]),ze(e&&(!t||a),r)}var Ki={position:`fixed`},qi=Q.forwardRef(function(e,t){let{anchor:n,className:r,render:i,positionMethod:a,side:o,align:s,sideOffset:c,alignOffset:l,collisionBoundary:u=`clipping-ancestors`,collisionPadding:d,arrowPadding:f,sticky:p,disableAnchorTracking:m,alignItemWithTrigger:h=!0,collisionAvoidance:g=x,style:_,...v}=e,y=qr(),b=Yr(),C=y.useState(`open`),w=y.useState(`mounted`),T=y.useState(`modal`),E=y.useState(`value`),D=y.useState(`openMethod`),O=y.useState(`positionerElement`),k=y.useState(`triggerElement`),A=y.useState(`isItemEqualToValue`),j=y.useState(`transitionStatus`),M=Q.useRef(null),N=Q.useRef(null),[P,F]=Q.useState(h),I=w&&P&&D!==`touch`;!w&&P!==h&&F(h),Q.useImperativeHandle(y.context.alignItemWithTriggerActiveRef,()=>I),Gi((I||T)&&C,D===`touch`,O,k);let L=yr({anchor:n,floatingRootContext:b,positionMethod:a,mounted:w,side:o,sideOffset:c,align:s,alignOffset:l,arrowPadding:f,collisionBoundary:u,collisionPadding:d,sticky:p,disableAnchorTracking:m??I,collisionAvoidance:g,keepMounted:!0}),z=I?`none`:L.side,V=I?Ki:L.positionerStyles,ee={open:C,side:z,align:L.align,anchorHidden:L.anchorHidden};R(()=>{y.set(`popupSide`,L.side)},[y,L.side]);let H=Cr(e,ee,{styles:V,transitionStatus:j,props:v,refs:[t,y.useStateSetter(`positionerElement`)],hidden:!w,inert:!C}),U=Q.useRef(0),W=B(e=>{if(y.context.valuesRef.current.length===0)return;let t=U.current;U.current=e.size;let n=ye(pe);if(t!==0&&!y.state.multiple&&E!==null&&ti(y.context.valuesRef.current,E,A)===-1){let e=y.context.initialValueRef.current,t=e!=null&&ti(y.context.valuesRef.current,e,A)!==-1?e:null;y.context.setValue(t,n),t===null&&(y.set(`selectedIndex`,null),y.context.selectedItemTextRef.current=null)}if(t!==0&&y.state.multiple&&Array.isArray(E)){let e=E.filter(e=>ti(y.context.valuesRef.current,e,A)!==-1);e.length!==E.length&&(y.context.setValue(e,n),e.length===0&&(y.set(`selectedIndex`,null),y.context.selectedItemTextRef.current=null))}if(C&&I){y.update({scrollUpArrowVisible:!1,scrollDownArrowVisible:!1});let e={height:``};Hi(O,e),Hi(y.context.popupRef.current,e)}}),te=Q.useMemo(()=>({...L,side:z,alignItemWithTriggerActive:I,setControlledAlignItemWithTrigger:F,scrollUpArrowRef:M,scrollDownArrowRef:N}),[L,z,I,F]);return(0,$.jsx)(Ni,{elementsRef:y.context.listRef,labelsRef:y.context.labelsRef,onMapChange:W,children:(0,$.jsxs)(Bi.Provider,{value:te,children:[w&&T&&(0,$.jsx)(Le,{inert:S(!C),cutout:k}),H]})})}),Ji=`base-ui-disable-scrollbar`,Yi={className:Ji,getElement(e){return(0,$.jsx)(`style`,{nonce:e,href:Ji,precedence:`base-ui:low`,children:`.${Ji}{scrollbar-width:none}.${Ji}::-webkit-scrollbar{display:none}`})}},Xi=Q.createContext(void 0);function Zi(e){let t=Q.useContext(Xi);if(t===void 0&&!e)throw Error(re(69));return t}var Qi=Q.createContext(void 0),$i={disableStyleElements:!1};function ea(){return Q.useContext(Qi)??$i}var ta=`--transform-origin`,na={...Oe,...Se},ra=Q.forwardRef(function(e,t){let{render:n,className:r,style:a,finalFocus:o,...s}=e,c=qr(),{multiple:l,readOnly:u,highlightItemOnHover:d}=Jr(),p=Yr(),{side:m,align:h,alignItemWithTriggerActive:g,isPositioned:_,setControlledAlignItemWithTrigger:v}=Vi(),y=Zi(!0)!=null,b=ar(),{nonce:x,disableStyleElements:S}=ea(),C=c.useState(`id`),w=c.useState(`open`),T=c.useState(`openMethod`),E=c.useState(`mounted`),D=c.useState(`popupProps`),O=c.useState(`transitionStatus`),k=c.useState(`triggerElement`),A=c.useState(`positionerElement`),j=c.useState(`listElement`),M=Q.useRef(!1),N=Q.useRef(!1),P=Q.useRef({}),F=de(),I=B(e=>{if(!A||!c.context.popupRef.current||!N.current)return;let t=A.style.top===`0px`,n=A.style.bottom===`0px`;if(M.current||!g||!t&&!n){c.context.handleScrollArrowVisibility(e);return}let r=oa(A),a=sa(A.getBoundingClientRect().height,`y`,r),o=i(A),s=H(A),l=s.getComputedStyle(A),u=parseFloat(l.marginTop),d=parseFloat(l.marginBottom),f=ia(s.getComputedStyle(c.context.popupRef.current)),p=Math.min(o.documentElement.clientHeight-u-d,f),m=e.scrollTop,h=aa(e),_=null,v=e=>{A.style.height=`${e}px`},y=t?h-m:m,b=Math.min(a+y,p);if(y<=1){let n=At(y,0,p-a);n>0&&v(a+n),e.scrollTop=t?h:0,p-(a+n)<=1&&(M.current=!0),c.context.handleScrollArrowVisibility(e);return}p-b>1?_=t?1/0:0:n&&m<h&&(_=m-(y-(a+y-p)));let x=Math.ceil(b);if(x!==0&&v(x),_!=null){let t=At(_,0,aa(e));Math.abs(e.scrollTop-t)>1&&(e.scrollTop=t)}x>=p-1&&(M.current=!0),c.context.handleScrollArrowVisibility(e)});Q.useImperativeHandle(c.context.scrollHandlerRef,()=>I,[I]),xe({open:w,ref:c.context.popupRef,onComplete(){w&&c.context.onOpenChangeComplete(!0)}});let L={open:w,transitionStatus:O,side:m,align:h};R(()=>{!A||!c.context.popupRef.current||Object.keys(P.current).length||(P.current={top:A.style.top||`0`,left:A.style.left||`0`,right:A.style.right,height:A.style.height,bottom:A.style.bottom,minHeight:A.style.minHeight,maxHeight:A.style.maxHeight,marginTop:A.style.marginTop,marginBottom:A.style.marginBottom})},[c,A]),R(()=>{w||g||(N.current=!1,M.current=!1,Hi(A,P.current))},[w,g,A]),R(()=>{let e=c.context.popupRef.current;if(!w||!k||!A||!e||g&&!_||c.state.transitionStatus===`ending`)return;if(N.current=!0,e.style.removeProperty(ta),!g){F.request(()=>c.context.handleScrollArrowVisibility(j||e));return}let t=ua(e);try{let t=c.context.selectedItemTextRef.current;t?.isConnected||(t=!c.select(`hasSelectedValue`)&&c.context.firstItemTextRef.current?.isConnected?c.context.firstItemTextRef.current:null);let n=c.context.valueRef.current,r=H(A),a=r.getComputedStyle(A),o=r.getComputedStyle(e),s=i(k),l=oa(k),u=ca(k.getBoundingClientRect(),l),p=ca(A.getBoundingClientRect(),l),m=u.height,h=j||e,g=h.scrollHeight,_=parseFloat(o.borderBottomWidth),y=parseFloat(a.marginTop)||10,x=parseFloat(a.marginBottom)||10,S=parseFloat(a.minHeight)||100,C=ia(o),w=s.documentElement.clientHeight-y-x,T=s.documentElement.clientWidth,E=w-u.bottom+m,D,O=b===`rtl`?u.right-p.width:u.left,N=0;if(t&&n){let e=ca(n.getBoundingClientRect(),l);D=ca(t.getBoundingClientRect(),l),O=p.left+(b===`rtl`?e.right-D.right:e.left-D.left);let r=e.top-u.top+e.height/2;N=D.top-p.top+D.height/2-r}let F=E+N+x+_,I=Math.min(w,F),L=w-y-x,R=F-I,z=T-5;A.style.left=`${At(O,5,z-p.width)}px`,A.style.height=`${I}px`,A.style.maxHeight=`none`,A.style.marginTop=`${y}px`,A.style.marginBottom=`${x}px`,e.style.height=`100%`;let B=aa(h),V=R>=B-1;V&&(I=Math.min(w,p.height)-(R-B));let ee=u.top<20||u.bottom>w-20||Math.ceil(I)+1<Math.min(g,S),U=(r.visualViewport?.scale??1)!==1&&f;if(ee||U){Hi(A,P.current),v(!1);return}let W=Math.max(S,I);if(V){let e=Math.max(0,w-F);A.style.top=p.height>=L?`0`:`${e}px`,A.style.height=`${I}px`,h.scrollTop=aa(h)}else A.style.bottom=`0`,h.scrollTop=R;if(D){let t=p.top,n=p.height,r=D.top+D.height/2,i=At(n>0?(r-t)/n*100:50,0,100);e.style.setProperty(ta,`50% ${i}%`)}(W===w||I>=C)&&(M.current=!0),c.context.handleScrollArrowVisibility(h),d&&c.state.selectedIndex===null&&c.state.activeIndex===null&&c.context.listRef.current[0]!=null&&c.set(`activeIndex`,0)}finally{t()}},[c,w,A,k,g,v,F,j,d,b,_]),Q.useEffect(()=>{if(!g||!A||!w)return;let e=H(A);function t(e){c.context.setOpen(!1,ye(me,e))}return ue(e,`resize`,t)},[c,g,A,w]);let z={...j?{role:`presentation`}:{role:`listbox`,"aria-multiselectable":l||void 0,"aria-readonly":u||void 0,id:`${C}-list`},onKeyDown(e){y&&Re.has(e.key)&&e.stopPropagation()},onScroll(e){j||I(e.currentTarget)},...g&&{style:j?{height:`100%`}:Ui},className:!j&&g?Yi.className:void 0},V=U(`div`,e,{ref:[t,c.context.popupRef],state:L,stateAttributesMapping:na,props:[D,z,Sr(O),s]});return(0,$.jsxs)(Q.Fragment,{children:[!S&&Yi.getElement(x),(0,$.jsx)(De,{context:p,modal:!1,disabled:!E,openInteractionType:T,returnFocus:o,restoreFocus:!0,children:V})]})});function ia(e){let t=e.maxHeight;return t.endsWith(`px`)&&parseFloat(t)||1/0}function aa(e){return gi(e.scrollHeight,e.clientHeight)}function oa(e){return yn.getScale(e)}function sa(e,t,n){return e/n[t]}function ca(e,t){return kt({x:sa(e.x,`x`,t),y:sa(e.y,`y`,t),width:sa(e.width,`x`,t),height:sa(e.height,`y`,t)})}var la=[[`transform`,`none`],[`scale`,`1`],[`translate`,`0 0`]];function ua(e){let{style:t}=e,n={};for(let[e,r]of la)n[e]=t.getPropertyValue(e),t.setProperty(e,r,`important`);return()=>{for(let[e]of la){let r=n[e];r?t.setProperty(e,r):t.removeProperty(e)}}}var da=Q.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,o=qr(),{multiple:s,readOnly:c}=Jr(),{alignItemWithTriggerActive:l}=Vi(),u=o.useState(`hasScrollArrows`),d=o.useState(`openMethod`),f={id:`${o.useState(`id`)}-list`,role:`listbox`,"aria-multiselectable":s||void 0,"aria-readonly":c||void 0,onScroll(e){o.context.scrollHandlerRef.current?.(e.currentTarget)},...l&&{style:Ui},className:u&&d!==`touch`?Yi.className:void 0},p=o.useStateSetter(`listElement`);return U(`div`,e,{ref:[t,p],props:[f,a]})});function fa(e={}){let{guess:t,label:n,metadata:r,textRef:i,index:a}=e,{register:o,unregister:s,subscribeMapChange:c,nextIndexRef:l}=Mi(),u=Q.useRef(-1),[d,f]=Q.useState(a==null&&t?()=>{if(u.current===-1){let e=l.current;l.current+=1,u.current=e}return u.current}:-1),p=a??d,m=Q.useRef(null),h=Q.useCallback(e=>{let t=m.current;t&&s(t),m.current=e,e&&o(e,{metadata:r??null,index:a??null,label:n,textRef:i})},[a,o,s,r,n,i]);return R(()=>{if(a==null)return c(e=>{let t=m.current?e.get(m.current)?.index:null;t!=null&&f(t)})},[a,c]),{ref:h,index:p}}var pa=Q.createContext(void 0);function ma(){let e=Q.useContext(pa);if(!e)throw Error(re(57));return e}var ha=Q.memo(Q.forwardRef(function(e,t){let{render:n,className:r,style:i,value:a=null,label:o,disabled:s=!1,nativeButton:c=!1,...l}=e,u=Q.useRef(null),d=fa({guess:!0,label:o,textRef:u}),f=qr(),{itemProps:p,multiple:m,disabled:h,readOnly:g}=Jr(),_=h||s,v=f.useState(`isActive`,d.index),y=f.useState(`open`),b=f.useState(`isSelected`,a),x=f.useState(`isSelectedByFocus`,d.index),S=f.useState(`isItemEqualToValue`),C=d.index,w=Q.useRef(null);R(()=>{let e=f.context.valuesRef.current;return e[C]=a,()=>{delete e[C]}},[C,a,f]),R(()=>{let e=f.state.value,t=f.state.selectedIndex,n=t,r;m&&Array.isArray(e)?(n=ii(C,a,f.context.valuesRef.current,e,S,t),r=n===C,C===t&&!r&&(f.context.selectedItemTextRef.current=null)):(r=e!==void 0&&Qr(a,e,S),r&&(n=C)),f.set(`selectedIndex`,n),r&&u.current&&(f.context.selectedItemTextRef.current=u.current)},[C,m,S,f,a]);let T=Q.useRef(`mouse`),E=Q.useRef(!1),{getButtonProps:D,buttonRef:O}=se({disabled:_,focusableWhenDisabled:!0,native:c,composite:!0}),k={disabled:_,selected:b,highlighted:v};function A(e){if(h||g)return;let t=f.state.value;if(m){let n=Array.isArray(t)?t:[],r=b?ai(n,a,S):[...n,a];f.context.setValue(r,ye(ge,e))}else f.context.setValue(a,ye(ge,e)),f.context.setOpen(!1,ye(ge,e))}function j(){f.context.selectionRef.current.dragY=0}let M={role:`option`,"aria-selected":b,tabIndex:y&&v?0:-1,onKeyDown(e){f.set(`activeIndex`,C),e.key===` `&&f.context.typingRef.current&&e.preventDefault()},onClick(e){let t=T.current!==`touch`,n=e.nativeEvent.pointerType,r=t&&Pe(e.nativeEvent)&&(n!==void 0||v),i=t&&!r&&!E.current;E.current=!1,!(_||i)&&A(e.nativeEvent)},onPointerEnter(e){T.current=e.pointerType},onPointerMove(e){if(e.pointerType===`mouse`&&e.buttons===1){let t=f.context.selectionRef.current;t.dragY+=e.movementY,t.dragY**2>=64&&(t.allowUnselectedMouseUp=!0)}},onPointerDown(e){T.current=e.pointerType,E.current=!0,j()},onMouseUp(){if(j(),_||T.current===`touch`||E.current)return;let e=!f.context.selectionRef.current.allowSelectedMouseUp&&b,t=!f.context.selectionRef.current.allowUnselectedMouseUp&&!b;e||t||(E.current=!0,w.current?.click(),E.current=!1)}},N=U(`div`,e,{ref:[O,t,d.ref,w],state:k,props:[p,M,l,D]}),P=Q.useMemo(()=>({selected:b,index:C,textRef:u,selectedByFocus:x}),[b,C,u,x]);return(0,$.jsx)(pa.Provider,{value:P,children:N})})),ga=Q.forwardRef(function(e,t){let{selected:n}=ma();return e.keepMounted||n?(0,$.jsx)(_a,{...e,ref:t}):null}),_a=Q.memo(Q.forwardRef((e,t)=>{let{render:n,className:r,style:i,keepMounted:a,...o}=e,{selected:s}=ma(),c=Q.useRef(null),{transitionStatus:l,setMounted:u}=Be(s),d=U(`span`,e,{ref:[t,c],state:{selected:s,transitionStatus:l},props:[{"aria-hidden":!0,children:`✔️`},o],stateAttributesMapping:Se});return xe({batch:!0,enabled:!s,open:s,ref:c,onComplete(){s||u(!1)}}),d})),va=Q.memo(Q.forwardRef(function(e,t){let{index:n,textRef:r,selectedByFocus:i}=ma(),a=qr(),{render:o,className:s,style:c,...l}=e,u=Q.useCallback(e=>{e&&(n===0&&(a.context.firstItemTextRef.current=e),i&&(a.context.selectedItemTextRef.current=e))},[a,n,i]);return U(`div`,e,{ref:[u,t,r],props:l})})),ya=2;function ba({className:e,onValueChange:t,options:n,placeholder:r,triggerId:i,value:a,...o}){let s=n.find(e=>e.value===a),c=s?.icon,l=Qe(),u=Math.min(l+ya,8);return(0,$.jsxs)(vi,{"data-slot":`select`,items:n,onValueChange:e=>{e!==null&&t(e)},value:a,...o,children:[(0,$.jsxs)(Ei,{id:i,"aria-label":o[`aria-label`],className:M(`group flex h-8 w-full min-w-0 items-center justify-between gap-2 rounded-lg border border-input bg-transparent px-2.5 py-1 text-sm text-foreground transition-colors outline-none placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:pointer-events-none disabled:cursor-not-allowed disabled:bg-input/50 disabled:opacity-50 data-placeholder:text-muted-foreground dark:bg-input/30 dark:disabled:bg-input/80`,e),children:[(0,$.jsxs)(`span`,{className:`flex min-w-0 flex-1 items-center gap-2`,children:[c?(0,$.jsx)(c,{className:`size-4 shrink-0 text-muted-foreground transition-colors group-hover:text-foreground`}):null,(0,$.jsx)(Oi,{placeholder:r,children:(0,$.jsx)(`span`,{className:`truncate`,children:s?.label??r??a??``})})]}),(0,$.jsx)(ki,{className:`shrink-0 text-muted-foreground`,children:(0,$.jsx)(We,{className:`size-4`})})]}),(0,$.jsx)(Ai,{children:(0,$.jsx)(qi,{className:`z-[70]`,sideOffset:4,children:(0,$.jsx)(ra,{className:M(`max-h-72 min-w-(--anchor-width) overflow-y-auto overscroll-contain rounded-lg p-1 text-sm text-popover-foreground outline-none data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95`,$e(u,3)),children:(0,$.jsx)(et,{value:u,children:(0,$.jsx)(da,{children:n.map(e=>{let t=e.icon;return(0,$.jsxs)(ha,{className:`relative flex min-h-7 cursor-default items-center gap-2 rounded-md py-1.5 pr-2 pl-7 text-sm outline-none select-none data-highlighted:bg-muted data-highlighted:text-foreground data-disabled:pointer-events-none data-disabled:opacity-50`,disabled:e.disabled,value:e.value,children:[(0,$.jsx)(ga,{className:`absolute left-2 flex items-center justify-center`,children:(0,$.jsx)(Ue,{className:`size-3.5`})}),t?(0,$.jsx)(t,{className:`size-4 shrink-0 text-muted-foreground`}):null,(0,$.jsx)(va,{children:e.label})]},e.value)})})})})})})]})}export{Ln as A,Gn as C,zn as D,Vn as E,jt as M,At as N,Bn as O,ar as S,Wn as T,jr as _,Yi as a,Sr as b,_i as c,Rr as d,Lr as f,kr as g,Er as h,Zi as i,Sn as j,Un as k,oi as l,Mr as m,fa as n,Gi as o,Fr as p,ea as r,Ni as s,ba as t,Ur as u,Ar as v,Hn as w,yr as x,Cr as y};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{t}from"./react-Cvdyeg_0.js";import{t as n}from"./jsx-runtime-NZYk81nU.js";import{G as r,J as i,K as a,Q as o}from"./FloatingPortal-XC0MCNnD.js";import{t as s}from"./utils-oBThwhjm.js";import{M as c,O as l,a as u,j as d}from"./useButton-CvcmqA2s.js";import{E as f}from"./createBaseUIEventDetails-DIxvaz-Y.js";import{r as p}from"./toast-DlbKi6K-.js";import{N as m,S as h,_ as g,a as _,c as v,g as y,r as b,t as x,v as S}from"./select-BhV4ikeN.js";import{t as C}from"./useBaseUiId-lKfDDIcw.js";import{t as w}from"./createLucideIcon-CQY2ECfR.js";import{a as T,i as E,n as D,o as O,r as k,s as A,t as j}from"./provider-label-QrVOwKBO.js";import{t as M}from"./check-BTwIaCtI.js";import{t as N}from"./chevron-right-BPCB1mOg.js";import{t as P}from"./eye-iNSvs0UA.js";import{n as F,r as I,t as L}from"./sparkles-BwVa9zQJ.js";import{t as R}from"./hard-drive-B3opVeEB.js";import{i as z,n as B,r as V,t as H}from"./sun-C7zg8Oas.js";import{t as U}from"./loader-circle-BmKYM_C4.js";import{n as W,t as G}from"./notify-Cqdu6EV8.js";import{t as ee}from"./plug-wCz-036u.js";import{a as K,n as te,r as ne}from"./right-panel-context-DHKWoetk.js";import{t as re}from"./refresh-cw-CqPE3kNY.js";import{t as ie}from"./search-Cb6fFWew.js";import{t as q}from"./button-CWYjn8Zk.js";import{a as ae,n as oe,r as se}from"./ui-preferences-B-PNDkyY.js";import{a as J,i as ce,n as Y,o as le,r as ue,s as de,t as fe}from"./switch-C7Myu-Dt.js";import{a as pe,n as me,o as he,r as ge,t as _e}from"./dialog-zCNOQI63.js";import{t as ve}from"./input-7g8_nw-Z.js";import{i as ye,n as be,r as xe,t as Se}from"./input-group-Nq03Qums.js";import{c as Ce,f as we,l as Te,o as Ee}from"./tokens-DinEQBG4.js";import{t as X}from"./spinner-B5TaKP7k.js";import{a as De,i as Oe,n as ke,o as Ae,r as je,s as Me,t as Ne}from"./alert-dialog-DGNvg0B1.js";var Pe={name:`box`,size:24,node:[[`path`,{d:`M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z`,key:`hh9hay`}],[`path`,{d:`m3.3 7 8.7 5 8.7-5`,key:`g66t2b`}],[`path`,{d:`M12 22V12`,key:`d0xqtd`}]]};Pe.node;var Fe=w(Pe),Ie={name:`external-link`,size:24,node:[[`path`,{d:`M15 3h6v6`,key:`1q9fwt`}],[`path`,{d:`M10 14 21 3`,key:`gplh6r`}],[`path`,{d:`M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6`,key:`a6xqqp`}]]};Ie.node;var Le=w(Ie),Re={name:`eye-off`,size:24,node:[[`path`,{d:`M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49`,key:`ct8e1f`}],[`path`,{d:`M14.084 14.158a3 3 0 0 1-4.242-4.242`,key:`151rxh`}],[`path`,{d:`M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143`,key:`13bj9a`}],[`path`,{d:`m2 2 20 20`,key:`1ooewy`}]]};Re.node;var ze=w(Re),Be={name:`key-round`,size:24,node:[[`path`,{d:`M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z`,key:`1s6t7t`}],[`circle`,{cx:`16.5`,cy:`7.5`,r:`.5`,fill:`currentColor`,key:`w0ekpg`}]]};Be.node;var Ve=w(Be),He={name:`layers`,size:24,node:[[`path`,{d:`M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z`,key:`zw3jo`}],[`path`,{d:`M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12`,key:`1wduqc`}],[`path`,{d:`M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17`,key:`kqbvx6`}]],aliases:[`layers-3`]};He.node;var Ue=w(He),We={name:`lock`,size:24,node:[[`rect`,{width:`18`,height:`11`,x:`3`,y:`11`,rx:`2`,ry:`2`,key:`1w4ew1`}],[`path`,{d:`M7 11V7a5 5 0 0 1 10 0v4`,key:`fwvmzm`}]]};We.node;var Ge=w(We),Ke={name:`message-square`,size:24,node:[[`path`,{d:`M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z`,key:`18887p`}]]};Ke.node;var qe=w(Ke),Je={name:`paintbrush`,size:24,node:[[`path`,{d:`m14.622 17.897-10.68-2.913`,key:`vj2p1u`}],[`path`,{d:`M18.376 2.622a1 1 0 1 1 3.002 3.002L17.36 9.643a.5.5 0 0 0 0 .707l.944.944a2.41 2.41 0 0 1 0 3.408l-.944.944a.5.5 0 0 1-.707 0L8.354 7.348a.5.5 0 0 1 0-.707l.944-.944a2.41 2.41 0 0 1 3.408 0l.944.944a.5.5 0 0 0 .707 0z`,key:`18tc5c`}],[`path`,{d:`M9 8c-1.804 2.71-3.97 3.46-6.583 3.948a.507.507 0 0 0-.302.819l7.32 8.883a1 1 0 0 0 1.185.204C12.735 20.405 16 16.792 16 15`,key:`ytzfxy`}]]};Je.node;var Ye=w(Je),Xe={name:`save`,size:24,node:[[`path`,{d:`M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z`,key:`1c8476`}],[`path`,{d:`M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7`,key:`1ydtos`}],[`path`,{d:`M7 3v4a1 1 0 0 0 1 1h7`,key:`t51u73`}]]};Xe.node;var Ze=w(Xe),Qe={name:`star`,size:24,node:[[`path`,{d:`M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z`,key:`r04s7s`}]]};Qe.node;var $e=w(Qe),et={name:`tag`,size:24,node:[[`path`,{d:`M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z`,key:`vktsd0`}],[`circle`,{cx:`7.5`,cy:`7.5`,r:`.5`,fill:`currentColor`,key:`kqv944`}]]};et.node;var tt=w(et),nt={name:`users`,size:24,node:[[`path`,{d:`M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2`,key:`1yyitq`}],[`path`,{d:`M16 3.128a4 4 0 0 1 0 7.744`,key:`16gr8j`}],[`path`,{d:`M22 21v-2a4 4 0 0 0-3-3.87`,key:`kshegd`}],[`circle`,{cx:`9`,cy:`7`,r:`4`,key:`nufk8`}]]};nt.node;var rt=w(nt),Z=e(t(),1),Q=n(),it=new Set([`off`,`minimal`,`low`,`medium`,`high`,`xhigh`,`max`]),at=new Map,ot=500;function st(e){let t=at.get(e);if(t)return t;let n=RegExp(`^${e.split(``).map(e=>e===`*`?`.*`:e===`?`?`.`:ft(e)).join(``)}$`);return at.size>=ot&&at.clear(),at.set(e,n),n}function ct(e,t){return!t||t.length===0?!1:t.some(t=>lt(e,t))}function lt(e,t){let n=ut(t.trim()).toLowerCase(),r=[e.id,e.modelId,e.name,e.key,e.provider&&e.modelId?`${e.provider}/${e.modelId}`:void 0,e.provider&&e.id?`${e.provider}/${e.id}`:void 0].filter(e=>typeof e==`string`).map(e=>e.toLowerCase());if(!dt(n))return r.includes(n);let i=st(n);return r.some(e=>i.test(e))}function ut(e){let t=e.lastIndexOf(`:`);if(t===-1)return e;let n=e.slice(t+1);return it.has(n)?e.slice(0,t):e}function dt(e){return e.includes(`*`)||e.includes(`?`)}function ft(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function pt(e,t){return`${e}/${t}`}function mt(e,t,n=!0){return t&&n&&e.trim().length===0}function ht({attemptedSave:e,label:t,onChange:n,onToggleVisibility:r,placeholder:i,required:a=!0,showPassword:o,value:c}){let l=(0,Z.useId)(),u=mt(c,e,a);return(0,Q.jsxs)(Y,{"data-invalid":u||void 0,children:[(0,Q.jsx)(J,{htmlFor:l,children:t}),(0,Q.jsxs)(Se,{children:[(0,Q.jsx)(be,{align:`inline-start`,children:(0,Q.jsx)(Ge,{})}),(0,Q.jsx)(ye,{id:l,type:o?`text`:`password`,placeholder:i,value:c,onChange:e=>n(e.target.value),"aria-label":t,"aria-invalid":u||void 0}),(0,Q.jsx)(be,{align:`inline-end`,children:(0,Q.jsx)(xe,{size:`icon-xs`,className:s(Ce,`transition-[background-color,transform] duration-150 active:scale-[0.96]`),"aria-label":o?`Hide value`:`Show value`,onClick:r,children:o?(0,Q.jsx)(ze,{}):(0,Q.jsx)(P,{})})})]})]})}function gt({attemptedSave:e,icon:t,inputType:n=`text`,label:r,onChange:i,placeholder:a,required:o=!0,value:s}){let c=(0,Z.useId)(),l=mt(s,e,o);return(0,Q.jsxs)(Y,{"data-invalid":l||void 0,children:[(0,Q.jsx)(J,{htmlFor:c,children:r}),(0,Q.jsxs)(Se,{children:[(0,Q.jsx)(be,{align:`inline-start`,children:(0,Q.jsx)(t,{})}),(0,Q.jsx)(ye,{id:c,type:n,placeholder:a,value:s,onChange:e=>i(e.target.value),"aria-label":r,"aria-invalid":l||void 0})]})]})}function _t({children:e,className:t,description:n,icon:r,label:i,trailing:a}){let o=a??e;return(0,Q.jsxs)(Y,{orientation:`horizontal`,className:s(`items-center justify-between gap-6 rounded-xl border border-border/60 bg-card p-4 transition-colors`,t),children:[(0,Q.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-start gap-3`,children:[r?(0,Q.jsx)(`div`,{className:`flex size-8 shrink-0 items-center justify-center rounded-md border border-border/40 bg-background/60 text-foreground/70`,children:r}):null,(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsx)(J,{className:`text-sm font-medium text-foreground`,children:i}),n?(0,Q.jsx)(ue,{className:`mt-0.5 text-xs text-muted-foreground leading-normal`,children:n}):null]})]}),o?(0,Q.jsx)(`div`,{className:`shrink-0`,children:o}):null]})}var vt={unconfigured:`Add a key below to turn this on.`,unverified:`Checking the key…`,ready:`Ready.`,error:`The TypeSafe key could not be verified.`},yt={settings:`Using the key saved here.`,environment:`Using TYPESAFE_API_KEY from the server environment.`,none:`No key is set.`};function bt({enabled:e,keySource:t,status:n,onClearKey:r,onEnabledChange:i,onSaveKey:a}){let[o,s]=(0,Z.useState)(``),[c,l]=(0,Z.useState)(!1),[u,d]=(0,Z.useState)(!1),[f,p]=(0,Z.useState)(null),[m,h]=(0,Z.useState)(!1),g=(0,Z.useCallback)(async()=>{if(d(!0),p(null),!(!o.trim()||!a)){h(!0);try{await a(o.trim()),s(``),l(!1),d(!1)}catch(e){p(e instanceof Error?e.message:`Failed to save key`)}finally{h(!1)}}},[o,a]),_=(0,Z.useCallback)(async()=>{if(r){h(!0),p(null);try{await r(),s(``)}catch(e){p(e instanceof Error?e.message:`Failed to remove key`)}finally{h(!1)}}},[r]),v=n===`unconfigured`||n===`error`;return(0,Q.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,Q.jsx)(_t,{label:`Describe a command`,description:`Recognise when a message is really asking for a built-in command, like "compact this" or "show the shortcuts". Messages you send are shared with TypeSafe for classification only when this is on. ${vt[n]}`,trailing:(0,Q.jsx)(fe,{"aria-label":`Describe a command`,checked:e,disabled:!i||!e&&v,onCheckedChange:i})}),(0,Q.jsxs)(`div`,{className:`flex flex-col gap-2 rounded-xl border p-4`,children:[(0,Q.jsx)(ht,{attemptedSave:u,label:`TypeSafe API key`,onChange:e=>{s(e),f&&p(null)},onToggleVisibility:()=>l(e=>!e),placeholder:`Paste your TypeSafe API key`,showPassword:c,value:o}),f?(0,Q.jsx)(`p`,{className:`text-xs text-destructive`,children:f}):null,(0,Q.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:yt[t]}),(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(q,{type:`button`,size:`compact`,disabled:m||!o.trim(),onClick:()=>void g(),children:`Save key`}),t===`settings`?(0,Q.jsx)(q,{type:`button`,variant:`outline`,size:`compact`,disabled:m,onClick:()=>void _(),children:`Remove key`}):null]})]})]})}function xt({className:e,interactive:t,padding:n,tone:r,...i}){return(0,Q.jsx)(`div`,{className:s(we({interactive:t,padding:n,tone:r}),e),...i})}function $({icon:e,title:t,subtitle:n,trailing:r,className:i,interactive:a=!0,tone:o=`default`,truncateSubtitle:c=!0,truncateTitle:l=!0}){return(0,Q.jsxs)(xt,{tone:o,padding:`md`,interactive:a,className:s(`items-center gap-3`,i),children:[e?(0,Q.jsx)(`div`,{className:`flex size-8 shrink-0 items-center justify-center rounded-md border border-border/40 bg-background/60 text-foreground/70`,children:e}):null,(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsx)(`div`,{className:s(`text-sm font-medium text-foreground`,l&&`truncate`),children:t}),n?(0,Q.jsx)(`div`,{className:s(`mt-0.5 text-xs text-muted-foreground`,c?`truncate`:`leading-normal`),children:n}):null]}),r?(0,Q.jsx)(`div`,{className:`flex shrink-0 items-center gap-1.5`,children:r}):null]})}function St({actions:e,children:t,description:n,title:r}){return(0,Q.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,Q.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsx)(`h3`,{className:`text-lg font-medium text-balance`,children:r}),(0,Q.jsx)(`p`,{className:`mt-1 text-sm text-pretty text-muted-foreground`,children:n})]}),e?(0,Q.jsx)(`div`,{className:`flex shrink-0 items-center gap-1.5 pt-0.5`,children:e}):null]}),(0,Q.jsx)(`div`,{className:`flex flex-col gap-3`,children:t})]})}function Ct({dirty:e,disabled:t,onRevert:n,onSave:r,saving:i}){return(0,Q.jsxs)(Q.Fragment,{children:[e?(0,Q.jsx)(q,{type:`button`,variant:`ghost`,size:`icon-compact`,className:`text-muted-foreground transition-transform active:scale-[0.96]`,disabled:t||i,onClick:n,"aria-label":`Revert changes`,children:(0,Q.jsx)(F,{})}):null,(0,Q.jsxs)(q,{type:`button`,variant:`outline`,size:`compact`,className:s(Ee,`transition-transform active:scale-[0.96]`,e&&`border-primary/30 text-primary`),disabled:!e||t||i,onClick:r,children:[i?(0,Q.jsx)(U,{className:`animate-spin`,"data-icon":`inline-start`}):(0,Q.jsx)(Ze,{"data-icon":`inline-start`}),`Commit`]})]})}var wt=1500,Tt=`Unknown or expired OAuth login`;function Et(e){return new Promise(t=>{setTimeout(t,e)})}function Dt({onConfigured:e,onOAuthLogin:t,providerId:n}){let[r,i]=(0,Z.useState)(null),[a,o]=(0,Z.useState)(!1),[s,c]=(0,Z.useState)(``),l=(0,Z.useRef)(null),u=(0,Z.useRef)(0),d=(0,Z.useRef)(!1),f=(0,Z.useRef)(t),p=(0,Z.useRef)(e),m=(0,Z.useRef)(n);(0,Z.useEffect)(()=>{f.current=t,p.current=e,m.current=n},[e,t,n]);let h=(0,Z.useCallback)(async e=>{if(!(!e||!f.current))try{await f.current({providerId:m.current,loginId:e,cancel:!0})}catch{}},[]),g=(0,Z.useCallback)(()=>{l.current=null,d.current=!1,i(null),c(``),o(!1)},[]);(0,Z.useEffect)(()=>()=>{u.current+=1;let e=l.current;l.current=null,h(e)},[h]);let _=(0,Z.useCallback)((e,t)=>{if(t!==u.current){e.status===`waiting`&&e.loginId&&h(e.loginId);return}if(e.status===`success`){l.current=null,i(null),c(``),o(!1),G.success(`Provider credentials applied to your active sessions.`),p.current?.();return}if(e.status===`error`){if(e.error===Tt&&l.current===null)return;let t=l.current;l.current=null,t&&e.error!==`Login cancelled`&&h(t),i(e),o(!1);return}e.loginId&&(l.current=e.loginId),i(e)},[h]),v=(0,Z.useCallback)(async()=>{if(!f.current||d.current)return;d.current=!0;let e=u.current;o(!0);let t=l.current;if(l.current=null,i(null),await h(t),e!==u.current){d.current=!1;return}try{let t=await f.current({providerId:m.current});_(t,e)}catch(t){if(e!==u.current)return;i({status:`error`,error:t instanceof Error?t.message:`Failed to start OAuth sign-in`})}finally{d.current=!1,e===u.current&&o(!1)}},[_,h]),y=(0,Z.useCallback)(async()=>{let e=l.current;if(!f.current||!e)return;let t=u.current;o(!0);try{let n=await f.current({providerId:m.current,loginId:e,promptAnswer:s});c(``),_(n,t)}catch(e){if(t!==u.current)return;G.error(e instanceof Error?e.message:`Failed to continue OAuth sign-in`)}finally{t===u.current&&o(!1)}},[_,s]),b=(0,Z.useCallback)(async()=>{u.current+=1;let e=l.current;g(),await h(e)},[h,g]);return(0,Z.useEffect)(()=>{if(!f.current||r?.status!==`waiting`||!r.loginId)return;let e=u.current,t=r.loginId,n=!1;return(async()=>{for(;!n;){try{let r=await f.current({providerId:m.current,loginId:t});if(n||e!==u.current||(_(r,e),r.status!==`waiting`))return}catch(r){if(n||e!==u.current||l.current!==t)return;l.current=null,h(t),i({status:`error`,error:r instanceof Error?r.message:`OAuth sign-in failed`});return}if(await Et(wt),n||e!==u.current||l.current!==t)return}})(),()=>{n=!0}},[_,h,r?.loginId,r?.status]),{busy:a,cancel:b,canStart:!!t,login:r,promptAnswer:s,setPromptAnswer:c,start:v,submitPrompt:y}}function Ot({onConfigured:e,onOAuthLogin:t,provider:n}){let{busy:r,cancel:i,canStart:a,login:o,promptAnswer:s,setPromptAnswer:c,start:l,submitPrompt:u}=Dt({onConfigured:e,onOAuthLogin:t,providerId:n.id}),d=o?.status===`waiting`,f=o?.status===`error`?o.error:void 0,p=d?o?.authUrl:void 0,m=d?o?.userCode:void 0,h=d?o?.instructions:void 0,g=d?o?.prompt:void 0,_=n.authType===`oauth`;return(0,Q.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[n.isConfigured&&_&&!d?(0,Q.jsxs)(`div`,{className:`flex items-center gap-2 text-sm`,children:[(0,Q.jsx)(M,{className:`size-3.5 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:`Connected`})]}):null,d?(0,Q.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,Q.jsxs)(`p`,{className:`text-sm`,children:[`Sign in with `,n.name,` to store OAuth credentials for this account.`]}),m?(0,Q.jsxs)(`p`,{className:`text-sm`,children:[`Enter this code: `,(0,Q.jsx)(`span`,{className:`font-mono text-foreground`,children:m})]}):null,h&&!m?(0,Q.jsx)(`p`,{className:`text-xs text-pretty text-muted-foreground`,children:h}):null,p?(0,Q.jsxs)(q,{type:`button`,size:`compact`,onClick:()=>{window.open(p,`_blank`,`noopener,noreferrer`)},children:[(0,Q.jsx)(Le,{"data-icon":`inline-start`}),`Open sign-in page`]}):g?null:(0,Q.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-muted-foreground`,children:[(0,Q.jsx)(X,{className:`size-3`}),`Waiting for sign-in…`]}),g?(0,Q.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,Q.jsx)(`p`,{className:`text-xs text-pretty text-muted-foreground`,children:g.message}),(0,Q.jsx)(ve,{value:s,placeholder:g.placeholder,onChange:e=>c(e.target.value),"aria-label":g.message}),(0,Q.jsx)(`div`,{className:`flex justify-end`,children:(0,Q.jsxs)(q,{type:`button`,size:`compact`,disabled:r||!g.allowEmpty&&!s.trim(),onClick:()=>{u()},children:[r?(0,Q.jsx)(X,{"data-icon":`inline-start`}):null,`Continue`]})})]}):null,(0,Q.jsx)(`div`,{className:`flex justify-end`,children:(0,Q.jsx)(q,{type:`button`,variant:`ghost`,size:`compact`,disabled:r,onClick:()=>{i()},children:`Cancel sign-in`})})]}):(0,Q.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[f?(0,Q.jsx)(le,{className:`px-3 py-2`,children:(0,Q.jsx)(de,{className:`text-xs text-pretty`,children:f})}):(0,Q.jsx)(`p`,{className:`text-xs text-pretty text-muted-foreground`,children:_&&n.isConfigured?`Sign in again with ${n.name} to refresh OAuth credentials.`:_?`Sign in with ${n.name}. No API key is stored; credentials are saved to auth.json.`:`Sign in with ${n.name} to use OAuth credentials; API-key editing remains available above.`}),(0,Q.jsx)(`div`,{className:`flex justify-end`,children:(0,Q.jsxs)(q,{type:`button`,size:`compact`,disabled:r||!a,onClick:()=>{l()},children:[r?(0,Q.jsx)(X,{"data-icon":`inline-start`}):null,`Sign in with `,n.name]})})]})]})}function kt({className:e,...t}){return(0,Q.jsx)(`textarea`,{"data-slot":`textarea`,className:s(`flex field-sizing-content min-h-16 w-full rounded-lg border border-input bg-transparent px-2.5 py-2 text-base transition-colors outline-none placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:bg-input/50 disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 md:text-sm dark:bg-input/30 dark:disabled:bg-input/80 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40`,e),...t})}function At(e){switch(e.status){case`connected`:return`Connected`;case`anonymous`:return`Available without sign-in`;case`needs_auth`:return`Sign-in required`;case`disabled`:return`Disabled`;default:return e.status}}function jt(e){let t=e.transport===`http`?e.url:e.commandPreview;return[e.source===`builtin`?`Built-in`:`User`,e.transport===`http`?`HTTP`:`stdio`,At(e),t].filter(e=>!!e).join(` · `)}function Mt({connections:e,isLoading:t,isPending:n,onOAuth:r,onRemove:i,onUpsert:a}){let[o,s]=(0,Z.useState)(!1),[c,l]=(0,Z.useState)(`http`),[u,d]=(0,Z.useState)(``),[f,p]=(0,Z.useState)(``),[m,h]=(0,Z.useState)(!0),[g,_]=(0,Z.useState)(``),[v,y]=(0,Z.useState)(``),[b,S]=(0,Z.useState)(``),[C,w]=(0,Z.useState)(``),[T,D]=(0,Z.useState)(``),[O,k]=(0,Z.useState)(null),A=()=>{d(``),p(``),h(!0),_(``),y(``),S(``),w(``),D(``),l(`http`),s(!1)},j=async()=>{if(!a)return;let e=u.trim();try{if(c===`http`)await a({name:e,transport:`http`,url:f.trim(),...m?{oauth:!0}:{},...g.trim()?{bearerTokenEnvVar:g.trim()}:{},force:!0});else{let t=b.split(/\s+/).map(e=>e.trim()).filter(Boolean),n=T.split(`
|
|
2
|
-
`).map(e=>e.trim()).filter(Boolean).flatMap(e=>{let t=e.indexOf(`=`);if(t<=0)return[];let n=e.slice(0,t).trim(),r=e.slice(t+1).trim();return!n||!r?[]:[{child:n,source:r}]});await a({name:e,transport:`stdio`,command:v.trim(),...t.length>0?{args:t}:{},...C.trim()?{cwd:C.trim()}:{},...n.length>0?{env:n}:{},force:!0})}G.success(`MCP connection saved`),A()}catch(e){G.error(e instanceof Error?e.message:`Could not save MCP connection`)}},M=async e=>{if(i)try{await i({name:e}),G.success(`Removed ${e}`),k(null)}catch(e){G.error(e instanceof Error?e.message:`Could not remove MCP connection`)}},N=async e=>{if(r)try{await r({name:e,action:`logout`}),G.success(`Signed out of ${e}`)}catch(e){G.error(e instanceof Error?e.message:`Could not sign out`)}},P=(0,Z.useMemo)(()=>{if(r)return e=>async t=>{let n=!t.loginId&&!t.cancel;return await r({name:e.name,action:n&&e.status===`connected`?`reconnect`:`login`,loginId:t.loginId,promptAnswer:t.promptAnswer,cancel:t.cancel})}},[r]);return(0,Q.jsxs)(St,{title:`MCP`,description:`Connect built-in and user MCP servers. Tokens stay on the server; this list only shows status and environment-variable names.`,actions:(0,Q.jsxs)(q,{type:`button`,size:`compact`,variant:`outline`,disabled:n||o,onClick:()=>s(!0),children:[(0,Q.jsx)(K,{"data-icon":`inline-start`}),`Add server`]}),children:[t?(0,Q.jsxs)(`div`,{className:`flex items-center gap-2 text-sm text-muted-foreground`,children:[(0,Q.jsx)(X,{className:`size-3.5`}),`Loading MCP connections…`]}):null,o?(0,Q.jsxs)(`div`,{className:`flex flex-col gap-3 rounded-xl border p-4`,children:[(0,Q.jsxs)(Y,{children:[(0,Q.jsx)(J,{children:`Name`}),(0,Q.jsx)(ve,{value:u,onChange:e=>d(e.target.value),"aria-label":`MCP server name`})]}),(0,Q.jsxs)(Y,{children:[(0,Q.jsx)(J,{children:`Transport`}),(0,Q.jsx)(x,{value:c,onValueChange:e=>l(e),options:[{label:`HTTP`,value:`http`},{label:`stdio`,value:`stdio`}]})]}),c===`http`?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(Y,{children:[(0,Q.jsx)(J,{children:`URL`}),(0,Q.jsx)(ve,{value:f,onChange:e=>p(e.target.value),"aria-label":`MCP server URL`})]}),(0,Q.jsxs)(Y,{orientation:`horizontal`,className:`items-center justify-between`,children:[(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(J,{children:`OAuth`}),(0,Q.jsx)(ue,{children:`Use the browser sign-in flow for this server.`})]}),(0,Q.jsx)(fe,{checked:m,onCheckedChange:e=>h(e),"aria-label":`Use OAuth`})]}),m?null:(0,Q.jsxs)(Y,{children:[(0,Q.jsx)(J,{children:`Bearer token environment variable`}),(0,Q.jsx)(ve,{value:g,onChange:e=>_(e.target.value),"aria-label":`Bearer token environment variable`,placeholder:`MCP_BEARER_TOKEN`})]})]}):(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(Y,{children:[(0,Q.jsx)(J,{children:`Command`}),(0,Q.jsx)(ve,{value:v,onChange:e=>y(e.target.value),"aria-label":`MCP command`})]}),(0,Q.jsxs)(Y,{children:[(0,Q.jsx)(J,{children:`Arguments`}),(0,Q.jsx)(ve,{value:b,onChange:e=>S(e.target.value),"aria-label":`MCP command arguments`})]}),(0,Q.jsxs)(Y,{children:[(0,Q.jsx)(J,{children:`Working directory`}),(0,Q.jsx)(ve,{value:C,onChange:e=>w(e.target.value),"aria-label":`MCP working directory`}),(0,Q.jsx)(ue,{children:`Must stay inside the current workspace.`})]}),(0,Q.jsxs)(Y,{children:[(0,Q.jsx)(J,{children:`Environment mappings`}),(0,Q.jsx)(kt,{value:T,onChange:e=>D(e.target.value),"aria-label":`MCP environment mappings`,placeholder:`CHILD=SOURCE`}),(0,Q.jsx)(ue,{children:`One CHILD=SOURCE pair per line. Only variable names are stored.`})]})]}),(0,Q.jsxs)(`div`,{className:`flex justify-end gap-2`,children:[(0,Q.jsx)(q,{type:`button`,size:`compact`,variant:`ghost`,onClick:A,children:`Cancel`}),(0,Q.jsxs)(q,{type:`button`,size:`compact`,disabled:n||!u.trim(),onClick:()=>void j(),children:[n?(0,Q.jsx)(X,{"data-icon":`inline-start`}):null,`Save`]})]})]}):null,!t&&e.length===0&&!o?(0,Q.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`No MCP connections yet.`}):null,(0,Q.jsx)(`div`,{className:`flex flex-col gap-2`,children:e.map(e=>(0,Q.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,Q.jsx)($,{icon:(0,Q.jsx)(ee,{className:`size-4`}),title:e.label,subtitle:jt(e),trailing:(0,Q.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[e.usesOAuth&&e.status!==`needs_auth`?(0,Q.jsx)(q,{type:`button`,size:`compact`,variant:`ghost`,disabled:n||!r,onClick:()=>{N(e.name)},children:`Sign out`}):null,e.source===`user`?O===e.name?(0,Q.jsx)(q,{type:`button`,size:`compact`,variant:`destructive`,disabled:n,onClick:()=>{M(e.name)},children:`Confirm remove`}):(0,Q.jsx)(q,{type:`button`,size:`compact`,variant:`ghost`,disabled:n||!i,"aria-label":`Remove ${e.name}`,onClick:()=>k(e.name),children:(0,Q.jsx)(E,{className:`size-3.5`})}):null]})}),e.error?(0,Q.jsx)(le,{className:`px-3 py-2`,children:(0,Q.jsx)(de,{className:`text-xs text-pretty`,children:e.error})}):null,e.usesOAuth&&P?(0,Q.jsx)(Ot,{provider:{id:e.name,name:e.label,isConfigured:e.status===`connected`,envVarName:``,authType:`oauth`,supportsOAuth:!0},onOAuthLogin:P(e)}):null]},`${e.source}:${e.name}`))})]})}var Nt=[{value:`system`,label:`System`,icon:V},{value:`light`,label:`Light`,icon:H},{value:`dark`,label:`Dark`,icon:B}];function Pt({onThemePreferenceChange:e,themePreference:t}){return(0,Q.jsxs)(Y,{orientation:`horizontal`,className:`items-center justify-between gap-6 rounded-xl border p-4`,children:[(0,Q.jsxs)(`div`,{className:`min-w-0`,children:[(0,Q.jsx)(J,{children:`Theme`}),(0,Q.jsx)(ue,{children:`Match the system theme or pick light or dark.`})]}),(0,Q.jsx)(`div`,{className:`shrink-0`,children:(0,Q.jsx)(x,{"aria-label":`Theme`,className:`w-[160px]`,onValueChange:t=>e(t),options:[...Nt],value:t})})]})}function Ft(e,t){return ct({id:e.id,name:e.name,provider:e.provider,modelId:e.modelId},t)}function It({currentPatterns:e,enabled:t,model:n,models:r}){let i=e??[],a=new Set(r.map(e=>Lt(e))),o=new Set;for(let e of r)Ft(e,i)&&o.add(Lt(e));return t?o.add(Lt(n)):o.delete(Lt(n)),[...i.filter(e=>a.has(e)?!1:t||!lt(n,e)),...o]}function Lt(e){return pt(e.provider,e.modelId)}function Rt(e){return[e.name,e.modelId,e.provider,e.id].join(` `).toLowerCase()}function zt({configuredProviderIds:e,discoverableProviderIds:t,discoveringProviderId:n,enabledModels:r,modelOptions:i,onAddModels:a,onDiscoverProvider:o,onOpenChange:c,open:l,providerLabel:u=j}){let[d,f]=(0,Z.useState)(``),[p,m]=(0,Z.useState)(new Set),h=d.trim().toLowerCase(),g=(0,Z.useMemo)(()=>i.filter(t=>!e.has(t.provider)||Ft(t,r)?!1:!h||Rt(t).includes(h)),[e,r,i,h]),_=(0,Z.useMemo)(()=>{let e=new Map;for(let t of g){let n=e.get(t.provider);n?n.push(t):e.set(t.provider,[t])}return[...e.entries()]},[g]),v=(0,Z.useMemo)(()=>{let n=t??e;return Array.from(n).filter(t=>e.has(t)).sort((e,t)=>u(e).localeCompare(u(t)))},[e,t,u]),y=(0,Z.useMemo)(()=>{let e=new Map;for(let t of i)Ft(t,r)&&e.set(t.provider,(e.get(t.provider)??0)+1);return e},[r,i]),b=e=>{m(t=>{let n=new Set(t);return n.has(e.id)?n.delete(e.id):n.add(e.id),n})};return(0,Q.jsx)(_e,{open:l,onOpenChange:c,children:(0,Q.jsxs)(me,{className:`max-w-lg`,children:[(0,Q.jsxs)(pe,{children:[(0,Q.jsx)(he,{children:`Add models`}),(0,Q.jsxs)(ge,{children:[`Pick models discovered from your configured providers. For OpenAI Chat Completions, refresh runs`,` `,(0,Q.jsxs)(`span`,{className:`font-medium`,children:[`GET `,`{baseUrl}/models`]}),`.`]})]}),(0,Q.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:v.map(e=>{let t=n===e,r=y.get(e)??0;return(0,Q.jsxs)(q,{type:`button`,variant:`outline`,size:`compact`,disabled:n!==null,onClick:()=>{o(e)},children:[t?(0,Q.jsx)(X,{"data-icon":`inline-start`}):(0,Q.jsx)(re,{"data-icon":`inline-start`}),u(e),r>0?(0,Q.jsxs)(`span`,{className:`tabular-nums text-muted-foreground`,children:[`· `,r,` active`]}):null]},e)})}),(0,Q.jsxs)(Se,{children:[(0,Q.jsx)(be,{align:`inline-start`,children:(0,Q.jsx)(ie,{})}),(0,Q.jsx)(ye,{"aria-label":`Search discovered models`,value:d,onChange:e=>f(e.target.value),placeholder:`Search discovered models…`})]}),(0,Q.jsx)(`div`,{className:`max-h-72 overflow-y-auto overscroll-contain`,children:_.length===0?(0,Q.jsx)(`p`,{className:`py-6 text-center text-xs text-pretty text-muted-foreground`,children:g.length===0&&!h?`All discovered models are already in your list, or none are available yet.`:`No models match your search.`}):(0,Q.jsx)(`div`,{className:`flex flex-col gap-3`,children:_.map(([e,t])=>(0,Q.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,Q.jsxs)(`div`,{className:`px-2 text-caption font-medium tracking-wide text-muted-foreground uppercase`,children:[u(e),(y.get(e)??0)>0?(0,Q.jsxs)(`span`,{className:`ml-1 font-normal normal-case tabular-nums`,children:[`· `,y.get(e),` active`]}):null]}),t.map(e=>{let t=p.has(e.id);return(0,Q.jsxs)(`button`,{type:`button`,className:s(`flex w-full items-center gap-3 rounded-lg px-2 py-2 text-left transition-[background-color,transform] duration-150`,`hover:bg-muted/60 focus-visible:ring-2 focus-visible:ring-ring focus-visible:outline-none active:scale-[0.96]`,t&&`bg-muted/70`),"aria-pressed":t,onClick:()=>b(e),children:[(0,Q.jsx)(`div`,{className:`flex size-8 shrink-0 items-center justify-center rounded-[4px] border border-border/40 bg-background/60`,children:(0,Q.jsx)(D,{provider:e.provider,className:`text-foreground/70`})}),(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsx)(`div`,{className:`truncate text-sm font-medium`,children:e.name}),(0,Q.jsx)(`div`,{className:`truncate text-xs text-muted-foreground`,children:e.modelId})]}),(0,Q.jsx)(`span`,{className:s(`size-4 rounded border border-border/60`,t&&`border-foreground bg-foreground`),"aria-hidden":!0})]},e.id)})]},e))})}),(0,Q.jsxs)(`div`,{className:`flex items-center justify-end gap-1.5`,children:[(0,Q.jsx)(q,{type:`button`,variant:`ghost`,size:`compact`,onClick:()=>c(!1),children:`Cancel`}),(0,Q.jsxs)(q,{type:`button`,size:`compact`,disabled:p.size===0,onClick:()=>{let e=g.filter(e=>p.has(e.id));e.length>0&&a(e),c(!1)},children:[`Add `,p.size>0?(0,Q.jsxs)(`span`,{className:`tabular-nums`,children:[`(`,p.size,`)`]}):null]})]})]})})}function Bt({draft:e,discoveringProviderId:t,modelDirty:n,modelFilter:r,modelOptions:i,onAddModels:a,onDiscoverProvider:o,onModelFilterChange:c,onRemoveModel:l,onSetDefaultModel:u,onRevert:d,onSave:f,providers:p,saving:m,settingsLoading:h}){let[g,_]=(0,Z.useState)(!1),v=!e||h,y=r.trim().toLowerCase(),b=(0,Z.useMemo)(()=>{let t=new Set;for(let e of p)e.isConfigured&&t.add(e.id);for(let n of i)Ft(n,e?.enabledModels)&&t.add(n.provider);return t},[e?.enabledModels,i,p]),x=(0,Z.useMemo)(()=>{let e=new Set;for(let t of p)t.discoverable===!0&&b.has(t.id)&&e.add(t.id);return e},[b,p]),S=(0,Z.useMemo)(()=>t=>!!e?.defaultProvider&&!!e?.defaultModel&&t.provider===e.defaultProvider&&t.modelId===e.defaultModel,[e?.defaultModel,e?.defaultProvider]),C=(0,Z.useMemo)(()=>{let e=new Map;for(let t of p)(t.displayName||t.name)&&e.set(t.id,t.displayName??t.name??t.id);return t=>e.get(t)??j(t)},[p]),w=(0,Z.useMemo)(()=>i.filter(t=>Ft(t,e?.enabledModels)?!y||[t.name,t.modelId,t.provider,t.id].join(` `).toLowerCase().includes(y):!1),[e?.enabledModels,i,y]),T=(0,Z.useMemo)(()=>{let e=new Map;for(let t of w){let n=e.get(t.provider);n?n.push(t):e.set(t.provider,[t])}return[...e.entries()]},[w]),O=i.length===0?`No models discovered yet. Configure a provider, then add models.`:w.length===0&&!y?`Add models from your configured providers to make them available in chat.`:w.length===0?`No models match your search.`:null,k=()=>{_(!0)};return(0,Q.jsxs)(St,{title:`LLM Models`,description:(0,Q.jsxs)(Q.Fragment,{children:[`Models available in chat. Discover from configured providers, add the ones you want, and remove any you do not need — changes save automatically. `,(0,Q.jsx)(`span`,{className:`tabular-nums`,children:w.length}),` in list`,i.length>0?(0,Q.jsxs)(Q.Fragment,{children:[` `,`· `,(0,Q.jsx)(`span`,{className:`tabular-nums`,children:i.length}),` discovered`]}):null,`.`]}),actions:(0,Q.jsx)(Ct,{dirty:n,disabled:v,onRevert:d,onSave:f,saving:m}),children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsxs)(Se,{className:`flex-1`,children:[(0,Q.jsx)(be,{align:`inline-start`,children:(0,Q.jsx)(ie,{})}),(0,Q.jsx)(ye,{"aria-label":`Search listed models`,value:r,onChange:e=>c(e.target.value),placeholder:`Search listed models…`,disabled:v||w.length===0})]}),(0,Q.jsxs)(q,{type:`button`,variant:`outline`,size:`compact`,disabled:v,onClick:k,children:[(0,Q.jsx)(K,{"data-icon":`inline-start`}),`Add models`]})]}),(0,Q.jsx)(`div`,{className:`flex flex-col gap-3`,"data-testid":`runtime-models-list`,children:O?(0,Q.jsxs)(`div`,{className:`flex flex-col items-center gap-3 py-8`,children:[(0,Q.jsx)(`p`,{className:`px-1 text-center text-xs text-pretty text-muted-foreground`,children:O}),y?null:(0,Q.jsxs)(q,{type:`button`,variant:`outline`,size:`compact`,disabled:v,onClick:k,children:[(0,Q.jsx)(K,{"data-icon":`inline-start`}),`Add models`]})]}):T.map(([e,t])=>(0,Q.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,Q.jsx)(`div`,{className:`px-1 text-xs font-medium text-muted-foreground`,children:C(e)}),t.map(e=>(0,Q.jsx)($,{icon:(0,Q.jsx)(D,{provider:e.provider}),title:e.name,subtitle:`${C(e.provider)} · ${e.modelId}`,trailing:(0,Q.jsxs)(`div`,{className:`flex items-center`,children:[S(e)?(0,Q.jsx)(`span`,{className:`px-2 text-xs font-medium text-muted-foreground`,children:`Default`}):u?(0,Q.jsxs)(q,{type:`button`,variant:`ghost`,size:`compact`,className:s(Te,`h-7 px-2 text-xs text-muted-foreground transition-[background-color,color,transform] duration-150 active:scale-[0.96]`),disabled:v,"aria-label":`Set ${e.name} as default`,onClick:()=>u(e),children:[(0,Q.jsx)($e,{"data-icon":`inline-start`}),`Set default`]}):null,(0,Q.jsxs)(q,{type:`button`,variant:`ghost`,size:`compact`,className:s(Te,`h-7 px-2 text-xs text-muted-foreground transition-[background-color,color,transform] duration-150 hover:text-destructive active:scale-[0.96]`),disabled:v,"aria-label":`Remove ${e.name}`,onClick:()=>l(e),children:[(0,Q.jsx)(E,{"data-icon":`inline-start`}),`Remove`]})]})},e.id))]},e))}),(0,Q.jsx)(zt,{open:g,configuredProviderIds:b,discoverableProviderIds:x,discoveringProviderId:t,enabledModels:e?.enabledModels,modelOptions:i,onAddModels:a,onDiscoverProvider:o,onOpenChange:_,providerLabel:C})]})}var Vt=`https://opencode.ai/zen/v1`,Ht=`qwen35-122b-a10b`,Ut=`e.g. OpenCode Zen, Nebius, Groq…`,Wt=`model-a, model-b (comma-separated)`,Gt=[{value:`openai-completions`,label:`OpenAI Chat Completions`},{value:`openai-responses`,label:`OpenAI Responses`},{value:`anthropic-messages`,label:`Anthropic Messages`},{value:`google-genai`,label:`Google Generative AI`}];function Kt({attemptedSave:e,apiKey:t,api:n,baseUrl:r,modelId:i,models:a,displayName:o,isCustom:s,onApiKeyChange:c,onApiChange:l,onBaseUrlChange:u,onModelIdChange:d,onModelsChange:f,onDisplayNameChange:p,onTogglePassword:m,openAiChat:h,placeholder:g,showPassword:_}){let v=s&&l,y=s&&f;return(0,Q.jsxs)(ce,{className:`gap-2`,children:[(h||s)&&p?(0,Q.jsx)(gt,{attemptedSave:e,icon:tt,label:`Provider name`,placeholder:Ut,value:o??``,onChange:p}):null,v?(0,Q.jsx)(qt,{value:n??`openai-completions`,onChange:l}):null,(0,Q.jsx)(ht,{attemptedSave:e,label:`API key`,placeholder:g,value:t,showPassword:_,onChange:c,onToggleVisibility:m}),h||s?(0,Q.jsx)(gt,{attemptedSave:e,icon:I,inputType:`url`,label:`Base URL`,placeholder:Vt,value:r,onChange:u}):null,y?(0,Q.jsx)(gt,{attemptedSave:e,icon:Ue,label:`Model ids`,placeholder:Wt,value:a??``,onChange:f}):null,h&&!y?(0,Q.jsx)(gt,{attemptedSave:e,icon:Fe,label:`Model name`,placeholder:Ht,value:i,onChange:d}):null]})}function qt({value:e,onChange:t}){return(0,Q.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,Q.jsx)(`span`,{className:`text-xs font-medium text-muted-foreground`,children:`API family`}),(0,Q.jsx)(x,{"aria-label":`API family`,value:e,options:Gt,placeholder:`Select API family`,onValueChange:e=>t(e)})]})}function Jt(e){return e.authType===`oauth`}function Yt(e){return e.supportsOAuth===!0}var Xt={id:`custom`,name:`Custom provider`,isConfigured:!1,envVarName:`CUSTOM_PROVIDER_API_KEY`,displayName:`Custom provider`};function Zt(e){return e.split(`,`).map(e=>e.trim()).filter(e=>e.length>0)}function Qt({onRemoveProvider:e,onUpdateProvider:t,providers:n}){let[r,i]=(0,Z.useState)(null),[a,o]=(0,Z.useState)(!1),[s,c]=(0,Z.useState)(``),[l,u]=(0,Z.useState)(``),[d,f]=(0,Z.useState)(``),[p,m]=(0,Z.useState)(``),[h,_]=(0,Z.useState)(`openai-completions`),[v,b]=(0,Z.useState)(``),[x,C]=(0,Z.useState)(!1),[w,T]=(0,Z.useState)(!1),[E,D]=(0,Z.useState)(``),[O,k]=(0,Z.useState)(!1),[A,j]=(0,Z.useState)(``),[M,N]=(0,Z.useState)(null),P=(0,Z.useMemo)(()=>[...n.filter(e=>e.id!==Xt.id),Xt],[n]),F=(0,Z.useMemo)(()=>P.filter(e=>e.isConfigured),[P]),I=(0,Z.useMemo)(()=>P.filter(e=>!e.isConfigured||e.id===`openai-chat-completions`&&e.providerFamily===void 0),[P]),L=(0,Z.useMemo)(()=>{let e=E.trim().toLowerCase();return e?F.filter(t=>$t(t,e)):F},[F,E]),R=(0,Z.useMemo)(()=>{let e=A.trim().toLowerCase();return I.filter(t=>$t(t,e))},[A,I]),z=(0,Z.useMemo)(()=>{let e=A.trim().toLowerCase();return F.filter(t=>$t(t,e))},[F,A]),B=R.length>0||z.length>0,V=r&&!F.some(e=>e.id===r)?P.find(e=>e.id===r)??null:null,H=()=>{c(``),u(``),f(``),m(``),_(`openai-completions`),b(``),C(!1),T(!1)},U=()=>{i(null),o(!1),H()},W=(e,t)=>{k(!1),j(``),i(e),o(t?.newOccInstance===!0),H();let r=n.find(t=>t.id===e);u(r?.baseUrl??``),b(r?.displayName??(y(e)?r?.name??``:``)),_(r?.api??`openai-completions`),m((r?.modelIds??[]).join(`, `)),f(r?.modelIds?.[0]??``)},ee=()=>{U(),j(``),k(!0)},K=()=>{k(!1),j(``)};return{activeProviders:F,addPickerOpen:O,addPickerQuery:A,api:h,apiKey:s,attemptedSave:w,baseUrl:l,canSave:(0,Z.useMemo)(()=>s.trim().length===0?!1:r?r===`custom`||y(r)?l.trim().length===0||Zt(p).length===0?!1:v.trim().length>0:S(r)?l.trim().length===0||d.trim().length===0?!1:g(r)||a?v.trim().length>0:!0:!0:!0,[s,l,d,p,v,r,a]),closeAddPicker:K,closeEditor:U,confirmRemoveProvider:M,credentialProviders:P,displayName:v,editingIsNewOccInstance:a,editingProvider:r,editingUnconfiguredProvider:V,filteredActiveProviders:L,filteredPickerAvailable:R,filteredPickerConfigured:z,handleRemove:async t=>{if(e)try{await e({providerId:t.id}),r===t.id&&U(),G.success(`${t.name} removed from your configured providers.`),N(null)}catch(e){G.error(e instanceof Error?e.message:`Failed to remove provider`)}},handleSave:async e=>{if(!t)return;T(!0);let n=e===`custom`||y(e),r=S(e);if(n){let n=Zt(p);if(!s.trim()||!l.trim()||!v.trim()||n.length===0)return;try{await t({providerId:e,apiKey:s.trim(),baseUrl:l.trim(),displayName:v.trim(),api:h,models:n,...e===`custom`?{createOccInstance:!0}:{}}),G.success(`Provider credentials applied to your active sessions.`),U(),K()}catch(e){G.error(e instanceof Error?e.message:`Failed to update provider`)}return}let i=r&&g(e),o=r&&(i||a);if(s.trim()&&!(r&&(!l.trim()||!d.trim()))&&!(o&&!v.trim()))try{await t({providerId:e,apiKey:s.trim(),...r?{baseUrl:l.trim(),modelId:d.trim(),...o?{displayName:v.trim()}:{},...a?{createOccInstance:!0}:{}}:{}}),G.success(`Provider credentials applied to your active sessions.`),U(),K()}catch(e){G.error(e instanceof Error?e.message:`Failed to update provider`)}},modelId:d,models:p,openAddPicker:ee,openEditor:W,pickerHasResults:B,resetEditor:H,searchQuery:E,selectProviderFromPicker:e=>{W(e,{newOccInstance:S(e)})},setAddPickerOpen:k,setAddPickerQuery:j,setApi:_,setApiKey:c,setAttemptedSave:T,setBaseUrl:u,setConfirmRemoveProvider:N,setDisplayName:b,setEditingIsNewOccInstance:o,setEditingProvider:i,setModelId:f,setModels:m,setSearchQuery:D,setShowPassword:C,showPassword:x,unconfiguredProviders:I}}function $t(e,t){if(!t)return!0;let n=Yt(e)?Jt(e)?`oauth sign-in login`:`api key oauth sign-in login`:e.id===`custom`||y(e.id)?`custom provider endpoint openai anthropic google compatible`:S(e.id)?`api key base url model name chat completions`:``;return[e.name,e.envVarName,e.id,n].join(` `).toLowerCase().includes(t)}function en({addPickerQuery:e,credentialProvidersLength:t,filteredPickerAvailable:n,filteredPickerConfigured:r,pickerHasResults:i,onClose:a,onQueryChange:o,onSelect:s}){return(0,Q.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(q,{type:`button`,variant:`ghost`,size:`icon-compact`,"aria-label":`Back to providers`,onClick:a,children:(0,Q.jsx)(A,{})}),(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsx)(`p`,{className:`text-sm font-medium`,children:`Add provider`}),(0,Q.jsx)(`p`,{className:`text-xs text-pretty text-muted-foreground`,children:`Choose a provider to store encrypted credentials for this account.`})]})]}),(0,Q.jsxs)(Se,{children:[(0,Q.jsx)(be,{align:`inline-start`,children:(0,Q.jsx)(ie,{})}),(0,Q.jsx)(ye,{type:`text`,placeholder:`Search providers…`,value:e,onChange:e=>o(e.target.value),"aria-label":`Search providers to add`})]}),(0,Q.jsx)(`div`,{className:`max-h-[min(24rem,50dvh)] overflow-y-auto overscroll-contain`,children:i?(0,Q.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[n.length>0?(0,Q.jsx)(`div`,{className:`flex flex-col gap-1`,children:n.map(e=>(0,Q.jsx)(an,{provider:e,configured:!1,onSelect:()=>s(e.id)},e.id))}):null,r.length>0?(0,Q.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[n.length>0?(0,Q.jsx)(`p`,{className:`px-2 pt-1 text-caption font-medium tracking-wide text-muted-foreground uppercase`,children:`Already configured`}):null,r.map(e=>(0,Q.jsx)(an,{provider:e,configured:!0,onSelect:()=>s(e.id)},e.id))]}):null]}):(0,Q.jsx)(`p`,{className:`py-6 text-center text-xs text-pretty text-muted-foreground`,children:t===0?`No providers available.`:`No matching providers found.`})})]})}function tn({onBack:e,onConfigured:t,onOAuthLogin:n,provider:r}){return(0,Q.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(q,{type:`button`,variant:`ghost`,size:`icon-compact`,"aria-label":`Back to provider list`,onClick:e,children:(0,Q.jsx)(A,{})}),(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsxs)(`p`,{className:`text-sm font-medium`,children:[`Configure `,r.name]}),(0,Q.jsx)(`p`,{className:`text-xs text-pretty text-muted-foreground`,children:`OAuth sign-in. Credentials are stored in auth.json for this account.`})]})]}),(0,Q.jsx)(Ot,{provider:r,onConfigured:t,onOAuthLogin:n},r.id)]})}function nn({provider:e,api:t,apiKey:n,baseUrl:r,modelId:i,models:a,displayName:o,showPassword:s,attemptedSave:c,isPending:l,canSave:u,onApiKeyChange:d,onApiChange:f,onBaseUrlChange:m,onModelIdChange:h,onModelsChange:g,onDisplayNameChange:_,onTogglePassword:v,onBack:b,onCancel:x,onConfigured:C,onOAuthLogin:w,onSave:T}){let E=e.id===`custom`||y(e.id),D=k[e.id]??(E?k.custom:{placeholder:`Enter credentials…`,help:`Stored securely in your local environment overrides.`}),O=S(e.id)&&!E,j=Yt(e);return(0,Q.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(q,{type:`button`,variant:`ghost`,size:`icon-compact`,"aria-label":`Back to provider list`,onClick:b,children:(0,Q.jsx)(A,{})}),(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsxs)(`p`,{className:`text-sm font-medium`,children:[`Configure `,e.name]}),(0,Q.jsx)(`p`,{className:`text-xs text-pretty text-muted-foreground`,children:E?`Name this custom provider, pick its API family, then enter its API key, https base URL, and model ids.`:O?`Name this OpenAI-compatible provider, then enter its API key, base URL, and model name.`:`Stored as ${e.envVarName} for this account.`})]})]}),(0,Q.jsx)(Kt,{attemptedSave:c,api:t,apiKey:n,baseUrl:r,modelId:i,models:a,displayName:o,isCustom:E,openAiChat:O,placeholder:D.placeholder,showPassword:s,onApiKeyChange:d,onApiChange:f,onBaseUrlChange:m,onModelIdChange:h,onModelsChange:g,onDisplayNameChange:_,onTogglePassword:v}),(0,Q.jsxs)(le,{className:`px-3 py-2`,children:[(0,Q.jsx)(p,{}),(0,Q.jsx)(de,{className:`text-xs text-pretty`,children:D.help})]}),(0,Q.jsxs)(`div`,{className:`flex items-center justify-end gap-1.5`,children:[(0,Q.jsx)(q,{type:`button`,variant:`ghost`,size:`compact`,onClick:x,children:`Cancel`}),(0,Q.jsxs)(q,{type:`button`,size:`compact`,disabled:l||!u,onClick:T,children:[l?(0,Q.jsx)(X,{"data-icon":`inline-start`}):null,`Save`]})]}),j?(0,Q.jsx)(Ot,{provider:e,onConfigured:C??x,onOAuthLogin:w},`${e.id}-oauth`):null]})}function rn({confirmRemoveProvider:e,isPending:t,onClose:n,onConfirm:r}){return(0,Q.jsx)(Ne,{open:e!==null,onOpenChange:e=>{e||n()},children:(0,Q.jsxs)(Oe,{children:[(0,Q.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,Q.jsxs)(Me,{children:[`Remove `,e?.name??`provider`,`?`]}),(0,Q.jsx)(De,{children:`This clears stored credentials for this provider from your workspace settings. Active sessions will stop using it immediately.`})]}),(0,Q.jsxs)(Ae,{children:[(0,Q.jsx)(je,{disabled:t,children:`Cancel`}),(0,Q.jsxs)(ke,{disabled:t||!e,onClick:()=>{e&&r(e)},children:[t?(0,Q.jsx)(X,{"data-icon":`inline-start`}):null,`Remove provider`]})]})]})})}function an({configured:e,onSelect:t,provider:n}){let r=S(n.id),i=n.id===`custom`||y(n.id),a=Jt(n),o=Yt(n);return(0,Q.jsxs)(`button`,{type:`button`,className:s(`flex w-full items-center gap-3 rounded-lg px-2 py-2 text-left transition-[background-color,transform] duration-150`,`hover:bg-muted/60 focus-visible:ring-2 focus-visible:ring-ring focus-visible:outline-none active:scale-[0.96]`),onClick:t,children:[(0,Q.jsx)(`div`,{className:`flex size-8 shrink-0 items-center justify-center rounded-[4px] border border-border/40 bg-background/60`,children:(0,Q.jsx)(D,{provider:i?`custom`:n.id,api:n.api,className:`text-foreground/70`})}),(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsx)(`div`,{className:`truncate text-sm font-medium`,children:n.name}),(0,Q.jsxs)(`div`,{className:`truncate text-xs text-muted-foreground`,children:[a?`OAuth sign-in`:o?`API key or OAuth`:i?`API family + key + https base URL + models`:r?`API key + base URL + model name`:n.envVarName,e?` · Update`:``]})]})]})}function on({providers:e,editingProvider:t,form:n,operation:r,actions:i,onEdit:a,onCancelEdit:o,onSave:c,onRemove:l,onOAuthLogin:u,onConfigured:d}){let{api:f,apiKey:m,baseUrl:h,modelId:g,models:_,displayName:v,showPassword:b,attemptedSave:x,canSave:C}=n,{isPending:w,canRemove:T}=r,{onApiKeyChange:O,onApiChange:A,onBaseUrlChange:j,onModelIdChange:M,onModelsChange:N,onDisplayNameChange:P,onTogglePassword:F}=i;return(0,Q.jsx)(`div`,{className:`flex flex-col gap-1.5`,children:e.map(e=>{let n=t===e.id,r=y(e.id),i=k[e.id]??k[r?`custom`:`openai-chat-completions`],I=S(e.id),L=Jt(e),R=Yt(e);return(0,Q.jsxs)(`div`,{className:`flex flex-col`,children:[(0,Q.jsx)($,{interactive:!1,icon:(0,Q.jsx)(D,{provider:e.id,api:e.api,className:`text-foreground/80`}),title:e.name,subtitle:L?`OAuth sign-in`:R?`API key or OAuth`:r?`Custom provider · API key + base URL + models`:I?`OpenAI-compatible · API key + base URL + model name`:e.envVarName,trailing:(0,Q.jsxs)(`div`,{className:`flex items-center gap-0.5`,children:[(0,Q.jsxs)(q,{type:`button`,variant:`ghost`,size:`compact`,className:s(Te,`h-7 px-2 text-xs text-muted-foreground transition-[background-color,color,transform] duration-150 hover:text-destructive active:scale-[0.96]`),disabled:w||!T,"aria-label":`Remove ${e.name}`,onClick:()=>l(e),children:[(0,Q.jsx)(E,{"data-icon":`inline-start`}),`Remove`]}),(0,Q.jsxs)(q,{type:`button`,variant:`ghost`,size:`compact`,className:s(Te,`h-7 px-2 text-xs transition-[background-color,transform] duration-150 active:scale-[0.96]`),disabled:w,onClick:()=>{if(n){o();return}a(e.id)},children:[n?null:(0,Q.jsx)(W,{"data-icon":`inline-start`}),n?`Cancel`:`Update`]})]})}),n?(0,Q.jsx)(xt,{tone:`inset`,padding:`md`,className:`flex flex-col gap-2 border-t border-border/30`,children:L?(0,Q.jsx)(Ot,{provider:e,onConfigured:d,onOAuthLogin:u},e.id):(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(Kt,{attemptedSave:x,api:e.api??f,apiKey:m,baseUrl:h,modelId:g,models:_,displayName:v,isCustom:r,openAiChat:I,placeholder:i.placeholder,showPassword:b,onApiKeyChange:O,onApiChange:A,onBaseUrlChange:j,onModelIdChange:M,onModelsChange:N,onDisplayNameChange:r||e.providerFamily!==void 0?P:void 0,onTogglePassword:F}),(0,Q.jsxs)(le,{className:`px-3 py-2`,children:[(0,Q.jsx)(p,{}),(0,Q.jsx)(de,{className:`text-xs text-pretty`,children:i.help})]}),(0,Q.jsx)(`div`,{className:`flex items-center justify-end`,children:(0,Q.jsxs)(q,{type:`button`,size:`compact`,disabled:w||!C,onClick:()=>c(e.id),children:[w?(0,Q.jsx)(X,{"data-icon":`inline-start`}):null,`Save`]})}),R?(0,Q.jsx)(Ot,{provider:e,onConfigured:d,onOAuthLogin:u},`${e.id}-oauth`):null]})}):null]},e.id)})})}function sn({isLoading:e,isPending:t,onOAuthLogin:n,onRemoveProvider:r,onUpdateProvider:i,providers:a}){let{activeProviders:o,addPickerOpen:s,addPickerQuery:c,api:l,apiKey:u,attemptedSave:d,baseUrl:f,canSave:p,closeAddPicker:m,closeEditor:h,confirmRemoveProvider:g,credentialProviders:_,displayName:v,editingProvider:y,editingUnconfiguredProvider:b,filteredActiveProviders:x,filteredPickerAvailable:S,filteredPickerConfigured:C,handleRemove:w,handleSave:T,modelId:E,models:D,openAddPicker:O,openEditor:k,pickerHasResults:A,searchQuery:j,selectProviderFromPicker:M,setAddPickerQuery:N,setApi:P,setApiKey:F,setBaseUrl:I,setConfirmRemoveProvider:L,setDisplayName:R,setModelId:z,setModels:B,setSearchQuery:V,setShowPassword:H,showPassword:U}=Qt({onRemoveProvider:r,onUpdateProvider:i,providers:a}),W={api:l,apiKey:u,baseUrl:f,modelId:E,models:D,displayName:v,showPassword:U,attemptedSave:d,canSave:p},G={isPending:t,canRemove:!!r},ee={onApiKeyChange:F,onApiChange:P,onBaseUrlChange:I,onModelIdChange:z,onModelsChange:B,onDisplayNameChange:R,onTogglePassword:()=>H(e=>!e)};return(0,Q.jsxs)(St,{title:`Providers`,description:(0,Q.jsxs)(Q.Fragment,{children:[`Locally, API keys are stored in`,` `,(0,Q.jsx)(`code`,{className:`rounded bg-muted px-1 py-0.5 font-mono text-caption text-foreground`,children:`.env.local`}),`. When deployed, they are stored encrypted in your account.`]}),children:[s?(0,Q.jsx)(en,{addPickerQuery:c,credentialProvidersLength:_.length,filteredPickerAvailable:S,filteredPickerConfigured:C,pickerHasResults:A,onClose:m,onQueryChange:N,onSelect:M}):b&&Jt(b)?(0,Q.jsx)(tn,{provider:b,onBack:O,onConfigured:h,onOAuthLogin:n},b.id):b?(0,Q.jsx)(nn,{provider:b,api:l,apiKey:u,baseUrl:f,modelId:E,models:D,displayName:v,showPassword:U,attemptedSave:d,isPending:t,canSave:p,onApiKeyChange:F,onApiChange:P,onBaseUrlChange:I,onModelIdChange:z,onModelsChange:B,onDisplayNameChange:R,onTogglePassword:()=>H(e=>!e),onBack:O,onCancel:h,onConfigured:h,onOAuthLogin:n,onSave:()=>{y&&T(y)}}):(0,Q.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsxs)(Se,{className:`flex-1`,children:[(0,Q.jsx)(be,{align:`inline-start`,children:(0,Q.jsx)(ie,{})}),(0,Q.jsx)(ye,{type:`text`,placeholder:`Search credentials…`,value:j,onChange:e=>V(e.target.value),"aria-label":`Search credentials`,disabled:e||o.length===0})]}),(0,Q.jsxs)(q,{type:`button`,variant:`outline`,size:`compact`,disabled:e||_.length===0,onClick:O,children:[(0,Q.jsx)(K,{"data-icon":`inline-start`}),`Add provider`]})]}),e?(0,Q.jsxs)(`div`,{className:`flex items-center justify-center gap-2 py-6 text-xs text-muted-foreground`,children:[(0,Q.jsx)(X,{className:`size-3`}),(0,Q.jsx)(`span`,{children:`Loading…`})]}):o.length===0?(0,Q.jsxs)(`div`,{className:`flex flex-col items-center gap-3 py-8`,children:[(0,Q.jsx)(`p`,{className:`text-center text-xs text-pretty text-muted-foreground`,children:`No providers configured`}),(0,Q.jsxs)(q,{type:`button`,variant:`outline`,size:`compact`,disabled:_.length===0,onClick:O,children:[(0,Q.jsx)(K,{"data-icon":`inline-start`}),`Add provider`]})]}):x.length===0?(0,Q.jsx)(`p`,{className:`py-6 text-center text-xs text-pretty text-muted-foreground`,children:`No matching providers found.`}):(0,Q.jsx)(on,{providers:x,editingProvider:y,form:W,operation:G,actions:ee,onEdit:k,onCancelEdit:h,onSave:e=>void T(e),onRemove:L,onOAuthLogin:n,onConfigured:h})]}),(0,Q.jsx)(rn,{confirmRemoveProvider:g,isPending:t,onClose:()=>L(null),onConfirm:e=>{w(e)}})]})}function cn(e){return{defaultProvider:e.defaultProvider,defaultModel:e.defaultModel,defaultThinkingLevel:e.defaultThinkingLevel,enabledModels:e.enabledModels===void 0?null:gn(e.enabledModels)}}function ln(e){let t=e.enabledModels,n=t==null?null:gn(t).toSorted();return{defaultProvider:e.defaultProvider,defaultModel:e.defaultModel,defaultThinkingLevel:e.defaultThinkingLevel,enabledModels:n}}function un(e){return{packages:e.packages,extensions:gn(e.extensions),skills:gn(e.skills),prompts:gn(e.prompts),themes:gn(e.themes),enableSkillCommands:e.enableSkillCommands}}function dn(e){return{compaction:{enabled:e.compaction.enabled,reserveTokens:e.compaction.reserveTokens,keepRecentTokens:e.compaction.keepRecentTokens},retry:{enabled:e.retry.enabled,maxRetries:e.retry.maxRetries,baseDelayMs:e.retry.baseDelayMs},transport:e.transport,steeringMode:e.steeringMode,followUpMode:e.followUpMode}}function fn(e,t){return JSON.stringify(e)===JSON.stringify(t)}function pn(e){let t=e?[...e.skills,...e.prompts,...e.extensions,...e.packages,...e.themes,...e.agentsFiles]:[];return{active:t.filter(e=>e.activationStatus===`active`).length,staged:t.filter(e=>e.activationStatus===`staged`).length,reloadRequired:t.filter(e=>e.activationStatus===`reload-required`).length,diagnostics:e?.diagnostics??[],total:t.length}}function mn(e){return e.map(e=>typeof e==`string`?e:JSON.stringify(e))}function hn(e){let t=[];for(let n of e){let e=n.trim();if(!e)continue;if(!e.startsWith(`{`)){t.push(e);continue}let r=JSON.parse(e);if(!r||typeof r!=`object`||Array.isArray(r))throw Error(`Package JSON entries must be objects.`);t.push(r)}return t}function gn(e){return e.flatMap(e=>{let t=e.trim();return t?[t]:[]})}function _n({draft:e,setDraft:t,updateDraft:n,settings:r,providers:i,models:a,modelCatalog:o,onDiscoverModels:s,saveSettings:c,setSavingSection:l}){let[u,d]=(0,Z.useState)(``),[f,p]=(0,Z.useState)([]),[m,h]=(0,Z.useState)(null),g=(0,Z.useRef)(null),_=(0,Z.useMemo)(()=>{let e=new Set;for(let t of i)t.isConfigured&&e.add(t.id);return e},[i]),v=o??a,y=(0,Z.useMemo)(()=>{let e=new Map;for(let t of v)_.has(t.provider)&&t.available!==!1&&e.set(t.id,t);for(let t of f)_.has(t.provider)&&t.available!==!1&&e.set(t.id,t);return[...e.values()]},[v,_,f]),b=g.current??(r?ln(r.effective):null),x=!!e&&!!b&&!fn(ln(e),b),S=(0,Z.useCallback)(()=>{g.current=null},[]),C=async(e,n)=>{t(e),l(`models`);try{let r=await c(cn(e)),i={...r.effective,enabledModels:r.project.enabledModels??e.enabledModels??r.effective.enabledModels,defaultProvider:r.project.defaultProvider??e.defaultProvider??r.effective.defaultProvider,defaultModel:r.project.defaultModel??e.defaultModel??r.effective.defaultModel,defaultThinkingLevel:r.project.defaultThinkingLevel??e.defaultThinkingLevel??r.effective.defaultThinkingLevel};return g.current=ln(i),t(i),n?.silent||G.success(`Pi settings saved`),!0}catch(e){return G.error(e instanceof Error?e.message:`Settings save failed`),!1}finally{l(null)}},w=e=>{C(e)},T=(t,n)=>{if(!e)return;let r={...e,enabledModels:It({currentPatterns:e.enabledModels,enabled:n,model:t,models:y})};w(r)};return{modelFilter:u,setModelFilter:d,modelOptions:y,modelDirty:x,addModels:t=>{if(!e||t.length===0)return;let n=e.enabledModels;for(let e of t)n=It({currentPatterns:n,enabled:!0,model:e,models:y});w({...e,enabledModels:n})},removeModel:e=>{T(e,!1)},setDefaultModel:t=>{e&&C({...e,defaultProvider:t.provider,defaultModel:t.modelId})},discoverProvider:async e=>{if(s){h(e);try{let t=await s(e);p(e=>{let n=new Map(e.map(e=>[e.id,e]));for(let e of t)n.set(e.id,e);return[...n.values()]})}finally{h(null)}}},discoveringProviderId:m,commitModelSettings:C,revertModelDraft:()=>{r&&n(e=>({...e,defaultProvider:r.effective.defaultProvider,defaultModel:r.effective.defaultModel,defaultThinkingLevel:r.effective.defaultThinkingLevel,enabledModels:r.effective.enabledModels}))},resetCommittedModelBaseline:S}}var vn=[{value:`auto`,label:`Auto`},{value:`sse`,label:`SSE`},{value:`websocket`,label:`WebSocket`}],yn=[{value:`all`,label:`All`},{value:`one-at-a-time`,label:`One at a time`}];function bn({draft:e,updateDraft:t}){let n=!e;return(0,Q.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,Q.jsx)($,{title:`Compaction`,subtitle:`Summarize old turns when context fills up`,trailing:(0,Q.jsx)(fe,{"aria-label":`Compaction`,checked:e?.compaction.enabled??!1,disabled:n,onCheckedChange:e=>t(t=>({...t,compaction:{...t.compaction,enabled:e}}))})}),(0,Q.jsx)($,{title:`Auto-retry`,subtitle:`Retry failed provider requests`,trailing:(0,Q.jsx)(fe,{"aria-label":`Auto-retry`,checked:e?.retry.enabled??!1,disabled:n,onCheckedChange:e=>t(t=>({...t,retry:{...t.retry,enabled:e}}))})}),(0,Q.jsx)($,{title:`Transport`,trailing:(0,Q.jsx)(x,{"aria-label":`Transport`,className:`w-[160px]`,disabled:n,onValueChange:e=>t(t=>({...t,transport:e})),options:[...vn],value:e?.transport??`auto`})}),(0,Q.jsx)($,{title:`Steering`,subtitle:`How queued steers are delivered mid-turn`,trailing:(0,Q.jsx)(x,{"aria-label":`Steering`,className:`w-[160px]`,disabled:n,onValueChange:e=>t(t=>({...t,steeringMode:e})),options:[...yn],value:e?.steeringMode??`all`})}),(0,Q.jsx)($,{title:`Follow-up`,subtitle:`How queued follow-ups run after the turn`,trailing:(0,Q.jsx)(x,{"aria-label":`Follow-up`,className:`w-[160px]`,disabled:n,onValueChange:e=>t(t=>({...t,followUpMode:e})),options:[...yn],value:e?.followUpMode??`all`})})]})}var xn=new Set([`auto`,`global`,`local`,`project`,`workspace`]);function Sn(e){let t=e.source?.trim();if(t&&!xn.has(t))return t;let n=(e.workspacePath??e.path??``).trim();return n?Cn(n):e.name.trim()}function Cn(e){let t=e.replace(/\\/g,`/`);if(/^\/Users\//.test(t)||/^\/home\//.test(t)||/^[A-Za-z]:\//.test(t))return``;if(!t.startsWith(`/`)&&!/^[A-Za-z]:\//.test(t))return t.startsWith(`agent-workspace/`)?wn(`../${t}`):t.startsWith(`../agent-workspace/.pi/`)?wn(t.replace(`../agent-workspace/.pi/`,`../agent-workspace/pi/`)):wn(t);let n=t.match(/\/(agent-workspace\/.+)$/);if(n?.[1])return wn(`../${n[1].replace(/^agent-workspace\/\.pi\//,`agent-workspace/pi/`)}`);let r=t.match(/\/\.pi\/(extensions\/.+|skills\/.+|prompts\/.+|themes\/.+)$/);return r?.[1]?wn(r[1]):``}function wn(e){return e.replace(/\/SKILL\.md$/i,``).replace(/\/index\.(ts|tsx|js|jsx|mjs|cjs)$/i,``)}function Tn(e,t){let n=Cn(t);return e.some(e=>Cn(e)===n)}function En(e,t){let n=t.trim();if(!n)return e;let r=Cn(n);return!r||Tn(e,r)?e:[...e,r]}function Dn({addLabel:e,catalog:t,onChange:n,placeholder:r,values:i}){let[a,o]=(0,Z.useState)(``),s=new Set,c=[];for(let e of t){let t=Sn(e);t.length===0||s.has(t)||(s.add(t),c.push({value:t,label:e.name||t}))}let l=new Map(c.map(e=>[e.value,e.label])),u=e=>l.get(e)??l.get(Cn(e)),d=c.filter(e=>!Tn(i,e.value)),f=()=>{let e=a.trim();e&&(n(En(i,e)),o(``))};return(0,Q.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[i.length===0?(0,Q.jsx)(`p`,{className:`px-1 py-2 text-xs text-pretty text-muted-foreground`,children:`Nothing selected yet.`}):i.map(e=>{let t=u(e);return(0,Q.jsx)($,{interactive:!1,title:t??e,subtitle:t&&t!==e?e:void 0,trailing:(0,Q.jsx)(q,{type:`button`,variant:`ghost`,size:`icon-compact`,"aria-label":`Remove ${e}`,onClick:()=>n(i.filter(t=>t!==e)),children:(0,Q.jsx)(E,{})})},e)}),d.length>0?(0,Q.jsx)(x,{"aria-label":e,value:null,placeholder:e,options:d,onValueChange:e=>{e&&n(En(i,e))}}):(0,Q.jsxs)(Se,{children:[(0,Q.jsx)(ye,{"aria-label":e,value:a,onChange:e=>o(e.target.value),onKeyDown:e=>{e.key===`Enter`&&(e.preventDefault(),f())},placeholder:r}),(0,Q.jsx)(be,{align:`inline-end`,children:(0,Q.jsxs)(xe,{onClick:f,disabled:!a.trim(),children:[(0,Q.jsx)(K,{"data-icon":`inline-start`}),`Add`]})})]})]})}function On({draft:e,onEnableSkillCommandsChange:t,onExtensionsChange:n,onPackageRowsChange:r,onPromptsChange:i,onRevert:a,onSave:o,onSkillsChange:s,onThemesChange:c,packageError:l,packageRows:u,resourceDirty:d,resources:f,resourceSummary:p,saving:m,scope:h=`harness`,settingsLoading:g,updateDraft:_}){let v=!e||g||!!l,y=p.total===0?`Empty`:p.reloadRequired>0?`${p.total} · ${p.reloadRequired} reload`:`${p.total}`;return(0,Q.jsx)(St,{title:h===`skills`?`Skills`:`Pi Harness`,description:h===`skills`?`Pick detected workspace skills and slash-command discovery.`:`Runtime (compaction, retry, transport) plus packages, extensions, prompts, and themes.`,actions:(0,Q.jsx)(Ct,{dirty:d,disabled:v,onRevert:a,onSave:o,saving:m}),children:h===`skills`?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)($,{title:`Skill slash commands`,trailing:(0,Q.jsx)(fe,{"aria-label":`Skill slash commands`,checked:e?.enableSkillCommands??!0,disabled:!e,onCheckedChange:t})}),(0,Q.jsx)(kn,{label:`Skills`,count:e?.skills.length??0,children:(0,Q.jsx)(Dn,{addLabel:`Add skill`,catalog:f?.skills??[],placeholder:`../agent-workspace/pi/skills`,values:e?.skills??[],onChange:s})})]}):(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(bn,{draft:e,updateDraft:_}),(0,Q.jsx)($,{interactive:!1,title:`Catalog`,subtitle:(0,Q.jsx)(`span`,{className:`tabular-nums`,children:y})}),(0,Q.jsxs)(kn,{label:`Packages`,count:u.length,children:[(0,Q.jsx)(Dn,{addLabel:`Add package`,catalog:f?.packages??[],placeholder:`npm:pi-skills or {"source":"npm:pkg"}`,values:u,onChange:r}),l?(0,Q.jsx)(`p`,{className:`px-1 text-xs text-destructive`,children:l}):null]}),(0,Q.jsx)(kn,{label:`Extensions`,count:e?.extensions.length??0,children:(0,Q.jsx)(Dn,{addLabel:`Add extension`,catalog:f?.extensions??[],placeholder:`../agent-workspace/pi/extensions`,values:e?.extensions??[],onChange:n})}),(0,Q.jsx)(kn,{label:`Prompts`,count:e?.prompts.length??0,children:(0,Q.jsx)(Dn,{addLabel:`Add prompt`,catalog:f?.prompts??[],placeholder:`../agent-workspace/pi/prompts`,values:e?.prompts??[],onChange:i})}),(0,Q.jsx)(kn,{label:`Themes`,count:e?.themes.length??0,children:(0,Q.jsx)(Dn,{addLabel:`Add theme`,catalog:f?.themes??[],placeholder:`../agent-workspace/pi/themes`,values:e?.themes??[],onChange:c})})]})})}function kn({children:e,count:t,label:n}){return(0,Q.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,Q.jsxs)(`div`,{className:`flex items-baseline justify-between gap-2 px-1`,children:[(0,Q.jsx)(`p`,{className:`text-xs font-medium text-muted-foreground`,children:n}),(0,Q.jsx)(`p`,{className:`text-xs text-muted-foreground tabular-nums`,children:t===1?`1 item`:`${t} items`})]}),e]})}function An({isLoading:e,isPending:t,onUpdateProvider:n,providers:r}){let[i,a]=(0,Z.useState)(!1),[o,c]=(0,Z.useState)(``),[l,u]=(0,Z.useState)(``),[d,f]=(0,Z.useState)(!1),[m,h]=(0,Z.useState)(!1),g=(0,Z.useMemo)(()=>r.find(e=>e.id===`daytona`),[r]),_=(0,Z.useMemo)(()=>r.find(e=>e.id===`daytona-target`),[r]),v=!!(g?.isConfigured&&_?.isConfigured),y=()=>{c(``),u(``),f(!1),h(!1)},b=()=>{a(!1),y()},x=async()=>{if(n&&(h(!0),!(!o.trim()&&!l.trim())))try{o.trim()&&await n({providerId:`daytona`,apiKey:o.trim()}),l.trim()&&await n({providerId:`daytona-target`,apiKey:l.trim()}),G.success(`Sandbox provider updated`),b()}catch(e){G.error(e instanceof Error?e.message:`Failed to update provider`)}},S=o.trim().length>0||l.trim().length>0;return(0,Q.jsx)(St,{title:`Sandbox`,description:`Configure isolated execution environments.`,children:e?(0,Q.jsxs)(`div`,{className:`flex items-center justify-center gap-2 py-6 text-xs text-muted-foreground`,children:[(0,Q.jsx)(X,{}),(0,Q.jsx)(`span`,{children:`Loading…`})]}):(0,Q.jsxs)(`div`,{className:`flex flex-col`,children:[(0,Q.jsx)($,{interactive:!1,icon:(0,Q.jsx)(R,{className:`size-4 text-foreground/80`}),title:`Daytona`,subtitle:`DAYTONA_API_KEY · DAYTONA_TARGET`,trailing:(0,Q.jsx)(q,{type:`button`,variant:`ghost`,size:`compact`,className:s(Te,`h-7 px-2 text-xs transition-[background-color,transform] duration-150 active:scale-[0.96]`),onClick:()=>{if(i){b();return}a(!0),y()},children:i?`Cancel`:v?`Update`:`Configure`})}),i?(0,Q.jsxs)(xt,{tone:`inset`,padding:`md`,className:`flex flex-col gap-2 border-t border-border/30`,children:[(0,Q.jsxs)(ce,{className:`gap-2`,children:[(0,Q.jsx)(ht,{attemptedSave:m,label:`Daytona API key`,placeholder:`Enter Daytona API Key…`,value:o,showPassword:d,required:!1,onChange:c,onToggleVisibility:()=>f(e=>!e)}),(0,Q.jsx)(gt,{attemptedSave:m,icon:I,label:`Region / target`,placeholder:`e.g. us-east`,value:l,required:!1,onChange:u})]}),(0,Q.jsxs)(le,{className:`px-3 py-2`,children:[(0,Q.jsx)(p,{}),(0,Q.jsx)(de,{className:`text-xs text-pretty`,children:`Settings are stored securely in your local environment overrides. Provide at least one value to save.`})]}),(0,Q.jsx)(`div`,{className:`flex items-center justify-end`,children:(0,Q.jsxs)(q,{type:`button`,size:`compact`,disabled:t||!S,onClick:()=>void x(),children:[t?(0,Q.jsx)(X,{"data-icon":`inline-start`}):null,`Save`]})})]}):null]})})}var jn={appearance:{id:`appearance`,order:10,title:`Appearance`,ariaLabel:`Appearance settings`,icon:Ye,group:`workspace`},chat:{id:`chat`,order:20,title:`Chat`,ariaLabel:`Chat settings`,icon:qe,group:`workspace`},mcp:{id:`mcp`,order:25,title:`MCP`,ariaLabel:`MCP connection settings`,icon:ee,group:`workspace`},sandbox:{id:`sandbox`,order:30,title:`Sandbox`,ariaLabel:`Sandbox settings`,icon:R,group:`advanced`},providers:{id:`providers`,order:40,title:`Providers`,ariaLabel:`Provider settings`,icon:Ve,group:`models`},"llm-models":{id:`llm-models`,order:50,title:`LLM Models`,ariaLabel:`LLM model settings`,icon:O,group:`models`},skills:{id:`skills`,order:60,title:`Skills`,ariaLabel:`Skill settings`,icon:L,group:`advanced`},"pi-harness":{id:`pi-harness`,order:70,title:`Pi Harness`,ariaLabel:`Pi harness settings`,icon:T,group:`advanced`},keybindings:{id:`keybindings`,order:80,title:`Keybindings`,ariaLabel:`Keybinding settings`,icon:z,group:`advanced`},sessions:{id:`sessions`,order:90,title:`Sessions`,ariaLabel:`Session settings`,icon:rt,group:`workspace`}},Mn=[{id:`workspace`,label:`Workspace`},{id:`models`,label:`Models`},{id:`advanced`,label:`Advanced`}],Nn=Object.values(jn).sort((e,t)=>e.order-t.order);function Pn(e){return Nn.some(t=>t.id===e)}function Fn({draft:e,settings:t,updateDraft:n}){let[r,i]=(0,Z.useState)(null),[a,o]=(0,Z.useState)(),s=(0,Z.useMemo)(()=>mn(t?.effective.packages??[]),[t?.effective.packages]),c=r??s;return{packageRows:c,packageError:a,resourceDirty:!!e&&!!t&&(!fn(un(e),un(t.effective))||!fn(dn(e),dn(t.effective))||!fn(c.filter(e=>e.trim()),mn(t.effective.packages))),handlePackageRowsChange:e=>{i(e);try{let t=hn(e);o(void 0),n(e=>({...e,packages:t}))}catch(e){o(e instanceof Error?e.message:String(e))}},revertResourceDraft:()=>{t&&(n(e=>({...e,packages:t.effective.packages,extensions:t.effective.extensions,skills:t.effective.skills,prompts:t.effective.prompts,themes:t.effective.themes,enableSkillCommands:t.effective.enableSkillCommands,compaction:t.effective.compaction,retry:t.effective.retry,transport:t.effective.transport,steeringMode:t.effective.steeringMode,followUpMode:t.effective.followUpMode})),i(null),o(void 0))}}}function In({className:e,...t}){return(0,Q.jsx)(`nav`,{"aria-label":`breadcrumb`,"data-slot":`breadcrumb`,className:s(e),...t})}function Ln({className:e,...t}){return(0,Q.jsx)(`ol`,{"data-slot":`breadcrumb-list`,className:s(`flex flex-wrap items-center gap-1.5 text-sm wrap-break-word text-muted-foreground`,e),...t})}function Rn({className:e,...t}){return(0,Q.jsx)(`li`,{"data-slot":`breadcrumb-item`,className:s(`inline-flex items-center gap-1`,e),...t})}function zn({className:e,...t}){return(0,Q.jsx)(`span`,{"data-slot":`breadcrumb-page`,"aria-current":`page`,className:s(`font-normal text-foreground`,e),...t})}function Bn({children:e,className:t,...n}){return(0,Q.jsx)(`li`,{"data-slot":`breadcrumb-separator`,role:`presentation`,"aria-hidden":`true`,className:s(`[&>svg]:size-3.5`,t),...n,children:e??(0,Q.jsx)(N,{})})}var Vn=Z.createContext(void 0);function Hn(){let e=Z.useContext(Vn);if(e===void 0)throw Error(d(53));return e}function Un(e,t,n){if(!e)return 0;let r=getComputedStyle(e),i=`${t}${n===`x`?`Inline`:`Block`}`,a=parseFloat(r[`${i}Start`]);return n===`x`&&t===`margin`?a*2:a+parseFloat(r[`${i}End`])}var Wn=`data-has-overflow-x`,Gn=`data-has-overflow-y`,Kn=`data-overflow-x-start`,qn=`data-overflow-x-end`,Jn=`data-overflow-y-start`,Yn=`data-overflow-y-end`,Xn=e=>t=>t?{[e]:``}:null,Zn={hasOverflowX:Xn(Wn),hasOverflowY:Xn(Gn),overflowXStart:Xn(Kn),overflowXEnd:Xn(qn),overflowYStart:Xn(Jn),overflowYEnd:Xn(Yn),cornerHidden:()=>null},Qn=`--scroll-area-corner-height`,$n=`--scroll-area-corner-width`,er=`data-orientation`,tr={x:0,y:0},nr={width:0,height:0},rr={xStart:!1,xEnd:!1,yStart:!1,yEnd:!1},ir={x:!0,y:!0,corner:!0},ar=Z.forwardRef(function(e,t){let{render:n,className:i,overflowEdgeThreshold:a,style:s,...c}=e,{xStart:d,xEnd:f,yStart:p,yEnd:m}=or(a),h=C(),g=o(),v=o(),{nonce:y,disableStyleElements:x}=b(),[S,w]=Z.useState(!1),[T,E]=Z.useState(!1),[D,O]=Z.useState(!1),[k,A]=Z.useState(!1),[j,M]=Z.useState(!1),[N,P]=Z.useState(nr),[F,I]=Z.useState(nr),[L,R]=Z.useState(rr),[z,B]=Z.useState(ir),V=Z.useRef(null),H=Z.useRef(null),U=Z.useRef(null),W=Z.useRef(null),G=Z.useRef(null),ee=Z.useRef(null),K=Z.useRef(null),te=Z.useRef(null),ne=Z.useRef(0),re=Z.useRef(0),ie=Z.useRef(0),q=Z.useRef(0),ae=Z.useRef(`vertical`),oe=Z.useRef(tr),se=Z.useRef(null);function J(e){let t=e?O:E,n=e?g:v;t(!0),n.start(500,()=>{t(!1)})}let ce=l(e=>{let t=e.x-oe.current.x,n=e.y-oe.current.y;oe.current=e,n!==0&&J(!0),t!==0&&J(!1)}),Y=l(()=>{let e=H.current;e&&se.current===null&&(se.current=e.style.scrollSnapType,e.style.scrollSnapType=`none`)}),le=l(e=>{if(e.button!==0||te.current!==null&&(ae.current===`vertical`?G.current:ee.current)?.hasPointerCapture(te.current))return;te.current=e.pointerId,ne.current=e.clientY,re.current=e.clientX,ae.current=e.currentTarget.getAttribute(er);let t=H.current;t&&(ie.current=t.scrollTop,q.current=t.scrollLeft,Y()),(ae.current===`vertical`?G.current:ee.current)?.setPointerCapture(e.pointerId)}),ue=l(e=>{if(e.pointerId!==te.current)return;te.current=null,(ae.current===`vertical`?O:E)(!1),se.current!==null&&(H.current&&(H.current.style.scrollSnapType=se.current),se.current=null);let t=ae.current===`vertical`?G.current:ee.current;t?.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId)}),de=l(e=>{if(e.pointerId!==te.current)return;if(e.buttons%2==0){ue(e);return}let t=H.current;if(!t)return;let n=ae.current===`vertical`,r=n?G.current:ee.current,i=n?U.current:W.current;if(!r||!i)return;let a=n?`y`:`x`,o=Un(i,`padding`,a),s=Un(r,`margin`,a),c=n?r.offsetHeight:r.offsetWidth,l=(n?i.offsetHeight:i.offsetWidth)-c-o-s,u=n?e.clientY-ne.current:e.clientX-re.current,d=l<=0?0:u/l,f=n?t.scrollHeight:t.scrollWidth,p=n?t.clientHeight:t.clientWidth,m=(n?ie.current:q.current)+d*(f-p);n?t.scrollTop=m:t.scrollLeft=m,e.preventDefault(),J(n)});function fe(e){A(e.pointerType===`touch`)}function pe(e){if(fe(e),e.pointerType!==`touch`){let t=r(V.current,e.target);w(t)}}let me=Z.useMemo(()=>({scrolling:T||D,hasOverflowX:!z.x,hasOverflowY:!z.y,overflowXStart:L.xStart,overflowXEnd:L.xEnd,overflowYStart:L.yStart,overflowYEnd:L.yEnd,cornerHidden:z.corner}),[T,D,z.x,z.y,z.corner,L]),he={role:`presentation`,onPointerEnter:pe,onPointerMove:pe,onPointerDown:fe,onPointerLeave(){w(!1)},style:{position:`relative`,[Qn]:`${N.height}px`,[$n]:`${N.width}px`}},ge=u(`div`,e,{state:me,ref:[t,V],props:[he,c],stateAttributesMapping:Zn}),_e=Z.useMemo(()=>({handlePointerDown:le,handlePointerMove:de,handlePointerUp:ue,handleScroll:ce,disableViewportSnap:Y,cornerSize:N,setCornerSize:P,thumbSize:F,setThumbSize:I,hasMeasuredScrollbar:j,setHasMeasuredScrollbar:M,touchModality:k,cornerRef:K,scrollingX:T,scrollingY:D,hovering:S,setHovering:w,viewportRef:H,scrollbarYRef:U,scrollbarXRef:W,thumbYRef:G,thumbXRef:ee,rootId:h,hiddenState:z,setHiddenState:B,overflowEdges:L,setOverflowEdges:R,viewportState:me,overflowEdgeThreshold:{xStart:d,xEnd:f,yStart:p,yEnd:m}}),[le,de,ue,ce,Y,N,F,j,k,T,D,S,h,z,L,me,d,f,p,m]);return(0,Q.jsxs)(Vn.Provider,{value:_e,children:[!x&&_.getElement(y),ge]})});function or(e){let t=typeof e==`number`?{xStart:e,xEnd:e,yStart:e,yEnd:e}:e;return{xStart:Math.max(0,t?.xStart||0),xEnd:Math.max(0,t?.xEnd||0),yStart:Math.max(0,t?.yStart||0),yEnd:Math.max(0,t?.yEnd||0)}}var sr=Z.createContext(void 0);function cr(){let e=Z.useContext(sr);if(e===void 0)throw Error(d(55));return e}var lr=`--scroll-area-overflow-x-start`,ur=`--scroll-area-overflow-x-end`,dr=`--scroll-area-overflow-y-start`,fr=`--scroll-area-overflow-y-end`,pr=`--scroll-area-thumb-height`,mr=`--scroll-area-thumb-width`,hr=[lr,ur,dr,fr],gr=!1;function _r(){gr||i||(typeof CSS<`u`&&`registerProperty`in CSS&&hr.forEach(e=>{try{CSS.registerProperty({name:e,syntax:`<length>`,inherits:!1,initialValue:`0px`})}catch{}}),gr=!0)}var vr=Z.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,{viewportRef:s,scrollbarYRef:d,scrollbarXRef:f,thumbYRef:p,thumbXRef:m,cornerRef:g,cornerSize:y,setCornerSize:b,setThumbSize:x,rootId:S,setHiddenState:C,hiddenState:w,setHasMeasuredScrollbar:T,handleScroll:E,touchModality:D,setHovering:O,setOverflowEdges:k,overflowEdgeThreshold:A,viewportState:j}=Hn(),M=h(),N=Z.useRef(!0),P=Z.useRef([NaN,NaN,NaN,NaN]),F=o(),I=o(),L=l(()=>{let e=s.current,t=d.current,n=f.current,r=p.current,i=m.current,a=g.current;if(!e)return;let o=e.scrollHeight,c=e.scrollWidth,l=e.clientHeight,u=e.clientWidth,h=e.scrollTop,_=e.scrollLeft,S=P.current,w=Number.isNaN(S[0]);if(S[0]=l,S[1]=o,S[2]=u,S[3]=c,w&&T(!0),o===0||c===0)return;let E=yr(e),D=E.y,O=E.x,j=u/c,N=l/o,F=Math.max(0,c-u),I=Math.max(0,o-l),L=0,R=0;O||(L=v(M===`rtl`?-_:_,F),R=F-L);let z=D?0:v(h,I),B=D?0:I-z,V=O?0:u,H=D?0:l,U=0,W=0;!O&&!D&&(U=t?.offsetWidth||0,W=n?.offsetHeight||0);let G=y.width===0&&y.height===0,ee=G?U:0,K=G?W:0,te=Un(n,`padding`,`x`),ne=Un(t,`padding`,`y`),re=Un(i,`margin`,`x`),ie=Un(r,`margin`,`y`),q=V-te-re,ae=H-ne-ie,oe=n?Math.min(n.offsetWidth-ee,q):q,se=t?Math.min(t.offsetHeight-K,ae):ae,J=Math.max(16,oe*j),ce=Math.max(16,se*N);if(x(e=>br(e,{width:J,height:ce})),t&&r){let e=xr(r,pr,h,I,o,ce,t.offsetHeight-ce-ne-ie);r.style.transform=`translate3d(0,${e}px,0)`}if(n&&i){let e=n.offsetWidth-J-te-re,t=xr(i,mr,M===`rtl`?-_:_,F,c,J,e);i.style.transform=`translate3d(${M===`rtl`?-t:t}px,0,0)`}let Y=[L,R,z,B];hr.forEach((t,n)=>{e.style.setProperty(t,`${Y[n]}px`)}),a&&b(e=>br(e,{width:U,height:W})),C(e=>br(e,E));let le={xStart:!O&&L>A.xStart,xEnd:!O&&R>A.xEnd,yStart:!D&&z>A.yStart,yEnd:!D&&B>A.yEnd};k(e=>br(e,le))});c(()=>{_r()},[]),c(()=>{queueMicrotask(L)},[L,w,M,A.xStart,A.xEnd,A.yStart,A.yEnd]),c(()=>{s.current?.matches(`:hover`)&&O(!0)},[s,O]),c(()=>{let e=s.current;if(typeof ResizeObserver>`u`||!e)return;let t=!1,n=new ResizeObserver(()=>{if(!t){t=!0;let n=P.current;if(n[0]===e.clientHeight&&n[1]===e.scrollHeight&&n[2]===e.clientWidth&&n[3]===e.scrollWidth)return}L()});return n.observe(e),I.start(0,()=>{let t=e.getAnimations({subtree:!0});t.length!==0&&Promise.allSettled(t.map(e=>e.finished)).then(L).catch(()=>{})}),()=>{n.disconnect(),I.clear()}},[L,s,I]);function R(){N.current=!1}let z={role:`presentation`,...S&&{"data-id":`${S}-viewport`},tabIndex:w.x&&w.y?-1:0,className:_.className,style:{overflow:`scroll`},onScroll(){s.current&&(L(),(D||!N.current)&&E({x:s.current.scrollLeft,y:s.current.scrollTop}),F.start(100,()=>{N.current=!0}))},onWheel:R,onPointerMove:R,onPointerEnter:R,onKeyDown:R},B=u(`div`,e,{ref:[t,s],state:j,props:[z,a],stateAttributesMapping:Zn}),V=Z.useMemo(()=>({computeThumbPosition:L}),[L]);return(0,Q.jsx)(sr.Provider,{value:V,children:B})});function yr(e){let t=e.clientHeight>=e.scrollHeight,n=e.clientWidth>=e.scrollWidth;return{y:t,x:n,corner:t||n}}function br(e,t){for(let n in t)if(e[n]!==t[n])return t;return e}function xr(e,t,n,r,i,a,o){let s=m(n,0,r),c=n-s,l=Math.max(16,a*i/(i+Math.abs(c)));return e.style.setProperty(t,c?`${l}px`:``),(r?s/r*o:0)+(c>0?a-l:0)}var Sr=Z.createContext(void 0);function Cr(){let e=Z.useContext(Sr);if(e===void 0)throw Error(d(54));return e}var wr=Z.forwardRef(function(e,t){let{render:n,className:i,orientation:o=`vertical`,keepMounted:s=!1,style:c,...l}=e,{hovering:d,scrollingX:p,scrollingY:m,hiddenState:g,scrollbarYRef:_,scrollbarXRef:v,viewportRef:y,thumbYRef:b,thumbXRef:x,handlePointerDown:S,handlePointerUp:C,handleScroll:w,disableViewportSnap:T,rootId:E,thumbSize:D,hasMeasuredScrollbar:O,viewportState:k}=Hn(),A=o===`vertical`,j={...k,hovering:d,scrolling:A?m:p,orientation:o},M=h(),N=!O&&!s,P=A?g.y:g.x,F=s||!P;Z.useEffect(()=>{if(!F)return;let e=y.current,t=A?_.current:v.current;if(!t)return;function n(t){if(!e||t.ctrlKey)return;let n=!A,r=n?`scrollLeft`:`scrollTop`,i=n?t.deltaX:t.deltaY;if(i===0)return;let a=n?e.scrollWidth-e.clientWidth:e.scrollHeight-e.clientHeight,o=n&&M===`rtl`?-a:0,s=n&&M===`rtl`?0:a,c=e[r];c<=o&&i<0||c>=s&&i>0||(t.preventDefault(),e[r]=Math.min(s,Math.max(o,c+i)),w({x:e.scrollLeft,y:e.scrollTop}))}return f(t,`wheel`,n,{passive:!1})},[M,w,A,v,_,F,y]);let I={...E&&{"data-id":`${E}-scrollbar`},"aria-hidden":!0,onPointerDown(e){if(e.button!==0)return;let t=a(e.nativeEvent),n=A?b.current:x.current;if(n&&r(n,t))return;let i=y.current;if(!i)return;let o=A?_.current:v.current;if(!n||!o)return;let s=A?`y`:`x`,c=Un(n,`margin`,s),l=Un(o,`padding`,s),u=A?n.offsetHeight:n.offsetWidth,d=o.getBoundingClientRect(),f=A?e.clientY-d.top-u/2-l+c/2:e.clientX-d.left-u/2-l+c/2,p=A?i.scrollHeight:i.scrollWidth,m=A?i.clientHeight:i.clientWidth,h=(A?o.offsetHeight:o.offsetWidth)-u-l-c;if(h<=0)return;let g=f/h,C=p-m;T(),A?i.scrollTop=g*C:i.scrollLeft=M===`rtl`?-(1-g)*C:g*C,w({x:i.scrollLeft,y:i.scrollTop}),S(e)},onMouseDown(e){e.preventDefault()},onPointerUp:C,onPointerCancel:C,style:{position:`absolute`,touchAction:`none`,WebkitUserSelect:`none`,userSelect:`none`,visibility:N?`hidden`:void 0,...A?{top:0,bottom:`var(${Qn})`,insetInlineEnd:0,[pr]:`${D.height}px`}:{insetInlineStart:0,insetInlineEnd:`var(${$n})`,bottom:0,[mr]:`${D.width}px`}}},L=u(`div`,e,{ref:[t,A?_:v],state:j,props:[I,l],stateAttributesMapping:Zn});return F?(0,Q.jsx)(Sr.Provider,{value:o,children:L}):null}),Tr=Z.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,{computeThumbPosition:o}=cr(),{hasMeasuredScrollbar:s,viewportState:l}=Hn(),d=Z.useRef(null),f=Z.useRef(s);return c(()=>{if(typeof ResizeObserver>`u`)return;let e=!1,t=new ResizeObserver(()=>{!e&&(e=!0,!f.current)||o()});return d.current&&t.observe(d.current),()=>{t.disconnect()}},[o]),u(`div`,e,{ref:[t,d],state:l,stateAttributesMapping:Zn,props:[{role:`presentation`,style:{minWidth:`fit-content`}},a]})}),Er=Z.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,{thumbYRef:o,thumbXRef:s,handlePointerDown:c,handlePointerMove:l,handlePointerUp:d,scrollingX:f,scrollingY:p,hasMeasuredScrollbar:m}=Hn(),h=Cr(),g=h===`vertical`;return u(`div`,e,{ref:[t,g?o:s],state:{scrolling:g?p:f,orientation:h},props:[{onPointerDown:c,onPointerMove:l,onPointerUp:d,onPointerCancel:d,style:{visibility:m?void 0:`hidden`,...g?{height:`var(--scroll-area-thumb-height)`}:{width:`var(--scroll-area-thumb-width)`}}},a]})}),Dr=Z.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,{cornerRef:o,cornerSize:s,hiddenState:c}=Hn(),l=u(`div`,e,{ref:[t,o],props:[{"aria-hidden":!0,style:{position:`absolute`,bottom:0,insetInlineEnd:0,width:s.width,height:s.height}},a]});return c.corner?null:l});function Or(){let[e,t]=(0,Z.useState)(!1);return(0,Z.useEffect)(()=>{if(typeof window>`u`)return;let e=new AbortController,{signal:n}=e,r=()=>{let e=`ontouchstart`in window||navigator.maxTouchPoints>0,n=window.matchMedia(`(pointer: coarse)`).matches;t(e&&n)};return window.matchMedia(`(pointer: coarse)`).addEventListener(`change`,r,{signal:n}),window.addEventListener(`pointerdown`,r,{signal:n}),r(),()=>e.abort()},[]),e}var kr=(0,Z.createContext)(!1),Ar=(0,Z.forwardRef)(({className:e,children:t,viewportClassName:n,orientation:r=`vertical`,...i},a)=>{let o=Or();return(0,Q.jsx)(kr.Provider,{value:o,children:o?(0,Q.jsx)(`div`,{ref:a,role:`group`,"data-slot":`scroll-area`,"aria-roledescription":`scroll area`,className:s(`relative overflow-hidden`,e),...i,children:(0,Q.jsx)(`div`,{"data-slot":`scroll-area-viewport`,className:s(`size-full overscroll-contain rounded-[inherit]`,r===`vertical`&&`overflow-y-auto`,r===`horizontal`&&`overflow-x-auto`,r===`both`&&`overflow-auto`,n),tabIndex:0,children:t})}):(0,Q.jsxs)(ar,{ref:a,"data-slot":`scroll-area`,className:s(`relative overflow-hidden`,e),...i,children:[(0,Q.jsx)(vr,{"data-slot":`scroll-area-viewport`,className:s(`size-full rounded-[inherit]`,n),children:(0,Q.jsx)(Tr,{className:s(r===`vertical`&&`w-full min-w-full`),children:t})}),r!==`horizontal`&&(0,Q.jsx)(jr,{orientation:`vertical`}),r!==`vertical`&&(0,Q.jsx)(jr,{orientation:`horizontal`}),r===`both`&&(0,Q.jsx)(Dr,{})]})})});Ar.displayName=`ScrollArea`;var jr=(0,Z.forwardRef)(({className:e,orientation:t=`vertical`,...n},r)=>(0,Z.useContext)(kr)?null:(0,Q.jsx)(wr,{ref:r,orientation:t,"data-slot":`scroll-area-scrollbar`,className:s(`group/scrollbar absolute z-20 flex touch-none select-none`,`opacity-0 transition-opacity duration-120 ease-out delay-160`,`data-[hovering]:duration-160 data-[scrolling]:duration-160`,`data-[hovering]:opacity-100 data-[scrolling]:opacity-100`,`data-[hovering]:delay-0 data-[scrolling]:delay-0`,t===`vertical`&&`top-0 right-0 h-full w-2.5`,t===`horizontal`&&`bottom-0 left-0 h-2.5 w-full flex-col`,e),...n,children:(0,Q.jsx)(Er,{"data-slot":`scroll-area-thumb`,className:s(`relative rounded-lg bg-[rgb(var(--overlay)/0.08)] transition-[background-color,width,height] duration-160 ease-in-out`,`group-hover/scrollbar:bg-[rgb(var(--overlay)/0.12)] active:!bg-[rgb(var(--overlay)/0.16)]`,t===`vertical`&&`mx-auto my-1 w-1 -translate-x-0.5 h-[var(--scroll-area-thumb-height)] group-hover/scrollbar:w-1.5`,t===`horizontal`&&`my-auto mx-1 h-1 -translate-y-0.5 w-[var(--scroll-area-thumb-width)] group-hover/scrollbar:h-1.5`)})}));jr.displayName=`ScrollBar`;function Mr(){let{isLoadingMcp:e,isLoadingProviders:t,isUpdatingMcp:n,isUpdatingProvider:r,mcpConnections:i=[],modelCatalog:a,onDiscoverModels:o,onMcpOAuth:s,onOAuthLogin:c,onRemoveMcp:l,onRemoveProvider:u,onThemePreferenceChange:d,onUpdateMcp:f,onUpdateProvider:p,providers:m=[],saveSettings:h,settings:g,settingsLoading:_,themePreference:v}=ne(),{models:y,resources:b}=te(),[x,S]=(0,Z.useState)(null),[C,w]=(0,Z.useState)(null),T=pn(b),E=e=>{S(t=>t&&e(t))},{packageRows:D,packageError:O,resourceDirty:k,handlePackageRowsChange:A,revertResourceDraft:j}=Fn({draft:x,settings:g,updateDraft:E}),{modelFilter:M,setModelFilter:N,modelOptions:P,modelDirty:F,addModels:I,removeModel:L,setDefaultModel:R,discoverProvider:z,discoveringProviderId:B,commitModelSettings:V,revertModelDraft:H,resetCommittedModelBaseline:U}=_n({draft:x,setDraft:S,updateDraft:E,settings:g,providers:m,models:y,modelCatalog:a,onDiscoverModels:o,saveSettings:h,setSavingSection:w}),W=F||k;return(0,Z.useEffect)(()=>{if(!g)return;let e=g.effective;x&&W||x&&fn(x,e)||S(e)},[x,W,g]),{isLoadingMcp:e,isLoadingProviders:t,isUpdatingMcp:n,isUpdatingProvider:r,mcpConnections:i,onMcpOAuth:s,onOAuthLogin:c,onRemoveMcp:l,onRemoveProvider:u,onThemePreferenceChange:d,onUpdateMcp:f,onUpdateProvider:p,providers:m,resources:b,settingsLoading:_,themePreference:v,draft:x,savingSection:C,packageRows:D,packageError:O,modelFilter:M,setModelFilter:N,resourceSummary:T,modelOptions:P,modelDirty:F,resourceDirty:k,revertResourceDraft:j,revertModelDraft:H,resetDraft:()=>{g&&S(g.effective)},updateDraft:E,handlePackageRowsChange:A,addModels:I,removeModel:L,setDefaultModel:R,discoverProvider:z,discoveringProviderId:B,saveSection:async(e,t)=>{if(e===`models`&&x){if(!await V(x))throw Error(`Settings save failed`);return}w(e);try{await h(t),G.success(`Pi settings saved`)}catch(e){throw G.error(e instanceof Error?e.message:`Settings save failed`),e}finally{w(null)}},requestCloseSettings:async()=>C===`models`?`wait`:k?`discard-prompt`:F&&x?await V(x,{silent:!0})?`close`:`discard-prompt`:`close`,resetCommittedModelBaseline:U}}function Nr({active:e,onClick:t,icon:n,label:r}){return(0,Q.jsxs)(`button`,{type:`button`,onClick:t,className:s(`flex w-full items-center gap-2 rounded-lg px-2 py-1.5 text-left text-label transition-colors`,e?`bg-background text-foreground shadow-sm`:`text-muted-foreground hover:bg-muted hover:text-foreground`),children:[(0,Q.jsx)(n,{className:`size-4 shrink-0`}),(0,Q.jsx)(`span`,{children:r})]})}function Pr({open:e,onOpenChange:t,initialTab:n}){return(0,Z.useEffect)(()=>{oe(se())},[]),(0,Q.jsx)(Fr,{initialTab:n,onOpenChange:t,open:e})}function Fr({initialTab:e,onOpenChange:t,open:n}){let r=(0,Z.useRef)(()=>{t(!1)});return(0,Q.jsx)(_e,{open:n,onOpenChange:(e,n)=>{if(e){t(!0);return}r.current(n)},children:n?(0,Q.jsx)(Lr,{initialTab:e,onCloseAttemptRef:r,onOpenChange:t}):null})}function Ir({activeTab:e,composerIntent:t,form:n,onComposerIntentChange:r,onComposerIntentKeyChange:i,preferences:a,updatePreference:o}){let{isLoadingMcp:s,isLoadingProviders:c,isUpdatingMcp:l,isUpdatingProvider:u,mcpConnections:d,onMcpOAuth:f,onOAuthLogin:p,onRemoveMcp:m,onRemoveProvider:h,onThemePreferenceChange:g,onUpdateMcp:_,onUpdateProvider:v,providers:y,resources:b,settingsLoading:S,themePreference:C,draft:w,savingSection:T,packageRows:E,packageError:D,modelFilter:O,setModelFilter:k,resourceSummary:A,modelOptions:j,modelDirty:M,resourceDirty:N,revertResourceDraft:P,revertModelDraft:F,updateDraft:I,handlePackageRowsChange:L,addModels:R,removeModel:z,setDefaultModel:B,discoverProvider:V,discoveringProviderId:H,saveSection:U}=n,W=e=>(0,Q.jsx)(On,{scope:e,draft:w,updateDraft:I,onEnableSkillCommandsChange:e=>I(t=>({...t,enableSkillCommands:e})),onExtensionsChange:e=>I(t=>({...t,extensions:e})),onPackageRowsChange:L,onPromptsChange:e=>I(t=>({...t,prompts:e})),onRevert:P,onSave:()=>w&&U(`resources`,{...un(w),...e===`harness`?dn(w):{}}),onSkillsChange:e=>I(t=>({...t,skills:e})),onThemesChange:e=>I(t=>({...t,themes:e})),packageError:D,packageRows:E,resourceDirty:N,resources:b,resourceSummary:A,saving:T===`resources`,settingsLoading:S});return{appearance:()=>(0,Q.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`h3`,{className:`text-lg font-medium`,children:`Appearance`}),(0,Q.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Customize the look and feel of the interface.`})]}),(0,Q.jsx)(Pt,{onThemePreferenceChange:g,themePreference:C}),(0,Q.jsx)(_t,{label:`Density`,description:`Adjust spacing across chat and panels.`,children:(0,Q.jsx)(x,{"aria-label":`Density`,value:a.density,onValueChange:e=>o(`density`,e),options:[{label:`Comfortable`,value:`comfortable`},{label:`Compact`,value:`compact`}]})}),(0,Q.jsx)(_t,{label:`Motion`,description:`Respect the system setting or reduce UI motion.`,children:(0,Q.jsx)(x,{"aria-label":`Motion`,value:a.motion,onValueChange:e=>o(`motion`,e),options:[{label:`System`,value:`system`},{label:`Reduced`,value:`reduced`}]})})]}),chat:()=>(0,Q.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`h3`,{className:`text-lg font-medium`,children:`Chat`}),(0,Q.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Control transcript behavior.`})]}),(0,Q.jsx)(_t,{label:`Streaming transcript`,description:`Follow new output or preserve the reading position.`,children:(0,Q.jsx)(x,{"aria-label":`Streaming transcript`,value:a.transcript,onValueChange:e=>o(`transcript`,e),options:[{label:`Follow output`,value:`follow`},{label:`Manual`,value:`manual`}]})}),(0,Q.jsx)(bt,{enabled:t?.enabled??!1,keySource:t?.keySource??`none`,status:t?.status??`unconfigured`,onClearKey:()=>i?.(null),onEnabledChange:r,onSaveKey:e=>i?.(e)})]}),mcp:()=>(0,Q.jsx)(Mt,{connections:d,isLoading:s??!1,isPending:l??!1,onOAuth:f,onRemove:m,onUpsert:_}),sandbox:()=>(0,Q.jsx)(An,{isLoading:c??!1,isPending:u??!1,providers:y,onUpdateProvider:v}),providers:()=>(0,Q.jsx)(sn,{isLoading:c??!1,isPending:u??!1,providers:y,onOAuthLogin:p,onRemoveProvider:h,onUpdateProvider:v}),"llm-models":()=>(0,Q.jsx)(Bt,{draft:w,discoveringProviderId:H,modelDirty:M,modelFilter:O,modelOptions:j,onAddModels:R,onDiscoverProvider:V,onModelFilterChange:k,onRemoveModel:z,onSetDefaultModel:B,providers:y,onRevert:F,onSave:()=>w&&U(`models`,cn(w)),saving:T===`models`,settingsLoading:S}),skills:()=>W(`skills`),"pi-harness":()=>W(`harness`),keybindings:()=>(0,Q.jsxs)(`div`,{className:`flex flex-col gap-4 text-sm`,children:[(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`h3`,{className:`text-lg font-medium`,children:`Keybindings`}),(0,Q.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Every shortcut also has a visible control in the header, panel, or composer.`})]}),(0,Q.jsxs)(`div`,{className:`rounded-xl border p-4 font-mono text-xs leading-7`,children:[(0,Q.jsx)(`div`,{children:`Command palette: Ctrl/Command K`}),(0,Q.jsx)(`div`,{children:`Conversation sidebar: Ctrl/Command B`}),(0,Q.jsx)(`div`,{children:`Toggle Resources: Ctrl/Command Shift 1`}),(0,Q.jsx)(`div`,{children:`Toggle Workspace: Ctrl/Command Shift 2`}),(0,Q.jsx)(`div`,{children:`Toggle Artifacts: Ctrl/Command Shift 3`}),(0,Q.jsx)(`div`,{children:`Focus active panel: Ctrl/Command Shift P`}),(0,Q.jsx)(`div`,{children:`Return focus to chat: Ctrl/Command Shift C`}),(0,Q.jsx)(`div`,{children:`Close active panel: Escape`})]})]}),sessions:()=>(0,Q.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`h3`,{className:`text-lg font-medium`,children:`Sessions`}),(0,Q.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Set local conversation preferences. Provider and workspace configuration remains Fleet Prime-owned.`})]}),(0,Q.jsx)(_t,{label:`Confirm session deletion`,description:`Require confirmation before deleting a saved conversation.`,children:(0,Q.jsx)(fe,{checked:a.confirmSessionDelete,onCheckedChange:e=>o(`confirmSessionDelete`,e),"aria-label":`Confirm session deletion`})}),(0,Q.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Provider credentials, OAuth, models, sandbox configuration, and workspace selection are managed by Fleet Prime and its CLI.`})]})}[e]()}function Lr({initialTab:e,onCloseAttemptRef:t,onOpenChange:n}){let r=Mr(),{composerIntent:i,onComposerIntentChange:a,onComposerIntentKeyChange:o}=ne(),{resourceDirty:s,revertResourceDraft:c,resetDraft:l,requestCloseSettings:u,resetCommittedModelBaseline:d}=r,[f,p]=(0,Z.useState)(()=>e??`appearance`),[m,h]=(0,Z.useState)(se);(0,Z.useEffect)(()=>{ae(m)},[m]);let g=(e,t)=>{h(n=>({...n,[e]:t}))},[_,v]=(0,Z.useState)(!1),[y,b]=(0,Z.useState)(`resource`),S=Nn.find(e=>e.id===f)??Nn[0],C=(e,t)=>{if(e){n(!0);return}t?.cancel(),(async()=>{let e=await u();if(e===`close`){n(!1);return}if(e===`wait`){G.message(`Saving model list…`);return}b(s?`resource`:`model`),v(!0)})()};t.current=e=>{C(!1,e)};let w=()=>{c(),l(),d(),v(!1),n(!1)};(0,Z.useEffect)(()=>{d()},[d]);let T=(0,Q.jsx)(Ir,{activeTab:f,composerIntent:i,form:r,onComposerIntentChange:a,onComposerIntentKeyChange:o,preferences:m,updatePreference:g});return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(me,{className:`flex h-[min(640px,calc(100dvh-4rem))] w-full max-w-[calc(100%-2rem)] overflow-hidden rounded-2xl p-0 sm:max-w-[min(860px,calc(100%-2rem))]`,children:[(0,Q.jsx)(he,{className:`sr-only`,children:`Settings`}),(0,Q.jsx)(ge,{className:`sr-only`,children:`Customize your settings here.`}),(0,Q.jsxs)(`div`,{className:`flex h-full w-full min-h-0 min-w-0 flex-1`,children:[(0,Q.jsxs)(`nav`,{"aria-label":`Settings sections`,className:`hidden h-full w-52 shrink-0 flex-col border-r border-border bg-sidebar sm:flex`,children:[(0,Q.jsx)(`div`,{className:`px-6 pt-6 pb-2 text-label font-semibold`,children:`Settings`}),(0,Q.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto overscroll-contain px-2 pb-6`,children:Mn.map(e=>(0,Q.jsxs)(`div`,{className:`py-2`,children:[(0,Q.jsx)(`p`,{className:`px-2 pb-1 text-caption font-medium uppercase tracking-wide text-muted-foreground`,children:e.label}),(0,Q.jsx)(`div`,{className:`flex flex-col gap-0.5`,children:Nn.filter(t=>t.group===e.id).map(e=>(0,Q.jsx)(Nr,{active:f===e.id,onClick:()=>p(e.id),icon:e.icon,label:e.title},e.id))})]},e.id))})]}),(0,Q.jsxs)(`main`,{className:`flex h-full w-full min-h-0 min-w-0 flex-1 flex-col overflow-hidden`,children:[(0,Q.jsx)(`header`,{className:`flex h-14 w-full shrink-0 items-center gap-2 border-b border-border/10 px-6`,children:(0,Q.jsx)(`div`,{className:`flex w-full flex-1 items-center justify-between`,children:(0,Q.jsx)(In,{children:(0,Q.jsxs)(Ln,{children:[(0,Q.jsx)(Rn,{className:`hidden sm:block`,children:`Settings`}),(0,Q.jsx)(Bn,{className:`hidden sm:block`}),(0,Q.jsx)(Rn,{children:(0,Q.jsx)(zn,{children:S.title})})]})})})}),(0,Q.jsx)(`div`,{className:`w-full shrink-0 border-b border-border/10 bg-muted/5 px-4 py-2.5 sm:hidden`,children:(0,Q.jsx)(x,{"aria-label":`Settings sections`,value:f,onValueChange:e=>{Pn(e)&&p(e)},options:Nn.map(e=>({label:e.title,value:e.id}))})}),(0,Q.jsx)(Ar,{className:`min-h-0 w-full flex-1`,children:(0,Q.jsx)(`div`,{id:`panel-${f}`,role:`tabpanel`,"aria-label":S.title,tabIndex:0,className:`w-full p-6 outline-none`,children:T})})]})]})]}),(0,Q.jsx)(Ne,{open:_,onOpenChange:v,children:(0,Q.jsxs)(Oe,{children:[(0,Q.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,Q.jsx)(Me,{children:`Discard unsaved changes?`}),(0,Q.jsx)(De,{children:y===`resource`?`Your resource changes have not been committed. If you leave settings now, those changes will be lost.`:`Your model list could not be saved. If you leave settings now, those changes will be lost.`})]}),(0,Q.jsxs)(Ae,{children:[(0,Q.jsx)(je,{children:`Keep editing`}),(0,Q.jsx)(ke,{onClick:w,children:`Discard changes`})]})]})})]})}export{Pr as SettingsDialog};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./createLucideIcon-CQY2ECfR.js";var t={name:`globe`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20`,key:`13o1zl`}],[`path`,{d:`M2 12h20`,key:`9i4pu4`}]]};t.node;var n=e(t),r={name:`rotate-ccw`,size:24,node:[[`path`,{d:`M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8`,key:`1357e3`}],[`path`,{d:`M3 3v5h5`,key:`1xhq8a`}]]};r.node;var i=e(r),a={name:`sparkles`,size:24,node:[[`path`,{d:`M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z`,key:`1s2grr`}],[`path`,{d:`M20 2v4`,key:`1rf3ol`}],[`path`,{d:`M22 4h-4`,key:`gwowj6`}],[`circle`,{cx:`4`,cy:`20`,r:`2`,key:`6kqj1y`}]],aliases:[`stars`]};a.node;var o=e(a);export{i as n,n as r,o as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{t}from"./react-Cvdyeg_0.js";import{t as n}from"./jsx-runtime-NZYk81nU.js";import{t as r}from"./utils-oBThwhjm.js";import{t as i}from"./bot-DETalD3q.js";import{a,c as o,d as s,f as c,l,m as u,n as d,o as f,p,r as m,s as h,t as g,u as _}from"./tool-part-normalizer-CYK62WZM.js";import{t as v}from"./session-tool-renderer-C7mYeUOs.js";import{n as y}from"./file-text-cqOanUYv.js";import{t as b}from"./circle-check-DBhaebaM.js";import{t as x}from"./loader-circle-BmKYM_C4.js";import{t as S}from"./refresh-cw-CqPE3kNY.js";import{t as C}from"./button-CWYjn8Zk.js";import{t as w}from"./prime-agent-artifacts-C-g1VPiW.js";import{n as T}from"./reasoning-line-DGdPUMwT.js";import{a as E,c as D,i as O,n as k,o as A,r as j,s as M,t as N}from"./trace-IsV5RRvM.js";import{t as P}from"./tool-timeline-eNqH1zj7.js";var F=e(t(),1),I=n();function L({children:e,tree:t,className:n}){let i=(0,F.useMemo)(()=>s(e,t),[e,t]),a=i.some(e=>e.status===`queued`||e.status===`running`||e.status===`recovering`),[o,l]=(0,F.useState)(a);return i.length===0?null:(0,I.jsx)(N,{className:r(`mt-2`,n),"data-testid":`subagent-trace`,children:(0,I.jsxs)(k,{open:o||a,onOpenChange:l,children:[(0,I.jsx)(O,{"aria-label":a?`Subagents working`:`Subagents completed`,children:(0,I.jsxs)(M,{status:a?`running`:void 0,children:[(0,I.jsx)(A,{children:a?(0,I.jsx)(x,{className:`animate-spin`}):(0,I.jsx)(b,{})}),(0,I.jsx)(D,{children:a?`Subagents working`:`Subagents completed`}),(0,I.jsx)(E,{children:i.length})]})}),(0,I.jsx)(j,{children:(0,I.jsx)(N,{className:`gap-1`,children:i.map(e=>(0,I.jsxs)(M,{style:{paddingLeft:`${Math.max(0,e.depth??0)*12}px`},children:[(0,I.jsx)(A,{children:c(e.status)}),(0,I.jsx)(D,{children:e.label}),e.model?(0,I.jsx)(E,{children:e.model}):null,(0,I.jsx)(E,{className:`capitalize`,children:e.status}),e.error||e.answerPreview||e.progressNote||e.activity?.toolName?(0,I.jsx)(E,{className:`max-w-56 truncate`,children:e.error||e.answerPreview||e.progressNote||e.activity?.toolName}):null]},e.id))})})]})})}function R({turn:e,isLast:t,isStreaming:n,presentation:r,artifacts:i}){let s=(0,F.useMemo)(()=>e.assistants.flatMap((r,i)=>a(g((r.parts??[]).filter(e=>e.type!==`tool-FleetReasoning`&&e.type!==`tool-Thinking`)),{messageId:r.id,isLast:t&&i===e.assistants.length-1,isStreaming:n,suppressQuestionTool:!0,ToolRendererComponent:v,TextRendererComponent:u})),[t,n,e.assistants]);return(0,I.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[e.user?(0,I.jsx)(h,{from:`user`,children:(0,I.jsx)(_,{children:(0,I.jsx)(m,{message:e.user,enableImagePreview:!1})})}):null,e.assistants.length>0?(0,I.jsx)(h,{from:`assistant`,children:(0,I.jsx)(_,{children:(0,I.jsx)(o,{variant:`ghost`,children:(0,I.jsxs)(l,{children:[(0,I.jsx)(`div`,{className:`flex flex-col gap-3`,children:s}),t&&i.length>0?(0,I.jsx)(P,{messages:[],artifacts:i,streaming:n}):null,t&&r?(0,I.jsx)(L,{tree:r.rlmTree,children:r.rlmChildren}):null]})})})}):null]})}function z(e,t){return e.user?.id??e.assistants[0]?.id??`subagent-turn-${t}`}function B({child:e,parentSessionId:t,transcript:n,onRefresh:a,fullWidth:o=!1,status:s}){let c=(0,F.useMemo)(()=>n?.status===`loading`?[]:T(n?.messages??[]),[n]),l=s??p(e),u=(0,F.useMemo)(()=>n?.status===`loading`?[]:w(n?.messages??[],n?.presentation,l),[l,n]),m=(0,F.useMemo)(()=>{let e=new Set((n?.messages??[]).flatMap(e=>e.parts.flatMap(e=>`toolCallId`in e&&e.toolCallId?[e.toolCallId]:[])));return u.flatMap(e=>e.artifacts).filter(t=>!t.sourceToolCallId||!e.has(t.sourceToolCallId))},[u,n]),h=n?.presentation,g=(0,F.useCallback)((e,t)=>{let n=t===c.length-1;return(0,I.jsx)(R,{turn:e,isLast:n,isStreaming:n&&l===`streaming`,presentation:n?h:void 0,artifacts:n?m:[]})},[m,l,h,c.length]),_=e.sessionName||e.label,[v,b]=(0,F.useState)(null);(0,F.useEffect)(()=>{b(e.lastHeardFrom?new Date(e.lastHeardFrom).toLocaleTimeString():null)},[e.lastHeardFrom]);let x=(0,F.useRef)(null);return(0,I.jsxs)(`section`,{"aria-label":`Subagent thread: ${e.label}`,className:r(o?`flex min-h-0 min-w-0 flex-1 flex-col`:`space-y-2`,`min-w-0`),"data-testid":o?`subagent-conversation-surface`:void 0,children:[(0,I.jsxs)(`div`,{className:`flex min-w-0 items-start gap-2 rounded-md border border-border/60 bg-background px-2.5 py-2`,children:[(0,I.jsx)(i,{className:`mt-0.5 size-3.5 shrink-0 text-foreground/45`}),(0,I.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,I.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,I.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-xs font-medium text-foreground/80`,children:_}),(0,I.jsx)(`span`,{className:`shrink-0 text-micro capitalize text-foreground/45`,children:e.status})]}),e.model?(0,I.jsx)(`p`,{className:`truncate font-mono text-micro text-foreground/40`,children:e.model}):null,v?(0,I.jsxs)(`p`,{className:`truncate text-micro text-foreground/40`,children:[`Heartbeat: `,v]}):null,e.progressNote&&e.status===`running`?(0,I.jsxs)(`p`,{className:`truncate text-micro text-foreground/50`,title:e.progressNote,children:[`Progress: `,e.progressNote]}):null,e.answerPreview||e.recap?(0,I.jsx)(`p`,{className:`mt-1 line-clamp-3 whitespace-pre-wrap text-caption leading-4 text-foreground/55`,children:e.answerPreview??e.recap}):null]}),a?(0,I.jsx)(C,{"aria-label":`Refresh ${e.label} thread`,className:`shrink-0 text-foreground/40 hover:text-foreground/70`,onClick:a,size:`icon-compact`,title:`Refresh ${e.label} thread`,type:`button`,variant:`ghost`,children:(0,I.jsx)(S,{className:r(`size-3.5`,n?.status===`loading`&&`animate-spin`)})}):null]}),t?n?.status===`loading`?(0,I.jsx)(`div`,{className:r(`flex items-center justify-center rounded-md border border-dashed border-border/70 text-caption text-foreground/45`,o?`min-h-32 flex-1`:`min-h-32`),children:`Loading subagent thread…`}):n?.status===`error`&&c.length===0?(0,I.jsxs)(`div`,{role:`alert`,className:`flex items-start gap-2 rounded-md border border-destructive/30 bg-destructive/5 px-3 py-2 text-caption leading-4 text-destructive`,children:[(0,I.jsx)(y,{className:`mt-0.5 size-3.5 shrink-0`}),(0,I.jsx)(`span`,{children:n.error?.message??`Unable to load this subagent thread.`})]}):c.length===0?(0,I.jsx)(`p`,{className:`rounded-md border border-dashed border-border/70 p-3 text-caption leading-4 text-foreground/45`,children:`This subagent thread has no messages yet.`}):(0,I.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col`,children:[n?.error?(0,I.jsxs)(`div`,{role:`alert`,className:`mx-4 mt-2 flex items-start gap-2 rounded-md border border-destructive/30 bg-destructive/5 px-3 py-2 text-caption leading-4 text-destructive sm:mx-6`,children:[(0,I.jsx)(y,{className:`mt-0.5 size-3.5 shrink-0`}),(0,I.jsx)(`span`,{children:n.error.message})]}):null,(0,I.jsx)(`div`,{className:r(`min-h-0 rounded-md border border-border/60 bg-background`,o?`flex min-h-0 flex-1 flex-col border-x-0 rounded-none border-b-0`:`h-96 max-h-[calc(100svh-18rem)]`),children:(0,I.jsx)(f,{busy:l===`streaming`,className:o?`min-h-0 flex-1`:void 0,followOutput:l===`streaming`,label:`Transcript for ${e.label}`,smooth:l!==`streaming`,viewportRef:x,viewportClassName:o?`px-0`:void 0,contentClassName:r(`flex flex-col gap-4`,o?`mx-auto w-full max-w-3xl px-4 py-6 sm:px-6`:`px-2.5 py-3`),children:(0,I.jsx)(d,{estimateSize:320,getItemKey:z,itemGap:16,items:c,renderItem:g,viewportRef:x})})})]}):(0,I.jsx)(`p`,{className:`rounded-md border border-dashed border-border/70 p-3 text-caption leading-4 text-foreground/45`,children:`This subagent thread is unavailable until the parent session is active.`})]})}export{B as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{t}from"./react-Cvdyeg_0.js";import{t as n}from"./jsx-runtime-NZYk81nU.js";import{m as r,p as ee}from"./FloatingPortal-XC0MCNnD.js";import{t as i}from"./utils-oBThwhjm.js";import{F as a,M as o,a as s,c,j as l,n as te,t as ne}from"./useButton-CvcmqA2s.js";import{f as u,t as d}from"./createBaseUIEventDetails-DIxvaz-Y.js";import{d as f,f as p}from"./select-BhV4ikeN.js";import{t as re}from"./useBaseUiId-lKfDDIcw.js";import{t as m}from"./dist-BogNzeK9.js";import{a as ie,c as h,i as g,l as ae,n as oe,o as se,r as _}from"./input-7g8_nw-Z.js";import{t as v}from"./useControlled-CkQSkSv1.js";var y=n(),b=m(`group/alert relative grid w-full gap-0.5 rounded-lg border px-2.5 py-2 text-left text-sm has-[>svg]:grid-cols-[auto_1fr] has-[>svg]:gap-x-2 *:[svg]:row-span-2 *:[svg]:translate-y-0.5 *:[svg]:text-current *:[svg:not([class*='size-'])]:size-4`,{variants:{variant:{default:`bg-card text-card-foreground`,destructive:`bg-card text-destructive *:data-[slot=alert-description]:text-destructive/90 *:[svg]:text-current`}},defaultVariants:{variant:`default`}});function x({className:e,variant:t,...n}){return(0,y.jsx)(`div`,{"data-slot":`alert`,role:`alert`,className:i(b({variant:t}),e),...n})}function S({className:e,...t}){return(0,y.jsx)(`div`,{"data-slot":`alert-title`,className:i(`font-medium group-has-[>svg]/alert:col-start-2 [&_a]:underline [&_a]:underline-offset-3 [&_a]:hover:text-foreground`,e),...t})}function C({className:e,...t}){return(0,y.jsx)(`div`,{"data-slot":`alert-description`,className:i(`text-sm text-balance text-muted-foreground md:text-pretty [&_a]:underline [&_a]:underline-offset-3 [&_a]:hover:text-foreground [&_p:not(:last-child)]:mb-4`,e),...t})}function w({className:e,...t}){return(0,y.jsx)(`div`,{"data-slot":`field-group`,className:i(`group/field-group @container/field-group flex w-full flex-col gap-5 data-[slot=checkbox-group]:gap-3 *:data-[slot=field-group]:gap-4`,e),...t})}var T=m(`group/field flex w-full gap-2 data-[invalid=true]:text-destructive`,{variants:{orientation:{vertical:`flex-col *:w-full [&>.sr-only]:w-auto`,horizontal:`flex-row items-center *:data-[slot=field-label]:flex-auto`,responsive:`flex-col *:w-full @md/field-group:flex-row @md/field-group:items-center @md/field-group:*:w-auto @md/field-group:*:data-[slot=field-label]:flex-auto [&>.sr-only]:w-auto`}},defaultVariants:{orientation:`vertical`}});function E({className:e,orientation:t=`vertical`,...n}){return(0,y.jsx)(`div`,{role:`group`,"data-slot":`field`,"data-orientation":t,className:i(T({orientation:t}),e),...n})}function ce({className:e,...t}){return(0,y.jsx)(p,{"data-slot":`field-label`,className:i(`group/field-label peer/field-label flex w-fit gap-2 leading-snug group-data-[disabled=true]/field:opacity-50 has-data-checked:border-primary/30 has-data-checked:bg-primary/5 has-[>[data-slot=field]]:rounded-lg has-[>[data-slot=field]]:border *:data-[slot=field]:p-2.5 dark:has-data-checked:border-primary/20 dark:has-data-checked:bg-primary/10`,`has-[>[data-slot=field]]:w-full has-[>[data-slot=field]]:flex-col`,e),...t})}function D({className:e,...t}){return(0,y.jsx)(`p`,{"data-slot":`field-description`,className:i(`text-left text-sm leading-normal font-normal text-muted-foreground group-has-data-horizontal/field:text-balance`,`last:mt-0 nth-last-2:-mt-1`,`[&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary`,e),...t})}var O=e(t(),1),k=O.createContext(void 0);function A(){let e=O.useContext(k);if(e===void 0)throw Error(l(63));return e}var j=`data-checked`,M=`data-unchecked`,N={...h,checked(e){return e?{[j]:``}:{[M]:``}}},P=O.forwardRef(function(e,t){let{checked:n,className:i,defaultChecked:l,"aria-labelledby":p,form:m,id:h,inputRef:b,name:x,nativeButton:S=!1,onCheckedChange:C,readOnly:w=!1,required:T=!1,disabled:E=!1,render:ce,uncheckedValue:D,value:A,style:j,...M}=e,{clearErrors:P}=ie(),{state:F,setTouched:I,setDirty:L,validityData:R,setFilled:z,setFocused:B,validationMode:V,disabled:H,name:U,validation:W}=se(),{labelId:le}=g(),G=H||E,K=U??x,q=O.useRef(null),ue=c(q,b,W.inputRef),J=O.useRef(null),Y=re(),X=_({id:h}),Z=S?void 0:X,[Q,de]=v({controlled:n,default:!!l,name:`Switch`,state:`checked`});oe(J,Y,Q,void 0,!G,x),o(()=>{z(Q)},[Q,z]),ae(Q,()=>{P(K),L(Q!==R.initialValue),W.change(Q)});let{getButtonProps:fe,buttonRef:pe}=ne({disabled:G,native:S}),me=f(p,le,q,!S,Z),he={id:S?X:Y,role:`switch`,"aria-checked":Q,"aria-readonly":w||void 0,"aria-required":T||void 0,"aria-labelledby":me,onFocus(){G||B(!0)},onBlur(){let e=q.current;!e||G||(I(!0),B(!1),V===`onBlur`&&W.commit(e.checked))},onClick(e){if(w||G)return;e.preventDefault();let t=q.current;t&&te(t,e)}},ge={...W.getValidationProps(G),checked:Q,disabled:G,form:m,id:Z,name:K,required:T,style:K?r:ee,tabIndex:-1,type:`checkbox`,"aria-hidden":!0,ref:ue,onChange(e){if(e.nativeEvent.defaultPrevented)return;if(w){e.preventDefault();return}let t=e.currentTarget.checked,n=d(u,e.nativeEvent);C?.(t,n),!n.isCanceled&&de(t)},onClick(e){e.stopPropagation()},onFocus(){J.current?.focus()},...A===void 0?a:{value:A}},$=O.useMemo(()=>({...F,checked:Q,disabled:G,readOnly:w,required:T}),[F,Q,G,w,T]),_e=s(`span`,e,{state:$,ref:[t,J,pe],props:[he,M,fe,e=>W.getValidationProps(G,e)],stateAttributesMapping:N});return(0,y.jsxs)(k.Provider,{value:$,children:[_e,!Q&&K&&D!==void 0&&(0,y.jsx)(`input`,{type:`hidden`,form:m,name:K,value:D,disabled:G}),(0,y.jsx)(`input`,{...ge,suppressHydrationWarning:!0})]})}),F=O.forwardRef(function(e,t){let{render:n,className:r,style:ee,...i}=e,a=A();return s(`span`,e,{state:a,ref:t,stateAttributesMapping:N,props:i})});function I({className:e,...t}){return(0,y.jsx)(P,{"data-slot":`switch`,className:i(`inline-flex h-5 w-9 shrink-0 cursor-pointer items-center rounded-full border border-transparent bg-input transition-colors outline-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 dark:bg-input/80 data-checked:bg-primary data-disabled:cursor-not-allowed data-disabled:opacity-50`,e),...t,children:(0,y.jsx)(F,{"data-slot":`switch-thumb`,className:`pointer-events-none block size-4 translate-x-0.5 rounded-full bg-background shadow-sm transition-transform dark:bg-foreground data-checked:translate-x-4`})})}export{ce as a,S as c,w as i,E as n,x as o,D as r,C as s,I as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{t}from"./react-Cvdyeg_0.js";import{t as n}from"./react-dom-B7th3XGm.js";import{t as r}from"./jsx-runtime-NZYk81nU.js";import{$ as i,G as a,I as o,K as s,Q as c,W as l,Z as u,a as d,d as f,et as p,f as m,l as h,n as g,p as ee,tt as _}from"./FloatingPortal-XC0MCNnD.js";import{t as v}from"./utils-oBThwhjm.js";import{M as y,N as b,O as x,_ as S,a as C,j as w,t as T}from"./useButton-CvcmqA2s.js";import{D as te,E,_ as D,v as ne,x as O}from"./createBaseUIEventDetails-DIxvaz-Y.js";import{t as k}from"./createLucideIcon-CQY2ECfR.js";import{t as A}from"./circle-check-DBhaebaM.js";import{t as j}from"./loader-circle-BmKYM_C4.js";import{t as M}from"./triangle-alert-BuzmrrqI.js";import{t as N}from"./x-DEU6H3M-.js";import{t as P}from"./button-CWYjn8Zk.js";var F=e(t(),1),I=F.createContext(void 0);function L(){let e=F.useContext(I);if(!e)throw Error(w(73));return e}var R=0;function z(e){return R+=1,`${e}-${Math.random().toString(36).slice(2,6)}-${R}`}function B(e,t){if(typeof e==`string`)return{description:e};if(typeof e==`function`){let n=e(t);return typeof n==`string`?{description:n}:n}return e}function V(e){let t=new Map,n=0,r=0;return e.forEach((e,i)=>{let a=e.transitionStatus===`ending`;t.set(e.id,{value:e,domIndex:i,visibleIndex:a?-1:n,offsetY:r}),r+=e.height||0,a||(n+=1)}),t}function H(e,t){let n=0;return e.map(e=>{if(e.transitionStatus===`ending`)return e;let r=n>=t;return n+=1,e.limited===r?e:{...e,limited:r}})}var U={toasts:e=>e.toasts,isEmpty:e=>e.toasts.length===0,toast:(e,t)=>e.toastMetadata.get(t)?.value,toastIndex:(e,t)=>e.toastMetadata.get(t)?.domIndex??-1,toastOffsetY:(e,t)=>e.toastMetadata.get(t)?.offsetY??0,toastVisibleIndex:(e,t)=>e.toastMetadata.get(t)?.visibleIndex??-1,focused:e=>e.focused,expanded:e=>e.hovering||e.focused,expandedOrOutOfFocus:e=>e.hovering||e.focused||!e.isWindowFocused,prevFocusElement:e=>e.prevFocusElement},W=class extends _{timers=new Map;areTimersPaused=!1;constructor(e){super({...e,toastMetadata:V(e.toasts)},{},U)}setViewport=e=>{this.set(`viewport`,e)};syncProviderProps(e,t){let n=this.state.limit!==t;if(this.state.timeout===e&&!n)return;let r={timeout:e,limit:t};if(n){let e=H(this.state.toasts,t);r.toasts=e,r.toastMetadata=V(e)}this.update(r)}disposeEffect=()=>()=>{this.timers.forEach(e=>{e.timeout?.clear()}),this.timers.clear()};removeToast(e,t=!1){let n=U.toastIndex(this.state,e);if(n===-1)return;let r=this.state.toasts[n];t||r?.onRemove?.();let i=[...this.state.toasts];i.splice(n,1),this.setToasts(i)}addToast=e=>{let{timeout:t,limit:n}=this.state,r=e.id||z(`toast`);if(e.id){let t=U.toast(this.state,e.id);if(t){if(t.transitionStatus===`ending`)this.removeToast(e.id,!0);else{let{id:t,transitionStatus:n,...r}=e;return this.updateToastInternal(e.id,r,!0,!0),e.id}}}let i={...e,id:r,updateKey:0,transitionStatus:`starting`},a=[i,...this.state.toasts];this.setToasts(H(a,n));let o=i.timeout??t;return i.type!==`loading`&&o>0&&this.scheduleTimer(r,o,()=>this.closeToast(r)),U.expandedOrOutOfFocus(this.state)&&this.pauseTimers(),r};updateToast=(e,t)=>{let n=U.toast(this.state,e);!n||n.transitionStatus===`ending`||this.updateToastInternal(e,typeof t==`function`?t(n):t,!1,!0)};updateToastInternal=(e,t,n=!1,r=!1)=>{let{timeout:i,toasts:a}=this.state,o=U.toast(this.state,e);if(!o||o.transitionStatus===`ending`)return;let s={...o,...t,...r&&{updateKey:o.updateKey+1}};this.setToasts(a.map(t=>t.id===e?s:t));let c=s.timeout??i,l=o.timeout??i,u=Object.hasOwn(t,`timeout`),d=s.transitionStatus!==`ending`&&s.type!==`loading`&&c>0,f=this.timers.has(e),p=l!==c,m=o.type===`loading`;if(!d&&f){this.clearTimer(e);return}d&&(!f||p||u||m||n)&&(this.clearTimer(e),this.scheduleTimer(e,c,()=>this.closeToast(e)),U.expandedOrOutOfFocus(this.state)&&this.pauseTimers())};closeToast=e=>{let t=e===void 0,{limit:n,toasts:r}=this.state,i;if(t)i=r,this.clearTimers();else{let t=U.toast(this.state,e);if(!t)return;i=[t],this.clearTimer(e)}let a=H(r.map(n=>t||n.id===e?{...n,transitionStatus:`ending`,height:0}:n),n);this.setToasts(a,!a.some(e=>e.transitionStatus!==`ending`)),i.forEach(e=>{e.transitionStatus!==`ending`&&e.onClose?.()}),this.handleFocusManagement(e)};promiseToast=(e,t)=>{let n=B(t.loading),r=this.addToast({...n,type:`loading`}),i=e.then(e=>{let n=B(t.success,e);return this.updateToast(r,{...n,type:`success`,timeout:n.timeout}),e}).catch(e=>{let n=B(t.error,e);return this.updateToast(r,{...n,type:`error`,timeout:n.timeout}),Promise.reject(e)});return{}.hasOwnProperty.call(t,`setPromise`)&&t.setPromise(i),i};pauseTimers(){this.areTimersPaused||(this.areTimersPaused=!0,this.timers.forEach(e=>{e.timeout&&(e.timeout.clear(),e.remaining=Math.max(e.remaining-(Date.now()-e.start),0))}))}resumeTimers(){this.areTimersPaused&&(this.areTimersPaused=!1,this.timers.forEach((e,t)=>{e.remaining=e.remaining>0?e.remaining:e.delay,e.timeout??=u.create(),e.timeout.start(e.remaining,()=>{this.handleTimerFired(t),e.callback()}),e.start=Date.now()}))}restoreFocusToPrevElement(){this.state.prevFocusElement?.focus({preventScroll:!0})}handleDocumentPointerDown=e=>{if(e.pointerType!==`touch`)return;let t=s(e);a(this.state.viewport,t)||(this.resumeTimers(),this.update({hovering:!1,focused:!1}))};scheduleTimer(e,t,n){let r=Date.now(),i=U.expandedOrOutOfFocus(this.state)?void 0:u.create();i?.start(t,()=>{this.handleTimerFired(e),n()}),this.timers.set(e,{timeout:i,start:r,delay:t,remaining:t,callback:n})}clearTimers(){this.timers.forEach(e=>{e.timeout?.clear()}),this.timers.clear(),this.areTimersPaused=!1}clearTimer(e){this.timers.get(e)?.timeout?.clear(),this.timers.delete(e),this.resetPausedStateIfNoTimersRemain()}handleTimerFired(e){this.timers.delete(e),this.resetPausedStateIfNoTimersRemain()}resetPausedStateIfNoTimersRemain(){this.timers.size===0&&(this.areTimersPaused=!1)}setToasts(e,t=e.length===0){let n={toasts:e,toastMetadata:V(e)};t&&(n.hovering=!1,n.focused=!1),this.update(n)}handleFocusManagement(e){let t=l(i(this.state.viewport));if(!this.state.viewport||!a(this.state.viewport,t)||!o(t))return;if(e===void 0){this.restoreFocusToPrevElement();return}let n=U.toasts(this.state),r=U.toastIndex(this.state,e),s=(e,t)=>{for(let r=e;r>=0&&r<n.length;r+=t)if(n[r].transitionStatus!==`ending`)return n[r];return null},c=s(r+1,1)??s(r-1,-1);c?c.ref?.current?.focus():this.restoreFocusToPrevElement()}},G=r(),re=function(e){let{children:t,timeout:n=5e3,limit:r=3,toastManager:i}=e,a=b(()=>new W({timeout:n,limit:r,viewport:null,toasts:[],hovering:!1,focused:!1,isWindowFocused:!0,prevFocusElement:null})).current;return te(a.disposeEffect),F.useEffect(function(){if(i)return i[` subscribe`](({action:e,options:t})=>{let n=t.id;e===`promise`&&t.promise?a.promiseToast(t.promise,t):e===`update`&&n?a.updateToast(n,t.updates):e===`close`?a.closeToast(n):a.addToast(t)})},[a,i]),(0,G.jsxs)(I.Provider,{value:a,children:[(0,G.jsx)(ie,{store:a,timeout:n,limit:r}),t]})};function ie(e){let{store:t,timeout:n,limit:r}=e;return y(()=>{t.syncProviderProps(n,r)},[t,n,r]),null}var K=`--toast-frontmost-height`,q=F.forwardRef(function(e,t){let{render:n,className:r,style:u,children:d,...f}=e,h=L(),g=c(),_=F.useRef(!1),v=F.useRef(!1),y=F.useRef(!1),b=h.useState(`isEmpty`),x=h.useState(`toasts`),w=h.useState(`focused`),T=h.useState(`expanded`),te=h.useState(`prevFocusElement`),D=x[0]?.height,ne=x.some(e=>e.transitionStatus===`ending`),O=x.filter(e=>e.priority===`high`);F.useEffect(()=>{let e=h.state.viewport;if(!e||b)return;let t=S(e),n=i(e);function r(t){t.key===`F6`&&s(t)!==e&&(t.preventDefault(),h.set(`prevFocusElement`,l(n)),e?.focus({preventScroll:!0}),h.pauseTimers(),h.set(`focused`,!0))}function c(e){s(e)===t&&(h.set(`isWindowFocused`,!1),h.pauseTimers())}function u(n){if(n.relatedTarget)return;let r=s(n),c=l(i(e));(r===t||!a(e,r)||!o(c))&&h.resumeTimers(),g.start(0,()=>h.set(`isWindowFocused`,!0))}return p(E(t,`keydown`,r),E(t,`blur`,c,!0),E(t,`focus`,u,!0),E(n,`pointerdown`,h.handleDocumentPointerDown,!0))},[h,g,b]);function k(e){_.current=!0;let t=e.relatedTarget===h.state.viewport?x.find(e=>e.transitionStatus!==`ending`&&!e.limited):void 0;t?t.ref?.current?.focus():h.restoreFocusToPrevElement()}function A(e){e.key===`Tab`&&e.shiftKey&&s(e.nativeEvent)===h.state.viewport&&(e.preventDefault(),h.restoreFocusToPrevElement())}function j(){h.state.toasts.some(e=>e.transitionStatus===`ending`)||y.current||!v.current||(h.state.isWindowFocused&&h.resumeTimers(),h.set(`hovering`,!1),v.current=!1)}F.useEffect(j,[ne,h]);function M(){h.pauseTimers(),h.set(`hovering`,!0),v.current=!1}function N(){h.state.isWindowFocused&&h.resumeTimers()}function P(){v.current=!0,j()}function I(e){e.pointerType===`touch`&&(y.current=!0)}function R(e){e.pointerType===`touch`&&(y.current=!1,j())}function z(){if(_.current){_.current=!1;return}w||o(l(i(h.state.viewport)))&&(h.set(`focused`,!0),h.pauseTimers())}function B(e){!w||a(h.state.viewport,e.relatedTarget)||(h.set(`focused`,!1),N())}let V={tabIndex:-1,role:`region`,"aria-live":`polite`,"aria-atomic":!1,"aria-relevant":`additions text`,"aria-label":`Notifications`,onMouseEnter:M,onMouseMove:M,onMouseLeave:P,onFocus:z,onBlur:B,onKeyDown:A,onClick:z,onPointerDown:I,onPointerUp:R,onPointerCancel:R,style:{[K]:D?`${D}px`:void 0}},H={expanded:T},U=!b&&te&&(0,G.jsx)(m,{onFocus:k}),W=C(`div`,e,{ref:[t,h.setViewport],state:H,props:[V,f,{children:(0,G.jsxs)(F.Fragment,{children:[U,d,U]})}]});return(0,G.jsxs)(F.Fragment,{children:[U,W,!w&&O.length>0&&(0,G.jsx)(`div`,{style:ee,children:O.map(e=>(0,G.jsxs)(`div`,{role:`alert`,"aria-atomic":!0,children:[(0,G.jsx)(`div`,{children:e.title}),(0,G.jsx)(`div`,{children:e.description})]},e.id))})]})}),ae=e(n(),1),oe=F.createContext(void 0);function J(){let e=F.useContext(oe);if(!e)throw Error(w(66));return e}function se(e,t){let n=(t??S(e).getComputedStyle(e)).transform,r=0,i=0,a=1;if(n&&n!==`none`){let e=n.match(/matrix(?:3d)?\(([^)]+)\)/);if(e){let t=e[1].split(`, `).map(parseFloat);t.length===6?(r=t[4],i=t[5],a=Math.sqrt(t[0]*t[0]+t[1]*t[1])):t.length===16&&(r=t[12],i=t[13],a=t[0])}}return{x:r,y:i,scale:a}}function ce(e,t,n){switch(e){case`up`:return-n;case`down`:return n;case`left`:return-t;case`right`:return t;default:return 0}}var le=`--toast-index`,ue=`--toast-offset-y`,de=`--toast-height`,fe=`--toast-swipe-movement-x`,pe=`--toast-swipe-movement-y`,Y=`data-swipe-direction`,me={...O,swipeDirection(e){return e?{[Y]:e}:null}},he=40,ge=10,_e=.5,ve=1,ye=`${d},${h}`,be=F.forwardRef(function(e,t){let{toast:n,render:r,className:o,swipeDirection:c=[`down`,`right`],style:u,...d}=e,p=n.positionerProps?.anchor!==void 0,m=[];p||(m=Array.isArray(c)?c:[c]);let h=m.length>0,g=L(),[ee,_]=F.useState(void 0),[v,b]=F.useState(!1),[S,w]=F.useState(!1),[T,te]=F.useState({x:0,y:0}),[D,O]=F.useState({x:0,y:0,scale:1}),[k,A]=F.useState(),[j,M]=F.useState(),[N,P]=F.useState(null),I=F.useRef(null),R=F.useRef(void 0),z=F.useRef({x:0,y:0}),B=F.useRef({x:0,y:0,scale:1}),V=F.useRef(void 0),H=F.useRef(0),U=F.useRef(!1),W=F.useRef({x:0,y:0}),re=F.useRef(!1),ie=F.useRef({x:0,y:0}),K=F.useRef(null),q=F.useRef(null),J=g.useState(`toastIndex`,n.id),Y=g.useState(`toastVisibleIndex`,n.id),be=g.useState(`toastOffsetY`,n.id),xe=g.useState(`focused`),X=g.useState(`expanded`);ne({open:n.transitionStatus!==`ending`,ref:I,onComplete(){n.transitionStatus===`ending`&&g.removeToast(n.id)}});let Z=x((e=!1)=>{let t=I.current;if(!t)return;let r=t.style.height;t.style.height=`auto`;let i=t.offsetHeight;t.style.height=r;function a(){g.updateToastInternal(n.id,{ref:I,height:i,transitionStatus:void 0})}e?ae.flushSync(a):a()});y(()=>{let e=R.current;(n.transitionStatus===`starting`||e!==n.id)&&(e!==void 0&&(_(void 0),O({x:0,y:0,scale:1}),Q({x:0,y:0})),R.current=n.id,Z())},[Z,n.id,n.transitionStatus]);function Q(e){ie.current=e,te(e)}y(()=>()=>{q.current?.abort()},[]);function Se(e,t){let n=e=>e>0?e**_e:-(Math.abs(e)**_e),r=e>0&&!m.includes(`right`)||e<0&&!m.includes(`left`),i=t>0&&!m.includes(`down`)||t<0&&!m.includes(`up`);return{x:r?n(e):e,y:i?n(t):t}}let $=x(e=>{if(e.pointerId!==K.current)return;K.current=null,q.current?.abort(),q.current=null,b(!1),w(!1),P(null);let t=B.current;if(e.type===`pointercancel`||U.current){Q({x:t.x,y:t.y}),_(void 0);return}let r=ie.current,i=r.x-t.x,a=r.y-t.y,o;for(let e of m)if(ce(e,i,a)>he){o=e;break}o?(_(o),g.closeToast(n.id)):(Q({x:t.x,y:t.y}),_(void 0))});function Ce(e){if(e.button!==0||(e.pointerType===`touch`&&g.pauseTimers(),s(e.nativeEvent)?.closest(`button,a,input,textarea,[role="button"],${ye}`)))return;U.current=!1,V.current=void 0,H.current=0,K.current=e.pointerId,z.current={x:e.clientX,y:e.clientY},W.current=z.current;let t=e.currentTarget,n=se(t);B.current=n,O(n),Q({x:n.x,y:n.y}),g.set(`hovering`,!0),b(!0),w(!1),P(null),re.current=!0,q.current?.abort();let r=new AbortController;q.current=r;let a=i(t);a.addEventListener(`pointerup`,$,{signal:r.signal}),a.addEventListener(`pointercancel`,$,{signal:r.signal}),t.setPointerCapture?.(e.pointerId)}function we(e){if(e.pointerId!==K.current)return;e.preventDefault(),re.current&&=(z.current={x:e.clientX,y:e.clientY},!1);let{clientY:t,clientX:n,movementX:r,movementY:i}=e;(i<0&&t>W.current.y||i>0&&t<W.current.y)&&(W.current={x:W.current.x,y:t}),(r<0&&n>W.current.x||r>0&&n<W.current.x)&&(W.current={x:n,y:W.current.y});let a=n-z.current.x,o=t-z.current.y,s=t-W.current.y,c=n-W.current.x,l=N;if(!S&&Math.sqrt(a*a+o*o)>=ve){w(!0);let e=m.includes(`left`)||m.includes(`right`),t=m.includes(`up`)||m.includes(`down`);e&&t&&(l=Math.abs(a)>Math.abs(o)?`horizontal`:`vertical`,P(l))}let u;if(!V.current)l===`vertical`?o>0?u=`down`:o<0&&(u=`up`):l===`horizontal`?a>0?u=`right`:a<0&&(u=`left`):u=Math.abs(a)>=Math.abs(o)?a>0?`right`:`left`:o>0?`down`:`up`,u&&m.includes(u)&&(V.current=u,H.current=ce(u,a,o),_(u));else{let e=V.current,t=ce(e,c,s);t>he?(U.current=!1,_(e)):!(m.includes(`left`)&&m.includes(`right`))&&!(m.includes(`up`)&&m.includes(`down`))&&H.current-t>=ge&&(U.current=!0)}let d=Se(a,o),f=B.current.x,p=B.current.y,h=m.includes(`left`)||m.includes(`right`),g=m.includes(`up`)||m.includes(`down`);l!==`vertical`&&h&&(f+=d.x),l!==`horizontal`&&g&&(p+=d.y),Q({x:f,y:p})}function Te(e){if(e.key===`Escape`){if(!I.current||!a(I.current,l(i(I.current))))return;g.closeToast(n.id)}}F.useEffect(()=>{let e=I.current;if(!h||!e)return;function t(t){K.current===null||!a(e,s(t))||t.preventDefault()}return E(e,`touchmove`,t,{passive:!1})},[h]);function Ee(){let e=T.x-D.x,t=T.y-D.y;return{transition:v?`none`:void 0,transform:v?`translateX(${T.x}px) translateY(${T.y}px) scale(${D.scale})`:void 0,[fe]:`${e}px`,[pe]:`${t}px`}}let De=n.priority===`high`,Oe={role:De?`alertdialog`:`dialog`,tabIndex:0,"aria-modal":!1,"aria-labelledby":k,"aria-describedby":j,"aria-hidden":De&&!xe?!0:void 0,onPointerDown:h?Ce:void 0,onPointerMove:h?we:void 0,onPointerUp:h?$:void 0,onPointerCancel:h?$:void 0,onKeyDown:Te,inert:f(n.limited),style:{...Ee(),[le]:n.transitionStatus===`ending`?J:Y,[ue]:`${be}px`,[de]:n.height?`${n.height}px`:void 0}},ke=F.useMemo(()=>({toast:n,setTitleId:A,setDescriptionId:M,recalculateHeight:Z,visibleIndex:Y,expanded:X}),[n,A,M,Z,Y,X]),Ae={transitionStatus:n.transitionStatus,expanded:X,limited:n.limited||!1,type:n.type,swiping:v,swipeDirection:ee},je=C(`div`,e,{ref:[t,I],state:Ae,stateAttributesMapping:me,props:[Oe,d]});return(0,G.jsx)(oe.Provider,{value:ke,children:je})}),xe=F.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,{visibleIndex:o,expanded:s,recalculateHeight:c}=J(),l=F.useRef(null);return y(()=>{c();let e=l.current;if(!e||typeof ResizeObserver!=`function`||typeof MutationObserver!=`function`)return;let t=new ResizeObserver(()=>c(!0)),n=new MutationObserver(()=>c(!0));return t.observe(e),n.observe(e,{childList:!0,subtree:!0,characterData:!0}),()=>{t.disconnect(),n.disconnect()}},[c]),C(`div`,e,{ref:[t,l],state:{expanded:s,behind:o>0},props:a})});function X(e){return e==null||typeof e==`boolean`||e===``?!1:!Array.isArray(e)||e.some(X)}function Z(e){return F.isValidElement(e)&&X(e.props.children)}function Q(e,t,n){let{toast:r,setTitleId:i,setDescriptionId:a}=J(),o=n===`title`?i:a,s=t??(n===`title`?r.title:r.description);return{id:D(e),children:s,type:r.type,setId:o}}function Se(e,t,n){let r=Z(e);return y(()=>{if(r)return n(t),()=>{n(e=>e===t?void 0:e)}},[r,t,n]),r?e:null}var $=F.forwardRef(function(e,t){let{render:n,className:r,style:i,id:a,children:o,...s}=e,{id:c,children:l,type:u,setId:d}=Q(a,o,`description`);return Se(C(`p`,e,{ref:t,state:{type:u},props:{...s,id:c,children:l}}),c,d)}),Ce=F.forwardRef(function(e,t){let{render:n,className:r,style:i,id:a,children:o,...s}=e,{id:c,children:l,type:u,setId:d}=Q(a,o,`title`);return Se(C(`h2`,e,{ref:t,state:{type:u},props:{...s,id:c,children:l}}),c,d)}),we=F.forwardRef(function(e,t){let{render:n,className:r,style:i,disabled:a,nativeButton:o=!0,...s}=e,c=L(),{toast:l,expanded:u}=J(),[d,f]=F.useState(!1),{getButtonProps:p,buttonRef:m}=T({disabled:a,native:o}),h={type:l.type};return C(`button`,e,{ref:[t,m],state:h,props:[{"aria-hidden":!u&&!d,onClick(){c.closeToast(l.id)},onFocus(){f(!0)},onBlur(){f(!1)}},s,p]})}),Te=F.forwardRef(function(e,t){let{render:n,className:r,style:i,disabled:a,nativeButton:o=!0,...s}=e,{toast:c}=J(),l=c.actionProps?.children??s.children,{getButtonProps:u,buttonRef:d}=T({disabled:a,native:o}),f={type:c.type},p=C(`button`,e,{ref:[t,d],state:f,props:[s,c.actionProps,u,{children:l}]});return Z(p)?p:null}),Ee=F.forwardRef(function(e,t){let{children:n,container:r,className:i,render:a,style:o,...s}=e,{node:c,subtree:l}=g({container:r,ref:t,componentProps:e,elementProps:s});return!l&&!c?null:(0,G.jsxs)(F.Fragment,{children:[l,c&&ae.createPortal(n,c)]})}),De=F.forwardRef(function(e,t){return(0,G.jsx)(Ee,{ref:t,...e})});function Oe(){let e=L(),t=e.useState(`toasts`);return F.useMemo(()=>({toasts:t,add:e.addToast,close:e.closeToast,update:e.updateToast,promise:e.promiseToast}),[t,e])}function ke(){let e=new Set;function t(t){e.forEach(e=>e(t))}return{" subscribe":function(t){return e.add(t),()=>{e.delete(t)}},add(e){let n=e.id||z(`toast`);return t({action:`add`,options:{...e,id:n,transitionStatus:`starting`}}),n},close(e){t({action:`close`,options:{id:e}})},update(e,n){t({action:`update`,options:{id:e,updates:n}})},promise(e,n){let r=e;return t({action:`promise`,options:{...n,promise:e,setPromise(e){r=e}}}),r}}}var Ae={name:`info`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 16v-4`,key:`1dtifu`}],[`path`,{d:`M12 8h.01`,key:`e9boi3`}]]};Ae.node;var je=k(Ae),Me={name:`octagon-x`,size:24,node:[[`path`,{d:`m15 9-6 6`,key:`1uzhvr`}],[`path`,{d:`M2.586 16.726A2 2 0 0 1 2 15.312V8.688a2 2 0 0 1 .586-1.414l4.688-4.688A2 2 0 0 1 8.688 2h6.624a2 2 0 0 1 1.414.586l4.688 4.688A2 2 0 0 1 22 8.688v6.624a2 2 0 0 1-.586 1.414l-4.688 4.688a2 2 0 0 1-1.414.586H8.688a2 2 0 0 1-1.414-.586z`,key:`2d38gg`}],[`path`,{d:`m9 9 6 6`,key:`z0biqf`}]],aliases:[`x-octagon`]};Me.node;var Ne=k(Me),Pe=ke();function Fe({...e}){return(0,G.jsx)(re,{...e})}function Ie({...e}){return(0,G.jsx)(De,{"data-slot":`toast-portal`,...e})}function Le({className:e,...t}){return(0,G.jsx)(q,{"data-slot":`toast-viewport`,className:v(`pointer-events-none fixed inset-x-4 bottom-4 z-50 mx-auto w-auto max-w-sm outline-none sm:right-4 sm:left-auto sm:mx-0 sm:w-full`,e),...t})}function Re({className:e,...t}){return(0,G.jsx)(be,{"data-slot":`toast`,className:v(`group/toast pointer-events-auto absolute right-0 bottom-0 z-[calc(1000-var(--toast-index))] w-full origin-bottom rounded-2xl text-popover-foreground will-change-transform outline-none select-none focus-visible:ring-[3px] focus-visible:ring-ring/50`,`bg-surface-3 shadow-surface-3`,`[--gap:0.75rem] [--height:var(--toast-frontmost-height,var(--toast-height))] [--offset-y:calc(var(--toast-offset-y)*-1+calc(var(--toast-index)*var(--gap)*-1)+var(--toast-swipe-movement-y))] [--peek:0.75rem] [--scale:calc(max(0,1-(var(--toast-index)*0.1)))] [--shrink:calc(1-var(--scale))]`,`h-(--height) [transform:translateX(var(--toast-swipe-movement-x))_translateY(calc(var(--toast-swipe-movement-y)-(var(--toast-index)*var(--peek))-(var(--shrink)*var(--height))))_scale(var(--scale))] [transition:transform_500ms_cubic-bezier(0.22,1,0.36,1),opacity_500ms,height_150ms]`,`after:absolute after:top-full after:left-0 after:h-[calc(var(--gap)+1px)] after:w-full after:content-['']`,`data-expanded:h-(--toast-height) data-expanded:[transform:translateX(var(--toast-swipe-movement-x))_translateY(var(--offset-y))]`,`data-limited:opacity-0 data-starting-style:[transform:translateY(150%)]`,`[&[data-ending-style]:not([data-limited]):not([data-swipe-direction])]:[transform:translateY(150%)]`,`data-ending-style:data-[swipe-direction=down]:[transform:translateY(calc(var(--toast-swipe-movement-y)+150%))]`,`data-ending-style:data-[swipe-direction=left]:[transform:translateX(calc(var(--toast-swipe-movement-x)-150%))_translateY(var(--offset-y))]`,`data-ending-style:data-[swipe-direction=right]:[transform:translateX(calc(var(--toast-swipe-movement-x)+150%))_translateY(var(--offset-y))]`,`data-ending-style:data-[swipe-direction=up]:[transform:translateY(calc(var(--toast-swipe-movement-y)-150%))]`,`data-expanded:data-ending-style:data-[swipe-direction=down]:[transform:translateY(calc(var(--toast-swipe-movement-y)+150%))]`,`data-expanded:data-ending-style:data-[swipe-direction=left]:[transform:translateX(calc(var(--toast-swipe-movement-x)-150%))_translateY(var(--offset-y))]`,`data-expanded:data-ending-style:data-[swipe-direction=right]:[transform:translateX(calc(var(--toast-swipe-movement-x)+150%))_translateY(var(--offset-y))]`,`data-expanded:data-ending-style:data-[swipe-direction=up]:[transform:translateY(calc(var(--toast-swipe-movement-y)-150%))]`,e),...t})}function ze({className:e,...t}){return(0,G.jsx)(xe,{"data-slot":`toast-content`,className:v(`flex h-full items-center gap-3 overflow-hidden p-4 transition-opacity duration-250 ease-[cubic-bezier(0.22,1,0.36,1)] data-behind:opacity-0 data-expanded:opacity-100`,e),...t})}function Be({className:e,...t}){return(0,G.jsx)(Ce,{"data-slot":`toast-title`,className:v(`text-sm font-medium`,e),...t})}function Ve({className:e,...t}){return(0,G.jsx)($,{"data-slot":`toast-description`,className:v(`text-sm text-muted-foreground`,e),...t})}function He({className:e,render:t=(0,G.jsx)(P,{variant:`outline`,size:`compact`}),...n}){return(0,G.jsx)(Te,{"data-slot":`toast-action`,render:t,className:v(`shrink-0`,e),...n})}function Ue({className:e,children:t,render:n=(0,G.jsx)(P,{variant:`ghost`,size:`icon-compact`}),...r}){return(0,G.jsx)(we,{"data-slot":`toast-close`,"aria-label":`Close toast`,render:n,className:v(`relative shrink-0 text-muted-foreground after:absolute after:-inset-2 after:content-[''] hover:text-foreground`,e),...r,children:t??(0,G.jsx)(N,{"aria-hidden":`true`})})}function We({type:e}){let t=null;return e===`success`&&(t=(0,G.jsx)(A,{"aria-hidden":`true`})),e===`info`&&(t=(0,G.jsx)(je,{"aria-hidden":`true`})),e===`warning`&&(t=(0,G.jsx)(M,{"aria-hidden":`true`})),e===`error`&&(t=(0,G.jsx)(Ne,{className:`text-destructive`,"aria-hidden":`true`})),e===`loading`&&(t=(0,G.jsx)(j,{className:`animate-spin`,"aria-hidden":`true`})),t?(0,G.jsx)(`span`,{"data-slot":`toast-icon`,className:`shrink-0 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4`,children:t}):null}function Ge(){let{toasts:e}=Oe();return e.map(e=>(0,G.jsx)(Re,{toast:e,children:(0,G.jsxs)(ze,{children:[(0,G.jsx)(We,{type:e.type}),(0,G.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-1`,children:[(0,G.jsx)(Be,{}),(0,G.jsx)(Ve,{})]}),(0,G.jsx)(He,{}),(0,G.jsx)(Ue,{})]})},e.id))}function Ke({children:e,toastManager:t=Pe,...n}){return(0,G.jsxs)(Fe,{toastManager:t,...n,children:[e,(0,G.jsx)(Ie,{children:(0,G.jsx)(Le,{children:(0,G.jsx)(Ge,{})})})]})}export{Pe as n,je as r,Ke as t};
|