tarsk 0.5.62 → 0.5.63

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (78) hide show
  1. package/dist/index.js +1380 -785
  2. package/dist/public/assets/{account-view-D2h4wMCJ.js → account-view-DPMOlh3s.js} +1 -1
  3. package/dist/public/assets/{alert-dialog-BpJafkQ6.js → alert-dialog-tR8jdoK3.js} +1 -1
  4. package/dist/public/assets/{api-DkhEo8tW.js → api-D3kM9pkY.js} +1 -1
  5. package/dist/public/assets/{async-error-boundary-DR57nNXL.js → async-error-boundary-D2YxNX8i.js} +1 -1
  6. package/dist/public/assets/{browser-tab-B15D-jTw.js → browser-tab-DBH__fWh.js} +2 -2
  7. package/dist/public/assets/{chat-dock-context-4ZMIlxAn.js → chat-dock-context-DX0woD8r.js} +1 -1
  8. package/dist/public/assets/{commit-dialog-CQH8QaWp.js → commit-dialog-vGBCFWUk.js} +1 -1
  9. package/dist/public/assets/{commit-method-fields-DYBEHZAP.js → commit-method-fields-CENlG_Jk.js} +1 -1
  10. package/dist/public/assets/{context-menu-cv7nzOcn.js → context-menu-D6nrl6uV.js} +1 -1
  11. package/dist/public/assets/{conversation-history-view-BnhR9dL8.js → conversation-history-view-D_Umzlgd.js} +1 -1
  12. package/dist/public/assets/{create-project-dialog-DCehjzue.js → create-project-dialog-IjrZazJK.js} +1 -1
  13. package/dist/public/assets/{create-repo-dialog-CVYlw8JI.js → create-repo-dialog-LRokjKAU.js} +1 -1
  14. package/dist/public/assets/{delete-confirm-dialog-DoRgqETX.js → delete-confirm-dialog-Tv1Y9rIn.js} +1 -1
  15. package/dist/public/assets/diff-view-BzR1KSU4.js +4 -0
  16. package/dist/public/assets/explorer-tab-view-BtQAqAoR.js +2 -0
  17. package/dist/public/assets/explorer-tree-gTgMdTOW.js +1 -0
  18. package/dist/public/assets/{explorer-view-B5nGnzAV.js → explorer-view-DhR2CWcz.js} +2 -2
  19. package/dist/public/assets/{git-history-dialog-De7D-B_f.js → git-history-dialog-Do8XlsHv.js} +1 -1
  20. package/dist/public/assets/git-ops-button-BIOoGOW9.js +2 -0
  21. package/dist/public/assets/index-BdDEzAzX.js +3307 -0
  22. package/dist/public/assets/index-zilB0ZSo.css +1 -0
  23. package/dist/public/assets/{mcp-server-card-DofWLHvo.js → mcp-server-card-9_PXQg51.js} +1 -1
  24. package/dist/public/assets/{merged-pr-dialog-CLaSLBzZ.js → merged-pr-dialog-U1CBegRj.js} +1 -1
  25. package/dist/public/assets/{model-list-controls-CRnIzfdp.js → model-list-controls-DGHp3GfD.js} +1 -1
  26. package/dist/public/assets/{monaco-setup-VhLB0diG.js → monaco-setup-Xkv0hjl5.js} +1 -1
  27. package/dist/public/assets/onboarding-_okRJRpU.js +46 -0
  28. package/dist/public/assets/{project-env-vars-view-wQPOiCa_.js → project-env-vars-view-CSk-mKm9.js} +1 -1
  29. package/dist/public/assets/{project-model-aliases-view-CMEFOKJj.js → project-model-aliases-view-D6gdA6SJ.js} +1 -1
  30. package/dist/public/assets/project-settings-view-soRLv3YG.js +1 -0
  31. package/dist/public/assets/{project-tools-view-C7rQgJBp.js → project-tools-view-Bm1kgBnS.js} +1 -1
  32. package/dist/public/assets/providers-list-view-C8euNoea.js +1 -0
  33. package/dist/public/assets/pull-request-dialog-Cy-OBkM4.js +1 -0
  34. package/dist/public/assets/{pull-with-changes-dialog-BIkrgGiK.js → pull-with-changes-dialog-p3MYq6XE.js} +1 -1
  35. package/dist/public/assets/{push-before-pr-dialog-CMGZ4nuF.js → push-before-pr-dialog-DHehHLoc.js} +1 -1
  36. package/dist/public/assets/{react-vendor-DgnPMVt4.js → react-vendor-DM3Nejio.js} +1 -1
  37. package/dist/public/assets/{settings-general-view-W0AXfWxp.js → settings-general-view-B9oGXpm4.js} +1 -1
  38. package/dist/public/assets/{settings-instructions-view-Dd3mwKFL.js → settings-instructions-view-Dgiq0-Fz.js} +1 -1
  39. package/dist/public/assets/{settings-list-Cyr7e0Le.js → settings-list-CdCYY9x_.js} +1 -1
  40. package/dist/public/assets/{settings-logs-view-CGbS3tw4.js → settings-logs-view-BCAw_cxd.js} +1 -1
  41. package/dist/public/assets/settings-mcp-servers-view-Br5owe39.js +5 -0
  42. package/dist/public/assets/settings-models-view--e7dI-H6.js +1 -0
  43. package/dist/public/assets/{settings-rules-view-BnOeQFrJ.js → settings-rules-view-DD0_kkS8.js} +1 -1
  44. package/dist/public/assets/{settings-skills-view-BvvWBK7C.js → settings-skills-view-DDIvFArL.js} +1 -1
  45. package/dist/public/assets/{settings-slack-view-CnCzVPQp.js → settings-slack-view-C0yGN7-a.js} +1 -1
  46. package/dist/public/assets/{settings-slash-commands-view-Ds7RbQGD.js → settings-slash-commands-view-B-Ehi4Vm.js} +1 -1
  47. package/dist/public/assets/{settings-statistics-view-BI6827hL.js → settings-statistics-view-BFsn_ndY.js} +1 -1
  48. package/dist/public/assets/{settings-storage-view-Dp1y_kDe.js → settings-storage-view-3J7APTHD.js} +1 -1
  49. package/dist/public/assets/{settings-subagents-view-Cco1I1-K.js → settings-subagents-view-YFveKNiL.js} +1 -1
  50. package/dist/public/assets/{settings-system-prompt-view-DZKKUgRY.js → settings-system-prompt-view-BR4bBXdt.js} +1 -1
  51. package/dist/public/assets/settings-view-Cg3qC1kg.js +2 -0
  52. package/dist/public/assets/{slug-utils-DVB1L0_r.js → slug-utils-DN3CLvnc.js} +1 -1
  53. package/dist/public/assets/tasks-view-COnDzVI9.js +2 -0
  54. package/dist/public/assets/{terminal-panel-B5SzvdGO.js → terminal-panel-rUTBECZC.js} +1 -1
  55. package/dist/public/assets/{ui-components-CuWavb_S.js → ui-components-BLrzr-Yo.js} +1 -1
  56. package/dist/public/assets/{use-active-dock-panel-instance-CKEkba2q.js → use-active-dock-panel-instance-HODVGwTg.js} +1 -1
  57. package/dist/public/assets/{use-installed-ai-files-CTaDJ775.js → use-installed-ai-files-D_mfpPto.js} +1 -1
  58. package/dist/public/assets/{web-Du8iyq0K.js → web-BGcPHAdQ.js} +1 -1
  59. package/dist/public/assets/{web-CaXKZtWk.js → web-D6UAh7QL.js} +1 -1
  60. package/dist/public/assets/{web-BNUbWWwf.js → web-DMLNawO_.js} +1 -1
  61. package/dist/public/assets/{web-CHZVpVHH.js → web-D_jEgLdF.js} +1 -1
  62. package/dist/public/index.html +7 -7
  63. package/dist/recommended-models.txt +11 -11
  64. package/package.json +2 -1
  65. package/dist/public/assets/diff-view-B1xi9U57.js +0 -4
  66. package/dist/public/assets/explorer-tab-view-DssrHe9f.js +0 -2
  67. package/dist/public/assets/explorer-tree-B2SnBNoL.js +0 -1
  68. package/dist/public/assets/git-ops-button-DJYzg_I5.js +0 -2
  69. package/dist/public/assets/index-3N_2bBI0.css +0 -1
  70. package/dist/public/assets/index-cAZJlfDA.js +0 -3307
  71. package/dist/public/assets/onboarding-Dy7KG3M5.js +0 -46
  72. package/dist/public/assets/project-settings-view-BeKBKcaZ.js +0 -1
  73. package/dist/public/assets/providers-list-view-DqSw6lqh.js +0 -1
  74. package/dist/public/assets/pull-request-dialog-CX10DwW3.js +0 -1
  75. package/dist/public/assets/settings-mcp-servers-view-C3IkdzkJ.js +0 -5
  76. package/dist/public/assets/settings-models-view-DV2YF3YN.js +0 -1
  77. package/dist/public/assets/settings-view-Ckzg0maK.js +0 -2
  78. package/dist/public/assets/tasks-view-tS75bdWk.js +0 -2
