@kaitranntt/ccs 7.6.0 → 7.7.0-dev.2

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 (126) hide show
  1. package/README.md +3 -0
  2. package/dist/api/services/profile-writer.d.ts.map +1 -1
  3. package/dist/api/services/profile-writer.js +4 -2
  4. package/dist/api/services/profile-writer.js.map +1 -1
  5. package/dist/api/services/provider-presets.d.ts.map +1 -1
  6. package/dist/api/services/provider-presets.js +33 -0
  7. package/dist/api/services/provider-presets.js.map +1 -1
  8. package/dist/auth/profile-detector.d.ts +9 -0
  9. package/dist/auth/profile-detector.d.ts.map +1 -1
  10. package/dist/auth/profile-detector.js +5 -3
  11. package/dist/auth/profile-detector.js.map +1 -1
  12. package/dist/ccs.js +27 -0
  13. package/dist/ccs.js.map +1 -1
  14. package/dist/cliproxy/auth/auth-types.d.ts +2 -0
  15. package/dist/cliproxy/auth/auth-types.d.ts.map +1 -1
  16. package/dist/cliproxy/auth/oauth-handler.d.ts.map +1 -1
  17. package/dist/cliproxy/auth/oauth-handler.js +14 -2
  18. package/dist/cliproxy/auth/oauth-handler.js.map +1 -1
  19. package/dist/cliproxy/auth/oauth-process.d.ts.map +1 -1
  20. package/dist/cliproxy/auth/oauth-process.js +33 -7
  21. package/dist/cliproxy/auth/oauth-process.js.map +1 -1
  22. package/dist/cliproxy/cliproxy-executor.d.ts.map +1 -1
  23. package/dist/cliproxy/cliproxy-executor.js +17 -3
  24. package/dist/cliproxy/cliproxy-executor.js.map +1 -1
  25. package/dist/cliproxy/config-generator.d.ts +25 -6
  26. package/dist/cliproxy/config-generator.d.ts.map +1 -1
  27. package/dist/cliproxy/config-generator.js +96 -22
  28. package/dist/cliproxy/config-generator.js.map +1 -1
  29. package/dist/cliproxy/index.d.ts +1 -1
  30. package/dist/cliproxy/index.d.ts.map +1 -1
  31. package/dist/cliproxy/index.js +3 -2
  32. package/dist/cliproxy/index.js.map +1 -1
  33. package/dist/cliproxy/services/variant-config-adapter.d.ts +12 -2
  34. package/dist/cliproxy/services/variant-config-adapter.d.ts.map +1 -1
  35. package/dist/cliproxy/services/variant-config-adapter.js +49 -6
  36. package/dist/cliproxy/services/variant-config-adapter.js.map +1 -1
  37. package/dist/cliproxy/services/variant-service.d.ts +10 -0
  38. package/dist/cliproxy/services/variant-service.d.ts.map +1 -1
  39. package/dist/cliproxy/services/variant-service.js +62 -6
  40. package/dist/cliproxy/services/variant-service.js.map +1 -1
  41. package/dist/cliproxy/services/variant-settings.d.ts +8 -3
  42. package/dist/cliproxy/services/variant-settings.d.ts.map +1 -1
  43. package/dist/cliproxy/services/variant-settings.js +40 -10
  44. package/dist/cliproxy/services/variant-settings.js.map +1 -1
  45. package/dist/cliproxy/session-tracker.d.ts +17 -7
  46. package/dist/cliproxy/session-tracker.d.ts.map +1 -1
  47. package/dist/cliproxy/session-tracker.js +86 -40
  48. package/dist/cliproxy/session-tracker.js.map +1 -1
  49. package/dist/commands/api-command.d.ts.map +1 -1
  50. package/dist/commands/api-command.js +4 -1
  51. package/dist/commands/api-command.js.map +1 -1
  52. package/dist/commands/cliproxy-command.d.ts.map +1 -1
  53. package/dist/commands/cliproxy-command.js +8 -3
  54. package/dist/commands/cliproxy-command.js.map +1 -1
  55. package/dist/commands/help-command.d.ts.map +1 -1
  56. package/dist/commands/help-command.js +1 -0
  57. package/dist/commands/help-command.js.map +1 -1
  58. package/dist/commands/setup-command.d.ts +4 -0
  59. package/dist/commands/setup-command.d.ts.map +1 -1
  60. package/dist/commands/setup-command.js +59 -22
  61. package/dist/commands/setup-command.js.map +1 -1
  62. package/dist/config/migration-manager.d.ts +29 -0
  63. package/dist/config/migration-manager.d.ts.map +1 -1
  64. package/dist/config/migration-manager.js +148 -34
  65. package/dist/config/migration-manager.js.map +1 -1
  66. package/dist/config/unified-config-types.d.ts +4 -0
  67. package/dist/config/unified-config-types.d.ts.map +1 -1
  68. package/dist/config/unified-config-types.js.map +1 -1
  69. package/dist/glmt/glmt-proxy.d.ts.map +1 -1
  70. package/dist/glmt/glmt-proxy.js +8 -1
  71. package/dist/glmt/glmt-proxy.js.map +1 -1
  72. package/dist/types/config.d.ts +2 -0
  73. package/dist/types/config.d.ts.map +1 -1
  74. package/dist/types/config.js.map +1 -1
  75. package/dist/types/index.d.ts +2 -2
  76. package/dist/types/index.d.ts.map +1 -1
  77. package/dist/types/index.js.map +1 -1
  78. package/dist/types/utils.d.ts +2 -1
  79. package/dist/types/utils.d.ts.map +1 -1
  80. package/dist/types/utils.js.map +1 -1
  81. package/dist/ui/assets/{accounts-aD3ar9cM.js → accounts-DJpEoAmS.js} +1 -1
  82. package/dist/ui/assets/{api-Dc9JX5dn.js → api-BqefDRBx.js} +1 -1
  83. package/dist/ui/assets/{card-CfbpiPgZ.js → card-B4h-z7Tz.js} +1 -1
  84. package/dist/ui/assets/cliproxy-ISc4EAN-.js +3 -0
  85. package/dist/ui/assets/{cliproxy-control-panel-DqwBL_cO.js → cliproxy-control-panel-C5pNVc75.js} +1 -1
  86. package/dist/ui/assets/{confirm-dialog-CbU1b1dF.js → confirm-dialog-YI-EkDVf.js} +1 -1
  87. package/dist/ui/assets/{copilot-CV5W8I2b.js → copilot-ChVxPe4-.js} +2 -2
  88. package/dist/ui/assets/{globalenv-section-BD-Z41zV.js → globalenv-section-BlCex11D.js} +1 -1
  89. package/dist/ui/assets/{health-DLMVq9vP.js → health-9gTuEqu9.js} +1 -1
  90. package/dist/ui/assets/icons-CSHuYZO5.js +1 -0
  91. package/dist/ui/assets/{index-BYJzZId9.js → index-BAw2xL0I.js} +1 -1
  92. package/dist/ui/assets/{index-CRwxNrlp.js → index-CE4n4Tvo.js} +1 -1
  93. package/dist/ui/assets/index-CK2sRZzn.css +1 -0
  94. package/dist/ui/assets/{index-DTR-v1v5.js → index-DyX8Owpp.js} +1 -1
  95. package/dist/ui/assets/index-g4X9FYWw.js +47 -0
  96. package/dist/ui/assets/{radix-ui-CrW4rUOS.js → radix-ui-uXQB-q0u.js} +1 -1
  97. package/dist/ui/assets/{shared-BSfovmYC.js → shared-BikmFWxY.js} +1 -1
  98. package/dist/ui/assets/{switch-I-rTblpG.js → switch-C1g2Xm3F.js} +1 -1
  99. package/dist/ui/assets/{tanstack-Dbfprw6o.js → tanstack-Coed0rqz.js} +1 -1
  100. package/dist/ui/index.html +5 -5
  101. package/dist/utils/api-key-validator.d.ts +20 -0
  102. package/dist/utils/api-key-validator.d.ts.map +1 -0
  103. package/dist/utils/api-key-validator.js +134 -0
  104. package/dist/utils/api-key-validator.js.map +1 -0
  105. package/dist/utils/helpers.d.ts.map +1 -1
  106. package/dist/utils/helpers.js +6 -1
  107. package/dist/utils/helpers.js.map +1 -1
  108. package/dist/web-server/routes/cliproxy-auth-routes.d.ts.map +1 -1
  109. package/dist/web-server/routes/cliproxy-auth-routes.js +10 -1
  110. package/dist/web-server/routes/cliproxy-auth-routes.js.map +1 -1
  111. package/dist/web-server/routes/route-helpers.d.ts +0 -6
  112. package/dist/web-server/routes/route-helpers.d.ts.map +1 -1
  113. package/dist/web-server/routes/route-helpers.js +1 -24
  114. package/dist/web-server/routes/route-helpers.js.map +1 -1
  115. package/dist/web-server/routes/settings-routes.d.ts.map +1 -1
  116. package/dist/web-server/routes/settings-routes.js +24 -11
  117. package/dist/web-server/routes/settings-routes.js.map +1 -1
  118. package/dist/web-server/routes/variant-routes.d.ts +2 -0
  119. package/dist/web-server/routes/variant-routes.d.ts.map +1 -1
  120. package/dist/web-server/routes/variant-routes.js +44 -98
  121. package/dist/web-server/routes/variant-routes.js.map +1 -1
  122. package/package.json +1 -1
  123. package/dist/ui/assets/cliproxy-j1dekKPD.js +0 -3
  124. package/dist/ui/assets/icons-B9mnOvwW.js +0 -1
  125. package/dist/ui/assets/index-CMv3XJ3a.css +0 -1
  126. package/dist/ui/assets/index-PsnnKb2L.js +0 -47
