@leostera/evalkit 0.3.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/CHANGELOG.md +93 -0
  2. package/README.md +8 -7
  3. package/dist/cli.mjs +525 -72
  4. package/dist/cli.mjs.map +1 -1
  5. package/dist/dashboard/assets/index-D9NtA46z.css +2 -0
  6. package/dist/dashboard/assets/{index-CVd_Np_w.js → index-DrBwLKJD.js} +1 -1
  7. package/dist/dashboard/index.html +2 -2
  8. package/dist/files-C-U0-PWW.mjs +26 -0
  9. package/dist/files-C-U0-PWW.mjs.map +1 -0
  10. package/dist/index-db-HdZXelOS.d.mts +142 -0
  11. package/dist/index-db-HdZXelOS.d.mts.map +1 -0
  12. package/dist/index-db-vbqEGFaU.mjs +548 -0
  13. package/dist/index-db-vbqEGFaU.mjs.map +1 -0
  14. package/dist/{index-M5eRlMfd.d.mts → index-lOw0fmak.d.mts} +96 -9
  15. package/dist/index-lOw0fmak.d.mts.map +1 -0
  16. package/dist/index.d.mts +2 -2
  17. package/dist/index.mjs +2 -2
  18. package/dist/index.mjs.map +1 -1
  19. package/dist/runner.d.mts +21 -3
  20. package/dist/runner.d.mts.map +1 -1
  21. package/dist/runner.mjs +1 -1
  22. package/dist/share-worker.d.mts +51 -0
  23. package/dist/share-worker.d.mts.map +1 -0
  24. package/dist/share-worker.mjs +73 -0
  25. package/dist/share-worker.mjs.map +1 -0
  26. package/dist/share.d.mts +116 -0
  27. package/dist/share.d.mts.map +1 -0
  28. package/dist/share.mjs +4 -0
  29. package/dist/{src-DrwwgaPn.mjs → src-ButXPY8P.mjs} +20 -5
  30. package/dist/src-ButXPY8P.mjs.map +1 -0
  31. package/dist/{src-DluldGKn.mjs → src-DoPs9Yug.mjs} +11 -7
  32. package/dist/src-DoPs9Yug.mjs.map +1 -0
  33. package/dist/src-DzZueFn3.mjs +98 -0
  34. package/dist/src-DzZueFn3.mjs.map +1 -0
  35. package/package.json +10 -1
  36. package/dist/dashboard/assets/index-CMr4aulR.css +0 -2
  37. package/dist/index-M5eRlMfd.d.mts.map +0 -1
  38. package/dist/src-DluldGKn.mjs.map +0 -1
  39. package/dist/src-DrwwgaPn.mjs.map +0 -1
@@ -27,4 +27,4 @@ Migration example:
27
27
  Note: When used inside Checkbox.Group, label is optional`)}let p=(0,Y.jsx)(jm,{ref:f,"data-kumo-component":`Checkbox`,name:u,checked:t,indeterminate:n,disabled:r,onCheckedChange:c,className:J(`relative flex h-4 w-4 shrink-0 items-center justify-center rounded-sm border-0 bg-kumo-base ring after:absolute after:-inset-x-3 after:-inset-y-2 focus:outline-none`,a&&`mt-0.5`,i===`error`?`ring-kumo-danger`:`ring-kumo-hairline`,!r&&`hover:ring-kumo-hairline focus:ring-2 focus:ring-kumo-focus focus-visible:ring-2 focus-visible:ring-kumo-brand`,`data-[checked]:bg-kumo-contrast data-[checked]:ring-kumo-contrast data-[indeterminate]:bg-kumo-contrast data-[indeterminate]:ring-kumo-contrast`,r&&`cursor-not-allowed opacity-50`,e),...d,children:(0,Y.jsx)(Mm,{keepMounted:!0,className:`flex items-center justify-center text-kumo-inverse data-[unchecked]:invisible`,render:(e,t)=>(0,Y.jsx)(`span`,{...e,children:t.indeterminate?(0,Y.jsx)(zf,{weight:`bold`,size:12}):(0,Y.jsx)(Of,{weight:`bold`,size:12})})})});return a?(0,Y.jsx)(tm,{className:`inline-flex`,children:(0,Y.jsxs)(nm,{className:J(`!m-0 inline-flex !min-h-0 items-start gap-2 !text-base`,s?`flex-row`:`flex-row-reverse justify-end`,r?`cursor-not-allowed`:`cursor-pointer`),children:[p,(0,Y.jsx)(xp,{showOptional:l===!1,tooltip:o,asContent:!0,children:a})]})}):p});Pm.displayName=`Checkbox`;var Fm=(0,_.forwardRef)(({className:e,checked:t,indeterminate:n,disabled:r,variant:i=`default`,appearance:a,label:o,description:s,value:c,onCheckedChange:l,name:u},d)=>{let{controlFirst:f,appearance:p,orientation:m}=(0,_.useContext)(Nm),h=(a??p)===`card`,g=f??!h,v=h&&p===`card`&&m!==null,y=(0,Y.jsx)(Mm,{keepMounted:!0,className:`flex items-center justify-center text-kumo-inverse data-[unchecked]:invisible`,render:(e,t)=>(0,Y.jsx)(`span`,{...e,children:t.indeterminate?(0,Y.jsx)(zf,{weight:`bold`,size:12}):(0,Y.jsx)(Of,{weight:`bold`,size:12})})});return h?(0,Y.jsxs)(`label`,{"data-kumo-component":`Checkbox`,"data-kumo-part":`item-label`,className:J(`group relative m-0 flex items-start gap-3 bg-kumo-base p-3 has-[[data-checked]]:bg-kumo-tint`,v?J(`border-b border-kumo-line bg-clip-padding last:border-b-0`,m===`horizontal`&&`odd:border-r [&:last-child:nth-child(odd)]:border-r-0 [&:nth-last-child(2):nth-child(odd)]:border-b-0`):`rounded-lg border border-kumo-hairline has-[[data-checked]]:border-kumo-interact`,g&&`flex-row-reverse`,i===`error`&&J(`has-[[data-checked]]:bg-kumo-base`,!v&&`border-kumo-danger has-[[data-checked]]:border-kumo-danger`),r?`cursor-not-allowed opacity-50`:J(`cursor-pointer has-[[data-disabled]]:cursor-not-allowed has-[[data-disabled]]:opacity-50`,i!==`error`&&`hover:not-has-[[data-disabled]]:not-has-[[data-checked]]:bg-kumo-elevated`),e),children:[(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-0.5`,children:[(0,Y.jsx)(`span`,{className:`text-base font-medium text-kumo-default`,children:o}),s&&(0,Y.jsx)(`span`,{className:`text-sm text-kumo-subtle`,children:s})]}),(0,Y.jsx)(jm,{ref:d,"data-kumo-component":`Checkbox`,"data-kumo-part":`item`,value:c,name:u,checked:t,indeterminate:n,disabled:r,onCheckedChange:l,className:J(`relative mt-0.5 flex h-4 w-4 shrink-0 items-center justify-center rounded-sm border-0 bg-kumo-base ring focus:ring-kumo-focus focus:outline-none focus-visible:ring-2 focus-visible:ring-kumo-brand`,i===`error`?`ring-kumo-danger`:`ring-kumo-line`,!r&&i!==`error`&&`group-hover:ring-kumo-hairline`,`data-[checked]:bg-kumo-contrast data-[checked]:ring-kumo-contrast data-[indeterminate]:bg-kumo-contrast data-[indeterminate]:ring-kumo-contrast`),children:y})]}):(0,Y.jsxs)(`label`,{"data-kumo-component":`Checkbox`,"data-kumo-part":`item-label`,className:J(`relative m-0 inline-flex items-start gap-2`,!g&&`flex-row-reverse justify-end`,r?`cursor-not-allowed opacity-50`:`cursor-pointer`,e),children:[(0,Y.jsx)(jm,{ref:d,"data-kumo-component":`Checkbox`,"data-kumo-part":`item`,value:c,name:u,checked:t,indeterminate:n,disabled:r,onCheckedChange:l,className:J(`peer relative mt-0.5 flex h-4 w-4 shrink-0 items-center justify-center rounded-sm border-0 bg-kumo-base ring after:absolute after:-inset-x-3 after:-inset-y-2`,i===`error`?`ring-kumo-danger`:`ring-kumo-hairline`,!r&&`group-hover:ring-kumo-hairline hover:ring-kumo-hairline focus:ring-2 focus:ring-kumo-focus focus-visible:ring-2 focus-visible:ring-kumo-brand`,`data-[checked]:bg-kumo-contrast data-[checked]:ring-kumo-contrast data-[indeterminate]:bg-kumo-contrast data-[indeterminate]:ring-kumo-contrast`),children:y}),(0,Y.jsx)(`span`,{className:`text-base text-kumo-default`,children:o})]})});Fm.displayName=`Checkbox.Item`;function Im({children:e,className:t}){return(0,Y.jsx)(Ep,{className:J(`text-base font-medium text-kumo-default`,t),children:e})}Im.displayName=`Checkbox.Legend`;function Lm({legend:e,children:t,error:n,description:r,defaultValue:i,value:a,onValueChange:o,allValues:s,disabled:c,orientation:l=`vertical`,appearance:u=`default`,controlFirst:d,className:f}){return(0,Y.jsx)(Nm.Provider,{value:{controlFirst:d,appearance:u,orientation:l},children:(0,Y.jsx)(fm,{defaultValue:i,value:a,onValueChange:o,allValues:s,disabled:c,children:(0,Y.jsxs)(Tp,{className:J(`flex flex-col p-0`,u===`card`?`gap-2`:`gap-4`,f),children:[e&&(0,Y.jsx)(Ep,{className:`text-base font-medium text-kumo-default`,children:e}),(0,Y.jsx)(`div`,{className:J(l===`vertical`?u===`card`?`flex flex-col overflow-hidden rounded-lg ring ring-kumo-line`:`flex flex-col gap-2`:u===`card`?`grid grid-cols-2 overflow-hidden rounded-lg bg-kumo-base ring ring-kumo-line`:`flex flex-row flex-wrap gap-2`),children:t}),n&&(0,Y.jsx)(`p`,{className:`text-sm text-kumo-danger`,children:n}),r&&(0,Y.jsx)(`p`,{className:`text-sm text-kumo-subtle`,children:r})]})})})}var Rm=Object.assign(Pm,{Item:Fm,Group:Lm,Legend:Im});Rm.displayName=`Checkbox`;function zm(e){let{open:t=!1,onOpenChange:n,elements:r={}}=e,i=Wc(),a=Jc()!=null;{let e=r.reference;e&&!Vi(e)&&console.error("Cannot pass a virtual element to the `elements.reference` option,","as it must be a real DOM element. Use `context.setPositionReference()`",`instead.`)}let o=jr(()=>new Ml({open:t,transitionStatus:void 0,onOpenChange:n,referenceElement:r.reference??null,floatingElement:r.floating??null,triggerElements:new Cl,floatingId:i,syncOnly:!1,nested:a})).current;return X(()=>{let e={open:t,floatingId:i};r.reference!==void 0&&(e.referenceElement=r.reference,e.domReferenceElement=Vi(r.reference)?r.reference:null),r.floating!==void 0&&(e.floatingElement=r.floating),o.update(e)},[t,i,r.reference,r.floating,o]),o.context.onOpenChange=n,o.context.nested=a,o}function Bm(e){return zr(19)?e:e?`true`:void 0}function Vm(e,t=-(2**53-1),n=2**53-1){return Math.max(t,Math.min(e,n))}var Hm={...jp,...hs},Um=_.forwardRef(function(e,t){let{render:n,id:r,className:i,match:a,style:o,...s}=e,c=qu(r),{validityData:l,state:u,name:d}=Pp(!1),{setMessageIds:f}=Ip(),{errors:p}=Rp(),m=d&&Object.hasOwn(p,d)?p[d]:null,h=!!(Array.isArray(m)?m.length:m),g=typeof a==`string`,v=!1;v=a===!0?!0:u.disabled?!1:g?!!l.state[a]:h||l.state.valid===!1;let{mounted:y,transitionStatus:b,setMounted:x}=Xl(v);X(()=>{if(v&&c)return f(e=>e.concat(c)),()=>{f(e=>e.filter(e=>e!==c))}},[v,c,f]);let S=_.useRef(null),[C,w]=_.useState(null),[T,E]=_.useState(null),D=l.error;!g&&h?D=m:l.errors.length>1&&(D=l.errors);let O=D;Array.isArray(D)&&(O=D.length>1?(0,Y.jsx)(`ul`,{children:D.map(e=>(0,Y.jsx)(`li`,{children:e},e))}):D[0]);let k=Array.isArray(D)?JSON.stringify(D):D;v&&k!==T&&(E(k),w(O)),Yl({open:v,ref:S,onComplete(){v||x(!1)}});let A={...u,transitionStatus:b},j=di(`div`,e,{ref:[t,S],state:A,props:[{id:c,children:v?O:C},s],stateAttributesMapping:Hm,enabled:y});return y?j:null});Um.displayName=`FieldError`;var Wm=_.forwardRef(function(e,t){let{render:n,id:r,className:i,style:a,...o}=e,s=qu(r),c=Pp(!1),l=Zp(),{setMessageIds:u}=Ip(),d={...c.state,disabled:c.disabled||l.disabled};return X(()=>{if(s)return u(e=>e.concat(s)),()=>{u(e=>e.filter(e=>e!==s))}},[s,u]),di(`p`,e,{ref:t,state:d,props:[{id:s},o],stateAttributesMapping:jp})});Wm.displayName=`FieldDescription`;function Gm(e){if(e)return typeof e==`string`?{message:e,match:!0}:e}function Km({controlFirst:e=!1}={}){return J(`grid gap-2`,`has-[input[type=checkbox]]:grid-cols-[auto_1fr] has-[input[type=checkbox]]:items-center`,`has-[[role=switch]]:grid-cols-[auto_1fr] has-[[role=switch]]:items-center`,e&&[`has-[input[type=checkbox]]:flex has-[input[type=checkbox]]:flex-row-reverse has-[input[type=checkbox]]:flex-wrap has-[input[type=checkbox]]:items-center`,`has-[[role=switch]]:flex has-[[role=switch]]:flex-row-reverse has-[[role=switch]]:flex-wrap has-[[role=switch]]:items-center`,`[&>label]:flex-1`])}function qm({children:e,label:t,required:n,labelTooltip:r,error:i,description:a,controlFirst:o=!1,hideLabel:s=!1}){let c=n===!1;return(0,Y.jsxs)(tm,{className:Km({controlFirst:o}),children:[!s&&(0,Y.jsx)(nm,{className:`m-0 text-base font-medium text-kumo-default select-none`,children:(0,Y.jsx)(xp,{showOptional:c,tooltip:r,asContent:!0,children:t})}),e,i?(0,Y.jsx)(Um,{className:J(`text-sm leading-snug text-kumo-danger`,`col-span-full`),match:i.match,children:i.message}):a&&(0,Y.jsx)(Wm,{className:J(`text-sm leading-snug text-kumo-subtle`,`col-span-full`),children:a})]})}var Jm=_.forwardRef(function(e,t){let{render:n,className:r,id:i,name:a,value:o,disabled:s=!1,onValueChange:c,defaultValue:l,autoFocus:u=!1,style:d,...f}=e,{state:p,name:m,disabled:h,setTouched:g,setDirty:v,validityData:y,setFilled:b,validationMode:x,validation:S}=Pp(),{clearErrors:C,elementRef:w,submitCountRef:T}=Rp(),E=h||s,D=m??a,O={...p,disabled:E},{labelId:k}=Ip(),A=rm({id:i}),j=o!==void 0,M=o==null?void 0:String(o),N=Q(()=>S.inputRef.current?.value);im(S.inputRef,A,M,N,!E,a),X(()=>{let e=M??S.inputRef.current?.value;e!==void 0&&b(e!==``)},[M,l,S.inputRef,b]),am(M,()=>{M!==void 0&&(C(D),v(M!==(y.initialValue??``)),S.change(M))});let P=_.useRef(null),F=gm(E,P),I=Il();return di(`input`,e,{ref:[t,P],state:O,props:[{id:A,disabled:E,name:D,ref:S.inputRef,"aria-labelledby":k,autoFocus:u,...j?{value:o}:{defaultValue:l},onChange(e){let t=e.currentTarget.value,n=_c(vc,e.nativeEvent);c?.(t,n),!j&&(v(t!==(y.initialValue??``)),b(t!==``),!e.nativeEvent.defaultPrevented&&!n.isCanceled&&(C(D),S.change(t)))},onFocus(){F(!0)},onBlur(e){if(g(!0),F(!1),x===`onBlur`){let t=e.currentTarget.value;S.commit(t),j&&queueMicrotask(()=>{let e=S.inputRef.current?.value;e!==void 0&&e!==t&&e!==(y.initialValue??``)&&S.commit(e)})}},onKeyDown(e){if(e.currentTarget.tagName===`INPUT`&&e.key===`Enter`){g(!0);let t=e.currentTarget.value,n=e.currentTarget.form;if(n&&n===w.current&&!e.defaultPrevented){let t=e.currentTarget,n=T.current;I.start(0,()=>{T.current===n&&S.commit(t.value)})}else S.commit(t)}}},f,e=>S.getValidationProps(E,e)],stateAttributesMapping:jp})});Jm.displayName=`FieldControl`;var Ym=_.forwardRef(function(e,t){return(0,Y.jsx)(Jm,{ref:t,...e})});Ym.displayName=`Input`;var Xm={size:{xs:{classes:`h-5 gap-1 rounded-sm px-1.5 text-xs`,description:`Extra small input for compact UIs`},sm:{classes:`h-6.5 gap-1 rounded-md px-2 text-xs`,description:`Small input for secondary fields`},base:{classes:`h-9 gap-1.5 rounded-lg px-3 text-base`,description:`Default input size`},lg:{classes:`h-10 gap-2 rounded-lg px-4 text-base`,description:`Large input for prominent fields`}},variant:{default:{classes:`focus:ring-kumo-focus/50 focus:ring-[1.5px]`,description:`Default input appearance`},error:{classes:`!ring-kumo-danger focus:ring-kumo-danger/50 focus:ring-[1.5px]`,description:`Error state for validation failures`}}},Zm={size:`base`,variant:`default`};function Qm({variant:e=Zm.variant,size:t=Zm.size,parentFocusIndicator:n=!1,focusIndicator:r=!1}={}){return J(`border-0 bg-kumo-control text-kumo-default ring ring-kumo-line outline-none focus:outline-none`,`kumo-input-placeholder disabled:text-kumo-disabled`,vr(Xm.size,t,Zm.size).classes,vr(Xm.variant,e,Zm.variant).classes,n&&(e===`error`?`focus-within:ring-[1.5px] focus-within:ring-kumo-danger/50`:`focus-within:ring-[1.5px] focus-within:ring-kumo-focus/50`),r&&(e===`error`?`focus:ring-[1.5px] focus:ring-kumo-danger/50`:`focus:ring-[1.5px] focus:ring-kumo-focus/50`))}var $m=(0,_.forwardRef)((e,t)=>{let{className:n,size:r=`base`,variant:i,label:a,labelTooltip:o,description:s,error:c,passwordManagerIgnore:l=!1,...u}=e;i===`error`&&console.warn('[Kumo Input]: variant="error" is deprecated. Error styling is now automatically applied when the `error` prop is truthy. Simply remove the variant prop and pass an error message instead.');let d=i??(c?`error`:`default`),{required:f}=u;{let e=!!a,t=!!u[`aria-label`],n=!!u[`aria-labelledby`];e||t||n||console.warn(`[Kumo Input]: Input must have an accessible name. Provide either:
28
28
  - label prop: <Input label='Email' />
29
29
  - aria-label: <Input aria-label='Email address' />
30
- - aria-labelledby for custom label association`)}let p=(0,Y.jsx)(Ym,{ref:t,className:J(Qm({size:r,variant:d,focusIndicator:!0}),l&&`keeper-ignore`,n),...l?{"data-1p-ignore":`true`,"data-bwignore":`true`,"data-form-type":`other`,"data-lpignore":`true`}:{},...u});return a||c||s?(0,Y.jsx)(qm,{label:a,required:f,labelTooltip:o,description:s,error:Gm(c),children:p}):p});$m.displayName=`Input`;var eh={xs:{inputOuter:`px-1.5`,addonOuterStart:`pl-1.5`,addonOuterEnd:`pr-1.5`,addonButtonOuterStart:`pl-1`,addonButtonOuterEnd:`pr-1`,suffixPad:`pr-1.5`,fontSize:`text-xs`,iconSize:10},sm:{inputOuter:`px-2`,addonOuterStart:`pl-1.5`,addonOuterEnd:`pr-1.5`,addonButtonOuterStart:`pl-1`,addonButtonOuterEnd:`pr-1`,suffixPad:`pr-2`,fontSize:`text-xs`,iconSize:13},base:{inputOuter:`px-3`,addonOuterStart:`pl-2`,addonOuterEnd:`pr-2`,addonButtonOuterStart:`pl-1`,addonButtonOuterEnd:`pr-1`,suffixPad:`pr-3`,fontSize:`text-base`,iconSize:18},lg:{inputOuter:`px-4`,addonOuterStart:`pl-2.5`,addonOuterEnd:`pr-2.5`,addonButtonOuterStart:`pl-1.5`,addonButtonOuterEnd:`pr-0.5`,suffixPad:`pr-4`,fontSize:`text-base`,iconSize:20}},th={xs:`has-[[data-slot=input-group-addon-start]]:[&_input]:pl-1 has-[[data-slot=input-group-addon-end]]:[&_input]:pr-1`,sm:`has-[[data-slot=input-group-addon-start]]:[&_input]:pl-1.5 has-[[data-slot=input-group-addon-end]]:[&_input]:pr-1.5`,base:`has-[[data-slot=input-group-addon-start]]:[&_input]:pl-2 has-[[data-slot=input-group-addon-end]]:[&_input]:pr-2`,lg:`has-[[data-slot=input-group-addon-start]]:[&_input]:pl-2.5 has-[[data-slot=input-group-addon-end]]:[&_input]:pr-2.5`},nh=(0,_.createContext)(null),rh=(0,_.createContext)(!1);function ih(e){let t=(0,_.useContext)(nh);return t||console.warn(`<InputGroup.${e}> must be used within <InputGroup>. Falling back to default values.`),t}function ah(e){let t=[],n=[];return _.Children.forEach(e,e=>{(0,_.isValidElement)(e)&&e.type?.displayName===`InputGroup.Button`?n.push(e):t.push(e)}),{containerZone:t,individualZone:n}}function oh(e){let t=!1,n=!1;return _.Children.forEach(e,e=>{if(!(0,_.isValidElement)(e))return;let r=e.type,i=typeof r==`function`||typeof r==`object`?r.displayName:void 0;if(i===`InputGroup.Addon`){n=!0;return}if(i!==`InputGroup.Button`)return;let a=e.props.variant;a!==void 0&&a!==`ghost`&&(t=!0)}),t&&n?`hybrid`:t?`individual`:`container`}var sh=(0,_.forwardRef)((e,t)=>{let n=ih(`Input`);n&&(e.size!==void 0&&console.warn("InputGroup.Input: Set `size` on <InputGroup> instead of <InputGroup.Input>."),e.disabled!==void 0&&console.warn("InputGroup.Input: Set `disabled` on <InputGroup> instead of <InputGroup.Input>."),e.label!==void 0&&console.warn("InputGroup.Input: Use the `label` prop on <InputGroup> instead of <InputGroup.Input>."),e.description!==void 0&&console.warn("InputGroup.Input: Use <InputGroup.Suffix> instead of passing `description` to <InputGroup.Input>."));let r=eh[n?.size??`base`],i=n?.focusMode===`individual`,a=!!n?.error,o=e.id??n?.inputId;return(0,Y.jsx)($m,{ref:t,size:n?.size,disabled:n?.disabled||e.disabled,"aria-invalid":a||e[`aria-invalid`],...e,id:o,className:J(`flex h-full min-w-0 grow items-center rounded-none border-0 bg-transparent font-sans`,r.inputOuter,`text-ellipsis`,i?`relative ring-0 focus:ring-0 border border-kumo-line first:rounded-l-[inherit] last:rounded-r-[inherit] not-first:-ml-px hover:z-1 hover:border-kumo-line focus:z-2 focus:border-kumo-focus/50`:`relative z-1 shadow-none ring-0! outline-none focus:ring-0! focus:outline-none`,e.className)})});sh.displayName=`InputGroup.Input`;var ch={xs:`xs`,sm:`xs`,base:`sm`,lg:`base`},lh=(0,_.forwardRef)(({children:e,className:t,variant:n,size:r,disabled:i,tooltip:a,tooltipSide:o=`bottom`,icon:s,...c},l)=>{let u=ih(`Button`),d=(0,_.useContext)(rh),f=i??u?.disabled,p=u?.focusMode===`individual`||u?.focusMode===`hybrid`;u&&(n??`ghost`)===`ghost`&&!d&&console.warn(`InputGroup.Button: Ghost buttons should be wrapped in <InputGroup.Addon> for correct spacing.`),u&&r!==void 0&&console.warn("InputGroup.Button: Set `size` on <InputGroup> instead of <InputGroup.Button>.");let m=typeof a==`string`&&!c[`aria-label`]?a:void 0,h=u?eh[u.size??`base`].iconSize:void 0,g=s&&h&&(typeof s==`function`||typeof s==`object`&&s&&!_.isValidElement(s))?_.createElement(s,{size:h}):s,v=(0,Y.jsx)(ip,{ref:l,type:`button`,disabled:f,"aria-label":m,...c,icon:g,variant:n??`ghost`,size:r??(p?u?.size??`sm`:ch[u?.size??`base`]??`sm`),className:J(`pointer-events-auto`,`shadow-none`,`focus:ring-0`,!p&&`focus-visible:ring-[1.5px] focus-visible:ring-kumo-focus/50`,p&&[`relative h-full! rounded-none border border-kumo-line ring-0 focus-visible:ring-0`,`first:rounded-l-[inherit] last:rounded-r-[inherit]`,`not-first:-ml-px`,`hover:z-1`,`focus:z-2`,`focus-visible:border-kumo-focus/50`,`disabled:bg-kumo-overlay disabled:text-kumo-inactive!`],t),children:e});return a?(0,Y.jsx)(Kd,{content:a,side:o,asChild:!0,children:v}):v});lh.displayName=`InputGroup.Button`;var uh=(0,_.forwardRef)(({align:e=`start`,className:t,children:n},r)=>{let i=eh[ih(`Addon`)?.size??`base`],a=!1,o=_.Children.map(n,e=>(0,_.isValidElement)(e)?e.type===lh?(a=!0,e):e.props.size===void 0?(0,_.cloneElement)(e,{size:i.iconSize}):e:e);return(0,Y.jsx)(`div`,{ref:r,"data-slot":e===`start`?`input-group-addon-start`:`input-group-addon-end`,className:J(`pointer-events-none relative z-[1] flex shrink-0 items-center gap-1.5`,`text-kumo-subtle`,i.fontSize,`*:pointer-events-auto`,e===`start`?J(`-order-1`,a?i.addonButtonOuterStart:i.addonOuterStart,`pr-0`):J(`order-1`,`pl-0`,a?i.addonButtonOuterEnd:i.addonOuterEnd),t),children:(0,Y.jsx)(rh.Provider,{value:!0,children:o})})});uh.displayName=`InputGroup.Addon`;var dh=(0,_.forwardRef)(({className:e,children:t},n)=>{let r=eh[ih(`Suffix`)?.size??`base`];return(0,Y.jsx)(`div`,{ref:n,"data-slot":`input-group-suffix`,className:J(`pointer-events-none flex min-w-0 grow items-center text-kumo-subtle select-none`,r.fontSize,r.suffixPad,e),children:(0,Y.jsx)(`span`,{className:`truncate`,children:t})})});dh.displayName=`InputGroup.Suffix`;var fh=(0,_.forwardRef)(({size:e=`base`,children:t,className:n,disabled:r=!1,label:i,description:a,error:o,required:s,labelTooltip:c,...l},u)=>{let d=(0,_.useId)(),f=oh(t),p=(0,_.useMemo)(()=>({size:e,focusMode:f,disabled:r,error:o,inputId:d}),[e,f,r,o,d]),m=J(`relative w-full cursor-text`,Qm({size:e}),`data-[disabled]:pointer-events-none data-[disabled]:opacity-50`,f===`container`?[`overflow-hidden`,`focus-within:ring-[1.5px] focus-within:ring-kumo-focus/50`]:`isolate overflow-visible shadow-none ring-0`,`has-[input[aria-invalid=true]]:ring-kumo-danger`,`px-0`,`flex items-center gap-0`,`has-[[data-slot=input-group-suffix]]:[&_input]:[field-sizing:content]`,`has-[[data-slot=input-group-suffix]]:[&_input]:max-w-full`,`has-[[data-slot=input-group-suffix]]:[&_input]:grow-0`,`has-[[data-slot=input-group-suffix]]:[&_input]:pr-0`,th[e],`!mb-0`,n),h={"data-slot":`input-group`,"data-focus-mode":f,"data-disabled":r?``:void 0};if(f===`hybrid`){let{containerZone:n,individualZone:r}=ah(t),f={...p,focusMode:`container`},g=(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(nh.Provider,{value:f,children:(0,Y.jsxs)(`div`,{"data-slot":`input-group-container-zone`,className:J(Qm({size:e}),`overflow-hidden`,`has-[input[aria-invalid=true]]:ring-kumo-danger`,`px-0`,`flex min-w-0 flex-1 items-center gap-0`,`shadow-none ring-0`,`border border-kumo-line`,`focus-within:border-kumo-focus/50`,`focus-within:z-2`,`not-first:-ml-px`,`rounded-none first:rounded-l-[inherit] last:rounded-r-[inherit]`,th[e],`has-data-[slot=input-group-suffix]:[&_input]:field-sizing-content`,`has-data-[slot=input-group-suffix]:[&_input]:max-w-full`,`has-data-[slot=input-group-suffix]:[&_input]:grow-0`,`has-data-[slot=input-group-suffix]:[&_input]:pr-0`),children:[i&&(0,Y.jsx)(`label`,{htmlFor:d,className:`absolute inset-0 z-0 mb-0! cursor-text`,"aria-hidden":`true`}),n]})}),r]}),_=(0,Y.jsx)(nh.Provider,{value:p,children:(0,Y.jsx)(`div`,{ref:u,...h,className:m,...l,children:g})});return i?(0,Y.jsx)(qm,{label:i,description:a,error:o,required:s,labelTooltip:c,children:_}):_}let g=!i&&f===`container`,v=(0,Y.jsx)(nh.Provider,{value:p,children:i?(0,Y.jsxs)(`div`,{ref:u,...h,className:m,...l,children:[(0,Y.jsx)(`label`,{htmlFor:d,className:`absolute inset-0 z-0 mb-0!`,"aria-hidden":`true`}),t]}):g?(0,Y.jsx)(`label`,{ref:u,...h,className:J(m,`mb-0!`),...l,children:t}):(0,Y.jsx)(`div`,{ref:u,...h,className:m,...l,children:t})});return i?(0,Y.jsx)(qm,{label:i,description:a,error:o,required:s,labelTooltip:c,children:v}):v});fh.displayName=`InputGroup`;var ph=(0,_.forwardRef)((e,t)=>(0,Y.jsx)(uh,{ref:t,align:`start`,...e}));ph.displayName=`InputGroup.Label`;var mh=(0,_.forwardRef)((e,t)=>(0,Y.jsx)(dh,{ref:t,...e}));mh.displayName=`InputGroup.Description`;var hh=Object.assign(fh,{Input:sh,Button:lh,Addon:uh,Suffix:dh,Label:ph,Description:mh}),gh={variant:{heading:{classes:`text-lg font-semibold`,description:`Heading text (16px by default, 20px at large size)`},heading1:{classes:`text-3xl font-semibold`,description:`Deprecated large heading for page titles; use heading instead`},heading2:{classes:`text-2xl font-semibold`,description:`Deprecated medium heading for section titles; use heading instead`},heading3:{classes:`text-lg font-semibold`,description:`Deprecated small heading for subsections; use heading instead`},body:{classes:`text-kumo-default`,description:`Default body text`},secondary:{classes:`text-kumo-subtle`,description:`Muted text for secondary information`},success:{classes:`text-kumo-link`,description:`Success state text`},error:{classes:`text-kumo-danger`,description:`Error state text`},mono:{classes:`font-mono`,description:`Monospace text for code`},"mono-secondary":{classes:`font-mono text-kumo-subtle`,description:`Muted monospace text`}},size:{xs:{classes:`text-xs/[inherit]`,description:`Extra small text`},sm:{classes:`text-sm/[inherit]`,description:`Small text`},base:{classes:`text-base/[inherit]`,description:`Default text size`},lg:{classes:`text-lg/[inherit]`,description:`Large text`}}},_h={variant:`body`,size:`base`},vh=[`heading1`,`heading2`,`heading3`];function yh(e){return vh.includes(e)}function bh(e,t){return e===`heading`?t===`lg`?`text-xl`:``:yh(e)?``:[`mono`,`mono-secondary`].includes(e)?t===`lg`?gh.size.base.classes:gh.size.sm.classes:vr(gh.size,t,_h.size).classes}function xh({variant:e=`body`,bold:t=!1,size:n=`base`,truncate:r=!1,children:i,DANGEROUS_className:a,DANGEROUS_style:o,as:s,...c},l){let u=[`body`,`secondary`,`success`,`error`].includes(e),d=(0,_.useMemo)(()=>s||([`mono`,`mono-secondary`].includes(e)||e===`heading`||yh(e)?`span`:`p`),[e,s]);return(0,Y.jsx)(d,{ref:l,className:J(`text-kumo-default`,vr(gh.variant,e,_h.variant).classes,bh(e,n),u&&t?`font-medium`:``,r&&`min-w-0 truncate`,a),style:o,...c,children:i})}var Sh=(0,_.forwardRef)(xh),Ch=0;function wh(e,t={}){let{preventScroll:n=!1,sync:r=!1,shouldFocus:i}=t;cancelAnimationFrame(Ch);function a(){(!i||i())&&e?.focus({preventScroll:n})}if(r)return a(),Gr;let o=requestAnimationFrame(a);return Ch=o,()=>{Ch===o&&(cancelAnimationFrame(o),Ch=0)}}var Th=`data-base-ui-inert`,Eh=new WeakMap,Dh=new WeakSet,Oh=new WeakMap,kh=0;function Ah(e){return e?Ui(e)?e.host:Ah(e.parentNode):null}var jh=(e,t)=>t.map(t=>{if(e.contains(t))return t;let n=Ah(t);return e.contains(n)?n:null}).filter(e=>e!=null),Mh=e=>{let t=new Set;return e.forEach(e=>{let n=e;for(;n&&!t.has(n);)t.add(n),n=n.parentNode}),t},Nh=(e,t,n)=>{let r=[],i=e=>{e&&!n.has(e)&&Array.from(e.children).forEach(e=>{Li(e)!==`script`&&(t.has(e)?i(e):r.push(e))})};return i(e),r};function Ph(e,t,n,{mark:r=!0}){let i=jh(t,e),a=r?Nh(t,Mh(i),new Set(i)):[],o=[],s=[];if(n){let e=jh(t,Array.from(t.querySelectorAll(`[aria-live]`))),n=i.concat(e);Nh(t,Mh(n),new Set(n)).forEach(e=>{let t=e.getAttribute(`aria-hidden`),n=t!==null&&t!==`false`,r=(Eh.get(e)||0)+1;Eh.set(e,r),o.push(e),r===1&&n&&Dh.add(e),n||e.setAttribute(`aria-hidden`,`true`)})}return r&&a.forEach(e=>{let t=(Oh.get(e)||0)+1;Oh.set(e,t),s.push(e),t===1&&e.setAttribute(Th,``)}),kh+=1,()=>{o.forEach(e=>{let t=(Eh.get(e)||0)-1;Eh.set(e,t),t||(Dh.has(e)||e.removeAttribute(`aria-hidden`),Dh.delete(e))}),r&&s.forEach(e=>{let t=(Oh.get(e)||0)-1;Oh.set(e,t),t||e.removeAttribute(Th)}),--kh,kh||(Eh=new WeakMap,Dh=new WeakSet,Oh=new WeakMap)}}function Fh(e,t={}){let{ariaHidden:n=!1,mark:r=!0}=t,i=zs(e[0]).body;return Ph(e,i,n,{mark:r})}function Ih(e,t){let n=Ri(is(e));return e instanceof n.KeyboardEvent?`keyboard`:e instanceof n.FocusEvent?t||`keyboard`:`pointerType`in e?e.pointerType||(Qo(e)?`keyboard`:t||`mouse`):`touches`in e?`touch`:e instanceof n.MouseEvent?t||(e.detail===0?`keyboard`:`mouse`):``}var Lh=20,Rh=[];function zh(){Rh=Rh.filter(e=>e.deref()?.isConnected)}function Bh(e){zh(),e&&Li(e)!==`body`&&(Rh.push(new WeakRef(e)),Rh.length>Lh&&(Rh=Rh.slice(-20)))}function Vh(){return zh(),Rh[Rh.length-1]?.deref()}function Hh(e){return e?sc(e)?e:lc(e)[0]||e:null}function Uh(e){if(e.hasAttribute(`tabindex`)&&!e.hasAttribute(`data-tabindex`)||!e.getAttribute(`role`)?.includes(`dialog`))return;let t=cc(e).filter(e=>{let t=e.getAttribute(`data-tabindex`)||``;return sc(e)||e.hasAttribute(`data-tabindex`)&&!t.startsWith(`-`)}),n=e.getAttribute(`tabindex`);t.length===0?n!==`0`&&(e.setAttribute(`tabindex`,`0`),e.setAttribute(`data-tabindex`,`0`)):(n!==`-1`||e.hasAttribute(`data-tabindex`)&&e.getAttribute(`data-tabindex`)!==`-1`)&&(e.setAttribute(`tabindex`,`-1`),e.setAttribute(`data-tabindex`,`-1`))}function Wh(e){let{context:t,children:n,disabled:r=!1,initialFocus:i=!0,returnFocus:a=!0,explicitReturnFocus:o,restoreFocus:s=!1,modal:c=!0,closeOnFocusOut:l=!0,openInteractionType:u=``,nextFocusableElement:d,previousFocusableElement:f,beforeContentFocusGuardRef:p,externalTree:m,getInsideElements:h}=e,g=t.useState(`open`),v=t.useState(`domReferenceElement`),y=t.useState(`floatingElement`),{events:b,dataRef:x}=t.context,S=Q(()=>x.current.floatingContext?.nodeId),C=i===!1,w=Is(v)&&C,T=Ll(i),E=Ll(a),D=Ll(o),O=Ll(u),k=Ll(g),A=Yc(m),j=_l(),M=_.useRef(!1),N=_.useRef(!1),P=_.useRef(!1),F=_.useRef(null),I=_.useRef(``),L=_.useRef(``),R=_.useRef(null),z=_.useRef(null),B=Mr(R,p,j?.beforeInsideRef),V=Mr(z,j?.afterInsideRef),H=Il(),U=Il(),ee=Ul(),te=j!=null,W=Rs(y),ne=Q((e=W)=>e?lc(e):[]),re=Q(()=>h?.().filter(e=>e!=null)??[]);_.useEffect(()=>{if(r||!c)return;function e(e){e.key===`Tab`&&Z(W,ns(zs(W)))&&ne().length===0&&!w&&Xo(e)}return jc(zs(W),`keydown`,e)},[r,W,c,w,ne]),_.useEffect(()=>{if(r||!g)return;let e=zs(W);function t(){P.current=!1}function n(e){let t=is(e),n=re(),r=Z(y,t)||Z(v,t)||Z(j?.portalNode,t)||n.some(e=>e===t||Z(e,t));P.current=!r,L.current=e.pointerType||`keyboard`,rs(t,`[data-base-ui-click-trigger]`)&&(N.current=!0,U.start(0,()=>{N.current=!1}))}function i(){L.current=`keyboard`}return Mc(jc(e,`pointerdown`,n,!0),jc(e,`pointerup`,t,!0),jc(e,`pointercancel`,t,!0),jc(e,`keydown`,i,!0),t)},[r,y,v,W,g,j,U,re]),_.useEffect(()=>{if(r||!l)return;let e=zs(W);function n(){N.current=!0,U.start(0,()=>{N.current=!1})}function i(e){let t=is(e);sc(t)&&(F.current=t)}function a(n){let r=n.relatedTarget,i=n.currentTarget,a=is(n);c&&r==null&&a!=null&&Z(y,a)&&Bh(a),queueMicrotask(()=>{let o=S(),l=t.context.triggerElements,u=re(),p=r?.hasAttribute(dl(`focus-guard`))&&[R.current,z.current,j?.beforeInsideRef.current,j?.afterInsideRef.current,j?.beforeOutsideRef.current,j?.afterOutsideRef.current,Gl(f),Gl(d)].includes(r),m=!(Z(v,r)||Z(y,r)||Z(r,y)||Z(j?.portalNode,r)||u.some(e=>e===r||Z(e,r))||l.hasMatchingElement(e=>Z(e,r))||p||A&&(Zl(A.nodesRef.current,o).find(e=>Z(e.context?.elements.floating,r)||Z(e.context?.elements.domReference,r))||Ql(A.nodesRef.current,o).find(e=>[e.context?.elements.floating,Rs(e.context?.elements.floating)].includes(r)||e.context?.elements.domReference===r)));if(i===v&&W&&Uh(W),s&&i!==v&&!qs(a)&&ns(e)===e.body){if(Hi(W)&&(W.focus(),s===`popup`)){ee.request(()=>{W.focus()});return}let e=ne(),t=F.current,n=(t&&e.includes(t)?t:null)||e[e.length-1]||W;Hi(n)&&n.focus()}x.current.insideReactTree?x.current.insideReactTree=!1:(w||!c)&&r&&m&&!N.current&&(w||r!==Vh())&&(M.current=!0,t.setOpen(!1,_c(wc,n)))})}function o(){P.current||(x.current.insideReactTree=!0,H.start(0,()=>{x.current.insideReactTree=!1}))}let u=Hi(v)?v:null;if(y||u)return Mc(u&&jc(u,`focusout`,a),u&&jc(u,`pointerdown`,n),y&&jc(y,`focusin`,i),y&&jc(y,`focusout`,a),y&&j&&jc(y,`focusout`,o,!0))},[r,v,y,W,c,A,j,t,l,s,ne,w,S,x,H,U,ee,d,f,re]),_.useEffect(()=>{if(r||!y||!g)return;let e=Array.from(j?.portalNode?.querySelectorAll(`[${dl(`portal`)}]`)||[]),t=(A?Ql(A.nodesRef.current,S()):[]).find(e=>Is(e.context?.elements.domReference||null))?.context?.elements.domReference,n=Fh([y,...e,R.current,z.current,j?.beforeOutsideRef.current,j?.afterOutsideRef.current,...re(),t,Gl(f),Gl(d),w?v:null].filter(e=>e!=null),{ariaHidden:c||w,mark:!1}),i=Fh([y,...e].filter(e=>e!=null));return()=>{i(),n()}},[g,r,v,y,c,j,w,A,S,d,f,re]),X(()=>{if(!g||r||!Hi(W))return;I.current=``,L.current=``;let e=zs(W),t=ns(e);queueMicrotask(()=>{let n=T.current,r=typeof n==`function`?n(O.current||``):n;if(r===void 0||r===!1||Z(W,t))return;let i=null,a=()=>(i??=ne(W),i[0]||W),o;o=r===!0||r===null?a():Gl(r),o||=a();let s=Z(W,ns(e)),c=x.current.openEvent,l=c?.type===`mousedown`&&Qo(c);wh(o,{sync:l,preventScroll:o===W,shouldFocus(){if(!k.current)return!1;if(s)return!0;let t=ns(e);return!(t!==o&&Z(W,t))}})})},[r,g,W,ne,T,O,k,x]);let ie=_.useRef(null);X(()=>{if(r||!W){ie.current=null;return}ie.current&&=(ie.current.cancelled=!0,null);let e=zs(W),t=ns(e),n=O.current==null;Bh(t);function i(e){if(e.open||(I.current=Ih(e.nativeEvent,L.current)),(e.reason===`focus-out`&&e.triggerElement?.hasAttribute(dl(`focus-guard`))||e.reason===`trigger-hover`&&e.nativeEvent.type===`mouseleave`)&&(M.current=!0),e.reason===`outside-press`){if(e.nested)M.current=!1;else if(Qo(e.nativeEvent)||$o(e.nativeEvent))M.current=!1;else{let e=!1;zs(W).createElement(`div`).focus({get preventScroll(){return e=!0,!1}}),e?M.current=!1:M.current=!0}}}b.on(`openchange`,i);function a(e){let r=E.current,i=typeof r==`function`?r(e):r;if(i===void 0||i===!1)return null;i===null&&(i=!0);let a=v?.isConnected?v:null,o=t?.isConnected&&Li(t)!==`body`?t:null,s=n?o||a:a||o;return s||=Vh()||null,typeof i==`boolean`?s:Gl(i)||s||null}return()=>{b.off(`openchange`,i);let t=ns(e),n=re(),r=Z(y,t)||n.some(e=>e===t||Z(e,t))||A&&Zl(A.nodesRef.current,S(),!1).some(e=>Z(e.context?.elements.floating,t)),o=E.current,s=I.current,c=a(s),l={cancelled:!1};ie.current=l,queueMicrotask(()=>{ie.current===l&&(ie.current=null);let n=Hh(c),i=D.current??typeof o!=`boolean`;if(!l.cancelled&&o&&!M.current&&Hi(n)&&(i||n===t||t===e.body||r)){let e={preventScroll:!0};s===`keyboard`&&(e.focusVisible=!0),n.focus(e)}M.current=!1})}},[r,y,W,E,D,O,b,A,v,S,re]),X(()=>{if(!gc||g||!y)return;let e=ns(zs(y));Hi(e)&&Ps(e)&&Z(y,e)&&e.blur()},[g,y]),X(()=>{if(!r&&j)return j.setFocusManagerState({modal:c,closeOnFocusOut:l,open:g,onOpenChange:t.setOpen,domReference:v}),()=>{j.setFocusManagerState(null)}},[r,j,c,g,t,l,v]),X(()=>{if(!r&&W)return Uh(W),()=>{queueMicrotask(zh)}},[r,W]);let ae=!r&&(!c||!w)&&(te||c);return(0,Y.jsxs)(_.Fragment,{children:[ae&&(0,Y.jsx)(ul,{"data-type":`inside`,ref:B,onFocus:e=>{if(c){let e=ne();wh(e[e.length-1])}else j?.portalNode&&(M.current=!1,pc(e,j.portalNode)?dc(v)?.focus():Gl(f??j.beforeOutsideRef)?.focus())}}),n,ae&&(0,Y.jsx)(ul,{"data-type":`inside`,ref:V,onFocus:e=>{c?wh(ne()[0]):j?.portalNode&&(l&&(M.current=!0),pc(e,j.portalNode)?fc(v)?.focus():Gl(d??j.afterOutsideRef)?.focus())}})]})}function Gh(e){let t=_.useRef(``),n=_.useCallback(n=>{n.defaultPrevented||(t.current=n.pointerType,e(n,n.pointerType))},[e]);return{onClick:_.useCallback(n=>{n.detail===0?e(n,`keyboard`):(`pointerType`in n?e(n,n.pointerType):e(n,t.current),t.current=``)},[e]),onPointerDown:n}}function Kh(e,t){let{onClick:n,onPointerDown:r}=Gh(Q((n,r)=>{(typeof e==`function`?e():e)||t(r||(Wo?`touch`:``))}));return _.useMemo(()=>({onClick:n,onPointerDown:r}),[n,r])}function qh(e){let[t,n]=_.useState(null),r=Kh(e,n);return am(e,t=>{t&&!e&&n(null)}),_.useMemo(()=>({openMethod:t,triggerProps:r}),[t,r])}var Jh=_.forwardRef(function(e,t){let{cutout:n,...r}=e,i;if(n){let e=n.getBoundingClientRect();i=`polygon(0% 0%,100% 0%,100% 100%,0% 100%,0% 0%,${e.left}px ${e.top}px,${e.left}px ${e.bottom}px,${e.right}px ${e.bottom}px,${e.right}px ${e.top}px,${e.left}px ${e.top}px)`}return(0,Y.jsx)(`div`,{ref:t,role:`presentation`,"data-base-ui-inert":``,...r,style:{position:`fixed`,inset:0,userSelect:`none`,WebkitUserSelect:`none`,clipPath:i}})});Jh.displayName=`InternalBackdrop`;var Yh={},Xh={},Zh=``;function Qh(e,t){return Wi(e)?e:t}function $h(e,t,n){return/hidden|clip/.test(e.getComputedStyle(Qh(t,n)).overflowY)}function eg(e){if(typeof document>`u`)return!1;let t=zs(e);return Ri(t).innerWidth-t.documentElement.clientWidth>0}function tg(e){if(!(typeof CSS<`u`&&CSS.supports&&CSS.supports(`scrollbar-gutter`,`stable`))||typeof document>`u`)return!1;let t=zs(e),n=t.documentElement,r=t.body,i=Qh(n,r),a=i.style.overflowY,o=n.style.scrollbarGutter;n.style.scrollbarGutter=`stable`,i.style.overflowY=`scroll`;let s=i.offsetWidth;i.style.overflowY=`hidden`;let c=i.offsetWidth;return i.style.overflowY=a,n.style.scrollbarGutter=o,s===c}function ng(e){let t=zs(e),n=t.documentElement,r=t.body,i=Qh(n,r),a={overflowY:i.style.overflowY,overflowX:i.style.overflowX};return Object.assign(i.style,{overflowY:`hidden`,overflowX:`hidden`}),()=>{Object.assign(i.style,a)}}function rg(e){let t=zs(e),n=t.documentElement,r=t.body,i=Ri(n),a=0,o=0,s=!1,c=Hl.create();if(gc&&(i.visualViewport?.scale??1)!==1)return()=>{};function l(){let t=i.getComputedStyle(n),c=i.getComputedStyle(r),l=(t.scrollbarGutter||``).includes(`both-edges`)?`stable both-edges`:`stable`;a=n.scrollTop,o=n.scrollLeft,Yh={scrollbarGutter:n.style.scrollbarGutter,overflowY:n.style.overflowY,overflowX:n.style.overflowX},Zh=n.style.scrollBehavior,Xh={position:r.style.position,height:r.style.height,width:r.style.width,boxSizing:r.style.boxSizing,overflowY:r.style.overflowY,overflowX:r.style.overflowX,scrollBehavior:r.style.scrollBehavior};let u=n.scrollHeight>n.clientHeight,d=n.scrollWidth>n.clientWidth,f=t.overflowY===`scroll`||c.overflowY===`scroll`,p=t.overflowX===`scroll`||c.overflowX===`scroll`,m=Math.max(0,i.innerWidth-r.clientWidth),h=Math.max(0,i.innerHeight-r.clientHeight),g=parseFloat(c.marginTop)+parseFloat(c.marginBottom),_=parseFloat(c.marginLeft)+parseFloat(c.marginRight),v=Qh(n,r);s=tg(e),s?(n.style.scrollbarGutter=l,v.style.overflowY=`hidden`,v.style.overflowX=`hidden`):(Object.assign(n.style,{scrollbarGutter:l,overflowY:`hidden`,overflowX:`hidden`}),(u||f)&&(n.style.overflowY=`scroll`),(d||p)&&(n.style.overflowX=`scroll`),Object.assign(r.style,{position:`relative`,height:g||h?`calc(100dvh - ${g+h}px)`:`100dvh`,width:_||m?`calc(100vw - ${_+m}px)`:`100vw`,boxSizing:`border-box`,overflowY:`hidden`,overflowX:`hidden`,scrollBehavior:`unset`}),r.scrollTop=a,r.scrollLeft=o,n.setAttribute(`data-base-ui-scroll-locked`,``),n.style.scrollBehavior=`unset`)}function u(){Object.assign(n.style,Yh),Object.assign(r.style,Xh),s||(n.scrollTop=a,n.scrollLeft=o,n.removeAttribute(`data-base-ui-scroll-locked`),n.style.scrollBehavior=Zh)}function d(){u(),c.request(l)}l();let f=jc(i,`resize`,d);return()=>{c.cancel(),u(),typeof i.removeEventListener==`function`&&f()}}var ig=new class{lockCount=0;restore=null;timeoutLock=Fl.create();timeoutUnlock=Fl.create();acquire(e){return this.lockCount+=1,this.lockCount===1&&this.restore===null&&this.timeoutLock.start(0,()=>this.lock(e)),this.release}release=()=>{--this.lockCount,this.lockCount===0&&this.restore&&this.timeoutUnlock.start(0,this.unlock)};unlock=()=>{this.lockCount===0&&this.restore&&(this.restore?.(),this.restore=null)};lock(e){if(this.lockCount===0||this.restore!==null)return;let t=zs(e),n=t.documentElement,r=t.body,i=Ri(n);if($h(i,n,r)){let t=new i.MutationObserver(()=>{$h(i,n,r)||(t.disconnect(),this.restore=null,this.lock(e))}),a={attributes:!0};t.observe(n,a),t.observe(r,a),this.restore=()=>t.disconnect();return}let a=Wo||!eg(e);this.restore=a?ng(e):rg(e)}};function ag(e=!0,t=null){X(()=>{if(e)return ig.acquire(t)},[e,t])}function og(e,t={}){let{enabled:n=!0,event:r=`click`,toggle:i=!0,ignoreMouse:a=!1,stickIfOpen:o=!0,touchOpenDelay:s=0,reason:c=yc}=t,l=e.context.dataRef,u=_.useRef(void 0),d=Ul(),f=Il(),p=_.useMemo(()=>{function t(t,n,r,i){let a=_c(c,n,r);t&&i===`touch`&&s>0?f.start(s,()=>{e.setOpen(!0,a)}):e.setOpen(t,a)}function n(t,n,r){let a=l.current.openEvent,s=e.select(`domReferenceElement`)!==n;return t&&s||!t||!i?!0:a&&(typeof o==`function`?o():o)?!r(a.type):!1}return{onPointerDown(e){u.current=es(e.pointerType,!0)&&$o(e.nativeEvent)?`virtual`:e.pointerType},onMouseDown(i){let o=u.current,s=i.nativeEvent,c=e.select(`open`);if(i.button!==0||r===`click`||es(o,!0)&&a)return;let l=n(c,i.currentTarget,e=>e===`click`||e===`mousedown`),f=is(s),p=Ps(f);if(p||o===`virtual`){t(l,s,p?f:i.currentTarget,o);return}let m=i.currentTarget;d.request(()=>{t(l,s,m,o)})},onClick(i){if(r===`mousedown-only`)return;let o=u.current;r===`mousedown`&&o?u.current=void 0:es(o,!0)&&a||t(n(e.select(`open`),i.currentTarget,e=>e===`click`||e===`mousedown`||e===`keydown`||e===`keyup`),i.nativeEvent,i.currentTarget,o)},onKeyDown(){u.current=void 0}}},[l,r,a,c,e,o,i,d,f,s]);return _.useMemo(()=>n?{reference:p}:qr,[n,p])}function sg(e){return gc&&e.movementX===0&&e.movementY===0}function cg(e,t,n){switch(e){case`vertical`:return t;case`horizontal`:return n;default:return t||n}}function lg(e,t){return cg(t,e===`ArrowUp`||e===`ArrowDown`,e===`ArrowLeft`||e===`ArrowRight`)}function ug(e,t,n){return cg(t,e===`ArrowDown`,n?e===`ArrowLeft`:e===`ArrowRight`)||e===`Enter`||e===` `||e===``}function dg(e,t,n){return cg(t,n?e===ss:e===cs,e===us)}function fg(e,t,n,r){return t===`both`||t===`horizontal`&&r?e===`Escape`:cg(t,n?e===cs:e===ss,e===ls)}function pg(e,t){let{listRef:n,activeIndex:r,onNavigate:i=()=>{},enabled:a=!0,selectedIndex:o=null,allowEscape:s=!1,loopFocus:c=!1,nested:l=!1,rtl:u=!1,virtual:d=!1,focusItemOnOpen:f=`auto`,focusItemOnHover:p=!0,openOnArrowKeyDown:m=!0,disabledIndices:h=void 0,orientation:g=`vertical`,triggerOrientation:v=g,parentOrientation:y,id:b,resetOnPointerLeave:x=!0,externalTree:S,nestedReturnFocusRef:C,grid:w}=t,T=w!=null;s&&(c||console.warn("`useListNavigation` looping must be enabled to allow escaping."),d||console.warn("`useListNavigation` must be virtual to allow escaping.")),g===`vertical`&&T&&console.warn("In grid list navigation mode, the `orientation` should",`be either "horizontal" or "both".`);let E=e.useState(`open`),D=e.useState(`floatingElement`),O=e.useState(`domReferenceElement`),k=e.context.dataRef,A=Rs(D),j=Is(O),M=Ll(A),N=Jc(),P=Yc(S),F=_.useRef(f),I=_.useRef(o??-1),L=_.useRef(null),R=_.useRef(!0),z=Q(e=>{i(I.current===-1?null:I.current,e)}),B=_.useRef(!!D),V=_.useRef(E),H=_.useRef(!1),U=_.useRef(!1),ee=_.useRef(null),te=Ll(h),W=Ll(E),ne=Ll(o),re=Ll(x),ie=Ul(),ae=Ul(),G=Q(()=>{ie.cancel();function e(e){d||(ee.current=wh(e,{sync:H.current,preventScroll:!0}))}let t=n.current[I.current],r=U.current;t&&e(t),(H.current?e=>e():e=>ie.request(e))(()=>{let i=n.current[I.current]||t;i&&(t||e(i),ue&&(r||!R.current)&&i.scrollIntoView?.({block:`nearest`,inline:`nearest`}))})});X(()=>{k.current.orientation=g},[k,g]),X(()=>{E||(L.current=null),E&&f===`auto`||(F.current=f)},[E,f]),X(()=>{a&&(E&&D?(I.current=o??-1,F.current&&o!=null&&(U.current=!0,z())):B.current&&(I.current=-1,z()))},[a,E,D,o,z]),X(()=>{if(a){if(!E)H.current=!1;else if(D){if(r==null){if(H.current=!1,ne.current!=null)return;if(B.current&&(I.current=-1,G()),(!V.current||!B.current)&&F.current&&(L.current!=null||F.current===!0&&L.current==null)){let e=0,t=()=>{n.current[0]==null?(e<2&&(e?e=>ae.request(e):queueMicrotask)(t),e+=1):(I.current=L.current==null||ug(L.current,v,u)||l?Vs(n):Hs(n),L.current=null,z())};t()}}else Bs(n.current,r)||(I.current=r,G(),U.current=!1)}}},[a,E,D,r,ne,l,n,v,u,z,G,ae]),X(()=>{if(!a||D||!P||d||!B.current)return;let e=P.nodesRef.current,t=e.find(e=>e.id===N)?.context?.elements.floating,n=ns(zs(O??t??null)),r=e.some(e=>e.context&&Z(e.context.elements.floating,n));t&&!r&&R.current&&t.focus({preventScroll:!0})},[a,D,O,P,N,d]),X(()=>{V.current=E,B.current=!!D});let K=r!=null,oe=Q(e=>{if(!W.current)return;let t=n.current.indexOf(e.currentTarget);t!==-1&&(I.current!==t||r!==t)&&(I.current=t,z(e))}),se=Q(()=>y??P?.nodesRef.current.find(e=>e.id===N)?.context?.dataRef?.current.orientation),ce=Q(()=>Vs(n,te.current)),le=Q(t=>{if(R.current=!1,H.current=!0,t.which===229||!W.current&&t.currentTarget===M.current)return;if(l&&fg(t.key,g,u,T)){lg(t.key,se())||Xo(t),e.setOpen(!1,_c(Ec,t.nativeEvent));let n=C?.current??O;Hi(n)&&n.focus();return}r!=null&&r!==I.current&&!Bs(n.current,r)&&(I.current=r);let i=I.current,a=Vs(n,h),o=Hs(n,h);if(j||(t.key===`Home`&&(Xo(t),I.current=a,z(t)),t.key===`End`&&(Xo(t),I.current=o,z(t))),w!=null){let e=w(t,I.current,n,g,c,u,h,a,o);if(e!=null&&e!==I.current&&(I.current=e,z(t)),g===`both`)return}if(lg(t.key,g)){Xo(t);let e=ns(t.currentTarget.ownerDocument);if(E&&!d&&Z(t.currentTarget,e)&&!n.current.some(t=>t!=null&&Z(t,e))){I.current=ug(t.key,g,u)?a:o,z(t),r===I.current&&G();return}let{index:l,wrapped:f}=Us(n.current,i,{decrement:!ug(t.key,g,u),loopFocus:c,allowEscape:s,disabledIndices:h,minIndex:a,maxIndex:o});f&&(H.current=!1),I.current=l,z(t)}}),ue=_.useMemo(()=>({onFocus(e){H.current=!0,oe(e)},onClick({currentTarget:e}){d||e.focus({preventScroll:!0})},onMouseMove(e){sg(e)||(H.current=!0,U.current=!1,p&&oe(e))},onPointerLeave(e){if(!W.current||!R.current||e.pointerType===`touch`)return;H.current=!0;let t=e.relatedTarget;if(p&&!n.current.includes(t)&&re.current&&(ee.current?.(),ee.current=null,I.current=-1,z(e),!d)){let e=M.current,t=ns(zs(e));e&&Z(e,t)&&e.focus({preventScroll:!0})}}}),[oe,W,M,p,n,z,re,d]),q=_.useMemo(()=>d&&E&&K&&{"aria-activedescendant":`${b}-${r}`},[d,E,K,b,r]),de=_.useMemo(()=>({...j?{}:q,onKeyDown(t){if(t.key===`Tab`&&t.shiftKey&&E&&!d){let n=is(t.nativeEvent);if(n&&!Z(M.current,n))return;Xo(t);let r=_c(wc,t.nativeEvent);e.setOpen(!1,r);let i=C?.current??O;!r.isCanceled&&Hi(i)&&i.focus()}else le(t)},onPointerMove(e){sg(e)||(R.current=!0)}}),[q,le,M,j,e,E,d,O,C]),fe=_.useMemo(()=>{function t(t){e.setOpen(!0,_c(Ec,t.nativeEvent,t.currentTarget))}function n(e){f===`auto`&&Qo(e.nativeEvent)&&(F.current=!d)}function r(e){F.current=f,f===`auto`&&$o(e.nativeEvent)&&(F.current=!0)}return{onKeyDown(n){let r=e.select(`open`);R.current=!1;let i=n.key.startsWith(`Arrow`),a=dg(n.key,se(),u),o=lg(n.key,r?g:v),s=(l?a:o)||n.key===`Enter`||n.key.trim()===``;if(d&&r&&(!l||Ps(n.currentTarget)))return le(n);if(r||m||!i){if(s){let e=lg(n.key,se());L.current=l&&e?null:n.key}l?a&&(Xo(n),r?(I.current=ce(),z(n),d&&M.current?.focus()):t(n)):o&&(ne.current!=null&&(I.current=ne.current),Xo(n),!r&&m?t(n):le(n),r&&z(n))}},onFocus(t){t.target===t.currentTarget&&e.select(`open`)&&!d&&(I.current=-1,z(t))},onPointerDown:r,onPointerEnter:r,onMouseDown:n,onClick:n}},[le,f,ce,l,z,e,m,g,v,se,u,ne,d,M]),pe=_.useMemo(()=>({...q,...fe}),[q,fe]);return _.useMemo(()=>a?{reference:pe,floating:de,item:ue,trigger:fe}:{},[a,pe,de,fe,ue])}function mg(e){let t=_.useRef(!0);t.current&&(t.current=!1,e())}var hg=(e,t)=>Object.is(e,t);function gg(e,t,n){return e==null||t==null?Object.is(e,t):n(e,t)}function _g(e,t,n){return Array.isArray(e)&&Array.isArray(t)?!cm(e,t,(e,t)=>gg(e,t,n)):e!==t}function vg(e,t,n){return e?e.some(e=>e!==void 0&&gg(t,e,n)):!1}function yg(e,t,n){return e?e.findIndex(e=>e!==void 0&&gg(e,t,n)):-1}function bg(e,t){if(t!==hg)return n=>vg(e,n,t);let n=new Set(e);return n.delete(void 0),t=>n.has(t)&&(t!==0||e.some(e=>Object.is(t,e)))}function xg(e,t,n,r){let i=r&&Array.isArray(t)?e.findIndex(bg(t,n)):yg(e,t,n);return i===-1?null:i}function Sg(e,t,n,r,i,a){return vg(r,t,i)?a!=null&&e>a&&vg(r,n[a],i)?a:e:e===a?xg(n,r,i,!0):a}function Cg(e,t,n){return e.filter(e=>!gg(t,e,n))}function wg(e){if(e==null)return``;if(typeof e==`string`)return e;try{return JSON.stringify(e)}catch{return String(e)}}function Tg(e){return typeof e==`object`&&!!e&&Array.isArray(e.items)}function Eg(e){return Tg(e?.[0])}function Dg(e){return Eg(e)?e.flatMap(e=>e.items):e}function Og(e){if(!Array.isArray(e))return e!=null&&`null`in e;let t=e;if(Eg(t)){for(let e of t)for(let t of e.items)if(t&&t.value==null&&t.label!=null)return!0;return!1}for(let e of t)if(e&&e.value==null&&e.label!=null)return!0;return!1}function kg(e,t){if(t&&e!=null)return t(e)??``;if(e&&typeof e==`object`){if(`label`in e&&e.label!=null)return String(e.label);if(`value`in e)return String(e.value)}return wg(e)}function Ag(e,t){return t&&e!=null?t(e)??``:e&&typeof e==`object`&&`value`in e&&`label`in e?wg(e.value):wg(e)}function jg(e,t,n){function r(){return kg(e,n)}if(n&&e!=null)return n(e);if(e&&typeof e==`object`&&`label`in e&&e.label!=null)return e.label;if(t&&!Array.isArray(t))return(Object.hasOwn(t,e)?t[e]:void 0)??r();if(Array.isArray(t)){let n=Dg(t);if(typeof e!=`object`||!e){let t=n.find(t=>t.value===e);return t&&t.label!=null?t.label:r()}if(`value`in e){let t=n.find(t=>t&&t.value===e.value);if(t&&t.label!=null)return t.label}}return r()}function Mg(e,t,n){return e.reduce((e,r,i)=>(i>0&&e.push(`, `),e.push((0,Y.jsx)(_.Fragment,{children:jg(r,t,n)},i)),e),[])}var Ng=_.createContext({register:()=>{},unregister:()=>{},subscribeMapChange:()=>()=>{},nextIndexRef:{current:0}});Ng.displayName=`CompositeListContext`;function Pg(){return _.useContext(Ng)}function Fg(e){let{children:t,elementsRef:n,labelsRef:r,onMapChange:i}=e,a=Q(i),[,o]=_.useState(0),s=jr(Lg).current,c=jr(Ig).current,l=_.useRef(0),u=_.useRef(!0),d=_.useRef(null),f=_.useRef(null),p=Q(()=>{u.current||(u.current=!0,o(e=>e+1))}),m=Q((e,t)=>{c.set(e,t),p()}),h=Q(e=>{c.delete(e),p()}),g=Q(e=>{let t=new Map;return n.current.length=0,r&&(r.current.length=0),e.forEach(e=>{t.set(e.element,{...e.registration.metadata??{},index:e.index}),n.current[e.index]=e.element,r&&(r.current[e.index]=e.registration.label===void 0?e.registration.textRef?.current?.textContent??e.element.textContent:e.registration.label)}),l.current=n.current.length,t});function v(e){if(f.current?.disconnect(),f.current=null,typeof MutationObserver!=`function`||e.length<2)return;let t=new MutationObserver(n=>{if(!Bg(n))return;let r=null;for(let n of e)if(n.isConnected){if(r&&Vg(r,n)>0){t.disconnect(),p();return}r=n}});f.current=t;let n=new Set;for(let t=1;t<e.length;t+=1){let r=zg(e[t-1],e[t]);r&&n.add(r)}n.forEach(e=>t.observe(e,{childList:!0}))}let y=Q(()=>{let[e,t]=Rg(c),n=g(e),r=d.current,i=!r||r.length!==e.length||e.some((e,t)=>{let n=r[t];return e.index!==n.index||e.element!==n.element||e.registration.index!==n.registration.index||e.registration.metadata!==n.registration.metadata});v(t),d.current=e,u.current=!1,i&&(s.forEach(e=>e(n)),a(n))});X(()=>(!u.current&&d.current&&g(d.current),()=>{n.current=[],r&&(r.current=[])}),[n,r,g]),X(()=>{u.current&&y()}),X(()=>()=>{f.current?.disconnect(),u.current=!0},[]);let b=Q(e=>(s.add(e),()=>{s.delete(e)})),x=_.useMemo(()=>({register:m,unregister:h,subscribeMapChange:b,nextIndexRef:l}),[m,h,b,l]);return(0,Y.jsx)(Ng.Provider,{value:x,children:t})}function Ig(){return new Map}function Lg(){return new Set}function Rg(e){let t=new Set,n=[],r=[];e.forEach((e,i)=>{if(!i.isConnected)return;let a=e.index,o={index:a??-1,element:i,registration:e};a===null?r.push(o):a>=0&&(t.add(a),n.push(o))});let i=0;return r.sort((e,t)=>Vg(e.element,t.element)),r.forEach(e=>{for(;t.has(i);)i+=1;e.index=i,n.push(e),i+=1}),t.size>0&&n.sort((e,t)=>e.index-t.index),[n,r.map(e=>e.element)]}function zg(e,t){let n=e.parentElement;for(;n&&!n.contains(t);)n=n.parentElement;return n}function Bg(e){for(let t of e)for(let e=0;e<t.removedNodes.length;e+=1)if(t.removedNodes[e].isConnected)return!0;return!1}function Vg(e,t){return e.nextElementSibling===t?-1:t.nextElementSibling===e?1:e.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_FOLLOWING?-1:1}function Hg(e={}){let{guess:t,label:n,metadata:r,textRef:i,index:a}=e,{register:o,unregister:s,subscribeMapChange:c,nextIndexRef:l}=Pg(),u=_.useRef(-1),[d,f]=_.useState(a==null&&t?()=>{if(u.current===-1){let e=l.current;l.current+=1,u.current=e}return u.current}:-1),p=a??d,m=_.useRef(null),h=_.useCallback(e=>{let t=m.current;t&&s(t),m.current=e,e&&o(e,{metadata:r??null,index:a??null,label:n,textRef:i})},[a,o,s,r,n,i]);return X(()=>{if(a==null)return c(e=>{let t=m.current?e.get(m.current)?.index:null;t!=null&&f(t)})},[a,c]),{ref:h,index:p}}function Ug(e,t){let{listRef:n,elementsRef:r,activeIndex:i,onMatch:a,disabledIndices:o,onTyping:s,enabled:c=!0,resetMs:l=750,selectedIndex:u=null}=t,d=Q(s),f=e.useState(`open`),p=Il(),m=_.useRef(``),h=_.useRef(u??i??-1),g=_.useRef(null),v=Q(e=>{function t(e){return r?.current[e]}function s(e){let n=t(e);return n&&!qs(n)||n?.matches(`:disabled`)?!1:o==null||!Gs(Kr,e,o)}function c(e,t,n=0){if(e.length===0)return-1;let r=(n%e.length+e.length)%e.length,i=t.toLowerCase();for(let t=0;t<e.length;t+=1){let n=(r+t)%e.length;if(e[n]?.toLowerCase().startsWith(i)&&s(n))return n}return-1}let _=n.current;if(m.current.length>0&&e.key===` `&&(Xo(e),d?.(!0)),m.current.length>0&&m.current[0]!==` `&&c(_,m.current)===-1&&e.key!==` `&&d?.(!1),_==null||e.key.length!==1||e.ctrlKey||e.metaKey||e.altKey)return;f&&e.key!==` `&&(Xo(e),d?.(!0));let v=m.current===``;v&&(h.current=u??i??-1),_.every((e,t)=>e&&s(t)?e[0]?.toLowerCase()!==e[1]?.toLowerCase():!0)&&m.current===e.key&&(m.current=``,h.current=g.current),m.current+=e.key,p.start(l,()=>{m.current=``,h.current=g.current,d?.(!1)});let y=((v?u??i??-1:h.current)??0)+1,b=c(_,m.current,y);b===-1?e.key!==` `&&(m.current=``,d?.(!1)):(a?.(b,e),g.current=b)}),y=Q(t=>{let n=t.relatedTarget,r=e.select(`domReferenceElement`),i=e.select(`floatingElement`);Z(r,n)||Z(i,n)||(p.clear(),m.current=``,h.current=g.current,d?.(!1))});X(()=>{(f||u===null)&&(p.clear(),g.current=null,m.current!==``&&(m.current=``,d?.(!1)))},[f,u,p,d]);let b=_.useMemo(()=>({onKeyDown:v,onBlur:y}),[v,y]);return _.useMemo(()=>c?{reference:b,floating:b}:{},[c,b])}function Wg(e){return e==null?void 0:`${e}-label`}function Gg(e,t){return e??t}var Kg=5;function qg(e,t){let n=Jg(t);return e.clientX>=n.left-Kg&&e.clientX<=n.right+Kg&&e.clientY>=n.top-Kg&&e.clientY<=n.bottom+Kg}function Jg(e){let t=e.getBoundingClientRect(),n=Ri(e);if(Yo)return t;let r=n.getComputedStyle(e,`::before`),i=n.getComputedStyle(e,`::after`);if(r.content===`none`&&i.content===`none`)return t;let a=parseFloat(r.width)||0,o=parseFloat(r.height)||0,s=parseFloat(i.width)||0,c=parseFloat(i.height)||0,l=Math.max(t.width,a,s),u=Math.max(t.height,o,c),d=l-t.width,f=u-t.height;return{left:t.left-d/2,right:t.right+d/2,top:t.top-f/2,bottom:t.bottom+f/2}}var Yg=_.memo(_.forwardRef(function(e,t){let{render:n,className:r,style:i,keepMounted:a,selected:o,...s}=e,c=_.useRef(null),{transitionStatus:l,setMounted:u}=Xl(o),d=di(`span`,e,{ref:[t,c],state:{selected:o,transitionStatus:l},props:[{"aria-hidden":!0,children:`✔️`},s],stateAttributesMapping:hs});return Yl({batch:!0,enabled:!o,open:o,ref:c,onComplete(){o||u(!1)}}),d}));Yg.displayName=`ItemIndicator`;var Xg=20;function Zg(e,t,n,r){let[i,a]=_.useState(!1);X(()=>{if(!e||!t||n==null){a(!1);return}let r=zs(n).documentElement.clientWidth,i=n.offsetWidth;a(r>0&&i>0&&i>=r-Xg)},[e,t,n]),ag(e&&(!t||i),r)}var Qg=_.createContext(void 0);Qg.displayName=`ToolbarRootContext`;function $g(e){let t=_.useContext(Qg);if(t===void 0&&!e)throw Error(`Base UI: ToolbarRootContext is missing. Toolbar parts must be placed within <Toolbar.Root>.`);return t}function e_(e){return e==null||e.hasAttribute(`disabled`)||e.getAttribute(`aria-disabled`)===`true`}var t_=new Set([`ArrowUp`,`ArrowDown`,`ArrowLeft`,`ArrowRight`,`Home`,`End`]),n_=`overflow-hidden rounded-lg bg-kumo-base shadow-xs ring ring-kumo-line`,r_=`flex w-full flex-col overflow-hidden rounded-lg bg-kumo-elevated text-base ring ring-kumo-hairline`,i_=`-my-2 flex items-center gap-2 bg-kumo-elevated p-4 text-base font-medium text-kumo-subtle`,a_=`relative flex flex-col gap-2 overflow-hidden rounded-lg bg-kumo-base p-4 pr-3 text-inherit no-underline ring ring-kumo-fill`;function o_(e={}){return J(n_)}function s_(e){return _.Children.toArray(e).some(e=>(0,_.isValidElement)(e)?e.type===u_||e.type===l_||e.type===_.Fragment&&s_(e.props.children):!1)}var c_=(0,_.forwardRef)(function({children:e,className:t,render:n,...r},i){return xi({defaultTagName:`div`,render:n,ref:i,props:Qr({className:J(s_(e)?r_:o_(),t)},r,{children:e})})});function l_({children:e,className:t,...n}){return(0,Y.jsx)(`div`,{className:J(i_,t),...n,children:e})}function u_({children:e,className:t,...n}){return(0,Y.jsx)(`div`,{className:J(a_,t),...n,children:e})}c_.displayName=`LayerCard`,l_.displayName=`LayerCard.Secondary`,u_.displayName=`LayerCard.Primary`;var d_=Object.assign(c_,{Primary:u_,Secondary:l_});function f_(e=2e3){let[t,n]=(0,_.useState)(!1),r=(0,_.useRef)(null),i=(0,_.useRef)(0);return(0,_.useEffect)(()=>()=>{i.current+=1,r.current!==null&&clearTimeout(r.current)},[]),{copied:t,runCopy:(0,_.useCallback)(async(t,a)=>{let o=++i.current;r.current!==null&&(clearTimeout(r.current),r.current=null);try{return await t(()=>i.current===o),i.current===o&&(n(!0),r.current=setTimeout(()=>{i.current===o&&(n(!1),r.current=null)},e),!0)}catch(e){return i.current===o&&(n(!1),a?.(e)),!1}},[e]),reset:(0,_.useCallback)(()=>{i.current+=1,r.current!==null&&(clearTimeout(r.current),r.current=null),n(!1)},[])}}var p_=(e,t)=>Math.floor(Math.random()*(t-e+1)+e),m_=(e,t)=>(Math.random()*(t-e)+e).toFixed(2),h_=({minWidth:e=30,maxWidth:t=100,minDuration:n=1.3,maxDuration:r=1.7,minDelay:i=0,maxDelay:a=.5,blockHeight:o,className:s})=>{let{width:c,duration:l,delay:u}=(0,_.useMemo)(()=>({width:p_(e,t),duration:m_(n,r),delay:m_(i,a)}),[e,t,n,r,i,a]),d={"--skeleton-width":`${c}%`,"--shimmer-duration":`${l}s`,"--shimmer-delay":`${u}s`},f=(0,Y.jsx)(`div`,{className:J(`skeleton-line`,s),style:d});if(o!==void 0){let e=typeof o==`number`?`${o}px`:o;return(0,Y.jsx)(`div`,{className:`flex items-center`,style:{height:e},children:f})}return f};function g_(e){let[t,n]=_.useState({current:e,previous:null});return Object.is(e,t.current)||n({current:e,previous:t.current}),t.previous}var __=_.forwardRef(function(e,t){let{className:n,render:r,orientation:i=`horizontal`,style:a,...o}=e;return di(`div`,e,{state:{orientation:i},ref:t,props:[{role:`presentation`},o]})});__.displayName=`ListboxSeparator`;function v_(e,t){return Math.max(0,e-t)}function y_(e,t){if(t<=0)return 0;let n=Vm(e,0,t),r=n,i=t-n,a=r<=1,o=i<=1;return a&&o?r<=i?0:t:a?0:o?t:n}var b_=`base-ui-disable-scrollbar`,x_={className:b_,getElement(e){return(0,Y.jsx)(`style`,{nonce:e,href:b_,precedence:`base-ui:low`,children:`.${b_}{scrollbar-width:none}.${b_}::-webkit-scrollbar{display:none}`})}};x_.getElement.displayName=`styleDisableScrollbar.getElement`;var S_=_.createContext(void 0);S_.displayName=`CSPContext`;var C_={disableStyleElements:!1};function w_(){return _.useContext(S_)??C_}var T_=_.createContext(void 0);T_.displayName=`SelectRootContext`;var E_=_.createContext(void 0);E_.displayName=`SelectFloatingContext`;function D_(){let e=_.useContext(T_);if(e===void 0)throw Error(`Base UI: SelectRootContext is missing. Select parts must be placed within <Select.Root>.`);return e}function O_(){let e=_.useContext(E_);if(e===void 0)throw Error(`Base UI: SelectFloatingContext is missing. Select parts must be placed within <Select.Root>.`);return e}var k_={id:e=>e.id,labelId:e=>e.labelId,modal:e=>e.modal,multiple:e=>e.multiple,disabled:e=>e.disabled,readOnly:e=>e.readOnly,required:e=>e.required,highlightItemOnHover:e=>e.highlightItemOnHover,items:e=>e.items,itemToStringLabel:e=>e.itemToStringLabel,isItemEqualToValue:e=>e.isItemEqualToValue,value:e=>e.value,hasSelectedValue:e=>{let{value:t,multiple:n,itemToStringValue:r}=e;return t==null?!1:n&&Array.isArray(t)?t.length>0:Ag(t,r)!==``},hasNullItemLabel:(e,t)=>t?Og(e.items):!1,open:e=>e.open,mounted:e=>e.mounted,forceMount:e=>e.forceMount,transitionStatus:e=>e.transitionStatus,openMethod:e=>e.openMethod,activeIndex:e=>e.activeIndex,selectedIndex:e=>e.selectedIndex,isActive:(e,t)=>e.activeIndex===t,isSelected:(e,t)=>{let n=e.isItemEqualToValue,r=e.value;return e.multiple?Array.isArray(r)&&r.some(e=>gg(t,e,n)):gg(t,r,n)},isSelectedByFocus:(e,t)=>e.selectedIndex===t,popupProps:e=>e.popupProps,triggerProps:e=>e.triggerProps,itemRoot:e=>e.itemRoot,triggerElement:e=>e.triggerElement,positionerElement:e=>e.positionerElement,listElement:e=>e.listElement,popupSide:e=>e.popupSide,scrollUpArrowVisible:e=>e.scrollUpArrowVisible,scrollDownArrowVisible:e=>e.scrollDownArrowVisible,hasScrollArrows:e=>e.hasScrollArrows};function A_(e){let{id:t,value:n,defaultValue:r=null,onValueChange:i,open:a,defaultOpen:o=!1,onOpenChange:s,name:c,form:l,autoComplete:u,disabled:d=!1,readOnly:f=!1,required:p=!1,modal:m=!0,actionsRef:h,inputRef:g,onOpenChangeComplete:v,items:y,multiple:b=!1,itemToStringLabel:x,itemToStringValue:S,isItemEqualToValue:C=hg,highlightItemOnHover:w=!0,children:T}=e,{clearErrors:E}=Rp(),{setDirty:D,setTouched:O,setFocused:k,validityData:A,setFilled:j,name:M,disabled:N,validation:P,validationMode:F}=Pp(),I=rm({id:t}),L=N||d,R=M??c,[z,B]=om({controlled:n,default:b?r??Kr:r,name:`Select`,state:`value`}),[V,H]=om({controlled:a,default:o,name:`Select`,state:`open`}),U=_.useRef([]),ee=_.useRef([]),te=_.useRef(null),W=_.useRef(null),ne=_.useRef(0),re=_.useRef(null),ie=_.useRef([]),ae=_.useRef(!1),G=_.useRef(null),K=_.useRef(null),oe=_.useRef({allowSelectedMouseUp:!1,allowUnselectedMouseUp:!1,dragY:0}),se=_.useRef(!1),ce=_.useRef(z),{openMethod:le,triggerProps:ue}=qh(V),q=jr(()=>new Al({id:I,labelId:void 0,modal:m,multiple:b,disabled:L,readOnly:f,required:p,highlightItemOnHover:w,itemToStringLabel:x,itemToStringValue:S,isItemEqualToValue:C,value:z,open:V,mounted:V,transitionStatus:void 0,items:y,forceMount:!1,openMethod:null,activeIndex:null,selectedIndex:null,popupProps:qr,triggerProps:qr,itemRoot:{props:qr,multiple:b,disabled:L,readOnly:f,isItemEqualToValue:C},triggerElement:null,positionerElement:null,listElement:null,popupSide:null,scrollUpArrowVisible:!1,scrollDownArrowVisible:!1,hasScrollArrows:!1},{setValue:Gr,setOpen:Gr,handleScrollArrowVisibility:Gr,onOpenChangeComplete:Gr,listRef:U,popupRef:te,scrollHandlerRef:W,scrollArrowsMountedCountRef:ne,valueRef:re,valuesRef:ie,labelsRef:ee,typingRef:ae,selectionRef:oe,firstItemTextRef:G,selectedItemTextRef:K,alignItemWithTriggerActiveRef:se,initialValueRef:ce},k_)).current,[de,fe]=_.useState(!1),{mounted:pe,transitionStatus:me,forceUnmount:he}=ru({open:V,ref:te,preventUnmountOnClose:de,setPreventUnmountOnClose:fe,onUnmount(){q.update({activeIndex:null,openMethod:null,scrollUpArrowVisible:!1,scrollDownArrowVisible:!1}),v?.(!1)}}),ge=q.useState(`activeIndex`),_e=q.useState(`selectedIndex`),ve=q.useState(`triggerElement`),ye=q.useState(`positionerElement`),be=g_(le),xe=le??be,Se=_.useMemo(()=>b?``:Ag(z,S),[b,z,S]),Ce=_.useMemo(()=>b&&Array.isArray(z)?z.map(e=>Ag(e,S)):Ag(z,S),[b,z,S]);im(Ll(ve),I,z,Q(()=>Ce),!L,c);let we=b?Array.isArray(z)&&z.length>0:z!=null&&Se!==``;X(()=>{j(we)},[we,j]),X(function(){let e=xg(ie.current,z,C,b);e===null&&(K.current=null),!V&&q.set(`selectedIndex`,e)},[b,V,z,C,q]),am(z,()=>{E(R),D(_g(z,A.initialValue,C)),P.change(z)});let Te=Q((e,t)=>{let n=t,r=uu(n);s?.(e,n),!t.isCanceled&&(e||fe(r()),H(e),e||t.reason!==`focus-out`&&t.reason!==`outside-press`||(O(!0),k(!1),F===`onBlur`&&P.commit(z)))});_.useImperativeHandle(h,()=>({unmount:he,close:()=>{q.state.open&&Te(!1,_c(kc))}}),[he,Te,q]);let Ee=Q((e,t)=>{i?.(e,t),!t.isCanceled&&B(e)}),De=Q(e=>{let t=v_(e.scrollHeight,e.clientHeight),n=y_(e.scrollTop,t),r=n>0,i=n<t;q.set(`scrollUpArrowVisible`,r),q.set(`scrollDownArrowVisible`,i)}),Oe=zm({open:V,onOpenChange:Te,elements:{reference:ve,floating:ye}}),ke=og(Oe,{enabled:!L,event:`mousedown`}),Ae=tu(Oe),je=pg(Oe,{enabled:!L,listRef:U,activeIndex:ge,selectedIndex:_e,disabledIndices:Kr,onNavigate(e){(e!==null||V)&&q.set(`activeIndex`,e)},focusItemOnHover:w}),Me=Ug(Oe,{enabled:!L&&(V||!f&&!b),listRef:ee,activeIndex:ge,selectedIndex:_e,disabledIndices:e=>e_(U.current[e]),onMatch(e){V?q.set(`activeIndex`,e):Ee(ie.current[e],_c(vc))},onTyping(e){ae.current=e}}),Ne=_.useMemo(()=>Qr(Me.reference,je.reference,Ae.reference,ke.reference,ue),[ke.reference,Me.reference,je.reference,Ae.reference,ue]),Pe=_.useMemo(()=>Qr(iu,Me.floating,je.floating,Ae.floating),[Me.floating,je.floating,Ae.floating]),Fe=je.item??qr,Ie=_.useMemo(()=>({props:Fe,multiple:b,disabled:L,readOnly:f,isItemEqualToValue:C}),[Fe,b,L,f,C]);q.useContextCallback(`setValue`,Ee),q.useContextCallback(`setOpen`,Te),q.useContextCallback(`handleScrollArrowVisibility`,De),q.useContextCallback(`onOpenChangeComplete`,v),mg(()=>{q.update({popupProps:Pe,triggerProps:Ne,itemRoot:Ie})}),q.useSyncedValues({id:I,modal:m,multiple:b,disabled:L,readOnly:f,required:p,highlightItemOnHover:w,value:z,open:V,mounted:pe,transitionStatus:me,popupProps:Pe,triggerProps:Ne,itemRoot:Ie,items:y,itemToStringLabel:x,itemToStringValue:S,isItemEqualToValue:C,openMethod:xe});let Le=Mr(g,P.inputRef),Re=b?void 0:R,ze=_.useMemo(()=>!b||!Array.isArray(z)||!R?null:z.map(e=>{let t=Ag(e,S);return(0,Y.jsx)(`input`,{type:`hidden`,form:l,name:R,value:t,disabled:L},t)}),[b,z,l,R,S,L]);return(0,Y.jsxs)(T_.Provider,{value:q,children:[(0,Y.jsx)(E_.Provider,{value:Oe,children:T}),(0,Y.jsx)(`input`,{...P.getValidationProps(L,{onFocus(){q.state.triggerElement?.focus({focusVisible:!0})},onChange(e){if(e.nativeEvent.defaultPrevented||L||f)return;let t=e.currentTarget.value,n=_c(vc,e.nativeEvent);function r(){if(b)return;let e=t.toLowerCase(),r=ie.current.findIndex(t=>Ag(t,S).toLowerCase()===e||kg(t,x).toLowerCase()===e);r===-1&&(r=ie.current.findIndex((t,n)=>{let r=ee.current[n];return r!=null&&r.toLowerCase()===e}));let i=ie.current[r];i!=null&&Ee(i,n)}q.set(`forceMount`,!0),queueMicrotask(r)}}),id:I&&Re==null?`${I}-hidden-input`:void 0,form:l,name:Re,autoComplete:u,value:Se,disabled:L,required:p&&!(b&&we),readOnly:f,ref:Le,style:R?zc:Rc,tabIndex:-1,"aria-hidden":!0,suppressHydrationWarning:!0}),ze]})}var j_=_.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,o=a;delete o.id;let s=Pp(),c=D_(),l=c.useState(`triggerElement`),u=c.useState(`id`),d=zp({id:Wg(u),fallbackControlId:l?.id??u,setLabelId(e){let t=typeof e==`function`?e(c.state.labelId):e;c.set(`labelId`,t)}});return di(`div`,e,{ref:t,state:s.state,props:[d,a],stateAttributesMapping:jp})});j_.displayName=`SelectLabel`;var M_=`data-popup-side`,N_=400,P_={...Ds,...jp,popupSide:e=>e?{[M_]:e}:null,value:()=>null},F_=_.forwardRef(function(e,t){let{render:n,className:r,id:i,disabled:a=!1,nativeButton:o=!0,style:s,...c}=e,{setTouched:l,validationMode:u,validation:d,state:f,disabled:p}=Pp(),{labelId:m}=Ip(),h=D_(),g=h.useState(`readOnly`),v=h.useState(`required`),y=h.useState(`disabled`),b=p||y||a,x=h.useState(`open`),S=h.useState(`mounted`),C=h.useState(`value`),w=h.useState(`triggerProps`),T=h.useState(`positionerElement`),E=h.useState(`listElement`),D=h.useState(`popupSide`),O=h.useState(`id`),k=h.useState(`labelId`),A=h.useState(`hasSelectedValue`),j=S&&T?D:null,M=i??O,N=Gg(m,k);rm({id:i});let P=Ll(T),F=_.useRef(null),I=gm(b,F),{getButtonProps:L,buttonRef:R}=xm({disabled:b,native:o}),z=h.useStateSetter(`triggerElement`),B=Il(),V=Il(),H=Il();_.useEffect(()=>{if(x)return H.start(N_,()=>{h.context.selectionRef.current.allowUnselectedMouseUp=!0,h.context.selectionRef.current.allowSelectedMouseUp=!0}),()=>{H.clear()};h.context.selectionRef.current={allowSelectedMouseUp:!1,allowUnselectedMouseUp:!1,dragY:0},V.clear()},[x,h,V,H]);let U=Qr(w,{id:M,role:`combobox`,"aria-expanded":x,"aria-haspopup":`listbox`,"aria-controls":x?E?.id??Rs(T)?.id:void 0,"aria-labelledby":N,"aria-readonly":g||void 0,"aria-required":v||void 0,tabIndex:b?-1:0,onFocus(e){I(!0),x&&h.context.alignItemWithTriggerActiveRef.current&&h.context.setOpen(!1,_c(vc,e.nativeEvent)),B.start(0,()=>{h.set(`forceMount`,!0)})},onBlur(e){Z(T,e.relatedTarget)||(l(!0),I(!1),u===`onBlur`&&d.commit(C))},onMouseDown(e){if(x)return;let t=zs(e.currentTarget);function n(e){if(!F.current)return;let t=e.target;Z(F.current,t)||Z(P.current,t)||qg(e,F.current)||h.context.setOpen(!1,_c(Dc,e))}V.start(0,()=>{t.addEventListener(`mouseup`,n,{once:!0})})}},c,L),ee=d.getValidationProps(b,U);ee.role=`combobox`;let te={...f,open:x,disabled:b,value:C,readOnly:g,popupSide:j,placeholder:!A};return di(`button`,e,{ref:[t,F,R,z],state:te,stateAttributesMapping:P_,props:ee})});F_.displayName=`SelectTrigger`;var I_={value:()=>null},L_=_.forwardRef(function(e,t){let{className:n,render:r,children:i,placeholder:a,style:o,...s}=e,c=D_(),l=c.useState(`value`),u=c.useState(`items`),d=c.useState(`itemToStringLabel`),f=c.useState(`hasSelectedValue`),p=!f&&a!=null&&i==null,m=c.useState(`hasNullItemLabel`,p),h={value:l,placeholder:!f},g=null;return g=typeof i==`function`?i(l):i??(p&&!m?a:Array.isArray(l)?Mg(l,u,d):jg(l,u,d)),di(`span`,e,{state:h,ref:[t,c.context.valueRef],props:[{children:g},s],stateAttributesMapping:I_})});L_.displayName=`SelectValue`;var R_=_.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e;return di(`span`,e,{state:{open:D_().useState(`open`)},ref:t,props:[{"aria-hidden":!0,children:`▼`},a],stateAttributesMapping:Es})});R_.displayName=`SelectIcon`;var z_=_.forwardRef(function(e,t){let n=D_(),r=n.useState(`mounted`),i=n.useState(`forceMount`);return r||i?(0,Y.jsx)(bl,{ref:t,...e}):null});z_.displayName=`SelectPortal`;var B_=_.createContext(void 0);B_.displayName=`SelectPositionerContext`;function V_(){let e=_.useContext(B_);if(!e)throw Error(`Base UI: SelectPositionerContext is missing. SelectPositioner parts must be placed within <Select.Positioner>.`);return e}function H_(e,t){e&&Object.assign(e.style,t)}var U_={position:`relative`,maxHeight:`100%`,overflowX:`hidden`,overflowY:`auto`},W_={position:`fixed`},G_=_.forwardRef(function(e,t){let{anchor:n,className:r,render:i,positionMethod:a,side:o,align:s,sideOffset:c,alignOffset:l,collisionBoundary:u=`clipping-ancestors`,collisionPadding:d,arrowPadding:f,sticky:p,disableAnchorTracking:m,alignItemWithTrigger:h=!0,collisionAvoidance:g=pl,style:v,...y}=e,b=D_(),x=O_(),S=b.useState(`open`),C=b.useState(`mounted`),w=b.useState(`modal`),T=b.useState(`value`),E=b.useState(`openMethod`),D=b.useState(`positionerElement`),O=b.useState(`triggerElement`),k=b.useState(`isItemEqualToValue`),A=b.useState(`transitionStatus`),j=_.useRef(null),M=_.useRef(null),[N,P]=_.useState(h),F=C&&N&&E!==`touch`;!C&&N!==h&&P(h),_.useImperativeHandle(b.context.alignItemWithTriggerActiveRef,()=>F),Zg((F||w)&&S,E===`touch`,D,O);let I=dd({anchor:n,floatingRootContext:x,positionMethod:a,mounted:C,side:o,sideOffset:c,align:s,alignOffset:l,arrowPadding:f,collisionBoundary:u,collisionPadding:d,sticky:p,disableAnchorTracking:m??F,collisionAvoidance:g,keepMounted:!0}),L=F?`none`:I.side,R=F?W_:I.positionerStyles,z={open:S,side:L,align:I.align,anchorHidden:I.anchorHidden};X(()=>{b.set(`popupSide`,I.side)},[b,I.side]);let B=hd(e,z,{styles:R,transitionStatus:A,props:y,refs:[t,b.useStateSetter(`positionerElement`)],hidden:!C,inert:!S}),V=_.useRef(0),H=Q(e=>{if(b.context.valuesRef.current.length===0)return;let t=V.current;V.current=e.size;let n=_c(vc);if(t!==0&&!b.state.multiple&&T!==null&&yg(b.context.valuesRef.current,T,k)===-1){let e=b.context.initialValueRef.current,t=e!=null&&yg(b.context.valuesRef.current,e,k)!==-1?e:null;b.context.setValue(t,n),t===null&&(b.set(`selectedIndex`,null),b.context.selectedItemTextRef.current=null)}if(t!==0&&b.state.multiple&&Array.isArray(T)){let e=T.filter(e=>yg(b.context.valuesRef.current,e,k)!==-1);e.length!==T.length&&(b.context.setValue(e,n),e.length===0&&(b.set(`selectedIndex`,null),b.context.selectedItemTextRef.current=null))}if(S&&F){b.update({scrollUpArrowVisible:!1,scrollDownArrowVisible:!1});let e={height:``};H_(D,e),H_(b.context.popupRef.current,e)}}),U=_.useMemo(()=>({...I,side:L,alignItemWithTriggerActive:F,setControlledAlignItemWithTrigger:P,scrollUpArrowRef:j,scrollDownArrowRef:M}),[I,L,F,P]);return(0,Y.jsx)(Fg,{elementsRef:b.context.listRef,labelsRef:b.context.labelsRef,onMapChange:H,children:(0,Y.jsxs)(B_.Provider,{value:U,children:[C&&w&&(0,Y.jsx)(Jh,{inert:Bm(!S),cutout:O}),B]})})});G_.displayName=`SelectPositioner`;var K_=`--transform-origin`,q_={...Os,...hs},J_=_.forwardRef(function(e,t){let{render:n,className:r,style:i,finalFocus:a,...o}=e,s=D_(),c=s.useState(`multiple`),l=s.useState(`readOnly`),u=s.useState(`highlightItemOnHover`),d=O_(),{side:f,align:p,alignItemWithTriggerActive:m,isPositioned:h,setControlledAlignItemWithTrigger:g}=V_(),v=$g(!0)!=null,y=Xu(),{nonce:b,disableStyleElements:x}=w_(),S=s.useState(`id`),C=s.useState(`open`),w=s.useState(`openMethod`),T=s.useState(`mounted`),E=s.useState(`popupProps`),D=s.useState(`transitionStatus`),O=s.useState(`triggerElement`),k=s.useState(`positionerElement`),A=s.useState(`listElement`),j=_.useRef(!1),M=_.useRef(!1),N=_.useRef({}),P=Ul(),F=Q(e=>{if(!k||!s.context.popupRef.current||!M.current)return;let t=k.style.top===`0px`,n=k.style.bottom===`0px`;if(j.current||!m||!t&&!n){s.context.handleScrollArrowVisibility(e);return}let r=Z_(k),i=Q_(k.getBoundingClientRect().height,`y`,r),a=zs(k),o=Ri(k),c=o.getComputedStyle(k),l=parseFloat(c.marginTop),u=parseFloat(c.marginBottom),d=Y_(o.getComputedStyle(s.context.popupRef.current)),f=Math.min(a.documentElement.clientHeight-l-u,d),p=e.scrollTop,h=X_(e),g=null,_=e=>{k.style.height=`${e}px`},v=t?h-p:p,y=Math.min(i+v,f);if(v<=1){let n=Vm(v,0,f-i);n>0&&_(i+n),e.scrollTop=t?h:0,f-(i+n)<=1&&(j.current=!0),s.context.handleScrollArrowVisibility(e);return}f-y>1?g=t?1/0:0:n&&p<h&&(g=p-(v-(i+v-f)));let b=Math.ceil(y);if(b!==0&&_(b),g!=null){let t=Vm(g,0,X_(e));Math.abs(e.scrollTop-t)>1&&(e.scrollTop=t)}b>=f-1&&(j.current=!0),s.context.handleScrollArrowVisibility(e)});_.useImperativeHandle(s.context.scrollHandlerRef,()=>F,[F]),Yl({open:C,ref:s.context.popupRef,onComplete(){C&&s.context.onOpenChangeComplete(!0)}});let I={open:C,transitionStatus:D,side:f,align:p};X(()=>{k&&s.context.popupRef.current&&!Object.keys(N.current).length&&(N.current={top:k.style.top||`0`,left:k.style.left||`0`,right:k.style.right,height:k.style.height,bottom:k.style.bottom,minHeight:k.style.minHeight,maxHeight:k.style.maxHeight,marginTop:k.style.marginTop,marginBottom:k.style.marginBottom})},[s,k]),X(()=>{C||m||(M.current=!1,j.current=!1,H_(k,N.current))},[C,m,k]),X(()=>{let e=s.context.popupRef.current;if(!C||!O||!k||!e||m&&!h||s.state.transitionStatus===`ending`)return;if(M.current=!0,e.style.removeProperty(K_),!m){P.request(()=>s.context.handleScrollArrowVisibility(A||e));return}let t=tv(e);try{let t=s.context.selectedItemTextRef.current;t?.isConnected||(t=!s.select(`hasSelectedValue`)&&s.context.firstItemTextRef.current?.isConnected?s.context.firstItemTextRef.current:null);let n=s.context.valueRef.current,r=Ri(k),i=r.getComputedStyle(k),a=r.getComputedStyle(e),o=zs(O),c=Z_(O),l=$_(O.getBoundingClientRect(),c),d=$_(k.getBoundingClientRect(),c),f=l.height,p=A||e,m=p.scrollHeight,h=parseFloat(a.borderBottomWidth),_=parseFloat(i.marginTop)||10,v=parseFloat(i.marginBottom)||10,b=parseFloat(i.minHeight)||100,x=Y_(a),S=o.documentElement.clientHeight-_-v,C=o.documentElement.clientWidth,w=S-l.bottom+f,T,E=y===`rtl`?l.right-d.width:l.left,D=0;if(t&&n){let e=$_(n.getBoundingClientRect(),c);T=$_(t.getBoundingClientRect(),c),E=d.left+(y===`rtl`?e.right-T.right:e.left-T.left);let r=e.top-l.top+e.height/2;D=T.top-d.top+T.height/2-r}let M=w+D+v+h,P=Math.min(S,M),F=S-_-v,I=M-P,L=C-5;k.style.left=`${Vm(E,5,L-d.width)}px`,k.style.height=`${P}px`,k.style.maxHeight=`none`,k.style.marginTop=`${_}px`,k.style.marginBottom=`${v}px`,e.style.height=`100%`;let R=X_(p),z=I>=R-1;z&&(P=Math.min(S,d.height)-(I-R));let B=l.top<20||l.bottom>S-20||Math.ceil(P)+1<Math.min(m,b),V=(r.visualViewport?.scale??1)!==1&&gc;if(B||V){H_(k,N.current),g(!1);return}let H=Math.max(b,P);if(z){let e=Math.max(0,S-M);k.style.top=d.height>=F?`0`:`${e}px`,k.style.height=`${P}px`,p.scrollTop=X_(p)}else k.style.bottom=`0`,p.scrollTop=I;if(T){let t=d.top,n=d.height,r=T.top+T.height/2,i=Vm(n>0?(r-t)/n*100:50,0,100);e.style.setProperty(K_,`50% ${i}%`)}(H===S||P>=x)&&(j.current=!0),s.context.handleScrollArrowVisibility(p),u&&s.state.selectedIndex===null&&s.state.activeIndex===null&&s.context.listRef.current[0]!=null&&s.set(`activeIndex`,0)}finally{t()}},[s,C,k,O,m,g,P,A,u,y,h]),_.useEffect(()=>{if(!m||!k||!C)return;let e=Ri(k);function t(e){s.context.setOpen(!1,_c(Ac,e))}return jc(e,`resize`,t)},[s,m,k,C]);let L={...A?{role:`presentation`}:{role:`listbox`,"aria-multiselectable":c||void 0,"aria-readonly":l||void 0,id:`${S}-list`},onKeyDown(e){v&&t_.has(e.key)&&e.stopPropagation()},onScroll(e){A||F(e.currentTarget)},...m&&{style:A?{height:`100%`}:U_},className:!A&&m?x_.className:void 0},R=di(`div`,e,{ref:[t,s.context.popupRef],state:I,stateAttributesMapping:q_,props:[E,L,md(D),o]});return(0,Y.jsxs)(_.Fragment,{children:[!x&&x_.getElement(b),(0,Y.jsx)(Wh,{context:d,modal:!1,disabled:!T,openInteractionType:w,returnFocus:a,restoreFocus:!0,children:R})]})});J_.displayName=`SelectPopup`;function Y_(e){let t=e.maxHeight;return t.endsWith(`px`)&&parseFloat(t)||1/0}function X_(e){return v_(e.scrollHeight,e.clientHeight)}function Z_(e){return _o.getScale(e)}function Q_(e,t,n){return e/n[t]}function $_(e,t){return Na({x:Q_(e.x,`x`,t),y:Q_(e.y,`y`,t),width:Q_(e.width,`x`,t),height:Q_(e.height,`y`,t)})}var ev=[[`transform`,`none`],[`scale`,`1`],[`translate`,`0 0`]];function tv(e){let{style:t}=e,n={};for(let[e,r]of ev)n[e]=t.getPropertyValue(e),t.setProperty(e,r,`important`);return()=>{for(let[e]of ev){let r=n[e];r?t.setProperty(e,r):t.removeProperty(e)}}}var nv=_.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,o=D_(),s=o.useState(`multiple`),c=o.useState(`readOnly`),{alignItemWithTriggerActive:l}=V_(),u=o.useState(`hasScrollArrows`),d=o.useState(`openMethod`),f={id:`${o.useState(`id`)}-list`,role:`listbox`,"aria-multiselectable":s||void 0,"aria-readonly":c||void 0,onScroll(e){o.context.scrollHandlerRef.current?.(e.currentTarget)},...l&&{style:U_},className:u&&d!==`touch`?x_.className:void 0};return di(`div`,e,{ref:[t,o.useStateSetter(`listElement`)],props:[f,a]})});nv.displayName=`SelectList`;var rv=_.createContext(void 0);rv.displayName=`SelectItemContext`;function iv(){let e=_.useContext(rv);if(!e)throw Error(`Base UI: SelectItemContext is missing. SelectItem parts must be placed within <Select.Item>.`);return e}var av=_.memo(_.forwardRef(function(e,t){let{render:n,className:r,style:i,value:a=null,label:o,disabled:s=!1,nativeButton:c=!1,...l}=e,u=_.useRef(null),d=Hg({guess:!0,label:o,textRef:u}),f=D_(),{props:p,multiple:m,disabled:h,readOnly:g,isItemEqualToValue:v}=f.useState(`itemRoot`),y=h||s,b=f.useState(`isActive`,d.index),x=f.useState(`open`),S=f.useState(`isSelected`,a),C=f.useState(`isSelectedByFocus`,d.index),w=d.index,T=_.useRef(null);X(()=>{let e=f.context.valuesRef.current;return e[w]=a,()=>{delete e[w]}},[w,a,f]),X(()=>{let e=f.state.value,t=f.state.selectedIndex,n=t,r;m&&Array.isArray(e)?(n=Sg(w,a,f.context.valuesRef.current,e,v,t),r=n===w,w===t&&!r&&(f.context.selectedItemTextRef.current=null)):(r=e!==void 0&&gg(a,e,v),r&&(n=w)),f.set(`selectedIndex`,n),r&&u.current&&(f.context.selectedItemTextRef.current=u.current)},[w,m,v,f,a]);let E=_.useRef(`mouse`),D=_.useRef(!1),{getButtonProps:O,buttonRef:k}=xm({disabled:y,focusableWhenDisabled:!0,native:c,composite:!0}),A={disabled:y,selected:S,highlighted:b};function j(e){if(h||g)return;let t=f.state.value;if(m){let n=Array.isArray(t)?t:[],r=S?Cg(n,a,v):[...n,a];f.context.setValue(r,_c(Cc,e))}else f.context.setValue(a,_c(Cc,e)),f.context.setOpen(!1,_c(Cc,e))}function M(){f.context.selectionRef.current.dragY=0}let N={role:`option`,"aria-selected":S,tabIndex:x&&b?0:-1,onKeyDown(e){f.set(`activeIndex`,w),e.key===` `&&f.context.typingRef.current&&e.preventDefault()},onClick(e){let t=E.current!==`touch`,n=e.nativeEvent.pointerType,r=t&&Qo(e.nativeEvent)&&(n!==void 0||b),i=t&&!r&&!D.current;D.current=!1,!(y||i)&&j(e.nativeEvent)},onPointerEnter(e){E.current=e.pointerType},onPointerMove(e){if(e.pointerType===`mouse`&&e.buttons===1){let t=f.context.selectionRef.current;t.dragY+=e.movementY,t.dragY**2>=64&&(t.allowUnselectedMouseUp=!0)}},onPointerDown(e){E.current=e.pointerType,D.current=!0,M()},onMouseUp(){if(M(),y||E.current===`touch`||D.current)return;let e=!f.context.selectionRef.current.allowSelectedMouseUp&&S,t=!f.context.selectionRef.current.allowUnselectedMouseUp&&!S;e||t||(D.current=!0,T.current?.click(),D.current=!1)}},P=di(`div`,e,{ref:[k,t,d.ref,T],state:A,props:[p,N,l,O]}),F=_.useMemo(()=>({selected:S,index:w,textRef:u,selectedByFocus:C}),[S,w,u,C]);return(0,Y.jsx)(rv.Provider,{value:F,children:P})}));av.displayName=`SelectItem`;var ov=_.forwardRef(function(e,t){let{selected:n}=iv();return e.keepMounted||n?(0,Y.jsx)(Yg,{...e,selected:n,ref:t}):null});ov.displayName=`SelectItemIndicator`;var sv=_.memo(_.forwardRef(function(e,t){let{index:n,textRef:r,selectedByFocus:i}=iv(),a=D_(),{render:o,className:s,style:c,...l}=e;return di(`div`,e,{ref:[_.useCallback(e=>{e&&(n===0&&(a.context.firstItemTextRef.current=e),i&&(a.context.selectedItemTextRef.current=e))},[a,n,i]),t,r],props:l})}));sv.displayName=`SelectItemText`;var cv=_.createContext(void 0);cv.displayName=`SelectGroupContext`;function lv(){let e=_.useContext(cv);if(e===void 0)throw Error(`Base UI: SelectGroupContext is missing. SelectGroup parts must be placed within <Select.Group>.`);return e}var uv=_.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,[o,s]=_.useState(),c=_.useMemo(()=>({labelId:o,setLabelId:s}),[o,s]),l=di(`div`,e,{ref:t,props:[{role:`group`,"aria-labelledby":o},a]});return(0,Y.jsx)(cv.Provider,{value:c,children:l})});uv.displayName=`SelectGroup`;var dv=_.forwardRef(function(e,t){let{render:n,className:r,style:i,id:a,...o}=e,{setLabelId:s}=lv(),c=qu(a);return X(()=>(s(c),()=>{s(e=>e===c?void 0:e)}),[c,s]),di(`div`,e,{ref:t,props:[{id:c,"aria-hidden":!0},o]})});dv.displayName=`SelectGroupLabel`;var fv=__;Xm.size;var pv={size:`base`};function mv({size:e=pv.size}={}){return J(Kf({size:e}),`bg-kumo-control disabled:bg-kumo-control/50 data-[state=open]:bg-kumo-control`,`justify-between font-normal`,`focus:opacity-100 focus:ring-kumo-focus/50 focus-visible:ring-inset *:in-focus:opacity-100`)}var hv={xs:{iconSize:12,className:`text-kumo-subtle`},sm:{iconSize:14,className:`text-kumo-subtle`},base:{iconSize:16,className:`text-kumo-subtle`},lg:{iconSize:18,className:`text-kumo-subtle`}};function gv(e){if(typeof e!=`object`||!e||Array.isArray(e)||`$$typeof`in e||e instanceof Promise)return!1;let t=e;return`label`in t&&t.label!==void 0}function _v(e){return Array.isArray(e)?e:Object.entries(e).map(([e,t])=>({value:e,label:gv(t)?t.label:t}))}function vv(e){let t=_v(e),n=new Map;if(!Array.isArray(e))for(let[t,r]of Object.entries(e))gv(r)&&n.set(t,{disabled:r.disabled});return t.filter(e=>e.value!==null).map((e,t)=>{let r=typeof e.value==`string`?e.value:`option-${t}`,i=typeof e.value==`string`?n.get(e.value):void 0;return(0,Y.jsx)(bv,{value:e.value,disabled:i?.disabled,children:e.label},r)})}function yv({children:e,className:t,render:n,renderValue:r,label:i,hideLabel:a,placeholder:o,loading:s,size:c=pv.size,labelTooltip:l,description:u,error:d,required:f,container:p,side:m=`bottom`,sideOffset:h=4,align:g=`start`,alignOffset:v,alignItemWithTrigger:y=!1,anchor:b,arrowPadding:x,positionMethod:S,collisionAvoidance:C,collisionBoundary:w,collisionPadding:T,sticky:E,disableAnchorTracking:D,...O}){let k=(0,_.useId)(),A=Ni(),j=p??A??void 0,M=O,N=M[`aria-label`],P=M[`aria-labelledby`],F=typeof i==`string`?i:o;a!==void 0&&console.warn('[Kumo Select]: `hideLabel` is deprecated. For hidden labels, use `aria-label` instead of `label` + `hideLabel={true}`.\n Migration:\n - For visible labels: <Select label="Country" /> (hideLabel no longer needed)\n - For hidden labels: <Select aria-label="Select a country" /> (remove label and hideLabel)');let I=i&&a!==!0,L=I?void 0:P??(i?k:void 0),R=N??(L?void 0:F),z=O.items?_v(O.items):void 0,B=e||(O.items?vv(O.items):null),V=r?e=>{let t=o==null?null:(0,Y.jsx)(`span`,{className:`text-kumo-placeholder`,children:o});return e==null||e===``?t:r(e)??t}:void 0,{items:H,...U}=O,ee=i?(0,Y.jsx)(j_,{className:`m-0 text-base font-medium text-kumo-default select-none`,children:(0,Y.jsx)(xp,{showOptional:f===!1,tooltip:a?void 0:l,asContent:!0,children:i})}):null,te=(0,Y.jsxs)(F_,{"data-kumo-component":`Select`,"data-kumo-part":`trigger`,render:n,className:J(mv({size:c}),O.disabled&&`cursor-not-allowed opacity-50`,d&&`!ring-kumo-danger focus:ring-[1.5px] focus:ring-kumo-danger/50`,t),"aria-label":R,"aria-labelledby":L,children:[s?(0,Y.jsx)(h_,{className:`w-32`}):(0,Y.jsx)(L_,{placeholder:o,className:`min-w-0 truncate data-[placeholder]:text-kumo-placeholder`,children:V}),(0,Y.jsx)(R_,{className:J(`flex shrink-0 items-center`,hv[c].className),children:(0,Y.jsx)(Df,{size:hv[c].iconSize,className:`fill-current`})})]}),W=(0,Y.jsxs)(A_,{...U,items:z,disabled:s||O.disabled,required:f,children:[ee,te,(0,Y.jsx)(z_,{container:j,children:(0,Y.jsx)(G_,{side:m,sideOffset:h,align:g,alignOffset:v,alignItemWithTrigger:y,anchor:b,arrowPadding:x,positionMethod:S,collisionAvoidance:C,collisionBoundary:w,collisionPadding:T,sticky:E,disableAnchorTracking:D,children:(0,Y.jsx)(J_,{className:J(`flex flex-col`,`max-h-[var(--available-height)] bg-kumo-base text-kumo-default`,`rounded-lg shadow-lg ring ring-kumo-line`,`max-w-(--available-width) min-w-(--anchor-width) py-1.5`),children:(0,Y.jsx)(nv,{className:J(`min-h-0 flex-1 scroll-pt-2 scroll-pb-2 overflow-y-auto overscroll-none`),children:B})})})})]});if(I)return(0,Y.jsx)(qm,{label:i,required:f,labelTooltip:l,description:u,error:d?typeof d==`string`?{message:d,match:!0}:d:void 0,hideLabel:!0,children:W});let ne=d?typeof d==`string`?{message:d,match:!0}:d:void 0;return(0,Y.jsxs)(`div`,{className:`grid gap-2`,children:[i&&(0,Y.jsx)(`span`,{id:k,className:`sr-only`,children:i}),W,ne?(0,Y.jsx)(`span`,{className:`text-sm text-kumo-danger`,children:ne.message}):u&&(0,Y.jsx)(`span`,{className:`text-sm leading-snug text-kumo-subtle`,children:u})]})}function bv({children:e,value:t,disabled:n,className:r}){return(0,Y.jsxs)(av,{"data-kumo-component":`Select`,"data-kumo-part":`option`,value:t,disabled:n,className:J(`group mx-1.5 flex cursor-pointer items-center justify-between gap-2 rounded px-2 py-1.5 text-base outline-none`,`focus-visible:z-50 focus-visible:ring-2 focus-visible:ring-kumo-brand focus-visible:ring-inset`,`data-highlighted:bg-kumo-tint`,`data-[disabled]:pointer-events-none data-[disabled]:cursor-not-allowed data-[disabled]:opacity-50`,r),children:[(0,Y.jsx)(sv,{children:e}),(0,Y.jsx)(ov,{children:(0,Y.jsx)(Of,{})})]})}var xv=(0,_.forwardRef)(({children:e,className:t},n)=>(0,Y.jsx)(uv,{ref:n,className:J(t),children:e}));xv.displayName=`Select.Group`;var Sv=(0,_.forwardRef)(({children:e,className:t},n)=>(0,Y.jsx)(dv,{ref:n,className:J(`px-3.5 py-1.5 text-sm font-semibold text-kumo-subtle`,t),children:e}));Sv.displayName=`Select.GroupLabel`;var Cv=(0,_.forwardRef)(({className:e},t)=>(0,Y.jsx)(fv,{ref:t,className:J(`my-1 h-px bg-kumo-hairline`,e)}));Cv.displayName=`Select.Separator`,yv.Option=bv,yv.Group=xv,yv.GroupLabel=Sv,yv.Separator=Cv,yv.Option.displayName=`Select.Option`;var wv=[25,50,100,250],Tv=(e,t,n)=>Math.min(Math.max(e,t),n),Ev={navigation:`Pagination`,firstPage:`First page`,previousPage:`Previous page`,nextPage:`Next page`,lastPage:`Last page`,pageNumber:`Page number`,pageSize:`Page size`},Dv={controls:`full`},Ov=(0,_.createContext)(null);function kv(){let e=(0,_.useContext)(Ov);if(!e)throw Error(`Pagination compound components must be used within a Pagination component`);return e}function Av({children:e,className:t}){let{page:n,perPage:r,totalCount:i,pageShowingRange:a}=kv(),o=e?e({page:n,perPage:r,totalCount:i,pageShowingRange:a}):i&&i>0?(0,Y.jsxs)(Y.Fragment,{children:[`Showing `,(0,Y.jsx)(`span`,{className:`tabular-nums`,children:a}),` of`,` `,(0,Y.jsx)(`span`,{className:`tabular-nums`,children:i})]}):null;return(0,Y.jsx)(`div`,{"data-slot":`pagination-info`,className:J(`text-sm text-kumo-subtle`,t),children:o})}Av.displayName=`Pagination.Info`;function jv({value:e,onChange:t,options:n=wv,label:r=`Per page:`,className:i}){let{labels:a}=kv();return(0,Y.jsxs)(`div`,{"data-slot":`pagination-page-size`,className:J(`flex items-center gap-2`,i),children:[r&&(0,Y.jsx)(`span`,{className:`text-sm text-kumo-subtle`,children:r}),(0,Y.jsx)(yv,{"aria-label":a.pageSize,value:e,onValueChange:e=>t(e),children:n.map(e=>(0,Y.jsx)(yv.Option,{value:e,children:e},e))})]})}jv.displayName=`Pagination.PageSize`;function Mv({controls:e=Dv.controls,pageSelector:t=`input`,className:n}){let{page:r,totalCount:i,hasNextPage:a,maxPage:o,setPage:s,editingPage:c,setEditingPage:l,labels:u}=kv(),d=i!=null,f=e===`full`&&!(!d&&a!==void 0),p=d?r===o:a!==!0;return(0,Y.jsx)(`div`,{"data-slot":`pagination-controls`,className:J(`flex grow flex-col items-end`,n),children:(0,Y.jsx)(`nav`,{"aria-label":u.navigation,children:(0,Y.jsxs)(hh,{children:[f&&(0,Y.jsx)(hh.Button,{variant:`secondary`,"aria-label":u.firstPage,disabled:r<=1,onClick:()=>{s(1),l(1)},children:(0,Y.jsx)(xf,{size:16})}),(0,Y.jsx)(hh.Button,{variant:`secondary`,"aria-label":u.previousPage,disabled:r<=1,onClick:()=>{let e=Math.max(r-1,1);s(e),l(e)},children:(0,Y.jsx)(wf,{size:16})}),f&&(t===`dropdown`?(0,Y.jsx)(yv,{"aria-label":u.pageNumber,className:`rounded-none ring-kumo-hairline`,value:r,onValueChange:e=>{let t=e;s(t),l(t)},children:Array.from({length:o},(e,t)=>t+1).map(e=>(0,Y.jsx)(yv.Option,{value:e,children:e},e))}):(0,Y.jsx)(hh.Input,{style:{width:50},className:`text-center`,"aria-label":u.pageNumber,value:c,onValueChange:e=>{l(Number(e))},onBlur:()=>{let e=Tv(c,1,o);s(e),l(e)},onKeyDown:e=>{if(e.key===`Enter`){let e=Tv(c,1,o);s(e),l(e)}},autoComplete:`off`,"data-1p-ignore":!0,"data-lpignore":`true`,"data-form-type":`other`})),(0,Y.jsx)(hh.Button,{variant:`secondary`,"aria-label":u.nextPage,disabled:p,onClick:()=>{let e=d?Math.min(r+1,o):r+1;s(e),l(e)},children:(0,Y.jsx)(Tf,{size:16})}),f&&(0,Y.jsx)(hh.Button,{variant:`secondary`,"aria-label":u.lastPage,disabled:r===o,onClick:()=>{s(o),l(o)},children:(0,Y.jsx)(Sf,{size:16})})]})})})}Mv.displayName=`Pagination.Controls`;function Nv({className:e}){return(0,Y.jsx)(`div`,{"data-slot":`pagination-separator`,className:J(`mx-2 h-6 border-l border-kumo-hairline`,e)})}Nv.displayName=`Pagination.Separator`;function Pv(e){let{page:t=1,perPage:n,totalCount:r,hasNextPage:i,setPage:a,children:o,className:s,labels:c}=e,l=`text`in e?e.text:void 0,u=`controls`in e?e.controls??Dv.controls:Dv.controls,[d,f]=(0,_.useState)(1),p=(0,_.useMemo)(()=>({...Ev,...c}),[c]);(0,_.useEffect)(()=>{f(t)},[t]);let m=(0,_.useMemo)(()=>{let e=t*(n??1)-(n??0)+1,i=Math.min(t*(n??0),r??0);return Number.isNaN(e)&&(e=0),Number.isNaN(i)&&(i=0),`${e}-${i}`},[t,n,r]),h={page:t,perPage:n,totalCount:r,hasNextPage:i,maxPage:(0,_.useMemo)(()=>Math.ceil((r??1)/(n??1)),[r,n]),pageShowingRange:m,setPage:a,editingPage:d,setEditingPage:f,labels:p};return o?(0,Y.jsx)(Ov.Provider,{value:h,children:(0,Y.jsx)(`div`,{"data-slot":`pagination`,className:J(`flex w-full items-center gap-2`,s),children:o})}):(0,Y.jsx)(Ov.Provider,{value:h,children:(0,Y.jsxs)(`div`,{"data-slot":`pagination`,className:J(`flex w-full items-center gap-2`,s),children:[(0,Y.jsx)(`div`,{"aria-live":`polite`,"aria-atomic":`true`,"data-slot":`pagination-info`,className:`grow text-sm text-kumo-subtle`,children:l?l({page:t,perPage:n,totalCount:r,pageShowingRange:m}):r&&r>0?(0,Y.jsxs)(Y.Fragment,{children:[`Showing `,(0,Y.jsx)(`span`,{className:`tabular-nums`,children:m}),` of`,` `,(0,Y.jsx)(`span`,{className:`tabular-nums`,children:r})]}):null}),(0,Y.jsx)(Mv,{controls:u})]})})}Pv.displayName=`Pagination`;var Fv=Object.assign(Pv,{Info:Av,PageSize:jv,Controls:Mv,Separator:Nv}),Iv={layout:{auto:{classes:``,description:`Auto table layout - columns resize based on content`},fixed:{classes:`table-fixed`,description:`Fixed table layout - columns have equal width, controlled via colgroup`}},variant:{default:{classes:`even:bg-kumo-elevated [--kumo-table-row-bg:var(--color-kumo-base)] even:[--kumo-table-row-bg:var(--color-kumo-elevated)]`,description:`Default row variant`},selected:{classes:`bg-kumo-tint [--kumo-table-row-bg:var(--color-kumo-tint)]`,description:`Selected row variant`}},sticky:{left:{classes:`sticky left-0`,description:`Pin column to the left edge of the scroll container`},right:{classes:`sticky right-0`,description:`Pin column to the right edge of the scroll container`}}},Lv=(e,t)=>{let n=vr(Iv.sticky,e,`left`).classes,r=t===`head`?`z-2`:`z-1`,i=e===`right`?`before:-left-6`:`before:-right-6`,a=`before:pointer-events-none before:absolute before:inset-y-0 before:w-6`;return t===`cell`?J(n,r,`bg-(--kumo-table-row-bg)`,a,i,e===`right`?`before:bg-gradient-to-r before:from-transparent before:to-(--kumo-table-row-bg)`:`before:bg-gradient-to-l before:from-transparent before:to-(--kumo-table-row-bg)`):J(n,r,`bg-kumo-base group-data-[compact]/header:bg-kumo-elevated`,a,i,e===`right`?`before:bg-gradient-to-r before:from-transparent before:to-kumo-base group-data-[compact]/header:before:to-kumo-elevated`:`before:bg-gradient-to-l before:from-transparent before:to-kumo-base group-data-[compact]/header:before:to-kumo-elevated`)},Rv={layout:`auto`,variant:`default`},zv=(0,_.forwardRef)(({layout:e=`auto`,...t},n)=>{let r=J(`isolate w-full`,vr(Iv.layout,e,Rv.layout).classes,`[&_td]:p-3`,`[&_th]:border-b [&_th]:border-kumo-fill [&_th]:p-3 [&_th]:text-base [&_th]:font-semibold`,`[&_th]:bg-kumo-base`,`text-left text-base text-kumo-default`,t.className);return(0,Y.jsx)(`table`,{ref:n,...t,className:r})}),Bv=(0,_.forwardRef)(({variant:e=`default`,sticky:t,...n},r)=>{let i=e===`compact`,a=J(`group/header`,i&&`text-xs text-kumo-strong [&_th]:bg-kumo-elevated [&_th]:py-2`,t&&`[&_th]:sticky [&_th]:top-0 [&_th]:z-1`,n.className);return(0,Y.jsx)(`thead`,{ref:r,...n,className:a,...i&&{"data-compact":``}})}),Vv=(0,_.forwardRef)(({sticky:e,...t},n)=>{let r=J(`group relative`,e&&Lv(e,`head`),t.className);return(0,Y.jsx)(`th`,{ref:n,...t,className:r})}),Hv=(0,_.forwardRef)(({variant:e=Rv.variant,...t},n)=>{let r=J(vr(Iv.variant,e,Rv.variant).classes,t.className);return(0,Y.jsx)(`tr`,{ref:n,...t,className:r})}),Uv=(0,_.forwardRef)((e,t)=>(0,Y.jsx)(`tbody`,{ref:t,...e})),Wv=(0,_.forwardRef)(({sticky:e,...t},n)=>{let r=J(e&&Lv(e,`cell`),t.className);return(0,Y.jsx)(`td`,{ref:n,...t,className:r})}),Gv=(0,_.forwardRef)((e,t)=>(0,Y.jsx)(`tfoot`,{ref:t,...e})),Kv=(0,_.forwardRef)((e,t)=>(0,Y.jsx)(`button`,{ref:t,...e,type:`button`,"aria-label":`Resize column`,className:J(`invisible h-full group-hover:visible`,`w-[10px]`,`flex items-center justify-center`,`cursor-col-resize touch-none select-none`,`absolute top-0 right-0`,`m-0 bg-kumo-base p-0`,`focus-visible:ring-2 focus-visible:ring-kumo-brand`),children:(0,Y.jsx)(`span`,{className:`h-5 w-[2px] rounded bg-kumo-hairline`})})),qv=(0,_.forwardRef)(({checked:e,indeterminate:t,onCheckedChange:n,onValueChange:r,label:i,disabled:a,...o},s)=>(0,Y.jsx)(Wv,{ref:s,...o,className:J(`w-10 leading-none`,o.className),children:(0,Y.jsx)(Rm,{checked:e,indeterminate:t,onCheckedChange:(e,t)=>{n?.(e,t),r?.(e)},"aria-label":i??`Select row`,disabled:a,className:`relative before:absolute before:-inset-3 before:content-['']`})})),Jv=(0,_.forwardRef)(({checked:e,indeterminate:t,onCheckedChange:n,onValueChange:r,label:i,disabled:a,...o},s)=>(0,Y.jsx)(Vv,{ref:s,...o,className:J(`w-10 leading-none`,o.className),children:(0,Y.jsx)(Rm,{checked:e,indeterminate:t,onCheckedChange:(e,t)=>{n?.(e,t),r?.(e)},"aria-label":i??`Select all rows`,disabled:a,className:`relative before:absolute before:-inset-3 before:content-['']`})}));zv.displayName=`Table`,Uv.displayName=`Table.Body`,Vv.displayName=`Table.Head`,Hv.displayName=`Table.Row`,Wv.displayName=`Table.Cell`,Gv.displayName=`Table.Footer`,Bv.displayName=`Table.Header`,Kv.displayName=`Table.ResizeHandle`,qv.displayName=`Table.CheckCell`,Jv.displayName=`Table.CheckHead`;var $=Object.assign(zv,{Header:Bv,Head:Vv,Row:Hv,Body:Uv,Cell:Wv,CheckCell:qv,CheckHead:Jv,Footer:Gv,ResizeHandle:Kv}),Yv={size:{sm:{classes:`text-sm h-10 gap-0.5`,description:`Compact breadcrumbs for dense UIs`},base:{classes:`text-base h-12 gap-1`,description:`Default breadcrumbs size`}}},Xv={size:`base`};function Zv({size:e=Xv.size}={}){return J(`group mr-4 flex min-w-0 grow items-center overflow-hidden whitespace-nowrap`,vr(Yv.size,e,Xv.size).classes)}var Qv=({href:e,icon:t,children:n})=>{let r=Or();return(0,Y.jsxs)(r,{"data-kumo-component":`Breadcrumbs`,"data-kumo-part":`link`,to:e,className:`flex shrink-0 items-center gap-1 whitespace-nowrap text-kumo-subtle no-underline`,children:[!!t&&(0,Y.jsx)(`span`,{className:`flex shrink-0 items-center`,children:t}),(0,Y.jsx)(`span`,{children:n})]})};function $v({children:e,icon:t,loading:n}){return n?(0,Y.jsxs)(`div`,{className:`flex w-[125px] min-w-0 items-center gap-1`,children:[t&&(0,Y.jsx)(`span`,{className:`flex shrink-0 items-center`,children:t}),(0,Y.jsx)(h_,{})]}):(0,Y.jsxs)(`div`,{className:`flex max-w-full min-w-0 items-center gap-1 font-medium`,"aria-current":`page`,children:[t&&(0,Y.jsx)(`span`,{className:`flex shrink-0 items-center`,children:t}),(0,Y.jsx)(`span`,{className:`truncate`,children:e})]})}function ey(){return(0,Y.jsx)(`span`,{className:`flex shrink-0 items-center text-kumo-inactive`,"aria-hidden":`true`,children:(0,Y.jsx)(`svg`,{width:`24`,height:`24`,fill:`none`,viewBox:`0 0 24 24`,children:(0,Y.jsx)(`path`,{stroke:`currentColor`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:`1.5`,d:`M10.75 8.75L14.25 12L10.75 15.25`})})})}function ty(){return(0,Y.jsx)(`span`,{className:`flex shrink-0 items-center text-kumo-subtle`,"aria-hidden":!0,children:`...`})}function ny({text:e}){let{copied:t,runCopy:n}=f_();return(0,Y.jsx)(ip,{variant:`ghost`,shape:`square`,size:`sm`,className:`opacity-0 transition-[opacity] group-hover:opacity-100`,onClick:async()=>{e&&await n(()=>navigator.clipboard.writeText(e),e=>console.error(`Failed to copy deeplink:`,e))},title:`Click to copy`,"aria-label":`Copy`,children:t?(0,Y.jsx)(Of,{weight:`bold`,className:`text-kumo-success`}):(0,Y.jsx)(Af,{weight:`regular`})})}function ry({children:e,size:t=`base`,className:n}){let r=_.Children.toArray(e),i=ay(r);return(0,Y.jsxs)(`nav`,{className:J(Zv({size:t}),n),"aria-label":`breadcrumb`,children:[(0,Y.jsx)(`div`,{className:`contents sm:hidden`,children:i}),(0,Y.jsx)(`div`,{className:`hidden sm:contents`,children:r})]})}function iy(e,t){return(0,_.isValidElement)(e)&&e.type===t}function ay(e){let t=e.filter(e=>iy(e,Qv)||iy(e,$v));if(t.length<=2)return e;let[n,r]=t.slice(-2),i=[(0,Y.jsx)(ty,{},`kumo-breadcrumb-mobile-ellipsis`),(0,Y.jsx)(ey,{},`kumo-breadcrumb-mobile-separator-leading`),(0,_.cloneElement)(n,{key:`kumo-breadcrumb-mobile-parent`}),(0,Y.jsx)(ey,{},`kumo-breadcrumb-mobile-separator-trailing`),(0,_.cloneElement)(r,{key:`kumo-breadcrumb-mobile-current`})],a=e.filter(e=>!iy(e,Qv)&&!iy(e,$v)&&!iy(e,ey));return[...i,...a]}ry.Link=Qv,ry.Current=$v,ry.Separator=ey,ry.Clipboard=ny;var oy={size:{sm:{classes:`px-6 py-8 gap-4`,description:`Compact empty state for smaller containers`},base:{classes:`px-10 py-16 gap-6`,description:`Default empty state size`},lg:{classes:`px-12 py-20 gap-8`,description:`Large empty state for prominent placement`}}},sy={size:`base`};function cy({size:e=sy.size}={}){return J(`flex w-full flex-col items-center rounded-xl border border-kumo-fill bg-kumo-control text-kumo-default`,vr(oy.size,e,sy.size).classes)}function ly({icon:e,title:t,description:n,commandLine:r,contents:i,size:a=`base`,className:o}){let{copied:s,runCopy:c}=f_(1e3),l=(0,_.useCallback)(async()=>{r&&await c(()=>navigator.clipboard.writeText(r),e=>console.warn(`Clipboard copy failed`,e))},[r,c]);return(0,Y.jsxs)(`div`,{className:J(cy({size:a}),o),children:[e,(0,Y.jsxs)(`div`,{className:`flex flex-col items-center gap-2.5`,children:[n?(0,Y.jsx)(Sh,{variant:`heading`,size:`lg`,as:`h2`,children:t}):(0,Y.jsx)(Sh,{variant:`secondary`,size:`base`,as:`h2`,children:t}),n&&(0,Y.jsx)(Sh,{variant:`secondary`,size:`base`,DANGEROUS_className:`max-w-140 text-center text-balance leading-normal`,children:n})]}),r&&(0,Y.jsxs)(`div`,{className:J(`relative inline-flex h-10 max-w-8/10 transform-gpu items-center gap-2 rounded-lg border border-white bg-kumo-overlay pr-2 pl-3 font-mono shadow-xs ring ring-kumo-line`),children:[(0,Y.jsxs)(`span`,{className:`inline-flex min-w-0 items-baseline gap-2`,children:[(0,Y.jsx)(`span`,{className:`text-kumo-subtle select-none`,children:`$`}),(0,Y.jsx)(`span`,{className:`no-scrollbar overflow-scroll text-base whitespace-nowrap`,children:r})]}),(0,Y.jsx)(ip,{className:`text-kumo-subtle`,size:`sm`,variant:`ghost`,shape:`square`,"aria-label":`Copy command`,onClick:l,children:s?(0,Y.jsx)(Of,{size:16,className:`animate-bounce-in text-kumo-success`}):(0,Y.jsx)(Af,{size:16})})]}),i]})}var uy=_.createContext(void 0);uy.displayName=`ScrollAreaRootContext`;function dy(){let e=_.useContext(uy);if(e===void 0)throw Error(`Base UI: ScrollAreaRootContext is missing. ScrollArea parts must be placed within <ScrollArea.Root>.`);return e}function fy(e,t,n){if(!e)return 0;let r=getComputedStyle(e),i=`${t}${n===`x`?`Inline`:`Block`}`,a=parseFloat(r[`${i}Start`]);return n===`x`&&t===`margin`?a*2:a+parseFloat(r[`${i}End`])}var py=`data-has-overflow-x`,my=`data-has-overflow-y`,hy=`data-overflow-x-start`,gy=`data-overflow-x-end`,_y=`data-overflow-y-start`,vy=`data-overflow-y-end`,yy=e=>t=>t?{[e]:``}:null,by={hasOverflowX:yy(py),hasOverflowY:yy(my),overflowXStart:yy(hy),overflowXEnd:yy(gy),overflowYStart:yy(_y),overflowYEnd:yy(vy),cornerHidden:()=>null},xy=`--scroll-area-corner-height`,Sy=`--scroll-area-corner-width`,Cy=`data-orientation`,wy={x:0,y:0},Ty={width:0,height:0},Ey={xStart:!1,xEnd:!1,yStart:!1,yEnd:!1},Dy={x:!0,y:!0,corner:!0},Oy=_.forwardRef(function(e,t){let{render:n,className:r,overflowEdgeThreshold:i,style:a,...o}=e,{xStart:s,xEnd:c,yStart:l,yEnd:u}=ky(i),d=qu(),f=Il(),p=Il(),{nonce:m,disableStyleElements:h}=w_(),[g,v]=_.useState(!1),[y,b]=_.useState(!1),[x,S]=_.useState(!1),[C,w]=_.useState(!1),[T,E]=_.useState(!1),[D,O]=_.useState(Ty),[k,A]=_.useState(Ty),[j,M]=_.useState(Ey),[N,P]=_.useState(Dy),F=_.useRef(null),I=_.useRef(null),L=_.useRef(null),R=_.useRef(null),z=_.useRef(null),B=_.useRef(null),V=_.useRef(null),H=_.useRef(null),U=_.useRef(0),ee=_.useRef(0),te=_.useRef(0),W=_.useRef(0),ne=_.useRef(`vertical`),re=_.useRef(wy),ie=_.useRef(null);function ae(e){let t=e?S:b,n=e?f:p;t(!0),n.start(500,()=>{t(!1)})}let G=Q(e=>{let t=e.x-re.current.x,n=e.y-re.current.y;re.current=e,n!==0&&ae(!0),t!==0&&ae(!1)}),K=Q(()=>{let e=I.current;e&&ie.current===null&&(ie.current=e.style.scrollSnapType,e.style.scrollSnapType=`none`)}),oe=Q(e=>{if(e.button!==0||H.current!==null&&(ne.current===`vertical`?z.current:B.current)?.hasPointerCapture(H.current))return;H.current=e.pointerId,U.current=e.clientY,ee.current=e.clientX,ne.current=e.currentTarget.getAttribute(Cy);let t=I.current;t&&(te.current=t.scrollTop,W.current=t.scrollLeft,K()),(ne.current===`vertical`?z.current:B.current)?.setPointerCapture(e.pointerId)}),se=Q(e=>{if(e.pointerId!==H.current)return;H.current=null,(ne.current===`vertical`?S:b)(!1),ie.current!==null&&(I.current&&(I.current.style.scrollSnapType=ie.current),ie.current=null);let t=ne.current===`vertical`?z.current:B.current;t?.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId)}),ce=Q(e=>{if(e.pointerId!==H.current)return;if(e.buttons%2==0){se(e);return}let t=I.current;if(!t)return;let n=ne.current===`vertical`,r=n?z.current:B.current,i=n?L.current:R.current;if(!r||!i)return;let a=n?`y`:`x`,o=fy(i,`padding`,a),s=fy(r,`margin`,a),c=n?r.offsetHeight:r.offsetWidth,l=(n?i.offsetHeight:i.offsetWidth)-c-o-s,u=n?e.clientY-U.current:e.clientX-ee.current,d=l<=0?0:u/l,f=n?t.scrollHeight:t.scrollWidth,p=n?t.clientHeight:t.clientWidth,m=(n?te.current:W.current)+d*(f-p);n?t.scrollTop=m:t.scrollLeft=m,e.preventDefault(),ae(n)});function le(e){w(e.pointerType===`touch`)}function ue(e){if(le(e),e.pointerType!==`touch`){let t=Z(F.current,e.target);v(t)}}let q=_.useMemo(()=>({scrolling:y||x,hasOverflowX:!N.x,hasOverflowY:!N.y,overflowXStart:j.xStart,overflowXEnd:j.xEnd,overflowYStart:j.yStart,overflowYEnd:j.yEnd,cornerHidden:N.corner}),[y,x,N.x,N.y,N.corner,j]),de={role:`presentation`,onPointerEnter:ue,onPointerMove:ue,onPointerDown:le,onPointerLeave(){v(!1)},style:{position:`relative`,[xy]:`${D.height}px`,[Sy]:`${D.width}px`}},fe=di(`div`,e,{state:q,ref:[t,F],props:[de,o],stateAttributesMapping:by}),pe=_.useMemo(()=>({handlePointerDown:oe,handlePointerMove:ce,handlePointerUp:se,handleScroll:G,disableViewportSnap:K,cornerSize:D,setCornerSize:O,thumbSize:k,setThumbSize:A,hasMeasuredScrollbar:T,setHasMeasuredScrollbar:E,touchModality:C,cornerRef:V,scrollingX:y,scrollingY:x,hovering:g,setHovering:v,viewportRef:I,scrollbarYRef:L,scrollbarXRef:R,thumbYRef:z,thumbXRef:B,rootId:d,hiddenState:N,setHiddenState:P,overflowEdges:j,setOverflowEdges:M,viewportState:q,overflowEdgeThreshold:{xStart:s,xEnd:c,yStart:l,yEnd:u}}),[oe,ce,se,G,K,D,k,T,C,y,x,g,d,N,j,q,s,c,l,u]);return(0,Y.jsxs)(uy.Provider,{value:pe,children:[!h&&x_.getElement(m),fe]})});Oy.displayName=`ScrollAreaRoot`;function ky(e){let t=typeof e==`number`?{xStart:e,xEnd:e,yStart:e,yEnd:e}:e;return{xStart:Math.max(0,t?.xStart||0),xEnd:Math.max(0,t?.xEnd||0),yStart:Math.max(0,t?.yStart||0),yEnd:Math.max(0,t?.yEnd||0)}}var Ay=_.createContext(void 0);Ay.displayName=`ScrollAreaViewportContext`;function jy(){let e=_.useContext(Ay);if(e===void 0)throw Error(`Base UI: ScrollAreaViewportContext missing. ScrollAreaViewport parts must be placed within <ScrollArea.Viewport>.`);return e}var My=`--scroll-area-overflow-x-start`,Ny=`--scroll-area-overflow-x-end`,Py=`--scroll-area-overflow-y-start`,Fy=`--scroll-area-overflow-y-end`,Iy=`--scroll-area-thumb-height`,Ly=`--scroll-area-thumb-width`,Ry=[My,Ny,Py,Fy],zy=!1;function By(){zy||gc||(typeof CSS<`u`&&`registerProperty`in CSS&&Ry.forEach(e=>{try{CSS.registerProperty({name:e,syntax:`<length>`,inherits:!1,initialValue:`0px`})}catch{}}),zy=!0)}var Vy=_.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,{viewportRef:o,scrollbarYRef:s,scrollbarXRef:c,thumbYRef:l,thumbXRef:u,cornerRef:d,cornerSize:f,setCornerSize:p,setThumbSize:m,rootId:h,setHiddenState:g,hiddenState:v,setHasMeasuredScrollbar:y,handleScroll:b,touchModality:x,setHovering:S,setOverflowEdges:C,overflowEdgeThreshold:w,viewportState:T}=dy(),E=Xu(),D=_.useRef(!0),O=_.useRef([NaN,NaN,NaN,NaN]),k=Il(),A=Il(),j=Q(()=>{let e=o.current,t=s.current,n=c.current,r=l.current,i=u.current,a=d.current;if(!e)return;let h=e.scrollHeight,_=e.scrollWidth,v=e.clientHeight,b=e.clientWidth,x=e.scrollTop,S=e.scrollLeft,T=O.current,D=Number.isNaN(T[0]);if(T[0]=v,T[1]=h,T[2]=b,T[3]=_,D&&y(!0),h===0||_===0)return;let k=Hy(e),A=k.y,j=k.x,M=b/_,N=v/h,P=Math.max(0,_-b),F=Math.max(0,h-v),I=0,L=0;j||(I=y_(E===`rtl`?-S:S,P),L=P-I);let R=A?0:y_(x,F),z=A?0:F-R,B=j?0:b,V=A?0:v,H=0,U=0;!j&&!A&&(H=t?.offsetWidth||0,U=n?.offsetHeight||0);let ee=f.width===0&&f.height===0,te=ee?H:0,W=ee?U:0,ne=fy(n,`padding`,`x`),re=fy(t,`padding`,`y`),ie=fy(i,`margin`,`x`),ae=fy(r,`margin`,`y`),G=B-ne-ie,K=V-re-ae,oe=n?Math.min(n.offsetWidth-te,G):G,se=t?Math.min(t.offsetHeight-W,K):K,ce=Math.max(16,oe*M),le=Math.max(16,se*N);if(m(e=>Uy(e,{width:ce,height:le})),t&&r){let e=Wy(r,Iy,x,F,h,le,t.offsetHeight-le-re-ae);r.style.transform=`translate3d(0,${e}px,0)`}if(n&&i){let e=n.offsetWidth-ce-ne-ie,t=Wy(i,Ly,E===`rtl`?-S:S,P,_,ce,e);i.style.transform=`translate3d(${E===`rtl`?-t:t}px,0,0)`}let ue=[I,L,R,z];Ry.forEach((t,n)=>{e.style.setProperty(t,`${ue[n]}px`)}),a&&p(e=>Uy(e,{width:H,height:U})),g(e=>Uy(e,k));let q={xStart:!j&&I>w.xStart,xEnd:!j&&L>w.xEnd,yStart:!A&&R>w.yStart,yEnd:!A&&z>w.yEnd};C(e=>Uy(e,q))});X(()=>{By()},[]),X(()=>{queueMicrotask(j)},[j,v,E,w.xStart,w.xEnd,w.yStart,w.yEnd]),X(()=>{o.current?.matches(`:hover`)&&S(!0)},[o,S]),X(()=>{let e=o.current;if(typeof ResizeObserver>`u`||!e)return;let t=!1,n=new ResizeObserver(()=>{if(!t){t=!0;let n=O.current;if(n[0]===e.clientHeight&&n[1]===e.scrollHeight&&n[2]===e.clientWidth&&n[3]===e.scrollWidth)return}j()});return n.observe(e),A.start(0,()=>{let t=Wl(e,{subtree:!0});t.length!==0&&Promise.allSettled(t.map(e=>e.finished.then(Gr))).then(j).catch(()=>{})}),()=>{n.disconnect(),A.clear()}},[j,o,A]);function M(){D.current=!1}let N={...h&&{"data-id":`${h}-viewport`},tabIndex:v.x&&v.y?-1:0,className:x_.className,style:{overflow:`scroll`},onScroll(){o.current&&(j(),(x||!D.current)&&b({x:o.current.scrollLeft,y:o.current.scrollTop}),k.start(100,()=>{D.current=!0}))},onWheel:M,onPointerMove:M,onPointerEnter:M,onKeyDown:M},P=di(`div`,e,{ref:[t,o],state:T,props:[N,a],stateAttributesMapping:by}),F=_.useMemo(()=>({computeThumbPosition:j}),[j]);return(0,Y.jsx)(Ay.Provider,{value:F,children:P})});Vy.displayName=`ScrollAreaViewport`;function Hy(e){let t=e.clientHeight>=e.scrollHeight,n=e.clientWidth>=e.scrollWidth;return{y:t,x:n,corner:t||n}}function Uy(e,t){for(let n in t)if(e[n]!==t[n])return t;return e}function Wy(e,t,n,r,i,a,o){let s=Vm(n,0,r),c=n-s,l=Math.max(16,a*i/(i+Math.abs(c)));return e.style.setProperty(t,c?`${l}px`:``),(r?s/r*o:0)+(c>0?a-l:0)}var Gy=_.createContext(void 0);Gy.displayName=`ScrollAreaScrollbarContext`;function Ky(){let e=_.useContext(Gy);if(e===void 0)throw Error(`Base UI: ScrollAreaScrollbarContext is missing. ScrollAreaScrollbar parts must be placed within <ScrollArea.Scrollbar>.`);return e}var qy=_.forwardRef(function(e,t){let{render:n,className:r,orientation:i=`vertical`,keepMounted:a=!1,style:o,...s}=e,{hovering:c,scrollingX:l,scrollingY:u,hiddenState:d,scrollbarYRef:f,scrollbarXRef:p,viewportRef:m,thumbYRef:h,thumbXRef:g,handlePointerDown:v,handlePointerUp:y,handleScroll:b,disableViewportSnap:x,rootId:S,thumbSize:C,hasMeasuredScrollbar:w,viewportState:T}=dy(),E=i===`vertical`,D={...T,hovering:c,scrolling:E?u:l,orientation:i},O=Xu(),k=!w&&!a,A=E?d.y:d.x,j=a||!A;_.useEffect(()=>{if(!j)return;let e=m.current,t=E?f.current:p.current;if(!t)return;function n(t){if(!e||t.ctrlKey)return;let n=!E,r=n?`scrollLeft`:`scrollTop`,i=n?t.deltaX:t.deltaY;if(i===0)return;let a=n?e.scrollWidth-e.clientWidth:e.scrollHeight-e.clientHeight,o=n&&O===`rtl`?-a:0,s=n&&O===`rtl`?0:a,c=e[r];c<=o&&i<0||c>=s&&i>0||(t.preventDefault(),e[r]=Math.min(s,Math.max(o,c+i)),b({x:e.scrollLeft,y:e.scrollTop}))}return jc(t,`wheel`,n,{passive:!1})},[O,b,E,p,f,j,m]);let M={...S&&{"data-id":`${S}-scrollbar`},"aria-hidden":!0,onPointerDown(e){if(e.button!==0)return;let t=is(e.nativeEvent),n=E?h.current:g.current;if(n&&Z(n,t))return;let r=m.current;if(!r)return;let i=E?f.current:p.current;if(!n||!i)return;let a=E?`y`:`x`,o=fy(n,`margin`,a),s=fy(i,`padding`,a),c=E?n.offsetHeight:n.offsetWidth,l=i.getBoundingClientRect(),u=E?e.clientY-l.top-c/2-s+o/2:e.clientX-l.left-c/2-s+o/2,d=E?r.scrollHeight:r.scrollWidth,_=E?r.clientHeight:r.clientWidth,y=(E?i.offsetHeight:i.offsetWidth)-c-s-o;if(y<=0)return;let S=u/y,C=d-_;x(),E?r.scrollTop=S*C:r.scrollLeft=O===`rtl`?-(1-S)*C:S*C,b({x:r.scrollLeft,y:r.scrollTop}),v(e)},onMouseDown(e){e.preventDefault()},onPointerUp:y,onPointerCancel:y,style:{position:`absolute`,touchAction:`none`,WebkitUserSelect:`none`,userSelect:`none`,visibility:k?`hidden`:void 0,...E?{top:0,bottom:`var(${xy})`,insetInlineEnd:0,[Iy]:`${C.height}px`}:{insetInlineStart:0,insetInlineEnd:`var(${Sy})`,bottom:0,[Ly]:`${C.width}px`}}},N=di(`div`,e,{ref:[t,E?f:p],state:D,props:[M,s],stateAttributesMapping:by});return j?(0,Y.jsx)(Gy.Provider,{value:i,children:N}):null});qy.displayName=`ScrollAreaScrollbar`;var Jy=_.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,{computeThumbPosition:o}=jy(),{hasMeasuredScrollbar:s,viewportState:c}=dy(),l=_.useRef(null),u=_.useRef(s);return X(()=>{if(typeof ResizeObserver>`u`)return;let e=!1,t=new ResizeObserver(()=>{!e&&(e=!0,!u.current)||o()});return l.current&&t.observe(l.current),()=>{t.disconnect()}},[o]),di(`div`,e,{ref:[t,l],state:c,stateAttributesMapping:by,props:[{role:`presentation`,style:{minWidth:`fit-content`}},a]})});Jy.displayName=`ScrollAreaContent`;var Yy=_.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,{thumbYRef:o,thumbXRef:s,handlePointerDown:c,handlePointerMove:l,handlePointerUp:u,scrollingX:d,scrollingY:f,hasMeasuredScrollbar:p}=dy(),m=Ky(),h=m===`vertical`;return di(`div`,e,{ref:[t,h?o:s],state:{scrolling:h?f:d,orientation:m},props:[{onPointerDown:c,onPointerMove:l,onPointerUp:u,onPointerCancel:u,style:{visibility:p?void 0:`hidden`,...h?{height:`var(--scroll-area-thumb-height)`}:{width:`var(--scroll-area-thumb-width)`}}},a]})});Yy.displayName=`ScrollAreaThumb`;var Xy={variant:`sidebar`,collapsible:`icon`,side:`left`},Zy=`16.25rem`,Qy=`57px`,$y=`cubic-bezier(0.77, 0, 0.175, 1)`,eb=250,tb=50,nb=768,rb=`a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])`;function ib(e,t,n,r=!0){let i=r&&n!==void 0,a=(0,_.useRef)(n),o=(0,_.useRef)(t),s=(0,_.useRef)(e),c=(0,_.useRef)(r),l=(0,_.useRef)(void 0),u=(0,_.useRef)(void 0);a.current=n,o.current=t;let d=(0,_.useCallback)(()=>{let e=l.current;e!==void 0&&(l.current=void 0,clearTimeout(u.current),a.current?.(e))},[]);return(0,_.useEffect)(()=>{let t=s.current!==e,n=c.current;if(s.current=e,c.current=r,!i)l.current=void 0,clearTimeout(u.current);else if(n&&t){if(l.current=e,o.current===0||window.matchMedia(`(prefers-reduced-motion: reduce)`).matches)d();else return u.current=setTimeout(d,o.current+tb),()=>clearTimeout(u.current)}},[r,d,i,e]),d}function ab(e=nb){let t=`(max-width: ${e-1}px)`,n=(0,_.useCallback)(e=>{let n=window.matchMedia(t);return n.addEventListener(`change`,e),()=>n.removeEventListener(`change`,e)},[t]),r=(0,_.useCallback)(()=>window.matchMedia(t).matches,[t]),i=(0,_.useCallback)(()=>!1,[]);return(0,_.useSyncExternalStore)(n,r,i)}var ob=(0,_.createContext)(null);function sb(){let e=(0,_.useContext)(ob);if(!e)throw Error(`useSidebar must be used within a Sidebar.Provider`);return e}var cb=256,lb=200,ub=480;function db({defaultOpen:e=!0,open:t,onOpenChange:n,onOpenChangeComplete:r,variant:i=Xy.variant,side:a=Xy.side,collapsible:o=Xy.collapsible,resizable:s=!1,defaultWidth:c=cb,minWidth:l=lb,maxWidth:u=ub,onWidthChange:d,contained:f=!1,peekable:p=!1,animationDuration:m=eb,mobileBreakpoint:h,children:g,className:v,style:y}){let b=ab(h),[x,S]=(0,_.useState)(!1),[C,w]=(0,_.useState)(c),[T,E]=(0,_.useState)(!1),[D,O]=(0,_.useState)(!1),k=b&&t!==void 0?t:x,A=(0,_.useCallback)(e=>{S(e),b&&t!==void 0&&n?.(e)},[b,t,n]),j=(0,_.useCallback)(e=>{let t=Math.min(u,Math.max(l,e));w(t),d?.(t)},[l,u,d]),[M,N]=(0,_.useState)(e),P=t??M,F=(0,_.useCallback)(e=>{let t=typeof e==`function`?e(P):e;n?.(t),N(t)},[n,P]),I=(0,_.useCallback)(()=>{b?A(!k):(O(!1),F(e=>!e))},[b,k,A,F]),L=(0,_.useCallback)(()=>{p&&!P&&!b&&O(!0)},[p,P,b]),R=(0,_.useCallback)(()=>{O(!1)},[]),z=D?`peeking`:P?`expanded`:`collapsed`,B=s?`${C}px`:Zy,V=(0,_.useRef)(new Map),H=(0,_.useCallback)((e,t)=>{let n=V.current;t?n.set(e,t):n.delete(e)},[]),U=(0,_.useCallback)((e,t={})=>{let{align:n=`auto`,behavior:r=`auto`}=t,i=V.current.get(e);if(!i)return;let a=i.closest(`[data-sidebar="viewport"]`);if(!a)return;let o=i.getBoundingClientRect(),s=a.getBoundingClientRect(),c=a.offsetHeight>0&&s.height>0?s.height/a.offsetHeight:1,l=(o.top-s.top)/c+a.scrollTop,u;if(n===`center`)u=l-(a.clientHeight-i.offsetHeight)/2;else if(n===`end`)u=l-(a.clientHeight-i.offsetHeight);else if(n===`auto`){let e=l+i.offsetHeight,t=a.scrollTop+a.clientHeight;if(l<a.scrollTop)u=l;else if(e>t)u=e-a.clientHeight;else return}else u=l;let d=Math.max(0,Math.min(u,a.scrollHeight-a.clientHeight)),f=typeof window<`u`&&window.matchMedia(`(prefers-reduced-motion: reduce)`).matches;a.scrollTo({top:d,behavior:f?`auto`:r})},[]),ee=(0,_.useCallback)((e,t={})=>{let n=V.current.get(e);if(!n)return;let r=n.closest(`[data-sidebar="viewport"]`);if(!r)return;let i=n.getBoundingClientRect(),a=r.getBoundingClientRect();i.top>=a.top&&i.bottom<=a.bottom||U(e,t)},[U]),te=(0,_.useMemo)(()=>({state:z,open:P,setOpen:F,openMobile:k,setOpenMobile:A,isMobile:b,toggleSidebar:I,variant:i,side:a,collapsible:o,width:C,resizable:s,minWidth:l,maxWidth:u,isResizing:T,setIsResizing:E,setWidth:j,isPeeking:D,peekable:p,startPeek:L,stopPeek:R,contained:f,animationDuration:m,registerItem:H,scrollToItem:U,scrollItemIntoView:ee}),[z,P,k,b,C,T,D]),W=ib(P,m,r,!b),ne=ib(k,m,r,b),re=b?ne:W,ie=b?`transform`:`width`,ae=(0,_.useCallback)(e=>{let t=e.target;t.closest(`[data-sidebar-wrapper]`)===e.currentTarget&&t.dataset.sidebar===`sidebar`&&e.propertyName===ie&&re()},[re,ie]);return(0,Y.jsx)(ob.Provider,{value:te,children:(0,Y.jsx)(`div`,{"data-sidebar-wrapper":``,"data-state":z,"data-side":a,onTransitionEnd:ae,style:{"--sidebar-width":B,"--sidebar-width-icon":Qy,"--sidebar-animation-duration":`${m}ms`,"--sidebar-easing":$y,...y},className:J(`group/sidebar-wrapper relative isolate flex w-full [--sidebar-active-bg:var(--color-kumo-tint)] [--sidebar-bg:var(--color-kumo-base)]`,!f&&!b&&`min-h-svh`,`has-data-[variant=inset]:bg-kumo-recessed`,T&&`select-none`,v),children:g})})}db.displayName=`Sidebar.Provider`;var fb=(0,_.forwardRef)(({className:e,contentClassName:t,children:n,fullScreenOnMobile:r=!1,...i},a)=>{let{state:o,open:s,isMobile:c,openMobile:l,setOpenMobile:u,side:d,variant:f,collapsible:p,isResizing:m,resizable:h,width:g,isPeeking:v,startPeek:y,stopPeek:b,contained:x}=sb(),S=(0,_.useCallback)(e=>{e&&(l?e.removeAttribute(`inert`):e.setAttribute(`inert`,``))},[l]),C=(0,_.useCallback)(e=>{S(e),typeof a==`function`?a(e):a&&(a.current=e)},[a,S]),w=(0,_.useRef)(null),T=(0,_.useRef)(null),E=(0,_.useRef)(!1),D=(0,_.useRef)(!1);(0,_.useEffect)(()=>{if(!c||!l)return;let e=e=>{e.key===`Escape`&&(E.current=!0,u(!1))};return document.addEventListener(`keydown`,e),()=>{document.removeEventListener(`keydown`,e)}},[c,l,u]),(0,_.useEffect)(()=>{c&&(l?(w.current=document.activeElement,E.current=!1,requestAnimationFrame(()=>{(T.current?.querySelector(rb)??T.current)?.focus()})):E.current&&w.current instanceof HTMLElement&&(w.current.focus(),E.current=!1,w.current=null))},[c,l]);let O=(0,_.useCallback)(e=>{!e.currentTarget.contains(e.relatedTarget)&&!D.current&&b()},[b]),k=(0,_.useCallback)(()=>{D.current=!0,y()},[y]),A=(0,_.useCallback)(()=>{D.current=!1,b()},[b]);if(p===`none`)return(0,Y.jsx)(`aside`,{ref:a,"data-state":`expanded`,"data-side":d,"data-variant":f,"data-sidebar":`sidebar`,style:{width:`var(--sidebar-width)`,minWidth:`var(--sidebar-width)`,maxWidth:`var(--sidebar-width)`},className:J(`relative flex h-full shrink-0 grow-0 flex-col overflow-hidden bg-(--sidebar-bg) text-kumo-default`,f===`sidebar`&&(d===`left`?`border-r border-kumo-line`:`border-l border-kumo-line`),f===`floating`&&`m-2 rounded-lg border border-kumo-line shadow-lg`,e),...i,children:n});if(c)return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`div`,{"data-sidebar-backdrop":``,className:J(x?`absolute inset-0 z-40 bg-kumo-recessed`:`fixed inset-0 z-40 bg-kumo-recessed`,`transition-opacity duration-(--sidebar-animation-duration) ease-(--sidebar-easing)`,`motion-reduce:transition-none`,l&&!r?`opacity-80`:`pointer-events-none opacity-0`),onClick:()=>{E.current=!0,u(!1)},"aria-hidden":`true`}),(0,Y.jsx)(`nav`,{ref:e=>{C(e),T.current=e},tabIndex:-1,"aria-label":`Navigation`,"aria-hidden":!l,"data-state":l?`expanded`:`collapsed`,"data-side":d,"data-variant":f,"data-collapsible":p,"data-sidebar":`sidebar`,"data-mobile":`true`,className:J(`group/sidebar inset-y-0 z-50 flex flex-col overflow-hidden`,x?`absolute`:`fixed`,r?`w-full`:`w-(--sidebar-width)`,`bg-(--sidebar-bg) text-kumo-default`,!r&&`border-r border-kumo-line`,`transition-transform duration-(--sidebar-animation-duration) ease-(--sidebar-easing)`,`motion-reduce:transition-none`,d===`left`&&`left-0`,d===`right`&&`right-0`,d===`left`&&(l?`translate-x-0`:`-translate-x-full`),d===`right`&&(l?`translate-x-0`:`translate-x-full`),e),...i,children:n})]});let j=p===`icon`?`var(--sidebar-width-icon)`:`0px`,M=h?`${g}px`:`var(--sidebar-width)`,N=s?M:j,P=s||v?M:j,F=f===`sidebar`?d===`left`?`border-r border-kumo-line`:`border-l border-kumo-line`:f===`floating`?`border border-kumo-line`:``;return(0,Y.jsx)(`aside`,{ref:a,"data-state":o,"data-side":d,"data-variant":f,"data-collapsible":p,"data-sidebar":`sidebar`,style:{width:N},className:J(`group/sidebar relative h-full shrink-0 grow-0`,`overflow-visible`,`transition-[width] duration-(--sidebar-animation-duration) ease-(--sidebar-easing)`,`motion-reduce:transition-none`,m&&`transition-none!`,f===`floating`&&`m-2 rounded-lg shadow-lg`,e),...i,children:(0,Y.jsx)(Gd,{children:(()=>{let e=_.Children.toArray(n),r=e.filter(e=>_.isValidElement(e)&&e.type?.displayName===`Sidebar.Footer`),i=e.filter(e=>!_.isValidElement(e)||e.type?.displayName!==`Sidebar.Footer`);return(0,Y.jsxs)(`div`,{"data-sidebar":`content-container`,style:{width:P},className:J(`flex h-full flex-col`,`min-w-0 overflow-hidden whitespace-nowrap`,`bg-(--sidebar-bg) text-kumo-default`,F,`transition-[width] duration-(--sidebar-animation-duration) ease-(--sidebar-easing)`,`motion-reduce:transition-none`,m&&`transition-none!`,!s&&J(x?`absolute`:`fixed`,`inset-y-0 z-40`,d===`left`&&`left-0`,d===`right`&&`right-0`),s&&`relative`,t),children:[(0,Y.jsx)(`div`,{"data-sidebar":`peek-zone`,className:`flex min-h-0 flex-1 flex-col`,onMouseEnter:k,onMouseLeave:A,onFocus:y,onBlur:O,children:i}),r]})})()})})});fb.displayName=`Sidebar`;var pb=(0,_.forwardRef)(({className:e,...t},n)=>(0,Y.jsx)(`div`,{ref:n,"data-sidebar":`header`,className:J(`flex h-[58px] shrink-0 items-center gap-1 border-b border-kumo-line`,`overflow-hidden px-3`,e),...t}));pb.displayName=`Sidebar.Header`;var mb=(0,_.forwardRef)(({className:e,children:t,...n},r)=>(0,Y.jsxs)(Oy,{ref:r,"data-sidebar":`content`,className:J(`relative min-w-0 flex-1 overflow-hidden`,e),...n,children:[(0,Y.jsx)(Vy,{tabIndex:-1,"data-sidebar":`viewport`,className:J(`h-full px-[11px] py-3 group-not-data-[state=collapsed]/sidebar:px-3.5`,`transition-[padding] duration-(--sidebar-animation-duration)`,`overflow-x-hidden!`,`[mask-image:linear-gradient(to_bottom,transparent_0,black_min(24px,var(--scroll-area-overflow-y-start,24px)),black_calc(100%-min(24px,var(--scroll-area-overflow-y-end,24px))),transparent_100%)]`),children:(0,Y.jsx)(Jy,{className:`flex min-w-0! flex-col`,children:t})}),(0,Y.jsx)(qy,{orientation:`vertical`,className:J(`flex w-1.5 touch-none p-px select-none`,`opacity-0 transition-opacity duration-150`,`data-[hovering]:opacity-100 data-[scrolling]:opacity-100`,`group-data-[state=collapsed]/sidebar:hidden`),children:(0,Y.jsx)(Yy,{className:`flex-1 rounded-full bg-kumo-line`})})]}));mb.displayName=`Sidebar.Content`;var hb=(0,_.forwardRef)(({className:e,...t},n)=>(0,Y.jsx)(`div`,{ref:n,"data-sidebar":`footer`,className:J(`flex h-12 shrink-0 items-center gap-4 overflow-hidden border-t border-kumo-line whitespace-nowrap`,`px-[11px] group-not-data-[state=collapsed]/sidebar:px-4`,`bg-(--sidebar-bg)`,`w-(--sidebar-width)`,`transition-[width,padding] duration-(--sidebar-animation-duration) ease-(--sidebar-easing)`,`motion-reduce:transition-none`,`sticky bottom-0`,`bg-clip-padding group-data-[state=collapsed]/sidebar:w-(--sidebar-width-icon)`,`group-data-[state=collapsed]/sidebar:border-r group-data-[state=collapsed]/sidebar:border-kumo-line`,e),...t}));hb.displayName=`Sidebar.Footer`;var gb=[[`w-28`,`w-40`,`w-24`],[`w-24`,`w-36`,`w-32`]],_b=(0,_.forwardRef)(({className:e,label:t=`Loading`,...n},r)=>(0,Y.jsx)(`div`,{ref:r,"data-sidebar":`loading`,role:`status`,"aria-label":t,className:J(`flex min-h-0 w-full flex-1 flex-col gap-4 px-2 py-3`,e),...n,children:gb.map((e,t)=>(0,Y.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[(0,Y.jsx)(h_,{className:`mb-1 ml-2 h-2 w-16 rounded-full group-data-[state=collapsed]/sidebar:hidden`}),e.map((e,t)=>(0,Y.jsxs)(`div`,{className:`flex min-h-8.5 items-center gap-3 rounded-lg px-3 group-data-[state=collapsed]/sidebar:justify-center group-data-[state=collapsed]/sidebar:px-0`,children:[(0,Y.jsx)(h_,{className:`size-4.5 shrink-0 rounded-md`}),(0,Y.jsx)(h_,{className:J(`h-2.5 rounded-full group-data-[state=collapsed]/sidebar:hidden`,e)})]},t))]},t))}));_b.displayName=`Sidebar.Loading`;var vb=(0,_.forwardRef)(({className:e,children:t,...n},r)=>(0,Y.jsx)(`div`,{ref:r,"data-sidebar":`group`,className:J(`flex min-w-0 flex-col gap-y-px`,e),...n,children:t}));vb.displayName=`Sidebar.Group`;var yb=(0,_.forwardRef)(({className:e,children:t,...n},r)=>(0,Y.jsx)(`div`,{ref:r,"data-sidebar":`group-label`,className:J(`grid overflow-hidden`,`transition-[grid-template-rows,margin,border-color] duration-(--sidebar-animation-duration) ease-(--sidebar-easing)`,`group-data-[mobile=true]/sidebar:transition-none`,`my-3 grid-rows-[0fr] border-b border-kumo-line`,`[[data-sidebar=group]:first-child_&]:my-0 [[data-sidebar=group]:first-child_&]:border-transparent`,`group-not-data-[state=collapsed]/sidebar:my-0 group-not-data-[state=collapsed]/sidebar:grid-rows-[1fr] group-not-data-[state=collapsed]/sidebar:border-transparent`,`group-data-[mobile=true]/sidebar:my-0 group-data-[mobile=true]/sidebar:grid-rows-[1fr] group-data-[mobile=true]/sidebar:border-transparent`,e),...n,children:(0,Y.jsx)(`div`,{className:`min-h-0 min-w-0`,children:(0,Y.jsx)(`div`,{className:J(`mt-4 mb-2 truncate px-3 text-sm font-medium text-kumo-subtle`,`[[data-sidebar=group]:first-child_&]:mt-2`),children:t})})}));yb.displayName=`Sidebar.GroupLabel`;var bb=(0,_.createContext)(!1),xb=(0,_.createContext)(!1),Sb=(0,_.forwardRef)(({className:e,...t},n)=>(0,Y.jsx)(`ul`,{ref:n,"data-sidebar":`menu`,className:J(`m-0 flex min-w-0 list-none flex-col items-stretch gap-y-px p-0`,e),...t}));Sb.displayName=`Sidebar.Menu`;var Cb=(0,_.forwardRef)(({className:e,children:t,itemId:n,...r},i)=>{let{registerItem:a}=sb(),o=(0,_.useCallback)(e=>{n&&a(n,e),typeof i==`function`?i(e):i&&(i.current=e)},[n,i,a]);return(0,Y.jsx)(bb.Provider,{value:!0,children:(0,Y.jsx)(`li`,{ref:o,"data-sidebar":`menu-item`,"data-sidebar-item-id":n,className:J(`relative group-data-[state=collapsed]/sidebar:overflow-hidden`,e),...r,children:t})})});Cb.displayName=`Sidebar.MenuItem`;var wb=(0,_.forwardRef)(({className:e,icon:t,active:n=!1,size:r=`base`,href:i,target:a,tooltip:o,itemId:s,children:c,...l},u)=>{let{state:d,peekable:f,registerItem:p}=sb(),m=Or(),h=(0,_.useContext)(bb),g=(0,_.useCallback)(e=>{s&&!h&&p(s,e)},[s,h,p]),v=(0,_.useCallback)(e=>{s&&h&&p(s,e),typeof u==`function`?u(e):u&&(u.current=e)},[s,h,u,p]),y=t?_.isValidElement(t)?t:(0,Y.jsx)(t,{className:J(`shrink-0 opacity-40`,r===`base`?`size-4`:`size-3.5`)}):null,b=(0,Y.jsxs)(`div`,{className:J(`flex min-w-0 flex-1 items-center gap-3`,`translate-x-[-3px] group-not-data-[state=collapsed]/sidebar:translate-x-0`,`transition-transform duration-(--sidebar-animation-duration)`),children:[y,(0,Y.jsx)(`span`,{className:J(`flex min-w-0 flex-1 items-center gap-2 overflow-hidden text-left`),children:_.Children.map(c,e=>typeof e==`string`||typeof e==`number`?(0,Y.jsx)(`span`,{className:`truncate`,children:e}):e)})]}),x=J(`group/menu-button relative flex w-full min-w-0 cursor-pointer items-center gap-2.5 rounded-lg outline-none`,`before:absolute before:inset-x-0 before:-inset-y-px`,r===`base`&&`min-h-8.5 px-3 py-0 text-sm font-medium`,r===`sm`&&`min-h-7 px-2 py-0 text-sm`,`text-kumo-default`,`transition-[color,box-shadow,outline] duration-(--sidebar-animation-duration)`,!n&&`hover:bg-(--sidebar-active-bg)`,n&&`bg-(--sidebar-active-bg)`,`has-[[data-active]]:bg-transparent has-[[data-active]]:hover:bg-(--sidebar-active-bg)`,`focus:outline-none focus-visible:bg-(--sidebar-active-bg) focus-visible:text-kumo-strong`,e),S,C=h?s:void 0;S=i?(0,Y.jsx)(m,{ref:v,...l,className:J(x,`no-underline!`),href:i,to:i,target:a,"data-active":n||void 0,"data-sidebar":`menu-button`,"data-sidebar-item-id":C,"data-kumo-component":`Sidebar`,"data-kumo-part":`menu-button-link`,"data-size":r,children:b}):(0,Y.jsx)(`button`,{ref:v,type:`button`,className:x,"data-active":n||void 0,"data-sidebar":`menu-button`,"data-sidebar-item-id":C,"data-kumo-component":`Sidebar`,"data-kumo-part":`menu-button`,"data-size":r,...l,children:b});let w=d===`collapsed`&&!f;return o&&(S=(0,Y.jsx)(Kd,{content:o,disabled:!w,side:`right`,render:S})),h?S:(0,Y.jsx)(`li`,{ref:g,"data-sidebar":`menu-item`,"data-sidebar-item-id":s,className:`relative group-data-[state=collapsed]/sidebar:overflow-hidden`,children:S})});wb.displayName=`Sidebar.MenuButton`;var Tb=(0,_.forwardRef)(({className:e,...t},n)=>(0,Y.jsx)(`span`,{ref:n,"data-sidebar":`menu-badge`,className:J(`inline-flex shrink-0 items-center rounded-full border border-dashed border-kumo-line`,`px-1.5 py-0.5 text-[11px]/none font-medium text-kumo-strong select-none`,`group-data-[state=collapsed]/sidebar:hidden`,e),...t}));Tb.displayName=`Sidebar.MenuBadge`;var Eb=(0,_.forwardRef)(({className:e,children:t,...n},r)=>(0,Y.jsxs)(`ul`,{ref:r,"data-sidebar":`menu-sub`,className:J(`relative m-0 flex min-w-0 list-none flex-col gap-y-px overflow-hidden p-0 pr-0 pl-7`,e),...n,children:[(0,Y.jsx)(`li`,{"aria-hidden":`true`,className:`pointer-events-none absolute inset-y-px left-[19px] z-10 block w-px bg-kumo-line`}),t]}));Eb.displayName=`Sidebar.MenuSub`;var Db=(0,_.forwardRef)(({className:e,children:t,...n},r)=>(0,Y.jsx)(xb.Provider,{value:!0,children:(0,Y.jsx)(`li`,{ref:r,"data-sidebar":`menu-sub-item`,className:J(`relative`,e),...n,children:t})}));Db.displayName=`Sidebar.MenuSubItem`;var Ob=(0,_.forwardRef)(({className:e,active:t=!1,href:n,target:r,children:i,...a},o)=>{let s=Or(),c=(0,_.useContext)(xb),l=J(`group/menu-button relative flex min-h-8.5 w-full min-w-0 cursor-pointer items-center gap-2 rounded-lg px-3 py-0 text-sm font-medium outline-none`,`before:absolute before:inset-x-0 before:-inset-y-px`,`text-kumo-default transition-[color] duration-150`,!t&&`hover:bg-(--sidebar-active-bg)`,t&&`bg-(--sidebar-active-bg)`,`focus:outline-none focus-visible:bg-(--sidebar-active-bg) focus-visible:text-kumo-strong`,e),u=(0,Y.jsx)(`span`,{className:`flex min-w-0 flex-1 items-center gap-2 overflow-hidden text-left`,children:_.Children.map(i,e=>typeof e==`string`||typeof e==`number`?(0,Y.jsx)(`span`,{className:`truncate`,children:e}):e)}),d;return d=n?(0,Y.jsx)(s,{ref:o,...a,className:J(l,`no-underline!`),href:n,to:n,target:r,"data-active":t||void 0,"data-sidebar":`menu-sub-button`,"data-kumo-component":`Sidebar`,"data-kumo-part":`menu-sub-button-link`,children:u}):(0,Y.jsx)(`button`,{ref:o,type:`button`,className:l,"data-active":t||void 0,"data-sidebar":`menu-sub-button`,"data-kumo-component":`Sidebar`,"data-kumo-part":`menu-sub-button`,...a,children:u}),c?d:(0,Y.jsx)(`li`,{"data-sidebar":`menu-sub-item`,className:`relative`,children:d})});Ob.displayName=`Sidebar.MenuSubButton`;var kb=(0,_.forwardRef)(({className:e,...t},n)=>(0,Y.jsx)(`div`,{ref:n,"data-sidebar":`separator`,className:J(`my-3 px-2`,e),...t,children:(0,Y.jsx)(`div`,{className:`border-b border-kumo-line`})}));kb.displayName=`Sidebar.Separator`;function Ab({className:e}){let{open:t}=sb();return(0,Y.jsxs)(`svg`,{width:`18`,height:`18`,viewBox:`0 0 24 24`,fill:`none`,"aria-hidden":`true`,focusable:`false`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`,className:J(`shrink-0`,e),children:[(0,Y.jsx)(`path`,{d:`M21.25 6.72v10.56a2.97 2.97 0 0 1-2.97 2.97H5.72a2.97 2.97 0 0 1-2.97-2.97V6.72a2.97 2.97 0 0 1 2.97-2.97h12.56a2.97 2.97 0 0 1 2.97 2.97`}),(0,Y.jsx)(`path`,{d:`M6.25 7.25v9.5`,className:J(`transition-transform duration-(--sidebar-animation-duration) ease-(--sidebar-easing)`,t?`translate-x-px`:`translate-x-[10.5px]`)})]})}Ab.displayName=`Sidebar.PanelIcon`;var jb=(0,_.forwardRef)(({className:e,children:t,onClick:n,...r},i)=>{let{open:a,toggleSidebar:o}=sb();return(0,Y.jsx)(`button`,{ref:i,type:`button`,"data-sidebar":`trigger`,"data-kumo-component":`Sidebar`,"data-kumo-part":`trigger`,"aria-expanded":a,"aria-label":a?`Collapse sidebar`:`Expand sidebar`,className:J(`flex size-8.5 shrink-0 cursor-pointer items-center justify-center rounded-lg`,`text-kumo-subtle hover:bg-(--sidebar-active-bg) hover:text-kumo-default`,`focus:outline-none focus-visible:ring-2 focus-visible:ring-kumo-brand focus-visible:ring-inset`,e),onClick:e=>{n?.(e),o()},...r,children:t??(0,Y.jsx)(Ab,{})})});jb.displayName=`Sidebar.Trigger`;var Mb=(0,_.forwardRef)(({className:e,onClick:t,...n},r)=>{let{setOpenMobile:i}=sb();return(0,Y.jsx)(ip,{ref:r,variant:`ghost`,shape:`square`,size:`sm`,"data-sidebar":`close`,"data-kumo-component":`Sidebar`,"data-kumo-part":`close`,"aria-label":`Close navigation`,className:J(`shrink-0`,e),onClick:e=>{t?.(e),i(!1)},...n,children:(0,Y.jsx)(Uf,{size:18})})});Mb.displayName=`Sidebar.Close`;var Nb=(0,_.forwardRef)(({className:e,...t},n)=>{let{toggleSidebar:r}=sb();return(0,Y.jsx)(`button`,{ref:n,type:`button`,"data-sidebar":`rail`,"data-kumo-component":`Sidebar`,"data-kumo-part":`rail`,"aria-label":`Toggle sidebar`,tabIndex:-1,className:J(`absolute inset-y-0 z-1 hidden w-4 -translate-x-1/2 cursor-pointer transition-all`,`after:absolute after:inset-y-0 after:left-1/2 after:w-0.5`,`hover:after:bg-kumo-brand/20`,`group-data-[side=left]/sidebar-wrapper:right-0`,`group-data-[side=right]/sidebar-wrapper:left-0`,`sm:flex`,e),onClick:r,...t})});Nb.displayName=`Sidebar.Rail`;var Pb=(0,_.forwardRef)(({className:e,...t},n)=>{let{side:r,resizable:i,setIsResizing:a,setWidth:o,setOpen:s,open:c,minWidth:l,width:u,maxWidth:d}=sb(),f=(0,_.useRef)(0),p=(0,_.useRef)(0),m=(0,_.useRef)(!1);return i?(0,Y.jsx)(`button`,{ref:n,type:`button`,"aria-label":`Resize sidebar`,tabIndex:0,"data-sidebar":`resize-handle`,className:J(`absolute inset-y-0 z-2 hidden w-3 cursor-col-resize sm:block`,`after:absolute after:inset-y-0 after:w-0.5`,`after:bg-transparent after:transition-colors`,`hover:after:bg-kumo-hairline focus-visible:after:bg-kumo-hairline active:after:bg-kumo-hairline`,`focus:outline-none`,r===`left`&&`right-0 after:right-0`,r===`right`&&`left-0 after:left-0`,e),onPointerDown:e=>{e.preventDefault(),a(!0),f.current=e.clientX,m.current=!c;let t=e.currentTarget.closest(`[data-sidebar-wrapper]`)?.querySelector(`[data-sidebar='sidebar']`);p.current=t?.getBoundingClientRect().width??0;let n=()=>{a(!1),document.removeEventListener(`pointermove`,i),document.removeEventListener(`pointerup`,u)},i=e=>{let t=r===`left`?e.clientX-f.current:f.current-e.clientX,n=p.current+t;m.current?n>=l&&(m.current=!1,s(!0),o(n)):n<l?(s(!1),m.current=!0):o(n)},u=()=>{n()};document.addEventListener(`pointermove`,i),document.addEventListener(`pointerup`,u)},onKeyDown:e=>{let t=r===`left`?`ArrowRight`:`ArrowLeft`,n=r===`left`?`ArrowLeft`:`ArrowRight`;if(e.key===t)e.preventDefault(),c?o(Math.min(u+10,d)):(s(!0),o(l));else if(e.key===n){e.preventDefault();let t=u-10;t<l?s(!1):o(t)}else e.key===`Home`?(e.preventDefault(),s(!1)):e.key===`End`&&(e.preventDefault(),s(!0),o(d))},...t}):null});Pb.displayName=`Sidebar.ResizeHandle`;var Fb=(e,{isMobile:t,openMobile:n,state:r})=>e&&(t?n:r!==`collapsed`),Ib=(0,_.createContext)({contentId:``,isOpen:!0,isCollapsible:!1,autoScrollOnOpen:!1,toggle:()=>{},completeOpenChange:()=>{}}),Lb=(0,_.forwardRef)(({defaultOpen:e=!1,open:t,onOpenChange:n,onOpenChangeComplete:r,autoScrollOnOpen:i=!1,className:a,children:o,...s},c)=>{let l=sb(),{animationDuration:u}=l,[d,f]=(0,_.useState)(e),p=t??d,m=Fb(p,l),h=(0,_.useId)(),g=(0,_.useRef)(!1),v=(0,_.useCallback)(()=>{let e=!p;f(e),n?.(e),g.current=!1},[p,n]),y=ib(m,u,r),b=(0,_.useMemo)(()=>({contentId:h,isOpen:p,isCollapsible:!0,autoScrollOnOpen:i,toggle:v,completeOpenChange:y}),[h,p,i,v,y]),x=(0,_.useCallback)(e=>{!p&&e.target.matches(`:focus-visible`)&&(g.current=!0,f(!0),n?.(!0))},[p,n]),S=(0,_.useCallback)(e=>{g.current&&!e.currentTarget.contains(e.relatedTarget)&&!e.currentTarget.querySelector(`[data-active]`)&&(g.current=!1,f(!1),n?.(!1))},[n]);return(0,Y.jsx)(Ib.Provider,{value:b,children:(0,Y.jsx)(`div`,{ref:c,"data-open":p||void 0,className:J(`min-w-0`,a),onFocus:x,onBlur:S,...s,children:o})})});Lb.displayName=`Sidebar.Collapsible`;function Rb({render:e}){let{contentId:t,isOpen:n,toggle:r}=(0,_.useContext)(Ib);return _.cloneElement(e,{"aria-expanded":n,"aria-controls":t,"data-open":n||void 0,onClick:t=>{let n=e.props.onClick;n?.(t),r()}})}Rb.displayName=`Sidebar.CollapsibleTrigger`;var zb=(0,_.forwardRef)(({className:e,children:t,onTransitionEnd:n,...r},i)=>{let{contentId:a,isOpen:o,autoScrollOnOpen:s,completeOpenChange:c}=(0,_.useContext)(Ib),l=sb(),{animationDuration:u}=l,d=(0,_.useRef)(null),f=Fb(o,l);(0,_.useEffect)(()=>{if(!f||!s)return;let e=window.setTimeout(()=>{let e=window.matchMedia(`(prefers-reduced-motion: reduce)`).matches;d.current?.scrollIntoView({block:`nearest`,behavior:e?`auto`:`smooth`})},u);return()=>window.clearTimeout(e)},[f,s,u]);let p=(0,_.useCallback)(e=>{e&&(f?e.removeAttribute(`inert`):e.setAttribute(`inert`,``))},[f]),m=(0,_.useCallback)(e=>{d.current=e,p(e),typeof i==`function`?i(e):i&&(i.current=e)},[i,p]),h=(0,_.useCallback)(e=>{n?.(e),e.target===e.currentTarget&&e.propertyName===`grid-template-rows`&&c()},[c,n]);return(0,Y.jsx)(`div`,{ref:m,id:a,role:`region`,"aria-hidden":!f,onTransitionEnd:h,className:J(`grid`,`transition-[grid-template-rows] duration-(--sidebar-animation-duration) ease-(--sidebar-easing)`,`motion-reduce:transition-none`,f?`grid-rows-[1fr]`:`grid-rows-[0fr]`,e),...r,children:(0,Y.jsx)(`div`,{className:`overflow-hidden`,children:t})})});zb.displayName=`Sidebar.CollapsibleContent`;function Bb({className:e}){let{isOpen:t,isCollapsible:n}=(0,_.useContext)(Ib);return(0,Y.jsx)(Tf,{size:12,weight:`bold`,className:J(`ml-auto shrink-0 opacity-40 transition-[transform,rotate,opacity] duration-200 group-hover/menu-button:opacity-100`,n&&t&&`rotate-90`,`group-data-[state=collapsed]/sidebar:hidden`,e)})}Bb.displayName=`Sidebar.MenuChevron`;var Vb=(0,_.createContext)(``),Hb=(0,_.forwardRef)(({activeKey:e,direction:t=`left`,className:n,children:r,...i},a)=>{let o=_.Children.toArray(r).findIndex(t=>_.isValidElement(t)&&t.props.value===e),s=typeof window<`u`&&window.matchMedia(`(prefers-reduced-motion: reduce)`).matches,c=o>0?`-${o*100}%`:`0%`;return(0,Y.jsx)(Vb.Provider,{value:e,children:(0,Y.jsx)(`div`,{ref:a,"data-sidebar":`sliding-views`,className:J(`flex min-h-0 max-w-(--sidebar-width) flex-1 overflow-hidden`,n),...i,children:(0,Y.jsx)(`div`,{className:`flex min-h-0 w-full shrink-0`,style:{transform:`translateX(${c})`,transition:s?`none`:`transform var(--sidebar-animation-duration) var(--sidebar-easing)`},children:r})})})});Hb.displayName=`Sidebar.SlidingViews`;var Ub=(0,_.forwardRef)(({value:e,className:t,children:n,...r},i)=>{let a=(0,_.useContext)(Vb)===e,o=(0,_.useCallback)(e=>{e&&(a?e.removeAttribute(`inert`):e.setAttribute(`inert`,``))},[a]),s=(0,_.useCallback)(e=>{o(e),typeof i==`function`?i(e):i&&(i.current=e)},[i,o]);return(0,Y.jsx)(`div`,{ref:s,"data-sidebar":`sliding-view`,"data-value":e,"aria-hidden":!a,className:J(`flex min-h-0 w-full shrink-0 flex-col`,!a&&`pointer-events-none`,t),...r,children:n})});Ub.displayName=`Sidebar.SlidingView`;var Wb=Object.assign(fb,{Provider:db,Header:pb,Content:mb,Footer:hb,Loading:_b,Group:vb,GroupLabel:yb,Menu:Sb,MenuItem:Cb,MenuButton:wb,MenuBadge:Tb,MenuSub:Eb,MenuSubItem:Db,MenuSubButton:Ob,Separator:kb,Trigger:jb,Close:Mb,Rail:Nb,ResizeHandle:Pb,MenuChevron:Bb,Collapsible:Lb,CollapsibleTrigger:Rb,CollapsibleContent:zb,SlidingViews:Hb,SlidingView:Ub}),Gb=g();function Kb(e){return e.agent.id??qb(e)}function qb(e){return e?.agent.name??e?.agent.id??e?.agent.kind??`adapter`}var Jb=J(`text-[13px] [&_td]:px-3 [&_td]:py-1.5 [&_tbody_tr]:border-t [&_tbody_tr]:border-kumo-hairline`,`[&_th]:px-3 [&_th]:py-1.5 [&_th]:text-xs [&_th]:font-medium [&_th]:whitespace-nowrap [&_th]:text-kumo-subtle`),Yb=`[&_td]:whitespace-nowrap`;function Xb({children:e,className:t}){return(0,Y.jsx)(d_,{className:J(`data-table overflow-x-auto p-0`,t),children:(0,Y.jsx)($,{className:J(Jb,Yb),children:e})})}function Zb({children:e,wrap:t=!1}){return(0,Y.jsx)(`div`,{className:`nested overflow-x-auto rounded-md border border-kumo-hairline bg-kumo-base`,children:(0,Y.jsx)($,{className:J(Jb,!t&&Yb),children:e})})}function Qb({colSpan:e,children:t}){return(0,Y.jsx)($.Row,{children:(0,Y.jsx)($.Cell,{colSpan:e,className:`text-kumo-subtle`,children:t})})}var $b=`table-link cursor-pointer text-left font-medium text-kumo-link hover:underline focus-visible:outline-2 focus-visible:outline-kumo-brand rounded-sm`,ex=`font-mono text-xs`;function tx({entries:e,selected:t=!1}){let n=e[0];return(0,Y.jsxs)($.Row,{variant:t?`selected`:`default`,"data-agent":Kb(n),children:[(0,Y.jsx)($.Cell,{className:ex,children:n.agent.id??`—`}),(0,Y.jsx)($.Cell,{className:`font-medium`,children:qb(n)}),(0,Y.jsx)($.Cell,{children:n.agent.kind}),(0,Y.jsx)($.Cell,{children:n.agent.runtimes.map(e=>`${e.name} (${e.kind})`).join(`, `)||`adapter default`}),(0,Y.jsx)($.Cell,{className:`tabular-nums`,children:e.length})]})}function nx({message:e,description:t}){return(0,Y.jsx)(ly,{size:`sm`,title:e,description:t,className:`py-12`})}function rx({catalog:e,selectedAgent:t}){let n=(0,_.useMemo)(()=>{let t=new Map;for(let n of e){let e=Kb(n);t.set(e,[...t.get(e)??[],n])}return[...t.values()]},[e]);return(0,_.useEffect)(()=>{t&&document.querySelector(`[data-agent="${CSS.escape(t)}"]`)?.scrollIntoView({block:`center`})},[t,n]),n.length?(0,Y.jsxs)(Xb,{children:[(0,Y.jsx)($.Header,{variant:`compact`,children:(0,Y.jsxs)($.Row,{children:[(0,Y.jsx)($.Head,{children:`ID`}),(0,Y.jsx)($.Head,{children:`Agent`}),(0,Y.jsx)($.Head,{children:`Kind`}),(0,Y.jsx)($.Head,{children:`Runtimes`}),(0,Y.jsx)($.Head,{children:`Evals`})]})}),(0,Y.jsx)($.Body,{children:n.map(e=>(0,Y.jsx)(tx,{entries:e,selected:Kb(e[0])===t},Kb(e[0])))})]}):(0,Y.jsx)(nx,{message:`No agents are registered.`})}function ix({items:e}){return(0,Y.jsx)(`dl`,{className:`grid grid-cols-[max-content_minmax(0,1fr)] gap-x-4 gap-y-1 text-[13px]`,children:e.map(([e,t])=>(0,Y.jsxs)(`div`,{className:`contents`,children:[(0,Y.jsx)(`dt`,{className:`text-kumo-subtle`,children:e}),(0,Y.jsx)(`dd`,{className:`min-w-0 break-words text-kumo-default`,children:t})]},e))})}function ax({catalog:e,path:t}){let n=e.find(e=>e.path===t);return n?(0,Y.jsxs)(d_,{className:`flex max-w-3xl flex-col gap-3 p-4`,children:[(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`h2`,{className:`text-base font-semibold text-kumo-strong`,children:n.name??n.id}),(0,Y.jsx)(`p`,{className:`${ex} text-kumo-subtle`,children:n.path})]}),(0,Y.jsx)(ix,{items:[[`Agent`,qb(n)],[`Runtimes`,n.agent.runtimes.map(e=>`${e.name} (${e.kind})`).join(`, `)||`default`],[`Trials`,n.trialCount],[`Scorers`,n.scorers.map(e=>`${e.name} (${e.kind})`).join(`, `)||`none`],[`Fixtures`,n.fixtures.map(e=>e.source).join(`, `)||`none`]]})]}):(0,Y.jsx)(nx,{message:`Eval not found: ${t}`})}function ox({fixture:e}){return(0,Y.jsxs)($.Row,{children:[(0,Y.jsx)($.Cell,{className:ex,children:e.source}),(0,Y.jsx)($.Cell,{className:ex,children:e.destination??`—`}),(0,Y.jsx)($.Cell,{children:e.visibility??`dynamic`}),(0,Y.jsx)($.Cell,{className:ex,children:e.path})]})}function sx({catalog:e}){let t=e.flatMap(e=>e.fixtures.map(t=>({...t,path:e.path})));return t.length?(0,Y.jsxs)(Xb,{children:[(0,Y.jsx)($.Header,{variant:`compact`,children:(0,Y.jsxs)($.Row,{children:[(0,Y.jsx)($.Head,{children:`Source`}),(0,Y.jsx)($.Head,{children:`Destination`}),(0,Y.jsx)($.Head,{children:`Visibility`}),(0,Y.jsx)($.Head,{children:`Used by`})]})}),(0,Y.jsx)($.Body,{children:t.map((e,t)=>(0,Y.jsx)(ox,{fixture:e},`${e.path}-${t}`))})]}):(0,Y.jsx)(nx,{message:`No fixtures are registered.`})}function cx({label:e,noun:t,page:n,pageSize:r,total:i,onPage:a}){if(i<=r)return null;let o=n*r+1,s=Math.min((n+1)*r,i);return(0,Y.jsx)(`nav`,{className:`pager flex items-center justify-end`,"aria-label":e,children:(0,Y.jsxs)(Fv,{page:n+1,setPage:e=>a(e-1),perPage:r,totalCount:i,children:[(0,Y.jsx)(Fv.Info,{children:()=>(0,Y.jsxs)(`span`,{className:`text-xs text-kumo-subtle tabular-nums`,children:[t,` `,o,`–`,s,` of `,i]})}),(0,Y.jsx)(Fv.Controls,{})]})})}function lx(e,t,n){let r=t.trim().toLowerCase();return r?e.flatMap(e=>{if(e.label.toLowerCase().includes(r))return[e];let t=e.values.filter(t=>t.label.toLowerCase().includes(r)||n.getAll(e.key).includes(t.key));return t.length?[{...e,values:t}]:[]}):[...e]}var ux=(e,...t)=>!e||t.some(t=>t.includes(e));function dx({facets:e,search:t,archivedCount:n=0,onToggleFacet:r,onField:i,onClear:a}){let[o,s]=(0,_.useState)(()=>typeof window>`u`||window.matchMedia(`(min-width: 901px)`).matches),[c,l]=(0,_.useState)(``),u=c.trim().toLowerCase(),d=lx(e,c,t),f=ux(u,`date`,`from`,`to`,`started`),p=n>0&&ux(u,`archived`,`removed`),m=[...t.keys()].filter(e=>e!==`q`).length;return(0,Y.jsxs)(`section`,{"aria-label":`Run filters`,className:`runs-filter-panel shrink-0 rounded-lg border border-kumo-line bg-kumo-base lg:w-72`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-2`,children:[(0,Y.jsxs)(`button`,{type:`button`,"aria-expanded":o,className:`flex shrink-0 cursor-pointer items-center gap-1.5 text-[13px] font-semibold text-kumo-strong select-none`,onClick:()=>s(e=>!e),children:[(0,Y.jsx)(Tf,{"aria-hidden":!0,className:`size-3 text-kumo-subtle transition-transform ${o?`rotate-90`:``}`}),(0,Y.jsx)(Pf,{"aria-hidden":!0,className:`size-3.5 text-kumo-subtle`}),`Filters`,m?` (${m} active)`:``]}),(0,Y.jsx)($m,{type:`search`,size:`xs`,"aria-label":`Search filters`,placeholder:`Search filters`,value:c,className:`min-w-0 flex-1`,onChange:e=>{l(e.target.value),e.target.value&&s(!0)}}),(0,Y.jsx)(ip,{size:`xs`,variant:`ghost`,shape:`square`,className:`clear-filters shrink-0`,icon:(0,Y.jsx)(Ff,{}),"aria-label":`Clear filters`,title:`Clear filters`,disabled:!m,onClick:a})]}),o?(0,Y.jsxs)(`div`,{className:`flex flex-col gap-4 border-t border-kumo-hairline px-3 py-3`,children:[d.map(e=>(0,Y.jsxs)(`fieldset`,{className:`flex min-w-0 flex-col gap-1`,children:[(0,Y.jsx)(`legend`,{className:`mb-1 text-xs font-medium text-kumo-subtle`,children:e.label}),e.values.map(n=>(0,Y.jsx)(Rm,{className:`runs-choice`,checked:t.getAll(e.key).includes(n.key),onCheckedChange:()=>r(e.key,n.key),label:(0,Y.jsxs)(`span`,{className:`flex min-w-0 flex-1 items-baseline justify-between gap-2 text-[13px]`,children:[(0,Y.jsx)(`span`,{className:`truncate`,children:n.label}),(0,Y.jsx)(`span`,{className:`text-xs text-kumo-subtle tabular-nums`,children:n.count})]})},n.key))]},e.key)),f?(0,Y.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,Y.jsx)($m,{type:`date`,size:`sm`,label:`From`,value:t.get(`from`)??``,onChange:e=>i(`from`,e.target.value)}),(0,Y.jsx)($m,{type:`date`,size:`sm`,label:`To`,value:t.get(`to`)??``,onChange:e=>i(`to`,e.target.value)})]}):null,p?(0,Y.jsx)(Rm,{className:`runs-choice`,checked:t.get(`archived`)===`show`,onCheckedChange:e=>i(`archived`,e?`show`:``),label:(0,Y.jsxs)(`span`,{className:`flex min-w-0 flex-1 items-baseline justify-between gap-2 text-[13px]`,children:[(0,Y.jsx)(`span`,{children:`Show archived`}),(0,Y.jsx)(`span`,{className:`text-xs text-kumo-subtle tabular-nums`,children:n})]})}):null,!d.length&&!f&&!p?(0,Y.jsxs)(`p`,{className:`text-[13px] text-kumo-subtle`,children:[`No filters match “`,c,`”.`]}):null]}):null]})}function fx({label:e,placeholder:t,value:n,count:r,onChange:i}){return(0,Y.jsxs)(`div`,{className:`search-field flex min-w-0 flex-wrap items-center gap-3`,children:[(0,Y.jsx)($m,{type:`search`,size:`sm`,"aria-label":e,placeholder:t,value:n,className:`w-full sm:w-80`,onChange:e=>i(e.target.value)}),(0,Y.jsx)(`span`,{className:`search-count text-xs text-kumo-subtle tabular-nums`,children:r})]})}function px(e,t){let[n,r]=(0,_.useState)(e);return{sort:n,toggleSort:e=>{r(t=>t.key===e?{key:e,direction:t.direction===`asc`?`desc`:`asc`}:{key:e,direction:`asc`}),t?.()}}}function mx({label:e,sortKey:t,sort:n,onSort:r,sticky:i}){let a=n.key===t,o=a?n.direction===`asc`?`ascending`:`descending`:void 0,s=a?n.direction===`asc`?Ef:Cf:Df;return(0,Y.jsx)($.Head,{"aria-sort":o,sticky:i,children:(0,Y.jsxs)(`button`,{type:`button`,className:`table-sort inline-flex items-center gap-1 whitespace-nowrap rounded font-medium hover:text-kumo-strong focus-visible:outline-2 focus-visible:outline-kumo-brand`,onClick:()=>r(t),children:[e,(0,Y.jsx)(s,{"aria-hidden":!0,className:a?`size-3`:`size-3 text-kumo-inactive`})]})})}function hx(e,t,n){return(0,_.useMemo)(()=>{let r=[...e];return r.sort((e,r)=>{let i=n(e,t.key),a=n(r,t.key),o=typeof i==`number`&&typeof a==`number`?i-a:String(i??``).localeCompare(String(a??``),void 0,{numeric:!0,sensitivity:`base`});return t.direction===`asc`?o:-o}),r},[e,t,n])}var gx={passed:`success`,failed:`error`,errored:`warning`,error:`warning`};function _x({status:e}){return(0,Y.jsx)(`span`,{className:`inline-flex`,"data-status":e,children:(0,Y.jsx)(Tr,{appearance:`dot`,variant:gx[e]??`neutral`,children:e})})}function vx({run:e,trials:t,onTrial:n}){let{sort:r,toggleSort:i}=px({key:`index`,direction:`asc`}),a=(0,_.useMemo)(()=>[...new Set(t.flatMap(e=>(e.scores??[]).map(e=>e.name)))].sort(),[t]),o=hx(t,r,(e,t)=>t.startsWith(`score:`)?(e.scores??[]).find(e=>e.name===t.slice(6))?.value:{index:e.index,status:e.status,aggregate:e.score,runtime:e.durationMs,started:e.startedAt}[t]);return(0,Y.jsxs)(Zb,{children:[(0,Y.jsx)($.Header,{variant:`compact`,children:(0,Y.jsxs)($.Row,{children:[(0,Y.jsx)(mx,{label:`Trial`,sortKey:`index`,sort:r,onSort:i}),(0,Y.jsx)(mx,{label:`Status`,sortKey:`status`,sort:r,onSort:i}),(0,Y.jsx)(mx,{label:`Aggregate`,sortKey:`aggregate`,sort:r,onSort:i}),a.map(e=>(0,Y.jsx)(mx,{label:e,sortKey:`score:${e}`,sort:r,onSort:i},e)),(0,Y.jsx)(mx,{label:`Runtime`,sortKey:`runtime`,sort:r,onSort:i}),(0,Y.jsx)(mx,{label:`Started`,sortKey:`started`,sort:r,onSort:i}),(0,Y.jsx)($.Head,{className:`text-right`,children:`Details`})]})}),(0,Y.jsxs)($.Body,{children:[o.map(t=>(0,Y.jsxs)($.Row,{children:[(0,Y.jsx)($.Cell,{className:`tabular-nums`,children:t.index+1}),(0,Y.jsx)($.Cell,{children:(0,Y.jsx)(_x,{status:t.status})}),(0,Y.jsx)($.Cell,{className:`tabular-nums`,children:t.score??`—`}),a.map(e=>(0,Y.jsx)($.Cell,{className:`tabular-nums`,children:(t.scores??[]).find(t=>t.name===e)?.value??`—`},e)),(0,Y.jsx)($.Cell,{className:`tabular-nums`,children:t.durationMs===void 0?`—`:`${t.durationMs}ms`}),(0,Y.jsx)($.Cell,{className:`whitespace-nowrap tabular-nums`,children:new Date(t.startedAt).toLocaleString()}),(0,Y.jsx)($.Cell,{className:`text-right`,children:(0,Y.jsxs)(ip,{size:`xs`,variant:`secondary`,className:`view-trial`,onClick:()=>n(e,t),children:[`View trial`,(0,Y.jsx)(bf,{"aria-hidden":!0,className:`size-3`})]})})]},t.id)),o.length?null:(0,Y.jsx)(Qb,{colSpan:a.length+6,children:`No trials saved yet.`})]})]})}function yx(e){if(e===null||typeof e==`string`||typeof e==`boolean`||typeof e==`number`&&Number.isFinite(e))return JSON.stringify(e);if(Array.isArray(e))return`[${e.map(yx).join(`,`)}]`;if(typeof e==`object`&&Object.getPrototypeOf(e)===Object.prototype)return`{${Object.keys(e).sort().map(t=>`${JSON.stringify(t)}:${yx(e[t])}`).join(`,`)}}`;throw Error(`Matrix parameters must be finite JSON values`)}var bx=`@missing`,xx=e=>`p.${e}`;function Sx(e,t,n){let r=e.get(t);r?r.count++:e.set(t,{key:t,label:n,count:1})}function Cx(e){return[{key:`eval`,label:`Eval`},{key:`matrix`,label:`Matrix`},{key:`status`,label:`Status`},...[...new Set(e.flatMap(e=>Object.keys(e.parameters??{})))].sort().map(e=>({key:xx(e),label:e}))].map(({key:t,label:n})=>{let r=new Map;for(let n of e){let e=t===`eval`?n.evalId:t===`matrix`?n.matrixId:t===`status`?n.status:n.parameters?.[t.slice(2)],i=t===`eval`||t===`status`||(t===`matrix`?n.matrixId!==void 0:Object.hasOwn(n.parameters??{},t.slice(2)));Sx(r,i?yx(e):bx,i?String(typeof e==`string`?e:JSON.stringify(e)):`Missing`)}return{key:t,label:n,values:[...r.values()].sort((e,t)=>e.label.localeCompare(t.label,void 0,{numeric:!0}))}})}function wx(e,t={}){let n=new URLSearchParams;n.append(`eval`,yx(e));for(let[e,r]of Object.entries(t))r!=null&&n.append(xx(e),yx(r));return`/runs?${n}`}function Tx(e,t){let n=[...t.keys()].filter(e=>[`eval`,`matrix`,`status`].includes(e)||e.startsWith(`p.`)),r=t.get(`from`),i=t.get(`to`);return e.filter(e=>r&&e.startedAt.slice(0,10)<r||i&&e.startedAt.slice(0,10)>i?!1:n.every(n=>{let r=t.getAll(n),i=n===`eval`||n===`status`||(n===`matrix`?e.matrixId!==void 0:Object.hasOwn(e.parameters??{},n.slice(2))),a=n===`eval`?e.evalId:n===`matrix`?e.matrixId:n===`status`?e.status:e.parameters?.[n.slice(2)],o=i?yx(a):bx;return r.includes(o)}))}function Ex(e,t){let[n,r]=(0,_.useState)(()=>new URLSearchParams),i=e??n,a=t??r,o=i.get(`q`)??``,[s,c]=(0,_.useState)(o);return(0,_.useEffect)(()=>c(o),[o]),(0,_.useEffect)(()=>{if(s===o)return;let e=setTimeout(()=>{let e=new URLSearchParams(i);s?e.set(`q`,s):e.delete(`q`),a(e)},250);return()=>clearTimeout(e)},[s,o,i,a]),{activeSearch:i,query:s,setQuery:c,setField:(e,t)=>{let n=new URLSearchParams(i);t?n.set(e,t):n.delete(e),a(n)},toggleFacet:(e,t)=>{let n=new URLSearchParams(i),r=n.getAll(e);n.delete(e);for(let i of r.filter(e=>e!==t))n.append(e,i);r.includes(t)||n.append(e,t),a(n)},clearFilters:()=>a(new URLSearchParams)}}function Dx(e,t,n){let[r,i]=(0,_.useState)({});return(0,_.useEffect)(()=>{if(!n||!t.some(e=>e.id===n))return;let r=!0;return e.listTrials(n).then(e=>{r&&i(t=>({...t,[n]:e}))}),()=>{r=!1}},[e,t,n]),{trials:r,loadTrials:t=>{r[t]||e.listTrials(t).then(e=>i(n=>({...n,[t]:e})))}}}var Ox=50,kx=9;function Ax(e){return typeof e==`string`?e:JSON.stringify(e)??String(e)}function jx(e){return[...new Set(e.flatMap(e=>Object.keys(e.parameters??{})))].sort()}function Mx(e,t,n,r){let i=t.trim().toLowerCase().split(/\s+/).filter(Boolean);return i.length?e.filter(e=>{let t=r.find(t=>t.id===e.evalId),a=n.find(t=>t.id===e.suiteId),o=Object.entries(e.parameters??{}).flatMap(([e,t])=>[e,Ax(t)]),s=[e.id,e.evalId,t?.name,e.suiteId,a?.name,e.matrixId,t?.agent.name,t?.agent.kind,e.status,e.score,e.startedAt,...o].map(Ax).join(` `).toLowerCase();return i.every(e=>s.includes(e))}):[...e]}function Nx({api:e,runs:t,suites:n,catalog:r,onTrial:i,onOpenRun:a,selectedRunId:o,search:s,onSearchChange:c}){let{activeSearch:l,query:u,setQuery:d,setField:f,toggleFacet:p,clearFilters:m}=Ex(s,c),{trials:h,loadTrials:g}=Dx(e,t,o),v=l.get(`archived`)===`show`,y=t.filter(e=>e.archived).length,b=(0,_.useMemo)(()=>v?t:t.filter(e=>!e.archived),[t,v]),x=(0,_.useMemo)(()=>Cx(b),[b]),S=(0,_.useMemo)(()=>jx(b),[b]),C=Mx(Tx(b,l),u,n,r),[w,T]=(0,_.useState)(0),{sort:E,toggleSort:D}=px({key:`started`,direction:`desc`},()=>T(0)),O=e=>r.find(t=>t.id===e.evalId),k=e=>n.find(t=>t.id===e.suiteId)?.name,A=hx(C,E,(e,t)=>Px(e,t,O(e),k(e))),j=Math.max(1,Math.ceil(A.length/Ox)),M=Math.min(w,j-1),N=A.slice(M*Ox,(M+1)*Ox),P=kx+S.length,F=e=>{a(e),g(e.id)},I=(e,t,n)=>(0,Y.jsx)(mx,{label:e,sortKey:t,sort:E,onSort:D,sticky:n});return t.length?(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-4 lg:flex-row lg:items-start`,children:[(0,Y.jsx)(dx,{facets:x,search:l,archivedCount:y,onToggleFacet:p,onField:f,onClear:m}),(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-2`,children:[(0,Y.jsx)(fx,{label:`Filter runs`,placeholder:`Eval, parameter, agent or status`,value:u,count:`${A.length} of ${b.length} runs`,onChange:d}),(0,Y.jsxs)(Xb,{children:[(0,Y.jsx)($.Header,{variant:`compact`,children:(0,Y.jsxs)($.Row,{children:[I(`Run`,`run`,`left`),I(`Status`,`status`),I(`Eval`,`eval`),S.map(e=>(0,Y.jsx)(mx,{label:e,sortKey:`param:${e}`,sort:E,onSort:D},e)),I(`Agent`,`agent`),I(`Trials`,`trials`),I(`Score`,`score`),I(`Runtime`,`runtime`),I(`Started`,`started`),I(`Suite`,`suite`)]})}),(0,Y.jsxs)($.Body,{children:[N.map(e=>{let t=o===e.id;return(0,Y.jsxs)(_.Fragment,{children:[(0,Y.jsx)(Fx,{run:e,evaluation:O(e),suiteName:k(e),parameterColumns:S,expanded:t,onToggle:()=>F(e)}),t?(0,Y.jsx)($.Row,{children:(0,Y.jsx)($.Cell,{colSpan:P,className:`bg-kumo-elevated`,children:(0,Y.jsx)(vx,{run:e,trials:h[e.id]??[],onTrial:i})})}):null]},e.id)}),A.length?null:(0,Y.jsx)(Qb,{colSpan:P,children:(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-2`,children:[`No matching runs.`,(0,Y.jsx)(ip,{size:`xs`,variant:`ghost`,onClick:m,children:`Clear filters`})]})})]})]}),(0,Y.jsx)(cx,{label:`Run pages`,noun:`Runs`,page:M,pageSize:Ox,total:A.length,onPage:T})]})]}):(0,Y.jsx)(nx,{message:`No runs yet. Select an eval or suite to start one.`})}function Px(e,t,n,r){if(t.startsWith(`param:`)){let n=e.parameters?.[t.slice(6)];return n===void 0?void 0:typeof n==`number`?n:Ax(n)}return{run:e.id,suite:r??e.suiteId,eval:n?.name??e.evalId,agent:n?.agent.name??n?.agent.kind??`Unnamed agent`,status:e.status,trials:e.completedTrials,score:e.score,runtime:e.durationMs,started:e.startedAt}[t]}function Fx({run:e,evaluation:t,suiteName:n,parameterColumns:r,expanded:i,onToggle:a}){return(0,Y.jsxs)($.Row,{variant:i?`selected`:`default`,children:[(0,Y.jsx)($.Cell,{sticky:`left`,children:(0,Y.jsx)(`button`,{type:`button`,className:`${$b} ${ex}`,"aria-expanded":i,title:e.id,onClick:a,children:e.id.slice(0,8)})}),(0,Y.jsx)($.Cell,{children:(0,Y.jsx)(_x,{status:e.status})}),(0,Y.jsxs)($.Cell,{className:`font-medium`,children:[t?.name??e.evalId,e.archived?(0,Y.jsx)(`span`,{className:`ml-2 rounded border border-kumo-line px-1 text-[11px] font-normal text-kumo-subtle`,title:`This eval is no longer in the project (evalkit tidy)`,children:`archived`}):null]}),r.map(t=>(0,Y.jsx)($.Cell,{className:ex,children:Object.hasOwn(e.parameters??{},t)?Ax(e.parameters?.[t]):`—`},t)),(0,Y.jsx)($.Cell,{children:t?.agent.name??t?.agent.kind??`Unnamed agent`}),(0,Y.jsxs)($.Cell,{className:`tabular-nums`,children:[e.completedTrials,`/`,e.requestedTrials]}),(0,Y.jsx)($.Cell,{className:`tabular-nums`,children:e.score??`—`}),(0,Y.jsx)($.Cell,{className:`tabular-nums`,children:e.durationMs===void 0?`—`:`${e.durationMs}ms`}),(0,Y.jsx)($.Cell,{className:`whitespace-nowrap tabular-nums`,children:new Date(e.startedAt).toLocaleString()}),(0,Y.jsx)($.Cell,{children:n??`—`})]})}function Ix({message:e,title:t}){return(0,Y.jsx)(gp,{variant:`error`,size:`sm`,role:`alert`,title:t,description:e})}function Lx({id:e,evaluation:t,parameters:n=[],trials:r,onRun:i,runDisabled:a=!1,onOpen:o,status:s,cellParameters:c}){let l=wx(t?.id??e,c),u=t?.name??e,d=t?.path??e;return(0,Y.jsxs)($.Row,{children:[(0,Y.jsx)($.Cell,{children:(0,Y.jsxs)(`div`,{className:`flex flex-col`,children:[o?(0,Y.jsx)(`button`,{type:`button`,className:$b,onClick:o,children:u}):(0,Y.jsx)(`span`,{className:`font-medium`,children:u}),d===u?null:(0,Y.jsx)(`span`,{className:`${ex} text-kumo-subtle`,children:d})]})}),n.map((e,t)=>(0,Y.jsx)($.Cell,{className:ex,children:typeof e==`string`?e:JSON.stringify(e)},t)),(0,Y.jsx)($.Cell,{children:t?(0,Y.jsx)(Di,{href:`/agents?agent=${encodeURIComponent(Kb(t))}`,children:qb(t)}):qb(t)}),(0,Y.jsx)($.Cell,{children:t?.agent.runtimes.map(e=>e.name).join(`, `)||`default`}),(0,Y.jsx)($.Cell,{className:`tabular-nums`,children:r??t?.trialCount??`—`}),(0,Y.jsx)($.Cell,{children:s?(0,Y.jsx)(Di,{href:l,title:`Show these runs`,children:(0,Y.jsx)(_x,{status:s})}):`—`}),(0,Y.jsx)($.Cell,{className:`text-right`,children:(0,Y.jsxs)(`div`,{className:`inline-flex items-center justify-end gap-2`,children:[(0,Y.jsx)(ap,{size:`xs`,variant:`secondary`,icon:(0,Y.jsx)(Rf,{}),href:l,children:`Runs`}),i||a?(0,Y.jsx)(ip,{size:`xs`,variant:`secondary`,icon:(0,Y.jsx)(Bf,{weight:`fill`}),disabled:a,title:a?`Matrix configuration is still loading`:void 0,onClick:e=>{e.stopPropagation(),i?.()},children:`Run eval`}):null]})})]})}function Rx({nested:e,children:t}){return e?(0,Y.jsx)(Zb,{children:t}):(0,Y.jsx)(Xb,{children:t})}function zx({axes:e,sort:t,onSort:n,planned:r=!1}){let i=(e,r)=>(0,Y.jsx)(mx,{label:e,sortKey:r,sort:t,onSort:n});return(0,Y.jsx)($.Header,{variant:`compact`,children:(0,Y.jsxs)($.Row,{children:[i(`Eval`,`eval`),e.map(e=>(0,Y.jsx)(mx,{label:e,sortKey:`axis:${e}`,sort:t,onSort:n},e)),i(`Agent`,`agent`),r?(0,Y.jsx)($.Head,{children:`Runtime`}):i(`Runtime`,`runtime`),i(`Trials`,`trials`),r?(0,Y.jsx)($.Head,{children:`Latest run`}):i(`Latest run`,`status`),(0,Y.jsx)($.Head,{className:`text-right`,children:`Actions`})]})})}var Bx=50;function Vx({api:e,evalIds:t,catalog:n,matrix:r,runs:i,nested:a=!1,onRun:o,onOpenEval:s}){let[c,l]=(0,_.useState)(``),[u,d]=(0,_.useState)(0),{sort:f,toggleSort:p}=px({key:`eval`,direction:`asc`},()=>d(0)),[m,h]=(0,_.useState)(),[g,v]=(0,_.useState)(),y=r.dimensions??Object.keys(r.parameters),b=t.join(`,`);(0,_.useEffect)(()=>{let t=!0;return v(void 0),h(void 0),e.listMatrixCells({evalIds:b.split(`,`).filter(Boolean),query:c,offset:u*Bx,sort:f.key,direction:f.direction}).then(e=>{t&&h(e)}).catch(e=>{t&&v(e instanceof Error?e.message:`Unable to list matrix cells`)}),()=>{t=!1}},[e,b,c,u,f]);let x=new Map(n.map(e=>[e.id,e])),S=e=>i.filter(t=>t.matrixId===r.id&&t.cellKey===e).sort((e,t)=>t.startedAt.localeCompare(e.startedAt))[0]?.status,C=y.length+6;return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,Y.jsx)(fx,{label:`Filter matrix cells`,placeholder:`Eval, parameter or agent`,value:c,count:`${m?.total??0} of ${m?.planned??0} eligible cells`,onChange:e=>{l(e),d(0)}}),g?(0,Y.jsx)(Ix,{message:g}):null,(0,Y.jsxs)(Rx,{nested:a,children:[(0,Y.jsx)(zx,{axes:y,sort:f,onSort:p,planned:!0}),(0,Y.jsxs)($.Body,{children:[m?.cells.map(e=>{let t=x.get(e.evalId);return(0,Y.jsx)(Lx,{id:e.evalId,evaluation:t,parameters:y.map(t=>e.parameters[t]===null?`None`:e.parameters[t]),trials:r.trials,status:S(e.key),cellParameters:e.parameters,onRun:t?()=>o(t.path,Object.fromEntries(y.map(t=>[t,e.parameters[t]]))):void 0,onOpen:t?()=>s(t):void 0},e.key)}),!m&&!g?(0,Y.jsx)(Qb,{colSpan:C,children:`Loading cells…`}):null,m&&!m.cells.length?(0,Y.jsx)(Qb,{colSpan:C,children:`No matching cells.`}):null]})]}),(0,Y.jsx)(cx,{label:`Matrix cells pages`,noun:`Cells`,page:u,pageSize:Bx,total:m?.total??0,onPage:d})]})}var Hx=50;function Ux(e,t,n,r){let i=t.reduce((e,[,t])=>e*t.length,1),a=e.length*i;if(!Number.isSafeInteger(a))throw Error(`Matrix exceeds safe cell count`);let o=[];for(let s=n;s<Math.min(n+r,a);s++){let n=e[Math.floor(s/i)],r=s%i,a={},c=Array(t.length);for(let e=t.length-1;e>=0;e--){let[n,i]=t[e],o=i[r%i.length];a[n]=o,c[e]=o,r=Math.floor(r/i.length)}o.push({id:n,parameters:a,values:c})}return{rows:o,total:a}}function Wx(e,t,n){return JSON.stringify([e,t.map(([e])=>n[e])])}function Gx(e){return typeof e==`string`?e:JSON.stringify(e)??String(e)}function Kx(e,t,n){let r=t.trim().toLowerCase().split(/\s+/).filter(Boolean);return r.length?e.filter(e=>{let t=n(e).map(Gx).join(` `).toLowerCase();return r.every(e=>t.includes(e))}):[...e]}function qx(e){let t=e.matrix?e.evalIds.length*Object.values(e.matrix.parameters).reduce((e,t)=>e*t.length,1):0;return e.matrix&&(e.matrix.constrained||t>1e3)?(0,Y.jsx)(Vx,{...e,matrix:e.matrix}):(0,Y.jsx)(Jx,{...e})}function Jx({evalIds:e,catalog:t,matrix:n,runs:r,nested:i=!1,onRun:a,onOpenEval:o}){let[s,c]=(0,_.useState)(0),[l,u]=(0,_.useState)(``),{sort:d,toggleSort:f}=px({key:`eval`,direction:`asc`},()=>c(0)),p=n?Object.entries(n.parameters):[],m=new Map(t.map(e=>[e.id,e])),h=new Map;for(let e of r){if(n&&(e.matrixId!==n.id||!e.parameters))continue;let t=n?Wx(e.evalId,p,e.parameters):e.evalId,r=h.get(t);(!r||r.startedAt<=e.startedAt)&&h.set(t,e)}let g=e=>m.get(e.id),v=e=>h.get(n?Wx(e.id,p,e.parameters):e.id)?.status,{total:y}=Ux(e,p,0,0),b=hx(Kx(Ux(e,p,0,y).rows,l,e=>{let t=g(e);return[t?.name??e.id,e.id,t?.path??e.id,...e.values,qb(t),t?.agent.runtimes.map(e=>e.name).join(`, `)??`default`,v(e)??`not run`]}),d,(e,t)=>{let r=g(e);return t.startsWith(`axis:`)?Gx(e.parameters[t.slice(5)]):t===`eval`?r?.name??e.id:t===`agent`?qb(r):t===`runtime`?r?.agent.runtimes.map(e=>e.name).join(`, `)??`default`:t===`trials`?n?.trials??r?.trialCount??0:t===`status`?v(e)??`not run`:``}),x=Math.max(1,Math.ceil(b.length/Hx)),S=Math.min(s,x-1),C=b.slice(S*Hx,(S+1)*Hx);return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,Y.jsx)(fx,{label:`Filter matrix cells`,placeholder:`Eval, parameter, agent or status`,value:l,count:`${b.length} of ${y} cells`,onChange:e=>{u(e),c(0)}}),(0,Y.jsxs)(Rx,{nested:i,children:[(0,Y.jsx)(zx,{axes:p.map(([e])=>e),sort:d,onSort:f}),(0,Y.jsx)($.Body,{children:C.length?C.map(e=>{let t=g(e);return(0,Y.jsx)(Lx,{id:e.id,evaluation:t,parameters:e.values,trials:n?.trials,status:v(e),cellParameters:e.parameters,onRun:t&&n!==void 0?()=>a(t.path,n?e.parameters:void 0):void 0,runDisabled:!!t&&n===void 0,onOpen:t?()=>o(t):void 0},Wx(e.id,p,e.parameters))}):(0,Y.jsx)(Qb,{colSpan:p.length+6,children:`No matching cells.`})})]}),(0,Y.jsx)(cx,{label:`Matrix cells pages`,noun:`Cells`,page:S,pageSize:Hx,total:b.length,onPage:c})]})}function Yx({suite:e,expanded:t,onToggle:n,onRun:r}){return(0,Y.jsxs)($.Row,{variant:t?`selected`:`default`,children:[(0,Y.jsx)($.Cell,{children:(0,Y.jsxs)(`button`,{type:`button`,className:`${$b} inline-flex items-center gap-1.5`,"aria-expanded":t,onClick:n,children:[(0,Y.jsx)(Tf,{"aria-hidden":!0,className:`size-3 transition-transform ${t?`rotate-90`:``}`}),e.name??e.id??`Unnamed suite`]})}),(0,Y.jsx)($.Cell,{className:`tabular-nums`,children:e.evalIds.length}),(0,Y.jsx)($.Cell,{className:`text-right`,children:(0,Y.jsx)(ip,{size:`xs`,variant:`secondary`,icon:(0,Y.jsx)(Bf,{weight:`fill`}),disabled:!r,title:r?void 0:`Run matrix cells individually from their rows`,onClick:e=>{e.stopPropagation(),r?.()},children:`Run suite`})})]})}function Xx({api:e,suites:t,catalog:n,matrix:r,runs:i=[],selectedSuiteId:a,onOpenSuite:o,onOpenEval:s}){let[c,l]=(0,_.useState)(),[u,d]=(0,_.useState)(),f=e=>t=>d(t instanceof Error?t.message:e),p=(t,n)=>{d(void 0),e.runEval(t,n).catch(f(`Unable to start eval`))},m=t=>{d(void 0),e.runSuite(t).catch(f(`Unable to start suite`))},h=a??c,g=n.filter(e=>!e.suiteId&&!t.some(t=>t.evalIds.includes(e.id)));return!t.length&&!g.length?(0,Y.jsx)(nx,{message:`No evals or suites are loaded.`}):(0,Y.jsxs)(Y.Fragment,{children:[r?(0,Y.jsx)(`p`,{className:`text-[13px] text-kumo-subtle`,children:`Each row is one configured matrix cell. Run one row at a time; use the CLI dry-run for larger selections.`}):null,u?(0,Y.jsx)(Ix,{message:u}):null,t.length>0?(0,Y.jsxs)(`section`,{"aria-label":`Suites`,className:`flex flex-col gap-2`,children:[(0,Y.jsx)(`h2`,{className:`text-sm font-semibold text-kumo-strong`,children:`Suites`}),(0,Y.jsxs)(Xb,{children:[(0,Y.jsx)($.Header,{variant:`compact`,children:(0,Y.jsxs)($.Row,{children:[(0,Y.jsx)($.Head,{children:`Suite`}),(0,Y.jsx)($.Head,{children:`Evals`}),(0,Y.jsx)($.Head,{className:`text-right`,children:`Actions`})]})}),(0,Y.jsx)($.Body,{children:t.map(t=>(0,Y.jsxs)(_.Fragment,{children:[(0,Y.jsx)(Yx,{suite:t,expanded:h===t.id,onToggle:()=>{l(h===t.id?void 0:t.id),o(t.id)},onRun:r===null?()=>m(t.id):void 0}),h===t.id?(0,Y.jsx)($.Row,{children:(0,Y.jsx)($.Cell,{colSpan:3,className:`bg-kumo-elevated`,children:(0,Y.jsx)(qx,{api:e,evalIds:t.evalIds,catalog:n,matrix:r,runs:i,nested:!0,onRun:p,onOpenEval:s})})}):null]},t.id))})]})]}):null,g.length>0?(0,Y.jsxs)(`section`,{"aria-label":`Standalone evals`,className:`flex flex-col gap-2`,children:[(0,Y.jsx)(`h2`,{className:`text-sm font-semibold text-kumo-strong`,children:`Standalone evals`}),(0,Y.jsx)(qx,{api:e,evalIds:g.map(e=>e.id),catalog:n,matrix:r,runs:i,onRun:p,onOpenEval:s})]}):null]})}function Zx({artifact:e}){return(0,Y.jsxs)($.Row,{children:[(0,Y.jsx)($.Cell,{className:`${ex} break-all`,children:e.path}),(0,Y.jsx)($.Cell,{children:e.kind}),(0,Y.jsx)($.Cell,{className:`whitespace-nowrap tabular-nums`,children:e.size===void 0?`—`:`${e.size} B`})]})}function Qx(e){return e.kind===`message`&&e.role===`user`?`User message`:e.kind===`message`&&e.role===`assistant`?`Assistant message`:e.kind.includes(`scorer`)?`Scorer · ${e.kind.replace(`scorer-`,``)}`:e.kind.includes(`tool`)?`Tool · ${e.kind.replace(`tool-`,``)}`:e.kind.replaceAll(`-`,` `)}var $x=`overflow-x-auto rounded-md bg-kumo-elevated px-3 py-2 font-mono text-xs whitespace-pre-wrap break-words text-kumo-default`;function eS(e){return typeof e==`string`?e:JSON.stringify(e,null,2)}function tS({event:e,index:t}){let n=Object.entries(e).filter(([e])=>![`source`,`kind`,`timestamp`,`content`,`error`].includes(e));return(0,Y.jsxs)(`article`,{className:`event-card flex flex-col gap-2 rounded-lg border border-kumo-line bg-kumo-base px-3 py-2.5`,children:[(0,Y.jsxs)(`header`,{className:`flex items-baseline gap-2`,children:[(0,Y.jsxs)(`span`,{className:`font-mono text-xs text-kumo-subtle tabular-nums`,children:[`#`,t+1]}),(0,Y.jsx)(`h3`,{className:`text-[13px] font-semibold text-kumo-strong`,children:Qx(e)}),(0,Y.jsxs)(`span`,{className:`ml-auto text-xs text-kumo-subtle`,children:[e.source,` · `,new Date(e.timestamp).toLocaleTimeString()]})]}),`content`in e?(0,Y.jsx)(`pre`,{className:$x,children:eS(e.content)}):null,`error`in e?(0,Y.jsx)(`pre`,{className:`${$x} text-kumo-danger`,children:eS(e.error)}):null,n.length?(0,Y.jsx)(`dl`,{className:`grid grid-cols-[max-content_minmax(0,1fr)] gap-x-3 gap-y-0.5 text-xs`,children:n.map(([e,t])=>(0,Y.jsxs)(`div`,{className:`contents`,children:[(0,Y.jsx)(`dt`,{className:`text-kumo-subtle`,children:e}),(0,Y.jsx)(`dd`,{className:`font-mono break-words whitespace-pre-wrap`,children:eS(t)})]},e))}):null]})}function nS({api:e,selected:t,evalName:n,onWorkspace:r}){let[i,a]=(0,_.useState)([]),[o,s]=(0,_.useState)(),[c,l]=(0,_.useState)(),[u,d]=(0,_.useState)([]);if((0,_.useEffect)(()=>{if(!t)return;let n=!0;return s(void 0),a([]),l(void 0),d([]),Promise.all([e.getTrialEvents(t.run.id,t.trial.id),e.getTrial(t.run.id,t.trial.id),e.listArtifacts(t.run.id,t.trial.id)]).then(([e,t,r])=>{n&&(a(e),l(t),d(r))}).catch(e=>{n&&s(e instanceof Error?e.message:`Unable to load trial details`)}),()=>{n=!1}},[e,t]),!t)return(0,Y.jsx)(nx,{message:`Select a trial from a run to inspect it.`});let{run:f,trial:p}=t;return(0,Y.jsxs)(`section`,{className:`trial-inspector grid gap-5 xl:grid-cols-[minmax(320px,380px)_minmax(0,1fr)]`,children:[(0,Y.jsxs)(`aside`,{className:`trial-overview flex min-w-0 flex-col gap-4`,children:[(0,Y.jsx)(ix,{items:[[`Run`,(0,Y.jsx)(`span`,{className:ex,children:f.id},`run`)],[`Eval`,n??`Unnamed eval`],[`Trial`,p.index+1],[`Status`,(0,Y.jsx)(_x,{status:p.status},`status`)],[`Aggregate score`,p.score??`—`],[`Runtime`,p.durationMs===void 0?`—`:`${p.durationMs}ms`],[`Events`,i.length]]}),(0,Y.jsxs)(ip,{size:`sm`,variant:`secondary`,className:`open-workspace self-start`,onClick:r,children:[`Open candidate workspace`,(0,Y.jsx)(bf,{"aria-hidden":!0,className:`size-3.5`})]}),p.checkpoints?.length?(0,Y.jsx)(rS,{title:`Checkpoints`,children:(0,Y.jsx)(iS,{checkpoints:p.checkpoints})}):null,(0,Y.jsxs)(rS,{title:`Final scoring`,children:[(0,Y.jsx)(oS,{scores:p.scores}),p.skippedScorers?.length?(0,Y.jsxs)(`p`,{className:`text-xs text-kumo-subtle`,children:[`Skipped final scorers: `,p.skippedScorers.join(`, `)]}):null]}),u.length?(0,Y.jsx)(rS,{title:`Artifacts`,children:(0,Y.jsxs)(Zb,{wrap:!0,children:[(0,Y.jsx)($.Header,{variant:`compact`,children:(0,Y.jsxs)($.Row,{children:[(0,Y.jsx)($.Head,{children:`Path`}),(0,Y.jsx)($.Head,{children:`Kind`}),(0,Y.jsx)($.Head,{children:`Size`})]})}),(0,Y.jsx)($.Body,{children:u.map(e=>(0,Y.jsx)(Zx,{artifact:e},e.path))})]})}):null,c?(0,Y.jsxs)(`details`,{className:`raw-details text-xs`,children:[(0,Y.jsx)(`summary`,{className:`cursor-pointer font-medium text-kumo-subtle select-none`,children:`Raw trial summary`}),(0,Y.jsx)(`pre`,{className:`mt-2 overflow-x-auto rounded-md bg-kumo-elevated px-3 py-2 font-mono`,children:JSON.stringify(c.summary,null,2)})]}):null]}),(0,Y.jsxs)(`section`,{className:`timeline flex min-w-0 flex-col gap-2`,children:[o?(0,Y.jsx)(Ix,{title:`Unable to load trial details`,message:o}):null,(0,Y.jsxs)(`div`,{className:`flex items-baseline justify-between`,children:[(0,Y.jsx)(`h3`,{className:`text-sm font-semibold text-kumo-strong`,children:`Event timeline`}),(0,Y.jsxs)(`span`,{className:`text-xs text-kumo-subtle tabular-nums`,children:[i.length,` events`]})]}),i.map((e,t)=>(0,Y.jsx)(tS,{event:e,index:t},`${e.timestamp}-${t}`))]})]})}function rS({title:e,children:t}){return(0,Y.jsxs)(`section`,{className:`flex flex-col gap-2`,children:[(0,Y.jsx)(`h3`,{className:`text-sm font-semibold text-kumo-strong`,children:e}),t]})}function iS({checkpoints:e}){return(0,Y.jsxs)(Zb,{wrap:!0,children:[(0,Y.jsx)($.Header,{variant:`compact`,children:(0,Y.jsxs)($.Row,{children:[(0,Y.jsx)($.Head,{children:`Step`}),(0,Y.jsx)($.Head,{children:`Rule`}),(0,Y.jsx)($.Head,{children:`Value`}),(0,Y.jsx)($.Head,{children:`Result`})]})}),(0,Y.jsx)($.Body,{children:e.map(e=>(0,Y.jsxs)($.Row,{children:[(0,Y.jsx)($.Cell,{className:`tabular-nums`,children:e.step+1}),(0,Y.jsxs)($.Cell,{children:[(0,Y.jsxs)(`span`,{className:`text-kumo-subtle`,children:[e.kind,`:`]}),` `,e.name,e.matchedToolCall?` (event ${e.matchedToolCall.eventIndex+1})`:``]}),(0,Y.jsx)($.Cell,{className:`tabular-nums`,children:e.value??`—`}),(0,Y.jsxs)($.Cell,{children:[(0,Y.jsx)(_x,{status:e.status}),e.error?(0,Y.jsx)(`p`,{className:`mt-1 text-xs text-kumo-danger`,children:e.error.message}):null]})]},`${e.step}-${e.name}`))})]})}function aS(e){return e.error?`error`:e.passed===!0?`passed`:e.passed===!1?`failed`:`not scored`}function oS({scores:e}){return(0,Y.jsxs)(Zb,{wrap:!0,children:[(0,Y.jsx)($.Header,{variant:`compact`,children:(0,Y.jsxs)($.Row,{children:[(0,Y.jsx)($.Head,{children:`Scorer`}),(0,Y.jsx)($.Head,{children:`Value`}),(0,Y.jsx)($.Head,{children:`Result`})]})}),(0,Y.jsxs)($.Body,{children:[e.map(e=>(0,Y.jsxs)($.Row,{children:[(0,Y.jsxs)($.Cell,{children:[e.kind?(0,Y.jsxs)(`span`,{className:`text-kumo-subtle`,children:[e.kind,`: `]}):null,e.name]}),(0,Y.jsx)($.Cell,{className:`tabular-nums`,children:e.value??`—`}),(0,Y.jsxs)($.Cell,{children:[(0,Y.jsx)(_x,{status:aS(e)}),e.error?(0,Y.jsx)(`p`,{className:`mt-1 text-xs text-kumo-danger`,children:e.error.message}):null]})]},e.name)),e.length?null:(0,Y.jsx)($.Row,{children:(0,Y.jsx)($.Cell,{colSpan:3,className:`text-kumo-subtle`,children:`No final scorers.`})})]})]})}function sS({api:e,selected:t}){let[n,r]=(0,_.useState)(),[i,a]=(0,_.useState)();return(0,_.useEffect)(()=>{if(!t)return;let n=!0;return r(void 0),a(void 0),e.listWorkspace(t.run.id,t.trial.id).then(e=>{n&&r(e)}).catch(e=>{n&&a(e instanceof Error?e.message:`Unable to load workspace`)}),()=>{n=!1}},[e,t]),t?(0,Y.jsxs)(`section`,{className:`workspace-inspector flex flex-col gap-2`,children:[i?(0,Y.jsx)(Ix,{message:i}):null,(0,Y.jsxs)(Xb,{children:[(0,Y.jsx)($.Header,{variant:`compact`,children:(0,Y.jsxs)($.Row,{children:[(0,Y.jsx)($.Head,{children:`Path`}),(0,Y.jsx)($.Head,{children:`Kind`}),(0,Y.jsx)($.Head,{children:`Size`})]})}),(0,Y.jsxs)($.Body,{children:[n?.map(e=>{let t=e.kind===`directory`?Mf:jf;return(0,Y.jsxs)($.Row,{children:[(0,Y.jsx)($.Cell,{className:ex,children:(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-1.5`,children:[(0,Y.jsx)(t,{"aria-hidden":!0,className:`size-3.5 text-kumo-subtle`}),e.path]})}),(0,Y.jsx)($.Cell,{children:e.kind}),(0,Y.jsx)($.Cell,{className:`tabular-nums`,children:e.size===void 0?`—`:`${e.size} B`})]},e.path)}),!n&&!i?(0,Y.jsx)(Qb,{colSpan:3,children:`Loading workspace…`}):null,n&&!n.length?(0,Y.jsx)(Qb,{colSpan:3,children:`The workspace is empty.`}):null]})]})]}):(0,Y.jsx)(nx,{message:`Select a trial to inspect its workspace.`})}function cS({api:e,catalog:t,suites:n,matrix:r,runs:i,selected:a,onTrial:o}){let s=$e();return(0,Y.jsxs)(Tt,{children:[(0,Y.jsx)(Ct,{path:`/suites`,element:(0,Y.jsx)(Xx,{api:e,suites:n,catalog:t,matrix:r,runs:i,onOpenSuite:e=>s(`/suites/${encodeURIComponent(e)}`),onOpenEval:e=>s(`/evals/${encodeURIComponent(e.path)}`)})}),(0,Y.jsx)(Ct,{path:`/suites/:suiteId`,element:(0,Y.jsx)(lS,{api:e,suites:n,catalog:t,matrix:r,runs:i})}),(0,Y.jsx)(Ct,{path:`/evals/*`,element:(0,Y.jsx)(dS,{catalog:t})}),(0,Y.jsx)(Ct,{path:`/agents`,element:(0,Y.jsx)(uS,{catalog:t})}),(0,Y.jsx)(Ct,{path:`/fixtures`,element:(0,Y.jsx)(sx,{catalog:t})}),(0,Y.jsx)(Ct,{path:`/runs`,element:(0,Y.jsx)(fS,{api:e,catalog:t,suites:n,runs:i,onTrial:o})}),(0,Y.jsx)(Ct,{path:`/runs/:runUuid`,element:(0,Y.jsx)(fS,{api:e,catalog:t,suites:n,runs:i,onTrial:o})}),(0,Y.jsx)(Ct,{path:`/trials/:trialUuid`,element:(0,Y.jsx)(pS,{api:e,catalog:t,selected:a})}),(0,Y.jsx)(Ct,{path:`/workspaces/:trialUuid`,element:(0,Y.jsx)(sS,{api:e,selected:a})}),(0,Y.jsx)(Ct,{path:`*`,element:(0,Y.jsx)(Xx,{api:e,suites:n,catalog:t,matrix:r,runs:i,onOpenSuite:e=>s(`/suites/${encodeURIComponent(e)}`),onOpenEval:e=>s(`/evals/${encodeURIComponent(e.path)}`)})})]})}function lS(e){let{suiteId:t}=tt(),n=$e();return(0,Y.jsx)(Xx,{...e,selectedSuiteId:t,onOpenSuite:()=>void 0,onOpenEval:e=>n(`/evals/${encodeURIComponent(e.path)}`)})}function uS({catalog:e}){let[t]=yn();return(0,Y.jsx)(rx,{catalog:e,selectedAgent:t.get(`agent`)??void 0})}function dS({catalog:e}){let t=Xe();return(0,Y.jsx)(ax,{catalog:e,path:decodeURIComponent(t.pathname.slice(7))})}function fS(e){let t=$e(),{runUuid:n}=tt(),[r,i]=yn();return(0,Y.jsx)(Nx,{...e,search:r,onSearchChange:e=>i(e,{replace:!0}),selectedRunId:n,onTrial:(n,i)=>{e.onTrial(n,i);let a=new URLSearchParams(r);a.set(`trial`,i.id),a.delete(`view`),t({pathname:`/runs/${encodeURIComponent(n.id)}`,search:a.toString()})},onOpenRun:e=>t({pathname:`/runs/${encodeURIComponent(e.id)}`,search:r.toString()})})}function pS({api:e,catalog:t,selected:n}){let r=$e();return(0,Y.jsx)(nS,{api:e,evalName:t.find(e=>e.id===n?.run.evalId)?.name??n?.run.evalId,selected:n,onWorkspace:()=>n&&r(`/workspaces/${encodeURIComponent(n.trial.id)}`)})}var mS=(0,_.forwardRef)(function({href:e=`/`,...t},n){return(0,Y.jsx)(pn,{ref:n,to:e,...t})}),hS=[{label:`Suites & evals`,href:`/suites`,icon:Hf,matches:[`/suites`,`/evals`]},{label:`Agents`,href:`/agents`,icon:Vf,matches:[`/agents`]},{label:`Fixtures`,href:`/fixtures`,icon:Nf,matches:[`/fixtures`]},{label:`Runs`,href:`/runs`,icon:kf,matches:[`/runs`,`/trials`,`/workspaces`]}];function gS(e){return hS.find(t=>t.matches.some(t=>e.startsWith(t)))??hS[0]}function _S(e){return e.startsWith(`/trials/`)?`Trial detail`:e.startsWith(`/workspaces/`)?`Candidate workspace`:e.startsWith(`/evals/`)?`Eval detail`:gS(e).label}function vS({children:e}){let{pathname:t}=Xe(),n=gS(t);return(0,Y.jsx)(kr,{component:mS,children:(0,Y.jsxs)(Wb.Provider,{collapsible:`icon`,defaultWidth:208,className:`h-dvh`,children:[(0,Y.jsxs)(Wb,{id:`dashboard-navigation`,children:[(0,Y.jsxs)(Wb.Header,{className:`justify-between`,children:[(0,Y.jsx)(pn,{to:`/suites`,className:`truncate text-sm font-semibold text-kumo-strong group-data-[state=collapsed]/sidebar:hidden`,children:`EvalKit`}),(0,Y.jsx)(Wb.Trigger,{className:`navigation-toggle`})]}),(0,Y.jsx)(Wb.Content,{children:(0,Y.jsx)(`nav`,{"aria-label":`Dashboard`,children:(0,Y.jsx)(Wb.Group,{children:(0,Y.jsx)(Wb.Menu,{children:hS.map(e=>(0,Y.jsx)(Wb.MenuButton,{href:e.href,icon:e.icon,active:e===n,"aria-current":e===n?`page`:void 0,tooltip:e.label,children:e.label},e.href))})})})})]}),(0,Y.jsxs)(`main`,{className:`flex min-w-0 flex-1 flex-col overflow-y-auto`,children:[(0,Y.jsxs)(`header`,{className:`sticky top-0 z-10 flex h-12 shrink-0 items-center gap-2 border-b border-kumo-line bg-kumo-base px-4 md:px-6`,children:[(0,Y.jsx)(Wb.Trigger,{className:`md:hidden`}),(0,Y.jsx)(`h1`,{className:`text-base font-semibold text-kumo-strong`,children:_S(t)})]}),(0,Y.jsx)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-4 px-4 py-4 md:px-6`,children:e})]})]})})}function yS({api:e,catalog:t,suites:n,selected:r,trialId:i,error:a,workspace:o,onClose:s,onWorkspace:c}){let l=(0,_.useRef)(null),u=Xe();(0,_.useEffect)(()=>{let e=l.current;return e&&!e.open&&e.showModal(),()=>{e?.open&&e.close()}},[]);let d=t.find(e=>e.id===r?.run.evalId),f=n.find(e=>e.id===r?.run.suiteId),p=bS(u,[`trial`,`view`]),m=bS(u,[`view`]),h=`Trial ${r?r.trial.index+1:`…`}`;return(0,Y.jsx)(`dialog`,{ref:l,className:`trial-panel fixed inset-y-0 right-0 left-auto m-0 h-dvh max-h-none w-full max-w-[min(1100px,100vw)] border-l border-kumo-line bg-kumo-base p-0 text-kumo-default shadow-xl backdrop:bg-black/30`,"aria-label":o?`Candidate workspace`:`Trial details`,onClose:s,children:(0,Y.jsxs)(`div`,{className:`flex h-full flex-col`,children:[(0,Y.jsxs)(`header`,{className:`flex items-start gap-3 border-b border-kumo-line px-5 py-3`,children:[(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-1`,children:[(0,Y.jsxs)(ry,{size:`sm`,className:`trial-breadcrumbs`,children:[f?(0,Y.jsx)(ry.Link,{href:`/suites/${encodeURIComponent(f.id)}`,children:f.name??f.id}):(0,Y.jsx)(ry.Link,{href:`/runs`,children:`Runs`}),(0,Y.jsx)(ry.Separator,{}),d?(0,Y.jsx)(ry.Link,{href:`/evals/${encodeURIComponent(d.path)}`,children:d.name??d.id}):(0,Y.jsx)(ry.Current,{children:r?.run.evalId??`Eval`}),(0,Y.jsx)(ry.Separator,{}),(0,Y.jsxs)(ry.Link,{href:p,children:[`Run `,r?.run.id.slice(0,8)??`…`]}),(0,Y.jsx)(ry.Separator,{}),o?(0,Y.jsx)(ry.Link,{href:m,children:h}):(0,Y.jsx)(ry.Current,{children:h}),o?(0,Y.jsx)(ry.Separator,{}):null,o?(0,Y.jsx)(ry.Current,{children:`Workspace`}):null]}),(0,Y.jsx)(`h2`,{className:`text-base font-semibold text-kumo-strong`,children:o?`Candidate workspace`:h}),(0,Y.jsx)(`p`,{className:`${ex} truncate text-kumo-subtle`,children:i})]}),(0,Y.jsx)(ip,{variant:`ghost`,shape:`square`,size:`sm`,className:`trial-panel-close`,"aria-label":`Close trial panel`,title:`Close trial panel`,icon:(0,Y.jsx)(Uf,{}),onClick:()=>l.current?.close()})]}),(0,Y.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto px-5 py-4`,children:r?o?(0,Y.jsx)(sS,{api:e,selected:r}):(0,Y.jsx)(nS,{api:e,selected:r,evalName:d?.name??r.run.evalId,onWorkspace:c}):a?(0,Y.jsx)(Ix,{message:a}):(0,Y.jsx)(`output`,{className:`text-[13px] text-kumo-subtle`,children:`Loading trial…`})})]})})}function bS(e,t){let n=new URLSearchParams(e.search);for(let e of t)n.delete(e);return`${e.pathname}${n.size?`?${n}`:``}`}function xS({api:e,basename:t}){return(0,Y.jsx)(fn,{basename:t,children:(0,Y.jsx)(SS,{api:e})})}function SS({api:e}){let t=Xe(),n=$e(),r=t.pathname.startsWith(`/runs/`)?new URLSearchParams(t.search).get(`trial`):null,[i,a]=(0,_.useState)([]),[o,s]=(0,_.useState)([]),[c,l]=(0,_.useState)(),[u,d]=(0,_.useState)([]),f=(0,_.useRef)(``),[p,m]=(0,_.useState)(),[h,g]=(0,_.useState)();return(0,_.useEffect)(()=>{let t=!0;return Promise.all([e.listCatalog(),e.listSuites(),e.getMatrix()]).then(([e,n,r])=>{t&&(a(e),s(n),l(r))}).catch(e=>{t&&g(e instanceof Error?e.message:`Unable to load dashboard`)}),()=>{t=!1}},[e]),(0,_.useEffect)(()=>{let t=!0,n=!1,r=async()=>{if(!n){n=!0;try{let n=await e.listRuns();if(t){let e=JSON.stringify(n);e!==f.current&&(f.current=e,d(n))}}catch(e){t&&g(e instanceof Error?e.message:`Unable to load runs`)}finally{n=!1}}};r();let i=setInterval(()=>void r(),2e3);return()=>{t=!1,clearInterval(i)}},[e,t.pathname]),(0,_.useEffect)(()=>{let n=t.pathname.match(/^\/(?:trials|workspaces)\/([^/]+)/),i=r??(n?decodeURIComponent(n[1]):void 0);if(!i||!u.length||p?.trial.id===i)return;let a=t.pathname.match(/^\/runs\/([^/]+)/)?.[1],o=a?u.filter(e=>e.id===decodeURIComponent(a)):u,s=!0;return Promise.all(o.map(async t=>({run:t,trials:await e.listTrials(t.id)}))).then(e=>{if(s){for(let t of e){let e=t.trials.find(e=>e.id===i);if(e){m({run:t.run,trial:e}),g(void 0);return}}g(`Trial ${i} was not found in this run.`)}}).catch(e=>{s&&g(e instanceof Error?e.message:`Unable to load trial`)}),()=>{s=!1}},[e,t.pathname,r,u,p]),(0,Y.jsxs)(vS,{children:[e.readOnly?(0,Y.jsxs)(`p`,{className:`text-[13px] text-kumo-subtle`,role:`note`,children:[`Read-only snapshot built with `,(0,Y.jsx)(`code`,{children:`evalkit build`}),`. Runs cannot be started here.`]}):null,h?(0,Y.jsx)(Ix,{message:h}):null,(0,Y.jsx)(cS,{api:e,catalog:i,suites:o,matrix:c,runs:u,selected:p,onTrial:(e,t)=>m({run:e,trial:t})}),r?(0,Y.jsx)(yS,{api:e,catalog:i,suites:o,selected:p?.trial.id===r?p:void 0,trialId:r,error:h,workspace:new URLSearchParams(t.search).get(`view`)===`workspace`,onClose:()=>{let e=new URLSearchParams(t.search);e.delete(`trial`),e.delete(`view`),n({pathname:t.pathname,search:e.toString()},{replace:!0})},onWorkspace:()=>{let e=new URLSearchParams(t.search);e.set(`view`,`workspace`),n({pathname:t.pathname,search:e.toString()})}}):null]})}function CS(e){let t=e.fetch??globalThis.fetch,n=async(n,r)=>{let i=await t(new URL(n,e.baseUrl),r);if(!i.ok)throw Error(await i.text()||`Dashboard request failed: ${i.status}`);return i.json()};return{async listCatalog(){return(await n(`/v1/catalog`)).evals},async listMatrixCells(t){let r=new URL(`/v1/matrix/cells`,e.baseUrl);for(let e of t.evalIds)r.searchParams.append(`eval`,e);return r.searchParams.set(`q`,t.query),r.searchParams.set(`offset`,String(t.offset)),r.searchParams.set(`sort`,t.sort),r.searchParams.set(`direction`,t.direction),n(r.pathname+r.search)},async getMatrix(){return(await n(`/v1/matrix`)).matrix},async listEvals(){return(await n(`/v1/evals`)).evals},async listSuites(){return(await n(`/v1/suites`)).suites},async listRuns(){return(await n(`/v1/runs`)).runs},async listTrials(e){return(await n(`/v1/runs/${encodeURIComponent(e)}/trials`)).trials},async getTrial(e,t){return n(`/v1/runs/${encodeURIComponent(e)}/trials/${encodeURIComponent(t)}`)},async listArtifacts(e,t){return(await n(`/v1/runs/${encodeURIComponent(e)}/trials/${encodeURIComponent(t)}/artifacts`)).artifacts},async listWorkspace(e,t){return n(`/v1/runs/${encodeURIComponent(e)}/trials/${encodeURIComponent(t)}/workspace`)},async getWorkspaceFile(n,r,i){let a=await t(new URL(`/v1/runs/${encodeURIComponent(n)}/trials/${encodeURIComponent(r)}/workspace/${i.split(`/`).map(encodeURIComponent).join(`/`)}`,e.baseUrl));if(!a.ok)throw Error(`Dashboard request failed: ${a.status}`);return a},async getTrialEvents(e,t){return(await n(`/v1/runs/${encodeURIComponent(e)}/trials/${encodeURIComponent(t)}/events`)).events},async runEval(e,t){await n(`/v1/runs`,{method:`POST`,body:JSON.stringify({path:e,...t?{parameters:t}:{}}),headers:{"content-type":`application/json`}})},async runSuite(e){await n(`/v1/suites/${encodeURIComponent(e)}/runs`,{method:`POST`})}}}var wS="This is a read-only dashboard snapshot. Run evals with `evalkit run`, then rebuild it with `evalkit build`.";function TS(e){let t=e.fetch??globalThis.fetch,n=t=>new URL(`data/${t}`,e.baseUrl),r=async e=>{let r=await t(n(e));if(!r.ok)throw Error(`Snapshot file is missing: data/${e}`);return r},i=async e=>(await r(e)).json(),a=(e,t)=>`runs/${encodeURIComponent(e)}/trials/${encodeURIComponent(t)}`;return{readOnly:!0,listCatalog:async()=>(await i(`catalog.json`)).evals,getMatrix:async()=>null,listMatrixCells:async()=>{throw Error(wS)},listEvals:async()=>(await i(`evals.json`)).evals,listSuites:async()=>(await i(`suites.json`)).suites,listRuns:async()=>(await i(`runs.json`)).runs,listTrials:async e=>(await i(`runs/${encodeURIComponent(e)}/trials.json`)).trials,getTrial:(e,t)=>i(`${a(e,t)}/detail.json`),getTrialEvents:async(e,t)=>(await i(`${a(e,t)}/events.json`)).events,listArtifacts:async(e,t)=>(await i(`${a(e,t)}/artifacts.json`)).artifacts,listWorkspace:(e,t)=>i(`${a(e,t)}/workspace.json`),getWorkspaceFile:(e,t,n)=>r(`${a(e,t)}/workspace/${n.split(`/`).map(encodeURIComponent).join(`/`)}`),runEval:async()=>{throw Error(wS)},runSuite:async()=>{throw Error(wS)}}}var ES=document.querySelector(`#root`);if(!ES)throw Error(`Dashboard root is missing`);var DS=document.documentElement.dataset.evalkitSnapshot===`static`,OS=DS?TS({baseUrl:document.baseURI}):CS({baseUrl:window.location.origin}),kS=DS&&new URL(document.baseURI).pathname.replace(/\/$/,``)||void 0;(0,Gb.createRoot)(ES).render((0,Y.jsx)(xS,{api:OS,basename:kS}));
30
+ - aria-labelledby for custom label association`)}let p=(0,Y.jsx)(Ym,{ref:t,className:J(Qm({size:r,variant:d,focusIndicator:!0}),l&&`keeper-ignore`,n),...l?{"data-1p-ignore":`true`,"data-bwignore":`true`,"data-form-type":`other`,"data-lpignore":`true`}:{},...u});return a||c||s?(0,Y.jsx)(qm,{label:a,required:f,labelTooltip:o,description:s,error:Gm(c),children:p}):p});$m.displayName=`Input`;var eh={xs:{inputOuter:`px-1.5`,addonOuterStart:`pl-1.5`,addonOuterEnd:`pr-1.5`,addonButtonOuterStart:`pl-1`,addonButtonOuterEnd:`pr-1`,suffixPad:`pr-1.5`,fontSize:`text-xs`,iconSize:10},sm:{inputOuter:`px-2`,addonOuterStart:`pl-1.5`,addonOuterEnd:`pr-1.5`,addonButtonOuterStart:`pl-1`,addonButtonOuterEnd:`pr-1`,suffixPad:`pr-2`,fontSize:`text-xs`,iconSize:13},base:{inputOuter:`px-3`,addonOuterStart:`pl-2`,addonOuterEnd:`pr-2`,addonButtonOuterStart:`pl-1`,addonButtonOuterEnd:`pr-1`,suffixPad:`pr-3`,fontSize:`text-base`,iconSize:18},lg:{inputOuter:`px-4`,addonOuterStart:`pl-2.5`,addonOuterEnd:`pr-2.5`,addonButtonOuterStart:`pl-1.5`,addonButtonOuterEnd:`pr-0.5`,suffixPad:`pr-4`,fontSize:`text-base`,iconSize:20}},th={xs:`has-[[data-slot=input-group-addon-start]]:[&_input]:pl-1 has-[[data-slot=input-group-addon-end]]:[&_input]:pr-1`,sm:`has-[[data-slot=input-group-addon-start]]:[&_input]:pl-1.5 has-[[data-slot=input-group-addon-end]]:[&_input]:pr-1.5`,base:`has-[[data-slot=input-group-addon-start]]:[&_input]:pl-2 has-[[data-slot=input-group-addon-end]]:[&_input]:pr-2`,lg:`has-[[data-slot=input-group-addon-start]]:[&_input]:pl-2.5 has-[[data-slot=input-group-addon-end]]:[&_input]:pr-2.5`},nh=(0,_.createContext)(null),rh=(0,_.createContext)(!1);function ih(e){let t=(0,_.useContext)(nh);return t||console.warn(`<InputGroup.${e}> must be used within <InputGroup>. Falling back to default values.`),t}function ah(e){let t=[],n=[];return _.Children.forEach(e,e=>{(0,_.isValidElement)(e)&&e.type?.displayName===`InputGroup.Button`?n.push(e):t.push(e)}),{containerZone:t,individualZone:n}}function oh(e){let t=!1,n=!1;return _.Children.forEach(e,e=>{if(!(0,_.isValidElement)(e))return;let r=e.type,i=typeof r==`function`||typeof r==`object`?r.displayName:void 0;if(i===`InputGroup.Addon`){n=!0;return}if(i!==`InputGroup.Button`)return;let a=e.props.variant;a!==void 0&&a!==`ghost`&&(t=!0)}),t&&n?`hybrid`:t?`individual`:`container`}var sh=(0,_.forwardRef)((e,t)=>{let n=ih(`Input`);n&&(e.size!==void 0&&console.warn("InputGroup.Input: Set `size` on <InputGroup> instead of <InputGroup.Input>."),e.disabled!==void 0&&console.warn("InputGroup.Input: Set `disabled` on <InputGroup> instead of <InputGroup.Input>."),e.label!==void 0&&console.warn("InputGroup.Input: Use the `label` prop on <InputGroup> instead of <InputGroup.Input>."),e.description!==void 0&&console.warn("InputGroup.Input: Use <InputGroup.Suffix> instead of passing `description` to <InputGroup.Input>."));let r=eh[n?.size??`base`],i=n?.focusMode===`individual`,a=!!n?.error,o=e.id??n?.inputId;return(0,Y.jsx)($m,{ref:t,size:n?.size,disabled:n?.disabled||e.disabled,"aria-invalid":a||e[`aria-invalid`],...e,id:o,className:J(`flex h-full min-w-0 grow items-center rounded-none border-0 bg-transparent font-sans`,r.inputOuter,`text-ellipsis`,i?`relative ring-0 focus:ring-0 border border-kumo-line first:rounded-l-[inherit] last:rounded-r-[inherit] not-first:-ml-px hover:z-1 hover:border-kumo-line focus:z-2 focus:border-kumo-focus/50`:`relative z-1 shadow-none ring-0! outline-none focus:ring-0! focus:outline-none`,e.className)})});sh.displayName=`InputGroup.Input`;var ch={xs:`xs`,sm:`xs`,base:`sm`,lg:`base`},lh=(0,_.forwardRef)(({children:e,className:t,variant:n,size:r,disabled:i,tooltip:a,tooltipSide:o=`bottom`,icon:s,...c},l)=>{let u=ih(`Button`),d=(0,_.useContext)(rh),f=i??u?.disabled,p=u?.focusMode===`individual`||u?.focusMode===`hybrid`;u&&(n??`ghost`)===`ghost`&&!d&&console.warn(`InputGroup.Button: Ghost buttons should be wrapped in <InputGroup.Addon> for correct spacing.`),u&&r!==void 0&&console.warn("InputGroup.Button: Set `size` on <InputGroup> instead of <InputGroup.Button>.");let m=typeof a==`string`&&!c[`aria-label`]?a:void 0,h=u?eh[u.size??`base`].iconSize:void 0,g=s&&h&&(typeof s==`function`||typeof s==`object`&&s&&!_.isValidElement(s))?_.createElement(s,{size:h}):s,v=(0,Y.jsx)(ip,{ref:l,type:`button`,disabled:f,"aria-label":m,...c,icon:g,variant:n??`ghost`,size:r??(p?u?.size??`sm`:ch[u?.size??`base`]??`sm`),className:J(`pointer-events-auto`,`shadow-none`,`focus:ring-0`,!p&&`focus-visible:ring-[1.5px] focus-visible:ring-kumo-focus/50`,p&&[`relative h-full! rounded-none border border-kumo-line ring-0 focus-visible:ring-0`,`first:rounded-l-[inherit] last:rounded-r-[inherit]`,`not-first:-ml-px`,`hover:z-1`,`focus:z-2`,`focus-visible:border-kumo-focus/50`,`disabled:bg-kumo-overlay disabled:text-kumo-inactive!`],t),children:e});return a?(0,Y.jsx)(Kd,{content:a,side:o,asChild:!0,children:v}):v});lh.displayName=`InputGroup.Button`;var uh=(0,_.forwardRef)(({align:e=`start`,className:t,children:n},r)=>{let i=eh[ih(`Addon`)?.size??`base`],a=!1,o=_.Children.map(n,e=>(0,_.isValidElement)(e)?e.type===lh?(a=!0,e):e.props.size===void 0?(0,_.cloneElement)(e,{size:i.iconSize}):e:e);return(0,Y.jsx)(`div`,{ref:r,"data-slot":e===`start`?`input-group-addon-start`:`input-group-addon-end`,className:J(`pointer-events-none relative z-[1] flex shrink-0 items-center gap-1.5`,`text-kumo-subtle`,i.fontSize,`*:pointer-events-auto`,e===`start`?J(`-order-1`,a?i.addonButtonOuterStart:i.addonOuterStart,`pr-0`):J(`order-1`,`pl-0`,a?i.addonButtonOuterEnd:i.addonOuterEnd),t),children:(0,Y.jsx)(rh.Provider,{value:!0,children:o})})});uh.displayName=`InputGroup.Addon`;var dh=(0,_.forwardRef)(({className:e,children:t},n)=>{let r=eh[ih(`Suffix`)?.size??`base`];return(0,Y.jsx)(`div`,{ref:n,"data-slot":`input-group-suffix`,className:J(`pointer-events-none flex min-w-0 grow items-center text-kumo-subtle select-none`,r.fontSize,r.suffixPad,e),children:(0,Y.jsx)(`span`,{className:`truncate`,children:t})})});dh.displayName=`InputGroup.Suffix`;var fh=(0,_.forwardRef)(({size:e=`base`,children:t,className:n,disabled:r=!1,label:i,description:a,error:o,required:s,labelTooltip:c,...l},u)=>{let d=(0,_.useId)(),f=oh(t),p=(0,_.useMemo)(()=>({size:e,focusMode:f,disabled:r,error:o,inputId:d}),[e,f,r,o,d]),m=J(`relative w-full cursor-text`,Qm({size:e}),`data-[disabled]:pointer-events-none data-[disabled]:opacity-50`,f===`container`?[`overflow-hidden`,`focus-within:ring-[1.5px] focus-within:ring-kumo-focus/50`]:`isolate overflow-visible shadow-none ring-0`,`has-[input[aria-invalid=true]]:ring-kumo-danger`,`px-0`,`flex items-center gap-0`,`has-[[data-slot=input-group-suffix]]:[&_input]:[field-sizing:content]`,`has-[[data-slot=input-group-suffix]]:[&_input]:max-w-full`,`has-[[data-slot=input-group-suffix]]:[&_input]:grow-0`,`has-[[data-slot=input-group-suffix]]:[&_input]:pr-0`,th[e],`!mb-0`,n),h={"data-slot":`input-group`,"data-focus-mode":f,"data-disabled":r?``:void 0};if(f===`hybrid`){let{containerZone:n,individualZone:r}=ah(t),f={...p,focusMode:`container`},g=(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(nh.Provider,{value:f,children:(0,Y.jsxs)(`div`,{"data-slot":`input-group-container-zone`,className:J(Qm({size:e}),`overflow-hidden`,`has-[input[aria-invalid=true]]:ring-kumo-danger`,`px-0`,`flex min-w-0 flex-1 items-center gap-0`,`shadow-none ring-0`,`border border-kumo-line`,`focus-within:border-kumo-focus/50`,`focus-within:z-2`,`not-first:-ml-px`,`rounded-none first:rounded-l-[inherit] last:rounded-r-[inherit]`,th[e],`has-data-[slot=input-group-suffix]:[&_input]:field-sizing-content`,`has-data-[slot=input-group-suffix]:[&_input]:max-w-full`,`has-data-[slot=input-group-suffix]:[&_input]:grow-0`,`has-data-[slot=input-group-suffix]:[&_input]:pr-0`),children:[i&&(0,Y.jsx)(`label`,{htmlFor:d,className:`absolute inset-0 z-0 mb-0! cursor-text`,"aria-hidden":`true`}),n]})}),r]}),_=(0,Y.jsx)(nh.Provider,{value:p,children:(0,Y.jsx)(`div`,{ref:u,...h,className:m,...l,children:g})});return i?(0,Y.jsx)(qm,{label:i,description:a,error:o,required:s,labelTooltip:c,children:_}):_}let g=!i&&f===`container`,v=(0,Y.jsx)(nh.Provider,{value:p,children:i?(0,Y.jsxs)(`div`,{ref:u,...h,className:m,...l,children:[(0,Y.jsx)(`label`,{htmlFor:d,className:`absolute inset-0 z-0 mb-0!`,"aria-hidden":`true`}),t]}):g?(0,Y.jsx)(`label`,{ref:u,...h,className:J(m,`mb-0!`),...l,children:t}):(0,Y.jsx)(`div`,{ref:u,...h,className:m,...l,children:t})});return i?(0,Y.jsx)(qm,{label:i,description:a,error:o,required:s,labelTooltip:c,children:v}):v});fh.displayName=`InputGroup`;var ph=(0,_.forwardRef)((e,t)=>(0,Y.jsx)(uh,{ref:t,align:`start`,...e}));ph.displayName=`InputGroup.Label`;var mh=(0,_.forwardRef)((e,t)=>(0,Y.jsx)(dh,{ref:t,...e}));mh.displayName=`InputGroup.Description`;var hh=Object.assign(fh,{Input:sh,Button:lh,Addon:uh,Suffix:dh,Label:ph,Description:mh}),gh={variant:{heading:{classes:`text-lg font-semibold`,description:`Heading text (16px by default, 20px at large size)`},heading1:{classes:`text-3xl font-semibold`,description:`Deprecated large heading for page titles; use heading instead`},heading2:{classes:`text-2xl font-semibold`,description:`Deprecated medium heading for section titles; use heading instead`},heading3:{classes:`text-lg font-semibold`,description:`Deprecated small heading for subsections; use heading instead`},body:{classes:`text-kumo-default`,description:`Default body text`},secondary:{classes:`text-kumo-subtle`,description:`Muted text for secondary information`},success:{classes:`text-kumo-link`,description:`Success state text`},error:{classes:`text-kumo-danger`,description:`Error state text`},mono:{classes:`font-mono`,description:`Monospace text for code`},"mono-secondary":{classes:`font-mono text-kumo-subtle`,description:`Muted monospace text`}},size:{xs:{classes:`text-xs/[inherit]`,description:`Extra small text`},sm:{classes:`text-sm/[inherit]`,description:`Small text`},base:{classes:`text-base/[inherit]`,description:`Default text size`},lg:{classes:`text-lg/[inherit]`,description:`Large text`}}},_h={variant:`body`,size:`base`},vh=[`heading1`,`heading2`,`heading3`];function yh(e){return vh.includes(e)}function bh(e,t){return e===`heading`?t===`lg`?`text-xl`:``:yh(e)?``:[`mono`,`mono-secondary`].includes(e)?t===`lg`?gh.size.base.classes:gh.size.sm.classes:vr(gh.size,t,_h.size).classes}function xh({variant:e=`body`,bold:t=!1,size:n=`base`,truncate:r=!1,children:i,DANGEROUS_className:a,DANGEROUS_style:o,as:s,...c},l){let u=[`body`,`secondary`,`success`,`error`].includes(e),d=(0,_.useMemo)(()=>s||([`mono`,`mono-secondary`].includes(e)||e===`heading`||yh(e)?`span`:`p`),[e,s]);return(0,Y.jsx)(d,{ref:l,className:J(`text-kumo-default`,vr(gh.variant,e,_h.variant).classes,bh(e,n),u&&t?`font-medium`:``,r&&`min-w-0 truncate`,a),style:o,...c,children:i})}var Sh=(0,_.forwardRef)(xh),Ch=0;function wh(e,t={}){let{preventScroll:n=!1,sync:r=!1,shouldFocus:i}=t;cancelAnimationFrame(Ch);function a(){(!i||i())&&e?.focus({preventScroll:n})}if(r)return a(),Gr;let o=requestAnimationFrame(a);return Ch=o,()=>{Ch===o&&(cancelAnimationFrame(o),Ch=0)}}var Th=`data-base-ui-inert`,Eh=new WeakMap,Dh=new WeakSet,Oh=new WeakMap,kh=0;function Ah(e){return e?Ui(e)?e.host:Ah(e.parentNode):null}var jh=(e,t)=>t.map(t=>{if(e.contains(t))return t;let n=Ah(t);return e.contains(n)?n:null}).filter(e=>e!=null),Mh=e=>{let t=new Set;return e.forEach(e=>{let n=e;for(;n&&!t.has(n);)t.add(n),n=n.parentNode}),t},Nh=(e,t,n)=>{let r=[],i=e=>{e&&!n.has(e)&&Array.from(e.children).forEach(e=>{Li(e)!==`script`&&(t.has(e)?i(e):r.push(e))})};return i(e),r};function Ph(e,t,n,{mark:r=!0}){let i=jh(t,e),a=r?Nh(t,Mh(i),new Set(i)):[],o=[],s=[];if(n){let e=jh(t,Array.from(t.querySelectorAll(`[aria-live]`))),n=i.concat(e);Nh(t,Mh(n),new Set(n)).forEach(e=>{let t=e.getAttribute(`aria-hidden`),n=t!==null&&t!==`false`,r=(Eh.get(e)||0)+1;Eh.set(e,r),o.push(e),r===1&&n&&Dh.add(e),n||e.setAttribute(`aria-hidden`,`true`)})}return r&&a.forEach(e=>{let t=(Oh.get(e)||0)+1;Oh.set(e,t),s.push(e),t===1&&e.setAttribute(Th,``)}),kh+=1,()=>{o.forEach(e=>{let t=(Eh.get(e)||0)-1;Eh.set(e,t),t||(Dh.has(e)||e.removeAttribute(`aria-hidden`),Dh.delete(e))}),r&&s.forEach(e=>{let t=(Oh.get(e)||0)-1;Oh.set(e,t),t||e.removeAttribute(Th)}),--kh,kh||(Eh=new WeakMap,Dh=new WeakSet,Oh=new WeakMap)}}function Fh(e,t={}){let{ariaHidden:n=!1,mark:r=!0}=t,i=zs(e[0]).body;return Ph(e,i,n,{mark:r})}function Ih(e,t){let n=Ri(is(e));return e instanceof n.KeyboardEvent?`keyboard`:e instanceof n.FocusEvent?t||`keyboard`:`pointerType`in e?e.pointerType||(Qo(e)?`keyboard`:t||`mouse`):`touches`in e?`touch`:e instanceof n.MouseEvent?t||(e.detail===0?`keyboard`:`mouse`):``}var Lh=20,Rh=[];function zh(){Rh=Rh.filter(e=>e.deref()?.isConnected)}function Bh(e){zh(),e&&Li(e)!==`body`&&(Rh.push(new WeakRef(e)),Rh.length>Lh&&(Rh=Rh.slice(-20)))}function Vh(){return zh(),Rh[Rh.length-1]?.deref()}function Hh(e){return e?sc(e)?e:lc(e)[0]||e:null}function Uh(e){if(e.hasAttribute(`tabindex`)&&!e.hasAttribute(`data-tabindex`)||!e.getAttribute(`role`)?.includes(`dialog`))return;let t=cc(e).filter(e=>{let t=e.getAttribute(`data-tabindex`)||``;return sc(e)||e.hasAttribute(`data-tabindex`)&&!t.startsWith(`-`)}),n=e.getAttribute(`tabindex`);t.length===0?n!==`0`&&(e.setAttribute(`tabindex`,`0`),e.setAttribute(`data-tabindex`,`0`)):(n!==`-1`||e.hasAttribute(`data-tabindex`)&&e.getAttribute(`data-tabindex`)!==`-1`)&&(e.setAttribute(`tabindex`,`-1`),e.setAttribute(`data-tabindex`,`-1`))}function Wh(e){let{context:t,children:n,disabled:r=!1,initialFocus:i=!0,returnFocus:a=!0,explicitReturnFocus:o,restoreFocus:s=!1,modal:c=!0,closeOnFocusOut:l=!0,openInteractionType:u=``,nextFocusableElement:d,previousFocusableElement:f,beforeContentFocusGuardRef:p,externalTree:m,getInsideElements:h}=e,g=t.useState(`open`),v=t.useState(`domReferenceElement`),y=t.useState(`floatingElement`),{events:b,dataRef:x}=t.context,S=Q(()=>x.current.floatingContext?.nodeId),C=i===!1,w=Is(v)&&C,T=Ll(i),E=Ll(a),D=Ll(o),O=Ll(u),k=Ll(g),A=Yc(m),j=_l(),M=_.useRef(!1),N=_.useRef(!1),P=_.useRef(!1),F=_.useRef(null),I=_.useRef(``),L=_.useRef(``),R=_.useRef(null),z=_.useRef(null),B=Mr(R,p,j?.beforeInsideRef),V=Mr(z,j?.afterInsideRef),H=Il(),U=Il(),ee=Ul(),te=j!=null,W=Rs(y),ne=Q((e=W)=>e?lc(e):[]),re=Q(()=>h?.().filter(e=>e!=null)??[]);_.useEffect(()=>{if(r||!c)return;function e(e){e.key===`Tab`&&Z(W,ns(zs(W)))&&ne().length===0&&!w&&Xo(e)}return jc(zs(W),`keydown`,e)},[r,W,c,w,ne]),_.useEffect(()=>{if(r||!g)return;let e=zs(W);function t(){P.current=!1}function n(e){let t=is(e),n=re(),r=Z(y,t)||Z(v,t)||Z(j?.portalNode,t)||n.some(e=>e===t||Z(e,t));P.current=!r,L.current=e.pointerType||`keyboard`,rs(t,`[data-base-ui-click-trigger]`)&&(N.current=!0,U.start(0,()=>{N.current=!1}))}function i(){L.current=`keyboard`}return Mc(jc(e,`pointerdown`,n,!0),jc(e,`pointerup`,t,!0),jc(e,`pointercancel`,t,!0),jc(e,`keydown`,i,!0),t)},[r,y,v,W,g,j,U,re]),_.useEffect(()=>{if(r||!l)return;let e=zs(W);function n(){N.current=!0,U.start(0,()=>{N.current=!1})}function i(e){let t=is(e);sc(t)&&(F.current=t)}function a(n){let r=n.relatedTarget,i=n.currentTarget,a=is(n);c&&r==null&&a!=null&&Z(y,a)&&Bh(a),queueMicrotask(()=>{let o=S(),l=t.context.triggerElements,u=re(),p=r?.hasAttribute(dl(`focus-guard`))&&[R.current,z.current,j?.beforeInsideRef.current,j?.afterInsideRef.current,j?.beforeOutsideRef.current,j?.afterOutsideRef.current,Gl(f),Gl(d)].includes(r),m=!(Z(v,r)||Z(y,r)||Z(r,y)||Z(j?.portalNode,r)||u.some(e=>e===r||Z(e,r))||l.hasMatchingElement(e=>Z(e,r))||p||A&&(Zl(A.nodesRef.current,o).find(e=>Z(e.context?.elements.floating,r)||Z(e.context?.elements.domReference,r))||Ql(A.nodesRef.current,o).find(e=>[e.context?.elements.floating,Rs(e.context?.elements.floating)].includes(r)||e.context?.elements.domReference===r)));if(i===v&&W&&Uh(W),s&&i!==v&&!qs(a)&&ns(e)===e.body){if(Hi(W)&&(W.focus(),s===`popup`)){ee.request(()=>{W.focus()});return}let e=ne(),t=F.current,n=(t&&e.includes(t)?t:null)||e[e.length-1]||W;Hi(n)&&n.focus()}x.current.insideReactTree?x.current.insideReactTree=!1:(w||!c)&&r&&m&&!N.current&&(w||r!==Vh())&&(M.current=!0,t.setOpen(!1,_c(wc,n)))})}function o(){P.current||(x.current.insideReactTree=!0,H.start(0,()=>{x.current.insideReactTree=!1}))}let u=Hi(v)?v:null;if(y||u)return Mc(u&&jc(u,`focusout`,a),u&&jc(u,`pointerdown`,n),y&&jc(y,`focusin`,i),y&&jc(y,`focusout`,a),y&&j&&jc(y,`focusout`,o,!0))},[r,v,y,W,c,A,j,t,l,s,ne,w,S,x,H,U,ee,d,f,re]),_.useEffect(()=>{if(r||!y||!g)return;let e=Array.from(j?.portalNode?.querySelectorAll(`[${dl(`portal`)}]`)||[]),t=(A?Ql(A.nodesRef.current,S()):[]).find(e=>Is(e.context?.elements.domReference||null))?.context?.elements.domReference,n=Fh([y,...e,R.current,z.current,j?.beforeOutsideRef.current,j?.afterOutsideRef.current,...re(),t,Gl(f),Gl(d),w?v:null].filter(e=>e!=null),{ariaHidden:c||w,mark:!1}),i=Fh([y,...e].filter(e=>e!=null));return()=>{i(),n()}},[g,r,v,y,c,j,w,A,S,d,f,re]),X(()=>{if(!g||r||!Hi(W))return;I.current=``,L.current=``;let e=zs(W),t=ns(e);queueMicrotask(()=>{let n=T.current,r=typeof n==`function`?n(O.current||``):n;if(r===void 0||r===!1||Z(W,t))return;let i=null,a=()=>(i??=ne(W),i[0]||W),o;o=r===!0||r===null?a():Gl(r),o||=a();let s=Z(W,ns(e)),c=x.current.openEvent,l=c?.type===`mousedown`&&Qo(c);wh(o,{sync:l,preventScroll:o===W,shouldFocus(){if(!k.current)return!1;if(s)return!0;let t=ns(e);return!(t!==o&&Z(W,t))}})})},[r,g,W,ne,T,O,k,x]);let ie=_.useRef(null);X(()=>{if(r||!W){ie.current=null;return}ie.current&&=(ie.current.cancelled=!0,null);let e=zs(W),t=ns(e),n=O.current==null;Bh(t);function i(e){if(e.open||(I.current=Ih(e.nativeEvent,L.current)),(e.reason===`focus-out`&&e.triggerElement?.hasAttribute(dl(`focus-guard`))||e.reason===`trigger-hover`&&e.nativeEvent.type===`mouseleave`)&&(M.current=!0),e.reason===`outside-press`){if(e.nested)M.current=!1;else if(Qo(e.nativeEvent)||$o(e.nativeEvent))M.current=!1;else{let e=!1;zs(W).createElement(`div`).focus({get preventScroll(){return e=!0,!1}}),e?M.current=!1:M.current=!0}}}b.on(`openchange`,i);function a(e){let r=E.current,i=typeof r==`function`?r(e):r;if(i===void 0||i===!1)return null;i===null&&(i=!0);let a=v?.isConnected?v:null,o=t?.isConnected&&Li(t)!==`body`?t:null,s=n?o||a:a||o;return s||=Vh()||null,typeof i==`boolean`?s:Gl(i)||s||null}return()=>{b.off(`openchange`,i);let t=ns(e),n=re(),r=Z(y,t)||n.some(e=>e===t||Z(e,t))||A&&Zl(A.nodesRef.current,S(),!1).some(e=>Z(e.context?.elements.floating,t)),o=E.current,s=I.current,c=a(s),l={cancelled:!1};ie.current=l,queueMicrotask(()=>{ie.current===l&&(ie.current=null);let n=Hh(c),i=D.current??typeof o!=`boolean`;if(!l.cancelled&&o&&!M.current&&Hi(n)&&(i||n===t||t===e.body||r)){let e={preventScroll:!0};s===`keyboard`&&(e.focusVisible=!0),n.focus(e)}M.current=!1})}},[r,y,W,E,D,O,b,A,v,S,re]),X(()=>{if(!gc||g||!y)return;let e=ns(zs(y));Hi(e)&&Ps(e)&&Z(y,e)&&e.blur()},[g,y]),X(()=>{if(!r&&j)return j.setFocusManagerState({modal:c,closeOnFocusOut:l,open:g,onOpenChange:t.setOpen,domReference:v}),()=>{j.setFocusManagerState(null)}},[r,j,c,g,t,l,v]),X(()=>{if(!r&&W)return Uh(W),()=>{queueMicrotask(zh)}},[r,W]);let ae=!r&&(!c||!w)&&(te||c);return(0,Y.jsxs)(_.Fragment,{children:[ae&&(0,Y.jsx)(ul,{"data-type":`inside`,ref:B,onFocus:e=>{if(c){let e=ne();wh(e[e.length-1])}else j?.portalNode&&(M.current=!1,pc(e,j.portalNode)?dc(v)?.focus():Gl(f??j.beforeOutsideRef)?.focus())}}),n,ae&&(0,Y.jsx)(ul,{"data-type":`inside`,ref:V,onFocus:e=>{c?wh(ne()[0]):j?.portalNode&&(l&&(M.current=!0),pc(e,j.portalNode)?fc(v)?.focus():Gl(d??j.afterOutsideRef)?.focus())}})]})}function Gh(e){let t=_.useRef(``),n=_.useCallback(n=>{n.defaultPrevented||(t.current=n.pointerType,e(n,n.pointerType))},[e]);return{onClick:_.useCallback(n=>{n.detail===0?e(n,`keyboard`):(`pointerType`in n?e(n,n.pointerType):e(n,t.current),t.current=``)},[e]),onPointerDown:n}}function Kh(e,t){let{onClick:n,onPointerDown:r}=Gh(Q((n,r)=>{(typeof e==`function`?e():e)||t(r||(Wo?`touch`:``))}));return _.useMemo(()=>({onClick:n,onPointerDown:r}),[n,r])}function qh(e){let[t,n]=_.useState(null),r=Kh(e,n);return am(e,t=>{t&&!e&&n(null)}),_.useMemo(()=>({openMethod:t,triggerProps:r}),[t,r])}var Jh=_.forwardRef(function(e,t){let{cutout:n,...r}=e,i;if(n){let e=n.getBoundingClientRect();i=`polygon(0% 0%,100% 0%,100% 100%,0% 100%,0% 0%,${e.left}px ${e.top}px,${e.left}px ${e.bottom}px,${e.right}px ${e.bottom}px,${e.right}px ${e.top}px,${e.left}px ${e.top}px)`}return(0,Y.jsx)(`div`,{ref:t,role:`presentation`,"data-base-ui-inert":``,...r,style:{position:`fixed`,inset:0,userSelect:`none`,WebkitUserSelect:`none`,clipPath:i}})});Jh.displayName=`InternalBackdrop`;var Yh={},Xh={},Zh=``;function Qh(e,t){return Wi(e)?e:t}function $h(e,t,n){return/hidden|clip/.test(e.getComputedStyle(Qh(t,n)).overflowY)}function eg(e){if(typeof document>`u`)return!1;let t=zs(e);return Ri(t).innerWidth-t.documentElement.clientWidth>0}function tg(e){if(!(typeof CSS<`u`&&CSS.supports&&CSS.supports(`scrollbar-gutter`,`stable`))||typeof document>`u`)return!1;let t=zs(e),n=t.documentElement,r=t.body,i=Qh(n,r),a=i.style.overflowY,o=n.style.scrollbarGutter;n.style.scrollbarGutter=`stable`,i.style.overflowY=`scroll`;let s=i.offsetWidth;i.style.overflowY=`hidden`;let c=i.offsetWidth;return i.style.overflowY=a,n.style.scrollbarGutter=o,s===c}function ng(e){let t=zs(e),n=t.documentElement,r=t.body,i=Qh(n,r),a={overflowY:i.style.overflowY,overflowX:i.style.overflowX};return Object.assign(i.style,{overflowY:`hidden`,overflowX:`hidden`}),()=>{Object.assign(i.style,a)}}function rg(e){let t=zs(e),n=t.documentElement,r=t.body,i=Ri(n),a=0,o=0,s=!1,c=Hl.create();if(gc&&(i.visualViewport?.scale??1)!==1)return()=>{};function l(){let t=i.getComputedStyle(n),c=i.getComputedStyle(r),l=(t.scrollbarGutter||``).includes(`both-edges`)?`stable both-edges`:`stable`;a=n.scrollTop,o=n.scrollLeft,Yh={scrollbarGutter:n.style.scrollbarGutter,overflowY:n.style.overflowY,overflowX:n.style.overflowX},Zh=n.style.scrollBehavior,Xh={position:r.style.position,height:r.style.height,width:r.style.width,boxSizing:r.style.boxSizing,overflowY:r.style.overflowY,overflowX:r.style.overflowX,scrollBehavior:r.style.scrollBehavior};let u=n.scrollHeight>n.clientHeight,d=n.scrollWidth>n.clientWidth,f=t.overflowY===`scroll`||c.overflowY===`scroll`,p=t.overflowX===`scroll`||c.overflowX===`scroll`,m=Math.max(0,i.innerWidth-r.clientWidth),h=Math.max(0,i.innerHeight-r.clientHeight),g=parseFloat(c.marginTop)+parseFloat(c.marginBottom),_=parseFloat(c.marginLeft)+parseFloat(c.marginRight),v=Qh(n,r);s=tg(e),s?(n.style.scrollbarGutter=l,v.style.overflowY=`hidden`,v.style.overflowX=`hidden`):(Object.assign(n.style,{scrollbarGutter:l,overflowY:`hidden`,overflowX:`hidden`}),(u||f)&&(n.style.overflowY=`scroll`),(d||p)&&(n.style.overflowX=`scroll`),Object.assign(r.style,{position:`relative`,height:g||h?`calc(100dvh - ${g+h}px)`:`100dvh`,width:_||m?`calc(100vw - ${_+m}px)`:`100vw`,boxSizing:`border-box`,overflowY:`hidden`,overflowX:`hidden`,scrollBehavior:`unset`}),r.scrollTop=a,r.scrollLeft=o,n.setAttribute(`data-base-ui-scroll-locked`,``),n.style.scrollBehavior=`unset`)}function u(){Object.assign(n.style,Yh),Object.assign(r.style,Xh),s||(n.scrollTop=a,n.scrollLeft=o,n.removeAttribute(`data-base-ui-scroll-locked`),n.style.scrollBehavior=Zh)}function d(){u(),c.request(l)}l();let f=jc(i,`resize`,d);return()=>{c.cancel(),u(),typeof i.removeEventListener==`function`&&f()}}var ig=new class{lockCount=0;restore=null;timeoutLock=Fl.create();timeoutUnlock=Fl.create();acquire(e){return this.lockCount+=1,this.lockCount===1&&this.restore===null&&this.timeoutLock.start(0,()=>this.lock(e)),this.release}release=()=>{--this.lockCount,this.lockCount===0&&this.restore&&this.timeoutUnlock.start(0,this.unlock)};unlock=()=>{this.lockCount===0&&this.restore&&(this.restore?.(),this.restore=null)};lock(e){if(this.lockCount===0||this.restore!==null)return;let t=zs(e),n=t.documentElement,r=t.body,i=Ri(n);if($h(i,n,r)){let t=new i.MutationObserver(()=>{$h(i,n,r)||(t.disconnect(),this.restore=null,this.lock(e))}),a={attributes:!0};t.observe(n,a),t.observe(r,a),this.restore=()=>t.disconnect();return}let a=Wo||!eg(e);this.restore=a?ng(e):rg(e)}};function ag(e=!0,t=null){X(()=>{if(e)return ig.acquire(t)},[e,t])}function og(e,t={}){let{enabled:n=!0,event:r=`click`,toggle:i=!0,ignoreMouse:a=!1,stickIfOpen:o=!0,touchOpenDelay:s=0,reason:c=yc}=t,l=e.context.dataRef,u=_.useRef(void 0),d=Ul(),f=Il(),p=_.useMemo(()=>{function t(t,n,r,i){let a=_c(c,n,r);t&&i===`touch`&&s>0?f.start(s,()=>{e.setOpen(!0,a)}):e.setOpen(t,a)}function n(t,n,r){let a=l.current.openEvent,s=e.select(`domReferenceElement`)!==n;return t&&s||!t||!i?!0:a&&(typeof o==`function`?o():o)?!r(a.type):!1}return{onPointerDown(e){u.current=es(e.pointerType,!0)&&$o(e.nativeEvent)?`virtual`:e.pointerType},onMouseDown(i){let o=u.current,s=i.nativeEvent,c=e.select(`open`);if(i.button!==0||r===`click`||es(o,!0)&&a)return;let l=n(c,i.currentTarget,e=>e===`click`||e===`mousedown`),f=is(s),p=Ps(f);if(p||o===`virtual`){t(l,s,p?f:i.currentTarget,o);return}let m=i.currentTarget;d.request(()=>{t(l,s,m,o)})},onClick(i){if(r===`mousedown-only`)return;let o=u.current;r===`mousedown`&&o?u.current=void 0:es(o,!0)&&a||t(n(e.select(`open`),i.currentTarget,e=>e===`click`||e===`mousedown`||e===`keydown`||e===`keyup`),i.nativeEvent,i.currentTarget,o)},onKeyDown(){u.current=void 0}}},[l,r,a,c,e,o,i,d,f,s]);return _.useMemo(()=>n?{reference:p}:qr,[n,p])}function sg(e){return gc&&e.movementX===0&&e.movementY===0}function cg(e,t,n){switch(e){case`vertical`:return t;case`horizontal`:return n;default:return t||n}}function lg(e,t){return cg(t,e===`ArrowUp`||e===`ArrowDown`,e===`ArrowLeft`||e===`ArrowRight`)}function ug(e,t,n){return cg(t,e===`ArrowDown`,n?e===`ArrowLeft`:e===`ArrowRight`)||e===`Enter`||e===` `||e===``}function dg(e,t,n){return cg(t,n?e===ss:e===cs,e===us)}function fg(e,t,n,r){return t===`both`||t===`horizontal`&&r?e===`Escape`:cg(t,n?e===cs:e===ss,e===ls)}function pg(e,t){let{listRef:n,activeIndex:r,onNavigate:i=()=>{},enabled:a=!0,selectedIndex:o=null,allowEscape:s=!1,loopFocus:c=!1,nested:l=!1,rtl:u=!1,virtual:d=!1,focusItemOnOpen:f=`auto`,focusItemOnHover:p=!0,openOnArrowKeyDown:m=!0,disabledIndices:h=void 0,orientation:g=`vertical`,triggerOrientation:v=g,parentOrientation:y,id:b,resetOnPointerLeave:x=!0,externalTree:S,nestedReturnFocusRef:C,grid:w}=t,T=w!=null;s&&(c||console.warn("`useListNavigation` looping must be enabled to allow escaping."),d||console.warn("`useListNavigation` must be virtual to allow escaping.")),g===`vertical`&&T&&console.warn("In grid list navigation mode, the `orientation` should",`be either "horizontal" or "both".`);let E=e.useState(`open`),D=e.useState(`floatingElement`),O=e.useState(`domReferenceElement`),k=e.context.dataRef,A=Rs(D),j=Is(O),M=Ll(A),N=Jc(),P=Yc(S),F=_.useRef(f),I=_.useRef(o??-1),L=_.useRef(null),R=_.useRef(!0),z=Q(e=>{i(I.current===-1?null:I.current,e)}),B=_.useRef(!!D),V=_.useRef(E),H=_.useRef(!1),U=_.useRef(!1),ee=_.useRef(null),te=Ll(h),W=Ll(E),ne=Ll(o),re=Ll(x),ie=Ul(),ae=Ul(),G=Q(()=>{ie.cancel();function e(e){d||(ee.current=wh(e,{sync:H.current,preventScroll:!0}))}let t=n.current[I.current],r=U.current;t&&e(t),(H.current?e=>e():e=>ie.request(e))(()=>{let i=n.current[I.current]||t;i&&(t||e(i),ue&&(r||!R.current)&&i.scrollIntoView?.({block:`nearest`,inline:`nearest`}))})});X(()=>{k.current.orientation=g},[k,g]),X(()=>{E||(L.current=null),E&&f===`auto`||(F.current=f)},[E,f]),X(()=>{a&&(E&&D?(I.current=o??-1,F.current&&o!=null&&(U.current=!0,z())):B.current&&(I.current=-1,z()))},[a,E,D,o,z]),X(()=>{if(a){if(!E)H.current=!1;else if(D){if(r==null){if(H.current=!1,ne.current!=null)return;if(B.current&&(I.current=-1,G()),(!V.current||!B.current)&&F.current&&(L.current!=null||F.current===!0&&L.current==null)){let e=0,t=()=>{n.current[0]==null?(e<2&&(e?e=>ae.request(e):queueMicrotask)(t),e+=1):(I.current=L.current==null||ug(L.current,v,u)||l?Vs(n):Hs(n),L.current=null,z())};t()}}else Bs(n.current,r)||(I.current=r,G(),U.current=!1)}}},[a,E,D,r,ne,l,n,v,u,z,G,ae]),X(()=>{if(!a||D||!P||d||!B.current)return;let e=P.nodesRef.current,t=e.find(e=>e.id===N)?.context?.elements.floating,n=ns(zs(O??t??null)),r=e.some(e=>e.context&&Z(e.context.elements.floating,n));t&&!r&&R.current&&t.focus({preventScroll:!0})},[a,D,O,P,N,d]),X(()=>{V.current=E,B.current=!!D});let K=r!=null,oe=Q(e=>{if(!W.current)return;let t=n.current.indexOf(e.currentTarget);t!==-1&&(I.current!==t||r!==t)&&(I.current=t,z(e))}),se=Q(()=>y??P?.nodesRef.current.find(e=>e.id===N)?.context?.dataRef?.current.orientation),ce=Q(()=>Vs(n,te.current)),le=Q(t=>{if(R.current=!1,H.current=!0,t.which===229||!W.current&&t.currentTarget===M.current)return;if(l&&fg(t.key,g,u,T)){lg(t.key,se())||Xo(t),e.setOpen(!1,_c(Ec,t.nativeEvent));let n=C?.current??O;Hi(n)&&n.focus();return}r!=null&&r!==I.current&&!Bs(n.current,r)&&(I.current=r);let i=I.current,a=Vs(n,h),o=Hs(n,h);if(j||(t.key===`Home`&&(Xo(t),I.current=a,z(t)),t.key===`End`&&(Xo(t),I.current=o,z(t))),w!=null){let e=w(t,I.current,n,g,c,u,h,a,o);if(e!=null&&e!==I.current&&(I.current=e,z(t)),g===`both`)return}if(lg(t.key,g)){Xo(t);let e=ns(t.currentTarget.ownerDocument);if(E&&!d&&Z(t.currentTarget,e)&&!n.current.some(t=>t!=null&&Z(t,e))){I.current=ug(t.key,g,u)?a:o,z(t),r===I.current&&G();return}let{index:l,wrapped:f}=Us(n.current,i,{decrement:!ug(t.key,g,u),loopFocus:c,allowEscape:s,disabledIndices:h,minIndex:a,maxIndex:o});f&&(H.current=!1),I.current=l,z(t)}}),ue=_.useMemo(()=>({onFocus(e){H.current=!0,oe(e)},onClick({currentTarget:e}){d||e.focus({preventScroll:!0})},onMouseMove(e){sg(e)||(H.current=!0,U.current=!1,p&&oe(e))},onPointerLeave(e){if(!W.current||!R.current||e.pointerType===`touch`)return;H.current=!0;let t=e.relatedTarget;if(p&&!n.current.includes(t)&&re.current&&(ee.current?.(),ee.current=null,I.current=-1,z(e),!d)){let e=M.current,t=ns(zs(e));e&&Z(e,t)&&e.focus({preventScroll:!0})}}}),[oe,W,M,p,n,z,re,d]),q=_.useMemo(()=>d&&E&&K&&{"aria-activedescendant":`${b}-${r}`},[d,E,K,b,r]),de=_.useMemo(()=>({...j?{}:q,onKeyDown(t){if(t.key===`Tab`&&t.shiftKey&&E&&!d){let n=is(t.nativeEvent);if(n&&!Z(M.current,n))return;Xo(t);let r=_c(wc,t.nativeEvent);e.setOpen(!1,r);let i=C?.current??O;!r.isCanceled&&Hi(i)&&i.focus()}else le(t)},onPointerMove(e){sg(e)||(R.current=!0)}}),[q,le,M,j,e,E,d,O,C]),fe=_.useMemo(()=>{function t(t){e.setOpen(!0,_c(Ec,t.nativeEvent,t.currentTarget))}function n(e){f===`auto`&&Qo(e.nativeEvent)&&(F.current=!d)}function r(e){F.current=f,f===`auto`&&$o(e.nativeEvent)&&(F.current=!0)}return{onKeyDown(n){let r=e.select(`open`);R.current=!1;let i=n.key.startsWith(`Arrow`),a=dg(n.key,se(),u),o=lg(n.key,r?g:v),s=(l?a:o)||n.key===`Enter`||n.key.trim()===``;if(d&&r&&(!l||Ps(n.currentTarget)))return le(n);if(r||m||!i){if(s){let e=lg(n.key,se());L.current=l&&e?null:n.key}l?a&&(Xo(n),r?(I.current=ce(),z(n),d&&M.current?.focus()):t(n)):o&&(ne.current!=null&&(I.current=ne.current),Xo(n),!r&&m?t(n):le(n),r&&z(n))}},onFocus(t){t.target===t.currentTarget&&e.select(`open`)&&!d&&(I.current=-1,z(t))},onPointerDown:r,onPointerEnter:r,onMouseDown:n,onClick:n}},[le,f,ce,l,z,e,m,g,v,se,u,ne,d,M]),pe=_.useMemo(()=>({...q,...fe}),[q,fe]);return _.useMemo(()=>a?{reference:pe,floating:de,item:ue,trigger:fe}:{},[a,pe,de,fe,ue])}function mg(e){let t=_.useRef(!0);t.current&&(t.current=!1,e())}var hg=(e,t)=>Object.is(e,t);function gg(e,t,n){return e==null||t==null?Object.is(e,t):n(e,t)}function _g(e,t,n){return Array.isArray(e)&&Array.isArray(t)?!cm(e,t,(e,t)=>gg(e,t,n)):e!==t}function vg(e,t,n){return e?e.some(e=>e!==void 0&&gg(t,e,n)):!1}function yg(e,t,n){return e?e.findIndex(e=>e!==void 0&&gg(e,t,n)):-1}function bg(e,t){if(t!==hg)return n=>vg(e,n,t);let n=new Set(e);return n.delete(void 0),t=>n.has(t)&&(t!==0||e.some(e=>Object.is(t,e)))}function xg(e,t,n,r){let i=r&&Array.isArray(t)?e.findIndex(bg(t,n)):yg(e,t,n);return i===-1?null:i}function Sg(e,t,n,r,i,a){return vg(r,t,i)?a!=null&&e>a&&vg(r,n[a],i)?a:e:e===a?xg(n,r,i,!0):a}function Cg(e,t,n){return e.filter(e=>!gg(t,e,n))}function wg(e){if(e==null)return``;if(typeof e==`string`)return e;try{return JSON.stringify(e)}catch{return String(e)}}function Tg(e){return typeof e==`object`&&!!e&&Array.isArray(e.items)}function Eg(e){return Tg(e?.[0])}function Dg(e){return Eg(e)?e.flatMap(e=>e.items):e}function Og(e){if(!Array.isArray(e))return e!=null&&`null`in e;let t=e;if(Eg(t)){for(let e of t)for(let t of e.items)if(t&&t.value==null&&t.label!=null)return!0;return!1}for(let e of t)if(e&&e.value==null&&e.label!=null)return!0;return!1}function kg(e,t){if(t&&e!=null)return t(e)??``;if(e&&typeof e==`object`){if(`label`in e&&e.label!=null)return String(e.label);if(`value`in e)return String(e.value)}return wg(e)}function Ag(e,t){return t&&e!=null?t(e)??``:e&&typeof e==`object`&&`value`in e&&`label`in e?wg(e.value):wg(e)}function jg(e,t,n){function r(){return kg(e,n)}if(n&&e!=null)return n(e);if(e&&typeof e==`object`&&`label`in e&&e.label!=null)return e.label;if(t&&!Array.isArray(t))return(Object.hasOwn(t,e)?t[e]:void 0)??r();if(Array.isArray(t)){let n=Dg(t);if(typeof e!=`object`||!e){let t=n.find(t=>t.value===e);return t&&t.label!=null?t.label:r()}if(`value`in e){let t=n.find(t=>t&&t.value===e.value);if(t&&t.label!=null)return t.label}}return r()}function Mg(e,t,n){return e.reduce((e,r,i)=>(i>0&&e.push(`, `),e.push((0,Y.jsx)(_.Fragment,{children:jg(r,t,n)},i)),e),[])}var Ng=_.createContext({register:()=>{},unregister:()=>{},subscribeMapChange:()=>()=>{},nextIndexRef:{current:0}});Ng.displayName=`CompositeListContext`;function Pg(){return _.useContext(Ng)}function Fg(e){let{children:t,elementsRef:n,labelsRef:r,onMapChange:i}=e,a=Q(i),[,o]=_.useState(0),s=jr(Lg).current,c=jr(Ig).current,l=_.useRef(0),u=_.useRef(!0),d=_.useRef(null),f=_.useRef(null),p=Q(()=>{u.current||(u.current=!0,o(e=>e+1))}),m=Q((e,t)=>{c.set(e,t),p()}),h=Q(e=>{c.delete(e),p()}),g=Q(e=>{let t=new Map;return n.current.length=0,r&&(r.current.length=0),e.forEach(e=>{t.set(e.element,{...e.registration.metadata??{},index:e.index}),n.current[e.index]=e.element,r&&(r.current[e.index]=e.registration.label===void 0?e.registration.textRef?.current?.textContent??e.element.textContent:e.registration.label)}),l.current=n.current.length,t});function v(e){if(f.current?.disconnect(),f.current=null,typeof MutationObserver!=`function`||e.length<2)return;let t=new MutationObserver(n=>{if(!Bg(n))return;let r=null;for(let n of e)if(n.isConnected){if(r&&Vg(r,n)>0){t.disconnect(),p();return}r=n}});f.current=t;let n=new Set;for(let t=1;t<e.length;t+=1){let r=zg(e[t-1],e[t]);r&&n.add(r)}n.forEach(e=>t.observe(e,{childList:!0}))}let y=Q(()=>{let[e,t]=Rg(c),n=g(e),r=d.current,i=!r||r.length!==e.length||e.some((e,t)=>{let n=r[t];return e.index!==n.index||e.element!==n.element||e.registration.index!==n.registration.index||e.registration.metadata!==n.registration.metadata});v(t),d.current=e,u.current=!1,i&&(s.forEach(e=>e(n)),a(n))});X(()=>(!u.current&&d.current&&g(d.current),()=>{n.current=[],r&&(r.current=[])}),[n,r,g]),X(()=>{u.current&&y()}),X(()=>()=>{f.current?.disconnect(),u.current=!0},[]);let b=Q(e=>(s.add(e),()=>{s.delete(e)})),x=_.useMemo(()=>({register:m,unregister:h,subscribeMapChange:b,nextIndexRef:l}),[m,h,b,l]);return(0,Y.jsx)(Ng.Provider,{value:x,children:t})}function Ig(){return new Map}function Lg(){return new Set}function Rg(e){let t=new Set,n=[],r=[];e.forEach((e,i)=>{if(!i.isConnected)return;let a=e.index,o={index:a??-1,element:i,registration:e};a===null?r.push(o):a>=0&&(t.add(a),n.push(o))});let i=0;return r.sort((e,t)=>Vg(e.element,t.element)),r.forEach(e=>{for(;t.has(i);)i+=1;e.index=i,n.push(e),i+=1}),t.size>0&&n.sort((e,t)=>e.index-t.index),[n,r.map(e=>e.element)]}function zg(e,t){let n=e.parentElement;for(;n&&!n.contains(t);)n=n.parentElement;return n}function Bg(e){for(let t of e)for(let e=0;e<t.removedNodes.length;e+=1)if(t.removedNodes[e].isConnected)return!0;return!1}function Vg(e,t){return e.nextElementSibling===t?-1:t.nextElementSibling===e?1:e.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_FOLLOWING?-1:1}function Hg(e={}){let{guess:t,label:n,metadata:r,textRef:i,index:a}=e,{register:o,unregister:s,subscribeMapChange:c,nextIndexRef:l}=Pg(),u=_.useRef(-1),[d,f]=_.useState(a==null&&t?()=>{if(u.current===-1){let e=l.current;l.current+=1,u.current=e}return u.current}:-1),p=a??d,m=_.useRef(null),h=_.useCallback(e=>{let t=m.current;t&&s(t),m.current=e,e&&o(e,{metadata:r??null,index:a??null,label:n,textRef:i})},[a,o,s,r,n,i]);return X(()=>{if(a==null)return c(e=>{let t=m.current?e.get(m.current)?.index:null;t!=null&&f(t)})},[a,c]),{ref:h,index:p}}function Ug(e,t){let{listRef:n,elementsRef:r,activeIndex:i,onMatch:a,disabledIndices:o,onTyping:s,enabled:c=!0,resetMs:l=750,selectedIndex:u=null}=t,d=Q(s),f=e.useState(`open`),p=Il(),m=_.useRef(``),h=_.useRef(u??i??-1),g=_.useRef(null),v=Q(e=>{function t(e){return r?.current[e]}function s(e){let n=t(e);return n&&!qs(n)||n?.matches(`:disabled`)?!1:o==null||!Gs(Kr,e,o)}function c(e,t,n=0){if(e.length===0)return-1;let r=(n%e.length+e.length)%e.length,i=t.toLowerCase();for(let t=0;t<e.length;t+=1){let n=(r+t)%e.length;if(e[n]?.toLowerCase().startsWith(i)&&s(n))return n}return-1}let _=n.current;if(m.current.length>0&&e.key===` `&&(Xo(e),d?.(!0)),m.current.length>0&&m.current[0]!==` `&&c(_,m.current)===-1&&e.key!==` `&&d?.(!1),_==null||e.key.length!==1||e.ctrlKey||e.metaKey||e.altKey)return;f&&e.key!==` `&&(Xo(e),d?.(!0));let v=m.current===``;v&&(h.current=u??i??-1),_.every((e,t)=>e&&s(t)?e[0]?.toLowerCase()!==e[1]?.toLowerCase():!0)&&m.current===e.key&&(m.current=``,h.current=g.current),m.current+=e.key,p.start(l,()=>{m.current=``,h.current=g.current,d?.(!1)});let y=((v?u??i??-1:h.current)??0)+1,b=c(_,m.current,y);b===-1?e.key!==` `&&(m.current=``,d?.(!1)):(a?.(b,e),g.current=b)}),y=Q(t=>{let n=t.relatedTarget,r=e.select(`domReferenceElement`),i=e.select(`floatingElement`);Z(r,n)||Z(i,n)||(p.clear(),m.current=``,h.current=g.current,d?.(!1))});X(()=>{(f||u===null)&&(p.clear(),g.current=null,m.current!==``&&(m.current=``,d?.(!1)))},[f,u,p,d]);let b=_.useMemo(()=>({onKeyDown:v,onBlur:y}),[v,y]);return _.useMemo(()=>c?{reference:b,floating:b}:{},[c,b])}function Wg(e){return e==null?void 0:`${e}-label`}function Gg(e,t){return e??t}var Kg=5;function qg(e,t){let n=Jg(t);return e.clientX>=n.left-Kg&&e.clientX<=n.right+Kg&&e.clientY>=n.top-Kg&&e.clientY<=n.bottom+Kg}function Jg(e){let t=e.getBoundingClientRect(),n=Ri(e);if(Yo)return t;let r=n.getComputedStyle(e,`::before`),i=n.getComputedStyle(e,`::after`);if(r.content===`none`&&i.content===`none`)return t;let a=parseFloat(r.width)||0,o=parseFloat(r.height)||0,s=parseFloat(i.width)||0,c=parseFloat(i.height)||0,l=Math.max(t.width,a,s),u=Math.max(t.height,o,c),d=l-t.width,f=u-t.height;return{left:t.left-d/2,right:t.right+d/2,top:t.top-f/2,bottom:t.bottom+f/2}}var Yg=_.memo(_.forwardRef(function(e,t){let{render:n,className:r,style:i,keepMounted:a,selected:o,...s}=e,c=_.useRef(null),{transitionStatus:l,setMounted:u}=Xl(o),d=di(`span`,e,{ref:[t,c],state:{selected:o,transitionStatus:l},props:[{"aria-hidden":!0,children:`✔️`},s],stateAttributesMapping:hs});return Yl({batch:!0,enabled:!o,open:o,ref:c,onComplete(){o||u(!1)}}),d}));Yg.displayName=`ItemIndicator`;var Xg=20;function Zg(e,t,n,r){let[i,a]=_.useState(!1);X(()=>{if(!e||!t||n==null){a(!1);return}let r=zs(n).documentElement.clientWidth,i=n.offsetWidth;a(r>0&&i>0&&i>=r-Xg)},[e,t,n]),ag(e&&(!t||i),r)}var Qg=_.createContext(void 0);Qg.displayName=`ToolbarRootContext`;function $g(e){let t=_.useContext(Qg);if(t===void 0&&!e)throw Error(`Base UI: ToolbarRootContext is missing. Toolbar parts must be placed within <Toolbar.Root>.`);return t}function e_(e){return e==null||e.hasAttribute(`disabled`)||e.getAttribute(`aria-disabled`)===`true`}var t_=new Set([`ArrowUp`,`ArrowDown`,`ArrowLeft`,`ArrowRight`,`Home`,`End`]),n_=`overflow-hidden rounded-lg bg-kumo-base shadow-xs ring ring-kumo-line`,r_=`flex w-full flex-col overflow-hidden rounded-lg bg-kumo-elevated text-base ring ring-kumo-hairline`,i_=`-my-2 flex items-center gap-2 bg-kumo-elevated p-4 text-base font-medium text-kumo-subtle`,a_=`relative flex flex-col gap-2 overflow-hidden rounded-lg bg-kumo-base p-4 pr-3 text-inherit no-underline ring ring-kumo-fill`;function o_(e={}){return J(n_)}function s_(e){return _.Children.toArray(e).some(e=>(0,_.isValidElement)(e)?e.type===u_||e.type===l_||e.type===_.Fragment&&s_(e.props.children):!1)}var c_=(0,_.forwardRef)(function({children:e,className:t,render:n,...r},i){return xi({defaultTagName:`div`,render:n,ref:i,props:Qr({className:J(s_(e)?r_:o_(),t)},r,{children:e})})});function l_({children:e,className:t,...n}){return(0,Y.jsx)(`div`,{className:J(i_,t),...n,children:e})}function u_({children:e,className:t,...n}){return(0,Y.jsx)(`div`,{className:J(a_,t),...n,children:e})}c_.displayName=`LayerCard`,l_.displayName=`LayerCard.Secondary`,u_.displayName=`LayerCard.Primary`;var d_=Object.assign(c_,{Primary:u_,Secondary:l_});function f_(e=2e3){let[t,n]=(0,_.useState)(!1),r=(0,_.useRef)(null),i=(0,_.useRef)(0);return(0,_.useEffect)(()=>()=>{i.current+=1,r.current!==null&&clearTimeout(r.current)},[]),{copied:t,runCopy:(0,_.useCallback)(async(t,a)=>{let o=++i.current;r.current!==null&&(clearTimeout(r.current),r.current=null);try{return await t(()=>i.current===o),i.current===o&&(n(!0),r.current=setTimeout(()=>{i.current===o&&(n(!1),r.current=null)},e),!0)}catch(e){return i.current===o&&(n(!1),a?.(e)),!1}},[e]),reset:(0,_.useCallback)(()=>{i.current+=1,r.current!==null&&(clearTimeout(r.current),r.current=null),n(!1)},[])}}var p_=(e,t)=>Math.floor(Math.random()*(t-e+1)+e),m_=(e,t)=>(Math.random()*(t-e)+e).toFixed(2),h_=({minWidth:e=30,maxWidth:t=100,minDuration:n=1.3,maxDuration:r=1.7,minDelay:i=0,maxDelay:a=.5,blockHeight:o,className:s})=>{let{width:c,duration:l,delay:u}=(0,_.useMemo)(()=>({width:p_(e,t),duration:m_(n,r),delay:m_(i,a)}),[e,t,n,r,i,a]),d={"--skeleton-width":`${c}%`,"--shimmer-duration":`${l}s`,"--shimmer-delay":`${u}s`},f=(0,Y.jsx)(`div`,{className:J(`skeleton-line`,s),style:d});if(o!==void 0){let e=typeof o==`number`?`${o}px`:o;return(0,Y.jsx)(`div`,{className:`flex items-center`,style:{height:e},children:f})}return f};function g_(e){let[t,n]=_.useState({current:e,previous:null});return Object.is(e,t.current)||n({current:e,previous:t.current}),t.previous}var __=_.forwardRef(function(e,t){let{className:n,render:r,orientation:i=`horizontal`,style:a,...o}=e;return di(`div`,e,{state:{orientation:i},ref:t,props:[{role:`presentation`},o]})});__.displayName=`ListboxSeparator`;function v_(e,t){return Math.max(0,e-t)}function y_(e,t){if(t<=0)return 0;let n=Vm(e,0,t),r=n,i=t-n,a=r<=1,o=i<=1;return a&&o?r<=i?0:t:a?0:o?t:n}var b_=`base-ui-disable-scrollbar`,x_={className:b_,getElement(e){return(0,Y.jsx)(`style`,{nonce:e,href:b_,precedence:`base-ui:low`,children:`.${b_}{scrollbar-width:none}.${b_}::-webkit-scrollbar{display:none}`})}};x_.getElement.displayName=`styleDisableScrollbar.getElement`;var S_=_.createContext(void 0);S_.displayName=`CSPContext`;var C_={disableStyleElements:!1};function w_(){return _.useContext(S_)??C_}var T_=_.createContext(void 0);T_.displayName=`SelectRootContext`;var E_=_.createContext(void 0);E_.displayName=`SelectFloatingContext`;function D_(){let e=_.useContext(T_);if(e===void 0)throw Error(`Base UI: SelectRootContext is missing. Select parts must be placed within <Select.Root>.`);return e}function O_(){let e=_.useContext(E_);if(e===void 0)throw Error(`Base UI: SelectFloatingContext is missing. Select parts must be placed within <Select.Root>.`);return e}var k_={id:e=>e.id,labelId:e=>e.labelId,modal:e=>e.modal,multiple:e=>e.multiple,disabled:e=>e.disabled,readOnly:e=>e.readOnly,required:e=>e.required,highlightItemOnHover:e=>e.highlightItemOnHover,items:e=>e.items,itemToStringLabel:e=>e.itemToStringLabel,isItemEqualToValue:e=>e.isItemEqualToValue,value:e=>e.value,hasSelectedValue:e=>{let{value:t,multiple:n,itemToStringValue:r}=e;return t==null?!1:n&&Array.isArray(t)?t.length>0:Ag(t,r)!==``},hasNullItemLabel:(e,t)=>t?Og(e.items):!1,open:e=>e.open,mounted:e=>e.mounted,forceMount:e=>e.forceMount,transitionStatus:e=>e.transitionStatus,openMethod:e=>e.openMethod,activeIndex:e=>e.activeIndex,selectedIndex:e=>e.selectedIndex,isActive:(e,t)=>e.activeIndex===t,isSelected:(e,t)=>{let n=e.isItemEqualToValue,r=e.value;return e.multiple?Array.isArray(r)&&r.some(e=>gg(t,e,n)):gg(t,r,n)},isSelectedByFocus:(e,t)=>e.selectedIndex===t,popupProps:e=>e.popupProps,triggerProps:e=>e.triggerProps,itemRoot:e=>e.itemRoot,triggerElement:e=>e.triggerElement,positionerElement:e=>e.positionerElement,listElement:e=>e.listElement,popupSide:e=>e.popupSide,scrollUpArrowVisible:e=>e.scrollUpArrowVisible,scrollDownArrowVisible:e=>e.scrollDownArrowVisible,hasScrollArrows:e=>e.hasScrollArrows};function A_(e){let{id:t,value:n,defaultValue:r=null,onValueChange:i,open:a,defaultOpen:o=!1,onOpenChange:s,name:c,form:l,autoComplete:u,disabled:d=!1,readOnly:f=!1,required:p=!1,modal:m=!0,actionsRef:h,inputRef:g,onOpenChangeComplete:v,items:y,multiple:b=!1,itemToStringLabel:x,itemToStringValue:S,isItemEqualToValue:C=hg,highlightItemOnHover:w=!0,children:T}=e,{clearErrors:E}=Rp(),{setDirty:D,setTouched:O,setFocused:k,validityData:A,setFilled:j,name:M,disabled:N,validation:P,validationMode:F}=Pp(),I=rm({id:t}),L=N||d,R=M??c,[z,B]=om({controlled:n,default:b?r??Kr:r,name:`Select`,state:`value`}),[V,H]=om({controlled:a,default:o,name:`Select`,state:`open`}),U=_.useRef([]),ee=_.useRef([]),te=_.useRef(null),W=_.useRef(null),ne=_.useRef(0),re=_.useRef(null),ie=_.useRef([]),ae=_.useRef(!1),G=_.useRef(null),K=_.useRef(null),oe=_.useRef({allowSelectedMouseUp:!1,allowUnselectedMouseUp:!1,dragY:0}),se=_.useRef(!1),ce=_.useRef(z),{openMethod:le,triggerProps:ue}=qh(V),q=jr(()=>new Al({id:I,labelId:void 0,modal:m,multiple:b,disabled:L,readOnly:f,required:p,highlightItemOnHover:w,itemToStringLabel:x,itemToStringValue:S,isItemEqualToValue:C,value:z,open:V,mounted:V,transitionStatus:void 0,items:y,forceMount:!1,openMethod:null,activeIndex:null,selectedIndex:null,popupProps:qr,triggerProps:qr,itemRoot:{props:qr,multiple:b,disabled:L,readOnly:f,isItemEqualToValue:C},triggerElement:null,positionerElement:null,listElement:null,popupSide:null,scrollUpArrowVisible:!1,scrollDownArrowVisible:!1,hasScrollArrows:!1},{setValue:Gr,setOpen:Gr,handleScrollArrowVisibility:Gr,onOpenChangeComplete:Gr,listRef:U,popupRef:te,scrollHandlerRef:W,scrollArrowsMountedCountRef:ne,valueRef:re,valuesRef:ie,labelsRef:ee,typingRef:ae,selectionRef:oe,firstItemTextRef:G,selectedItemTextRef:K,alignItemWithTriggerActiveRef:se,initialValueRef:ce},k_)).current,[de,fe]=_.useState(!1),{mounted:pe,transitionStatus:me,forceUnmount:he}=ru({open:V,ref:te,preventUnmountOnClose:de,setPreventUnmountOnClose:fe,onUnmount(){q.update({activeIndex:null,openMethod:null,scrollUpArrowVisible:!1,scrollDownArrowVisible:!1}),v?.(!1)}}),ge=q.useState(`activeIndex`),_e=q.useState(`selectedIndex`),ve=q.useState(`triggerElement`),ye=q.useState(`positionerElement`),be=g_(le),xe=le??be,Se=_.useMemo(()=>b?``:Ag(z,S),[b,z,S]),Ce=_.useMemo(()=>b&&Array.isArray(z)?z.map(e=>Ag(e,S)):Ag(z,S),[b,z,S]);im(Ll(ve),I,z,Q(()=>Ce),!L,c);let we=b?Array.isArray(z)&&z.length>0:z!=null&&Se!==``;X(()=>{j(we)},[we,j]),X(function(){let e=xg(ie.current,z,C,b);e===null&&(K.current=null),!V&&q.set(`selectedIndex`,e)},[b,V,z,C,q]),am(z,()=>{E(R),D(_g(z,A.initialValue,C)),P.change(z)});let Te=Q((e,t)=>{let n=t,r=uu(n);s?.(e,n),!t.isCanceled&&(e||fe(r()),H(e),e||t.reason!==`focus-out`&&t.reason!==`outside-press`||(O(!0),k(!1),F===`onBlur`&&P.commit(z)))});_.useImperativeHandle(h,()=>({unmount:he,close:()=>{q.state.open&&Te(!1,_c(kc))}}),[he,Te,q]);let Ee=Q((e,t)=>{i?.(e,t),!t.isCanceled&&B(e)}),De=Q(e=>{let t=v_(e.scrollHeight,e.clientHeight),n=y_(e.scrollTop,t),r=n>0,i=n<t;q.set(`scrollUpArrowVisible`,r),q.set(`scrollDownArrowVisible`,i)}),Oe=zm({open:V,onOpenChange:Te,elements:{reference:ve,floating:ye}}),ke=og(Oe,{enabled:!L,event:`mousedown`}),Ae=tu(Oe),je=pg(Oe,{enabled:!L,listRef:U,activeIndex:ge,selectedIndex:_e,disabledIndices:Kr,onNavigate(e){(e!==null||V)&&q.set(`activeIndex`,e)},focusItemOnHover:w}),Me=Ug(Oe,{enabled:!L&&(V||!f&&!b),listRef:ee,activeIndex:ge,selectedIndex:_e,disabledIndices:e=>e_(U.current[e]),onMatch(e){V?q.set(`activeIndex`,e):Ee(ie.current[e],_c(vc))},onTyping(e){ae.current=e}}),Ne=_.useMemo(()=>Qr(Me.reference,je.reference,Ae.reference,ke.reference,ue),[ke.reference,Me.reference,je.reference,Ae.reference,ue]),Pe=_.useMemo(()=>Qr(iu,Me.floating,je.floating,Ae.floating),[Me.floating,je.floating,Ae.floating]),Fe=je.item??qr,Ie=_.useMemo(()=>({props:Fe,multiple:b,disabled:L,readOnly:f,isItemEqualToValue:C}),[Fe,b,L,f,C]);q.useContextCallback(`setValue`,Ee),q.useContextCallback(`setOpen`,Te),q.useContextCallback(`handleScrollArrowVisibility`,De),q.useContextCallback(`onOpenChangeComplete`,v),mg(()=>{q.update({popupProps:Pe,triggerProps:Ne,itemRoot:Ie})}),q.useSyncedValues({id:I,modal:m,multiple:b,disabled:L,readOnly:f,required:p,highlightItemOnHover:w,value:z,open:V,mounted:pe,transitionStatus:me,popupProps:Pe,triggerProps:Ne,itemRoot:Ie,items:y,itemToStringLabel:x,itemToStringValue:S,isItemEqualToValue:C,openMethod:xe});let Le=Mr(g,P.inputRef),Re=b?void 0:R,ze=_.useMemo(()=>!b||!Array.isArray(z)||!R?null:z.map(e=>{let t=Ag(e,S);return(0,Y.jsx)(`input`,{type:`hidden`,form:l,name:R,value:t,disabled:L},t)}),[b,z,l,R,S,L]);return(0,Y.jsxs)(T_.Provider,{value:q,children:[(0,Y.jsx)(E_.Provider,{value:Oe,children:T}),(0,Y.jsx)(`input`,{...P.getValidationProps(L,{onFocus(){q.state.triggerElement?.focus({focusVisible:!0})},onChange(e){if(e.nativeEvent.defaultPrevented||L||f)return;let t=e.currentTarget.value,n=_c(vc,e.nativeEvent);function r(){if(b)return;let e=t.toLowerCase(),r=ie.current.findIndex(t=>Ag(t,S).toLowerCase()===e||kg(t,x).toLowerCase()===e);r===-1&&(r=ie.current.findIndex((t,n)=>{let r=ee.current[n];return r!=null&&r.toLowerCase()===e}));let i=ie.current[r];i!=null&&Ee(i,n)}q.set(`forceMount`,!0),queueMicrotask(r)}}),id:I&&Re==null?`${I}-hidden-input`:void 0,form:l,name:Re,autoComplete:u,value:Se,disabled:L,required:p&&!(b&&we),readOnly:f,ref:Le,style:R?zc:Rc,tabIndex:-1,"aria-hidden":!0,suppressHydrationWarning:!0}),ze]})}var j_=_.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,o=a;delete o.id;let s=Pp(),c=D_(),l=c.useState(`triggerElement`),u=c.useState(`id`),d=zp({id:Wg(u),fallbackControlId:l?.id??u,setLabelId(e){let t=typeof e==`function`?e(c.state.labelId):e;c.set(`labelId`,t)}});return di(`div`,e,{ref:t,state:s.state,props:[d,a],stateAttributesMapping:jp})});j_.displayName=`SelectLabel`;var M_=`data-popup-side`,N_=400,P_={...Ds,...jp,popupSide:e=>e?{[M_]:e}:null,value:()=>null},F_=_.forwardRef(function(e,t){let{render:n,className:r,id:i,disabled:a=!1,nativeButton:o=!0,style:s,...c}=e,{setTouched:l,validationMode:u,validation:d,state:f,disabled:p}=Pp(),{labelId:m}=Ip(),h=D_(),g=h.useState(`readOnly`),v=h.useState(`required`),y=h.useState(`disabled`),b=p||y||a,x=h.useState(`open`),S=h.useState(`mounted`),C=h.useState(`value`),w=h.useState(`triggerProps`),T=h.useState(`positionerElement`),E=h.useState(`listElement`),D=h.useState(`popupSide`),O=h.useState(`id`),k=h.useState(`labelId`),A=h.useState(`hasSelectedValue`),j=S&&T?D:null,M=i??O,N=Gg(m,k);rm({id:i});let P=Ll(T),F=_.useRef(null),I=gm(b,F),{getButtonProps:L,buttonRef:R}=xm({disabled:b,native:o}),z=h.useStateSetter(`triggerElement`),B=Il(),V=Il(),H=Il();_.useEffect(()=>{if(x)return H.start(N_,()=>{h.context.selectionRef.current.allowUnselectedMouseUp=!0,h.context.selectionRef.current.allowSelectedMouseUp=!0}),()=>{H.clear()};h.context.selectionRef.current={allowSelectedMouseUp:!1,allowUnselectedMouseUp:!1,dragY:0},V.clear()},[x,h,V,H]);let U=Qr(w,{id:M,role:`combobox`,"aria-expanded":x,"aria-haspopup":`listbox`,"aria-controls":x?E?.id??Rs(T)?.id:void 0,"aria-labelledby":N,"aria-readonly":g||void 0,"aria-required":v||void 0,tabIndex:b?-1:0,onFocus(e){I(!0),x&&h.context.alignItemWithTriggerActiveRef.current&&h.context.setOpen(!1,_c(vc,e.nativeEvent)),B.start(0,()=>{h.set(`forceMount`,!0)})},onBlur(e){Z(T,e.relatedTarget)||(l(!0),I(!1),u===`onBlur`&&d.commit(C))},onMouseDown(e){if(x)return;let t=zs(e.currentTarget);function n(e){if(!F.current)return;let t=e.target;Z(F.current,t)||Z(P.current,t)||qg(e,F.current)||h.context.setOpen(!1,_c(Dc,e))}V.start(0,()=>{t.addEventListener(`mouseup`,n,{once:!0})})}},c,L),ee=d.getValidationProps(b,U);ee.role=`combobox`;let te={...f,open:x,disabled:b,value:C,readOnly:g,popupSide:j,placeholder:!A};return di(`button`,e,{ref:[t,F,R,z],state:te,stateAttributesMapping:P_,props:ee})});F_.displayName=`SelectTrigger`;var I_={value:()=>null},L_=_.forwardRef(function(e,t){let{className:n,render:r,children:i,placeholder:a,style:o,...s}=e,c=D_(),l=c.useState(`value`),u=c.useState(`items`),d=c.useState(`itemToStringLabel`),f=c.useState(`hasSelectedValue`),p=!f&&a!=null&&i==null,m=c.useState(`hasNullItemLabel`,p),h={value:l,placeholder:!f},g=null;return g=typeof i==`function`?i(l):i??(p&&!m?a:Array.isArray(l)?Mg(l,u,d):jg(l,u,d)),di(`span`,e,{state:h,ref:[t,c.context.valueRef],props:[{children:g},s],stateAttributesMapping:I_})});L_.displayName=`SelectValue`;var R_=_.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e;return di(`span`,e,{state:{open:D_().useState(`open`)},ref:t,props:[{"aria-hidden":!0,children:`▼`},a],stateAttributesMapping:Es})});R_.displayName=`SelectIcon`;var z_=_.forwardRef(function(e,t){let n=D_(),r=n.useState(`mounted`),i=n.useState(`forceMount`);return r||i?(0,Y.jsx)(bl,{ref:t,...e}):null});z_.displayName=`SelectPortal`;var B_=_.createContext(void 0);B_.displayName=`SelectPositionerContext`;function V_(){let e=_.useContext(B_);if(!e)throw Error(`Base UI: SelectPositionerContext is missing. SelectPositioner parts must be placed within <Select.Positioner>.`);return e}function H_(e,t){e&&Object.assign(e.style,t)}var U_={position:`relative`,maxHeight:`100%`,overflowX:`hidden`,overflowY:`auto`},W_={position:`fixed`},G_=_.forwardRef(function(e,t){let{anchor:n,className:r,render:i,positionMethod:a,side:o,align:s,sideOffset:c,alignOffset:l,collisionBoundary:u=`clipping-ancestors`,collisionPadding:d,arrowPadding:f,sticky:p,disableAnchorTracking:m,alignItemWithTrigger:h=!0,collisionAvoidance:g=pl,style:v,...y}=e,b=D_(),x=O_(),S=b.useState(`open`),C=b.useState(`mounted`),w=b.useState(`modal`),T=b.useState(`value`),E=b.useState(`openMethod`),D=b.useState(`positionerElement`),O=b.useState(`triggerElement`),k=b.useState(`isItemEqualToValue`),A=b.useState(`transitionStatus`),j=_.useRef(null),M=_.useRef(null),[N,P]=_.useState(h),F=C&&N&&E!==`touch`;!C&&N!==h&&P(h),_.useImperativeHandle(b.context.alignItemWithTriggerActiveRef,()=>F),Zg((F||w)&&S,E===`touch`,D,O);let I=dd({anchor:n,floatingRootContext:x,positionMethod:a,mounted:C,side:o,sideOffset:c,align:s,alignOffset:l,arrowPadding:f,collisionBoundary:u,collisionPadding:d,sticky:p,disableAnchorTracking:m??F,collisionAvoidance:g,keepMounted:!0}),L=F?`none`:I.side,R=F?W_:I.positionerStyles,z={open:S,side:L,align:I.align,anchorHidden:I.anchorHidden};X(()=>{b.set(`popupSide`,I.side)},[b,I.side]);let B=hd(e,z,{styles:R,transitionStatus:A,props:y,refs:[t,b.useStateSetter(`positionerElement`)],hidden:!C,inert:!S}),V=_.useRef(0),H=Q(e=>{if(b.context.valuesRef.current.length===0)return;let t=V.current;V.current=e.size;let n=_c(vc);if(t!==0&&!b.state.multiple&&T!==null&&yg(b.context.valuesRef.current,T,k)===-1){let e=b.context.initialValueRef.current,t=e!=null&&yg(b.context.valuesRef.current,e,k)!==-1?e:null;b.context.setValue(t,n),t===null&&(b.set(`selectedIndex`,null),b.context.selectedItemTextRef.current=null)}if(t!==0&&b.state.multiple&&Array.isArray(T)){let e=T.filter(e=>yg(b.context.valuesRef.current,e,k)!==-1);e.length!==T.length&&(b.context.setValue(e,n),e.length===0&&(b.set(`selectedIndex`,null),b.context.selectedItemTextRef.current=null))}if(S&&F){b.update({scrollUpArrowVisible:!1,scrollDownArrowVisible:!1});let e={height:``};H_(D,e),H_(b.context.popupRef.current,e)}}),U=_.useMemo(()=>({...I,side:L,alignItemWithTriggerActive:F,setControlledAlignItemWithTrigger:P,scrollUpArrowRef:j,scrollDownArrowRef:M}),[I,L,F,P]);return(0,Y.jsx)(Fg,{elementsRef:b.context.listRef,labelsRef:b.context.labelsRef,onMapChange:H,children:(0,Y.jsxs)(B_.Provider,{value:U,children:[C&&w&&(0,Y.jsx)(Jh,{inert:Bm(!S),cutout:O}),B]})})});G_.displayName=`SelectPositioner`;var K_=`--transform-origin`,q_={...Os,...hs},J_=_.forwardRef(function(e,t){let{render:n,className:r,style:i,finalFocus:a,...o}=e,s=D_(),c=s.useState(`multiple`),l=s.useState(`readOnly`),u=s.useState(`highlightItemOnHover`),d=O_(),{side:f,align:p,alignItemWithTriggerActive:m,isPositioned:h,setControlledAlignItemWithTrigger:g}=V_(),v=$g(!0)!=null,y=Xu(),{nonce:b,disableStyleElements:x}=w_(),S=s.useState(`id`),C=s.useState(`open`),w=s.useState(`openMethod`),T=s.useState(`mounted`),E=s.useState(`popupProps`),D=s.useState(`transitionStatus`),O=s.useState(`triggerElement`),k=s.useState(`positionerElement`),A=s.useState(`listElement`),j=_.useRef(!1),M=_.useRef(!1),N=_.useRef({}),P=Ul(),F=Q(e=>{if(!k||!s.context.popupRef.current||!M.current)return;let t=k.style.top===`0px`,n=k.style.bottom===`0px`;if(j.current||!m||!t&&!n){s.context.handleScrollArrowVisibility(e);return}let r=Z_(k),i=Q_(k.getBoundingClientRect().height,`y`,r),a=zs(k),o=Ri(k),c=o.getComputedStyle(k),l=parseFloat(c.marginTop),u=parseFloat(c.marginBottom),d=Y_(o.getComputedStyle(s.context.popupRef.current)),f=Math.min(a.documentElement.clientHeight-l-u,d),p=e.scrollTop,h=X_(e),g=null,_=e=>{k.style.height=`${e}px`},v=t?h-p:p,y=Math.min(i+v,f);if(v<=1){let n=Vm(v,0,f-i);n>0&&_(i+n),e.scrollTop=t?h:0,f-(i+n)<=1&&(j.current=!0),s.context.handleScrollArrowVisibility(e);return}f-y>1?g=t?1/0:0:n&&p<h&&(g=p-(v-(i+v-f)));let b=Math.ceil(y);if(b!==0&&_(b),g!=null){let t=Vm(g,0,X_(e));Math.abs(e.scrollTop-t)>1&&(e.scrollTop=t)}b>=f-1&&(j.current=!0),s.context.handleScrollArrowVisibility(e)});_.useImperativeHandle(s.context.scrollHandlerRef,()=>F,[F]),Yl({open:C,ref:s.context.popupRef,onComplete(){C&&s.context.onOpenChangeComplete(!0)}});let I={open:C,transitionStatus:D,side:f,align:p};X(()=>{k&&s.context.popupRef.current&&!Object.keys(N.current).length&&(N.current={top:k.style.top||`0`,left:k.style.left||`0`,right:k.style.right,height:k.style.height,bottom:k.style.bottom,minHeight:k.style.minHeight,maxHeight:k.style.maxHeight,marginTop:k.style.marginTop,marginBottom:k.style.marginBottom})},[s,k]),X(()=>{C||m||(M.current=!1,j.current=!1,H_(k,N.current))},[C,m,k]),X(()=>{let e=s.context.popupRef.current;if(!C||!O||!k||!e||m&&!h||s.state.transitionStatus===`ending`)return;if(M.current=!0,e.style.removeProperty(K_),!m){P.request(()=>s.context.handleScrollArrowVisibility(A||e));return}let t=tv(e);try{let t=s.context.selectedItemTextRef.current;t?.isConnected||(t=!s.select(`hasSelectedValue`)&&s.context.firstItemTextRef.current?.isConnected?s.context.firstItemTextRef.current:null);let n=s.context.valueRef.current,r=Ri(k),i=r.getComputedStyle(k),a=r.getComputedStyle(e),o=zs(O),c=Z_(O),l=$_(O.getBoundingClientRect(),c),d=$_(k.getBoundingClientRect(),c),f=l.height,p=A||e,m=p.scrollHeight,h=parseFloat(a.borderBottomWidth),_=parseFloat(i.marginTop)||10,v=parseFloat(i.marginBottom)||10,b=parseFloat(i.minHeight)||100,x=Y_(a),S=o.documentElement.clientHeight-_-v,C=o.documentElement.clientWidth,w=S-l.bottom+f,T,E=y===`rtl`?l.right-d.width:l.left,D=0;if(t&&n){let e=$_(n.getBoundingClientRect(),c);T=$_(t.getBoundingClientRect(),c),E=d.left+(y===`rtl`?e.right-T.right:e.left-T.left);let r=e.top-l.top+e.height/2;D=T.top-d.top+T.height/2-r}let M=w+D+v+h,P=Math.min(S,M),F=S-_-v,I=M-P,L=C-5;k.style.left=`${Vm(E,5,L-d.width)}px`,k.style.height=`${P}px`,k.style.maxHeight=`none`,k.style.marginTop=`${_}px`,k.style.marginBottom=`${v}px`,e.style.height=`100%`;let R=X_(p),z=I>=R-1;z&&(P=Math.min(S,d.height)-(I-R));let B=l.top<20||l.bottom>S-20||Math.ceil(P)+1<Math.min(m,b),V=(r.visualViewport?.scale??1)!==1&&gc;if(B||V){H_(k,N.current),g(!1);return}let H=Math.max(b,P);if(z){let e=Math.max(0,S-M);k.style.top=d.height>=F?`0`:`${e}px`,k.style.height=`${P}px`,p.scrollTop=X_(p)}else k.style.bottom=`0`,p.scrollTop=I;if(T){let t=d.top,n=d.height,r=T.top+T.height/2,i=Vm(n>0?(r-t)/n*100:50,0,100);e.style.setProperty(K_,`50% ${i}%`)}(H===S||P>=x)&&(j.current=!0),s.context.handleScrollArrowVisibility(p),u&&s.state.selectedIndex===null&&s.state.activeIndex===null&&s.context.listRef.current[0]!=null&&s.set(`activeIndex`,0)}finally{t()}},[s,C,k,O,m,g,P,A,u,y,h]),_.useEffect(()=>{if(!m||!k||!C)return;let e=Ri(k);function t(e){s.context.setOpen(!1,_c(Ac,e))}return jc(e,`resize`,t)},[s,m,k,C]);let L={...A?{role:`presentation`}:{role:`listbox`,"aria-multiselectable":c||void 0,"aria-readonly":l||void 0,id:`${S}-list`},onKeyDown(e){v&&t_.has(e.key)&&e.stopPropagation()},onScroll(e){A||F(e.currentTarget)},...m&&{style:A?{height:`100%`}:U_},className:!A&&m?x_.className:void 0},R=di(`div`,e,{ref:[t,s.context.popupRef],state:I,stateAttributesMapping:q_,props:[E,L,md(D),o]});return(0,Y.jsxs)(_.Fragment,{children:[!x&&x_.getElement(b),(0,Y.jsx)(Wh,{context:d,modal:!1,disabled:!T,openInteractionType:w,returnFocus:a,restoreFocus:!0,children:R})]})});J_.displayName=`SelectPopup`;function Y_(e){let t=e.maxHeight;return t.endsWith(`px`)&&parseFloat(t)||1/0}function X_(e){return v_(e.scrollHeight,e.clientHeight)}function Z_(e){return _o.getScale(e)}function Q_(e,t,n){return e/n[t]}function $_(e,t){return Na({x:Q_(e.x,`x`,t),y:Q_(e.y,`y`,t),width:Q_(e.width,`x`,t),height:Q_(e.height,`y`,t)})}var ev=[[`transform`,`none`],[`scale`,`1`],[`translate`,`0 0`]];function tv(e){let{style:t}=e,n={};for(let[e,r]of ev)n[e]=t.getPropertyValue(e),t.setProperty(e,r,`important`);return()=>{for(let[e]of ev){let r=n[e];r?t.setProperty(e,r):t.removeProperty(e)}}}var nv=_.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,o=D_(),s=o.useState(`multiple`),c=o.useState(`readOnly`),{alignItemWithTriggerActive:l}=V_(),u=o.useState(`hasScrollArrows`),d=o.useState(`openMethod`),f={id:`${o.useState(`id`)}-list`,role:`listbox`,"aria-multiselectable":s||void 0,"aria-readonly":c||void 0,onScroll(e){o.context.scrollHandlerRef.current?.(e.currentTarget)},...l&&{style:U_},className:u&&d!==`touch`?x_.className:void 0};return di(`div`,e,{ref:[t,o.useStateSetter(`listElement`)],props:[f,a]})});nv.displayName=`SelectList`;var rv=_.createContext(void 0);rv.displayName=`SelectItemContext`;function iv(){let e=_.useContext(rv);if(!e)throw Error(`Base UI: SelectItemContext is missing. SelectItem parts must be placed within <Select.Item>.`);return e}var av=_.memo(_.forwardRef(function(e,t){let{render:n,className:r,style:i,value:a=null,label:o,disabled:s=!1,nativeButton:c=!1,...l}=e,u=_.useRef(null),d=Hg({guess:!0,label:o,textRef:u}),f=D_(),{props:p,multiple:m,disabled:h,readOnly:g,isItemEqualToValue:v}=f.useState(`itemRoot`),y=h||s,b=f.useState(`isActive`,d.index),x=f.useState(`open`),S=f.useState(`isSelected`,a),C=f.useState(`isSelectedByFocus`,d.index),w=d.index,T=_.useRef(null);X(()=>{let e=f.context.valuesRef.current;return e[w]=a,()=>{delete e[w]}},[w,a,f]),X(()=>{let e=f.state.value,t=f.state.selectedIndex,n=t,r;m&&Array.isArray(e)?(n=Sg(w,a,f.context.valuesRef.current,e,v,t),r=n===w,w===t&&!r&&(f.context.selectedItemTextRef.current=null)):(r=e!==void 0&&gg(a,e,v),r&&(n=w)),f.set(`selectedIndex`,n),r&&u.current&&(f.context.selectedItemTextRef.current=u.current)},[w,m,v,f,a]);let E=_.useRef(`mouse`),D=_.useRef(!1),{getButtonProps:O,buttonRef:k}=xm({disabled:y,focusableWhenDisabled:!0,native:c,composite:!0}),A={disabled:y,selected:S,highlighted:b};function j(e){if(h||g)return;let t=f.state.value;if(m){let n=Array.isArray(t)?t:[],r=S?Cg(n,a,v):[...n,a];f.context.setValue(r,_c(Cc,e))}else f.context.setValue(a,_c(Cc,e)),f.context.setOpen(!1,_c(Cc,e))}function M(){f.context.selectionRef.current.dragY=0}let N={role:`option`,"aria-selected":S,tabIndex:x&&b?0:-1,onKeyDown(e){f.set(`activeIndex`,w),e.key===` `&&f.context.typingRef.current&&e.preventDefault()},onClick(e){let t=E.current!==`touch`,n=e.nativeEvent.pointerType,r=t&&Qo(e.nativeEvent)&&(n!==void 0||b),i=t&&!r&&!D.current;D.current=!1,!(y||i)&&j(e.nativeEvent)},onPointerEnter(e){E.current=e.pointerType},onPointerMove(e){if(e.pointerType===`mouse`&&e.buttons===1){let t=f.context.selectionRef.current;t.dragY+=e.movementY,t.dragY**2>=64&&(t.allowUnselectedMouseUp=!0)}},onPointerDown(e){E.current=e.pointerType,D.current=!0,M()},onMouseUp(){if(M(),y||E.current===`touch`||D.current)return;let e=!f.context.selectionRef.current.allowSelectedMouseUp&&S,t=!f.context.selectionRef.current.allowUnselectedMouseUp&&!S;e||t||(D.current=!0,T.current?.click(),D.current=!1)}},P=di(`div`,e,{ref:[k,t,d.ref,T],state:A,props:[p,N,l,O]}),F=_.useMemo(()=>({selected:S,index:w,textRef:u,selectedByFocus:C}),[S,w,u,C]);return(0,Y.jsx)(rv.Provider,{value:F,children:P})}));av.displayName=`SelectItem`;var ov=_.forwardRef(function(e,t){let{selected:n}=iv();return e.keepMounted||n?(0,Y.jsx)(Yg,{...e,selected:n,ref:t}):null});ov.displayName=`SelectItemIndicator`;var sv=_.memo(_.forwardRef(function(e,t){let{index:n,textRef:r,selectedByFocus:i}=iv(),a=D_(),{render:o,className:s,style:c,...l}=e;return di(`div`,e,{ref:[_.useCallback(e=>{e&&(n===0&&(a.context.firstItemTextRef.current=e),i&&(a.context.selectedItemTextRef.current=e))},[a,n,i]),t,r],props:l})}));sv.displayName=`SelectItemText`;var cv=_.createContext(void 0);cv.displayName=`SelectGroupContext`;function lv(){let e=_.useContext(cv);if(e===void 0)throw Error(`Base UI: SelectGroupContext is missing. SelectGroup parts must be placed within <Select.Group>.`);return e}var uv=_.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,[o,s]=_.useState(),c=_.useMemo(()=>({labelId:o,setLabelId:s}),[o,s]),l=di(`div`,e,{ref:t,props:[{role:`group`,"aria-labelledby":o},a]});return(0,Y.jsx)(cv.Provider,{value:c,children:l})});uv.displayName=`SelectGroup`;var dv=_.forwardRef(function(e,t){let{render:n,className:r,style:i,id:a,...o}=e,{setLabelId:s}=lv(),c=qu(a);return X(()=>(s(c),()=>{s(e=>e===c?void 0:e)}),[c,s]),di(`div`,e,{ref:t,props:[{id:c,"aria-hidden":!0},o]})});dv.displayName=`SelectGroupLabel`;var fv=__;Xm.size;var pv={size:`base`};function mv({size:e=pv.size}={}){return J(Kf({size:e}),`bg-kumo-control disabled:bg-kumo-control/50 data-[state=open]:bg-kumo-control`,`justify-between font-normal`,`focus:opacity-100 focus:ring-kumo-focus/50 focus-visible:ring-inset *:in-focus:opacity-100`)}var hv={xs:{iconSize:12,className:`text-kumo-subtle`},sm:{iconSize:14,className:`text-kumo-subtle`},base:{iconSize:16,className:`text-kumo-subtle`},lg:{iconSize:18,className:`text-kumo-subtle`}};function gv(e){if(typeof e!=`object`||!e||Array.isArray(e)||`$$typeof`in e||e instanceof Promise)return!1;let t=e;return`label`in t&&t.label!==void 0}function _v(e){return Array.isArray(e)?e:Object.entries(e).map(([e,t])=>({value:e,label:gv(t)?t.label:t}))}function vv(e){let t=_v(e),n=new Map;if(!Array.isArray(e))for(let[t,r]of Object.entries(e))gv(r)&&n.set(t,{disabled:r.disabled});return t.filter(e=>e.value!==null).map((e,t)=>{let r=typeof e.value==`string`?e.value:`option-${t}`,i=typeof e.value==`string`?n.get(e.value):void 0;return(0,Y.jsx)(bv,{value:e.value,disabled:i?.disabled,children:e.label},r)})}function yv({children:e,className:t,render:n,renderValue:r,label:i,hideLabel:a,placeholder:o,loading:s,size:c=pv.size,labelTooltip:l,description:u,error:d,required:f,container:p,side:m=`bottom`,sideOffset:h=4,align:g=`start`,alignOffset:v,alignItemWithTrigger:y=!1,anchor:b,arrowPadding:x,positionMethod:S,collisionAvoidance:C,collisionBoundary:w,collisionPadding:T,sticky:E,disableAnchorTracking:D,...O}){let k=(0,_.useId)(),A=Ni(),j=p??A??void 0,M=O,N=M[`aria-label`],P=M[`aria-labelledby`],F=typeof i==`string`?i:o;a!==void 0&&console.warn('[Kumo Select]: `hideLabel` is deprecated. For hidden labels, use `aria-label` instead of `label` + `hideLabel={true}`.\n Migration:\n - For visible labels: <Select label="Country" /> (hideLabel no longer needed)\n - For hidden labels: <Select aria-label="Select a country" /> (remove label and hideLabel)');let I=i&&a!==!0,L=I?void 0:P??(i?k:void 0),R=N??(L?void 0:F),z=O.items?_v(O.items):void 0,B=e||(O.items?vv(O.items):null),V=r?e=>{let t=o==null?null:(0,Y.jsx)(`span`,{className:`text-kumo-placeholder`,children:o});return e==null||e===``?t:r(e)??t}:void 0,{items:H,...U}=O,ee=i?(0,Y.jsx)(j_,{className:`m-0 text-base font-medium text-kumo-default select-none`,children:(0,Y.jsx)(xp,{showOptional:f===!1,tooltip:a?void 0:l,asContent:!0,children:i})}):null,te=(0,Y.jsxs)(F_,{"data-kumo-component":`Select`,"data-kumo-part":`trigger`,render:n,className:J(mv({size:c}),O.disabled&&`cursor-not-allowed opacity-50`,d&&`!ring-kumo-danger focus:ring-[1.5px] focus:ring-kumo-danger/50`,t),"aria-label":R,"aria-labelledby":L,children:[s?(0,Y.jsx)(h_,{className:`w-32`}):(0,Y.jsx)(L_,{placeholder:o,className:`min-w-0 truncate data-[placeholder]:text-kumo-placeholder`,children:V}),(0,Y.jsx)(R_,{className:J(`flex shrink-0 items-center`,hv[c].className),children:(0,Y.jsx)(Df,{size:hv[c].iconSize,className:`fill-current`})})]}),W=(0,Y.jsxs)(A_,{...U,items:z,disabled:s||O.disabled,required:f,children:[ee,te,(0,Y.jsx)(z_,{container:j,children:(0,Y.jsx)(G_,{side:m,sideOffset:h,align:g,alignOffset:v,alignItemWithTrigger:y,anchor:b,arrowPadding:x,positionMethod:S,collisionAvoidance:C,collisionBoundary:w,collisionPadding:T,sticky:E,disableAnchorTracking:D,children:(0,Y.jsx)(J_,{className:J(`flex flex-col`,`max-h-[var(--available-height)] bg-kumo-base text-kumo-default`,`rounded-lg shadow-lg ring ring-kumo-line`,`max-w-(--available-width) min-w-(--anchor-width) py-1.5`),children:(0,Y.jsx)(nv,{className:J(`min-h-0 flex-1 scroll-pt-2 scroll-pb-2 overflow-y-auto overscroll-none`),children:B})})})})]});if(I)return(0,Y.jsx)(qm,{label:i,required:f,labelTooltip:l,description:u,error:d?typeof d==`string`?{message:d,match:!0}:d:void 0,hideLabel:!0,children:W});let ne=d?typeof d==`string`?{message:d,match:!0}:d:void 0;return(0,Y.jsxs)(`div`,{className:`grid gap-2`,children:[i&&(0,Y.jsx)(`span`,{id:k,className:`sr-only`,children:i}),W,ne?(0,Y.jsx)(`span`,{className:`text-sm text-kumo-danger`,children:ne.message}):u&&(0,Y.jsx)(`span`,{className:`text-sm leading-snug text-kumo-subtle`,children:u})]})}function bv({children:e,value:t,disabled:n,className:r}){return(0,Y.jsxs)(av,{"data-kumo-component":`Select`,"data-kumo-part":`option`,value:t,disabled:n,className:J(`group mx-1.5 flex cursor-pointer items-center justify-between gap-2 rounded px-2 py-1.5 text-base outline-none`,`focus-visible:z-50 focus-visible:ring-2 focus-visible:ring-kumo-brand focus-visible:ring-inset`,`data-highlighted:bg-kumo-tint`,`data-[disabled]:pointer-events-none data-[disabled]:cursor-not-allowed data-[disabled]:opacity-50`,r),children:[(0,Y.jsx)(sv,{children:e}),(0,Y.jsx)(ov,{children:(0,Y.jsx)(Of,{})})]})}var xv=(0,_.forwardRef)(({children:e,className:t},n)=>(0,Y.jsx)(uv,{ref:n,className:J(t),children:e}));xv.displayName=`Select.Group`;var Sv=(0,_.forwardRef)(({children:e,className:t},n)=>(0,Y.jsx)(dv,{ref:n,className:J(`px-3.5 py-1.5 text-sm font-semibold text-kumo-subtle`,t),children:e}));Sv.displayName=`Select.GroupLabel`;var Cv=(0,_.forwardRef)(({className:e},t)=>(0,Y.jsx)(fv,{ref:t,className:J(`my-1 h-px bg-kumo-hairline`,e)}));Cv.displayName=`Select.Separator`,yv.Option=bv,yv.Group=xv,yv.GroupLabel=Sv,yv.Separator=Cv,yv.Option.displayName=`Select.Option`;var wv=[25,50,100,250],Tv=(e,t,n)=>Math.min(Math.max(e,t),n),Ev={navigation:`Pagination`,firstPage:`First page`,previousPage:`Previous page`,nextPage:`Next page`,lastPage:`Last page`,pageNumber:`Page number`,pageSize:`Page size`},Dv={controls:`full`},Ov=(0,_.createContext)(null);function kv(){let e=(0,_.useContext)(Ov);if(!e)throw Error(`Pagination compound components must be used within a Pagination component`);return e}function Av({children:e,className:t}){let{page:n,perPage:r,totalCount:i,pageShowingRange:a}=kv(),o=e?e({page:n,perPage:r,totalCount:i,pageShowingRange:a}):i&&i>0?(0,Y.jsxs)(Y.Fragment,{children:[`Showing `,(0,Y.jsx)(`span`,{className:`tabular-nums`,children:a}),` of`,` `,(0,Y.jsx)(`span`,{className:`tabular-nums`,children:i})]}):null;return(0,Y.jsx)(`div`,{"data-slot":`pagination-info`,className:J(`text-sm text-kumo-subtle`,t),children:o})}Av.displayName=`Pagination.Info`;function jv({value:e,onChange:t,options:n=wv,label:r=`Per page:`,className:i}){let{labels:a}=kv();return(0,Y.jsxs)(`div`,{"data-slot":`pagination-page-size`,className:J(`flex items-center gap-2`,i),children:[r&&(0,Y.jsx)(`span`,{className:`text-sm text-kumo-subtle`,children:r}),(0,Y.jsx)(yv,{"aria-label":a.pageSize,value:e,onValueChange:e=>t(e),children:n.map(e=>(0,Y.jsx)(yv.Option,{value:e,children:e},e))})]})}jv.displayName=`Pagination.PageSize`;function Mv({controls:e=Dv.controls,pageSelector:t=`input`,className:n}){let{page:r,totalCount:i,hasNextPage:a,maxPage:o,setPage:s,editingPage:c,setEditingPage:l,labels:u}=kv(),d=i!=null,f=e===`full`&&!(!d&&a!==void 0),p=d?r===o:a!==!0;return(0,Y.jsx)(`div`,{"data-slot":`pagination-controls`,className:J(`flex grow flex-col items-end`,n),children:(0,Y.jsx)(`nav`,{"aria-label":u.navigation,children:(0,Y.jsxs)(hh,{children:[f&&(0,Y.jsx)(hh.Button,{variant:`secondary`,"aria-label":u.firstPage,disabled:r<=1,onClick:()=>{s(1),l(1)},children:(0,Y.jsx)(xf,{size:16})}),(0,Y.jsx)(hh.Button,{variant:`secondary`,"aria-label":u.previousPage,disabled:r<=1,onClick:()=>{let e=Math.max(r-1,1);s(e),l(e)},children:(0,Y.jsx)(wf,{size:16})}),f&&(t===`dropdown`?(0,Y.jsx)(yv,{"aria-label":u.pageNumber,className:`rounded-none ring-kumo-hairline`,value:r,onValueChange:e=>{let t=e;s(t),l(t)},children:Array.from({length:o},(e,t)=>t+1).map(e=>(0,Y.jsx)(yv.Option,{value:e,children:e},e))}):(0,Y.jsx)(hh.Input,{style:{width:50},className:`text-center`,"aria-label":u.pageNumber,value:c,onValueChange:e=>{l(Number(e))},onBlur:()=>{let e=Tv(c,1,o);s(e),l(e)},onKeyDown:e=>{if(e.key===`Enter`){let e=Tv(c,1,o);s(e),l(e)}},autoComplete:`off`,"data-1p-ignore":!0,"data-lpignore":`true`,"data-form-type":`other`})),(0,Y.jsx)(hh.Button,{variant:`secondary`,"aria-label":u.nextPage,disabled:p,onClick:()=>{let e=d?Math.min(r+1,o):r+1;s(e),l(e)},children:(0,Y.jsx)(Tf,{size:16})}),f&&(0,Y.jsx)(hh.Button,{variant:`secondary`,"aria-label":u.lastPage,disabled:r===o,onClick:()=>{s(o),l(o)},children:(0,Y.jsx)(Sf,{size:16})})]})})})}Mv.displayName=`Pagination.Controls`;function Nv({className:e}){return(0,Y.jsx)(`div`,{"data-slot":`pagination-separator`,className:J(`mx-2 h-6 border-l border-kumo-hairline`,e)})}Nv.displayName=`Pagination.Separator`;function Pv(e){let{page:t=1,perPage:n,totalCount:r,hasNextPage:i,setPage:a,children:o,className:s,labels:c}=e,l=`text`in e?e.text:void 0,u=`controls`in e?e.controls??Dv.controls:Dv.controls,[d,f]=(0,_.useState)(1),p=(0,_.useMemo)(()=>({...Ev,...c}),[c]);(0,_.useEffect)(()=>{f(t)},[t]);let m=(0,_.useMemo)(()=>{let e=t*(n??1)-(n??0)+1,i=Math.min(t*(n??0),r??0);return Number.isNaN(e)&&(e=0),Number.isNaN(i)&&(i=0),`${e}-${i}`},[t,n,r]),h={page:t,perPage:n,totalCount:r,hasNextPage:i,maxPage:(0,_.useMemo)(()=>Math.ceil((r??1)/(n??1)),[r,n]),pageShowingRange:m,setPage:a,editingPage:d,setEditingPage:f,labels:p};return o?(0,Y.jsx)(Ov.Provider,{value:h,children:(0,Y.jsx)(`div`,{"data-slot":`pagination`,className:J(`flex w-full items-center gap-2`,s),children:o})}):(0,Y.jsx)(Ov.Provider,{value:h,children:(0,Y.jsxs)(`div`,{"data-slot":`pagination`,className:J(`flex w-full items-center gap-2`,s),children:[(0,Y.jsx)(`div`,{"aria-live":`polite`,"aria-atomic":`true`,"data-slot":`pagination-info`,className:`grow text-sm text-kumo-subtle`,children:l?l({page:t,perPage:n,totalCount:r,pageShowingRange:m}):r&&r>0?(0,Y.jsxs)(Y.Fragment,{children:[`Showing `,(0,Y.jsx)(`span`,{className:`tabular-nums`,children:m}),` of`,` `,(0,Y.jsx)(`span`,{className:`tabular-nums`,children:r})]}):null}),(0,Y.jsx)(Mv,{controls:u})]})})}Pv.displayName=`Pagination`;var Fv=Object.assign(Pv,{Info:Av,PageSize:jv,Controls:Mv,Separator:Nv}),Iv={layout:{auto:{classes:``,description:`Auto table layout - columns resize based on content`},fixed:{classes:`table-fixed`,description:`Fixed table layout - columns have equal width, controlled via colgroup`}},variant:{default:{classes:`even:bg-kumo-elevated [--kumo-table-row-bg:var(--color-kumo-base)] even:[--kumo-table-row-bg:var(--color-kumo-elevated)]`,description:`Default row variant`},selected:{classes:`bg-kumo-tint [--kumo-table-row-bg:var(--color-kumo-tint)]`,description:`Selected row variant`}},sticky:{left:{classes:`sticky left-0`,description:`Pin column to the left edge of the scroll container`},right:{classes:`sticky right-0`,description:`Pin column to the right edge of the scroll container`}}},Lv=(e,t)=>{let n=vr(Iv.sticky,e,`left`).classes,r=t===`head`?`z-2`:`z-1`,i=e===`right`?`before:-left-6`:`before:-right-6`,a=`before:pointer-events-none before:absolute before:inset-y-0 before:w-6`;return t===`cell`?J(n,r,`bg-(--kumo-table-row-bg)`,a,i,e===`right`?`before:bg-gradient-to-r before:from-transparent before:to-(--kumo-table-row-bg)`:`before:bg-gradient-to-l before:from-transparent before:to-(--kumo-table-row-bg)`):J(n,r,`bg-kumo-base group-data-[compact]/header:bg-kumo-elevated`,a,i,e===`right`?`before:bg-gradient-to-r before:from-transparent before:to-kumo-base group-data-[compact]/header:before:to-kumo-elevated`:`before:bg-gradient-to-l before:from-transparent before:to-kumo-base group-data-[compact]/header:before:to-kumo-elevated`)},Rv={layout:`auto`,variant:`default`},zv=(0,_.forwardRef)(({layout:e=`auto`,...t},n)=>{let r=J(`isolate w-full`,vr(Iv.layout,e,Rv.layout).classes,`[&_td]:p-3`,`[&_th]:border-b [&_th]:border-kumo-fill [&_th]:p-3 [&_th]:text-base [&_th]:font-semibold`,`[&_th]:bg-kumo-base`,`text-left text-base text-kumo-default`,t.className);return(0,Y.jsx)(`table`,{ref:n,...t,className:r})}),Bv=(0,_.forwardRef)(({variant:e=`default`,sticky:t,...n},r)=>{let i=e===`compact`,a=J(`group/header`,i&&`text-xs text-kumo-strong [&_th]:bg-kumo-elevated [&_th]:py-2`,t&&`[&_th]:sticky [&_th]:top-0 [&_th]:z-1`,n.className);return(0,Y.jsx)(`thead`,{ref:r,...n,className:a,...i&&{"data-compact":``}})}),Vv=(0,_.forwardRef)(({sticky:e,...t},n)=>{let r=J(`group relative`,e&&Lv(e,`head`),t.className);return(0,Y.jsx)(`th`,{ref:n,...t,className:r})}),Hv=(0,_.forwardRef)(({variant:e=Rv.variant,...t},n)=>{let r=J(vr(Iv.variant,e,Rv.variant).classes,t.className);return(0,Y.jsx)(`tr`,{ref:n,...t,className:r})}),Uv=(0,_.forwardRef)((e,t)=>(0,Y.jsx)(`tbody`,{ref:t,...e})),Wv=(0,_.forwardRef)(({sticky:e,...t},n)=>{let r=J(e&&Lv(e,`cell`),t.className);return(0,Y.jsx)(`td`,{ref:n,...t,className:r})}),Gv=(0,_.forwardRef)((e,t)=>(0,Y.jsx)(`tfoot`,{ref:t,...e})),Kv=(0,_.forwardRef)((e,t)=>(0,Y.jsx)(`button`,{ref:t,...e,type:`button`,"aria-label":`Resize column`,className:J(`invisible h-full group-hover:visible`,`w-[10px]`,`flex items-center justify-center`,`cursor-col-resize touch-none select-none`,`absolute top-0 right-0`,`m-0 bg-kumo-base p-0`,`focus-visible:ring-2 focus-visible:ring-kumo-brand`),children:(0,Y.jsx)(`span`,{className:`h-5 w-[2px] rounded bg-kumo-hairline`})})),qv=(0,_.forwardRef)(({checked:e,indeterminate:t,onCheckedChange:n,onValueChange:r,label:i,disabled:a,...o},s)=>(0,Y.jsx)(Wv,{ref:s,...o,className:J(`w-10 leading-none`,o.className),children:(0,Y.jsx)(Rm,{checked:e,indeterminate:t,onCheckedChange:(e,t)=>{n?.(e,t),r?.(e)},"aria-label":i??`Select row`,disabled:a,className:`relative before:absolute before:-inset-3 before:content-['']`})})),Jv=(0,_.forwardRef)(({checked:e,indeterminate:t,onCheckedChange:n,onValueChange:r,label:i,disabled:a,...o},s)=>(0,Y.jsx)(Vv,{ref:s,...o,className:J(`w-10 leading-none`,o.className),children:(0,Y.jsx)(Rm,{checked:e,indeterminate:t,onCheckedChange:(e,t)=>{n?.(e,t),r?.(e)},"aria-label":i??`Select all rows`,disabled:a,className:`relative before:absolute before:-inset-3 before:content-['']`})}));zv.displayName=`Table`,Uv.displayName=`Table.Body`,Vv.displayName=`Table.Head`,Hv.displayName=`Table.Row`,Wv.displayName=`Table.Cell`,Gv.displayName=`Table.Footer`,Bv.displayName=`Table.Header`,Kv.displayName=`Table.ResizeHandle`,qv.displayName=`Table.CheckCell`,Jv.displayName=`Table.CheckHead`;var $=Object.assign(zv,{Header:Bv,Head:Vv,Row:Hv,Body:Uv,Cell:Wv,CheckCell:qv,CheckHead:Jv,Footer:Gv,ResizeHandle:Kv}),Yv={size:{sm:{classes:`text-sm h-10 gap-0.5`,description:`Compact breadcrumbs for dense UIs`},base:{classes:`text-base h-12 gap-1`,description:`Default breadcrumbs size`}}},Xv={size:`base`};function Zv({size:e=Xv.size}={}){return J(`group mr-4 flex min-w-0 grow items-center overflow-hidden whitespace-nowrap`,vr(Yv.size,e,Xv.size).classes)}var Qv=({href:e,icon:t,children:n})=>{let r=Or();return(0,Y.jsxs)(r,{"data-kumo-component":`Breadcrumbs`,"data-kumo-part":`link`,to:e,className:`flex shrink-0 items-center gap-1 whitespace-nowrap text-kumo-subtle no-underline`,children:[!!t&&(0,Y.jsx)(`span`,{className:`flex shrink-0 items-center`,children:t}),(0,Y.jsx)(`span`,{children:n})]})};function $v({children:e,icon:t,loading:n}){return n?(0,Y.jsxs)(`div`,{className:`flex w-[125px] min-w-0 items-center gap-1`,children:[t&&(0,Y.jsx)(`span`,{className:`flex shrink-0 items-center`,children:t}),(0,Y.jsx)(h_,{})]}):(0,Y.jsxs)(`div`,{className:`flex max-w-full min-w-0 items-center gap-1 font-medium`,"aria-current":`page`,children:[t&&(0,Y.jsx)(`span`,{className:`flex shrink-0 items-center`,children:t}),(0,Y.jsx)(`span`,{className:`truncate`,children:e})]})}function ey(){return(0,Y.jsx)(`span`,{className:`flex shrink-0 items-center text-kumo-inactive`,"aria-hidden":`true`,children:(0,Y.jsx)(`svg`,{width:`24`,height:`24`,fill:`none`,viewBox:`0 0 24 24`,children:(0,Y.jsx)(`path`,{stroke:`currentColor`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:`1.5`,d:`M10.75 8.75L14.25 12L10.75 15.25`})})})}function ty(){return(0,Y.jsx)(`span`,{className:`flex shrink-0 items-center text-kumo-subtle`,"aria-hidden":!0,children:`...`})}function ny({text:e}){let{copied:t,runCopy:n}=f_();return(0,Y.jsx)(ip,{variant:`ghost`,shape:`square`,size:`sm`,className:`opacity-0 transition-[opacity] group-hover:opacity-100`,onClick:async()=>{e&&await n(()=>navigator.clipboard.writeText(e),e=>console.error(`Failed to copy deeplink:`,e))},title:`Click to copy`,"aria-label":`Copy`,children:t?(0,Y.jsx)(Of,{weight:`bold`,className:`text-kumo-success`}):(0,Y.jsx)(Af,{weight:`regular`})})}function ry({children:e,size:t=`base`,className:n}){let r=_.Children.toArray(e),i=ay(r);return(0,Y.jsxs)(`nav`,{className:J(Zv({size:t}),n),"aria-label":`breadcrumb`,children:[(0,Y.jsx)(`div`,{className:`contents sm:hidden`,children:i}),(0,Y.jsx)(`div`,{className:`hidden sm:contents`,children:r})]})}function iy(e,t){return(0,_.isValidElement)(e)&&e.type===t}function ay(e){let t=e.filter(e=>iy(e,Qv)||iy(e,$v));if(t.length<=2)return e;let[n,r]=t.slice(-2),i=[(0,Y.jsx)(ty,{},`kumo-breadcrumb-mobile-ellipsis`),(0,Y.jsx)(ey,{},`kumo-breadcrumb-mobile-separator-leading`),(0,_.cloneElement)(n,{key:`kumo-breadcrumb-mobile-parent`}),(0,Y.jsx)(ey,{},`kumo-breadcrumb-mobile-separator-trailing`),(0,_.cloneElement)(r,{key:`kumo-breadcrumb-mobile-current`})],a=e.filter(e=>!iy(e,Qv)&&!iy(e,$v)&&!iy(e,ey));return[...i,...a]}ry.Link=Qv,ry.Current=$v,ry.Separator=ey,ry.Clipboard=ny;var oy={size:{sm:{classes:`px-6 py-8 gap-4`,description:`Compact empty state for smaller containers`},base:{classes:`px-10 py-16 gap-6`,description:`Default empty state size`},lg:{classes:`px-12 py-20 gap-8`,description:`Large empty state for prominent placement`}}},sy={size:`base`};function cy({size:e=sy.size}={}){return J(`flex w-full flex-col items-center rounded-xl border border-kumo-fill bg-kumo-control text-kumo-default`,vr(oy.size,e,sy.size).classes)}function ly({icon:e,title:t,description:n,commandLine:r,contents:i,size:a=`base`,className:o}){let{copied:s,runCopy:c}=f_(1e3),l=(0,_.useCallback)(async()=>{r&&await c(()=>navigator.clipboard.writeText(r),e=>console.warn(`Clipboard copy failed`,e))},[r,c]);return(0,Y.jsxs)(`div`,{className:J(cy({size:a}),o),children:[e,(0,Y.jsxs)(`div`,{className:`flex flex-col items-center gap-2.5`,children:[n?(0,Y.jsx)(Sh,{variant:`heading`,size:`lg`,as:`h2`,children:t}):(0,Y.jsx)(Sh,{variant:`secondary`,size:`base`,as:`h2`,children:t}),n&&(0,Y.jsx)(Sh,{variant:`secondary`,size:`base`,DANGEROUS_className:`max-w-140 text-center text-balance leading-normal`,children:n})]}),r&&(0,Y.jsxs)(`div`,{className:J(`relative inline-flex h-10 max-w-8/10 transform-gpu items-center gap-2 rounded-lg border border-white bg-kumo-overlay pr-2 pl-3 font-mono shadow-xs ring ring-kumo-line`),children:[(0,Y.jsxs)(`span`,{className:`inline-flex min-w-0 items-baseline gap-2`,children:[(0,Y.jsx)(`span`,{className:`text-kumo-subtle select-none`,children:`$`}),(0,Y.jsx)(`span`,{className:`no-scrollbar overflow-scroll text-base whitespace-nowrap`,children:r})]}),(0,Y.jsx)(ip,{className:`text-kumo-subtle`,size:`sm`,variant:`ghost`,shape:`square`,"aria-label":`Copy command`,onClick:l,children:s?(0,Y.jsx)(Of,{size:16,className:`animate-bounce-in text-kumo-success`}):(0,Y.jsx)(Af,{size:16})})]}),i]})}var uy=_.createContext(void 0);uy.displayName=`ScrollAreaRootContext`;function dy(){let e=_.useContext(uy);if(e===void 0)throw Error(`Base UI: ScrollAreaRootContext is missing. ScrollArea parts must be placed within <ScrollArea.Root>.`);return e}function fy(e,t,n){if(!e)return 0;let r=getComputedStyle(e),i=`${t}${n===`x`?`Inline`:`Block`}`,a=parseFloat(r[`${i}Start`]);return n===`x`&&t===`margin`?a*2:a+parseFloat(r[`${i}End`])}var py=`data-has-overflow-x`,my=`data-has-overflow-y`,hy=`data-overflow-x-start`,gy=`data-overflow-x-end`,_y=`data-overflow-y-start`,vy=`data-overflow-y-end`,yy=e=>t=>t?{[e]:``}:null,by={hasOverflowX:yy(py),hasOverflowY:yy(my),overflowXStart:yy(hy),overflowXEnd:yy(gy),overflowYStart:yy(_y),overflowYEnd:yy(vy),cornerHidden:()=>null},xy=`--scroll-area-corner-height`,Sy=`--scroll-area-corner-width`,Cy=`data-orientation`,wy={x:0,y:0},Ty={width:0,height:0},Ey={xStart:!1,xEnd:!1,yStart:!1,yEnd:!1},Dy={x:!0,y:!0,corner:!0},Oy=_.forwardRef(function(e,t){let{render:n,className:r,overflowEdgeThreshold:i,style:a,...o}=e,{xStart:s,xEnd:c,yStart:l,yEnd:u}=ky(i),d=qu(),f=Il(),p=Il(),{nonce:m,disableStyleElements:h}=w_(),[g,v]=_.useState(!1),[y,b]=_.useState(!1),[x,S]=_.useState(!1),[C,w]=_.useState(!1),[T,E]=_.useState(!1),[D,O]=_.useState(Ty),[k,A]=_.useState(Ty),[j,M]=_.useState(Ey),[N,P]=_.useState(Dy),F=_.useRef(null),I=_.useRef(null),L=_.useRef(null),R=_.useRef(null),z=_.useRef(null),B=_.useRef(null),V=_.useRef(null),H=_.useRef(null),U=_.useRef(0),ee=_.useRef(0),te=_.useRef(0),W=_.useRef(0),ne=_.useRef(`vertical`),re=_.useRef(wy),ie=_.useRef(null);function ae(e){let t=e?S:b,n=e?f:p;t(!0),n.start(500,()=>{t(!1)})}let G=Q(e=>{let t=e.x-re.current.x,n=e.y-re.current.y;re.current=e,n!==0&&ae(!0),t!==0&&ae(!1)}),K=Q(()=>{let e=I.current;e&&ie.current===null&&(ie.current=e.style.scrollSnapType,e.style.scrollSnapType=`none`)}),oe=Q(e=>{if(e.button!==0||H.current!==null&&(ne.current===`vertical`?z.current:B.current)?.hasPointerCapture(H.current))return;H.current=e.pointerId,U.current=e.clientY,ee.current=e.clientX,ne.current=e.currentTarget.getAttribute(Cy);let t=I.current;t&&(te.current=t.scrollTop,W.current=t.scrollLeft,K()),(ne.current===`vertical`?z.current:B.current)?.setPointerCapture(e.pointerId)}),se=Q(e=>{if(e.pointerId!==H.current)return;H.current=null,(ne.current===`vertical`?S:b)(!1),ie.current!==null&&(I.current&&(I.current.style.scrollSnapType=ie.current),ie.current=null);let t=ne.current===`vertical`?z.current:B.current;t?.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId)}),ce=Q(e=>{if(e.pointerId!==H.current)return;if(e.buttons%2==0){se(e);return}let t=I.current;if(!t)return;let n=ne.current===`vertical`,r=n?z.current:B.current,i=n?L.current:R.current;if(!r||!i)return;let a=n?`y`:`x`,o=fy(i,`padding`,a),s=fy(r,`margin`,a),c=n?r.offsetHeight:r.offsetWidth,l=(n?i.offsetHeight:i.offsetWidth)-c-o-s,u=n?e.clientY-U.current:e.clientX-ee.current,d=l<=0?0:u/l,f=n?t.scrollHeight:t.scrollWidth,p=n?t.clientHeight:t.clientWidth,m=(n?te.current:W.current)+d*(f-p);n?t.scrollTop=m:t.scrollLeft=m,e.preventDefault(),ae(n)});function le(e){w(e.pointerType===`touch`)}function ue(e){if(le(e),e.pointerType!==`touch`){let t=Z(F.current,e.target);v(t)}}let q=_.useMemo(()=>({scrolling:y||x,hasOverflowX:!N.x,hasOverflowY:!N.y,overflowXStart:j.xStart,overflowXEnd:j.xEnd,overflowYStart:j.yStart,overflowYEnd:j.yEnd,cornerHidden:N.corner}),[y,x,N.x,N.y,N.corner,j]),de={role:`presentation`,onPointerEnter:ue,onPointerMove:ue,onPointerDown:le,onPointerLeave(){v(!1)},style:{position:`relative`,[xy]:`${D.height}px`,[Sy]:`${D.width}px`}},fe=di(`div`,e,{state:q,ref:[t,F],props:[de,o],stateAttributesMapping:by}),pe=_.useMemo(()=>({handlePointerDown:oe,handlePointerMove:ce,handlePointerUp:se,handleScroll:G,disableViewportSnap:K,cornerSize:D,setCornerSize:O,thumbSize:k,setThumbSize:A,hasMeasuredScrollbar:T,setHasMeasuredScrollbar:E,touchModality:C,cornerRef:V,scrollingX:y,scrollingY:x,hovering:g,setHovering:v,viewportRef:I,scrollbarYRef:L,scrollbarXRef:R,thumbYRef:z,thumbXRef:B,rootId:d,hiddenState:N,setHiddenState:P,overflowEdges:j,setOverflowEdges:M,viewportState:q,overflowEdgeThreshold:{xStart:s,xEnd:c,yStart:l,yEnd:u}}),[oe,ce,se,G,K,D,k,T,C,y,x,g,d,N,j,q,s,c,l,u]);return(0,Y.jsxs)(uy.Provider,{value:pe,children:[!h&&x_.getElement(m),fe]})});Oy.displayName=`ScrollAreaRoot`;function ky(e){let t=typeof e==`number`?{xStart:e,xEnd:e,yStart:e,yEnd:e}:e;return{xStart:Math.max(0,t?.xStart||0),xEnd:Math.max(0,t?.xEnd||0),yStart:Math.max(0,t?.yStart||0),yEnd:Math.max(0,t?.yEnd||0)}}var Ay=_.createContext(void 0);Ay.displayName=`ScrollAreaViewportContext`;function jy(){let e=_.useContext(Ay);if(e===void 0)throw Error(`Base UI: ScrollAreaViewportContext missing. ScrollAreaViewport parts must be placed within <ScrollArea.Viewport>.`);return e}var My=`--scroll-area-overflow-x-start`,Ny=`--scroll-area-overflow-x-end`,Py=`--scroll-area-overflow-y-start`,Fy=`--scroll-area-overflow-y-end`,Iy=`--scroll-area-thumb-height`,Ly=`--scroll-area-thumb-width`,Ry=[My,Ny,Py,Fy],zy=!1;function By(){zy||gc||(typeof CSS<`u`&&`registerProperty`in CSS&&Ry.forEach(e=>{try{CSS.registerProperty({name:e,syntax:`<length>`,inherits:!1,initialValue:`0px`})}catch{}}),zy=!0)}var Vy=_.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,{viewportRef:o,scrollbarYRef:s,scrollbarXRef:c,thumbYRef:l,thumbXRef:u,cornerRef:d,cornerSize:f,setCornerSize:p,setThumbSize:m,rootId:h,setHiddenState:g,hiddenState:v,setHasMeasuredScrollbar:y,handleScroll:b,touchModality:x,setHovering:S,setOverflowEdges:C,overflowEdgeThreshold:w,viewportState:T}=dy(),E=Xu(),D=_.useRef(!0),O=_.useRef([NaN,NaN,NaN,NaN]),k=Il(),A=Il(),j=Q(()=>{let e=o.current,t=s.current,n=c.current,r=l.current,i=u.current,a=d.current;if(!e)return;let h=e.scrollHeight,_=e.scrollWidth,v=e.clientHeight,b=e.clientWidth,x=e.scrollTop,S=e.scrollLeft,T=O.current,D=Number.isNaN(T[0]);if(T[0]=v,T[1]=h,T[2]=b,T[3]=_,D&&y(!0),h===0||_===0)return;let k=Hy(e),A=k.y,j=k.x,M=b/_,N=v/h,P=Math.max(0,_-b),F=Math.max(0,h-v),I=0,L=0;j||(I=y_(E===`rtl`?-S:S,P),L=P-I);let R=A?0:y_(x,F),z=A?0:F-R,B=j?0:b,V=A?0:v,H=0,U=0;!j&&!A&&(H=t?.offsetWidth||0,U=n?.offsetHeight||0);let ee=f.width===0&&f.height===0,te=ee?H:0,W=ee?U:0,ne=fy(n,`padding`,`x`),re=fy(t,`padding`,`y`),ie=fy(i,`margin`,`x`),ae=fy(r,`margin`,`y`),G=B-ne-ie,K=V-re-ae,oe=n?Math.min(n.offsetWidth-te,G):G,se=t?Math.min(t.offsetHeight-W,K):K,ce=Math.max(16,oe*M),le=Math.max(16,se*N);if(m(e=>Uy(e,{width:ce,height:le})),t&&r){let e=Wy(r,Iy,x,F,h,le,t.offsetHeight-le-re-ae);r.style.transform=`translate3d(0,${e}px,0)`}if(n&&i){let e=n.offsetWidth-ce-ne-ie,t=Wy(i,Ly,E===`rtl`?-S:S,P,_,ce,e);i.style.transform=`translate3d(${E===`rtl`?-t:t}px,0,0)`}let ue=[I,L,R,z];Ry.forEach((t,n)=>{e.style.setProperty(t,`${ue[n]}px`)}),a&&p(e=>Uy(e,{width:H,height:U})),g(e=>Uy(e,k));let q={xStart:!j&&I>w.xStart,xEnd:!j&&L>w.xEnd,yStart:!A&&R>w.yStart,yEnd:!A&&z>w.yEnd};C(e=>Uy(e,q))});X(()=>{By()},[]),X(()=>{queueMicrotask(j)},[j,v,E,w.xStart,w.xEnd,w.yStart,w.yEnd]),X(()=>{o.current?.matches(`:hover`)&&S(!0)},[o,S]),X(()=>{let e=o.current;if(typeof ResizeObserver>`u`||!e)return;let t=!1,n=new ResizeObserver(()=>{if(!t){t=!0;let n=O.current;if(n[0]===e.clientHeight&&n[1]===e.scrollHeight&&n[2]===e.clientWidth&&n[3]===e.scrollWidth)return}j()});return n.observe(e),A.start(0,()=>{let t=Wl(e,{subtree:!0});t.length!==0&&Promise.allSettled(t.map(e=>e.finished.then(Gr))).then(j).catch(()=>{})}),()=>{n.disconnect(),A.clear()}},[j,o,A]);function M(){D.current=!1}let N={...h&&{"data-id":`${h}-viewport`},tabIndex:v.x&&v.y?-1:0,className:x_.className,style:{overflow:`scroll`},onScroll(){o.current&&(j(),(x||!D.current)&&b({x:o.current.scrollLeft,y:o.current.scrollTop}),k.start(100,()=>{D.current=!0}))},onWheel:M,onPointerMove:M,onPointerEnter:M,onKeyDown:M},P=di(`div`,e,{ref:[t,o],state:T,props:[N,a],stateAttributesMapping:by}),F=_.useMemo(()=>({computeThumbPosition:j}),[j]);return(0,Y.jsx)(Ay.Provider,{value:F,children:P})});Vy.displayName=`ScrollAreaViewport`;function Hy(e){let t=e.clientHeight>=e.scrollHeight,n=e.clientWidth>=e.scrollWidth;return{y:t,x:n,corner:t||n}}function Uy(e,t){for(let n in t)if(e[n]!==t[n])return t;return e}function Wy(e,t,n,r,i,a,o){let s=Vm(n,0,r),c=n-s,l=Math.max(16,a*i/(i+Math.abs(c)));return e.style.setProperty(t,c?`${l}px`:``),(r?s/r*o:0)+(c>0?a-l:0)}var Gy=_.createContext(void 0);Gy.displayName=`ScrollAreaScrollbarContext`;function Ky(){let e=_.useContext(Gy);if(e===void 0)throw Error(`Base UI: ScrollAreaScrollbarContext is missing. ScrollAreaScrollbar parts must be placed within <ScrollArea.Scrollbar>.`);return e}var qy=_.forwardRef(function(e,t){let{render:n,className:r,orientation:i=`vertical`,keepMounted:a=!1,style:o,...s}=e,{hovering:c,scrollingX:l,scrollingY:u,hiddenState:d,scrollbarYRef:f,scrollbarXRef:p,viewportRef:m,thumbYRef:h,thumbXRef:g,handlePointerDown:v,handlePointerUp:y,handleScroll:b,disableViewportSnap:x,rootId:S,thumbSize:C,hasMeasuredScrollbar:w,viewportState:T}=dy(),E=i===`vertical`,D={...T,hovering:c,scrolling:E?u:l,orientation:i},O=Xu(),k=!w&&!a,A=E?d.y:d.x,j=a||!A;_.useEffect(()=>{if(!j)return;let e=m.current,t=E?f.current:p.current;if(!t)return;function n(t){if(!e||t.ctrlKey)return;let n=!E,r=n?`scrollLeft`:`scrollTop`,i=n?t.deltaX:t.deltaY;if(i===0)return;let a=n?e.scrollWidth-e.clientWidth:e.scrollHeight-e.clientHeight,o=n&&O===`rtl`?-a:0,s=n&&O===`rtl`?0:a,c=e[r];c<=o&&i<0||c>=s&&i>0||(t.preventDefault(),e[r]=Math.min(s,Math.max(o,c+i)),b({x:e.scrollLeft,y:e.scrollTop}))}return jc(t,`wheel`,n,{passive:!1})},[O,b,E,p,f,j,m]);let M={...S&&{"data-id":`${S}-scrollbar`},"aria-hidden":!0,onPointerDown(e){if(e.button!==0)return;let t=is(e.nativeEvent),n=E?h.current:g.current;if(n&&Z(n,t))return;let r=m.current;if(!r)return;let i=E?f.current:p.current;if(!n||!i)return;let a=E?`y`:`x`,o=fy(n,`margin`,a),s=fy(i,`padding`,a),c=E?n.offsetHeight:n.offsetWidth,l=i.getBoundingClientRect(),u=E?e.clientY-l.top-c/2-s+o/2:e.clientX-l.left-c/2-s+o/2,d=E?r.scrollHeight:r.scrollWidth,_=E?r.clientHeight:r.clientWidth,y=(E?i.offsetHeight:i.offsetWidth)-c-s-o;if(y<=0)return;let S=u/y,C=d-_;x(),E?r.scrollTop=S*C:r.scrollLeft=O===`rtl`?-(1-S)*C:S*C,b({x:r.scrollLeft,y:r.scrollTop}),v(e)},onMouseDown(e){e.preventDefault()},onPointerUp:y,onPointerCancel:y,style:{position:`absolute`,touchAction:`none`,WebkitUserSelect:`none`,userSelect:`none`,visibility:k?`hidden`:void 0,...E?{top:0,bottom:`var(${xy})`,insetInlineEnd:0,[Iy]:`${C.height}px`}:{insetInlineStart:0,insetInlineEnd:`var(${Sy})`,bottom:0,[Ly]:`${C.width}px`}}},N=di(`div`,e,{ref:[t,E?f:p],state:D,props:[M,s],stateAttributesMapping:by});return j?(0,Y.jsx)(Gy.Provider,{value:i,children:N}):null});qy.displayName=`ScrollAreaScrollbar`;var Jy=_.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,{computeThumbPosition:o}=jy(),{hasMeasuredScrollbar:s,viewportState:c}=dy(),l=_.useRef(null),u=_.useRef(s);return X(()=>{if(typeof ResizeObserver>`u`)return;let e=!1,t=new ResizeObserver(()=>{!e&&(e=!0,!u.current)||o()});return l.current&&t.observe(l.current),()=>{t.disconnect()}},[o]),di(`div`,e,{ref:[t,l],state:c,stateAttributesMapping:by,props:[{role:`presentation`,style:{minWidth:`fit-content`}},a]})});Jy.displayName=`ScrollAreaContent`;var Yy=_.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,{thumbYRef:o,thumbXRef:s,handlePointerDown:c,handlePointerMove:l,handlePointerUp:u,scrollingX:d,scrollingY:f,hasMeasuredScrollbar:p}=dy(),m=Ky(),h=m===`vertical`;return di(`div`,e,{ref:[t,h?o:s],state:{scrolling:h?f:d,orientation:m},props:[{onPointerDown:c,onPointerMove:l,onPointerUp:u,onPointerCancel:u,style:{visibility:p?void 0:`hidden`,...h?{height:`var(--scroll-area-thumb-height)`}:{width:`var(--scroll-area-thumb-width)`}}},a]})});Yy.displayName=`ScrollAreaThumb`;var Xy={variant:`sidebar`,collapsible:`icon`,side:`left`},Zy=`16.25rem`,Qy=`57px`,$y=`cubic-bezier(0.77, 0, 0.175, 1)`,eb=250,tb=50,nb=768,rb=`a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])`;function ib(e,t,n,r=!0){let i=r&&n!==void 0,a=(0,_.useRef)(n),o=(0,_.useRef)(t),s=(0,_.useRef)(e),c=(0,_.useRef)(r),l=(0,_.useRef)(void 0),u=(0,_.useRef)(void 0);a.current=n,o.current=t;let d=(0,_.useCallback)(()=>{let e=l.current;e!==void 0&&(l.current=void 0,clearTimeout(u.current),a.current?.(e))},[]);return(0,_.useEffect)(()=>{let t=s.current!==e,n=c.current;if(s.current=e,c.current=r,!i)l.current=void 0,clearTimeout(u.current);else if(n&&t){if(l.current=e,o.current===0||window.matchMedia(`(prefers-reduced-motion: reduce)`).matches)d();else return u.current=setTimeout(d,o.current+tb),()=>clearTimeout(u.current)}},[r,d,i,e]),d}function ab(e=nb){let t=`(max-width: ${e-1}px)`,n=(0,_.useCallback)(e=>{let n=window.matchMedia(t);return n.addEventListener(`change`,e),()=>n.removeEventListener(`change`,e)},[t]),r=(0,_.useCallback)(()=>window.matchMedia(t).matches,[t]),i=(0,_.useCallback)(()=>!1,[]);return(0,_.useSyncExternalStore)(n,r,i)}var ob=(0,_.createContext)(null);function sb(){let e=(0,_.useContext)(ob);if(!e)throw Error(`useSidebar must be used within a Sidebar.Provider`);return e}var cb=256,lb=200,ub=480;function db({defaultOpen:e=!0,open:t,onOpenChange:n,onOpenChangeComplete:r,variant:i=Xy.variant,side:a=Xy.side,collapsible:o=Xy.collapsible,resizable:s=!1,defaultWidth:c=cb,minWidth:l=lb,maxWidth:u=ub,onWidthChange:d,contained:f=!1,peekable:p=!1,animationDuration:m=eb,mobileBreakpoint:h,children:g,className:v,style:y}){let b=ab(h),[x,S]=(0,_.useState)(!1),[C,w]=(0,_.useState)(c),[T,E]=(0,_.useState)(!1),[D,O]=(0,_.useState)(!1),k=b&&t!==void 0?t:x,A=(0,_.useCallback)(e=>{S(e),b&&t!==void 0&&n?.(e)},[b,t,n]),j=(0,_.useCallback)(e=>{let t=Math.min(u,Math.max(l,e));w(t),d?.(t)},[l,u,d]),[M,N]=(0,_.useState)(e),P=t??M,F=(0,_.useCallback)(e=>{let t=typeof e==`function`?e(P):e;n?.(t),N(t)},[n,P]),I=(0,_.useCallback)(()=>{b?A(!k):(O(!1),F(e=>!e))},[b,k,A,F]),L=(0,_.useCallback)(()=>{p&&!P&&!b&&O(!0)},[p,P,b]),R=(0,_.useCallback)(()=>{O(!1)},[]),z=D?`peeking`:P?`expanded`:`collapsed`,B=s?`${C}px`:Zy,V=(0,_.useRef)(new Map),H=(0,_.useCallback)((e,t)=>{let n=V.current;t?n.set(e,t):n.delete(e)},[]),U=(0,_.useCallback)((e,t={})=>{let{align:n=`auto`,behavior:r=`auto`}=t,i=V.current.get(e);if(!i)return;let a=i.closest(`[data-sidebar="viewport"]`);if(!a)return;let o=i.getBoundingClientRect(),s=a.getBoundingClientRect(),c=a.offsetHeight>0&&s.height>0?s.height/a.offsetHeight:1,l=(o.top-s.top)/c+a.scrollTop,u;if(n===`center`)u=l-(a.clientHeight-i.offsetHeight)/2;else if(n===`end`)u=l-(a.clientHeight-i.offsetHeight);else if(n===`auto`){let e=l+i.offsetHeight,t=a.scrollTop+a.clientHeight;if(l<a.scrollTop)u=l;else if(e>t)u=e-a.clientHeight;else return}else u=l;let d=Math.max(0,Math.min(u,a.scrollHeight-a.clientHeight)),f=typeof window<`u`&&window.matchMedia(`(prefers-reduced-motion: reduce)`).matches;a.scrollTo({top:d,behavior:f?`auto`:r})},[]),ee=(0,_.useCallback)((e,t={})=>{let n=V.current.get(e);if(!n)return;let r=n.closest(`[data-sidebar="viewport"]`);if(!r)return;let i=n.getBoundingClientRect(),a=r.getBoundingClientRect();i.top>=a.top&&i.bottom<=a.bottom||U(e,t)},[U]),te=(0,_.useMemo)(()=>({state:z,open:P,setOpen:F,openMobile:k,setOpenMobile:A,isMobile:b,toggleSidebar:I,variant:i,side:a,collapsible:o,width:C,resizable:s,minWidth:l,maxWidth:u,isResizing:T,setIsResizing:E,setWidth:j,isPeeking:D,peekable:p,startPeek:L,stopPeek:R,contained:f,animationDuration:m,registerItem:H,scrollToItem:U,scrollItemIntoView:ee}),[z,P,k,b,C,T,D]),W=ib(P,m,r,!b),ne=ib(k,m,r,b),re=b?ne:W,ie=b?`transform`:`width`,ae=(0,_.useCallback)(e=>{let t=e.target;t.closest(`[data-sidebar-wrapper]`)===e.currentTarget&&t.dataset.sidebar===`sidebar`&&e.propertyName===ie&&re()},[re,ie]);return(0,Y.jsx)(ob.Provider,{value:te,children:(0,Y.jsx)(`div`,{"data-sidebar-wrapper":``,"data-state":z,"data-side":a,onTransitionEnd:ae,style:{"--sidebar-width":B,"--sidebar-width-icon":Qy,"--sidebar-animation-duration":`${m}ms`,"--sidebar-easing":$y,...y},className:J(`group/sidebar-wrapper relative isolate flex w-full [--sidebar-active-bg:var(--color-kumo-tint)] [--sidebar-bg:var(--color-kumo-base)]`,!f&&!b&&`min-h-svh`,`has-data-[variant=inset]:bg-kumo-recessed`,T&&`select-none`,v),children:g})})}db.displayName=`Sidebar.Provider`;var fb=(0,_.forwardRef)(({className:e,contentClassName:t,children:n,fullScreenOnMobile:r=!1,...i},a)=>{let{state:o,open:s,isMobile:c,openMobile:l,setOpenMobile:u,side:d,variant:f,collapsible:p,isResizing:m,resizable:h,width:g,isPeeking:v,startPeek:y,stopPeek:b,contained:x}=sb(),S=(0,_.useCallback)(e=>{e&&(l?e.removeAttribute(`inert`):e.setAttribute(`inert`,``))},[l]),C=(0,_.useCallback)(e=>{S(e),typeof a==`function`?a(e):a&&(a.current=e)},[a,S]),w=(0,_.useRef)(null),T=(0,_.useRef)(null),E=(0,_.useRef)(!1),D=(0,_.useRef)(!1);(0,_.useEffect)(()=>{if(!c||!l)return;let e=e=>{e.key===`Escape`&&(E.current=!0,u(!1))};return document.addEventListener(`keydown`,e),()=>{document.removeEventListener(`keydown`,e)}},[c,l,u]),(0,_.useEffect)(()=>{c&&(l?(w.current=document.activeElement,E.current=!1,requestAnimationFrame(()=>{(T.current?.querySelector(rb)??T.current)?.focus()})):E.current&&w.current instanceof HTMLElement&&(w.current.focus(),E.current=!1,w.current=null))},[c,l]);let O=(0,_.useCallback)(e=>{!e.currentTarget.contains(e.relatedTarget)&&!D.current&&b()},[b]),k=(0,_.useCallback)(()=>{D.current=!0,y()},[y]),A=(0,_.useCallback)(()=>{D.current=!1,b()},[b]);if(p===`none`)return(0,Y.jsx)(`aside`,{ref:a,"data-state":`expanded`,"data-side":d,"data-variant":f,"data-sidebar":`sidebar`,style:{width:`var(--sidebar-width)`,minWidth:`var(--sidebar-width)`,maxWidth:`var(--sidebar-width)`},className:J(`relative flex h-full shrink-0 grow-0 flex-col overflow-hidden bg-(--sidebar-bg) text-kumo-default`,f===`sidebar`&&(d===`left`?`border-r border-kumo-line`:`border-l border-kumo-line`),f===`floating`&&`m-2 rounded-lg border border-kumo-line shadow-lg`,e),...i,children:n});if(c)return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`div`,{"data-sidebar-backdrop":``,className:J(x?`absolute inset-0 z-40 bg-kumo-recessed`:`fixed inset-0 z-40 bg-kumo-recessed`,`transition-opacity duration-(--sidebar-animation-duration) ease-(--sidebar-easing)`,`motion-reduce:transition-none`,l&&!r?`opacity-80`:`pointer-events-none opacity-0`),onClick:()=>{E.current=!0,u(!1)},"aria-hidden":`true`}),(0,Y.jsx)(`nav`,{ref:e=>{C(e),T.current=e},tabIndex:-1,"aria-label":`Navigation`,"aria-hidden":!l,"data-state":l?`expanded`:`collapsed`,"data-side":d,"data-variant":f,"data-collapsible":p,"data-sidebar":`sidebar`,"data-mobile":`true`,className:J(`group/sidebar inset-y-0 z-50 flex flex-col overflow-hidden`,x?`absolute`:`fixed`,r?`w-full`:`w-(--sidebar-width)`,`bg-(--sidebar-bg) text-kumo-default`,!r&&`border-r border-kumo-line`,`transition-transform duration-(--sidebar-animation-duration) ease-(--sidebar-easing)`,`motion-reduce:transition-none`,d===`left`&&`left-0`,d===`right`&&`right-0`,d===`left`&&(l?`translate-x-0`:`-translate-x-full`),d===`right`&&(l?`translate-x-0`:`translate-x-full`),e),...i,children:n})]});let j=p===`icon`?`var(--sidebar-width-icon)`:`0px`,M=h?`${g}px`:`var(--sidebar-width)`,N=s?M:j,P=s||v?M:j,F=f===`sidebar`?d===`left`?`border-r border-kumo-line`:`border-l border-kumo-line`:f===`floating`?`border border-kumo-line`:``;return(0,Y.jsx)(`aside`,{ref:a,"data-state":o,"data-side":d,"data-variant":f,"data-collapsible":p,"data-sidebar":`sidebar`,style:{width:N},className:J(`group/sidebar relative h-full shrink-0 grow-0`,`overflow-visible`,`transition-[width] duration-(--sidebar-animation-duration) ease-(--sidebar-easing)`,`motion-reduce:transition-none`,m&&`transition-none!`,f===`floating`&&`m-2 rounded-lg shadow-lg`,e),...i,children:(0,Y.jsx)(Gd,{children:(()=>{let e=_.Children.toArray(n),r=e.filter(e=>_.isValidElement(e)&&e.type?.displayName===`Sidebar.Footer`),i=e.filter(e=>!_.isValidElement(e)||e.type?.displayName!==`Sidebar.Footer`);return(0,Y.jsxs)(`div`,{"data-sidebar":`content-container`,style:{width:P},className:J(`flex h-full flex-col`,`min-w-0 overflow-hidden whitespace-nowrap`,`bg-(--sidebar-bg) text-kumo-default`,F,`transition-[width] duration-(--sidebar-animation-duration) ease-(--sidebar-easing)`,`motion-reduce:transition-none`,m&&`transition-none!`,!s&&J(x?`absolute`:`fixed`,`inset-y-0 z-40`,d===`left`&&`left-0`,d===`right`&&`right-0`),s&&`relative`,t),children:[(0,Y.jsx)(`div`,{"data-sidebar":`peek-zone`,className:`flex min-h-0 flex-1 flex-col`,onMouseEnter:k,onMouseLeave:A,onFocus:y,onBlur:O,children:i}),r]})})()})})});fb.displayName=`Sidebar`;var pb=(0,_.forwardRef)(({className:e,...t},n)=>(0,Y.jsx)(`div`,{ref:n,"data-sidebar":`header`,className:J(`flex h-[58px] shrink-0 items-center gap-1 border-b border-kumo-line`,`overflow-hidden px-3`,e),...t}));pb.displayName=`Sidebar.Header`;var mb=(0,_.forwardRef)(({className:e,children:t,...n},r)=>(0,Y.jsxs)(Oy,{ref:r,"data-sidebar":`content`,className:J(`relative min-w-0 flex-1 overflow-hidden`,e),...n,children:[(0,Y.jsx)(Vy,{tabIndex:-1,"data-sidebar":`viewport`,className:J(`h-full px-[11px] py-3 group-not-data-[state=collapsed]/sidebar:px-3.5`,`transition-[padding] duration-(--sidebar-animation-duration)`,`overflow-x-hidden!`,`[mask-image:linear-gradient(to_bottom,transparent_0,black_min(24px,var(--scroll-area-overflow-y-start,24px)),black_calc(100%-min(24px,var(--scroll-area-overflow-y-end,24px))),transparent_100%)]`),children:(0,Y.jsx)(Jy,{className:`flex min-w-0! flex-col`,children:t})}),(0,Y.jsx)(qy,{orientation:`vertical`,className:J(`flex w-1.5 touch-none p-px select-none`,`opacity-0 transition-opacity duration-150`,`data-[hovering]:opacity-100 data-[scrolling]:opacity-100`,`group-data-[state=collapsed]/sidebar:hidden`),children:(0,Y.jsx)(Yy,{className:`flex-1 rounded-full bg-kumo-line`})})]}));mb.displayName=`Sidebar.Content`;var hb=(0,_.forwardRef)(({className:e,...t},n)=>(0,Y.jsx)(`div`,{ref:n,"data-sidebar":`footer`,className:J(`flex h-12 shrink-0 items-center gap-4 overflow-hidden border-t border-kumo-line whitespace-nowrap`,`px-[11px] group-not-data-[state=collapsed]/sidebar:px-4`,`bg-(--sidebar-bg)`,`w-(--sidebar-width)`,`transition-[width,padding] duration-(--sidebar-animation-duration) ease-(--sidebar-easing)`,`motion-reduce:transition-none`,`sticky bottom-0`,`bg-clip-padding group-data-[state=collapsed]/sidebar:w-(--sidebar-width-icon)`,`group-data-[state=collapsed]/sidebar:border-r group-data-[state=collapsed]/sidebar:border-kumo-line`,e),...t}));hb.displayName=`Sidebar.Footer`;var gb=[[`w-28`,`w-40`,`w-24`],[`w-24`,`w-36`,`w-32`]],_b=(0,_.forwardRef)(({className:e,label:t=`Loading`,...n},r)=>(0,Y.jsx)(`div`,{ref:r,"data-sidebar":`loading`,role:`status`,"aria-label":t,className:J(`flex min-h-0 w-full flex-1 flex-col gap-4 px-2 py-3`,e),...n,children:gb.map((e,t)=>(0,Y.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[(0,Y.jsx)(h_,{className:`mb-1 ml-2 h-2 w-16 rounded-full group-data-[state=collapsed]/sidebar:hidden`}),e.map((e,t)=>(0,Y.jsxs)(`div`,{className:`flex min-h-8.5 items-center gap-3 rounded-lg px-3 group-data-[state=collapsed]/sidebar:justify-center group-data-[state=collapsed]/sidebar:px-0`,children:[(0,Y.jsx)(h_,{className:`size-4.5 shrink-0 rounded-md`}),(0,Y.jsx)(h_,{className:J(`h-2.5 rounded-full group-data-[state=collapsed]/sidebar:hidden`,e)})]},t))]},t))}));_b.displayName=`Sidebar.Loading`;var vb=(0,_.forwardRef)(({className:e,children:t,...n},r)=>(0,Y.jsx)(`div`,{ref:r,"data-sidebar":`group`,className:J(`flex min-w-0 flex-col gap-y-px`,e),...n,children:t}));vb.displayName=`Sidebar.Group`;var yb=(0,_.forwardRef)(({className:e,children:t,...n},r)=>(0,Y.jsx)(`div`,{ref:r,"data-sidebar":`group-label`,className:J(`grid overflow-hidden`,`transition-[grid-template-rows,margin,border-color] duration-(--sidebar-animation-duration) ease-(--sidebar-easing)`,`group-data-[mobile=true]/sidebar:transition-none`,`my-3 grid-rows-[0fr] border-b border-kumo-line`,`[[data-sidebar=group]:first-child_&]:my-0 [[data-sidebar=group]:first-child_&]:border-transparent`,`group-not-data-[state=collapsed]/sidebar:my-0 group-not-data-[state=collapsed]/sidebar:grid-rows-[1fr] group-not-data-[state=collapsed]/sidebar:border-transparent`,`group-data-[mobile=true]/sidebar:my-0 group-data-[mobile=true]/sidebar:grid-rows-[1fr] group-data-[mobile=true]/sidebar:border-transparent`,e),...n,children:(0,Y.jsx)(`div`,{className:`min-h-0 min-w-0`,children:(0,Y.jsx)(`div`,{className:J(`mt-4 mb-2 truncate px-3 text-sm font-medium text-kumo-subtle`,`[[data-sidebar=group]:first-child_&]:mt-2`),children:t})})}));yb.displayName=`Sidebar.GroupLabel`;var bb=(0,_.createContext)(!1),xb=(0,_.createContext)(!1),Sb=(0,_.forwardRef)(({className:e,...t},n)=>(0,Y.jsx)(`ul`,{ref:n,"data-sidebar":`menu`,className:J(`m-0 flex min-w-0 list-none flex-col items-stretch gap-y-px p-0`,e),...t}));Sb.displayName=`Sidebar.Menu`;var Cb=(0,_.forwardRef)(({className:e,children:t,itemId:n,...r},i)=>{let{registerItem:a}=sb(),o=(0,_.useCallback)(e=>{n&&a(n,e),typeof i==`function`?i(e):i&&(i.current=e)},[n,i,a]);return(0,Y.jsx)(bb.Provider,{value:!0,children:(0,Y.jsx)(`li`,{ref:o,"data-sidebar":`menu-item`,"data-sidebar-item-id":n,className:J(`relative group-data-[state=collapsed]/sidebar:overflow-hidden`,e),...r,children:t})})});Cb.displayName=`Sidebar.MenuItem`;var wb=(0,_.forwardRef)(({className:e,icon:t,active:n=!1,size:r=`base`,href:i,target:a,tooltip:o,itemId:s,children:c,...l},u)=>{let{state:d,peekable:f,registerItem:p}=sb(),m=Or(),h=(0,_.useContext)(bb),g=(0,_.useCallback)(e=>{s&&!h&&p(s,e)},[s,h,p]),v=(0,_.useCallback)(e=>{s&&h&&p(s,e),typeof u==`function`?u(e):u&&(u.current=e)},[s,h,u,p]),y=t?_.isValidElement(t)?t:(0,Y.jsx)(t,{className:J(`shrink-0 opacity-40`,r===`base`?`size-4`:`size-3.5`)}):null,b=(0,Y.jsxs)(`div`,{className:J(`flex min-w-0 flex-1 items-center gap-3`,`translate-x-[-3px] group-not-data-[state=collapsed]/sidebar:translate-x-0`,`transition-transform duration-(--sidebar-animation-duration)`),children:[y,(0,Y.jsx)(`span`,{className:J(`flex min-w-0 flex-1 items-center gap-2 overflow-hidden text-left`),children:_.Children.map(c,e=>typeof e==`string`||typeof e==`number`?(0,Y.jsx)(`span`,{className:`truncate`,children:e}):e)})]}),x=J(`group/menu-button relative flex w-full min-w-0 cursor-pointer items-center gap-2.5 rounded-lg outline-none`,`before:absolute before:inset-x-0 before:-inset-y-px`,r===`base`&&`min-h-8.5 px-3 py-0 text-sm font-medium`,r===`sm`&&`min-h-7 px-2 py-0 text-sm`,`text-kumo-default`,`transition-[color,box-shadow,outline] duration-(--sidebar-animation-duration)`,!n&&`hover:bg-(--sidebar-active-bg)`,n&&`bg-(--sidebar-active-bg)`,`has-[[data-active]]:bg-transparent has-[[data-active]]:hover:bg-(--sidebar-active-bg)`,`focus:outline-none focus-visible:bg-(--sidebar-active-bg) focus-visible:text-kumo-strong`,e),S,C=h?s:void 0;S=i?(0,Y.jsx)(m,{ref:v,...l,className:J(x,`no-underline!`),href:i,to:i,target:a,"data-active":n||void 0,"data-sidebar":`menu-button`,"data-sidebar-item-id":C,"data-kumo-component":`Sidebar`,"data-kumo-part":`menu-button-link`,"data-size":r,children:b}):(0,Y.jsx)(`button`,{ref:v,type:`button`,className:x,"data-active":n||void 0,"data-sidebar":`menu-button`,"data-sidebar-item-id":C,"data-kumo-component":`Sidebar`,"data-kumo-part":`menu-button`,"data-size":r,...l,children:b});let w=d===`collapsed`&&!f;return o&&(S=(0,Y.jsx)(Kd,{content:o,disabled:!w,side:`right`,render:S})),h?S:(0,Y.jsx)(`li`,{ref:g,"data-sidebar":`menu-item`,"data-sidebar-item-id":s,className:`relative group-data-[state=collapsed]/sidebar:overflow-hidden`,children:S})});wb.displayName=`Sidebar.MenuButton`;var Tb=(0,_.forwardRef)(({className:e,...t},n)=>(0,Y.jsx)(`span`,{ref:n,"data-sidebar":`menu-badge`,className:J(`inline-flex shrink-0 items-center rounded-full border border-dashed border-kumo-line`,`px-1.5 py-0.5 text-[11px]/none font-medium text-kumo-strong select-none`,`group-data-[state=collapsed]/sidebar:hidden`,e),...t}));Tb.displayName=`Sidebar.MenuBadge`;var Eb=(0,_.forwardRef)(({className:e,children:t,...n},r)=>(0,Y.jsxs)(`ul`,{ref:r,"data-sidebar":`menu-sub`,className:J(`relative m-0 flex min-w-0 list-none flex-col gap-y-px overflow-hidden p-0 pr-0 pl-7`,e),...n,children:[(0,Y.jsx)(`li`,{"aria-hidden":`true`,className:`pointer-events-none absolute inset-y-px left-[19px] z-10 block w-px bg-kumo-line`}),t]}));Eb.displayName=`Sidebar.MenuSub`;var Db=(0,_.forwardRef)(({className:e,children:t,...n},r)=>(0,Y.jsx)(xb.Provider,{value:!0,children:(0,Y.jsx)(`li`,{ref:r,"data-sidebar":`menu-sub-item`,className:J(`relative`,e),...n,children:t})}));Db.displayName=`Sidebar.MenuSubItem`;var Ob=(0,_.forwardRef)(({className:e,active:t=!1,href:n,target:r,children:i,...a},o)=>{let s=Or(),c=(0,_.useContext)(xb),l=J(`group/menu-button relative flex min-h-8.5 w-full min-w-0 cursor-pointer items-center gap-2 rounded-lg px-3 py-0 text-sm font-medium outline-none`,`before:absolute before:inset-x-0 before:-inset-y-px`,`text-kumo-default transition-[color] duration-150`,!t&&`hover:bg-(--sidebar-active-bg)`,t&&`bg-(--sidebar-active-bg)`,`focus:outline-none focus-visible:bg-(--sidebar-active-bg) focus-visible:text-kumo-strong`,e),u=(0,Y.jsx)(`span`,{className:`flex min-w-0 flex-1 items-center gap-2 overflow-hidden text-left`,children:_.Children.map(i,e=>typeof e==`string`||typeof e==`number`?(0,Y.jsx)(`span`,{className:`truncate`,children:e}):e)}),d;return d=n?(0,Y.jsx)(s,{ref:o,...a,className:J(l,`no-underline!`),href:n,to:n,target:r,"data-active":t||void 0,"data-sidebar":`menu-sub-button`,"data-kumo-component":`Sidebar`,"data-kumo-part":`menu-sub-button-link`,children:u}):(0,Y.jsx)(`button`,{ref:o,type:`button`,className:l,"data-active":t||void 0,"data-sidebar":`menu-sub-button`,"data-kumo-component":`Sidebar`,"data-kumo-part":`menu-sub-button`,...a,children:u}),c?d:(0,Y.jsx)(`li`,{"data-sidebar":`menu-sub-item`,className:`relative`,children:d})});Ob.displayName=`Sidebar.MenuSubButton`;var kb=(0,_.forwardRef)(({className:e,...t},n)=>(0,Y.jsx)(`div`,{ref:n,"data-sidebar":`separator`,className:J(`my-3 px-2`,e),...t,children:(0,Y.jsx)(`div`,{className:`border-b border-kumo-line`})}));kb.displayName=`Sidebar.Separator`;function Ab({className:e}){let{open:t}=sb();return(0,Y.jsxs)(`svg`,{width:`18`,height:`18`,viewBox:`0 0 24 24`,fill:`none`,"aria-hidden":`true`,focusable:`false`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`,className:J(`shrink-0`,e),children:[(0,Y.jsx)(`path`,{d:`M21.25 6.72v10.56a2.97 2.97 0 0 1-2.97 2.97H5.72a2.97 2.97 0 0 1-2.97-2.97V6.72a2.97 2.97 0 0 1 2.97-2.97h12.56a2.97 2.97 0 0 1 2.97 2.97`}),(0,Y.jsx)(`path`,{d:`M6.25 7.25v9.5`,className:J(`transition-transform duration-(--sidebar-animation-duration) ease-(--sidebar-easing)`,t?`translate-x-px`:`translate-x-[10.5px]`)})]})}Ab.displayName=`Sidebar.PanelIcon`;var jb=(0,_.forwardRef)(({className:e,children:t,onClick:n,...r},i)=>{let{open:a,toggleSidebar:o}=sb();return(0,Y.jsx)(`button`,{ref:i,type:`button`,"data-sidebar":`trigger`,"data-kumo-component":`Sidebar`,"data-kumo-part":`trigger`,"aria-expanded":a,"aria-label":a?`Collapse sidebar`:`Expand sidebar`,className:J(`flex size-8.5 shrink-0 cursor-pointer items-center justify-center rounded-lg`,`text-kumo-subtle hover:bg-(--sidebar-active-bg) hover:text-kumo-default`,`focus:outline-none focus-visible:ring-2 focus-visible:ring-kumo-brand focus-visible:ring-inset`,e),onClick:e=>{n?.(e),o()},...r,children:t??(0,Y.jsx)(Ab,{})})});jb.displayName=`Sidebar.Trigger`;var Mb=(0,_.forwardRef)(({className:e,onClick:t,...n},r)=>{let{setOpenMobile:i}=sb();return(0,Y.jsx)(ip,{ref:r,variant:`ghost`,shape:`square`,size:`sm`,"data-sidebar":`close`,"data-kumo-component":`Sidebar`,"data-kumo-part":`close`,"aria-label":`Close navigation`,className:J(`shrink-0`,e),onClick:e=>{t?.(e),i(!1)},...n,children:(0,Y.jsx)(Uf,{size:18})})});Mb.displayName=`Sidebar.Close`;var Nb=(0,_.forwardRef)(({className:e,...t},n)=>{let{toggleSidebar:r}=sb();return(0,Y.jsx)(`button`,{ref:n,type:`button`,"data-sidebar":`rail`,"data-kumo-component":`Sidebar`,"data-kumo-part":`rail`,"aria-label":`Toggle sidebar`,tabIndex:-1,className:J(`absolute inset-y-0 z-1 hidden w-4 -translate-x-1/2 cursor-pointer transition-all`,`after:absolute after:inset-y-0 after:left-1/2 after:w-0.5`,`hover:after:bg-kumo-brand/20`,`group-data-[side=left]/sidebar-wrapper:right-0`,`group-data-[side=right]/sidebar-wrapper:left-0`,`sm:flex`,e),onClick:r,...t})});Nb.displayName=`Sidebar.Rail`;var Pb=(0,_.forwardRef)(({className:e,...t},n)=>{let{side:r,resizable:i,setIsResizing:a,setWidth:o,setOpen:s,open:c,minWidth:l,width:u,maxWidth:d}=sb(),f=(0,_.useRef)(0),p=(0,_.useRef)(0),m=(0,_.useRef)(!1);return i?(0,Y.jsx)(`button`,{ref:n,type:`button`,"aria-label":`Resize sidebar`,tabIndex:0,"data-sidebar":`resize-handle`,className:J(`absolute inset-y-0 z-2 hidden w-3 cursor-col-resize sm:block`,`after:absolute after:inset-y-0 after:w-0.5`,`after:bg-transparent after:transition-colors`,`hover:after:bg-kumo-hairline focus-visible:after:bg-kumo-hairline active:after:bg-kumo-hairline`,`focus:outline-none`,r===`left`&&`right-0 after:right-0`,r===`right`&&`left-0 after:left-0`,e),onPointerDown:e=>{e.preventDefault(),a(!0),f.current=e.clientX,m.current=!c;let t=e.currentTarget.closest(`[data-sidebar-wrapper]`)?.querySelector(`[data-sidebar='sidebar']`);p.current=t?.getBoundingClientRect().width??0;let n=()=>{a(!1),document.removeEventListener(`pointermove`,i),document.removeEventListener(`pointerup`,u)},i=e=>{let t=r===`left`?e.clientX-f.current:f.current-e.clientX,n=p.current+t;m.current?n>=l&&(m.current=!1,s(!0),o(n)):n<l?(s(!1),m.current=!0):o(n)},u=()=>{n()};document.addEventListener(`pointermove`,i),document.addEventListener(`pointerup`,u)},onKeyDown:e=>{let t=r===`left`?`ArrowRight`:`ArrowLeft`,n=r===`left`?`ArrowLeft`:`ArrowRight`;if(e.key===t)e.preventDefault(),c?o(Math.min(u+10,d)):(s(!0),o(l));else if(e.key===n){e.preventDefault();let t=u-10;t<l?s(!1):o(t)}else e.key===`Home`?(e.preventDefault(),s(!1)):e.key===`End`&&(e.preventDefault(),s(!0),o(d))},...t}):null});Pb.displayName=`Sidebar.ResizeHandle`;var Fb=(e,{isMobile:t,openMobile:n,state:r})=>e&&(t?n:r!==`collapsed`),Ib=(0,_.createContext)({contentId:``,isOpen:!0,isCollapsible:!1,autoScrollOnOpen:!1,toggle:()=>{},completeOpenChange:()=>{}}),Lb=(0,_.forwardRef)(({defaultOpen:e=!1,open:t,onOpenChange:n,onOpenChangeComplete:r,autoScrollOnOpen:i=!1,className:a,children:o,...s},c)=>{let l=sb(),{animationDuration:u}=l,[d,f]=(0,_.useState)(e),p=t??d,m=Fb(p,l),h=(0,_.useId)(),g=(0,_.useRef)(!1),v=(0,_.useCallback)(()=>{let e=!p;f(e),n?.(e),g.current=!1},[p,n]),y=ib(m,u,r),b=(0,_.useMemo)(()=>({contentId:h,isOpen:p,isCollapsible:!0,autoScrollOnOpen:i,toggle:v,completeOpenChange:y}),[h,p,i,v,y]),x=(0,_.useCallback)(e=>{!p&&e.target.matches(`:focus-visible`)&&(g.current=!0,f(!0),n?.(!0))},[p,n]),S=(0,_.useCallback)(e=>{g.current&&!e.currentTarget.contains(e.relatedTarget)&&!e.currentTarget.querySelector(`[data-active]`)&&(g.current=!1,f(!1),n?.(!1))},[n]);return(0,Y.jsx)(Ib.Provider,{value:b,children:(0,Y.jsx)(`div`,{ref:c,"data-open":p||void 0,className:J(`min-w-0`,a),onFocus:x,onBlur:S,...s,children:o})})});Lb.displayName=`Sidebar.Collapsible`;function Rb({render:e}){let{contentId:t,isOpen:n,toggle:r}=(0,_.useContext)(Ib);return _.cloneElement(e,{"aria-expanded":n,"aria-controls":t,"data-open":n||void 0,onClick:t=>{let n=e.props.onClick;n?.(t),r()}})}Rb.displayName=`Sidebar.CollapsibleTrigger`;var zb=(0,_.forwardRef)(({className:e,children:t,onTransitionEnd:n,...r},i)=>{let{contentId:a,isOpen:o,autoScrollOnOpen:s,completeOpenChange:c}=(0,_.useContext)(Ib),l=sb(),{animationDuration:u}=l,d=(0,_.useRef)(null),f=Fb(o,l);(0,_.useEffect)(()=>{if(!f||!s)return;let e=window.setTimeout(()=>{let e=window.matchMedia(`(prefers-reduced-motion: reduce)`).matches;d.current?.scrollIntoView({block:`nearest`,behavior:e?`auto`:`smooth`})},u);return()=>window.clearTimeout(e)},[f,s,u]);let p=(0,_.useCallback)(e=>{e&&(f?e.removeAttribute(`inert`):e.setAttribute(`inert`,``))},[f]),m=(0,_.useCallback)(e=>{d.current=e,p(e),typeof i==`function`?i(e):i&&(i.current=e)},[i,p]),h=(0,_.useCallback)(e=>{n?.(e),e.target===e.currentTarget&&e.propertyName===`grid-template-rows`&&c()},[c,n]);return(0,Y.jsx)(`div`,{ref:m,id:a,role:`region`,"aria-hidden":!f,onTransitionEnd:h,className:J(`grid`,`transition-[grid-template-rows] duration-(--sidebar-animation-duration) ease-(--sidebar-easing)`,`motion-reduce:transition-none`,f?`grid-rows-[1fr]`:`grid-rows-[0fr]`,e),...r,children:(0,Y.jsx)(`div`,{className:`overflow-hidden`,children:t})})});zb.displayName=`Sidebar.CollapsibleContent`;function Bb({className:e}){let{isOpen:t,isCollapsible:n}=(0,_.useContext)(Ib);return(0,Y.jsx)(Tf,{size:12,weight:`bold`,className:J(`ml-auto shrink-0 opacity-40 transition-[transform,rotate,opacity] duration-200 group-hover/menu-button:opacity-100`,n&&t&&`rotate-90`,`group-data-[state=collapsed]/sidebar:hidden`,e)})}Bb.displayName=`Sidebar.MenuChevron`;var Vb=(0,_.createContext)(``),Hb=(0,_.forwardRef)(({activeKey:e,direction:t=`left`,className:n,children:r,...i},a)=>{let o=_.Children.toArray(r).findIndex(t=>_.isValidElement(t)&&t.props.value===e),s=typeof window<`u`&&window.matchMedia(`(prefers-reduced-motion: reduce)`).matches,c=o>0?`-${o*100}%`:`0%`;return(0,Y.jsx)(Vb.Provider,{value:e,children:(0,Y.jsx)(`div`,{ref:a,"data-sidebar":`sliding-views`,className:J(`flex min-h-0 max-w-(--sidebar-width) flex-1 overflow-hidden`,n),...i,children:(0,Y.jsx)(`div`,{className:`flex min-h-0 w-full shrink-0`,style:{transform:`translateX(${c})`,transition:s?`none`:`transform var(--sidebar-animation-duration) var(--sidebar-easing)`},children:r})})})});Hb.displayName=`Sidebar.SlidingViews`;var Ub=(0,_.forwardRef)(({value:e,className:t,children:n,...r},i)=>{let a=(0,_.useContext)(Vb)===e,o=(0,_.useCallback)(e=>{e&&(a?e.removeAttribute(`inert`):e.setAttribute(`inert`,``))},[a]),s=(0,_.useCallback)(e=>{o(e),typeof i==`function`?i(e):i&&(i.current=e)},[i,o]);return(0,Y.jsx)(`div`,{ref:s,"data-sidebar":`sliding-view`,"data-value":e,"aria-hidden":!a,className:J(`flex min-h-0 w-full shrink-0 flex-col`,!a&&`pointer-events-none`,t),...r,children:n})});Ub.displayName=`Sidebar.SlidingView`;var Wb=Object.assign(fb,{Provider:db,Header:pb,Content:mb,Footer:hb,Loading:_b,Group:vb,GroupLabel:yb,Menu:Sb,MenuItem:Cb,MenuButton:wb,MenuBadge:Tb,MenuSub:Eb,MenuSubItem:Db,MenuSubButton:Ob,Separator:kb,Trigger:jb,Close:Mb,Rail:Nb,ResizeHandle:Pb,MenuChevron:Bb,Collapsible:Lb,CollapsibleTrigger:Rb,CollapsibleContent:zb,SlidingViews:Hb,SlidingView:Ub}),Gb=g();function Kb(e){return e.agent.id??qb(e)}function qb(e){return e?.agent.name??e?.agent.id??e?.agent.kind??`adapter`}var Jb=J(`text-[13px] [&_td]:px-3 [&_td]:py-1.5 [&_tbody_tr]:border-t [&_tbody_tr]:border-kumo-hairline`,`[&_th]:px-3 [&_th]:py-1.5 [&_th]:text-xs [&_th]:font-medium [&_th]:whitespace-nowrap [&_th]:text-kumo-subtle`),Yb=`[&_td]:whitespace-nowrap`;function Xb({children:e,className:t}){return(0,Y.jsx)(d_,{className:J(`data-table overflow-x-auto p-0`,t),children:(0,Y.jsx)($,{className:J(Jb,Yb),children:e})})}function Zb({children:e,wrap:t=!1}){return(0,Y.jsx)(`div`,{className:`nested overflow-x-auto rounded-md border border-kumo-hairline bg-kumo-base`,children:(0,Y.jsx)($,{className:J(Jb,!t&&Yb),children:e})})}function Qb({colSpan:e,children:t}){return(0,Y.jsx)($.Row,{children:(0,Y.jsx)($.Cell,{colSpan:e,className:`text-kumo-subtle`,children:t})})}var $b=`table-link cursor-pointer text-left font-medium text-kumo-link hover:underline focus-visible:outline-2 focus-visible:outline-kumo-brand rounded-sm`,ex=`font-mono text-xs`;function tx({entries:e,selected:t=!1}){let n=e[0];return(0,Y.jsxs)($.Row,{variant:t?`selected`:`default`,"data-agent":Kb(n),children:[(0,Y.jsx)($.Cell,{className:ex,children:n.agent.id??`—`}),(0,Y.jsx)($.Cell,{className:`font-medium`,children:qb(n)}),(0,Y.jsx)($.Cell,{children:n.agent.kind}),(0,Y.jsx)($.Cell,{children:n.agent.runtimes.map(e=>`${e.name} (${e.kind})`).join(`, `)||`adapter default`}),(0,Y.jsx)($.Cell,{className:`tabular-nums`,children:e.length})]})}function nx({message:e,description:t}){return(0,Y.jsx)(ly,{size:`sm`,title:e,description:t,className:`py-12`})}function rx({catalog:e,selectedAgent:t}){let n=(0,_.useMemo)(()=>{let t=new Map;for(let n of e){let e=Kb(n);t.set(e,[...t.get(e)??[],n])}return[...t.values()]},[e]);return(0,_.useEffect)(()=>{t&&document.querySelector(`[data-agent="${CSS.escape(t)}"]`)?.scrollIntoView({block:`center`})},[t,n]),n.length?(0,Y.jsxs)(Xb,{children:[(0,Y.jsx)($.Header,{variant:`compact`,children:(0,Y.jsxs)($.Row,{children:[(0,Y.jsx)($.Head,{children:`ID`}),(0,Y.jsx)($.Head,{children:`Agent`}),(0,Y.jsx)($.Head,{children:`Kind`}),(0,Y.jsx)($.Head,{children:`Runtimes`}),(0,Y.jsx)($.Head,{children:`Evals`})]})}),(0,Y.jsx)($.Body,{children:n.map(e=>(0,Y.jsx)(tx,{entries:e,selected:Kb(e[0])===t},Kb(e[0])))})]}):(0,Y.jsx)(nx,{message:`No agents are registered.`})}function ix({items:e}){return(0,Y.jsx)(`dl`,{className:`grid grid-cols-[max-content_minmax(0,1fr)] gap-x-4 gap-y-1 text-[13px]`,children:e.map(([e,t])=>(0,Y.jsxs)(`div`,{className:`contents`,children:[(0,Y.jsx)(`dt`,{className:`text-kumo-subtle`,children:e}),(0,Y.jsx)(`dd`,{className:`min-w-0 break-words text-kumo-default`,children:t})]},e))})}function ax({catalog:e,path:t}){let n=e.find(e=>e.path===t);return n?(0,Y.jsxs)(d_,{className:`flex max-w-3xl flex-col gap-3 p-4`,children:[(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`h2`,{className:`text-base font-semibold text-kumo-strong`,children:n.name??n.id}),(0,Y.jsx)(`p`,{className:`${ex} text-kumo-subtle`,children:n.path})]}),(0,Y.jsx)(ix,{items:[[`Agent`,qb(n)],[`Runtimes`,n.agent.runtimes.map(e=>`${e.name} (${e.kind})`).join(`, `)||`default`],[`Trials`,n.trialCount],[`Scorers`,n.scorers.map(e=>`${e.name} (${e.kind})`).join(`, `)||`none`],[`Fixtures`,n.fixtures.map(e=>e.source).join(`, `)||`none`]]})]}):(0,Y.jsx)(nx,{message:`Eval not found: ${t}`})}function ox({fixture:e}){return(0,Y.jsxs)($.Row,{children:[(0,Y.jsx)($.Cell,{className:ex,children:e.source}),(0,Y.jsx)($.Cell,{className:ex,children:e.destination??`—`}),(0,Y.jsx)($.Cell,{children:e.visibility??`dynamic`}),(0,Y.jsx)($.Cell,{className:ex,children:e.path})]})}function sx({catalog:e}){let t=e.flatMap(e=>e.fixtures.map(t=>({...t,path:e.path})));return t.length?(0,Y.jsxs)(Xb,{children:[(0,Y.jsx)($.Header,{variant:`compact`,children:(0,Y.jsxs)($.Row,{children:[(0,Y.jsx)($.Head,{children:`Source`}),(0,Y.jsx)($.Head,{children:`Destination`}),(0,Y.jsx)($.Head,{children:`Visibility`}),(0,Y.jsx)($.Head,{children:`Used by`})]})}),(0,Y.jsx)($.Body,{children:t.map((e,t)=>(0,Y.jsx)(ox,{fixture:e},`${e.path}-${t}`))})]}):(0,Y.jsx)(nx,{message:`No fixtures are registered.`})}function cx({label:e,noun:t,page:n,pageSize:r,total:i,onPage:a}){if(i<=r)return null;let o=n*r+1,s=Math.min((n+1)*r,i);return(0,Y.jsx)(`nav`,{className:`pager flex items-center justify-end`,"aria-label":e,children:(0,Y.jsxs)(Fv,{page:n+1,setPage:e=>a(e-1),perPage:r,totalCount:i,children:[(0,Y.jsx)(Fv.Info,{children:()=>(0,Y.jsxs)(`span`,{className:`text-xs text-kumo-subtle tabular-nums`,children:[t,` `,o,`–`,s,` of `,i]})}),(0,Y.jsx)(Fv.Controls,{})]})})}function lx(e,t,n){let r=t.trim().toLowerCase();return r?e.flatMap(e=>{if(e.label.toLowerCase().includes(r))return[e];let t=e.values.filter(t=>t.label.toLowerCase().includes(r)||n.getAll(e.key).includes(t.key));return t.length?[{...e,values:t}]:[]}):[...e]}var ux=(e,...t)=>!e||t.some(t=>t.includes(e));function dx({facets:e,search:t,archivedCount:n=0,onToggleFacet:r,onField:i,onClear:a}){let[o,s]=(0,_.useState)(()=>typeof window>`u`||window.matchMedia(`(min-width: 901px)`).matches),[c,l]=(0,_.useState)(``),u=c.trim().toLowerCase(),d=lx(e,c,t),f=ux(u,`date`,`from`,`to`,`started`),p=n>0&&ux(u,`archived`,`removed`),m=[...t.keys()].filter(e=>e!==`q`).length;return(0,Y.jsxs)(`section`,{"aria-label":`Run filters`,className:`runs-filter-panel shrink-0 rounded-lg border border-kumo-line bg-kumo-base lg:w-72`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-2`,children:[(0,Y.jsxs)(`button`,{type:`button`,"aria-expanded":o,className:`flex shrink-0 cursor-pointer items-center gap-1.5 text-[13px] font-semibold text-kumo-strong select-none`,onClick:()=>s(e=>!e),children:[(0,Y.jsx)(Tf,{"aria-hidden":!0,className:`size-3 text-kumo-subtle transition-transform ${o?`rotate-90`:``}`}),(0,Y.jsx)(Pf,{"aria-hidden":!0,className:`size-3.5 text-kumo-subtle`}),`Filters`,m?` (${m} active)`:``]}),(0,Y.jsx)($m,{type:`search`,size:`xs`,"aria-label":`Search filters`,placeholder:`Search filters`,value:c,className:`min-w-0 flex-1`,onChange:e=>{l(e.target.value),e.target.value&&s(!0)}}),(0,Y.jsx)(ip,{size:`xs`,variant:`ghost`,shape:`square`,className:`clear-filters shrink-0`,icon:(0,Y.jsx)(Ff,{}),"aria-label":`Clear filters`,title:`Clear filters`,disabled:!m,onClick:a})]}),o?(0,Y.jsxs)(`div`,{className:`flex flex-col gap-4 border-t border-kumo-hairline px-3 py-3`,children:[d.map(e=>(0,Y.jsxs)(`fieldset`,{className:`flex min-w-0 flex-col gap-1`,children:[(0,Y.jsx)(`legend`,{className:`mb-1 text-xs font-medium text-kumo-subtle`,children:e.label}),e.values.map(n=>(0,Y.jsx)(Rm,{className:`runs-choice`,checked:t.getAll(e.key).includes(n.key),onCheckedChange:()=>r(e.key,n.key),label:(0,Y.jsxs)(`span`,{className:`flex min-w-0 flex-1 items-baseline justify-between gap-2 text-[13px]`,children:[(0,Y.jsx)(`span`,{className:`truncate`,children:n.label}),(0,Y.jsx)(`span`,{className:`text-xs text-kumo-subtle tabular-nums`,children:n.count})]})},n.key))]},e.key)),f?(0,Y.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,Y.jsx)($m,{type:`date`,size:`sm`,label:`From`,value:t.get(`from`)??``,onChange:e=>i(`from`,e.target.value)}),(0,Y.jsx)($m,{type:`date`,size:`sm`,label:`To`,value:t.get(`to`)??``,onChange:e=>i(`to`,e.target.value)})]}):null,p?(0,Y.jsx)(Rm,{className:`runs-choice`,checked:t.get(`archived`)===`show`,onCheckedChange:e=>i(`archived`,e?`show`:``),label:(0,Y.jsxs)(`span`,{className:`flex min-w-0 flex-1 items-baseline justify-between gap-2 text-[13px]`,children:[(0,Y.jsx)(`span`,{children:`Show archived`}),(0,Y.jsx)(`span`,{className:`text-xs text-kumo-subtle tabular-nums`,children:n})]})}):null,!d.length&&!f&&!p?(0,Y.jsxs)(`p`,{className:`text-[13px] text-kumo-subtle`,children:[`No filters match “`,c,`”.`]}):null]}):null]})}function fx({label:e,placeholder:t,value:n,count:r,onChange:i}){return(0,Y.jsxs)(`div`,{className:`search-field flex min-w-0 flex-wrap items-center gap-3`,children:[(0,Y.jsx)($m,{type:`search`,size:`sm`,"aria-label":e,placeholder:t,value:n,className:`w-full sm:w-80`,onChange:e=>i(e.target.value)}),(0,Y.jsx)(`span`,{className:`search-count text-xs text-kumo-subtle tabular-nums`,children:r})]})}function px(e,t){let[n,r]=(0,_.useState)(e);return{sort:n,toggleSort:e=>{r(t=>t.key===e?{key:e,direction:t.direction===`asc`?`desc`:`asc`}:{key:e,direction:`asc`}),t?.()}}}function mx({label:e,sortKey:t,sort:n,onSort:r,sticky:i}){let a=n.key===t,o=a?n.direction===`asc`?`ascending`:`descending`:void 0,s=a?n.direction===`asc`?Ef:Cf:Df;return(0,Y.jsx)($.Head,{"aria-sort":o,sticky:i,children:(0,Y.jsxs)(`button`,{type:`button`,className:`table-sort inline-flex items-center gap-1 whitespace-nowrap rounded font-medium hover:text-kumo-strong focus-visible:outline-2 focus-visible:outline-kumo-brand`,onClick:()=>r(t),children:[e,(0,Y.jsx)(s,{"aria-hidden":!0,className:a?`size-3`:`size-3 text-kumo-inactive`})]})})}function hx(e,t,n){return(0,_.useMemo)(()=>{let r=[...e];return r.sort((e,r)=>{let i=n(e,t.key),a=n(r,t.key),o=typeof i==`number`&&typeof a==`number`?i-a:String(i??``).localeCompare(String(a??``),void 0,{numeric:!0,sensitivity:`base`});return t.direction===`asc`?o:-o}),r},[e,t,n])}var gx={passed:`success`,failed:`error`,errored:`warning`,error:`warning`};function _x({status:e}){return(0,Y.jsx)(`span`,{className:`inline-flex`,"data-status":e,children:(0,Y.jsx)(Tr,{appearance:`dot`,variant:gx[e]??`neutral`,children:e})})}function vx({run:e,trials:t,onTrial:n}){let{sort:r,toggleSort:i}=px({key:`index`,direction:`asc`}),a=(0,_.useMemo)(()=>[...new Set(t.flatMap(e=>(e.scores??[]).map(e=>e.name)))].sort(),[t]),o=hx(t,r,(e,t)=>t.startsWith(`score:`)?(e.scores??[]).find(e=>e.name===t.slice(6))?.value:{index:e.index,status:e.status,aggregate:e.score,runtime:e.durationMs,started:e.startedAt}[t]);return(0,Y.jsxs)(Zb,{children:[(0,Y.jsx)($.Header,{variant:`compact`,children:(0,Y.jsxs)($.Row,{children:[(0,Y.jsx)(mx,{label:`Trial`,sortKey:`index`,sort:r,onSort:i}),(0,Y.jsx)(mx,{label:`Status`,sortKey:`status`,sort:r,onSort:i}),(0,Y.jsx)(mx,{label:`Aggregate`,sortKey:`aggregate`,sort:r,onSort:i}),a.map(e=>(0,Y.jsx)(mx,{label:e,sortKey:`score:${e}`,sort:r,onSort:i},e)),(0,Y.jsx)(mx,{label:`Runtime`,sortKey:`runtime`,sort:r,onSort:i}),(0,Y.jsx)(mx,{label:`Started`,sortKey:`started`,sort:r,onSort:i}),(0,Y.jsx)($.Head,{className:`text-right`,children:`Details`})]})}),(0,Y.jsxs)($.Body,{children:[o.map(t=>(0,Y.jsxs)($.Row,{children:[(0,Y.jsx)($.Cell,{className:`tabular-nums`,children:t.index+1}),(0,Y.jsx)($.Cell,{children:(0,Y.jsx)(_x,{status:t.status})}),(0,Y.jsx)($.Cell,{className:`tabular-nums`,children:t.score??`—`}),a.map(e=>(0,Y.jsx)($.Cell,{className:`tabular-nums`,children:(t.scores??[]).find(t=>t.name===e)?.value??`—`},e)),(0,Y.jsx)($.Cell,{className:`tabular-nums`,children:t.durationMs===void 0?`—`:`${t.durationMs}ms`}),(0,Y.jsx)($.Cell,{className:`whitespace-nowrap tabular-nums`,children:new Date(t.startedAt).toLocaleString()}),(0,Y.jsx)($.Cell,{className:`text-right`,children:(0,Y.jsxs)(ip,{size:`xs`,variant:`secondary`,className:`view-trial`,onClick:()=>n(e,t),children:[`View trial`,(0,Y.jsx)(bf,{"aria-hidden":!0,className:`size-3`})]})})]},t.id)),o.length?null:(0,Y.jsx)(Qb,{colSpan:a.length+6,children:`No trials saved yet.`})]})]})}function yx(e){if(e===null||typeof e==`string`||typeof e==`boolean`||typeof e==`number`&&Number.isFinite(e))return JSON.stringify(e);if(Array.isArray(e))return`[${e.map(yx).join(`,`)}]`;if(typeof e==`object`&&Object.getPrototypeOf(e)===Object.prototype)return`{${Object.keys(e).sort().map(t=>`${JSON.stringify(t)}:${yx(e[t])}`).join(`,`)}}`;throw Error(`Matrix parameters must be finite JSON values`)}var bx=`@missing`,xx=e=>`p.${e}`;function Sx(e,t,n){let r=e.get(t);r?r.count++:e.set(t,{key:t,label:n,count:1})}function Cx(e){return[{key:`eval`,label:`Eval`},{key:`matrix`,label:`Matrix`},{key:`status`,label:`Status`},...[...new Set(e.flatMap(e=>Object.keys(e.parameters??{})))].sort().map(e=>({key:xx(e),label:e}))].map(({key:t,label:n})=>{let r=new Map;for(let n of e){let e=t===`eval`?n.evalId:t===`matrix`?n.matrixId:t===`status`?n.status:n.parameters?.[t.slice(2)],i=t===`eval`||t===`status`||(t===`matrix`?n.matrixId!==void 0:Object.hasOwn(n.parameters??{},t.slice(2)));Sx(r,i?yx(e):bx,i?String(typeof e==`string`?e:JSON.stringify(e)):`Missing`)}return{key:t,label:n,values:[...r.values()].sort((e,t)=>e.label.localeCompare(t.label,void 0,{numeric:!0}))}})}function wx(e,t={}){let n=new URLSearchParams;n.append(`eval`,yx(e));for(let[e,r]of Object.entries(t))r!=null&&n.append(xx(e),yx(r));return`/runs?${n}`}function Tx(e,t){let n=[...t.keys()].filter(e=>[`eval`,`matrix`,`status`].includes(e)||e.startsWith(`p.`)),r=t.get(`from`),i=t.get(`to`);return e.filter(e=>r&&e.startedAt.slice(0,10)<r||i&&e.startedAt.slice(0,10)>i?!1:n.every(n=>{let r=t.getAll(n),i=n===`eval`||n===`status`||(n===`matrix`?e.matrixId!==void 0:Object.hasOwn(e.parameters??{},n.slice(2))),a=n===`eval`?e.evalId:n===`matrix`?e.matrixId:n===`status`?e.status:e.parameters?.[n.slice(2)],o=i?yx(a):bx;return r.includes(o)}))}function Ex(e,t){let[n,r]=(0,_.useState)(()=>new URLSearchParams),i=e??n,a=t??r,o=i.get(`q`)??``,[s,c]=(0,_.useState)(o);return(0,_.useEffect)(()=>c(o),[o]),(0,_.useEffect)(()=>{if(s===o)return;let e=setTimeout(()=>{let e=new URLSearchParams(i);s?e.set(`q`,s):e.delete(`q`),a(e)},250);return()=>clearTimeout(e)},[s,o,i,a]),{activeSearch:i,query:s,setQuery:c,setField:(e,t)=>{let n=new URLSearchParams(i);t?n.set(e,t):n.delete(e),a(n)},toggleFacet:(e,t)=>{let n=new URLSearchParams(i),r=n.getAll(e);n.delete(e);for(let i of r.filter(e=>e!==t))n.append(e,i);r.includes(t)||n.append(e,t),a(n)},clearFilters:()=>a(new URLSearchParams)}}function Dx(e,t,n){let[r,i]=(0,_.useState)({});return(0,_.useEffect)(()=>{if(!n||!t.some(e=>e.id===n))return;let r=!0;return e.listTrials(n).then(e=>{r&&i(t=>({...t,[n]:e}))}),()=>{r=!1}},[e,t,n]),{trials:r,loadTrials:t=>{r[t]||e.listTrials(t).then(e=>i(n=>({...n,[t]:e})))}}}var Ox=50,kx=9;function Ax(e){return typeof e==`string`?e:JSON.stringify(e)??String(e)}function jx(e){return[...new Set(e.flatMap(e=>Object.keys(e.parameters??{})))].sort()}function Mx(e,t,n,r){let i=t.trim().toLowerCase().split(/\s+/).filter(Boolean);return i.length?e.filter(e=>{let t=r.find(t=>t.id===e.evalId),a=n.find(t=>t.id===e.suiteId),o=Object.entries(e.parameters??{}).flatMap(([e,t])=>[e,Ax(t)]),s=[e.id,e.evalId,t?.name,e.suiteId,a?.name,e.matrixId,t?.agent.name,t?.agent.kind,e.status,e.score,e.startedAt,...o].map(Ax).join(` `).toLowerCase();return i.every(e=>s.includes(e))}):[...e]}function Nx({api:e,runs:t,suites:n,catalog:r,onTrial:i,onOpenRun:a,selectedRunId:o,search:s,onSearchChange:c}){let{activeSearch:l,query:u,setQuery:d,setField:f,toggleFacet:p,clearFilters:m}=Ex(s,c),{trials:h,loadTrials:g}=Dx(e,t,o),v=l.get(`archived`)===`show`,y=t.filter(e=>e.archived).length,b=(0,_.useMemo)(()=>v?t:t.filter(e=>!e.archived),[t,v]),x=(0,_.useMemo)(()=>Cx(b),[b]),S=(0,_.useMemo)(()=>jx(b),[b]),C=Mx(Tx(b,l),u,n,r),[w,T]=(0,_.useState)(0),{sort:E,toggleSort:D}=px({key:`started`,direction:`desc`},()=>T(0)),O=e=>r.find(t=>t.id===e.evalId),k=e=>n.find(t=>t.id===e.suiteId)?.name,A=hx(C,E,(e,t)=>Px(e,t,O(e),k(e))),j=Math.max(1,Math.ceil(A.length/Ox)),M=Math.min(w,j-1),N=A.slice(M*Ox,(M+1)*Ox),P=kx+S.length,F=e=>{a(e),g(e.id)},I=(e,t,n)=>(0,Y.jsx)(mx,{label:e,sortKey:t,sort:E,onSort:D,sticky:n});return t.length?(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-4 lg:flex-row lg:items-start`,children:[(0,Y.jsx)(dx,{facets:x,search:l,archivedCount:y,onToggleFacet:p,onField:f,onClear:m}),(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-2`,children:[(0,Y.jsx)(fx,{label:`Filter runs`,placeholder:`Eval, parameter, agent or status`,value:u,count:`${A.length} of ${b.length} runs`,onChange:d}),(0,Y.jsxs)(Xb,{children:[(0,Y.jsx)($.Header,{variant:`compact`,children:(0,Y.jsxs)($.Row,{children:[I(`Run`,`run`,`left`),I(`Status`,`status`),I(`Eval`,`eval`),S.map(e=>(0,Y.jsx)(mx,{label:e,sortKey:`param:${e}`,sort:E,onSort:D},e)),I(`Agent`,`agent`),I(`Trials`,`trials`),I(`Score`,`score`),I(`Runtime`,`runtime`),I(`Started`,`started`),I(`Suite`,`suite`)]})}),(0,Y.jsxs)($.Body,{children:[N.map(e=>{let t=o===e.id;return(0,Y.jsxs)(_.Fragment,{children:[(0,Y.jsx)(Fx,{run:e,evaluation:O(e),suiteName:k(e),parameterColumns:S,expanded:t,onToggle:()=>F(e)}),t?(0,Y.jsx)($.Row,{children:(0,Y.jsx)($.Cell,{colSpan:P,className:`bg-kumo-elevated`,children:(0,Y.jsx)(vx,{run:e,trials:h[e.id]??[],onTrial:i})})}):null]},e.id)}),A.length?null:(0,Y.jsx)(Qb,{colSpan:P,children:(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-2`,children:[`No matching runs.`,(0,Y.jsx)(ip,{size:`xs`,variant:`ghost`,onClick:m,children:`Clear filters`})]})})]})]}),(0,Y.jsx)(cx,{label:`Run pages`,noun:`Runs`,page:M,pageSize:Ox,total:A.length,onPage:T})]})]}):(0,Y.jsx)(nx,{message:`No runs yet. Select an eval or suite to start one.`})}function Px(e,t,n,r){if(t.startsWith(`param:`)){let n=e.parameters?.[t.slice(6)];return n===void 0?void 0:typeof n==`number`?n:Ax(n)}return{run:e.id,suite:r??e.suiteId,eval:n?.name??e.evalId,agent:n?.agent.name??n?.agent.kind??`Unnamed agent`,status:e.status,trials:e.completedTrials,score:e.score,runtime:e.durationMs,started:e.startedAt}[t]}function Fx({run:e,evaluation:t,suiteName:n,parameterColumns:r,expanded:i,onToggle:a}){return(0,Y.jsxs)($.Row,{variant:i?`selected`:`default`,children:[(0,Y.jsx)($.Cell,{sticky:`left`,children:(0,Y.jsx)(`button`,{type:`button`,className:`${$b} ${ex}`,"aria-expanded":i,title:e.id,onClick:a,children:e.id.slice(0,8)})}),(0,Y.jsx)($.Cell,{children:(0,Y.jsx)(_x,{status:e.status})}),(0,Y.jsxs)($.Cell,{className:`font-medium`,children:[t?.name??e.evalId,e.archived?(0,Y.jsx)(`span`,{className:`ml-2 rounded border border-kumo-line px-1 text-[11px] font-normal text-kumo-subtle`,title:`This eval is no longer in the project (evalkit tidy)`,children:`archived`}):null]}),r.map(t=>(0,Y.jsx)($.Cell,{className:ex,children:Object.hasOwn(e.parameters??{},t)?Ax(e.parameters?.[t]):`—`},t)),(0,Y.jsx)($.Cell,{children:t?.agent.name??t?.agent.kind??`Unnamed agent`}),(0,Y.jsxs)($.Cell,{className:`tabular-nums`,children:[e.completedTrials,`/`,e.requestedTrials]}),(0,Y.jsx)($.Cell,{className:`tabular-nums`,children:e.score??`—`}),(0,Y.jsx)($.Cell,{className:`tabular-nums`,children:e.durationMs===void 0?`—`:`${e.durationMs}ms`}),(0,Y.jsx)($.Cell,{className:`whitespace-nowrap tabular-nums`,children:new Date(e.startedAt).toLocaleString()}),(0,Y.jsx)($.Cell,{children:n??`—`})]})}function Ix({message:e,title:t}){return(0,Y.jsx)(gp,{variant:`error`,size:`sm`,role:`alert`,title:t,description:e})}function Lx({id:e,evaluation:t,parameters:n=[],trials:r,onRun:i,runDisabled:a=!1,onOpen:o,status:s,cellParameters:c}){let l=wx(t?.id??e,c),u=t?.name??e,d=t?.path??e;return(0,Y.jsxs)($.Row,{children:[(0,Y.jsx)($.Cell,{children:(0,Y.jsxs)(`div`,{className:`flex flex-col`,children:[o?(0,Y.jsx)(`button`,{type:`button`,className:$b,onClick:o,children:u}):(0,Y.jsx)(`span`,{className:`font-medium`,children:u}),d===u?null:(0,Y.jsx)(`span`,{className:`${ex} text-kumo-subtle`,children:d})]})}),n.map((e,t)=>(0,Y.jsx)($.Cell,{className:ex,children:typeof e==`string`?e:JSON.stringify(e)},t)),(0,Y.jsx)($.Cell,{children:t?(0,Y.jsx)(Di,{href:`/agents?agent=${encodeURIComponent(Kb(t))}`,children:qb(t)}):qb(t)}),(0,Y.jsx)($.Cell,{children:t?.agent.runtimes.map(e=>e.name).join(`, `)||`default`}),(0,Y.jsx)($.Cell,{className:`tabular-nums`,children:r??t?.trialCount??`—`}),(0,Y.jsx)($.Cell,{children:s?(0,Y.jsx)(Di,{href:l,title:`Show these runs`,children:(0,Y.jsx)(_x,{status:s})}):`—`}),(0,Y.jsx)($.Cell,{className:`text-right`,children:(0,Y.jsxs)(`div`,{className:`inline-flex items-center justify-end gap-2`,children:[(0,Y.jsx)(ap,{size:`xs`,variant:`secondary`,icon:(0,Y.jsx)(Rf,{}),href:l,children:`Runs`}),i||a?(0,Y.jsx)(ip,{size:`xs`,variant:`secondary`,icon:(0,Y.jsx)(Bf,{weight:`fill`}),disabled:a,title:a?`Matrix configuration is still loading`:void 0,onClick:e=>{e.stopPropagation(),i?.()},children:`Run eval`}):null]})})]})}function Rx({nested:e,children:t}){return e?(0,Y.jsx)(Zb,{children:t}):(0,Y.jsx)(Xb,{children:t})}function zx({axes:e,sort:t,onSort:n,planned:r=!1}){let i=(e,r)=>(0,Y.jsx)(mx,{label:e,sortKey:r,sort:t,onSort:n});return(0,Y.jsx)($.Header,{variant:`compact`,children:(0,Y.jsxs)($.Row,{children:[i(`Eval`,`eval`),e.map(e=>(0,Y.jsx)(mx,{label:e,sortKey:`axis:${e}`,sort:t,onSort:n},e)),i(`Agent`,`agent`),r?(0,Y.jsx)($.Head,{children:`Runtime`}):i(`Runtime`,`runtime`),i(`Trials`,`trials`),r?(0,Y.jsx)($.Head,{children:`Latest run`}):i(`Latest run`,`status`),(0,Y.jsx)($.Head,{className:`text-right`,children:`Actions`})]})})}var Bx=50;function Vx({api:e,evalIds:t,catalog:n,matrix:r,runs:i,nested:a=!1,onRun:o,onOpenEval:s}){let[c,l]=(0,_.useState)(``),[u,d]=(0,_.useState)(0),{sort:f,toggleSort:p}=px({key:`eval`,direction:`asc`},()=>d(0)),[m,h]=(0,_.useState)(),[g,v]=(0,_.useState)(),y=r.dimensions??Object.keys(r.parameters),b=t.join(`,`);(0,_.useEffect)(()=>{let t=!0;return v(void 0),h(void 0),e.listMatrixCells({evalIds:b.split(`,`).filter(Boolean),query:c,offset:u*Bx,sort:f.key,direction:f.direction}).then(e=>{t&&h(e)}).catch(e=>{t&&v(e instanceof Error?e.message:`Unable to list matrix cells`)}),()=>{t=!1}},[e,b,c,u,f]);let x=new Map(n.map(e=>[e.id,e])),S=e=>i.filter(t=>t.matrixId===r.id&&t.cellKey===e).sort((e,t)=>t.startedAt.localeCompare(e.startedAt))[0]?.status,C=y.length+6;return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,Y.jsx)(fx,{label:`Filter matrix cells`,placeholder:`Eval, parameter or agent`,value:c,count:`${m?.total??0} of ${m?.planned??0} eligible cells`,onChange:e=>{l(e),d(0)}}),g?(0,Y.jsx)(Ix,{message:g}):null,(0,Y.jsxs)(Rx,{nested:a,children:[(0,Y.jsx)(zx,{axes:y,sort:f,onSort:p,planned:!0}),(0,Y.jsxs)($.Body,{children:[m?.cells.map(e=>{let t=x.get(e.evalId);return(0,Y.jsx)(Lx,{id:e.evalId,evaluation:t,parameters:y.map(t=>e.parameters[t]===null?`None`:e.parameters[t]),trials:r.trials,status:S(e.key),cellParameters:e.parameters,onRun:t?()=>o(t.path,Object.fromEntries(y.map(t=>[t,e.parameters[t]]))):void 0,onOpen:t?()=>s(t):void 0},e.key)}),!m&&!g?(0,Y.jsx)(Qb,{colSpan:C,children:`Loading cells…`}):null,m&&!m.cells.length?(0,Y.jsx)(Qb,{colSpan:C,children:`No matching cells.`}):null]})]}),(0,Y.jsx)(cx,{label:`Matrix cells pages`,noun:`Cells`,page:u,pageSize:Bx,total:m?.total??0,onPage:d})]})}var Hx=50;function Ux(e,t,n,r){let i=t.reduce((e,[,t])=>e*t.length,1),a=e.length*i;if(!Number.isSafeInteger(a))throw Error(`Matrix exceeds safe cell count`);let o=[];for(let s=n;s<Math.min(n+r,a);s++){let n=e[Math.floor(s/i)],r=s%i,a={},c=Array(t.length);for(let e=t.length-1;e>=0;e--){let[n,i]=t[e],o=i[r%i.length];a[n]=o,c[e]=o,r=Math.floor(r/i.length)}o.push({id:n,parameters:a,values:c})}return{rows:o,total:a}}function Wx(e,t,n){return JSON.stringify([e,t.map(([e])=>n[e])])}function Gx(e){return typeof e==`string`?e:JSON.stringify(e)??String(e)}function Kx(e,t,n){let r=t.trim().toLowerCase().split(/\s+/).filter(Boolean);return r.length?e.filter(e=>{let t=n(e).map(Gx).join(` `).toLowerCase();return r.every(e=>t.includes(e))}):[...e]}function qx(e){let t=e.matrix?e.evalIds.length*Object.values(e.matrix.parameters).reduce((e,t)=>e*t.length,1):0;return e.matrix&&(e.matrix.constrained||t>1e3)?(0,Y.jsx)(Vx,{...e,matrix:e.matrix}):(0,Y.jsx)(Jx,{...e})}function Jx({evalIds:e,catalog:t,matrix:n,runs:r,nested:i=!1,onRun:a,onOpenEval:o}){let[s,c]=(0,_.useState)(0),[l,u]=(0,_.useState)(``),{sort:d,toggleSort:f}=px({key:`eval`,direction:`asc`},()=>c(0)),p=n?Object.entries(n.parameters):[],m=new Map(t.map(e=>[e.id,e])),h=new Map;for(let e of r){if(n&&(e.matrixId!==n.id||!e.parameters))continue;let t=n?Wx(e.evalId,p,e.parameters):e.evalId,r=h.get(t);(!r||r.startedAt<=e.startedAt)&&h.set(t,e)}let g=e=>m.get(e.id),v=e=>h.get(n?Wx(e.id,p,e.parameters):e.id)?.status,{total:y}=Ux(e,p,0,0),b=hx(Kx(Ux(e,p,0,y).rows,l,e=>{let t=g(e);return[t?.name??e.id,e.id,t?.path??e.id,...e.values,qb(t),t?.agent.runtimes.map(e=>e.name).join(`, `)??`default`,v(e)??`not run`]}),d,(e,t)=>{let r=g(e);return t.startsWith(`axis:`)?Gx(e.parameters[t.slice(5)]):t===`eval`?r?.name??e.id:t===`agent`?qb(r):t===`runtime`?r?.agent.runtimes.map(e=>e.name).join(`, `)??`default`:t===`trials`?n?.trials??r?.trialCount??0:t===`status`?v(e)??`not run`:``}),x=Math.max(1,Math.ceil(b.length/Hx)),S=Math.min(s,x-1),C=b.slice(S*Hx,(S+1)*Hx);return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,Y.jsx)(fx,{label:`Filter matrix cells`,placeholder:`Eval, parameter, agent or status`,value:l,count:`${b.length} of ${y} cells`,onChange:e=>{u(e),c(0)}}),(0,Y.jsxs)(Rx,{nested:i,children:[(0,Y.jsx)(zx,{axes:p.map(([e])=>e),sort:d,onSort:f}),(0,Y.jsx)($.Body,{children:C.length?C.map(e=>{let t=g(e);return(0,Y.jsx)(Lx,{id:e.id,evaluation:t,parameters:e.values,trials:n?.trials,status:v(e),cellParameters:e.parameters,onRun:t&&n!==void 0?()=>a(t.path,n?e.parameters:void 0):void 0,runDisabled:!!t&&n===void 0,onOpen:t?()=>o(t):void 0},Wx(e.id,p,e.parameters))}):(0,Y.jsx)(Qb,{colSpan:p.length+6,children:`No matching cells.`})})]}),(0,Y.jsx)(cx,{label:`Matrix cells pages`,noun:`Cells`,page:S,pageSize:Hx,total:b.length,onPage:c})]})}function Yx({suite:e,expanded:t,onToggle:n,onRun:r}){return(0,Y.jsxs)($.Row,{variant:t?`selected`:`default`,children:[(0,Y.jsx)($.Cell,{children:(0,Y.jsxs)(`button`,{type:`button`,className:`${$b} inline-flex items-center gap-1.5`,"aria-expanded":t,onClick:n,children:[(0,Y.jsx)(Tf,{"aria-hidden":!0,className:`size-3 transition-transform ${t?`rotate-90`:``}`}),e.name??e.id??`Unnamed suite`]})}),(0,Y.jsx)($.Cell,{className:`tabular-nums`,children:e.evalIds.length}),(0,Y.jsx)($.Cell,{className:`text-right`,children:(0,Y.jsx)(ip,{size:`xs`,variant:`secondary`,icon:(0,Y.jsx)(Bf,{weight:`fill`}),disabled:!r,title:r?void 0:`Run matrix cells individually from their rows`,onClick:e=>{e.stopPropagation(),r?.()},children:`Run suite`})})]})}function Xx({api:e,suites:t,catalog:n,matrix:r,runs:i=[],selectedSuiteId:a,onOpenSuite:o,onOpenEval:s}){let[c,l]=(0,_.useState)(),[u,d]=(0,_.useState)(),f=e=>t=>d(t instanceof Error?t.message:e),p=(t,n)=>{d(void 0),e.runEval(t,n).catch(f(`Unable to start eval`))},m=t=>{d(void 0),e.runSuite(t).catch(f(`Unable to start suite`))},h=a??c,g=n.filter(e=>!e.suiteId&&!t.some(t=>t.evalIds.includes(e.id)));return!t.length&&!g.length?(0,Y.jsx)(nx,{message:`No evals or suites are loaded.`}):(0,Y.jsxs)(Y.Fragment,{children:[r?(0,Y.jsx)(`p`,{className:`text-[13px] text-kumo-subtle`,children:`Each row is one configured matrix cell. Run one row at a time; use the CLI dry-run for larger selections.`}):null,u?(0,Y.jsx)(Ix,{message:u}):null,t.length>0?(0,Y.jsxs)(`section`,{"aria-label":`Suites`,className:`flex flex-col gap-2`,children:[(0,Y.jsx)(`h2`,{className:`text-sm font-semibold text-kumo-strong`,children:`Suites`}),(0,Y.jsxs)(Xb,{children:[(0,Y.jsx)($.Header,{variant:`compact`,children:(0,Y.jsxs)($.Row,{children:[(0,Y.jsx)($.Head,{children:`Suite`}),(0,Y.jsx)($.Head,{children:`Evals`}),(0,Y.jsx)($.Head,{className:`text-right`,children:`Actions`})]})}),(0,Y.jsx)($.Body,{children:t.map(t=>(0,Y.jsxs)(_.Fragment,{children:[(0,Y.jsx)(Yx,{suite:t,expanded:h===t.id,onToggle:()=>{l(h===t.id?void 0:t.id),o(t.id)},onRun:r===null?()=>m(t.id):void 0}),h===t.id?(0,Y.jsx)($.Row,{children:(0,Y.jsx)($.Cell,{colSpan:3,className:`bg-kumo-elevated`,children:(0,Y.jsx)(qx,{api:e,evalIds:t.evalIds,catalog:n,matrix:r,runs:i,nested:!0,onRun:p,onOpenEval:s})})}):null]},t.id))})]})]}):null,g.length>0?(0,Y.jsxs)(`section`,{"aria-label":`Standalone evals`,className:`flex flex-col gap-2`,children:[(0,Y.jsx)(`h2`,{className:`text-sm font-semibold text-kumo-strong`,children:`Standalone evals`}),(0,Y.jsx)(qx,{api:e,evalIds:g.map(e=>e.id),catalog:n,matrix:r,runs:i,onRun:p,onOpenEval:s})]}):null]})}function Zx({artifact:e}){return(0,Y.jsxs)($.Row,{children:[(0,Y.jsx)($.Cell,{className:`${ex} break-all`,children:e.path}),(0,Y.jsx)($.Cell,{children:e.kind}),(0,Y.jsx)($.Cell,{className:`whitespace-nowrap tabular-nums`,children:e.size===void 0?`—`:`${e.size} B`})]})}function Qx(e){return e.kind===`message`&&e.role===`user`?`User message`:e.kind===`message`&&e.role===`assistant`?`Assistant message`:e.kind.includes(`scorer`)?`Scorer · ${e.kind.replace(`scorer-`,``)}`:e.kind.includes(`tool`)?`Tool · ${e.kind.replace(`tool-`,``)}`:e.kind.replaceAll(`-`,` `)}var $x=`overflow-x-auto rounded-md bg-kumo-elevated px-3 py-2 font-mono text-xs whitespace-pre-wrap break-words text-kumo-default`;function eS(e){return typeof e==`string`?e:JSON.stringify(e,null,2)}function tS({event:e,index:t}){let n=Object.entries(e).filter(([e])=>![`source`,`kind`,`timestamp`,`content`,`error`].includes(e));return(0,Y.jsxs)(`article`,{className:`event-card flex flex-col gap-2 rounded-lg border border-kumo-line bg-kumo-base px-3 py-2.5`,children:[(0,Y.jsxs)(`header`,{className:`flex items-baseline gap-2`,children:[(0,Y.jsxs)(`span`,{className:`font-mono text-xs text-kumo-subtle tabular-nums`,children:[`#`,t+1]}),(0,Y.jsx)(`h3`,{className:`text-[13px] font-semibold text-kumo-strong`,children:Qx(e)}),(0,Y.jsxs)(`span`,{className:`ml-auto text-xs text-kumo-subtle`,children:[e.source,` · `,new Date(e.timestamp).toLocaleTimeString()]})]}),`content`in e?(0,Y.jsx)(`pre`,{className:$x,children:eS(e.content)}):null,`error`in e?(0,Y.jsx)(`pre`,{className:`${$x} text-kumo-danger`,children:eS(e.error)}):null,n.length?(0,Y.jsx)(`dl`,{className:`grid grid-cols-[max-content_minmax(0,1fr)] gap-x-3 gap-y-0.5 text-xs`,children:n.map(([e,t])=>(0,Y.jsxs)(`div`,{className:`contents`,children:[(0,Y.jsx)(`dt`,{className:`text-kumo-subtle`,children:e}),(0,Y.jsx)(`dd`,{className:`font-mono break-words whitespace-pre-wrap`,children:eS(t)})]},e))}):null]})}function nS({api:e,selected:t,evalName:n,onWorkspace:r}){let[i,a]=(0,_.useState)([]),[o,s]=(0,_.useState)(),[c,l]=(0,_.useState)(),[u,d]=(0,_.useState)([]);if((0,_.useEffect)(()=>{if(!t)return;let n=!0;return s(void 0),a([]),l(void 0),d([]),Promise.all([e.getTrialEvents(t.run.id,t.trial.id),e.getTrial(t.run.id,t.trial.id),e.listArtifacts(t.run.id,t.trial.id)]).then(([e,t,r])=>{n&&(a(e),l(t),d(r))}).catch(e=>{n&&s(e instanceof Error?e.message:`Unable to load trial details`)}),()=>{n=!1}},[e,t]),!t)return(0,Y.jsx)(nx,{message:`Select a trial from a run to inspect it.`});let{run:f,trial:p}=t;return(0,Y.jsxs)(`section`,{className:`trial-inspector grid gap-5 xl:grid-cols-[minmax(320px,380px)_minmax(0,1fr)]`,children:[(0,Y.jsxs)(`aside`,{className:`trial-overview flex min-w-0 flex-col gap-4`,children:[(0,Y.jsx)(ix,{items:[[`Run`,(0,Y.jsx)(`span`,{className:ex,children:f.id},`run`)],[`Eval`,n??`Unnamed eval`],[`Trial`,p.index+1],[`Status`,(0,Y.jsx)(_x,{status:p.status},`status`)],[`Aggregate score`,p.score??`—`],[`Runtime`,p.durationMs===void 0?`—`:`${p.durationMs}ms`],[`Events`,i.length]]}),(0,Y.jsxs)(ip,{size:`sm`,variant:`secondary`,className:`open-workspace self-start`,onClick:r,children:[`Open candidate workspace`,(0,Y.jsx)(bf,{"aria-hidden":!0,className:`size-3.5`})]}),p.checkpoints?.length?(0,Y.jsx)(rS,{title:`Checkpoints`,children:(0,Y.jsx)(iS,{checkpoints:p.checkpoints})}):null,(0,Y.jsxs)(rS,{title:`Final scoring`,children:[(0,Y.jsx)(oS,{scores:p.scores}),p.skippedScorers?.length?(0,Y.jsxs)(`p`,{className:`text-xs text-kumo-subtle`,children:[`Skipped final scorers: `,p.skippedScorers.join(`, `)]}):null]}),u.length?(0,Y.jsx)(rS,{title:`Artifacts`,children:(0,Y.jsxs)(Zb,{wrap:!0,children:[(0,Y.jsx)($.Header,{variant:`compact`,children:(0,Y.jsxs)($.Row,{children:[(0,Y.jsx)($.Head,{children:`Path`}),(0,Y.jsx)($.Head,{children:`Kind`}),(0,Y.jsx)($.Head,{children:`Size`})]})}),(0,Y.jsx)($.Body,{children:u.map(e=>(0,Y.jsx)(Zx,{artifact:e},e.path))})]})}):null,c?(0,Y.jsxs)(`details`,{className:`raw-details text-xs`,children:[(0,Y.jsx)(`summary`,{className:`cursor-pointer font-medium text-kumo-subtle select-none`,children:`Raw trial summary`}),(0,Y.jsx)(`pre`,{className:`mt-2 overflow-x-auto rounded-md bg-kumo-elevated px-3 py-2 font-mono`,children:JSON.stringify(c.summary,null,2)})]}):null]}),(0,Y.jsxs)(`section`,{className:`timeline flex min-w-0 flex-col gap-2`,children:[o?(0,Y.jsx)(Ix,{title:`Unable to load trial details`,message:o}):null,(0,Y.jsxs)(`div`,{className:`flex items-baseline justify-between`,children:[(0,Y.jsx)(`h3`,{className:`text-sm font-semibold text-kumo-strong`,children:`Event timeline`}),(0,Y.jsxs)(`span`,{className:`text-xs text-kumo-subtle tabular-nums`,children:[i.length,` events`]})]}),i.map((e,t)=>(0,Y.jsx)(tS,{event:e,index:t},`${e.timestamp}-${t}`))]})]})}function rS({title:e,children:t}){return(0,Y.jsxs)(`section`,{className:`flex flex-col gap-2`,children:[(0,Y.jsx)(`h3`,{className:`text-sm font-semibold text-kumo-strong`,children:e}),t]})}function iS({checkpoints:e}){return(0,Y.jsxs)(Zb,{wrap:!0,children:[(0,Y.jsx)($.Header,{variant:`compact`,children:(0,Y.jsxs)($.Row,{children:[(0,Y.jsx)($.Head,{children:`Step`}),(0,Y.jsx)($.Head,{children:`Rule`}),(0,Y.jsx)($.Head,{children:`Value`}),(0,Y.jsx)($.Head,{children:`Result`})]})}),(0,Y.jsx)($.Body,{children:e.map(e=>(0,Y.jsxs)($.Row,{children:[(0,Y.jsx)($.Cell,{className:`tabular-nums`,children:e.step+1}),(0,Y.jsxs)($.Cell,{children:[(0,Y.jsxs)(`span`,{className:`text-kumo-subtle`,children:[e.kind,`:`]}),` `,e.name,e.matchedToolCall?` (event ${e.matchedToolCall.eventIndex+1})`:``]}),(0,Y.jsx)($.Cell,{className:`tabular-nums`,children:e.value??`—`}),(0,Y.jsxs)($.Cell,{children:[(0,Y.jsx)(_x,{status:e.status}),e.error?(0,Y.jsx)(`p`,{className:`mt-1 text-xs text-kumo-danger`,children:e.error.message}):null]})]},`${e.step}-${e.name}`))})]})}function aS(e){return e.error?`error`:e.passed===!0?`passed`:e.passed===!1?`failed`:`not scored`}function oS({scores:e}){return(0,Y.jsxs)(Zb,{wrap:!0,children:[(0,Y.jsx)($.Header,{variant:`compact`,children:(0,Y.jsxs)($.Row,{children:[(0,Y.jsx)($.Head,{children:`Scorer`}),(0,Y.jsx)($.Head,{children:`Value`}),(0,Y.jsx)($.Head,{children:`Result`})]})}),(0,Y.jsxs)($.Body,{children:[e.map(e=>(0,Y.jsxs)($.Row,{children:[(0,Y.jsxs)($.Cell,{children:[e.kind?(0,Y.jsxs)(`span`,{className:`text-kumo-subtle`,children:[e.kind,`: `]}):null,e.name]}),(0,Y.jsx)($.Cell,{className:`tabular-nums`,children:e.value??`—`}),(0,Y.jsxs)($.Cell,{children:[(0,Y.jsx)(_x,{status:aS(e)}),e.error?(0,Y.jsx)(`p`,{className:`mt-1 text-xs text-kumo-danger`,children:e.error.message}):null]})]},e.name)),e.length?null:(0,Y.jsx)($.Row,{children:(0,Y.jsx)($.Cell,{colSpan:3,className:`text-kumo-subtle`,children:`No final scorers.`})})]})]})}function sS({api:e,selected:t}){let[n,r]=(0,_.useState)(),[i,a]=(0,_.useState)();return(0,_.useEffect)(()=>{if(!t)return;let n=!0;return r(void 0),a(void 0),e.listWorkspace(t.run.id,t.trial.id).then(e=>{n&&r(e)}).catch(e=>{n&&a(e instanceof Error?e.message:`Unable to load workspace`)}),()=>{n=!1}},[e,t]),t?(0,Y.jsxs)(`section`,{className:`workspace-inspector flex flex-col gap-2`,children:[i?(0,Y.jsx)(Ix,{message:i}):null,(0,Y.jsxs)(Xb,{children:[(0,Y.jsx)($.Header,{variant:`compact`,children:(0,Y.jsxs)($.Row,{children:[(0,Y.jsx)($.Head,{children:`Path`}),(0,Y.jsx)($.Head,{children:`Kind`}),(0,Y.jsx)($.Head,{children:`Size`})]})}),(0,Y.jsxs)($.Body,{children:[n?.map(e=>{let t=e.kind===`directory`?Mf:jf;return(0,Y.jsxs)($.Row,{children:[(0,Y.jsx)($.Cell,{className:ex,children:(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-1.5`,children:[(0,Y.jsx)(t,{"aria-hidden":!0,className:`size-3.5 text-kumo-subtle`}),e.path]})}),(0,Y.jsx)($.Cell,{children:e.kind}),(0,Y.jsx)($.Cell,{className:`tabular-nums`,children:e.size===void 0?`—`:`${e.size} B`})]},e.path)}),!n&&!i?(0,Y.jsx)(Qb,{colSpan:3,children:`Loading workspace…`}):null,n&&!n.length?(0,Y.jsx)(Qb,{colSpan:3,children:`The workspace is empty.`}):null]})]})]}):(0,Y.jsx)(nx,{message:`Select a trial to inspect its workspace.`})}function cS({api:e,catalog:t,suites:n,matrix:r,runs:i,selected:a,onTrial:o}){let s=$e();return(0,Y.jsxs)(Tt,{children:[(0,Y.jsx)(Ct,{path:`/suites`,element:(0,Y.jsx)(Xx,{api:e,suites:n,catalog:t,matrix:r,runs:i,onOpenSuite:e=>s(`/suites/${encodeURIComponent(e)}`),onOpenEval:e=>s(`/evals/${encodeURIComponent(e.path)}`)})}),(0,Y.jsx)(Ct,{path:`/suites/:suiteId`,element:(0,Y.jsx)(lS,{api:e,suites:n,catalog:t,matrix:r,runs:i})}),(0,Y.jsx)(Ct,{path:`/evals/*`,element:(0,Y.jsx)(dS,{catalog:t})}),(0,Y.jsx)(Ct,{path:`/agents`,element:(0,Y.jsx)(uS,{catalog:t})}),(0,Y.jsx)(Ct,{path:`/fixtures`,element:(0,Y.jsx)(sx,{catalog:t})}),(0,Y.jsx)(Ct,{path:`/runs`,element:(0,Y.jsx)(fS,{api:e,catalog:t,suites:n,runs:i,onTrial:o})}),(0,Y.jsx)(Ct,{path:`/runs/:runUuid`,element:(0,Y.jsx)(fS,{api:e,catalog:t,suites:n,runs:i,onTrial:o})}),(0,Y.jsx)(Ct,{path:`/trials/:trialUuid`,element:(0,Y.jsx)(pS,{api:e,catalog:t,selected:a})}),(0,Y.jsx)(Ct,{path:`/workspaces/:trialUuid`,element:(0,Y.jsx)(sS,{api:e,selected:a})}),(0,Y.jsx)(Ct,{path:`*`,element:(0,Y.jsx)(Xx,{api:e,suites:n,catalog:t,matrix:r,runs:i,onOpenSuite:e=>s(`/suites/${encodeURIComponent(e)}`),onOpenEval:e=>s(`/evals/${encodeURIComponent(e.path)}`)})})]})}function lS(e){let{suiteId:t}=tt(),n=$e();return(0,Y.jsx)(Xx,{...e,selectedSuiteId:t,onOpenSuite:()=>void 0,onOpenEval:e=>n(`/evals/${encodeURIComponent(e.path)}`)})}function uS({catalog:e}){let[t]=yn();return(0,Y.jsx)(rx,{catalog:e,selectedAgent:t.get(`agent`)??void 0})}function dS({catalog:e}){let t=Xe();return(0,Y.jsx)(ax,{catalog:e,path:decodeURIComponent(t.pathname.slice(7))})}function fS(e){let t=$e(),{runUuid:n}=tt(),[r,i]=yn();return(0,Y.jsx)(Nx,{...e,search:r,onSearchChange:e=>i(e,{replace:!0}),selectedRunId:n,onTrial:(n,i)=>{e.onTrial(n,i);let a=new URLSearchParams(r);a.set(`trial`,i.id),a.delete(`view`),t({pathname:`/runs/${encodeURIComponent(n.id)}`,search:a.toString()})},onOpenRun:e=>t({pathname:`/runs/${encodeURIComponent(e.id)}`,search:r.toString()})})}function pS({api:e,catalog:t,selected:n}){let r=$e();return(0,Y.jsx)(nS,{api:e,evalName:t.find(e=>e.id===n?.run.evalId)?.name??n?.run.evalId,selected:n,onWorkspace:()=>n&&r(`/workspaces/${encodeURIComponent(n.trial.id)}`)})}var mS=(0,_.forwardRef)(function({href:e=`/`,...t},n){return(0,Y.jsx)(pn,{ref:n,to:e,...t})}),hS=[{label:`Suites & evals`,href:`/suites`,icon:Hf,matches:[`/suites`,`/evals`]},{label:`Agents`,href:`/agents`,icon:Vf,matches:[`/agents`]},{label:`Fixtures`,href:`/fixtures`,icon:Nf,matches:[`/fixtures`]},{label:`Runs`,href:`/runs`,icon:kf,matches:[`/runs`,`/trials`,`/workspaces`]}];function gS(e){return hS.find(t=>t.matches.some(t=>e.startsWith(t)))??hS[0]}function _S(e){return e.startsWith(`/trials/`)?`Trial detail`:e.startsWith(`/workspaces/`)?`Candidate workspace`:e.startsWith(`/evals/`)?`Eval detail`:gS(e).label}function vS({children:e,header:t}){let{pathname:n}=Xe(),r=gS(n);return(0,Y.jsx)(kr,{component:mS,children:(0,Y.jsxs)(Wb.Provider,{collapsible:`icon`,defaultWidth:208,className:`h-dvh`,children:[(0,Y.jsxs)(Wb,{id:`dashboard-navigation`,children:[(0,Y.jsxs)(Wb.Header,{className:`justify-between`,children:[(0,Y.jsx)(pn,{to:`/suites`,className:`truncate text-sm font-semibold text-kumo-strong group-data-[state=collapsed]/sidebar:hidden`,children:`EvalKit`}),(0,Y.jsx)(Wb.Trigger,{className:`navigation-toggle`})]}),(0,Y.jsx)(Wb.Content,{children:(0,Y.jsx)(`nav`,{"aria-label":`Dashboard`,children:(0,Y.jsx)(Wb.Group,{children:(0,Y.jsx)(Wb.Menu,{children:hS.map(e=>(0,Y.jsx)(Wb.MenuButton,{href:e.href,icon:e.icon,active:e===r,"aria-current":e===r?`page`:void 0,tooltip:e.label,children:e.label},e.href))})})})})]}),(0,Y.jsxs)(`main`,{className:`flex min-w-0 flex-1 flex-col overflow-y-auto`,children:[(0,Y.jsxs)(`header`,{className:`sticky top-0 z-10 flex h-12 shrink-0 items-center gap-2 border-b border-kumo-line bg-kumo-base px-4 md:px-6`,children:[(0,Y.jsx)(Wb.Trigger,{className:`md:hidden`}),(0,Y.jsx)(`h1`,{className:`text-base font-semibold text-kumo-strong`,children:_S(n)}),t]}),(0,Y.jsx)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-4 px-4 py-4 md:px-6`,children:e})]})]})})}function yS({api:e,catalog:t,suites:n,selected:r,trialId:i,error:a,workspace:o,onClose:s,onWorkspace:c}){let l=(0,_.useRef)(null),u=Xe();(0,_.useEffect)(()=>{let e=l.current;return e&&!e.open&&e.showModal(),()=>{e?.open&&e.close()}},[]);let d=t.find(e=>e.id===r?.run.evalId),f=n.find(e=>e.id===r?.run.suiteId),p=bS(u,[`trial`,`view`]),m=bS(u,[`view`]),h=`Trial ${r?r.trial.index+1:`…`}`;return(0,Y.jsx)(`dialog`,{ref:l,className:`trial-panel fixed inset-y-0 right-0 left-auto m-0 h-dvh max-h-none w-full max-w-[min(1100px,100vw)] border-l border-kumo-line bg-kumo-base p-0 text-kumo-default shadow-xl backdrop:bg-black/30`,"aria-label":o?`Candidate workspace`:`Trial details`,onClose:s,children:(0,Y.jsxs)(`div`,{className:`flex h-full flex-col`,children:[(0,Y.jsxs)(`header`,{className:`flex items-start gap-3 border-b border-kumo-line px-5 py-3`,children:[(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-1`,children:[(0,Y.jsxs)(ry,{size:`sm`,className:`trial-breadcrumbs`,children:[f?(0,Y.jsx)(ry.Link,{href:`/suites/${encodeURIComponent(f.id)}`,children:f.name??f.id}):(0,Y.jsx)(ry.Link,{href:`/runs`,children:`Runs`}),(0,Y.jsx)(ry.Separator,{}),d?(0,Y.jsx)(ry.Link,{href:`/evals/${encodeURIComponent(d.path)}`,children:d.name??d.id}):(0,Y.jsx)(ry.Current,{children:r?.run.evalId??`Eval`}),(0,Y.jsx)(ry.Separator,{}),(0,Y.jsxs)(ry.Link,{href:p,children:[`Run `,r?.run.id.slice(0,8)??`…`]}),(0,Y.jsx)(ry.Separator,{}),o?(0,Y.jsx)(ry.Link,{href:m,children:h}):(0,Y.jsx)(ry.Current,{children:h}),o?(0,Y.jsx)(ry.Separator,{}):null,o?(0,Y.jsx)(ry.Current,{children:`Workspace`}):null]}),(0,Y.jsx)(`h2`,{className:`text-base font-semibold text-kumo-strong`,children:o?`Candidate workspace`:h}),(0,Y.jsx)(`p`,{className:`${ex} truncate text-kumo-subtle`,children:i})]}),(0,Y.jsx)(ip,{variant:`ghost`,shape:`square`,size:`sm`,className:`trial-panel-close`,"aria-label":`Close trial panel`,title:`Close trial panel`,icon:(0,Y.jsx)(Uf,{}),onClick:()=>l.current?.close()})]}),(0,Y.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto px-5 py-4`,children:r?o?(0,Y.jsx)(sS,{api:e,selected:r}):(0,Y.jsx)(nS,{api:e,selected:r,evalName:d?.name??r.run.evalId,onWorkspace:c}):a?(0,Y.jsx)(Ix,{message:a}):(0,Y.jsx)(`output`,{className:`text-[13px] text-kumo-subtle`,children:`Loading trial…`})})]})})}function bS(e,t){let n=new URLSearchParams(e.search);for(let e of t)n.delete(e);return`${e.pathname}${n.size?`?${n}`:``}`}function xS({share:e}){let[t,n]=(0,_.useState)(),[r,i]=(0,_.useState)();return(0,_.useEffect)(()=>{fetch(e.repos).then(e=>e.json()).then(e=>n(e.repos)).catch(()=>i(`Unable to load repositories`))},[e.repos]),(0,Y.jsxs)(`div`,{className:`mx-auto flex w-full max-w-4xl flex-col gap-4 px-4 py-8`,children:[(0,Y.jsx)(`h1`,{className:`text-base font-semibold text-kumo-strong`,children:`EvalKit · Shared evals`}),e.missing||e.repo&&!e.data?(0,Y.jsx)(Ix,{message:e.missing?`No shared results for ${e.missing} in ${e.repo}.`:`No shared results for ${e.repo}.`}):null,r?(0,Y.jsx)(Ix,{message:r}):null,t&&!t.length?(0,Y.jsx)(nx,{message:"Nothing shared yet. Run `evalkit share` in an eval project."}):null,t?.length?(0,Y.jsxs)(Xb,{children:[(0,Y.jsx)($.Header,{variant:`compact`,children:(0,Y.jsxs)($.Row,{children:[(0,Y.jsx)($.Head,{children:`Repository`}),(0,Y.jsx)($.Head,{children:`Commits`}),(0,Y.jsx)($.Head,{children:`Last upload`})]})}),(0,Y.jsx)($.Body,{children:t.map(e=>(0,Y.jsxs)($.Row,{children:[(0,Y.jsx)($.Cell,{children:(0,Y.jsx)(`a`,{className:$b,href:`/${e.key}`,children:e.key})}),(0,Y.jsx)($.Cell,{className:`tabular-nums`,children:e.commits}),(0,Y.jsx)($.Cell,{className:`tabular-nums`,children:e.lastUploadAt.slice(0,16).replace(`T`,` `)})]},e.key))})]}):null]})}function SS(e=document.documentElement){let t=e.dataset.evalkitShare;if(!t)return;let n;try{n=JSON.parse(t)}catch{return}if(typeof n?.repos!=`string`)return;let r=e=>typeof n[e]==`string`?{[e]:n[e]}:{};return{repos:n.repos,...r(`commits`),...r(`data`),...r(`repo`),...r(`missing`)}}function CS(e,t,n,r){let i=/^\/(runs|trials|workspaces)\/./.test(n);return`/${e}/-/${t}${i?`/runs`:n===`/`?`/`:n}${i?``:r}`}function wS(e){let t=(e.committedAt??e.firstSeenAt).slice(0,10),n=e.runs?`${e.passed}/${e.runs} passed`:`no committed runs`;return[e.commit.slice(0,7),e.ref,t,n].filter(Boolean).join(` · `)}function TS({repo:e,current:t,commitsUrl:n}){let r=Xe(),[i,a]=(0,_.useState)();(0,_.useEffect)(()=>{let e=!0;return fetch(n).then(e=>e.json()).then(t=>{e&&a(t.commits)}).catch(()=>{e&&a([])}),()=>{e=!1}},[n]);let o=i?.some(e=>e.commit===t);return(0,Y.jsxs)(`label`,{className:`version-picker ml-auto flex min-w-0 items-center gap-2 text-[13px] text-kumo-subtle`,children:[(0,Y.jsx)(`span`,{className:`hidden sm:inline`,children:`Version`}),(0,Y.jsxs)(`select`,{"aria-label":`Version`,className:`max-w-[22rem] min-w-0 truncate rounded-md border border-kumo-line bg-kumo-base px-2 py-1 font-mono text-xs text-kumo-strong`,value:t,onChange:t=>window.location.assign(CS(e,t.target.value,r.pathname,r.search)),children:[o?null:(0,Y.jsx)(`option`,{value:t,children:t.slice(0,7)}),i?.map(e=>(0,Y.jsx)(`option`,{value:e.commit,children:wS(e)},e.commit))]})]})}function ES({api:e,basename:t,share:n}){return n&&!n.data?(0,Y.jsx)(xS,{share:n}):(0,Y.jsx)(fn,{basename:t,children:(0,Y.jsx)(DS,{api:e,share:n,basename:t})})}function DS({api:e,share:t,basename:n}){let r=n?.split(`/-/`)[1],i=Xe(),a=$e(),o=i.pathname.startsWith(`/runs/`)?new URLSearchParams(i.search).get(`trial`):null,[s,c]=(0,_.useState)([]),[l,u]=(0,_.useState)([]),[d,f]=(0,_.useState)(),[p,m]=(0,_.useState)([]),h=(0,_.useRef)(``),[g,v]=(0,_.useState)(),[y,b]=(0,_.useState)();return(0,_.useEffect)(()=>{let t=!0;return Promise.all([e.listCatalog(),e.listSuites(),e.getMatrix()]).then(([e,n,r])=>{t&&(c(e),u(n),f(r))}).catch(e=>{t&&b(e instanceof Error?e.message:`Unable to load dashboard`)}),()=>{t=!1}},[e]),(0,_.useEffect)(()=>{let t=!0,n=!1,r=async()=>{if(!n){n=!0;try{let n=await e.listRuns();if(t){let e=JSON.stringify(n);e!==h.current&&(h.current=e,m(n))}}catch(e){t&&b(e instanceof Error?e.message:`Unable to load runs`)}finally{n=!1}}};r();let i=setInterval(()=>void r(),2e3);return()=>{t=!1,clearInterval(i)}},[e,i.pathname]),(0,_.useEffect)(()=>{let t=i.pathname.match(/^\/(?:trials|workspaces)\/([^/]+)/),n=o??(t?decodeURIComponent(t[1]):void 0);if(!n||!p.length||g?.trial.id===n)return;let r=i.pathname.match(/^\/runs\/([^/]+)/)?.[1],a=r?p.filter(e=>e.id===decodeURIComponent(r)):p,s=!0;return Promise.all(a.map(async t=>({run:t,trials:await e.listTrials(t.id)}))).then(e=>{if(s){for(let t of e){let e=t.trials.find(e=>e.id===n);if(e){v({run:t.run,trial:e}),b(void 0);return}}b(`Trial ${n} was not found in this run.`)}}).catch(e=>{s&&b(e instanceof Error?e.message:`Unable to load trial`)}),()=>{s=!1}},[e,i.pathname,o,p,g]),(0,Y.jsxs)(vS,{header:t?.repo&&t.commits&&r?(0,Y.jsx)(TS,{repo:t.repo,current:r,commitsUrl:t.commits}):void 0,children:[t?.repo?(0,Y.jsxs)(`p`,{className:`text-[13px] text-kumo-subtle`,role:`note`,children:[`Shared results for`,` `,(0,Y.jsx)(`a`,{href:`/${t.repo}`,className:`font-mono`,children:t.repo}),`. Runs cannot be started here.`]}):e.readOnly?(0,Y.jsxs)(`p`,{className:`text-[13px] text-kumo-subtle`,role:`note`,children:[`Read-only snapshot built with `,(0,Y.jsx)(`code`,{children:`evalkit build`}),`. Runs cannot be started here.`]}):null,y?(0,Y.jsx)(Ix,{message:y}):null,(0,Y.jsx)(cS,{api:e,catalog:s,suites:l,matrix:d,runs:p,selected:g,onTrial:(e,t)=>v({run:e,trial:t})}),o?(0,Y.jsx)(yS,{api:e,catalog:s,suites:l,selected:g?.trial.id===o?g:void 0,trialId:o,error:y,workspace:new URLSearchParams(i.search).get(`view`)===`workspace`,onClose:()=>{let e=new URLSearchParams(i.search);e.delete(`trial`),e.delete(`view`),a({pathname:i.pathname,search:e.toString()},{replace:!0})},onWorkspace:()=>{let e=new URLSearchParams(i.search);e.set(`view`,`workspace`),a({pathname:i.pathname,search:e.toString()})}}):null]})}function OS(e){let t=e.fetch??globalThis.fetch,n=async(n,r)=>{let i=await t(new URL(n,e.baseUrl),r);if(!i.ok)throw Error(await i.text()||`Dashboard request failed: ${i.status}`);return i.json()};return{async listCatalog(){return(await n(`/v1/catalog`)).evals},async listMatrixCells(t){let r=new URL(`/v1/matrix/cells`,e.baseUrl);for(let e of t.evalIds)r.searchParams.append(`eval`,e);return r.searchParams.set(`q`,t.query),r.searchParams.set(`offset`,String(t.offset)),r.searchParams.set(`sort`,t.sort),r.searchParams.set(`direction`,t.direction),n(r.pathname+r.search)},async getMatrix(){return(await n(`/v1/matrix`)).matrix},async listEvals(){return(await n(`/v1/evals`)).evals},async listSuites(){return(await n(`/v1/suites`)).suites},async listRuns(){return(await n(`/v1/runs`)).runs},async listTrials(e){return(await n(`/v1/runs/${encodeURIComponent(e)}/trials`)).trials},async getTrial(e,t){return n(`/v1/runs/${encodeURIComponent(e)}/trials/${encodeURIComponent(t)}`)},async listArtifacts(e,t){return(await n(`/v1/runs/${encodeURIComponent(e)}/trials/${encodeURIComponent(t)}/artifacts`)).artifacts},async listWorkspace(e,t){return n(`/v1/runs/${encodeURIComponent(e)}/trials/${encodeURIComponent(t)}/workspace`)},async getWorkspaceFile(n,r,i){let a=await t(new URL(`/v1/runs/${encodeURIComponent(n)}/trials/${encodeURIComponent(r)}/workspace/${i.split(`/`).map(encodeURIComponent).join(`/`)}`,e.baseUrl));if(!a.ok)throw Error(`Dashboard request failed: ${a.status}`);return a},async getTrialEvents(e,t){return(await n(`/v1/runs/${encodeURIComponent(e)}/trials/${encodeURIComponent(t)}/events`)).events},async runEval(e,t){await n(`/v1/runs`,{method:`POST`,body:JSON.stringify({path:e,...t?{parameters:t}:{}}),headers:{"content-type":`application/json`}})},async runSuite(e){await n(`/v1/suites/${encodeURIComponent(e)}/runs`,{method:`POST`})}}}var kS="This is a read-only dashboard snapshot. Run evals with `evalkit run`, then rebuild it with `evalkit build`.";function AS(e){let t=e.fetch??globalThis.fetch,n=t=>new URL(`data/${t}`,e.baseUrl),r=async e=>{let r=await t(n(e));if(!r.ok)throw Error(e.includes(`/workspace/`)?`This file is listed, but its contents were not shared.`:`Snapshot file is missing: data/${e}`);return r},i=async e=>(await r(e)).json(),a=(e,t)=>`runs/${encodeURIComponent(e)}/trials/${encodeURIComponent(t)}`;return{readOnly:!0,listCatalog:async()=>(await i(`catalog.json`)).evals,getMatrix:async()=>null,listMatrixCells:async()=>{throw Error(kS)},listEvals:async()=>(await i(`evals.json`)).evals,listSuites:async()=>(await i(`suites.json`)).suites,listRuns:async()=>(await i(`runs.json`)).runs,listTrials:async e=>(await i(`runs/${encodeURIComponent(e)}/trials.json`)).trials,getTrial:(e,t)=>i(`${a(e,t)}/detail.json`),getTrialEvents:async(e,t)=>(await i(`${a(e,t)}/events.json`)).events,listArtifacts:async(e,t)=>(await i(`${a(e,t)}/artifacts.json`)).artifacts,listWorkspace:(e,t)=>i(`${a(e,t)}/workspace.json`),getWorkspaceFile:(e,t,n)=>r(`${a(e,t)}/workspace/${n.split(`/`).map(encodeURIComponent).join(`/`)}`),runEval:async()=>{throw Error(kS)},runSuite:async()=>{throw Error(kS)}}}var jS=document.querySelector(`#root`);if(!jS)throw Error(`Dashboard root is missing`);var MS=document.documentElement.dataset.evalkitSnapshot===`static`,NS=SS(),PS=MS?AS({baseUrl:NS?.data?new URL(NS.data,window.location.origin).href:document.baseURI}):OS({baseUrl:window.location.origin}),FS=MS&&new URL(document.baseURI).pathname.replace(/\/$/,``)||void 0;(0,Gb.createRoot)(jS).render((0,Y.jsx)(ES,{api:PS,basename:FS,share:NS}));