@@ -0,0 +1,46 @@
1
+ import{i as e,n as t,t as n}from"./rolldown-runtime-aKtaBQYM.js";import{Bn as r,Ci as i,Fr as a,Jn as o,Lr as s,Pr as c,Qt as l,Sn as u,Ti as d,Tn as f,Xt as p,Zt as m,a as h,ai as g,br as _,dn as v,f as y,hn as b,i as x,l as S,mn as C,mt as w,rr as T,tn as E,un as D,wi as O,xr as k,yt as A,z as j,zr as M}from"./interactive-WtOIgeV4.js";var N=n((e=>{var t=d();function n(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n])}return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}function r(){}var i={d:{f:r,r:function(){throw Error(n(522))},D:r,C:r,L:r,m:r,X:r,S:r,M:r},p:0,findDOMNode:null},a=Symbol.for(`react.portal`);function o(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:a,key:r==null?null:``+r,children:e,containerInfo:t,implementation:n}}var s=t.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function c(e,t){if(e===`font`)return``;if(typeof t==`string`)return t===`use-credentials`?t:``}e.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=i,e.createPortal=function(e,t){var r=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)throw Error(n(299));return o(e,t,null,r)},e.flushSync=function(e){var t=s.T,n=i.p;try{if(s.T=null,i.p=2,e)return e()}finally{s.T=t,i.p=n,i.d.f()}},e.preconnect=function(e,t){typeof e==`string`&&(t?(t=t.crossOrigin,t=typeof t==`string`?t===`use-credentials`?t:``:void 0):t=null,i.d.C(e,t))},e.prefetchDNS=function(e){typeof e==`string`&&i.d.D(e)},e.preinit=function(e,t){if(typeof e==`string`&&t&&typeof t.as==`string`){var n=t.as,r=c(n,t.crossOrigin),a=typeof t.integrity==`string`?t.integrity:void 0,o=typeof t.fetchPriority==`string`?t.fetchPriority:void 0;n===`style`?i.d.S(e,typeof t.precedence==`string`?t.precedence:void 0,{crossOrigin:r,integrity:a,fetchPriority:o}):n===`script`&&i.d.X(e,{crossOrigin:r,integrity:a,fetchPriority:o,nonce:typeof t.nonce==`string`?t.nonce:void 0})}},e.preinitModule=function(e,t){if(typeof e==`string`)if(typeof t==`object`&&t){if(t.as==null||t.as===`script`){var n=c(t.as,t.crossOrigin);i.d.M(e,{crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0})}}else t??i.d.M(e)},e.preload=function(e,t){if(typeof e==`string`&&typeof t==`object`&&t&&typeof t.as==`string`){var n=t.as,r=c(n,t.crossOrigin);i.d.L(e,n,{crossOrigin:r,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0,type:typeof t.type==`string`?t.type:void 0,fetchPriority:typeof t.fetchPriority==`string`?t.fetchPriority:void 0,referrerPolicy:typeof t.referrerPolicy==`string`?t.referrerPolicy:void 0,imageSrcSet:typeof t.imageSrcSet==`string`?t.imageSrcSet:void 0,imageSizes:typeof t.imageSizes==`string`?t.imageSizes:void 0,media:typeof t.media==`string`?t.media:void 0})}},e.preloadModule=function(e,t){if(typeof e==`string`)if(t){var n=c(t.as,t.crossOrigin);i.d.m(e,{as:typeof t.as==`string`&&t.as!==`script`?t.as:void 0,crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0})}else i.d.m(e)},e.requestFormReset=function(e){i.d.r(e)},e.unstable_batchedUpdates=function(e,t){return e(t)},e.useFormState=function(e,t,n){return s.H.useFormState(e,t,n)},e.useFormStatus=function(){return s.H.useHostTransitionStatus()},e.version=`19.2.4`})),P=n(((e,t)=>{function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>`u`||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!=`function`))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=N()})),F=O(),I=e(d(),1);function ee(e,t){if(typeof e==`function`)return e(t);e!=null&&(e.current=t)}function te(...e){return t=>{let n=!1,r=e.map(e=>{let r=ee(e,t);return!n&&typeof r==`function`&&(n=!0),r});if(n)return()=>{for(let t=0;t<r.length;t++){let n=r[t];typeof n==`function`?n():ee(e[t],null)}}}}function L(...e){return I.useCallback(te(...e),e)}var R=i(),ne=Symbol.for(`react.lazy`),re=I.use;function ie(e){return typeof e==`object`&&!!e&&`then`in e}function ae(e){return typeof e==`object`&&!!e&&`$$typeof`in e&&e.$$typeof===ne&&`_payload`in e&&ie(e._payload)}function oe(e){let t=ce(e),n=I.forwardRef((e,n)=>{let{children:r,...i}=e;ae(r)&&typeof re==`function`&&(r=re(r._payload));let a=I.Children.toArray(r),o=a.find(ue);if(o){let e=o.props.children,r=a.map(t=>t===o?I.Children.count(e)>1?I.Children.only(null):I.isValidElement(e)?e.props.children:null:t);return(0,R.jsx)(t,{...i,ref:n,children:I.isValidElement(e)?I.cloneElement(e,void 0,r):null})}return(0,R.jsx)(t,{...i,ref:n,children:r})});return n.displayName=`${e}.Slot`,n}var se=oe(`Slot`);function ce(e){let t=I.forwardRef((e,t)=>{let{children:n,...r}=e;if(ae(n)&&typeof re==`function`&&(n=re(n._payload)),I.isValidElement(n)){let e=fe(n),i=de(r,n.props);return n.type!==I.Fragment&&(i.ref=t?te(t,e):e),I.cloneElement(n,i)}return I.Children.count(n)>1?I.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var le=Symbol(`radix.slottable`);function ue(e){return I.isValidElement(e)&&typeof e.type==`function`&&`__radixId`in e.type&&e.type.__radixId===le}function de(e,t){let n={...t};for(let r in t){let i=e[r],a=t[r];/^on[A-Z]/.test(r)?i&&a?n[r]=(...e)=>{let t=a(...e);return i(...e),t}:i&&(n[r]=i):r===`style`?n[r]={...i,...a}:r===`className`&&(n[r]=[i,a].filter(Boolean).join(` `))}return{...e,...n}}function fe(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}var pe=e=>typeof e==`boolean`?`${e}`:e===0?`0`:e,me=S,he=(e,t)=>n=>{if(t?.variants==null)return me(e,n?.class,n?.className);let{variants:r,defaultVariants:i}=t,a=Object.keys(r).map(e=>{let t=n?.[e],a=i?.[e];if(t===null)return null;let o=pe(t)||pe(a);return r[e][o]}),o=n&&Object.entries(n).reduce((e,t)=>{let[n,r]=t;return r===void 0||(e[n]=r),e},{});return me(e,a,t?.compoundVariants?.reduce((e,t)=>{let{class:n,className:r,...a}=t;return Object.entries(a).every(e=>{let[t,n]=e;return Array.isArray(n)?n.includes({...i,...o}[t]):{...i,...o}[t]===n})?[...e,n,r]:e},[]),n?.class,n?.className)},ge=he(`inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-full ${a.body} font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0`,{variants:{variant:{default:`bg-primary text-primary-foreground hover:bg-primary/90`,destructive:`bg-destructive text-destructive-foreground hover:bg-destructive/90`,outline:`border border-input bg-background hover:bg-accent hover:text-accent-foreground`,secondary:`bg-secondary text-secondary-foreground hover:bg-secondary/80`,ghost:`hover:bg-foreground hover:text-background transition-colors`,action:`text-muted-foreground hover:bg-foreground hover:text-background transition-colors`,link:`text-primary underline-offset-4 hover:underline`},size:{default:`h-10 px-6 py-3`,sm:`h-9 rounded-full px-4`,lg:`h-11 rounded-full px-10`,icon:`h-10 w-10 [&_svg]:size-5`,"icon-md":`h-8 w-8 [&_svg]:size-4`,"icon-sm":`h-7 w-7 [&_svg]:size-4`,"icon-xs":`h-5 w-5 [&_svg]:size-3`}},defaultVariants:{variant:`default`,size:`default`}}),_e=I.forwardRef((e,t)=>{let n=(0,F.c)(15),r,i,a,o,s;n[0]===e?(r=n[1],i=n[2],a=n[3],o=n[4],s=n[5]):({className:r,variant:s,size:a,asChild:o,...i}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a,n[4]=o,n[5]=s);let c=o!==void 0&&o?se:`button`,l;n[6]!==r||n[7]!==a||n[8]!==s?(l=x(ge({variant:s,size:a,className:r})),n[6]=r,n[7]=a,n[8]=s,n[9]=l):l=n[9];let u;return n[10]!==c||n[11]!==i||n[12]!==t||n[13]!==l?(u=(0,R.jsx)(c,{className:l,ref:t,...i}),n[10]=c,n[11]=i,n[12]=t,n[13]=l,n[14]=u):u=n[14],u});_e.displayName=`Button`;var ve=e(P(),1),ye=function(e){return e.PACKAGE_MANAGER=`tarsk.create-project.packageManager`,e.COMMIT_METHOD=`tarsk.create-project.commitMethod`,e.TEMPLATE_ID=`tarsk.create-project.templateId`,e.AUTO_GENERATE_COMMIT_MESSAGE=`autoGenerateCommitMessage`,e.AUTO_GENERATE_PR_INFO=`autoGeneratePRInfo`,e.CREATE_BRANCH_AFTER_PR=`createBranchAfterPR`,e.PRIVATE_REPOSITORY_DEFAULT=`privateRepositoryDefault`,e.NEW_CHAT_ON_NEW_BRANCH=`newChatOnNewBranch`,e.SELECTED_MODEL_PREFIX=`selected-model-`,e.SCROLL_POSITION_PREFIX=`scroll-position-`,e.FONT_SCALE=`tarsk.general.fontScale`,e.FROSTED_PANEL_OPACITY=`tarsk.general.frostedPanelOpacity`,e.IMAGE_BACKGROUND=`tarsk.general.imageBackground`,e.WALLPAPER_MODE=`tarsk.general.wallpaperMode`,e.WALLPAPER_COLOR=`tarsk.general.wallpaperColor`,e.BRAND_COLOR=`tarsk.general.brandColor`,e.OPEN_WITH_PROGRAM=`tarsk.general.openWithProgram`,e.SERVER_URL=`tarsk.server.url`,e.SERVER_BIND_MODE=`tarsk.general.serverBindMode`,e.HISTORY_COLUMNS=`tarsk.settings.historyColumns`,e}({}),be=function(e){return e.MESSAGE_HISTORY=`chat_message_history`,e.BASH_COMMAND_DURATIONS=`tarsk.bash-command-durations`,e.SKILL_CATALOG_PREFIX=`tarsk.skills.catalog.`,e.SKILL_SOURCE_SELECTION=`tarsk.skills.selectedSource`,e}({});function z(e){return typeof localStorage>`u`?null:localStorage.getItem(e)}function B(e,t){typeof localStorage>`u`||localStorage.setItem(e,t)}function xe(e){return typeof sessionStorage>`u`?null:sessionStorage.getItem(e)}function Se(e,t){typeof sessionStorage>`u`||sessionStorage.setItem(e,t)}function Ce(e=`npm`){return z(`tarsk.create-project.packageManager`)??e}function we(e){B(`tarsk.create-project.packageManager`,e)}function Te(e=`pull-request`){return z(`tarsk.create-project.commitMethod`)??e}function Ee(e){B(`tarsk.create-project.commitMethod`,e)}function De(e=``){return z(`tarsk.create-project.templateId`)??e}function Oe(e){B(`tarsk.create-project.templateId`,e)}function ke(e=!1){let t=z(`autoGenerateCommitMessage`);return t===null?e:t===`true`}function Ae(e){B(`autoGenerateCommitMessage`,e.toString())}function je(e=!1){let t=z(`autoGeneratePRInfo`);return t===null?e:t===`true`}function Me(e){B(`autoGeneratePRInfo`,e.toString())}function Ne(e=!1){let t=z(`createBranchAfterPR`);return t===null?e:t===`true`}function Pe(e){B(`createBranchAfterPR`,e.toString())}function Fe(e=!1){let t=z(`privateRepositoryDefault`);return t===null?e:t===`true`}function Ie(e){B(`privateRepositoryDefault`,e.toString())}function Le(e=!1){let t=z(`newChatOnNewBranch`);return t===null?e:t===`true`}function Re(e){B(`newChatOnNewBranch`,e.toString())}function ze(e){let t=z(`scroll-position-`+e),n=t===null?null:Number(t);return n!==null&&Number.isFinite(n)?n:null}function Be(e,t){B(`scroll-position-`+e,String(t))}function Ve(){let e=xe(`chat_message_history`);return e?JSON.parse(e):[]}function He(e){let t=Ve();e.trim()&&t[t.length-1]!==e&&(t.push(e),Se(`chat_message_history`,JSON.stringify(t)))}function Ue(e){return typeof sessionStorage>`u`?null:sessionStorage.getItem(e)}function We(e,t){typeof sessionStorage>`u`||sessionStorage.setItem(e,t)}function Ge(e=`default`){return Ue(`tarsk.skills.selectedSource`)??e}function Ke(e){We(`tarsk.skills.selectedSource`,e)}function qe(e){return`tarsk.skills.catalog.${e}`}function Je(e){let t=Ue(qe(e));if(!t)return null;try{return JSON.parse(t)}catch{return null}}function Ye(e,t){We(qe(e),JSON.stringify(t))}function Xe(e){typeof sessionStorage>`u`||sessionStorage.removeItem(qe(e))}var Ze=`tarsk.skills.customSources`;function Qe(){if(typeof localStorage>`u`)return[];let e=localStorage.getItem(Ze);if(!e)return[];try{let t=JSON.parse(e);return Array.isArray(t)?t.filter(e=>typeof e==`object`&&!!e&&typeof e.id==`string`&&typeof e.title==`string`&&typeof e.url==`string`):[]}catch{return[]}}function $e(){typeof localStorage>`u`||localStorage.removeItem(Ze)}function et(e=100){let t=z(`tarsk.general.fontScale`);if(t!==null){let e=Number(t);if(Number.isFinite(e)&&e>=50&&e<=300)return e}return e}function tt(e){B(`tarsk.general.fontScale`,String(e))}function nt(e=80){let t=z(`tarsk.general.frostedPanelOpacity`);if(t!==null){let e=Number(t);if(Number.isFinite(e)&&e>=60&&e<=100)return e}return e}function rt(e){B(`tarsk.general.frostedPanelOpacity`,String(e))}var it=new Set([`image`,`background`,`color`]),at=/^#[0-9a-fA-F]{6}$/,ot=`#1f2937`,st=`#82c309`;function ct(e){return e!==null&&it.has(e)}function lt(e=`background`){let t=z(`tarsk.general.wallpaperMode`);if(ct(t))return t;if(t===`brand`)return`background`;let n=z(`tarsk.general.imageBackground`);return n===`false`?`background`:n===`true`?`image`:e}function ut(e){B(`tarsk.general.wallpaperMode`,e)}function dt(e=ot){let t=z(`tarsk.general.wallpaperColor`);return t!==null&&at.test(t)?t:e}function ft(e){at.test(e)&&B(`tarsk.general.wallpaperColor`,e.toLowerCase())}function pt(e=st){let t=z(`tarsk.general.brandColor`);return t!==null&&at.test(t)?t:e}function mt(e){at.test(e)&&B(`tarsk.general.brandColor`,e.toLowerCase())}function ht(e=`VS Code`){return z(`tarsk.general.openWithProgram`)??e}function gt(e){B(`tarsk.general.openWithProgram`,e)}function _t(e){if(!e||typeof e!=`object`)return!1;let t=e;return typeof t.fetchedAt==`number`&&(t.serverBindMode===`local`||t.serverBindMode===`network`)&&Array.isArray(t.networkAddresses)&&t.networkAddresses.every(e=>typeof e==`string`)}function vt(){let e=z(`tarsk.general.serverBindMode`);if(!e)return null;try{let t=JSON.parse(e);return _t(t)?t:null}catch{return null}}function yt(e){B(`tarsk.general.serverBindMode`,JSON.stringify({...e,fetchedAt:e.fetchedAt??Date.now()}))}function bt(){return typeof window>`u`?null:window.Capacitor?.getPlatform?.()??null}function xt(){return Et()&&bt()===`ios`}function St(){return z(ye.SERVER_URL)}function Ct(e){B(ye.SERVER_URL,e)}function wt(e){try{return new URL(e).hostname}catch{return``}}function Tt(e){let t=e.trim();if(!t)return``;let n=t.replace(/^https?:\/\//,``).split(`/`)[0]?.split(`:`)[0]??``;return n?`http://${n}:641`:``}function Et(){if(typeof window>`u`)return!1;if(window.Capacitor?.isNativePlatform?.())return!0;let e=window.location.protocol;return e===`capacitor:`||e===`ionic:`||e===`file:`}function Dt(){let e=St();if(e){let t=wt(e);if(t)return t}return Et()?``:document.location.hostname}async function Ot(e){try{return(await fetch(`${e.replace(/\/$/,``)}/health`,{method:`GET`})).ok}catch{return!1}}function kt(e){let t=Tt(e);if(t){if(Et()){Ct(t),window.location.reload();return}window.location.assign(t)}}function At(){return typeof window<`u`&&`__electrobunWebviewId`in window}function jt(){return typeof document<`u`&&document.location.port===`8100`}function Mt(){if(typeof document>`u`)return null;let{hostname:e,port:t,protocol:n}=document.location;return!t||n!==`http:`&&n!==`https:`?null:`${n}//${e}:${t}`}function Nt(){if(typeof document>`u`)return`http://localhost:641`;let{hostname:e,port:t}=document.location;return t===`8100`?`http://${e}:462`:Mt()||`http://${e}:641`}function Pt(){if(At()){let e=Mt();if(e)return e}if(!Et())return Nt();let e=St();return e?e.replace(/\/$/,``):Nt()}function V(e){let t=e.startsWith(`/`)?e:`/${e}`;return`${Pt()}${t}`}function Ft(e){if(!e)return`Unknown error`;if(typeof e.error==`string`)return e.error.trim()||`Unknown error`;if(e.error&&typeof e.error==`object`){let t=e.error.message;if(typeof t==`string`&&t.trim())return t.trim();let n=e.error.details;return typeof n==`string`&&n.trim()?n.trim():`Unknown error`}return`Unknown error`}async function H(e){try{return Ft(await e.json())}catch{}return e.statusText||`Unknown error`}function It(e,t,n){let r=Error(e);return n?.error&&typeof n.error==`object`&&(r.details=n.error.details,r.code=n.error.code),r}async function Lt(e,t){let n=await fetch(V(e),{...t,method:`GET`});if(!n.ok){let e=await H(n);throw Error(e)}return n.blob()}async function U(e,t){let n=await fetch(V(e),{...t,method:`GET`});if(!n.ok){let e=await H(n);throw Error(e)}return n.json()}async function W(e,t,n){let r=await fetch(V(e),{...n,method:`POST`,headers:{"Content-Type":`application/json`,...n?.headers},body:t?JSON.stringify(t):void 0});if(!r.ok){let e=await H(r);throw Error(e)}return r.json()}async function Rt(e,t,n){let r=await fetch(V(e),{...n,method:`POST`,headers:{"Content-Type":`application/json`,...n?.headers},body:t?JSON.stringify(t):void 0});if(!r.ok){let e=await H(r);throw Error(e)}return r.blob()}async function zt(e,t,n){let r=await fetch(V(e),{...n,method:`POST`,headers:{"Content-Type":`application/octet-stream`,...n?.headers},body:t});if(!r.ok){let e=await H(r);throw Error(e)}return r.json()}async function Bt(e,t,n){let r=await fetch(V(e),{...n,method:`PUT`,headers:{"Content-Type":`application/json`,...n?.headers},body:t?JSON.stringify(t):void 0});if(!r.ok){let e=await H(r);throw Error(e)}return r.json()}async function Vt(e,t,n){let r=await fetch(V(e),{...n,method:`PATCH`,headers:{"Content-Type":`application/json`,...n?.headers},body:t?JSON.stringify(t):void 0});if(!r.ok){let e=await H(r);throw Error(e)}return r.json()}async function Ht(e,t,n){let r=await fetch(V(e),{...n,method:`PUT`,headers:{"Content-Type":`application/json`,...n?.headers},body:t?JSON.stringify(t):void 0});if(!r.ok){let e=await H(r);throw Error(e)}return r.body}async function G(e,t){let n=await fetch(V(e),{...t,method:`DELETE`});if(!n.ok){let e=await H(n);throw Error(e)}if(n.status!==204)return n.json()}async function Ut(e,t){let n=await fetch(V(e),{...t,method:`DELETE`});if(!n.ok){let e=await H(n);throw Error(e)}return n.body}async function Wt(e,t,n){let r=await fetch(V(e),{...n,method:`POST`,headers:{"Content-Type":`application/json`,...n?.headers},body:t?JSON.stringify(t):void 0,signal:n?.signal});if(!r.ok){let e=await H(r);throw Error(e)}return r.body}async function Gt(e,t){let n=await fetch(V(e),{...t,method:`GET`});if(!n.ok){let e=await H(n);throw Error(e)}return n.body}async function Kt(e,t,n){let r=await fetch(V(e),{...n,method:`POST`,headers:{"Content-Type":`application/json`,...n?.headers},body:t?JSON.stringify(t):void 0});if(!r.ok){let e;try{e=await r.json()}catch{}throw It(Ft(e)||r.statusText||`Unknown error`,r,e)}return r.json()}async function qt(e,t,n){let r=await fetch(V(e),{...n,method:`PUT`,headers:{"Content-Type":`application/json`,...n?.headers},body:t?JSON.stringify(t):void 0});if(!r.ok){let e;try{e=await r.json()}catch{}throw It(Ft(e)||r.statusText||`Unknown error`,r,e)}return r.json()}function K(...e){return e.map(e=>encodeURIComponent(String(e))).join(`/`)}var Jt=o(`gitops.ttl-cache`),q=new class{cache=new Map;inFlightRequests=new Map;generations=new Map;async get(e,t,n){let r=e.startsWith(`unified-git-status-`),i=r?performance.now():0,a=this.inFlightRequests.get(e);if(a)return r&&Jt.debug(`in-flight-reuse`,{key:e}),a;let o=this.cache.get(e);if(o&&Date.now()<o.expires){if(r){let t=Math.round(performance.now()-i);Jt.debug(`cache hit`,{key:e,duration:t})}return o.data}r&&Jt.debug(`cache miss, fetching`,{key:e});let s=this.generations.get(e)??0,c=t().then(t=>{if((this.generations.get(e)??0)===s){if(this.cache.set(e,{data:t,expires:Date.now()+n}),r){let t=Math.round(performance.now()-i);Jt.debug(`stored in cache`,{key:e,duration:t})}}else r&&Jt.debug(`skipped stale cache write`,{key:e});return t}).finally(()=>{this.inFlightRequests.get(e)===c&&this.inFlightRequests.delete(e)});return this.inFlightRequests.set(e,c),c}getSync(e){let t=this.cache.get(e);if(t&&Date.now()<t.expires)return t.data}bumpGeneration(e){this.generations.set(e,(this.generations.get(e)??0)+1)}invalidate(e){this.cache.delete(e),this.inFlightRequests.delete(e),this.bumpGeneration(e)}invalidatePattern(e){let t=[];for(let n of this.cache.keys())e.test(n)&&t.push(n);for(let n of this.inFlightRequests.keys())e.test(n)&&!t.includes(n)&&t.push(n);for(let e of t)this.cache.delete(e),this.inFlightRequests.delete(e),this.bumpGeneration(e)}clear(){for(let e of new Set([...this.cache.keys(),...this.inFlightRequests.keys(),...this.generations.keys()]))this.bumpGeneration(e);this.cache.clear(),this.inFlightRequests.clear()}};function Yt(e,t){let n=URL.createObjectURL(e),r=document.createElement(`a`);r.href=n,r.download=t,r.rel=`noopener`,document.body.appendChild(r),r.click(),document.body.removeChild(r),URL.revokeObjectURL(n)}function Xt(e,t=`image/png`){let n=atob(e),r=new Uint8Array(n.length);for(let e=0;e<n.length;e++)r[e]=n.charCodeAt(e);return new Blob([r],{type:t})}function Zt(e){let t=e.indexOf(`,`),n=e.slice(0,t);return Xt(e.slice(t+1),n.match(/^data:([^;]+)/)?.[1]??`image/png`)}async function Qt(e){if(e.imageData)return Xt(e.imageData);if(e.imageUrl){if(e.imageUrl.startsWith(`data:`))return Zt(e.imageUrl);let t=M(e.imageUrl,Pt()),n=await fetch(t);if(!n.ok)throw Error(`Failed to fetch image: ${n.status}`);return n.blob()}throw Error(`imageUrl or imageData is required`)}function $t(e){return!e.imageUrl||s(e.imageUrl)?e:{...e,imageUrl:M(e.imageUrl,Pt())}}async function en(e){let t=e.filename??`generated-image-${Date.now()}.png`;try{return Yt(await Qt(e),t),{path:t}}catch{if(!e.imageUrl||e.imageUrl.startsWith(`data:`))throw Error(`imageUrl or imageData is required`);let n=document.createElement(`a`);return n.href=e.imageUrl,n.download=t,n.target=`_blank`,n.rel=`noopener noreferrer`,document.body.appendChild(n),n.click(),document.body.removeChild(n),{path:t}}}async function tn(e){let t=await Qt(e);if(!navigator.clipboard?.write)throw Error(`Clipboard API not available`);let n=t.type||`image/png`,r=t.type?t:new Blob([t],{type:n});await navigator.clipboard.write([new ClipboardItem({[n]:r})])}async function nn(e){return At()?W(`api/image/save`,$t(e)):en(e)}async function rn(e){if(At()){await W(`api/image/clipboard`,$t(e));return}await tn(e)}function an(e){let t=e.trim().toLowerCase();return t===`load failed`||t.includes(`failed to fetch`)||t.includes(`network error`)||t.includes(`network connection was lost`)||t.includes(`networkrequestfailed`)||t.includes(`networkrequest failed`)||t.includes(`socket is not connected`)}var on=50;function sn(e,t,n,i,a){let o=e.getReader(),s=!1,c=()=>{s=!0,o.cancel().catch(()=>{})},l=new TextDecoder,u=``,d=0;function f(e){let t=e.content?.trim();if(t)return r(t);let n=e.error?.message?.trim();if(n)return r(n);let i=e.message?.trim();return i?r(i):`Unknown error`}let p=e=>{if(!e)return!1;let t=e.trim();return t.length>200?!1:[/^Cannot read properties/i,/^Error:/i,/^TypeError:/i,/^ReferenceError:/i,/^SyntaxError:/i,/^failed to/i,/^error:/i,/^forbidden/i,/^unauthorized/i].some(e=>e.test(t))};async function m(){d+=1,!(d<on)&&(d=0,await new Promise(e=>{setTimeout(e,0)}))}async function h(e){return e.type===`ping`?`continue`:e.type===`error`?(i(f(e)),n(),`stop`):e.type===`message`?(a?.({role:e.role??`assistant`,content:e.content??``,isThinking:e.isThinking}),`continue`):e.type===`complete`?(n(),`stop`):e.type===`result`&&p(e.content)?(i(r(e.content??`Unknown error`)),n(),`stop`):(t(e),await m(),`continue`)}async function g(){try{for(;!s;){let{done:e,value:r}=await o.read();if(e||s){if(!s&&e){if(u.trim())try{if(await h(JSON.parse(u))===`stop`)return}catch{u.trim()&&t({type:`result`,content:u})}n()}break}u+=l.decode(r,{stream:!0});let i=u.split(`
2
+ `);u=i.pop()??``;for(let e of i){if(s)return;let t=e.trim();if(t)try{if(await h(JSON.parse(t))===`stop`)return}catch{}}}}catch(e){s||(i(e instanceof Error?e.message:`Stream error`),n())}}return g(),c}var cn=o(`gitops.api`);async function ln(e,t=!1,n=!1){let r=new URLSearchParams;t&&r.set(`fresh`,`true`),n&&r.set(`asyncRefresh`,`true`);let i=r.toString(),a=i?`api/git/unified-status/${K(e)}?${i}`:`api/git/unified-status/${K(e)}`,o=performance.now();cn.debug(`getUnifiedGitStatus start`,{threadId:e,fresh:t});try{return await U(a)}finally{let n=Math.round(performance.now()-o);cn.debug(`getUnifiedGitStatus end`,{threadId:e,fresh:t,duration:n})}}async function un(e,t,n){return(await W(`api/git/generate-commit-message/${K(e)}`,{model:t,provider:n})).message}async function dn(e,t){await W(`api/git/commit/${K(e)}`,{message:t})}async function fn(e){await W(`api/git/push/${K(e)}`)}async function pn(e){await W(`api/git/pull/${K(e)}`)}async function mn(e){return W(`api/git/sync-branch/${K(e)}`,{})}async function hn(e,t,n){return W(`api/git/generate-pr-info/${K(e)}`,{model:t,provider:n})}async function gn(e,t,n,r){return W(`api/git/create-pr/${K(e)}`,{title:t,description:n,baseBranch:r})}async function _n(e){await W(`api/git/fetch/${K(e)}`)}async function vn(e,t,n){return W(`api/git/create-branch/${K(e)}`,{baseBranch:t,branchName:n})}async function yn(e,t){return W(`api/git/revert-file/${K(e)}`,{filePath:t})}async function bn(e,t=50){return(await U(`api/git/log/${K(e)}?limit=${t}`)).commits}async function xn(e){return U(`api/git/pr-status/${K(e)}`)}async function Sn(e,t,n,r){return W(`api/git/create-repo/${K(e)}`,{repoName:t,description:n,isPrivate:r})}async function Cn(e,t){return W(`api/git/checkpoint/${K(e)}`,{messageId:t})}async function wn(e,t){return W(`api/git/checkpoint-restore/${K(e)}`,{checkpointRef:t})}async function Tn(e){return U(`api/git/diff/${K(e)}`)}async function En(e,t,n){return Lt(`api/git/media/${K(e)}?path=${encodeURIComponent(t)}&version=${n}`)}async function Dn(){return(await U(`api/skills/popular`)).skills??[]}async function On(){return(await U(`api/skills/sources`)).sources??[]}async function kn(e){return(await U(`api/skills/catalog?${new URLSearchParams({sourceId:e}).toString()}`)).skills??[]}async function An(e,t){return W(`api/skills/sources/verify`,{title:e,url:t})}async function jn(e,t,n){return Bt(`api/skills/sources/${K(e)}`,{title:t,url:n})}async function Mn(e){await G(`api/skills/sources/${K(e)}`)}async function Nn(e){return(await W(`api/skills/sources/import`,{sources:e})).sources??[]}async function Pn(e,t){return U(`api/skills/catalog/files?${new URLSearchParams({sourceId:e,skillId:t}).toString()}`)}async function Fn(e,t,n){return U(`api/skills/catalog/file?${new URLSearchParams({sourceId:e,skillId:t,relativePath:n}).toString()}`)}async function In(){return(await U(`api/agents/popular`)).agents??[]}async function Ln(){return(await U(`api/rules/popular`)).rules??[]}async function Rn(){return(await U(`api/slash-commands/popular`)).commands??[]}async function zn(e,t,n,r,i){return W(`api/threads/${K(e)}/ai-files/github-folder`,{gitHubRepo:t,gitHubFolder:n,destPath:r,gitHubRef:i})}async function Bn(e,t,n,r){return W(`api/threads/${K(e)}/ai-files/catalog-skill`,{sourceId:t,skillId:n,destPath:r})}var Vn=t({EmptyBalanceError:()=>Un,LOW_BALANCE_THRESHOLD:()=>50,acknowledgeBrowserJsStarted:()=>da,applyAppUpdate:()=>ia,authorizeMCPOAuth:()=>ya,checkBalance:()=>Wn,checkForAppUpdate:()=>ra,checkGitInstalled:()=>Wi,checkVpInstalled:()=>Kn,clearChatHistory:()=>Qr,clearConversationHistory:()=>Qi,clearLogFeed:()=>ur,clearProjectTaskModifications:()=>Dr,clearSlackTokens:()=>hr,compactChat:()=>$r,completeOnboarding:()=>Gi,copyImageToClipboard:()=>vi,createFolderProject:()=>jr,createProject:()=>Or,createScaffoldedProject:()=>Jn,createSlackBinding:()=>gr,createSlashCommand:()=>Xi,createThread:()=>zr,createThreadAgent:()=>Oa,createThreadSkill:()=>Da,createUserTask:()=>Pi,deleteAccount:()=>ir,deleteCommand:()=>Ei,deleteMCPServer:()=>_a,deleteProject:()=>Lr,deleteProjectAIFile:()=>Ca,deleteSlackBinding:()=>_r,deleteSlashCommand:()=>Zi,deleteThread:()=>Br,deleteThreadAIFile:()=>ka,deleteUserTask:()=>Fi,disableImageModel:()=>gi,disableModel:()=>ui,enableImageModel:()=>hi,enableModel:()=>li,exportProjectPlugin:()=>bi,fetchAllAvailableModels:()=>ci,fetchAvailableImageModels:()=>pi,fetchAvailableModels:()=>si,fetchPendingAskUserQuestions:()=>aa,fixComments:()=>Wr,freeDevServerPort:()=>zi,generateImage:()=>_i,generateThreadTitle:()=>Hr,getAccountInfo:()=>rr,getAccountSettings:()=>cr,getAllEnabledImageModels:()=>mi,getAllEnabledModels:()=>fi,getAvailablePrograms:()=>br,getChatHistory:()=>Kr,getCliProcesses:()=>xr,getContextBreakdown:()=>ta,getConversationFolderPath:()=>Jr,getConversationUsage:()=>ea,getGitUser:()=>wr,getGitUserName:()=>Tr,getLatencyStatistics:()=>sr,getMCPConfig:()=>ha,getMCPOAuthStatus:()=>ba,getObservationPage:()=>qr,getOnboardingStatus:()=>Ui,getPackageScripts:()=>Di,getPopularMCPServers:()=>va,getProcessingThreads:()=>Cr,getProject:()=>Mr,getProjectAIFiles:()=>Sa,getProjectEnvVars:()=>Nr,getProjectScripts:()=>ki,getProjectSystemPrompt:()=>Hi,getProjectWindowState:()=>Pr,getProjects:()=>Er,getProviderCredits:()=>Qn,getProviderLogoCdnUrl:()=>Zn,getProviderLogoUrl:()=>Xn,getProviders:()=>Yn,getRecentConversations:()=>$i,getRecommendedModels:()=>qi,getScaffoldTemplates:()=>Gn,getSessionToolLearnings:()=>Yr,getSlackManifest:()=>pr,getSlackSettings:()=>lr,getSlashCommands:()=>Ji,getSlashCommandsAndSkills:()=>Yi,getSpendSummary:()=>or,getThread:()=>Mi,getThreadAIFile:()=>Ta,getThreadAIFiles:()=>wa,getThreadFiles:()=>Oi,getToolDefinitionsBreakdown:()=>na,getUserTasks:()=>Ni,installProjectPluginImport:()=>Si,installVp:()=>qn,invalidateProjectsCache:()=>Rr,isDevServerRunning:()=>Bi,killCliProcess:()=>Sr,openExternalUrl:()=>nr,openFolderProject:()=>kr,openPathProject:()=>Ar,openProjectWith:()=>ni,openThreadWith:()=>ri,postClientLog:()=>fr,previewProjectPluginImport:()=>xi,processVoiceTranscript:()=>yr,quitAccount:()=>ar,refreshModels:()=>wi,reportBrowserActionResult:()=>ma,reportBrowserWebviewReady:()=>pa,resetOnboarding:()=>Ki,revokeMCPOAuth:()=>xa,routeChatPrompt:()=>Ur,runProjectScript:()=>Ai,saveCommand:()=>Ti,saveImageToDownloads:()=>yi,saveMCPServer:()=>ga,saveModelSettings:()=>di,saveProjectWindowState:()=>Fr,saveProviderEnvironment:()=>er,saveProviderKey:()=>$n,saveThreadAIFile:()=>Ea,selectThread:()=>Gr,sendChatMessage:()=>Xr,setSlackTokens:()=>mr,startDevServer:()=>Li,stopChatGeneration:()=>ei,stopDevServer:()=>Ri,stopProjectScript:()=>ji,streamLogFeed:()=>dr,submitAskUserAnswer:()=>oa,submitBrowserJsResult:()=>ua,submitSeatbeltEscalationResponse:()=>ca,submitShellPermissionResponse:()=>sa,submitWebFetchPermissionResponse:()=>la,submitWidgetResult:()=>fa,subscribeToChatStream:()=>Zr,suggestRunCommand:()=>Ii,syncProjectEnvVars:()=>Ir,ttlCache:()=>q,updateAccountSettings:()=>vr,updateProject:()=>ti,updateProjectName:()=>oi,updateProjectOpenWith:()=>ii,updateProjectSetupScript:()=>ai,updateRunCommand:()=>Vi,updateThread:()=>Vr,uploadProjectPlugin:()=>Ci}),Hn=o(`gitops.api`),Un=class extends Error{constructor(){super(`No prompts remaining`),this.name=`EmptyBalanceError`}};async function Wn(){let{plan:e,promptsRemaining:t}=await rr();return e===`unlimited-pro`?{isEmpty:!1,isLow:!1}:{isEmpty:t<=0,isLow:t>0&&t<=50}}async function Gn(){return U(`api/scaffold/templates`)}async function Kn(){return(await U(`api/scaffold/check-vp`)).installed}async function qn(){return W(`api/scaffold/install-vp`,{})}async function Jn(e,t,n){return Wt(`api/scaffold`,{projectName:e,templateId:t,packageManager:n})}async function Yn(){return q.get(`providers`,async()=>U(`api/providers`),6e4)}function Xn(e){return`${Pt()}/api/providers/${K(e)}/logo`}function Zn(e){return`https://models.tarsk.io/svg/${K(e)}.svg`}async function Qn(e){return q.get(`provider-credits-${e}`,async()=>U(`api/providers/${K(e)}/credits`),3e4)}async function $n(e,t){await W(`api/providers/keys`,{providerName:e,apiKey:t}),q.invalidate(`providers`)}async function er(e){await W(`api/providers/env`,{values:e}),q.invalidate(`providers`)}function tr(e){return typeof window>`u`?!1:window.open(e,`_blank`,`noopener,noreferrer`)!==null}async function nr(e){if(typeof window<`u`&&!At()){tr(e);return}try{await W(`api/providers/open-external`,{url:e})}catch(t){if(tr(e))return;throw t instanceof Error?t:Error(`Failed to open URL`)}}async function rr(){return U(`api/account/info`)}async function ir(){return W(`api/account/delete`,{})}async function ar(){return W(`api/account/quit`,{})}async function or(){return U(`api/account/spend`)}async function sr(){return U(`api/account/statistics`)}async function cr(){return U(`api/account/settings`)}async function lr(){return U(`api/slack/settings`)}async function ur(){await G(`api/logs`)}async function dr(e){return Gt(`api/logs/stream`,e)}async function fr(e){try{await W(`api/logs`,e)}catch(e){Hn.debug(`Failed to post client log entry`,e)}}async function pr(){return U(`api/slack/manifest`)}async function mr(e){return Bt(`api/slack/tokens`,e)}async function hr(){await G(`api/slack/tokens`)}async function gr(e){return W(`api/slack/bindings`,e)}async function _r(e,t){await G(`api/slack/bindings/${K(e)}/${K(t)}`)}async function vr(e){return Bt(`api/account/settings`,e)}async function yr(e,t){return(await W(`api/voice-model/process-transcript`,{text:e,threadId:t?.threadId,provider:t?.provider,model:t?.model})).text}async function br(){return q.get(`available-programs`,async()=>(await U(`api/programs`)).programs??[],3e5)}async function xr(){return(await U(`api/processes`)).processes}async function Sr(e){await W(`api/processes/${K(e)}/kill`)}async function Cr(){return q.get(`processing-threads`,async()=>(await U(`api/threads/processing`)).processingThreadIds??[],0)}async function wr(){return q.get(`git-user`,async()=>{try{let e=await U(`api/git/user`);return{name:e.name??``,email:e.email??``}}catch{return{name:``,email:``}}},6e5)}async function Tr(){return(await wr()).name}async function Er(){return q.get(`projects`,async()=>{let e=await U(`api/projects`),t=Array.isArray(e)?e:e.projects??[],n=Array.isArray(e)?null:e.cloneRootPath??null;return{projects:(t||[]).map(e=>{let t=e;return{projectId:t.projectId??t.id,name:t.name,gitUrl:t.gitUrl,projectPath:t.projectPath??t.path,threads:t.threads??[],commands:t.commands??[],setupScript:t.setupScript,validationScript:t.validationScript,runCommand:t.runCommand,planPrompt:t.planPrompt,testPrompt:t.testPrompt,reviewPrompt:t.reviewPrompt,customSystemPrompt:t.customSystemPrompt,useCustomSystemPrompt:!!t.useCustomSystemPrompt,allowAllCommands:t.allowAllCommands!==!1,allowedCommandPatterns:t.allowedCommandPatterns??[],modelAliases:t.modelAliases??void 0,defaultChatMode:g(t.defaultChatMode)?t.defaultChatMode:void 0,disabledTools:t.disabledTools??void 0,smartJsEnabled:t.smartJsEnabled===!0,useBuiltInBrowser:t.useBuiltInBrowser!==!1,projectIcon:t.projectIcon,tasksModifiedCount:Number(t.tasksModifiedCount)||0}}).map(e=>{let t=(e.threads||[]).map(e=>{let t=e,n=t.threadId??t.id;return{threadId:n,title:t.title??n,path:t.path??``,currentBranch:t.currentBranch??``,isSelected:!!t.isSelected,model:t.model??void 0,modelProvider:t.modelProvider??void 0,gitStatusDot:T(t.gitStatusDot)}});return{...e,threads:t}}),cloneRootPath:n}},3e4)}async function Dr(e){await W(`api/projects/${K(e)}/tasks/clear-modifications`)}async function Or(e,t){return Wt(`api/projects`,{gitUrl:e,commitMethod:t})}async function kr(){return Wt(`api/projects/open-folder`,{})}async function Ar(e){return Wt(`api/projects/open-path`,{path:e})}async function jr(e){return Wt(`api/projects/new-folder`,{projectName:e})}async function Mr(e){return q.get(`project-${e}`,async()=>U(`api/projects/${K(e)}`),3e4)}async function Nr(e){return U(`api/projects/${K(e)}/env-vars`)}async function Pr(e){return(await U(`api/projects/${K(e)}/window-state`)).state}async function Fr(e,t){await qt(`api/projects/${K(e)}/window-state`,{state:t})}async function Ir(e,t){await Bt(`api/projects/${K(e)}/env-vars`,{vars:t})}async function Lr(e){await G(`api/projects/${K(e)}`),q.invalidate(`projects`)}function Rr(e){q.invalidate(`projects`),e&&q.invalidate(`project-${e}`)}async function zr(e,t){return Wt(`api/threads`,{projectId:e,title:t})}async function Br(e,t){let n=await Ut(`api/threads/${K(t)}?stream=true`);return q.invalidate(`projects`),n}async function Vr(e,t){await Vt(`api/threads/${K(e)}`,t),q.invalidate(`thread-${e}`),(`model`in t||`modelProvider`in t||`chatTitles`in t||`diffComments`in t)&&q.invalidate(`projects`)}async function Hr(e,t,n){return(await W(`api/threads/${K(e)}/generate-title`,{prompt:t,provider:n?.provider,model:n?.model})).title}async function Ur(e,t){return(await W(`api/chat/${K(e)}/auto-route`,{prompt:t})).decision}async function Wr(e,t){return W(`api/threads/${K(e)}/fix-comments`,{comments:t})}async function Gr(e,t){await W(`api/threads/${K(t)}/select`)}async function Kr(e,t){let n=t?`?conversationId=${encodeURIComponent(t)}`:``;return{threadId:e,messages:await U(`api/threads/${K(e)}/messages${n}`)}}async function qr(e,t,n=1,r=2e3){let i=new URLSearchParams({offset:String(n),limit:String(r)});return U(`api/threads/${K(e)}/observations/${K(t)}?${i}`)}async function Jr(e){return(await U(`api/threads/${K(e)}/conversation-folder-path`)).path}async function Yr(e){return(await U(`api/threads/${K(e)}/session-learnings`)).learnings}async function Xr(e,t,n,r=[],i,a,o,s,c,l,u){let{isEmpty:d}=await Wn();if(d)throw new Un;return Wt(`api/chat`,{threadId:e,content:t,model:n,provider:a,planMode:o,ralphMode:s,orchestrateMode:u,checkpointRef:c,conversationId:l,attachments:r.map(e=>({name:e.fileName,content:e.content.split(`,`)[1]||e.content,size:0,mimeType:e.mimeType||`application/octet-stream`}))},{signal:i})}async function Zr(e,t,n){let r=new URLSearchParams({replay:`compact`}),i=n?.trim();return i&&r.set(`conversationId`,i),Gt(`api/chat/subscribe/${K(e)}?${r.toString()}`,{signal:t})}async function Qr(e){return(await G(`api/chat/${K(e)}`))?.conversationId||``}async function $r(e,t){return Kt(`api/chat/${K(e)}/compact`,t)}async function ei(e,t){try{let n=new URLSearchParams,r=t?.conversationId?.trim();r&&n.set(`conversationId`,r),t?.all&&n.set(`all`,`1`);let i=n.size>0?`?${n.toString()}`:``;await W(`api/chat/stop/${K(e)}${i}`)}catch{}}async function ti(e,t){return t.runNow&&t.setupScript?Ht(`api/projects/${K(e)}`,t):(await qt(`api/projects/${K(e)}`,t),Rr(e),null)}async function ni(e,t){await Kt(`api/projects/${K(e)}/open`,{program:t})}async function ri(e,t){await Kt(`api/threads/${K(e)}/open`,{program:t})}async function ii(e,t){await ti(e,{program:t})}async function ai(e,t,n){return ti(e,{setupScript:t,runNow:n})}async function oi(e,t){await ti(e,{name:t})}async function si(e,t){let n=new URLSearchParams({provider:e});t!==void 0&&n.set(`supportedTools`,t?`true`:`false`),n.set(`useCase`,`coding`);let r=`available-models-${n.toString()}`;return q.get(r,async()=>{let e=await U(`api/models?${n.toString()}`);return{models:e.models??[],enabledModelIds:e.enabledModelIds??[]}},12e4)}async function ci(e){let t=new URLSearchParams({useCase:e}),n=`available-models-all-${e}`;return q.get(n,async()=>(await U(`api/models/all?${t.toString()}`)).providers??{},12e4)}async function li(e,t){await W(`api/models/${K(e,t)}/enable`),q.invalidate(`enabled-models`),q.invalidatePattern(/^available-models-/),q.invalidatePattern(/^available-image-models-/)}async function ui(e,t){await W(`api/models/${K(e,t)}/disable`),q.invalidate(`enabled-models`),q.invalidatePattern(/^available-models-/),q.invalidatePattern(/^available-image-models-/)}async function di(e,t,n){await W(`api/models/${K(e,t)}/settings`,n),q.invalidatePattern(/^available-models-/),q.invalidate(`enabled-models`)}async function fi(){return q.get(`enabled-models`,async()=>(await U(`api/models/enabled?useCase=coding`)).enabledModels??{},12e4)}async function pi(e){let t=new URLSearchParams({provider:e,useCase:`image`}),n=`available-image-models-${e}`;return q.get(n,async()=>{let e=await U(`api/models?${t.toString()}`);return{models:e.models??[],enabledModelIds:e.enabledModelIds??[]}},12e4)}async function mi(){return q.get(`enabled-image-models`,async()=>(await U(`api/models/enabled?useCase=image`)).enabledModels??{},12e4)}async function hi(e,t){await W(`api/models/${K(e,t)}/enable?useCase=image`),q.invalidate(`enabled-image-models`),q.invalidatePattern(/^available-models-/),q.invalidatePattern(/^available-image-models-/)}async function gi(e,t){await W(`api/models/${K(e,t)}/disable?useCase=image`),q.invalidate(`enabled-image-models`),q.invalidatePattern(/^available-models-/),q.invalidatePattern(/^available-image-models-/)}async function _i(e,t,n,r){return W(`api/image/generate`,{prompt:e,model:t,provider:n,threadId:r})}async function vi(e){await rn(e)}async function yi(e){return nn(e)}async function bi(e,t){return Rt(`api/projects/${K(e)}/plugin-export`,t)}async function xi(e,t){return W(`api/projects/${K(e)}/plugin-import/preview`,{url:t})}async function Si(e,t){return W(`api/projects/${K(e)}/plugin-import`,t)}async function Ci(e,t){return W(`api/projects/${K(e)}/plugin-upload`,t)}async function wi(e){let t=await W(`api/models/${K(e)}/refresh`);return q.invalidatePattern(/^available-models-/),q.invalidatePattern(/^available-image-models-/),q.invalidate(`enabled-models`),t.modelCount??0}async function Ti(e,t){await W(`api/projects/${K(e)}/commands`,t)}async function Ei(e,t){await G(`api/projects/${K(e)}/commands/${K(t)}`)}async function Di(e){return U(`api/projects/${K(e)}/package-scripts`)}async function Oi(e){return U(`api/threads/${K(e)}/files`)}async function ki(e){return(await U(`api/threads/${K(e)}/project-scripts`)).scripts}async function Ai(e,t,n,r){let{relativeFolder:i,...a}=r??{},o={scriptName:t,command:n};return i&&(o.relativeFolder=i),Wt(`api/threads/${K(e)}/project-scripts/run`,o,a)}async function ji(e,t){return W(`api/threads/${K(e)}/project-scripts/stop`,{scriptName:t})}async function Mi(e){return q.get(`thread-${e}`,async()=>U(`api/threads/${e}`),45e3)}async function Ni(e){return(await U(`api/projects/${K(e)}/user-tasks`)).tasks??[]}async function Pi(e,t){return W(`api/projects/${K(e)}/user-tasks`,{content:t})}async function Fi(e,t){await G(`api/projects/${K(e)}/user-tasks/${K(t)}`)}async function Ii(e){return W(`api/projects/${K(e)}/run-suggest`,{})}async function Li(e,t,n){return Hn.info(`Start dev server requested`,{projectId:e,threadId:t}),q.invalidate(`dev-server-running-${e}`),Wt(`api/projects/${K(e)}/run`,{threadId:t},{signal:n})}async function Ri(e){return q.invalidate(`dev-server-running-${e}`),W(`api/projects/${K(e)}/stop`,{})}async function zi(e,t){return W(`api/projects/${K(e)}/free-port`,{port:t})}async function Bi(e){return q.get(`dev-server-running-${e}`,async()=>U(`api/projects/${K(e)}/running`),3e3)}async function Vi(e,t){await ti(e,{runCommand:t})}async function Hi(e){return U(`api/projects/${K(e)}/system-prompt`)}async function Ui(){return U(`api/onboarding/status`)}async function Wi(){return U(`api/onboarding/git-check`)}async function Gi(){return W(`api/onboarding/complete`,{})}async function Ki(){return W(`api/onboarding/reset`,{})}async function qi(){return U(`api/onboarding/recommended-models`)}async function Ji(e){return(await U(`api/slash-commands?threadId=${K(e)}`)).commands??[]}async function Yi(e){let t=await U(`api/slash-commands?threadId=${K(e)}`);return{commands:t.commands??[],skills:t.skills??[],bundledSkills:t.bundledSkills??[]}}async function Xi(e,t,n,r,i){return W(`api/slash-commands`,{name:e,content:t,metadata:n,scope:r,threadId:i})}async function Zi(e){let t=await fetch(`http://localhost:641/api/slash-commands`,{method:`DELETE`,headers:{"Content-Type":`application/json`},body:JSON.stringify({filePath:e})});if(!t.ok)throw Error(`Failed to delete slash command: ${t.statusText}`);return t.json()}async function Qi(e){let t=new URLSearchParams;e?.threadId?t.set(`threadId`,e.threadId):e?.projectId&&t.set(`projectId`,e.projectId);let n=t.toString();await G(`api/conversations${n?`?${n}`:``}`)}async function $i(e=20,t=0){return U(`api/conversations/recent?limit=${Math.min(Math.max(e,1),100)}&offset=${Math.max(t,0)}`)}async function ea(e,t){return U(`api/conversations/${K(e)}/${K(t)}/usage`)}async function ta(e,t,n){let r=`context-breakdown-${e}-${t}`;return n?.forceRefresh&&q.invalidate(r),q.get(r,async()=>U(`api/conversations/${K(e)}/${K(t)}/context`),45e3)}async function na(e,t){return U(`api/conversations/${K(e)}/${K(t)}/context/tool-definitions`)}async function ra(){try{return await U(`api/update/check`)}catch{return{updateAvailable:!1,supported:!1}}}async function ia(){return W(`api/update/apply`)}async function aa(){return(await U(`api/ask-user/pending`)).questions??[]}async function oa(e,t){await W(`api/ask-user/respond`,typeof t==`string`?{toolCallId:e,answer:t}:{toolCallId:e,answers:t})}async function sa(e,t,n){await W(`api/shell-permission/respond`,{toolCallId:e,decision:t,pattern:n?.pattern,projectId:n?.projectId})}async function ca(e,t){await W(`api/shell-permission/respond`,{toolCallId:e,escalationScope:t===`skip`?void 0:t,escalationDecision:t===`skip`?`skip`:void 0})}async function la(e,t){await W(`api/web-fetch-permission/respond`,{toolCallId:e,decision:t})}async function ua(e,t,n){await W(`api/browser-js/respond`,{toolCallId:e,result:t,threadId:n})}async function da(e,t){await W(`api/browser-js/respond`,{toolCallId:e,started:!0,threadId:t})}async function fa(e,t){await W(`api/widget/respond`,{toolCallId:e,...t})}async function pa(e,t){await W(`api/browser/ready`,{toolCallId:e,webviewId:t})}async function ma(e,t){await W(`api/browser/action-result`,{toolCallId:e,result:t})}async function ha(e){return U(`api/mcp/config?projectPath=${encodeURIComponent(e)}`)}async function ga(e,t,n){return Bt(`api/mcp/config`,{projectPath:e,serverName:t,serverConfig:n})}async function _a(e,t){return G(`api/mcp/config/${K(t)}?projectPath=${encodeURIComponent(e)}`)}async function va(){return(await U(`api/mcp/popular`)).servers??[]}async function ya(e,t){return W(`api/mcp/oauth/authorize`,{projectPath:e,serverName:t})}async function ba(e,t){return U(`api/mcp/oauth/status?projectPath=${encodeURIComponent(e)}&serverName=${encodeURIComponent(t)}`)}async function xa(e,t){return G(`api/mcp/oauth?projectPath=${encodeURIComponent(e)}&serverName=${encodeURIComponent(t)}`)}async function Sa(e){return(await U(`api/projects/${K(e)}/ai-files`)).nodes??[]}async function Ca(e,t){return G(`api/projects/${K(e)}/ai-file?path=${encodeURIComponent(t)}`)}async function wa(e){return(await U(`api/threads/${K(e)}/ai-files`)).nodes??[]}async function Ta(e,t){return U(`api/threads/${K(e)}/ai-file?path=${encodeURIComponent(t)}`)}async function Ea(e,t,n){return Bt(`api/threads/${K(e)}/ai-file`,{path:t,content:n})}async function Da(e,t,n){return W(`api/threads/${K(e)}/ai-files/skill`,{name:t,description:n})}async function Oa(e,t,n,r){return W(`api/threads/${K(e)}/ai-files/agent`,{name:t,description:n,tools:r})}async function ka(e,t){return G(`api/threads/${K(e)}/ai-file?path=${encodeURIComponent(t)}`)}typeof window<`u`&&window.document&&window.document.createElement;function J(e,t,{checkForDefaultPrevented:n=!0}={}){return function(r){if(e?.(r),n===!1||!r.defaultPrevented)return t?.(r)}}function Aa(e,t){let n=I.createContext(t),r=e=>{let{children:t,...r}=e,i=I.useMemo(()=>r,Object.values(r));return(0,R.jsx)(n.Provider,{value:i,children:t})};r.displayName=e+`Provider`;function i(r){let i=I.useContext(n);if(i)return i;if(t!==void 0)return t;throw Error(`\`${r}\` must be used within \`${e}\``)}return[r,i]}function ja(e,t=[]){let n=[];function r(t,r){let i=I.createContext(r),a=n.length;n=[...n,r];let o=t=>{let{scope:n,children:r,...o}=t,s=n?.[e]?.[a]||i,c=I.useMemo(()=>o,Object.values(o));return(0,R.jsx)(s.Provider,{value:c,children:r})};o.displayName=t+`Provider`;function s(n,o){let s=o?.[e]?.[a]||i,c=I.useContext(s);if(c)return c;if(r!==void 0)return r;throw Error(`\`${n}\` must be used within \`${t}\``)}return[o,s]}let i=()=>{let t=n.map(e=>I.createContext(e));return function(n){let r=n?.[e]||t;return I.useMemo(()=>({[`__scope${e}`]:{...n,[e]:r}}),[n,r])}};return i.scopeName=e,[r,Ma(i,...t)]}function Ma(...e){let t=e[0];if(e.length===1)return t;let n=()=>{let n=e.map(e=>({useScope:e(),scopeName:e.scopeName}));return function(e){let r=n.reduce((t,{useScope:n,scopeName:r})=>{let i=n(e)[`__scope${r}`];return{...t,...i}},{});return I.useMemo(()=>({[`__scope${t.scopeName}`]:r}),[r])}};return n.scopeName=t.scopeName,n}function Na(e){let t=Pa(e),n=I.forwardRef((e,n)=>{let{children:r,...i}=e,a=I.Children.toArray(r),o=a.find(La);if(o){let e=o.props.children,r=a.map(t=>t===o?I.Children.count(e)>1?I.Children.only(null):I.isValidElement(e)?e.props.children:null:t);return(0,R.jsx)(t,{...i,ref:n,children:I.isValidElement(e)?I.cloneElement(e,void 0,r):null})}return(0,R.jsx)(t,{...i,ref:n,children:r})});return n.displayName=`${e}.Slot`,n}function Pa(e){let t=I.forwardRef((e,t)=>{let{children:n,...r}=e;if(I.isValidElement(n)){let e=za(n),i=Ra(r,n.props);return n.type!==I.Fragment&&(i.ref=t?te(t,e):e),I.cloneElement(n,i)}return I.Children.count(n)>1?I.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var Fa=Symbol(`radix.slottable`);function Ia(e){let t=({children:e})=>(0,R.jsx)(R.Fragment,{children:e});return t.displayName=`${e}.Slottable`,t.__radixId=Fa,t}function La(e){return I.isValidElement(e)&&typeof e.type==`function`&&`__radixId`in e.type&&e.type.__radixId===Fa}function Ra(e,t){let n={...t};for(let r in t){let i=e[r],a=t[r];/^on[A-Z]/.test(r)?i&&a?n[r]=(...e)=>{let t=a(...e);return i(...e),t}:i&&(n[r]=i):r===`style`?n[r]={...i,...a}:r===`className`&&(n[r]=[i,a].filter(Boolean).join(` `))}return{...e,...n}}function za(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}var Y=[`a`,`button`,`div`,`form`,`h2`,`h3`,`img`,`input`,`label`,`li`,`nav`,`ol`,`p`,`select`,`span`,`svg`,`ul`].reduce((e,t)=>{let n=Na(`Primitive.${t}`),r=I.forwardRef((e,r)=>{let{asChild:i,...a}=e,o=i?n:t;return typeof window<`u`&&(window[Symbol.for(`radix-ui`)]=!0),(0,R.jsx)(o,{...a,ref:r})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function Ba(e,t){e&&ve.flushSync(()=>e.dispatchEvent(t))}function X(e){let t=I.useRef(e);return I.useEffect(()=>{t.current=e}),I.useMemo(()=>(...e)=>t.current?.(...e),[])}function Va(e,t=globalThis?.document){let n=X(e);I.useEffect(()=>{let e=e=>{e.key===`Escape`&&n(e)};return t.addEventListener(`keydown`,e,{capture:!0}),()=>t.removeEventListener(`keydown`,e,{capture:!0})},[n,t])}var Ha=`DismissableLayer`,Ua=`dismissableLayer.update`,Wa=`dismissableLayer.pointerDownOutside`,Ga=`dismissableLayer.focusOutside`,Ka,qa=I.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),Ja=I.forwardRef((e,t)=>{let{disableOutsidePointerEvents:n=!1,onEscapeKeyDown:r,onPointerDownOutside:i,onFocusOutside:a,onInteractOutside:o,onDismiss:s,...c}=e,l=I.useContext(qa),[u,d]=I.useState(null),f=u?.ownerDocument??globalThis?.document,[,p]=I.useState({}),m=L(t,e=>d(e)),h=Array.from(l.layers),[g]=[...l.layersWithOutsidePointerEventsDisabled].slice(-1),_=h.indexOf(g),v=u?h.indexOf(u):-1,y=l.layersWithOutsidePointerEventsDisabled.size>0,b=v>=_,x=Za(e=>{let t=e.target,n=[...l.branches].some(e=>e.contains(t));!b||n||(i?.(e),o?.(e),e.defaultPrevented||s?.())},f),S=Qa(e=>{let t=e.target;[...l.branches].some(e=>e.contains(t))||(a?.(e),o?.(e),e.defaultPrevented||s?.())},f);return Va(e=>{v===l.layers.size-1&&(r?.(e),!e.defaultPrevented&&s&&(e.preventDefault(),s()))},f),I.useEffect(()=>{if(u)return n&&(l.layersWithOutsidePointerEventsDisabled.size===0&&(Ka=f.body.style.pointerEvents,f.body.style.pointerEvents=`none`),l.layersWithOutsidePointerEventsDisabled.add(u)),l.layers.add(u),$a(),()=>{n&&l.layersWithOutsidePointerEventsDisabled.size===1&&(f.body.style.pointerEvents=Ka)}},[u,f,n,l]),I.useEffect(()=>()=>{u&&(l.layers.delete(u),l.layersWithOutsidePointerEventsDisabled.delete(u),$a())},[u,l]),I.useEffect(()=>{let e=()=>p({});return document.addEventListener(Ua,e),()=>document.removeEventListener(Ua,e)},[]),(0,R.jsx)(Y.div,{...c,ref:m,style:{pointerEvents:y?b?`auto`:`none`:void 0,...e.style},onFocusCapture:J(e.onFocusCapture,S.onFocusCapture),onBlurCapture:J(e.onBlurCapture,S.onBlurCapture),onPointerDownCapture:J(e.onPointerDownCapture,x.onPointerDownCapture)})});Ja.displayName=Ha;var Ya=`DismissableLayerBranch`,Xa=I.forwardRef((e,t)=>{let n=I.useContext(qa),r=I.useRef(null),i=L(t,r);return I.useEffect(()=>{let e=r.current;if(e)return n.branches.add(e),()=>{n.branches.delete(e)}},[n.branches]),(0,R.jsx)(Y.div,{...e,ref:i})});Xa.displayName=Ya;function Za(e,t=globalThis?.document){let n=X(e),r=I.useRef(!1),i=I.useRef(()=>{});return I.useEffect(()=>{let e=e=>{if(e.target&&!r.current){let r=function(){eo(Wa,n,a,{discrete:!0})},a={originalEvent:e};e.pointerType===`touch`?(t.removeEventListener(`click`,i.current),i.current=r,t.addEventListener(`click`,i.current,{once:!0})):r()}else t.removeEventListener(`click`,i.current);r.current=!1},a=window.setTimeout(()=>{t.addEventListener(`pointerdown`,e)},0);return()=>{window.clearTimeout(a),t.removeEventListener(`pointerdown`,e),t.removeEventListener(`click`,i.current)}},[t,n]),{onPointerDownCapture:()=>r.current=!0}}function Qa(e,t=globalThis?.document){let n=X(e),r=I.useRef(!1);return I.useEffect(()=>{let e=e=>{e.target&&!r.current&&eo(Ga,n,{originalEvent:e},{discrete:!1})};return t.addEventListener(`focusin`,e),()=>t.removeEventListener(`focusin`,e)},[t,n]),{onFocusCapture:()=>r.current=!0,onBlurCapture:()=>r.current=!1}}function $a(){let e=new CustomEvent(Ua);document.dispatchEvent(e)}function eo(e,t,n,{discrete:r}){let i=n.originalEvent.target,a=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&i.addEventListener(e,t,{once:!0}),r?Ba(i,a):i.dispatchEvent(a)}var to=Ja,no=Xa,Z=globalThis?.document?I.useLayoutEffect:()=>{},ro=I.useId||(()=>void 0),io=0;function ao(e){let[t,n]=I.useState(ro());return Z(()=>{e||n(e=>e??String(io++))},[e]),e||(t?`radix-${t}`:``)}var oo=[`top`,`right`,`bottom`,`left`],so=Math.min,Q=Math.max,co=Math.round,lo=Math.floor,uo=e=>({x:e,y:e}),fo={left:`right`,right:`left`,bottom:`top`,top:`bottom`},po={start:`end`,end:`start`};function mo(e,t,n){return Q(e,so(t,n))}function ho(e,t){return typeof e==`function`?e(t):e}function go(e){return e.split(`-`)[0]}function _o(e){return e.split(`-`)[1]}function vo(e){return e===`x`?`y`:`x`}function yo(e){return e===`y`?`height`:`width`}var bo=new Set([`top`,`bottom`]);function xo(e){return bo.has(go(e))?`y`:`x`}function So(e){return vo(xo(e))}function Co(e,t,n){n===void 0&&(n=!1);let r=_o(e),i=So(e),a=yo(i),o=i===`x`?r===(n?`end`:`start`)?`right`:`left`:r===`start`?`bottom`:`top`;return t.reference[a]>t.floating[a]&&(o=Mo(o)),[o,Mo(o)]}function wo(e){let t=Mo(e);return[To(e),t,To(t)]}function To(e){return e.replace(/start|end/g,e=>po[e])}var Eo=[`left`,`right`],Do=[`right`,`left`],Oo=[`top`,`bottom`],ko=[`bottom`,`top`];function Ao(e,t,n){switch(e){case`top`:case`bottom`:return n?t?Do:Eo:t?Eo:Do;case`left`:case`right`:return t?Oo:ko;default:return[]}}function jo(e,t,n,r){let i=_o(e),a=Ao(go(e),n===`start`,r);return i&&(a=a.map(e=>e+`-`+i),t&&(a=a.concat(a.map(To)))),a}function Mo(e){return e.replace(/left|right|bottom|top/g,e=>fo[e])}function No(e){return{top:0,right:0,bottom:0,left:0,...e}}function Po(e){return typeof e==`number`?{top:e,right:e,bottom:e,left:e}:No(e)}function Fo(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 Io(e,t,n){let{reference:r,floating:i}=e,a=xo(t),o=So(t),s=yo(o),c=go(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}}switch(_o(t)){case`start`:p[o]-=f*(n&&l?-1:1);break;case`end`:p[o]+=f*(n&&l?-1:1);break}return p}async function Lo(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}=ho(t,e),p=Po(f),m=o[d?u===`floating`?`reference`:`floating`:u],h=Fo(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=Fo(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 Ro=async(e,t,n)=>{let{placement:r=`bottom`,strategy:i=`absolute`,middleware:a=[],platform:o}=n,s=a.filter(Boolean),c=await(o.isRTL==null?void 0:o.isRTL(t)),l=await o.getElementRects({reference:e,floating:t,strategy:i}),{x:u,y:d}=Io(l,r,c),f=r,p={},m=0;for(let n=0;n<s.length;n++){let{name:a,fn:h}=s[n],{x:g,y:_,data:v,reset:y}=await h({x:u,y:d,initialPlacement:r,placement:f,strategy:i,middlewareData:p,rects:l,platform:{...o,detectOverflow:o.detectOverflow??Lo},elements:{reference:e,floating:t}});u=g??u,d=_??d,p={...p,[a]:{...p[a],...v}},y&&m<=50&&(m++,typeof y==`object`&&(y.placement&&(f=y.placement),y.rects&&(l=y.rects===!0?await o.getElementRects({reference:e,floating:t,strategy:i}):y.rects),{x:u,y:d}=Io(l,f,c)),n=-1)}return{x:u,y:d,placement:f,strategy:i,middlewareData:p}},zo=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}=ho(e,t)||{};if(l==null)return{};let d=Po(u),f={x:n,y:r},p=So(i),m=yo(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=so(d[_],T),D=so(d[v],T),O=E,k=C-h[m]-D,A=C/2-h[m]/2+w,j=mo(O,A,k),M=!c.arrow&&_o(i)!=null&&A!==j&&a.reference[m]/2-(A<O?E:D)-h[m]/2<0,N=M?A<O?A-O:A-k:0;return{[p]:f[p]+N,data:{[p]:j,centerOffset:A-j-N,...M&&{alignmentOffset:N}},reset:M}}}),Bo=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}=ho(e,t);if((n=i.arrow)!=null&&n.alignmentOffset)return{};let g=go(r),_=xo(o),v=go(o)===o,y=await(s.isRTL==null?void 0:s.isRTL(c.floating)),b=d||(v||!m?[Mo(o)]:wo(o)),x=p!==`none`;!d&&x&&b.push(...jo(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=Co(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`&&_!==xo(t))||T.every(e=>xo(e.placement)===_?e.overflows[0]>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=xo(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;break}if(r!==n)return{reset:{placement:n}}}return{}}}};function Vo(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function Ho(e){return oo.some(t=>e[t]>=0)}var Uo=function(e){return e===void 0&&(e={}),{name:`hide`,options:e,async fn(t){let{rects:n,platform:r}=t,{strategy:i=`referenceHidden`,...a}=ho(e,t);switch(i){case`referenceHidden`:{let e=Vo(await r.detectOverflow(t,{...a,elementContext:`reference`}),n.reference);return{data:{referenceHiddenOffsets:e,referenceHidden:Ho(e)}}}case`escaped`:{let e=Vo(await r.detectOverflow(t,{...a,altBoundary:!0}),n.floating);return{data:{escapedOffsets:e,escaped:Ho(e)}}}default:return{}}}}},Wo=new Set([`left`,`top`]);async function Go(e,t){let{placement:n,platform:r,elements:i}=e,a=await(r.isRTL==null?void 0:r.isRTL(i.floating)),o=go(n),s=_o(n),c=xo(n)===`y`,l=Wo.has(o)?-1:1,u=a&&c?-1:1,d=ho(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 Ko=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 Go(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}}}}},qo=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}=ho(e,t),u={x:n,y:r},d=await a.detectOverflow(t,l),f=xo(go(i)),p=vo(f),m=u[p],h=u[f];if(o){let e=p===`y`?`top`:`left`,t=p===`y`?`bottom`:`right`,n=m+d[e],r=m-d[t];m=mo(n,m,r)}if(s){let e=f===`y`?`top`:`left`,t=f===`y`?`bottom`:`right`,n=h+d[e],r=h-d[t];h=mo(n,h,r)}let g=c.fn({...t,[p]:m,[f]:h});return{...g,data:{x:g.x-n,y:g.y-r,enabled:{[p]:o,[f]:s}}}}}},Jo=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}=ho(e,t),u={x:n,y:r},d=xo(i),f=vo(d),p=u[f],m=u[d],h=ho(s,t),g=typeof h==`number`?{mainAxis:h,crossAxis:0}:{mainAxis:0,crossAxis:0,...h};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=Wo.has(go(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}}}},Yo=function(e){return e===void 0&&(e={}),{name:`size`,options:e,async fn(t){var n,r;let{placement:i,rects:a,platform:o,elements:s}=t,{apply:c=()=>{},...l}=ho(e,t),u=await o.detectOverflow(t,l),d=go(i),f=_o(i),p=xo(i)===`y`,{width:m,height:h}=a.floating,g,_;d===`top`||d===`bottom`?(g=d,_=f===(await(o.isRTL==null?void 0:o.isRTL(s.floating))?`start`:`end`)?`left`:`right`):(_=d,g=f===`end`?`top`:`bottom`);let v=h-u.top-u.bottom,y=m-u.left-u.right,b=so(h-u[g],v),x=so(m-u[_],y),S=!t.middlewareData.shift,C=b,w=x;if((n=t.middlewareData.shift)!=null&&n.enabled.x&&(w=y),(r=t.middlewareData.shift)!=null&&r.enabled.y&&(C=v),S&&!f){let e=Q(u.left,0),t=Q(u.right,0),n=Q(u.top,0),r=Q(u.bottom,0);p?w=m-2*(e!==0||t!==0?e+t:Q(u.left,u.right)):C=h-2*(n!==0||r!==0?n+r:Q(u.top,u.bottom))}await c({...t,availableWidth:w,availableHeight:C});let T=await o.getDimensions(s.floating);return m!==T.width||h!==T.height?{reset:{rects:!0}}:{}}}};function Xo(){return typeof window<`u`}function Zo(e){return $o(e)?(e.nodeName||``).toLowerCase():`#document`}function $(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function Qo(e){return(($o(e)?e.ownerDocument:e.document)||window.document)?.documentElement}function $o(e){return Xo()?e instanceof Node||e instanceof $(e).Node:!1}function es(e){return Xo()?e instanceof Element||e instanceof $(e).Element:!1}function ts(e){return Xo()?e instanceof HTMLElement||e instanceof $(e).HTMLElement:!1}function ns(e){return!Xo()||typeof ShadowRoot>`u`?!1:e instanceof ShadowRoot||e instanceof $(e).ShadowRoot}var rs=new Set([`inline`,`contents`]);function is(e){let{overflow:t,overflowX:n,overflowY:r,display:i}=_s(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&!rs.has(i)}var as=new Set([`table`,`td`,`th`]);function os(e){return as.has(Zo(e))}var ss=[`:popover-open`,`:modal`];function cs(e){return ss.some(t=>{try{return e.matches(t)}catch{return!1}})}var ls=[`transform`,`translate`,`scale`,`rotate`,`perspective`],us=[`transform`,`translate`,`scale`,`rotate`,`perspective`,`filter`],ds=[`paint`,`layout`,`strict`,`content`];function fs(e){let t=ms(),n=es(e)?_s(e):e;return ls.some(e=>n[e]?n[e]!==`none`:!1)||(n.containerType?n.containerType!==`normal`:!1)||!t&&(n.backdropFilter?n.backdropFilter!==`none`:!1)||!t&&(n.filter?n.filter!==`none`:!1)||us.some(e=>(n.willChange||``).includes(e))||ds.some(e=>(n.contain||``).includes(e))}function ps(e){let t=ys(e);for(;ts(t)&&!gs(t);){if(fs(t))return t;if(cs(t))return null;t=ys(t)}return null}function ms(){return typeof CSS>`u`||!CSS.supports?!1:CSS.supports(`-webkit-backdrop-filter`,`none`)}var hs=new Set([`html`,`body`,`#document`]);function gs(e){return hs.has(Zo(e))}function _s(e){return $(e).getComputedStyle(e)}function vs(e){return es(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function ys(e){if(Zo(e)===`html`)return e;let t=e.assignedSlot||e.parentNode||ns(e)&&e.host||Qo(e);return ns(t)?t.host:t}function bs(e){let t=ys(e);return gs(t)?e.ownerDocument?e.ownerDocument.body:e.body:ts(t)&&is(t)?t:bs(t)}function xs(e,t,n){t===void 0&&(t=[]),n===void 0&&(n=!0);let r=bs(e),i=r===e.ownerDocument?.body,a=$(r);if(i){let e=Ss(a);return t.concat(a,a.visualViewport||[],is(r)?r:[],e&&n?xs(e):[])}return t.concat(r,xs(r,[],n))}function Ss(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function Cs(e){let t=_s(e),n=parseFloat(t.width)||0,r=parseFloat(t.height)||0,i=ts(e),a=i?e.offsetWidth:n,o=i?e.offsetHeight:r,s=co(n)!==a||co(r)!==o;return s&&(n=a,r=o),{width:n,height:r,$:s}}function ws(e){return es(e)?e:e.contextElement}function Ts(e){let t=ws(e);if(!ts(t))return uo(1);let n=t.getBoundingClientRect(),{width:r,height:i,$:a}=Cs(t),o=(a?co(n.width):n.width)/r,s=(a?co(n.height):n.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!s||!Number.isFinite(s))&&(s=1),{x:o,y:s}}var Es=uo(0);function Ds(e){let t=$(e);return!ms()||!t.visualViewport?Es:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function Os(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==$(e)?!1:t}function ks(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);let i=e.getBoundingClientRect(),a=ws(e),o=uo(1);t&&(r?es(r)&&(o=Ts(r)):o=Ts(e));let s=Os(a,n,r)?Ds(a):uo(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){let e=$(a),t=r&&es(r)?$(r):r,n=e,i=Ss(n);for(;i&&r&&t!==n;){let e=Ts(i),t=i.getBoundingClientRect(),r=_s(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=$(i),i=Ss(n)}}return Fo({width:u,height:d,x:c,y:l})}function As(e,t){let n=vs(e).scrollLeft;return t?t.left+n:ks(Qo(e)).left+n}function js(e,t){let n=e.getBoundingClientRect();return{x:n.left+t.scrollLeft-As(e,n),y:n.top+t.scrollTop}}function Ms(e){let{elements:t,rect:n,offsetParent:r,strategy:i}=e,a=i===`fixed`,o=Qo(r),s=t?cs(t.floating):!1;if(r===o||s&&a)return n;let c={scrollLeft:0,scrollTop:0},l=uo(1),u=uo(0),d=ts(r);if((d||!d&&!a)&&((Zo(r)!==`body`||is(o))&&(c=vs(r)),ts(r))){let e=ks(r);l=Ts(r),u.x=e.x+r.clientLeft,u.y=e.y+r.clientTop}let f=o&&!d&&!a?js(o,c):uo(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 Ns(e){return Array.from(e.getClientRects())}function Ps(e){let t=Qo(e),n=vs(e),r=e.ownerDocument.body,i=Q(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),a=Q(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight),o=-n.scrollLeft+As(e),s=-n.scrollTop;return _s(r).direction===`rtl`&&(o+=Q(t.clientWidth,r.clientWidth)-i),{width:i,height:a,x:o,y:s}}var Fs=25;function Is(e,t){let n=$(e),r=Qo(e),i=n.visualViewport,a=r.clientWidth,o=r.clientHeight,s=0,c=0;if(i){a=i.width,o=i.height;let e=ms();(!e||e&&t===`fixed`)&&(s=i.offsetLeft,c=i.offsetTop)}let l=As(r);if(l<=0){let e=r.ownerDocument,t=e.body,n=getComputedStyle(t),i=e.compatMode===`CSS1Compat`&&parseFloat(n.marginLeft)+parseFloat(n.marginRight)||0,o=Math.abs(r.clientWidth-t.clientWidth-i);o<=Fs&&(a-=o)}else l<=Fs&&(a+=l);return{width:a,height:o,x:s,y:c}}var Ls=new Set([`absolute`,`fixed`]);function Rs(e,t){let n=ks(e,!0,t===`fixed`),r=n.top+e.clientTop,i=n.left+e.clientLeft,a=ts(e)?Ts(e):uo(1);return{width:e.clientWidth*a.x,height:e.clientHeight*a.y,x:i*a.x,y:r*a.y}}function zs(e,t,n){let r;if(t===`viewport`)r=Is(e,n);else if(t===`document`)r=Ps(Qo(e));else if(es(t))r=Rs(t,n);else{let n=Ds(e);r={x:t.x-n.x,y:t.y-n.y,width:t.width,height:t.height}}return Fo(r)}function Bs(e,t){let n=ys(e);return n===t||!es(n)||gs(n)?!1:_s(n).position===`fixed`||Bs(n,t)}function Vs(e,t){let n=t.get(e);if(n)return n;let r=xs(e,[],!1).filter(e=>es(e)&&Zo(e)!==`body`),i=null,a=_s(e).position===`fixed`,o=a?ys(e):e;for(;es(o)&&!gs(o);){let t=_s(o),n=fs(o);!n&&t.position===`fixed`&&(i=null),(a?!n&&!i:!n&&t.position===`static`&&i&&Ls.has(i.position)||is(o)&&!n&&Bs(e,o))?r=r.filter(e=>e!==o):i=t,o=ys(o)}return t.set(e,r),r}function Hs(e){let{element:t,boundary:n,rootBoundary:r,strategy:i}=e,a=[...n===`clippingAncestors`?cs(t)?[]:Vs(t,this._c):[].concat(n),r],o=a[0],s=a.reduce((e,n)=>{let r=zs(t,n,i);return e.top=Q(r.top,e.top),e.right=so(r.right,e.right),e.bottom=so(r.bottom,e.bottom),e.left=Q(r.left,e.left),e},zs(t,o,i));return{width:s.right-s.left,height:s.bottom-s.top,x:s.left,y:s.top}}function Us(e){let{width:t,height:n}=Cs(e);return{width:t,height:n}}function Ws(e,t,n){let r=ts(t),i=Qo(t),a=n===`fixed`,o=ks(e,!0,a,t),s={scrollLeft:0,scrollTop:0},c=uo(0);function l(){c.x=As(i)}if(r||!r&&!a)if((Zo(t)!==`body`||is(i))&&(s=vs(t)),r){let e=ks(t,!0,a,t);c.x=e.x+t.clientLeft,c.y=e.y+t.clientTop}else i&&l();a&&!r&&i&&l();let u=i&&!r&&!a?js(i,s):uo(0);return{x:o.left+s.scrollLeft-c.x-u.x,y:o.top+s.scrollTop-c.y-u.y,width:o.width,height:o.height}}function Gs(e){return _s(e).position===`static`}function Ks(e,t){if(!ts(e)||_s(e).position===`fixed`)return null;if(t)return t(e);let n=e.offsetParent;return Qo(e)===n&&(n=n.ownerDocument.body),n}function qs(e,t){let n=$(e);if(cs(e))return n;if(!ts(e)){let t=ys(e);for(;t&&!gs(t);){if(es(t)&&!Gs(t))return t;t=ys(t)}return n}let r=Ks(e,t);for(;r&&os(r)&&Gs(r);)r=Ks(r,t);return r&&gs(r)&&Gs(r)&&!fs(r)?n:r||ps(e)||n}var Js=async function(e){let t=this.getOffsetParent||qs,n=this.getDimensions,r=await n(e.floating);return{reference:Ws(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function Ys(e){return _s(e).direction===`rtl`}var Xs={convertOffsetParentRelativeRectToViewportRelativeRect:Ms,getDocumentElement:Qo,getClippingRect:Hs,getOffsetParent:qs,getElementRects:Js,getClientRects:Ns,getDimensions:Us,getScale:Ts,isElement:es,isRTL:Ys};function Zs(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function Qs(e,t){let n=null,r,i=Qo(e);function a(){var e;clearTimeout(r),(e=n)==null||e.disconnect(),n=null}function o(s,c){s===void 0&&(s=!1),c===void 0&&(c=1),a();let l=e.getBoundingClientRect(),{left:u,top:d,width:f,height:p}=l;if(s||t(),!f||!p)return;let m=lo(d),h=lo(i.clientWidth-(u+f)),g=lo(i.clientHeight-(d+p)),_=lo(u),v={rootMargin:-m+`px `+-h+`px `+-g+`px `+-_+`px`,threshold:Q(0,so(1,c))||1},y=!0;function b(t){let n=t[0].intersectionRatio;if(n!==c){if(!y)return o();n?o(!1,n):r=setTimeout(()=>{o(!1,1e-7)},1e3)}n===1&&!Zs(l,e.getBoundingClientRect())&&o(),y=!1}try{n=new IntersectionObserver(b,{...v,root:i.ownerDocument})}catch{n=new IntersectionObserver(b,v)}n.observe(e)}return o(!0),a}function $s(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=ws(e),u=i||a?[...l?xs(l):[],...xs(t)]:[];u.forEach(e=>{i&&e.addEventListener(`scroll`,n,{passive:!0}),a&&e.addEventListener(`resize`,n)});let d=l&&s?Qs(l,n):null,f=-1,p=null;o&&(p=new ResizeObserver(e=>{let[r]=e;r&&r.target===l&&p&&(p.unobserve(t),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var e;(e=p)==null||e.observe(t)})),n()}),l&&!c&&p.observe(l),p.observe(t));let m,h=c?ks(e):null;c&&g();function g(){let t=ks(e);h&&!Zs(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 ec=Ko,tc=qo,nc=Bo,rc=Yo,ic=Uo,ac=zo,oc=Jo,sc=(e,t,n)=>{let r=new Map,i={platform:Xs,...n},a={...i.platform,_c:r};return Ro(e,t,{...i,platform:a})},cc=typeof document<`u`?I.useLayoutEffect:function(){};function lc(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(!lc(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)&&!lc(e[n],t[n]))return!1}return!0}return e!==e&&t!==t}function uc(e){return typeof window>`u`?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function dc(e,t){let n=uc(e);return Math.round(t*n)/n}function fc(e){let t=I.useRef(e);return cc(()=>{t.current=e}),t}function pc(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]=I.useState({x:0,y:0,strategy:n,placement:t,middlewareData:{},isPositioned:!1}),[f,p]=I.useState(r);lc(f,r)||p(r);let[m,h]=I.useState(null),[g,_]=I.useState(null),v=I.useCallback(e=>{e!==S.current&&(S.current=e,h(e))},[]),y=I.useCallback(e=>{e!==C.current&&(C.current=e,_(e))},[]),b=a||m,x=o||g,S=I.useRef(null),C=I.useRef(null),w=I.useRef(u),T=c!=null,E=fc(c),D=fc(i),O=fc(l),k=I.useCallback(()=>{if(!S.current||!C.current)return;let e={placement:t,strategy:n,middleware:f};D.current&&(e.platform=D.current),sc(S.current,C.current,e).then(e=>{let t={...e,isPositioned:O.current!==!1};A.current&&!lc(w.current,t)&&(w.current=t,ve.flushSync(()=>{d(t)}))})},[f,t,n,D,O]);cc(()=>{l===!1&&w.current.isPositioned&&(w.current.isPositioned=!1,d(e=>({...e,isPositioned:!1})))},[l]);let A=I.useRef(!1);cc(()=>(A.current=!0,()=>{A.current=!1}),[]),cc(()=>{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=I.useMemo(()=>({reference:S,floating:C,setReference:v,setFloating:y}),[v,y]),M=I.useMemo(()=>({reference:b,floating:x}),[b,x]),N=I.useMemo(()=>{let e={position:n,left:0,top:0};if(!M.floating)return e;let t=dc(M.floating,u.x),r=dc(M.floating,u.y);return s?{...e,transform:`translate(`+t+`px, `+r+`px)`,...uc(M.floating)>=1.5&&{willChange:`transform`}}:{position:n,left:t,top:r}},[n,s,M.floating,u.x,u.y]);return I.useMemo(()=>({...u,update:k,refs:j,elements:M,floatingStyles:N}),[u,k,j,M,N])}var mc=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?{}:ac({element:r.current,padding:i}).fn(n):r?ac({element:r,padding:i}).fn(n):{}}}},hc=(e,t)=>({...ec(e),options:[e,t]}),gc=(e,t)=>({...tc(e),options:[e,t]}),_c=(e,t)=>({...oc(e),options:[e,t]}),vc=(e,t)=>({...nc(e),options:[e,t]}),yc=(e,t)=>({...rc(e),options:[e,t]}),bc=(e,t)=>({...ic(e),options:[e,t]}),xc=(e,t)=>({...mc(e),options:[e,t]}),Sc=`Arrow`,Cc=I.forwardRef((e,t)=>{let{children:n,width:r=10,height:i=5,...a}=e;return(0,R.jsx)(Y.svg,{...a,ref:t,width:r,height:i,viewBox:`0 0 30 10`,preserveAspectRatio:`none`,children:e.asChild?n:(0,R.jsx)(`polygon`,{points:`0,0 30,0 15,10`})})});Cc.displayName=Sc;var wc=Cc;function Tc(e){let[t,n]=I.useState(void 0);return Z(()=>{if(e){n({width:e.offsetWidth,height:e.offsetHeight});let t=new ResizeObserver(t=>{if(!Array.isArray(t)||!t.length)return;let r=t[0],i,a;if(`borderBoxSize`in r){let e=r.borderBoxSize,t=Array.isArray(e)?e[0]:e;i=t.inlineSize,a=t.blockSize}else i=e.offsetWidth,a=e.offsetHeight;n({width:i,height:a})});return t.observe(e,{box:`border-box`}),()=>t.unobserve(e)}else n(void 0)},[e]),t}var Ec=`Popper`,[Dc,Oc]=ja(Ec),[kc,Ac]=Dc(Ec),jc=e=>{let{__scopePopper:t,children:n}=e,[r,i]=I.useState(null);return(0,R.jsx)(kc,{scope:t,anchor:r,onAnchorChange:i,children:n})};jc.displayName=Ec;var Mc=`PopperAnchor`,Nc=I.forwardRef((e,t)=>{let{__scopePopper:n,virtualRef:r,...i}=e,a=Ac(Mc,n),o=I.useRef(null),s=L(t,o),c=I.useRef(null);return I.useEffect(()=>{let e=c.current;c.current=r?.current||o.current,e!==c.current&&a.onAnchorChange(c.current)}),r?null:(0,R.jsx)(Y.div,{...i,ref:s})});Nc.displayName=Mc;var Pc=`PopperContent`,[Fc,Ic]=Dc(Pc),Lc=I.forwardRef((e,t)=>{let{__scopePopper:n,side:r=`bottom`,sideOffset:i=0,align:a=`center`,alignOffset:o=0,arrowPadding:s=0,avoidCollisions:c=!0,collisionBoundary:l=[],collisionPadding:u=0,sticky:d=`partial`,hideWhenDetached:f=!1,updatePositionStrategy:p=`optimized`,onPlaced:m,...h}=e,g=Ac(Pc,n),[_,v]=I.useState(null),y=L(t,e=>v(e)),[b,x]=I.useState(null),S=Tc(b),C=S?.width??0,w=S?.height??0,T=r+(a===`center`?``:`-`+a),E=typeof u==`number`?u:{top:0,right:0,bottom:0,left:0,...u},D=Array.isArray(l)?l:[l],O=D.length>0,k={padding:E,boundary:D.filter(Vc),altBoundary:O},{refs:A,floatingStyles:j,placement:M,isPositioned:N,middlewareData:P}=pc({strategy:`fixed`,placement:T,whileElementsMounted:(...e)=>$s(...e,{animationFrame:p===`always`}),elements:{reference:g.anchor},middleware:[hc({mainAxis:i+w,alignmentAxis:o}),c&&gc({mainAxis:!0,crossAxis:!1,limiter:d===`partial`?_c():void 0,...k}),c&&vc({...k}),yc({...k,apply:({elements:e,rects:t,availableWidth:n,availableHeight:r})=>{let{width:i,height:a}=t.reference,o=e.floating.style;o.setProperty(`--radix-popper-available-width`,`${n}px`),o.setProperty(`--radix-popper-available-height`,`${r}px`),o.setProperty(`--radix-popper-anchor-width`,`${i}px`),o.setProperty(`--radix-popper-anchor-height`,`${a}px`)}}),b&&xc({element:b,padding:s}),Hc({arrowWidth:C,arrowHeight:w}),f&&bc({strategy:`referenceHidden`,...k})]}),[F,ee]=Uc(M),te=X(m);Z(()=>{N&&te?.()},[N,te]);let ne=P.arrow?.x,re=P.arrow?.y,ie=P.arrow?.centerOffset!==0,[ae,oe]=I.useState();return Z(()=>{_&&oe(window.getComputedStyle(_).zIndex)},[_]),(0,R.jsx)(`div`,{ref:A.setFloating,"data-radix-popper-content-wrapper":``,style:{...j,transform:N?j.transform:`translate(0, -200%)`,minWidth:`max-content`,zIndex:ae,"--radix-popper-transform-origin":[P.transformOrigin?.x,P.transformOrigin?.y].join(` `),...P.hide?.referenceHidden&&{visibility:`hidden`,pointerEvents:`none`}},dir:e.dir,children:(0,R.jsx)(Fc,{scope:n,placedSide:F,onArrowChange:x,arrowX:ne,arrowY:re,shouldHideArrow:ie,children:(0,R.jsx)(Y.div,{"data-side":F,"data-align":ee,...h,ref:y,style:{...h.style,animation:N?void 0:`none`}})})})});Lc.displayName=Pc;var Rc=`PopperArrow`,zc={top:`bottom`,right:`left`,bottom:`top`,left:`right`},Bc=I.forwardRef(function(e,t){let{__scopePopper:n,...r}=e,i=Ic(Rc,n),a=zc[i.placedSide];return(0,R.jsx)(`span`,{ref:i.onArrowChange,style:{position:`absolute`,left:i.arrowX,top:i.arrowY,[a]:0,transformOrigin:{top:``,right:`0 0`,bottom:`center 0`,left:`100% 0`}[i.placedSide],transform:{top:`translateY(100%)`,right:`translateY(50%) rotate(90deg) translateX(-50%)`,bottom:`rotate(180deg)`,left:`translateY(50%) rotate(-90deg) translateX(50%)`}[i.placedSide],visibility:i.shouldHideArrow?`hidden`:void 0},children:(0,R.jsx)(wc,{...r,ref:t,style:{...r.style,display:`block`}})})});Bc.displayName=Rc;function Vc(e){return e!==null}var Hc=e=>({name:`transformOrigin`,options:e,fn(t){let{placement:n,rects:r,middlewareData:i}=t,a=i.arrow?.centerOffset!==0,o=a?0:e.arrowWidth,s=a?0:e.arrowHeight,[c,l]=Uc(n),u={start:`0%`,center:`50%`,end:`100%`}[l],d=(i.arrow?.x??0)+o/2,f=(i.arrow?.y??0)+s/2,p=``,m=``;return c===`bottom`?(p=a?u:`${d}px`,m=`${-s}px`):c===`top`?(p=a?u:`${d}px`,m=`${r.floating.height+s}px`):c===`right`?(p=`${-s}px`,m=a?u:`${f}px`):c===`left`&&(p=`${r.floating.width+s}px`,m=a?u:`${f}px`),{data:{x:p,y:m}}}});function Uc(e){let[t,n=`center`]=e.split(`-`);return[t,n]}var Wc=jc,Gc=Nc,Kc=Lc,qc=Bc,Jc=`Portal`,Yc=I.forwardRef((e,t)=>{let{container:n,...r}=e,[i,a]=I.useState(!1);Z(()=>a(!0),[]);let o=n||i&&globalThis?.document?.body;return o?ve.createPortal((0,R.jsx)(Y.div,{...r,ref:t}),o):null});Yc.displayName=Jc;function Xc(e,t){return I.useReducer((e,n)=>t[e][n]??e,e)}var Zc=e=>{let{present:t,children:n}=e,r=Qc(t),i=typeof n==`function`?n({present:r.isPresent}):I.Children.only(n),a=L(r.ref,el(i));return typeof n==`function`||r.isPresent?I.cloneElement(i,{ref:a}):null};Zc.displayName=`Presence`;function Qc(e){let[t,n]=I.useState(),r=I.useRef(null),i=I.useRef(e),a=I.useRef(`none`),[o,s]=Xc(e?`mounted`:`unmounted`,{mounted:{UNMOUNT:`unmounted`,ANIMATION_OUT:`unmountSuspended`},unmountSuspended:{MOUNT:`mounted`,ANIMATION_END:`unmounted`},unmounted:{MOUNT:`mounted`}});return I.useEffect(()=>{let e=$c(r.current);a.current=o===`mounted`?e:`none`},[o]),Z(()=>{let t=r.current,n=i.current;if(n!==e){let r=a.current,o=$c(t);e?s(`MOUNT`):o===`none`||t?.display===`none`?s(`UNMOUNT`):s(n&&r!==o?`ANIMATION_OUT`:`UNMOUNT`),i.current=e}},[e,s]),Z(()=>{if(t){let e,n=t.ownerDocument.defaultView??window,o=a=>{let o=$c(r.current).includes(CSS.escape(a.animationName));if(a.target===t&&o&&(s(`ANIMATION_END`),!i.current)){let r=t.style.animationFillMode;t.style.animationFillMode=`forwards`,e=n.setTimeout(()=>{t.style.animationFillMode===`forwards`&&(t.style.animationFillMode=r)})}},c=e=>{e.target===t&&(a.current=$c(r.current))};return t.addEventListener(`animationstart`,c),t.addEventListener(`animationcancel`,o),t.addEventListener(`animationend`,o),()=>{n.clearTimeout(e),t.removeEventListener(`animationstart`,c),t.removeEventListener(`animationcancel`,o),t.removeEventListener(`animationend`,o)}}else s(`ANIMATION_END`)},[t,s]),{isPresent:[`mounted`,`unmountSuspended`].includes(o),ref:I.useCallback(e=>{r.current=e?getComputedStyle(e):null,n(e)},[])}}function $c(e){return e?.animationName||`none`}function el(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}var tl=I.useInsertionEffect||Z;function nl({prop:e,defaultProp:t,onChange:n=()=>{},caller:r}){let[i,a,o]=rl({defaultProp:t,onChange:n}),s=e!==void 0,c=s?e:i;{let t=I.useRef(e!==void 0);I.useEffect(()=>{let e=t.current;e!==s&&console.warn(`${r} is changing from ${e?`controlled`:`uncontrolled`} to ${s?`controlled`:`uncontrolled`}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),t.current=s},[s,r])}return[c,I.useCallback(t=>{if(s){let n=il(t)?t(e):t;n!==e&&o.current?.(n)}else a(t)},[s,e,a,o])]}function rl({defaultProp:e,onChange:t}){let[n,r]=I.useState(e),i=I.useRef(n),a=I.useRef(t);return tl(()=>{a.current=t},[t]),I.useEffect(()=>{i.current!==n&&(a.current?.(n),i.current=n)},[n,i]),[n,r,a]}function il(e){return typeof e==`function`}var al=Object.freeze({position:`absolute`,border:0,width:1,height:1,padding:0,margin:-1,overflow:`hidden`,clip:`rect(0, 0, 0, 0)`,whiteSpace:`nowrap`,wordWrap:`normal`}),ol=`VisuallyHidden`,sl=I.forwardRef((e,t)=>(0,R.jsx)(Y.span,{...e,ref:t,style:{...al,...e.style}}));sl.displayName=ol;var cl=sl,[ll,ul]=ja(`Tooltip`,[Oc]),dl=Oc(),fl=`TooltipProvider`,pl=700,ml=`tooltip.open`,[hl,gl]=ll(fl),_l=e=>{let{__scopeTooltip:t,delayDuration:n=pl,skipDelayDuration:r=300,disableHoverableContent:i=!1,children:a}=e,o=I.useRef(!0),s=I.useRef(!1),c=I.useRef(0);return I.useEffect(()=>{let e=c.current;return()=>window.clearTimeout(e)},[]),(0,R.jsx)(hl,{scope:t,isOpenDelayedRef:o,delayDuration:n,onOpen:I.useCallback(()=>{window.clearTimeout(c.current),o.current=!1},[]),onClose:I.useCallback(()=>{window.clearTimeout(c.current),c.current=window.setTimeout(()=>o.current=!0,r)},[r]),isPointerInTransitRef:s,onPointerInTransitChange:I.useCallback(e=>{s.current=e},[]),disableHoverableContent:i,children:a})};_l.displayName=fl;var vl=`Tooltip`,[yl,bl]=ll(vl),xl=e=>{let{__scopeTooltip:t,children:n,open:r,defaultOpen:i,onOpenChange:a,disableHoverableContent:o,delayDuration:s}=e,c=gl(vl,e.__scopeTooltip),l=dl(t),[u,d]=I.useState(null),f=ao(),p=I.useRef(0),m=o??c.disableHoverableContent,h=s??c.delayDuration,g=I.useRef(!1),[_,v]=nl({prop:r,defaultProp:i??!1,onChange:e=>{e?(c.onOpen(),document.dispatchEvent(new CustomEvent(ml))):c.onClose(),a?.(e)},caller:vl}),y=I.useMemo(()=>_?g.current?`delayed-open`:`instant-open`:`closed`,[_]),b=I.useCallback(()=>{window.clearTimeout(p.current),p.current=0,g.current=!1,v(!0)},[v]),x=I.useCallback(()=>{window.clearTimeout(p.current),p.current=0,v(!1)},[v]),S=I.useCallback(()=>{window.clearTimeout(p.current),p.current=window.setTimeout(()=>{g.current=!0,v(!0),p.current=0},h)},[h,v]);return I.useEffect(()=>()=>{p.current&&=(window.clearTimeout(p.current),0)},[]),(0,R.jsx)(Wc,{...l,children:(0,R.jsx)(yl,{scope:t,contentId:f,open:_,stateAttribute:y,trigger:u,onTriggerChange:d,onTriggerEnter:I.useCallback(()=>{c.isOpenDelayedRef.current?S():b()},[c.isOpenDelayedRef,S,b]),onTriggerLeave:I.useCallback(()=>{m?x():(window.clearTimeout(p.current),p.current=0)},[x,m]),onOpen:b,onClose:x,disableHoverableContent:m,children:n})})};xl.displayName=vl;var Sl=`TooltipTrigger`,Cl=I.forwardRef((e,t)=>{let{__scopeTooltip:n,...r}=e,i=bl(Sl,n),a=gl(Sl,n),o=dl(n),s=L(t,I.useRef(null),i.onTriggerChange),c=I.useRef(!1),l=I.useRef(!1),u=I.useCallback(()=>c.current=!1,[]);return I.useEffect(()=>()=>document.removeEventListener(`pointerup`,u),[u]),(0,R.jsx)(Gc,{asChild:!0,...o,children:(0,R.jsx)(Y.button,{"aria-describedby":i.open?i.contentId:void 0,"data-state":i.stateAttribute,...r,ref:s,onPointerMove:J(e.onPointerMove,e=>{e.pointerType!==`touch`&&!l.current&&!a.isPointerInTransitRef.current&&(i.onTriggerEnter(),l.current=!0)}),onPointerLeave:J(e.onPointerLeave,()=>{i.onTriggerLeave(),l.current=!1}),onPointerDown:J(e.onPointerDown,()=>{i.open&&i.onClose(),c.current=!0,document.addEventListener(`pointerup`,u,{once:!0})}),onFocus:J(e.onFocus,()=>{c.current||i.onOpen()}),onBlur:J(e.onBlur,i.onClose),onClick:J(e.onClick,i.onClose)})})});Cl.displayName=Sl;var wl=`TooltipPortal`,[Tl,El]=ll(wl,{forceMount:void 0}),Dl=e=>{let{__scopeTooltip:t,forceMount:n,children:r,container:i}=e,a=bl(wl,t);return(0,R.jsx)(Tl,{scope:t,forceMount:n,children:(0,R.jsx)(Zc,{present:n||a.open,children:(0,R.jsx)(Yc,{asChild:!0,container:i,children:r})})})};Dl.displayName=wl;var Ol=`TooltipContent`,kl=I.forwardRef((e,t)=>{let n=El(Ol,e.__scopeTooltip),{forceMount:r=n.forceMount,side:i=`top`,...a}=e,o=bl(Ol,e.__scopeTooltip);return(0,R.jsx)(Zc,{present:r||o.open,children:o.disableHoverableContent?(0,R.jsx)(Pl,{side:i,...a,ref:t}):(0,R.jsx)(Al,{side:i,...a,ref:t})})}),Al=I.forwardRef((e,t)=>{let n=bl(Ol,e.__scopeTooltip),r=gl(Ol,e.__scopeTooltip),i=I.useRef(null),a=L(t,i),[o,s]=I.useState(null),{trigger:c,onClose:l}=n,u=i.current,{onPointerInTransitChange:d}=r,f=I.useCallback(()=>{s(null),d(!1)},[d]),p=I.useCallback((e,t)=>{let n=e.currentTarget,r={x:e.clientX,y:e.clientY},i=Rl(r,Ll(r,n.getBoundingClientRect())),a=zl(t.getBoundingClientRect());s(Vl([...i,...a])),d(!0)},[d]);return I.useEffect(()=>()=>f(),[f]),I.useEffect(()=>{if(c&&u){let e=e=>p(e,u),t=e=>p(e,c);return c.addEventListener(`pointerleave`,e),u.addEventListener(`pointerleave`,t),()=>{c.removeEventListener(`pointerleave`,e),u.removeEventListener(`pointerleave`,t)}}},[c,u,p,f]),I.useEffect(()=>{if(o){let e=e=>{let t=e.target,n={x:e.clientX,y:e.clientY},r=c?.contains(t)||u?.contains(t),i=!Bl(n,o);r?f():i&&(f(),l())};return document.addEventListener(`pointermove`,e),()=>document.removeEventListener(`pointermove`,e)}},[c,u,o,l,f]),(0,R.jsx)(Pl,{...e,ref:a})}),[jl,Ml]=ll(vl,{isInside:!1}),Nl=Ia(`TooltipContent`),Pl=I.forwardRef((e,t)=>{let{__scopeTooltip:n,children:r,"aria-label":i,onEscapeKeyDown:a,onPointerDownOutside:o,...s}=e,c=bl(Ol,n),l=dl(n),{onClose:u}=c;return I.useEffect(()=>(document.addEventListener(ml,u),()=>document.removeEventListener(ml,u)),[u]),I.useEffect(()=>{if(c.trigger){let e=e=>{e.target?.contains(c.trigger)&&u()};return window.addEventListener(`scroll`,e,{capture:!0}),()=>window.removeEventListener(`scroll`,e,{capture:!0})}},[c.trigger,u]),(0,R.jsx)(Ja,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:a,onPointerDownOutside:o,onFocusOutside:e=>e.preventDefault(),onDismiss:u,children:(0,R.jsxs)(Kc,{"data-state":c.stateAttribute,...l,...s,ref:t,style:{...s.style,"--radix-tooltip-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-tooltip-content-available-width":`var(--radix-popper-available-width)`,"--radix-tooltip-content-available-height":`var(--radix-popper-available-height)`,"--radix-tooltip-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-tooltip-trigger-height":`var(--radix-popper-anchor-height)`},children:[(0,R.jsx)(Nl,{children:r}),(0,R.jsx)(jl,{scope:n,isInside:!0,children:(0,R.jsx)(cl,{id:c.contentId,role:`tooltip`,children:i||r})})]})})});kl.displayName=Ol;var Fl=`TooltipArrow`,Il=I.forwardRef((e,t)=>{let{__scopeTooltip:n,...r}=e,i=dl(n);return Ml(Fl,n).isInside?null:(0,R.jsx)(qc,{...i,...r,ref:t})});Il.displayName=Fl;function Ll(e,t){let n=Math.abs(t.top-e.y),r=Math.abs(t.bottom-e.y),i=Math.abs(t.right-e.x),a=Math.abs(t.left-e.x);switch(Math.min(n,r,i,a)){case a:return`left`;case i:return`right`;case n:return`top`;case r:return`bottom`;default:throw Error(`unreachable`)}}function Rl(e,t,n=5){let r=[];switch(t){case`top`:r.push({x:e.x-n,y:e.y+n},{x:e.x+n,y:e.y+n});break;case`bottom`:r.push({x:e.x-n,y:e.y-n},{x:e.x+n,y:e.y-n});break;case`left`:r.push({x:e.x+n,y:e.y-n},{x:e.x+n,y:e.y+n});break;case`right`:r.push({x:e.x-n,y:e.y-n},{x:e.x-n,y:e.y+n});break}return r}function zl(e){let{top:t,right:n,bottom:r,left:i}=e;return[{x:i,y:t},{x:n,y:t},{x:n,y:r},{x:i,y:r}]}function Bl(e,t){let{x:n,y:r}=e,i=!1;for(let e=0,a=t.length-1;e<t.length;a=e++){let o=t[e],s=t[a],c=o.x,l=o.y,u=s.x,d=s.y;l>r!=d>r&&n<(u-c)*(r-l)/(d-l)+c&&(i=!i)}return i}function Vl(e){let t=e.slice();return t.sort((e,t)=>e.x<t.x?-1:e.x>t.x?1:e.y<t.y?-1:+(e.y>t.y)),Hl(t)}function Hl(e){if(e.length<=1)return e.slice();let t=[];for(let n=0;n<e.length;n++){let r=e[n];for(;t.length>=2;){let e=t[t.length-1],n=t[t.length-2];if((e.x-n.x)*(r.y-n.y)>=(e.y-n.y)*(r.x-n.x))t.pop();else break}t.push(r)}t.pop();let n=[];for(let t=e.length-1;t>=0;t--){let r=e[t];for(;n.length>=2;){let e=n[n.length-1],t=n[n.length-2];if((e.x-t.x)*(r.y-t.y)>=(e.y-t.y)*(r.x-t.x))n.pop();else break}n.push(r)}return n.pop(),t.length===1&&n.length===1&&t[0].x===n[0].x&&t[0].y===n[0].y?t:t.concat(n)}var Ul=_l,Wl=xl,Gl=Cl,Kl=Dl,ql=kl,Jl=Ul,Yl=Wl,Xl=Gl,Zl=I.forwardRef((e,t)=>{let n=(0,F.c)(11),r,i,a;n[0]===e?(r=n[1],i=n[2],a=n[3]):({className:r,sideOffset:a,...i}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a);let o=a===void 0?4:a,s;n[4]===r?s=n[5]:(s=x(`z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-base text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2`,r),n[4]=r,n[5]=s);let c;return n[6]!==i||n[7]!==t||n[8]!==o||n[9]!==s?(c=(0,R.jsx)(Kl,{children:(0,R.jsx)(ql,{ref:t,sideOffset:o,className:s,...i})}),n[6]=i,n[7]=t,n[8]=o,n[9]=s,n[10]=c):c=n[10],c});Zl.displayName=ql.displayName;function Ql(e){let t=(0,F.c)(16),{className:n,label:r,size:i,overScenic:o}=e,s=i===void 0?`md`:i,c=o===void 0?!1:o,l=s===`sm`?`h-4 w-4`:s===`lg`?`h-8 w-8`:`h-6 w-6`,u;t[0]===n?u=t[1]:(u=x(`flex h-full items-center justify-center`,n),t[0]=n,t[1]=u);let d=c?`scenic-foreground`:`text-muted-foreground`,f;t[2]!==l||t[3]!==d?(f=x(l,`animate-spin mx-auto`,d),t[2]=l,t[3]=d,t[4]=f):f=t[4];let p;t[5]===f?p=t[6]:(p=(0,R.jsx)(w,{className:f}),t[5]=f,t[6]=p);let m;t[7]!==r||t[8]!==c?(m=r?(0,R.jsx)(`p`,{className:x(c?x(a.body,`scenic-foreground-muted`):a.bodyMuted,`mt-2`),children:r}):null,t[7]=r,t[8]=c,t[9]=m):m=t[9];let h;t[10]!==p||t[11]!==m?(h=(0,R.jsxs)(`div`,{className:`text-center`,children:[p,m]}),t[10]=p,t[11]=m,t[12]=h):h=t[12];let g;return t[13]!==u||t[14]!==h?(g=(0,R.jsx)(`div`,{className:u,children:h}),t[13]=u,t[14]=h,t[15]=g):g=t[15],g}function $l(){let e=(0,F.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,R.jsx)(`div`,{className:`space-y-1 px-2 py-2`,children:[1,2,3].map(eu)}),e[0]=t):t=e[0],t}function eu(e){return(0,R.jsx)(`div`,{className:`animate-pulse h-7 bg-muted rounded-full`},e)}function tu(){let e=(0,F.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,R.jsx)(`div`,{className:`animate-pulse h-4 bg-muted rounded mx-4 my-1`}),e[0]=t):t=e[0],t}var nu=I.createContext(void 0);function ru(e){let t=I.useContext(nu);return e||t||`ltr`}function iu(e,[t,n]){return Math.min(n,Math.max(t,e))}function au(e,t){return I.useReducer((e,n)=>t[e][n]??e,e)}var ou=`ScrollArea`,[su,cu]=ja(ou),[lu,uu]=su(ou),du=I.forwardRef((e,t)=>{let{__scopeScrollArea:n,type:r=`hover`,dir:i,scrollHideDelay:a=600,...o}=e,[s,c]=I.useState(null),[l,u]=I.useState(null),[d,f]=I.useState(null),[p,m]=I.useState(null),[h,g]=I.useState(null),[_,v]=I.useState(0),[y,b]=I.useState(0),[x,S]=I.useState(!1),[C,w]=I.useState(!1),T=L(t,e=>c(e)),E=ru(i);return(0,R.jsx)(lu,{scope:n,type:r,dir:E,scrollHideDelay:a,scrollArea:s,viewport:l,onViewportChange:u,content:d,onContentChange:f,scrollbarX:p,onScrollbarXChange:m,scrollbarXEnabled:x,onScrollbarXEnabledChange:S,scrollbarY:h,onScrollbarYChange:g,scrollbarYEnabled:C,onScrollbarYEnabledChange:w,onCornerWidthChange:v,onCornerHeightChange:b,children:(0,R.jsx)(Y.div,{dir:E,...o,ref:T,style:{position:`relative`,"--radix-scroll-area-corner-width":_+`px`,"--radix-scroll-area-corner-height":y+`px`,...e.style}})})});du.displayName=ou;var fu=`ScrollAreaViewport`,pu=I.forwardRef((e,t)=>{let{__scopeScrollArea:n,children:r,nonce:i,...a}=e,o=uu(fu,n),s=L(t,I.useRef(null),o.onViewportChange);return(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(`style`,{dangerouslySetInnerHTML:{__html:`[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}`},nonce:i}),(0,R.jsx)(Y.div,{"data-radix-scroll-area-viewport":``,...a,ref:s,style:{overflowX:o.scrollbarXEnabled?`scroll`:`hidden`,overflowY:o.scrollbarYEnabled?`scroll`:`hidden`,...e.style},children:(0,R.jsx)(`div`,{ref:o.onContentChange,style:{minWidth:`100%`,display:`table`},children:r})})]})});pu.displayName=fu;var mu=`ScrollAreaScrollbar`,hu=I.forwardRef((e,t)=>{let{forceMount:n,...r}=e,i=uu(mu,e.__scopeScrollArea),{onScrollbarXEnabledChange:a,onScrollbarYEnabledChange:o}=i,s=e.orientation===`horizontal`;return I.useEffect(()=>(s?a(!0):o(!0),()=>{s?a(!1):o(!1)}),[s,a,o]),i.type===`hover`?(0,R.jsx)(gu,{...r,ref:t,forceMount:n}):i.type===`scroll`?(0,R.jsx)(_u,{...r,ref:t,forceMount:n}):i.type===`auto`?(0,R.jsx)(vu,{...r,ref:t,forceMount:n}):i.type===`always`?(0,R.jsx)(yu,{...r,ref:t}):null});hu.displayName=mu;var gu=I.forwardRef((e,t)=>{let{forceMount:n,...r}=e,i=uu(mu,e.__scopeScrollArea),[a,o]=I.useState(!1);return I.useEffect(()=>{let e=i.scrollArea,t=0;if(e){let n=()=>{window.clearTimeout(t),o(!0)},r=()=>{t=window.setTimeout(()=>o(!1),i.scrollHideDelay)};return e.addEventListener(`pointerenter`,n),e.addEventListener(`pointerleave`,r),()=>{window.clearTimeout(t),e.removeEventListener(`pointerenter`,n),e.removeEventListener(`pointerleave`,r)}}},[i.scrollArea,i.scrollHideDelay]),(0,R.jsx)(Zc,{present:n||a,children:(0,R.jsx)(vu,{"data-state":a?`visible`:`hidden`,...r,ref:t})})}),_u=I.forwardRef((e,t)=>{let{forceMount:n,...r}=e,i=uu(mu,e.__scopeScrollArea),a=e.orientation===`horizontal`,o=zu(()=>c(`SCROLL_END`),100),[s,c]=au(`hidden`,{hidden:{SCROLL:`scrolling`},scrolling:{SCROLL_END:`idle`,POINTER_ENTER:`interacting`},interacting:{SCROLL:`interacting`,POINTER_LEAVE:`idle`},idle:{HIDE:`hidden`,SCROLL:`scrolling`,POINTER_ENTER:`interacting`}});return I.useEffect(()=>{if(s===`idle`){let e=window.setTimeout(()=>c(`HIDE`),i.scrollHideDelay);return()=>window.clearTimeout(e)}},[s,i.scrollHideDelay,c]),I.useEffect(()=>{let e=i.viewport,t=a?`scrollLeft`:`scrollTop`;if(e){let n=e[t],r=()=>{let r=e[t];n!==r&&(c(`SCROLL`),o()),n=r};return e.addEventListener(`scroll`,r),()=>e.removeEventListener(`scroll`,r)}},[i.viewport,a,c,o]),(0,R.jsx)(Zc,{present:n||s!==`hidden`,children:(0,R.jsx)(yu,{"data-state":s===`hidden`?`hidden`:`visible`,...r,ref:t,onPointerEnter:J(e.onPointerEnter,()=>c(`POINTER_ENTER`)),onPointerLeave:J(e.onPointerLeave,()=>c(`POINTER_LEAVE`))})})}),vu=I.forwardRef((e,t)=>{let n=uu(mu,e.__scopeScrollArea),{forceMount:r,...i}=e,[a,o]=I.useState(!1),s=e.orientation===`horizontal`,c=zu(()=>{if(n.viewport){let e=n.viewport.offsetWidth<n.viewport.scrollWidth,t=n.viewport.offsetHeight<n.viewport.scrollHeight;o(s?e:t)}},10);return Bu(n.viewport,c),Bu(n.content,c),(0,R.jsx)(Zc,{present:r||a,children:(0,R.jsx)(yu,{"data-state":a?`visible`:`hidden`,...i,ref:t})})}),yu=I.forwardRef((e,t)=>{let{orientation:n=`vertical`,...r}=e,i=uu(mu,e.__scopeScrollArea),a=I.useRef(null),o=I.useRef(0),[s,c]=I.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),l=Mu(s.viewport,s.content),u={...r,sizes:s,onSizesChange:c,hasThumb:l>0&&l<1,onThumbChange:e=>a.current=e,onThumbPointerUp:()=>o.current=0,onThumbPointerDown:e=>o.current=e};function d(e,t){return Pu(e,o.current,s,t)}return n===`horizontal`?(0,R.jsx)(bu,{...u,ref:t,onThumbPositionChange:()=>{if(i.viewport&&a.current){let e=i.viewport.scrollLeft,t=Fu(e,s,i.dir);a.current.style.transform=`translate3d(${t}px, 0, 0)`}},onWheelScroll:e=>{i.viewport&&(i.viewport.scrollLeft=e)},onDragScroll:e=>{i.viewport&&(i.viewport.scrollLeft=d(e,i.dir))}}):n===`vertical`?(0,R.jsx)(xu,{...u,ref:t,onThumbPositionChange:()=>{if(i.viewport&&a.current){let e=i.viewport.scrollTop,t=Fu(e,s);a.current.style.transform=`translate3d(0, ${t}px, 0)`}},onWheelScroll:e=>{i.viewport&&(i.viewport.scrollTop=e)},onDragScroll:e=>{i.viewport&&(i.viewport.scrollTop=d(e))}}):null}),bu=I.forwardRef((e,t)=>{let{sizes:n,onSizesChange:r,...i}=e,a=uu(mu,e.__scopeScrollArea),[o,s]=I.useState(),c=I.useRef(null),l=L(t,c,a.onScrollbarXChange);return I.useEffect(()=>{c.current&&s(getComputedStyle(c.current))},[c]),(0,R.jsx)(wu,{"data-orientation":`horizontal`,...i,ref:l,sizes:n,style:{bottom:0,left:a.dir===`rtl`?`var(--radix-scroll-area-corner-width)`:0,right:a.dir===`ltr`?`var(--radix-scroll-area-corner-width)`:0,"--radix-scroll-area-thumb-width":Nu(n)+`px`,...e.style},onThumbPointerDown:t=>e.onThumbPointerDown(t.x),onDragScroll:t=>e.onDragScroll(t.x),onWheelScroll:(t,n)=>{if(a.viewport){let r=a.viewport.scrollLeft+t.deltaX;e.onWheelScroll(r),Lu(r,n)&&t.preventDefault()}},onResize:()=>{c.current&&a.viewport&&o&&r({content:a.viewport.scrollWidth,viewport:a.viewport.offsetWidth,scrollbar:{size:c.current.clientWidth,paddingStart:ju(o.paddingLeft),paddingEnd:ju(o.paddingRight)}})}})}),xu=I.forwardRef((e,t)=>{let{sizes:n,onSizesChange:r,...i}=e,a=uu(mu,e.__scopeScrollArea),[o,s]=I.useState(),c=I.useRef(null),l=L(t,c,a.onScrollbarYChange);return I.useEffect(()=>{c.current&&s(getComputedStyle(c.current))},[c]),(0,R.jsx)(wu,{"data-orientation":`vertical`,...i,ref:l,sizes:n,style:{top:0,right:a.dir===`ltr`?0:void 0,left:a.dir===`rtl`?0:void 0,bottom:`var(--radix-scroll-area-corner-height)`,"--radix-scroll-area-thumb-height":Nu(n)+`px`,...e.style},onThumbPointerDown:t=>e.onThumbPointerDown(t.y),onDragScroll:t=>e.onDragScroll(t.y),onWheelScroll:(t,n)=>{if(a.viewport){let r=a.viewport.scrollTop+t.deltaY;e.onWheelScroll(r),Lu(r,n)&&t.preventDefault()}},onResize:()=>{c.current&&a.viewport&&o&&r({content:a.viewport.scrollHeight,viewport:a.viewport.offsetHeight,scrollbar:{size:c.current.clientHeight,paddingStart:ju(o.paddingTop),paddingEnd:ju(o.paddingBottom)}})}})}),[Su,Cu]=su(mu),wu=I.forwardRef((e,t)=>{let{__scopeScrollArea:n,sizes:r,hasThumb:i,onThumbChange:a,onThumbPointerUp:o,onThumbPointerDown:s,onThumbPositionChange:c,onDragScroll:l,onWheelScroll:u,onResize:d,...f}=e,p=uu(mu,n),[m,h]=I.useState(null),g=L(t,e=>h(e)),_=I.useRef(null),v=I.useRef(``),y=p.viewport,b=r.content-r.viewport,x=X(u),S=X(c),C=zu(d,10);function w(e){_.current&&l({x:e.clientX-_.current.left,y:e.clientY-_.current.top})}return I.useEffect(()=>{let e=e=>{let t=e.target;m?.contains(t)&&x(e,b)};return document.addEventListener(`wheel`,e,{passive:!1}),()=>document.removeEventListener(`wheel`,e,{passive:!1})},[y,m,b,x]),I.useEffect(S,[r,S]),Bu(m,C),Bu(p.content,C),(0,R.jsx)(Su,{scope:n,scrollbar:m,hasThumb:i,onThumbChange:X(a),onThumbPointerUp:X(o),onThumbPositionChange:S,onThumbPointerDown:X(s),children:(0,R.jsx)(Y.div,{...f,ref:g,style:{position:`absolute`,...f.style},onPointerDown:J(e.onPointerDown,e=>{e.button===0&&(e.target.setPointerCapture(e.pointerId),_.current=m.getBoundingClientRect(),v.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect=`none`,p.viewport&&(p.viewport.style.scrollBehavior=`auto`),w(e))}),onPointerMove:J(e.onPointerMove,w),onPointerUp:J(e.onPointerUp,e=>{let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),document.body.style.webkitUserSelect=v.current,p.viewport&&(p.viewport.style.scrollBehavior=``),_.current=null})})})}),Tu=`ScrollAreaThumb`,Eu=I.forwardRef((e,t)=>{let{forceMount:n,...r}=e,i=Cu(Tu,e.__scopeScrollArea);return(0,R.jsx)(Zc,{present:n||i.hasThumb,children:(0,R.jsx)(Du,{ref:t,...r})})}),Du=I.forwardRef((e,t)=>{let{__scopeScrollArea:n,style:r,...i}=e,a=uu(Tu,n),o=Cu(Tu,n),{onThumbPositionChange:s}=o,c=L(t,e=>o.onThumbChange(e)),l=I.useRef(void 0),u=zu(()=>{l.current&&=(l.current(),void 0)},100);return I.useEffect(()=>{let e=a.viewport;if(e){let t=()=>{u(),l.current||(l.current=Ru(e,s),s())};return s(),e.addEventListener(`scroll`,t),()=>e.removeEventListener(`scroll`,t)}},[a.viewport,u,s]),(0,R.jsx)(Y.div,{"data-state":o.hasThumb?`visible`:`hidden`,...i,ref:c,style:{width:`var(--radix-scroll-area-thumb-width)`,height:`var(--radix-scroll-area-thumb-height)`,...r},onPointerDownCapture:J(e.onPointerDownCapture,e=>{let t=e.target.getBoundingClientRect(),n=e.clientX-t.left,r=e.clientY-t.top;o.onThumbPointerDown({x:n,y:r})}),onPointerUp:J(e.onPointerUp,o.onThumbPointerUp)})});Eu.displayName=Tu;var Ou=`ScrollAreaCorner`,ku=I.forwardRef((e,t)=>{let n=uu(Ou,e.__scopeScrollArea),r=!!(n.scrollbarX&&n.scrollbarY);return n.type!==`scroll`&&r?(0,R.jsx)(Au,{...e,ref:t}):null});ku.displayName=Ou;var Au=I.forwardRef((e,t)=>{let{__scopeScrollArea:n,...r}=e,i=uu(Ou,n),[a,o]=I.useState(0),[s,c]=I.useState(0),l=!!(a&&s);return Bu(i.scrollbarX,()=>{let e=i.scrollbarX?.offsetHeight||0;i.onCornerHeightChange(e),c(e)}),Bu(i.scrollbarY,()=>{let e=i.scrollbarY?.offsetWidth||0;i.onCornerWidthChange(e),o(e)}),l?(0,R.jsx)(Y.div,{...r,ref:t,style:{width:a,height:s,position:`absolute`,right:i.dir===`ltr`?0:void 0,left:i.dir===`rtl`?0:void 0,bottom:0,...e.style}}):null});function ju(e){return e?parseInt(e,10):0}function Mu(e,t){let n=e/t;return isNaN(n)?0:n}function Nu(e){let t=Mu(e.viewport,e.content),n=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,r=(e.scrollbar.size-n)*t;return Math.max(r,18)}function Pu(e,t,n,r=`ltr`){let i=Nu(n),a=i/2,o=t||a,s=i-o,c=n.scrollbar.paddingStart+o,l=n.scrollbar.size-n.scrollbar.paddingEnd-s,u=n.content-n.viewport,d=r===`ltr`?[0,u]:[u*-1,0];return Iu([c,l],d)(e)}function Fu(e,t,n=`ltr`){let r=Nu(t),i=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,a=t.scrollbar.size-i,o=t.content-t.viewport,s=a-r,c=iu(e,n===`ltr`?[0,o]:[o*-1,0]);return Iu([0,o],[0,s])(c)}function Iu(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let r=(t[1]-t[0])/(e[1]-e[0]);return t[0]+r*(n-e[0])}}function Lu(e,t){return e>0&&e<t}var Ru=(e,t=()=>{})=>{let n={left:e.scrollLeft,top:e.scrollTop},r=0;return(function i(){let a={left:e.scrollLeft,top:e.scrollTop},o=n.left!==a.left,s=n.top!==a.top;(o||s)&&t(),n=a,r=window.requestAnimationFrame(i)})(),()=>window.cancelAnimationFrame(r)};function zu(e,t){let n=X(e),r=I.useRef(0);return I.useEffect(()=>()=>window.clearTimeout(r.current),[]),I.useCallback(()=>{window.clearTimeout(r.current),r.current=window.setTimeout(n,t)},[n,t])}function Bu(e,t){let n=X(t);Z(()=>{let t=0;if(e){let r=new ResizeObserver(()=>{cancelAnimationFrame(t),t=window.requestAnimationFrame(n)});return r.observe(e),()=>{window.cancelAnimationFrame(t),r.unobserve(e)}}},[e,n])}var Vu=du,Hu=pu,Uu=ku,Wu=I.forwardRef((e,t)=>{let n=(0,F.c)(15),r,i,a;n[0]===e?(r=n[1],i=n[2],a=n[3]):({className:i,children:r,...a}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a);let o;n[4]===i?o=n[5]:(o=x(`relative overflow-hidden`,i),n[4]=i,n[5]=o);let s;n[6]===r?s=n[7]:(s=(0,R.jsx)(Hu,{className:`h-full w-full rounded-[inherit]`,children:r}),n[6]=r,n[7]=s);let c,l;n[8]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,R.jsx)(Gu,{}),l=(0,R.jsx)(Uu,{}),n[8]=c,n[9]=l):(c=n[8],l=n[9]);let u;return n[10]!==a||n[11]!==t||n[12]!==o||n[13]!==s?(u=(0,R.jsxs)(Vu,{ref:t,className:o,...a,children:[s,c,l]}),n[10]=a,n[11]=t,n[12]=o,n[13]=s,n[14]=u):u=n[14],u});Wu.displayName=Vu.displayName;var Gu=I.forwardRef((e,t)=>{let n=(0,F.c)(14),r,i,a;n[0]===e?(r=n[1],i=n[2],a=n[3]):({className:r,orientation:a,...i}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a);let o=a===void 0?`vertical`:a,s=o===`vertical`&&`h-full w-2.5 border-l border-l-transparent p-[1px]`,c=o===`horizontal`&&`h-2.5 flex-col border-t border-t-transparent p-[1px]`,l;n[4]!==r||n[5]!==s||n[6]!==c?(l=x(`flex touch-none select-none transition-colors`,s,c,r),n[4]=r,n[5]=s,n[6]=c,n[7]=l):l=n[7];let u;n[8]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,R.jsx)(Eu,{className:`relative flex-1 rounded-full bg-border`}),n[8]=u):u=n[8];let d;return n[9]!==o||n[10]!==i||n[11]!==t||n[12]!==l?(d=(0,R.jsx)(hu,{ref:t,orientation:o,className:l,...i,children:u}),n[9]=o,n[10]=i,n[11]=t,n[12]=l,n[13]=d):d=n[13],d});Gu.displayName=hu.displayName;var Ku=`[&>div]:!box-border [&>div]:!pr-4`,qu=I.forwardRef((e,t)=>{let n=(0,F.c)(14),r,i,a;n[0]===e?(r=n[1],i=n[2],a=n[3]):({className:r,orientation:a,...i}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a);let o=a===void 0?`vertical`:a,s=o===`vertical`&&`right-0 h-full w-2.5 p-0.5`,c=o===`horizontal`&&`h-2.5 flex-col border-t border-t-transparent p-[1px]`,l;n[4]!==r||n[5]!==s||n[6]!==c?(l=x(`flex touch-none select-none transition-colors`,s,c,r),n[4]=r,n[5]=s,n[6]=c,n[7]=l):l=n[7];let u;n[8]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,R.jsx)(Eu,{className:`relative flex-1 rounded-full bg-foreground/20 can-hover:hover:bg-foreground/35`}),n[8]=u):u=n[8];let d;return n[9]!==o||n[10]!==i||n[11]!==t||n[12]!==l?(d=(0,R.jsx)(hu,{ref:t,orientation:o,className:l,...i,children:u}),n[9]=o,n[10]=i,n[11]=t,n[12]=l,n[13]=d):d=n[13],d});qu.displayName=`SettingsScrollBar`;var Ju=I.forwardRef((e,t)=>{let n=(0,F.c)(20),r,i,a,o,s;n[0]===e?(r=n[1],i=n[2],a=n[3],o=n[4],s=n[5]):({className:i,children:r,viewportRef:s,onViewportScroll:a,...o}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a,n[4]=o,n[5]=s);let c;n[6]===i?c=n[7]:(c=x(`relative overflow-hidden`,i),n[6]=i,n[7]=c);let l;n[8]===Symbol.for(`react.memo_cache_sentinel`)?(l=x(`h-full w-full rounded-[inherit]`,Ku),n[8]=l):l=n[8];let u;n[9]!==r||n[10]!==a||n[11]!==s?(u=(0,R.jsx)(Hu,{ref:s,onScroll:a,className:l,children:r}),n[9]=r,n[10]=a,n[11]=s,n[12]=u):u=n[12];let d,f;n[13]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,R.jsx)(qu,{}),f=(0,R.jsx)(Uu,{}),n[13]=d,n[14]=f):(d=n[13],f=n[14]);let p;return n[15]!==o||n[16]!==t||n[17]!==c||n[18]!==u?(p=(0,R.jsxs)(Vu,{ref:t,className:c,...o,children:[u,d,f]}),n[15]=o,n[16]=t,n[17]=c,n[18]=u,n[19]=p):p=n[19],p});Ju.displayName=`SettingsScrollArea`;var Yu=I.forwardRef((e,t)=>{let n=(0,F.c)(14),r,i,a;n[0]===e?(r=n[1],i=n[2],a=n[3]):({className:r,orientation:a,...i}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a);let o=a===void 0?`vertical`:a,s=o===`vertical`&&`h-full w-2 p-0.5`,c=o===`horizontal`&&`h-2 w-full flex-col p-0.5`,l;n[4]!==r||n[5]!==s||n[6]!==c?(l=x(`flex touch-none select-none bg-transparent`,s,c,r),n[4]=r,n[5]=s,n[6]=c,n[7]=l):l=n[7];let u;n[8]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,R.jsx)(Eu,{className:`relative flex-1 rounded-full bg-foreground/35 can-hover:hover:bg-foreground/50`}),n[8]=u):u=n[8];let d;return n[9]!==o||n[10]!==i||n[11]!==t||n[12]!==l?(d=(0,R.jsx)(hu,{ref:t,orientation:o,className:l,...i,children:u}),n[9]=o,n[10]=i,n[11]=t,n[12]=l,n[13]=d):d=n[13],d});Yu.displayName=`FrostedScrollBar`;var Xu=I.forwardRef((e,t)=>{let n=(0,F.c)(15),r,i,a;n[0]===e?(r=n[1],i=n[2],a=n[3]):({className:i,children:r,...a}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a);let o;n[4]===i?o=n[5]:(o=x(`relative overflow-hidden`,i),n[4]=i,n[5]=o);let s;n[6]===r?s=n[7]:(s=(0,R.jsx)(Hu,{className:`h-full w-full rounded-[inherit]`,children:r}),n[6]=r,n[7]=s);let c,l;n[8]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,R.jsx)(Yu,{}),l=(0,R.jsx)(Uu,{}),n[8]=c,n[9]=l):(c=n[8],l=n[9]);let u;return n[10]!==a||n[11]!==t||n[12]!==o||n[13]!==s?(u=(0,R.jsxs)(Vu,{ref:t,className:o,...a,children:[s,c,l]}),n[10]=a,n[11]=t,n[12]=o,n[13]=s,n[14]=u):u=n[14],u});Xu.displayName=`FrostedScrollArea`;function Zu(e){let t=(0,F.c)(5),{children:n,className:r}=e,i;t[0]===r?i=t[1]:(i=x(c.settingsPage,r),t[0]=r,t[1]=i);let a;return t[2]!==n||t[3]!==i?(a=(0,R.jsx)(`div`,{className:i,children:n}),t[2]=n,t[3]=i,t[4]=a):a=t[4],a}function Qu(e){let t=(0,F.c)(5),{children:n,className:r}=e,i;t[0]===r?i=t[1]:(i=x(c.formPage,r),t[0]=r,t[1]=i);let a;return t[2]!==n||t[3]!==i?(a=(0,R.jsx)(`div`,{className:i,children:n}),t[2]=n,t[3]=i,t[4]=a):a=t[4],a}function $u(e){let t=(0,F.c)(30),{title:n,description:r,action:i,className:o,titleClassName:s,tableHeader:c,sticky:l,border:u}=e,d=l===void 0?!0:l,f=u===void 0?!1:u,p=d?`sticky top-0 z-10 -mx-6`:null,m;t[0]!==o||t[1]!==p?(m=x(`shrink-0`,p,o),t[0]=o,t[1]=p,t[2]=m):m=t[2];let h=f&&!c?`border-b border-divider`:null,g;t[3]===h?g=t[4]:(g=x(`flex items-center justify-between bg-transparent px-6 py-4 electrobun-webkit-app-region-drag`,h),t[3]=h,t[4]=g);let _=i?`pr-4`:null,v;t[5]===_?v=t[6]:(v=x(_),t[5]=_,t[6]=v);let y;t[7]===s?y=t[8]:(y=x(a.sectionTitle,s),t[7]=s,t[8]=y);let b;t[9]!==y||t[10]!==n?(b=(0,R.jsx)(`h2`,{className:y,children:n}),t[9]=y,t[10]=n,t[11]=b):b=t[11];let S;t[12]===r?S=t[13]:(S=r?(0,R.jsx)(`p`,{className:x(a.pageSubtitle,`pt-1.5`),children:r}):null,t[12]=r,t[13]=S);let C;t[14]!==b||t[15]!==S||t[16]!==v?(C=(0,R.jsxs)(`div`,{className:v,children:[b,S]}),t[14]=b,t[15]=S,t[16]=v,t[17]=C):C=t[17];let w;t[18]===i?w=t[19]:(w=i?(0,R.jsx)(`div`,{className:`electrobun-webkit-app-region-no-drag`,children:i}):null,t[18]=i,t[19]=w);let T;t[20]!==C||t[21]!==w||t[22]!==g?(T=(0,R.jsxs)(`div`,{className:g,children:[C,w]}),t[20]=C,t[21]=w,t[22]=g,t[23]=T):T=t[23];let E;t[24]===c?E=t[25]:(E=c?(0,R.jsx)(`div`,{className:`electrobun-webkit-app-region-no-drag px-6 pb-2`,children:c}):null,t[24]=c,t[25]=E);let D;return t[26]!==T||t[27]!==E||t[28]!==m?(D=(0,R.jsxs)(`div`,{className:m,children:[T,E]}),t[26]=T,t[27]=E,t[28]=m,t[29]=D):D=t[29],D}function ed(e){let t=(0,F.c)(16),{title:n,description:r,action:i,titleClassName:a,tableHeader:o,border:s,children:c,pageClassName:l,className:u}=e,d=s===void 0?!1:s,f;t[0]===u?f=t[1]:(f=x(`flex h-full min-h-0 flex-col`,u),t[0]=u,t[1]=f);let p;t[2]!==i||t[3]!==d||t[4]!==r||t[5]!==o||t[6]!==n||t[7]!==a?(p=(0,R.jsx)($u,{title:n,description:r,action:i,titleClassName:a,tableHeader:o,border:d,sticky:!1}),t[2]=i,t[3]=d,t[4]=r,t[5]=o,t[6]=n,t[7]=a,t[8]=p):p=t[8];let m;t[9]!==c||t[10]!==l?(m=(0,R.jsx)(Ju,{className:`min-h-0 flex-1`,children:(0,R.jsx)(Zu,{className:l,children:c})}),t[9]=c,t[10]=l,t[11]=m):m=t[11];let h;return t[12]!==f||t[13]!==p||t[14]!==m?(h=(0,R.jsxs)(`div`,{className:f,children:[p,m]}),t[12]=f,t[13]=p,t[14]=m,t[15]=h):h=t[15],h}function td(e){let t=(0,F.c)(5),{title:n,className:r}=e,i;t[0]===r?i=t[1]:(i=x(a.sectionTitle,`mb-3`,r),t[0]=r,t[1]=i);let o;return t[2]!==i||t[3]!==n?(o=(0,R.jsx)(`h2`,{className:i,children:n}),t[2]=i,t[3]=n,t[4]=o):o=t[4],o}function nd(e){let t=(0,F.c)(6),{children:n,variant:r,className:i}=e,o=r===void 0?`info`:r,s;t[0]!==i||t[1]!==o?(s=x(o===`hint`?a.hintBanner:o===`success`?x(a.body,`text-green-700 bg-green-50 dark:text-green-400 dark:bg-green-950/30 rounded-md px-3 py-2 mb-4`):o===`error`?x(a.error,`bg-destructive/10 rounded-md px-3 py-2 mb-4`):a.infoBanner,i),t[0]=i,t[1]=o,t[2]=s):s=t[2];let c;return t[3]!==n||t[4]!==s?(c=(0,R.jsx)(`div`,{className:s,children:n}),t[3]=n,t[4]=s,t[5]=c):c=t[5],c}function rd(e){let t=(0,F.c)(5),{children:n,className:r}=e,i;t[0]===r?i=t[1]:(i=x(`min-h-0 flex-1`,r),t[0]=r,t[1]=i);let a;return t[2]!==n||t[3]!==i?(a=(0,R.jsx)(Xu,{className:i,children:n}),t[2]=n,t[3]=i,t[4]=a):a=t[4],a}function id(e){let t=(0,F.c)(10),{children:n,title:r,action:i}=e,o;t[0]===r?o=t[1]:(o=r?(0,R.jsx)(`h2`,{className:x(a.emptyStateTitle,`mb-2`),children:r}):null,t[0]=r,t[1]=o);let s;t[2]===n?s=t[3]:(s=(0,R.jsx)(`p`,{className:a.bodyMuted,children:n}),t[2]=n,t[3]=s);let c;t[4]===i?c=t[5]:(c=i?(0,R.jsx)(`div`,{className:`mt-4`,children:i}):null,t[4]=i,t[5]=c);let l;return t[6]!==o||t[7]!==s||t[8]!==c?(l=(0,R.jsx)(`div`,{className:`flex items-center justify-center h-full`,children:(0,R.jsxs)(`div`,{className:`text-center`,children:[o,s,c]})}),t[6]=o,t[7]=s,t[8]=c,t[9]=l):l=t[9],l}function ad(e){let t=(0,F.c)(5),{children:n,className:r}=e,i;t[0]===r?i=t[1]:(i=x(`h-full flex flex-col overflow-hidden`,r),t[0]=r,t[1]=i);let a;return t[2]!==n||t[3]!==i?(a=(0,R.jsx)(`div`,{className:i,children:n}),t[2]=n,t[3]=i,t[4]=a):a=t[4],a}function od(e){let t=(0,F.c)(5),{children:n,className:r}=e,i;t[0]===r?i=t[1]:(i=x(`flex flex-col overflow-hidden rounded-xl`,r),t[0]=r,t[1]=i);let a;return t[2]!==n||t[3]!==i?(a=(0,R.jsx)(`div`,{className:i,children:n}),t[2]=n,t[3]=i,t[4]=a):a=t[4],a}var sd=`animate-in fade-in duration-[50ms]`;function cd(e){let t=(0,F.c)(10),{loading:n,children:r,className:i,containerRef:a}=e;if(n){let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,R.jsx)(Ql,{className:`min-h-0 flex-1`}),t[0]=e):e=t[0],e}let o;t[1]===i?o=t[2]:(o=x(`h-full min-h-0 flex-1`,i),t[1]=i,t[2]=o);let s;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(s=x(`flex flex-col gap-2.5`,sd),t[3]=s):s=t[3];let c;t[4]===r?c=t[5]:(c=(0,R.jsx)(`div`,{className:s,children:r}),t[4]=r,t[5]=c);let l;return t[6]!==a||t[7]!==o||t[8]!==c?(l=(0,R.jsx)(Ju,{ref:a,className:o,children:c}),t[6]=a,t[7]=o,t[8]=c,t[9]=l):l=t[9],l}function ld(e){let t=(0,F.c)(6),{loading:n,children:r,className:i}=e;if(n){let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,R.jsx)(Ql,{className:`min-h-0 flex-1`}),t[0]=e):e=t[0],e}let a;t[1]===i?a=t[2]:(a=x(`flex h-full min-h-0 flex-col overflow-hidden`,sd,i),t[1]=i,t[2]=a);let o;return t[3]!==r||t[4]!==a?(o=(0,R.jsx)(`div`,{className:a,children:r}),t[3]=r,t[4]=a,t[5]=o):o=t[5],o}function ud(e){let t=(0,F.c)(9),{label:n,control:r,className:i,align:a}=e,o=(a===void 0?`start`:a)===`end`?`justify-between`:`flex-wrap`,s;t[0]!==i||t[1]!==o?(s=x(`flex w-full items-center gap-x-4 gap-y-2`,o,i),t[0]=i,t[1]=o,t[2]=s):s=t[2];let c;t[3]===r?c=t[4]:(c=(0,R.jsx)(`div`,{className:`w-fit shrink-0`,children:r}),t[3]=r,t[4]=c);let l;return t[5]!==n||t[6]!==s||t[7]!==c?(l=(0,R.jsxs)(`div`,{className:s,children:[n,c]}),t[5]=n,t[6]=s,t[7]=c,t[8]=l):l=t[8],l}function dd(e,t,n){let r=x(a.label,`w-fit`,n?`cursor-pointer hover:underline`:t?`cursor-help`:null),i=n?(0,R.jsx)(`button`,{type:`button`,tabIndex:0,className:x(r,`border-0 bg-transparent p-0 text-left`),onClick:n,"aria-label":`${e} (click to reset)`,children:e}):(0,R.jsx)(`span`,{tabIndex:t?0:void 0,className:r,children:e});return t?(0,R.jsxs)(Yl,{children:[(0,R.jsx)(Xl,{asChild:!0,children:i}),(0,R.jsx)(Zl,{side:`top`,className:`max-w-xs`,children:t})]}):i}function fd(e){let t=(0,F.c)(11),{label:n,control:r,className:i,align:a}=e,o=(a===void 0?`center`:a)===`start`?`@md/settings-page:items-start`:null,s;t[0]!==i||t[1]!==o?(s=x(c.settingsFieldRow,o,i),t[0]=i,t[1]=o,t[2]=s):s=t[2];let l;t[3]===n?l=t[4]:(l=(0,R.jsx)(`div`,{className:c.settingsFieldLabel,children:n}),t[3]=n,t[4]=l);let u;t[5]===r?u=t[6]:(u=(0,R.jsx)(`div`,{className:c.settingsFieldControl,children:r}),t[5]=r,t[6]=u);let d;return t[7]!==s||t[8]!==l||t[9]!==u?(d=(0,R.jsxs)(`div`,{className:s,children:[l,u]}),t[7]=s,t[8]=l,t[9]=u,t[10]=d):d=t[10],d}function pd(e){let t=(0,F.c)(6),{children:n,className:r,id:i}=e,a;t[0]===r?a=t[1]:(a=x(c.settingsFieldStack,r),t[0]=r,t[1]=a);let o;return t[2]!==n||t[3]!==i||t[4]!==a?(o=(0,R.jsx)(`div`,{id:i,className:a,children:n}),t[2]=n,t[3]=i,t[4]=a,t[5]=o):o=t[5],o}function md(e){let t=(0,F.c)(59),{title:n,description:r,action:i,children:a,className:o,controlLayout:s,onTitleClick:c}=e,l=s===void 0?`responsive-row`:s,u;t[0]!==r||t[1]!==c||t[2]!==n?(u=dd(n,r,c),t[0]=r,t[1]=c,t[2]=n,t[3]=u):u=t[3];let d=u,f=l===`responsive-row`,p=l===`row-end`?`end`:l===`row-start`?`start`:null;if(i&&a){if(f){let e;t[4]===o?e=t[5]:(e=x(`space-y-2`,o),t[4]=o,t[5]=e);let n;t[6]!==i||t[7]!==d?(n=(0,R.jsx)(fd,{label:d,control:i}),t[6]=i,t[7]=d,t[8]=n):n=t[8];let r;return t[9]!==a||t[10]!==e||t[11]!==n?(r=(0,R.jsxs)(`div`,{className:e,children:[n,a]}),t[9]=a,t[10]=e,t[11]=n,t[12]=r):r=t[12],r}if(p){let e;t[13]===o?e=t[14]:(e=x(`space-y-2`,o),t[13]=o,t[14]=e);let n;t[15]!==i||t[16]!==d||t[17]!==p?(n=(0,R.jsx)(ud,{label:d,control:i,align:p}),t[15]=i,t[16]=d,t[17]=p,t[18]=n):n=t[18];let r;return t[19]!==a||t[20]!==e||t[21]!==n?(r=(0,R.jsxs)(`div`,{className:e,children:[n,a]}),t[19]=a,t[20]=e,t[21]=n,t[22]=r):r=t[22],r}let e;t[23]===o?e=t[24]:(e=x(`space-y-2`,o),t[23]=o,t[24]=e);let n;t[25]===i?n=t[26]:(n=(0,R.jsx)(`div`,{children:i}),t[25]=i,t[26]=n);let r;return t[27]!==a||t[28]!==d||t[29]!==e||t[30]!==n?(r=(0,R.jsxs)(`div`,{className:e,children:[d,n,a]}),t[27]=a,t[28]=d,t[29]=e,t[30]=n,t[31]=r):r=t[31],r}if(i){if(f){let e;return t[32]!==i||t[33]!==o||t[34]!==d?(e=(0,R.jsx)(fd,{label:d,control:i,className:o}),t[32]=i,t[33]=o,t[34]=d,t[35]=e):e=t[35],e}if(p){let e;return t[36]!==i||t[37]!==o||t[38]!==d||t[39]!==p?(e=(0,R.jsx)(ud,{label:d,control:i,align:p,className:o}),t[36]=i,t[37]=o,t[38]=d,t[39]=p,t[40]=e):e=t[40],e}let e;t[41]===o?e=t[42]:(e=x(`space-y-2`,o),t[41]=o,t[42]=e);let n;t[43]===i?n=t[44]:(n=(0,R.jsx)(`div`,{children:i}),t[43]=i,t[44]=n);let r;return t[45]!==d||t[46]!==e||t[47]!==n?(r=(0,R.jsxs)(`div`,{className:e,children:[d,n]}),t[45]=d,t[46]=e,t[47]=n,t[48]=r):r=t[48],r}if(f&&a){let e;return t[49]!==a||t[50]!==o||t[51]!==d?(e=(0,R.jsx)(fd,{label:d,control:a,className:o,align:`start`}),t[49]=a,t[50]=o,t[51]=d,t[52]=e):e=t[52],e}let m;t[53]===o?m=t[54]:(m=x(`space-y-2`,o),t[53]=o,t[54]=m);let h;return t[55]!==a||t[56]!==d||t[57]!==m?(h=(0,R.jsxs)(`div`,{className:m,children:[d,a]}),t[55]=a,t[56]=d,t[57]=m,t[58]=h):h=t[58],h}function hd(e){let t=e+`CollectionProvider`,[n,r]=ja(t),[i,a]=n(t,{collectionRef:{current:null},itemMap:new Map}),o=e=>{let{scope:t,children:n}=e,r=I.useRef(null),a=I.useRef(new Map).current;return(0,R.jsx)(i,{scope:t,itemMap:a,collectionRef:r,children:n})};o.displayName=t;let s=e+`CollectionSlot`,c=Na(s),l=I.forwardRef((e,t)=>{let{scope:n,children:r}=e;return(0,R.jsx)(c,{ref:L(t,a(s,n).collectionRef),children:r})});l.displayName=s;let u=e+`CollectionItemSlot`,d=`data-radix-collection-item`,f=Na(u),p=I.forwardRef((e,t)=>{let{scope:n,children:r,...i}=e,o=I.useRef(null),s=L(t,o),c=a(u,n);return I.useEffect(()=>(c.itemMap.set(o,{ref:o,...i}),()=>void c.itemMap.delete(o))),(0,R.jsx)(f,{[d]:``,ref:s,children:r})});p.displayName=u;function m(t){let n=a(e+`CollectionConsumer`,t);return I.useCallback(()=>{let e=n.collectionRef.current;if(!e)return[];let t=Array.from(e.querySelectorAll(`[${d}]`));return Array.from(n.itemMap.values()).sort((e,n)=>t.indexOf(e.ref.current)-t.indexOf(n.ref.current))},[n.collectionRef,n.itemMap])}return[{Provider:o,Slot:l,ItemSlot:p},m,r]}var gd=0;function _d(){I.useEffect(()=>{let e=document.querySelectorAll(`[data-radix-focus-guard]`);return document.body.insertAdjacentElement(`afterbegin`,e[0]??vd()),document.body.insertAdjacentElement(`beforeend`,e[1]??vd()),gd++,()=>{gd===1&&document.querySelectorAll(`[data-radix-focus-guard]`).forEach(e=>e.remove()),gd--}},[])}function vd(){let e=document.createElement(`span`);return e.setAttribute(`data-radix-focus-guard`,``),e.tabIndex=0,e.style.outline=`none`,e.style.opacity=`0`,e.style.position=`fixed`,e.style.pointerEvents=`none`,e}var yd=`focusScope.autoFocusOnMount`,bd=`focusScope.autoFocusOnUnmount`,xd={bubbles:!1,cancelable:!0},Sd=`FocusScope`,Cd=I.forwardRef((e,t)=>{let{loop:n=!1,trapped:r=!1,onMountAutoFocus:i,onUnmountAutoFocus:a,...o}=e,[s,c]=I.useState(null),l=X(i),u=X(a),d=I.useRef(null),f=L(t,e=>c(e)),p=I.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;I.useEffect(()=>{if(r){let e=function(e){if(p.paused||!s)return;let t=e.target;s.contains(t)?d.current=t:Ad(d.current,{select:!0})},t=function(e){if(p.paused||!s)return;let t=e.relatedTarget;t!==null&&(s.contains(t)||Ad(d.current,{select:!0}))},n=function(e){if(document.activeElement===document.body)for(let t of e)t.removedNodes.length>0&&Ad(s)};document.addEventListener(`focusin`,e),document.addEventListener(`focusout`,t);let r=new MutationObserver(n);return s&&r.observe(s,{childList:!0,subtree:!0}),()=>{document.removeEventListener(`focusin`,e),document.removeEventListener(`focusout`,t),r.disconnect()}}},[r,s,p.paused]),I.useEffect(()=>{if(s){jd.add(p);let e=document.activeElement;if(!s.contains(e)){let t=new CustomEvent(yd,xd);s.addEventListener(yd,l),s.dispatchEvent(t),t.defaultPrevented||(wd(Pd(Ed(s)),{select:!0}),document.activeElement===e&&Ad(s))}return()=>{s.removeEventListener(yd,l),setTimeout(()=>{let t=new CustomEvent(bd,xd);s.addEventListener(bd,u),s.dispatchEvent(t),t.defaultPrevented||Ad(e??document.body,{select:!0}),s.removeEventListener(bd,u),jd.remove(p)},0)}}},[s,l,u,p]);let m=I.useCallback(e=>{if(!n&&!r||p.paused)return;let t=e.key===`Tab`&&!e.altKey&&!e.ctrlKey&&!e.metaKey,i=document.activeElement;if(t&&i){let t=e.currentTarget,[r,a]=Td(t);r&&a?!e.shiftKey&&i===a?(e.preventDefault(),n&&Ad(r,{select:!0})):e.shiftKey&&i===r&&(e.preventDefault(),n&&Ad(a,{select:!0})):i===t&&e.preventDefault()}},[n,r,p.paused]);return(0,R.jsx)(Y.div,{tabIndex:-1,...o,ref:f,onKeyDown:m})});Cd.displayName=Sd;function wd(e,{select:t=!1}={}){let n=document.activeElement;for(let r of e)if(Ad(r,{select:t}),document.activeElement!==n)return}function Td(e){let t=Ed(e);return[Dd(t,e),Dd(t.reverse(),e)]}function Ed(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:e=>{let t=e.tagName===`INPUT`&&e.type===`hidden`;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function Dd(e,t){for(let n of e)if(!Od(n,{upTo:t}))return n}function Od(e,{upTo:t}){if(getComputedStyle(e).visibility===`hidden`)return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display===`none`)return!0;e=e.parentElement}return!1}function kd(e){return e instanceof HTMLInputElement&&`select`in e}function Ad(e,{select:t=!1}={}){if(e&&e.focus){let n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&kd(e)&&t&&e.select()}}var jd=Md();function Md(){let e=[];return{add(t){let n=e[0];t!==n&&n?.pause(),e=Nd(e,t),e.unshift(t)},remove(t){e=Nd(e,t),e[0]?.resume()}}}function Nd(e,t){let n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}function Pd(e){return e.filter(e=>e.tagName!==`A`)}var Fd=`rovingFocusGroup.onEntryFocus`,Id={bubbles:!1,cancelable:!0},Ld=`RovingFocusGroup`,[Rd,zd,Bd]=hd(Ld),[Vd,Hd]=ja(Ld,[Bd]),[Ud,Wd]=Vd(Ld),Gd=I.forwardRef((e,t)=>(0,R.jsx)(Rd.Provider,{scope:e.__scopeRovingFocusGroup,children:(0,R.jsx)(Rd.Slot,{scope:e.__scopeRovingFocusGroup,children:(0,R.jsx)(Kd,{...e,ref:t})})}));Gd.displayName=Ld;var Kd=I.forwardRef((e,t)=>{let{__scopeRovingFocusGroup:n,orientation:r,loop:i=!1,dir:a,currentTabStopId:o,defaultCurrentTabStopId:s,onCurrentTabStopIdChange:c,onEntryFocus:l,preventScrollOnEntryFocus:u=!1,...d}=e,f=I.useRef(null),p=L(t,f),m=ru(a),[h,g]=nl({prop:o,defaultProp:s??null,onChange:c,caller:Ld}),[_,v]=I.useState(!1),y=X(l),b=zd(n),x=I.useRef(!1),[S,C]=I.useState(0);return I.useEffect(()=>{let e=f.current;if(e)return e.addEventListener(Fd,y),()=>e.removeEventListener(Fd,y)},[y]),(0,R.jsx)(Ud,{scope:n,orientation:r,dir:m,loop:i,currentTabStopId:h,onItemFocus:I.useCallback(e=>g(e),[g]),onItemShiftTab:I.useCallback(()=>v(!0),[]),onFocusableItemAdd:I.useCallback(()=>C(e=>e+1),[]),onFocusableItemRemove:I.useCallback(()=>C(e=>e-1),[]),children:(0,R.jsx)(Y.div,{tabIndex:_||S===0?-1:0,"data-orientation":r,...d,ref:p,style:{outline:`none`,...e.style},onMouseDown:J(e.onMouseDown,()=>{x.current=!0}),onFocus:J(e.onFocus,e=>{let t=!x.current;if(e.target===e.currentTarget&&t&&!_){let t=new CustomEvent(Fd,Id);if(e.currentTarget.dispatchEvent(t),!t.defaultPrevented){let e=b().filter(e=>e.focusable);Qd([e.find(e=>e.active),e.find(e=>e.id===h),...e].filter(Boolean).map(e=>e.ref.current),u)}}x.current=!1}),onBlur:J(e.onBlur,()=>v(!1))})})}),qd=`RovingFocusGroupItem`,Jd=I.forwardRef((e,t)=>{let{__scopeRovingFocusGroup:n,focusable:r=!0,active:i=!1,tabStopId:a,children:o,...s}=e,c=ao(),l=a||c,u=Wd(qd,n),d=u.currentTabStopId===l,f=zd(n),{onFocusableItemAdd:p,onFocusableItemRemove:m,currentTabStopId:h}=u;return I.useEffect(()=>{if(r)return p(),()=>m()},[r,p,m]),(0,R.jsx)(Rd.ItemSlot,{scope:n,id:l,focusable:r,active:i,children:(0,R.jsx)(Y.span,{tabIndex:d?0:-1,"data-orientation":u.orientation,...s,ref:t,onMouseDown:J(e.onMouseDown,e=>{r?u.onItemFocus(l):e.preventDefault()}),onFocus:J(e.onFocus,()=>u.onItemFocus(l)),onKeyDown:J(e.onKeyDown,e=>{if(e.key===`Tab`&&e.shiftKey){u.onItemShiftTab();return}if(e.target!==e.currentTarget)return;let t=Zd(e,u.orientation,u.dir);if(t!==void 0){if(e.metaKey||e.ctrlKey||e.altKey||e.shiftKey)return;e.preventDefault();let n=f().filter(e=>e.focusable).map(e=>e.ref.current);if(t===`last`)n.reverse();else if(t===`prev`||t===`next`){t===`prev`&&n.reverse();let r=n.indexOf(e.currentTarget);n=u.loop?$d(n,r+1):n.slice(r+1)}setTimeout(()=>Qd(n))}}),children:typeof o==`function`?o({isCurrentTabStop:d,hasTabStop:h!=null}):o})})});Jd.displayName=qd;var Yd={ArrowLeft:`prev`,ArrowUp:`prev`,ArrowRight:`next`,ArrowDown:`next`,PageUp:`first`,Home:`first`,PageDown:`last`,End:`last`};function Xd(e,t){return t===`rtl`?e===`ArrowLeft`?`ArrowRight`:e===`ArrowRight`?`ArrowLeft`:e:e}function Zd(e,t,n){let r=Xd(e.key,n);if(!(t===`vertical`&&[`ArrowLeft`,`ArrowRight`].includes(r))&&!(t===`horizontal`&&[`ArrowUp`,`ArrowDown`].includes(r)))return Yd[r]}function Qd(e,t=!1){let n=document.activeElement;for(let r of e)if(r===n||(r.focus({preventScroll:t}),document.activeElement!==n))return}function $d(e,t){return e.map((n,r)=>e[(t+r)%e.length])}var ef=Gd,tf=Jd,nf=function(e){return typeof document>`u`?null:(Array.isArray(e)?e[0]:e).ownerDocument.body},rf=new WeakMap,af=new WeakMap,of={},sf=0,cf=function(e){return e&&(e.host||cf(e.parentNode))},lf=function(e,t){return t.map(function(t){if(e.contains(t))return t;var n=cf(t);return n&&e.contains(n)?n:(console.error(`aria-hidden`,t,`in not contained inside`,e,`. Doing nothing`),null)}).filter(function(e){return!!e})},uf=function(e,t,n,r){var i=lf(t,Array.isArray(e)?e:[e]);of[n]||(of[n]=new WeakMap);var a=of[n],o=[],s=new Set,c=new Set(i),l=function(e){!e||s.has(e)||(s.add(e),l(e.parentNode))};i.forEach(l);var u=function(e){!e||c.has(e)||Array.prototype.forEach.call(e.children,function(e){if(s.has(e))u(e);else try{var t=e.getAttribute(r),i=t!==null&&t!==`false`,c=(rf.get(e)||0)+1,l=(a.get(e)||0)+1;rf.set(e,c),a.set(e,l),o.push(e),c===1&&i&&af.set(e,!0),l===1&&e.setAttribute(n,`true`),i||e.setAttribute(r,`true`)}catch(t){console.error(`aria-hidden: cannot operate on `,e,t)}})};return u(t),s.clear(),sf++,function(){o.forEach(function(e){var t=rf.get(e)-1,i=a.get(e)-1;rf.set(e,t),a.set(e,i),t||(af.has(e)||e.removeAttribute(r),af.delete(e)),i||e.removeAttribute(n)}),sf--,sf||(rf=new WeakMap,rf=new WeakMap,af=new WeakMap,of={})}},df=function(e,t,n){n===void 0&&(n=`data-aria-hidden`);var r=Array.from(Array.isArray(e)?e:[e]),i=t||nf(e);return i?(r.push.apply(r,Array.from(i.querySelectorAll(`[aria-live], script`))),uf(r,i,n,`aria-hidden`)):function(){return null}},ff=function(){return ff=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n],t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},ff.apply(this,arguments)};function pf(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n}function mf(e,t,n){if(n||arguments.length===2)for(var r=0,i=t.length,a;r<i;r++)(a||!(r in t))&&(a||=Array.prototype.slice.call(t,0,r),a[r]=t[r]);return e.concat(a||Array.prototype.slice.call(t))}var hf=`right-scroll-bar-position`,gf=`width-before-scroll-bar`,_f=`with-scroll-bars-hidden`,vf=`--removed-body-scroll-bar-size`;function yf(e,t){return typeof e==`function`?e(t):e&&(e.current=t),e}function bf(e,t){var n=(0,I.useState)(function(){return{value:e,callback:t,facade:{get current(){return n.value},set current(e){var t=n.value;t!==e&&(n.value=e,n.callback(e,t))}}}})[0];return n.callback=t,n.facade}var xf=typeof window<`u`?I.useLayoutEffect:I.useEffect,Sf=new WeakMap;function Cf(e,t){var n=bf(t||null,function(t){return e.forEach(function(e){return yf(e,t)})});return xf(function(){var t=Sf.get(n);if(t){var r=new Set(t),i=new Set(e),a=n.current;r.forEach(function(e){i.has(e)||yf(e,null)}),i.forEach(function(e){r.has(e)||yf(e,a)})}Sf.set(n,e)},[e]),n}function wf(e){return e}function Tf(e,t){t===void 0&&(t=wf);var n=[],r=!1;return{read:function(){if(r)throw Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return n.length?n[n.length-1]:e},useMedium:function(e){var i=t(e,r);return n.push(i),function(){n=n.filter(function(e){return e!==i})}},assignSyncMedium:function(e){for(r=!0;n.length;){var t=n;n=[],t.forEach(e)}n={push:function(t){return e(t)},filter:function(){return n}}},assignMedium:function(e){r=!0;var t=[];if(n.length){var i=n;n=[],i.forEach(e),t=n}var a=function(){var n=t;t=[],n.forEach(e)},o=function(){return Promise.resolve().then(a)};o(),n={push:function(e){t.push(e),o()},filter:function(e){return t=t.filter(e),n}}}}}function Ef(e){e===void 0&&(e={});var t=Tf(null);return t.options=ff({async:!0,ssr:!1},e),t}var Df=function(e){var t=e.sideCar,n=pf(e,[`sideCar`]);if(!t)throw Error("Sidecar: please provide `sideCar` property to import the right car");var r=t.read();if(!r)throw Error(`Sidecar medium not found`);return I.createElement(r,ff({},n))};Df.isSideCarExport=!0;function Of(e,t){return e.useMedium(t),Df}var kf=Ef(),Af=function(){},jf=I.forwardRef(function(e,t){var n=I.useRef(null),r=I.useState({onScrollCapture:Af,onWheelCapture:Af,onTouchMoveCapture:Af}),i=r[0],a=r[1],o=e.forwardProps,s=e.children,c=e.className,l=e.removeScrollBar,u=e.enabled,d=e.shards,f=e.sideCar,p=e.noRelative,m=e.noIsolation,h=e.inert,g=e.allowPinchZoom,_=e.as,v=_===void 0?`div`:_,y=e.gapMode,b=pf(e,[`forwardProps`,`children`,`className`,`removeScrollBar`,`enabled`,`shards`,`sideCar`,`noRelative`,`noIsolation`,`inert`,`allowPinchZoom`,`as`,`gapMode`]),x=f,S=Cf([n,t]),C=ff(ff({},b),i);return I.createElement(I.Fragment,null,u&&I.createElement(x,{sideCar:kf,removeScrollBar:l,shards:d,noRelative:p,noIsolation:m,inert:h,setCallbacks:a,allowPinchZoom:!!g,lockRef:n,gapMode:y}),o?I.cloneElement(I.Children.only(s),ff(ff({},C),{ref:S})):I.createElement(v,ff({},C,{className:c,ref:S}),s))});jf.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},jf.classNames={fullWidth:gf,zeroRight:hf};var Mf,Nf=function(){if(Mf)return Mf;if(typeof __webpack_nonce__<`u`)return __webpack_nonce__};function Pf(){if(!document)return null;var e=document.createElement(`style`);e.type=`text/css`;var t=Nf();return t&&e.setAttribute(`nonce`,t),e}function Ff(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function If(e){(document.head||document.getElementsByTagName(`head`)[0]).appendChild(e)}var Lf=function(){var e=0,t=null;return{add:function(n){e==0&&(t=Pf())&&(Ff(t,n),If(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},Rf=function(){var e=Lf();return function(t,n){I.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},zf=function(){var e=Rf();return function(t){var n=t.styles,r=t.dynamic;return e(n,r),null}},Bf={left:0,top:0,right:0,gap:0},Vf=function(e){return parseInt(e||``,10)||0},Hf=function(e){var t=window.getComputedStyle(document.body),n=t[e===`padding`?`paddingLeft`:`marginLeft`],r=t[e===`padding`?`paddingTop`:`marginTop`],i=t[e===`padding`?`paddingRight`:`marginRight`];return[Vf(n),Vf(r),Vf(i)]},Uf=function(e){if(e===void 0&&(e=`margin`),typeof window>`u`)return Bf;var t=Hf(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},Wf=zf(),Gf=`data-scroll-locked`,Kf=function(e,t,n,r){var i=e.left,a=e.top,o=e.right,s=e.gap;return n===void 0&&(n=`margin`),`
3
+ .${_f} {
4
+ overflow: hidden ${r};
5
+ padding-right: ${s}px ${r};
6
+ }
7
+ body[${Gf}] {
8
+ overflow: hidden ${r};
9
+ overscroll-behavior: contain;
10
+ ${[t&&`position: relative ${r};`,n===`margin`&&`
11
+ padding-left: ${i}px;
12
+ padding-top: ${a}px;
13
+ padding-right: ${o}px;
14
+ margin-left:0;
15
+ margin-top:0;
16
+ margin-right: ${s}px ${r};
17
+ `,n===`padding`&&`padding-right: ${s}px ${r};`].filter(Boolean).join(``)}
18
+ }
19
+
20
+ .${hf} {
21
+ right: ${s}px ${r};
22
+ }
23
+
24
+ .${gf} {
25
+ margin-right: ${s}px ${r};
26
+ }
27
+
28
+ .${hf} .${hf} {
29
+ right: 0 ${r};
30
+ }
31
+
32
+ .${gf} .${gf} {
33
+ margin-right: 0 ${r};
34
+ }
35
+
36
+ body[${Gf}] {
37
+ ${vf}: ${s}px;
38
+ }
39
+ `},qf=function(){var e=parseInt(document.body.getAttribute(`data-scroll-locked`)||`0`,10);return isFinite(e)?e:0},Jf=function(){I.useEffect(function(){return document.body.setAttribute(Gf,(qf()+1).toString()),function(){var e=qf()-1;e<=0?document.body.removeAttribute(Gf):document.body.setAttribute(Gf,e.toString())}},[])},Yf=function(e){var t=e.noRelative,n=e.noImportant,r=e.gapMode,i=r===void 0?`margin`:r;Jf();var a=I.useMemo(function(){return Uf(i)},[i]);return I.createElement(Wf,{styles:Kf(a,!t,i,n?``:`!important`)})},Xf=!1;if(typeof window<`u`)try{var Zf=Object.defineProperty({},"passive",{get:function(){return Xf=!0,!0}});window.addEventListener(`test`,Zf,Zf),window.removeEventListener(`test`,Zf,Zf)}catch{Xf=!1}var Qf=Xf?{passive:!1}:!1,$f=function(e){return e.tagName===`TEXTAREA`},ep=function(e,t){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return n[t]!==`hidden`&&!(n.overflowY===n.overflowX&&!$f(e)&&n[t]===`visible`)},tp=function(e){return ep(e,`overflowY`)},np=function(e){return ep(e,`overflowX`)},rp=function(e,t){var n=t.ownerDocument,r=t;do{if(typeof ShadowRoot<`u`&&r instanceof ShadowRoot&&(r=r.host),op(e,r)){var i=sp(e,r);if(i[1]>i[2])return!0}r=r.parentNode}while(r&&r!==n.body);return!1},ip=function(e){return[e.scrollTop,e.scrollHeight,e.clientHeight]},ap=function(e){return[e.scrollLeft,e.scrollWidth,e.clientWidth]},op=function(e,t){return e===`v`?tp(t):np(t)},sp=function(e,t){return e===`v`?ip(t):ap(t)},cp=function(e,t){return e===`h`&&t===`rtl`?-1:1},lp=function(e,t,n,r,i){var a=cp(e,window.getComputedStyle(t).direction),o=a*r,s=n.target,c=t.contains(s),l=!1,u=o>0,d=0,f=0;do{if(!s)break;var p=sp(e,s),m=p[0],h=p[1]-p[2]-a*m;(m||h)&&op(e,s)&&(d+=h,f+=m);var g=s.parentNode;s=g&&g.nodeType===Node.DOCUMENT_FRAGMENT_NODE?g.host:g}while(!c&&s!==document.body||c&&(t.contains(s)||t===s));return(u&&(i&&Math.abs(d)<1||!i&&o>d)||!u&&(i&&Math.abs(f)<1||!i&&-o>f))&&(l=!0),l},up=function(e){return`changedTouches`in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},dp=function(e){return[e.deltaX,e.deltaY]},fp=function(e){return e&&`current`in e?e.current:e},pp=function(e,t){return e[0]===t[0]&&e[1]===t[1]},mp=function(e){return`
40
+ .block-interactivity-${e} {pointer-events: none;}
41
+ .allow-interactivity-${e} {pointer-events: all;}
42
+ `},hp=0,gp=[];function _p(e){var t=I.useRef([]),n=I.useRef([0,0]),r=I.useRef(),i=I.useState(hp++)[0],a=I.useState(zf)[0],o=I.useRef(e);I.useEffect(function(){o.current=e},[e]),I.useEffect(function(){if(e.inert){document.body.classList.add(`block-interactivity-${i}`);var t=mf([e.lockRef.current],(e.shards||[]).map(fp),!0).filter(Boolean);return t.forEach(function(e){return e.classList.add(`allow-interactivity-${i}`)}),function(){document.body.classList.remove(`block-interactivity-${i}`),t.forEach(function(e){return e.classList.remove(`allow-interactivity-${i}`)})}}},[e.inert,e.lockRef.current,e.shards]);var s=I.useCallback(function(e,t){if(`touches`in e&&e.touches.length===2||e.type===`wheel`&&e.ctrlKey)return!o.current.allowPinchZoom;var i=up(e),a=n.current,s=`deltaX`in e?e.deltaX:a[0]-i[0],c=`deltaY`in e?e.deltaY:a[1]-i[1],l,u=e.target,d=Math.abs(s)>Math.abs(c)?`h`:`v`;if(`touches`in e&&d===`h`&&u.type===`range`)return!1;var f=window.getSelection(),p=f&&f.anchorNode;if(p&&(p===u||p.contains(u)))return!1;var m=rp(d,u);if(!m)return!0;if(m?l=d:(l=d===`v`?`h`:`v`,m=rp(d,u)),!m)return!1;if(!r.current&&`changedTouches`in e&&(s||c)&&(r.current=l),!l)return!0;var h=r.current||l;return lp(h,t,e,h===`h`?s:c,!0)},[]),c=I.useCallback(function(e){var n=e;if(!(!gp.length||gp[gp.length-1]!==a)){var r=`deltaY`in n?dp(n):up(n),i=t.current.filter(function(e){return e.name===n.type&&(e.target===n.target||n.target===e.shadowParent)&&pp(e.delta,r)})[0];if(i&&i.should){n.cancelable&&n.preventDefault();return}if(!i){var c=(o.current.shards||[]).map(fp).filter(Boolean).filter(function(e){return e.contains(n.target)});(c.length>0?s(n,c[0]):!o.current.noIsolation)&&n.cancelable&&n.preventDefault()}}},[]),l=I.useCallback(function(e,n,r,i){var a={name:e,delta:n,target:r,should:i,shadowParent:vp(r)};t.current.push(a),setTimeout(function(){t.current=t.current.filter(function(e){return e!==a})},1)},[]),u=I.useCallback(function(e){n.current=up(e),r.current=void 0},[]),d=I.useCallback(function(t){l(t.type,dp(t),t.target,s(t,e.lockRef.current))},[]),f=I.useCallback(function(t){l(t.type,up(t),t.target,s(t,e.lockRef.current))},[]);I.useEffect(function(){return gp.push(a),e.setCallbacks({onScrollCapture:d,onWheelCapture:d,onTouchMoveCapture:f}),document.addEventListener(`wheel`,c,Qf),document.addEventListener(`touchmove`,c,Qf),document.addEventListener(`touchstart`,u,Qf),function(){gp=gp.filter(function(e){return e!==a}),document.removeEventListener(`wheel`,c,Qf),document.removeEventListener(`touchmove`,c,Qf),document.removeEventListener(`touchstart`,u,Qf)}},[]);var p=e.removeScrollBar,m=e.inert;return I.createElement(I.Fragment,null,m?I.createElement(a,{styles:mp(i)}):null,p?I.createElement(Yf,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function vp(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}var yp=Of(kf,_p),bp=I.forwardRef(function(e,t){return I.createElement(jf,ff({},e,{ref:t,sideCar:yp}))});bp.classNames=jf.classNames;var xp=0,Sp=new Set;function Cp(){for(let e of Sp)e()}function wp(){xp+=1,xp===1&&Cp()}function Tp(){xp!==0&&(--xp,!(xp>0)&&Cp())}function Ep(){return xp>0}function Dp(e){return Sp.add(e),function(){Sp.delete(e)}}function Op(e){let t=(0,F.c)(3),n,r;t[0]===e?(n=t[1],r=t[2]):(n=()=>{if(e)return wp(),function(){Tp()}},r=[e],t[0]=e,t[1]=n,t[2]=r),(0,I.useEffect)(n,r)}function kp(e){let t=(0,F.c)(3),{open:n,defaultOpen:r,onOpenChange:i}=e,[a,o]=(0,I.useState)(r??!1);Op(n??a);let s;return t[0]!==i||t[1]!==n?(s=function(e){n===void 0&&o(e),i?.(e)},t[0]=i,t[1]=n,t[2]=s):s=t[2],s}var Ap=`Dialog`,[jp,Mp]=ja(Ap),[Np,Pp]=jp(Ap),Fp=e=>{let{__scopeDialog:t,children:n,open:r,defaultOpen:i,onOpenChange:a,modal:o=!0}=e,s=I.useRef(null),c=I.useRef(null),[l,u]=nl({prop:r,defaultProp:i??!1,onChange:a,caller:Ap});return(0,R.jsx)(Np,{scope:t,triggerRef:s,contentRef:c,contentId:ao(),titleId:ao(),descriptionId:ao(),open:l,onOpenChange:u,onOpenToggle:I.useCallback(()=>u(e=>!e),[u]),modal:o,children:n})};Fp.displayName=Ap;var Ip=`DialogTrigger`,Lp=I.forwardRef((e,t)=>{let{__scopeDialog:n,...r}=e,i=Pp(Ip,n),a=L(t,i.triggerRef);return(0,R.jsx)(Y.button,{type:`button`,"aria-haspopup":`dialog`,"aria-expanded":i.open,"aria-controls":i.contentId,"data-state":rm(i.open),...r,ref:a,onClick:J(e.onClick,i.onOpenToggle)})});Lp.displayName=Ip;var Rp=`DialogPortal`,[zp,Bp]=jp(Rp,{forceMount:void 0}),Vp=e=>{let{__scopeDialog:t,forceMount:n,children:r,container:i}=e,a=Pp(Rp,t);return(0,R.jsx)(zp,{scope:t,forceMount:n,children:I.Children.map(r,e=>(0,R.jsx)(Zc,{present:n||a.open,children:(0,R.jsx)(Yc,{asChild:!0,container:i,children:e})}))})};Vp.displayName=Rp;var Hp=`DialogOverlay`,Up=I.forwardRef((e,t)=>{let n=Bp(Hp,e.__scopeDialog),{forceMount:r=n.forceMount,...i}=e,a=Pp(Hp,e.__scopeDialog);return a.modal?(0,R.jsx)(Zc,{present:r||a.open,children:(0,R.jsx)(Gp,{...i,ref:t})}):null});Up.displayName=Hp;var Wp=Na(`DialogOverlay.RemoveScroll`),Gp=I.forwardRef((e,t)=>{let{__scopeDialog:n,...r}=e,i=Pp(Hp,n);return(0,R.jsx)(bp,{as:Wp,allowPinchZoom:!0,shards:[i.contentRef],children:(0,R.jsx)(Y.div,{"data-state":rm(i.open),...r,ref:t,style:{pointerEvents:`auto`,...r.style}})})}),Kp=`DialogContent`,qp=I.forwardRef((e,t)=>{let n=Bp(Kp,e.__scopeDialog),{forceMount:r=n.forceMount,...i}=e,a=Pp(Kp,e.__scopeDialog);return(0,R.jsx)(Zc,{present:r||a.open,children:a.modal?(0,R.jsx)(Jp,{...i,ref:t}):(0,R.jsx)(Yp,{...i,ref:t})})});qp.displayName=Kp;var Jp=I.forwardRef((e,t)=>{let n=Pp(Kp,e.__scopeDialog),r=I.useRef(null),i=L(t,n.contentRef,r);return I.useEffect(()=>{let e=r.current;if(e)return df(e)},[]),(0,R.jsx)(Xp,{...e,ref:i,trapFocus:n.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:J(e.onCloseAutoFocus,e=>{e.preventDefault(),n.triggerRef.current?.focus()}),onPointerDownOutside:J(e.onPointerDownOutside,e=>{let t=e.detail.originalEvent,n=t.button===0&&t.ctrlKey===!0;(t.button===2||n)&&e.preventDefault()}),onFocusOutside:J(e.onFocusOutside,e=>e.preventDefault())})}),Yp=I.forwardRef((e,t)=>{let n=Pp(Kp,e.__scopeDialog),r=I.useRef(!1),i=I.useRef(!1);return(0,R.jsx)(Xp,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:t=>{e.onCloseAutoFocus?.(t),t.defaultPrevented||(r.current||n.triggerRef.current?.focus(),t.preventDefault()),r.current=!1,i.current=!1},onInteractOutside:t=>{e.onInteractOutside?.(t),t.defaultPrevented||(r.current=!0,t.detail.originalEvent.type===`pointerdown`&&(i.current=!0));let a=t.target;n.triggerRef.current?.contains(a)&&t.preventDefault(),t.detail.originalEvent.type===`focusin`&&i.current&&t.preventDefault()}})}),Xp=I.forwardRef((e,t)=>{let{__scopeDialog:n,trapFocus:r,onOpenAutoFocus:i,onCloseAutoFocus:a,...o}=e,s=Pp(Kp,n),c=I.useRef(null),l=L(t,c);return _d(),(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(Cd,{asChild:!0,loop:!0,trapped:r,onMountAutoFocus:i,onUnmountAutoFocus:a,children:(0,R.jsx)(Ja,{role:`dialog`,id:s.contentId,"aria-describedby":s.descriptionId,"aria-labelledby":s.titleId,"data-state":rm(s.open),...o,ref:l,onDismiss:()=>s.onOpenChange(!1)})}),(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(sm,{titleId:s.titleId}),(0,R.jsx)(lm,{contentRef:c,descriptionId:s.descriptionId})]})]})}),Zp=`DialogTitle`,Qp=I.forwardRef((e,t)=>{let{__scopeDialog:n,...r}=e,i=Pp(Zp,n);return(0,R.jsx)(Y.h2,{id:i.titleId,...r,ref:t})});Qp.displayName=Zp;var $p=`DialogDescription`,em=I.forwardRef((e,t)=>{let{__scopeDialog:n,...r}=e,i=Pp($p,n);return(0,R.jsx)(Y.p,{id:i.descriptionId,...r,ref:t})});em.displayName=$p;var tm=`DialogClose`,nm=I.forwardRef((e,t)=>{let{__scopeDialog:n,...r}=e,i=Pp(tm,n);return(0,R.jsx)(Y.button,{type:`button`,...r,ref:t,onClick:J(e.onClick,()=>i.onOpenChange(!1))})});nm.displayName=tm;function rm(e){return e?`open`:`closed`}var im=`DialogTitleWarning`,[am,om]=Aa(im,{contentName:Kp,titleName:Zp,docsSlug:`dialog`}),sm=({titleId:e})=>{let t=om(im),n=`\`${t.contentName}\` requires a \`${t.titleName}\` for the component to be accessible for screen reader users.
43
+
44
+ If you want to hide the \`${t.titleName}\`, you can wrap it with our VisuallyHidden component.
45
+
46
+ For more information, see https://radix-ui.com/primitives/docs/components/${t.docsSlug}`;return I.useEffect(()=>{e&&(document.getElementById(e)||console.error(n))},[n,e]),null},cm=`DialogDescriptionWarning`,lm=({contentRef:e,descriptionId:t})=>{let n=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${om(cm).contentName}}.`;return I.useEffect(()=>{let r=e.current?.getAttribute(`aria-describedby`);t&&r&&(document.getElementById(t)||console.warn(n))},[n,e,t]),null},um=Fp,dm=Lp,fm=Vp,pm=Up,mm=qp,hm=Qp,gm=em,_m=nm;function vm(e){let t=(0,F.c)(14),n,r,i,a;t[0]===e?(n=t[1],r=t[2],i=t[3],a=t[4]):({open:i,defaultOpen:n,onOpenChange:r,...a}=e,t[0]=e,t[1]=n,t[2]=r,t[3]=i,t[4]=a);let o;t[5]!==n||t[6]!==r||t[7]!==i?(o={open:i,defaultOpen:n,onOpenChange:r},t[5]=n,t[6]=r,t[7]=i,t[8]=o):o=t[8];let s=kp(o),c;return t[9]!==n||t[10]!==s||t[11]!==i||t[12]!==a?(c=(0,R.jsx)(um,{open:i,defaultOpen:n,onOpenChange:s,...a}),t[9]=n,t[10]=s,t[11]=i,t[12]=a,t[13]=c):c=t[13],c}var ym=fm,bm=_m,xm=I.forwardRef((e,t)=>{let n=(0,F.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=x(`fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0`,r),n[3]=r,n[4]=a);let o;return n[5]!==i||n[6]!==t||n[7]!==a?(o=(0,R.jsx)(pm,{ref:t,className:a,...i}),n[5]=i,n[6]=t,n[7]=a,n[8]=o):o=n[8],o});xm.displayName=pm.displayName;var Sm=I.forwardRef((e,t)=>{let n=(0,F.c)(16),r,i,a,o;n[0]===e?(r=n[1],i=n[2],a=n[3],o=n[4]):({className:i,children:r,hideClose:o,...a}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a,n[4]=o);let s=o===void 0?!1:o,c;n[5]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,R.jsx)(xm,{}),n[5]=c):c=n[5];let l;n[6]===i?l=n[7]:(l=x(`fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg`,i),n[6]=i,n[7]=l);let u;n[8]===s?u=n[9]:(u=s?null:(0,R.jsxs)(_m,{className:`absolute right-4 top-4 z-20 h-7 w-7 rounded-full flex items-center justify-center transition-colors hover:bg-foreground hover:text-background disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground`,children:[(0,R.jsx)(y,{className:`h-4 w-4`}),(0,R.jsx)(`span`,{className:`sr-only`,children:`Close`})]}),n[8]=s,n[9]=u);let d;return n[10]!==r||n[11]!==a||n[12]!==t||n[13]!==l||n[14]!==u?(d=(0,R.jsxs)(ym,{children:[c,(0,R.jsxs)(mm,{ref:t,className:l,...a,children:[r,u]})]}),n[10]=r,n[11]=a,n[12]=t,n[13]=l,n[14]=u,n[15]=d):d=n[15],d});Sm.displayName=mm.displayName;var Cm=e=>{let t=(0,F.c)(8),n,r;t[0]===e?(n=t[1],r=t[2]):({className:n,...r}=e,t[0]=e,t[1]=n,t[2]=r);let i;t[3]===n?i=t[4]:(i=x(`flex flex-col space-y-1.5 text-center sm:text-left`,n),t[3]=n,t[4]=i);let a;return t[5]!==r||t[6]!==i?(a=(0,R.jsx)(`div`,{className:i,...r}),t[5]=r,t[6]=i,t[7]=a):a=t[7],a};Cm.displayName=`DialogHeader`;var wm=e=>{let t=(0,F.c)(8),n,r;t[0]===e?(n=t[1],r=t[2]):({className:n,...r}=e,t[0]=e,t[1]=n,t[2]=r);let i;t[3]===n?i=t[4]:(i=x(`flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2`,n),t[3]=n,t[4]=i);let a;return t[5]!==r||t[6]!==i?(a=(0,R.jsx)(`div`,{className:i,...r}),t[5]=r,t[6]=i,t[7]=a):a=t[7],a};wm.displayName=`DialogFooter`;var Tm=I.forwardRef((e,t)=>{let n=(0,F.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let o;n[3]===r?o=n[4]:(o=x(a.dialogTitle,r),n[3]=r,n[4]=o);let s;return n[5]!==i||n[6]!==t||n[7]!==o?(s=(0,R.jsx)(hm,{ref:t,className:o,...i}),n[5]=i,n[6]=t,n[7]=o,n[8]=s):s=n[8],s});Tm.displayName=hm.displayName;var Em=I.forwardRef((e,t)=>{let n=(0,F.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let o;n[3]===r?o=n[4]:(o=x(a.dialogDescription,r),n[3]=r,n[4]=o);let s;return n[5]!==i||n[6]!==t||n[7]!==o?(s=(0,R.jsx)(gm,{ref:t,className:o,...i}),n[5]=i,n[6]=t,n[7]=o,n[8]=s):s=n[8],s});Em.displayName=gm.displayName;function Dm(e){if(!e)return`Unknown Model`;let t=(e.split(`/`).filter(Boolean).pop()??e).replace(/[-_]+/g,` `).trim();return t?t.split(/\s+/g).filter(Boolean).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `):e}var Om=[`a`,`button`,`div`,`form`,`h2`,`h3`,`img`,`input`,`label`,`li`,`nav`,`ol`,`p`,`select`,`span`,`svg`,`ul`].reduce((e,t)=>{let n=oe(`Primitive.${t}`),r=I.forwardRef((e,r)=>{let{asChild:i,...a}=e,o=i?n:t;return typeof window<`u`&&(window[Symbol.for(`radix-ui`)]=!0),(0,R.jsx)(o,{...a,ref:r})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{}),km=`Separator`,Am=`horizontal`,jm=[`horizontal`,`vertical`],Mm=I.forwardRef((e,t)=>{let{decorative:n,orientation:r=Am,...i}=e,a=Nm(r)?r:Am,o=n?{role:`none`}:{"aria-orientation":a===`vertical`?a:void 0,role:`separator`};return(0,R.jsx)(Om.div,{"data-orientation":a,...o,...i,ref:t})});Mm.displayName=km;function Nm(e){return jm.includes(e)}var Pm=Mm,Fm=I.forwardRef((e,t)=>{let n=(0,F.c)(14),r,i,a,o;n[0]===e?(r=n[1],i=n[2],a=n[3],o=n[4]):({className:r,orientation:a,decorative:o,...i}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a,n[4]=o);let s=a===void 0?`horizontal`:a,c=o===void 0?!0:o,l=s===`horizontal`?`h-[1px] w-full`:`h-full w-[1px]`,u;n[5]!==r||n[6]!==l?(u=x(`shrink-0 bg-divider`,l,r),n[5]=r,n[6]=l,n[7]=u):u=n[7];let d;return n[8]!==c||n[9]!==s||n[10]!==i||n[11]!==t||n[12]!==u?(d=(0,R.jsx)(Pm,{ref:t,decorative:c,orientation:s,className:u,...i}),n[8]=c,n[9]=s,n[10]=i,n[11]=t,n[12]=u,n[13]=d):d=n[13],d});Fm.displayName=Pm.displayName;var Im=I.forwardRef((e,t)=>{let n=(0,F.c)(11),r,i,a;n[0]===e?(r=n[1],i=n[2],a=n[3]):({className:r,type:a,...i}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a);let o;n[4]===r?o=n[5]:(o=x(`flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-base ring-offset-background file:border-0 file:bg-transparent file:text-base file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50`,r),n[4]=r,n[5]=o);let s;return n[6]!==i||n[7]!==t||n[8]!==o||n[9]!==a?(s=(0,R.jsx)(`input`,{type:a,className:o,ref:t,...i}),n[6]=i,n[7]=t,n[8]=o,n[9]=a,n[10]=s):s=n[10],s});Im.displayName=`Input`;var Lm=`Label`,Rm=I.forwardRef((e,t)=>(0,R.jsx)(Om.label,{...e,ref:t,onMouseDown:t=>{t.target.closest(`button, input, select, textarea`)||(e.onMouseDown?.(t),!t.defaultPrevented&&t.detail>1&&t.preventDefault())}}));Rm.displayName=Lm;var zm=Rm,Bm=he(`${a.label} peer-disabled:cursor-not-allowed peer-disabled:opacity-70`),Vm=I.forwardRef((e,t)=>{let n=(0,F.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=x(Bm(),r),n[3]=r,n[4]=a);let o;return n[5]!==i||n[6]!==t||n[7]!==a?(o=(0,R.jsx)(zm,{ref:t,className:a,...i}),n[5]=i,n[6]=t,n[7]=a,n[8]=o):o=n[8],o});Vm.displayName=zm.displayName;function Hm(e){let t=I.useRef({value:e,previous:e});return I.useMemo(()=>(t.current.value!==e&&(t.current.previous=t.current.value,t.current.value=e),t.current.previous),[e])}var Um=[` `,`Enter`,`ArrowUp`,`ArrowDown`],Wm=[` `,`Enter`],Gm=`Select`,[Km,qm,Jm]=hd(Gm),[Ym,Xm]=ja(Gm,[Jm,Oc]),Zm=Oc(),[Qm,$m]=Ym(Gm),[eh,th]=Ym(Gm),nh=e=>{let{__scopeSelect:t,children:n,open:r,defaultOpen:i,onOpenChange:a,value:o,defaultValue:s,onValueChange:c,dir:l,name:u,autoComplete:d,disabled:f,required:p,form:m}=e,h=Zm(t),[g,_]=I.useState(null),[v,y]=I.useState(null),[b,x]=I.useState(!1),S=ru(l),[C,w]=nl({prop:r,defaultProp:i??!1,onChange:a,caller:Gm}),[T,E]=nl({prop:o,defaultProp:s,onChange:c,caller:Gm}),D=I.useRef(null),O=g?m||!!g.closest(`form`):!0,[k,A]=I.useState(new Set),j=Array.from(k).map(e=>e.props.value).join(`;`);return(0,R.jsx)(Wc,{...h,children:(0,R.jsxs)(Qm,{required:p,scope:t,trigger:g,onTriggerChange:_,valueNode:v,onValueNodeChange:y,valueNodeHasChildren:b,onValueNodeHasChildrenChange:x,contentId:ao(),value:T,onValueChange:E,open:C,onOpenChange:w,dir:S,triggerPointerDownPosRef:D,disabled:f,children:[(0,R.jsx)(Km.Provider,{scope:t,children:(0,R.jsx)(eh,{scope:e.__scopeSelect,onNativeOptionAdd:I.useCallback(e=>{A(t=>new Set(t).add(e))},[]),onNativeOptionRemove:I.useCallback(e=>{A(t=>{let n=new Set(t);return n.delete(e),n})},[]),children:n})}),O?(0,R.jsxs)(Zh,{"aria-hidden":!0,required:p,tabIndex:-1,name:u,autoComplete:d,value:T,onChange:e=>E(e.target.value),disabled:f,form:m,children:[T===void 0?(0,R.jsx)(`option`,{value:``}):null,Array.from(k)]},j):null]})})};nh.displayName=Gm;var rh=`SelectTrigger`,ih=I.forwardRef((e,t)=>{let{__scopeSelect:n,disabled:r=!1,...i}=e,a=Zm(n),o=$m(rh,n),s=o.disabled||r,c=L(t,o.onTriggerChange),l=qm(n),u=I.useRef(`touch`),[d,f,p]=$h(e=>{let t=l().filter(e=>!e.disabled),n=eg(t,e,t.find(e=>e.value===o.value));n!==void 0&&o.onValueChange(n.value)}),m=e=>{s||(o.onOpenChange(!0),p()),e&&(o.triggerPointerDownPosRef.current={x:Math.round(e.pageX),y:Math.round(e.pageY)})};return(0,R.jsx)(Gc,{asChild:!0,...a,children:(0,R.jsx)(Y.button,{type:`button`,role:`combobox`,"aria-controls":o.contentId,"aria-expanded":o.open,"aria-required":o.required,"aria-autocomplete":`none`,dir:o.dir,"data-state":o.open?`open`:`closed`,disabled:s,"data-disabled":s?``:void 0,"data-placeholder":Qh(o.value)?``:void 0,...i,ref:c,onClick:J(i.onClick,e=>{e.currentTarget.focus(),u.current!==`mouse`&&m(e)}),onPointerDown:J(i.onPointerDown,e=>{u.current=e.pointerType;let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),e.button===0&&e.ctrlKey===!1&&e.pointerType===`mouse`&&(m(e),e.preventDefault())}),onKeyDown:J(i.onKeyDown,e=>{let t=d.current!==``;!(e.ctrlKey||e.altKey||e.metaKey)&&e.key.length===1&&f(e.key),!(t&&e.key===` `)&&Um.includes(e.key)&&(m(),e.preventDefault())})})})});ih.displayName=rh;var ah=`SelectValue`,oh=I.forwardRef((e,t)=>{let{__scopeSelect:n,className:r,style:i,children:a,placeholder:o=``,...s}=e,c=$m(ah,n),{onValueNodeHasChildrenChange:l}=c,u=a!==void 0,d=L(t,c.onValueNodeChange);return Z(()=>{l(u)},[l,u]),(0,R.jsx)(Y.span,{...s,ref:d,style:{pointerEvents:`none`},children:Qh(c.value)?(0,R.jsx)(R.Fragment,{children:o}):a})});oh.displayName=ah;var sh=`SelectIcon`,ch=I.forwardRef((e,t)=>{let{__scopeSelect:n,children:r,...i}=e;return(0,R.jsx)(Y.span,{"aria-hidden":!0,...i,ref:t,children:r||`▼`})});ch.displayName=sh;var lh=`SelectPortal`,uh=e=>(0,R.jsx)(Yc,{asChild:!0,...e});uh.displayName=lh;var dh=`SelectContent`,fh=I.forwardRef((e,t)=>{let n=$m(dh,e.__scopeSelect),[r,i]=I.useState();if(Z(()=>{i(new DocumentFragment)},[]),!n.open){let t=r;return t?ve.createPortal((0,R.jsx)(mh,{scope:e.__scopeSelect,children:(0,R.jsx)(Km.Slot,{scope:e.__scopeSelect,children:(0,R.jsx)(`div`,{children:e.children})})}),t):null}return(0,R.jsx)(vh,{...e,ref:t})});fh.displayName=dh;var ph=10,[mh,hh]=Ym(dh),gh=`SelectContentImpl`,_h=Na(`SelectContent.RemoveScroll`),vh=I.forwardRef((e,t)=>{let{__scopeSelect:n,position:r=`item-aligned`,onCloseAutoFocus:i,onEscapeKeyDown:a,onPointerDownOutside:o,side:s,sideOffset:c,align:l,alignOffset:u,arrowPadding:d,collisionBoundary:f,collisionPadding:p,sticky:m,hideWhenDetached:h,avoidCollisions:g,..._}=e,v=$m(dh,n),[y,b]=I.useState(null),[x,S]=I.useState(null),C=L(t,e=>b(e)),[w,T]=I.useState(null),[E,D]=I.useState(null),O=qm(n),[k,A]=I.useState(!1),j=I.useRef(!1);I.useEffect(()=>{if(y)return df(y)},[y]),_d();let M=I.useCallback(e=>{let[t,...n]=O().map(e=>e.ref.current),[r]=n.slice(-1),i=document.activeElement;for(let n of e)if(n===i||(n?.scrollIntoView({block:`nearest`}),n===t&&x&&(x.scrollTop=0),n===r&&x&&(x.scrollTop=x.scrollHeight),n?.focus(),document.activeElement!==i))return},[O,x]),N=I.useCallback(()=>M([w,y]),[M,w,y]);I.useEffect(()=>{k&&N()},[k,N]);let{onOpenChange:P,triggerPointerDownPosRef:F}=v;I.useEffect(()=>{if(y){let e={x:0,y:0},t=t=>{e={x:Math.abs(Math.round(t.pageX)-(F.current?.x??0)),y:Math.abs(Math.round(t.pageY)-(F.current?.y??0))}},n=n=>{e.x<=10&&e.y<=10?n.preventDefault():y.contains(n.target)||P(!1),document.removeEventListener(`pointermove`,t),F.current=null};return F.current!==null&&(document.addEventListener(`pointermove`,t),document.addEventListener(`pointerup`,n,{capture:!0,once:!0})),()=>{document.removeEventListener(`pointermove`,t),document.removeEventListener(`pointerup`,n,{capture:!0})}}},[y,P,F]),I.useEffect(()=>{let e=()=>P(!1);return window.addEventListener(`blur`,e),window.addEventListener(`resize`,e),()=>{window.removeEventListener(`blur`,e),window.removeEventListener(`resize`,e)}},[P]);let[ee,te]=$h(e=>{let t=O().filter(e=>!e.disabled),n=eg(t,e,t.find(e=>e.ref.current===document.activeElement));n&&setTimeout(()=>n.ref.current.focus())}),ne=I.useCallback((e,t,n)=>{let r=!j.current&&!n;(v.value!==void 0&&v.value===t||r)&&(T(e),r&&(j.current=!0))},[v.value]),re=I.useCallback(()=>y?.focus(),[y]),ie=I.useCallback((e,t,n)=>{let r=!j.current&&!n;(v.value!==void 0&&v.value===t||r)&&D(e)},[v.value]),ae=r===`popper`?Sh:bh,oe=ae===Sh?{side:s,sideOffset:c,align:l,alignOffset:u,arrowPadding:d,collisionBoundary:f,collisionPadding:p,sticky:m,hideWhenDetached:h,avoidCollisions:g}:{};return(0,R.jsx)(mh,{scope:n,content:y,viewport:x,onViewportChange:S,itemRefCallback:ne,selectedItem:w,onItemLeave:re,itemTextRefCallback:ie,focusSelectedItem:N,selectedItemText:E,position:r,isPositioned:k,searchRef:ee,children:(0,R.jsx)(bp,{as:_h,allowPinchZoom:!0,children:(0,R.jsx)(Cd,{asChild:!0,trapped:v.open,onMountAutoFocus:e=>{e.preventDefault()},onUnmountAutoFocus:J(i,e=>{v.trigger?.focus({preventScroll:!0}),e.preventDefault()}),children:(0,R.jsx)(Ja,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:a,onPointerDownOutside:o,onFocusOutside:e=>e.preventDefault(),onDismiss:()=>v.onOpenChange(!1),children:(0,R.jsx)(ae,{role:`listbox`,id:v.contentId,"data-state":v.open?`open`:`closed`,dir:v.dir,onContextMenu:e=>e.preventDefault(),..._,...oe,onPlaced:()=>A(!0),ref:C,style:{display:`flex`,flexDirection:`column`,outline:`none`,..._.style},onKeyDown:J(_.onKeyDown,e=>{let t=e.ctrlKey||e.altKey||e.metaKey;if(e.key===`Tab`&&e.preventDefault(),!t&&e.key.length===1&&te(e.key),[`ArrowUp`,`ArrowDown`,`Home`,`End`].includes(e.key)){let t=O().filter(e=>!e.disabled).map(e=>e.ref.current);if([`ArrowUp`,`End`].includes(e.key)&&(t=t.slice().reverse()),[`ArrowUp`,`ArrowDown`].includes(e.key)){let n=e.target,r=t.indexOf(n);t=t.slice(r+1)}setTimeout(()=>M(t)),e.preventDefault()}})})})})})})});vh.displayName=gh;var yh=`SelectItemAlignedPosition`,bh=I.forwardRef((e,t)=>{let{__scopeSelect:n,onPlaced:r,...i}=e,a=$m(dh,n),o=hh(dh,n),[s,c]=I.useState(null),[l,u]=I.useState(null),d=L(t,e=>u(e)),f=qm(n),p=I.useRef(!1),m=I.useRef(!0),{viewport:h,selectedItem:g,selectedItemText:_,focusSelectedItem:v}=o,y=I.useCallback(()=>{if(a.trigger&&a.valueNode&&s&&l&&h&&g&&_){let e=a.trigger.getBoundingClientRect(),t=l.getBoundingClientRect(),n=a.valueNode.getBoundingClientRect(),i=_.getBoundingClientRect();if(a.dir!==`rtl`){let r=i.left-t.left,a=n.left-r,o=e.left-a,c=e.width+o,l=Math.max(c,t.width),u=window.innerWidth-ph,d=iu(a,[ph,Math.max(ph,u-l)]);s.style.minWidth=c+`px`,s.style.left=d+`px`}else{let r=t.right-i.right,a=window.innerWidth-n.right-r,o=window.innerWidth-e.right-a,c=e.width+o,l=Math.max(c,t.width),u=window.innerWidth-ph,d=iu(a,[ph,Math.max(ph,u-l)]);s.style.minWidth=c+`px`,s.style.right=d+`px`}let o=f(),c=window.innerHeight-ph*2,u=h.scrollHeight,d=window.getComputedStyle(l),m=parseInt(d.borderTopWidth,10),v=parseInt(d.paddingTop,10),y=parseInt(d.borderBottomWidth,10),b=parseInt(d.paddingBottom,10),x=m+v+u+b+y,S=Math.min(g.offsetHeight*5,x),C=window.getComputedStyle(h),w=parseInt(C.paddingTop,10),T=parseInt(C.paddingBottom,10),E=e.top+e.height/2-ph,D=c-E,O=g.offsetHeight/2,k=g.offsetTop+O,A=m+v+k,j=x-A;if(A<=E){let e=o.length>0&&g===o[o.length-1].ref.current;s.style.bottom=`0px`;let t=l.clientHeight-h.offsetTop-h.offsetHeight,n=A+Math.max(D,O+(e?T:0)+t+y);s.style.height=n+`px`}else{let e=o.length>0&&g===o[0].ref.current;s.style.top=`0px`;let t=Math.max(E,m+h.offsetTop+(e?w:0)+O)+j;s.style.height=t+`px`,h.scrollTop=A-E+h.offsetTop}s.style.margin=`${ph}px 0`,s.style.minHeight=S+`px`,s.style.maxHeight=c+`px`,r?.(),requestAnimationFrame(()=>p.current=!0)}},[f,a.trigger,a.valueNode,s,l,h,g,_,a.dir,r]);Z(()=>y(),[y]);let[b,x]=I.useState();return Z(()=>{l&&x(window.getComputedStyle(l).zIndex)},[l]),(0,R.jsx)(Ch,{scope:n,contentWrapper:s,shouldExpandOnScrollRef:p,onScrollButtonChange:I.useCallback(e=>{e&&m.current===!0&&(y(),v?.(),m.current=!1)},[y,v]),children:(0,R.jsx)(`div`,{ref:c,style:{display:`flex`,flexDirection:`column`,position:`fixed`,zIndex:b},children:(0,R.jsx)(Y.div,{...i,ref:d,style:{boxSizing:`border-box`,maxHeight:`100%`,...i.style}})})})});bh.displayName=yh;var xh=`SelectPopperPosition`,Sh=I.forwardRef((e,t)=>{let{__scopeSelect:n,align:r=`start`,collisionPadding:i=ph,...a}=e,o=Zm(n);return(0,R.jsx)(Kc,{...o,...a,ref:t,align:r,collisionPadding:i,style:{boxSizing:`border-box`,...a.style,"--radix-select-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-select-content-available-width":`var(--radix-popper-available-width)`,"--radix-select-content-available-height":`var(--radix-popper-available-height)`,"--radix-select-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-select-trigger-height":`var(--radix-popper-anchor-height)`}})});Sh.displayName=xh;var[Ch,wh]=Ym(dh,{}),Th=`SelectViewport`,Eh=I.forwardRef((e,t)=>{let{__scopeSelect:n,nonce:r,...i}=e,a=hh(Th,n),o=wh(Th,n),s=L(t,a.onViewportChange),c=I.useRef(0);return(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(`style`,{dangerouslySetInnerHTML:{__html:`[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}`},nonce:r}),(0,R.jsx)(Km.Slot,{scope:n,children:(0,R.jsx)(Y.div,{"data-radix-select-viewport":``,role:`presentation`,...i,ref:s,style:{position:`relative`,flex:1,overflow:`hidden auto`,...i.style},onScroll:J(i.onScroll,e=>{let t=e.currentTarget,{contentWrapper:n,shouldExpandOnScrollRef:r}=o;if(r?.current&&n){let e=Math.abs(c.current-t.scrollTop);if(e>0){let r=window.innerHeight-ph*2,i=parseFloat(n.style.minHeight),a=parseFloat(n.style.height),o=Math.max(i,a);if(o<r){let i=o+e,a=Math.min(r,i),s=i-a;n.style.height=a+`px`,n.style.bottom===`0px`&&(t.scrollTop=s>0?s:0,n.style.justifyContent=`flex-end`)}}}c.current=t.scrollTop})})})]})});Eh.displayName=Th;var Dh=`SelectGroup`,[Oh,kh]=Ym(Dh),Ah=I.forwardRef((e,t)=>{let{__scopeSelect:n,...r}=e,i=ao();return(0,R.jsx)(Oh,{scope:n,id:i,children:(0,R.jsx)(Y.div,{role:`group`,"aria-labelledby":i,...r,ref:t})})});Ah.displayName=Dh;var jh=`SelectLabel`,Mh=I.forwardRef((e,t)=>{let{__scopeSelect:n,...r}=e,i=kh(jh,n);return(0,R.jsx)(Y.div,{id:i.id,...r,ref:t})});Mh.displayName=jh;var Nh=`SelectItem`,[Ph,Fh]=Ym(Nh),Ih=I.forwardRef((e,t)=>{let{__scopeSelect:n,value:r,disabled:i=!1,textValue:a,...o}=e,s=$m(Nh,n),c=hh(Nh,n),l=s.value===r,[u,d]=I.useState(a??``),[f,p]=I.useState(!1),m=L(t,e=>c.itemRefCallback?.(e,r,i)),h=ao(),g=I.useRef(`touch`),_=()=>{i||(s.onValueChange(r),s.onOpenChange(!1))};if(r===``)throw Error(`A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.`);return(0,R.jsx)(Ph,{scope:n,value:r,disabled:i,textId:h,isSelected:l,onItemTextChange:I.useCallback(e=>{d(t=>t||(e?.textContent??``).trim())},[]),children:(0,R.jsx)(Km.ItemSlot,{scope:n,value:r,disabled:i,textValue:u,children:(0,R.jsx)(Y.div,{role:`option`,"aria-labelledby":h,"data-highlighted":f?``:void 0,"aria-selected":l&&f,"data-state":l?`checked`:`unchecked`,"aria-disabled":i||void 0,"data-disabled":i?``:void 0,tabIndex:i?void 0:-1,...o,ref:m,onFocus:J(o.onFocus,()=>p(!0)),onBlur:J(o.onBlur,()=>p(!1)),onClick:J(o.onClick,()=>{g.current!==`mouse`&&_()}),onPointerUp:J(o.onPointerUp,()=>{g.current===`mouse`&&_()}),onPointerDown:J(o.onPointerDown,e=>{g.current=e.pointerType}),onPointerMove:J(o.onPointerMove,e=>{g.current=e.pointerType,i?c.onItemLeave?.():g.current===`mouse`&&e.currentTarget.focus({preventScroll:!0})}),onPointerLeave:J(o.onPointerLeave,e=>{e.currentTarget===document.activeElement&&c.onItemLeave?.()}),onKeyDown:J(o.onKeyDown,e=>{c.searchRef?.current!==``&&e.key===` `||(Wm.includes(e.key)&&_(),e.key===` `&&e.preventDefault())})})})})});Ih.displayName=Nh;var Lh=`SelectItemText`,Rh=I.forwardRef((e,t)=>{let{__scopeSelect:n,className:r,style:i,...a}=e,o=$m(Lh,n),s=hh(Lh,n),c=Fh(Lh,n),l=th(Lh,n),[u,d]=I.useState(null),f=L(t,e=>d(e),c.onItemTextChange,e=>s.itemTextRefCallback?.(e,c.value,c.disabled)),p=u?.textContent,m=I.useMemo(()=>(0,R.jsx)(`option`,{value:c.value,disabled:c.disabled,children:p},c.value),[c.disabled,c.value,p]),{onNativeOptionAdd:h,onNativeOptionRemove:g}=l;return Z(()=>(h(m),()=>g(m)),[h,g,m]),(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(Y.span,{id:c.textId,...a,ref:f}),c.isSelected&&o.valueNode&&!o.valueNodeHasChildren?ve.createPortal(a.children,o.valueNode):null]})});Rh.displayName=Lh;var zh=`SelectItemIndicator`,Bh=I.forwardRef((e,t)=>{let{__scopeSelect:n,...r}=e;return Fh(zh,n).isSelected?(0,R.jsx)(Y.span,{"aria-hidden":!0,...r,ref:t}):null});Bh.displayName=zh;var Vh=`SelectScrollUpButton`,Hh=I.forwardRef((e,t)=>{let n=hh(Vh,e.__scopeSelect),r=wh(Vh,e.__scopeSelect),[i,a]=I.useState(!1),o=L(t,r.onScrollButtonChange);return Z(()=>{if(n.viewport&&n.isPositioned){let e=function(){a(t.scrollTop>0)},t=n.viewport;return e(),t.addEventListener(`scroll`,e),()=>t.removeEventListener(`scroll`,e)}},[n.viewport,n.isPositioned]),i?(0,R.jsx)(Gh,{...e,ref:o,onAutoScroll:()=>{let{viewport:e,selectedItem:t}=n;e&&t&&(e.scrollTop-=t.offsetHeight)}}):null});Hh.displayName=Vh;var Uh=`SelectScrollDownButton`,Wh=I.forwardRef((e,t)=>{let n=hh(Uh,e.__scopeSelect),r=wh(Uh,e.__scopeSelect),[i,a]=I.useState(!1),o=L(t,r.onScrollButtonChange);return Z(()=>{if(n.viewport&&n.isPositioned){let e=function(){let e=t.scrollHeight-t.clientHeight;a(Math.ceil(t.scrollTop)<e)},t=n.viewport;return e(),t.addEventListener(`scroll`,e),()=>t.removeEventListener(`scroll`,e)}},[n.viewport,n.isPositioned]),i?(0,R.jsx)(Gh,{...e,ref:o,onAutoScroll:()=>{let{viewport:e,selectedItem:t}=n;e&&t&&(e.scrollTop+=t.offsetHeight)}}):null});Wh.displayName=Uh;var Gh=I.forwardRef((e,t)=>{let{__scopeSelect:n,onAutoScroll:r,...i}=e,a=hh(`SelectScrollButton`,n),o=I.useRef(null),s=qm(n),c=I.useCallback(()=>{o.current!==null&&(window.clearInterval(o.current),o.current=null)},[]);return I.useEffect(()=>()=>c(),[c]),Z(()=>{s().find(e=>e.ref.current===document.activeElement)?.ref.current?.scrollIntoView({block:`nearest`})},[s]),(0,R.jsx)(Y.div,{"aria-hidden":!0,...i,ref:t,style:{flexShrink:0,...i.style},onPointerDown:J(i.onPointerDown,()=>{o.current===null&&(o.current=window.setInterval(r,50))}),onPointerMove:J(i.onPointerMove,()=>{a.onItemLeave?.(),o.current===null&&(o.current=window.setInterval(r,50))}),onPointerLeave:J(i.onPointerLeave,()=>{c()})})}),Kh=`SelectSeparator`,qh=I.forwardRef((e,t)=>{let{__scopeSelect:n,...r}=e;return(0,R.jsx)(Y.div,{"aria-hidden":!0,...r,ref:t})});qh.displayName=Kh;var Jh=`SelectArrow`,Yh=I.forwardRef((e,t)=>{let{__scopeSelect:n,...r}=e,i=Zm(n),a=$m(Jh,n),o=hh(Jh,n);return a.open&&o.position===`popper`?(0,R.jsx)(qc,{...i,...r,ref:t}):null});Yh.displayName=Jh;var Xh=`SelectBubbleInput`,Zh=I.forwardRef(({__scopeSelect:e,value:t,...n},r)=>{let i=I.useRef(null),a=L(r,i),o=Hm(t);return I.useEffect(()=>{let e=i.current;if(!e)return;let n=window.HTMLSelectElement.prototype,r=Object.getOwnPropertyDescriptor(n,`value`).set;if(o!==t&&r){let n=new Event(`change`,{bubbles:!0});r.call(e,t),e.dispatchEvent(n)}},[o,t]),(0,R.jsx)(Y.select,{...n,style:{...al,...n.style},ref:a,defaultValue:t})});Zh.displayName=Xh;function Qh(e){return e===``||e===void 0}function $h(e){let t=X(e),n=I.useRef(``),r=I.useRef(0),i=I.useCallback(e=>{let i=n.current+e;t(i),(function e(t){n.current=t,window.clearTimeout(r.current),t!==``&&(r.current=window.setTimeout(()=>e(``),1e3))})(i)},[t]),a=I.useCallback(()=>{n.current=``,window.clearTimeout(r.current)},[]);return I.useEffect(()=>()=>window.clearTimeout(r.current),[]),[n,i,a]}function eg(e,t,n){let r=t.length>1&&Array.from(t).every(e=>e===t[0])?t[0]:t,i=n?e.indexOf(n):-1,a=tg(e,Math.max(i,0));r.length===1&&(a=a.filter(e=>e!==n));let o=a.find(e=>e.textValue.toLowerCase().startsWith(r.toLowerCase()));return o===n?void 0:o}function tg(e,t){return e.map((n,r)=>e[(t+r)%e.length])}var ng=nh,rg=ih,ig=oh,ag=ch,og=uh,sg=fh,cg=Eh,lg=Mh,ug=Ih,dg=Rh,fg=Bh,pg=Hh,mg=Wh,hg=qh,gg=ng,_g=ig,vg=I.forwardRef((e,t)=>{let n=(0,F.c)(12),r,i,a;n[0]===e?(r=n[1],i=n[2],a=n[3]):({className:i,children:r,...a}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a);let o;n[4]===i?o=n[5]:(o=x(`flex h-10 w-full items-center justify-between rounded-md border border-input bg-background px-3 py-2 text-base ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1`,i),n[4]=i,n[5]=o);let s;n[6]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,R.jsx)(ag,{asChild:!0,children:(0,R.jsx)(C,{className:`h-4 w-4 opacity-50`})}),n[6]=s):s=n[6];let c;return n[7]!==r||n[8]!==a||n[9]!==t||n[10]!==o?(c=(0,R.jsxs)(rg,{ref:t,className:o,...a,children:[r,s]}),n[7]=r,n[8]=a,n[9]=t,n[10]=o,n[11]=c):c=n[11],c});vg.displayName=rg.displayName;var yg=I.forwardRef((e,t)=>{let n=(0,F.c)(10),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=x(`flex cursor-default items-center justify-center py-1`,r),n[3]=r,n[4]=a);let o;n[5]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,R.jsx)(v,{className:`h-4 w-4`}),n[5]=o):o=n[5];let s;return n[6]!==i||n[7]!==t||n[8]!==a?(s=(0,R.jsx)(pg,{ref:t,className:a,...i,children:o}),n[6]=i,n[7]=t,n[8]=a,n[9]=s):s=n[9],s});yg.displayName=pg.displayName;var bg=I.forwardRef((e,t)=>{let n=(0,F.c)(10),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=x(`flex cursor-default items-center justify-center py-1`,r),n[3]=r,n[4]=a);let o;n[5]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,R.jsx)(C,{className:`h-4 w-4`}),n[5]=o):o=n[5];let s;return n[6]!==i||n[7]!==t||n[8]!==a?(s=(0,R.jsx)(mg,{ref:t,className:a,...i,children:o}),n[6]=i,n[7]=t,n[8]=a,n[9]=s):s=n[9],s});bg.displayName=mg.displayName;var xg=I.forwardRef((e,t)=>{let n=(0,F.c)(21),r,i,a,o;n[0]===e?(r=n[1],i=n[2],a=n[3],o=n[4]):({className:i,children:r,position:o,...a}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a,n[4]=o);let s=o===void 0?`popper`:o,c=s===`popper`&&`data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1`,l;n[5]!==i||n[6]!==c?(l=x(`relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2`,c,i),n[5]=i,n[6]=c,n[7]=l):l=n[7];let u;n[8]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,R.jsx)(yg,{}),n[8]=u):u=n[8];let d=s===`popper`&&`h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]`,f;n[9]===d?f=n[10]:(f=x(`p-1`,d),n[9]=d,n[10]=f);let p;n[11]!==r||n[12]!==f?(p=(0,R.jsx)(cg,{className:f,children:r}),n[11]=r,n[12]=f,n[13]=p):p=n[13];let m;n[14]===Symbol.for(`react.memo_cache_sentinel`)?(m=(0,R.jsx)(bg,{}),n[14]=m):m=n[14];let h;return n[15]!==s||n[16]!==a||n[17]!==t||n[18]!==l||n[19]!==p?(h=(0,R.jsx)(og,{children:(0,R.jsxs)(sg,{ref:t,className:l,position:s,...a,children:[u,p,m]})}),n[15]=s,n[16]=a,n[17]=t,n[18]=l,n[19]=p,n[20]=h):h=n[20],h});xg.displayName=sg.displayName;var Sg=I.forwardRef((e,t)=>{let n=(0,F.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=x(`py-1.5 pl-8 pr-2 text-base font-semibold`,r),n[3]=r,n[4]=a);let o;return n[5]!==i||n[6]!==t||n[7]!==a?(o=(0,R.jsx)(lg,{ref:t,className:a,...i}),n[5]=i,n[6]=t,n[7]=a,n[8]=o):o=n[8],o});Sg.displayName=lg.displayName;var Cg=I.forwardRef((e,t)=>{let n=(0,F.c)(14),r,i,a;n[0]===e?(r=n[1],i=n[2],a=n[3]):({className:i,children:r,...a}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a);let o;n[4]===i?o=n[5]:(o=x(`relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-base outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50`,i),n[4]=i,n[5]=o);let s;n[6]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,R.jsx)(`span`,{className:`absolute left-2 flex h-3.5 w-3.5 items-center justify-center`,children:(0,R.jsx)(fg,{children:(0,R.jsx)(b,{className:`h-4 w-4`})})}),n[6]=s):s=n[6];let c;n[7]===r?c=n[8]:(c=(0,R.jsx)(dg,{children:r}),n[7]=r,n[8]=c);let l;return n[9]!==a||n[10]!==t||n[11]!==o||n[12]!==c?(l=(0,R.jsxs)(ug,{ref:t,className:o,...a,children:[s,c]}),n[9]=a,n[10]=t,n[11]=o,n[12]=c,n[13]=l):l=n[13],l});Cg.displayName=ug.displayName;var wg=I.forwardRef((e,t)=>{let n=(0,F.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=x(`-mx-1 my-1 h-px bg-divider`,r),n[3]=r,n[4]=a);let o;return n[5]!==i||n[6]!==t||n[7]!==a?(o=(0,R.jsx)(hg,{ref:t,className:a,...i}),n[5]=i,n[6]=t,n[7]=a,n[8]=o):o=n[8],o});wg.displayName=hg.displayName;var Tg=I.forwardRef((e,t)=>{let n=(0,F.c)(23),r,i,o,s,c,l,u,d,f;n[0]===e?(r=n[1],i=n[2],o=n[3],s=n[4],c=n[5],l=n[6],u=n[7],d=n[8],f=n[9]):({className:i,selected:l,noBackground:s,level:o,basePadding:r,indentSize:d,asChild:f,style:u,...c}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=o,n[4]=s,n[5]=c,n[6]=l,n[7]=u,n[8]=d,n[9]=f);let p=d===void 0?20:d,m=f===void 0?!1:f,h=o===void 0?void 0:(r??12)+o*p,g=m?se:`div`,_;n[10]!==i||n[11]!==s||n[12]!==l?(_=x(x(a.body,`flex items-center gap-2 w-full min-w-0 justify-start text-left touch-manipulation px-3 py-2 cursor-pointer rounded-full transition-colors group overflow-hidden`),`can-hover:hover:bg-sidebar-accent can-hover:hover:text-sidebar-accent-foreground`,l&&!s&&`bg-sidebar-accent text-sidebar-accent-foreground font-medium`,l&&s&&`font-bold text-foreground`,i),n[10]=i,n[11]=s,n[12]=l,n[13]=_):_=n[13];let v=h===void 0?void 0:`${h}px`,y;n[14]!==u||n[15]!==v?(y={paddingLeft:v,...u},n[14]=u,n[15]=v,n[16]=y):y=n[16];let b;return n[17]!==g||n[18]!==c||n[19]!==t||n[20]!==_||n[21]!==y?(b=(0,R.jsx)(g,{ref:t,className:_,style:y,...c}),n[17]=g,n[18]=c,n[19]=t,n[20]=_,n[21]=y,n[22]=b):b=n[22],b});Tg.displayName=`StandardListItem`;function Eg(e){let t=(0,F.c)(19),{provider:n,size:r,className:i}=e,o=(r===void 0?`md`:r)===`sm`?`h-6 w-6`:`h-8 w-8`,s;t[0]===n.slug?s=t[1]:(s=()=>Xn(n.slug),t[0]=n.slug,t[1]=s);let[c,l]=(0,I.useState)(s),[u,d]=(0,I.useState)(!1),f,p;t[2]===n.slug?(f=t[3],p=t[4]):(f=()=>{l(Xn(n.slug)),d(!1)},p=[n.slug],t[2]=n.slug,t[3]=f,t[4]=p),(0,I.useEffect)(f,p);let m;t[5]!==c||t[6]!==n.slug?(m=function(){let e=Zn(n.slug);if(c!==e){l(e);return}d(!0)},t[5]=c,t[6]=n.slug,t[7]=m):m=t[7];let h=m,g;t[8]!==i||t[9]!==o?(g=x(`flex shrink-0 items-center justify-center overflow-hidden rounded-full bg-white p-1 dark:bg-muted`,o,i),t[8]=i,t[9]=o,t[10]=g):g=t[10];let _;t[11]!==h||t[12]!==u||t[13]!==c||t[14]!==n.name?(_=u?(0,R.jsx)(`span`,{className:x(a.compact,`font-semibold text-muted-foreground`),children:n.name.charAt(0).toUpperCase()}):(0,R.jsx)(`img`,{src:c,alt:`${n.name} logo`,className:`h-full w-full object-contain dark:invert`,loading:`lazy`,decoding:`async`,onError:h}),t[11]=h,t[12]=u,t[13]=c,t[14]=n.name,t[15]=_):_=t[15];let v;return t[16]!==g||t[17]!==_?(v=(0,R.jsx)(`div`,{className:g,children:_}),t[16]=g,t[17]=_,t[18]=v):v=t[18],v}function Dg(e){return`${e.slug.toUpperCase().replace(/-/g,`_`)}_API_URL`}function Og(e){let t=e.env??[];return t.find(e=>/resource_name$/i.test(e))??t[0]??``}function kg(e){if(e.apiKeyEnv)return e.apiKeyEnv;if(e.keyName)return e.keyName;let t=e.env??[];return t.find(e=>/api_key$/i.test(e))??t[t.length-1]??``}function Ag(e){let t=kg(e);return(e.env??[]).filter(e=>e!==t)}function jg(e){return e===`LOCAL_API_URL`?`URL`:e.replace(/^AZURE_/,``).replace(/_/g,` `).toLowerCase().replace(/\b\w/g,e=>e.toUpperCase())}function Mg(e,t){let n=Dg(e),r=t[n]??e.envValues?.[n]??``;if(r)return r;if(e.slug===`azure`){let n=Og(e),r=t[n]??e.envValues?.[n]??``;if(r)return`https://${r}.openai.azure.com/openai/v1`}return _(e.slug)?k({...e.envValues,...t}):e.api.replace(/\$\{([A-Z0-9_]+)\}/gi,(n,r)=>t[r]??e.envValues?.[r]??``)}function Ng(e){return e.slug.toLowerCase()===`openrouter`||e.name.toLowerCase()===`openrouter`}function Pg(e){return{recommended:e.find(Ng)??null,others:e.filter(e=>!Ng(e)).sort((e,t)=>e.name.localeCompare(t.name))}}function Fg(e){let{recommended:t,others:n}=Pg(e);return t??n[0]??null}function Ig(e){try{let t=new URL(e),n=t.hostname.split(`.`),r=n.length<=2?t.hostname:n.slice(-2).join(`.`);return`${t.protocol}//${r}`}catch{return e}}var Lg=o(`app.provider-selector.ui`);function Rg(e){let t=(0,F.c)(17),{url:n,className:r,children:i,showIcon:o,variant:s}=e,c=o===void 0?!0:o,u=s===void 0?`link`:s,d;t[0]===n?d=t[1]:(d=Ig(n),t[0]=n,t[1]=d);let f=d,p;t[2]===f?p=t[3]:(p=async function(e){e.preventDefault(),e.stopPropagation();try{await nr(f)}catch(e){let t=e;Lg.error(`Failed to open provider website:`,t)}},t[2]=f,t[3]=p);let m=p,h=u===`link`&&a.caption,g=u===`link`&&`text-brand hover:underline inline-flex items-center gap-1`,_=u===`inline`&&`inline hover:underline`,v;t[4]!==r||t[5]!==h||t[6]!==g||t[7]!==_?(v=x(h,g,_,r),t[4]=r,t[5]=h,t[6]=g,t[7]=_,t[8]=v):v=t[8];let y;t[9]!==i||t[10]!==c?(y=i??(0,R.jsxs)(R.Fragment,{children:[`Provider Website`,c&&(0,R.jsx)(l,{className:`h-3.5 w-3.5`})]}),t[9]=i,t[10]=c,t[11]=y):y=t[11];let b;return t[12]!==m||t[13]!==f||t[14]!==v||t[15]!==y?(b=(0,R.jsx)(`a`,{href:f,onClick:m,className:v,children:y}),t[12]=m,t[13]=f,t[14]=v,t[15]=y,t[16]=b):b=t[16],b}function zg(e){let t=(0,F.c)(10),{provider:n,recommended:r}=e,i=r===void 0?!1:r,o;t[0]===n?o=t[1]:(o=(0,R.jsx)(Eg,{provider:n,size:`sm`}),t[0]=n,t[1]=o);let s;t[2]===n.name?s=t[3]:(s=(0,R.jsx)(`span`,{className:`truncate`,children:n.name}),t[2]=n.name,t[3]=s);let c;t[4]===i?c=t[5]:(c=i&&(0,R.jsx)(`span`,{className:x(a.caption,`text-muted-foreground flex-shrink-0`),children:`(Recommended)`}),t[4]=i,t[5]=c);let l;return t[6]!==o||t[7]!==s||t[8]!==c?(l=(0,R.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0`,children:[o,s,c]}),t[6]=o,t[7]=s,t[8]=c,t[9]=l):l=t[9],l}function Bg(e){let t=(0,F.c)(8),{providers:n}=e,r,i,a;if(t[0]!==n){let{recommended:e,others:o}=Pg(n);r=e&&(0,R.jsx)(Cg,{value:e.name,children:(0,R.jsx)(zg,{provider:e,recommended:!0})},e.name),i=e&&o.length>0&&(0,R.jsx)(wg,{}),a=o.map(Vg),t[0]=n,t[1]=r,t[2]=i,t[3]=a}else r=t[1],i=t[2],a=t[3];let o;return t[4]!==r||t[5]!==i||t[6]!==a?(o=(0,R.jsxs)(R.Fragment,{children:[r,i,a]}),t[4]=r,t[5]=i,t[6]=a,t[7]=o):o=t[7],o}function Vg(e){return(0,R.jsx)(Cg,{value:e.name,children:(0,R.jsx)(zg,{provider:e})},e.name)}function Hg(e){let t=(0,F.c)(17),{providers:n,selectedProvider:r,onProviderChange:i}=e,o,s,c,l;if(t[0]!==i||t[1]!==n||t[2]!==r?.name){let{recommended:e,others:u}=Pg(n),d;t[7]!==i||t[8]!==r?.name?(d=function(e,t){let n=t===void 0?!1:t;return(0,R.jsx)(Tg,{selected:r?.name===e.name,asChild:!0,children:(0,R.jsxs)(`button`,{type:`button`,className:`justify-start w-full`,onClick:()=>i(e),children:[(0,R.jsx)(Eg,{provider:e}),(0,R.jsx)(`span`,{className:`truncate`,children:e.name}),n&&(0,R.jsx)(`span`,{className:x(a.caption,`text-muted-foreground flex-shrink-0`),children:`(Recommended)`})]})},e.name)},t[7]=i,t[8]=r?.name,t[9]=d):d=t[9];let f=d;o=`space-y-1`,s=e&&f(e,!0),c=e&&u.length>0&&(0,R.jsx)(Fm,{className:`my-2`});let p;t[10]===f?p=t[11]:(p=e=>f(e),t[10]=f,t[11]=p),l=u.map(p),t[0]=i,t[1]=n,t[2]=r?.name,t[3]=o,t[4]=s,t[5]=c,t[6]=l}else o=t[3],s=t[4],c=t[5],l=t[6];let u;return t[12]!==o||t[13]!==s||t[14]!==c||t[15]!==l?(u=(0,R.jsxs)(`div`,{className:o,children:[s,c,l]}),t[12]=o,t[13]=s,t[14]=c,t[15]=l,t[16]=u):u=t[16],u}function Ug({selectedProvider:e,onProviderChange:t,showApiKeyInput:n=!0,apiKey:r,onApiKeyChange:i,isLoading:o,error:s,variant:c=`dropdown`}){let[l,u]=(0,I.useState)([]),[d,f]=(0,I.useState)(!1);if((0,I.useEffect)(()=>{(async()=>{f(!0);try{let n=await Yn();if(u(n),n.length>0&&!e){let e=Fg(n);e&&t(e)}}catch(e){Lg.error(`Failed to load providers:`,e)}finally{f(!1)}})()},[e,t]),d)return(0,R.jsx)(`div`,{className:`flex items-center justify-center py-4`,children:(0,R.jsx)(w,{className:`h-4 w-4 animate-spin text-muted-foreground`})});let p=(0,R.jsxs)(R.Fragment,{children:[e?.url&&(0,R.jsx)(Rg,{url:e.url}),n&&e&&(0,R.jsx)(Wg,{provider:e,value:r??e.apiKey??``,onChange:i,isLoading:o})]});return c===`list`?(0,R.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[s&&(0,R.jsx)(`p`,{className:a.error,children:s}),(0,R.jsx)(fd,{label:(0,R.jsx)(Vm,{children:`AI Provider`}),control:(0,R.jsx)(Hg,{providers:l,selectedProvider:e,onProviderChange:t}),align:`start`}),p]}):(0,R.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[s&&(0,R.jsx)(`p`,{className:a.error,children:s}),(0,R.jsx)(fd,{label:(0,R.jsx)(Vm,{children:`AI Provider`}),control:(0,R.jsxs)(gg,{value:e?.name??``,onValueChange:e=>{let n=l.find(t=>t.name===e);n&&t(n)},children:[(0,R.jsx)(vg,{children:e?(0,R.jsx)(zg,{provider:e}):`Select a provider`}),(0,R.jsx)(xg,{children:(0,R.jsx)(Bg,{providers:l})})]})}),p]})}function Wg(e){let t=(0,F.c)(24),{provider:n,value:r,onChange:i,isLoading:a}=e,[o,s]=(0,I.useState)(!1);if(n.authType!==`APIKey`){let e;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,R.jsx)(nd,{className:`mb-0`,children:`This provider uses OAuth for authentication.`}),t[0]=e):e=t[0];let r;return t[1]===n.name?r=t[2]:(r=(0,R.jsxs)(`div`,{className:`space-y-2 text-center`,children:[e,(0,R.jsxs)(_e,{variant:`outline`,size:`sm`,disabled:!0,children:[`Sign in with `,n.name]})]}),t[1]=n.name,t[2]=r),r}let c;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,R.jsx)(Jl,{children:(0,R.jsxs)(Yl,{children:[(0,R.jsx)(Xl,{asChild:!0,children:(0,R.jsx)(Vm,{htmlFor:`api-key`,className:`cursor-help`,children:`API Key`})}),(0,R.jsx)(Zl,{children:`Your API key is stored locally and never shared.`})]})}),t[3]=c):c=t[3];let l;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,R.jsx)(A,{className:`absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground`}),t[4]=l):l=t[4];let u=o?`text`:`password`,d=n.keyName??`Enter API Key`,f;t[5]===i?f=t[6]:(f=e=>i?.(e.target.value),t[5]=i,t[6]=f);let h;t[7]!==a||t[8]!==u||t[9]!==d||t[10]!==f||t[11]!==r?(h=(0,R.jsx)(Im,{id:`api-key`,type:u,placeholder:d,className:`pl-10 pr-10`,value:r,onChange:f,disabled:a}),t[7]=a,t[8]=u,t[9]=d,t[10]=f,t[11]=r,t[12]=h):h=t[12];let g;t[13]===o?g=t[14]:(g=()=>s(!o),t[13]=o,t[14]=g);let _=(a??!1)||!r,v;t[15]===o?v=t[16]:(v=o?(0,R.jsx)(m,{className:`h-4 w-4 text-muted-foreground`}):(0,R.jsx)(p,{className:`h-4 w-4 text-muted-foreground`}),t[15]=o,t[16]=v);let y;t[17]!==g||t[18]!==_||t[19]!==v?(y=(0,R.jsx)(_e,{type:`button`,variant:`ghost`,size:`sm`,className:`absolute right-1 top-1/2 -translate-y-1/2 h-8 w-8 p-0`,onClick:g,disabled:_,children:v}),t[17]=g,t[18]=_,t[19]=v,t[20]=y):y=t[20];let b;return t[21]!==y||t[22]!==h?(b=(0,R.jsx)(fd,{label:c,control:(0,R.jsxs)(`div`,{className:`relative`,children:[l,h,y]})}),t[21]=y,t[22]=h,t[23]=b):b=t[23],b}var Gg=`Checkbox`,[Kg,qg]=ja(Gg),[Jg,Yg]=Kg(Gg);function Xg(e){let{__scopeCheckbox:t,checked:n,children:r,defaultChecked:i,disabled:a,form:o,name:s,onCheckedChange:c,required:l,value:u=`on`,internal_do_not_use_render:d}=e,[f,p]=nl({prop:n,defaultProp:i??!1,onChange:c,caller:Gg}),[m,h]=I.useState(null),[g,_]=I.useState(null),v=I.useRef(!1),y=m?!!o||!!m.closest(`form`):!0,b={checked:f,disabled:a,setChecked:p,control:m,setControl:h,name:s,form:o,value:u,hasConsumerStoppedPropagationRef:v,required:l,defaultChecked:a_(i)?!1:i,isFormControl:y,bubbleInput:g,setBubbleInput:_};return(0,R.jsx)(Jg,{scope:t,...b,children:i_(d)?d(b):r})}var Zg=`CheckboxTrigger`,Qg=I.forwardRef(({__scopeCheckbox:e,onKeyDown:t,onClick:n,...r},i)=>{let{control:a,value:o,disabled:s,checked:c,required:l,setControl:u,setChecked:d,hasConsumerStoppedPropagationRef:f,isFormControl:p,bubbleInput:m}=Yg(Zg,e),h=L(i,u),g=I.useRef(c);return I.useEffect(()=>{let e=a?.form;if(e){let t=()=>d(g.current);return e.addEventListener(`reset`,t),()=>e.removeEventListener(`reset`,t)}},[a,d]),(0,R.jsx)(Y.button,{type:`button`,role:`checkbox`,"aria-checked":a_(c)?`mixed`:c,"aria-required":l,"data-state":o_(c),"data-disabled":s?``:void 0,disabled:s,value:o,...r,ref:h,onKeyDown:J(t,e=>{e.key===`Enter`&&e.preventDefault()}),onClick:J(n,e=>{d(e=>a_(e)?!0:!e),m&&p&&(f.current=e.isPropagationStopped(),f.current||e.stopPropagation())})})});Qg.displayName=Zg;var $g=I.forwardRef((e,t)=>{let{__scopeCheckbox:n,name:r,checked:i,defaultChecked:a,required:o,disabled:s,value:c,onCheckedChange:l,form:u,...d}=e;return(0,R.jsx)(Xg,{__scopeCheckbox:n,checked:i,defaultChecked:a,disabled:s,required:o,onCheckedChange:l,name:r,form:u,value:c,internal_do_not_use_render:({isFormControl:e})=>(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(Qg,{...d,ref:t,__scopeCheckbox:n}),e&&(0,R.jsx)(r_,{__scopeCheckbox:n})]})})});$g.displayName=Gg;var e_=`CheckboxIndicator`,t_=I.forwardRef((e,t)=>{let{__scopeCheckbox:n,forceMount:r,...i}=e,a=Yg(e_,n);return(0,R.jsx)(Zc,{present:r||a_(a.checked)||a.checked===!0,children:(0,R.jsx)(Y.span,{"data-state":o_(a.checked),"data-disabled":a.disabled?``:void 0,...i,ref:t,style:{pointerEvents:`none`,...e.style}})})});t_.displayName=e_;var n_=`CheckboxBubbleInput`,r_=I.forwardRef(({__scopeCheckbox:e,...t},n)=>{let{control:r,hasConsumerStoppedPropagationRef:i,checked:a,defaultChecked:o,required:s,disabled:c,name:l,value:u,form:d,bubbleInput:f,setBubbleInput:p}=Yg(n_,e),m=L(n,p),h=Hm(a),g=Tc(r);I.useEffect(()=>{let e=f;if(!e)return;let t=window.HTMLInputElement.prototype,n=Object.getOwnPropertyDescriptor(t,`checked`).set,r=!i.current;if(h!==a&&n){let t=new Event(`click`,{bubbles:r});e.indeterminate=a_(a),n.call(e,a_(a)?!1:a),e.dispatchEvent(t)}},[f,h,a,i]);let _=I.useRef(a_(a)?!1:a);return(0,R.jsx)(Y.input,{type:`checkbox`,"aria-hidden":!0,defaultChecked:o??_.current,required:s,disabled:c,name:l,value:u,form:d,...t,tabIndex:-1,ref:m,style:{...t.style,...g,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0,transform:`translateX(-100%)`}})});r_.displayName=n_;function i_(e){return typeof e==`function`}function a_(e){return e===`indeterminate`}function o_(e){return a_(e)?`indeterminate`:e?`checked`:`unchecked`}var s_=I.forwardRef((e,t)=>{let n=(0,F.c)(10),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=x(`peer h-4 w-4 shrink-0 rounded-sm border border-primary bg-background ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground`,r),n[3]=r,n[4]=a);let o;n[5]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,R.jsx)(t_,{className:x(`flex items-center justify-center text-current`),children:(0,R.jsx)(b,{className:`h-4 w-4`})}),n[5]=o):o=n[5];let s;return n[6]!==i||n[7]!==t||n[8]!==a?(s=(0,R.jsx)($g,{ref:t,className:a,...i,children:o}),n[6]=i,n[7]=t,n[8]=a,n[9]=s):s=n[9],s});s_.displayName=$g.displayName;var c_=`Toggle`,l_=I.forwardRef((e,t)=>{let{pressed:n,defaultPressed:r,onPressedChange:i,...a}=e,[o,s]=nl({prop:n,onChange:i,defaultProp:r??!1,caller:c_});return(0,R.jsx)(Y.button,{type:`button`,"aria-pressed":o,"data-state":o?`on`:`off`,"data-disabled":e.disabled?``:void 0,...a,ref:t,onClick:J(e.onClick,()=>{e.disabled||s(!o)})})});l_.displayName=c_;var u_=l_,d_=`ToggleGroup`,[f_,p_]=ja(d_,[Hd]),m_=Hd(),h_=I.forwardRef((e,t)=>{let{type:n,...r}=e;if(n===`single`)return(0,R.jsx)(v_,{...r,ref:t});if(n===`multiple`)return(0,R.jsx)(y_,{...r,ref:t});throw Error(`Missing prop \`type\` expected on \`${d_}\``)});h_.displayName=d_;var[g_,__]=f_(d_),v_=I.forwardRef((e,t)=>{let{value:n,defaultValue:r,onValueChange:i=()=>{},...a}=e,[o,s]=nl({prop:n,defaultProp:r??``,onChange:i,caller:d_});return(0,R.jsx)(g_,{scope:e.__scopeToggleGroup,type:`single`,value:I.useMemo(()=>o?[o]:[],[o]),onItemActivate:s,onItemDeactivate:I.useCallback(()=>s(``),[s]),children:(0,R.jsx)(S_,{...a,ref:t})})}),y_=I.forwardRef((e,t)=>{let{value:n,defaultValue:r,onValueChange:i=()=>{},...a}=e,[o,s]=nl({prop:n,defaultProp:r??[],onChange:i,caller:d_}),c=I.useCallback(e=>s((t=[])=>[...t,e]),[s]),l=I.useCallback(e=>s((t=[])=>t.filter(t=>t!==e)),[s]);return(0,R.jsx)(g_,{scope:e.__scopeToggleGroup,type:`multiple`,value:o,onItemActivate:c,onItemDeactivate:l,children:(0,R.jsx)(S_,{...a,ref:t})})});h_.displayName=d_;var[b_,x_]=f_(d_),S_=I.forwardRef((e,t)=>{let{__scopeToggleGroup:n,disabled:r=!1,rovingFocus:i=!0,orientation:a,dir:o,loop:s=!0,...c}=e,l=m_(n),u=ru(o),d={role:`group`,dir:u,...c};return(0,R.jsx)(b_,{scope:n,rovingFocus:i,disabled:r,children:i?(0,R.jsx)(ef,{asChild:!0,...l,orientation:a,dir:u,loop:s,children:(0,R.jsx)(Y.div,{...d,ref:t})}):(0,R.jsx)(Y.div,{...d,ref:t})})}),C_=`ToggleGroupItem`,w_=I.forwardRef((e,t)=>{let n=__(C_,e.__scopeToggleGroup),r=x_(C_,e.__scopeToggleGroup),i=m_(e.__scopeToggleGroup),a=n.value.includes(e.value),o=r.disabled||e.disabled,s={...e,pressed:a,disabled:o},c=I.useRef(null);return r.rovingFocus?(0,R.jsx)(tf,{asChild:!0,...i,focusable:!o,active:a,ref:c,children:(0,R.jsx)(T_,{...s,ref:t})}):(0,R.jsx)(T_,{...s,ref:t})});w_.displayName=C_;var T_=I.forwardRef((e,t)=>{let{__scopeToggleGroup:n,value:r,...i}=e,a=__(C_,n),o={role:`radio`,"aria-checked":e.pressed,"aria-pressed":void 0};return(0,R.jsx)(l_,{...a.type===`single`?o:void 0,...i,ref:t,onPressedChange:e=>{e?a.onItemActivate(r):a.onItemDeactivate(r)}})}),E_=h_,D_=w_,O_=he(`inline-flex items-center justify-center rounded-md ${a.body} font-medium ring-offset-background transition-colors hover:bg-muted hover:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 gap-2`,{variants:{variant:{default:`bg-transparent`,outline:`border border-input bg-transparent hover:bg-accent hover:text-accent-foreground`},size:{default:`h-10 px-3 min-w-10`,sm:`h-9 px-2.5 min-w-9`,lg:`h-11 px-5 min-w-11`}},defaultVariants:{variant:`default`,size:`default`}}),k_=I.forwardRef((e,t)=>{let n=(0,F.c)(13),r,i,a,o;n[0]===e?(r=n[1],i=n[2],a=n[3],o=n[4]):({className:r,variant:o,size:a,...i}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a,n[4]=o);let s;n[5]!==r||n[6]!==a||n[7]!==o?(s=x(O_({variant:o,size:a,className:r})),n[5]=r,n[6]=a,n[7]=o,n[8]=s):s=n[8];let c;return n[9]!==i||n[10]!==t||n[11]!==s?(c=(0,R.jsx)(u_,{ref:t,className:s,...i}),n[9]=i,n[10]=t,n[11]=s,n[12]=c):c=n[12],c});k_.displayName=u_.displayName;var A_=I.createContext({size:`default`,variant:`default`}),j_=I.forwardRef((e,t)=>{let n=(0,F.c)(19),r,i,a,o,s;n[0]===e?(r=n[1],i=n[2],a=n[3],o=n[4],s=n[5]):({className:i,variant:s,size:o,children:r,...a}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a,n[4]=o,n[5]=s);let c;n[6]===i?c=n[7]:(c=x(`flex items-center justify-center gap-1`,i),n[6]=i,n[7]=c);let l;n[8]!==o||n[9]!==s?(l={variant:s,size:o},n[8]=o,n[9]=s,n[10]=l):l=n[10];let u;n[11]!==r||n[12]!==l?(u=(0,R.jsx)(A_.Provider,{value:l,children:r}),n[11]=r,n[12]=l,n[13]=u):u=n[13];let d;return n[14]!==a||n[15]!==t||n[16]!==c||n[17]!==u?(d=(0,R.jsx)(E_,{ref:t,className:c,...a,children:u}),n[14]=a,n[15]=t,n[16]=c,n[17]=u,n[18]=d):d=n[18],d});j_.displayName=E_.displayName;var M_=I.forwardRef((e,t)=>{let n=(0,F.c)(17),r,i,a,o,s;n[0]===e?(r=n[1],i=n[2],a=n[3],o=n[4],s=n[5]):({className:i,children:r,variant:s,size:o,...a}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a,n[4]=o,n[5]=s);let c=I.useContext(A_),l;n[6]!==i||n[7]!==c.size||n[8]!==c.variant||n[9]!==o||n[10]!==s?(l=x(O_({variant:c.variant||s,size:c.size||o}),i),n[6]=i,n[7]=c.size,n[8]=c.variant,n[9]=o,n[10]=s,n[11]=l):l=n[11];let u;return n[12]!==r||n[13]!==a||n[14]!==t||n[15]!==l?(u=(0,R.jsx)(D_,{ref:t,className:l,...a,children:r}),n[12]=r,n[13]=a,n[14]=t,n[15]=l,n[16]=u):u=n[16],u});M_.displayName=D_.displayName;function N_(e){let t=/^[^:]+:\s+(.+)$/.exec(e);return(t?t[1]:e).trim()}function P_(e){return[Dm(e.id),e.name,N_(e.name)]}function F_(e,t){let n=new Set(t.map(e=>e.toLowerCase()));return P_(e).some(e=>n.has(e.toLowerCase()))}function I_(e,t){return e.filter(e=>F_(e,t)).map(e=>e.id)}function L_(e){return e==null?0:e<20?1:e<30?2:e<40?3:e<50?4:5}function R_(e){return e.pricing?((e.pricing.prompt??0)+(e.pricing.completion??0))/2:null}function z_(e,t,n){let r=t.toLowerCase(),i=n(e);return e.name.toLowerCase().includes(r)||e.id.toLowerCase().includes(r)||i.toLowerCase().includes(r)}function B_(e){return e.pricing?.prompt===0&&e.pricing?.completion===0}function V_(e,t,n){let{sortBy:r,getDisplayName:i,getPriority:a,groupByProvider:o}=n;if(o){let n=(e.provider??``).toLowerCase(),r=(t.provider??``).toLowerCase();if(n!==r)return n.localeCompare(r)}if(a){let n=a(e),r=a(t);if(n!==r)return n-r}if(r===`price-low`){let n=!!e.pricing;return n===!!t.pricing?!e.pricing||!t.pricing?0:(R_(e)??0)-(R_(t)??0):n?-1:1}if(r===`price-high`){let n=!!e.pricing;if(n!==!!t.pricing)return n?-1:1;if(!e.pricing||!t.pricing)return 0;let r=R_(e)??0;return(R_(t)??0)-r}if(r===`coding-index`||r===`intelligence-by-price`){let n=e.coding_index!==void 0&&e.coding_index!==null;if(n!==(t.coding_index!==void 0&&t.coding_index!==null))return n?-1:1;if(e.coding_index==null||t.coding_index==null)return 0;let i=t.coding_index-e.coding_index;if(i!==0||r===`coding-index`)return i;let a=R_(e),o=R_(t),s=a!==null;return s===(o!==null)?a===null||o===null?0:a-o:s?-1:1}return i(e).localeCompare(i(t))}function H_(e){let{models:t,query:n,sortBy:r,getDisplayName:i,getPriority:a,freeOnly:o,groupByProvider:s}=e;return t.filter(e=>!(!z_(e,n,i)||o&&!B_(e))).sort((e,t)=>V_(e,t,{sortBy:r,getDisplayName:i,getPriority:a,groupByProvider:s}))}function U_(e,t,n){let r=new Map(e),i=n.has(t),a=r.has(t),o=r.get(t),s=!(a?o:i);return s===i?r.delete(t):r.set(t,s),r}var W_=o(`app.model-selector.ui`),G_=`rounded-full border-0 px-3 data-[state=on]:bg-foreground data-[state=on]:text-background data-[state=on]:shadow-sm`;function K_({provider:e,onModelsChange:t,isLoading:n,disabled:r,displayMode:i=`grid`,autoSelectRecommended:o=!1}){let[s,c]=(0,I.useState)([]),[l,u]=(0,I.useState)(new Set),[d,p]=(0,I.useState)(new Set),[m,g]=(0,I.useState)(new Map),[_,v]=(0,I.useState)(!1),[y,b]=(0,I.useState)(``),[S,C]=(0,I.useState)(`alphabetical`);(0,I.useEffect)(()=>{T()},[e]);let T=async()=>{v(!0),b(``),C(`alphabetical`);try{let t=await si(e);c(t.models);let n=new Set(t.enabledModelIds);u(n);let r=new Map,i=new Set;if(o)try{let{models:e}=await qi();i=new Set(I_(t.models,e)),r=new Map([...i].filter(e=>!n.has(e)).map(e=>[e,!0]))}catch(e){W_.error(`Failed to load recommended models:`,e)}p(i),g(r),D(n,r,t.models)}catch(t){W_.error(`Failed to load models for ${e}:`,t),c([]),u(new Set),p(new Set)}finally{v(!1)}},D=(e,n,r=s)=>{let i=new Set(e);r.forEach(e=>{n.has(e.id)&&(n.get(e.id)?i.add(e.id):i.delete(e.id))}),t?.(i)},O=e=>{g(t=>{let n=U_(t,e,l);return D(l,n),n})},k=e=>{g(t=>{let n=new Map(t);return s.forEach(t=>{let r=l.has(t.id);e?r?n.delete(t.id):n.set(t.id,!0):r?n.set(t.id,!1):n.delete(t.id)}),D(l,n),n})},A=e=>Dm(e.id);function M(e,t=m){let n=t.has(e),r=t.get(e);return n?!!r:l.has(e)}let N=H_({models:s,query:y,sortBy:S,getDisplayName:A,getPriority:e=>+!M(e.id)}),P=S===`alphabetical`?`alphabetical`:`price`;function F(e){if(e===`alphabetical`){C(`alphabetical`);return}e===`price`&&C(`price-low`)}function ee(){S!==`alphabetical`&&C(e=>e===`price-low`?`price-high`:`price-low`)}return _||n?(0,R.jsx)(`div`,{className:`flex items-center justify-center py-8`,children:(0,R.jsx)(w,{className:`h-5 w-5 animate-spin text-muted-foreground`})}):s.length===0?(0,R.jsx)(`div`,{className:`text-center py-8`,children:(0,R.jsx)(`p`,{className:a.bodyMuted,children:`No models available for this provider.`})}):i===`compact`?(0,R.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,R.jsxs)(`div`,{className:x(`flex items-center justify-between gap-3`,r&&`opacity-25`),children:[(0,R.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0`,children:[(0,R.jsx)(s_,{id:`select-all-models`,disabled:r,checked:s.every(e=>M(e.id)),onCheckedChange:e=>k(e===!0)}),(0,R.jsx)(`label`,{htmlFor:`select-all-models`,className:x(a.body,`cursor-pointer`),children:`Select all models`})]}),(0,R.jsxs)(`div`,{className:`flex items-center gap-2 flex-shrink-0`,children:[(0,R.jsxs)(`div`,{className:`relative w-44 sm:w-52`,children:[(0,R.jsx)(j,{className:`absolute left-2.5 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground pointer-events-none`}),(0,R.jsx)(Im,{placeholder:`Search models...`,value:y,onChange:e=>b(e.target.value),disabled:r,className:`pl-8 h-9`})]}),(0,R.jsxs)(j_,{type:`single`,value:P,onValueChange:F,"aria-label":`Sort models`,variant:`outline`,className:`inline-flex rounded-full border bg-muted/40 p-1`,children:[(0,R.jsx)(M_,{value:`alphabetical`,"aria-label":`Sort A–Z`,disabled:r,className:G_,children:(0,R.jsx)(f,{className:`h-4 w-4`})}),(0,R.jsx)(M_,{value:`price`,"aria-label":`Sort by price`,disabled:r,className:G_,onClick:ee,children:(0,R.jsx)(E,{className:`h-4 w-4`})})]})]})]}),(0,R.jsx)(Jl,{children:(0,R.jsx)(`div`,{className:`grid grid-cols-1 gap-0 overflow-hidden rounded-md border border-table-border`,children:N.length===0?(0,R.jsx)(`div`,{className:`text-center py-4`,children:(0,R.jsx)(`p`,{className:a.bodyMuted,children:y?`No models match your search.`:`No models available.`})}):N.map(e=>{let t=M(e.id),n=e.pricing,i=t&&d.has(e.id);return(0,R.jsxs)(Yl,{children:[(0,R.jsx)(Xl,{asChild:!0,children:(0,R.jsxs)(`div`,{className:x(`flex items-center space-x-3 p-3 hover:bg-muted/30 transition-colors cursor-default`,r&&`opacity-25`),children:[(0,R.jsx)(s_,{id:e.id,disabled:r,checked:t??!1,onCheckedChange:()=>O(e.id),className:`mt-0`}),(0,R.jsxs)(`div`,{className:`flex-1 flex items-center justify-between gap-3 leading-none`,children:[(0,R.jsxs)(`label`,{htmlFor:e.id,className:x(a.body,`peer-disabled:cursor-not-allowed peer-disabled:opacity-70 cursor-pointer truncate flex-1 w-0`),children:[A(e),i&&(0,R.jsx)(`span`,{className:`text-muted-foreground`,children:` (Recommended)`})]}),n&&(0,R.jsx)(`span`,{className:x(a.compact,`text-muted-foreground whitespace-nowrap flex-shrink-0`),children:(n.prompt??0)<=0&&(n.completion??0)<=0?`Free`:`${h(n.prompt??0)} in | ${h(n.completion??0)} out`})]})]})}),e.description&&(0,R.jsx)(Zl,{side:`top`,className:`max-w-xs`,children:(0,R.jsx)(`p`,{className:a.body,children:e.description})})]},e.id)})})})]}):null}var q_=t({OnboardingDialog:()=>Y_,default:()=>Y_}),J_=o(`app.onboarding-dialog.ui`);function Y_({open:e,onOpenChange:t,onComplete:n}){let[r,i]=(0,I.useState)(`git-check`),[o,s]=(0,I.useState)(null),[c,d]=(0,I.useState)(!1),[f,p]=(0,I.useState)([]),[m,h]=(0,I.useState)(null),[g,v]=(0,I.useState)(``),[y,S]=(0,I.useState)({}),[C,T]=(0,I.useState)(!1),[E,O]=(0,I.useState)(``),[k,A]=(0,I.useState)(new Set),[j,M]=(0,I.useState)(!1),[N,P]=(0,I.useState)(!1);(0,I.useEffect)(()=>{e&&r===`git-check`&&F()},[e,r]),(0,I.useEffect)(()=>{e&&r===`provider-selection`&&f.length===0&&ee()},[e,r,f.length]),(0,I.useEffect)(()=>{e&&r===`model-selection`&&m&&te()},[e,r,m]);let F=async()=>{d(!0);try{let e=await Wi();s(e.gitInstalled),e.gitInstalled&&i(`provider-selection`)}catch(e){J_.error(`Failed to check git installation:`,e),s(!1)}finally{d(!1)}},ee=async()=>{try{let e=await Yn();if(p(e),e.length>0&&!m){let t=Fg(e);t&&(h(t),v(t.apiKey??``),S(t.envValues??{}))}}catch(e){J_.error(`Failed to load providers:`,e)}},te=async()=>{if(m){M(!0);try{await si(m.name),A(new Set)}catch(e){J_.error(`Failed to load models:`,e)}finally{M(!1)}}},L=async()=>{if(!m||!g.trim()){O(`Please enter an API key`);return}let e=Ag(m),t=e.find(e=>!y[e]?.trim());if(t){O(`Please enter ${jg(t)}`);return}T(!0),O(``);try{e.length>0&&await er(Object.fromEntries(e.map(e=>[e,y[e].trim()]))),await $n(m.slug,g),i(`model-selection`)}catch(e){O(e instanceof Error?e.message:`Failed to validate API key`)}finally{T(!1)}},ne=async()=>{if(m){P(!0);try{for(let e of k)await li(m.slug,e);await Gi(),n?.(),t(!1)}catch(e){J_.error(`Failed to complete onboarding:`,e)}finally{P(!1)}}},re=async()=>{P(!0);try{await Gi(),n?.(),t(!1)}catch(e){J_.error(`Failed to skip onboarding:`,e)}finally{P(!1)}},ie=e=>{h(e),v(e.apiKey??``),S(e.envValues??{}),O(``)},ae=(e,t)=>{S(n=>({...n,[e]:t}))};return(0,R.jsx)(vm,{open:e,onOpenChange:t,children:(0,R.jsxs)(Sm,{className:`max-w-2xl h-[min(42rem,90dvh)] flex flex-col p-0 overflow-hidden`,children:[(0,R.jsxs)(`div`,{className:`px-6 pt-6 pb-2`,children:[(0,R.jsxs)(`div`,{className:`w-1/2 mx-auto flex items-center gap-2 mb-6`,children:[(0,R.jsx)(`div`,{className:x(`flex items-center justify-center h-8 w-8 rounded-full`,a.label,r===`git-check`?`bg-primary text-primary-foreground`:`bg-muted text-muted-foreground`),children:`1`}),(0,R.jsx)(`div`,{className:x(`h-0.5 flex-1`,r===`provider-selection`||r===`model-selection`?`bg-primary`:`bg-muted`)}),(0,R.jsx)(`div`,{className:x(`flex items-center justify-center h-8 w-8 rounded-full`,a.label,r===`provider-selection`?`bg-primary text-primary-foreground`:`bg-muted text-muted-foreground`),children:`2`}),(0,R.jsx)(`div`,{className:x(`h-0.5 flex-1`,r===`model-selection`?`bg-primary`:`bg-muted`)}),(0,R.jsx)(`div`,{className:x(`flex items-center justify-center h-8 w-8 rounded-full`,a.label,r===`model-selection`?`bg-primary text-primary-foreground`:`bg-muted text-muted-foreground`),children:`3`})]}),(0,R.jsxs)(Cm,{children:[r===`git-check`&&(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(Tm,{children:`Let's get started`}),(0,R.jsx)(Em,{children:`First, we need to check that Git is installed on your system.`})]}),r===`provider-selection`&&(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(Tm,{children:`Select an AI Provider`}),(0,R.jsx)(Em,{children:`Choose your preferred AI provider and enter your API key.`})]}),r===`model-selection`&&(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(Tm,{children:`Select Models`}),(0,R.jsx)(Em,{children:`Choose which models you want to use with this provider.`})]})]})]}),(0,R.jsx)(Wu,{className:`flex-1 min-h-0 overflow-hidden`,children:(0,R.jsxs)(`div`,{className:`px-6 py-4`,children:[r===`git-check`&&(0,R.jsx)(`div`,{className:`space-y-4`,children:c?(0,R.jsx)(`div`,{className:`flex items-center justify-center py-8`,children:(0,R.jsx)(w,{className:`h-5 w-5 animate-spin text-muted-foreground`})}):o?(0,R.jsxs)(nd,{variant:`success`,className:`mb-0 flex items-start gap-3`,children:[(0,R.jsx)(b,{className:`h-5 w-5 text-green-600 flex-shrink-0 mt-0.5`}),(0,R.jsxs)(`div`,{children:[(0,R.jsx)(`p`,{className:x(a.label,`text-green-900`),children:`Git is installed`}),(0,R.jsx)(`p`,{className:a.bodyMuted,children:`You're all set to use Git features in Tarsk.`})]})]}):(0,R.jsxs)(nd,{variant:`hint`,className:`mb-0 flex items-start gap-3`,children:[(0,R.jsx)(D,{className:`h-5 w-5 text-yellow-600 flex-shrink-0 mt-0.5`}),(0,R.jsxs)(`div`,{className:`flex-1`,children:[(0,R.jsx)(`p`,{className:a.label,children:`Git is not installed`}),(0,R.jsx)(`p`,{className:a.bodyMuted,children:`Git is required for some features in Tarsk. You can continue without it, but we recommend installing it.`}),(0,R.jsxs)(`a`,{href:`https://git-scm.com/downloads`,target:`_blank`,rel:`noreferrer`,className:x(a.caption,`text-brand hover:underline mt-2 inline-flex items-center gap-1`),children:[`Download Git `,(0,R.jsx)(l,{className:`h-3 w-3`})]})]})]})}),r===`provider-selection`&&(0,R.jsxs)(`div`,{className:`space-y-4`,children:[(0,R.jsx)(Ug,{selectedProvider:m,onProviderChange:ie,showApiKeyInput:!0,apiKey:g,onApiKeyChange:v,variant:`dropdown`,isLoading:C}),m&&Ag(m).map(e=>(0,R.jsx)(fd,{label:(0,R.jsx)(Vm,{htmlFor:e,children:jg(e)}),control:(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(`input`,{id:e,value:y[e]??``,onChange:t=>ae(e,t.target.value),className:`h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-base`,placeholder:_(m.slug)&&e===`LOCAL_API_URL`?m.api:e,spellCheck:!1,autoCorrect:`off`,autoCapitalize:`off`}),m.slug===`azure`&&e===Og(m)||_(m.slug)&&e===`LOCAL_API_URL`?(0,R.jsx)(`p`,{className:x(a.bodyMuted,`mt-2 break-all`),children:Mg(m,y)||m.api}):null]}),align:`start`},e)),E&&(0,R.jsx)(nd,{variant:`error`,className:`mb-0`,children:E})]}),r===`model-selection`&&m&&(0,R.jsx)(`div`,{className:`space-y-4`,children:(0,R.jsx)(K_,{provider:m.slug,isLoading:j,displayMode:`compact`,disabled:!1,autoSelectRecommended:!0,onModelsChange:A})})]})}),(0,R.jsx)(`div`,{className:`px-6 py-4 border-t border-border bg-muted/10`,children:(0,R.jsxs)(wm,{className:`flex items-center justify-between`,children:[(0,R.jsx)(`div`,{children:r===`provider-selection`&&(0,R.jsx)(_e,{variant:`ghost`,onClick:()=>re(),disabled:N,children:`Skip for now`})}),(0,R.jsxs)(`div`,{className:`flex gap-3`,children:[r!==`git-check`&&(0,R.jsx)(_e,{variant:`outline`,onClick:()=>{r===`provider-selection`?i(`git-check`):r===`model-selection`&&i(`provider-selection`)},disabled:N,children:`Back`}),r===`git-check`&&(0,R.jsxs)(_e,{onClick:()=>{i(`provider-selection`)},disabled:c,className:`gap-2`,children:[`Continue `,(0,R.jsx)(u,{className:`h-4 w-4`})]}),r===`provider-selection`&&(0,R.jsx)(_e,{onClick:L,disabled:C||!g.trim()||!m,className:`gap-2`,children:C?(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(w,{className:`h-4 w-4 animate-spin`}),`Validating...`]}):(0,R.jsxs)(R.Fragment,{children:[`Next `,(0,R.jsx)(u,{className:`h-4 w-4`})]})}),r===`model-selection`&&(0,R.jsx)(_e,{onClick:ne,disabled:N,className:`gap-2`,children:N?(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(w,{className:`h-4 w-4 animate-spin`}),`Finishing...`]}):(0,R.jsxs)(R.Fragment,{children:[`Finish `,(0,R.jsx)(b,{className:`h-4 w-4`})]})})]})]})})]})})}export{hd as $,xe as $a,dn as $i,ha as $n,ga as $r,ra as $t,Cm as A,ot as Aa,Mn as Ai,li as An,P as Ao,Si as Ar,Gc as At,am as B,Ne as Ba,Bn as Bi,rr as Bn,fr as Br,to as Bt,Om as C,kt as Ca,ti as Ci,Zi as Cn,ut as Co,or as Cr,Zl as Ct,Sm as D,Et as Da,Vi as Di,gi as Dn,se as Do,Oi as Dr,nl as Dt,bm as E,xt as Ea,ai as Ei,Fi as En,he as Eo,wa as Er,sl as Et,pm as F,Xe as Fa,Dn as Fi,aa as Fn,nr as Fr,Tc as Ft,Dp as G,Ve as Ga,Sn as Gi,Kr as Gn,ma as Gr,Ia as Gt,Op as H,nt as Ha,jn as Hi,mi as Hn,yr as Hr,Y as Ht,fm as I,ke as Ia,Rn as Ii,Wr as In,kr as Ir,ao as It,tf as J,ht as Ja,Tn as Ji,Jr as Jn,xa as Jr,Un as Jt,bp as K,Le as Ka,un as Ki,xr as Kn,pa as Kr,ja as Kt,um as L,je as La,kn as Li,zi as Ln,Ar as Lr,Z as Lt,_m as M,be as Ma,Pn as Mi,ci as Mn,Rr as Mr,Kc as Mt,mm as N,He as Na,In as Ni,pi as Nn,Bi as Nr,Wc as Nt,Em as O,Ot as Oa,Vr as Oi,ui as On,te as Oo,na as Or,Zc as Ot,gm as P,$e as Pa,Ln as Pi,si as Pn,Sr as Pr,Oc as Pt,_d as Q,vt as Qa,ln as Qi,sr as Qn,yi as Qr,ya as Qt,hm as R,pt as Ra,On as Ri,_i as Rn,ni as Rr,no as Rt,Fm as S,Tt as Sa,vr as Si,_r as Sn,ft as So,Yi as Sr,Yl as St,vm as T,bt as Ta,ii as Ti,ka as Tn,ge as To,Ta as Tr,Xl as Tt,kp as U,Qe as Ua,An as Ui,fi as Un,ar as Ur,Ba as Ut,Mp as V,et as Va,zn as Vi,cr as Vn,xi as Vr,X as Vt,Ep as W,z as Wa,Cn as Wi,br as Wn,wi as Wr,Na as Wt,Hd as X,ze as Xa,En as Xi,wr as Xn,Ai as Xr,Vn as Xt,ef as Y,Fe as Ya,bn as Yi,ea as Yn,Ur as Yr,da as Yt,Cd as Z,Ge as Za,xn as Zi,Tr as Zn,Ti as Zr,ia as Zt,vg as _,W as _a,la as _i,ir as _n,Ke as _o,Gn as _r,iu as _t,j_ as a,yn as aa,Gr as ai,hr as an,Me as ao,Cr as ar,ad as at,Vm as b,jt as ba,Ii as bi,Lr as bn,Ye as bo,lr as br,Ql as bt,Rg as c,an as ca,Li as ci,jr as cn,Pe as co,Nr as cr,fd as ct,Eg as d,G as da,ji as di,gr as dn,B as do,Pr as dr,Zu as dt,vn as ea,di as ei,Kn as en,Je as eo,ba as er,Qu as et,Tg as f,K as fa,dr as fi,Xi as fn,Re as fo,Er as fr,ed as ft,wg as g,Vt as ga,sa as gi,Pi as gn,Be as go,$i as gr,Ju as gt,Cg as h,Lt as ha,ca as hi,Da as hn,Ie as ho,Yn as hr,Wu as ht,U_ as i,fn as ia,Ea as ii,Dr as in,Ae as io,va as ir,td as it,Tm as j,ye as ja,Fn as ji,bi as jn,qn as jr,qc as jt,wm as k,st as ka,Ci as ki,hi as kn,L as ko,Ni as kr,Yc as kt,jg as l,sn as la,ei as li,Or as ln,tt as lo,ki as lr,pd as lt,xg as m,Pt as ma,ua as mi,Oa as mn,gt as mo,Xn as mr,od as mt,H_ as n,_n as na,er as ni,Qi as nn,dt as no,Ui as nr,nd as nt,M_ as o,mn as oa,Xr as oi,$r as on,mt as oo,Mr as or,ld as ot,gg as p,U as pa,oa as pi,zr as pn,we as po,Qn as pr,rd as pt,df as q,Ce as qa,hn as qi,ta as qn,Ki as qr,J as qt,L_ as r,pn as ra,$n as ri,ur as rn,lt as ro,Di as rr,$u as rt,s_ as s,wn as sa,mr as si,vi as sn,Ee as so,Sa as sr,cd as st,q_ as t,gn as ta,Fr as ti,Qr as tn,De as to,qr as tr,md as tt,Ag as u,q as ua,Ri as ui,Jn as un,rt as uo,Hi as ur,id as ut,_g as v,zt as va,fa as vi,Ei as vn,yt as vo,Yr as vr,ru as vt,Dm as w,Dt as wa,oi as wi,Br as wn,_e as wo,Mi as wr,Jl as wt,Im as x,At as xa,Ir as xi,Ca as xn,Oe as xo,Ji as xr,$l as xt,Hm as y,Bt as ya,Zr as yi,_a as yn,Se as yo,pr as yr,tu as yt,dm as z,Te as za,Nn as zi,Hr as zn,ri as zr,Ja as zt};
@@ -1 +1 @@
1
- import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{Ci as t,Fr as n,Ti as r,Xt as i,Zt as a,f as o,fr as s,i as c,mt as l,wi as u}from"./interactive-WtOIgeV4.js";import{Wt as d}from"./react-vendor-DgnPMVt4.js";import{cr as f,dt as p,mt as m,rt as h,st as g,ut as _,wo as v,x as y,xi as b}from"./onboarding-Dy7KG3M5.js";import{t as x}from"./use-toast-BFQ85Ly5.js";import{t as S}from"./use-settings-page-loading-BC_wP7pl.js";var C=u(),w=e(r(),1),T=t();function E(e){let t=(0,C.c)(20),{entry:n,index:r,loading:o,onValueChange:l}=e,u=s(n.name),[d,f]=(0,w.useState)(!1),p=n.value.length>0||n.hasExistingValue,m=n.hasExistingValue&&!n.value?`••••••••`:`value`;(0,w.useEffect)(()=>{u||f(!1)},[u]);let h=y,g=u&&!d?`password`:`text`,_=n.value,b;t[0]!==r||t[1]!==l?(b=e=>l(r,e.target.value),t[0]=r,t[1]=l,t[2]=b):b=t[2];let x=c(`font-mono`,u&&`pr-10`),S;t[3]!==h||t[4]!==n.value||t[5]!==o||t[6]!==m||t[7]!==g||t[8]!==b||t[9]!==x?(S=(0,T.jsx)(h,{type:g,placeholder:m,value:_,onChange:b,className:x,disabled:o}),t[3]=h,t[4]=n.value,t[5]=o,t[6]=m,t[7]=g,t[8]=b,t[9]=x,t[10]=S):S=t[10];let E;t[11]!==p||t[12]!==u||t[13]!==o||t[14]!==f||t[15]!==d?(E=u?(0,T.jsx)(v,{type:`button`,variant:`ghost`,size:`sm`,className:`absolute right-1 top-1/2 h-8 w-8 -translate-y-1/2 p-0`,onClick:()=>f(D),disabled:o||!p,children:d?(0,T.jsx)(a,{className:`h-4 w-4 text-muted-foreground`}):(0,T.jsx)(i,{className:`h-4 w-4 text-muted-foreground`})}):null,t[11]=p,t[12]=u,t[13]=o,t[14]=f,t[15]=d,t[16]=E):E=t[16];let O;return t[17]!==S||t[18]!==E?(O=(0,T.jsxs)(`div`,{className:`relative flex-1`,children:[S,E]}),t[17]=S,t[18]=E,t[19]=O):O=t[19],O}function D(e){return!e}function O({projectId:e}){let t=d(),[r,i]=(0,w.useState)([]),[a,s]=(0,w.useState)([]),[c,u]=(0,w.useState)(!0),[C,D]=(0,w.useState)(!1),O=(0,w.useCallback)(async()=>{if(!e){u(!1);return}u(!0);try{let t=(await f(e)).vars.map(e=>({name:e.name,value:e.value??``,hasExistingValue:e.hasValue&&e.value===void 0}));i(t),s(t)}catch(e){x({title:`Error`,description:e instanceof Error?e.message:`Failed to load environment variables`,variant:`destructive`})}finally{u(!1)}},[e]);(0,w.useLayoutEffect)(()=>{e&&u(!0)},[e]),(0,w.useEffect)(()=>{O()},[O]);let k=S(e,[c]);function A(){i(e=>[...e,{name:``,value:``,hasExistingValue:!1}])}function j(e,t){i(n=>n.map((n,r)=>r===e?{...n,name:t.toUpperCase()}:n))}function M(e,t){i(n=>n.map((n,r)=>r===e?{...n,value:t}:n))}function N(e){i(t=>t.filter((t,n)=>n!==e))}function P(){if(r.length!==a.length)return!0;for(let e=0;e<r.length;e+=1){let t=r[e],n=a[e];if(!n||t.name!==n.name||t.value!==n.value||t.hasExistingValue!==n.hasExistingValue)return!0}return!1}async function F(){if(!(!e||!P())){D(!0);try{let n=r.map(e=>({name:e.name.trim(),value:e.value,hasExistingValue:e.hasExistingValue})).filter(e=>e.name.length>0),i=n.find((e,t)=>n.findIndex(t=>t.name===e.name)!==t);if(i)throw Error(`Duplicate environment variable name: ${i.name}`);let a=n.find(e=>!e.hasExistingValue&&!e.value.trim());if(a)throw Error(`Value is required for environment variable: ${a.name}`);await b(e,n.map(e=>({name:e.name,value:e.value.trim()||void 0}))),s(r.map(e=>({...e,value:``}))),await O(),t(`/`)}catch(e){x({title:`Error`,description:e instanceof Error?e.message:`Failed to save environment variables`,variant:`destructive`})}finally{D(!1)}}}return e?(0,T.jsx)(g,{loading:k,children:(0,T.jsxs)(m,{className:`shrink-0`,children:[(0,T.jsx)(h,{title:`Environment Variables`,description:`Encrypted in Tarsk and injected for bash commands and MCP tools.`,action:(0,T.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,T.jsx)(v,{variant:`ghost`,size:`sm`,onClick:A,disabled:c,children:`Add variable`}),(0,T.jsx)(v,{onClick:()=>void F(),disabled:C||c,children:C?(0,T.jsxs)(T.Fragment,{children:[(0,T.jsx)(l,{className:`mr-2 h-4 w-4 animate-spin`}),`Saving...`]}):`Save`})]}),sticky:!1}),(0,T.jsx)(p,{className:`max-w-none pt-6`,children:r.length===0?(0,T.jsx)(`p`,{className:n.caption,children:`No environment variables configured`}):(0,T.jsx)(`div`,{className:`flex flex-col gap-2`,children:r.map((e,t)=>(0,T.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,T.jsx)(y,{placeholder:`API_KEY`,value:e.name,onChange:e=>j(t,e.target.value),className:`w-[35%] font-mono`,disabled:c}),(0,T.jsx)(E,{entry:e,index:t,loading:c,onValueChange:M}),(0,T.jsx)(v,{variant:`ghost`,size:`icon`,onClick:()=>N(t),className:`h-9 w-9 shrink-0`,disabled:c||C,children:(0,T.jsx)(o,{className:`h-3.5 w-3.5`})})]},t))})})]})}):(0,T.jsx)(_,{title:`No project selected`,children:`Please select a project from the sidebar to manage environment variables.`})}export{O as default};
1
+ import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{Ci as t,Fr as n,Ti as r,Xt as i,Zt as a,f as o,fr as s,i as c,mt as l,wi as u}from"./interactive-WtOIgeV4.js";import{Wt as d}from"./react-vendor-DM3Nejio.js";import{cr as f,dt as p,mt as m,rt as h,st as g,ut as _,wo as v,x as y,xi as b}from"./onboarding-_okRJRpU.js";import{t as x}from"./use-toast-BFQ85Ly5.js";import{t as S}from"./use-settings-page-loading-BC_wP7pl.js";var C=u(),w=e(r(),1),T=t();function E(e){let t=(0,C.c)(20),{entry:n,index:r,loading:o,onValueChange:l}=e,u=s(n.name),[d,f]=(0,w.useState)(!1),p=n.value.length>0||n.hasExistingValue,m=n.hasExistingValue&&!n.value?`••••••••`:`value`;(0,w.useEffect)(()=>{u||f(!1)},[u]);let h=y,g=u&&!d?`password`:`text`,_=n.value,b;t[0]!==r||t[1]!==l?(b=e=>l(r,e.target.value),t[0]=r,t[1]=l,t[2]=b):b=t[2];let x=c(`font-mono`,u&&`pr-10`),S;t[3]!==h||t[4]!==n.value||t[5]!==o||t[6]!==m||t[7]!==g||t[8]!==b||t[9]!==x?(S=(0,T.jsx)(h,{type:g,placeholder:m,value:_,onChange:b,className:x,disabled:o}),t[3]=h,t[4]=n.value,t[5]=o,t[6]=m,t[7]=g,t[8]=b,t[9]=x,t[10]=S):S=t[10];let E;t[11]!==p||t[12]!==u||t[13]!==o||t[14]!==f||t[15]!==d?(E=u?(0,T.jsx)(v,{type:`button`,variant:`ghost`,size:`sm`,className:`absolute right-1 top-1/2 h-8 w-8 -translate-y-1/2 p-0`,onClick:()=>f(D),disabled:o||!p,children:d?(0,T.jsx)(a,{className:`h-4 w-4 text-muted-foreground`}):(0,T.jsx)(i,{className:`h-4 w-4 text-muted-foreground`})}):null,t[11]=p,t[12]=u,t[13]=o,t[14]=f,t[15]=d,t[16]=E):E=t[16];let O;return t[17]!==S||t[18]!==E?(O=(0,T.jsxs)(`div`,{className:`relative flex-1`,children:[S,E]}),t[17]=S,t[18]=E,t[19]=O):O=t[19],O}function D(e){return!e}function O({projectId:e}){let t=d(),[r,i]=(0,w.useState)([]),[a,s]=(0,w.useState)([]),[c,u]=(0,w.useState)(!0),[C,D]=(0,w.useState)(!1),O=(0,w.useCallback)(async()=>{if(!e){u(!1);return}u(!0);try{let t=(await f(e)).vars.map(e=>({name:e.name,value:e.value??``,hasExistingValue:e.hasValue&&e.value===void 0}));i(t),s(t)}catch(e){x({title:`Error`,description:e instanceof Error?e.message:`Failed to load environment variables`,variant:`destructive`})}finally{u(!1)}},[e]);(0,w.useLayoutEffect)(()=>{e&&u(!0)},[e]),(0,w.useEffect)(()=>{O()},[O]);let k=S(e,[c]);function A(){i(e=>[...e,{name:``,value:``,hasExistingValue:!1}])}function j(e,t){i(n=>n.map((n,r)=>r===e?{...n,name:t.toUpperCase()}:n))}function M(e,t){i(n=>n.map((n,r)=>r===e?{...n,value:t}:n))}function N(e){i(t=>t.filter((t,n)=>n!==e))}function P(){if(r.length!==a.length)return!0;for(let e=0;e<r.length;e+=1){let t=r[e],n=a[e];if(!n||t.name!==n.name||t.value!==n.value||t.hasExistingValue!==n.hasExistingValue)return!0}return!1}async function F(){if(!(!e||!P())){D(!0);try{let n=r.map(e=>({name:e.name.trim(),value:e.value,hasExistingValue:e.hasExistingValue})).filter(e=>e.name.length>0),i=n.find((e,t)=>n.findIndex(t=>t.name===e.name)!==t);if(i)throw Error(`Duplicate environment variable name: ${i.name}`);let a=n.find(e=>!e.hasExistingValue&&!e.value.trim());if(a)throw Error(`Value is required for environment variable: ${a.name}`);await b(e,n.map(e=>({name:e.name,value:e.value.trim()||void 0}))),s(r.map(e=>({...e,value:``}))),await O(),t(`/`)}catch(e){x({title:`Error`,description:e instanceof Error?e.message:`Failed to save environment variables`,variant:`destructive`})}finally{D(!1)}}}return e?(0,T.jsx)(g,{loading:k,children:(0,T.jsxs)(m,{className:`shrink-0`,children:[(0,T.jsx)(h,{title:`Environment Variables`,description:`Encrypted in Tarsk and injected for bash commands and MCP tools.`,action:(0,T.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,T.jsx)(v,{variant:`ghost`,size:`sm`,onClick:A,disabled:c,children:`Add variable`}),(0,T.jsx)(v,{onClick:()=>void F(),disabled:C||c,children:C?(0,T.jsxs)(T.Fragment,{children:[(0,T.jsx)(l,{className:`mr-2 h-4 w-4 animate-spin`}),`Saving...`]}):`Save`})]}),sticky:!1}),(0,T.jsx)(p,{className:`max-w-none pt-6`,children:r.length===0?(0,T.jsx)(`p`,{className:n.caption,children:`No environment variables configured`}):(0,T.jsx)(`div`,{className:`flex flex-col gap-2`,children:r.map((e,t)=>(0,T.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,T.jsx)(y,{placeholder:`API_KEY`,value:e.name,onChange:e=>j(t,e.target.value),className:`w-[35%] font-mono`,disabled:c}),(0,T.jsx)(E,{entry:e,index:t,loading:c,onValueChange:M}),(0,T.jsx)(v,{variant:`ghost`,size:`icon`,onClick:()=>N(t),className:`h-9 w-9 shrink-0`,disabled:c||C,children:(0,T.jsx)(o,{className:`h-3.5 w-3.5`})})]},t))})})]})}):(0,T.jsx)(_,{title:`No project selected`,children:`Please select a project from the sidebar to manage environment variables.`})}export{O as default};
@@ -1 +1 @@
1
- import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{Ci as t,Fr as n,Ti as r,bi as i,di as a,fi as o,i as s,li as c,mt as l,pi as u,ui as d,wi as f,xi as p,yi as m}from"./interactive-WtOIgeV4.js";import{Wt as h}from"./react-vendor-DgnPMVt4.js";import{Ci as g,Un as _,_ as v,dt as y,g as b,h as x,lt as S,m as C,mt as w,or as T,p as E,rt as D,st as O,tt as k,ut as A,v as j,w as M,wo as N}from"./onboarding-Dy7KG3M5.js";import{t as P}from"./use-toast-BFQ85Ly5.js";import{t as F}from"./use-settings-page-loading-BC_wP7pl.js";var I=e(r(),1),L=f(),R=t(),z=`__unspecified__`,B=`__default__`;function V(e){let t=(0,L.c)(20),{value:n,onChange:r,enabledModels:s,disabled:l}=e,f=l===void 0?!1:l,m;if(t[0]!==s){m=new Map;for(let e of s){let t=e.provider??`other`,n=m.get(t);n?n.push(e):m.set(t,[e])}t[0]=s,t[1]=m}else m=t[1];let h=m,g;t[2]!==r||t[3]!==n?(g=function(e,t){let i={...n};if(t===z){delete i[e],r(i);return}let a=o(t);a&&(i[e]=a,r(i))},t[2]=r,t[3]=n,t[4]=g):g=t[4];let _=g,y;t[5]===s?y=t[6]:(y=function(e){if(!e)return;let t=e.provider.toLowerCase();return s.find(n=>n.id===e.model&&(n.provider??`other`).toLowerCase()===t)},t[5]=s,t[6]=y);let w=y,T;t[7]!==r||t[8]!==n?(T=function(e,t){let i=n[e];if(!i)return;let a={...i};if(t===B)delete a.reasoningEffort;else if(p(t))a.reasoningEffort=t;else return;r({...n,[e]:a})},t[7]=r,t[8]=n,t[9]=T):T=t[9];let D=T,O;t[10]!==f||t[11]!==s||t[12]!==w||t[13]!==_||t[14]!==D||t[15]!==h||t[16]!==n?(O=a.map(e=>{let t=n[e],r=t?u(t):z,a=w(t)?.supportedReasoningEfforts??[];return(0,R.jsx)(k,{title:d[e],description:c[e],children:(0,R.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,R.jsxs)(E,{value:r,onValueChange:t=>_(e,t),disabled:f,children:[(0,R.jsx)(v,{id:`model-alias-${e}`,className:`w-full min-w-0`,children:(0,R.jsx)(j,{placeholder:`Unspecified`})}),(0,R.jsxs)(C,{children:[(0,R.jsx)(x,{value:z,children:`Unspecified`}),s.length>0&&(0,R.jsx)(b,{}),[...h.entries()].map(U)]})]}),t&&a.length>0&&(0,R.jsxs)(E,{value:t.reasoningEffort??B,onValueChange:t=>D(e,t),disabled:f,children:[(0,R.jsx)(v,{id:`model-alias-${e}-reasoning`,className:`w-full min-w-0`,children:(0,R.jsx)(j,{placeholder:`Model default`})}),(0,R.jsxs)(C,{children:[(0,R.jsx)(x,{value:B,children:`Model default`}),(0,R.jsx)(x,{value:`off`,children:i(`off`)}),a.map(H)]})]})]})},e)}),t[10]=f,t[11]=s,t[12]=w,t[13]=_,t[14]=D,t[15]=h,t[16]=n,t[17]=O):O=t[17];let A;return t[18]===O?A=t[19]:(A=(0,R.jsx)(S,{id:`model-aliases`,children:O}),t[18]=O,t[19]=A),A}function H(e){return(0,R.jsx)(x,{value:e,children:i(e)},e)}function U(e){let[t,r]=e;return(0,R.jsxs)(`div`,{children:[(0,R.jsx)(`div`,{className:s(n.dropdownGroupHeading,`px-2 py-1.5 uppercase`),children:t}),r.map(e=>{let n=u({provider:e.provider??t,model:e.id});return(0,R.jsx)(x,{value:n,children:M(e.id)},n)})]},t)}function W(e){return[...e].sort((e,t)=>{let n=(e.provider??``).localeCompare(t.provider??``);return n===0?M(e.id).localeCompare(M(t.id)):n})}function G({projectId:e,onProjectUpdated:t}){let n=h(),[r,i]=(0,I.useState)({}),[a,o]=(0,I.useState)({}),[s,c]=(0,I.useState)([]),[u,d]=(0,I.useState)(!0),[f,p]=(0,I.useState)(!1),v=(0,I.useCallback)(async()=>{if(!e){d(!1);return}d(!0);try{let[t,n]=await Promise.all([T(e),_().catch(()=>({}))]),r=t.modelAliases??{};c(W(Object.values(n).flat())),i(r),o(r)}catch(e){P({title:`Error`,description:e instanceof Error?e.message:`Failed to load model aliases`,variant:`destructive`})}finally{d(!1)}},[e]);(0,I.useLayoutEffect)(()=>{e&&d(!0)},[e]),(0,I.useEffect)(()=>{v()},[v]);let b=F(e,[u]);function x(){return JSON.stringify(r)!==JSON.stringify(a)}async function S(){if(!(!e||!x())){p(!0);try{let i=Object.keys(r).length>0?r:void 0;if(i){let e=await _();m(i,Object.fromEntries(Object.entries(e).map(([e,t])=>[e,t.map(e=>e.id)])))}await g(e,{modelAliases:i??null}),o(r),t&&await t(),await v(),n(`/`)}catch(e){P({title:`Error`,description:e instanceof Error?e.message:`Failed to save model aliases`,variant:`destructive`})}finally{p(!1)}}}return e?(0,R.jsx)(O,{loading:b,children:(0,R.jsxs)(w,{className:`shrink-0`,children:[(0,R.jsx)(D,{title:`Model Aliases`,description:`Map short names (fast, local, cheap, smart) to enabled models. Subagents can reference these aliases in AGENT.md. Set Cheap to enable Orchestrate mode.`,action:(0,R.jsx)(N,{onClick:()=>void S(),disabled:f||u,children:f?(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(l,{className:`mr-2 h-4 w-4 animate-spin`}),`Saving...`]}):`Save`}),sticky:!1}),(0,R.jsx)(y,{className:`max-w-none pt-6`,children:(0,R.jsx)(V,{value:r,onChange:i,enabledModels:s,disabled:u||f})})]})}):(0,R.jsx)(A,{title:`No project selected`,children:`Please select a project from the sidebar to configure model aliases.`})}export{G as default};
1
+ import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{Ci as t,Fr as n,Ti as r,bi as i,di as a,fi as o,i as s,li as c,mt as l,pi as u,ui as d,wi as f,xi as p,yi as m}from"./interactive-WtOIgeV4.js";import{Wt as h}from"./react-vendor-DM3Nejio.js";import{Ci as g,Un as _,_ as v,dt as y,g as b,h as x,lt as S,m as C,mt as w,or as T,p as E,rt as D,st as O,tt as k,ut as A,v as j,w as M,wo as N}from"./onboarding-_okRJRpU.js";import{t as P}from"./use-toast-BFQ85Ly5.js";import{t as F}from"./use-settings-page-loading-BC_wP7pl.js";var I=e(r(),1),L=f(),R=t(),z=`__unspecified__`,B=`__default__`;function V(e){let t=(0,L.c)(20),{value:n,onChange:r,enabledModels:s,disabled:l}=e,f=l===void 0?!1:l,m;if(t[0]!==s){m=new Map;for(let e of s){let t=e.provider??`other`,n=m.get(t);n?n.push(e):m.set(t,[e])}t[0]=s,t[1]=m}else m=t[1];let h=m,g;t[2]!==r||t[3]!==n?(g=function(e,t){let i={...n};if(t===z){delete i[e],r(i);return}let a=o(t);a&&(i[e]=a,r(i))},t[2]=r,t[3]=n,t[4]=g):g=t[4];let _=g,y;t[5]===s?y=t[6]:(y=function(e){if(!e)return;let t=e.provider.toLowerCase();return s.find(n=>n.id===e.model&&(n.provider??`other`).toLowerCase()===t)},t[5]=s,t[6]=y);let w=y,T;t[7]!==r||t[8]!==n?(T=function(e,t){let i=n[e];if(!i)return;let a={...i};if(t===B)delete a.reasoningEffort;else if(p(t))a.reasoningEffort=t;else return;r({...n,[e]:a})},t[7]=r,t[8]=n,t[9]=T):T=t[9];let D=T,O;t[10]!==f||t[11]!==s||t[12]!==w||t[13]!==_||t[14]!==D||t[15]!==h||t[16]!==n?(O=a.map(e=>{let t=n[e],r=t?u(t):z,a=w(t)?.supportedReasoningEfforts??[];return(0,R.jsx)(k,{title:d[e],description:c[e],children:(0,R.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,R.jsxs)(E,{value:r,onValueChange:t=>_(e,t),disabled:f,children:[(0,R.jsx)(v,{id:`model-alias-${e}`,className:`w-full min-w-0`,children:(0,R.jsx)(j,{placeholder:`Unspecified`})}),(0,R.jsxs)(C,{children:[(0,R.jsx)(x,{value:z,children:`Unspecified`}),s.length>0&&(0,R.jsx)(b,{}),[...h.entries()].map(U)]})]}),t&&a.length>0&&(0,R.jsxs)(E,{value:t.reasoningEffort??B,onValueChange:t=>D(e,t),disabled:f,children:[(0,R.jsx)(v,{id:`model-alias-${e}-reasoning`,className:`w-full min-w-0`,children:(0,R.jsx)(j,{placeholder:`Model default`})}),(0,R.jsxs)(C,{children:[(0,R.jsx)(x,{value:B,children:`Model default`}),(0,R.jsx)(x,{value:`off`,children:i(`off`)}),a.map(H)]})]})]})},e)}),t[10]=f,t[11]=s,t[12]=w,t[13]=_,t[14]=D,t[15]=h,t[16]=n,t[17]=O):O=t[17];let A;return t[18]===O?A=t[19]:(A=(0,R.jsx)(S,{id:`model-aliases`,children:O}),t[18]=O,t[19]=A),A}function H(e){return(0,R.jsx)(x,{value:e,children:i(e)},e)}function U(e){let[t,r]=e;return(0,R.jsxs)(`div`,{children:[(0,R.jsx)(`div`,{className:s(n.dropdownGroupHeading,`px-2 py-1.5 uppercase`),children:t}),r.map(e=>{let n=u({provider:e.provider??t,model:e.id});return(0,R.jsx)(x,{value:n,children:M(e.id)},n)})]},t)}function W(e){return[...e].sort((e,t)=>{let n=(e.provider??``).localeCompare(t.provider??``);return n===0?M(e.id).localeCompare(M(t.id)):n})}function G({projectId:e,onProjectUpdated:t}){let n=h(),[r,i]=(0,I.useState)({}),[a,o]=(0,I.useState)({}),[s,c]=(0,I.useState)([]),[u,d]=(0,I.useState)(!0),[f,p]=(0,I.useState)(!1),v=(0,I.useCallback)(async()=>{if(!e){d(!1);return}d(!0);try{let[t,n]=await Promise.all([T(e),_().catch(()=>({}))]),r=t.modelAliases??{};c(W(Object.values(n).flat())),i(r),o(r)}catch(e){P({title:`Error`,description:e instanceof Error?e.message:`Failed to load model aliases`,variant:`destructive`})}finally{d(!1)}},[e]);(0,I.useLayoutEffect)(()=>{e&&d(!0)},[e]),(0,I.useEffect)(()=>{v()},[v]);let b=F(e,[u]);function x(){return JSON.stringify(r)!==JSON.stringify(a)}async function S(){if(!(!e||!x())){p(!0);try{let i=Object.keys(r).length>0?r:void 0;if(i){let e=await _();m(i,Object.fromEntries(Object.entries(e).map(([e,t])=>[e,t.map(e=>e.id)])))}await g(e,{modelAliases:i??null}),o(r),t&&await t(),await v(),n(`/`)}catch(e){P({title:`Error`,description:e instanceof Error?e.message:`Failed to save model aliases`,variant:`destructive`})}finally{p(!1)}}}return e?(0,R.jsx)(O,{loading:b,children:(0,R.jsxs)(w,{className:`shrink-0`,children:[(0,R.jsx)(D,{title:`Model Aliases`,description:`Map short names (fast, local, cheap, smart) to enabled models. Subagents can reference these aliases in AGENT.md. Set Cheap to enable Orchestrate mode.`,action:(0,R.jsx)(N,{onClick:()=>void S(),disabled:f||u,children:f?(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(l,{className:`mr-2 h-4 w-4 animate-spin`}),`Saving...`]}):`Save`}),sticky:!1}),(0,R.jsx)(y,{className:`max-w-none pt-6`,children:(0,R.jsx)(V,{value:r,onChange:i,enabledModels:s,disabled:u||f})})]})}):(0,R.jsx)(A,{title:`No project selected`,children:`Please select a project from the sidebar to configure model aliases.`})}export{G as default};