@@ -48,4 +48,4 @@ You can add a description to the \`${Ke}\` by passing a \`${Os}\` component as a
48
48
 
49
49
  Alternatively, you can use your own component as a description by assigning it an \`id\` and passing the same value to the \`aria-describedby\` prop in \`${Ke}\`. If the description is confusing or duplicative for sighted users, you can use the \`@radix-ui/react-visually-hidden\` primitive as a wrapper around your description component.
50
50
 
51
- For more information, see https://radix-ui.com/primitives/docs/components/alert-dialog`;return i.useEffect(()=>{document.getElementById(e.current?.getAttribute("aria-describedby"))||console.warn(t)},[t,e]),null},_h=Rs,Ih=Ps,Oh=As,Mh=Ts,Dh=Ds,Nh=Ls,Lh=Is,jh=Ms;function qo(e){const t=kd(e),n=i.forwardRef((o,r)=>{const{children:s,...a}=o,c=i.Children.toArray(s),l=c.find(Fd);if(l){const u=l.props.children,d=c.map(f=>f===l?i.Children.count(u)>1?i.Children.only(null):i.isValidElement(u)?u.props.children:null:f);return p.jsx(t,{...a,ref:r,children:i.isValidElement(u)?i.cloneElement(u,void 0,d):null})}return p.jsx(t,{...a,ref:r,children:s})});return n.displayName=`${e}.Slot`,n}function kd(e){const t=i.forwardRef((n,o)=>{const{children:r,...s}=n;if(i.isValidElement(r)){const a=Bd(r),c=Wd(s,r.props);return r.type!==i.Fragment&&(c.ref=o?we(o,a):a),i.cloneElement(r,c)}return i.Children.count(r)>1?i.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var $d=Symbol("radix.slottable");function Fd(e){return i.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===$d}function Wd(e,t){const n={...t};for(const o in t){const r=e[o],s=t[o];/^on[A-Z]/.test(o)?r&&s?n[o]=(...c)=>{const l=s(...c);return r(...c),l}:r&&(n[o]=r):o==="style"?n[o]={...r,...s}:o==="className"&&(n[o]=[r,s].filter(Boolean).join(" "))}return{...e,...n}}function Bd(e){let t=Object.getOwnPropertyDescriptor(e.props,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}function uo(e){const t=e+"CollectionProvider",[n,o]=Q(t),[r,s]=n(t,{collectionRef:{current:null},itemMap:new Map}),a=v=>{const{scope:g,children:y}=v,x=Ne.useRef(null),b=Ne.useRef(new Map).current;return p.jsx(r,{scope:g,itemMap:b,collectionRef:x,children:y})};a.displayName=t;const c=e+"CollectionSlot",l=qo(c),u=Ne.forwardRef((v,g)=>{const{scope:y,children:x}=v,b=s(c,y),C=j(g,b.collectionRef);return p.jsx(l,{ref:C,children:x})});u.displayName=c;const d=e+"CollectionItemSlot",f="data-radix-collection-item",h=qo(d),m=Ne.forwardRef((v,g)=>{const{scope:y,children:x,...b}=v,C=Ne.useRef(null),S=j(g,C),A=s(d,y);return Ne.useEffect(()=>(A.itemMap.set(C,{ref:C,...b}),()=>void A.itemMap.delete(C))),p.jsx(h,{[f]:"",ref:S,children:x})});m.displayName=d;function w(v){const g=s(e+"CollectionConsumer",v);return Ne.useCallback(()=>{const x=g.collectionRef.current;if(!x)return[];const b=Array.from(x.querySelectorAll(`[${f}]`));return Array.from(g.itemMap.values()).sort((A,E)=>b.indexOf(A.ref.current)-b.indexOf(E.ref.current))},[g.collectionRef,g.itemMap])}return[{Provider:a,Slot:u,ItemSlot:m},w,o]}var An="rovingFocusGroup.onEntryFocus",Vd={bubbles:!1,cancelable:!0},mt="RovingFocusGroup",[jn,js,Hd]=uo(mt),[Ud,on]=Q(mt,[Hd]),[Gd,Kd]=Ud(mt),ks=i.forwardRef((e,t)=>p.jsx(jn.Provider,{scope:e.__scopeRovingFocusGroup,children:p.jsx(jn.Slot,{scope:e.__scopeRovingFocusGroup,children:p.jsx(zd,{...e,ref:t})})}));ks.displayName=mt;var zd=i.forwardRef((e,t)=>{const{__scopeRovingFocusGroup:n,orientation:o,loop:r=!1,dir:s,currentTabStopId:a,defaultCurrentTabStopId:c,onCurrentTabStopIdChange:l,onEntryFocus:u,preventScrollOnEntryFocus:d=!1,...f}=e,h=i.useRef(null),m=j(t,h),w=vt(s),[v,g]=me({prop:a,defaultProp:c??null,onChange:l,caller:mt}),[y,x]=i.useState(!1),b=X(u),C=js(n),S=i.useRef(!1),[A,E]=i.useState(0);return i.useEffect(()=>{const _=h.current;if(_)return _.addEventListener(An,b),()=>_.removeEventListener(An,b)},[b]),p.jsx(Gd,{scope:n,orientation:o,dir:w,loop:r,currentTabStopId:v,onItemFocus:i.useCallback(_=>g(_),[g]),onItemShiftTab:i.useCallback(()=>x(!0),[]),onFocusableItemAdd:i.useCallback(()=>E(_=>_+1),[]),onFocusableItemRemove:i.useCallback(()=>E(_=>_-1),[]),children:p.jsx(D.div,{tabIndex:y||A===0?-1:0,"data-orientation":o,...f,ref:m,style:{outline:"none",...e.style},onMouseDown:R(e.onMouseDown,()=>{S.current=!0}),onFocus:R(e.onFocus,_=>{const I=!S.current;if(_.target===_.currentTarget&&I&&!y){const O=new CustomEvent(An,Vd);if(_.currentTarget.dispatchEvent(O),!O.defaultPrevented){const L=C().filter(N=>N.focusable),$=L.find(N=>N.active),F=L.find(N=>N.id===v),B=[$,F,...L].filter(Boolean).map(N=>N.ref.current);Ws(B,d)}}S.current=!1}),onBlur:R(e.onBlur,()=>x(!1))})})}),$s="RovingFocusGroupItem",Fs=i.forwardRef((e,t)=>{const{__scopeRovingFocusGroup:n,focusable:o=!0,active:r=!1,tabStopId:s,children:a,...c}=e,l=ne(),u=s||l,d=Kd($s,n),f=d.currentTabStopId===u,h=js(n),{onFocusableItemAdd:m,onFocusableItemRemove:w,currentTabStopId:v}=d;return i.useEffect(()=>{if(o)return m(),()=>w()},[o,m,w]),p.jsx(jn.ItemSlot,{scope:n,id:u,focusable:o,active:r,children:p.jsx(D.span,{tabIndex:f?0:-1,"data-orientation":d.orientation,...c,ref:t,onMouseDown:R(e.onMouseDown,g=>{o?d.onItemFocus(u):g.preventDefault()}),onFocus:R(e.onFocus,()=>d.onItemFocus(u)),onKeyDown:R(e.onKeyDown,g=>{if(g.key==="Tab"&&g.shiftKey){d.onItemShiftTab();return}if(g.target!==g.currentTarget)return;const y=qd(g,d.orientation,d.dir);if(y!==void 0){if(g.metaKey||g.ctrlKey||g.altKey||g.shiftKey)return;g.preventDefault();let b=h().filter(C=>C.focusable).map(C=>C.ref.current);if(y==="last")b.reverse();else if(y==="prev"||y==="next"){y==="prev"&&b.reverse();const C=b.indexOf(g.currentTarget);b=d.loop?Zd(b,C+1):b.slice(C+1)}setTimeout(()=>Ws(b))}}),children:typeof a=="function"?a({isCurrentTabStop:f,hasTabStop:v!=null}):a})})});Fs.displayName=$s;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:e==="ArrowLeft"?"ArrowRight":e==="ArrowRight"?"ArrowLeft":e}function qd(e,t,n){const o=Xd(e.key,n);if(!(t==="vertical"&&["ArrowLeft","ArrowRight"].includes(o))&&!(t==="horizontal"&&["ArrowUp","ArrowDown"].includes(o)))return Yd[o]}function Ws(e,t=!1){const n=document.activeElement;for(const o of e)if(o===n||(o.focus({preventScroll:t}),document.activeElement!==n))return}function Zd(e,t){return e.map((n,o)=>e[(t+o)%e.length])}var Bs=ks,Vs=Fs,rn="Tabs",[Jd]=Q(rn,[on]),Hs=on(),[Qd,fo]=Jd(rn),Us=i.forwardRef((e,t)=>{const{__scopeTabs:n,value:o,onValueChange:r,defaultValue:s,orientation:a="horizontal",dir:c,activationMode:l="automatic",...u}=e,d=vt(c),[f,h]=me({prop:o,onChange:r,defaultProp:s??"",caller:rn});return p.jsx(Qd,{scope:n,baseId:ne(),value:f,onValueChange:h,orientation:a,dir:d,activationMode:l,children:p.jsx(D.div,{dir:d,"data-orientation":a,...u,ref:t})})});Us.displayName=rn;var Gs="TabsList",Ks=i.forwardRef((e,t)=>{const{__scopeTabs:n,loop:o=!0,...r}=e,s=fo(Gs,n),a=Hs(n);return p.jsx(Bs,{asChild:!0,...a,orientation:s.orientation,dir:s.dir,loop:o,children:p.jsx(D.div,{role:"tablist","aria-orientation":s.orientation,...r,ref:t})})});Ks.displayName=Gs;var zs="TabsTrigger",Ys=i.forwardRef((e,t)=>{const{__scopeTabs:n,value:o,disabled:r=!1,...s}=e,a=fo(zs,n),c=Hs(n),l=Zs(a.baseId,o),u=Js(a.baseId,o),d=o===a.value;return p.jsx(Vs,{asChild:!0,...c,focusable:!r,active:d,children:p.jsx(D.button,{type:"button",role:"tab","aria-selected":d,"aria-controls":u,"data-state":d?"active":"inactive","data-disabled":r?"":void 0,disabled:r,id:l,...s,ref:t,onMouseDown:R(e.onMouseDown,f=>{!r&&f.button===0&&f.ctrlKey===!1?a.onValueChange(o):f.preventDefault()}),onKeyDown:R(e.onKeyDown,f=>{[" ","Enter"].includes(f.key)&&a.onValueChange(o)}),onFocus:R(e.onFocus,()=>{const f=a.activationMode!=="manual";!d&&!r&&f&&a.onValueChange(o)})})})});Ys.displayName=zs;var Xs="TabsContent",qs=i.forwardRef((e,t)=>{const{__scopeTabs:n,value:o,forceMount:r,children:s,...a}=e,c=fo(Xs,n),l=Zs(c.baseId,o),u=Js(c.baseId,o),d=o===c.value,f=i.useRef(d);return i.useEffect(()=>{const h=requestAnimationFrame(()=>f.current=!1);return()=>cancelAnimationFrame(h)},[]),p.jsx(Y,{present:r||d,children:({present:h})=>p.jsx(D.div,{"data-state":d?"active":"inactive","data-orientation":c.orientation,role:"tabpanel","aria-labelledby":l,hidden:!h,id:u,tabIndex:0,...a,ref:t,style:{...e.style,animationDuration:f.current?"0s":void 0},children:h&&s})})});qs.displayName=Xs;function Zs(e,t){return`${e}-trigger-${t}`}function Js(e,t){return`${e}-content-${t}`}var kh=Us,$h=Ks,Fh=Ys,Wh=qs,ef=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],tf=ef.reduce((e,t)=>{const n=Un(`Primitive.${t}`),o=i.forwardRef((r,s)=>{const{asChild:a,...c}=r,l=a?n:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),p.jsx(l,{...c,ref:s})});return o.displayName=`Primitive.${t}`,{...e,[t]:o}},{}),nf="Label",Qs=i.forwardRef((e,t)=>p.jsx(tf.label,{...e,ref:t,onMouseDown:n=>{n.target.closest("button, input, select, textarea")||(e.onMouseDown?.(n),!n.defaultPrevented&&n.detail>1&&n.preventDefault())}}));Qs.displayName=nf;var Bh=Qs;function of(e){const t=rf(e),n=i.forwardRef((o,r)=>{const{children:s,...a}=o,c=i.Children.toArray(s),l=c.find(af);if(l){const u=l.props.children,d=c.map(f=>f===l?i.Children.count(u)>1?i.Children.only(null):i.isValidElement(u)?u.props.children:null:f);return p.jsx(t,{...a,ref:r,children:i.isValidElement(u)?i.cloneElement(u,void 0,d):null})}return p.jsx(t,{...a,ref:r,children:s})});return n.displayName=`${e}.Slot`,n}function rf(e){const t=i.forwardRef((n,o)=>{const{children:r,...s}=n;if(i.isValidElement(r)){const a=lf(r),c=cf(s,r.props);return r.type!==i.Fragment&&(c.ref=o?we(o,a):a),i.cloneElement(r,c)}return i.Children.count(r)>1?i.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var sf=Symbol("radix.slottable");function af(e){return i.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===sf}function cf(e,t){const n={...t};for(const o in t){const r=e[o],s=t[o];/^on[A-Z]/.test(o)?r&&s?n[o]=(...c)=>{const l=s(...c);return r(...c),l}:r&&(n[o]=r):o==="style"?n[o]={...r,...s}:o==="className"&&(n[o]=[r,s].filter(Boolean).join(" "))}return{...e,...n}}function lf(e){let t=Object.getOwnPropertyDescriptor(e.props,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}function ei(e){const 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 uf=[" ","Enter","ArrowUp","ArrowDown"],df=[" ","Enter"],ke="Select",[sn,an,ff]=uo(ke),[tt]=Q(ke,[ff,_e]),cn=_e(),[pf,Ie]=tt(ke),[hf,vf]=tt(ke),ti=e=>{const{__scopeSelect:t,children:n,open:o,defaultOpen:r,onOpenChange:s,value:a,defaultValue:c,onValueChange:l,dir:u,name:d,autoComplete:f,disabled:h,required:m,form:w}=e,v=cn(t),[g,y]=i.useState(null),[x,b]=i.useState(null),[C,S]=i.useState(!1),A=vt(u),[E,_]=me({prop:o,defaultProp:r??!1,onChange:s,caller:ke}),[I,O]=me({prop:a,defaultProp:c,onChange:l,caller:ke}),L=i.useRef(null),$=g?w||!!g.closest("form"):!0,[F,k]=i.useState(new Set),B=Array.from(F).map(N=>N.props.value).join(";");return p.jsx(Xt,{...v,children:p.jsxs(pf,{required:m,scope:t,trigger:g,onTriggerChange:y,valueNode:x,onValueNodeChange:b,valueNodeHasChildren:C,onValueNodeHasChildrenChange:S,contentId:ne(),value:I,onValueChange:O,open:E,onOpenChange:_,dir:A,triggerPointerDownPosRef:L,disabled:h,children:[p.jsx(sn.Provider,{scope:t,children:p.jsx(hf,{scope:e.__scopeSelect,onNativeOptionAdd:i.useCallback(N=>{k(W=>new Set(W).add(N))},[]),onNativeOptionRemove:i.useCallback(N=>{k(W=>{const M=new Set(W);return M.delete(N),M})},[]),children:n})}),$?p.jsxs(Pi,{"aria-hidden":!0,required:m,tabIndex:-1,name:d,autoComplete:f,value:I,onChange:N=>O(N.target.value),disabled:h,form:w,children:[I===void 0?p.jsx("option",{value:""}):null,Array.from(F)]},B):null]})})};ti.displayName=ke;var ni="SelectTrigger",oi=i.forwardRef((e,t)=>{const{__scopeSelect:n,disabled:o=!1,...r}=e,s=cn(n),a=Ie(ni,n),c=a.disabled||o,l=j(t,a.onTriggerChange),u=an(n),d=i.useRef("touch"),[f,h,m]=Ti(v=>{const g=u().filter(b=>!b.disabled),y=g.find(b=>b.value===a.value),x=_i(g,v,y);x!==void 0&&a.onValueChange(x.value)}),w=v=>{c||(a.onOpenChange(!0),m()),v&&(a.triggerPointerDownPosRef.current={x:Math.round(v.pageX),y:Math.round(v.pageY)})};return p.jsx(pt,{asChild:!0,...s,children:p.jsx(D.button,{type:"button",role:"combobox","aria-controls":a.contentId,"aria-expanded":a.open,"aria-required":a.required,"aria-autocomplete":"none",dir:a.dir,"data-state":a.open?"open":"closed",disabled:c,"data-disabled":c?"":void 0,"data-placeholder":Ai(a.value)?"":void 0,...r,ref:l,onClick:R(r.onClick,v=>{v.currentTarget.focus(),d.current!=="mouse"&&w(v)}),onPointerDown:R(r.onPointerDown,v=>{d.current=v.pointerType;const g=v.target;g.hasPointerCapture(v.pointerId)&&g.releasePointerCapture(v.pointerId),v.button===0&&v.ctrlKey===!1&&v.pointerType==="mouse"&&(w(v),v.preventDefault())}),onKeyDown:R(r.onKeyDown,v=>{const g=f.current!=="";!(v.ctrlKey||v.altKey||v.metaKey)&&v.key.length===1&&h(v.key),!(g&&v.key===" ")&&uf.includes(v.key)&&(w(),v.preventDefault())})})})});oi.displayName=ni;var ri="SelectValue",si=i.forwardRef((e,t)=>{const{__scopeSelect:n,className:o,style:r,children:s,placeholder:a="",...c}=e,l=Ie(ri,n),{onValueNodeHasChildrenChange:u}=l,d=s!==void 0,f=j(t,l.onValueNodeChange);return z(()=>{u(d)},[u,d]),p.jsx(D.span,{...c,ref:f,style:{pointerEvents:"none"},children:Ai(l.value)?p.jsx(p.Fragment,{children:a}):s})});si.displayName=ri;var mf="SelectIcon",ii=i.forwardRef((e,t)=>{const{__scopeSelect:n,children:o,...r}=e;return p.jsx(D.span,{"aria-hidden":!0,...r,ref:t,children:o||"▼"})});ii.displayName=mf;var gf="SelectPortal",ai=e=>p.jsx(Je,{asChild:!0,...e});ai.displayName=gf;var $e="SelectContent",ci=i.forwardRef((e,t)=>{const n=Ie($e,e.__scopeSelect),[o,r]=i.useState();if(z(()=>{r(new DocumentFragment)},[]),!n.open){const s=o;return s?Wt.createPortal(p.jsx(li,{scope:e.__scopeSelect,children:p.jsx(sn.Slot,{scope:e.__scopeSelect,children:p.jsx("div",{children:e.children})})}),s):null}return p.jsx(ui,{...e,ref:t})});ci.displayName=$e;var le=10,[li,Oe]=tt($e),wf="SelectContentImpl",yf=of("SelectContent.RemoveScroll"),ui=i.forwardRef((e,t)=>{const{__scopeSelect:n,position:o="item-aligned",onCloseAutoFocus:r,onEscapeKeyDown:s,onPointerDownOutside:a,side:c,sideOffset:l,align:u,alignOffset:d,arrowPadding:f,collisionBoundary:h,collisionPadding:m,sticky:w,hideWhenDetached:v,avoidCollisions:g,...y}=e,x=Ie($e,n),[b,C]=i.useState(null),[S,A]=i.useState(null),E=j(t,T=>C(T)),[_,I]=i.useState(null),[O,L]=i.useState(null),$=an(n),[F,k]=i.useState(!1),B=i.useRef(!1);i.useEffect(()=>{if(b)return Ht(b)},[b]),Bt();const N=i.useCallback(T=>{const[V,...Z]=$().map(K=>K.ref.current),[H]=Z.slice(-1),U=document.activeElement;for(const K of T)if(K===U||(K?.scrollIntoView({block:"nearest"}),K===V&&S&&(S.scrollTop=0),K===H&&S&&(S.scrollTop=S.scrollHeight),K?.focus(),document.activeElement!==U))return},[$,S]),W=i.useCallback(()=>N([_,b]),[N,_,b]);i.useEffect(()=>{F&&W()},[F,W]);const{onOpenChange:M,triggerPointerDownPosRef:P}=x;i.useEffect(()=>{if(b){let T={x:0,y:0};const V=H=>{T={x:Math.abs(Math.round(H.pageX)-(P.current?.x??0)),y:Math.abs(Math.round(H.pageY)-(P.current?.y??0))}},Z=H=>{T.x<=10&&T.y<=10?H.preventDefault():b.contains(H.target)||M(!1),document.removeEventListener("pointermove",V),P.current=null};return P.current!==null&&(document.addEventListener("pointermove",V),document.addEventListener("pointerup",Z,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",V),document.removeEventListener("pointerup",Z,{capture:!0})}}},[b,M,P]),i.useEffect(()=>{const T=()=>M(!1);return window.addEventListener("blur",T),window.addEventListener("resize",T),()=>{window.removeEventListener("blur",T),window.removeEventListener("resize",T)}},[M]);const[G,q]=Ti(T=>{const V=$().filter(U=>!U.disabled),Z=V.find(U=>U.ref.current===document.activeElement),H=_i(V,T,Z);H&&setTimeout(()=>H.ref.current.focus())}),ce=i.useCallback((T,V,Z)=>{const H=!B.current&&!Z;(x.value!==void 0&&x.value===V||H)&&(I(T),H&&(B.current=!0))},[x.value]),be=i.useCallback(()=>b?.focus(),[b]),re=i.useCallback((T,V,Z)=>{const H=!B.current&&!Z;(x.value!==void 0&&x.value===V||H)&&L(T)},[x.value]),Ce=o==="popper"?kn:di,ee=Ce===kn?{side:c,sideOffset:l,align:u,alignOffset:d,arrowPadding:f,collisionBoundary:h,collisionPadding:m,sticky:w,hideWhenDetached:v,avoidCollisions:g}:{};return p.jsx(li,{scope:n,content:b,viewport:S,onViewportChange:A,itemRefCallback:ce,selectedItem:_,onItemLeave:be,itemTextRefCallback:re,focusSelectedItem:W,selectedItemText:O,position:o,isPositioned:F,searchRef:G,children:p.jsx(dt,{as:yf,allowPinchZoom:!0,children:p.jsx(ut,{asChild:!0,trapped:x.open,onMountAutoFocus:T=>{T.preventDefault()},onUnmountAutoFocus:R(r,T=>{x.trigger?.focus({preventScroll:!0}),T.preventDefault()}),children:p.jsx(Ze,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:s,onPointerDownOutside:a,onFocusOutside:T=>T.preventDefault(),onDismiss:()=>x.onOpenChange(!1),children:p.jsx(Ce,{role:"listbox",id:x.contentId,"data-state":x.open?"open":"closed",dir:x.dir,onContextMenu:T=>T.preventDefault(),...y,...ee,onPlaced:()=>k(!0),ref:E,style:{display:"flex",flexDirection:"column",outline:"none",...y.style},onKeyDown:R(y.onKeyDown,T=>{const V=T.ctrlKey||T.altKey||T.metaKey;if(T.key==="Tab"&&T.preventDefault(),!V&&T.key.length===1&&q(T.key),["ArrowUp","ArrowDown","Home","End"].includes(T.key)){let H=$().filter(U=>!U.disabled).map(U=>U.ref.current);if(["ArrowUp","End"].includes(T.key)&&(H=H.slice().reverse()),["ArrowUp","ArrowDown"].includes(T.key)){const U=T.target,K=H.indexOf(U);H=H.slice(K+1)}setTimeout(()=>N(H)),T.preventDefault()}})})})})})})});ui.displayName=wf;var xf="SelectItemAlignedPosition",di=i.forwardRef((e,t)=>{const{__scopeSelect:n,onPlaced:o,...r}=e,s=Ie($e,n),a=Oe($e,n),[c,l]=i.useState(null),[u,d]=i.useState(null),f=j(t,E=>d(E)),h=an(n),m=i.useRef(!1),w=i.useRef(!0),{viewport:v,selectedItem:g,selectedItemText:y,focusSelectedItem:x}=a,b=i.useCallback(()=>{if(s.trigger&&s.valueNode&&c&&u&&v&&g&&y){const E=s.trigger.getBoundingClientRect(),_=u.getBoundingClientRect(),I=s.valueNode.getBoundingClientRect(),O=y.getBoundingClientRect();if(s.dir!=="rtl"){const U=O.left-_.left,K=I.left-U,se=E.left-K,De=E.width+se,hn=Math.max(De,_.width),vn=window.innerWidth-le,mn=Ln(K,[le,Math.max(le,vn-hn)]);c.style.minWidth=De+"px",c.style.left=mn+"px"}else{const U=_.right-O.right,K=window.innerWidth-I.right-U,se=window.innerWidth-E.right-K,De=E.width+se,hn=Math.max(De,_.width),vn=window.innerWidth-le,mn=Ln(K,[le,Math.max(le,vn-hn)]);c.style.minWidth=De+"px",c.style.right=mn+"px"}const L=h(),$=window.innerHeight-le*2,F=v.scrollHeight,k=window.getComputedStyle(u),B=parseInt(k.borderTopWidth,10),N=parseInt(k.paddingTop,10),W=parseInt(k.borderBottomWidth,10),M=parseInt(k.paddingBottom,10),P=B+N+F+M+W,G=Math.min(g.offsetHeight*5,P),q=window.getComputedStyle(v),ce=parseInt(q.paddingTop,10),be=parseInt(q.paddingBottom,10),re=E.top+E.height/2-le,Ce=$-re,ee=g.offsetHeight/2,T=g.offsetTop+ee,V=B+N+T,Z=P-V;if(V<=re){const U=L.length>0&&g===L[L.length-1].ref.current;c.style.bottom="0px";const K=u.clientHeight-v.offsetTop-v.offsetHeight,se=Math.max(Ce,ee+(U?be:0)+K+W),De=V+se;c.style.height=De+"px"}else{const U=L.length>0&&g===L[0].ref.current;c.style.top="0px";const se=Math.max(re,B+v.offsetTop+(U?ce:0)+ee)+Z;c.style.height=se+"px",v.scrollTop=V-re+v.offsetTop}c.style.margin=`${le}px 0`,c.style.minHeight=G+"px",c.style.maxHeight=$+"px",o?.(),requestAnimationFrame(()=>m.current=!0)}},[h,s.trigger,s.valueNode,c,u,v,g,y,s.dir,o]);z(()=>b(),[b]);const[C,S]=i.useState();z(()=>{u&&S(window.getComputedStyle(u).zIndex)},[u]);const A=i.useCallback(E=>{E&&w.current===!0&&(b(),x?.(),w.current=!1)},[b,x]);return p.jsx(Cf,{scope:n,contentWrapper:c,shouldExpandOnScrollRef:m,onScrollButtonChange:A,children:p.jsx("div",{ref:l,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:C},children:p.jsx(D.div,{...r,ref:f,style:{boxSizing:"border-box",maxHeight:"100%",...r.style}})})})});di.displayName=xf;var bf="SelectPopperPosition",kn=i.forwardRef((e,t)=>{const{__scopeSelect:n,align:o="start",collisionPadding:r=le,...s}=e,a=cn(n);return p.jsx(qt,{...a,...s,ref:t,align:o,collisionPadding:r,style:{boxSizing:"border-box",...s.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)"}})});kn.displayName=bf;var[Cf,po]=tt($e,{}),$n="SelectViewport",fi=i.forwardRef((e,t)=>{const{__scopeSelect:n,nonce:o,...r}=e,s=Oe($n,n),a=po($n,n),c=j(t,s.onViewportChange),l=i.useRef(0);return p.jsxs(p.Fragment,{children:[p.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:o}),p.jsx(sn.Slot,{scope:n,children:p.jsx(D.div,{"data-radix-select-viewport":"",role:"presentation",...r,ref:c,style:{position:"relative",flex:1,overflow:"hidden auto",...r.style},onScroll:R(r.onScroll,u=>{const d=u.currentTarget,{contentWrapper:f,shouldExpandOnScrollRef:h}=a;if(h?.current&&f){const m=Math.abs(l.current-d.scrollTop);if(m>0){const w=window.innerHeight-le*2,v=parseFloat(f.style.minHeight),g=parseFloat(f.style.height),y=Math.max(v,g);if(y<w){const x=y+m,b=Math.min(w,x),C=x-b;f.style.height=b+"px",f.style.bottom==="0px"&&(d.scrollTop=C>0?C:0,f.style.justifyContent="flex-end")}}}l.current=d.scrollTop})})})]})});fi.displayName=$n;var pi="SelectGroup",[Sf,Ef]=tt(pi),hi=i.forwardRef((e,t)=>{const{__scopeSelect:n,...o}=e,r=ne();return p.jsx(Sf,{scope:n,id:r,children:p.jsx(D.div,{role:"group","aria-labelledby":r,...o,ref:t})})});hi.displayName=pi;var vi="SelectLabel",mi=i.forwardRef((e,t)=>{const{__scopeSelect:n,...o}=e,r=Ef(vi,n);return p.jsx(D.div,{id:r.id,...o,ref:t})});mi.displayName=vi;var kt="SelectItem",[Rf,gi]=tt(kt),wi=i.forwardRef((e,t)=>{const{__scopeSelect:n,value:o,disabled:r=!1,textValue:s,...a}=e,c=Ie(kt,n),l=Oe(kt,n),u=c.value===o,[d,f]=i.useState(s??""),[h,m]=i.useState(!1),w=j(t,x=>l.itemRefCallback?.(x,o,r)),v=ne(),g=i.useRef("touch"),y=()=>{r||(c.onValueChange(o),c.onOpenChange(!1))};if(o==="")throw new 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 p.jsx(Rf,{scope:n,value:o,disabled:r,textId:v,isSelected:u,onItemTextChange:i.useCallback(x=>{f(b=>b||(x?.textContent??"").trim())},[]),children:p.jsx(sn.ItemSlot,{scope:n,value:o,disabled:r,textValue:d,children:p.jsx(D.div,{role:"option","aria-labelledby":v,"data-highlighted":h?"":void 0,"aria-selected":u&&h,"data-state":u?"checked":"unchecked","aria-disabled":r||void 0,"data-disabled":r?"":void 0,tabIndex:r?void 0:-1,...a,ref:w,onFocus:R(a.onFocus,()=>m(!0)),onBlur:R(a.onBlur,()=>m(!1)),onClick:R(a.onClick,()=>{g.current!=="mouse"&&y()}),onPointerUp:R(a.onPointerUp,()=>{g.current==="mouse"&&y()}),onPointerDown:R(a.onPointerDown,x=>{g.current=x.pointerType}),onPointerMove:R(a.onPointerMove,x=>{g.current=x.pointerType,r?l.onItemLeave?.():g.current==="mouse"&&x.currentTarget.focus({preventScroll:!0})}),onPointerLeave:R(a.onPointerLeave,x=>{x.currentTarget===document.activeElement&&l.onItemLeave?.()}),onKeyDown:R(a.onKeyDown,x=>{l.searchRef?.current!==""&&x.key===" "||(df.includes(x.key)&&y(),x.key===" "&&x.preventDefault())})})})})});wi.displayName=kt;var ot="SelectItemText",yi=i.forwardRef((e,t)=>{const{__scopeSelect:n,className:o,style:r,...s}=e,a=Ie(ot,n),c=Oe(ot,n),l=gi(ot,n),u=vf(ot,n),[d,f]=i.useState(null),h=j(t,y=>f(y),l.onItemTextChange,y=>c.itemTextRefCallback?.(y,l.value,l.disabled)),m=d?.textContent,w=i.useMemo(()=>p.jsx("option",{value:l.value,disabled:l.disabled,children:m},l.value),[l.disabled,l.value,m]),{onNativeOptionAdd:v,onNativeOptionRemove:g}=u;return z(()=>(v(w),()=>g(w)),[v,g,w]),p.jsxs(p.Fragment,{children:[p.jsx(D.span,{id:l.textId,...s,ref:h}),l.isSelected&&a.valueNode&&!a.valueNodeHasChildren?Wt.createPortal(s.children,a.valueNode):null]})});yi.displayName=ot;var xi="SelectItemIndicator",bi=i.forwardRef((e,t)=>{const{__scopeSelect:n,...o}=e;return gi(xi,n).isSelected?p.jsx(D.span,{"aria-hidden":!0,...o,ref:t}):null});bi.displayName=xi;var Fn="SelectScrollUpButton",Ci=i.forwardRef((e,t)=>{const n=Oe(Fn,e.__scopeSelect),o=po(Fn,e.__scopeSelect),[r,s]=i.useState(!1),a=j(t,o.onScrollButtonChange);return z(()=>{if(n.viewport&&n.isPositioned){let c=function(){const u=l.scrollTop>0;s(u)};const l=n.viewport;return c(),l.addEventListener("scroll",c),()=>l.removeEventListener("scroll",c)}},[n.viewport,n.isPositioned]),r?p.jsx(Ei,{...e,ref:a,onAutoScroll:()=>{const{viewport:c,selectedItem:l}=n;c&&l&&(c.scrollTop=c.scrollTop-l.offsetHeight)}}):null});Ci.displayName=Fn;var Wn="SelectScrollDownButton",Si=i.forwardRef((e,t)=>{const n=Oe(Wn,e.__scopeSelect),o=po(Wn,e.__scopeSelect),[r,s]=i.useState(!1),a=j(t,o.onScrollButtonChange);return z(()=>{if(n.viewport&&n.isPositioned){let c=function(){const u=l.scrollHeight-l.clientHeight,d=Math.ceil(l.scrollTop)<u;s(d)};const l=n.viewport;return c(),l.addEventListener("scroll",c),()=>l.removeEventListener("scroll",c)}},[n.viewport,n.isPositioned]),r?p.jsx(Ei,{...e,ref:a,onAutoScroll:()=>{const{viewport:c,selectedItem:l}=n;c&&l&&(c.scrollTop=c.scrollTop+l.offsetHeight)}}):null});Si.displayName=Wn;var Ei=i.forwardRef((e,t)=>{const{__scopeSelect:n,onAutoScroll:o,...r}=e,s=Oe("SelectScrollButton",n),a=i.useRef(null),c=an(n),l=i.useCallback(()=>{a.current!==null&&(window.clearInterval(a.current),a.current=null)},[]);return i.useEffect(()=>()=>l(),[l]),z(()=>{c().find(d=>d.ref.current===document.activeElement)?.ref.current?.scrollIntoView({block:"nearest"})},[c]),p.jsx(D.div,{"aria-hidden":!0,...r,ref:t,style:{flexShrink:0,...r.style},onPointerDown:R(r.onPointerDown,()=>{a.current===null&&(a.current=window.setInterval(o,50))}),onPointerMove:R(r.onPointerMove,()=>{s.onItemLeave?.(),a.current===null&&(a.current=window.setInterval(o,50))}),onPointerLeave:R(r.onPointerLeave,()=>{l()})})}),Pf="SelectSeparator",Ri=i.forwardRef((e,t)=>{const{__scopeSelect:n,...o}=e;return p.jsx(D.div,{"aria-hidden":!0,...o,ref:t})});Ri.displayName=Pf;var Bn="SelectArrow",Af=i.forwardRef((e,t)=>{const{__scopeSelect:n,...o}=e,r=cn(n),s=Ie(Bn,n),a=Oe(Bn,n);return s.open&&a.position==="popper"?p.jsx(Zt,{...r,...o,ref:t}):null});Af.displayName=Bn;var Tf="SelectBubbleInput",Pi=i.forwardRef(({__scopeSelect:e,value:t,...n},o)=>{const r=i.useRef(null),s=j(o,r),a=ei(t);return i.useEffect(()=>{const c=r.current;if(!c)return;const l=window.HTMLSelectElement.prototype,d=Object.getOwnPropertyDescriptor(l,"value").set;if(a!==t&&d){const f=new Event("change",{bubbles:!0});d.call(c,t),c.dispatchEvent(f)}},[a,t]),p.jsx(D.select,{...n,style:{...Jr,...n.style},ref:s,defaultValue:t})});Pi.displayName=Tf;function Ai(e){return e===""||e===void 0}function Ti(e){const t=X(e),n=i.useRef(""),o=i.useRef(0),r=i.useCallback(a=>{const c=n.current+a;t(c),(function l(u){n.current=u,window.clearTimeout(o.current),u!==""&&(o.current=window.setTimeout(()=>l(""),1e3))})(c)},[t]),s=i.useCallback(()=>{n.current="",window.clearTimeout(o.current)},[]);return i.useEffect(()=>()=>window.clearTimeout(o.current),[]),[n,r,s]}function _i(e,t,n){const r=t.length>1&&Array.from(t).every(u=>u===t[0])?t[0]:t,s=n?e.indexOf(n):-1;let a=_f(e,Math.max(s,0));r.length===1&&(a=a.filter(u=>u!==n));const l=a.find(u=>u.textValue.toLowerCase().startsWith(r.toLowerCase()));return l!==n?l:void 0}function _f(e,t){return e.map((n,o)=>e[(t+o)%e.length])}var Vh=ti,Hh=oi,Uh=si,Gh=ii,Kh=ai,zh=ci,Yh=fi,Xh=hi,qh=mi,Zh=wi,Jh=yi,Qh=bi,ev=Ci,tv=Si,nv=Ri;function If(e){const t=Of(e),n=i.forwardRef((o,r)=>{const{children:s,...a}=o,c=i.Children.toArray(s),l=c.find(Df);if(l){const u=l.props.children,d=c.map(f=>f===l?i.Children.count(u)>1?i.Children.only(null):i.isValidElement(u)?u.props.children:null:f);return p.jsx(t,{...a,ref:r,children:i.isValidElement(u)?i.cloneElement(u,void 0,d):null})}return p.jsx(t,{...a,ref:r,children:s})});return n.displayName=`${e}.Slot`,n}function Of(e){const t=i.forwardRef((n,o)=>{const{children:r,...s}=n;if(i.isValidElement(r)){const a=Lf(r),c=Nf(s,r.props);return r.type!==i.Fragment&&(c.ref=o?we(o,a):a),i.cloneElement(r,c)}return i.Children.count(r)>1?i.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var Mf=Symbol("radix.slottable");function Df(e){return i.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===Mf}function Nf(e,t){const n={...t};for(const o in t){const r=e[o],s=t[o];/^on[A-Z]/.test(o)?r&&s?n[o]=(...c)=>{const l=s(...c);return r(...c),l}:r&&(n[o]=r):o==="style"?n[o]={...r,...s}:o==="className"&&(n[o]=[r,s].filter(Boolean).join(" "))}return{...e,...n}}function Lf(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 Vn=["Enter"," "],jf=["ArrowDown","PageUp","Home"],Ii=["ArrowUp","PageDown","End"],kf=[...jf,...Ii],$f={ltr:[...Vn,"ArrowRight"],rtl:[...Vn,"ArrowLeft"]},Ff={ltr:["ArrowLeft"],rtl:["ArrowRight"]},gt="Menu",[ct,Wf,Bf]=uo(gt),[Fe,Oi]=Q(gt,[Bf,_e,on]),ln=_e(),Mi=on(),[Vf,We]=Fe(gt),[Hf,wt]=Fe(gt),Di=e=>{const{__scopeMenu:t,open:n=!1,children:o,dir:r,onOpenChange:s,modal:a=!0}=e,c=ln(t),[l,u]=i.useState(null),d=i.useRef(!1),f=X(s),h=vt(r);return i.useEffect(()=>{const m=()=>{d.current=!0,document.addEventListener("pointerdown",w,{capture:!0,once:!0}),document.addEventListener("pointermove",w,{capture:!0,once:!0})},w=()=>d.current=!1;return document.addEventListener("keydown",m,{capture:!0}),()=>{document.removeEventListener("keydown",m,{capture:!0}),document.removeEventListener("pointerdown",w,{capture:!0}),document.removeEventListener("pointermove",w,{capture:!0})}},[]),p.jsx(Xt,{...c,children:p.jsx(Vf,{scope:t,open:n,onOpenChange:f,content:l,onContentChange:u,children:p.jsx(Hf,{scope:t,onClose:i.useCallback(()=>f(!1),[f]),isUsingKeyboardRef:d,dir:h,modal:a,children:o})})})};Di.displayName=gt;var Uf="MenuAnchor",ho=i.forwardRef((e,t)=>{const{__scopeMenu:n,...o}=e,r=ln(n);return p.jsx(pt,{...r,...o,ref:t})});ho.displayName=Uf;var vo="MenuPortal",[Gf,Ni]=Fe(vo,{forceMount:void 0}),Li=e=>{const{__scopeMenu:t,forceMount:n,children:o,container:r}=e,s=We(vo,t);return p.jsx(Gf,{scope:t,forceMount:n,children:p.jsx(Y,{present:n||s.open,children:p.jsx(Je,{asChild:!0,container:r,children:o})})})};Li.displayName=vo;var ie="MenuContent",[Kf,mo]=Fe(ie),ji=i.forwardRef((e,t)=>{const n=Ni(ie,e.__scopeMenu),{forceMount:o=n.forceMount,...r}=e,s=We(ie,e.__scopeMenu),a=wt(ie,e.__scopeMenu);return p.jsx(ct.Provider,{scope:e.__scopeMenu,children:p.jsx(Y,{present:o||s.open,children:p.jsx(ct.Slot,{scope:e.__scopeMenu,children:a.modal?p.jsx(zf,{...r,ref:t}):p.jsx(Yf,{...r,ref:t})})})})}),zf=i.forwardRef((e,t)=>{const n=We(ie,e.__scopeMenu),o=i.useRef(null),r=j(t,o);return i.useEffect(()=>{const s=o.current;if(s)return Ht(s)},[]),p.jsx(go,{...e,ref:r,trapFocus:n.open,disableOutsidePointerEvents:n.open,disableOutsideScroll:!0,onFocusOutside:R(e.onFocusOutside,s=>s.preventDefault(),{checkForDefaultPrevented:!1}),onDismiss:()=>n.onOpenChange(!1)})}),Yf=i.forwardRef((e,t)=>{const n=We(ie,e.__scopeMenu);return p.jsx(go,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,onDismiss:()=>n.onOpenChange(!1)})}),Xf=If("MenuContent.ScrollLock"),go=i.forwardRef((e,t)=>{const{__scopeMenu:n,loop:o=!1,trapFocus:r,onOpenAutoFocus:s,onCloseAutoFocus:a,disableOutsidePointerEvents:c,onEntryFocus:l,onEscapeKeyDown:u,onPointerDownOutside:d,onFocusOutside:f,onInteractOutside:h,onDismiss:m,disableOutsideScroll:w,...v}=e,g=We(ie,n),y=wt(ie,n),x=ln(n),b=Mi(n),C=Wf(n),[S,A]=i.useState(null),E=i.useRef(null),_=j(t,E,g.onContentChange),I=i.useRef(0),O=i.useRef(""),L=i.useRef(0),$=i.useRef(null),F=i.useRef("right"),k=i.useRef(0),B=w?dt:i.Fragment,N=w?{as:Xf,allowPinchZoom:!0}:void 0,W=P=>{const G=O.current+P,q=C().filter(T=>!T.disabled),ce=document.activeElement,be=q.find(T=>T.ref.current===ce)?.textValue,re=q.map(T=>T.textValue),Ce=ap(re,G,be),ee=q.find(T=>T.textValue===Ce)?.ref.current;(function T(V){O.current=V,window.clearTimeout(I.current),V!==""&&(I.current=window.setTimeout(()=>T(""),1e3))})(G),ee&&setTimeout(()=>ee.focus())};i.useEffect(()=>()=>window.clearTimeout(I.current),[]),Bt();const M=i.useCallback(P=>F.current===$.current?.side&&lp(P,$.current?.area),[]);return p.jsx(Kf,{scope:n,searchRef:O,onItemEnter:i.useCallback(P=>{M(P)&&P.preventDefault()},[M]),onItemLeave:i.useCallback(P=>{M(P)||(E.current?.focus(),A(null))},[M]),onTriggerLeave:i.useCallback(P=>{M(P)&&P.preventDefault()},[M]),pointerGraceTimerRef:L,onPointerGraceIntentChange:i.useCallback(P=>{$.current=P},[]),children:p.jsx(B,{...N,children:p.jsx(ut,{asChild:!0,trapped:r,onMountAutoFocus:R(s,P=>{P.preventDefault(),E.current?.focus({preventScroll:!0})}),onUnmountAutoFocus:a,children:p.jsx(Ze,{asChild:!0,disableOutsidePointerEvents:c,onEscapeKeyDown:u,onPointerDownOutside:d,onFocusOutside:f,onInteractOutside:h,onDismiss:m,children:p.jsx(Bs,{asChild:!0,...b,dir:y.dir,orientation:"vertical",loop:o,currentTabStopId:S,onCurrentTabStopIdChange:A,onEntryFocus:R(l,P=>{y.isUsingKeyboardRef.current||P.preventDefault()}),preventScrollOnEntryFocus:!0,children:p.jsx(qt,{role:"menu","aria-orientation":"vertical","data-state":Ji(g.open),"data-radix-menu-content":"",dir:y.dir,...x,...v,ref:_,style:{outline:"none",...v.style},onKeyDown:R(v.onKeyDown,P=>{const q=P.target.closest("[data-radix-menu-content]")===P.currentTarget,ce=P.ctrlKey||P.altKey||P.metaKey,be=P.key.length===1;q&&(P.key==="Tab"&&P.preventDefault(),!ce&&be&&W(P.key));const re=E.current;if(P.target!==re||!kf.includes(P.key))return;P.preventDefault();const ee=C().filter(T=>!T.disabled).map(T=>T.ref.current);Ii.includes(P.key)&&ee.reverse(),sp(ee)}),onBlur:R(e.onBlur,P=>{P.currentTarget.contains(P.target)||(window.clearTimeout(I.current),O.current="")}),onPointerMove:R(e.onPointerMove,lt(P=>{const G=P.target,q=k.current!==P.clientX;if(P.currentTarget.contains(G)&&q){const ce=P.clientX>k.current?"right":"left";F.current=ce,k.current=P.clientX}}))})})})})})})});ji.displayName=ie;var qf="MenuGroup",wo=i.forwardRef((e,t)=>{const{__scopeMenu:n,...o}=e;return p.jsx(D.div,{role:"group",...o,ref:t})});wo.displayName=qf;var Zf="MenuLabel",ki=i.forwardRef((e,t)=>{const{__scopeMenu:n,...o}=e;return p.jsx(D.div,{...o,ref:t})});ki.displayName=Zf;var $t="MenuItem",Zo="menu.itemSelect",un=i.forwardRef((e,t)=>{const{disabled:n=!1,onSelect:o,...r}=e,s=i.useRef(null),a=wt($t,e.__scopeMenu),c=mo($t,e.__scopeMenu),l=j(t,s),u=i.useRef(!1),d=()=>{const f=s.current;if(!n&&f){const h=new CustomEvent(Zo,{bubbles:!0,cancelable:!0});f.addEventListener(Zo,m=>o?.(m),{once:!0}),er(f,h),h.defaultPrevented?u.current=!1:a.onClose()}};return p.jsx($i,{...r,ref:l,disabled:n,onClick:R(e.onClick,d),onPointerDown:f=>{e.onPointerDown?.(f),u.current=!0},onPointerUp:R(e.onPointerUp,f=>{u.current||f.currentTarget?.click()}),onKeyDown:R(e.onKeyDown,f=>{const h=c.searchRef.current!=="";n||h&&f.key===" "||Vn.includes(f.key)&&(f.currentTarget.click(),f.preventDefault())})})});un.displayName=$t;var $i=i.forwardRef((e,t)=>{const{__scopeMenu:n,disabled:o=!1,textValue:r,...s}=e,a=mo($t,n),c=Mi(n),l=i.useRef(null),u=j(t,l),[d,f]=i.useState(!1),[h,m]=i.useState("");return i.useEffect(()=>{const w=l.current;w&&m((w.textContent??"").trim())},[s.children]),p.jsx(ct.ItemSlot,{scope:n,disabled:o,textValue:r??h,children:p.jsx(Vs,{asChild:!0,...c,focusable:!o,children:p.jsx(D.div,{role:"menuitem","data-highlighted":d?"":void 0,"aria-disabled":o||void 0,"data-disabled":o?"":void 0,...s,ref:u,onPointerMove:R(e.onPointerMove,lt(w=>{o?a.onItemLeave(w):(a.onItemEnter(w),w.defaultPrevented||w.currentTarget.focus({preventScroll:!0}))})),onPointerLeave:R(e.onPointerLeave,lt(w=>a.onItemLeave(w))),onFocus:R(e.onFocus,()=>f(!0)),onBlur:R(e.onBlur,()=>f(!1))})})})}),Jf="MenuCheckboxItem",Fi=i.forwardRef((e,t)=>{const{checked:n=!1,onCheckedChange:o,...r}=e;return p.jsx(Ui,{scope:e.__scopeMenu,checked:n,children:p.jsx(un,{role:"menuitemcheckbox","aria-checked":Ft(n)?"mixed":n,...r,ref:t,"data-state":xo(n),onSelect:R(r.onSelect,()=>o?.(Ft(n)?!0:!n),{checkForDefaultPrevented:!1})})})});Fi.displayName=Jf;var Wi="MenuRadioGroup",[Qf,ep]=Fe(Wi,{value:void 0,onValueChange:()=>{}}),Bi=i.forwardRef((e,t)=>{const{value:n,onValueChange:o,...r}=e,s=X(o);return p.jsx(Qf,{scope:e.__scopeMenu,value:n,onValueChange:s,children:p.jsx(wo,{...r,ref:t})})});Bi.displayName=Wi;var Vi="MenuRadioItem",Hi=i.forwardRef((e,t)=>{const{value:n,...o}=e,r=ep(Vi,e.__scopeMenu),s=n===r.value;return p.jsx(Ui,{scope:e.__scopeMenu,checked:s,children:p.jsx(un,{role:"menuitemradio","aria-checked":s,...o,ref:t,"data-state":xo(s),onSelect:R(o.onSelect,()=>r.onValueChange?.(n),{checkForDefaultPrevented:!1})})})});Hi.displayName=Vi;var yo="MenuItemIndicator",[Ui,tp]=Fe(yo,{checked:!1}),Gi=i.forwardRef((e,t)=>{const{__scopeMenu:n,forceMount:o,...r}=e,s=tp(yo,n);return p.jsx(Y,{present:o||Ft(s.checked)||s.checked===!0,children:p.jsx(D.span,{...r,ref:t,"data-state":xo(s.checked)})})});Gi.displayName=yo;var np="MenuSeparator",Ki=i.forwardRef((e,t)=>{const{__scopeMenu:n,...o}=e;return p.jsx(D.div,{role:"separator","aria-orientation":"horizontal",...o,ref:t})});Ki.displayName=np;var op="MenuArrow",zi=i.forwardRef((e,t)=>{const{__scopeMenu:n,...o}=e,r=ln(n);return p.jsx(Zt,{...r,...o,ref:t})});zi.displayName=op;var rp="MenuSub",[ov,Yi]=Fe(rp),rt="MenuSubTrigger",Xi=i.forwardRef((e,t)=>{const n=We(rt,e.__scopeMenu),o=wt(rt,e.__scopeMenu),r=Yi(rt,e.__scopeMenu),s=mo(rt,e.__scopeMenu),a=i.useRef(null),{pointerGraceTimerRef:c,onPointerGraceIntentChange:l}=s,u={__scopeMenu:e.__scopeMenu},d=i.useCallback(()=>{a.current&&window.clearTimeout(a.current),a.current=null},[]);return i.useEffect(()=>d,[d]),i.useEffect(()=>{const f=c.current;return()=>{window.clearTimeout(f),l(null)}},[c,l]),p.jsx(ho,{asChild:!0,...u,children:p.jsx($i,{id:r.triggerId,"aria-haspopup":"menu","aria-expanded":n.open,"aria-controls":r.contentId,"data-state":Ji(n.open),...e,ref:we(t,r.onTriggerChange),onClick:f=>{e.onClick?.(f),!(e.disabled||f.defaultPrevented)&&(f.currentTarget.focus(),n.open||n.onOpenChange(!0))},onPointerMove:R(e.onPointerMove,lt(f=>{s.onItemEnter(f),!f.defaultPrevented&&!e.disabled&&!n.open&&!a.current&&(s.onPointerGraceIntentChange(null),a.current=window.setTimeout(()=>{n.onOpenChange(!0),d()},100))})),onPointerLeave:R(e.onPointerLeave,lt(f=>{d();const h=n.content?.getBoundingClientRect();if(h){const m=n.content?.dataset.side,w=m==="right",v=w?-5:5,g=h[w?"left":"right"],y=h[w?"right":"left"];s.onPointerGraceIntentChange({area:[{x:f.clientX+v,y:f.clientY},{x:g,y:h.top},{x:y,y:h.top},{x:y,y:h.bottom},{x:g,y:h.bottom}],side:m}),window.clearTimeout(c.current),c.current=window.setTimeout(()=>s.onPointerGraceIntentChange(null),300)}else{if(s.onTriggerLeave(f),f.defaultPrevented)return;s.onPointerGraceIntentChange(null)}})),onKeyDown:R(e.onKeyDown,f=>{const h=s.searchRef.current!=="";e.disabled||h&&f.key===" "||$f[o.dir].includes(f.key)&&(n.onOpenChange(!0),n.content?.focus(),f.preventDefault())})})})});Xi.displayName=rt;var qi="MenuSubContent",Zi=i.forwardRef((e,t)=>{const n=Ni(ie,e.__scopeMenu),{forceMount:o=n.forceMount,...r}=e,s=We(ie,e.__scopeMenu),a=wt(ie,e.__scopeMenu),c=Yi(qi,e.__scopeMenu),l=i.useRef(null),u=j(t,l);return p.jsx(ct.Provider,{scope:e.__scopeMenu,children:p.jsx(Y,{present:o||s.open,children:p.jsx(ct.Slot,{scope:e.__scopeMenu,children:p.jsx(go,{id:c.contentId,"aria-labelledby":c.triggerId,...r,ref:u,align:"start",side:a.dir==="rtl"?"left":"right",disableOutsidePointerEvents:!1,disableOutsideScroll:!1,trapFocus:!1,onOpenAutoFocus:d=>{a.isUsingKeyboardRef.current&&l.current?.focus(),d.preventDefault()},onCloseAutoFocus:d=>d.preventDefault(),onFocusOutside:R(e.onFocusOutside,d=>{d.target!==c.trigger&&s.onOpenChange(!1)}),onEscapeKeyDown:R(e.onEscapeKeyDown,d=>{a.onClose(),d.preventDefault()}),onKeyDown:R(e.onKeyDown,d=>{const f=d.currentTarget.contains(d.target),h=Ff[a.dir].includes(d.key);f&&h&&(s.onOpenChange(!1),c.trigger?.focus(),d.preventDefault())})})})})})});Zi.displayName=qi;function Ji(e){return e?"open":"closed"}function Ft(e){return e==="indeterminate"}function xo(e){return Ft(e)?"indeterminate":e?"checked":"unchecked"}function sp(e){const t=document.activeElement;for(const n of e)if(n===t||(n.focus(),document.activeElement!==t))return}function ip(e,t){return e.map((n,o)=>e[(t+o)%e.length])}function ap(e,t,n){const r=t.length>1&&Array.from(t).every(u=>u===t[0])?t[0]:t,s=n?e.indexOf(n):-1;let a=ip(e,Math.max(s,0));r.length===1&&(a=a.filter(u=>u!==n));const l=a.find(u=>u.toLowerCase().startsWith(r.toLowerCase()));return l!==n?l:void 0}function cp(e,t){const{x:n,y:o}=e;let r=!1;for(let s=0,a=t.length-1;s<t.length;a=s++){const c=t[s],l=t[a],u=c.x,d=c.y,f=l.x,h=l.y;d>o!=h>o&&n<(f-u)*(o-d)/(h-d)+u&&(r=!r)}return r}function lp(e,t){if(!t)return!1;const n={x:e.clientX,y:e.clientY};return cp(n,t)}function lt(e){return t=>t.pointerType==="mouse"?e(t):void 0}var up=Di,dp=ho,fp=Li,pp=ji,hp=wo,vp=ki,mp=un,gp=Fi,wp=Bi,yp=Hi,xp=Gi,bp=Ki,Cp=zi,Sp=Xi,Ep=Zi,dn="DropdownMenu",[Rp]=Q(dn,[Oi]),J=Oi(),[Pp,Qi]=Rp(dn),ea=e=>{const{__scopeDropdownMenu:t,children:n,dir:o,open:r,defaultOpen:s,onOpenChange:a,modal:c=!0}=e,l=J(t),u=i.useRef(null),[d,f]=me({prop:r,defaultProp:s??!1,onChange:a,caller:dn});return p.jsx(Pp,{scope:t,triggerId:ne(),triggerRef:u,contentId:ne(),open:d,onOpenChange:f,onOpenToggle:i.useCallback(()=>f(h=>!h),[f]),modal:c,children:p.jsx(up,{...l,open:d,onOpenChange:f,dir:o,modal:c,children:n})})};ea.displayName=dn;var ta="DropdownMenuTrigger",na=i.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,disabled:o=!1,...r}=e,s=Qi(ta,n),a=J(n);return p.jsx(dp,{asChild:!0,...a,children:p.jsx(D.button,{type:"button",id:s.triggerId,"aria-haspopup":"menu","aria-expanded":s.open,"aria-controls":s.open?s.contentId:void 0,"data-state":s.open?"open":"closed","data-disabled":o?"":void 0,disabled:o,...r,ref:we(t,s.triggerRef),onPointerDown:R(e.onPointerDown,c=>{!o&&c.button===0&&c.ctrlKey===!1&&(s.onOpenToggle(),s.open||c.preventDefault())}),onKeyDown:R(e.onKeyDown,c=>{o||(["Enter"," "].includes(c.key)&&s.onOpenToggle(),c.key==="ArrowDown"&&s.onOpenChange(!0),["Enter"," ","ArrowDown"].includes(c.key)&&c.preventDefault())})})})});na.displayName=ta;var Ap="DropdownMenuPortal",oa=e=>{const{__scopeDropdownMenu:t,...n}=e,o=J(t);return p.jsx(fp,{...o,...n})};oa.displayName=Ap;var ra="DropdownMenuContent",sa=i.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...o}=e,r=Qi(ra,n),s=J(n),a=i.useRef(!1);return p.jsx(pp,{id:r.contentId,"aria-labelledby":r.triggerId,...s,...o,ref:t,onCloseAutoFocus:R(e.onCloseAutoFocus,c=>{a.current||r.triggerRef.current?.focus(),a.current=!1,c.preventDefault()}),onInteractOutside:R(e.onInteractOutside,c=>{const l=c.detail.originalEvent,u=l.button===0&&l.ctrlKey===!0,d=l.button===2||u;(!r.modal||d)&&(a.current=!0)}),style:{...e.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-dropdown-menu-content-available-width":"var(--radix-popper-available-width)","--radix-dropdown-menu-content-available-height":"var(--radix-popper-available-height)","--radix-dropdown-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-dropdown-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});sa.displayName=ra;var Tp="DropdownMenuGroup",_p=i.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...o}=e,r=J(n);return p.jsx(hp,{...r,...o,ref:t})});_p.displayName=Tp;var Ip="DropdownMenuLabel",Op=i.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...o}=e,r=J(n);return p.jsx(vp,{...r,...o,ref:t})});Op.displayName=Ip;var Mp="DropdownMenuItem",ia=i.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...o}=e,r=J(n);return p.jsx(mp,{...r,...o,ref:t})});ia.displayName=Mp;var Dp="DropdownMenuCheckboxItem",Np=i.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...o}=e,r=J(n);return p.jsx(gp,{...r,...o,ref:t})});Np.displayName=Dp;var Lp="DropdownMenuRadioGroup",jp=i.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...o}=e,r=J(n);return p.jsx(wp,{...r,...o,ref:t})});jp.displayName=Lp;var kp="DropdownMenuRadioItem",$p=i.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...o}=e,r=J(n);return p.jsx(yp,{...r,...o,ref:t})});$p.displayName=kp;var Fp="DropdownMenuItemIndicator",Wp=i.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...o}=e,r=J(n);return p.jsx(xp,{...r,...o,ref:t})});Wp.displayName=Fp;var Bp="DropdownMenuSeparator",Vp=i.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...o}=e,r=J(n);return p.jsx(bp,{...r,...o,ref:t})});Vp.displayName=Bp;var Hp="DropdownMenuArrow",Up=i.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...o}=e,r=J(n);return p.jsx(Cp,{...r,...o,ref:t})});Up.displayName=Hp;var Gp="DropdownMenuSubTrigger",Kp=i.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...o}=e,r=J(n);return p.jsx(Sp,{...r,...o,ref:t})});Kp.displayName=Gp;var zp="DropdownMenuSubContent",Yp=i.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...o}=e,r=J(n);return p.jsx(Ep,{...r,...o,ref:t,style:{...e.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-dropdown-menu-content-available-width":"var(--radix-popper-available-width)","--radix-dropdown-menu-content-available-height":"var(--radix-popper-available-height)","--radix-dropdown-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-dropdown-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});Yp.displayName=zp;var rv=ea,sv=na,iv=oa,av=sa,cv=ia;function Xp(e){const t=qp(e),n=i.forwardRef((o,r)=>{const{children:s,...a}=o,c=i.Children.toArray(s),l=c.find(Jp);if(l){const u=l.props.children,d=c.map(f=>f===l?i.Children.count(u)>1?i.Children.only(null):i.isValidElement(u)?u.props.children:null:f);return p.jsx(t,{...a,ref:r,children:i.isValidElement(u)?i.cloneElement(u,void 0,d):null})}return p.jsx(t,{...a,ref:r,children:s})});return n.displayName=`${e}.Slot`,n}function qp(e){const t=i.forwardRef((n,o)=>{const{children:r,...s}=n;if(i.isValidElement(r)){const a=eh(r),c=Qp(s,r.props);return r.type!==i.Fragment&&(c.ref=o?we(o,a):a),i.cloneElement(r,c)}return i.Children.count(r)>1?i.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var Zp=Symbol("radix.slottable");function Jp(e){return i.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===Zp}function Qp(e,t){const n={...t};for(const o in t){const r=e[o],s=t[o];/^on[A-Z]/.test(o)?r&&s?n[o]=(...c)=>{const l=s(...c);return r(...c),l}:r&&(n[o]=r):o==="style"?n[o]={...r,...s}:o==="className"&&(n[o]=[r,s].filter(Boolean).join(" "))}return{...e,...n}}function eh(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 fn="Popover",[aa]=Q(fn,[_e]),yt=_e(),[th,Me]=aa(fn),ca=e=>{const{__scopePopover:t,children:n,open:o,defaultOpen:r,onOpenChange:s,modal:a=!1}=e,c=yt(t),l=i.useRef(null),[u,d]=i.useState(!1),[f,h]=me({prop:o,defaultProp:r??!1,onChange:s,caller:fn});return p.jsx(Xt,{...c,children:p.jsx(th,{scope:t,contentId:ne(),triggerRef:l,open:f,onOpenChange:h,onOpenToggle:i.useCallback(()=>h(m=>!m),[h]),hasCustomAnchor:u,onCustomAnchorAdd:i.useCallback(()=>d(!0),[]),onCustomAnchorRemove:i.useCallback(()=>d(!1),[]),modal:a,children:n})})};ca.displayName=fn;var la="PopoverAnchor",ua=i.forwardRef((e,t)=>{const{__scopePopover:n,...o}=e,r=Me(la,n),s=yt(n),{onCustomAnchorAdd:a,onCustomAnchorRemove:c}=r;return i.useEffect(()=>(a(),()=>c()),[a,c]),p.jsx(pt,{...s,...o,ref:t})});ua.displayName=la;var da="PopoverTrigger",fa=i.forwardRef((e,t)=>{const{__scopePopover:n,...o}=e,r=Me(da,n),s=yt(n),a=j(t,r.triggerRef),c=p.jsx(D.button,{type:"button","aria-haspopup":"dialog","aria-expanded":r.open,"aria-controls":r.contentId,"data-state":ga(r.open),...o,ref:a,onClick:R(e.onClick,r.onOpenToggle)});return r.hasCustomAnchor?c:p.jsx(pt,{asChild:!0,...s,children:c})});fa.displayName=da;var bo="PopoverPortal",[nh,oh]=aa(bo,{forceMount:void 0}),pa=e=>{const{__scopePopover:t,forceMount:n,children:o,container:r}=e,s=Me(bo,t);return p.jsx(nh,{scope:t,forceMount:n,children:p.jsx(Y,{present:n||s.open,children:p.jsx(Je,{asChild:!0,container:r,children:o})})})};pa.displayName=bo;var qe="PopoverContent",ha=i.forwardRef((e,t)=>{const n=oh(qe,e.__scopePopover),{forceMount:o=n.forceMount,...r}=e,s=Me(qe,e.__scopePopover);return p.jsx(Y,{present:o||s.open,children:s.modal?p.jsx(sh,{...r,ref:t}):p.jsx(ih,{...r,ref:t})})});ha.displayName=qe;var rh=Xp("PopoverContent.RemoveScroll"),sh=i.forwardRef((e,t)=>{const n=Me(qe,e.__scopePopover),o=i.useRef(null),r=j(t,o),s=i.useRef(!1);return i.useEffect(()=>{const a=o.current;if(a)return Ht(a)},[]),p.jsx(dt,{as:rh,allowPinchZoom:!0,children:p.jsx(va,{...e,ref:r,trapFocus:n.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:R(e.onCloseAutoFocus,a=>{a.preventDefault(),s.current||n.triggerRef.current?.focus()}),onPointerDownOutside:R(e.onPointerDownOutside,a=>{const c=a.detail.originalEvent,l=c.button===0&&c.ctrlKey===!0,u=c.button===2||l;s.current=u},{checkForDefaultPrevented:!1}),onFocusOutside:R(e.onFocusOutside,a=>a.preventDefault(),{checkForDefaultPrevented:!1})})})}),ih=i.forwardRef((e,t)=>{const n=Me(qe,e.__scopePopover),o=i.useRef(!1),r=i.useRef(!1);return p.jsx(va,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:s=>{e.onCloseAutoFocus?.(s),s.defaultPrevented||(o.current||n.triggerRef.current?.focus(),s.preventDefault()),o.current=!1,r.current=!1},onInteractOutside:s=>{e.onInteractOutside?.(s),s.defaultPrevented||(o.current=!0,s.detail.originalEvent.type==="pointerdown"&&(r.current=!0));const a=s.target;n.triggerRef.current?.contains(a)&&s.preventDefault(),s.detail.originalEvent.type==="focusin"&&r.current&&s.preventDefault()}})}),va=i.forwardRef((e,t)=>{const{__scopePopover:n,trapFocus:o,onOpenAutoFocus:r,onCloseAutoFocus:s,disableOutsidePointerEvents:a,onEscapeKeyDown:c,onPointerDownOutside:l,onFocusOutside:u,onInteractOutside:d,...f}=e,h=Me(qe,n),m=yt(n);return Bt(),p.jsx(ut,{asChild:!0,loop:!0,trapped:o,onMountAutoFocus:r,onUnmountAutoFocus:s,children:p.jsx(Ze,{asChild:!0,disableOutsidePointerEvents:a,onInteractOutside:d,onEscapeKeyDown:c,onPointerDownOutside:l,onFocusOutside:u,onDismiss:()=>h.onOpenChange(!1),children:p.jsx(qt,{"data-state":ga(h.open),role:"dialog",id:h.contentId,...m,...f,ref:t,style:{...f.style,"--radix-popover-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-popover-content-available-width":"var(--radix-popper-available-width)","--radix-popover-content-available-height":"var(--radix-popper-available-height)","--radix-popover-trigger-width":"var(--radix-popper-anchor-width)","--radix-popover-trigger-height":"var(--radix-popper-anchor-height)"}})})})}),ma="PopoverClose",ah=i.forwardRef((e,t)=>{const{__scopePopover:n,...o}=e,r=Me(ma,n);return p.jsx(D.button,{type:"button",...o,ref:t,onClick:R(e.onClick,()=>r.onOpenChange(!1))})});ah.displayName=ma;var ch="PopoverArrow",lh=i.forwardRef((e,t)=>{const{__scopePopover:n,...o}=e,r=yt(n);return p.jsx(Zt,{...r,...o,ref:t})});lh.displayName=ch;function ga(e){return e?"open":"closed"}var lv=ca,uv=ua,dv=fa,fv=pa,pv=ha,pn="Switch",[uh]=Q(pn),[dh,fh]=uh(pn),wa=i.forwardRef((e,t)=>{const{__scopeSwitch:n,name:o,checked:r,defaultChecked:s,required:a,disabled:c,value:l="on",onCheckedChange:u,form:d,...f}=e,[h,m]=i.useState(null),w=j(t,b=>m(b)),v=i.useRef(!1),g=h?d||!!h.closest("form"):!0,[y,x]=me({prop:r,defaultProp:s??!1,onChange:u,caller:pn});return p.jsxs(dh,{scope:n,checked:y,disabled:c,children:[p.jsx(D.button,{type:"button",role:"switch","aria-checked":y,"aria-required":a,"data-state":Ca(y),"data-disabled":c?"":void 0,disabled:c,value:l,...f,ref:w,onClick:R(e.onClick,b=>{x(C=>!C),g&&(v.current=b.isPropagationStopped(),v.current||b.stopPropagation())})}),g&&p.jsx(ba,{control:h,bubbles:!v.current,name:o,value:l,checked:y,required:a,disabled:c,form:d,style:{transform:"translateX(-100%)"}})]})});wa.displayName=pn;var ya="SwitchThumb",xa=i.forwardRef((e,t)=>{const{__scopeSwitch:n,...o}=e,r=fh(ya,n);return p.jsx(D.span,{"data-state":Ca(r.checked),"data-disabled":r.disabled?"":void 0,...o,ref:t})});xa.displayName=ya;var ph="SwitchBubbleInput",ba=i.forwardRef(({__scopeSwitch:e,control:t,checked:n,bubbles:o=!0,...r},s)=>{const a=i.useRef(null),c=j(a,s),l=ei(n),u=Vr(t);return i.useEffect(()=>{const d=a.current;if(!d)return;const f=window.HTMLInputElement.prototype,m=Object.getOwnPropertyDescriptor(f,"checked").set;if(l!==n&&m){const w=new Event("click",{bubbles:o});m.call(d,n),d.dispatchEvent(w)}},[l,n,o]),p.jsx("input",{type:"checkbox","aria-hidden":!0,defaultChecked:n,...r,tabIndex:-1,ref:c,style:{...r.style,...u,position:"absolute",pointerEvents:"none",opacity:0,margin:0}})});ba.displayName=ph;function Ca(e){return e?"checked":"unchecked"}var hv=wa,vv=xa;export{mh as $,Ch as A,Qh as B,Cl as C,El as D,Jh as E,nv as F,Vh as G,Uh as H,Gh as I,Xh as J,fv as K,$h as L,pv as M,lv as N,bl as O,xl as P,uv as Q,wl as R,vh as S,Sl as T,dv as U,Rh as V,rv as W,sv as X,iv as Y,av as Z,cv as _,_r as a,_h as a0,Mh as a1,Lh as a2,jh as a3,Nh as a4,Dh as a5,Ih as a6,Oh as a7,hv as a8,vv as a9,gh as b,wh as c,yh as d,xh as e,bh as f,Sh as g,ud as h,dd as i,p as j,Eh as k,Th as l,Ph as m,Ah as n,Fh as o,Wh as p,kh as q,Bh as r,Hh as s,ev as t,tv as u,Kh as v,zh as w,Yh as x,qh as y,Zh as z};
51
+ For more information, see https://radix-ui.com/primitives/docs/components/alert-dialog`;return i.useEffect(()=>{document.getElementById(e.current?.getAttribute("aria-describedby"))||console.warn(t)},[t,e]),null},_h=Rs,Ih=Ps,Oh=As,Mh=Ts,Dh=Ds,Nh=Ls,Lh=Is,jh=Ms;function qo(e){const t=kd(e),n=i.forwardRef((o,r)=>{const{children:s,...a}=o,c=i.Children.toArray(s),l=c.find(Fd);if(l){const u=l.props.children,d=c.map(f=>f===l?i.Children.count(u)>1?i.Children.only(null):i.isValidElement(u)?u.props.children:null:f);return p.jsx(t,{...a,ref:r,children:i.isValidElement(u)?i.cloneElement(u,void 0,d):null})}return p.jsx(t,{...a,ref:r,children:s})});return n.displayName=`${e}.Slot`,n}function kd(e){const t=i.forwardRef((n,o)=>{const{children:r,...s}=n;if(i.isValidElement(r)){const a=Bd(r),c=Wd(s,r.props);return r.type!==i.Fragment&&(c.ref=o?we(o,a):a),i.cloneElement(r,c)}return i.Children.count(r)>1?i.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var $d=Symbol("radix.slottable");function Fd(e){return i.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===$d}function Wd(e,t){const n={...t};for(const o in t){const r=e[o],s=t[o];/^on[A-Z]/.test(o)?r&&s?n[o]=(...c)=>{const l=s(...c);return r(...c),l}:r&&(n[o]=r):o==="style"?n[o]={...r,...s}:o==="className"&&(n[o]=[r,s].filter(Boolean).join(" "))}return{...e,...n}}function Bd(e){let t=Object.getOwnPropertyDescriptor(e.props,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}function uo(e){const t=e+"CollectionProvider",[n,o]=Q(t),[r,s]=n(t,{collectionRef:{current:null},itemMap:new Map}),a=v=>{const{scope:g,children:y}=v,x=Ne.useRef(null),b=Ne.useRef(new Map).current;return p.jsx(r,{scope:g,itemMap:b,collectionRef:x,children:y})};a.displayName=t;const c=e+"CollectionSlot",l=qo(c),u=Ne.forwardRef((v,g)=>{const{scope:y,children:x}=v,b=s(c,y),C=j(g,b.collectionRef);return p.jsx(l,{ref:C,children:x})});u.displayName=c;const d=e+"CollectionItemSlot",f="data-radix-collection-item",h=qo(d),m=Ne.forwardRef((v,g)=>{const{scope:y,children:x,...b}=v,C=Ne.useRef(null),S=j(g,C),A=s(d,y);return Ne.useEffect(()=>(A.itemMap.set(C,{ref:C,...b}),()=>void A.itemMap.delete(C))),p.jsx(h,{[f]:"",ref:S,children:x})});m.displayName=d;function w(v){const g=s(e+"CollectionConsumer",v);return Ne.useCallback(()=>{const x=g.collectionRef.current;if(!x)return[];const b=Array.from(x.querySelectorAll(`[${f}]`));return Array.from(g.itemMap.values()).sort((A,E)=>b.indexOf(A.ref.current)-b.indexOf(E.ref.current))},[g.collectionRef,g.itemMap])}return[{Provider:a,Slot:u,ItemSlot:m},w,o]}var An="rovingFocusGroup.onEntryFocus",Vd={bubbles:!1,cancelable:!0},mt="RovingFocusGroup",[jn,js,Hd]=uo(mt),[Ud,on]=Q(mt,[Hd]),[Gd,Kd]=Ud(mt),ks=i.forwardRef((e,t)=>p.jsx(jn.Provider,{scope:e.__scopeRovingFocusGroup,children:p.jsx(jn.Slot,{scope:e.__scopeRovingFocusGroup,children:p.jsx(zd,{...e,ref:t})})}));ks.displayName=mt;var zd=i.forwardRef((e,t)=>{const{__scopeRovingFocusGroup:n,orientation:o,loop:r=!1,dir:s,currentTabStopId:a,defaultCurrentTabStopId:c,onCurrentTabStopIdChange:l,onEntryFocus:u,preventScrollOnEntryFocus:d=!1,...f}=e,h=i.useRef(null),m=j(t,h),w=vt(s),[v,g]=me({prop:a,defaultProp:c??null,onChange:l,caller:mt}),[y,x]=i.useState(!1),b=X(u),C=js(n),S=i.useRef(!1),[A,E]=i.useState(0);return i.useEffect(()=>{const _=h.current;if(_)return _.addEventListener(An,b),()=>_.removeEventListener(An,b)},[b]),p.jsx(Gd,{scope:n,orientation:o,dir:w,loop:r,currentTabStopId:v,onItemFocus:i.useCallback(_=>g(_),[g]),onItemShiftTab:i.useCallback(()=>x(!0),[]),onFocusableItemAdd:i.useCallback(()=>E(_=>_+1),[]),onFocusableItemRemove:i.useCallback(()=>E(_=>_-1),[]),children:p.jsx(D.div,{tabIndex:y||A===0?-1:0,"data-orientation":o,...f,ref:m,style:{outline:"none",...e.style},onMouseDown:R(e.onMouseDown,()=>{S.current=!0}),onFocus:R(e.onFocus,_=>{const I=!S.current;if(_.target===_.currentTarget&&I&&!y){const O=new CustomEvent(An,Vd);if(_.currentTarget.dispatchEvent(O),!O.defaultPrevented){const L=C().filter(N=>N.focusable),$=L.find(N=>N.active),F=L.find(N=>N.id===v),B=[$,F,...L].filter(Boolean).map(N=>N.ref.current);Ws(B,d)}}S.current=!1}),onBlur:R(e.onBlur,()=>x(!1))})})}),$s="RovingFocusGroupItem",Fs=i.forwardRef((e,t)=>{const{__scopeRovingFocusGroup:n,focusable:o=!0,active:r=!1,tabStopId:s,children:a,...c}=e,l=ne(),u=s||l,d=Kd($s,n),f=d.currentTabStopId===u,h=js(n),{onFocusableItemAdd:m,onFocusableItemRemove:w,currentTabStopId:v}=d;return i.useEffect(()=>{if(o)return m(),()=>w()},[o,m,w]),p.jsx(jn.ItemSlot,{scope:n,id:u,focusable:o,active:r,children:p.jsx(D.span,{tabIndex:f?0:-1,"data-orientation":d.orientation,...c,ref:t,onMouseDown:R(e.onMouseDown,g=>{o?d.onItemFocus(u):g.preventDefault()}),onFocus:R(e.onFocus,()=>d.onItemFocus(u)),onKeyDown:R(e.onKeyDown,g=>{if(g.key==="Tab"&&g.shiftKey){d.onItemShiftTab();return}if(g.target!==g.currentTarget)return;const y=qd(g,d.orientation,d.dir);if(y!==void 0){if(g.metaKey||g.ctrlKey||g.altKey||g.shiftKey)return;g.preventDefault();let b=h().filter(C=>C.focusable).map(C=>C.ref.current);if(y==="last")b.reverse();else if(y==="prev"||y==="next"){y==="prev"&&b.reverse();const C=b.indexOf(g.currentTarget);b=d.loop?Zd(b,C+1):b.slice(C+1)}setTimeout(()=>Ws(b))}}),children:typeof a=="function"?a({isCurrentTabStop:f,hasTabStop:v!=null}):a})})});Fs.displayName=$s;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:e==="ArrowLeft"?"ArrowRight":e==="ArrowRight"?"ArrowLeft":e}function qd(e,t,n){const o=Xd(e.key,n);if(!(t==="vertical"&&["ArrowLeft","ArrowRight"].includes(o))&&!(t==="horizontal"&&["ArrowUp","ArrowDown"].includes(o)))return Yd[o]}function Ws(e,t=!1){const n=document.activeElement;for(const o of e)if(o===n||(o.focus({preventScroll:t}),document.activeElement!==n))return}function Zd(e,t){return e.map((n,o)=>e[(t+o)%e.length])}var Bs=ks,Vs=Fs,rn="Tabs",[Jd]=Q(rn,[on]),Hs=on(),[Qd,fo]=Jd(rn),Us=i.forwardRef((e,t)=>{const{__scopeTabs:n,value:o,onValueChange:r,defaultValue:s,orientation:a="horizontal",dir:c,activationMode:l="automatic",...u}=e,d=vt(c),[f,h]=me({prop:o,onChange:r,defaultProp:s??"",caller:rn});return p.jsx(Qd,{scope:n,baseId:ne(),value:f,onValueChange:h,orientation:a,dir:d,activationMode:l,children:p.jsx(D.div,{dir:d,"data-orientation":a,...u,ref:t})})});Us.displayName=rn;var Gs="TabsList",Ks=i.forwardRef((e,t)=>{const{__scopeTabs:n,loop:o=!0,...r}=e,s=fo(Gs,n),a=Hs(n);return p.jsx(Bs,{asChild:!0,...a,orientation:s.orientation,dir:s.dir,loop:o,children:p.jsx(D.div,{role:"tablist","aria-orientation":s.orientation,...r,ref:t})})});Ks.displayName=Gs;var zs="TabsTrigger",Ys=i.forwardRef((e,t)=>{const{__scopeTabs:n,value:o,disabled:r=!1,...s}=e,a=fo(zs,n),c=Hs(n),l=Zs(a.baseId,o),u=Js(a.baseId,o),d=o===a.value;return p.jsx(Vs,{asChild:!0,...c,focusable:!r,active:d,children:p.jsx(D.button,{type:"button",role:"tab","aria-selected":d,"aria-controls":u,"data-state":d?"active":"inactive","data-disabled":r?"":void 0,disabled:r,id:l,...s,ref:t,onMouseDown:R(e.onMouseDown,f=>{!r&&f.button===0&&f.ctrlKey===!1?a.onValueChange(o):f.preventDefault()}),onKeyDown:R(e.onKeyDown,f=>{[" ","Enter"].includes(f.key)&&a.onValueChange(o)}),onFocus:R(e.onFocus,()=>{const f=a.activationMode!=="manual";!d&&!r&&f&&a.onValueChange(o)})})})});Ys.displayName=zs;var Xs="TabsContent",qs=i.forwardRef((e,t)=>{const{__scopeTabs:n,value:o,forceMount:r,children:s,...a}=e,c=fo(Xs,n),l=Zs(c.baseId,o),u=Js(c.baseId,o),d=o===c.value,f=i.useRef(d);return i.useEffect(()=>{const h=requestAnimationFrame(()=>f.current=!1);return()=>cancelAnimationFrame(h)},[]),p.jsx(Y,{present:r||d,children:({present:h})=>p.jsx(D.div,{"data-state":d?"active":"inactive","data-orientation":c.orientation,role:"tabpanel","aria-labelledby":l,hidden:!h,id:u,tabIndex:0,...a,ref:t,style:{...e.style,animationDuration:f.current?"0s":void 0},children:h&&s})})});qs.displayName=Xs;function Zs(e,t){return`${e}-trigger-${t}`}function Js(e,t){return`${e}-content-${t}`}var kh=Us,$h=Ks,Fh=Ys,Wh=qs,ef=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],tf=ef.reduce((e,t)=>{const n=Un(`Primitive.${t}`),o=i.forwardRef((r,s)=>{const{asChild:a,...c}=r,l=a?n:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),p.jsx(l,{...c,ref:s})});return o.displayName=`Primitive.${t}`,{...e,[t]:o}},{}),nf="Label",Qs=i.forwardRef((e,t)=>p.jsx(tf.label,{...e,ref:t,onMouseDown:n=>{n.target.closest("button, input, select, textarea")||(e.onMouseDown?.(n),!n.defaultPrevented&&n.detail>1&&n.preventDefault())}}));Qs.displayName=nf;var Bh=Qs;function of(e){const t=rf(e),n=i.forwardRef((o,r)=>{const{children:s,...a}=o,c=i.Children.toArray(s),l=c.find(af);if(l){const u=l.props.children,d=c.map(f=>f===l?i.Children.count(u)>1?i.Children.only(null):i.isValidElement(u)?u.props.children:null:f);return p.jsx(t,{...a,ref:r,children:i.isValidElement(u)?i.cloneElement(u,void 0,d):null})}return p.jsx(t,{...a,ref:r,children:s})});return n.displayName=`${e}.Slot`,n}function rf(e){const t=i.forwardRef((n,o)=>{const{children:r,...s}=n;if(i.isValidElement(r)){const a=lf(r),c=cf(s,r.props);return r.type!==i.Fragment&&(c.ref=o?we(o,a):a),i.cloneElement(r,c)}return i.Children.count(r)>1?i.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var sf=Symbol("radix.slottable");function af(e){return i.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===sf}function cf(e,t){const n={...t};for(const o in t){const r=e[o],s=t[o];/^on[A-Z]/.test(o)?r&&s?n[o]=(...c)=>{const l=s(...c);return r(...c),l}:r&&(n[o]=r):o==="style"?n[o]={...r,...s}:o==="className"&&(n[o]=[r,s].filter(Boolean).join(" "))}return{...e,...n}}function lf(e){let t=Object.getOwnPropertyDescriptor(e.props,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}function ei(e){const 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 uf=[" ","Enter","ArrowUp","ArrowDown"],df=[" ","Enter"],ke="Select",[sn,an,ff]=uo(ke),[tt]=Q(ke,[ff,_e]),cn=_e(),[pf,Ie]=tt(ke),[hf,vf]=tt(ke),ti=e=>{const{__scopeSelect:t,children:n,open:o,defaultOpen:r,onOpenChange:s,value:a,defaultValue:c,onValueChange:l,dir:u,name:d,autoComplete:f,disabled:h,required:m,form:w}=e,v=cn(t),[g,y]=i.useState(null),[x,b]=i.useState(null),[C,S]=i.useState(!1),A=vt(u),[E,_]=me({prop:o,defaultProp:r??!1,onChange:s,caller:ke}),[I,O]=me({prop:a,defaultProp:c,onChange:l,caller:ke}),L=i.useRef(null),$=g?w||!!g.closest("form"):!0,[F,k]=i.useState(new Set),B=Array.from(F).map(N=>N.props.value).join(";");return p.jsx(Xt,{...v,children:p.jsxs(pf,{required:m,scope:t,trigger:g,onTriggerChange:y,valueNode:x,onValueNodeChange:b,valueNodeHasChildren:C,onValueNodeHasChildrenChange:S,contentId:ne(),value:I,onValueChange:O,open:E,onOpenChange:_,dir:A,triggerPointerDownPosRef:L,disabled:h,children:[p.jsx(sn.Provider,{scope:t,children:p.jsx(hf,{scope:e.__scopeSelect,onNativeOptionAdd:i.useCallback(N=>{k(W=>new Set(W).add(N))},[]),onNativeOptionRemove:i.useCallback(N=>{k(W=>{const M=new Set(W);return M.delete(N),M})},[]),children:n})}),$?p.jsxs(Pi,{"aria-hidden":!0,required:m,tabIndex:-1,name:d,autoComplete:f,value:I,onChange:N=>O(N.target.value),disabled:h,form:w,children:[I===void 0?p.jsx("option",{value:""}):null,Array.from(F)]},B):null]})})};ti.displayName=ke;var ni="SelectTrigger",oi=i.forwardRef((e,t)=>{const{__scopeSelect:n,disabled:o=!1,...r}=e,s=cn(n),a=Ie(ni,n),c=a.disabled||o,l=j(t,a.onTriggerChange),u=an(n),d=i.useRef("touch"),[f,h,m]=Ti(v=>{const g=u().filter(b=>!b.disabled),y=g.find(b=>b.value===a.value),x=_i(g,v,y);x!==void 0&&a.onValueChange(x.value)}),w=v=>{c||(a.onOpenChange(!0),m()),v&&(a.triggerPointerDownPosRef.current={x:Math.round(v.pageX),y:Math.round(v.pageY)})};return p.jsx(pt,{asChild:!0,...s,children:p.jsx(D.button,{type:"button",role:"combobox","aria-controls":a.contentId,"aria-expanded":a.open,"aria-required":a.required,"aria-autocomplete":"none",dir:a.dir,"data-state":a.open?"open":"closed",disabled:c,"data-disabled":c?"":void 0,"data-placeholder":Ai(a.value)?"":void 0,...r,ref:l,onClick:R(r.onClick,v=>{v.currentTarget.focus(),d.current!=="mouse"&&w(v)}),onPointerDown:R(r.onPointerDown,v=>{d.current=v.pointerType;const g=v.target;g.hasPointerCapture(v.pointerId)&&g.releasePointerCapture(v.pointerId),v.button===0&&v.ctrlKey===!1&&v.pointerType==="mouse"&&(w(v),v.preventDefault())}),onKeyDown:R(r.onKeyDown,v=>{const g=f.current!=="";!(v.ctrlKey||v.altKey||v.metaKey)&&v.key.length===1&&h(v.key),!(g&&v.key===" ")&&uf.includes(v.key)&&(w(),v.preventDefault())})})})});oi.displayName=ni;var ri="SelectValue",si=i.forwardRef((e,t)=>{const{__scopeSelect:n,className:o,style:r,children:s,placeholder:a="",...c}=e,l=Ie(ri,n),{onValueNodeHasChildrenChange:u}=l,d=s!==void 0,f=j(t,l.onValueNodeChange);return z(()=>{u(d)},[u,d]),p.jsx(D.span,{...c,ref:f,style:{pointerEvents:"none"},children:Ai(l.value)?p.jsx(p.Fragment,{children:a}):s})});si.displayName=ri;var mf="SelectIcon",ii=i.forwardRef((e,t)=>{const{__scopeSelect:n,children:o,...r}=e;return p.jsx(D.span,{"aria-hidden":!0,...r,ref:t,children:o||"▼"})});ii.displayName=mf;var gf="SelectPortal",ai=e=>p.jsx(Je,{asChild:!0,...e});ai.displayName=gf;var $e="SelectContent",ci=i.forwardRef((e,t)=>{const n=Ie($e,e.__scopeSelect),[o,r]=i.useState();if(z(()=>{r(new DocumentFragment)},[]),!n.open){const s=o;return s?Wt.createPortal(p.jsx(li,{scope:e.__scopeSelect,children:p.jsx(sn.Slot,{scope:e.__scopeSelect,children:p.jsx("div",{children:e.children})})}),s):null}return p.jsx(ui,{...e,ref:t})});ci.displayName=$e;var le=10,[li,Oe]=tt($e),wf="SelectContentImpl",yf=of("SelectContent.RemoveScroll"),ui=i.forwardRef((e,t)=>{const{__scopeSelect:n,position:o="item-aligned",onCloseAutoFocus:r,onEscapeKeyDown:s,onPointerDownOutside:a,side:c,sideOffset:l,align:u,alignOffset:d,arrowPadding:f,collisionBoundary:h,collisionPadding:m,sticky:w,hideWhenDetached:v,avoidCollisions:g,...y}=e,x=Ie($e,n),[b,C]=i.useState(null),[S,A]=i.useState(null),E=j(t,T=>C(T)),[_,I]=i.useState(null),[O,L]=i.useState(null),$=an(n),[F,k]=i.useState(!1),B=i.useRef(!1);i.useEffect(()=>{if(b)return Ht(b)},[b]),Bt();const N=i.useCallback(T=>{const[V,...Z]=$().map(K=>K.ref.current),[H]=Z.slice(-1),U=document.activeElement;for(const K of T)if(K===U||(K?.scrollIntoView({block:"nearest"}),K===V&&S&&(S.scrollTop=0),K===H&&S&&(S.scrollTop=S.scrollHeight),K?.focus(),document.activeElement!==U))return},[$,S]),W=i.useCallback(()=>N([_,b]),[N,_,b]);i.useEffect(()=>{F&&W()},[F,W]);const{onOpenChange:M,triggerPointerDownPosRef:P}=x;i.useEffect(()=>{if(b){let T={x:0,y:0};const V=H=>{T={x:Math.abs(Math.round(H.pageX)-(P.current?.x??0)),y:Math.abs(Math.round(H.pageY)-(P.current?.y??0))}},Z=H=>{T.x<=10&&T.y<=10?H.preventDefault():b.contains(H.target)||M(!1),document.removeEventListener("pointermove",V),P.current=null};return P.current!==null&&(document.addEventListener("pointermove",V),document.addEventListener("pointerup",Z,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",V),document.removeEventListener("pointerup",Z,{capture:!0})}}},[b,M,P]),i.useEffect(()=>{const T=()=>M(!1);return window.addEventListener("blur",T),window.addEventListener("resize",T),()=>{window.removeEventListener("blur",T),window.removeEventListener("resize",T)}},[M]);const[G,q]=Ti(T=>{const V=$().filter(U=>!U.disabled),Z=V.find(U=>U.ref.current===document.activeElement),H=_i(V,T,Z);H&&setTimeout(()=>H.ref.current.focus())}),ce=i.useCallback((T,V,Z)=>{const H=!B.current&&!Z;(x.value!==void 0&&x.value===V||H)&&(I(T),H&&(B.current=!0))},[x.value]),be=i.useCallback(()=>b?.focus(),[b]),re=i.useCallback((T,V,Z)=>{const H=!B.current&&!Z;(x.value!==void 0&&x.value===V||H)&&L(T)},[x.value]),Ce=o==="popper"?kn:di,ee=Ce===kn?{side:c,sideOffset:l,align:u,alignOffset:d,arrowPadding:f,collisionBoundary:h,collisionPadding:m,sticky:w,hideWhenDetached:v,avoidCollisions:g}:{};return p.jsx(li,{scope:n,content:b,viewport:S,onViewportChange:A,itemRefCallback:ce,selectedItem:_,onItemLeave:be,itemTextRefCallback:re,focusSelectedItem:W,selectedItemText:O,position:o,isPositioned:F,searchRef:G,children:p.jsx(dt,{as:yf,allowPinchZoom:!0,children:p.jsx(ut,{asChild:!0,trapped:x.open,onMountAutoFocus:T=>{T.preventDefault()},onUnmountAutoFocus:R(r,T=>{x.trigger?.focus({preventScroll:!0}),T.preventDefault()}),children:p.jsx(Ze,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:s,onPointerDownOutside:a,onFocusOutside:T=>T.preventDefault(),onDismiss:()=>x.onOpenChange(!1),children:p.jsx(Ce,{role:"listbox",id:x.contentId,"data-state":x.open?"open":"closed",dir:x.dir,onContextMenu:T=>T.preventDefault(),...y,...ee,onPlaced:()=>k(!0),ref:E,style:{display:"flex",flexDirection:"column",outline:"none",...y.style},onKeyDown:R(y.onKeyDown,T=>{const V=T.ctrlKey||T.altKey||T.metaKey;if(T.key==="Tab"&&T.preventDefault(),!V&&T.key.length===1&&q(T.key),["ArrowUp","ArrowDown","Home","End"].includes(T.key)){let H=$().filter(U=>!U.disabled).map(U=>U.ref.current);if(["ArrowUp","End"].includes(T.key)&&(H=H.slice().reverse()),["ArrowUp","ArrowDown"].includes(T.key)){const U=T.target,K=H.indexOf(U);H=H.slice(K+1)}setTimeout(()=>N(H)),T.preventDefault()}})})})})})})});ui.displayName=wf;var xf="SelectItemAlignedPosition",di=i.forwardRef((e,t)=>{const{__scopeSelect:n,onPlaced:o,...r}=e,s=Ie($e,n),a=Oe($e,n),[c,l]=i.useState(null),[u,d]=i.useState(null),f=j(t,E=>d(E)),h=an(n),m=i.useRef(!1),w=i.useRef(!0),{viewport:v,selectedItem:g,selectedItemText:y,focusSelectedItem:x}=a,b=i.useCallback(()=>{if(s.trigger&&s.valueNode&&c&&u&&v&&g&&y){const E=s.trigger.getBoundingClientRect(),_=u.getBoundingClientRect(),I=s.valueNode.getBoundingClientRect(),O=y.getBoundingClientRect();if(s.dir!=="rtl"){const U=O.left-_.left,K=I.left-U,se=E.left-K,De=E.width+se,hn=Math.max(De,_.width),vn=window.innerWidth-le,mn=Ln(K,[le,Math.max(le,vn-hn)]);c.style.minWidth=De+"px",c.style.left=mn+"px"}else{const U=_.right-O.right,K=window.innerWidth-I.right-U,se=window.innerWidth-E.right-K,De=E.width+se,hn=Math.max(De,_.width),vn=window.innerWidth-le,mn=Ln(K,[le,Math.max(le,vn-hn)]);c.style.minWidth=De+"px",c.style.right=mn+"px"}const L=h(),$=window.innerHeight-le*2,F=v.scrollHeight,k=window.getComputedStyle(u),B=parseInt(k.borderTopWidth,10),N=parseInt(k.paddingTop,10),W=parseInt(k.borderBottomWidth,10),M=parseInt(k.paddingBottom,10),P=B+N+F+M+W,G=Math.min(g.offsetHeight*5,P),q=window.getComputedStyle(v),ce=parseInt(q.paddingTop,10),be=parseInt(q.paddingBottom,10),re=E.top+E.height/2-le,Ce=$-re,ee=g.offsetHeight/2,T=g.offsetTop+ee,V=B+N+T,Z=P-V;if(V<=re){const U=L.length>0&&g===L[L.length-1].ref.current;c.style.bottom="0px";const K=u.clientHeight-v.offsetTop-v.offsetHeight,se=Math.max(Ce,ee+(U?be:0)+K+W),De=V+se;c.style.height=De+"px"}else{const U=L.length>0&&g===L[0].ref.current;c.style.top="0px";const se=Math.max(re,B+v.offsetTop+(U?ce:0)+ee)+Z;c.style.height=se+"px",v.scrollTop=V-re+v.offsetTop}c.style.margin=`${le}px 0`,c.style.minHeight=G+"px",c.style.maxHeight=$+"px",o?.(),requestAnimationFrame(()=>m.current=!0)}},[h,s.trigger,s.valueNode,c,u,v,g,y,s.dir,o]);z(()=>b(),[b]);const[C,S]=i.useState();z(()=>{u&&S(window.getComputedStyle(u).zIndex)},[u]);const A=i.useCallback(E=>{E&&w.current===!0&&(b(),x?.(),w.current=!1)},[b,x]);return p.jsx(Cf,{scope:n,contentWrapper:c,shouldExpandOnScrollRef:m,onScrollButtonChange:A,children:p.jsx("div",{ref:l,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:C},children:p.jsx(D.div,{...r,ref:f,style:{boxSizing:"border-box",maxHeight:"100%",...r.style}})})})});di.displayName=xf;var bf="SelectPopperPosition",kn=i.forwardRef((e,t)=>{const{__scopeSelect:n,align:o="start",collisionPadding:r=le,...s}=e,a=cn(n);return p.jsx(qt,{...a,...s,ref:t,align:o,collisionPadding:r,style:{boxSizing:"border-box",...s.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)"}})});kn.displayName=bf;var[Cf,po]=tt($e,{}),$n="SelectViewport",fi=i.forwardRef((e,t)=>{const{__scopeSelect:n,nonce:o,...r}=e,s=Oe($n,n),a=po($n,n),c=j(t,s.onViewportChange),l=i.useRef(0);return p.jsxs(p.Fragment,{children:[p.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:o}),p.jsx(sn.Slot,{scope:n,children:p.jsx(D.div,{"data-radix-select-viewport":"",role:"presentation",...r,ref:c,style:{position:"relative",flex:1,overflow:"hidden auto",...r.style},onScroll:R(r.onScroll,u=>{const d=u.currentTarget,{contentWrapper:f,shouldExpandOnScrollRef:h}=a;if(h?.current&&f){const m=Math.abs(l.current-d.scrollTop);if(m>0){const w=window.innerHeight-le*2,v=parseFloat(f.style.minHeight),g=parseFloat(f.style.height),y=Math.max(v,g);if(y<w){const x=y+m,b=Math.min(w,x),C=x-b;f.style.height=b+"px",f.style.bottom==="0px"&&(d.scrollTop=C>0?C:0,f.style.justifyContent="flex-end")}}}l.current=d.scrollTop})})})]})});fi.displayName=$n;var pi="SelectGroup",[Sf,Ef]=tt(pi),hi=i.forwardRef((e,t)=>{const{__scopeSelect:n,...o}=e,r=ne();return p.jsx(Sf,{scope:n,id:r,children:p.jsx(D.div,{role:"group","aria-labelledby":r,...o,ref:t})})});hi.displayName=pi;var vi="SelectLabel",mi=i.forwardRef((e,t)=>{const{__scopeSelect:n,...o}=e,r=Ef(vi,n);return p.jsx(D.div,{id:r.id,...o,ref:t})});mi.displayName=vi;var kt="SelectItem",[Rf,gi]=tt(kt),wi=i.forwardRef((e,t)=>{const{__scopeSelect:n,value:o,disabled:r=!1,textValue:s,...a}=e,c=Ie(kt,n),l=Oe(kt,n),u=c.value===o,[d,f]=i.useState(s??""),[h,m]=i.useState(!1),w=j(t,x=>l.itemRefCallback?.(x,o,r)),v=ne(),g=i.useRef("touch"),y=()=>{r||(c.onValueChange(o),c.onOpenChange(!1))};if(o==="")throw new 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 p.jsx(Rf,{scope:n,value:o,disabled:r,textId:v,isSelected:u,onItemTextChange:i.useCallback(x=>{f(b=>b||(x?.textContent??"").trim())},[]),children:p.jsx(sn.ItemSlot,{scope:n,value:o,disabled:r,textValue:d,children:p.jsx(D.div,{role:"option","aria-labelledby":v,"data-highlighted":h?"":void 0,"aria-selected":u&&h,"data-state":u?"checked":"unchecked","aria-disabled":r||void 0,"data-disabled":r?"":void 0,tabIndex:r?void 0:-1,...a,ref:w,onFocus:R(a.onFocus,()=>m(!0)),onBlur:R(a.onBlur,()=>m(!1)),onClick:R(a.onClick,()=>{g.current!=="mouse"&&y()}),onPointerUp:R(a.onPointerUp,()=>{g.current==="mouse"&&y()}),onPointerDown:R(a.onPointerDown,x=>{g.current=x.pointerType}),onPointerMove:R(a.onPointerMove,x=>{g.current=x.pointerType,r?l.onItemLeave?.():g.current==="mouse"&&x.currentTarget.focus({preventScroll:!0})}),onPointerLeave:R(a.onPointerLeave,x=>{x.currentTarget===document.activeElement&&l.onItemLeave?.()}),onKeyDown:R(a.onKeyDown,x=>{l.searchRef?.current!==""&&x.key===" "||(df.includes(x.key)&&y(),x.key===" "&&x.preventDefault())})})})})});wi.displayName=kt;var ot="SelectItemText",yi=i.forwardRef((e,t)=>{const{__scopeSelect:n,className:o,style:r,...s}=e,a=Ie(ot,n),c=Oe(ot,n),l=gi(ot,n),u=vf(ot,n),[d,f]=i.useState(null),h=j(t,y=>f(y),l.onItemTextChange,y=>c.itemTextRefCallback?.(y,l.value,l.disabled)),m=d?.textContent,w=i.useMemo(()=>p.jsx("option",{value:l.value,disabled:l.disabled,children:m},l.value),[l.disabled,l.value,m]),{onNativeOptionAdd:v,onNativeOptionRemove:g}=u;return z(()=>(v(w),()=>g(w)),[v,g,w]),p.jsxs(p.Fragment,{children:[p.jsx(D.span,{id:l.textId,...s,ref:h}),l.isSelected&&a.valueNode&&!a.valueNodeHasChildren?Wt.createPortal(s.children,a.valueNode):null]})});yi.displayName=ot;var xi="SelectItemIndicator",bi=i.forwardRef((e,t)=>{const{__scopeSelect:n,...o}=e;return gi(xi,n).isSelected?p.jsx(D.span,{"aria-hidden":!0,...o,ref:t}):null});bi.displayName=xi;var Fn="SelectScrollUpButton",Ci=i.forwardRef((e,t)=>{const n=Oe(Fn,e.__scopeSelect),o=po(Fn,e.__scopeSelect),[r,s]=i.useState(!1),a=j(t,o.onScrollButtonChange);return z(()=>{if(n.viewport&&n.isPositioned){let c=function(){const u=l.scrollTop>0;s(u)};const l=n.viewport;return c(),l.addEventListener("scroll",c),()=>l.removeEventListener("scroll",c)}},[n.viewport,n.isPositioned]),r?p.jsx(Ei,{...e,ref:a,onAutoScroll:()=>{const{viewport:c,selectedItem:l}=n;c&&l&&(c.scrollTop=c.scrollTop-l.offsetHeight)}}):null});Ci.displayName=Fn;var Wn="SelectScrollDownButton",Si=i.forwardRef((e,t)=>{const n=Oe(Wn,e.__scopeSelect),o=po(Wn,e.__scopeSelect),[r,s]=i.useState(!1),a=j(t,o.onScrollButtonChange);return z(()=>{if(n.viewport&&n.isPositioned){let c=function(){const u=l.scrollHeight-l.clientHeight,d=Math.ceil(l.scrollTop)<u;s(d)};const l=n.viewport;return c(),l.addEventListener("scroll",c),()=>l.removeEventListener("scroll",c)}},[n.viewport,n.isPositioned]),r?p.jsx(Ei,{...e,ref:a,onAutoScroll:()=>{const{viewport:c,selectedItem:l}=n;c&&l&&(c.scrollTop=c.scrollTop+l.offsetHeight)}}):null});Si.displayName=Wn;var Ei=i.forwardRef((e,t)=>{const{__scopeSelect:n,onAutoScroll:o,...r}=e,s=Oe("SelectScrollButton",n),a=i.useRef(null),c=an(n),l=i.useCallback(()=>{a.current!==null&&(window.clearInterval(a.current),a.current=null)},[]);return i.useEffect(()=>()=>l(),[l]),z(()=>{c().find(d=>d.ref.current===document.activeElement)?.ref.current?.scrollIntoView({block:"nearest"})},[c]),p.jsx(D.div,{"aria-hidden":!0,...r,ref:t,style:{flexShrink:0,...r.style},onPointerDown:R(r.onPointerDown,()=>{a.current===null&&(a.current=window.setInterval(o,50))}),onPointerMove:R(r.onPointerMove,()=>{s.onItemLeave?.(),a.current===null&&(a.current=window.setInterval(o,50))}),onPointerLeave:R(r.onPointerLeave,()=>{l()})})}),Pf="SelectSeparator",Ri=i.forwardRef((e,t)=>{const{__scopeSelect:n,...o}=e;return p.jsx(D.div,{"aria-hidden":!0,...o,ref:t})});Ri.displayName=Pf;var Bn="SelectArrow",Af=i.forwardRef((e,t)=>{const{__scopeSelect:n,...o}=e,r=cn(n),s=Ie(Bn,n),a=Oe(Bn,n);return s.open&&a.position==="popper"?p.jsx(Zt,{...r,...o,ref:t}):null});Af.displayName=Bn;var Tf="SelectBubbleInput",Pi=i.forwardRef(({__scopeSelect:e,value:t,...n},o)=>{const r=i.useRef(null),s=j(o,r),a=ei(t);return i.useEffect(()=>{const c=r.current;if(!c)return;const l=window.HTMLSelectElement.prototype,d=Object.getOwnPropertyDescriptor(l,"value").set;if(a!==t&&d){const f=new Event("change",{bubbles:!0});d.call(c,t),c.dispatchEvent(f)}},[a,t]),p.jsx(D.select,{...n,style:{...Jr,...n.style},ref:s,defaultValue:t})});Pi.displayName=Tf;function Ai(e){return e===""||e===void 0}function Ti(e){const t=X(e),n=i.useRef(""),o=i.useRef(0),r=i.useCallback(a=>{const c=n.current+a;t(c),(function l(u){n.current=u,window.clearTimeout(o.current),u!==""&&(o.current=window.setTimeout(()=>l(""),1e3))})(c)},[t]),s=i.useCallback(()=>{n.current="",window.clearTimeout(o.current)},[]);return i.useEffect(()=>()=>window.clearTimeout(o.current),[]),[n,r,s]}function _i(e,t,n){const r=t.length>1&&Array.from(t).every(u=>u===t[0])?t[0]:t,s=n?e.indexOf(n):-1;let a=_f(e,Math.max(s,0));r.length===1&&(a=a.filter(u=>u!==n));const l=a.find(u=>u.textValue.toLowerCase().startsWith(r.toLowerCase()));return l!==n?l:void 0}function _f(e,t){return e.map((n,o)=>e[(t+o)%e.length])}var Vh=ti,Hh=oi,Uh=si,Gh=ii,Kh=ai,zh=ci,Yh=fi,Xh=hi,qh=mi,Zh=wi,Jh=yi,Qh=bi,ev=Ci,tv=Si,nv=Ri,ln="Switch",[If]=Q(ln),[Of,Mf]=If(ln),Ii=i.forwardRef((e,t)=>{const{__scopeSwitch:n,name:o,checked:r,defaultChecked:s,required:a,disabled:c,value:l="on",onCheckedChange:u,form:d,...f}=e,[h,m]=i.useState(null),w=j(t,b=>m(b)),v=i.useRef(!1),g=h?d||!!h.closest("form"):!0,[y,x]=me({prop:r,defaultProp:s??!1,onChange:u,caller:ln});return p.jsxs(Of,{scope:n,checked:y,disabled:c,children:[p.jsx(D.button,{type:"button",role:"switch","aria-checked":y,"aria-required":a,"data-state":Ni(y),"data-disabled":c?"":void 0,disabled:c,value:l,...f,ref:w,onClick:R(e.onClick,b=>{x(C=>!C),g&&(v.current=b.isPropagationStopped(),v.current||b.stopPropagation())})}),g&&p.jsx(Di,{control:h,bubbles:!v.current,name:o,value:l,checked:y,required:a,disabled:c,form:d,style:{transform:"translateX(-100%)"}})]})});Ii.displayName=ln;var Oi="SwitchThumb",Mi=i.forwardRef((e,t)=>{const{__scopeSwitch:n,...o}=e,r=Mf(Oi,n);return p.jsx(D.span,{"data-state":Ni(r.checked),"data-disabled":r.disabled?"":void 0,...o,ref:t})});Mi.displayName=Oi;var Df="SwitchBubbleInput",Di=i.forwardRef(({__scopeSwitch:e,control:t,checked:n,bubbles:o=!0,...r},s)=>{const a=i.useRef(null),c=j(a,s),l=ei(n),u=Vr(t);return i.useEffect(()=>{const d=a.current;if(!d)return;const f=window.HTMLInputElement.prototype,m=Object.getOwnPropertyDescriptor(f,"checked").set;if(l!==n&&m){const w=new Event("click",{bubbles:o});m.call(d,n),d.dispatchEvent(w)}},[l,n,o]),p.jsx("input",{type:"checkbox","aria-hidden":!0,defaultChecked:n,...r,tabIndex:-1,ref:c,style:{...r.style,...u,position:"absolute",pointerEvents:"none",opacity:0,margin:0}})});Di.displayName=Df;function Ni(e){return e?"checked":"unchecked"}var ov=Ii,rv=Mi;function Nf(e){const t=Lf(e),n=i.forwardRef((o,r)=>{const{children:s,...a}=o,c=i.Children.toArray(s),l=c.find(kf);if(l){const u=l.props.children,d=c.map(f=>f===l?i.Children.count(u)>1?i.Children.only(null):i.isValidElement(u)?u.props.children:null:f);return p.jsx(t,{...a,ref:r,children:i.isValidElement(u)?i.cloneElement(u,void 0,d):null})}return p.jsx(t,{...a,ref:r,children:s})});return n.displayName=`${e}.Slot`,n}function Lf(e){const t=i.forwardRef((n,o)=>{const{children:r,...s}=n;if(i.isValidElement(r)){const a=Ff(r),c=$f(s,r.props);return r.type!==i.Fragment&&(c.ref=o?we(o,a):a),i.cloneElement(r,c)}return i.Children.count(r)>1?i.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var jf=Symbol("radix.slottable");function kf(e){return i.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===jf}function $f(e,t){const n={...t};for(const o in t){const r=e[o],s=t[o];/^on[A-Z]/.test(o)?r&&s?n[o]=(...c)=>{const l=s(...c);return r(...c),l}:r&&(n[o]=r):o==="style"?n[o]={...r,...s}:o==="className"&&(n[o]=[r,s].filter(Boolean).join(" "))}return{...e,...n}}function Ff(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 Vn=["Enter"," "],Wf=["ArrowDown","PageUp","Home"],Li=["ArrowUp","PageDown","End"],Bf=[...Wf,...Li],Vf={ltr:[...Vn,"ArrowRight"],rtl:[...Vn,"ArrowLeft"]},Hf={ltr:["ArrowLeft"],rtl:["ArrowRight"]},gt="Menu",[ct,Uf,Gf]=uo(gt),[Fe,ji]=Q(gt,[Gf,_e,on]),un=_e(),ki=on(),[Kf,We]=Fe(gt),[zf,wt]=Fe(gt),$i=e=>{const{__scopeMenu:t,open:n=!1,children:o,dir:r,onOpenChange:s,modal:a=!0}=e,c=un(t),[l,u]=i.useState(null),d=i.useRef(!1),f=X(s),h=vt(r);return i.useEffect(()=>{const m=()=>{d.current=!0,document.addEventListener("pointerdown",w,{capture:!0,once:!0}),document.addEventListener("pointermove",w,{capture:!0,once:!0})},w=()=>d.current=!1;return document.addEventListener("keydown",m,{capture:!0}),()=>{document.removeEventListener("keydown",m,{capture:!0}),document.removeEventListener("pointerdown",w,{capture:!0}),document.removeEventListener("pointermove",w,{capture:!0})}},[]),p.jsx(Xt,{...c,children:p.jsx(Kf,{scope:t,open:n,onOpenChange:f,content:l,onContentChange:u,children:p.jsx(zf,{scope:t,onClose:i.useCallback(()=>f(!1),[f]),isUsingKeyboardRef:d,dir:h,modal:a,children:o})})})};$i.displayName=gt;var Yf="MenuAnchor",ho=i.forwardRef((e,t)=>{const{__scopeMenu:n,...o}=e,r=un(n);return p.jsx(pt,{...r,...o,ref:t})});ho.displayName=Yf;var vo="MenuPortal",[Xf,Fi]=Fe(vo,{forceMount:void 0}),Wi=e=>{const{__scopeMenu:t,forceMount:n,children:o,container:r}=e,s=We(vo,t);return p.jsx(Xf,{scope:t,forceMount:n,children:p.jsx(Y,{present:n||s.open,children:p.jsx(Je,{asChild:!0,container:r,children:o})})})};Wi.displayName=vo;var ie="MenuContent",[qf,mo]=Fe(ie),Bi=i.forwardRef((e,t)=>{const n=Fi(ie,e.__scopeMenu),{forceMount:o=n.forceMount,...r}=e,s=We(ie,e.__scopeMenu),a=wt(ie,e.__scopeMenu);return p.jsx(ct.Provider,{scope:e.__scopeMenu,children:p.jsx(Y,{present:o||s.open,children:p.jsx(ct.Slot,{scope:e.__scopeMenu,children:a.modal?p.jsx(Zf,{...r,ref:t}):p.jsx(Jf,{...r,ref:t})})})})}),Zf=i.forwardRef((e,t)=>{const n=We(ie,e.__scopeMenu),o=i.useRef(null),r=j(t,o);return i.useEffect(()=>{const s=o.current;if(s)return Ht(s)},[]),p.jsx(go,{...e,ref:r,trapFocus:n.open,disableOutsidePointerEvents:n.open,disableOutsideScroll:!0,onFocusOutside:R(e.onFocusOutside,s=>s.preventDefault(),{checkForDefaultPrevented:!1}),onDismiss:()=>n.onOpenChange(!1)})}),Jf=i.forwardRef((e,t)=>{const n=We(ie,e.__scopeMenu);return p.jsx(go,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,onDismiss:()=>n.onOpenChange(!1)})}),Qf=Nf("MenuContent.ScrollLock"),go=i.forwardRef((e,t)=>{const{__scopeMenu:n,loop:o=!1,trapFocus:r,onOpenAutoFocus:s,onCloseAutoFocus:a,disableOutsidePointerEvents:c,onEntryFocus:l,onEscapeKeyDown:u,onPointerDownOutside:d,onFocusOutside:f,onInteractOutside:h,onDismiss:m,disableOutsideScroll:w,...v}=e,g=We(ie,n),y=wt(ie,n),x=un(n),b=ki(n),C=Uf(n),[S,A]=i.useState(null),E=i.useRef(null),_=j(t,E,g.onContentChange),I=i.useRef(0),O=i.useRef(""),L=i.useRef(0),$=i.useRef(null),F=i.useRef("right"),k=i.useRef(0),B=w?dt:i.Fragment,N=w?{as:Qf,allowPinchZoom:!0}:void 0,W=P=>{const G=O.current+P,q=C().filter(T=>!T.disabled),ce=document.activeElement,be=q.find(T=>T.ref.current===ce)?.textValue,re=q.map(T=>T.textValue),Ce=dp(re,G,be),ee=q.find(T=>T.textValue===Ce)?.ref.current;(function T(V){O.current=V,window.clearTimeout(I.current),V!==""&&(I.current=window.setTimeout(()=>T(""),1e3))})(G),ee&&setTimeout(()=>ee.focus())};i.useEffect(()=>()=>window.clearTimeout(I.current),[]),Bt();const M=i.useCallback(P=>F.current===$.current?.side&&pp(P,$.current?.area),[]);return p.jsx(qf,{scope:n,searchRef:O,onItemEnter:i.useCallback(P=>{M(P)&&P.preventDefault()},[M]),onItemLeave:i.useCallback(P=>{M(P)||(E.current?.focus(),A(null))},[M]),onTriggerLeave:i.useCallback(P=>{M(P)&&P.preventDefault()},[M]),pointerGraceTimerRef:L,onPointerGraceIntentChange:i.useCallback(P=>{$.current=P},[]),children:p.jsx(B,{...N,children:p.jsx(ut,{asChild:!0,trapped:r,onMountAutoFocus:R(s,P=>{P.preventDefault(),E.current?.focus({preventScroll:!0})}),onUnmountAutoFocus:a,children:p.jsx(Ze,{asChild:!0,disableOutsidePointerEvents:c,onEscapeKeyDown:u,onPointerDownOutside:d,onFocusOutside:f,onInteractOutside:h,onDismiss:m,children:p.jsx(Bs,{asChild:!0,...b,dir:y.dir,orientation:"vertical",loop:o,currentTabStopId:S,onCurrentTabStopIdChange:A,onEntryFocus:R(l,P=>{y.isUsingKeyboardRef.current||P.preventDefault()}),preventScrollOnEntryFocus:!0,children:p.jsx(qt,{role:"menu","aria-orientation":"vertical","data-state":oa(g.open),"data-radix-menu-content":"",dir:y.dir,...x,...v,ref:_,style:{outline:"none",...v.style},onKeyDown:R(v.onKeyDown,P=>{const q=P.target.closest("[data-radix-menu-content]")===P.currentTarget,ce=P.ctrlKey||P.altKey||P.metaKey,be=P.key.length===1;q&&(P.key==="Tab"&&P.preventDefault(),!ce&&be&&W(P.key));const re=E.current;if(P.target!==re||!Bf.includes(P.key))return;P.preventDefault();const ee=C().filter(T=>!T.disabled).map(T=>T.ref.current);Li.includes(P.key)&&ee.reverse(),lp(ee)}),onBlur:R(e.onBlur,P=>{P.currentTarget.contains(P.target)||(window.clearTimeout(I.current),O.current="")}),onPointerMove:R(e.onPointerMove,lt(P=>{const G=P.target,q=k.current!==P.clientX;if(P.currentTarget.contains(G)&&q){const ce=P.clientX>k.current?"right":"left";F.current=ce,k.current=P.clientX}}))})})})})})})});Bi.displayName=ie;var ep="MenuGroup",wo=i.forwardRef((e,t)=>{const{__scopeMenu:n,...o}=e;return p.jsx(D.div,{role:"group",...o,ref:t})});wo.displayName=ep;var tp="MenuLabel",Vi=i.forwardRef((e,t)=>{const{__scopeMenu:n,...o}=e;return p.jsx(D.div,{...o,ref:t})});Vi.displayName=tp;var $t="MenuItem",Zo="menu.itemSelect",dn=i.forwardRef((e,t)=>{const{disabled:n=!1,onSelect:o,...r}=e,s=i.useRef(null),a=wt($t,e.__scopeMenu),c=mo($t,e.__scopeMenu),l=j(t,s),u=i.useRef(!1),d=()=>{const f=s.current;if(!n&&f){const h=new CustomEvent(Zo,{bubbles:!0,cancelable:!0});f.addEventListener(Zo,m=>o?.(m),{once:!0}),er(f,h),h.defaultPrevented?u.current=!1:a.onClose()}};return p.jsx(Hi,{...r,ref:l,disabled:n,onClick:R(e.onClick,d),onPointerDown:f=>{e.onPointerDown?.(f),u.current=!0},onPointerUp:R(e.onPointerUp,f=>{u.current||f.currentTarget?.click()}),onKeyDown:R(e.onKeyDown,f=>{const h=c.searchRef.current!=="";n||h&&f.key===" "||Vn.includes(f.key)&&(f.currentTarget.click(),f.preventDefault())})})});dn.displayName=$t;var Hi=i.forwardRef((e,t)=>{const{__scopeMenu:n,disabled:o=!1,textValue:r,...s}=e,a=mo($t,n),c=ki(n),l=i.useRef(null),u=j(t,l),[d,f]=i.useState(!1),[h,m]=i.useState("");return i.useEffect(()=>{const w=l.current;w&&m((w.textContent??"").trim())},[s.children]),p.jsx(ct.ItemSlot,{scope:n,disabled:o,textValue:r??h,children:p.jsx(Vs,{asChild:!0,...c,focusable:!o,children:p.jsx(D.div,{role:"menuitem","data-highlighted":d?"":void 0,"aria-disabled":o||void 0,"data-disabled":o?"":void 0,...s,ref:u,onPointerMove:R(e.onPointerMove,lt(w=>{o?a.onItemLeave(w):(a.onItemEnter(w),w.defaultPrevented||w.currentTarget.focus({preventScroll:!0}))})),onPointerLeave:R(e.onPointerLeave,lt(w=>a.onItemLeave(w))),onFocus:R(e.onFocus,()=>f(!0)),onBlur:R(e.onBlur,()=>f(!1))})})})}),np="MenuCheckboxItem",Ui=i.forwardRef((e,t)=>{const{checked:n=!1,onCheckedChange:o,...r}=e;return p.jsx(Xi,{scope:e.__scopeMenu,checked:n,children:p.jsx(dn,{role:"menuitemcheckbox","aria-checked":Ft(n)?"mixed":n,...r,ref:t,"data-state":xo(n),onSelect:R(r.onSelect,()=>o?.(Ft(n)?!0:!n),{checkForDefaultPrevented:!1})})})});Ui.displayName=np;var Gi="MenuRadioGroup",[op,rp]=Fe(Gi,{value:void 0,onValueChange:()=>{}}),Ki=i.forwardRef((e,t)=>{const{value:n,onValueChange:o,...r}=e,s=X(o);return p.jsx(op,{scope:e.__scopeMenu,value:n,onValueChange:s,children:p.jsx(wo,{...r,ref:t})})});Ki.displayName=Gi;var zi="MenuRadioItem",Yi=i.forwardRef((e,t)=>{const{value:n,...o}=e,r=rp(zi,e.__scopeMenu),s=n===r.value;return p.jsx(Xi,{scope:e.__scopeMenu,checked:s,children:p.jsx(dn,{role:"menuitemradio","aria-checked":s,...o,ref:t,"data-state":xo(s),onSelect:R(o.onSelect,()=>r.onValueChange?.(n),{checkForDefaultPrevented:!1})})})});Yi.displayName=zi;var yo="MenuItemIndicator",[Xi,sp]=Fe(yo,{checked:!1}),qi=i.forwardRef((e,t)=>{const{__scopeMenu:n,forceMount:o,...r}=e,s=sp(yo,n);return p.jsx(Y,{present:o||Ft(s.checked)||s.checked===!0,children:p.jsx(D.span,{...r,ref:t,"data-state":xo(s.checked)})})});qi.displayName=yo;var ip="MenuSeparator",Zi=i.forwardRef((e,t)=>{const{__scopeMenu:n,...o}=e;return p.jsx(D.div,{role:"separator","aria-orientation":"horizontal",...o,ref:t})});Zi.displayName=ip;var ap="MenuArrow",Ji=i.forwardRef((e,t)=>{const{__scopeMenu:n,...o}=e,r=un(n);return p.jsx(Zt,{...r,...o,ref:t})});Ji.displayName=ap;var cp="MenuSub",[sv,Qi]=Fe(cp),rt="MenuSubTrigger",ea=i.forwardRef((e,t)=>{const n=We(rt,e.__scopeMenu),o=wt(rt,e.__scopeMenu),r=Qi(rt,e.__scopeMenu),s=mo(rt,e.__scopeMenu),a=i.useRef(null),{pointerGraceTimerRef:c,onPointerGraceIntentChange:l}=s,u={__scopeMenu:e.__scopeMenu},d=i.useCallback(()=>{a.current&&window.clearTimeout(a.current),a.current=null},[]);return i.useEffect(()=>d,[d]),i.useEffect(()=>{const f=c.current;return()=>{window.clearTimeout(f),l(null)}},[c,l]),p.jsx(ho,{asChild:!0,...u,children:p.jsx(Hi,{id:r.triggerId,"aria-haspopup":"menu","aria-expanded":n.open,"aria-controls":r.contentId,"data-state":oa(n.open),...e,ref:we(t,r.onTriggerChange),onClick:f=>{e.onClick?.(f),!(e.disabled||f.defaultPrevented)&&(f.currentTarget.focus(),n.open||n.onOpenChange(!0))},onPointerMove:R(e.onPointerMove,lt(f=>{s.onItemEnter(f),!f.defaultPrevented&&!e.disabled&&!n.open&&!a.current&&(s.onPointerGraceIntentChange(null),a.current=window.setTimeout(()=>{n.onOpenChange(!0),d()},100))})),onPointerLeave:R(e.onPointerLeave,lt(f=>{d();const h=n.content?.getBoundingClientRect();if(h){const m=n.content?.dataset.side,w=m==="right",v=w?-5:5,g=h[w?"left":"right"],y=h[w?"right":"left"];s.onPointerGraceIntentChange({area:[{x:f.clientX+v,y:f.clientY},{x:g,y:h.top},{x:y,y:h.top},{x:y,y:h.bottom},{x:g,y:h.bottom}],side:m}),window.clearTimeout(c.current),c.current=window.setTimeout(()=>s.onPointerGraceIntentChange(null),300)}else{if(s.onTriggerLeave(f),f.defaultPrevented)return;s.onPointerGraceIntentChange(null)}})),onKeyDown:R(e.onKeyDown,f=>{const h=s.searchRef.current!=="";e.disabled||h&&f.key===" "||Vf[o.dir].includes(f.key)&&(n.onOpenChange(!0),n.content?.focus(),f.preventDefault())})})})});ea.displayName=rt;var ta="MenuSubContent",na=i.forwardRef((e,t)=>{const n=Fi(ie,e.__scopeMenu),{forceMount:o=n.forceMount,...r}=e,s=We(ie,e.__scopeMenu),a=wt(ie,e.__scopeMenu),c=Qi(ta,e.__scopeMenu),l=i.useRef(null),u=j(t,l);return p.jsx(ct.Provider,{scope:e.__scopeMenu,children:p.jsx(Y,{present:o||s.open,children:p.jsx(ct.Slot,{scope:e.__scopeMenu,children:p.jsx(go,{id:c.contentId,"aria-labelledby":c.triggerId,...r,ref:u,align:"start",side:a.dir==="rtl"?"left":"right",disableOutsidePointerEvents:!1,disableOutsideScroll:!1,trapFocus:!1,onOpenAutoFocus:d=>{a.isUsingKeyboardRef.current&&l.current?.focus(),d.preventDefault()},onCloseAutoFocus:d=>d.preventDefault(),onFocusOutside:R(e.onFocusOutside,d=>{d.target!==c.trigger&&s.onOpenChange(!1)}),onEscapeKeyDown:R(e.onEscapeKeyDown,d=>{a.onClose(),d.preventDefault()}),onKeyDown:R(e.onKeyDown,d=>{const f=d.currentTarget.contains(d.target),h=Hf[a.dir].includes(d.key);f&&h&&(s.onOpenChange(!1),c.trigger?.focus(),d.preventDefault())})})})})})});na.displayName=ta;function oa(e){return e?"open":"closed"}function Ft(e){return e==="indeterminate"}function xo(e){return Ft(e)?"indeterminate":e?"checked":"unchecked"}function lp(e){const t=document.activeElement;for(const n of e)if(n===t||(n.focus(),document.activeElement!==t))return}function up(e,t){return e.map((n,o)=>e[(t+o)%e.length])}function dp(e,t,n){const r=t.length>1&&Array.from(t).every(u=>u===t[0])?t[0]:t,s=n?e.indexOf(n):-1;let a=up(e,Math.max(s,0));r.length===1&&(a=a.filter(u=>u!==n));const l=a.find(u=>u.toLowerCase().startsWith(r.toLowerCase()));return l!==n?l:void 0}function fp(e,t){const{x:n,y:o}=e;let r=!1;for(let s=0,a=t.length-1;s<t.length;a=s++){const c=t[s],l=t[a],u=c.x,d=c.y,f=l.x,h=l.y;d>o!=h>o&&n<(f-u)*(o-d)/(h-d)+u&&(r=!r)}return r}function pp(e,t){if(!t)return!1;const n={x:e.clientX,y:e.clientY};return fp(n,t)}function lt(e){return t=>t.pointerType==="mouse"?e(t):void 0}var hp=$i,vp=ho,mp=Wi,gp=Bi,wp=wo,yp=Vi,xp=dn,bp=Ui,Cp=Ki,Sp=Yi,Ep=qi,Rp=Zi,Pp=Ji,Ap=ea,Tp=na,fn="DropdownMenu",[_p]=Q(fn,[ji]),J=ji(),[Ip,ra]=_p(fn),sa=e=>{const{__scopeDropdownMenu:t,children:n,dir:o,open:r,defaultOpen:s,onOpenChange:a,modal:c=!0}=e,l=J(t),u=i.useRef(null),[d,f]=me({prop:r,defaultProp:s??!1,onChange:a,caller:fn});return p.jsx(Ip,{scope:t,triggerId:ne(),triggerRef:u,contentId:ne(),open:d,onOpenChange:f,onOpenToggle:i.useCallback(()=>f(h=>!h),[f]),modal:c,children:p.jsx(hp,{...l,open:d,onOpenChange:f,dir:o,modal:c,children:n})})};sa.displayName=fn;var ia="DropdownMenuTrigger",aa=i.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,disabled:o=!1,...r}=e,s=ra(ia,n),a=J(n);return p.jsx(vp,{asChild:!0,...a,children:p.jsx(D.button,{type:"button",id:s.triggerId,"aria-haspopup":"menu","aria-expanded":s.open,"aria-controls":s.open?s.contentId:void 0,"data-state":s.open?"open":"closed","data-disabled":o?"":void 0,disabled:o,...r,ref:we(t,s.triggerRef),onPointerDown:R(e.onPointerDown,c=>{!o&&c.button===0&&c.ctrlKey===!1&&(s.onOpenToggle(),s.open||c.preventDefault())}),onKeyDown:R(e.onKeyDown,c=>{o||(["Enter"," "].includes(c.key)&&s.onOpenToggle(),c.key==="ArrowDown"&&s.onOpenChange(!0),["Enter"," ","ArrowDown"].includes(c.key)&&c.preventDefault())})})})});aa.displayName=ia;var Op="DropdownMenuPortal",ca=e=>{const{__scopeDropdownMenu:t,...n}=e,o=J(t);return p.jsx(mp,{...o,...n})};ca.displayName=Op;var la="DropdownMenuContent",ua=i.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...o}=e,r=ra(la,n),s=J(n),a=i.useRef(!1);return p.jsx(gp,{id:r.contentId,"aria-labelledby":r.triggerId,...s,...o,ref:t,onCloseAutoFocus:R(e.onCloseAutoFocus,c=>{a.current||r.triggerRef.current?.focus(),a.current=!1,c.preventDefault()}),onInteractOutside:R(e.onInteractOutside,c=>{const l=c.detail.originalEvent,u=l.button===0&&l.ctrlKey===!0,d=l.button===2||u;(!r.modal||d)&&(a.current=!0)}),style:{...e.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-dropdown-menu-content-available-width":"var(--radix-popper-available-width)","--radix-dropdown-menu-content-available-height":"var(--radix-popper-available-height)","--radix-dropdown-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-dropdown-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});ua.displayName=la;var Mp="DropdownMenuGroup",Dp=i.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...o}=e,r=J(n);return p.jsx(wp,{...r,...o,ref:t})});Dp.displayName=Mp;var Np="DropdownMenuLabel",Lp=i.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...o}=e,r=J(n);return p.jsx(yp,{...r,...o,ref:t})});Lp.displayName=Np;var jp="DropdownMenuItem",da=i.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...o}=e,r=J(n);return p.jsx(xp,{...r,...o,ref:t})});da.displayName=jp;var kp="DropdownMenuCheckboxItem",$p=i.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...o}=e,r=J(n);return p.jsx(bp,{...r,...o,ref:t})});$p.displayName=kp;var Fp="DropdownMenuRadioGroup",Wp=i.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...o}=e,r=J(n);return p.jsx(Cp,{...r,...o,ref:t})});Wp.displayName=Fp;var Bp="DropdownMenuRadioItem",Vp=i.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...o}=e,r=J(n);return p.jsx(Sp,{...r,...o,ref:t})});Vp.displayName=Bp;var Hp="DropdownMenuItemIndicator",Up=i.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...o}=e,r=J(n);return p.jsx(Ep,{...r,...o,ref:t})});Up.displayName=Hp;var Gp="DropdownMenuSeparator",Kp=i.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...o}=e,r=J(n);return p.jsx(Rp,{...r,...o,ref:t})});Kp.displayName=Gp;var zp="DropdownMenuArrow",Yp=i.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...o}=e,r=J(n);return p.jsx(Pp,{...r,...o,ref:t})});Yp.displayName=zp;var Xp="DropdownMenuSubTrigger",qp=i.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...o}=e,r=J(n);return p.jsx(Ap,{...r,...o,ref:t})});qp.displayName=Xp;var Zp="DropdownMenuSubContent",Jp=i.forwardRef((e,t)=>{const{__scopeDropdownMenu:n,...o}=e,r=J(n);return p.jsx(Tp,{...r,...o,ref:t,style:{...e.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-dropdown-menu-content-available-width":"var(--radix-popper-available-width)","--radix-dropdown-menu-content-available-height":"var(--radix-popper-available-height)","--radix-dropdown-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-dropdown-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});Jp.displayName=Zp;var iv=sa,av=aa,cv=ca,lv=ua,uv=da;function Qp(e){const t=eh(e),n=i.forwardRef((o,r)=>{const{children:s,...a}=o,c=i.Children.toArray(s),l=c.find(nh);if(l){const u=l.props.children,d=c.map(f=>f===l?i.Children.count(u)>1?i.Children.only(null):i.isValidElement(u)?u.props.children:null:f);return p.jsx(t,{...a,ref:r,children:i.isValidElement(u)?i.cloneElement(u,void 0,d):null})}return p.jsx(t,{...a,ref:r,children:s})});return n.displayName=`${e}.Slot`,n}function eh(e){const t=i.forwardRef((n,o)=>{const{children:r,...s}=n;if(i.isValidElement(r)){const a=rh(r),c=oh(s,r.props);return r.type!==i.Fragment&&(c.ref=o?we(o,a):a),i.cloneElement(r,c)}return i.Children.count(r)>1?i.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var th=Symbol("radix.slottable");function nh(e){return i.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===th}function oh(e,t){const n={...t};for(const o in t){const r=e[o],s=t[o];/^on[A-Z]/.test(o)?r&&s?n[o]=(...c)=>{const l=s(...c);return r(...c),l}:r&&(n[o]=r):o==="style"?n[o]={...r,...s}:o==="className"&&(n[o]=[r,s].filter(Boolean).join(" "))}return{...e,...n}}function rh(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 pn="Popover",[fa]=Q(pn,[_e]),yt=_e(),[sh,Me]=fa(pn),pa=e=>{const{__scopePopover:t,children:n,open:o,defaultOpen:r,onOpenChange:s,modal:a=!1}=e,c=yt(t),l=i.useRef(null),[u,d]=i.useState(!1),[f,h]=me({prop:o,defaultProp:r??!1,onChange:s,caller:pn});return p.jsx(Xt,{...c,children:p.jsx(sh,{scope:t,contentId:ne(),triggerRef:l,open:f,onOpenChange:h,onOpenToggle:i.useCallback(()=>h(m=>!m),[h]),hasCustomAnchor:u,onCustomAnchorAdd:i.useCallback(()=>d(!0),[]),onCustomAnchorRemove:i.useCallback(()=>d(!1),[]),modal:a,children:n})})};pa.displayName=pn;var ha="PopoverAnchor",va=i.forwardRef((e,t)=>{const{__scopePopover:n,...o}=e,r=Me(ha,n),s=yt(n),{onCustomAnchorAdd:a,onCustomAnchorRemove:c}=r;return i.useEffect(()=>(a(),()=>c()),[a,c]),p.jsx(pt,{...s,...o,ref:t})});va.displayName=ha;var ma="PopoverTrigger",ga=i.forwardRef((e,t)=>{const{__scopePopover:n,...o}=e,r=Me(ma,n),s=yt(n),a=j(t,r.triggerRef),c=p.jsx(D.button,{type:"button","aria-haspopup":"dialog","aria-expanded":r.open,"aria-controls":r.contentId,"data-state":Ca(r.open),...o,ref:a,onClick:R(e.onClick,r.onOpenToggle)});return r.hasCustomAnchor?c:p.jsx(pt,{asChild:!0,...s,children:c})});ga.displayName=ma;var bo="PopoverPortal",[ih,ah]=fa(bo,{forceMount:void 0}),wa=e=>{const{__scopePopover:t,forceMount:n,children:o,container:r}=e,s=Me(bo,t);return p.jsx(ih,{scope:t,forceMount:n,children:p.jsx(Y,{present:n||s.open,children:p.jsx(Je,{asChild:!0,container:r,children:o})})})};wa.displayName=bo;var qe="PopoverContent",ya=i.forwardRef((e,t)=>{const n=ah(qe,e.__scopePopover),{forceMount:o=n.forceMount,...r}=e,s=Me(qe,e.__scopePopover);return p.jsx(Y,{present:o||s.open,children:s.modal?p.jsx(lh,{...r,ref:t}):p.jsx(uh,{...r,ref:t})})});ya.displayName=qe;var ch=Qp("PopoverContent.RemoveScroll"),lh=i.forwardRef((e,t)=>{const n=Me(qe,e.__scopePopover),o=i.useRef(null),r=j(t,o),s=i.useRef(!1);return i.useEffect(()=>{const a=o.current;if(a)return Ht(a)},[]),p.jsx(dt,{as:ch,allowPinchZoom:!0,children:p.jsx(xa,{...e,ref:r,trapFocus:n.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:R(e.onCloseAutoFocus,a=>{a.preventDefault(),s.current||n.triggerRef.current?.focus()}),onPointerDownOutside:R(e.onPointerDownOutside,a=>{const c=a.detail.originalEvent,l=c.button===0&&c.ctrlKey===!0,u=c.button===2||l;s.current=u},{checkForDefaultPrevented:!1}),onFocusOutside:R(e.onFocusOutside,a=>a.preventDefault(),{checkForDefaultPrevented:!1})})})}),uh=i.forwardRef((e,t)=>{const n=Me(qe,e.__scopePopover),o=i.useRef(!1),r=i.useRef(!1);return p.jsx(xa,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:s=>{e.onCloseAutoFocus?.(s),s.defaultPrevented||(o.current||n.triggerRef.current?.focus(),s.preventDefault()),o.current=!1,r.current=!1},onInteractOutside:s=>{e.onInteractOutside?.(s),s.defaultPrevented||(o.current=!0,s.detail.originalEvent.type==="pointerdown"&&(r.current=!0));const a=s.target;n.triggerRef.current?.contains(a)&&s.preventDefault(),s.detail.originalEvent.type==="focusin"&&r.current&&s.preventDefault()}})}),xa=i.forwardRef((e,t)=>{const{__scopePopover:n,trapFocus:o,onOpenAutoFocus:r,onCloseAutoFocus:s,disableOutsidePointerEvents:a,onEscapeKeyDown:c,onPointerDownOutside:l,onFocusOutside:u,onInteractOutside:d,...f}=e,h=Me(qe,n),m=yt(n);return Bt(),p.jsx(ut,{asChild:!0,loop:!0,trapped:o,onMountAutoFocus:r,onUnmountAutoFocus:s,children:p.jsx(Ze,{asChild:!0,disableOutsidePointerEvents:a,onInteractOutside:d,onEscapeKeyDown:c,onPointerDownOutside:l,onFocusOutside:u,onDismiss:()=>h.onOpenChange(!1),children:p.jsx(qt,{"data-state":Ca(h.open),role:"dialog",id:h.contentId,...m,...f,ref:t,style:{...f.style,"--radix-popover-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-popover-content-available-width":"var(--radix-popper-available-width)","--radix-popover-content-available-height":"var(--radix-popper-available-height)","--radix-popover-trigger-width":"var(--radix-popper-anchor-width)","--radix-popover-trigger-height":"var(--radix-popper-anchor-height)"}})})})}),ba="PopoverClose",dh=i.forwardRef((e,t)=>{const{__scopePopover:n,...o}=e,r=Me(ba,n);return p.jsx(D.button,{type:"button",...o,ref:t,onClick:R(e.onClick,()=>r.onOpenChange(!1))})});dh.displayName=ba;var fh="PopoverArrow",ph=i.forwardRef((e,t)=>{const{__scopePopover:n,...o}=e,r=yt(n);return p.jsx(Zt,{...r,...o,ref:t})});ph.displayName=fh;function Ca(e){return e?"open":"closed"}var dv=pa,fv=va,pv=ga,hv=wa,vv=ya;export{mh as $,Ch as A,Qh as B,Cl as C,El as D,Jh as E,nv as F,Vh as G,Uh as H,Gh as I,Xh as J,hv as K,$h as L,vv as M,dv as N,bl as O,xl as P,fv as Q,wl as R,vh as S,Sl as T,pv as U,Rh as V,iv as W,av as X,cv as Y,lv as Z,uv as _,_r as a,_h as a0,Mh as a1,Lh as a2,jh as a3,Nh as a4,Dh as a5,Ih as a6,Oh as a7,ov as a8,rv as a9,gh as b,wh as c,yh as d,xh as e,bh as f,Sh as g,ud as h,dd as i,p as j,Eh as k,Th as l,Ph as m,Ah as n,Fh as o,Wh as p,kh as q,Bh as r,Hh as s,ev as t,tv as u,Kh as v,zh as w,Yh as x,qh as y,Zh as z};
@@ -1 +1 @@
1
- import{j as s}from"./radix-ui-CrW4rUOS.js";import{r as d}from"./react-vendor-B_CU-WTZ.js";import{C as l,a as m}from"./card-CfbpiPgZ.js";import{an as c,ao as x,ap as u,aq as h,ar as p,a as g}from"./index-PsnnKb2L.js";import{s as j,O as f,at as N,w as b}from"./icons-B9mnOvwW.js";import"./tanstack-Dbfprw6o.js";import"./notifications-dJQY2-U6.js";import"./utils-CzKF5WmX.js";import"./form-utils-kUVlZZAO.js";import"./code-highlight-DKN39ySy.js";function B(){const[t,r]=d.useState("commands"),{data:e}=c(),{data:n,isLoading:i}=x(t),o=[{id:"commands",label:"Commands",icon:j,count:e?.commands??0},{id:"skills",label:"Skills",icon:f,count:e?.skills??0},{id:"agents",label:"Agents",icon:N,count:e?.agents??0}];return s.jsxs("div",{className:"p-6 max-w-6xl mx-auto space-y-8",children:[s.jsxs("div",{children:[s.jsx("h1",{className:"text-2xl font-bold",children:"Shared Data"}),s.jsx("p",{className:"text-muted-foreground",children:"Commands, skills, and agents shared across Claude instances"})]}),e&&!e.symlinkStatus.valid&&s.jsxs(u,{variant:"warning",children:[s.jsx(b,{className:"h-4 w-4"}),s.jsx(h,{children:"Configuration Required"}),s.jsxs(p,{children:[e.symlinkStatus.message,". Run `ccs sync` to configure."]})]}),s.jsx("div",{className:"flex gap-2 border-b pb-2",children:o.map(a=>s.jsxs(g,{variant:t===a.id?"default":"ghost",size:"sm",onClick:()=>r(a.id),className:"flex items-center gap-2",children:[s.jsx(a.icon,{className:"w-4 h-4"}),a.label," (",a.count,")"]},a.id))}),s.jsx("div",{className:"mt-4",children:i?s.jsx("div",{className:"text-muted-foreground",children:"Loading..."}):n?.items.length===0?s.jsxs("div",{className:"text-muted-foreground",children:["No ",t," found"]}):s.jsx("div",{className:"grid gap-3",children:n?.items.map(a=>s.jsx(l,{children:s.jsxs(m,{children:[s.jsx("div",{className:"font-medium",children:a.name}),s.jsx("p",{className:"text-sm text-muted-foreground mt-1",children:a.description}),s.jsx("p",{className:"text-xs text-muted-foreground mt-2 font-mono truncate",children:a.path})]})},a.name))})})]})}export{B as SharedPage};
1
+ import{j as s}from"./radix-ui-uXQB-q0u.js";import{r as d}from"./react-vendor-B_CU-WTZ.js";import{C as l,a as m}from"./card-B4h-z7Tz.js";import{an as c,ao as x,ap as u,aq as h,ar as p,a as g}from"./index-g4X9FYWw.js";import{s as j,O as f,au as N,w as b}from"./icons-CSHuYZO5.js";import"./tanstack-Coed0rqz.js";import"./notifications-dJQY2-U6.js";import"./utils-CzKF5WmX.js";import"./form-utils-kUVlZZAO.js";import"./code-highlight-DKN39ySy.js";function B(){const[t,r]=d.useState("commands"),{data:e}=c(),{data:n,isLoading:i}=x(t),o=[{id:"commands",label:"Commands",icon:j,count:e?.commands??0},{id:"skills",label:"Skills",icon:f,count:e?.skills??0},{id:"agents",label:"Agents",icon:N,count:e?.agents??0}];return s.jsxs("div",{className:"p-6 max-w-6xl mx-auto space-y-8",children:[s.jsxs("div",{children:[s.jsx("h1",{className:"text-2xl font-bold",children:"Shared Data"}),s.jsx("p",{className:"text-muted-foreground",children:"Commands, skills, and agents shared across Claude instances"})]}),e&&!e.symlinkStatus.valid&&s.jsxs(u,{variant:"warning",children:[s.jsx(b,{className:"h-4 w-4"}),s.jsx(h,{children:"Configuration Required"}),s.jsxs(p,{children:[e.symlinkStatus.message,". Run `ccs sync` to configure."]})]}),s.jsx("div",{className:"flex gap-2 border-b pb-2",children:o.map(a=>s.jsxs(g,{variant:t===a.id?"default":"ghost",size:"sm",onClick:()=>r(a.id),className:"flex items-center gap-2",children:[s.jsx(a.icon,{className:"w-4 h-4"}),a.label," (",a.count,")"]},a.id))}),s.jsx("div",{className:"mt-4",children:i?s.jsx("div",{className:"text-muted-foreground",children:"Loading..."}):n?.items.length===0?s.jsxs("div",{className:"text-muted-foreground",children:["No ",t," found"]}):s.jsx("div",{className:"grid gap-3",children:n?.items.map(a=>s.jsx(l,{children:s.jsxs(m,{children:[s.jsx("div",{className:"font-medium",children:a.name}),s.jsx("p",{className:"text-sm text-muted-foreground mt-1",children:a.description}),s.jsx("p",{className:"text-xs text-muted-foreground mt-2 font-mono truncate",children:a.path})]})},a.name))})})]})}export{B as SharedPage};
@@ -1 +1 @@
1
- import{j as a,a8 as s,a9 as n}from"./radix-ui-CrW4rUOS.js";import"./react-vendor-B_CU-WTZ.js";import{c as e}from"./index-PsnnKb2L.js";function c({className:t,...r}){return a.jsx(s,{"data-slot":"switch",className:e("peer data-[state=checked]:bg-primary data-[state=unchecked]:bg-input focus-visible:border-ring focus-visible:ring-ring/50 dark:data-[state=unchecked]:bg-input/80 inline-flex h-[1.15rem] w-8 shrink-0 items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",t),...r,children:a.jsx(n,{"data-slot":"switch-thumb",className:e("bg-background dark:data-[state=unchecked]:bg-foreground dark:data-[state=checked]:bg-primary-foreground pointer-events-none block size-4 rounded-full ring-0 transition-transform data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0")})})}export{c as S};
1
+ import{j as a,a8 as s,a9 as n}from"./radix-ui-uXQB-q0u.js";import"./react-vendor-B_CU-WTZ.js";import{c as e}from"./index-g4X9FYWw.js";function c({className:t,...r}){return a.jsx(s,{"data-slot":"switch",className:e("peer data-[state=checked]:bg-primary data-[state=unchecked]:bg-input focus-visible:border-ring focus-visible:ring-ring/50 dark:data-[state=unchecked]:bg-input/80 inline-flex h-[1.15rem] w-8 shrink-0 items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",t),...r,children:a.jsx(n,{"data-slot":"switch-thumb",className:e("bg-background dark:data-[state=unchecked]:bg-foreground dark:data-[state=checked]:bg-primary-foreground pointer-events-none block size-4 rounded-full ring-0 transition-transform data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0")})})}export{c as S};