1 line
3.4 KiB
JavaScript
1 line
3.4 KiB
JavaScript
import{a as r,j as s}from"./vendor-react-YMhRUmcb.js";import{D as w}from"./dropdown-DLDDI8f2.js";import{d as u,w as b}from"./index-D2uzyr9g.js";import{i as y,ak as g}from"./vendor-icons-DINCNwpk.js";const c=r.forwardRef(({className:n,children:t,asChild:e,...o},a)=>e&&r.isValidElement(t)?r.cloneElement(t,{ref:a,className:u(n,t.props.className),...o}):s.jsx("button",{ref:a,type:"button",className:u("outline-none",n),...o,children:t}));c.displayName="DropdownMenuTrigger";const f=r.forwardRef(({className:n,align:t="start",sideOffset:e=4,children:o,style:a,...i},m)=>s.jsx("div",{ref:m,className:u("z-50 min-w-32 overflow-hidden rounded-xl border border-border bg-card p-1 text-foreground shadow-lg","animate-fadeIn",n),style:{marginTop:`${e}px`,...a},...i,children:o}));f.displayName="DropdownMenuContent";const E=({open:n,onOpenChange:t,children:e})=>{const[o,a]=r.useState(!1),i=n!==void 0,m=d=>{i||a(d),t?.(d)},l=r.Children.toArray(e).find(d=>r.isValidElement(d)&&d.type===c),p=r.Children.toArray(e).find(d=>r.isValidElement(d)&&d.type===f);if(!l||!p)return s.jsx(s.Fragment,{children:e});const x=i?n:o;return s.jsx(w,{trigger:l,open:x,onOpenChange:m,children:r.isValidElement(p)?p.props.children:p})},h=r.forwardRef(({className:n,inset:t,onKeyDown:e,onClick:o,...a},i)=>{const m=l=>{(l.key==="Enter"||l.key===" ")&&(l.preventDefault(),o&&!a.disabled&&o(l)),e?.(l)};return s.jsx("button",{ref:i,type:"button",role:"menuitem",className:u("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none","transition-colors focus:bg-white/5 focus:text-white disabled:pointer-events-none disabled:opacity-50","text-foreground hover:bg-muted/50 w-full text-left",t&&"pl-8",n),onKeyDown:m,onClick:o,...a})});h.displayName="DropdownMenuItem";const D=r.forwardRef(({className:n,children:t,checked:e,onCheckedChange:o,...a},i)=>s.jsxs("button",{ref:i,type:"button",role:"menuitemcheckbox","aria-checked":e,onClick:()=>o?.(!e),className:u("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none","transition-colors focus:bg-white/5 focus:text-white disabled:pointer-events-none disabled:opacity-50","text-foreground hover:bg-muted/50 w-full text-left",n),...a,children:[s.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:e?s.jsx(y,{className:"h-4 w-4 text-primary"}):null}),t]}));D.displayName="DropdownMenuCheckboxItem";const N=r.forwardRef(({className:n,children:t,checked:e,...o},a)=>s.jsxs("button",{ref:a,type:"button",role:"menuitemradio","aria-checked":e,className:u("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none","transition-colors focus:bg-white/5 focus:text-white disabled:pointer-events-none disabled:opacity-50","text-foreground hover:bg-muted/50 w-full text-left",n),...o,children:[s.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:e?s.jsx(g,{className:"h-2 w-2 fill-current text-primary"}):null}),t]}));N.displayName="DropdownMenuRadioItem";const j=r.forwardRef(({className:n,inset:t,...e},o)=>s.jsx("div",{ref:o,className:u("px-2 py-1.5 text-sm font-semibold text-muted-foreground",t&&"pl-8",n),...e}));j.displayName="DropdownMenuLabel";const v=r.forwardRef(({className:n,...t},e)=>s.jsx("div",{ref:e,className:u("-mx-1 my-1 h-px bg-border",n),...t}));v.displayName="DropdownMenuSeparator";function L(){return b(t=>t.isLimited)}export{E as D,c as a,f as b,h as c,L as u};
|