@reeverdev/ui 0.3.8 → 0.3.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -52,7 +52,7 @@ import*as Z from'react';import {createContext,useState,useRef,useCallback,useEff
|
|
|
52
52
|
width: ${re.offsetWidth}px;
|
|
53
53
|
opacity: 1;
|
|
54
54
|
z-index: 9999;
|
|
55
|
-
`,document.body.appendChild(Me),te.dataTransfer.setDragImage(Me,20,15),setTimeout(()=>{document.body.removeChild(Me);},0),h(e),w?.({event:te,node:e});},X=te=>{if(te.preventDefault(),te.stopPropagation(),!g||g.key===e.key||J)return;let re=te.currentTarget.getBoundingClientRect(),Me=te.clientY-re.top,At=re.height,ft;Me<At*.25?ft=-1:Me>At*.75?ft=1:ft=0,!(C&&!C({dropNode:e,dropPosition:ft,dragNode:g}))&&(x(e.key,ft),R?.({event:te,node:e}));},xe=te=>{te.preventDefault(),te.stopPropagation(),!(!g||g.key===e.key)&&N?.({event:te,node:e,expandedKeys:z()});},Ce=te=>{te.stopPropagation(),S?.({event:te,node:e});},nt=te=>{te.preventDefault(),te.stopPropagation(),!(!g||g.key===e.key||J)&&(b!==null&&y(e,b),h(null),x(null,null));},de=te=>{h(null),x(null,null),D?.({event:te,node:e});},Je=te=>{J||Te&&i(e.key,e,te);},ee=te=>{te.stopPropagation(),!J&&!U&&a(e.key,e);},rt=Z.useMemo(()=>{if(!se||b===null)return "";switch(b){case -1:return "before:absolute before:left-0 before:right-0 before:top-0 before:h-0.5 before:bg-foreground";case 1:return "after:absolute after:left-0 after:right-0 after:bottom-0 after:h-0.5 after:bg-foreground";case 0:return "ring-2 ring-foreground ring-inset";default:return ""}},[se,b]),Wt=[...r,n];return jsxs("div",{className:"relative",children:[k&&t>0&&jsxs(Fragment,{children:[r.map((te,re)=>!te&&jsx("div",{className:"absolute border-l border-border",style:{left:`calc(${re} * var(--tree-indent) + 12px)`,top:0,bottom:0}},re)),jsx("div",{className:"absolute border-l border-border",style:{left:`calc(${t-1} * var(--tree-indent) + 12px)`,top:0,height:n?"calc(var(--tree-item-height) / 2)":"100%"}}),jsx("div",{className:"absolute border-t border-border",style:{left:`calc(${t-1} * var(--tree-indent) + 12px)`,top:"calc(var(--tree-item-height) / 2)",width:"calc(var(--tree-indent) - 4px)"}})]}),jsxs("div",{role:"treeitem","aria-expanded":U?void 0:j,"aria-selected":Te?A:void 0,"aria-disabled":J,draggable:G,onDragStart:Y,onDragOver:X,onDragEnter:xe,onDragLeave:Ce,onDrop:nt,onDragEnd:de,onClick:Je,className:m("relative",ng({size:O,isSelected:A,isDragging:q,isDisabled:J,isHoverable:Te&&!J}),rt,V&&"flex-1"),style:{paddingLeft:`calc(${t} * var(--tree-indent) + 8px)`},children:[G&&T&&B!==false&&jsx("div",{className:"flex-shrink-0 text-muted-foreground cursor-grab active:cursor-grabbing",children:B}),jsx("button",{type:"button",onClick:ee,className:m("flex-shrink-0 p-0.5 rounded hover:bg-muted/80 transition-transform",U&&"invisible"),tabIndex:-1,children:jsx(ChevronRight,{className:m("h-4 w-4 transition-transform duration-200",j&&"rotate-90")})}),fe&&jsx(Tw,{checked:W,indeterminate:_,disabled:J,onClick:te=>u(e.key,e,te)}),P&&K&&jsx("div",{className:"flex-shrink-0 text-muted-foreground ml-1",children:K}),jsx("div",{className:m("flex-1 min-w-0 truncate ml-1",V&&"flex-none"),children:e.label})]}),F&&j&&jsx("div",{role:"group",children:e.children.map((te,re)=>jsx(og,{node:te,level:t+1,isLast:re===e.children.length-1,parentIsLastPath:Wt},te.key))})]})},Mw=e=>{let t=[],n=r=>{for(let o of r)t.push(o.key),o.children&&n(o.children);};return n(e),t},kw=e=>{let t=[],n=r=>{for(let o of r)t.push(o.key),o.children&&n(o.children);};return e.children&&n(e.children),t},ag=(e,t)=>{if(!e.children)return false;for(let n of e.children)if(n.key===t||ag(n,t))return true;return false},sg=Z.forwardRef(({className:e,variant:t,size:n,data:r,draggable:o=false,allowDrop:a,expandedKeys:s,defaultExpandedKeys:i=[],defaultExpandAll:l=false,onExpand:c,selectable:d=true,multiple:u=false,selectedKeys:p,defaultSelectedKeys:f=[],onSelect:g,checkable:h=false,checkStrictly:v=false,checkedKeys:b,defaultCheckedKeys:x=[],onCheck:y,showLine:C=false,showIcon:w=false,showHandle:R=true,dragIcon:N,icon:S,leafIcon:D=jsx(File,{className:"h-4 w-4"}),folderIcon:k=jsx(Folder,{className:"h-4 w-4"}),folderOpenIcon:P=jsx(FolderOpen,{className:"h-4 w-4"}),onDragStart:T,onDragEnter:M,onDragOver:H,onDragLeave:E,onDragEnd:L,onDrop:I,blockNode:V=false,isDisabled:$=false,...O},z)=>{let F=Z.useCallback(()=>l?new Set(Mw(r)):new Set(i),[l,i,r]),[U,j]=Z.useState(F),A=s!==void 0,W=A?new Set(s):U,_=Z.useCallback((ke,_e)=>{let zt=new Set(W),Fe=!zt.has(ke);Fe?zt.add(ke):zt.delete(ke),A||j(zt),c?.(Array.from(zt),{expanded:Fe,node:_e});},[W,A,c]),[q,se]=Z.useState(new Set(f)),J=p!==void 0,Te=J?new Set(p):q,fe=Z.useCallback((ke,_e,zt)=>{let Fe=new Set(Te),ne=!Fe.has(ke);u?ne?Fe.add(ke):Fe.delete(ke):(Fe.clear(),ne&&Fe.add(ke)),J||se(Fe);let ye=[],Rr=Ca=>{for(let Xr of Ca)Fe.has(Xr.key)&&ye.push(Xr),Xr.children&&Rr(Xr.children);};Rr(r),g?.(Array.from(Fe),{selected:ne,selectedNodes:ye,node:_e,event:zt});},[Te,u,J,g,r]),[G,B]=Z.useState(new Set(x)),[K,Y]=Z.useState(new Set),X=b!==void 0,xe=X?new Set(Array.isArray(b)?b:b.checked):G,Ce=X&&!Array.isArray(b)?new Set(b.halfChecked):K,nt=Z.useCallback((ke,_e,zt)=>{let Fe=new Set(xe),ne=new Set(Ce),ye=!Fe.has(ke);if(ye?(Fe.add(ke),ne.delete(ke)):Fe.delete(ke),!v&&_e.children){let ii=kw(_e);for(let qn of ii)ye?(Fe.add(qn),ne.delete(qn)):Fe.delete(qn);}X||(B(Fe),Y(ne));let Rr=[],Ca=ii=>{for(let qn of ii)Fe.has(qn.key)&&Rr.push(qn),qn.children&&Ca(qn.children);};Ca(r);let Xr=v?{checked:Array.from(Fe),halfChecked:Array.from(ne)}:Array.from(Fe);y?.(Xr,{checked:ye,checkedNodes:Rr,node:_e,event:zt,halfCheckedKeys:Array.from(ne)});},[xe,Ce,v,X,y,r]),[de,Je]=Z.useState(null),[ee,rt]=Z.useState(null),[Wt,te]=Z.useState(null),re=Z.useCallback((ke,_e)=>{rt(ke),te(_e);},[]),Me=Z.useCallback((ke,_e)=>{!de||!I||_e===0&&ag(de,ke.key)||I({event:{},node:ke,dragNode:de,dropPosition:_e,dropToGap:_e!==0});},[de,I]),At=Z.useCallback(()=>Array.from(W),[W]),ft={expandedKeys:W,toggleExpand:_,selectedKeys:Te,handleSelect:fe,selectable:d,multiple:u,checkedKeys:xe,halfCheckedKeys:Ce,handleCheck:nt,checkable:h,checkStrictly:v,draggable:o,draggedNode:de,setDraggedNode:Je,dragOverKey:ee,dragOverPosition:Wt,setDragOver:re,handleDrop:Me,allowDrop:a,onDragStart:T,onDragEnter:M,onDragOver:H,onDragLeave:E,onDragEnd:L,showLine:C,showIcon:w,showHandle:R,dragIcon:N,icon:S,leafIcon:D,folderIcon:k,folderOpenIcon:P,blockNode:V,disabled:$,size:n,data:r,getAllKeys:At},qr=ke=>{let _e=ke.relatedTarget,zt=ke.currentTarget;(!_e||!zt.contains(_e))&&re(null,null);};return jsx(rg.Provider,{value:ft,children:jsx("div",{ref:z,role:"tree","aria-multiselectable":u||h,className:m(tg({variant:t,size:n,className:e})),onDragLeave:qr,...O,children:r.map((ke,_e)=>jsx(og,{node:ke,level:0,isLast:_e===r.length-1},ke.key))})})});sg.displayName="Tree";var lg=cva("flex rounded-md border border-input bg-background text-sm placeholder:text-muted-foreground focus:outline-none transition-colors disabled:cursor-not-allowed disabled:opacity-50",{variants:{size:{sm:"h-9 px-2 text-xs",md:"h-10 px-3 text-sm",lg:"h-11 px-4 text-base"},fullWidth:{true:"w-full",false:"w-fit min-w-48"}},defaultVariants:{size:"md",fullWidth:false}}),Dw=({text:e,query:t})=>{if(!t)return jsx(Fragment,{children:e});let n=new RegExp(`(${t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")})`,"gi"),r=e.split(n);return jsx(Fragment,{children:r.map((o,a)=>n.test(o)?jsx("mark",{className:"bg-primary/20 text-foreground rounded-sm",children:o},a):jsx("span",{children:o},a))})},Hw=(e,t)=>{let[n,r]=Z.useState(e);return Z.useEffect(()=>{let o=setTimeout(()=>{r(e);},t);return ()=>{clearTimeout(o);}},[e,t]),n},cg=Z.forwardRef(({className:e,size:t,value:n,defaultValue:r="",onChange:o,onSelect:a,options:s=[],loadOptions:i,debounceMs:l=300,minChars:c=0,placeholder:d="Type to search...",emptyText:u="No results found.",loadingText:p="Loading...",clearable:f=false,allowCustomValue:g=true,maxHeight:h=200,highlightMatch:v=true,fullWidth:b=false,disabled:x,...y},C)=>{let[w,R]=Z.useState(false),[N,S]=Z.useState(r),[D,k]=Z.useState([]),[P,T]=Z.useState(false),[M,H]=Z.useState(false),[E,L]=Z.useState(0),I=Z.useRef(null),V=Z.useRef(null),$=n!==void 0?n:N,O=Hw($,l);Z.useEffect(()=>{let K=V.current;if(!K)return;let Y=()=>{L(K.offsetWidth);};Y();let X=new ResizeObserver(Y);return X.observe(K),()=>{X.disconnect();}},[]),Z.useImperativeHandle(C,()=>I.current);let z=i?D:s,F=Z.useMemo(()=>i?z:z.filter(K=>K.label.toLowerCase().includes($.toLowerCase())),[z,$,i]);Z.useEffect(()=>{if(!i)return;if(O.length<c){k([]);return}let K=false;return (async()=>{T(true);try{let X=await i(O);K||k(X);}catch{K||k([]);}finally{K||T(false);}})(),()=>{K=true;}},[O,i,c]);let U=K=>{n===void 0&&S(K),o?.(K);},j=K=>{let Y=K.target.value;U(Y),Y.length>=c&&R(true);},A=K=>{U(K.label),a?.(K),R(false);},W=()=>{U(""),I.current?.focus();},_=()=>{H(true),R(true);},q=()=>{H(false);},se=K=>{K.key==="Escape"&&R(false),K.key==="ArrowDown"&&!w&&F.length>0&&R(true);},J=t==="sm"?"h-3 w-3":t==="lg"?"h-5 w-5":"h-4 w-4",Te=f&&$?"pr-8":"pr-3",fe=t==="sm"?"text-xs":t==="lg"?"text-base":"text-sm",G=t==="sm"?"px-1.5 py-1":t==="lg"?"px-3 py-2":"px-2 py-1.5",B=t==="sm"?"h-3 w-3":t==="lg"?"h-5 w-5":"h-4 w-4";return jsxs(Pt,{open:w,onOpenChange:R,children:[jsxs(Qn,{ref:V,className:m("relative",b?"w-full":"w-fit"),children:[jsx("input",{ref:I,type:"text",value:$,onChange:j,onFocus:_,onBlur:q,onKeyDown:se,disabled:x,placeholder:d,className:m(lg({size:t,fullWidth:b}),Te,e),style:{borderColor:M?"var(--color-foreground)":void 0},role:"combobox","aria-expanded":w,"aria-autocomplete":"list","aria-controls":"autocomplete-list",...y}),f&&$&&!x&&jsx("button",{type:"button",onClick:W,className:"absolute right-2 top-1/2 -translate-y-1/2 text-muted-foreground hover:text-foreground","aria-label":"Clear",children:jsx(X,{className:J})})]}),jsx(Et,{className:"p-0",align:"start",style:{width:E>0?E:void 0},onOpenAutoFocus:K=>K.preventDefault(),children:jsx(Command,{className:"overflow-hidden rounded-md",shouldFilter:false,children:jsx(Ve,{style:{maxHeight:h},children:jsx(Command.List,{id:"autocomplete-list",className:"p-1",children:P?jsxs("div",{className:m("flex items-center justify-center gap-2 py-6 text-muted-foreground",fe),children:[jsx(Loader2,{className:m(J,"animate-spin")}),p]}):F.length===0?jsx("div",{className:m("py-6 text-center text-muted-foreground",fe),children:u}):F.map(K=>jsxs(Command.Item,{value:K.value,disabled:K.isDisabled,onSelect:()=>A(K),className:m("relative flex cursor-default select-none items-center rounded-sm outline-none",G,fe,"data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50","data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground"),children:[jsx(Check,{className:m("mr-2 shrink-0",B,$===K.label?"opacity-100":"opacity-0")}),jsx("span",{className:"flex-1",children:v?jsx(Dw,{text:K.label,query:$}):K.label})]},K.value))})})})})]})});cg.displayName="Autocomplete";var ln=Z.createContext(null),rl=Z.createContext(null),ol=()=>{let e=Z.useContext(ln);if(!e)throw new Error("useFormContext must be used within a Form");return e},bs=()=>{let e=Z.useContext(rl);if(!e)throw new Error("useFieldContext must be used within a FormField");return e},Iw={required:(e="This field is required")=>({validate:t=>typeof t=="string"?t.trim().length>0:Array.isArray(t)?t.length>0:t!=null,message:e}),minLength:(e,t)=>({validate:n=>typeof n=="string"&&n.length>=e,message:t??`Must be at least ${e} characters`}),maxLength:(e,t)=>({validate:n=>typeof n=="string"&&n.length<=e,message:t??`Must be at most ${e} characters`}),min:(e,t)=>({validate:n=>typeof n=="number"&&n>=e,message:t??`Must be at least ${e}`}),max:(e,t)=>({validate:n=>typeof n=="number"&&n<=e,message:t??`Must be at most ${e}`}),email:(e="Invalid email address")=>({validate:t=>typeof t=="string"&&/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(t),message:e}),pattern:(e,t="Invalid format")=>({validate:n=>typeof n=="string"&&e.test(n),message:t}),custom:(e,t)=>({validate:e,message:t})},dg=Z.forwardRef(({defaultValues:e={},onSubmit:t,onError:n,validateOnBlur:r=true,validateOnChange:o=false,children:a,className:s,...i},l)=>{let[c,d]=Z.useState(e),[u,p]=Z.useState({}),[f,g]=Z.useState({}),[h,v]=Z.useState({}),[b,x]=Z.useState(false),y=Z.useRef(new Map),C=Z.useCallback((E,L)=>{y.current.set(E,L);},[]),w=Z.useCallback(E=>{y.current.delete(E);},[]),R=Z.useCallback(E=>{let L=y.current.get(E)||[],I=c[E];for(let V of L)if(!V.validate(I))return p($=>({...$,[E]:V.message})),false;return p(V=>({...V,[E]:null})),true},[c]),N=Z.useCallback(()=>{let E=true,L={};return y.current.forEach((I,V)=>{let $=c[V];for(let O of I)if(!O.validate($)){L[V]=O.message,E=false;break}L[V]||(L[V]=null);}),p(L),E},[c]),S=Z.useCallback((E,L)=>{d(I=>({...I,[E]:L})),v(I=>({...I,[E]:true})),o&&setTimeout(()=>{R(E);},0);},[o,R]),D=Z.useCallback((E,L)=>{p(I=>({...I,[E]:L}));},[]),k=Z.useCallback((E,L)=>{g(I=>({...I,[E]:L})),L&&r&&R(E);},[r,R]),P=Z.useCallback(E=>({value:c[E],error:u[E]??null,touched:f[E]??false,dirty:h[E]??false}),[c,u,f,h]),T=Z.useCallback(()=>{d(e),p({}),g({}),v({});},[e]),M=async E=>{E.preventDefault();let L={};if(y.current.forEach((V,$)=>{L[$]=true;}),g(L),!N()){n?.(u);return}if(t){x(true);try{await t(c);}finally{x(false);}}},H={values:c,errors:u,touched:f,dirty:h,isSubmitting:b,setValue:S,setError:D,setTouched:k,validateField:R,validateAll:N,registerField:C,unregisterField:w,getFieldState:P,reset:T};return jsx(ln.Provider,{value:H,children:jsx("form",{ref:l,onSubmit:M,className:m("space-y-4",s),...i,children:a})})});dg.displayName="Form";var ug=({name:e,rules:t=[],defaultValue:n,children:r})=>{let o=ol(),a=Z.useId();Z.useEffect(()=>(o.registerField(e,t),n!==void 0&&o.values[e]===void 0&&o.setValue(e,n),()=>{o.unregisterField(e);}),[e,t,n,o]);let s=o.getFieldState(e),i={name:e,id:`${a}-${e}`,value:s.value,error:s.error,touched:s.touched,dirty:s.dirty};return jsx(rl.Provider,{value:i,children:r})};ug.displayName="FormField";var mg=Z.forwardRef(({className:e,...t},n)=>jsx("div",{ref:n,className:m("space-y-1.5",e),...t}));mg.displayName="FormItem";var pg=Z.forwardRef(({className:e,required:t,children:n,...r},o)=>{let{id:a,error:s,touched:i}=bs();return jsxs(Nr,{ref:o,htmlFor:a,className:m(s&&i&&"text-danger",e),...r,children:[n,t&&jsx("span",{className:"ml-1 text-danger",children:"*"})]})});pg.displayName="FormLabel";var fg=({children:e})=>{let{name:t,id:n,error:r,touched:o}=bs(),a=ol(),s=a.getFieldState(t),i=c=>{let d=c.target,u=d.type==="checkbox"?d.checked:d.value;a.setValue(t,u);},l=()=>{a.setTouched(t,true);};return Z.cloneElement(e,{id:n,name:t,value:s.value??"",onChange:i,onBlur:l,"aria-invalid":r&&o?"true":void 0,"aria-describedby":r&&o?`${n}-error`:void 0})};fg.displayName="FormControl";var gg=Z.forwardRef(({className:e,...t},n)=>jsx("p",{ref:n,className:m("text-xs text-muted-foreground",e),...t}));gg.displayName="FormDescription";var bg=Z.forwardRef(({className:e,message:t,...n},r)=>{let{id:o,error:a,touched:s}=bs(),i=t??(s?a:null);return i?jsx("p",{ref:r,id:`${o}-error`,className:m("text-xs text-danger",e),role:"alert",...n,children:i}):null});bg.displayName="FormMessage";var vg=Z.forwardRef(({name:e,rules:t=[],validate:n,errorMessage:r,isInvalid:o,isRequired:a,onChange:s,onBlur:i,value:l,defaultValue:c,...d},u)=>{let p=Z.useContext(ln),f=!!p&&!!e,[g,h]=Z.useState(c??""),[v,b]=Z.useState(null),[x,y]=Z.useState(false),C=l!==void 0,w=C?l:f?p.values[e]:g;Z.useEffect(()=>{if(f&&p&&e){let k=[...t];return a&&!k.some(P=>P.message.toLowerCase().includes("required"))&&k.unshift({validate:P=>typeof P=="string"?P.trim().length>0:P!=null,message:"This field is required"}),n&&k.push({validate:P=>!n(String(P??"")),message:"Validation failed"}),p.registerField(e,k),c!==void 0&&p.values[e]===void 0&&p.setValue(e,c),()=>{p.unregisterField(e);}}},[e,f,p,t,a,n,c]);let R=k=>{let P=k.target.value;if(f&&p&&e?p.setValue(e,P):C||h(P),n&&x){let T=n(P);b(T??null);}s?.(k);},N=k=>{if(y(true),f&&p&&e&&p.setTouched(e,true),n){let P=n(String(w??""));b(P??null);}i?.(k);},S=r,D=o;if(f&&p&&e){let k=p.getFieldState(e);k.touched&&k.error&&(S=S??k.error,D=true);}else x&&v&&(S=S??v,D=true);return jsx(Xn,{ref:u,name:e,value:String(w??""),onChange:R,onBlur:N,isRequired:a,isInvalid:D,errorMessage:S,...d})});vg.displayName="TextField";var hg=Z.forwardRef(({name:e,rules:t=[],validate:n,errorMessage:r,isInvalid:o,isRequired:a,onChange:s,onBlur:i,value:l,defaultValue:c,...d},u)=>{let p=Z.useContext(ln),f=!!p&&!!e,[g,h]=Z.useState(c??""),[v,b]=Z.useState(null),[x,y]=Z.useState(false),C=l!==void 0,w=C?l:f?p.values[e]:g;Z.useEffect(()=>{if(f&&p&&e){let k=[...t];return a&&!k.some(P=>P.message.toLowerCase().includes("required"))&&k.unshift({validate:P=>typeof P=="string"?P.trim().length>0:P!=null,message:"This field is required"}),n&&k.push({validate:P=>!n(String(P??"")),message:"Validation failed"}),p.registerField(e,k),c!==void 0&&p.values[e]===void 0&&p.setValue(e,c),()=>{p.unregisterField(e);}}},[e,f,p,t,a,n,c]);let R=k=>{let P=k.target.value;if(f&&p&&e?p.setValue(e,P):C||h(P),n&&x){let T=n(P);b(T??null);}s?.(k);},N=k=>{if(y(true),f&&p&&e&&p.setTouched(e,true),n){let P=n(String(w??""));b(P??null);}i?.(k);},S=r,D=o;if(f&&p&&e){let k=p.getFieldState(e);k.touched&&k.error&&(S=S??k.error,D=true);}else x&&v&&(S=S??v,D=true);return jsx(La,{ref:u,name:e,value:String(w??""),onChange:R,onBlur:N,isRequired:a,isInvalid:D,errorMessage:S,...d})});hg.displayName="TextareaField";var yg=Z.forwardRef(({name:e,rules:t=[],validate:n,errorMessage:r,isInvalid:o,isRequired:a,onChange:s,onBlur:i,value:l,defaultValue:c,label:d,description:u,className:p,...f},g)=>{let h=Z.useContext(ln),v=!!h&&!!e,b=Z.useId(),[x,y]=Z.useState(c),[C,w]=Z.useState(null),[R,N]=Z.useState(false),S=l!==void 0,D=S?l:v?h.values[e]:x;Z.useEffect(()=>{if(v&&h&&e){let E=[...t];return a&&!E.some(L=>L.message.toLowerCase().includes("required"))&&E.unshift({validate:L=>L!=null&&L!=="",message:"This field is required"}),n&&E.push({validate:L=>!n(L),message:"Validation failed"}),h.registerField(e,E),c!==void 0&&h.values[e]===void 0&&h.setValue(e,c),()=>{h.unregisterField(e);}}},[e,v,h,t,a,n,c]);let k=E=>{if(v&&h&&e?h.setValue(e,E):S||y(E),n&&R){let L=n(E);w(L??null);}s?.(E);},P=E=>{if(N(true),v&&h&&e&&h.setTouched(e,true),n){let L=n(D);w(L??null);}i?.(E);},T=r,M=o;if(v&&h&&e){let E=h.getFieldState(e);E.touched&&E.error&&(T=T??E.error,M=true);}else R&&C&&(T=T??C,M=true);let H=M||!!T;return d||u||T?jsxs("div",{className:p,children:[d&&jsxs("label",{htmlFor:b,className:"text-sm font-medium leading-none mb-1.5 block",children:[d,a&&jsx("span",{className:"text-danger ml-1",children:"*"})]}),jsx(jo,{ref:g,id:b,name:e,value:D,onChange:k,onBlur:P,isDisabled:f.isDisabled,...f}),(u||T)&&jsx("p",{className:`text-xs mt-1.5 ${H?"text-danger":"text-muted-foreground"}`,children:T||u})]}):jsx(jo,{ref:g,name:e,value:D,onChange:k,onBlur:P,className:p,...f})});yg.displayName="NumberField";var wg=Z.forwardRef(({name:e,rules:t=[],validate:n,errorMessage:r,isInvalid:o,isRequired:a,multiple:s=false,value:i,defaultValue:l,onValueChange:c,label:d,description:u,className:p,...f},g)=>{let h=Z.useContext(ln),v=!!h&&!!e,b=Z.useId(),[x,y]=Z.useState(l),[C,w]=Z.useState(null),[R,N]=Z.useState(false),S=i!==void 0,D=S?i:v?h.values[e]:x;Z.useEffect(()=>{if(v&&h&&e){let H=[...t];return a&&!H.some(E=>E.message.toLowerCase().includes("required"))&&H.unshift({validate:E=>Array.isArray(E)?E.length>0:E!=null&&E!=="",message:"This field is required"}),n&&H.push({validate:E=>!n(E),message:"Validation failed"}),h.registerField(e,H),l!==void 0&&h.values[e]===void 0&&h.setValue(e,l),()=>{h.unregisterField(e);}}},[e,v,h,t,a,n,l]);let k=H=>{if(N(true),v&&h&&e?(h.setValue(e,H),h.setTouched(e,true)):S||y(H),n){let E=n(H);w(E??null);}c?.(H);},P=r,T=o;if(v&&h&&e){let H=h.getFieldState(e);H.touched&&H.error&&(P=P??H.error,T=true);}else R&&C&&(P=P??C,T=true);let M=T||!!P;return jsxs("div",{className:p,children:[d&&jsxs("label",{htmlFor:b,className:"text-sm font-medium leading-none mb-1.5 block",children:[d,a&&jsx("span",{className:"text-danger ml-1",children:"*"})]}),s?jsx(Sr,{ref:g,multiple:true,value:D,onValueChange:k,isDisabled:f.isDisabled,...f}):jsx(Sr,{ref:g,value:D,onValueChange:k,isDisabled:f.isDisabled,...f}),(u||P)&&jsx("p",{className:`text-xs mt-1.5 ${M?"text-danger":"text-muted-foreground"}`,children:P||u})]})});wg.displayName="SelectField";var Tg=cva("inline-flex items-center gap-3",{variants:{size:{sm:"[&_[data-user-avatar]]:h-8 [&_[data-user-avatar]]:w-8",md:"[&_[data-user-avatar]]:h-10 [&_[data-user-avatar]]:w-10",lg:"[&_[data-user-avatar]]:h-12 [&_[data-user-avatar]]:w-12"}},defaultVariants:{size:"md"}}),Mg=Z.forwardRef(({className:e,size:t,name:n,description:r,avatarUrl:o,avatarFallback:a,trailing:s,...i},l)=>{let c=a||n.split(" ").map(d=>d[0]).join("").toUpperCase().slice(0,2);return jsxs("div",{ref:l,className:m(Tg({size:t,className:e})),...i,children:[jsxs(Pr,{"data-user-avatar":true,children:[o&&jsx(no,{src:o,alt:n}),jsx(Er,{children:c})]}),jsxs("div",{className:"flex flex-col min-w-0",children:[jsx("span",{className:"text-sm font-medium leading-none truncate",children:n}),r&&jsx("span",{className:"text-sm text-muted-foreground truncate",children:r})]}),s&&jsx("div",{className:"ml-auto flex-shrink-0",children:s})]})});Mg.displayName="User";var Ng=cva("font-mono",{variants:{variant:{solid:"bg-primary text-primary-foreground",bordered:"border border-current bg-transparent",light:"bg-muted/50 text-foreground",flat:"bg-muted text-foreground",ghost:"bg-transparent text-foreground"},size:{sm:"px-1 py-0.5 text-xs",md:"px-1.5 py-0.5 text-sm",lg:"px-2 py-1 text-base"},radius:{none:"rounded-none",sm:"rounded-md",md:"rounded-lg",lg:"rounded-xl",full:"rounded-3xl"}},defaultVariants:{variant:"flat",size:"md",radius:"sm"}}),Pg=Z.forwardRef(({className:e,variant:t,size:n,radius:r,...o},a)=>jsx("code",{ref:a,className:m(Ng({variant:t,size:n,radius:r,className:e})),...o}));Pg.displayName="Code";function Dg(e){let[t,n]=useState(false);return useEffect(()=>{if(e){n(e==="dark");return}let r=()=>{n(document.documentElement.classList.contains("dark"));};r();let o=new MutationObserver(r);return o.observe(document.documentElement,{attributes:true,attributeFilter:["class"]}),()=>o.disconnect()},[e]),t}var Hg=Z.forwardRef(({code:e,language:t="bash",showLineNumbers:n=false,className:r,noBorder:o=false,filename:a,theme:s,hideCopyButton:i=false},l)=>{let[c,d]=useState(false),p=Dg(s)?themes.oneDark:themes.oneLight,f=async()=>{await navigator.clipboard.writeText(e),d(true),setTimeout(()=>d(false),2e3);};return jsxs("div",{ref:l,className:m("overflow-hidden",!o&&"rounded-lg border border-border",r),children:[a&&jsx("div",{className:"flex items-center px-4 py-2 border-b border-border bg-zinc-100 dark:bg-zinc-900",children:jsx("span",{className:"text-sm text-muted-foreground font-mono",children:a})}),jsxs("div",{className:"relative",children:[jsx(Highlight,{theme:p,code:e.trim(),language:t,children:({tokens:g,getLineProps:h,getTokenProps:v})=>jsx("pre",{className:"p-4 overflow-x-auto text-sm bg-zinc-100 dark:bg-zinc-900 m-0",children:g.map((b,x)=>jsxs("div",{...h({line:b}),children:[n&&jsx("span",{className:"inline-block w-8 text-zinc-400 dark:text-zinc-600 select-none text-right mr-4",children:x+1}),b.map((y,C)=>jsx("span",{...v({token:y})},C))]},x))})}),!i&&jsx("button",{onClick:f,type:"button",className:"absolute top-3 right-3 p-2 rounded-md transition-colors cursor-pointer bg-zinc-200 dark:bg-zinc-800 hover:bg-zinc-300 dark:hover:bg-zinc-700 text-zinc-600 dark:text-zinc-400 hover:text-zinc-800 dark:hover:text-zinc-200",title:"Copy to clipboard",children:c?jsx(Check,{className:"h-4 w-4 text-zinc-900 dark:text-white"}):jsx(Copy,{className:"h-4 w-4"})})]})]})});Hg.displayName="CodeBlock";var Ig=Z.forwardRef(({tabs:e,className:t,theme:n},r)=>{let[o,a]=useState(0),[s,i]=useState(false),c=Dg(n)?themes.oneDark:themes.oneLight,d=async()=>{await navigator.clipboard.writeText(e[o].code),i(true),setTimeout(()=>i(false),2e3);},u=e[o],p=u.language||"bash";return jsxs("div",{ref:r,className:m("rounded-lg border border-border overflow-hidden",t),children:[jsx("div",{className:"flex items-center gap-1 px-2 py-1.5 border-b border-border bg-zinc-100 dark:bg-zinc-900",children:e.map((f,g)=>jsxs("button",{type:"button",onClick:()=>a(g),className:m("flex items-center gap-2 px-3 py-1.5 rounded-md text-sm font-medium transition-colors cursor-pointer",o===g?"bg-zinc-200 dark:bg-zinc-800 text-zinc-900 dark:text-white":"text-zinc-600 dark:text-zinc-400 hover:text-zinc-900 dark:hover:text-zinc-200 hover:bg-zinc-200/50 dark:hover:bg-zinc-800/50"),children:[f.icon,f.name]},f.name))}),jsxs("div",{className:"relative",children:[jsx(Highlight,{theme:c,code:u.code.trim(),language:p,children:({tokens:f,getLineProps:g,getTokenProps:h})=>jsx("pre",{className:"p-4 overflow-x-auto text-sm bg-zinc-100 dark:bg-zinc-900 m-0",children:f.map((v,b)=>jsx("div",{...g({line:v}),children:v.map((x,y)=>jsx("span",{...h({token:x})},y))},b))})}),jsx("button",{onClick:d,type:"button",className:"absolute top-3 right-3 p-2 rounded-md transition-colors cursor-pointer bg-zinc-200 dark:bg-zinc-800 hover:bg-zinc-300 dark:hover:bg-zinc-700 text-zinc-600 dark:text-zinc-400 hover:text-zinc-800 dark:hover:text-zinc-200",title:"Copy to clipboard",children:s?jsx(Check,{className:"h-4 w-4 text-zinc-900 dark:text-white"}):jsx(Copy,{className:"h-4 w-4"})})]})]})});Ig.displayName="TabbedCodeBlock";var Vg=cva("relative flex items-center gap-2 font-mono rounded-lg border",{variants:{variant:{solid:"bg-zinc-800 text-white dark:bg-zinc-200 dark:text-zinc-900 border-transparent",bordered:"bg-transparent border-zinc-300 dark:border-zinc-700 text-zinc-900 dark:text-white",flat:"bg-zinc-100 text-zinc-900 dark:bg-zinc-800 dark:text-white border-transparent"},size:{sm:"px-3 py-1.5 text-xs",md:"px-4 py-2 text-sm",lg:"px-5 py-3 text-base"}},defaultVariants:{variant:"solid",size:"md"}}),Ag=Z.forwardRef(({className:e,variant:t,size:n,code:r,copyable:o=true,copyLabel:a="Copy",onCopy:s,symbol:i="$",hideSymbol:l=false,dismissible:c=false,onDismiss:d,...u},p)=>{let[f,g]=Z.useState(false),h=async()=>{try{await navigator.clipboard.writeText(r),g(!0),s?.(),setTimeout(()=>g(!1),2e3);}catch(v){console.error("Failed to copy:",v);}};return jsxs("div",{ref:p,className:m(Vg({variant:t,size:n,className:e})),...u,children:[!l&&jsx("span",{className:"text-muted-foreground select-none",children:i}),jsx("code",{className:"flex-1 truncate",children:r}),o&&jsx("button",{type:"button",onClick:h,className:m("flex-shrink-0 rounded p-1 transition-colors cursor-pointer","hover:bg-black/10 dark:hover:bg-white/10","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring"),"aria-label":f?"Copied":a,children:f?jsx(Check,{className:"h-4 w-4 text-green-500"}):jsx(Copy,{className:"h-4 w-4 text-muted-foreground"})}),c&&jsx(Rt,{size:"sm",onClick:d,className:"flex-shrink-0"})]})});Ag.displayName="Snippet";var ll=cva("overflow-hidden",{variants:{radius:{none:"rounded-none",sm:"rounded-md",md:"rounded-lg",lg:"rounded-xl",full:"rounded-full"}},defaultVariants:{radius:"md"}}),zg=Z.forwardRef(({className:e,radius:t,src:n,alt:r,fallback:o,showSkeleton:a=true,onLoad:s,onError:i,fit:l="cover",aspectRatio:c,style:d,...u},p)=>{let[f,g]=Z.useState("loading");Z.useEffect(()=>{n&&g("loading");},[n]);let h=()=>{g("loaded"),s?.();},v=()=>{g("error"),i?.();},b={contain:"object-contain",cover:"object-cover",fill:"object-fill",none:"object-none","scale-down":"object-scale-down"}[l];return f==="error"&&o?jsx("div",{className:m(ll({radius:t}),"flex items-center justify-center bg-muted",e),style:{aspectRatio:c,...d},children:o}):jsxs("div",{className:m(ll({radius:t}),"relative",e),style:{aspectRatio:c,...d},children:[f==="loading"&&a&&jsx(Da,{className:"absolute inset-0 h-full w-full"}),jsx("img",{ref:p,src:n,alt:r,onLoad:h,onError:v,className:m("h-full w-full transition-opacity duration-300",b,f==="loading"?"opacity-0":"opacity-100"),...u})]})});zg.displayName="Image";var qw=cva("flex flex-col gap-1.5",{variants:{size:{sm:"",md:"",lg:""}},defaultVariants:{size:"md"}}),Xw=cva("flex rounded-md border border-input bg-background placeholder:text-muted-foreground focus:outline-none transition-colors disabled:cursor-not-allowed disabled:opacity-50",{variants:{size:{sm:"h-9 py-1.5 text-xs",md:"h-10 py-2 text-sm",lg:"h-11 py-2.5 text-base"},isInvalid:{true:"border-danger focus:border-danger",false:""},fullWidth:{true:"w-full",false:"w-fit"},showPickerIcon:{true:"",false:""}},compoundVariants:[{size:"sm",showPickerIcon:true,className:"pl-3 pr-8"},{size:"sm",showPickerIcon:false,className:"px-3"},{size:"md",showPickerIcon:true,className:"pl-3 pr-10"},{size:"md",showPickerIcon:false,className:"px-3"},{size:"lg",showPickerIcon:true,className:"pl-4 pr-12"},{size:"lg",showPickerIcon:false,className:"px-4"}],defaultVariants:{size:"md",isInvalid:false,fullWidth:false,showPickerIcon:true}}),Zw=cva("text-muted-foreground",{variants:{size:{sm:"h-3.5 w-3.5",md:"h-4 w-4",lg:"h-5 w-5"}},defaultVariants:{size:"md"}}),Jw=cva("font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70",{variants:{size:{sm:"text-xs",md:"text-sm",lg:"text-base"}},defaultVariants:{size:"md"}}),Ms={"dd/MM/yyyy":"/","MM/dd/yyyy":"/","yyyy-MM-dd":"-","dd.MM.yyyy":"."},dl={"dd/MM/yyyy":["day","month","year"],"MM/dd/yyyy":["month","day","year"],"yyyy-MM-dd":["year","month","day"],"dd.MM.yyyy":["day","month","year"]},cl=(e,t)=>String(e).padStart(t,"0"),Og=(e,t)=>{if(!e)return "";let n=cl(e.getDate(),2),r=cl(e.getMonth()+1,2),o=cl(e.getFullYear(),4),a=Ms[t],s=dl[t],i={day:n,month:r,year:o};return s.map(l=>i[l]).join(a)},ws=(e,t)=>{let n=Ms[t],r=e.split(n);if(r.length!==3)return null;let o=dl[t],a={};if(o.forEach((i,l)=>{a[i]=parseInt(r[l],10);}),isNaN(a.day)||isNaN(a.month)||isNaN(a.year)||a.month<1||a.month>12||a.day<1||a.day>31||a.year<1e3||a.year>9999)return null;let s=new Date(a.year,a.month-1,a.day);return s.getFullYear()!==a.year||s.getMonth()!==a.month-1||s.getDate()!==a.day?null:s},Qw=e=>{let t=Ms[e];return dl[e].map(r=>r==="year"?"####":"##").join(t)},ra=(e,t)=>{if(!e?.from)return "";let n=Og(e.from,t),r=e.to?Og(e.to,t):"";return n&&r?`${n} - ${r}`:n},Fg=Z.forwardRef(({className:e,label:t,description:n,errorMessage:r,isRequired:o,isInvalid:a,size:s,labelClassName:i,inputClassName:l,descriptionClassName:c,errorClassName:d,value:u,defaultValue:p,onChange:f,minDate:g,maxDate:h,dateFormat:v="dd.MM.yyyy",showPickerIcon:b=true,mode:x="text",fullWidth:y=false,numberOfMonths:C=2,align:w="start",isDisabled:R,placeholder:N,id:S,...D},k)=>{let P=Z.useId(),T=S||P,M=`${T}-description`,H=`${T}-error`,[E,L]=Z.useState(p),[I,V]=Z.useState(""),[$,O]=Z.useState(false),[z,F]=Z.useState(false),U=u!==void 0?u:E,j=a&&r,A=Qw(v),W=Ms[v],_=" - ";Z.useEffect(()=>{z||V(ra(U,v));},[U,v,z]);let q=K=>{u===void 0&&L(K),f?.(K);},se=K=>{q(K),V(ra(K,v)),K?.from&&K?.to&&O(false);},J=K=>{let Y=K.target.value;Y=Y.replace(new RegExp(`[^0-9\\${W}\\s-]`,"g"),"");let X=`${A}${_}${A}`,xe=Y.replace(new RegExp(`[\\${W}\\s-]`,"g"),""),Ce="",nt=0;for(let de=0;de<X.length&&nt<xe.length;de++)X[de]==="#"?(Ce+=xe[nt],nt++):Ce+=X[de];if(V(Ce),Ce.length===X.length){let de=Ce.split(_);if(de.length===2){let Je=ws(de[0].trim(),v),ee=ws(de[1].trim(),v);if(Je&&ee){if(g&&(Je<g||ee<g)||h&&(Je>h||ee>h))return;Je<=ee&&q({from:Je,to:ee});}}}},Te=()=>{F(true);},fe=()=>{F(false);let K=`${A}${_}${A}`;if(I.length!==K.length)V(ra(U,v));else {let Y=I.split(_);if(Y.length!==2)V(ra(U,v));else {let X=ws(Y[0].trim(),v),xe=ws(Y[1].trim(),v);(!X||!xe||X>xe)&&V(ra(U,v));}}},G=()=>{R||O(true);},B=()=>{!R&&x==="picker"&&b&&O(true);};return jsxs("div",{className:m(qw({size:s}),e),children:[t&&jsxs("label",{htmlFor:T,className:m(Jw({size:s}),i),children:[t,o&&jsx("span",{className:"text-danger ml-0.5","aria-hidden":"true",children:"*"})]}),jsxs(Pt,{open:b&&$,onOpenChange:O,children:[jsxs(Qn,{className:m("relative",y?"w-full":"w-fit"),children:[jsx("input",{ref:k,id:T,type:"text",inputMode:x==="text"?"numeric":void 0,value:I,onChange:x==="text"?J:void 0,onClick:B,onFocus:Te,onBlur:fe,readOnly:x==="picker","aria-invalid":a,"aria-describedby":j?H:n?M:void 0,"aria-required":o,disabled:R,placeholder:N||`${v.toLowerCase()} - ${v.toLowerCase()}`,className:m(Xw({size:s,isInvalid:a,fullWidth:y,showPickerIcon:b}),x==="picker"&&b&&"cursor-pointer",l),style:{borderColor:z||b&&$?"var(--color-foreground)":void 0},...D}),b&&jsx("button",{type:"button",onClick:G,disabled:R,className:"absolute right-3 top-1/2 -translate-y-1/2 cursor-pointer disabled:cursor-not-allowed disabled:opacity-50",tabIndex:-1,"aria-label":"Open calendar",children:jsx(Calendar,{className:m(Zw({size:s}))})})]}),b&&jsx(Et,{className:"w-auto p-0",align:w,children:jsx(ro,{mode:"range",selected:U,onSelect:se,numberOfMonths:C,disabled:K=>!!(g&&K<g||h&&K>h),defaultMonth:U?.from,showMonthAndYearPickers:true})})]}),n&&!j&&jsx("p",{id:M,className:m("text-muted-foreground",s==="sm"?"text-xs":s==="lg"?"text-sm":"text-xs",c),children:n}),j&&jsx("p",{id:H,role:"alert",className:m("text-danger",s==="sm"?"text-xs":s==="lg"?"text-sm":"text-xs",d),children:r})]})});Fg.displayName="DateRangePicker";var mo=e=>String(e).padStart(2,"0"),Bg=Z.forwardRef(({value:e,onValueChange:t,placeholder:n="Pick a time",use24Hour:r=true,minuteStep:o=1,isDisabled:a=false,className:s},i)=>{let[l,c]=Z.useState(false),d=r?Array.from({length:24},(y,C)=>C):Array.from({length:12},(y,C)=>C+1),u=Array.from({length:Math.floor(60/o)},(y,C)=>C*o),p=y=>{if(!y)return n;if(r)return `${mo(y.hours)}:${mo(y.minutes)}`;let C=y.hours%12||12,w=y.hours>=12?"PM":"AM";return `${mo(C)}:${mo(y.minutes)} ${w}`},f=y=>{let C=e?.minutes??0,w=y;if(!r&&e){let R=e.hours>=12;R&&y!==12?w=y+12:!R&&y===12&&(w=0);}t?.({hours:w,minutes:C});},g=y=>{let C=e?.hours??0;t?.({hours:C,minutes:y});},h=y=>{if(!e)return;let C=e.hours;y==="AM"&&e.hours>=12?C=e.hours-12:y==="PM"&&e.hours<12&&(C=e.hours+12),t?.({hours:C,minutes:e.minutes});},v=()=>{let y=new Date;t?.({hours:y.getHours(),minutes:y.getMinutes()});},b=e?e.hours>=12?"PM":"AM":void 0,x=e?r?e.hours:e.hours%12||12:void 0;return jsxs(Pt,{open:l,onOpenChange:c,children:[jsxs(Jn,{ref:i,disabled:a,className:m("inline-flex items-center justify-start gap-2 rounded-md border border-input bg-background px-3 py-2 text-sm font-normal hover:bg-accent hover:text-accent-foreground w-full text-left",!e&&"text-muted-foreground",a&&"cursor-not-allowed opacity-50",s),children:[jsx(Clock,{className:"h-4 w-4"}),p(e)]}),jsxs(Et,{className:"w-auto p-0",align:"start",children:[jsxs("div",{className:"flex",children:[jsxs("div",{className:"flex flex-col",children:[jsx("div",{className:"border-b px-3 py-2 text-center text-xs font-medium text-muted-foreground",children:"Hour"}),jsx(Ve,{className:"h-[200px]",children:jsx("div",{className:"flex flex-col gap-1 p-1",children:d.map(y=>jsx(ue,{variant:x===y?"solid":"light",size:"sm",radius:"md",className:"h-8 w-12 justify-center",onClick:()=>f(y),children:mo(y)},y))})})]}),jsxs("div",{className:"flex flex-col border-l",children:[jsx("div",{className:"border-b px-3 py-2 text-center text-xs font-medium text-muted-foreground",children:"Min"}),jsx(Ve,{className:"h-[200px]",children:jsx("div",{className:"flex flex-col gap-1 p-1",children:u.map(y=>jsx(ue,{variant:e?.minutes===y?"solid":"light",size:"sm",radius:"md",className:"h-8 w-12 justify-center",onClick:()=>g(y),children:mo(y)},y))})})]}),!r&&jsxs("div",{className:"flex flex-col border-l",children:[jsx("div",{className:"border-b px-3 py-2 text-center text-xs font-medium text-muted-foreground",children:"\xA0"}),jsxs("div",{className:"flex flex-col gap-1 p-1",children:[jsx(ue,{variant:b==="AM"?"solid":"light",size:"sm",radius:"md",className:"h-8 w-12",onClick:()=>h("AM"),children:"AM"}),jsx(ue,{variant:b==="PM"?"solid":"light",size:"sm",radius:"md",className:"h-8 w-12",onClick:()=>h("PM"),children:"PM"})]})]})]}),jsxs("div",{className:"flex justify-end gap-2 border-t p-2",children:[jsx(ue,{variant:"light",size:"sm",radius:"md",onClick:v,children:"Now"}),jsx(ue,{size:"sm",radius:"md",onClick:()=>c(false),children:"Done"})]})]})]})});Bg.displayName="TimePicker";var ul=cva("",{variants:{variant:{default:"",bordered:"border rounded-lg overflow-hidden"}},defaultVariants:{variant:"default"}}),ml=cva("flex items-center justify-center py-4",{variants:{size:{sm:"py-2",md:"py-4",lg:"py-6"}},defaultVariants:{size:"md"}}),$g=Z.forwardRef(({className:e,variant:t,size:n,children:r,onLoadMore:o,hasMore:a,isLoading:s=false,loader:i,threshold:l=100,rootMargin:c,useWindow:d=false,endMessage:u,scrollbarVisibility:p="visible",...f},g)=>{let h=Z.useRef(null),v=Z.useRef(null),b=Z.useRef(false);Z.useImperativeHandle(g,()=>h.current),Z.useEffect(()=>{let C=v.current;if(!C)return;let w=new IntersectionObserver(R=>{let[N]=R;N.isIntersecting&&a&&!s&&!b.current&&(b.current=true,Promise.resolve(o()).finally(()=>{b.current=false;}));},{root:d?null:h.current,rootMargin:c||`${l}px`,threshold:0});return w.observe(C),()=>{w.disconnect();}},[a,s,o,l,c,d]);let x=jsx("div",{className:m(ml({size:n})),children:jsx(Loader2,{className:"h-6 w-6 animate-spin text-muted-foreground"})}),y=jsxs(Fragment,{children:[r,jsx("div",{ref:v,className:"h-px w-full"}),s&&(i||x),!a&&!s&&u&&jsx("div",{className:m(ml({size:n}),"text-muted-foreground text-sm"),children:u})]});return d?jsx("div",{ref:h,className:m(ul({variant:t,className:e})),...f,children:y}):jsx(Ve,{ref:h,visibility:p,className:m(ul({variant:t,className:e})),...f,children:y})});$g.displayName="InfiniteScroll";var pC=e=>e.map(t=>typeof t=="string"?{src:t}:t),pl=Z.forwardRef(({images:e,open:t,onOpenChange:n,initialIndex:r=0,onIndexChange:o,trigger:a,showThumbnails:s=true,showZoom:i=true,showRotate:l=true,showDownload:c=true,showFullscreen:d=true,showNavigation:u=true,showCounter:p=true,closeOnBackdropClick:f=true,className:g},h)=>{let v=Z.useMemo(()=>pC(e),[e]),[b,x]=Z.useState(r),[y,C]=Z.useState(1),[w,R]=Z.useState(0),[N,S]=Z.useState(false),[D,k]=Z.useState(false),[P,T]=Z.useState({x:0,y:0}),[M,H]=Z.useState({x:0,y:0}),[E,L]=Z.useState(false),I=Z.useRef(null),V=v[b];Z.useEffect(()=>{L(true);},[]),Z.useEffect(()=>{x(r);},[r]),Z.useEffect(()=>{o?.(b);},[b,o]),Z.useEffect(()=>{C(1),R(0),T({x:0,y:0});},[b]),Z.useEffect(()=>{if(t)return In(),()=>Vn()},[t]);let $=Z.useCallback(()=>{x(B=>B>0?B-1:v.length-1);},[v.length]),O=Z.useCallback(()=>{x(B=>B<v.length-1?B+1:0);},[v.length]),z=()=>{C(B=>Math.min(B+.5,4));},F=()=>{C(B=>{let K=Math.max(B-.5,.5);return K===1&&T({x:0,y:0}),K});},U=()=>{R(B=>(B+90)%360);},j=async()=>{if(V)try{let K=await(await fetch(V.src)).blob(),Y=URL.createObjectURL(K),X=document.createElement("a");X.href=Y,X.download=V.alt||`image-${b+1}`,document.body.appendChild(X),X.click(),document.body.removeChild(X),URL.revokeObjectURL(Y);}catch{window.open(V.src,"_blank");}},A=async()=>{if(I.current)if(N)try{await document.exitFullscreen(),S(!1);}catch{}else try{await I.current.requestFullscreen(),S(!0);}catch{}},W=B=>{y>1&&(k(true),H({x:B.clientX-P.x,y:B.clientY-P.y}));},_=B=>{D&&y>1&&T({x:B.clientX-M.x,y:B.clientY-M.y});},q=()=>{k(false);},se=()=>{n?.(false);},J=B=>{f&&B.target===B.currentTarget&&se();},Te=Z.useCallback(B=>{switch(B.key){case "ArrowLeft":$();break;case "ArrowRight":O();break;case "Escape":n?.(false);break;case "+":case "=":z();break;case "-":F();break}},[$,O,n]);if(Z.useEffect(()=>{if(t)return window.addEventListener("keydown",Te),()=>window.removeEventListener("keydown",Te)},[t,Te]),Z.useEffect(()=>{let B=()=>{S(!!document.fullscreenElement);};return document.addEventListener("fullscreenchange",B),()=>document.removeEventListener("fullscreenchange",B)},[]),v.length===0)return null;let fe=a?Z.isValidElement(a)?Z.cloneElement(a,{onClick:B=>{a.props.onClick?.(B),n?.(true);}}):jsx("button",{type:"button",onClick:()=>n?.(true),children:a}):null;return jsxs(Fragment,{children:[fe,!E||!t?null:Va.createPortal(jsxs(Fragment,{children:[jsx("div",{className:"fixed inset-0 z-50 bg-black/90 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0","data-state":t?"open":"closed",onClick:J}),jsxs("div",{ref:h,className:m("fixed inset-0 z-50 flex flex-col outline-none",g),children:[jsxs("div",{className:"flex items-center justify-between p-4 text-white",children:[jsxs("div",{className:"flex items-center gap-2",children:[p&&v.length>1&&jsxs("span",{className:"text-sm",children:[b+1," / ",v.length]}),V?.title&&jsx("span",{className:"ml-4 text-sm font-medium",children:V.title})]}),jsxs("div",{className:"flex items-center gap-1",children:[i&&jsxs(Fragment,{children:[jsx("button",{onClick:F,className:"rounded-full p-2 hover:bg-white/10 transition-colors",title:"Zoom out",children:jsx(ZoomOut,{className:"h-5 w-5"})}),jsxs("span",{className:"min-w-[3rem] text-center text-sm",children:[Math.round(y*100),"%"]}),jsx("button",{onClick:z,className:"rounded-full p-2 hover:bg-white/10 transition-colors",title:"Zoom in",children:jsx(ZoomIn,{className:"h-5 w-5"})})]}),l&&jsx("button",{onClick:U,className:"rounded-full p-2 hover:bg-white/10 transition-colors",title:"Rotate",children:jsx(RotateCw,{className:"h-5 w-5"})}),c&&jsx("button",{onClick:j,className:"rounded-full p-2 hover:bg-white/10 transition-colors",title:"Download",children:jsx(Download,{className:"h-5 w-5"})}),d&&jsx("button",{onClick:A,className:"rounded-full p-2 hover:bg-white/10 transition-colors",title:N?"Exit fullscreen":"Fullscreen",children:N?jsx(Minimize2,{className:"h-5 w-5"}):jsx(Maximize2,{className:"h-5 w-5"})}),jsxs("button",{onClick:se,className:"rounded-full p-2 hover:bg-white/10 transition-colors ml-2",children:[jsx(X,{className:"h-5 w-5"}),jsx("span",{className:"sr-only",children:"Close"})]})]})]}),jsxs("div",{ref:I,className:"relative flex-1 flex items-center justify-center overflow-hidden",onMouseDown:W,onMouseMove:_,onMouseUp:q,onMouseLeave:q,children:[u&&v.length>1&&jsxs(Fragment,{children:[jsx("button",{onClick:$,className:"absolute left-4 z-10 rounded-full bg-black/50 p-3 text-white hover:bg-black/70 transition-colors",children:jsx(ChevronLeft,{className:"h-6 w-6"})}),jsx("button",{onClick:O,className:"absolute right-4 z-10 rounded-full bg-black/50 p-3 text-white hover:bg-black/70 transition-colors",children:jsx(ChevronRight,{className:"h-6 w-6"})})]}),jsx("img",{src:V?.src,alt:V?.alt||"",className:m("max-h-full max-w-full object-contain transition-transform duration-200",D?"cursor-grabbing":y>1?"cursor-grab":""),style:{transform:`translate(${P.x}px, ${P.y}px) scale(${y}) rotate(${w}deg)`},draggable:false})]}),V?.description&&jsx("div",{className:"p-4 text-center text-white text-sm",children:V.description}),s&&v.length>1&&jsx("div",{className:"flex justify-center gap-2 p-4 overflow-x-auto",children:v.map((B,K)=>jsx("button",{onClick:()=>x(K),className:m("h-16 w-16 flex-shrink-0 overflow-hidden rounded border-2 transition-all",b===K?"border-white opacity-100":"border-transparent opacity-50 hover:opacity-75"),children:jsx("img",{src:B.src,alt:B.alt||`Thumbnail ${K+1}`,className:"h-full w-full object-cover"})},K))})]})]}),document.body)]})});pl.displayName="ImageViewer";var Gg=({children:e,images:t,index:n=0,className:r})=>{let[o,a]=Z.useState(false);return jsxs(Fragment,{children:[jsx("button",{onClick:()=>a(true),className:m("cursor-zoom-in",r),children:e}),jsx(pl,{images:t,open:o,onOpenChange:a,initialIndex:n})]})};Gg.displayName="ImageViewerTrigger";var jg=cva("inline-flex items-center justify-center font-mono font-medium",{variants:{variant:{default:"rounded border border-border bg-muted text-muted-foreground",light:"text-muted-foreground",bordered:"rounded border border-current text-foreground"},size:{sm:"min-w-[1.25rem] px-1 py-0.5 text-[10px]",md:"min-w-[1.5rem] px-1.5 py-0.5 text-xs",lg:"min-w-[2rem] px-2 py-1 text-sm"}},defaultVariants:{variant:"default",size:"md"}}),gC={cmd:"\u2318",command:"\u2318",meta:"\u2318",ctrl:"\u2303",control:"\u2303",alt:"\u2325",option:"\u2325",shift:"\u21E7",enter:"\u21B5",return:"\u21B5",backspace:"\u232B",delete:"\u2326",escape:"\u238B",esc:"\u238B",tab:"\u21E5",space:"\u2423",up:"\u2191",down:"\u2193",left:"\u2190",right:"\u2192",pageup:"\u21DE",pagedown:"\u21DF",home:"\u2912",end:"\u2913",capslock:"\u21EA"},bC={cmd:"meta",command:"meta",ctrl:"control",alt:"alt",option:"alt",shift:"shift",enter:"enter",return:"enter",backspace:"backspace",delete:"delete",escape:"escape",esc:"escape",tab:"tab",space:" ",up:"arrowup",down:"arrowdown",left:"arrowleft",right:"arrowright",pageup:"pageup",pagedown:"pagedown",home:"home",end:"end"},vC=e=>{let t=e.toLowerCase();return gC[t]||e.toUpperCase()},aa=e=>{let t=e.toLowerCase();return bC[t]||t},Ns=e=>{let t=aa(e);return ["meta","control","alt","shift"].includes(t)},Wg=Z.forwardRef(({className:e,variant:t,size:n,keys:r,children:o,onPress:a,isDisabled:s,preventDefault:i=true,...l},c)=>{Z.useEffect(()=>{if(!a||!r||s)return;let u=Array.isArray(r)?r:[r],p=u.filter(Ns).map(aa),f=u.filter(h=>!Ns(h)).map(aa),g=h=>{let v=p.includes("meta")===h.metaKey,b=p.includes("control")===h.ctrlKey,x=p.includes("alt")===h.altKey,y=p.includes("shift")===h.shiftKey,C=f.length===0||f.includes(h.key.toLowerCase());v&&b&&x&&y&&C&&(i&&h.preventDefault(),a(h));};return window.addEventListener("keydown",g),()=>window.removeEventListener("keydown",g)},[r,a,s,i]);let d=()=>r?(Array.isArray(r)?r:[r]).map((p,f)=>jsxs(Z.Fragment,{children:[f>0&&jsx("span",{className:"mx-0.5 text-muted-foreground",children:"+"}),jsx("span",{children:vC(p)})]},f)):o;return jsx("kbd",{ref:c,className:m(jg({variant:t,size:n}),s&&"opacity-50",e),...l,children:d()})});Wg.displayName="Kbd";function hC(e,t,n={}){let{isDisabled:r=false,preventDefault:o=true}=n;Z.useEffect(()=>{if(r)return;let a=Array.isArray(e)?e:[e],s=a.filter(Ns).map(aa),i=a.filter(c=>!Ns(c)).map(aa),l=c=>{let d=s.includes("meta")===c.metaKey,u=s.includes("control")===c.ctrlKey,p=s.includes("alt")===c.altKey,f=s.includes("shift")===c.shiftKey,g=i.length===0||i.includes(c.key.toLowerCase());d&&u&&p&&f&&g&&(o&&c.preventDefault(),t(c));};return window.addEventListener("keydown",l),()=>window.removeEventListener("keydown",l)},[e,t,r,o]);}var _g=cva("inline-flex items-center justify-center rounded-full cursor-pointer transition-colors hover:bg-muted/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",{variants:{size:{sm:"h-6 w-6",md:"h-8 w-8",lg:"h-10 w-10"}},defaultVariants:{size:"md"}}),Yg=Z.forwardRef(({className:e,size:t,value:n,successDuration:r=2e3,onCopySuccess:o,onCopyError:a,copyIcon:s,successIcon:i,...l},c)=>{let[d,u]=Z.useState(false),f={sm:14,md:16,lg:20}[t??"md"],g=async()=>{try{await navigator.clipboard.writeText(n),u(!0),o?.(),setTimeout(()=>{u(!1);},r);}catch(h){a?.(h);}};return jsx("button",{ref:c,type:"button",className:m(_g({size:t}),e),onClick:g,"aria-label":d?"Copied":"Copy to clipboard",...l,children:d?i??jsx(Check,{className:"text-success",style:{width:f,height:f}}):s??jsx(Copy,{style:{width:f,height:f}})})});Yg.displayName="CopyButton";var Xg=cva("flex flex-col bg-background",{variants:{variant:{default:"border",bordered:"border border-zinc-300 dark:border-zinc-700",ghost:""},size:{sm:"text-xs",md:"text-sm",lg:"text-base"},radius:{none:"rounded-none",sm:"rounded-md",md:"rounded-lg",lg:"rounded-xl",full:"rounded-3xl"}},defaultVariants:{variant:"default",size:"md",radius:"md"}}),kC=[{value:"month",label:"Month"},{value:"week",label:"Week"},{value:"day",label:"Day"}],NC=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],PC=["Mon","Tue","Wed","Thu","Fri","Sat","Sun"];function EC(e,t,n){let r=new Date(e,t,1),o=new Date(e,t+1,0),a=[],s=r.getDay()-n;s<0&&(s+=7);for(let l=s-1;l>=0;l--)a.push(new Date(e,t,-l));for(let l=1;l<=o.getDate();l++)a.push(new Date(e,t,l));let i=42-a.length;for(let l=1;l<=i;l++)a.push(new Date(e,t+1,l));return a}function SC(e,t){let n=[],o=e.getDay()-t;o<0&&(o+=7);let a=new Date(e);a.setDate(e.getDate()-o);for(let s=0;s<7;s++){let i=new Date(a);i.setDate(a.getDate()+s),n.push(i);}return n}function go(e,t){return e.getFullYear()===t.getFullYear()&&e.getMonth()===t.getMonth()&&e.getDate()===t.getDate()}function fo(e){return go(e,new Date)}function qg(e,t){return e.filter(n=>{let r=new Date(n.start),o=new Date(n.end);return go(r,t)||go(o,t)||r<t&&o>t})}var Zg=Z.forwardRef(({className:e,variant:t,size:n,radius:r,events:o=[],view:a="month",onViewChange:s,viewOptions:i=kC,date:l,onDateChange:c,onEventClick:d,onSlotClick:u,weekStartsOn:p=0,locale:f="en-US",...g},h)=>{let[v,b]=Z.useState(new Date),x=l??v,y=T=>{c?c(T):b(T);},C=p===1?PC:NC,w=()=>{let T=new Date(x);a==="month"?T.setMonth(T.getMonth()-1):a==="week"?T.setDate(T.getDate()-7):T.setDate(T.getDate()-1),y(T);},R=()=>{let T=new Date(x);a==="month"?T.setMonth(T.getMonth()+1):a==="week"?T.setDate(T.getDate()+7):T.setDate(T.getDate()+1),y(T);},N=()=>{y(new Date);},S=()=>a==="day"?x.toLocaleDateString(f,{weekday:"long",year:"numeric",month:"long",day:"numeric"}):x.toLocaleDateString(f,{year:"numeric",month:"long"}),D=()=>{let T=EC(x.getFullYear(),x.getMonth(),p);return jsxs("div",{className:"flex-1 flex flex-col",children:[jsx("div",{className:"grid grid-cols-7 border-b",children:C.map(M=>jsx("div",{className:"p-2 text-center font-medium text-muted-foreground",children:M},M))}),jsx("div",{className:"flex-1 grid grid-cols-7 grid-rows-6",children:T.map((M,H)=>{let E=qg(o,M),L=M.getMonth()===x.getMonth(),I=go(M,x);return jsxs("div",{className:m("min-h-[80px] border-b border-r p-1 cursor-pointer hover:bg-accent/50 transition-colors",!L&&"bg-muted/30",I&&"bg-accent"),onClick:()=>u?.(M),children:[jsx("div",{className:m("flex items-center justify-center w-7 h-7 rounded-full text-sm mb-1",fo(M)&&"bg-primary text-primary-foreground",!L&&"text-muted-foreground"),children:M.getDate()}),jsxs("div",{className:"space-y-0.5",children:[E.slice(0,3).map(V=>jsx("div",{className:"text-xs px-1 py-0.5 rounded truncate cursor-pointer hover:opacity-80",style:{backgroundColor:V.color||"hsl(var(--primary))",color:"white"},onClick:$=>{$.stopPropagation(),d?.(V);},children:V.title},V.id)),E.length>3&&jsxs("div",{className:"text-xs text-muted-foreground px-1",children:["+",E.length-3," more"]})]})]},H)})})]})},k=()=>{let T=SC(x,p),M=Array.from({length:24},(H,E)=>E);return jsxs("div",{className:"flex-1 flex flex-col overflow-hidden",children:[jsxs("div",{className:"grid grid-cols-[60px_repeat(7,1fr)] border-b",children:[jsx("div",{className:"p-2"}),T.map((H,E)=>{let L=go(H,x);return jsxs("div",{className:m("p-2 text-center border-l cursor-pointer hover:bg-accent/50",fo(H)&&"bg-primary/10",L&&!fo(H)&&"bg-accent"),onClick:()=>u?.(H),children:[jsx("div",{className:"text-xs text-muted-foreground",children:C[E]}),jsx("div",{className:m("text-lg font-semibold",fo(H)&&"text-primary",L&&!fo(H)&&"text-primary"),children:H.getDate()})]},E)})]}),jsx("div",{className:"flex-1 overflow-auto",children:jsx("div",{className:"grid grid-cols-[60px_repeat(7,1fr)]",children:M.map(H=>jsxs(Z.Fragment,{children:[jsxs("div",{className:"h-12 text-xs text-muted-foreground text-right pr-2 pt-0 border-b",children:[H.toString().padStart(2,"0"),":00"]}),T.map((E,L)=>{let I=new Date(E);I.setHours(H,0,0,0);let V=o.filter($=>{let O=new Date($.start);return go(O,E)&&O.getHours()===H});return jsx("div",{className:"h-12 border-b border-l cursor-pointer hover:bg-accent/50 relative",onClick:()=>u?.(I),children:V.map($=>jsx("div",{className:"absolute inset-x-0.5 top-0.5 text-xs px-1 py-0.5 rounded truncate cursor-pointer",style:{backgroundColor:$.color||"hsl(var(--primary))",color:"white"},onClick:O=>{O.stopPropagation(),d?.($);},children:$.title},$.id))},L)})]},H))})})]})},P=()=>{let T=Array.from({length:24},(H,E)=>E),M=qg(o,x);return jsxs("div",{className:"flex-1 flex flex-col overflow-hidden",children:[jsx("div",{className:"p-4 border-b text-center",children:jsx("div",{className:m("inline-flex items-center justify-center w-12 h-12 rounded-full text-2xl font-semibold",fo(x)&&"bg-primary text-primary-foreground"),children:x.getDate()})}),jsx("div",{className:"flex-1 overflow-auto",children:jsx("div",{className:"grid grid-cols-[60px_1fr]",children:T.map(H=>{let E=new Date(x);E.setHours(H,0,0,0);let L=M.filter(I=>new Date(I.start).getHours()===H);return jsxs(Z.Fragment,{children:[jsxs("div",{className:"h-12 text-xs text-muted-foreground text-right pr-2 pt-0 border-b",children:[H.toString().padStart(2,"0"),":00"]}),jsx("div",{className:"h-12 border-b border-l cursor-pointer hover:bg-accent/50 relative",onClick:()=>u?.(E),children:L.map(I=>jsx("div",{className:"absolute inset-x-1 top-0.5 text-xs px-2 py-1 rounded truncate cursor-pointer",style:{backgroundColor:I.color||"hsl(var(--primary))",color:"white"},onClick:V=>{V.stopPropagation(),d?.(I);},children:I.title},I.id))})]},H)})})})]})};return jsxs("div",{ref:h,className:m(Xg({variant:t,size:n,radius:r,className:e})),...g,children:[jsxs("div",{className:"flex items-center justify-between p-4 border-b",children:[jsx("h2",{className:"text-lg font-semibold",children:S()}),jsxs("div",{className:"flex items-center gap-2",children:[jsx(ue,{variant:"bordered",size:"sm",radius:"md",onClick:N,children:"Today"}),jsx(Sr,{options:i,value:a,onValueChange:T=>s?.(T),size:"sm",radius:"md",className:"w-[120px]"}),jsx(ue,{variant:"light",size:"sm",radius:"md",isIconOnly:true,onClick:w,children:jsx(ChevronLeft,{className:"h-4 w-4"})}),jsx(ue,{variant:"light",size:"sm",radius:"md",isIconOnly:true,onClick:R,children:jsx(ChevronRight,{className:"h-4 w-4"})})]})]}),a==="month"&&D(),a==="week"&&k(),a==="day"&&P()]})});Zg.displayName="FullCalendar";var Ds=({active:e,payload:t,label:n})=>!e||!t||!t.length?null:jsxs("div",{className:"border bg-card text-card-foreground shadow-sm rounded-lg p-3 min-w-[120px]",children:[n&&jsx("p",{className:"text-sm font-medium mb-2 text-card-foreground",children:n}),jsx("div",{className:"space-y-1",children:t.map((r,o)=>jsxs("div",{className:"flex items-center justify-between gap-4",children:[jsx("span",{className:"text-sm",style:{color:r.color},children:r.name}),jsx("span",{className:"text-sm font-medium text-card-foreground",children:typeof r.value=="number"?r.value.toLocaleString():r.value})]},o))})]}),ia=cva("w-full",{variants:{size:{sm:"h-48",md:"h-64",lg:"h-96"}},defaultVariants:{size:"md"}}),la=["hsl(var(--primary))","hsl(var(--chart-1, 220 70% 50%))","hsl(var(--chart-2, 160 60% 45%))","hsl(var(--chart-3, 30 80% 55%))","hsl(var(--chart-4, 280 65% 60%))"],Jg=Z.forwardRef(({className:e,size:t,data:n,dataKeys:r,colors:o=la,showGrid:a=true,showLegend:s=true,showTooltip:i=true,xAxisKey:l="name",curveType:c="monotone",...d},u)=>jsx("div",{ref:u,className:m(ia({size:t,className:e})),...d,children:jsx(ResponsiveContainer,{width:"100%",height:"100%",children:jsxs(LineChart,{data:n,children:[a&&jsx(CartesianGrid,{strokeDasharray:"3 3",className:"stroke-muted"}),jsx(XAxis,{dataKey:l,className:"text-xs fill-muted-foreground",tickLine:false,axisLine:false}),jsx(YAxis,{className:"text-xs fill-muted-foreground",tickLine:false,axisLine:false}),i&&jsx(Tooltip,{content:jsx(Ds,{})}),s&&jsx(Legend,{}),r.map((p,f)=>jsx(Line,{type:c,dataKey:p,stroke:o[f%o.length],strokeWidth:2,dot:{fill:o[f%o.length],strokeWidth:0},activeDot:{r:6}},p))]})})}));Jg.displayName="LineChart";var Qg=Z.forwardRef(({className:e,size:t,data:n,dataKeys:r,colors:o=la,showGrid:a=true,showLegend:s=true,showTooltip:i=true,xAxisKey:l="name",stacked:c=false,layout:d="horizontal",...u},p)=>jsx("div",{ref:p,className:m(ia({size:t,className:e})),...u,children:jsx(ResponsiveContainer,{width:"100%",height:"100%",children:jsxs(BarChart,{data:n,layout:d,children:[a&&jsx(CartesianGrid,{strokeDasharray:"3 3",className:"stroke-muted"}),jsx(XAxis,{dataKey:d==="horizontal"?l:void 0,type:d==="horizontal"?"category":"number",className:"text-xs fill-muted-foreground",tickLine:false,axisLine:false}),jsx(YAxis,{dataKey:d==="vertical"?l:void 0,type:d==="vertical"?"category":"number",className:"text-xs fill-muted-foreground",tickLine:false,axisLine:false}),i&&jsx(Tooltip,{content:jsx(Ds,{})}),s&&jsx(Legend,{}),r.map((f,g)=>jsx(Bar,{dataKey:f,fill:o[g%o.length],stackId:c?"stack":void 0,radius:[4,4,0,0]},f))]})})}));Qg.displayName="BarChart";var eb=Z.forwardRef(({className:e,size:t,data:n,dataKey:r="value",nameKey:o="name",colors:a=la,innerRadius:s=0,outerRadius:i=80,showLegend:l=true,showTooltip:c=true,showLabels:d=false,...u},p)=>jsx("div",{ref:p,className:m(ia({size:t,className:e})),...u,children:jsx(ResponsiveContainer,{width:"100%",height:"100%",children:jsxs(PieChart,{children:[c&&jsx(Tooltip,{content:jsx(Ds,{})}),l&&jsx(Legend,{}),jsx(Pie,{data:n,dataKey:r,nameKey:o,cx:"50%",cy:"50%",innerRadius:s,outerRadius:i,label:d,labelLine:d,children:n.map((f,g)=>jsx(Cell,{fill:a[g%a.length]},`cell-${g}`))})]})})}));eb.displayName="PieChart";var tb=Z.forwardRef(({className:e,size:t,data:n,dataKeys:r,colors:o=la,showGrid:a=true,showLegend:s=true,showTooltip:i=true,xAxisKey:l="name",stacked:c=false,curveType:d="monotone",...u},p)=>jsx("div",{ref:p,className:m(ia({size:t,className:e})),...u,children:jsx(ResponsiveContainer,{width:"100%",height:"100%",children:jsxs(AreaChart,{data:n,children:[a&&jsx(CartesianGrid,{strokeDasharray:"3 3",className:"stroke-muted"}),jsx(XAxis,{dataKey:l,className:"text-xs fill-muted-foreground",tickLine:false,axisLine:false}),jsx(YAxis,{className:"text-xs fill-muted-foreground",tickLine:false,axisLine:false}),i&&jsx(Tooltip,{content:jsx(Ds,{})}),s&&jsx(Legend,{}),r.map((f,g)=>jsx(Area,{type:d,dataKey:f,stroke:o[g%o.length],fill:o[g%o.length],fillOpacity:.3,stackId:c?"stack":void 0},f))]})})}));tb.displayName="AreaChart";var xl={none:"rounded-none",sm:"rounded-md",md:"rounded-lg",lg:"rounded-xl",full:"rounded-2xl"};function QC({card:e,columnId:t,radius:n,renderCard:r,onCardClick:o}){let{attributes:a,listeners:s,setNodeRef:i,transform:l,transition:c,isDragging:d}=useSortable({id:e.id,data:{columnId:t}}),u={transform:CSS.Transform.toString(l),transition:c};return jsx("div",{ref:i,style:u,className:m("p-3 cursor-grab active:cursor-grabbing transition-all bg-background border shadow-sm hover:shadow-md",d&&"opacity-50 scale-[1.02] shadow-lg",xl[n]),onClick:()=>o?.(e,t),...a,...s,children:r?r(e,t):jsxs("div",{className:"flex items-start gap-2",children:[jsx(GripVertical,{className:"h-4 w-4 text-muted-foreground flex-shrink-0 mt-0.5"}),jsxs("div",{className:"flex-1 min-w-0",children:[jsx("p",{className:"font-medium text-sm truncate",children:e.title}),e.description&&jsx("p",{className:"text-xs text-muted-foreground mt-1 line-clamp-2",children:e.description})]})]})})}function rb({column:e,radius:t,renderCard:n,onCardClick:r,onAddCard:o,showAddCard:a,addCardLabel:s,columnHeight:i}){return jsxs("div",{className:m("flex flex-col min-w-[280px] w-[280px]",xl[t]),style:{backgroundColor:e.backgroundColor||"transparent"},children:[jsx("div",{className:"flex items-center justify-between p-3 border-b",children:jsxs("div",{className:"flex items-center gap-2",children:[e.color&&jsx("div",{className:"w-3 h-3 rounded-full",style:{backgroundColor:e.color}}),jsx("h3",{className:"font-semibold text-sm",children:e.title}),jsx("span",{className:"text-xs text-muted-foreground bg-muted px-2 py-0.5 rounded-full",children:e.cards.length})]})}),jsx(Ve,{style:{height:i},className:"flex-1",children:jsxs("div",{className:"p-2 space-y-2",children:[jsx(SortableContext,{items:e.cards.map(l=>l.id),strategy:verticalListSortingStrategy,children:e.cards.map(l=>jsx(QC,{card:l,columnId:e.id,radius:t,renderCard:n,onCardClick:r},l.id))}),e.cards.length===0&&jsx("div",{className:"h-20 border-2 border-dashed rounded-lg flex items-center justify-center text-muted-foreground text-sm",children:"Drop here"})]})}),a&&jsx("div",{className:"p-2 border-t",children:jsxs(ue,{variant:"light",size:"sm",className:"w-full justify-start",onClick:l=>{l.stopPropagation(),l.preventDefault(),o?.(e.id);},children:[jsx(Plus,{className:"h-4 w-4 mr-2"}),s]})})]})}var ab=Z.forwardRef(({className:e,columns:t,onCardMove:n,onCardClick:r,onAddCard:o,renderCard:a,showAddCard:s=true,addCardLabel:i="Add card",columnHeight:l=500,radius:c="md",...d},u)=>{let[p,f]=Z.useState(false),[g,h]=Z.useState(null),[v,b]=Z.useState(null);Z.useEffect(()=>{f(true);},[]);let x=useSensors(useSensor(PointerSensor,{activationConstraint:{distance:8}}),useSensor(KeyboardSensor,{coordinateGetter:sortableKeyboardCoordinates}));if(!p)return jsx("div",{ref:u,className:m("flex gap-4 overflow-x-auto p-4 bg-muted/30",e),...d,children:t.map(N=>jsx(rb,{column:N,radius:c,renderCard:a,onCardClick:r,onAddCard:o,showAddCard:s,addCardLabel:i,columnHeight:l},N.id))});let y=N=>t.find(S=>S.cards.some(D=>D.id===N));return jsxs(DndContext,{sensors:x,collisionDetection:closestCorners,onDragStart:N=>{let{active:S}=N,D=y(S.id);if(D){let k=D.cards.find(P=>P.id===S.id);k&&(h(k),b(D.id));}},onDragOver:N=>{let{active:S,over:D}=N;if(!D)return;let k=S.id,P=D.id,T=y(k),M=y(P)||t.find(L=>L.id===P);if(!T||!M||T.id===M.id)return;let H=M.cards.findIndex(L=>L.id===P),E=H===-1?M.cards.length:H;n?.(k,T.id,M.id,E);},onDragEnd:N=>{let{active:S,over:D}=N;if(D&&S.id!==D.id){let k=y(S.id),P=y(D.id)||t.find(T=>T.id===D.id);if(k&&P){let T=P.cards.findIndex(H=>H.id===D.id),M=T===-1?P.cards.length:T;n?.(S.id,k.id,P.id,M);}}h(null),b(null);},children:[jsx("div",{ref:u,className:m("flex gap-4 overflow-x-auto p-4 bg-muted/30",e),...d,children:t.map(N=>jsx(rb,{column:N,radius:c,renderCard:a,onCardClick:r,onAddCard:o,showAddCard:s,addCardLabel:i,columnHeight:l},N.id))}),jsx(DragOverlay,{children:g&&v&&jsx("div",{className:m("p-3 cursor-grab active:cursor-grabbing transition-all bg-background border shadow-lg opacity-50 scale-[1.02]",xl[c]),children:a?a(g,v):jsxs("div",{className:"flex items-start gap-2",children:[jsx(GripVertical,{className:"h-4 w-4 text-muted-foreground flex-shrink-0 mt-0.5"}),jsxs("div",{className:"flex-1 min-w-0",children:[jsx("p",{className:"font-medium text-sm truncate",children:g.title}),g.description&&jsx("p",{className:"text-xs text-muted-foreground mt-1 line-clamp-2",children:g.description})]})]})})})]})});ab.displayName="KanbanBoard";var sb=cva("relative",{variants:{variant:{default:"",bordered:"border rounded-lg p-4",cards:"rounded-lg"}},defaultVariants:{variant:"default"}}),ib=Z.createContext(null);function Is(){let e=Z.useContext(ib);if(!e)throw new Error("useCarousel must be used within a <Carousel />");return e}var lb=Z.forwardRef(({className:e,variant:t,children:n,opts:r,plugins:o,orientation:a="horizontal",showArrows:s=true,showDots:i=true,setApi:l,...c},d)=>{let[u,p]=eT({...r,axis:a==="horizontal"?"x":"y"},o),[f,g]=Z.useState(false),[h,v]=Z.useState(false),[b,x]=Z.useState(0),[y,C]=Z.useState([]),w=Z.useCallback(k=>{k&&(x(k.selectedScrollSnap()),g(k.canScrollPrev()),v(k.canScrollNext()));},[]),R=Z.useCallback(()=>{p?.scrollPrev();},[p]),N=Z.useCallback(()=>{p?.scrollNext();},[p]),S=Z.useCallback(k=>{p?.scrollTo(k);},[p]),D=Z.useCallback(k=>{k.key==="ArrowLeft"?(k.preventDefault(),R()):k.key==="ArrowRight"&&(k.preventDefault(),N());},[R,N]);return Z.useEffect(()=>{!p||!l||l(p);},[p,l]),Z.useEffect(()=>{if(p)return C(p.scrollSnapList()),w(p),p.on("reInit",w),p.on("select",w),()=>{p?.off("select",w);}},[p,w]),jsx(ib.Provider,{value:{carouselRef:u,api:p,scrollPrev:R,scrollNext:N,canScrollPrev:f,canScrollNext:h,selectedIndex:b,scrollSnaps:y,scrollTo:S,orientation:a},children:jsxs("div",{ref:d,className:m(sb({variant:t,className:e})),onKeyDownCapture:D,role:"region","aria-roledescription":"carousel",...c,children:[jsx("div",{ref:u,className:"overflow-hidden",children:jsx("div",{className:m("flex",a==="horizontal"?"-ml-4":"-mt-4 flex-col"),children:n})}),s&&jsxs(Fragment,{children:[jsx(yl,{}),jsx(Rl,{})]}),i&&y.length>1&&jsx("div",{className:"flex justify-center gap-1.5 mt-4",children:y.map((k,P)=>jsx("button",{className:m("w-2 h-2 rounded-full transition-all",P===b?"bg-primary w-4":"bg-muted-foreground/30 hover:bg-muted-foreground/50"),onClick:()=>S(P),"aria-label":`Go to slide ${P+1}`},P))})]})})});lb.displayName="Carousel";var cb=Z.forwardRef(({className:e,...t},n)=>jsx("div",{ref:n,className:m("flex",e),...t}));cb.displayName="CarouselContent";var db=Z.forwardRef(({className:e,basis:t="basis-full",...n},r)=>{let{orientation:o}=Is();return jsx("div",{ref:r,role:"group","aria-roledescription":"slide",className:m("min-w-0 shrink-0 grow-0",o==="horizontal"?"pl-4":"pt-4",t,e),...n})});db.displayName="CarouselItem";var yl=Z.forwardRef(({className:e,variant:t="bordered",size:n="sm",isIconOnly:r=true,...o},a)=>{let{scrollPrev:s,canScrollPrev:i}=Is();return jsxs(ue,{ref:a,variant:t,size:n,isIconOnly:r,className:m("absolute left-2 top-1/2 -translate-y-1/2 h-8 w-8 rounded-full",e),isDisabled:!i,onClick:s,...o,children:[jsx(ChevronLeft,{className:"h-4 w-4"}),jsx("span",{className:"sr-only",children:"Previous slide"})]})});yl.displayName="CarouselPrevious";var Rl=Z.forwardRef(({className:e,variant:t="bordered",size:n="sm",isIconOnly:r=true,...o},a)=>{let{scrollNext:s,canScrollNext:i}=Is();return jsxs(ue,{ref:a,variant:t,size:n,isIconOnly:r,className:m("absolute right-2 top-1/2 -translate-y-1/2 h-8 w-8 rounded-full",e),isDisabled:!i,onClick:s,...o,children:[jsx(ChevronRight,{className:"h-4 w-4"}),jsx("span",{className:"sr-only",children:"Next slide"})]})});Rl.displayName="CarouselNext";var ub=cva("flex flex-col bg-popover border rounded-lg shadow-md",{variants:{size:{sm:"w-64 h-72",md:"w-80 h-96",lg:"w-96 h-[480px]"}},defaultVariants:{size:"md"}}),Vs={recent:{icon:"\u{1F550}",name:"Recent"},smileys:{icon:"\u{1F600}",name:"Smileys & Emotion"},people:{icon:"\u{1F44B}",name:"People & Body"},animals:{icon:"\u{1F43B}",name:"Animals & Nature"},food:{icon:"\u{1F354}",name:"Food & Drink"},travel:{icon:"\u{1F697}",name:"Travel & Places"},activities:{icon:"\u26BD",name:"Activities"},objects:{icon:"\u{1F4A1}",name:"Objects"},symbols:{icon:"\u2764\uFE0F",name:"Symbols"},flags:{icon:"\u{1F3F3}\uFE0F",name:"Flags"}},Cl={smileys:["\u{1F600}","\u{1F603}","\u{1F604}","\u{1F601}","\u{1F606}","\u{1F605}","\u{1F923}","\u{1F602}","\u{1F642}","\u{1F643}","\u{1F609}","\u{1F60A}","\u{1F607}","\u{1F970}","\u{1F60D}","\u{1F929}","\u{1F618}","\u{1F617}","\u263A\uFE0F","\u{1F61A}","\u{1F60B}","\u{1F61B}","\u{1F61C}","\u{1F92A}","\u{1F61D}","\u{1F911}","\u{1F917}","\u{1F92D}","\u{1F92B}","\u{1F914}","\u{1F910}","\u{1F928}","\u{1F610}","\u{1F611}","\u{1F636}","\u{1F60F}","\u{1F612}","\u{1F644}","\u{1F62C}","\u{1F925}","\u{1F60C}","\u{1F614}","\u{1F62A}","\u{1F924}","\u{1F634}","\u{1F637}","\u{1F912}","\u{1F915}","\u{1F922}","\u{1F92E}","\u{1F927}","\u{1F975}","\u{1F976}","\u{1F974}","\u{1F635}","\u{1F92F}","\u{1F920}","\u{1F973}","\u{1F978}","\u{1F60E}","\u{1F913}","\u{1F9D0}","\u{1F615}","\u{1F61F}","\u{1F641}","\u2639\uFE0F","\u{1F62E}","\u{1F62F}","\u{1F632}","\u{1F633}","\u{1F97A}","\u{1F626}","\u{1F627}","\u{1F628}","\u{1F630}","\u{1F625}","\u{1F622}","\u{1F62D}","\u{1F631}","\u{1F616}","\u{1F623}","\u{1F61E}","\u{1F613}","\u{1F629}","\u{1F62B}","\u{1F971}","\u{1F624}","\u{1F621}","\u{1F620}","\u{1F92C}","\u{1F608}","\u{1F47F}","\u{1F480}","\u2620\uFE0F","\u{1F4A9}","\u{1F921}","\u{1F479}","\u{1F47A}","\u{1F47B}","\u{1F47D}"],people:["\u{1F44B}","\u{1F91A}","\u{1F590}\uFE0F","\u270B","\u{1F596}","\u{1F44C}","\u{1F90C}","\u{1F90F}","\u270C\uFE0F","\u{1F91E}","\u{1F91F}","\u{1F918}","\u{1F919}","\u{1F448}","\u{1F449}","\u{1F446}","\u{1F595}","\u{1F447}","\u261D\uFE0F","\u{1F44D}","\u{1F44E}","\u270A","\u{1F44A}","\u{1F91B}","\u{1F91C}","\u{1F44F}","\u{1F64C}","\u{1F450}","\u{1F932}","\u{1F91D}","\u{1F64F}","\u270D\uFE0F","\u{1F485}","\u{1F933}","\u{1F4AA}","\u{1F9BE}","\u{1F9BF}","\u{1F9B5}","\u{1F9B6}","\u{1F442}","\u{1F9BB}","\u{1F443}","\u{1F9E0}","\u{1FAC0}","\u{1FAC1}","\u{1F9B7}","\u{1F9B4}","\u{1F440}","\u{1F441}\uFE0F","\u{1F445}","\u{1F444}","\u{1F476}","\u{1F9D2}","\u{1F466}","\u{1F467}","\u{1F9D1}","\u{1F471}","\u{1F468}","\u{1F9D4}","\u{1F469}","\u{1F9D3}","\u{1F474}","\u{1F475}","\u{1F64D}","\u{1F64E}","\u{1F645}","\u{1F646}","\u{1F481}","\u{1F64B}","\u{1F9CF}","\u{1F647}","\u{1F926}","\u{1F937}","\u{1F46E}","\u{1F575}\uFE0F","\u{1F482}","\u{1F977}","\u{1F477}","\u{1F934}","\u{1F478}"],animals:["\u{1F436}","\u{1F431}","\u{1F42D}","\u{1F439}","\u{1F430}","\u{1F98A}","\u{1F43B}","\u{1F43C}","\u{1F428}","\u{1F42F}","\u{1F981}","\u{1F42E}","\u{1F437}","\u{1F43D}","\u{1F438}","\u{1F435}","\u{1F648}","\u{1F649}","\u{1F64A}","\u{1F412}","\u{1F414}","\u{1F427}","\u{1F426}","\u{1F424}","\u{1F423}","\u{1F425}","\u{1F986}","\u{1F985}","\u{1F989}","\u{1F987}","\u{1F43A}","\u{1F417}","\u{1F434}","\u{1F984}","\u{1F41D}","\u{1FAB1}","\u{1F41B}","\u{1F98B}","\u{1F40C}","\u{1F41E}","\u{1F41C}","\u{1FAB0}","\u{1FAB2}","\u{1FAB3}","\u{1F99F}","\u{1F997}","\u{1F577}\uFE0F","\u{1F578}\uFE0F","\u{1F982}","\u{1F422}","\u{1F40D}","\u{1F98E}","\u{1F996}","\u{1F995}","\u{1F419}","\u{1F991}","\u{1F990}","\u{1F99E}","\u{1F980}","\u{1F421}","\u{1F420}","\u{1F41F}","\u{1F42C}","\u{1F433}","\u{1F40B}","\u{1F988}","\u{1F40A}","\u{1F405}","\u{1F406}","\u{1F993}","\u{1F98D}","\u{1F9A7}","\u{1F9A3}","\u{1F418}","\u{1F99B}","\u{1F98F}","\u{1F42A}","\u{1F42B}","\u{1F992}","\u{1F998}"],food:["\u{1F347}","\u{1F348}","\u{1F349}","\u{1F34A}","\u{1F34B}","\u{1F34C}","\u{1F34D}","\u{1F96D}","\u{1F34E}","\u{1F34F}","\u{1F350}","\u{1F351}","\u{1F352}","\u{1F353}","\u{1FAD0}","\u{1F95D}","\u{1F345}","\u{1FAD2}","\u{1F965}","\u{1F951}","\u{1F346}","\u{1F954}","\u{1F955}","\u{1F33D}","\u{1F336}\uFE0F","\u{1FAD1}","\u{1F952}","\u{1F96C}","\u{1F966}","\u{1F9C4}","\u{1F9C5}","\u{1F344}","\u{1F95C}","\u{1F330}","\u{1F35E}","\u{1F950}","\u{1F956}","\u{1FAD3}","\u{1F968}","\u{1F96F}","\u{1F95E}","\u{1F9C7}","\u{1F9C0}","\u{1F356}","\u{1F357}","\u{1F969}","\u{1F953}","\u{1F354}","\u{1F35F}","\u{1F355}","\u{1F32D}","\u{1F96A}","\u{1F32E}","\u{1F32F}","\u{1FAD4}","\u{1F959}","\u{1F9C6}","\u{1F95A}","\u{1F373}","\u{1F958}","\u{1F372}","\u{1FAD5}","\u{1F963}","\u{1F957}","\u{1F37F}","\u{1F9C8}","\u{1F9C2}","\u{1F96B}","\u{1F371}","\u{1F358}","\u{1F359}","\u{1F35A}","\u{1F35B}","\u{1F35C}","\u{1F35D}","\u{1F360}","\u{1F362}","\u{1F363}","\u{1F364}","\u{1F365}"],travel:["\u{1F697}","\u{1F695}","\u{1F699}","\u{1F68C}","\u{1F68E}","\u{1F3CE}\uFE0F","\u{1F693}","\u{1F691}","\u{1F692}","\u{1F690}","\u{1F6FB}","\u{1F69A}","\u{1F69B}","\u{1F69C}","\u{1F9AF}","\u{1F9BD}","\u{1F9BC}","\u{1F6F4}","\u{1F6B2}","\u{1F6F5}","\u{1F3CD}\uFE0F","\u{1F6FA}","\u{1F6A8}","\u{1F694}","\u{1F68D}","\u{1F698}","\u{1F696}","\u{1F6A1}","\u{1F6A0}","\u{1F69F}","\u{1F683}","\u{1F68B}","\u{1F69E}","\u{1F69D}","\u{1F684}","\u{1F685}","\u{1F688}","\u{1F682}","\u{1F686}","\u{1F687}","\u{1F68A}","\u{1F689}","\u2708\uFE0F","\u{1F6EB}","\u{1F6EC}","\u{1F6E9}\uFE0F","\u{1F4BA}","\u{1F6F0}\uFE0F","\u{1F680}","\u{1F6F8}","\u{1F681}","\u{1F6F6}","\u26F5","\u{1F6A4}","\u{1F6E5}\uFE0F","\u{1F6F3}\uFE0F","\u26F4\uFE0F","\u{1F6A2}","\u2693","\u{1FA9D}","\u26FD","\u{1F6A7}","\u{1F6A6}","\u{1F6A5}","\u{1F68F}","\u{1F5FA}\uFE0F","\u{1F5FF}","\u{1F5FD}","\u{1F5FC}","\u{1F3F0}","\u{1F3EF}","\u{1F3DF}\uFE0F","\u{1F3A1}","\u{1F3A2}","\u{1F3A0}","\u26F2","\u26F1\uFE0F","\u{1F3D6}\uFE0F","\u{1F3DD}\uFE0F","\u{1F3DC}\uFE0F"],activities:["\u26BD","\u{1F3C0}","\u{1F3C8}","\u26BE","\u{1F94E}","\u{1F3BE}","\u{1F3D0}","\u{1F3C9}","\u{1F94F}","\u{1F3B1}","\u{1FA80}","\u{1F3D3}","\u{1F3F8}","\u{1F3D2}","\u{1F3D1}","\u{1F94D}","\u{1F3CF}","\u{1FA83}","\u{1F945}","\u26F3","\u{1FA81}","\u{1F3F9}","\u{1F3A3}","\u{1F93F}","\u{1F94A}","\u{1F94B}","\u{1F3BD}","\u{1F6F9}","\u{1F6FC}","\u{1F6F7}","\u26F8\uFE0F","\u{1F94C}","\u{1F3BF}","\u26F7\uFE0F","\u{1F3C2}","\u{1FA82}","\u{1F3CB}\uFE0F","\u{1F93C}","\u{1F938}","\u26F9\uFE0F","\u{1F93A}","\u{1F93E}","\u{1F3CC}\uFE0F","\u{1F3C7}","\u26D1\uFE0F","\u{1F9D8}","\u{1F3C4}","\u{1F3CA}","\u{1F93D}","\u{1F6A3}","\u{1F9D7}","\u{1F6B5}","\u{1F6B4}","\u{1F3C6}","\u{1F947}","\u{1F948}","\u{1F949}","\u{1F3C5}","\u{1F396}\uFE0F","\u{1F3F5}\uFE0F","\u{1F397}\uFE0F","\u{1F3AB}","\u{1F39F}\uFE0F","\u{1F3AA}","\u{1F939}","\u{1F3AD}","\u{1FA70}","\u{1F3A8}","\u{1F3AC}","\u{1F3A4}","\u{1F3A7}","\u{1F3BC}","\u{1F3B9}","\u{1F941}","\u{1FA98}","\u{1F3B7}","\u{1F3BA}","\u{1FA97}","\u{1F3B8}","\u{1FA95}"],objects:["\u231A","\u{1F4F1}","\u{1F4F2}","\u{1F4BB}","\u2328\uFE0F","\u{1F5A5}\uFE0F","\u{1F5A8}\uFE0F","\u{1F5B1}\uFE0F","\u{1F5B2}\uFE0F","\u{1F579}\uFE0F","\u{1F5DC}\uFE0F","\u{1F4BD}","\u{1F4BE}","\u{1F4BF}","\u{1F4C0}","\u{1F4FC}","\u{1F4F7}","\u{1F4F8}","\u{1F4F9}","\u{1F3A5}","\u{1F4FD}\uFE0F","\u{1F39E}\uFE0F","\u{1F4DE}","\u260E\uFE0F","\u{1F4DF}","\u{1F4E0}","\u{1F4FA}","\u{1F4FB}","\u{1F399}\uFE0F","\u{1F39A}\uFE0F","\u{1F39B}\uFE0F","\u{1F9ED}","\u23F1\uFE0F","\u23F2\uFE0F","\u23F0","\u{1F570}\uFE0F","\u231B","\u23F3","\u{1F4E1}","\u{1F50B}","\u{1F50C}","\u{1F4A1}","\u{1F526}","\u{1F56F}\uFE0F","\u{1FA94}","\u{1F9EF}","\u{1F6E2}\uFE0F","\u{1F4B8}","\u{1F4B5}","\u{1F4B4}","\u{1F4B6}","\u{1F4B7}","\u{1FA99}","\u{1F4B0}","\u{1F4B3}","\u{1F48E}","\u2696\uFE0F","\u{1FA9C}","\u{1F9F0}","\u{1FA9B}","\u{1F527}","\u{1F528}","\u2692\uFE0F","\u{1F6E0}\uFE0F","\u26CF\uFE0F","\u{1FA9A}","\u{1F529}","\u2699\uFE0F","\u{1FAA4}","\u{1F9F1}","\u26D3\uFE0F","\u{1F9F2}","\u{1F52B}","\u{1F4A3}","\u{1F9E8}","\u{1FA93}","\u{1F52A}","\u{1F5E1}\uFE0F","\u2694\uFE0F","\u{1F6E1}\uFE0F"],symbols:["\u2764\uFE0F","\u{1F9E1}","\u{1F49B}","\u{1F49A}","\u{1F499}","\u{1F49C}","\u{1F5A4}","\u{1F90D}","\u{1F90E}","\u{1F494}","\u2763\uFE0F","\u{1F495}","\u{1F49E}","\u{1F493}","\u{1F497}","\u{1F496}","\u{1F498}","\u{1F49D}","\u{1F49F}","\u262E\uFE0F","\u271D\uFE0F","\u262A\uFE0F","\u{1F549}\uFE0F","\u2638\uFE0F","\u2721\uFE0F","\u{1F52F}","\u{1F54E}","\u262F\uFE0F","\u2626\uFE0F","\u{1F6D0}","\u26CE","\u2648","\u2649","\u264A","\u264B","\u264C","\u264D","\u264E","\u264F","\u2650","\u2651","\u2652","\u2653","\u{1F194}","\u269B\uFE0F","\u{1F251}","\u2622\uFE0F","\u2623\uFE0F","\u{1F4F4}","\u{1F4F3}","\u{1F236}","\u{1F21A}","\u{1F238}","\u{1F23A}","\u{1F237}\uFE0F","\u2734\uFE0F","\u{1F19A}","\u{1F4AE}","\u{1F250}","\u3299\uFE0F","\u3297\uFE0F","\u{1F234}","\u{1F235}","\u{1F239}","\u{1F232}","\u{1F170}\uFE0F","\u{1F171}\uFE0F","\u{1F18E}","\u{1F191}","\u{1F17E}\uFE0F","\u{1F198}","\u274C","\u2B55","\u{1F6D1}","\u26D4","\u{1F4DB}","\u{1F6AB}","\u{1F4AF}","\u{1F4A2}","\u2668\uFE0F"],flags:["\u{1F3F3}\uFE0F","\u{1F3F4}","\u{1F3C1}","\u{1F6A9}","\u{1F3F3}\uFE0F\u200D\u{1F308}","\u{1F3F3}\uFE0F\u200D\u26A7\uFE0F","\u{1F1FA}\u{1F1F3}","\u{1F1E6}\u{1F1EB}","\u{1F1E6}\u{1F1F1}","\u{1F1E9}\u{1F1FF}","\u{1F1E6}\u{1F1F8}","\u{1F1E6}\u{1F1E9}","\u{1F1E6}\u{1F1F4}","\u{1F1E6}\u{1F1EE}","\u{1F1E6}\u{1F1F6}","\u{1F1E6}\u{1F1EC}","\u{1F1E6}\u{1F1F7}","\u{1F1E6}\u{1F1F2}","\u{1F1E6}\u{1F1FC}","\u{1F1E6}\u{1F1FA}","\u{1F1E6}\u{1F1F9}","\u{1F1E6}\u{1F1FF}","\u{1F1E7}\u{1F1F8}","\u{1F1E7}\u{1F1ED}","\u{1F1E7}\u{1F1E9}","\u{1F1E7}\u{1F1E7}","\u{1F1E7}\u{1F1FE}","\u{1F1E7}\u{1F1EA}","\u{1F1E7}\u{1F1FF}","\u{1F1E7}\u{1F1EF}","\u{1F1E7}\u{1F1F2}","\u{1F1E7}\u{1F1F9}","\u{1F1E7}\u{1F1F4}","\u{1F1E7}\u{1F1E6}","\u{1F1E7}\u{1F1FC}","\u{1F1E7}\u{1F1F7}","\u{1F1E7}\u{1F1F3}","\u{1F1E7}\u{1F1EC}","\u{1F1E7}\u{1F1EB}","\u{1F1E7}\u{1F1EE}","\u{1F1E8}\u{1F1FB}","\u{1F1F0}\u{1F1ED}","\u{1F1E8}\u{1F1F2}","\u{1F1E8}\u{1F1E6}","\u{1F1E8}\u{1F1EB}","\u{1F1F9}\u{1F1E9}","\u{1F1E8}\u{1F1F1}","\u{1F1E8}\u{1F1F3}","\u{1F1E8}\u{1F1F4}","\u{1F1F0}\u{1F1F2}","\u{1F1E8}\u{1F1EC}","\u{1F1E8}\u{1F1E9}","\u{1F1E8}\u{1F1F7}","\u{1F1ED}\u{1F1F7}","\u{1F1E8}\u{1F1FA}","\u{1F1E8}\u{1F1FE}","\u{1F1E8}\u{1F1FF}","\u{1F1E9}\u{1F1F0}","\u{1F1E9}\u{1F1EF}","\u{1F1E9}\u{1F1F2}","\u{1F1E9}\u{1F1F4}","\u{1F1EA}\u{1F1E8}","\u{1F1EA}\u{1F1EC}","\u{1F1F8}\u{1F1FB}","\u{1F1EC}\u{1F1F6}","\u{1F1EA}\u{1F1F7}","\u{1F1EA}\u{1F1EA}","\u{1F1EA}\u{1F1F9}","\u{1F1EA}\u{1F1FA}","\u{1F1EB}\u{1F1EF}","\u{1F1EB}\u{1F1EE}","\u{1F1EB}\u{1F1F7}","\u{1F1EC}\u{1F1E6}","\u{1F1EC}\u{1F1F2}","\u{1F1EC}\u{1F1EA}","\u{1F1E9}\u{1F1EA}","\u{1F1EC}\u{1F1ED}","\u{1F1EC}\u{1F1F7}","\u{1F1EC}\u{1F1F9}","\u{1F1EC}\u{1F1F3}"]},mb=Z.forwardRef(({className:e,size:t,onEmojiSelect:n,recentEmojis:r=[],defaultCategory:o="smileys",showSearch:a=true,showCategories:s=true,...i},l)=>{let[c,d]=Z.useState(r.length>0?"recent":o),[u,p]=Z.useState(""),g=u?Object.values(Cl).flat().filter(v=>v.toLowerCase().includes(u.toLowerCase())):c==="recent"?r:Cl[c]||[],h=v=>{n?.(v);};return jsxs("div",{ref:l,className:m(ub({size:t,className:e})),...i,children:[a&&jsx("div",{className:"p-2 border-b",children:jsxs("div",{className:"relative",children:[jsx(Search,{className:"absolute left-2.5 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground"}),jsx(Xn,{placeholder:"Search emojis...",value:u,onChange:v=>p(v.target.value),className:"pl-8 h-8"})]})}),s&&!u&&jsx(Ve,{orientation:"horizontal",className:"border-b",children:jsx("div",{className:"flex px-1",children:Object.entries(Vs).map(([v,{icon:b}])=>v==="recent"&&r.length===0?null:jsx("button",{className:m("shrink-0 p-2 text-lg hover:bg-accent rounded transition-colors",c===v&&"bg-accent"),onClick:()=>d(v),title:Vs[v].name,children:b},v))})}),!u&&jsx("div",{className:"px-3 py-1.5 text-xs font-medium text-muted-foreground",children:Vs[c].name}),jsx(Ve,{className:"flex-1",children:jsxs("div",{className:"grid grid-cols-8 gap-1 p-2",children:[g.map((v,b)=>jsx("button",{className:"w-8 h-8 flex items-center justify-center text-xl hover:bg-accent rounded transition-colors",onClick:()=>h(v),children:v},`${v}-${b}`)),g.length===0&&jsx("div",{className:"col-span-8 py-8 text-center text-muted-foreground text-sm",children:"No emojis found"})]})})]})});mb.displayName="EmojiPicker";var fb=cva("flex flex-col border rounded-lg bg-background overflow-hidden",{variants:{variant:{default:"",bordered:"border border-zinc-300 dark:border-zinc-700",ghost:"border-none bg-transparent"}},defaultVariants:{variant:"default"}});function fT(e,t,n){return centerCrop(makeAspectCrop({unit:"%",width:90},n,e,t),e,t)}async function pb(e,t,n=0,r=1){let o=document.createElement("canvas"),a=o.getContext("2d");if(!a)return null;let s=e.naturalWidth/e.width,i=e.naturalHeight/e.height,l=window.devicePixelRatio||1;o.width=Math.floor(t.width*s*l),o.height=Math.floor(t.height*i*l),a.scale(l,l),a.imageSmoothingQuality="high";let c=t.x*s,d=t.y*i,u=n*Math.PI/180,p=e.naturalWidth/2,f=e.naturalHeight/2;return a.save(),a.translate(-c,-d),a.translate(p,f),a.rotate(u),a.scale(r,r),a.translate(-p,-f),a.drawImage(e,0,0,e.naturalWidth,e.naturalHeight,0,0,e.naturalWidth,e.naturalHeight),a.restore(),new Promise(g=>{o.toBlob(h=>{g(h);},"image/png");})}var gb=Z.forwardRef(({className:e,variant:t,src:n,aspectRatio:r,onCropChange:o,onCropComplete:a,showZoom:s=true,showRotation:i=true,minZoom:l=1,maxZoom:c=3,circularCrop:d=false,initialCrop:u,...p},f)=>{let g=Z.useRef(null),[h,v]=Z.useState(),[b,x]=Z.useState(),[y,C]=Z.useState(1),[w,R]=Z.useState(0),N=P=>{let{width:T,height:M}=P.currentTarget;if(r){let H=fT(T,M,r);v(H);}else v(u||{unit:"%",x:10,y:10,width:80,height:80});},S=P=>{v(P),o?.(P);},D=async P=>{if(x(P),a&&g.current&&P.width&&P.height){let T=await pb(g.current,P,w,y);a(T);}},k=()=>{R(P=>(P+90)%360);};return Z.useEffect(()=>{b&&g.current&&a&&pb(g.current,b,w,y).then(P=>{a(P);});},[y,w,b,a]),jsxs("div",{ref:f,className:m(fb({variant:t,className:e})),...p,children:[jsx("div",{className:"flex-1 flex items-center justify-center p-4 bg-muted/30 min-h-[300px]",children:jsx(iT,{crop:h,onChange:S,onComplete:D,aspect:r,circularCrop:d,className:"max-h-[400px]",children:jsx("img",{ref:g,src:n,alt:"Crop preview",crossOrigin:"anonymous",onLoad:N,style:{transform:`scale(${y}) rotate(${w}deg)`,maxHeight:"400px"}})})}),jsxs("div",{className:"flex items-center gap-4 p-3 border-t",children:[s&&jsxs("div",{className:"flex items-center gap-2 flex-1",children:[jsx(ZoomOut,{className:"h-4 w-4 text-muted-foreground"}),jsx(Zt,{value:[y],onValueChange:([P])=>C(P),min:l,max:c,step:.1,className:"flex-1"}),jsx(ZoomIn,{className:"h-4 w-4 text-muted-foreground"})]}),i&&jsx(ue,{variant:"bordered",size:"sm",isIconOnly:true,onClick:k,children:jsx(RotateCw,{className:"h-4 w-4"})})]})]})});gb.displayName="ImageCropper";var Ml=cva("inline-block",{variants:{variant:{default:"",bordered:"border rounded-lg p-2",card:"border rounded-lg p-4 bg-card shadow-sm"},size:{sm:"",md:"",lg:""}},defaultVariants:{variant:"default",size:"md"}}),vT={sm:96,md:128,lg:192},bb=Z.forwardRef(({className:e,variant:t,size:n,value:r,qrSize:o,fgColor:a="currentColor",bgColor:s="transparent",level:i="M",includeMargin:l=false,title:c,logo:d,logoSize:u=40,logoPadding:p=4,logoBackgroundColor:f="white",...g},h)=>{let v=Z.useRef(null),b=o??vT[n??"md"];return Z.useImperativeHandle(h,()=>({download:(x="qrcode.png")=>{let y=v.current?.querySelector("svg");if(!y)return;let C=new XMLSerializer().serializeToString(y),w=document.createElement("canvas"),R=w.getContext("2d"),N=new Image,S=l?32:0;w.width=b+S,w.height=b+S,N.onload=()=>{if(!R)return;R.fillStyle=s==="transparent"?"#ffffff":s,R.fillRect(0,0,w.width,w.height),R.drawImage(N,0,0);let D=document.createElement("a");D.download=x.endsWith(".png")?x:`${x}.png`,D.href=w.toDataURL("image/png"),D.click();},N.src="data:image/svg+xml;base64,"+btoa(unescape(encodeURIComponent(C)));}})),r?jsx("div",{ref:v,className:m(Ml({variant:t,size:n,className:e})),...g,children:jsxs("div",{className:"relative inline-block",children:[jsx(gT,{value:r,size:b,fgColor:a,bgColor:s,level:i,title:c,style:{padding:l?16:0}}),d&&jsx("div",{className:"absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 rounded",style:{padding:p,backgroundColor:f},children:jsx("img",{src:d,alt:"Logo",style:{width:u,height:u,objectFit:"contain"}})})]})}):jsx("div",{ref:v,className:m(Ml({variant:t,size:n,className:e})),...g,children:jsx("div",{className:"flex items-center justify-center bg-muted text-muted-foreground text-xs rounded",style:{width:b,height:b},children:"No data"})})});bb.displayName="QRCode";var As=({children:e,defaultTheme:t="system",storageKey:n="reever-ui-theme",enableSystem:r=true,disableTransitionOnChange:o=false,attribute:a="class",forcedTheme:s,themes:i=["light","dark"]})=>jsx(ThemeProvider,{defaultTheme:t,storageKey:n,enableSystem:r,disableTransitionOnChange:o,attribute:a,forcedTheme:s,themes:i,children:e});As.displayName="ThemeProvider";var TT=cva("",{variants:{variant:{default:"",bordered:"",ghost:""},size:{sm:"",md:"",lg:""}},defaultVariants:{variant:"ghost",size:"md"}}),vb=Z.forwardRef(({className:e,variant:t="ghost",size:n="md",mode:r="dropdown"},o)=>{let{theme:a,setTheme:s,resolvedTheme:i}=useTheme(),[l,c]=Z.useState(false);Z.useEffect(()=>{c(true);},[]);let d=()=>{let u=["light","dark","system"],f=(u.indexOf(a||"system")+1)%u.length;s(u[f]);};return l?r==="cycle"?jsxs(ue,{ref:o,variant:t==="default"?"bordered":t,size:"sm",isIconOnly:true,className:e,onClick:d,children:[i==="dark"?jsx(Moon,{className:"h-4 w-4"}):jsx(Sun,{className:"h-4 w-4"}),jsx("span",{className:"sr-only",children:"Toggle theme"})]}):jsxs(Yt,{children:[jsx(qt,{children:jsxs(ue,{ref:o,variant:t==="default"?"bordered":t,size:"sm",isIconOnly:true,className:e,children:[jsx(Sun,{className:"h-4 w-4 rotate-0 scale-100 transition-all dark:-rotate-90 dark:scale-0"}),jsx(Moon,{className:"absolute h-4 w-4 rotate-90 scale-0 transition-all dark:rotate-0 dark:scale-100"}),jsx("span",{className:"sr-only",children:"Toggle theme"})]})}),jsxs(Xt,{align:"end",children:[jsxs(Nt,{onClick:()=>s("light"),children:[jsx(Sun,{className:"mr-2 h-4 w-4"}),"Light"]}),jsxs(Nt,{onClick:()=>s("dark"),children:[jsx(Moon,{className:"mr-2 h-4 w-4"}),"Dark"]}),jsxs(Nt,{onClick:()=>s("system"),children:[jsx(Monitor,{className:"mr-2 h-4 w-4"}),"System"]})]})]}):jsxs(ue,{ref:o,variant:t==="default"?"bordered":t,size:"sm",isIconOnly:true,className:e,isDisabled:true,children:[jsx(Sun,{className:"h-4 w-4"}),jsx("span",{className:"sr-only",children:"Toggle theme"})]})});vb.displayName="ThemeToggle";var MT={disableAnimation:false,defaultRadius:"md",defaultColor:"default",locale:"en-US",navigate:void 0},Nl=Z.createContext(MT),kT=()=>Z.useContext(Nl),xb=({children:e,disableAnimation:t=false,defaultRadius:n="md",defaultColor:r="default",locale:o="en-US",navigate:a,defaultTheme:s="system",storageKey:i="reever-ui-theme",enableSystem:l=true,disableTransitionOnChange:c=false,attribute:d="class",forcedTheme:u,themes:p=["light","dark"]})=>{let f=Z.useMemo(()=>({disableAnimation:t,defaultRadius:n,defaultColor:r,locale:o,navigate:a}),[t,n,r,o,a]);return jsx(Nl.Provider,{value:f,children:jsx(As,{defaultTheme:s,storageKey:i,enableSystem:l,disableTransitionOnChange:c||t,attribute:d,forcedTheme:u,themes:p,children:e})})};xb.displayName="ReeverUIProvider";var Rb=cva("flex flex-col gap-1.5",{variants:{size:{sm:"",md:"",lg:""}},defaultVariants:{size:"md"}}),PT=cva("flex rounded-md border border-input bg-background placeholder:text-muted-foreground focus:outline-none transition-colors disabled:cursor-not-allowed disabled:opacity-50",{variants:{size:{sm:"h-9 py-1.5 text-xs",md:"h-10 py-2 text-sm",lg:"h-11 py-2.5 text-base"},isInvalid:{true:"border-danger focus:border-danger",false:""},fullWidth:{true:"w-full",false:"w-fit"},showPickerIcon:{true:"",false:""}},compoundVariants:[{size:"sm",showPickerIcon:true,className:"pl-3 pr-8"},{size:"sm",showPickerIcon:false,className:"px-3"},{size:"md",showPickerIcon:true,className:"pl-3 pr-10"},{size:"md",showPickerIcon:false,className:"px-3"},{size:"lg",showPickerIcon:true,className:"pl-4 pr-12"},{size:"lg",showPickerIcon:false,className:"px-4"}],defaultVariants:{size:"md",isInvalid:false,fullWidth:false,showPickerIcon:true}}),ET=cva("text-muted-foreground",{variants:{size:{sm:"h-3.5 w-3.5",md:"h-4 w-4",lg:"h-5 w-5"}},defaultVariants:{size:"md"}}),ST=cva("font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70",{variants:{size:{sm:"text-xs",md:"text-sm",lg:"text-base"}},defaultVariants:{size:"md"}}),Ks={"dd/MM/yyyy":"/","MM/dd/yyyy":"/","yyyy-MM-dd":"-","dd.MM.yyyy":"."},El={"dd/MM/yyyy":["day","month","year"],"MM/dd/yyyy":["month","day","year"],"yyyy-MM-dd":["year","month","day"],"dd.MM.yyyy":["day","month","year"]},Pl=(e,t)=>String(e).padStart(t,"0"),Os=(e,t)=>{if(!e)return "";let n=Pl(e.getDate(),2),r=Pl(e.getMonth()+1,2),o=Pl(e.getFullYear(),4),a=Ks[t],s=El[t],i={day:n,month:r,year:o};return s.map(l=>i[l]).join(a)},yb=(e,t)=>{let n=Ks[t],r=e.split(n);if(r.length!==3)return null;let o=El[t],a={};if(o.forEach((i,l)=>{a[i]=parseInt(r[l],10);}),isNaN(a.day)||isNaN(a.month)||isNaN(a.year)||a.month<1||a.month>12||a.day<1||a.day>31||a.year<1e3||a.year>9999)return null;let s=new Date(a.year,a.month-1,a.day);return s.getFullYear()!==a.year||s.getMonth()!==a.month-1||s.getDate()!==a.day?null:s},LT=e=>{let t=Ks[e];return El[e].map(r=>r==="year"?"####":"##").join(t)},wb=Z.forwardRef(({className:e,label:t,description:n,errorMessage:r,isRequired:o,isInvalid:a,size:s,labelClassName:i,inputClassName:l,descriptionClassName:c,errorClassName:d,value:u,defaultValue:p,onChange:f,minDate:g,maxDate:h,dateFormat:v="dd.MM.yyyy",showPickerIcon:b=true,mode:x="text",fullWidth:y=false,isDisabled:C,placeholder:w,id:R,...N},S)=>{let D=Z.useId(),k=R||D,P=`${k}-description`,T=`${k}-error`,[M,H]=Z.useState(p??null),[E,L]=Z.useState(""),[I,V]=Z.useState(false),[$,O]=Z.useState(false),z=u!==void 0?u:M,F=a&&r,U=Ks[v],j=LT(v);Z.useEffect(()=>{$||L(Os(z,v));},[z,v,$]);let A=fe=>{u===void 0&&H(fe),f?.(fe);},W=fe=>{let G=fe??null;A(G),L(Os(G,v)),V(false);},_=fe=>{let G=fe.target.value;G=G.replace(new RegExp(`[^0-9\\${U}]`,"g"),"");let B=G.replace(new RegExp(`\\${U}`,"g"),""),K="",Y=0;for(let X=0;X<j.length&&Y<B.length;X++)j[X]==="#"?(K+=B[Y],Y++):K+=j[X];if(L(K),K.length===j.length){let X=yb(K,v);if(X){if(g&&X<g||h&&X>h)return;A(X);}}},q=()=>{O(true);},se=()=>{O(false),E.length!==j.length?L(Os(z,v)):yb(E,v)||L(Os(z,v));},J=()=>{C||V(true);},Te=()=>{!C&&x==="picker"&&b&&V(true);};return jsxs("div",{className:m(Rb({size:s}),e),children:[t&&jsxs("label",{htmlFor:k,className:m(ST({size:s}),i),children:[t,o&&jsx("span",{className:"text-danger ml-0.5","aria-hidden":"true",children:"*"})]}),jsxs(Pt,{open:b&&I,onOpenChange:V,children:[jsxs(Qn,{className:m("relative",y?"w-full":"w-fit"),children:[jsx("input",{ref:S,id:k,type:"text",inputMode:x==="text"?"numeric":void 0,value:E,onChange:x==="text"?_:void 0,onClick:Te,onFocus:q,onBlur:se,readOnly:x==="picker","aria-invalid":a,"aria-describedby":F?T:n?P:void 0,"aria-required":o,disabled:C,placeholder:w||v.toLowerCase(),className:m(PT({size:s,isInvalid:a,fullWidth:y,showPickerIcon:b}),x==="picker"&&b&&"cursor-pointer",l),style:{borderColor:$||b&&I?"var(--color-foreground)":void 0},...N}),b&&jsx("button",{type:"button",onClick:J,disabled:C,className:"absolute right-3 top-1/2 -translate-y-1/2 cursor-pointer disabled:cursor-not-allowed disabled:opacity-50",tabIndex:-1,"aria-label":"Open calendar",children:jsx(Calendar,{className:m(ET({size:s}))})})]}),b&&jsx(Et,{className:"w-auto p-0",align:"start",children:jsx(ro,{mode:"single",selected:z??void 0,onSelect:W,disabled:fe=>!!(g&&fe<g||h&&fe>h),defaultMonth:z??void 0,showMonthAndYearPickers:true,size:s??"md"})})]}),n&&!F&&jsx("p",{id:P,className:m("text-muted-foreground",s==="sm"?"text-xs":s==="lg"?"text-sm":"text-xs",c),children:n}),F&&jsx("p",{id:T,role:"alert",className:m("text-danger",s==="sm"?"text-xs":s==="lg"?"text-sm":"text-xs",d),children:r})]})});wb.displayName="DatePicker";var Tb=cva("inline-flex items-center",{variants:{variant:{default:"gap-1",compact:"gap-0.5",attached:"[&>*:not(:first-child):not(:last-child)]:rounded-none [&>*:first-child]:rounded-r-none [&>*:last-child]:rounded-l-none [&>*:not(:first-child)]:-ml-px gap-0"},orientation:{horizontal:"flex-row",vertical:"flex-col [&>*:not(:first-child):not(:last-child)]:rounded-none [&>*:first-child]:rounded-b-none [&>*:last-child]:rounded-t-none [&>*:not(:first-child)]:-mt-px [&>*:not(:first-child)]:ml-0"},size:{sm:"",md:"",lg:""},density:{compact:"gap-0.5",regular:"gap-1",spacious:"gap-2"}},defaultVariants:{variant:"default",orientation:"horizontal",size:"md",density:"regular"}}),Mb=Z.forwardRef(({className:e,variant:t,orientation:n,size:r,density:o,items:a,maxVisibleItems:s,isDisabled:i,onAction:l,showLabels:c=false,renderItem:d,...u},p)=>{let f=s&&s<a.length?a.slice(0,s):a,g=s&&s<a.length?a.slice(s):[],h={sm:"h-8 px-2 text-xs",md:"h-9 px-3 text-sm",lg:"h-10 px-4 text-base"}[r??"md"],v={sm:"h-8 w-8",md:"h-9 w-9",lg:"h-10 w-10"}[r??"md"],b={sm:"h-4 w-4",md:"h-4 w-4",lg:"h-5 w-5"}[r??"md"],x=(C,w)=>{w&&w(),l&&l(C);},y=C=>jsxs("button",{type:"button",disabled:i||C.isDisabled,onClick:()=>x(C.key,C.onPress),className:m("inline-flex items-center justify-center gap-2 rounded-md transition-colors","hover:bg-accent hover:text-accent-foreground","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2","disabled:pointer-events-none disabled:opacity-50",c?h:v),"aria-label":C.label,children:[C.icon&&jsx("span",{className:b,children:C.icon}),c&&jsx("span",{children:C.label})]},C.key);return jsxs("div",{ref:p,role:"group",className:m(Tb({variant:t,orientation:n,size:r,density:o,className:e})),...u,children:[f.map(C=>d?d(C):y(C)),g.length>0&&jsxs(Yt,{children:[jsx(qt,{"aria-label":"More actions",className:m("items-center justify-center rounded-md transition-colors","hover:bg-accent hover:text-accent-foreground","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",i&&"pointer-events-none opacity-50",v),children:jsx(MoreHorizontal,{className:b})}),jsx(Xt,{align:"end",children:g.map(C=>jsxs(Nt,{isDisabled:C.isDisabled,onClick:()=>x(C.key,C.onPress),children:[C.icon&&jsx("span",{className:m(b,"mr-2"),children:C.icon}),C.label]},C.key))})]})]})});Mb.displayName="ActionGroup";var kb=cva("fixed flex items-center gap-2 rounded-lg border bg-background shadow-lg transition-all duration-200",{variants:{position:{bottom:"bottom-4 left-1/2 -translate-x-1/2",top:"top-4 left-1/2 -translate-x-1/2","bottom-right":"bottom-4 right-4","bottom-left":"bottom-4 left-4"},size:{sm:"px-3 py-2 gap-1.5",md:"px-4 py-2.5 gap-2",lg:"px-5 py-3 gap-3"}},defaultVariants:{position:"bottom",size:"md"}}),Nb=Z.forwardRef(({className:e,position:t,size:n,selectedCount:r=0,isOpen:o=true,onClose:a,showClose:s=true,selectedText:i,children:l,...c},d)=>{if(!o||r===0)return null;let u=()=>typeof i=="function"?i(r):i||`${r} item${r>1?"s":""} selected`;return jsxs("div",{ref:d,role:"toolbar","aria-label":"Actions for selected items",className:m(kb({position:t,size:n,className:e})),...c,children:[jsx("span",{className:"text-sm font-medium text-muted-foreground whitespace-nowrap",children:u()}),jsx("div",{className:"h-4 w-px bg-border"}),jsx("div",{className:"flex items-center gap-1",children:l}),s&&jsxs(Fragment,{children:[jsx("div",{className:"h-4 w-px bg-border"}),jsx(Rt,{size:"sm",onClick:a,"aria-label":"Close action bar"})]})]})});Nb.displayName="ActionBar";var Pb=Z.forwardRef(({className:e,icon:t,children:n,...r},o)=>jsxs("button",{ref:o,type:"button",className:m("inline-flex items-center gap-1.5 rounded-md px-2.5 py-1.5 text-sm font-medium transition-colors","hover:bg-accent hover:text-accent-foreground","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring","disabled:pointer-events-none disabled:opacity-50",e),...r,children:[t&&jsx("span",{className:"h-4 w-4 [&>svg]:h-full [&>svg]:w-full",children:t}),n]}));Pb.displayName="ActionBarButton";var Eb=cva("relative flex w-full touch-none select-none",{variants:{orientation:{horizontal:"items-center",vertical:"flex-col justify-center h-full"},size:{sm:"",md:"",lg:""}},defaultVariants:{orientation:"horizontal",size:"md"}}),AT=cva("relative grow overflow-hidden rounded-full bg-secondary",{variants:{orientation:{horizontal:"w-full",vertical:"w-2 h-full"},size:{sm:"h-1",md:"h-2",lg:"h-3"}},compoundVariants:[{orientation:"vertical",size:"sm",className:"w-1 h-full"},{orientation:"vertical",size:"md",className:"w-2 h-full"},{orientation:"vertical",size:"lg",className:"w-3 h-full"}],defaultVariants:{orientation:"horizontal",size:"md"}}),zT=cva("block rounded-full border-2 bg-background ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 cursor-grab",{variants:{size:{sm:"h-3.5 w-3.5",md:"h-5 w-5",lg:"h-6 w-6"},color:{primary:"border-primary",success:"border-green-500",warning:"border-yellow-500",danger:"border-red-500",custom:""}},defaultVariants:{size:"md",color:"primary"}}),Sb=Z.forwardRef(({className:e,orientation:t="horizontal",size:n="md",value:r,defaultValue:o=[25,75],onValueChange:a,onValueCommit:s,min:i=0,max:l=100,step:c=1,isDisabled:d=false,showLabels:u=false,formatLabel:p=b=>String(b),trackColor:f="primary",name:g,...h},v)=>{let[b,x]=Z.useState(o),y=r!==void 0,C=y?r:b,w=Z.useRef(null),[R,N]=Z.useState(false),[S,D]=Z.useState(null),k=(A,W)=>{if(!w.current)return C[0];let _=w.current.getBoundingClientRect(),q;t==="horizontal"?q=(A-_.left)/_.width:q=1-(W-_.top)/_.height,q=Math.max(0,Math.min(1,q));let se=i+q*(l-i),J=Math.round(se/c)*c;return Math.max(i,Math.min(l,J))},P=(A,W)=>{let _=[...C];_[W]=A,W===0&&A>C[1]&&(_[0]=C[1]),W===1&&A<C[0]&&(_[1]=C[0]),y||x(_),a?.(_);},T=(A,W)=>{d||(A.preventDefault(),N(true),D(W),A.target.setPointerCapture(A.pointerId));},M=A=>{if(!R||S===null||d)return;let W=k(A.clientX,A.clientY);P(W,S);},H=()=>{R&&(N(false),D(null),s?.(C));},E=A=>{if(d)return;let W=k(A.clientX,A.clientY),_=Math.abs(C[0]-W),q=Math.abs(C[1]-W),se=_<=q?0:1;P(W,se);let J=[...C];J[se]=W,s?.(J);},L=(A,W)=>{if(d)return;let _=C[W];switch(A.key){case "ArrowRight":case "ArrowUp":A.preventDefault(),_=Math.min(l,C[W]+c);break;case "ArrowLeft":case "ArrowDown":A.preventDefault(),_=Math.max(i,C[W]-c);break;case "Home":A.preventDefault(),_=i;break;case "End":A.preventDefault(),_=l;break;default:return}P(_,W);let q=[...C];q[W]=_,s?.(q);},I=A=>(A-i)/(l-i)*100,V={primary:"bg-primary",success:"bg-green-500",warning:"bg-yellow-500",danger:"bg-red-500"},$=!(f in V),O=$?"":V[f],z=$?{backgroundColor:f}:void 0,F=$?{borderColor:f}:void 0,U=$?"custom":f,j={sm:14,md:20,lg:24}[n||"md"];return jsxs("div",{className:"relative w-full",children:[u&&jsxs("div",{className:"flex justify-between mb-2 text-sm text-muted-foreground",children:[jsx("span",{children:p(C[0])}),jsx("span",{children:p(C[1])})]}),jsxs("div",{ref:v,className:m(Eb({orientation:t,size:n}),d&&"opacity-50 pointer-events-none",e),...h,children:[jsx("div",{ref:w,className:m(AT({orientation:t,size:n})),onClick:E,children:jsx("div",{className:m("absolute rounded-full",O,{"h-full":t==="horizontal","w-full":t==="vertical"}),style:t==="horizontal"?{left:`${I(C[0])}%`,right:`${100-I(C[1])}%`,top:0,bottom:0,...z}:{bottom:`${I(C[0])}%`,top:`${100-I(C[1])}%`,left:0,right:0,...z}})}),C.map((A,W)=>jsx("div",{role:"slider",tabIndex:d?-1:0,"aria-valuemin":i,"aria-valuemax":l,"aria-valuenow":A,"aria-orientation":t||void 0,"aria-disabled":d,className:m(zT({size:n,color:U}),R&&S===W&&"cursor-grabbing"),style:t==="horizontal"?{position:"absolute",left:`calc(${I(A)}% - ${j/2}px)`,top:"50%",transform:"translateY(-50%)",...F}:{position:"absolute",bottom:`calc(${I(A)}% - ${j/2}px)`,left:"50%",transform:"translateX(-50%)",...F},onPointerDown:_=>T(_,W),onPointerMove:M,onPointerUp:H,onPointerCancel:H,onKeyDown:_=>L(_,W)},W)),g&&jsxs(Fragment,{children:[jsx("input",{type:"hidden",name:`${g}[0]`,value:C[0]}),jsx("input",{type:"hidden",name:`${g}[1]`,value:C[1]})]})]})]})});Sb.displayName="RangeSlider";var Il=cva("inline-flex items-center justify-center rounded-full transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",{variants:{variant:{help:"text-muted-foreground hover:text-foreground",info:"text-blue-500 hover:text-blue-600",warning:"text-yellow-500 hover:text-yellow-600"},size:{sm:"h-4 w-4",md:"h-5 w-5",lg:"h-6 w-6"}},defaultVariants:{variant:"help",size:"md"}}),$T=cva("z-50 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none animate-in fade-in-0 zoom-in-95",{variants:{size:{sm:"w-56 text-xs",md:"w-72 text-sm",lg:"w-80 text-base"}},defaultVariants:{size:"md"}}),UT={help:HelpCircle,info:Info,warning:AlertCircle},Hb=Z.forwardRef(({variant:e="help",size:t,title:n,children:r,trigger:o,side:a="top",align:s="center",open:i,onOpenChange:l,learnMoreUrl:c,learnMoreText:d="Learn more",triggerClassName:u,contentClassName:p},f)=>{let[g,h]=Z.useState(false),[v,b]=Z.useState(false),[x,y]=Z.useState({top:0,left:0}),C=Z.useRef(null),w=Z.useRef(null),R=i!==void 0?i:g,N=Z.useCallback(P=>{i===void 0&&h(P),l?.(P);},[i,l]);Z.useEffect(()=>{b(true);},[]),Z.useEffect(()=>{if(!R||!C.current)return;let P=()=>{let T=C.current.getBoundingClientRect(),M=w.current?.getBoundingClientRect(),H=M?.width||288,E=M?.height||100,L=8,I=0,V=0;switch(a){case "top":I=T.top-E-L,V=T.left+T.width/2-H/2;break;case "bottom":I=T.bottom+L,V=T.left+T.width/2-H/2;break;case "left":I=T.top+T.height/2-E/2,V=T.left-H-L;break;case "right":I=T.top+T.height/2-E/2,V=T.right+L;break}if(a==="top"||a==="bottom")switch(s){case "start":V=T.left;break;case "center":V=T.left+T.width/2-H/2;break;case "end":V=T.right-H;break}if(a==="left"||a==="right")switch(s){case "start":I=T.top;break;case "center":I=T.top+T.height/2-E/2;break;case "end":I=T.bottom-E;break}V=Math.max(8,Math.min(V,window.innerWidth-H-8)),I=Math.max(8,Math.min(I,window.innerHeight-E-8)),y({top:I,left:V});};return P(),requestAnimationFrame(P),window.addEventListener("resize",P),window.addEventListener("scroll",P,true),()=>{window.removeEventListener("resize",P),window.removeEventListener("scroll",P,true);}},[R,a,s]),Z.useEffect(()=>{if(!R)return;let P=T=>{w.current&&!w.current.contains(T.target)&&C.current&&!C.current.contains(T.target)&&N(false);};return document.addEventListener("mousedown",P),()=>document.removeEventListener("mousedown",P)},[R,N]),Z.useEffect(()=>{if(!R)return;let P=T=>{T.key==="Escape"&&N(false);};return document.addEventListener("keydown",P),()=>document.removeEventListener("keydown",P)},[R,N]);let S=UT[e??"help"],D=()=>{N(!R);},k=()=>{switch(a){case "top":return "bottom center";case "bottom":return "top center";case "left":return "right center";case "right":return "left center";default:return "center center"}};return jsxs(Fragment,{children:[o?Z.isValidElement(o)?Z.cloneElement(o,{ref:C,onClick:P=>{o.props.onClick?.(P),D();}}):jsx("button",{ref:C,type:"button",onClick:D,className:m(Il({variant:e,size:t}),u),"aria-label":"Help",children:o}):jsx("button",{ref:P=>{C.current=P,typeof f=="function"?f(P):f&&(f.current=P);},type:"button",onClick:D,className:m(Il({variant:e,size:t}),u),"aria-label":"Help",children:jsx(S,{className:"h-full w-full"})}),v&&R&&Va.createPortal(jsxs("div",{ref:w,className:m($T({size:t}),p),style:{position:"fixed",top:x.top,left:x.left,transformOrigin:k()},role:"tooltip",children:[n&&jsx("div",{className:"mb-2 font-semibold text-foreground",children:n}),jsx("div",{className:"text-muted-foreground",children:r}),c&&jsxs("a",{href:c,target:"_blank",rel:"noopener noreferrer",className:"mt-3 inline-block text-primary hover:underline",children:[d," \u2192"]}),jsx("div",{className:"absolute h-2 w-2 rotate-45 border bg-popover",style:{...a==="top"&&{bottom:-4,left:"50%",marginLeft:-4,borderTop:"none",borderLeft:"none"},...a==="bottom"&&{top:-4,left:"50%",marginLeft:-4,borderBottom:"none",borderRight:"none"},...a==="left"&&{right:-4,top:"50%",marginTop:-4,borderBottom:"none",borderLeft:"none"},...a==="right"&&{left:-4,top:"50%",marginTop:-4,borderTop:"none",borderRight:"none"}}})]}),document.body)]})});Hb.displayName="ContextualHelp";var Ab=cva("grid",{variants:{columns:{1:"grid-cols-1",2:"grid-cols-2",3:"grid-cols-3",4:"grid-cols-4",5:"grid-cols-5",6:"grid-cols-6",auto:"grid-cols-[repeat(auto-fill,minmax(150px,1fr))]"},gap:{sm:"gap-2",md:"gap-4",lg:"gap-6"}},defaultVariants:{columns:"auto",gap:"md"}}),zb=cva("relative flex flex-col rounded-lg border transition-all cursor-pointer",{variants:{variant:{default:"hover:border-primary/50 hover:bg-accent/50",card:"bg-card shadow-sm hover:shadow-md hover:border-primary/50"},size:{sm:"p-2",md:"p-3",lg:"p-4"},isSelected:{true:"border-primary bg-accent ring-2 ring-primary/20",false:""},isDisabled:{true:"opacity-50 pointer-events-none",false:""}},defaultVariants:{variant:"default",size:"md",isSelected:false,isDisabled:false}});function Ob({className:e,columns:t,gap:n,items:r,selectedKeys:o,selectionMode:a="none",onSelectionChange:s,showSelectionIndicator:i=true,itemVariant:l="default",itemSize:c="md",renderItem:d,emptyContent:u,...p}){let[f,g]=Z.useState(new Set),h=Z.useMemo(()=>o?o instanceof Set?o:new Set(o):f,[o,f]),v=b=>{if(a==="none")return;let x;a==="single"?x=h.has(b)?new Set:new Set([b]):(x=new Set(h),x.has(b)?x.delete(b):x.add(b)),o||g(x),s?.(x);};return r.length===0?jsx("div",{className:m("flex items-center justify-center p-8 text-muted-foreground",e),children:u||"No items"}):jsx("div",{role:"grid","aria-multiselectable":a==="multiple",className:m(Ab({columns:t,gap:n,className:e})),...p,children:r.map(b=>{let x=h.has(b.key);return d?jsx("div",{role:"gridcell","aria-selected":x,onClick:()=>v(b.key),children:d(b,x)},b.key):jsxs("div",{role:"gridcell","aria-selected":x,"aria-disabled":b.isDisabled,onClick:()=>!b.isDisabled&&v(b.key),className:m(zb({variant:l,size:c,isSelected:x,isDisabled:b.isDisabled})),children:[i&&a!=="none"&&x&&jsx("div",{className:"absolute top-2 right-2 flex h-5 w-5 items-center justify-center rounded-full bg-primary text-primary-foreground",children:jsx(Check,{className:"h-3 w-3"})}),b.thumbnail&&jsx("div",{className:"mb-2 aspect-square w-full overflow-hidden rounded-md bg-muted",children:b.thumbnail}),jsxs("div",{className:"min-w-0",children:[jsx("div",{className:"truncate font-medium",children:b.label}),b.description&&jsx("div",{className:"mt-1 truncate text-sm text-muted-foreground",children:b.description})]})]},b.key)})})}Ob.displayName="GridList";var Fb=cva("relative rounded-lg overflow-hidden cursor-crosshair touch-none select-none",{variants:{size:{sm:"h-32 w-32",md:"h-48 w-48",lg:"h-64 w-64",full:"h-full w-full min-h-48"}},defaultVariants:{size:"md"}}),Vl=(e,t,n)=>{let r=o=>{let a=(o+e/60)%6;return n-n*t*Math.max(Math.min(a,4-a,1),0)};return [Math.round(r(5)*255),Math.round(r(3)*255),Math.round(r(1)*255)]},_T=(e,t,n)=>{e/=255,t/=255,n/=255;let r=Math.max(e,t,n),o=Math.min(e,t,n),a=r-o,s=0,i=r===0?0:a/r,l=r;if(a!==0)switch(r){case e:s=((t-n)/a+(t<n?6:0))*60;break;case t:s=((n-e)/a+2)*60;break;case n:s=((e-t)/a+4)*60;break}return [s,i,l]},YT=e=>{let t=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(e);return t?[parseInt(t[1],16),parseInt(t[2],16),parseInt(t[3],16)]:null},qT=(e,t,n)=>"#"+[e,t,n].map(r=>r.toString(16).padStart(2,"0")).join(""),Bb=Z.forwardRef(({hue:e,saturation:t,brightness:n,value:r,defaultValue:o="#ff0000",onChange:a,onColorChange:s,size:i,disabled:l,thumbSize:c=18,className:d,...u},p)=>{let f=Z.useRef(null),[g,h]=Z.useState(false),v=Z.useCallback(O=>{let z=YT(O);return z?_T(...z):[0,1,1]},[]),[b,x]=Z.useState(()=>v(r||o)),y=e??b[0],C=t??b[1],w=n??b[2];Z.useEffect(()=>{if(r){let O=v(r);x(O);}},[r,v]);let R=Z.useCallback((O,z)=>{if(l||!f.current)return;let F=f.current.getBoundingClientRect(),U=Math.max(0,Math.min(1,(O-F.left)/F.width)),j=Math.max(0,Math.min(1,(z-F.top)/F.height)),A=U,W=1-j;t===void 0&&n===void 0&&x([y,A,W]),a?.({hue:y,saturation:A,brightness:W});let _=Vl(y,A,W);s?.(qT(..._));},[l,y,t,n,a,s]),N=O=>{l||(O.preventDefault(),h(true),O.target.setPointerCapture(O.pointerId),R(O.clientX,O.clientY));},S=O=>{g&&R(O.clientX,O.clientY);},D=O=>{h(false),O.target.releasePointerCapture(O.pointerId);},[k,P,T]=Vl(y,1,1),M=`rgb(${k}, ${P}, ${T})`,H=C*100,E=(1-w)*100,[L,I,V]=Vl(y,C,w),$=`rgb(${L}, ${I}, ${V})`;return jsx("div",{ref:p,className:m(Fb({size:i}),l&&"cursor-not-allowed opacity-50",d),...u,children:jsxs("div",{ref:f,className:"absolute inset-0",style:{backgroundColor:M},onPointerDown:N,onPointerMove:S,onPointerUp:D,onPointerLeave:D,children:[jsx("div",{className:"absolute inset-0",style:{background:"linear-gradient(to right, white, transparent)"}}),jsx("div",{className:"absolute inset-0",style:{background:"linear-gradient(to bottom, transparent, black)"}}),jsx("div",{className:"absolute rounded-full border-2 border-white pointer-events-none",style:{width:c,height:c,left:`calc(${H}% - ${c/2}px)`,top:`calc(${E}% - ${c/2}px)`,backgroundColor:$,boxShadow:"0 0 0 1px rgba(0,0,0,0.1), 0 2px 4px rgba(0,0,0,0.2)"}})]})})});Bb.displayName="ColorArea";var $b=cva("relative rounded-full cursor-pointer touch-none select-none",{variants:{orientation:{horizontal:"w-full",vertical:"h-full"},size:{sm:"",md:"",lg:""}},compoundVariants:[{orientation:"horizontal",size:"sm",className:"h-3"},{orientation:"horizontal",size:"md",className:"h-4"},{orientation:"horizontal",size:"lg",className:"h-5"},{orientation:"vertical",size:"sm",className:"w-3"},{orientation:"vertical",size:"md",className:"w-4"},{orientation:"vertical",size:"lg",className:"w-5"}],defaultVariants:{orientation:"horizontal",size:"md"}}),JT=`url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3E%3Cg fill='%23ccc'%3E%3Crect width='4' height='4'/%3E%3Crect x='4' y='4' width='4' height='4'/%3E%3C/g%3E%3C/svg%3E")`,Kb="linear-gradient(to right, #ff0000, #ffff00, #00ff00, #00ffff, #0000ff, #ff00ff, #ff0000)",Ub=Z.forwardRef(({value:e,defaultValue:t,onChange:n,channel:r="hue",baseColor:o="#ff0000",orientation:a,size:s,disabled:i,thumbSize:l=18,showBorder:c=true,className:d,...u},p)=>{let f=Z.useRef(null),[g,h]=Z.useState(false),v=()=>{switch(r){case "hue":return 0;case "alpha":case "saturation":case "brightness":return 1;default:return 0}},[b,x]=Z.useState(t??v()),y=e??b,C=r==="hue"?y/360:y,w=Z.useCallback((M,H)=>{if(i||!f.current)return;let E=f.current.getBoundingClientRect(),L=a!=="vertical",I;L?I=Math.max(0,Math.min(1,(M-E.left)/E.width)):I=Math.max(0,Math.min(1,1-(H-E.top)/E.height));let V=r==="hue"?I*360:I;e===void 0&&x(V),n?.(V);},[i,a,r,e,n]),R=M=>{i||(M.preventDefault(),h(true),M.target.setPointerCapture(M.pointerId),w(M.clientX,M.clientY));},N=M=>{g&&w(M.clientX,M.clientY);},S=M=>{h(false),M.target.releasePointerCapture(M.pointerId);},D=()=>{let M=a!=="vertical",H=M?"to right":"to top";switch(r){case "hue":return M?Kb:"linear-gradient(to top, #ff0000, #ffff00, #00ff00, #00ffff, #0000ff, #ff00ff, #ff0000)";case "alpha":return `linear-gradient(${H}, transparent, ${o})`;case "saturation":return `linear-gradient(${H}, #808080, ${o})`;case "brightness":return `linear-gradient(${H}, #000000, ${o})`;default:return Kb}},k=()=>r==="hue"?`hsl(${y}, 100%, 50%)`:o,P=a!=="vertical",T=C*100;return jsx("div",{ref:p,className:m($b({orientation:a,size:s}),i&&"cursor-not-allowed opacity-50",d),...u,children:jsxs("div",{ref:f,className:m("absolute inset-0 rounded-full overflow-hidden",c&&"border border-input"),style:{backgroundImage:r==="alpha"?JT:void 0,backgroundSize:r==="alpha"?"8px 8px":void 0},onPointerDown:R,onPointerMove:N,onPointerUp:S,onPointerLeave:S,children:[jsx("div",{className:"absolute inset-0 rounded-full",style:{background:D()}}),jsx("div",{className:"absolute rounded-full border-2 border-white shadow-md pointer-events-none",style:{width:l,height:l,...P?{left:`calc(${T}% - ${l/2}px)`,top:"50%",transform:"translateY(-50%)"}:{bottom:`calc(${T}% - ${l/2}px)`,left:"50%",transform:"translateX(-50%)"},backgroundColor:k(),boxShadow:"0 0 0 1px rgba(0,0,0,0.2), 0 2px 4px rgba(0,0,0,0.2)"}})]})})});Ub.displayName="ColorSlider";var Gb=cva("relative cursor-crosshair touch-none select-none",{variants:{size:{sm:"h-32 w-32",md:"h-48 w-48",lg:"h-64 w-64"}},defaultVariants:{size:"md"}}),tM=(e,t,n)=>{let r=e-n,o=t-n,a=Math.atan2(o,r)*180/Math.PI+90;return a<0&&(a+=360),a},jb=Z.forwardRef(({value:e,defaultValue:t=0,onChange:n,size:r,disabled:o,innerRadius:a=.6,thumbSize:s=20,showCenter:i=true,className:l,...c},d)=>{let u=Z.useRef(null),[p,f]=Z.useState(false),[g,h]=Z.useState(t),v=e??g,b=Z.useCallback((R,N)=>{if(o||!u.current)return;let S=u.current.getBoundingClientRect(),D=S.width/2,k=R-S.left,P=N-S.top,T=tM(k,P,D);e===void 0&&h(T),n?.(T);},[o,e,n]),x=R=>{o||(R.preventDefault(),f(true),R.target.setPointerCapture(R.pointerId),b(R.clientX,R.clientY));},y=R=>{p&&b(R.clientX,R.clientY);},C=R=>{f(false),R.target.releasePointerCapture(R.pointerId);},w=()=>{let R=[];for(let N=0;N<=360;N+=30)R.push(`hsl(${N}, 100%, 50%) ${N}deg`);return `conic-gradient(from 270deg, ${R.join(", ")})`};return jsx("div",{ref:d,className:m(Gb({size:r}),o&&"cursor-not-allowed opacity-50",l),...c,children:jsxs("div",{ref:u,className:"absolute inset-0 rounded-full",style:{background:w()},onPointerDown:x,onPointerMove:y,onPointerUp:C,onPointerLeave:C,children:[a<1&&jsx("div",{className:"absolute bg-background rounded-full",style:{top:`${(1-a)*50}%`,left:`${(1-a)*50}%`,width:`${a*100}%`,height:`${a*100}%`}}),i&&a<1&&jsx("div",{className:"absolute rounded-full border-2 border-input bg-background",style:{width:8,height:8,top:"50%",left:"50%",transform:"translate(-50%, -50%)"}}),jsx(nM,{hue:v,innerRadius:a,thumbSize:s})]})})});jb.displayName="ColorWheel";var nM=({hue:e,innerRadius:t,thumbSize:n})=>{let r=(1-(1-t)/2)*50,o=(e-90)*Math.PI/180,a=50+r*Math.cos(o),s=50+r*Math.sin(o);return jsx("div",{className:"absolute rounded-full border-2 border-white shadow-md pointer-events-none",style:{width:n,height:n,left:`calc(${a}% - ${n/2}px)`,top:`calc(${s}% - ${n/2}px)`,backgroundColor:`hsl(${e}, 100%, 50%)`,boxShadow:"0 0 0 1px rgba(0,0,0,0.2), 0 2px 4px rgba(0,0,0,0.2)"}})};var Wb={Pages:jsx(File,{className:"h-4 w-4"}),Files:jsx(Folder,{className:"h-4 w-4"}),Settings:jsx(Settings,{className:"h-4 w-4"}),Users:jsx(User,{className:"h-4 w-4"}),Tags:jsx(Hash,{className:"h-4 w-4"})},qb=Z.forwardRef(({open:e,onOpenChange:t,items:n=[],recentItems:r=[],placeholder:o="Search...",isLoading:a,emptyMessage:s="No results found.",filter:i,shortcut:l="\u2318K",onSelect:c,footer:d},u)=>{let[p,f]=Z.useState(""),g=Z.useRef(null),[h,v]=Z.useState(false);Z.useEffect(()=>{v(true);},[]),Z.useEffect(()=>{e||f("");},[e]),Z.useEffect(()=>{if(!e)return;let R=N=>{N.key==="Escape"&&t?.(false);};return document.addEventListener("keydown",R),()=>document.removeEventListener("keydown",R)},[e,t]),Z.useEffect(()=>{if(e)return In(),()=>Vn()},[e]);let b=Z.useMemo(()=>{let R={};return n.forEach(N=>{let S=N.category||"Results";R[S]||(R[S]=[]),R[S].push(N);}),R},[n]),x=R=>{R.onSelect?.(),c?.(R),t?.(false);},y=()=>{t?.(false);},C=p.length>0,w=!C&&r.length>0;return !h||!e?null:Va.createPortal(jsxs(Fragment,{children:[jsx("div",{className:"fixed inset-0 z-50 bg-black/50 backdrop-blur-sm data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0","data-state":e?"open":"closed",onClick:y}),jsx("div",{ref:u,className:"fixed left-1/2 top-[20%] z-50 w-full max-w-2xl -translate-x-1/2 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=open]:slide-in-from-left-1/2","data-state":e?"open":"closed",children:jsxs(Command,{className:"overflow-hidden rounded-xl border bg-background shadow-2xl",filter:i,shouldFilter:!i,children:[jsxs("div",{className:"flex items-center border-b px-4",children:[jsx(Search,{className:"h-5 w-5 shrink-0 text-muted-foreground"}),jsx(Command.Input,{ref:g,value:p,onValueChange:f,placeholder:o,className:"flex h-14 w-full bg-transparent px-4 py-4 text-base outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50"}),p&&jsx("button",{type:"button",onClick:()=>f(""),className:"rounded-sm p-1 text-muted-foreground hover:text-foreground",children:jsx(X,{className:"h-4 w-4"})})]}),jsx(Command.List,{className:"max-h-[400px] overflow-y-auto p-2",children:a?jsx("div",{className:"flex items-center justify-center py-10",children:jsx("div",{className:"h-6 w-6 animate-spin rounded-full border-2 border-primary border-t-transparent"})}):jsxs(Fragment,{children:[w&&jsxs(Command.Group,{heading:"Recent",children:[jsx("div",{className:"px-2 py-1.5 text-xs font-medium text-muted-foreground",children:"Recent"}),r.map(R=>jsxs(Command.Item,{value:R.label,onSelect:()=>x(R),className:"flex cursor-pointer items-center gap-3 rounded-lg px-3 py-2.5 text-sm aria-selected:bg-muted",children:[jsx("span",{className:"flex h-8 w-8 shrink-0 items-center justify-center rounded-md bg-muted",children:R.icon||Wb[R.category||""]||jsx(File,{className:"h-4 w-4"})}),jsxs("div",{className:"flex-1 overflow-hidden",children:[jsx("div",{className:"truncate font-medium",children:R.label}),R.description&&jsx("div",{className:"truncate text-xs text-muted-foreground",children:R.description})]}),R.shortcut&&jsx("div",{className:"flex items-center gap-1",children:R.shortcut.map((N,S)=>jsx("kbd",{className:"rounded bg-muted px-1.5 py-0.5 text-xs font-medium",children:N},S))})]},R.id))]}),C&&Object.entries(b).map(([R,N])=>jsxs(Command.Group,{heading:R,children:[jsx("div",{className:"px-2 py-1.5 text-xs font-medium text-muted-foreground",children:R}),N.map(S=>jsxs(Command.Item,{value:`${S.label} ${S.keywords?.join(" ")||""}`,onSelect:()=>x(S),className:"flex cursor-pointer items-center gap-3 rounded-lg px-3 py-2.5 text-sm aria-selected:bg-muted",children:[jsx("span",{className:"flex h-8 w-8 shrink-0 items-center justify-center rounded-md bg-muted",children:S.icon||Wb[R]||jsx(File,{className:"h-4 w-4"})}),jsxs("div",{className:"flex-1 overflow-hidden",children:[jsx("div",{className:"truncate font-medium",children:S.label}),S.description&&jsx("div",{className:"truncate text-xs text-muted-foreground",children:S.description})]}),jsx(ArrowRight,{className:"h-4 w-4 text-muted-foreground opacity-0 group-aria-selected:opacity-100"})]},S.id))]},R)),jsx(Command.Empty,{className:"py-10 text-center text-sm text-muted-foreground",children:s})]})}),d?jsx("div",{className:"border-t px-4 py-3",children:d}):jsxs("div",{className:"flex items-center justify-between border-t px-4 py-3 text-xs text-muted-foreground",children:[jsxs("div",{className:"flex items-center gap-4",children:[jsxs("span",{className:"flex items-center gap-1",children:[jsx("kbd",{className:"rounded bg-muted px-1.5 py-0.5 font-medium",children:"\u2191\u2193"}),"Navigate"]}),jsxs("span",{className:"flex items-center gap-1",children:[jsx("kbd",{className:"rounded bg-muted px-1.5 py-0.5 font-medium",children:"\u21B5"}),"Select"]}),jsxs("span",{className:"flex items-center gap-1",children:[jsx("kbd",{className:"rounded bg-muted px-1.5 py-0.5 font-medium",children:"Esc"}),"Close"]})]}),jsxs("span",{className:"flex items-center gap-1",children:["Press ",jsx("kbd",{className:"rounded bg-muted px-1.5 py-0.5 font-medium",children:l})," to open"]})]})]})})]}),document.body)});qb.displayName="SpotlightSearch";function uM(e="k"){let[t,n]=Z.useState(false);return Z.useEffect(()=>{let r=o=>{(o.metaKey||o.ctrlKey)&&o.key===e&&(o.preventDefault(),n(a=>!a));};return document.addEventListener("keydown",r),()=>document.removeEventListener("keydown",r)},[e]),{open:t,setOpen:n,toggle:()=>n(r=>!r)}}var Xb=cva("relative flex items-center justify-center gap-3 px-4 py-2.5 text-sm",{variants:{variant:{solid:"",flat:""},type:{default:"",success:"",warning:"",error:""},position:{top:"fixed top-0 left-0 right-0 z-50",relative:"relative"}},compoundVariants:[{variant:"solid",type:"default",className:"bg-primary text-primary-foreground [&>svg]:text-primary-foreground"},{variant:"flat",type:"default",className:"bg-primary/10 text-primary [&>svg]:text-primary"},{variant:"solid",type:"success",className:"bg-green-600 text-white dark:bg-green-500 [&>svg]:text-white"},{variant:"flat",type:"success",className:"bg-green-600/10 text-green-600 dark:bg-green-500/10 dark:text-green-500 [&>svg]:text-green-600 dark:[&>svg]:text-green-500"},{variant:"solid",type:"warning",className:"bg-amber-600 text-white dark:bg-amber-500 [&>svg]:text-white"},{variant:"flat",type:"warning",className:"bg-amber-600/10 text-amber-600 dark:bg-amber-500/10 dark:text-amber-500 [&>svg]:text-amber-600 dark:[&>svg]:text-amber-500"},{variant:"solid",type:"error",className:"bg-red-600 text-white dark:bg-red-500 [&>svg]:text-white"},{variant:"flat",type:"error",className:"bg-red-600/10 text-red-600 dark:bg-red-500/10 dark:text-red-500 [&>svg]:text-red-600 dark:[&>svg]:text-red-500"}],defaultVariants:{variant:"solid",type:"default",position:"relative"}}),hM={default:Info,success:CheckCircle2,warning:AlertTriangle,error:AlertCircle},Zb=Z.forwardRef(({message:e,type:t="default",variant:n="solid",showIcon:r=false,icon:o,dismissible:a=true,onDismiss:s,endContent:i,position:l,animate:c,autoDismiss:d,storageKey:u,className:p,...f},g)=>{let[h,v]=Z.useState(true),[b,x]=Z.useState(false);Z.useEffect(()=>{u&&localStorage.getItem(`banner-${u}`)==="true"&&v(false);},[u]),Z.useEffect(()=>{if(d&&h){let R=setTimeout(()=>{y();},d);return ()=>clearTimeout(R)}},[d,h]);let y=()=>{x(true),setTimeout(()=>{v(false),u&&localStorage.setItem(`banner-${u}`,"true"),s?.();},200);};if(!h)return null;let C=hM[t],w=r?o!==void 0?o:C?jsx(C,{className:"h-4 w-4"}):null:null;return jsxs("div",{ref:g,className:m(Xb({variant:n,type:t,position:l}),c&&"animate-pulse",b&&"animate-out fade-out slide-out-to-top duration-200",p),role:"banner",...f,children:[w&&jsx("span",{className:"shrink-0",children:w}),jsx("span",{className:"text-center font-medium",children:e}),i&&jsx("div",{className:"shrink-0 ml-2",children:i}),a&&jsx("button",{type:"button",onClick:y,className:m("absolute right-2 top-1/2 -translate-y-1/2 rounded-sm p-1 transition-opacity hover:opacity-70 cursor-pointer",l==="relative"&&"right-4"),"aria-label":"Dismiss banner",children:jsx(X,{className:"h-4 w-4"})})]})});Zb.displayName="Banner";var ua=cva("inline-flex items-center justify-center rounded-full shadow-lg transition-all cursor-pointer focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",{variants:{variant:{solid:"bg-primary text-primary-foreground hover:bg-primary/90",bordered:"border border-zinc-300 dark:border-zinc-700 bg-transparent text-primary hover:opacity-70",light:"bg-transparent text-primary hover:bg-primary/10",flat:"bg-primary/20 text-primary hover:opacity-70",ghost:"border border-zinc-300 dark:border-zinc-700 bg-transparent text-primary hover:bg-primary hover:text-primary-foreground hover:border-primary"},size:{sm:"h-10 w-10",md:"h-14 w-14",lg:"h-16 w-16"},position:{"bottom-right":"fixed bottom-6 right-6","bottom-left":"fixed bottom-6 left-6","bottom-center":"fixed bottom-6 left-1/2 -translate-x-1/2",relative:"relative"}},defaultVariants:{variant:"solid",size:"md",position:"bottom-right"}}),RM=cva("transition-transform duration-200 [&>svg]:h-full [&>svg]:w-full",{variants:{size:{sm:"h-5 w-5",md:"h-6 w-6",lg:"h-8 w-8"}},defaultVariants:{size:"md"}}),Fl=Z.forwardRef(({icon:e,label:t="Action button",extended:n,extendedLabel:r,actions:o,direction:a="up",showTooltip:s=true,closeIcon:i,animation:l="rotate",variant:c,size:d,position:u,className:p,onClick:f,disabled:g,...h},v)=>{let[b,x]=Z.useState(false),y=o&&o.length>0,C=D=>{y&&x(!b),f?.(D);},w=D=>{D.onClick?.(),x(false);},R={up:{container:"flex-col-reverse bottom-full mb-3 gap-3",item:""},down:{container:"flex-col top-full mt-3 gap-3",item:""},left:{container:"flex-row-reverse right-full mr-3 gap-3",item:""},right:{container:"flex-row left-full ml-3 gap-3",item:""}},N=l==="rotate"&&b?"rotate-45":"",S=l==="scale"&&b?"scale-0":"scale-100";return jsxs("div",{className:m("relative z-50",u!=="relative"&&u&&ua({position:u})),children:[y&&b&&jsx("div",{className:m("absolute left-1/2 -translate-x-1/2 flex items-center",R[a].container),children:o.map((D,k)=>jsxs("div",{className:m("flex items-center gap-2 animate-in fade-in zoom-in duration-200",a==="up"||a==="down"?"flex-row":"flex-col"),style:{animationDelay:`${k*50}ms`},children:[s&&(a==="up"||a==="down")&&jsx("span",{className:"rounded-md bg-popover px-2 py-1 text-xs font-medium text-popover-foreground shadow-md whitespace-nowrap",children:D.label}),D.href?jsx("a",{href:D.href,className:m(ua({variant:D.variant||"flat",size:d==="lg"?"md":"sm",position:"relative"}),"[&>svg]:h-5 [&>svg]:w-5"),"aria-label":D.label,children:D.icon}):jsx("button",{type:"button",onClick:()=>w(D),className:m(ua({variant:D.variant||"flat",size:d==="lg"?"md":"sm",position:"relative"}),"[&>svg]:h-5 [&>svg]:w-5"),"aria-label":D.label,children:D.icon}),s&&(a==="left"||a==="right")&&jsx("span",{className:"rounded-md bg-popover px-2 py-1 text-xs font-medium text-popover-foreground shadow-md whitespace-nowrap",children:D.label})]},D.id))}),jsxs("button",{ref:v,type:"button",onClick:C,disabled:g,className:m(ua({variant:c,size:d,position:"relative"}),n&&"w-auto px-6 gap-2",p),"aria-label":t,"aria-expanded":y?b:void 0,...h,children:[b&&i?i:jsx("span",{className:m(RM({size:d}),N,S,"transition-all duration-200"),children:e||jsx(Plus,{})}),n&&r&&jsx("span",{className:"font-medium",children:r})]}),y&&b&&jsx("div",{className:"fixed inset-0 -z-10",onClick:()=>x(false)})]})});Fl.displayName="FloatingActionButton";var wM=Fl;var nv=cva("fixed bottom-0 left-0 right-0 z-50 flex items-center justify-around border-t bg-background safe-area-pb",{variants:{variant:{default:"border-border",elevated:"border-transparent shadow-[0_-4px_6px_-1px_rgba(0,0,0,0.1)]",filled:"border-transparent bg-primary text-primary-foreground"},size:{sm:"h-14",md:"h-16",lg:"h-20"}},defaultVariants:{variant:"default",size:"md"}}),Qb=cva("flex flex-1 flex-col items-center justify-center gap-1 transition-colors cursor-pointer",{variants:{variant:{default:"",elevated:"",filled:""}},defaultVariants:{variant:"default"}}),rv=Z.forwardRef(({className:e,variant:t,size:n,items:r,value:o,defaultValue:a,onValueChange:s,showLabels:i="all",renderItem:l,...c},d)=>{let[u,p]=Z.useState(a||r[0]?.key),f=o!==void 0,g=f?o:u,h=y=>{y.isDisabled||(f||p(y.key),s?.(y.key));},v=y=>t==="filled"?y?"text-primary-foreground":"text-primary-foreground/60 hover:text-primary-foreground/80":y?"text-primary":"text-muted-foreground hover:text-foreground",b=()=>{switch(n){case "sm":return "h-5 w-5";case "lg":return "h-7 w-7";default:return "h-6 w-6"}},x=()=>{switch(n){case "sm":return "text-[10px]";case "lg":return "text-sm";default:return "text-xs"}};return jsx("nav",{ref:d,className:m(nv({variant:t,size:n}),e),role:"navigation","aria-label":"Bottom navigation",...c,children:r.map(y=>{let C=g===y.key,w=i==="all"||i==="active"&&C,R=C&&y.activeIcon?y.activeIcon:y.icon;if(l)return jsx("div",{onClick:()=>h(y),className:m(Qb({variant:t}),y.isDisabled&&"opacity-50 cursor-not-allowed"),children:l(y,C)},y.key);let N=jsxs("div",{onClick:()=>!y.href&&h(y),className:m(Qb({variant:t}),v(C),y.isDisabled&&"opacity-50 cursor-not-allowed"),role:"button","aria-current":C?"page":void 0,"aria-disabled":y.isDisabled,tabIndex:y.isDisabled?-1:0,onKeyDown:S=>{(S.key==="Enter"||S.key===" ")&&(S.preventDefault(),h(y));},children:[jsxs("div",{className:"relative",children:[jsx("span",{className:m(b(),"[&>svg]:h-full [&>svg]:w-full"),children:R}),y.badge!==void 0&&y.badge>0&&jsx("span",{className:"absolute -top-1 -right-1 flex h-4 min-w-4 items-center justify-center rounded-full bg-red-500 px-1 text-[10px] font-medium text-white",children:y.badge>99?"99+":y.badge}),y.showDot&&jsx("span",{className:"absolute -top-0.5 -right-0.5 h-2 w-2 rounded-full bg-red-500"})]}),w&&y.label&&jsx("span",{className:m(x(),"font-medium truncate max-w-full px-1"),children:y.label})]},y.key);return y.href&&!y.isDisabled?jsx("a",{href:y.href,onClick:()=>h(y),className:m("flex flex-1 flex-col items-center justify-center gap-1 no-underline",v(C)),children:N},y.key):N})})});rv.displayName="BottomNavigation";var TM="fixed inset-x-0 bottom-0 z-50 mt-24 flex h-fit max-h-[90vh] flex-col rounded-t-[20px] border-t border-border/40 dark:border-border/20 bg-background",av=cva("flex w-full items-center gap-3 px-4 py-3.5 text-left transition-colors focus-visible:outline-none focus-visible:bg-accent disabled:pointer-events-none disabled:opacity-50",{variants:{variant:{default:"hover:bg-accent",destructive:"text-danger hover:bg-destructive/10"}},defaultVariants:{variant:"default"}}),sv=Z.forwardRef(({open:e,onOpenChange:t,trigger:n,title:r,description:o,items:a,cancelLabel:s="Cancel",onCancel:i,showCancel:l=true,children:c,closeOnSelect:d=true,onAction:u},p)=>{let f=g=>{g.isDisabled||(g.onSelect?.(),u?.(g.key),d&&t?.(false));};return jsxs(Drawer.Root,{open:e,onOpenChange:t,children:[n&&jsx(Drawer.Trigger,{asChild:true,children:n}),jsxs(Drawer.Portal,{children:[jsx(Drawer.Overlay,{className:"fixed inset-0 z-50 bg-black/40"}),jsxs(Drawer.Content,{ref:p,className:TM,children:[jsx("div",{className:"mx-auto mt-4 h-1.5 w-12 flex-shrink-0 rounded-full bg-muted"}),(r||o)&&jsxs("div",{className:"px-4 py-3 text-center",children:[r&&jsx(Drawer.Title,{className:"text-base font-semibold",children:r}),o&&jsx(Drawer.Description,{className:"mt-1 text-sm text-muted-foreground",children:o})]}),jsx("div",{className:"flex-1 overflow-y-auto",children:c||jsx("div",{className:"divide-y divide-border/40 dark:divide-border/20",children:a?.map(g=>jsxs("button",{type:"button",disabled:g.isDisabled,onClick:()=>f(g),className:m(av({variant:g.isDestructive?"destructive":"default"})),children:[g.icon&&jsx("span",{className:"h-5 w-5 flex-shrink-0 [&>svg]:h-full [&>svg]:w-full",children:g.icon}),jsxs("div",{className:"flex-1 min-w-0",children:[jsx("div",{className:"font-medium",children:g.label}),g.description&&jsx("div",{className:"text-sm text-muted-foreground truncate",children:g.description})]})]},g.key))})}),l&&jsx("div",{className:"border-t border-border/40 dark:border-border/20 p-2 pb-safe",children:jsx(Drawer.Close,{asChild:true,children:jsx("button",{type:"button",onClick:i,className:"w-full rounded-lg bg-muted py-3.5 text-center font-semibold transition-colors hover:bg-muted/80",children:s})})})]})]})]})});sv.displayName="ActionSheet";var lv=cva("relative overflow-hidden touch-pan-y",{variants:{variant:{default:"",card:"rounded-lg border bg-card"}},defaultVariants:{variant:"default"}}),Kl=cva("flex h-full items-center justify-center px-4 text-white font-medium transition-opacity",{variants:{variant:{primary:"bg-primary",secondary:"bg-secondary text-secondary-foreground",success:"bg-green-500",warning:"bg-yellow-500",danger:"bg-red-500"},size:{sm:"min-w-16",md:"min-w-20",lg:"min-w-24"}},defaultVariants:{variant:"primary",size:"md"}}),cv=Z.forwardRef(({className:e,variant:t,leftActions:n=[],rightActions:r=[],actionSize:o="md",threshold:a=.3,onSwipeEnd:s,disabled:i=false,fullSwipeAction:l,children:c,...d},u)=>{let p=Z.useRef(null),[f,g]=Z.useState(0),[h,v]=Z.useState(false),b=Z.useRef(0),x=Z.useRef(0),y=n.length*(o==="sm"?64:o==="lg"?96:80),C=r.length*(o==="sm"?64:o==="lg"?96:80),w=k=>{i||(v(true),b.current=k.touches[0].clientX,x.current=f);},R=k=>{if(!h||i)return;let T=k.touches[0].clientX-b.current,M=x.current+T;(M>0&&n.length===0||M<0&&r.length===0)&&(M=0),M>y?M=y+(M-y)*.3:M<-C&&(M=-C+(M+C)*.3),g(M);},N=()=>{if(!h)return;v(false);let k=p.current?.offsetWidth||0,P=Math.abs(f)/k;if(l&&P>.6){l==="right"&&f>0&&n[0]?(n[0].onAction?.(),s?.("right",n[0].key)):l==="left"&&f<0&&r[0]&&(r[0].onAction?.(),s?.("left",r[0].key)),g(0);return}f>y*a&&n.length>0?(g(y),s?.("right")):f<-C*a&&r.length>0?(g(-C),s?.("left")):g(0);},S=(k,P)=>{k.onAction?.(),s?.(P,k.key),g(0);},D=()=>{g(0);};return jsxs("div",{ref:u,className:m(lv({variant:t,className:e})),...d,children:[n.length>0&&f>0&&jsx("div",{className:"absolute left-0 top-0 bottom-0 flex",style:{width:y},children:n.map(k=>jsxs("button",{type:"button",onClick:()=>S(k,"right"),className:m(Kl({variant:k.variant,size:o})),style:{opacity:Math.min(1,f/y)},children:[k.icon&&jsx("span",{className:"h-5 w-5 [&>svg]:h-full [&>svg]:w-full",children:k.icon}),!k.icon&&k.label]},k.key))}),r.length>0&&f<0&&jsx("div",{className:"absolute right-0 top-0 bottom-0 flex",style:{width:C},children:r.map(k=>jsxs("button",{type:"button",onClick:()=>S(k,"left"),className:m(Kl({variant:k.variant,size:o})),style:{opacity:Math.min(1,Math.abs(f)/C)},children:[k.icon&&jsx("span",{className:"h-5 w-5 [&>svg]:h-full [&>svg]:w-full",children:k.icon}),!k.icon&&k.label]},k.key))}),jsx("div",{ref:p,className:m("relative bg-background",h?"":"transition-transform duration-200"),style:{transform:`translateX(${f}px)`},onTouchStart:w,onTouchMove:R,onTouchEnd:N,onClick:f!==0?D:void 0,children:c})]})});cv.displayName="SwipeActions";var uv=cva("relative overflow-hidden",{variants:{variant:{default:"",contained:"h-full"}},defaultVariants:{variant:"default"}}),NM=cva("absolute left-1/2 -translate-x-1/2 flex items-center justify-center transition-all duration-200",{variants:{size:{sm:"h-8 w-8",md:"h-10 w-10",lg:"h-12 w-12"}},defaultVariants:{size:"md"}}),mv=Z.forwardRef(({className:e,variant:t,onRefresh:n,pullThreshold:r=80,maxPullDistance:o=120,loadingIndicator:a,pullIndicator:s,indicatorSize:i="md",disabled:l=false,pullText:c="Pull to refresh",releaseText:d="Release to refresh",refreshingText:u="Refreshing...",children:p,...f},g)=>{let h=Z.useRef(null),[v,b]=Z.useState(0),[x,y]=Z.useState("idle"),C=Z.useRef(0),w=Z.useRef(false),R=()=>l||x==="refreshing"?false:(h.current?.scrollTop??window.scrollY)<=0,N=T=>{R()&&(C.current=T.touches[0].clientY,w.current=true);},S=T=>{if(!w.current||!R())return;let H=T.touches[0].clientY-C.current;if(H<0){b(0),y("idle");return}let L=Math.min(H*.5,o);b(L),y(L>=r?"ready":"pulling");},D=async()=>{if(w.current)if(w.current=false,x==="ready"){y("refreshing"),b(r*.6);try{await n();}finally{y("idle"),b(0);}}else y("idle"),b(0);},k={sm:"h-4 w-4",md:"h-5 w-5",lg:"h-6 w-6"}[i],P=()=>{if(x==="refreshing")return a||jsxs("div",{className:"flex flex-col items-center gap-1",children:[jsx(Loader2,{className:m(k,"animate-spin text-primary")}),jsx("span",{className:"text-xs text-muted-foreground",children:u})]});let T=Math.min(v/r*180,180);return s||jsxs("div",{className:"flex flex-col items-center gap-1",children:[jsx(ArrowDown,{className:m(k,"text-muted-foreground transition-transform"),style:{transform:`rotate(${T}deg)`}}),jsx("span",{className:"text-xs text-muted-foreground",children:x==="ready"?d:c})]})};return jsxs("div",{ref:g,className:m(uv({variant:t,className:e})),...f,children:[jsx("div",{className:m(NM({size:i}),"z-10",x==="idle"&&v===0&&"opacity-0"),style:{top:Math.max(v-60,-60),opacity:Math.min(v/(r*.5),1)},children:P()}),jsx("div",{ref:h,className:m("transition-transform duration-200",x==="refreshing"&&"ease-out"),style:{transform:`translateY(${v}px)`,transition:w.current?"none":void 0},onTouchStart:N,onTouchMove:S,onTouchEnd:D,children:p})]})});mv.displayName="PullToRefresh";var jr=(e,t,n)=>({duration:e,delay:t,ease:n||[.4,0,.2,1]}),PM={hidden:e=>({opacity:e}),visible:{opacity:1},exit:e=>({opacity:e})},pv=Z.forwardRef(({show:e=true,children:t,duration:n=.3,delay:r=0,ease:o,className:a,unmountOnExit:s=true,initialOpacity:i=0,onAnimationStart:l,onAnimationComplete:c},d)=>{let u=jsx(motion.div,{ref:d,initial:"hidden",animate:e?"visible":"hidden",exit:s?"exit":void 0,variants:PM,custom:i,transition:jr(n,r,o),className:m(a),onAnimationStart:l,onAnimationComplete:c,children:t});return s?jsx(AnimatePresence,{children:e&&u}):u});pv.displayName="Fade";var EM=(e,t)=>{let n=typeof t=="number"?`${t}px`:t,r={up:{y:n},down:{y:`-${n}`},left:{x:n},right:{x:`-${n}`}};return {hidden:{opacity:0,...r[e]},visible:{opacity:1,x:0,y:0},exit:{opacity:0,...r[e]}}},fv=Z.forwardRef(({show:e=true,children:t,duration:n=.3,delay:r=0,ease:o,className:a,unmountOnExit:s=true,direction:i="up",offset:l=20,onAnimationStart:c,onAnimationComplete:d},u)=>{let p=Z.useMemo(()=>EM(i,l),[i,l]),f=jsx(motion.div,{ref:u,initial:"hidden",animate:e?"visible":"hidden",exit:s?"exit":void 0,variants:p,transition:jr(n,r,o),className:m(a),onAnimationStart:c,onAnimationComplete:d,children:t});return s?jsx(AnimatePresence,{children:e&&f}):f});fv.displayName="Slide";var SM={center:"center center",top:"center top",bottom:"center bottom",left:"left center",right:"right center","top-left":"left top","top-right":"right top","bottom-left":"left bottom","bottom-right":"right bottom"},LM={hidden:e=>({opacity:0,scale:e}),visible:{opacity:1,scale:1},exit:e=>({opacity:0,scale:e})},gv=Z.forwardRef(({show:e=true,children:t,duration:n=.3,delay:r=0,ease:o,className:a,unmountOnExit:s=true,initialScale:i=.9,origin:l="center",onAnimationStart:c,onAnimationComplete:d},u)=>{let p=jsx(motion.div,{ref:u,initial:"hidden",animate:e?"visible":"hidden",exit:s?"exit":void 0,variants:LM,custom:i,transition:jr(n,r,o),className:m(a),style:{transformOrigin:SM[l]},onAnimationStart:c,onAnimationComplete:d,children:t});return s?jsx(AnimatePresence,{children:e&&p}):p});gv.displayName="Scale";var bv=Z.forwardRef(({show:e=true,children:t,duration:n=.3,delay:r=0,ease:o,className:a,horizontal:s=false,startingSize:i=0,animateOpacity:l=true,onAnimationStart:c,onAnimationComplete:d},u)=>{let p=s?"width":"height",f={hidden:{[p]:i,opacity:l?0:1},visible:{[p]:"auto",opacity:1},exit:{[p]:i,opacity:l?0:1}};return jsx(AnimatePresence,{initial:false,children:e&&jsx(motion.div,{ref:u,initial:"hidden",animate:"visible",exit:"exit",variants:f,transition:jr(n,r,o),className:m("overflow-hidden",a),onAnimationStart:c,onAnimationComplete:d,children:t})})});bv.displayName="Collapse";var vv=Z.forwardRef(({show:e=true,children:t,duration:n=.4,delay:r=0,ease:o,className:a,initialWidth:s=0,initialHeight:i=0,animateOpacity:l=true,onAnimationStart:c,onAnimationComplete:d},u)=>{let p={hidden:{width:s,height:i,opacity:l?0:1},visible:{width:"auto",height:"auto",opacity:1},exit:{width:s,height:i,opacity:l?0:1}};return jsx(AnimatePresence,{initial:false,children:e&&jsx(motion.div,{ref:u,initial:"hidden",animate:"visible",exit:"exit",variants:p,transition:jr(n,r,o),className:m("overflow-hidden",a),onAnimationStart:c,onAnimationComplete:d,children:t})})});vv.displayName="Expand";var hv=Z.forwardRef(({show:e=true,children:t,duration:n=.3,delay:r=0,ease:o,className:a,unmountOnExit:s=true,initialRotation:i=-180,finalRotation:l=0,onAnimationStart:c,onAnimationComplete:d},u)=>{let p={hidden:{opacity:0,rotate:i},visible:{opacity:1,rotate:l},exit:{opacity:0,rotate:i}},f=jsx(motion.div,{ref:u,initial:"hidden",animate:e?"visible":"hidden",exit:s?"exit":void 0,variants:p,transition:jr(n,r,o),className:m(a),onAnimationStart:c,onAnimationComplete:d,children:t});return s?jsx(AnimatePresence,{children:e&&f}):f});hv.displayName="Rotate";var xv=Z.forwardRef(({front:e,back:t,direction:n="horizontal",flipped:r=false,duration:o=.6,delay:a=0,ease:s,className:i,onAnimationStart:l,onAnimationComplete:c},d)=>{let u=n==="horizontal"?"rotateY":"rotateX";return jsx("div",{ref:d,className:m("relative",i),style:{perspective:1e3},children:jsxs(motion.div,{animate:{[u]:r?180:0},transition:jr(o,a,s),style:{transformStyle:"preserve-3d"},onAnimationStart:l,onAnimationComplete:c,children:[jsx("div",{className:"absolute inset-0",style:{backfaceVisibility:"hidden"},children:e}),jsx("div",{className:"absolute inset-0",style:{backfaceVisibility:"hidden",transform:`${u}(180deg)`},children:t})]})})});xv.displayName="Flip";var yv=Z.forwardRef(({color:e="currentColor",duration:t=.6,children:n,className:r,disabled:o=false},a)=>{let[s,i]=Z.useState([]),l=Z.useRef(null),c=u=>{if(o)return;let p=l.current;if(!p)return;let f=p.getBoundingClientRect(),g=u.clientX-f.left,h=u.clientY-f.top,v=Math.max(f.width,f.height)*2,b={id:Date.now(),x:g,y:h,size:v};i(x=>[...x,b]);},d=u=>{i(p=>p.filter(f=>f.id!==u));};return jsxs("div",{ref:a,className:m("relative overflow-hidden rounded-[inherit]",r),onClick:c,children:[jsx("div",{ref:l,className:"relative z-0",children:n}),jsx(AnimatePresence,{children:s.map(u=>jsx(motion.span,{initial:{scale:0,opacity:.35},animate:{scale:1,opacity:0},exit:{opacity:0},transition:{duration:t,ease:"easeOut"},onAnimationComplete:()=>d(u.id),className:"pointer-events-none absolute rounded-full",style:{left:u.x-u.size/2,top:u.y-u.size/2,width:u.size,height:u.size,backgroundColor:e}},u.id))})]})});yv.displayName="Ripple";var Rv=Z.forwardRef(({children:e,animate:t=true,height:n=10,duration:r=.5,count:o=0,className:a,triggerOnHover:s=false},i)=>{let[l,c]=Z.useState(false),d=s?l:t,u={idle:{y:0},bounce:{y:[0,-n,0],transition:{duration:r,ease:"easeInOut",repeat:o===0?1/0:o-1,repeatType:"loop"}}};return jsx(motion.div,{ref:i,variants:u,initial:"idle",animate:d?"bounce":"idle",className:m(a),onMouseEnter:()=>s&&c(true),onMouseLeave:()=>s&&c(false),children:e})});Rv.displayName="Bounce";var IM={subtle:[0,-2,2,-2,2,-1,1,0],normal:[0,-5,5,-5,5,-3,3,0],strong:[0,-10,10,-10,10,-5,5,0]},wv=Z.forwardRef(({children:e,animate:t=true,intensity:n="normal",duration:r=.5,count:o=1,className:a,triggerOnHover:s=false},i)=>{let[l,c]=Z.useState(false),d=s?l:t,u={idle:{x:0},shake:{x:IM[n],transition:{duration:r,ease:"easeInOut",repeat:o-1}}};return jsx(motion.div,{ref:i,variants:u,initial:"idle",animate:d?"shake":"idle",className:m(a),onMouseEnter:()=>s&&c(true),onMouseLeave:()=>s&&c(false),children:e})});wv.displayName="Shake";var VM={slow:"animate-[pulse_3s_ease-in-out_infinite]",normal:"animate-[pulse_2s_ease-in-out_infinite]",fast:"animate-[pulse_1s_ease-in-out_infinite]"},Cv=Z.forwardRef(({children:e,animate:t=true,speed:n="normal",className:r},o)=>jsx("div",{ref:o,className:m(t&&VM[n],r),children:e}));Cv.displayName="Pulse";var Tv=Z.forwardRef(({children:e,animate:t=true,angle:n=10,duration:r=.3,count:o=0,className:a,triggerOnHover:s=false},i)=>{let[l,c]=Z.useState(false),d=s?l:t,u={idle:{rotate:0},wiggle:{rotate:[0,-n,n,-n,n,0],transition:{duration:r,ease:"easeInOut",repeat:o===0?1/0:o-1,repeatType:"loop"}}};return jsx(motion.div,{ref:i,variants:u,initial:"idle",animate:d?"wiggle":"idle",className:m(a),onMouseEnter:()=>s&&c(true),onMouseLeave:()=>s&&c(false),children:e})});Tv.displayName="Wiggle";var Mv=Z.forwardRef(({children:e,animate:t=false,scale:n=1.2,duration:r=.2,className:o,triggerOnHover:a=false,triggerOnClick:s=false},i)=>{let[l,c]=Z.useState(false),d=t||l,u={type:"spring",stiffness:400,damping:17,duration:r},p=()=>{s&&(c(true),setTimeout(()=>c(false),r*1e3));};return jsx(motion.div,{ref:i,animate:{scale:d?n:1},transition:u,className:m(o),onMouseEnter:()=>a&&c(true),onMouseLeave:()=>a&&c(false),onClick:p,children:e})});Mv.displayName="Pop";var KM=(e,t,n,r)=>{let o=e.toFixed(t),[a,s]=o.split("."),i=a.replace(/\B(?=(\d{3})+(?!\d))/g,n);return s?`${i}${r}${s}`:i},kv=Z.forwardRef(({value:e,from:t=0,duration:n=2,decimals:r=0,prefix:o="",suffix:a="",separator:s=",",decimalSeparator:i=".",animateOnView:l=true,delay:c=0,className:d,onComplete:u},p)=>{let f=Z.useRef(null),g=useInView(f,{once:true}),[h,v]=Z.useState(!l);Z.useEffect(()=>{if(l&&g){let y=setTimeout(()=>v(true),c*1e3);return ()=>clearTimeout(y)}},[l,g,c]);let b=useMotionValue(t),x=useTransform(b,y=>KM(y,r,s,i));return Z.useEffect(()=>{if(h){let y=animate(b,e,{duration:n,ease:"easeOut",onComplete:u});return ()=>y.stop()}},[h,e,n,b,u]),jsx("span",{ref:f,className:m(d),children:jsxs("span",{ref:p,children:[o,jsx(motion.span,{children:x}),a]})})});kv.displayName="Counter";var Nv=Z.forwardRef(({text:e,speed:t=50,delay:n=0,pauseBetween:r=1500,cursor:o=true,cursorChar:a="|",loop:s=false,deleteSpeed:i=30,animateOnView:l=true,className:c,cursorClassName:d,onComplete:u},p)=>{let f=Array.isArray(e)?e:[e],[g,h]=Z.useState(""),[v,b]=Z.useState(0),[x,y]=Z.useState(false),[C,w]=Z.useState(false),R=Z.useRef(null),N=useInView(R,{once:true}),[S,D]=Z.useState(!l);return Z.useEffect(()=>{if(l&&N){let k=setTimeout(()=>D(true),n*1e3);return ()=>clearTimeout(k)}},[l,N,n]),Z.useEffect(()=>{if(!S||C)return;let k=f[v],P;return x?g.length>0?P=setTimeout(()=>{h(g.slice(0,-1));},i):(y(false),b(T=>(T+1)%f.length)):g.length<k.length?P=setTimeout(()=>{h(k.slice(0,g.length+1));},t):v<f.length-1||s?P=setTimeout(()=>{y(true);},r):(w(true),u?.()),()=>clearTimeout(P)},[S,g,v,x,C,f,t,i,r,s,u]),jsxs("span",{ref:R,className:m(c),children:[jsx("span",{ref:p,children:g}),o&&jsx(motion.span,{animate:{opacity:[1,0]},transition:{duration:.8,repeat:1/0,repeatType:"reverse"},className:m("ml-0.5",d),children:a})]})});Nv.displayName="Typewriter";var Pv=Z.forwardRef(({children:e,direction:t="up",stagger:n=.05,duration:r=.5,delay:o=0,splitBy:a="word",animateOnView:s=true,className:i},l)=>{let c=Z.useRef(null),d=useInView(c,{once:true,amount:.5}),u=s?d:true,p=typeof e=="string"?e:"",f=a==="word"?p.split(" "):p.split(""),g={up:{y:20},down:{y:-20},left:{x:20},right:{x:-20}},h={hidden:{},visible:{transition:{staggerChildren:n,delayChildren:o}}},v={hidden:{opacity:0,...g[t]},visible:{opacity:1,x:0,y:0,transition:{duration:r,ease:"easeInOut"}}};return jsx(motion.div,{ref:l,className:m("inline-flex flex-wrap",i),variants:h,initial:"hidden",animate:u?"visible":"hidden",children:jsx("span",{ref:c,children:f.map((b,x)=>jsxs(motion.span,{variants:v,className:"inline-block",children:[b,a==="word"&&x<f.length-1&&"\xA0"]},x))})})});Pv.displayName="TextReveal";var Ev=Z.forwardRef(({words:e,duration:t=2,animation:n="slide",animationDuration:r=.5,className:o,loop:a=true},s)=>{let[i,l]=Z.useState(0);Z.useEffect(()=>{if(!a&&i===e.length-1)return;let d=setInterval(()=>{l(u=>(u+1)%e.length);},t*1e3);return ()=>clearInterval(d)},[e.length,t,a,i]);let c=()=>{switch(n){case "fade":return {initial:{opacity:0},animate:{opacity:1},exit:{opacity:0}};case "slide":return {initial:{opacity:0,y:20},animate:{opacity:1,y:0},exit:{opacity:0,y:-20}};case "scale":return {initial:{opacity:0,scale:.8},animate:{opacity:1,scale:1},exit:{opacity:0,scale:1.2}};case "blur":return {initial:{opacity:0,filter:"blur(10px)"},animate:{opacity:1,filter:"blur(0px)"},exit:{opacity:0,filter:"blur(10px)"}}}};return jsx("span",{ref:s,className:m("relative inline-block",o),children:jsx(AnimatePresence,{mode:"wait",children:jsx(motion.span,{variants:c(),initial:"initial",animate:"animate",exit:"exit",transition:{duration:r},className:"inline-block",children:e[i]},e[i])})})});Ev.displayName="WordRotate";var Hv=Z.forwardRef(({children:e,direction:t="up",distance:n=50,duration:r=.6,delay:o=0,once:a=true,threshold:s=.1,className:i,scale:l,rotate:c,blur:d,ease:u=[.4,0,.2,1]},p)=>{let f=Z.useRef(null),g=useInView(f,{once:a,amount:s}),v={up:{x:0,y:n},down:{x:0,y:-n},left:{x:n,y:0},right:{x:-n,y:0},none:{x:0,y:0}}[t],b={hidden:{opacity:0,x:v.x,y:v.y,scale:l??1,rotate:c??0,filter:d?`blur(${d}px)`:"blur(0px)"},visible:{opacity:1,x:0,y:0,scale:1,rotate:0,filter:"blur(0px)",transition:{duration:r,delay:o,ease:u}}};return jsx("div",{ref:f,children:jsx(motion.div,{ref:p,variants:b,initial:"hidden",animate:g?"visible":"hidden",className:m(i),children:e})})});Hv.displayName="ScrollReveal";var Iv=Z.forwardRef(({position:e="top",size:t=4,color:n="hsl(var(--primary))",backgroundColor:r="transparent",zIndex:o=50,className:a,container:s,showPercentage:i=false,useSpring:l=true},c)=>{let{scrollYProgress:d}=useScroll({container:s}),u=useSpring(d,{stiffness:100,damping:30,restDelta:.001}),p=l?u:d,f=e==="top"||e==="bottom",g={top:{top:0,left:0,right:0,height:t},bottom:{bottom:0,left:0,right:0,height:t},left:{top:0,left:0,bottom:0,width:t},right:{top:0,right:0,bottom:0,width:t}},h=f?"scaleX":"scaleY",v=f?"left":"top";return jsxs("div",{ref:c,className:m("fixed",a),style:{...g[e],zIndex:o,backgroundColor:r},children:[jsx(motion.div,{className:"h-full w-full",style:{[h]:p,transformOrigin:v,backgroundColor:n}}),i&&jsx(UM,{progress:p,position:e})]})});Iv.displayName="ScrollProgress";var UM=({progress:e,position:t})=>{let n=useTransform(e,s=>Math.round(s*100)),[r,o]=Z.useState(0);return Z.useEffect(()=>{let s=n.on("change",o);return ()=>s()},[n]),jsxs("span",{className:m("fixed rounded bg-background/80 px-2 py-1 text-xs font-medium backdrop-blur-sm",{top:"top-2 right-4",bottom:"bottom-2 right-4",left:"top-4 left-2",right:"top-4 right-2"}[t]),children:[r,"%"]})},Vv=Z.forwardRef(({children:e,speed:t=.5,direction:n="vertical",className:r,container:o},a)=>{let s=Z.useRef(null),{scrollYProgress:i}=useScroll({target:s,container:o,offset:["start end","end start"]}),l=[-100*t,100*t],c=useTransform(i,[0,1],l),d=useSpring(c,{stiffness:100,damping:30}),u=n==="horizontal"?d:0,p=n==="vertical"?d:0;return jsx("div",{ref:s,className:m("overflow-hidden",r),children:jsx(motion.div,{ref:a,style:{x:u,y:p},children:e})})});Vv.displayName="Parallax";var Ov=Z.forwardRef(({children:e,width:t,height:n,duration:r=1.5,direction:o="right",baseColor:a="hsl(var(--muted))",highlightColor:s="hsl(var(--muted-foreground) / 0.1)",borderRadius:i,className:l,active:c=true},d)=>{let u={left:"to left",right:"to right",top:"to top",bottom:"to bottom"},p={left:"shimmer-left",right:"shimmer-right",top:"shimmer-top",bottom:"shimmer-bottom"};return jsxs("div",{ref:d,className:m("relative overflow-hidden",l),style:{width:t,height:n,borderRadius:i,backgroundColor:a},children:[e,c&&jsx("div",{className:"absolute inset-0",style:{background:`linear-gradient(${u[o]}, transparent, ${s}, transparent)`,animation:`${p[o]} ${r}s infinite`}}),jsx("style",{children:`
|
|
55
|
+
`,document.body.appendChild(Me),te.dataTransfer.setDragImage(Me,20,15),setTimeout(()=>{document.body.removeChild(Me);},0),h(e),w?.({event:te,node:e});},X=te=>{if(te.preventDefault(),te.stopPropagation(),!g||g.key===e.key||J)return;let re=te.currentTarget.getBoundingClientRect(),Me=te.clientY-re.top,At=re.height,ft;Me<At*.25?ft=-1:Me>At*.75?ft=1:ft=0,!(C&&!C({dropNode:e,dropPosition:ft,dragNode:g}))&&(x(e.key,ft),R?.({event:te,node:e}));},xe=te=>{te.preventDefault(),te.stopPropagation(),!(!g||g.key===e.key)&&N?.({event:te,node:e,expandedKeys:z()});},Ce=te=>{te.stopPropagation(),S?.({event:te,node:e});},nt=te=>{te.preventDefault(),te.stopPropagation(),!(!g||g.key===e.key||J)&&(b!==null&&y(e,b),h(null),x(null,null));},de=te=>{h(null),x(null,null),D?.({event:te,node:e});},Je=te=>{J||Te&&i(e.key,e,te);},ee=te=>{te.stopPropagation(),!J&&!U&&a(e.key,e);},rt=Z.useMemo(()=>{if(!se||b===null)return "";switch(b){case -1:return "before:absolute before:left-0 before:right-0 before:top-0 before:h-0.5 before:bg-foreground";case 1:return "after:absolute after:left-0 after:right-0 after:bottom-0 after:h-0.5 after:bg-foreground";case 0:return "ring-2 ring-foreground ring-inset";default:return ""}},[se,b]),Wt=[...r,n];return jsxs("div",{className:"relative",children:[k&&t>0&&jsxs(Fragment,{children:[r.map((te,re)=>!te&&jsx("div",{className:"absolute border-l border-border",style:{left:`calc(${re} * var(--tree-indent) + 12px)`,top:0,bottom:0}},re)),jsx("div",{className:"absolute border-l border-border",style:{left:`calc(${t-1} * var(--tree-indent) + 12px)`,top:0,height:n?"calc(var(--tree-item-height) / 2)":"100%"}}),jsx("div",{className:"absolute border-t border-border",style:{left:`calc(${t-1} * var(--tree-indent) + 12px)`,top:"calc(var(--tree-item-height) / 2)",width:"calc(var(--tree-indent) - 4px)"}})]}),jsxs("div",{role:"treeitem","aria-expanded":U?void 0:j,"aria-selected":Te?A:void 0,"aria-disabled":J,draggable:G,onDragStart:Y,onDragOver:X,onDragEnter:xe,onDragLeave:Ce,onDrop:nt,onDragEnd:de,onClick:Je,className:m("relative",ng({size:O,isSelected:A,isDragging:q,isDisabled:J,isHoverable:Te&&!J}),rt,V&&"flex-1"),style:{paddingLeft:`calc(${t} * var(--tree-indent) + 8px)`},children:[G&&T&&B!==false&&jsx("div",{className:"flex-shrink-0 text-muted-foreground cursor-grab active:cursor-grabbing",children:B}),jsx("button",{type:"button",onClick:ee,className:m("flex-shrink-0 p-0.5 rounded hover:bg-muted/80 transition-transform",U&&"invisible"),tabIndex:-1,children:jsx(ChevronRight,{className:m("h-4 w-4 transition-transform duration-200",j&&"rotate-90")})}),fe&&jsx(Tw,{checked:W,indeterminate:_,disabled:J,onClick:te=>u(e.key,e,te)}),P&&K&&jsx("div",{className:"flex-shrink-0 text-muted-foreground ml-1",children:K}),jsx("div",{className:m("flex-1 min-w-0 truncate ml-1",V&&"flex-none"),children:e.label})]}),F&&j&&jsx("div",{role:"group",children:e.children.map((te,re)=>jsx(og,{node:te,level:t+1,isLast:re===e.children.length-1,parentIsLastPath:Wt},te.key))})]})},Mw=e=>{let t=[],n=r=>{for(let o of r)t.push(o.key),o.children&&n(o.children);};return n(e),t},kw=e=>{let t=[],n=r=>{for(let o of r)t.push(o.key),o.children&&n(o.children);};return e.children&&n(e.children),t},ag=(e,t)=>{if(!e.children)return false;for(let n of e.children)if(n.key===t||ag(n,t))return true;return false},sg=Z.forwardRef(({className:e,variant:t,size:n,data:r,draggable:o=false,allowDrop:a,expandedKeys:s,defaultExpandedKeys:i=[],defaultExpandAll:l=false,onExpand:c,selectable:d=true,multiple:u=false,selectedKeys:p,defaultSelectedKeys:f=[],onSelect:g,checkable:h=false,checkStrictly:v=false,checkedKeys:b,defaultCheckedKeys:x=[],onCheck:y,showLine:C=false,showIcon:w=false,showHandle:R=true,dragIcon:N,icon:S,leafIcon:D=jsx(File,{className:"h-4 w-4"}),folderIcon:k=jsx(Folder,{className:"h-4 w-4"}),folderOpenIcon:P=jsx(FolderOpen,{className:"h-4 w-4"}),onDragStart:T,onDragEnter:M,onDragOver:H,onDragLeave:E,onDragEnd:L,onDrop:I,blockNode:V=false,isDisabled:$=false,...O},z)=>{let F=Z.useCallback(()=>l?new Set(Mw(r)):new Set(i),[l,i,r]),[U,j]=Z.useState(F),A=s!==void 0,W=A?new Set(s):U,_=Z.useCallback((ke,_e)=>{let zt=new Set(W),Fe=!zt.has(ke);Fe?zt.add(ke):zt.delete(ke),A||j(zt),c?.(Array.from(zt),{expanded:Fe,node:_e});},[W,A,c]),[q,se]=Z.useState(new Set(f)),J=p!==void 0,Te=J?new Set(p):q,fe=Z.useCallback((ke,_e,zt)=>{let Fe=new Set(Te),ne=!Fe.has(ke);u?ne?Fe.add(ke):Fe.delete(ke):(Fe.clear(),ne&&Fe.add(ke)),J||se(Fe);let ye=[],Rr=Ca=>{for(let Xr of Ca)Fe.has(Xr.key)&&ye.push(Xr),Xr.children&&Rr(Xr.children);};Rr(r),g?.(Array.from(Fe),{selected:ne,selectedNodes:ye,node:_e,event:zt});},[Te,u,J,g,r]),[G,B]=Z.useState(new Set(x)),[K,Y]=Z.useState(new Set),X=b!==void 0,xe=X?new Set(Array.isArray(b)?b:b.checked):G,Ce=X&&!Array.isArray(b)?new Set(b.halfChecked):K,nt=Z.useCallback((ke,_e,zt)=>{let Fe=new Set(xe),ne=new Set(Ce),ye=!Fe.has(ke);if(ye?(Fe.add(ke),ne.delete(ke)):Fe.delete(ke),!v&&_e.children){let ii=kw(_e);for(let qn of ii)ye?(Fe.add(qn),ne.delete(qn)):Fe.delete(qn);}X||(B(Fe),Y(ne));let Rr=[],Ca=ii=>{for(let qn of ii)Fe.has(qn.key)&&Rr.push(qn),qn.children&&Ca(qn.children);};Ca(r);let Xr=v?{checked:Array.from(Fe),halfChecked:Array.from(ne)}:Array.from(Fe);y?.(Xr,{checked:ye,checkedNodes:Rr,node:_e,event:zt,halfCheckedKeys:Array.from(ne)});},[xe,Ce,v,X,y,r]),[de,Je]=Z.useState(null),[ee,rt]=Z.useState(null),[Wt,te]=Z.useState(null),re=Z.useCallback((ke,_e)=>{rt(ke),te(_e);},[]),Me=Z.useCallback((ke,_e)=>{!de||!I||_e===0&&ag(de,ke.key)||I({event:{},node:ke,dragNode:de,dropPosition:_e,dropToGap:_e!==0});},[de,I]),At=Z.useCallback(()=>Array.from(W),[W]),ft={expandedKeys:W,toggleExpand:_,selectedKeys:Te,handleSelect:fe,selectable:d,multiple:u,checkedKeys:xe,halfCheckedKeys:Ce,handleCheck:nt,checkable:h,checkStrictly:v,draggable:o,draggedNode:de,setDraggedNode:Je,dragOverKey:ee,dragOverPosition:Wt,setDragOver:re,handleDrop:Me,allowDrop:a,onDragStart:T,onDragEnter:M,onDragOver:H,onDragLeave:E,onDragEnd:L,showLine:C,showIcon:w,showHandle:R,dragIcon:N,icon:S,leafIcon:D,folderIcon:k,folderOpenIcon:P,blockNode:V,disabled:$,size:n,data:r,getAllKeys:At},qr=ke=>{let _e=ke.relatedTarget,zt=ke.currentTarget;(!_e||!zt.contains(_e))&&re(null,null);};return jsx(rg.Provider,{value:ft,children:jsx("div",{ref:z,role:"tree","aria-multiselectable":u||h,className:m(tg({variant:t,size:n,className:e})),onDragLeave:qr,...O,children:r.map((ke,_e)=>jsx(og,{node:ke,level:0,isLast:_e===r.length-1},ke.key))})})});sg.displayName="Tree";var lg=cva("flex rounded-md border border-input bg-background text-sm placeholder:text-muted-foreground focus:outline-none transition-colors disabled:cursor-not-allowed disabled:opacity-50",{variants:{size:{sm:"h-9 px-2 text-xs",md:"h-10 px-3 text-sm",lg:"h-11 px-4 text-base"},fullWidth:{true:"w-full",false:"w-fit min-w-48"}},defaultVariants:{size:"md",fullWidth:false}}),Dw=({text:e,query:t})=>{if(!t)return jsx(Fragment,{children:e});let n=new RegExp(`(${t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")})`,"gi"),r=e.split(n);return jsx(Fragment,{children:r.map((o,a)=>n.test(o)?jsx("mark",{className:"bg-primary/20 text-foreground rounded-sm",children:o},a):jsx("span",{children:o},a))})},Hw=(e,t)=>{let[n,r]=Z.useState(e);return Z.useEffect(()=>{let o=setTimeout(()=>{r(e);},t);return ()=>{clearTimeout(o);}},[e,t]),n},cg=Z.forwardRef(({className:e,size:t,value:n,defaultValue:r="",onChange:o,onSelect:a,options:s=[],loadOptions:i,debounceMs:l=300,minChars:c=0,placeholder:d="Type to search...",emptyText:u="No results found.",loadingText:p="Loading...",clearable:f=false,allowCustomValue:g=true,maxHeight:h=200,highlightMatch:v=true,fullWidth:b=false,disabled:x,...y},C)=>{let[w,R]=Z.useState(false),[N,S]=Z.useState(r),[D,k]=Z.useState([]),[P,T]=Z.useState(false),[M,H]=Z.useState(false),[E,L]=Z.useState(0),I=Z.useRef(null),V=Z.useRef(null),$=n!==void 0?n:N,O=Hw($,l);Z.useEffect(()=>{let K=V.current;if(!K)return;let Y=()=>{L(K.offsetWidth);};Y();let X=new ResizeObserver(Y);return X.observe(K),()=>{X.disconnect();}},[]),Z.useImperativeHandle(C,()=>I.current);let z=i?D:s,F=Z.useMemo(()=>i?z:z.filter(K=>K.label.toLowerCase().includes($.toLowerCase())),[z,$,i]);Z.useEffect(()=>{if(!i)return;if(O.length<c){k([]);return}let K=false;return (async()=>{T(true);try{let X=await i(O);K||k(X);}catch{K||k([]);}finally{K||T(false);}})(),()=>{K=true;}},[O,i,c]);let U=K=>{n===void 0&&S(K),o?.(K);},j=K=>{let Y=K.target.value;U(Y),Y.length>=c&&R(true);},A=K=>{U(K.label),a?.(K),R(false);},W=()=>{U(""),I.current?.focus();},_=()=>{H(true),R(true);},q=()=>{H(false);},se=K=>{K.key==="Escape"&&R(false),K.key==="ArrowDown"&&!w&&F.length>0&&R(true);},J=t==="sm"?"h-3 w-3":t==="lg"?"h-5 w-5":"h-4 w-4",Te=f&&$?"pr-8":"pr-3",fe=t==="sm"?"text-xs":t==="lg"?"text-base":"text-sm",G=t==="sm"?"px-1.5 py-1":t==="lg"?"px-3 py-2":"px-2 py-1.5",B=t==="sm"?"h-3 w-3":t==="lg"?"h-5 w-5":"h-4 w-4";return jsxs(Pt,{open:w,onOpenChange:R,children:[jsxs(Qn,{ref:V,className:m("relative",b?"w-full":"w-fit"),children:[jsx("input",{ref:I,type:"text",value:$,onChange:j,onFocus:_,onBlur:q,onKeyDown:se,disabled:x,placeholder:d,className:m(lg({size:t,fullWidth:b}),Te,e),style:{borderColor:M?"var(--color-foreground)":void 0},role:"combobox","aria-expanded":w,"aria-autocomplete":"list","aria-controls":"autocomplete-list",...y}),f&&$&&!x&&jsx("button",{type:"button",onClick:W,className:"absolute right-2 top-1/2 -translate-y-1/2 text-muted-foreground hover:text-foreground","aria-label":"Clear",children:jsx(X,{className:J})})]}),jsx(Et,{className:"p-0",align:"start",style:{width:E>0?E:void 0},onOpenAutoFocus:K=>K.preventDefault(),children:jsx(Command,{className:"overflow-hidden rounded-md",shouldFilter:false,children:jsx(Ve,{style:{maxHeight:h},children:jsx(Command.List,{id:"autocomplete-list",className:"p-1",children:P?jsxs("div",{className:m("flex items-center justify-center gap-2 py-6 text-muted-foreground",fe),children:[jsx(Loader2,{className:m(J,"animate-spin")}),p]}):F.length===0?jsx("div",{className:m("py-6 text-center text-muted-foreground",fe),children:u}):F.map(K=>jsxs(Command.Item,{value:K.value,disabled:K.isDisabled,onSelect:()=>A(K),className:m("relative flex cursor-default select-none items-center rounded-sm outline-none",G,fe,"data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50","data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground"),children:[jsx(Check,{className:m("mr-2 shrink-0",B,$===K.label?"opacity-100":"opacity-0")}),jsx("span",{className:"flex-1",children:v?jsx(Dw,{text:K.label,query:$}):K.label})]},K.value))})})})})]})});cg.displayName="Autocomplete";var ln=Z.createContext(null),rl=Z.createContext(null),ol=()=>{let e=Z.useContext(ln);if(!e)throw new Error("useFormContext must be used within a Form");return e},bs=()=>{let e=Z.useContext(rl);if(!e)throw new Error("useFieldContext must be used within a FormField");return e},Iw={required:(e="This field is required")=>({validate:t=>typeof t=="string"?t.trim().length>0:Array.isArray(t)?t.length>0:t!=null,message:e}),minLength:(e,t)=>({validate:n=>typeof n=="string"&&n.length>=e,message:t??`Must be at least ${e} characters`}),maxLength:(e,t)=>({validate:n=>typeof n=="string"&&n.length<=e,message:t??`Must be at most ${e} characters`}),min:(e,t)=>({validate:n=>typeof n=="number"&&n>=e,message:t??`Must be at least ${e}`}),max:(e,t)=>({validate:n=>typeof n=="number"&&n<=e,message:t??`Must be at most ${e}`}),email:(e="Invalid email address")=>({validate:t=>typeof t=="string"&&/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(t),message:e}),pattern:(e,t="Invalid format")=>({validate:n=>typeof n=="string"&&e.test(n),message:t}),custom:(e,t)=>({validate:e,message:t})},dg=Z.forwardRef(({defaultValues:e={},onSubmit:t,onError:n,validateOnBlur:r=true,validateOnChange:o=false,children:a,className:s,...i},l)=>{let[c,d]=Z.useState(e),[u,p]=Z.useState({}),[f,g]=Z.useState({}),[h,v]=Z.useState({}),[b,x]=Z.useState(false),y=Z.useRef(new Map),C=Z.useCallback((E,L)=>{y.current.set(E,L);},[]),w=Z.useCallback(E=>{y.current.delete(E);},[]),R=Z.useCallback(E=>{let L=y.current.get(E)||[],I=c[E];for(let V of L)if(!V.validate(I))return p($=>({...$,[E]:V.message})),false;return p(V=>({...V,[E]:null})),true},[c]),N=Z.useCallback(()=>{let E=true,L={};return y.current.forEach((I,V)=>{let $=c[V];for(let O of I)if(!O.validate($)){L[V]=O.message,E=false;break}L[V]||(L[V]=null);}),p(L),E},[c]),S=Z.useCallback((E,L)=>{d(I=>({...I,[E]:L})),v(I=>({...I,[E]:true})),o&&setTimeout(()=>{R(E);},0);},[o,R]),D=Z.useCallback((E,L)=>{p(I=>({...I,[E]:L}));},[]),k=Z.useCallback((E,L)=>{g(I=>({...I,[E]:L})),L&&r&&R(E);},[r,R]),P=Z.useCallback(E=>({value:c[E],error:u[E]??null,touched:f[E]??false,dirty:h[E]??false}),[c,u,f,h]),T=Z.useCallback(()=>{d(e),p({}),g({}),v({});},[e]),M=async E=>{E.preventDefault();let L={};if(y.current.forEach((V,$)=>{L[$]=true;}),g(L),!N()){n?.(u);return}if(t){x(true);try{await t(c);}finally{x(false);}}},H={values:c,errors:u,touched:f,dirty:h,isSubmitting:b,setValue:S,setError:D,setTouched:k,validateField:R,validateAll:N,registerField:C,unregisterField:w,getFieldState:P,reset:T};return jsx(ln.Provider,{value:H,children:jsx("form",{ref:l,onSubmit:M,className:m("space-y-4",s),...i,children:a})})});dg.displayName="Form";var ug=({name:e,rules:t=[],defaultValue:n,children:r})=>{let o=ol(),a=Z.useId();Z.useEffect(()=>(o.registerField(e,t),n!==void 0&&o.values[e]===void 0&&o.setValue(e,n),()=>{o.unregisterField(e);}),[e,t,n,o]);let s=o.getFieldState(e),i={name:e,id:`${a}-${e}`,value:s.value,error:s.error,touched:s.touched,dirty:s.dirty};return jsx(rl.Provider,{value:i,children:r})};ug.displayName="FormField";var mg=Z.forwardRef(({className:e,...t},n)=>jsx("div",{ref:n,className:m("space-y-1.5",e),...t}));mg.displayName="FormItem";var pg=Z.forwardRef(({className:e,required:t,children:n,...r},o)=>{let{id:a,error:s,touched:i}=bs();return jsxs(Nr,{ref:o,htmlFor:a,className:m(s&&i&&"text-danger",e),...r,children:[n,t&&jsx("span",{className:"ml-1 text-danger",children:"*"})]})});pg.displayName="FormLabel";var fg=({children:e})=>{let{name:t,id:n,error:r,touched:o}=bs(),a=ol(),s=a.getFieldState(t),i=c=>{let d=c.target,u=d.type==="checkbox"?d.checked:d.value;a.setValue(t,u);},l=()=>{a.setTouched(t,true);};return Z.cloneElement(e,{id:n,name:t,value:s.value??"",onChange:i,onBlur:l,"aria-invalid":r&&o?"true":void 0,"aria-describedby":r&&o?`${n}-error`:void 0})};fg.displayName="FormControl";var gg=Z.forwardRef(({className:e,...t},n)=>jsx("p",{ref:n,className:m("text-xs text-muted-foreground",e),...t}));gg.displayName="FormDescription";var bg=Z.forwardRef(({className:e,message:t,...n},r)=>{let{id:o,error:a,touched:s}=bs(),i=t??(s?a:null);return i?jsx("p",{ref:r,id:`${o}-error`,className:m("text-xs text-danger",e),role:"alert",...n,children:i}):null});bg.displayName="FormMessage";var vg=Z.forwardRef(({name:e,rules:t=[],validate:n,errorMessage:r,isInvalid:o,isRequired:a,onChange:s,onBlur:i,value:l,defaultValue:c,...d},u)=>{let p=Z.useContext(ln),f=!!p&&!!e,[g,h]=Z.useState(c??""),[v,b]=Z.useState(null),[x,y]=Z.useState(false),C=l!==void 0,w=C?l:f?p.values[e]:g;Z.useEffect(()=>{if(f&&p&&e){let k=[...t];return a&&!k.some(P=>P.message.toLowerCase().includes("required"))&&k.unshift({validate:P=>typeof P=="string"?P.trim().length>0:P!=null,message:"This field is required"}),n&&k.push({validate:P=>!n(String(P??"")),message:"Validation failed"}),p.registerField(e,k),c!==void 0&&p.values[e]===void 0&&p.setValue(e,c),()=>{p.unregisterField(e);}}},[e,f,p,t,a,n,c]);let R=k=>{let P=k.target.value;if(f&&p&&e?p.setValue(e,P):C||h(P),n&&x){let T=n(P);b(T??null);}s?.(k);},N=k=>{if(y(true),f&&p&&e&&p.setTouched(e,true),n){let P=n(String(w??""));b(P??null);}i?.(k);},S=r,D=o;if(f&&p&&e){let k=p.getFieldState(e);k.touched&&k.error&&(S=S??k.error,D=true);}else x&&v&&(S=S??v,D=true);return jsx(Xn,{ref:u,name:e,value:String(w??""),onChange:R,onBlur:N,isRequired:a,isInvalid:D,errorMessage:S,...d})});vg.displayName="TextField";var hg=Z.forwardRef(({name:e,rules:t=[],validate:n,errorMessage:r,isInvalid:o,isRequired:a,onChange:s,onBlur:i,value:l,defaultValue:c,...d},u)=>{let p=Z.useContext(ln),f=!!p&&!!e,[g,h]=Z.useState(c??""),[v,b]=Z.useState(null),[x,y]=Z.useState(false),C=l!==void 0,w=C?l:f?p.values[e]:g;Z.useEffect(()=>{if(f&&p&&e){let k=[...t];return a&&!k.some(P=>P.message.toLowerCase().includes("required"))&&k.unshift({validate:P=>typeof P=="string"?P.trim().length>0:P!=null,message:"This field is required"}),n&&k.push({validate:P=>!n(String(P??"")),message:"Validation failed"}),p.registerField(e,k),c!==void 0&&p.values[e]===void 0&&p.setValue(e,c),()=>{p.unregisterField(e);}}},[e,f,p,t,a,n,c]);let R=k=>{let P=k.target.value;if(f&&p&&e?p.setValue(e,P):C||h(P),n&&x){let T=n(P);b(T??null);}s?.(k);},N=k=>{if(y(true),f&&p&&e&&p.setTouched(e,true),n){let P=n(String(w??""));b(P??null);}i?.(k);},S=r,D=o;if(f&&p&&e){let k=p.getFieldState(e);k.touched&&k.error&&(S=S??k.error,D=true);}else x&&v&&(S=S??v,D=true);return jsx(La,{ref:u,name:e,value:String(w??""),onChange:R,onBlur:N,isRequired:a,isInvalid:D,errorMessage:S,...d})});hg.displayName="TextareaField";var yg=Z.forwardRef(({name:e,rules:t=[],validate:n,errorMessage:r,isInvalid:o,isRequired:a,onChange:s,onBlur:i,value:l,defaultValue:c,label:d,description:u,className:p,...f},g)=>{let h=Z.useContext(ln),v=!!h&&!!e,b=Z.useId(),[x,y]=Z.useState(c),[C,w]=Z.useState(null),[R,N]=Z.useState(false),S=l!==void 0,D=S?l:v?h.values[e]:x;Z.useEffect(()=>{if(v&&h&&e){let E=[...t];return a&&!E.some(L=>L.message.toLowerCase().includes("required"))&&E.unshift({validate:L=>L!=null&&L!=="",message:"This field is required"}),n&&E.push({validate:L=>!n(L),message:"Validation failed"}),h.registerField(e,E),c!==void 0&&h.values[e]===void 0&&h.setValue(e,c),()=>{h.unregisterField(e);}}},[e,v,h,t,a,n,c]);let k=E=>{if(v&&h&&e?h.setValue(e,E):S||y(E),n&&R){let L=n(E);w(L??null);}s?.(E);},P=E=>{if(N(true),v&&h&&e&&h.setTouched(e,true),n){let L=n(D);w(L??null);}i?.(E);},T=r,M=o;if(v&&h&&e){let E=h.getFieldState(e);E.touched&&E.error&&(T=T??E.error,M=true);}else R&&C&&(T=T??C,M=true);let H=M||!!T;return d||u||T?jsxs("div",{className:p,children:[d&&jsxs("label",{htmlFor:b,className:"text-sm font-medium leading-none mb-1.5 block",children:[d,a&&jsx("span",{className:"text-danger ml-1",children:"*"})]}),jsx(jo,{ref:g,id:b,name:e,value:D,onChange:k,onBlur:P,isDisabled:f.isDisabled,...f}),(u||T)&&jsx("p",{className:`text-xs mt-1.5 ${H?"text-danger":"text-muted-foreground"}`,children:T||u})]}):jsx(jo,{ref:g,name:e,value:D,onChange:k,onBlur:P,className:p,...f})});yg.displayName="NumberField";var wg=Z.forwardRef(({name:e,rules:t=[],validate:n,errorMessage:r,isInvalid:o,isRequired:a,multiple:s=false,value:i,defaultValue:l,onValueChange:c,label:d,description:u,className:p,...f},g)=>{let h=Z.useContext(ln),v=!!h&&!!e,b=Z.useId(),[x,y]=Z.useState(l),[C,w]=Z.useState(null),[R,N]=Z.useState(false),S=i!==void 0,D=S?i:v?h.values[e]:x;Z.useEffect(()=>{if(v&&h&&e){let H=[...t];return a&&!H.some(E=>E.message.toLowerCase().includes("required"))&&H.unshift({validate:E=>Array.isArray(E)?E.length>0:E!=null&&E!=="",message:"This field is required"}),n&&H.push({validate:E=>!n(E),message:"Validation failed"}),h.registerField(e,H),l!==void 0&&h.values[e]===void 0&&h.setValue(e,l),()=>{h.unregisterField(e);}}},[e,v,h,t,a,n,l]);let k=H=>{if(N(true),v&&h&&e?(h.setValue(e,H),h.setTouched(e,true)):S||y(H),n){let E=n(H);w(E??null);}c?.(H);},P=r,T=o;if(v&&h&&e){let H=h.getFieldState(e);H.touched&&H.error&&(P=P??H.error,T=true);}else R&&C&&(P=P??C,T=true);let M=T||!!P;return jsxs("div",{className:p,children:[d&&jsxs("label",{htmlFor:b,className:"text-sm font-medium leading-none mb-1.5 block",children:[d,a&&jsx("span",{className:"text-danger ml-1",children:"*"})]}),s?jsx(Sr,{ref:g,multiple:true,value:D,onValueChange:k,isDisabled:f.isDisabled,...f}):jsx(Sr,{ref:g,value:D,onValueChange:k,isDisabled:f.isDisabled,...f}),(u||P)&&jsx("p",{className:`text-xs mt-1.5 ${M?"text-danger":"text-muted-foreground"}`,children:P||u})]})});wg.displayName="SelectField";var Tg=cva("inline-flex items-center gap-3",{variants:{size:{sm:"[&_[data-user-avatar]]:h-8 [&_[data-user-avatar]]:w-8",md:"[&_[data-user-avatar]]:h-10 [&_[data-user-avatar]]:w-10",lg:"[&_[data-user-avatar]]:h-12 [&_[data-user-avatar]]:w-12"}},defaultVariants:{size:"md"}}),Mg=Z.forwardRef(({className:e,size:t,name:n,description:r,avatarUrl:o,avatarFallback:a,trailing:s,...i},l)=>{let c=a||n.split(" ").map(d=>d[0]).join("").toUpperCase().slice(0,2);return jsxs("div",{ref:l,className:m(Tg({size:t,className:e})),...i,children:[jsxs(Pr,{"data-user-avatar":true,children:[o&&jsx(no,{src:o,alt:n}),jsx(Er,{children:c})]}),jsxs("div",{className:"flex flex-col min-w-0",children:[jsx("span",{className:"text-sm font-medium leading-none truncate",children:n}),r&&jsx("span",{className:"text-sm text-muted-foreground truncate",children:r})]}),s&&jsx("div",{className:"ml-auto flex-shrink-0",children:s})]})});Mg.displayName="User";var Ng=cva("font-mono",{variants:{variant:{solid:"bg-primary text-primary-foreground",bordered:"border border-current bg-transparent",light:"bg-muted/50 text-foreground",flat:"bg-muted text-foreground",ghost:"bg-transparent text-foreground"},size:{sm:"px-1 py-0.5 text-xs",md:"px-1.5 py-0.5 text-sm",lg:"px-2 py-1 text-base"},radius:{none:"rounded-none",sm:"rounded-md",md:"rounded-lg",lg:"rounded-xl",full:"rounded-3xl"}},defaultVariants:{variant:"flat",size:"md",radius:"sm"}}),Pg=Z.forwardRef(({className:e,variant:t,size:n,radius:r,...o},a)=>jsx("code",{ref:a,className:m(Ng({variant:t,size:n,radius:r,className:e})),...o}));Pg.displayName="Code";function Dg(e){let[t,n]=useState(false);return useEffect(()=>{if(e){n(e==="dark");return}let r=()=>{n(document.documentElement.classList.contains("dark"));};r();let o=new MutationObserver(r);return o.observe(document.documentElement,{attributes:true,attributeFilter:["class"]}),()=>o.disconnect()},[e]),t}var Hg=Z.forwardRef(({code:e,language:t="bash",showLineNumbers:n=false,className:r,noBorder:o=false,filename:a,theme:s,hideCopyButton:i=false},l)=>{let[c,d]=useState(false),p=Dg(s)?themes.oneDark:themes.oneLight,f=async()=>{await navigator.clipboard.writeText(e),d(true),setTimeout(()=>d(false),2e3);};return jsxs("div",{ref:l,className:m("overflow-hidden",!o&&"rounded-lg border border-border",r),children:[a&&jsx("div",{className:"flex items-center px-4 py-2 border-b border-border bg-zinc-100 dark:bg-zinc-900",children:jsx("span",{className:"text-sm text-muted-foreground font-mono",children:a})}),jsxs("div",{className:"relative",children:[jsx(Highlight,{theme:p,code:e.trim(),language:t,children:({tokens:g,getLineProps:h,getTokenProps:v})=>jsx("pre",{className:"p-4 overflow-x-auto text-sm bg-zinc-100 dark:bg-zinc-900 m-0",children:g.map((b,x)=>jsxs("div",{...h({line:b}),children:[n&&jsx("span",{className:"inline-block w-8 text-zinc-400 dark:text-zinc-600 select-none text-right mr-4",children:x+1}),b.map((y,C)=>jsx("span",{...v({token:y})},C))]},x))})}),!i&&jsx("button",{onClick:f,type:"button",className:"absolute top-3 right-3 p-2 rounded-md transition-colors cursor-pointer bg-zinc-200 dark:bg-zinc-800 hover:bg-zinc-300 dark:hover:bg-zinc-700 text-zinc-600 dark:text-zinc-400 hover:text-zinc-800 dark:hover:text-zinc-200",title:"Copy to clipboard",children:c?jsx(Check,{className:"h-4 w-4 text-zinc-900 dark:text-white"}):jsx(Copy,{className:"h-4 w-4"})})]})]})});Hg.displayName="CodeBlock";var Ig=Z.forwardRef(({tabs:e,className:t,theme:n},r)=>{let[o,a]=useState(0),[s,i]=useState(false),c=Dg(n)?themes.oneDark:themes.oneLight,d=async()=>{await navigator.clipboard.writeText(e[o].code),i(true),setTimeout(()=>i(false),2e3);},u=e[o],p=u.language||"bash";return jsxs("div",{ref:r,className:m("rounded-lg border border-border overflow-hidden",t),children:[jsx("div",{className:"flex items-center gap-1 px-2 py-1.5 border-b border-border bg-zinc-100 dark:bg-zinc-900",children:e.map((f,g)=>jsxs("button",{type:"button",onClick:()=>a(g),className:m("flex items-center gap-2 px-3 py-1.5 rounded-md text-sm font-medium transition-colors cursor-pointer",o===g?"bg-zinc-200 dark:bg-zinc-800 text-zinc-900 dark:text-white":"text-zinc-600 dark:text-zinc-400 hover:text-zinc-900 dark:hover:text-zinc-200 hover:bg-zinc-200/50 dark:hover:bg-zinc-800/50"),children:[f.icon,f.name]},f.name))}),jsxs("div",{className:"relative",children:[jsx(Highlight,{theme:c,code:u.code.trim(),language:p,children:({tokens:f,getLineProps:g,getTokenProps:h})=>jsx("pre",{className:"p-4 overflow-x-auto text-sm bg-zinc-100 dark:bg-zinc-900 m-0",children:f.map((v,b)=>jsx("div",{...g({line:v}),children:v.map((x,y)=>jsx("span",{...h({token:x})},y))},b))})}),jsx("button",{onClick:d,type:"button",className:"absolute top-3 right-3 p-2 rounded-md transition-colors cursor-pointer bg-zinc-200 dark:bg-zinc-800 hover:bg-zinc-300 dark:hover:bg-zinc-700 text-zinc-600 dark:text-zinc-400 hover:text-zinc-800 dark:hover:text-zinc-200",title:"Copy to clipboard",children:s?jsx(Check,{className:"h-4 w-4 text-zinc-900 dark:text-white"}):jsx(Copy,{className:"h-4 w-4"})})]})]})});Ig.displayName="TabbedCodeBlock";var Vg=cva("relative flex items-center gap-2 font-mono rounded-lg border",{variants:{variant:{solid:"bg-zinc-800 text-white dark:bg-zinc-200 dark:text-zinc-900 border-transparent",bordered:"bg-transparent border-zinc-300 dark:border-zinc-700 text-zinc-900 dark:text-white",flat:"bg-zinc-100 text-zinc-900 dark:bg-zinc-800 dark:text-white border-transparent"},size:{sm:"px-3 py-1.5 text-xs",md:"px-4 py-2 text-sm",lg:"px-5 py-3 text-base"}},defaultVariants:{variant:"solid",size:"md"}}),Ag=Z.forwardRef(({className:e,variant:t,size:n,code:r,copyable:o=true,copyLabel:a="Copy",onCopy:s,symbol:i="$",hideSymbol:l=false,dismissible:c=false,onDismiss:d,...u},p)=>{let[f,g]=Z.useState(false),h=async()=>{try{await navigator.clipboard.writeText(r),g(!0),s?.(),setTimeout(()=>g(!1),2e3);}catch(v){console.error("Failed to copy:",v);}};return jsxs("div",{ref:p,className:m(Vg({variant:t,size:n,className:e})),...u,children:[!l&&jsx("span",{className:"text-muted-foreground select-none",children:i}),jsx("code",{className:"flex-1 truncate",children:r}),o&&jsx("button",{type:"button",onClick:h,className:m("flex-shrink-0 rounded p-1 transition-colors cursor-pointer","hover:bg-black/10 dark:hover:bg-white/10","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring"),"aria-label":f?"Copied":a,children:f?jsx(Check,{className:"h-4 w-4 text-green-500"}):jsx(Copy,{className:"h-4 w-4 text-muted-foreground"})}),c&&jsx(Rt,{size:"sm",onClick:d,className:"flex-shrink-0"})]})});Ag.displayName="Snippet";var ll=cva("overflow-hidden",{variants:{radius:{none:"rounded-none",sm:"rounded-md",md:"rounded-lg",lg:"rounded-xl",full:"rounded-full"}},defaultVariants:{radius:"md"}}),zg=Z.forwardRef(({className:e,radius:t,src:n,alt:r,fallback:o,showSkeleton:a=true,onLoad:s,onError:i,fit:l="cover",aspectRatio:c,style:d,...u},p)=>{let[f,g]=Z.useState("loading");Z.useEffect(()=>{n&&g("loading");},[n]);let h=()=>{g("loaded"),s?.();},v=()=>{g("error"),i?.();},b={contain:"object-contain",cover:"object-cover",fill:"object-fill",none:"object-none","scale-down":"object-scale-down"}[l];return f==="error"&&o?jsx("div",{className:m(ll({radius:t}),"flex items-center justify-center bg-muted",e),style:{aspectRatio:c,...d},children:o}):jsxs("div",{className:m(ll({radius:t}),"relative",e),style:{aspectRatio:c,...d},children:[f==="loading"&&a&&jsx(Da,{className:"absolute inset-0 h-full w-full"}),jsx("img",{ref:p,src:n,alt:r,onLoad:h,onError:v,className:m("h-full w-full transition-opacity duration-300",b,f==="loading"?"opacity-0":"opacity-100"),...u})]})});zg.displayName="Image";var qw=cva("flex flex-col gap-1.5",{variants:{size:{sm:"",md:"",lg:""}},defaultVariants:{size:"md"}}),Xw=cva("flex rounded-md border border-input bg-background placeholder:text-muted-foreground focus:outline-none transition-colors disabled:cursor-not-allowed disabled:opacity-50",{variants:{size:{sm:"h-9 py-1.5 text-xs",md:"h-10 py-2 text-sm",lg:"h-11 py-2.5 text-base"},isInvalid:{true:"border-danger focus:border-danger",false:""},fullWidth:{true:"w-full",false:"w-fit"},showPickerIcon:{true:"",false:""}},compoundVariants:[{size:"sm",showPickerIcon:true,className:"pl-3 pr-8"},{size:"sm",showPickerIcon:false,className:"px-3"},{size:"md",showPickerIcon:true,className:"pl-3 pr-10"},{size:"md",showPickerIcon:false,className:"px-3"},{size:"lg",showPickerIcon:true,className:"pl-4 pr-12"},{size:"lg",showPickerIcon:false,className:"px-4"}],defaultVariants:{size:"md",isInvalid:false,fullWidth:false,showPickerIcon:true}}),Zw=cva("text-muted-foreground",{variants:{size:{sm:"h-3.5 w-3.5",md:"h-4 w-4",lg:"h-5 w-5"}},defaultVariants:{size:"md"}}),Jw=cva("font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70",{variants:{size:{sm:"text-xs",md:"text-sm",lg:"text-base"}},defaultVariants:{size:"md"}}),Ms={"dd/MM/yyyy":"/","MM/dd/yyyy":"/","yyyy-MM-dd":"-","dd.MM.yyyy":"."},dl={"dd/MM/yyyy":["day","month","year"],"MM/dd/yyyy":["month","day","year"],"yyyy-MM-dd":["year","month","day"],"dd.MM.yyyy":["day","month","year"]},cl=(e,t)=>String(e).padStart(t,"0"),Og=(e,t)=>{if(!e)return "";let n=cl(e.getDate(),2),r=cl(e.getMonth()+1,2),o=cl(e.getFullYear(),4),a=Ms[t],s=dl[t],i={day:n,month:r,year:o};return s.map(l=>i[l]).join(a)},ws=(e,t)=>{let n=Ms[t],r=e.split(n);if(r.length!==3)return null;let o=dl[t],a={};if(o.forEach((i,l)=>{a[i]=parseInt(r[l],10);}),isNaN(a.day)||isNaN(a.month)||isNaN(a.year)||a.month<1||a.month>12||a.day<1||a.day>31||a.year<1e3||a.year>9999)return null;let s=new Date(a.year,a.month-1,a.day);return s.getFullYear()!==a.year||s.getMonth()!==a.month-1||s.getDate()!==a.day?null:s},Qw=e=>{let t=Ms[e];return dl[e].map(r=>r==="year"?"####":"##").join(t)},ra=(e,t)=>{if(!e?.from)return "";let n=Og(e.from,t),r=e.to?Og(e.to,t):"";return n&&r?`${n} - ${r}`:n},Fg=Z.forwardRef(({className:e,label:t,description:n,errorMessage:r,isRequired:o,isInvalid:a,size:s,labelClassName:i,inputClassName:l,descriptionClassName:c,errorClassName:d,value:u,defaultValue:p,onChange:f,minDate:g,maxDate:h,dateFormat:v="dd.MM.yyyy",showPickerIcon:b=true,mode:x="text",fullWidth:y=false,numberOfMonths:C=2,align:w="start",isDisabled:R,placeholder:N,id:S,...D},k)=>{let P=Z.useId(),T=S||P,M=`${T}-description`,H=`${T}-error`,[E,L]=Z.useState(p),[I,V]=Z.useState(""),[$,O]=Z.useState(false),[z,F]=Z.useState(false),U=u!==void 0?u:E,j=a&&r,A=Qw(v),W=Ms[v],_=" - ";Z.useEffect(()=>{z||V(ra(U,v));},[U,v,z]);let q=K=>{u===void 0&&L(K),f?.(K);},se=K=>{q(K),V(ra(K,v)),K?.from&&K?.to&&O(false);},J=K=>{let Y=K.target.value;Y=Y.replace(new RegExp(`[^0-9\\${W}\\s-]`,"g"),"");let X=`${A}${_}${A}`,xe=Y.replace(new RegExp(`[\\${W}\\s-]`,"g"),""),Ce="",nt=0;for(let de=0;de<X.length&&nt<xe.length;de++)X[de]==="#"?(Ce+=xe[nt],nt++):Ce+=X[de];if(V(Ce),Ce.length===X.length){let de=Ce.split(_);if(de.length===2){let Je=ws(de[0].trim(),v),ee=ws(de[1].trim(),v);if(Je&&ee){if(g&&(Je<g||ee<g)||h&&(Je>h||ee>h))return;Je<=ee&&q({from:Je,to:ee});}}}},Te=()=>{F(true);},fe=()=>{F(false);let K=`${A}${_}${A}`;if(I.length!==K.length)V(ra(U,v));else {let Y=I.split(_);if(Y.length!==2)V(ra(U,v));else {let X=ws(Y[0].trim(),v),xe=ws(Y[1].trim(),v);(!X||!xe||X>xe)&&V(ra(U,v));}}},G=()=>{R||O(true);},B=()=>{!R&&x==="picker"&&b&&O(true);};return jsxs("div",{className:m(qw({size:s}),e),children:[t&&jsxs("label",{htmlFor:T,className:m(Jw({size:s}),i),children:[t,o&&jsx("span",{className:"text-danger ml-0.5","aria-hidden":"true",children:"*"})]}),jsxs(Pt,{open:b&&$,onOpenChange:O,children:[jsxs(Qn,{className:m("relative",y?"w-full":"w-fit"),children:[jsx("input",{ref:k,id:T,type:"text",inputMode:x==="text"?"numeric":void 0,value:I,onChange:x==="text"?J:void 0,onClick:B,onFocus:Te,onBlur:fe,readOnly:x==="picker","aria-invalid":a,"aria-describedby":j?H:n?M:void 0,"aria-required":o,disabled:R,placeholder:N||`${v.toLowerCase()} - ${v.toLowerCase()}`,className:m(Xw({size:s,isInvalid:a,fullWidth:y,showPickerIcon:b}),x==="picker"&&b&&"cursor-pointer",l),style:{borderColor:z||b&&$?"var(--color-foreground)":void 0},...D}),b&&jsx("button",{type:"button",onClick:G,disabled:R,className:"absolute right-3 top-1/2 -translate-y-1/2 cursor-pointer disabled:cursor-not-allowed disabled:opacity-50",tabIndex:-1,"aria-label":"Open calendar",children:jsx(Calendar,{className:m(Zw({size:s}))})})]}),b&&jsx(Et,{className:"w-auto p-0",align:w,children:jsx(ro,{mode:"range",selected:U,onSelect:se,numberOfMonths:C,disabled:K=>!!(g&&K<g||h&&K>h),defaultMonth:U?.from,showMonthAndYearPickers:true,size:s??"md"})})]}),n&&!j&&jsx("p",{id:M,className:m("text-muted-foreground",s==="sm"?"text-xs":s==="lg"?"text-sm":"text-xs",c),children:n}),j&&jsx("p",{id:H,role:"alert",className:m("text-danger",s==="sm"?"text-xs":s==="lg"?"text-sm":"text-xs",d),children:r})]})});Fg.displayName="DateRangePicker";var mo=e=>String(e).padStart(2,"0"),Bg=Z.forwardRef(({value:e,onValueChange:t,placeholder:n="Pick a time",use24Hour:r=true,minuteStep:o=1,isDisabled:a=false,className:s},i)=>{let[l,c]=Z.useState(false),d=r?Array.from({length:24},(y,C)=>C):Array.from({length:12},(y,C)=>C+1),u=Array.from({length:Math.floor(60/o)},(y,C)=>C*o),p=y=>{if(!y)return n;if(r)return `${mo(y.hours)}:${mo(y.minutes)}`;let C=y.hours%12||12,w=y.hours>=12?"PM":"AM";return `${mo(C)}:${mo(y.minutes)} ${w}`},f=y=>{let C=e?.minutes??0,w=y;if(!r&&e){let R=e.hours>=12;R&&y!==12?w=y+12:!R&&y===12&&(w=0);}t?.({hours:w,minutes:C});},g=y=>{let C=e?.hours??0;t?.({hours:C,minutes:y});},h=y=>{if(!e)return;let C=e.hours;y==="AM"&&e.hours>=12?C=e.hours-12:y==="PM"&&e.hours<12&&(C=e.hours+12),t?.({hours:C,minutes:e.minutes});},v=()=>{let y=new Date;t?.({hours:y.getHours(),minutes:y.getMinutes()});},b=e?e.hours>=12?"PM":"AM":void 0,x=e?r?e.hours:e.hours%12||12:void 0;return jsxs(Pt,{open:l,onOpenChange:c,children:[jsxs(Jn,{ref:i,disabled:a,className:m("inline-flex items-center justify-start gap-2 rounded-md border border-input bg-background px-3 py-2 text-sm font-normal hover:bg-accent hover:text-accent-foreground w-full text-left",!e&&"text-muted-foreground",a&&"cursor-not-allowed opacity-50",s),children:[jsx(Clock,{className:"h-4 w-4"}),p(e)]}),jsxs(Et,{className:"w-auto p-0",align:"start",children:[jsxs("div",{className:"flex",children:[jsxs("div",{className:"flex flex-col",children:[jsx("div",{className:"border-b px-3 py-2 text-center text-xs font-medium text-muted-foreground",children:"Hour"}),jsx(Ve,{className:"h-[200px]",children:jsx("div",{className:"flex flex-col gap-1 p-1",children:d.map(y=>jsx(ue,{variant:x===y?"solid":"light",size:"sm",radius:"md",className:"h-8 w-12 justify-center",onClick:()=>f(y),children:mo(y)},y))})})]}),jsxs("div",{className:"flex flex-col border-l",children:[jsx("div",{className:"border-b px-3 py-2 text-center text-xs font-medium text-muted-foreground",children:"Min"}),jsx(Ve,{className:"h-[200px]",children:jsx("div",{className:"flex flex-col gap-1 p-1",children:u.map(y=>jsx(ue,{variant:e?.minutes===y?"solid":"light",size:"sm",radius:"md",className:"h-8 w-12 justify-center",onClick:()=>g(y),children:mo(y)},y))})})]}),!r&&jsxs("div",{className:"flex flex-col border-l",children:[jsx("div",{className:"border-b px-3 py-2 text-center text-xs font-medium text-muted-foreground",children:"\xA0"}),jsxs("div",{className:"flex flex-col gap-1 p-1",children:[jsx(ue,{variant:b==="AM"?"solid":"light",size:"sm",radius:"md",className:"h-8 w-12",onClick:()=>h("AM"),children:"AM"}),jsx(ue,{variant:b==="PM"?"solid":"light",size:"sm",radius:"md",className:"h-8 w-12",onClick:()=>h("PM"),children:"PM"})]})]})]}),jsxs("div",{className:"flex justify-end gap-2 border-t p-2",children:[jsx(ue,{variant:"light",size:"sm",radius:"md",onClick:v,children:"Now"}),jsx(ue,{size:"sm",radius:"md",onClick:()=>c(false),children:"Done"})]})]})]})});Bg.displayName="TimePicker";var ul=cva("",{variants:{variant:{default:"",bordered:"border rounded-lg overflow-hidden"}},defaultVariants:{variant:"default"}}),ml=cva("flex items-center justify-center py-4",{variants:{size:{sm:"py-2",md:"py-4",lg:"py-6"}},defaultVariants:{size:"md"}}),$g=Z.forwardRef(({className:e,variant:t,size:n,children:r,onLoadMore:o,hasMore:a,isLoading:s=false,loader:i,threshold:l=100,rootMargin:c,useWindow:d=false,endMessage:u,scrollbarVisibility:p="visible",...f},g)=>{let h=Z.useRef(null),v=Z.useRef(null),b=Z.useRef(false);Z.useImperativeHandle(g,()=>h.current),Z.useEffect(()=>{let C=v.current;if(!C)return;let w=new IntersectionObserver(R=>{let[N]=R;N.isIntersecting&&a&&!s&&!b.current&&(b.current=true,Promise.resolve(o()).finally(()=>{b.current=false;}));},{root:d?null:h.current,rootMargin:c||`${l}px`,threshold:0});return w.observe(C),()=>{w.disconnect();}},[a,s,o,l,c,d]);let x=jsx("div",{className:m(ml({size:n})),children:jsx(Loader2,{className:"h-6 w-6 animate-spin text-muted-foreground"})}),y=jsxs(Fragment,{children:[r,jsx("div",{ref:v,className:"h-px w-full"}),s&&(i||x),!a&&!s&&u&&jsx("div",{className:m(ml({size:n}),"text-muted-foreground text-sm"),children:u})]});return d?jsx("div",{ref:h,className:m(ul({variant:t,className:e})),...f,children:y}):jsx(Ve,{ref:h,visibility:p,className:m(ul({variant:t,className:e})),...f,children:y})});$g.displayName="InfiniteScroll";var pC=e=>e.map(t=>typeof t=="string"?{src:t}:t),pl=Z.forwardRef(({images:e,open:t,onOpenChange:n,initialIndex:r=0,onIndexChange:o,trigger:a,showThumbnails:s=true,showZoom:i=true,showRotate:l=true,showDownload:c=true,showFullscreen:d=true,showNavigation:u=true,showCounter:p=true,closeOnBackdropClick:f=true,className:g},h)=>{let v=Z.useMemo(()=>pC(e),[e]),[b,x]=Z.useState(r),[y,C]=Z.useState(1),[w,R]=Z.useState(0),[N,S]=Z.useState(false),[D,k]=Z.useState(false),[P,T]=Z.useState({x:0,y:0}),[M,H]=Z.useState({x:0,y:0}),[E,L]=Z.useState(false),I=Z.useRef(null),V=v[b];Z.useEffect(()=>{L(true);},[]),Z.useEffect(()=>{x(r);},[r]),Z.useEffect(()=>{o?.(b);},[b,o]),Z.useEffect(()=>{C(1),R(0),T({x:0,y:0});},[b]),Z.useEffect(()=>{if(t)return In(),()=>Vn()},[t]);let $=Z.useCallback(()=>{x(B=>B>0?B-1:v.length-1);},[v.length]),O=Z.useCallback(()=>{x(B=>B<v.length-1?B+1:0);},[v.length]),z=()=>{C(B=>Math.min(B+.5,4));},F=()=>{C(B=>{let K=Math.max(B-.5,.5);return K===1&&T({x:0,y:0}),K});},U=()=>{R(B=>(B+90)%360);},j=async()=>{if(V)try{let K=await(await fetch(V.src)).blob(),Y=URL.createObjectURL(K),X=document.createElement("a");X.href=Y,X.download=V.alt||`image-${b+1}`,document.body.appendChild(X),X.click(),document.body.removeChild(X),URL.revokeObjectURL(Y);}catch{window.open(V.src,"_blank");}},A=async()=>{if(I.current)if(N)try{await document.exitFullscreen(),S(!1);}catch{}else try{await I.current.requestFullscreen(),S(!0);}catch{}},W=B=>{y>1&&(k(true),H({x:B.clientX-P.x,y:B.clientY-P.y}));},_=B=>{D&&y>1&&T({x:B.clientX-M.x,y:B.clientY-M.y});},q=()=>{k(false);},se=()=>{n?.(false);},J=B=>{f&&B.target===B.currentTarget&&se();},Te=Z.useCallback(B=>{switch(B.key){case "ArrowLeft":$();break;case "ArrowRight":O();break;case "Escape":n?.(false);break;case "+":case "=":z();break;case "-":F();break}},[$,O,n]);if(Z.useEffect(()=>{if(t)return window.addEventListener("keydown",Te),()=>window.removeEventListener("keydown",Te)},[t,Te]),Z.useEffect(()=>{let B=()=>{S(!!document.fullscreenElement);};return document.addEventListener("fullscreenchange",B),()=>document.removeEventListener("fullscreenchange",B)},[]),v.length===0)return null;let fe=a?Z.isValidElement(a)?Z.cloneElement(a,{onClick:B=>{a.props.onClick?.(B),n?.(true);}}):jsx("button",{type:"button",onClick:()=>n?.(true),children:a}):null;return jsxs(Fragment,{children:[fe,!E||!t?null:Va.createPortal(jsxs(Fragment,{children:[jsx("div",{className:"fixed inset-0 z-50 bg-black/90 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0","data-state":t?"open":"closed",onClick:J}),jsxs("div",{ref:h,className:m("fixed inset-0 z-50 flex flex-col outline-none",g),children:[jsxs("div",{className:"flex items-center justify-between p-4 text-white",children:[jsxs("div",{className:"flex items-center gap-2",children:[p&&v.length>1&&jsxs("span",{className:"text-sm",children:[b+1," / ",v.length]}),V?.title&&jsx("span",{className:"ml-4 text-sm font-medium",children:V.title})]}),jsxs("div",{className:"flex items-center gap-1",children:[i&&jsxs(Fragment,{children:[jsx("button",{onClick:F,className:"rounded-full p-2 hover:bg-white/10 transition-colors",title:"Zoom out",children:jsx(ZoomOut,{className:"h-5 w-5"})}),jsxs("span",{className:"min-w-[3rem] text-center text-sm",children:[Math.round(y*100),"%"]}),jsx("button",{onClick:z,className:"rounded-full p-2 hover:bg-white/10 transition-colors",title:"Zoom in",children:jsx(ZoomIn,{className:"h-5 w-5"})})]}),l&&jsx("button",{onClick:U,className:"rounded-full p-2 hover:bg-white/10 transition-colors",title:"Rotate",children:jsx(RotateCw,{className:"h-5 w-5"})}),c&&jsx("button",{onClick:j,className:"rounded-full p-2 hover:bg-white/10 transition-colors",title:"Download",children:jsx(Download,{className:"h-5 w-5"})}),d&&jsx("button",{onClick:A,className:"rounded-full p-2 hover:bg-white/10 transition-colors",title:N?"Exit fullscreen":"Fullscreen",children:N?jsx(Minimize2,{className:"h-5 w-5"}):jsx(Maximize2,{className:"h-5 w-5"})}),jsxs("button",{onClick:se,className:"rounded-full p-2 hover:bg-white/10 transition-colors ml-2",children:[jsx(X,{className:"h-5 w-5"}),jsx("span",{className:"sr-only",children:"Close"})]})]})]}),jsxs("div",{ref:I,className:"relative flex-1 flex items-center justify-center overflow-hidden",onMouseDown:W,onMouseMove:_,onMouseUp:q,onMouseLeave:q,children:[u&&v.length>1&&jsxs(Fragment,{children:[jsx("button",{onClick:$,className:"absolute left-4 z-10 rounded-full bg-black/50 p-3 text-white hover:bg-black/70 transition-colors",children:jsx(ChevronLeft,{className:"h-6 w-6"})}),jsx("button",{onClick:O,className:"absolute right-4 z-10 rounded-full bg-black/50 p-3 text-white hover:bg-black/70 transition-colors",children:jsx(ChevronRight,{className:"h-6 w-6"})})]}),jsx("img",{src:V?.src,alt:V?.alt||"",className:m("max-h-full max-w-full object-contain transition-transform duration-200",D?"cursor-grabbing":y>1?"cursor-grab":""),style:{transform:`translate(${P.x}px, ${P.y}px) scale(${y}) rotate(${w}deg)`},draggable:false})]}),V?.description&&jsx("div",{className:"p-4 text-center text-white text-sm",children:V.description}),s&&v.length>1&&jsx("div",{className:"flex justify-center gap-2 p-4 overflow-x-auto",children:v.map((B,K)=>jsx("button",{onClick:()=>x(K),className:m("h-16 w-16 flex-shrink-0 overflow-hidden rounded border-2 transition-all",b===K?"border-white opacity-100":"border-transparent opacity-50 hover:opacity-75"),children:jsx("img",{src:B.src,alt:B.alt||`Thumbnail ${K+1}`,className:"h-full w-full object-cover"})},K))})]})]}),document.body)]})});pl.displayName="ImageViewer";var Gg=({children:e,images:t,index:n=0,className:r})=>{let[o,a]=Z.useState(false);return jsxs(Fragment,{children:[jsx("button",{onClick:()=>a(true),className:m("cursor-zoom-in",r),children:e}),jsx(pl,{images:t,open:o,onOpenChange:a,initialIndex:n})]})};Gg.displayName="ImageViewerTrigger";var jg=cva("inline-flex items-center justify-center font-mono font-medium",{variants:{variant:{default:"rounded border border-border bg-muted text-muted-foreground",light:"text-muted-foreground",bordered:"rounded border border-current text-foreground"},size:{sm:"min-w-[1.25rem] px-1 py-0.5 text-[10px]",md:"min-w-[1.5rem] px-1.5 py-0.5 text-xs",lg:"min-w-[2rem] px-2 py-1 text-sm"}},defaultVariants:{variant:"default",size:"md"}}),gC={cmd:"\u2318",command:"\u2318",meta:"\u2318",ctrl:"\u2303",control:"\u2303",alt:"\u2325",option:"\u2325",shift:"\u21E7",enter:"\u21B5",return:"\u21B5",backspace:"\u232B",delete:"\u2326",escape:"\u238B",esc:"\u238B",tab:"\u21E5",space:"\u2423",up:"\u2191",down:"\u2193",left:"\u2190",right:"\u2192",pageup:"\u21DE",pagedown:"\u21DF",home:"\u2912",end:"\u2913",capslock:"\u21EA"},bC={cmd:"meta",command:"meta",ctrl:"control",alt:"alt",option:"alt",shift:"shift",enter:"enter",return:"enter",backspace:"backspace",delete:"delete",escape:"escape",esc:"escape",tab:"tab",space:" ",up:"arrowup",down:"arrowdown",left:"arrowleft",right:"arrowright",pageup:"pageup",pagedown:"pagedown",home:"home",end:"end"},vC=e=>{let t=e.toLowerCase();return gC[t]||e.toUpperCase()},aa=e=>{let t=e.toLowerCase();return bC[t]||t},Ns=e=>{let t=aa(e);return ["meta","control","alt","shift"].includes(t)},Wg=Z.forwardRef(({className:e,variant:t,size:n,keys:r,children:o,onPress:a,isDisabled:s,preventDefault:i=true,...l},c)=>{Z.useEffect(()=>{if(!a||!r||s)return;let u=Array.isArray(r)?r:[r],p=u.filter(Ns).map(aa),f=u.filter(h=>!Ns(h)).map(aa),g=h=>{let v=p.includes("meta")===h.metaKey,b=p.includes("control")===h.ctrlKey,x=p.includes("alt")===h.altKey,y=p.includes("shift")===h.shiftKey,C=f.length===0||f.includes(h.key.toLowerCase());v&&b&&x&&y&&C&&(i&&h.preventDefault(),a(h));};return window.addEventListener("keydown",g),()=>window.removeEventListener("keydown",g)},[r,a,s,i]);let d=()=>r?(Array.isArray(r)?r:[r]).map((p,f)=>jsxs(Z.Fragment,{children:[f>0&&jsx("span",{className:"mx-0.5 text-muted-foreground",children:"+"}),jsx("span",{children:vC(p)})]},f)):o;return jsx("kbd",{ref:c,className:m(jg({variant:t,size:n}),s&&"opacity-50",e),...l,children:d()})});Wg.displayName="Kbd";function hC(e,t,n={}){let{isDisabled:r=false,preventDefault:o=true}=n;Z.useEffect(()=>{if(r)return;let a=Array.isArray(e)?e:[e],s=a.filter(Ns).map(aa),i=a.filter(c=>!Ns(c)).map(aa),l=c=>{let d=s.includes("meta")===c.metaKey,u=s.includes("control")===c.ctrlKey,p=s.includes("alt")===c.altKey,f=s.includes("shift")===c.shiftKey,g=i.length===0||i.includes(c.key.toLowerCase());d&&u&&p&&f&&g&&(o&&c.preventDefault(),t(c));};return window.addEventListener("keydown",l),()=>window.removeEventListener("keydown",l)},[e,t,r,o]);}var _g=cva("inline-flex items-center justify-center rounded-full cursor-pointer transition-colors hover:bg-muted/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",{variants:{size:{sm:"h-6 w-6",md:"h-8 w-8",lg:"h-10 w-10"}},defaultVariants:{size:"md"}}),Yg=Z.forwardRef(({className:e,size:t,value:n,successDuration:r=2e3,onCopySuccess:o,onCopyError:a,copyIcon:s,successIcon:i,...l},c)=>{let[d,u]=Z.useState(false),f={sm:14,md:16,lg:20}[t??"md"],g=async()=>{try{await navigator.clipboard.writeText(n),u(!0),o?.(),setTimeout(()=>{u(!1);},r);}catch(h){a?.(h);}};return jsx("button",{ref:c,type:"button",className:m(_g({size:t}),e),onClick:g,"aria-label":d?"Copied":"Copy to clipboard",...l,children:d?i??jsx(Check,{className:"text-success",style:{width:f,height:f}}):s??jsx(Copy,{style:{width:f,height:f}})})});Yg.displayName="CopyButton";var Xg=cva("flex flex-col bg-background",{variants:{variant:{default:"border",bordered:"border border-zinc-300 dark:border-zinc-700",ghost:""},size:{sm:"text-xs",md:"text-sm",lg:"text-base"},radius:{none:"rounded-none",sm:"rounded-md",md:"rounded-lg",lg:"rounded-xl",full:"rounded-3xl"}},defaultVariants:{variant:"default",size:"md",radius:"md"}}),kC=[{value:"month",label:"Month"},{value:"week",label:"Week"},{value:"day",label:"Day"}],NC=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],PC=["Mon","Tue","Wed","Thu","Fri","Sat","Sun"];function EC(e,t,n){let r=new Date(e,t,1),o=new Date(e,t+1,0),a=[],s=r.getDay()-n;s<0&&(s+=7);for(let l=s-1;l>=0;l--)a.push(new Date(e,t,-l));for(let l=1;l<=o.getDate();l++)a.push(new Date(e,t,l));let i=42-a.length;for(let l=1;l<=i;l++)a.push(new Date(e,t+1,l));return a}function SC(e,t){let n=[],o=e.getDay()-t;o<0&&(o+=7);let a=new Date(e);a.setDate(e.getDate()-o);for(let s=0;s<7;s++){let i=new Date(a);i.setDate(a.getDate()+s),n.push(i);}return n}function go(e,t){return e.getFullYear()===t.getFullYear()&&e.getMonth()===t.getMonth()&&e.getDate()===t.getDate()}function fo(e){return go(e,new Date)}function qg(e,t){return e.filter(n=>{let r=new Date(n.start),o=new Date(n.end);return go(r,t)||go(o,t)||r<t&&o>t})}var Zg=Z.forwardRef(({className:e,variant:t,size:n,radius:r,events:o=[],view:a="month",onViewChange:s,viewOptions:i=kC,date:l,onDateChange:c,onEventClick:d,onSlotClick:u,weekStartsOn:p=0,locale:f="en-US",...g},h)=>{let[v,b]=Z.useState(new Date),x=l??v,y=T=>{c?c(T):b(T);},C=p===1?PC:NC,w=()=>{let T=new Date(x);a==="month"?T.setMonth(T.getMonth()-1):a==="week"?T.setDate(T.getDate()-7):T.setDate(T.getDate()-1),y(T);},R=()=>{let T=new Date(x);a==="month"?T.setMonth(T.getMonth()+1):a==="week"?T.setDate(T.getDate()+7):T.setDate(T.getDate()+1),y(T);},N=()=>{y(new Date);},S=()=>a==="day"?x.toLocaleDateString(f,{weekday:"long",year:"numeric",month:"long",day:"numeric"}):x.toLocaleDateString(f,{year:"numeric",month:"long"}),D=()=>{let T=EC(x.getFullYear(),x.getMonth(),p);return jsxs("div",{className:"flex-1 flex flex-col",children:[jsx("div",{className:"grid grid-cols-7 border-b",children:C.map(M=>jsx("div",{className:"p-2 text-center font-medium text-muted-foreground",children:M},M))}),jsx("div",{className:"flex-1 grid grid-cols-7 grid-rows-6",children:T.map((M,H)=>{let E=qg(o,M),L=M.getMonth()===x.getMonth(),I=go(M,x);return jsxs("div",{className:m("min-h-[80px] border-b border-r p-1 cursor-pointer hover:bg-accent/50 transition-colors",!L&&"bg-muted/30",I&&"bg-accent"),onClick:()=>u?.(M),children:[jsx("div",{className:m("flex items-center justify-center w-7 h-7 rounded-full text-sm mb-1",fo(M)&&"bg-primary text-primary-foreground",!L&&"text-muted-foreground"),children:M.getDate()}),jsxs("div",{className:"space-y-0.5",children:[E.slice(0,3).map(V=>jsx("div",{className:"text-xs px-1 py-0.5 rounded truncate cursor-pointer hover:opacity-80",style:{backgroundColor:V.color||"hsl(var(--primary))",color:"white"},onClick:$=>{$.stopPropagation(),d?.(V);},children:V.title},V.id)),E.length>3&&jsxs("div",{className:"text-xs text-muted-foreground px-1",children:["+",E.length-3," more"]})]})]},H)})})]})},k=()=>{let T=SC(x,p),M=Array.from({length:24},(H,E)=>E);return jsxs("div",{className:"flex-1 flex flex-col overflow-hidden",children:[jsxs("div",{className:"grid grid-cols-[60px_repeat(7,1fr)] border-b",children:[jsx("div",{className:"p-2"}),T.map((H,E)=>{let L=go(H,x);return jsxs("div",{className:m("p-2 text-center border-l cursor-pointer hover:bg-accent/50",fo(H)&&"bg-primary/10",L&&!fo(H)&&"bg-accent"),onClick:()=>u?.(H),children:[jsx("div",{className:"text-xs text-muted-foreground",children:C[E]}),jsx("div",{className:m("text-lg font-semibold",fo(H)&&"text-primary",L&&!fo(H)&&"text-primary"),children:H.getDate()})]},E)})]}),jsx("div",{className:"flex-1 overflow-auto",children:jsx("div",{className:"grid grid-cols-[60px_repeat(7,1fr)]",children:M.map(H=>jsxs(Z.Fragment,{children:[jsxs("div",{className:"h-12 text-xs text-muted-foreground text-right pr-2 pt-0 border-b",children:[H.toString().padStart(2,"0"),":00"]}),T.map((E,L)=>{let I=new Date(E);I.setHours(H,0,0,0);let V=o.filter($=>{let O=new Date($.start);return go(O,E)&&O.getHours()===H});return jsx("div",{className:"h-12 border-b border-l cursor-pointer hover:bg-accent/50 relative",onClick:()=>u?.(I),children:V.map($=>jsx("div",{className:"absolute inset-x-0.5 top-0.5 text-xs px-1 py-0.5 rounded truncate cursor-pointer",style:{backgroundColor:$.color||"hsl(var(--primary))",color:"white"},onClick:O=>{O.stopPropagation(),d?.($);},children:$.title},$.id))},L)})]},H))})})]})},P=()=>{let T=Array.from({length:24},(H,E)=>E),M=qg(o,x);return jsxs("div",{className:"flex-1 flex flex-col overflow-hidden",children:[jsx("div",{className:"p-4 border-b text-center",children:jsx("div",{className:m("inline-flex items-center justify-center w-12 h-12 rounded-full text-2xl font-semibold",fo(x)&&"bg-primary text-primary-foreground"),children:x.getDate()})}),jsx("div",{className:"flex-1 overflow-auto",children:jsx("div",{className:"grid grid-cols-[60px_1fr]",children:T.map(H=>{let E=new Date(x);E.setHours(H,0,0,0);let L=M.filter(I=>new Date(I.start).getHours()===H);return jsxs(Z.Fragment,{children:[jsxs("div",{className:"h-12 text-xs text-muted-foreground text-right pr-2 pt-0 border-b",children:[H.toString().padStart(2,"0"),":00"]}),jsx("div",{className:"h-12 border-b border-l cursor-pointer hover:bg-accent/50 relative",onClick:()=>u?.(E),children:L.map(I=>jsx("div",{className:"absolute inset-x-1 top-0.5 text-xs px-2 py-1 rounded truncate cursor-pointer",style:{backgroundColor:I.color||"hsl(var(--primary))",color:"white"},onClick:V=>{V.stopPropagation(),d?.(I);},children:I.title},I.id))})]},H)})})})]})};return jsxs("div",{ref:h,className:m(Xg({variant:t,size:n,radius:r,className:e})),...g,children:[jsxs("div",{className:"flex items-center justify-between p-4 border-b",children:[jsx("h2",{className:"text-lg font-semibold",children:S()}),jsxs("div",{className:"flex items-center gap-2",children:[jsx(ue,{variant:"bordered",size:"sm",radius:"md",onClick:N,children:"Today"}),jsx(Sr,{options:i,value:a,onValueChange:T=>s?.(T),size:"sm",radius:"md",className:"w-[120px]"}),jsx(ue,{variant:"light",size:"sm",radius:"md",isIconOnly:true,onClick:w,children:jsx(ChevronLeft,{className:"h-4 w-4"})}),jsx(ue,{variant:"light",size:"sm",radius:"md",isIconOnly:true,onClick:R,children:jsx(ChevronRight,{className:"h-4 w-4"})})]})]}),a==="month"&&D(),a==="week"&&k(),a==="day"&&P()]})});Zg.displayName="FullCalendar";var Ds=({active:e,payload:t,label:n})=>!e||!t||!t.length?null:jsxs("div",{className:"border bg-card text-card-foreground shadow-sm rounded-lg p-3 min-w-[120px]",children:[n&&jsx("p",{className:"text-sm font-medium mb-2 text-card-foreground",children:n}),jsx("div",{className:"space-y-1",children:t.map((r,o)=>jsxs("div",{className:"flex items-center justify-between gap-4",children:[jsx("span",{className:"text-sm",style:{color:r.color},children:r.name}),jsx("span",{className:"text-sm font-medium text-card-foreground",children:typeof r.value=="number"?r.value.toLocaleString():r.value})]},o))})]}),ia=cva("w-full",{variants:{size:{sm:"h-48",md:"h-64",lg:"h-96"}},defaultVariants:{size:"md"}}),la=["hsl(var(--primary))","hsl(var(--chart-1, 220 70% 50%))","hsl(var(--chart-2, 160 60% 45%))","hsl(var(--chart-3, 30 80% 55%))","hsl(var(--chart-4, 280 65% 60%))"],Jg=Z.forwardRef(({className:e,size:t,data:n,dataKeys:r,colors:o=la,showGrid:a=true,showLegend:s=true,showTooltip:i=true,xAxisKey:l="name",curveType:c="monotone",...d},u)=>jsx("div",{ref:u,className:m(ia({size:t,className:e})),...d,children:jsx(ResponsiveContainer,{width:"100%",height:"100%",children:jsxs(LineChart,{data:n,children:[a&&jsx(CartesianGrid,{strokeDasharray:"3 3",className:"stroke-muted"}),jsx(XAxis,{dataKey:l,className:"text-xs fill-muted-foreground",tickLine:false,axisLine:false}),jsx(YAxis,{className:"text-xs fill-muted-foreground",tickLine:false,axisLine:false}),i&&jsx(Tooltip,{content:jsx(Ds,{})}),s&&jsx(Legend,{}),r.map((p,f)=>jsx(Line,{type:c,dataKey:p,stroke:o[f%o.length],strokeWidth:2,dot:{fill:o[f%o.length],strokeWidth:0},activeDot:{r:6}},p))]})})}));Jg.displayName="LineChart";var Qg=Z.forwardRef(({className:e,size:t,data:n,dataKeys:r,colors:o=la,showGrid:a=true,showLegend:s=true,showTooltip:i=true,xAxisKey:l="name",stacked:c=false,layout:d="horizontal",...u},p)=>jsx("div",{ref:p,className:m(ia({size:t,className:e})),...u,children:jsx(ResponsiveContainer,{width:"100%",height:"100%",children:jsxs(BarChart,{data:n,layout:d,children:[a&&jsx(CartesianGrid,{strokeDasharray:"3 3",className:"stroke-muted"}),jsx(XAxis,{dataKey:d==="horizontal"?l:void 0,type:d==="horizontal"?"category":"number",className:"text-xs fill-muted-foreground",tickLine:false,axisLine:false}),jsx(YAxis,{dataKey:d==="vertical"?l:void 0,type:d==="vertical"?"category":"number",className:"text-xs fill-muted-foreground",tickLine:false,axisLine:false}),i&&jsx(Tooltip,{content:jsx(Ds,{})}),s&&jsx(Legend,{}),r.map((f,g)=>jsx(Bar,{dataKey:f,fill:o[g%o.length],stackId:c?"stack":void 0,radius:[4,4,0,0]},f))]})})}));Qg.displayName="BarChart";var eb=Z.forwardRef(({className:e,size:t,data:n,dataKey:r="value",nameKey:o="name",colors:a=la,innerRadius:s=0,outerRadius:i=80,showLegend:l=true,showTooltip:c=true,showLabels:d=false,...u},p)=>jsx("div",{ref:p,className:m(ia({size:t,className:e})),...u,children:jsx(ResponsiveContainer,{width:"100%",height:"100%",children:jsxs(PieChart,{children:[c&&jsx(Tooltip,{content:jsx(Ds,{})}),l&&jsx(Legend,{}),jsx(Pie,{data:n,dataKey:r,nameKey:o,cx:"50%",cy:"50%",innerRadius:s,outerRadius:i,label:d,labelLine:d,children:n.map((f,g)=>jsx(Cell,{fill:a[g%a.length]},`cell-${g}`))})]})})}));eb.displayName="PieChart";var tb=Z.forwardRef(({className:e,size:t,data:n,dataKeys:r,colors:o=la,showGrid:a=true,showLegend:s=true,showTooltip:i=true,xAxisKey:l="name",stacked:c=false,curveType:d="monotone",...u},p)=>jsx("div",{ref:p,className:m(ia({size:t,className:e})),...u,children:jsx(ResponsiveContainer,{width:"100%",height:"100%",children:jsxs(AreaChart,{data:n,children:[a&&jsx(CartesianGrid,{strokeDasharray:"3 3",className:"stroke-muted"}),jsx(XAxis,{dataKey:l,className:"text-xs fill-muted-foreground",tickLine:false,axisLine:false}),jsx(YAxis,{className:"text-xs fill-muted-foreground",tickLine:false,axisLine:false}),i&&jsx(Tooltip,{content:jsx(Ds,{})}),s&&jsx(Legend,{}),r.map((f,g)=>jsx(Area,{type:d,dataKey:f,stroke:o[g%o.length],fill:o[g%o.length],fillOpacity:.3,stackId:c?"stack":void 0},f))]})})}));tb.displayName="AreaChart";var xl={none:"rounded-none",sm:"rounded-md",md:"rounded-lg",lg:"rounded-xl",full:"rounded-2xl"};function QC({card:e,columnId:t,radius:n,renderCard:r,onCardClick:o}){let{attributes:a,listeners:s,setNodeRef:i,transform:l,transition:c,isDragging:d}=useSortable({id:e.id,data:{columnId:t}}),u={transform:CSS.Transform.toString(l),transition:c};return jsx("div",{ref:i,style:u,className:m("p-3 cursor-grab active:cursor-grabbing transition-all bg-background border shadow-sm hover:shadow-md",d&&"opacity-50 scale-[1.02] shadow-lg",xl[n]),onClick:()=>o?.(e,t),...a,...s,children:r?r(e,t):jsxs("div",{className:"flex items-start gap-2",children:[jsx(GripVertical,{className:"h-4 w-4 text-muted-foreground flex-shrink-0 mt-0.5"}),jsxs("div",{className:"flex-1 min-w-0",children:[jsx("p",{className:"font-medium text-sm truncate",children:e.title}),e.description&&jsx("p",{className:"text-xs text-muted-foreground mt-1 line-clamp-2",children:e.description})]})]})})}function rb({column:e,radius:t,renderCard:n,onCardClick:r,onAddCard:o,showAddCard:a,addCardLabel:s,columnHeight:i}){return jsxs("div",{className:m("flex flex-col min-w-[280px] w-[280px]",xl[t]),style:{backgroundColor:e.backgroundColor||"transparent"},children:[jsx("div",{className:"flex items-center justify-between p-3 border-b",children:jsxs("div",{className:"flex items-center gap-2",children:[e.color&&jsx("div",{className:"w-3 h-3 rounded-full",style:{backgroundColor:e.color}}),jsx("h3",{className:"font-semibold text-sm",children:e.title}),jsx("span",{className:"text-xs text-muted-foreground bg-muted px-2 py-0.5 rounded-full",children:e.cards.length})]})}),jsx(Ve,{style:{height:i},className:"flex-1",children:jsxs("div",{className:"p-2 space-y-2",children:[jsx(SortableContext,{items:e.cards.map(l=>l.id),strategy:verticalListSortingStrategy,children:e.cards.map(l=>jsx(QC,{card:l,columnId:e.id,radius:t,renderCard:n,onCardClick:r},l.id))}),e.cards.length===0&&jsx("div",{className:"h-20 border-2 border-dashed rounded-lg flex items-center justify-center text-muted-foreground text-sm",children:"Drop here"})]})}),a&&jsx("div",{className:"p-2 border-t",children:jsxs(ue,{variant:"light",size:"sm",className:"w-full justify-start",onClick:l=>{l.stopPropagation(),l.preventDefault(),o?.(e.id);},children:[jsx(Plus,{className:"h-4 w-4 mr-2"}),s]})})]})}var ab=Z.forwardRef(({className:e,columns:t,onCardMove:n,onCardClick:r,onAddCard:o,renderCard:a,showAddCard:s=true,addCardLabel:i="Add card",columnHeight:l=500,radius:c="md",...d},u)=>{let[p,f]=Z.useState(false),[g,h]=Z.useState(null),[v,b]=Z.useState(null);Z.useEffect(()=>{f(true);},[]);let x=useSensors(useSensor(PointerSensor,{activationConstraint:{distance:8}}),useSensor(KeyboardSensor,{coordinateGetter:sortableKeyboardCoordinates}));if(!p)return jsx("div",{ref:u,className:m("flex gap-4 overflow-x-auto p-4 bg-muted/30",e),...d,children:t.map(N=>jsx(rb,{column:N,radius:c,renderCard:a,onCardClick:r,onAddCard:o,showAddCard:s,addCardLabel:i,columnHeight:l},N.id))});let y=N=>t.find(S=>S.cards.some(D=>D.id===N));return jsxs(DndContext,{sensors:x,collisionDetection:closestCorners,onDragStart:N=>{let{active:S}=N,D=y(S.id);if(D){let k=D.cards.find(P=>P.id===S.id);k&&(h(k),b(D.id));}},onDragOver:N=>{let{active:S,over:D}=N;if(!D)return;let k=S.id,P=D.id,T=y(k),M=y(P)||t.find(L=>L.id===P);if(!T||!M||T.id===M.id)return;let H=M.cards.findIndex(L=>L.id===P),E=H===-1?M.cards.length:H;n?.(k,T.id,M.id,E);},onDragEnd:N=>{let{active:S,over:D}=N;if(D&&S.id!==D.id){let k=y(S.id),P=y(D.id)||t.find(T=>T.id===D.id);if(k&&P){let T=P.cards.findIndex(H=>H.id===D.id),M=T===-1?P.cards.length:T;n?.(S.id,k.id,P.id,M);}}h(null),b(null);},children:[jsx("div",{ref:u,className:m("flex gap-4 overflow-x-auto p-4 bg-muted/30",e),...d,children:t.map(N=>jsx(rb,{column:N,radius:c,renderCard:a,onCardClick:r,onAddCard:o,showAddCard:s,addCardLabel:i,columnHeight:l},N.id))}),jsx(DragOverlay,{children:g&&v&&jsx("div",{className:m("p-3 cursor-grab active:cursor-grabbing transition-all bg-background border shadow-lg opacity-50 scale-[1.02]",xl[c]),children:a?a(g,v):jsxs("div",{className:"flex items-start gap-2",children:[jsx(GripVertical,{className:"h-4 w-4 text-muted-foreground flex-shrink-0 mt-0.5"}),jsxs("div",{className:"flex-1 min-w-0",children:[jsx("p",{className:"font-medium text-sm truncate",children:g.title}),g.description&&jsx("p",{className:"text-xs text-muted-foreground mt-1 line-clamp-2",children:g.description})]})]})})})]})});ab.displayName="KanbanBoard";var sb=cva("relative",{variants:{variant:{default:"",bordered:"border rounded-lg p-4",cards:"rounded-lg"}},defaultVariants:{variant:"default"}}),ib=Z.createContext(null);function Is(){let e=Z.useContext(ib);if(!e)throw new Error("useCarousel must be used within a <Carousel />");return e}var lb=Z.forwardRef(({className:e,variant:t,children:n,opts:r,plugins:o,orientation:a="horizontal",showArrows:s=true,showDots:i=true,setApi:l,...c},d)=>{let[u,p]=eT({...r,axis:a==="horizontal"?"x":"y"},o),[f,g]=Z.useState(false),[h,v]=Z.useState(false),[b,x]=Z.useState(0),[y,C]=Z.useState([]),w=Z.useCallback(k=>{k&&(x(k.selectedScrollSnap()),g(k.canScrollPrev()),v(k.canScrollNext()));},[]),R=Z.useCallback(()=>{p?.scrollPrev();},[p]),N=Z.useCallback(()=>{p?.scrollNext();},[p]),S=Z.useCallback(k=>{p?.scrollTo(k);},[p]),D=Z.useCallback(k=>{k.key==="ArrowLeft"?(k.preventDefault(),R()):k.key==="ArrowRight"&&(k.preventDefault(),N());},[R,N]);return Z.useEffect(()=>{!p||!l||l(p);},[p,l]),Z.useEffect(()=>{if(p)return C(p.scrollSnapList()),w(p),p.on("reInit",w),p.on("select",w),()=>{p?.off("select",w);}},[p,w]),jsx(ib.Provider,{value:{carouselRef:u,api:p,scrollPrev:R,scrollNext:N,canScrollPrev:f,canScrollNext:h,selectedIndex:b,scrollSnaps:y,scrollTo:S,orientation:a},children:jsxs("div",{ref:d,className:m(sb({variant:t,className:e})),onKeyDownCapture:D,role:"region","aria-roledescription":"carousel",...c,children:[jsx("div",{ref:u,className:"overflow-hidden",children:jsx("div",{className:m("flex",a==="horizontal"?"-ml-4":"-mt-4 flex-col"),children:n})}),s&&jsxs(Fragment,{children:[jsx(yl,{}),jsx(Rl,{})]}),i&&y.length>1&&jsx("div",{className:"flex justify-center gap-1.5 mt-4",children:y.map((k,P)=>jsx("button",{className:m("w-2 h-2 rounded-full transition-all",P===b?"bg-primary w-4":"bg-muted-foreground/30 hover:bg-muted-foreground/50"),onClick:()=>S(P),"aria-label":`Go to slide ${P+1}`},P))})]})})});lb.displayName="Carousel";var cb=Z.forwardRef(({className:e,...t},n)=>jsx("div",{ref:n,className:m("flex",e),...t}));cb.displayName="CarouselContent";var db=Z.forwardRef(({className:e,basis:t="basis-full",...n},r)=>{let{orientation:o}=Is();return jsx("div",{ref:r,role:"group","aria-roledescription":"slide",className:m("min-w-0 shrink-0 grow-0",o==="horizontal"?"pl-4":"pt-4",t,e),...n})});db.displayName="CarouselItem";var yl=Z.forwardRef(({className:e,variant:t="bordered",size:n="sm",isIconOnly:r=true,...o},a)=>{let{scrollPrev:s,canScrollPrev:i}=Is();return jsxs(ue,{ref:a,variant:t,size:n,isIconOnly:r,className:m("absolute left-2 top-1/2 -translate-y-1/2 h-8 w-8 rounded-full",e),isDisabled:!i,onClick:s,...o,children:[jsx(ChevronLeft,{className:"h-4 w-4"}),jsx("span",{className:"sr-only",children:"Previous slide"})]})});yl.displayName="CarouselPrevious";var Rl=Z.forwardRef(({className:e,variant:t="bordered",size:n="sm",isIconOnly:r=true,...o},a)=>{let{scrollNext:s,canScrollNext:i}=Is();return jsxs(ue,{ref:a,variant:t,size:n,isIconOnly:r,className:m("absolute right-2 top-1/2 -translate-y-1/2 h-8 w-8 rounded-full",e),isDisabled:!i,onClick:s,...o,children:[jsx(ChevronRight,{className:"h-4 w-4"}),jsx("span",{className:"sr-only",children:"Next slide"})]})});Rl.displayName="CarouselNext";var ub=cva("flex flex-col bg-popover border rounded-lg shadow-md",{variants:{size:{sm:"w-64 h-72",md:"w-80 h-96",lg:"w-96 h-[480px]"}},defaultVariants:{size:"md"}}),Vs={recent:{icon:"\u{1F550}",name:"Recent"},smileys:{icon:"\u{1F600}",name:"Smileys & Emotion"},people:{icon:"\u{1F44B}",name:"People & Body"},animals:{icon:"\u{1F43B}",name:"Animals & Nature"},food:{icon:"\u{1F354}",name:"Food & Drink"},travel:{icon:"\u{1F697}",name:"Travel & Places"},activities:{icon:"\u26BD",name:"Activities"},objects:{icon:"\u{1F4A1}",name:"Objects"},symbols:{icon:"\u2764\uFE0F",name:"Symbols"},flags:{icon:"\u{1F3F3}\uFE0F",name:"Flags"}},Cl={smileys:["\u{1F600}","\u{1F603}","\u{1F604}","\u{1F601}","\u{1F606}","\u{1F605}","\u{1F923}","\u{1F602}","\u{1F642}","\u{1F643}","\u{1F609}","\u{1F60A}","\u{1F607}","\u{1F970}","\u{1F60D}","\u{1F929}","\u{1F618}","\u{1F617}","\u263A\uFE0F","\u{1F61A}","\u{1F60B}","\u{1F61B}","\u{1F61C}","\u{1F92A}","\u{1F61D}","\u{1F911}","\u{1F917}","\u{1F92D}","\u{1F92B}","\u{1F914}","\u{1F910}","\u{1F928}","\u{1F610}","\u{1F611}","\u{1F636}","\u{1F60F}","\u{1F612}","\u{1F644}","\u{1F62C}","\u{1F925}","\u{1F60C}","\u{1F614}","\u{1F62A}","\u{1F924}","\u{1F634}","\u{1F637}","\u{1F912}","\u{1F915}","\u{1F922}","\u{1F92E}","\u{1F927}","\u{1F975}","\u{1F976}","\u{1F974}","\u{1F635}","\u{1F92F}","\u{1F920}","\u{1F973}","\u{1F978}","\u{1F60E}","\u{1F913}","\u{1F9D0}","\u{1F615}","\u{1F61F}","\u{1F641}","\u2639\uFE0F","\u{1F62E}","\u{1F62F}","\u{1F632}","\u{1F633}","\u{1F97A}","\u{1F626}","\u{1F627}","\u{1F628}","\u{1F630}","\u{1F625}","\u{1F622}","\u{1F62D}","\u{1F631}","\u{1F616}","\u{1F623}","\u{1F61E}","\u{1F613}","\u{1F629}","\u{1F62B}","\u{1F971}","\u{1F624}","\u{1F621}","\u{1F620}","\u{1F92C}","\u{1F608}","\u{1F47F}","\u{1F480}","\u2620\uFE0F","\u{1F4A9}","\u{1F921}","\u{1F479}","\u{1F47A}","\u{1F47B}","\u{1F47D}"],people:["\u{1F44B}","\u{1F91A}","\u{1F590}\uFE0F","\u270B","\u{1F596}","\u{1F44C}","\u{1F90C}","\u{1F90F}","\u270C\uFE0F","\u{1F91E}","\u{1F91F}","\u{1F918}","\u{1F919}","\u{1F448}","\u{1F449}","\u{1F446}","\u{1F595}","\u{1F447}","\u261D\uFE0F","\u{1F44D}","\u{1F44E}","\u270A","\u{1F44A}","\u{1F91B}","\u{1F91C}","\u{1F44F}","\u{1F64C}","\u{1F450}","\u{1F932}","\u{1F91D}","\u{1F64F}","\u270D\uFE0F","\u{1F485}","\u{1F933}","\u{1F4AA}","\u{1F9BE}","\u{1F9BF}","\u{1F9B5}","\u{1F9B6}","\u{1F442}","\u{1F9BB}","\u{1F443}","\u{1F9E0}","\u{1FAC0}","\u{1FAC1}","\u{1F9B7}","\u{1F9B4}","\u{1F440}","\u{1F441}\uFE0F","\u{1F445}","\u{1F444}","\u{1F476}","\u{1F9D2}","\u{1F466}","\u{1F467}","\u{1F9D1}","\u{1F471}","\u{1F468}","\u{1F9D4}","\u{1F469}","\u{1F9D3}","\u{1F474}","\u{1F475}","\u{1F64D}","\u{1F64E}","\u{1F645}","\u{1F646}","\u{1F481}","\u{1F64B}","\u{1F9CF}","\u{1F647}","\u{1F926}","\u{1F937}","\u{1F46E}","\u{1F575}\uFE0F","\u{1F482}","\u{1F977}","\u{1F477}","\u{1F934}","\u{1F478}"],animals:["\u{1F436}","\u{1F431}","\u{1F42D}","\u{1F439}","\u{1F430}","\u{1F98A}","\u{1F43B}","\u{1F43C}","\u{1F428}","\u{1F42F}","\u{1F981}","\u{1F42E}","\u{1F437}","\u{1F43D}","\u{1F438}","\u{1F435}","\u{1F648}","\u{1F649}","\u{1F64A}","\u{1F412}","\u{1F414}","\u{1F427}","\u{1F426}","\u{1F424}","\u{1F423}","\u{1F425}","\u{1F986}","\u{1F985}","\u{1F989}","\u{1F987}","\u{1F43A}","\u{1F417}","\u{1F434}","\u{1F984}","\u{1F41D}","\u{1FAB1}","\u{1F41B}","\u{1F98B}","\u{1F40C}","\u{1F41E}","\u{1F41C}","\u{1FAB0}","\u{1FAB2}","\u{1FAB3}","\u{1F99F}","\u{1F997}","\u{1F577}\uFE0F","\u{1F578}\uFE0F","\u{1F982}","\u{1F422}","\u{1F40D}","\u{1F98E}","\u{1F996}","\u{1F995}","\u{1F419}","\u{1F991}","\u{1F990}","\u{1F99E}","\u{1F980}","\u{1F421}","\u{1F420}","\u{1F41F}","\u{1F42C}","\u{1F433}","\u{1F40B}","\u{1F988}","\u{1F40A}","\u{1F405}","\u{1F406}","\u{1F993}","\u{1F98D}","\u{1F9A7}","\u{1F9A3}","\u{1F418}","\u{1F99B}","\u{1F98F}","\u{1F42A}","\u{1F42B}","\u{1F992}","\u{1F998}"],food:["\u{1F347}","\u{1F348}","\u{1F349}","\u{1F34A}","\u{1F34B}","\u{1F34C}","\u{1F34D}","\u{1F96D}","\u{1F34E}","\u{1F34F}","\u{1F350}","\u{1F351}","\u{1F352}","\u{1F353}","\u{1FAD0}","\u{1F95D}","\u{1F345}","\u{1FAD2}","\u{1F965}","\u{1F951}","\u{1F346}","\u{1F954}","\u{1F955}","\u{1F33D}","\u{1F336}\uFE0F","\u{1FAD1}","\u{1F952}","\u{1F96C}","\u{1F966}","\u{1F9C4}","\u{1F9C5}","\u{1F344}","\u{1F95C}","\u{1F330}","\u{1F35E}","\u{1F950}","\u{1F956}","\u{1FAD3}","\u{1F968}","\u{1F96F}","\u{1F95E}","\u{1F9C7}","\u{1F9C0}","\u{1F356}","\u{1F357}","\u{1F969}","\u{1F953}","\u{1F354}","\u{1F35F}","\u{1F355}","\u{1F32D}","\u{1F96A}","\u{1F32E}","\u{1F32F}","\u{1FAD4}","\u{1F959}","\u{1F9C6}","\u{1F95A}","\u{1F373}","\u{1F958}","\u{1F372}","\u{1FAD5}","\u{1F963}","\u{1F957}","\u{1F37F}","\u{1F9C8}","\u{1F9C2}","\u{1F96B}","\u{1F371}","\u{1F358}","\u{1F359}","\u{1F35A}","\u{1F35B}","\u{1F35C}","\u{1F35D}","\u{1F360}","\u{1F362}","\u{1F363}","\u{1F364}","\u{1F365}"],travel:["\u{1F697}","\u{1F695}","\u{1F699}","\u{1F68C}","\u{1F68E}","\u{1F3CE}\uFE0F","\u{1F693}","\u{1F691}","\u{1F692}","\u{1F690}","\u{1F6FB}","\u{1F69A}","\u{1F69B}","\u{1F69C}","\u{1F9AF}","\u{1F9BD}","\u{1F9BC}","\u{1F6F4}","\u{1F6B2}","\u{1F6F5}","\u{1F3CD}\uFE0F","\u{1F6FA}","\u{1F6A8}","\u{1F694}","\u{1F68D}","\u{1F698}","\u{1F696}","\u{1F6A1}","\u{1F6A0}","\u{1F69F}","\u{1F683}","\u{1F68B}","\u{1F69E}","\u{1F69D}","\u{1F684}","\u{1F685}","\u{1F688}","\u{1F682}","\u{1F686}","\u{1F687}","\u{1F68A}","\u{1F689}","\u2708\uFE0F","\u{1F6EB}","\u{1F6EC}","\u{1F6E9}\uFE0F","\u{1F4BA}","\u{1F6F0}\uFE0F","\u{1F680}","\u{1F6F8}","\u{1F681}","\u{1F6F6}","\u26F5","\u{1F6A4}","\u{1F6E5}\uFE0F","\u{1F6F3}\uFE0F","\u26F4\uFE0F","\u{1F6A2}","\u2693","\u{1FA9D}","\u26FD","\u{1F6A7}","\u{1F6A6}","\u{1F6A5}","\u{1F68F}","\u{1F5FA}\uFE0F","\u{1F5FF}","\u{1F5FD}","\u{1F5FC}","\u{1F3F0}","\u{1F3EF}","\u{1F3DF}\uFE0F","\u{1F3A1}","\u{1F3A2}","\u{1F3A0}","\u26F2","\u26F1\uFE0F","\u{1F3D6}\uFE0F","\u{1F3DD}\uFE0F","\u{1F3DC}\uFE0F"],activities:["\u26BD","\u{1F3C0}","\u{1F3C8}","\u26BE","\u{1F94E}","\u{1F3BE}","\u{1F3D0}","\u{1F3C9}","\u{1F94F}","\u{1F3B1}","\u{1FA80}","\u{1F3D3}","\u{1F3F8}","\u{1F3D2}","\u{1F3D1}","\u{1F94D}","\u{1F3CF}","\u{1FA83}","\u{1F945}","\u26F3","\u{1FA81}","\u{1F3F9}","\u{1F3A3}","\u{1F93F}","\u{1F94A}","\u{1F94B}","\u{1F3BD}","\u{1F6F9}","\u{1F6FC}","\u{1F6F7}","\u26F8\uFE0F","\u{1F94C}","\u{1F3BF}","\u26F7\uFE0F","\u{1F3C2}","\u{1FA82}","\u{1F3CB}\uFE0F","\u{1F93C}","\u{1F938}","\u26F9\uFE0F","\u{1F93A}","\u{1F93E}","\u{1F3CC}\uFE0F","\u{1F3C7}","\u26D1\uFE0F","\u{1F9D8}","\u{1F3C4}","\u{1F3CA}","\u{1F93D}","\u{1F6A3}","\u{1F9D7}","\u{1F6B5}","\u{1F6B4}","\u{1F3C6}","\u{1F947}","\u{1F948}","\u{1F949}","\u{1F3C5}","\u{1F396}\uFE0F","\u{1F3F5}\uFE0F","\u{1F397}\uFE0F","\u{1F3AB}","\u{1F39F}\uFE0F","\u{1F3AA}","\u{1F939}","\u{1F3AD}","\u{1FA70}","\u{1F3A8}","\u{1F3AC}","\u{1F3A4}","\u{1F3A7}","\u{1F3BC}","\u{1F3B9}","\u{1F941}","\u{1FA98}","\u{1F3B7}","\u{1F3BA}","\u{1FA97}","\u{1F3B8}","\u{1FA95}"],objects:["\u231A","\u{1F4F1}","\u{1F4F2}","\u{1F4BB}","\u2328\uFE0F","\u{1F5A5}\uFE0F","\u{1F5A8}\uFE0F","\u{1F5B1}\uFE0F","\u{1F5B2}\uFE0F","\u{1F579}\uFE0F","\u{1F5DC}\uFE0F","\u{1F4BD}","\u{1F4BE}","\u{1F4BF}","\u{1F4C0}","\u{1F4FC}","\u{1F4F7}","\u{1F4F8}","\u{1F4F9}","\u{1F3A5}","\u{1F4FD}\uFE0F","\u{1F39E}\uFE0F","\u{1F4DE}","\u260E\uFE0F","\u{1F4DF}","\u{1F4E0}","\u{1F4FA}","\u{1F4FB}","\u{1F399}\uFE0F","\u{1F39A}\uFE0F","\u{1F39B}\uFE0F","\u{1F9ED}","\u23F1\uFE0F","\u23F2\uFE0F","\u23F0","\u{1F570}\uFE0F","\u231B","\u23F3","\u{1F4E1}","\u{1F50B}","\u{1F50C}","\u{1F4A1}","\u{1F526}","\u{1F56F}\uFE0F","\u{1FA94}","\u{1F9EF}","\u{1F6E2}\uFE0F","\u{1F4B8}","\u{1F4B5}","\u{1F4B4}","\u{1F4B6}","\u{1F4B7}","\u{1FA99}","\u{1F4B0}","\u{1F4B3}","\u{1F48E}","\u2696\uFE0F","\u{1FA9C}","\u{1F9F0}","\u{1FA9B}","\u{1F527}","\u{1F528}","\u2692\uFE0F","\u{1F6E0}\uFE0F","\u26CF\uFE0F","\u{1FA9A}","\u{1F529}","\u2699\uFE0F","\u{1FAA4}","\u{1F9F1}","\u26D3\uFE0F","\u{1F9F2}","\u{1F52B}","\u{1F4A3}","\u{1F9E8}","\u{1FA93}","\u{1F52A}","\u{1F5E1}\uFE0F","\u2694\uFE0F","\u{1F6E1}\uFE0F"],symbols:["\u2764\uFE0F","\u{1F9E1}","\u{1F49B}","\u{1F49A}","\u{1F499}","\u{1F49C}","\u{1F5A4}","\u{1F90D}","\u{1F90E}","\u{1F494}","\u2763\uFE0F","\u{1F495}","\u{1F49E}","\u{1F493}","\u{1F497}","\u{1F496}","\u{1F498}","\u{1F49D}","\u{1F49F}","\u262E\uFE0F","\u271D\uFE0F","\u262A\uFE0F","\u{1F549}\uFE0F","\u2638\uFE0F","\u2721\uFE0F","\u{1F52F}","\u{1F54E}","\u262F\uFE0F","\u2626\uFE0F","\u{1F6D0}","\u26CE","\u2648","\u2649","\u264A","\u264B","\u264C","\u264D","\u264E","\u264F","\u2650","\u2651","\u2652","\u2653","\u{1F194}","\u269B\uFE0F","\u{1F251}","\u2622\uFE0F","\u2623\uFE0F","\u{1F4F4}","\u{1F4F3}","\u{1F236}","\u{1F21A}","\u{1F238}","\u{1F23A}","\u{1F237}\uFE0F","\u2734\uFE0F","\u{1F19A}","\u{1F4AE}","\u{1F250}","\u3299\uFE0F","\u3297\uFE0F","\u{1F234}","\u{1F235}","\u{1F239}","\u{1F232}","\u{1F170}\uFE0F","\u{1F171}\uFE0F","\u{1F18E}","\u{1F191}","\u{1F17E}\uFE0F","\u{1F198}","\u274C","\u2B55","\u{1F6D1}","\u26D4","\u{1F4DB}","\u{1F6AB}","\u{1F4AF}","\u{1F4A2}","\u2668\uFE0F"],flags:["\u{1F3F3}\uFE0F","\u{1F3F4}","\u{1F3C1}","\u{1F6A9}","\u{1F3F3}\uFE0F\u200D\u{1F308}","\u{1F3F3}\uFE0F\u200D\u26A7\uFE0F","\u{1F1FA}\u{1F1F3}","\u{1F1E6}\u{1F1EB}","\u{1F1E6}\u{1F1F1}","\u{1F1E9}\u{1F1FF}","\u{1F1E6}\u{1F1F8}","\u{1F1E6}\u{1F1E9}","\u{1F1E6}\u{1F1F4}","\u{1F1E6}\u{1F1EE}","\u{1F1E6}\u{1F1F6}","\u{1F1E6}\u{1F1EC}","\u{1F1E6}\u{1F1F7}","\u{1F1E6}\u{1F1F2}","\u{1F1E6}\u{1F1FC}","\u{1F1E6}\u{1F1FA}","\u{1F1E6}\u{1F1F9}","\u{1F1E6}\u{1F1FF}","\u{1F1E7}\u{1F1F8}","\u{1F1E7}\u{1F1ED}","\u{1F1E7}\u{1F1E9}","\u{1F1E7}\u{1F1E7}","\u{1F1E7}\u{1F1FE}","\u{1F1E7}\u{1F1EA}","\u{1F1E7}\u{1F1FF}","\u{1F1E7}\u{1F1EF}","\u{1F1E7}\u{1F1F2}","\u{1F1E7}\u{1F1F9}","\u{1F1E7}\u{1F1F4}","\u{1F1E7}\u{1F1E6}","\u{1F1E7}\u{1F1FC}","\u{1F1E7}\u{1F1F7}","\u{1F1E7}\u{1F1F3}","\u{1F1E7}\u{1F1EC}","\u{1F1E7}\u{1F1EB}","\u{1F1E7}\u{1F1EE}","\u{1F1E8}\u{1F1FB}","\u{1F1F0}\u{1F1ED}","\u{1F1E8}\u{1F1F2}","\u{1F1E8}\u{1F1E6}","\u{1F1E8}\u{1F1EB}","\u{1F1F9}\u{1F1E9}","\u{1F1E8}\u{1F1F1}","\u{1F1E8}\u{1F1F3}","\u{1F1E8}\u{1F1F4}","\u{1F1F0}\u{1F1F2}","\u{1F1E8}\u{1F1EC}","\u{1F1E8}\u{1F1E9}","\u{1F1E8}\u{1F1F7}","\u{1F1ED}\u{1F1F7}","\u{1F1E8}\u{1F1FA}","\u{1F1E8}\u{1F1FE}","\u{1F1E8}\u{1F1FF}","\u{1F1E9}\u{1F1F0}","\u{1F1E9}\u{1F1EF}","\u{1F1E9}\u{1F1F2}","\u{1F1E9}\u{1F1F4}","\u{1F1EA}\u{1F1E8}","\u{1F1EA}\u{1F1EC}","\u{1F1F8}\u{1F1FB}","\u{1F1EC}\u{1F1F6}","\u{1F1EA}\u{1F1F7}","\u{1F1EA}\u{1F1EA}","\u{1F1EA}\u{1F1F9}","\u{1F1EA}\u{1F1FA}","\u{1F1EB}\u{1F1EF}","\u{1F1EB}\u{1F1EE}","\u{1F1EB}\u{1F1F7}","\u{1F1EC}\u{1F1E6}","\u{1F1EC}\u{1F1F2}","\u{1F1EC}\u{1F1EA}","\u{1F1E9}\u{1F1EA}","\u{1F1EC}\u{1F1ED}","\u{1F1EC}\u{1F1F7}","\u{1F1EC}\u{1F1F9}","\u{1F1EC}\u{1F1F3}"]},mb=Z.forwardRef(({className:e,size:t,onEmojiSelect:n,recentEmojis:r=[],defaultCategory:o="smileys",showSearch:a=true,showCategories:s=true,...i},l)=>{let[c,d]=Z.useState(r.length>0?"recent":o),[u,p]=Z.useState(""),g=u?Object.values(Cl).flat().filter(v=>v.toLowerCase().includes(u.toLowerCase())):c==="recent"?r:Cl[c]||[],h=v=>{n?.(v);};return jsxs("div",{ref:l,className:m(ub({size:t,className:e})),...i,children:[a&&jsx("div",{className:"p-2 border-b",children:jsxs("div",{className:"relative",children:[jsx(Search,{className:"absolute left-2.5 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground"}),jsx(Xn,{placeholder:"Search emojis...",value:u,onChange:v=>p(v.target.value),className:"pl-8 h-8"})]})}),s&&!u&&jsx(Ve,{orientation:"horizontal",className:"border-b",children:jsx("div",{className:"flex px-1",children:Object.entries(Vs).map(([v,{icon:b}])=>v==="recent"&&r.length===0?null:jsx("button",{className:m("shrink-0 p-2 text-lg hover:bg-accent rounded transition-colors",c===v&&"bg-accent"),onClick:()=>d(v),title:Vs[v].name,children:b},v))})}),!u&&jsx("div",{className:"px-3 py-1.5 text-xs font-medium text-muted-foreground",children:Vs[c].name}),jsx(Ve,{className:"flex-1",children:jsxs("div",{className:"grid grid-cols-8 gap-1 p-2",children:[g.map((v,b)=>jsx("button",{className:"w-8 h-8 flex items-center justify-center text-xl hover:bg-accent rounded transition-colors",onClick:()=>h(v),children:v},`${v}-${b}`)),g.length===0&&jsx("div",{className:"col-span-8 py-8 text-center text-muted-foreground text-sm",children:"No emojis found"})]})})]})});mb.displayName="EmojiPicker";var fb=cva("flex flex-col border rounded-lg bg-background overflow-hidden",{variants:{variant:{default:"",bordered:"border border-zinc-300 dark:border-zinc-700",ghost:"border-none bg-transparent"}},defaultVariants:{variant:"default"}});function fT(e,t,n){return centerCrop(makeAspectCrop({unit:"%",width:90},n,e,t),e,t)}async function pb(e,t,n=0,r=1){let o=document.createElement("canvas"),a=o.getContext("2d");if(!a)return null;let s=e.naturalWidth/e.width,i=e.naturalHeight/e.height,l=window.devicePixelRatio||1;o.width=Math.floor(t.width*s*l),o.height=Math.floor(t.height*i*l),a.scale(l,l),a.imageSmoothingQuality="high";let c=t.x*s,d=t.y*i,u=n*Math.PI/180,p=e.naturalWidth/2,f=e.naturalHeight/2;return a.save(),a.translate(-c,-d),a.translate(p,f),a.rotate(u),a.scale(r,r),a.translate(-p,-f),a.drawImage(e,0,0,e.naturalWidth,e.naturalHeight,0,0,e.naturalWidth,e.naturalHeight),a.restore(),new Promise(g=>{o.toBlob(h=>{g(h);},"image/png");})}var gb=Z.forwardRef(({className:e,variant:t,src:n,aspectRatio:r,onCropChange:o,onCropComplete:a,showZoom:s=true,showRotation:i=true,minZoom:l=1,maxZoom:c=3,circularCrop:d=false,initialCrop:u,...p},f)=>{let g=Z.useRef(null),[h,v]=Z.useState(),[b,x]=Z.useState(),[y,C]=Z.useState(1),[w,R]=Z.useState(0),N=P=>{let{width:T,height:M}=P.currentTarget;if(r){let H=fT(T,M,r);v(H);}else v(u||{unit:"%",x:10,y:10,width:80,height:80});},S=P=>{v(P),o?.(P);},D=async P=>{if(x(P),a&&g.current&&P.width&&P.height){let T=await pb(g.current,P,w,y);a(T);}},k=()=>{R(P=>(P+90)%360);};return Z.useEffect(()=>{b&&g.current&&a&&pb(g.current,b,w,y).then(P=>{a(P);});},[y,w,b,a]),jsxs("div",{ref:f,className:m(fb({variant:t,className:e})),...p,children:[jsx("div",{className:"flex-1 flex items-center justify-center p-4 bg-muted/30 min-h-[300px]",children:jsx(iT,{crop:h,onChange:S,onComplete:D,aspect:r,circularCrop:d,className:"max-h-[400px]",children:jsx("img",{ref:g,src:n,alt:"Crop preview",crossOrigin:"anonymous",onLoad:N,style:{transform:`scale(${y}) rotate(${w}deg)`,maxHeight:"400px"}})})}),jsxs("div",{className:"flex items-center gap-4 p-3 border-t",children:[s&&jsxs("div",{className:"flex items-center gap-2 flex-1",children:[jsx(ZoomOut,{className:"h-4 w-4 text-muted-foreground"}),jsx(Zt,{value:[y],onValueChange:([P])=>C(P),min:l,max:c,step:.1,className:"flex-1"}),jsx(ZoomIn,{className:"h-4 w-4 text-muted-foreground"})]}),i&&jsx(ue,{variant:"bordered",size:"sm",isIconOnly:true,onClick:k,children:jsx(RotateCw,{className:"h-4 w-4"})})]})]})});gb.displayName="ImageCropper";var Ml=cva("inline-block",{variants:{variant:{default:"",bordered:"border rounded-lg p-2",card:"border rounded-lg p-4 bg-card shadow-sm"},size:{sm:"",md:"",lg:""}},defaultVariants:{variant:"default",size:"md"}}),vT={sm:96,md:128,lg:192},bb=Z.forwardRef(({className:e,variant:t,size:n,value:r,qrSize:o,fgColor:a="currentColor",bgColor:s="transparent",level:i="M",includeMargin:l=false,title:c,logo:d,logoSize:u=40,logoPadding:p=4,logoBackgroundColor:f="white",...g},h)=>{let v=Z.useRef(null),b=o??vT[n??"md"];return Z.useImperativeHandle(h,()=>({download:(x="qrcode.png")=>{let y=v.current?.querySelector("svg");if(!y)return;let C=new XMLSerializer().serializeToString(y),w=document.createElement("canvas"),R=w.getContext("2d"),N=new Image,S=l?32:0;w.width=b+S,w.height=b+S,N.onload=()=>{if(!R)return;R.fillStyle=s==="transparent"?"#ffffff":s,R.fillRect(0,0,w.width,w.height),R.drawImage(N,0,0);let D=document.createElement("a");D.download=x.endsWith(".png")?x:`${x}.png`,D.href=w.toDataURL("image/png"),D.click();},N.src="data:image/svg+xml;base64,"+btoa(unescape(encodeURIComponent(C)));}})),r?jsx("div",{ref:v,className:m(Ml({variant:t,size:n,className:e})),...g,children:jsxs("div",{className:"relative inline-block",children:[jsx(gT,{value:r,size:b,fgColor:a,bgColor:s,level:i,title:c,style:{padding:l?16:0}}),d&&jsx("div",{className:"absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 rounded",style:{padding:p,backgroundColor:f},children:jsx("img",{src:d,alt:"Logo",style:{width:u,height:u,objectFit:"contain"}})})]})}):jsx("div",{ref:v,className:m(Ml({variant:t,size:n,className:e})),...g,children:jsx("div",{className:"flex items-center justify-center bg-muted text-muted-foreground text-xs rounded",style:{width:b,height:b},children:"No data"})})});bb.displayName="QRCode";var As=({children:e,defaultTheme:t="system",storageKey:n="reever-ui-theme",enableSystem:r=true,disableTransitionOnChange:o=false,attribute:a="class",forcedTheme:s,themes:i=["light","dark"]})=>jsx(ThemeProvider,{defaultTheme:t,storageKey:n,enableSystem:r,disableTransitionOnChange:o,attribute:a,forcedTheme:s,themes:i,children:e});As.displayName="ThemeProvider";var TT=cva("",{variants:{variant:{default:"",bordered:"",ghost:""},size:{sm:"",md:"",lg:""}},defaultVariants:{variant:"ghost",size:"md"}}),vb=Z.forwardRef(({className:e,variant:t="ghost",size:n="md",mode:r="dropdown"},o)=>{let{theme:a,setTheme:s,resolvedTheme:i}=useTheme(),[l,c]=Z.useState(false);Z.useEffect(()=>{c(true);},[]);let d=()=>{let u=["light","dark","system"],f=(u.indexOf(a||"system")+1)%u.length;s(u[f]);};return l?r==="cycle"?jsxs(ue,{ref:o,variant:t==="default"?"bordered":t,size:"sm",isIconOnly:true,className:e,onClick:d,children:[i==="dark"?jsx(Moon,{className:"h-4 w-4"}):jsx(Sun,{className:"h-4 w-4"}),jsx("span",{className:"sr-only",children:"Toggle theme"})]}):jsxs(Yt,{children:[jsx(qt,{children:jsxs(ue,{ref:o,variant:t==="default"?"bordered":t,size:"sm",isIconOnly:true,className:e,children:[jsx(Sun,{className:"h-4 w-4 rotate-0 scale-100 transition-all dark:-rotate-90 dark:scale-0"}),jsx(Moon,{className:"absolute h-4 w-4 rotate-90 scale-0 transition-all dark:rotate-0 dark:scale-100"}),jsx("span",{className:"sr-only",children:"Toggle theme"})]})}),jsxs(Xt,{align:"end",children:[jsxs(Nt,{onClick:()=>s("light"),children:[jsx(Sun,{className:"mr-2 h-4 w-4"}),"Light"]}),jsxs(Nt,{onClick:()=>s("dark"),children:[jsx(Moon,{className:"mr-2 h-4 w-4"}),"Dark"]}),jsxs(Nt,{onClick:()=>s("system"),children:[jsx(Monitor,{className:"mr-2 h-4 w-4"}),"System"]})]})]}):jsxs(ue,{ref:o,variant:t==="default"?"bordered":t,size:"sm",isIconOnly:true,className:e,isDisabled:true,children:[jsx(Sun,{className:"h-4 w-4"}),jsx("span",{className:"sr-only",children:"Toggle theme"})]})});vb.displayName="ThemeToggle";var MT={disableAnimation:false,defaultRadius:"md",defaultColor:"default",locale:"en-US",navigate:void 0},Nl=Z.createContext(MT),kT=()=>Z.useContext(Nl),xb=({children:e,disableAnimation:t=false,defaultRadius:n="md",defaultColor:r="default",locale:o="en-US",navigate:a,defaultTheme:s="system",storageKey:i="reever-ui-theme",enableSystem:l=true,disableTransitionOnChange:c=false,attribute:d="class",forcedTheme:u,themes:p=["light","dark"]})=>{let f=Z.useMemo(()=>({disableAnimation:t,defaultRadius:n,defaultColor:r,locale:o,navigate:a}),[t,n,r,o,a]);return jsx(Nl.Provider,{value:f,children:jsx(As,{defaultTheme:s,storageKey:i,enableSystem:l,disableTransitionOnChange:c||t,attribute:d,forcedTheme:u,themes:p,children:e})})};xb.displayName="ReeverUIProvider";var Rb=cva("flex flex-col gap-1.5",{variants:{size:{sm:"",md:"",lg:""}},defaultVariants:{size:"md"}}),PT=cva("flex rounded-md border border-input bg-background placeholder:text-muted-foreground focus:outline-none transition-colors disabled:cursor-not-allowed disabled:opacity-50",{variants:{size:{sm:"h-9 py-1.5 text-xs",md:"h-10 py-2 text-sm",lg:"h-11 py-2.5 text-base"},isInvalid:{true:"border-danger focus:border-danger",false:""},fullWidth:{true:"w-full",false:"w-fit"},showPickerIcon:{true:"",false:""}},compoundVariants:[{size:"sm",showPickerIcon:true,className:"pl-3 pr-8"},{size:"sm",showPickerIcon:false,className:"px-3"},{size:"md",showPickerIcon:true,className:"pl-3 pr-10"},{size:"md",showPickerIcon:false,className:"px-3"},{size:"lg",showPickerIcon:true,className:"pl-4 pr-12"},{size:"lg",showPickerIcon:false,className:"px-4"}],defaultVariants:{size:"md",isInvalid:false,fullWidth:false,showPickerIcon:true}}),ET=cva("text-muted-foreground",{variants:{size:{sm:"h-3.5 w-3.5",md:"h-4 w-4",lg:"h-5 w-5"}},defaultVariants:{size:"md"}}),ST=cva("font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70",{variants:{size:{sm:"text-xs",md:"text-sm",lg:"text-base"}},defaultVariants:{size:"md"}}),Ks={"dd/MM/yyyy":"/","MM/dd/yyyy":"/","yyyy-MM-dd":"-","dd.MM.yyyy":"."},El={"dd/MM/yyyy":["day","month","year"],"MM/dd/yyyy":["month","day","year"],"yyyy-MM-dd":["year","month","day"],"dd.MM.yyyy":["day","month","year"]},Pl=(e,t)=>String(e).padStart(t,"0"),Os=(e,t)=>{if(!e)return "";let n=Pl(e.getDate(),2),r=Pl(e.getMonth()+1,2),o=Pl(e.getFullYear(),4),a=Ks[t],s=El[t],i={day:n,month:r,year:o};return s.map(l=>i[l]).join(a)},yb=(e,t)=>{let n=Ks[t],r=e.split(n);if(r.length!==3)return null;let o=El[t],a={};if(o.forEach((i,l)=>{a[i]=parseInt(r[l],10);}),isNaN(a.day)||isNaN(a.month)||isNaN(a.year)||a.month<1||a.month>12||a.day<1||a.day>31||a.year<1e3||a.year>9999)return null;let s=new Date(a.year,a.month-1,a.day);return s.getFullYear()!==a.year||s.getMonth()!==a.month-1||s.getDate()!==a.day?null:s},LT=e=>{let t=Ks[e];return El[e].map(r=>r==="year"?"####":"##").join(t)},wb=Z.forwardRef(({className:e,label:t,description:n,errorMessage:r,isRequired:o,isInvalid:a,size:s,labelClassName:i,inputClassName:l,descriptionClassName:c,errorClassName:d,value:u,defaultValue:p,onChange:f,minDate:g,maxDate:h,dateFormat:v="dd.MM.yyyy",showPickerIcon:b=true,mode:x="text",fullWidth:y=false,isDisabled:C,placeholder:w,id:R,...N},S)=>{let D=Z.useId(),k=R||D,P=`${k}-description`,T=`${k}-error`,[M,H]=Z.useState(p??null),[E,L]=Z.useState(""),[I,V]=Z.useState(false),[$,O]=Z.useState(false),z=u!==void 0?u:M,F=a&&r,U=Ks[v],j=LT(v);Z.useEffect(()=>{$||L(Os(z,v));},[z,v,$]);let A=fe=>{u===void 0&&H(fe),f?.(fe);},W=fe=>{let G=fe??null;A(G),L(Os(G,v)),V(false);},_=fe=>{let G=fe.target.value;G=G.replace(new RegExp(`[^0-9\\${U}]`,"g"),"");let B=G.replace(new RegExp(`\\${U}`,"g"),""),K="",Y=0;for(let X=0;X<j.length&&Y<B.length;X++)j[X]==="#"?(K+=B[Y],Y++):K+=j[X];if(L(K),K.length===j.length){let X=yb(K,v);if(X){if(g&&X<g||h&&X>h)return;A(X);}}},q=()=>{O(true);},se=()=>{O(false),E.length!==j.length?L(Os(z,v)):yb(E,v)||L(Os(z,v));},J=()=>{C||V(true);},Te=()=>{!C&&x==="picker"&&b&&V(true);};return jsxs("div",{className:m(Rb({size:s}),e),children:[t&&jsxs("label",{htmlFor:k,className:m(ST({size:s}),i),children:[t,o&&jsx("span",{className:"text-danger ml-0.5","aria-hidden":"true",children:"*"})]}),jsxs(Pt,{open:b&&I,onOpenChange:V,children:[jsxs(Qn,{className:m("relative",y?"w-full":"w-fit"),children:[jsx("input",{ref:S,id:k,type:"text",inputMode:x==="text"?"numeric":void 0,value:E,onChange:x==="text"?_:void 0,onClick:Te,onFocus:q,onBlur:se,readOnly:x==="picker","aria-invalid":a,"aria-describedby":F?T:n?P:void 0,"aria-required":o,disabled:C,placeholder:w||v.toLowerCase(),className:m(PT({size:s,isInvalid:a,fullWidth:y,showPickerIcon:b}),x==="picker"&&b&&"cursor-pointer",l),style:{borderColor:$||b&&I?"var(--color-foreground)":void 0},...N}),b&&jsx("button",{type:"button",onClick:J,disabled:C,className:"absolute right-3 top-1/2 -translate-y-1/2 cursor-pointer disabled:cursor-not-allowed disabled:opacity-50",tabIndex:-1,"aria-label":"Open calendar",children:jsx(Calendar,{className:m(ET({size:s}))})})]}),b&&jsx(Et,{className:"w-auto p-0",align:"start",children:jsx(ro,{mode:"single",selected:z??void 0,onSelect:W,disabled:fe=>!!(g&&fe<g||h&&fe>h),defaultMonth:z??void 0,showMonthAndYearPickers:true,size:s??"md"})})]}),n&&!F&&jsx("p",{id:P,className:m("text-muted-foreground",s==="sm"?"text-xs":s==="lg"?"text-sm":"text-xs",c),children:n}),F&&jsx("p",{id:T,role:"alert",className:m("text-danger",s==="sm"?"text-xs":s==="lg"?"text-sm":"text-xs",d),children:r})]})});wb.displayName="DatePicker";var Tb=cva("inline-flex items-center",{variants:{variant:{default:"gap-1",compact:"gap-0.5",attached:"[&>*:not(:first-child):not(:last-child)]:rounded-none [&>*:first-child]:rounded-r-none [&>*:last-child]:rounded-l-none [&>*:not(:first-child)]:-ml-px gap-0"},orientation:{horizontal:"flex-row",vertical:"flex-col [&>*:not(:first-child):not(:last-child)]:rounded-none [&>*:first-child]:rounded-b-none [&>*:last-child]:rounded-t-none [&>*:not(:first-child)]:-mt-px [&>*:not(:first-child)]:ml-0"},size:{sm:"",md:"",lg:""},density:{compact:"gap-0.5",regular:"gap-1",spacious:"gap-2"}},defaultVariants:{variant:"default",orientation:"horizontal",size:"md",density:"regular"}}),Mb=Z.forwardRef(({className:e,variant:t,orientation:n,size:r,density:o,items:a,maxVisibleItems:s,isDisabled:i,onAction:l,showLabels:c=false,renderItem:d,...u},p)=>{let f=s&&s<a.length?a.slice(0,s):a,g=s&&s<a.length?a.slice(s):[],h={sm:"h-8 px-2 text-xs",md:"h-9 px-3 text-sm",lg:"h-10 px-4 text-base"}[r??"md"],v={sm:"h-8 w-8",md:"h-9 w-9",lg:"h-10 w-10"}[r??"md"],b={sm:"h-4 w-4",md:"h-4 w-4",lg:"h-5 w-5"}[r??"md"],x=(C,w)=>{w&&w(),l&&l(C);},y=C=>jsxs("button",{type:"button",disabled:i||C.isDisabled,onClick:()=>x(C.key,C.onPress),className:m("inline-flex items-center justify-center gap-2 rounded-md transition-colors","hover:bg-accent hover:text-accent-foreground","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2","disabled:pointer-events-none disabled:opacity-50",c?h:v),"aria-label":C.label,children:[C.icon&&jsx("span",{className:b,children:C.icon}),c&&jsx("span",{children:C.label})]},C.key);return jsxs("div",{ref:p,role:"group",className:m(Tb({variant:t,orientation:n,size:r,density:o,className:e})),...u,children:[f.map(C=>d?d(C):y(C)),g.length>0&&jsxs(Yt,{children:[jsx(qt,{"aria-label":"More actions",className:m("items-center justify-center rounded-md transition-colors","hover:bg-accent hover:text-accent-foreground","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",i&&"pointer-events-none opacity-50",v),children:jsx(MoreHorizontal,{className:b})}),jsx(Xt,{align:"end",children:g.map(C=>jsxs(Nt,{isDisabled:C.isDisabled,onClick:()=>x(C.key,C.onPress),children:[C.icon&&jsx("span",{className:m(b,"mr-2"),children:C.icon}),C.label]},C.key))})]})]})});Mb.displayName="ActionGroup";var kb=cva("fixed flex items-center gap-2 rounded-lg border bg-background shadow-lg transition-all duration-200",{variants:{position:{bottom:"bottom-4 left-1/2 -translate-x-1/2",top:"top-4 left-1/2 -translate-x-1/2","bottom-right":"bottom-4 right-4","bottom-left":"bottom-4 left-4"},size:{sm:"px-3 py-2 gap-1.5",md:"px-4 py-2.5 gap-2",lg:"px-5 py-3 gap-3"}},defaultVariants:{position:"bottom",size:"md"}}),Nb=Z.forwardRef(({className:e,position:t,size:n,selectedCount:r=0,isOpen:o=true,onClose:a,showClose:s=true,selectedText:i,children:l,...c},d)=>{if(!o||r===0)return null;let u=()=>typeof i=="function"?i(r):i||`${r} item${r>1?"s":""} selected`;return jsxs("div",{ref:d,role:"toolbar","aria-label":"Actions for selected items",className:m(kb({position:t,size:n,className:e})),...c,children:[jsx("span",{className:"text-sm font-medium text-muted-foreground whitespace-nowrap",children:u()}),jsx("div",{className:"h-4 w-px bg-border"}),jsx("div",{className:"flex items-center gap-1",children:l}),s&&jsxs(Fragment,{children:[jsx("div",{className:"h-4 w-px bg-border"}),jsx(Rt,{size:"sm",onClick:a,"aria-label":"Close action bar"})]})]})});Nb.displayName="ActionBar";var Pb=Z.forwardRef(({className:e,icon:t,children:n,...r},o)=>jsxs("button",{ref:o,type:"button",className:m("inline-flex items-center gap-1.5 rounded-md px-2.5 py-1.5 text-sm font-medium transition-colors","hover:bg-accent hover:text-accent-foreground","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring","disabled:pointer-events-none disabled:opacity-50",e),...r,children:[t&&jsx("span",{className:"h-4 w-4 [&>svg]:h-full [&>svg]:w-full",children:t}),n]}));Pb.displayName="ActionBarButton";var Eb=cva("relative flex w-full touch-none select-none",{variants:{orientation:{horizontal:"items-center",vertical:"flex-col justify-center h-full"},size:{sm:"",md:"",lg:""}},defaultVariants:{orientation:"horizontal",size:"md"}}),AT=cva("relative grow overflow-hidden rounded-full bg-secondary",{variants:{orientation:{horizontal:"w-full",vertical:"w-2 h-full"},size:{sm:"h-1",md:"h-2",lg:"h-3"}},compoundVariants:[{orientation:"vertical",size:"sm",className:"w-1 h-full"},{orientation:"vertical",size:"md",className:"w-2 h-full"},{orientation:"vertical",size:"lg",className:"w-3 h-full"}],defaultVariants:{orientation:"horizontal",size:"md"}}),zT=cva("block rounded-full border-2 bg-background ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 cursor-grab",{variants:{size:{sm:"h-3.5 w-3.5",md:"h-5 w-5",lg:"h-6 w-6"},color:{primary:"border-primary",success:"border-green-500",warning:"border-yellow-500",danger:"border-red-500",custom:""}},defaultVariants:{size:"md",color:"primary"}}),Sb=Z.forwardRef(({className:e,orientation:t="horizontal",size:n="md",value:r,defaultValue:o=[25,75],onValueChange:a,onValueCommit:s,min:i=0,max:l=100,step:c=1,isDisabled:d=false,showLabels:u=false,formatLabel:p=b=>String(b),trackColor:f="primary",name:g,...h},v)=>{let[b,x]=Z.useState(o),y=r!==void 0,C=y?r:b,w=Z.useRef(null),[R,N]=Z.useState(false),[S,D]=Z.useState(null),k=(A,W)=>{if(!w.current)return C[0];let _=w.current.getBoundingClientRect(),q;t==="horizontal"?q=(A-_.left)/_.width:q=1-(W-_.top)/_.height,q=Math.max(0,Math.min(1,q));let se=i+q*(l-i),J=Math.round(se/c)*c;return Math.max(i,Math.min(l,J))},P=(A,W)=>{let _=[...C];_[W]=A,W===0&&A>C[1]&&(_[0]=C[1]),W===1&&A<C[0]&&(_[1]=C[0]),y||x(_),a?.(_);},T=(A,W)=>{d||(A.preventDefault(),N(true),D(W),A.target.setPointerCapture(A.pointerId));},M=A=>{if(!R||S===null||d)return;let W=k(A.clientX,A.clientY);P(W,S);},H=()=>{R&&(N(false),D(null),s?.(C));},E=A=>{if(d)return;let W=k(A.clientX,A.clientY),_=Math.abs(C[0]-W),q=Math.abs(C[1]-W),se=_<=q?0:1;P(W,se);let J=[...C];J[se]=W,s?.(J);},L=(A,W)=>{if(d)return;let _=C[W];switch(A.key){case "ArrowRight":case "ArrowUp":A.preventDefault(),_=Math.min(l,C[W]+c);break;case "ArrowLeft":case "ArrowDown":A.preventDefault(),_=Math.max(i,C[W]-c);break;case "Home":A.preventDefault(),_=i;break;case "End":A.preventDefault(),_=l;break;default:return}P(_,W);let q=[...C];q[W]=_,s?.(q);},I=A=>(A-i)/(l-i)*100,V={primary:"bg-primary",success:"bg-green-500",warning:"bg-yellow-500",danger:"bg-red-500"},$=!(f in V),O=$?"":V[f],z=$?{backgroundColor:f}:void 0,F=$?{borderColor:f}:void 0,U=$?"custom":f,j={sm:14,md:20,lg:24}[n||"md"];return jsxs("div",{className:"relative w-full",children:[u&&jsxs("div",{className:"flex justify-between mb-2 text-sm text-muted-foreground",children:[jsx("span",{children:p(C[0])}),jsx("span",{children:p(C[1])})]}),jsxs("div",{ref:v,className:m(Eb({orientation:t,size:n}),d&&"opacity-50 pointer-events-none",e),...h,children:[jsx("div",{ref:w,className:m(AT({orientation:t,size:n})),onClick:E,children:jsx("div",{className:m("absolute rounded-full",O,{"h-full":t==="horizontal","w-full":t==="vertical"}),style:t==="horizontal"?{left:`${I(C[0])}%`,right:`${100-I(C[1])}%`,top:0,bottom:0,...z}:{bottom:`${I(C[0])}%`,top:`${100-I(C[1])}%`,left:0,right:0,...z}})}),C.map((A,W)=>jsx("div",{role:"slider",tabIndex:d?-1:0,"aria-valuemin":i,"aria-valuemax":l,"aria-valuenow":A,"aria-orientation":t||void 0,"aria-disabled":d,className:m(zT({size:n,color:U}),R&&S===W&&"cursor-grabbing"),style:t==="horizontal"?{position:"absolute",left:`calc(${I(A)}% - ${j/2}px)`,top:"50%",transform:"translateY(-50%)",...F}:{position:"absolute",bottom:`calc(${I(A)}% - ${j/2}px)`,left:"50%",transform:"translateX(-50%)",...F},onPointerDown:_=>T(_,W),onPointerMove:M,onPointerUp:H,onPointerCancel:H,onKeyDown:_=>L(_,W)},W)),g&&jsxs(Fragment,{children:[jsx("input",{type:"hidden",name:`${g}[0]`,value:C[0]}),jsx("input",{type:"hidden",name:`${g}[1]`,value:C[1]})]})]})]})});Sb.displayName="RangeSlider";var Il=cva("inline-flex items-center justify-center rounded-full transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",{variants:{variant:{help:"text-muted-foreground hover:text-foreground",info:"text-blue-500 hover:text-blue-600",warning:"text-yellow-500 hover:text-yellow-600"},size:{sm:"h-4 w-4",md:"h-5 w-5",lg:"h-6 w-6"}},defaultVariants:{variant:"help",size:"md"}}),$T=cva("z-50 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none animate-in fade-in-0 zoom-in-95",{variants:{size:{sm:"w-56 text-xs",md:"w-72 text-sm",lg:"w-80 text-base"}},defaultVariants:{size:"md"}}),UT={help:HelpCircle,info:Info,warning:AlertCircle},Hb=Z.forwardRef(({variant:e="help",size:t,title:n,children:r,trigger:o,side:a="top",align:s="center",open:i,onOpenChange:l,learnMoreUrl:c,learnMoreText:d="Learn more",triggerClassName:u,contentClassName:p},f)=>{let[g,h]=Z.useState(false),[v,b]=Z.useState(false),[x,y]=Z.useState({top:0,left:0}),C=Z.useRef(null),w=Z.useRef(null),R=i!==void 0?i:g,N=Z.useCallback(P=>{i===void 0&&h(P),l?.(P);},[i,l]);Z.useEffect(()=>{b(true);},[]),Z.useEffect(()=>{if(!R||!C.current)return;let P=()=>{let T=C.current.getBoundingClientRect(),M=w.current?.getBoundingClientRect(),H=M?.width||288,E=M?.height||100,L=8,I=0,V=0;switch(a){case "top":I=T.top-E-L,V=T.left+T.width/2-H/2;break;case "bottom":I=T.bottom+L,V=T.left+T.width/2-H/2;break;case "left":I=T.top+T.height/2-E/2,V=T.left-H-L;break;case "right":I=T.top+T.height/2-E/2,V=T.right+L;break}if(a==="top"||a==="bottom")switch(s){case "start":V=T.left;break;case "center":V=T.left+T.width/2-H/2;break;case "end":V=T.right-H;break}if(a==="left"||a==="right")switch(s){case "start":I=T.top;break;case "center":I=T.top+T.height/2-E/2;break;case "end":I=T.bottom-E;break}V=Math.max(8,Math.min(V,window.innerWidth-H-8)),I=Math.max(8,Math.min(I,window.innerHeight-E-8)),y({top:I,left:V});};return P(),requestAnimationFrame(P),window.addEventListener("resize",P),window.addEventListener("scroll",P,true),()=>{window.removeEventListener("resize",P),window.removeEventListener("scroll",P,true);}},[R,a,s]),Z.useEffect(()=>{if(!R)return;let P=T=>{w.current&&!w.current.contains(T.target)&&C.current&&!C.current.contains(T.target)&&N(false);};return document.addEventListener("mousedown",P),()=>document.removeEventListener("mousedown",P)},[R,N]),Z.useEffect(()=>{if(!R)return;let P=T=>{T.key==="Escape"&&N(false);};return document.addEventListener("keydown",P),()=>document.removeEventListener("keydown",P)},[R,N]);let S=UT[e??"help"],D=()=>{N(!R);},k=()=>{switch(a){case "top":return "bottom center";case "bottom":return "top center";case "left":return "right center";case "right":return "left center";default:return "center center"}};return jsxs(Fragment,{children:[o?Z.isValidElement(o)?Z.cloneElement(o,{ref:C,onClick:P=>{o.props.onClick?.(P),D();}}):jsx("button",{ref:C,type:"button",onClick:D,className:m(Il({variant:e,size:t}),u),"aria-label":"Help",children:o}):jsx("button",{ref:P=>{C.current=P,typeof f=="function"?f(P):f&&(f.current=P);},type:"button",onClick:D,className:m(Il({variant:e,size:t}),u),"aria-label":"Help",children:jsx(S,{className:"h-full w-full"})}),v&&R&&Va.createPortal(jsxs("div",{ref:w,className:m($T({size:t}),p),style:{position:"fixed",top:x.top,left:x.left,transformOrigin:k()},role:"tooltip",children:[n&&jsx("div",{className:"mb-2 font-semibold text-foreground",children:n}),jsx("div",{className:"text-muted-foreground",children:r}),c&&jsxs("a",{href:c,target:"_blank",rel:"noopener noreferrer",className:"mt-3 inline-block text-primary hover:underline",children:[d," \u2192"]}),jsx("div",{className:"absolute h-2 w-2 rotate-45 border bg-popover",style:{...a==="top"&&{bottom:-4,left:"50%",marginLeft:-4,borderTop:"none",borderLeft:"none"},...a==="bottom"&&{top:-4,left:"50%",marginLeft:-4,borderBottom:"none",borderRight:"none"},...a==="left"&&{right:-4,top:"50%",marginTop:-4,borderBottom:"none",borderLeft:"none"},...a==="right"&&{left:-4,top:"50%",marginTop:-4,borderTop:"none",borderRight:"none"}}})]}),document.body)]})});Hb.displayName="ContextualHelp";var Ab=cva("grid",{variants:{columns:{1:"grid-cols-1",2:"grid-cols-2",3:"grid-cols-3",4:"grid-cols-4",5:"grid-cols-5",6:"grid-cols-6",auto:"grid-cols-[repeat(auto-fill,minmax(150px,1fr))]"},gap:{sm:"gap-2",md:"gap-4",lg:"gap-6"}},defaultVariants:{columns:"auto",gap:"md"}}),zb=cva("relative flex flex-col rounded-lg border transition-all cursor-pointer",{variants:{variant:{default:"hover:border-primary/50 hover:bg-accent/50",card:"bg-card shadow-sm hover:shadow-md hover:border-primary/50"},size:{sm:"p-2",md:"p-3",lg:"p-4"},isSelected:{true:"border-primary bg-accent ring-2 ring-primary/20",false:""},isDisabled:{true:"opacity-50 pointer-events-none",false:""}},defaultVariants:{variant:"default",size:"md",isSelected:false,isDisabled:false}});function Ob({className:e,columns:t,gap:n,items:r,selectedKeys:o,selectionMode:a="none",onSelectionChange:s,showSelectionIndicator:i=true,itemVariant:l="default",itemSize:c="md",renderItem:d,emptyContent:u,...p}){let[f,g]=Z.useState(new Set),h=Z.useMemo(()=>o?o instanceof Set?o:new Set(o):f,[o,f]),v=b=>{if(a==="none")return;let x;a==="single"?x=h.has(b)?new Set:new Set([b]):(x=new Set(h),x.has(b)?x.delete(b):x.add(b)),o||g(x),s?.(x);};return r.length===0?jsx("div",{className:m("flex items-center justify-center p-8 text-muted-foreground",e),children:u||"No items"}):jsx("div",{role:"grid","aria-multiselectable":a==="multiple",className:m(Ab({columns:t,gap:n,className:e})),...p,children:r.map(b=>{let x=h.has(b.key);return d?jsx("div",{role:"gridcell","aria-selected":x,onClick:()=>v(b.key),children:d(b,x)},b.key):jsxs("div",{role:"gridcell","aria-selected":x,"aria-disabled":b.isDisabled,onClick:()=>!b.isDisabled&&v(b.key),className:m(zb({variant:l,size:c,isSelected:x,isDisabled:b.isDisabled})),children:[i&&a!=="none"&&x&&jsx("div",{className:"absolute top-2 right-2 flex h-5 w-5 items-center justify-center rounded-full bg-primary text-primary-foreground",children:jsx(Check,{className:"h-3 w-3"})}),b.thumbnail&&jsx("div",{className:"mb-2 aspect-square w-full overflow-hidden rounded-md bg-muted",children:b.thumbnail}),jsxs("div",{className:"min-w-0",children:[jsx("div",{className:"truncate font-medium",children:b.label}),b.description&&jsx("div",{className:"mt-1 truncate text-sm text-muted-foreground",children:b.description})]})]},b.key)})})}Ob.displayName="GridList";var Fb=cva("relative rounded-lg overflow-hidden cursor-crosshair touch-none select-none",{variants:{size:{sm:"h-32 w-32",md:"h-48 w-48",lg:"h-64 w-64",full:"h-full w-full min-h-48"}},defaultVariants:{size:"md"}}),Vl=(e,t,n)=>{let r=o=>{let a=(o+e/60)%6;return n-n*t*Math.max(Math.min(a,4-a,1),0)};return [Math.round(r(5)*255),Math.round(r(3)*255),Math.round(r(1)*255)]},_T=(e,t,n)=>{e/=255,t/=255,n/=255;let r=Math.max(e,t,n),o=Math.min(e,t,n),a=r-o,s=0,i=r===0?0:a/r,l=r;if(a!==0)switch(r){case e:s=((t-n)/a+(t<n?6:0))*60;break;case t:s=((n-e)/a+2)*60;break;case n:s=((e-t)/a+4)*60;break}return [s,i,l]},YT=e=>{let t=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(e);return t?[parseInt(t[1],16),parseInt(t[2],16),parseInt(t[3],16)]:null},qT=(e,t,n)=>"#"+[e,t,n].map(r=>r.toString(16).padStart(2,"0")).join(""),Bb=Z.forwardRef(({hue:e,saturation:t,brightness:n,value:r,defaultValue:o="#ff0000",onChange:a,onColorChange:s,size:i,disabled:l,thumbSize:c=18,className:d,...u},p)=>{let f=Z.useRef(null),[g,h]=Z.useState(false),v=Z.useCallback(O=>{let z=YT(O);return z?_T(...z):[0,1,1]},[]),[b,x]=Z.useState(()=>v(r||o)),y=e??b[0],C=t??b[1],w=n??b[2];Z.useEffect(()=>{if(r){let O=v(r);x(O);}},[r,v]);let R=Z.useCallback((O,z)=>{if(l||!f.current)return;let F=f.current.getBoundingClientRect(),U=Math.max(0,Math.min(1,(O-F.left)/F.width)),j=Math.max(0,Math.min(1,(z-F.top)/F.height)),A=U,W=1-j;t===void 0&&n===void 0&&x([y,A,W]),a?.({hue:y,saturation:A,brightness:W});let _=Vl(y,A,W);s?.(qT(..._));},[l,y,t,n,a,s]),N=O=>{l||(O.preventDefault(),h(true),O.target.setPointerCapture(O.pointerId),R(O.clientX,O.clientY));},S=O=>{g&&R(O.clientX,O.clientY);},D=O=>{h(false),O.target.releasePointerCapture(O.pointerId);},[k,P,T]=Vl(y,1,1),M=`rgb(${k}, ${P}, ${T})`,H=C*100,E=(1-w)*100,[L,I,V]=Vl(y,C,w),$=`rgb(${L}, ${I}, ${V})`;return jsx("div",{ref:p,className:m(Fb({size:i}),l&&"cursor-not-allowed opacity-50",d),...u,children:jsxs("div",{ref:f,className:"absolute inset-0",style:{backgroundColor:M},onPointerDown:N,onPointerMove:S,onPointerUp:D,onPointerLeave:D,children:[jsx("div",{className:"absolute inset-0",style:{background:"linear-gradient(to right, white, transparent)"}}),jsx("div",{className:"absolute inset-0",style:{background:"linear-gradient(to bottom, transparent, black)"}}),jsx("div",{className:"absolute rounded-full border-2 border-white pointer-events-none",style:{width:c,height:c,left:`calc(${H}% - ${c/2}px)`,top:`calc(${E}% - ${c/2}px)`,backgroundColor:$,boxShadow:"0 0 0 1px rgba(0,0,0,0.1), 0 2px 4px rgba(0,0,0,0.2)"}})]})})});Bb.displayName="ColorArea";var $b=cva("relative rounded-full cursor-pointer touch-none select-none",{variants:{orientation:{horizontal:"w-full",vertical:"h-full"},size:{sm:"",md:"",lg:""}},compoundVariants:[{orientation:"horizontal",size:"sm",className:"h-3"},{orientation:"horizontal",size:"md",className:"h-4"},{orientation:"horizontal",size:"lg",className:"h-5"},{orientation:"vertical",size:"sm",className:"w-3"},{orientation:"vertical",size:"md",className:"w-4"},{orientation:"vertical",size:"lg",className:"w-5"}],defaultVariants:{orientation:"horizontal",size:"md"}}),JT=`url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3E%3Cg fill='%23ccc'%3E%3Crect width='4' height='4'/%3E%3Crect x='4' y='4' width='4' height='4'/%3E%3C/g%3E%3C/svg%3E")`,Kb="linear-gradient(to right, #ff0000, #ffff00, #00ff00, #00ffff, #0000ff, #ff00ff, #ff0000)",Ub=Z.forwardRef(({value:e,defaultValue:t,onChange:n,channel:r="hue",baseColor:o="#ff0000",orientation:a,size:s,disabled:i,thumbSize:l=18,showBorder:c=true,className:d,...u},p)=>{let f=Z.useRef(null),[g,h]=Z.useState(false),v=()=>{switch(r){case "hue":return 0;case "alpha":case "saturation":case "brightness":return 1;default:return 0}},[b,x]=Z.useState(t??v()),y=e??b,C=r==="hue"?y/360:y,w=Z.useCallback((M,H)=>{if(i||!f.current)return;let E=f.current.getBoundingClientRect(),L=a!=="vertical",I;L?I=Math.max(0,Math.min(1,(M-E.left)/E.width)):I=Math.max(0,Math.min(1,1-(H-E.top)/E.height));let V=r==="hue"?I*360:I;e===void 0&&x(V),n?.(V);},[i,a,r,e,n]),R=M=>{i||(M.preventDefault(),h(true),M.target.setPointerCapture(M.pointerId),w(M.clientX,M.clientY));},N=M=>{g&&w(M.clientX,M.clientY);},S=M=>{h(false),M.target.releasePointerCapture(M.pointerId);},D=()=>{let M=a!=="vertical",H=M?"to right":"to top";switch(r){case "hue":return M?Kb:"linear-gradient(to top, #ff0000, #ffff00, #00ff00, #00ffff, #0000ff, #ff00ff, #ff0000)";case "alpha":return `linear-gradient(${H}, transparent, ${o})`;case "saturation":return `linear-gradient(${H}, #808080, ${o})`;case "brightness":return `linear-gradient(${H}, #000000, ${o})`;default:return Kb}},k=()=>r==="hue"?`hsl(${y}, 100%, 50%)`:o,P=a!=="vertical",T=C*100;return jsx("div",{ref:p,className:m($b({orientation:a,size:s}),i&&"cursor-not-allowed opacity-50",d),...u,children:jsxs("div",{ref:f,className:m("absolute inset-0 rounded-full overflow-hidden",c&&"border border-input"),style:{backgroundImage:r==="alpha"?JT:void 0,backgroundSize:r==="alpha"?"8px 8px":void 0},onPointerDown:R,onPointerMove:N,onPointerUp:S,onPointerLeave:S,children:[jsx("div",{className:"absolute inset-0 rounded-full",style:{background:D()}}),jsx("div",{className:"absolute rounded-full border-2 border-white shadow-md pointer-events-none",style:{width:l,height:l,...P?{left:`calc(${T}% - ${l/2}px)`,top:"50%",transform:"translateY(-50%)"}:{bottom:`calc(${T}% - ${l/2}px)`,left:"50%",transform:"translateX(-50%)"},backgroundColor:k(),boxShadow:"0 0 0 1px rgba(0,0,0,0.2), 0 2px 4px rgba(0,0,0,0.2)"}})]})})});Ub.displayName="ColorSlider";var Gb=cva("relative cursor-crosshair touch-none select-none",{variants:{size:{sm:"h-32 w-32",md:"h-48 w-48",lg:"h-64 w-64"}},defaultVariants:{size:"md"}}),tM=(e,t,n)=>{let r=e-n,o=t-n,a=Math.atan2(o,r)*180/Math.PI+90;return a<0&&(a+=360),a},jb=Z.forwardRef(({value:e,defaultValue:t=0,onChange:n,size:r,disabled:o,innerRadius:a=.6,thumbSize:s=20,showCenter:i=true,className:l,...c},d)=>{let u=Z.useRef(null),[p,f]=Z.useState(false),[g,h]=Z.useState(t),v=e??g,b=Z.useCallback((R,N)=>{if(o||!u.current)return;let S=u.current.getBoundingClientRect(),D=S.width/2,k=R-S.left,P=N-S.top,T=tM(k,P,D);e===void 0&&h(T),n?.(T);},[o,e,n]),x=R=>{o||(R.preventDefault(),f(true),R.target.setPointerCapture(R.pointerId),b(R.clientX,R.clientY));},y=R=>{p&&b(R.clientX,R.clientY);},C=R=>{f(false),R.target.releasePointerCapture(R.pointerId);},w=()=>{let R=[];for(let N=0;N<=360;N+=30)R.push(`hsl(${N}, 100%, 50%) ${N}deg`);return `conic-gradient(from 270deg, ${R.join(", ")})`};return jsx("div",{ref:d,className:m(Gb({size:r}),o&&"cursor-not-allowed opacity-50",l),...c,children:jsxs("div",{ref:u,className:"absolute inset-0 rounded-full",style:{background:w()},onPointerDown:x,onPointerMove:y,onPointerUp:C,onPointerLeave:C,children:[a<1&&jsx("div",{className:"absolute bg-background rounded-full",style:{top:`${(1-a)*50}%`,left:`${(1-a)*50}%`,width:`${a*100}%`,height:`${a*100}%`}}),i&&a<1&&jsx("div",{className:"absolute rounded-full border-2 border-input bg-background",style:{width:8,height:8,top:"50%",left:"50%",transform:"translate(-50%, -50%)"}}),jsx(nM,{hue:v,innerRadius:a,thumbSize:s})]})})});jb.displayName="ColorWheel";var nM=({hue:e,innerRadius:t,thumbSize:n})=>{let r=(1-(1-t)/2)*50,o=(e-90)*Math.PI/180,a=50+r*Math.cos(o),s=50+r*Math.sin(o);return jsx("div",{className:"absolute rounded-full border-2 border-white shadow-md pointer-events-none",style:{width:n,height:n,left:`calc(${a}% - ${n/2}px)`,top:`calc(${s}% - ${n/2}px)`,backgroundColor:`hsl(${e}, 100%, 50%)`,boxShadow:"0 0 0 1px rgba(0,0,0,0.2), 0 2px 4px rgba(0,0,0,0.2)"}})};var Wb={Pages:jsx(File,{className:"h-4 w-4"}),Files:jsx(Folder,{className:"h-4 w-4"}),Settings:jsx(Settings,{className:"h-4 w-4"}),Users:jsx(User,{className:"h-4 w-4"}),Tags:jsx(Hash,{className:"h-4 w-4"})},qb=Z.forwardRef(({open:e,onOpenChange:t,items:n=[],recentItems:r=[],placeholder:o="Search...",isLoading:a,emptyMessage:s="No results found.",filter:i,shortcut:l="\u2318K",onSelect:c,footer:d},u)=>{let[p,f]=Z.useState(""),g=Z.useRef(null),[h,v]=Z.useState(false);Z.useEffect(()=>{v(true);},[]),Z.useEffect(()=>{e||f("");},[e]),Z.useEffect(()=>{if(!e)return;let R=N=>{N.key==="Escape"&&t?.(false);};return document.addEventListener("keydown",R),()=>document.removeEventListener("keydown",R)},[e,t]),Z.useEffect(()=>{if(e)return In(),()=>Vn()},[e]);let b=Z.useMemo(()=>{let R={};return n.forEach(N=>{let S=N.category||"Results";R[S]||(R[S]=[]),R[S].push(N);}),R},[n]),x=R=>{R.onSelect?.(),c?.(R),t?.(false);},y=()=>{t?.(false);},C=p.length>0,w=!C&&r.length>0;return !h||!e?null:Va.createPortal(jsxs(Fragment,{children:[jsx("div",{className:"fixed inset-0 z-50 bg-black/50 backdrop-blur-sm data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0","data-state":e?"open":"closed",onClick:y}),jsx("div",{ref:u,className:"fixed left-1/2 top-[20%] z-50 w-full max-w-2xl -translate-x-1/2 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=open]:slide-in-from-left-1/2","data-state":e?"open":"closed",children:jsxs(Command,{className:"overflow-hidden rounded-xl border bg-background shadow-2xl",filter:i,shouldFilter:!i,children:[jsxs("div",{className:"flex items-center border-b px-4",children:[jsx(Search,{className:"h-5 w-5 shrink-0 text-muted-foreground"}),jsx(Command.Input,{ref:g,value:p,onValueChange:f,placeholder:o,className:"flex h-14 w-full bg-transparent px-4 py-4 text-base outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50"}),p&&jsx("button",{type:"button",onClick:()=>f(""),className:"rounded-sm p-1 text-muted-foreground hover:text-foreground",children:jsx(X,{className:"h-4 w-4"})})]}),jsx(Command.List,{className:"max-h-[400px] overflow-y-auto p-2",children:a?jsx("div",{className:"flex items-center justify-center py-10",children:jsx("div",{className:"h-6 w-6 animate-spin rounded-full border-2 border-primary border-t-transparent"})}):jsxs(Fragment,{children:[w&&jsxs(Command.Group,{heading:"Recent",children:[jsx("div",{className:"px-2 py-1.5 text-xs font-medium text-muted-foreground",children:"Recent"}),r.map(R=>jsxs(Command.Item,{value:R.label,onSelect:()=>x(R),className:"flex cursor-pointer items-center gap-3 rounded-lg px-3 py-2.5 text-sm aria-selected:bg-muted",children:[jsx("span",{className:"flex h-8 w-8 shrink-0 items-center justify-center rounded-md bg-muted",children:R.icon||Wb[R.category||""]||jsx(File,{className:"h-4 w-4"})}),jsxs("div",{className:"flex-1 overflow-hidden",children:[jsx("div",{className:"truncate font-medium",children:R.label}),R.description&&jsx("div",{className:"truncate text-xs text-muted-foreground",children:R.description})]}),R.shortcut&&jsx("div",{className:"flex items-center gap-1",children:R.shortcut.map((N,S)=>jsx("kbd",{className:"rounded bg-muted px-1.5 py-0.5 text-xs font-medium",children:N},S))})]},R.id))]}),C&&Object.entries(b).map(([R,N])=>jsxs(Command.Group,{heading:R,children:[jsx("div",{className:"px-2 py-1.5 text-xs font-medium text-muted-foreground",children:R}),N.map(S=>jsxs(Command.Item,{value:`${S.label} ${S.keywords?.join(" ")||""}`,onSelect:()=>x(S),className:"flex cursor-pointer items-center gap-3 rounded-lg px-3 py-2.5 text-sm aria-selected:bg-muted",children:[jsx("span",{className:"flex h-8 w-8 shrink-0 items-center justify-center rounded-md bg-muted",children:S.icon||Wb[R]||jsx(File,{className:"h-4 w-4"})}),jsxs("div",{className:"flex-1 overflow-hidden",children:[jsx("div",{className:"truncate font-medium",children:S.label}),S.description&&jsx("div",{className:"truncate text-xs text-muted-foreground",children:S.description})]}),jsx(ArrowRight,{className:"h-4 w-4 text-muted-foreground opacity-0 group-aria-selected:opacity-100"})]},S.id))]},R)),jsx(Command.Empty,{className:"py-10 text-center text-sm text-muted-foreground",children:s})]})}),d?jsx("div",{className:"border-t px-4 py-3",children:d}):jsxs("div",{className:"flex items-center justify-between border-t px-4 py-3 text-xs text-muted-foreground",children:[jsxs("div",{className:"flex items-center gap-4",children:[jsxs("span",{className:"flex items-center gap-1",children:[jsx("kbd",{className:"rounded bg-muted px-1.5 py-0.5 font-medium",children:"\u2191\u2193"}),"Navigate"]}),jsxs("span",{className:"flex items-center gap-1",children:[jsx("kbd",{className:"rounded bg-muted px-1.5 py-0.5 font-medium",children:"\u21B5"}),"Select"]}),jsxs("span",{className:"flex items-center gap-1",children:[jsx("kbd",{className:"rounded bg-muted px-1.5 py-0.5 font-medium",children:"Esc"}),"Close"]})]}),jsxs("span",{className:"flex items-center gap-1",children:["Press ",jsx("kbd",{className:"rounded bg-muted px-1.5 py-0.5 font-medium",children:l})," to open"]})]})]})})]}),document.body)});qb.displayName="SpotlightSearch";function uM(e="k"){let[t,n]=Z.useState(false);return Z.useEffect(()=>{let r=o=>{(o.metaKey||o.ctrlKey)&&o.key===e&&(o.preventDefault(),n(a=>!a));};return document.addEventListener("keydown",r),()=>document.removeEventListener("keydown",r)},[e]),{open:t,setOpen:n,toggle:()=>n(r=>!r)}}var Xb=cva("relative flex items-center justify-center gap-3 px-4 py-2.5 text-sm",{variants:{variant:{solid:"",flat:""},type:{default:"",success:"",warning:"",error:""},position:{top:"fixed top-0 left-0 right-0 z-50",relative:"relative"}},compoundVariants:[{variant:"solid",type:"default",className:"bg-primary text-primary-foreground [&>svg]:text-primary-foreground"},{variant:"flat",type:"default",className:"bg-primary/10 text-primary [&>svg]:text-primary"},{variant:"solid",type:"success",className:"bg-green-600 text-white dark:bg-green-500 [&>svg]:text-white"},{variant:"flat",type:"success",className:"bg-green-600/10 text-green-600 dark:bg-green-500/10 dark:text-green-500 [&>svg]:text-green-600 dark:[&>svg]:text-green-500"},{variant:"solid",type:"warning",className:"bg-amber-600 text-white dark:bg-amber-500 [&>svg]:text-white"},{variant:"flat",type:"warning",className:"bg-amber-600/10 text-amber-600 dark:bg-amber-500/10 dark:text-amber-500 [&>svg]:text-amber-600 dark:[&>svg]:text-amber-500"},{variant:"solid",type:"error",className:"bg-red-600 text-white dark:bg-red-500 [&>svg]:text-white"},{variant:"flat",type:"error",className:"bg-red-600/10 text-red-600 dark:bg-red-500/10 dark:text-red-500 [&>svg]:text-red-600 dark:[&>svg]:text-red-500"}],defaultVariants:{variant:"solid",type:"default",position:"relative"}}),hM={default:Info,success:CheckCircle2,warning:AlertTriangle,error:AlertCircle},Zb=Z.forwardRef(({message:e,type:t="default",variant:n="solid",showIcon:r=false,icon:o,dismissible:a=true,onDismiss:s,endContent:i,position:l,animate:c,autoDismiss:d,storageKey:u,className:p,...f},g)=>{let[h,v]=Z.useState(true),[b,x]=Z.useState(false);Z.useEffect(()=>{u&&localStorage.getItem(`banner-${u}`)==="true"&&v(false);},[u]),Z.useEffect(()=>{if(d&&h){let R=setTimeout(()=>{y();},d);return ()=>clearTimeout(R)}},[d,h]);let y=()=>{x(true),setTimeout(()=>{v(false),u&&localStorage.setItem(`banner-${u}`,"true"),s?.();},200);};if(!h)return null;let C=hM[t],w=r?o!==void 0?o:C?jsx(C,{className:"h-4 w-4"}):null:null;return jsxs("div",{ref:g,className:m(Xb({variant:n,type:t,position:l}),c&&"animate-pulse",b&&"animate-out fade-out slide-out-to-top duration-200",p),role:"banner",...f,children:[w&&jsx("span",{className:"shrink-0",children:w}),jsx("span",{className:"text-center font-medium",children:e}),i&&jsx("div",{className:"shrink-0 ml-2",children:i}),a&&jsx("button",{type:"button",onClick:y,className:m("absolute right-2 top-1/2 -translate-y-1/2 rounded-sm p-1 transition-opacity hover:opacity-70 cursor-pointer",l==="relative"&&"right-4"),"aria-label":"Dismiss banner",children:jsx(X,{className:"h-4 w-4"})})]})});Zb.displayName="Banner";var ua=cva("inline-flex items-center justify-center rounded-full shadow-lg transition-all cursor-pointer focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",{variants:{variant:{solid:"bg-primary text-primary-foreground hover:bg-primary/90",bordered:"border border-zinc-300 dark:border-zinc-700 bg-transparent text-primary hover:opacity-70",light:"bg-transparent text-primary hover:bg-primary/10",flat:"bg-primary/20 text-primary hover:opacity-70",ghost:"border border-zinc-300 dark:border-zinc-700 bg-transparent text-primary hover:bg-primary hover:text-primary-foreground hover:border-primary"},size:{sm:"h-10 w-10",md:"h-14 w-14",lg:"h-16 w-16"},position:{"bottom-right":"fixed bottom-6 right-6","bottom-left":"fixed bottom-6 left-6","bottom-center":"fixed bottom-6 left-1/2 -translate-x-1/2",relative:"relative"}},defaultVariants:{variant:"solid",size:"md",position:"bottom-right"}}),RM=cva("transition-transform duration-200 [&>svg]:h-full [&>svg]:w-full",{variants:{size:{sm:"h-5 w-5",md:"h-6 w-6",lg:"h-8 w-8"}},defaultVariants:{size:"md"}}),Fl=Z.forwardRef(({icon:e,label:t="Action button",extended:n,extendedLabel:r,actions:o,direction:a="up",showTooltip:s=true,closeIcon:i,animation:l="rotate",variant:c,size:d,position:u,className:p,onClick:f,disabled:g,...h},v)=>{let[b,x]=Z.useState(false),y=o&&o.length>0,C=D=>{y&&x(!b),f?.(D);},w=D=>{D.onClick?.(),x(false);},R={up:{container:"flex-col-reverse bottom-full mb-3 gap-3",item:""},down:{container:"flex-col top-full mt-3 gap-3",item:""},left:{container:"flex-row-reverse right-full mr-3 gap-3",item:""},right:{container:"flex-row left-full ml-3 gap-3",item:""}},N=l==="rotate"&&b?"rotate-45":"",S=l==="scale"&&b?"scale-0":"scale-100";return jsxs("div",{className:m("relative z-50",u!=="relative"&&u&&ua({position:u})),children:[y&&b&&jsx("div",{className:m("absolute left-1/2 -translate-x-1/2 flex items-center",R[a].container),children:o.map((D,k)=>jsxs("div",{className:m("flex items-center gap-2 animate-in fade-in zoom-in duration-200",a==="up"||a==="down"?"flex-row":"flex-col"),style:{animationDelay:`${k*50}ms`},children:[s&&(a==="up"||a==="down")&&jsx("span",{className:"rounded-md bg-popover px-2 py-1 text-xs font-medium text-popover-foreground shadow-md whitespace-nowrap",children:D.label}),D.href?jsx("a",{href:D.href,className:m(ua({variant:D.variant||"flat",size:d==="lg"?"md":"sm",position:"relative"}),"[&>svg]:h-5 [&>svg]:w-5"),"aria-label":D.label,children:D.icon}):jsx("button",{type:"button",onClick:()=>w(D),className:m(ua({variant:D.variant||"flat",size:d==="lg"?"md":"sm",position:"relative"}),"[&>svg]:h-5 [&>svg]:w-5"),"aria-label":D.label,children:D.icon}),s&&(a==="left"||a==="right")&&jsx("span",{className:"rounded-md bg-popover px-2 py-1 text-xs font-medium text-popover-foreground shadow-md whitespace-nowrap",children:D.label})]},D.id))}),jsxs("button",{ref:v,type:"button",onClick:C,disabled:g,className:m(ua({variant:c,size:d,position:"relative"}),n&&"w-auto px-6 gap-2",p),"aria-label":t,"aria-expanded":y?b:void 0,...h,children:[b&&i?i:jsx("span",{className:m(RM({size:d}),N,S,"transition-all duration-200"),children:e||jsx(Plus,{})}),n&&r&&jsx("span",{className:"font-medium",children:r})]}),y&&b&&jsx("div",{className:"fixed inset-0 -z-10",onClick:()=>x(false)})]})});Fl.displayName="FloatingActionButton";var wM=Fl;var nv=cva("fixed bottom-0 left-0 right-0 z-50 flex items-center justify-around border-t bg-background safe-area-pb",{variants:{variant:{default:"border-border",elevated:"border-transparent shadow-[0_-4px_6px_-1px_rgba(0,0,0,0.1)]",filled:"border-transparent bg-primary text-primary-foreground"},size:{sm:"h-14",md:"h-16",lg:"h-20"}},defaultVariants:{variant:"default",size:"md"}}),Qb=cva("flex flex-1 flex-col items-center justify-center gap-1 transition-colors cursor-pointer",{variants:{variant:{default:"",elevated:"",filled:""}},defaultVariants:{variant:"default"}}),rv=Z.forwardRef(({className:e,variant:t,size:n,items:r,value:o,defaultValue:a,onValueChange:s,showLabels:i="all",renderItem:l,...c},d)=>{let[u,p]=Z.useState(a||r[0]?.key),f=o!==void 0,g=f?o:u,h=y=>{y.isDisabled||(f||p(y.key),s?.(y.key));},v=y=>t==="filled"?y?"text-primary-foreground":"text-primary-foreground/60 hover:text-primary-foreground/80":y?"text-primary":"text-muted-foreground hover:text-foreground",b=()=>{switch(n){case "sm":return "h-5 w-5";case "lg":return "h-7 w-7";default:return "h-6 w-6"}},x=()=>{switch(n){case "sm":return "text-[10px]";case "lg":return "text-sm";default:return "text-xs"}};return jsx("nav",{ref:d,className:m(nv({variant:t,size:n}),e),role:"navigation","aria-label":"Bottom navigation",...c,children:r.map(y=>{let C=g===y.key,w=i==="all"||i==="active"&&C,R=C&&y.activeIcon?y.activeIcon:y.icon;if(l)return jsx("div",{onClick:()=>h(y),className:m(Qb({variant:t}),y.isDisabled&&"opacity-50 cursor-not-allowed"),children:l(y,C)},y.key);let N=jsxs("div",{onClick:()=>!y.href&&h(y),className:m(Qb({variant:t}),v(C),y.isDisabled&&"opacity-50 cursor-not-allowed"),role:"button","aria-current":C?"page":void 0,"aria-disabled":y.isDisabled,tabIndex:y.isDisabled?-1:0,onKeyDown:S=>{(S.key==="Enter"||S.key===" ")&&(S.preventDefault(),h(y));},children:[jsxs("div",{className:"relative",children:[jsx("span",{className:m(b(),"[&>svg]:h-full [&>svg]:w-full"),children:R}),y.badge!==void 0&&y.badge>0&&jsx("span",{className:"absolute -top-1 -right-1 flex h-4 min-w-4 items-center justify-center rounded-full bg-red-500 px-1 text-[10px] font-medium text-white",children:y.badge>99?"99+":y.badge}),y.showDot&&jsx("span",{className:"absolute -top-0.5 -right-0.5 h-2 w-2 rounded-full bg-red-500"})]}),w&&y.label&&jsx("span",{className:m(x(),"font-medium truncate max-w-full px-1"),children:y.label})]},y.key);return y.href&&!y.isDisabled?jsx("a",{href:y.href,onClick:()=>h(y),className:m("flex flex-1 flex-col items-center justify-center gap-1 no-underline",v(C)),children:N},y.key):N})})});rv.displayName="BottomNavigation";var TM="fixed inset-x-0 bottom-0 z-50 mt-24 flex h-fit max-h-[90vh] flex-col rounded-t-[20px] border-t border-border/40 dark:border-border/20 bg-background",av=cva("flex w-full items-center gap-3 px-4 py-3.5 text-left transition-colors focus-visible:outline-none focus-visible:bg-accent disabled:pointer-events-none disabled:opacity-50",{variants:{variant:{default:"hover:bg-accent",destructive:"text-danger hover:bg-destructive/10"}},defaultVariants:{variant:"default"}}),sv=Z.forwardRef(({open:e,onOpenChange:t,trigger:n,title:r,description:o,items:a,cancelLabel:s="Cancel",onCancel:i,showCancel:l=true,children:c,closeOnSelect:d=true,onAction:u},p)=>{let f=g=>{g.isDisabled||(g.onSelect?.(),u?.(g.key),d&&t?.(false));};return jsxs(Drawer.Root,{open:e,onOpenChange:t,children:[n&&jsx(Drawer.Trigger,{asChild:true,children:n}),jsxs(Drawer.Portal,{children:[jsx(Drawer.Overlay,{className:"fixed inset-0 z-50 bg-black/40"}),jsxs(Drawer.Content,{ref:p,className:TM,children:[jsx("div",{className:"mx-auto mt-4 h-1.5 w-12 flex-shrink-0 rounded-full bg-muted"}),(r||o)&&jsxs("div",{className:"px-4 py-3 text-center",children:[r&&jsx(Drawer.Title,{className:"text-base font-semibold",children:r}),o&&jsx(Drawer.Description,{className:"mt-1 text-sm text-muted-foreground",children:o})]}),jsx("div",{className:"flex-1 overflow-y-auto",children:c||jsx("div",{className:"divide-y divide-border/40 dark:divide-border/20",children:a?.map(g=>jsxs("button",{type:"button",disabled:g.isDisabled,onClick:()=>f(g),className:m(av({variant:g.isDestructive?"destructive":"default"})),children:[g.icon&&jsx("span",{className:"h-5 w-5 flex-shrink-0 [&>svg]:h-full [&>svg]:w-full",children:g.icon}),jsxs("div",{className:"flex-1 min-w-0",children:[jsx("div",{className:"font-medium",children:g.label}),g.description&&jsx("div",{className:"text-sm text-muted-foreground truncate",children:g.description})]})]},g.key))})}),l&&jsx("div",{className:"border-t border-border/40 dark:border-border/20 p-2 pb-safe",children:jsx(Drawer.Close,{asChild:true,children:jsx("button",{type:"button",onClick:i,className:"w-full rounded-lg bg-muted py-3.5 text-center font-semibold transition-colors hover:bg-muted/80",children:s})})})]})]})]})});sv.displayName="ActionSheet";var lv=cva("relative overflow-hidden touch-pan-y",{variants:{variant:{default:"",card:"rounded-lg border bg-card"}},defaultVariants:{variant:"default"}}),Kl=cva("flex h-full items-center justify-center px-4 text-white font-medium transition-opacity",{variants:{variant:{primary:"bg-primary",secondary:"bg-secondary text-secondary-foreground",success:"bg-green-500",warning:"bg-yellow-500",danger:"bg-red-500"},size:{sm:"min-w-16",md:"min-w-20",lg:"min-w-24"}},defaultVariants:{variant:"primary",size:"md"}}),cv=Z.forwardRef(({className:e,variant:t,leftActions:n=[],rightActions:r=[],actionSize:o="md",threshold:a=.3,onSwipeEnd:s,disabled:i=false,fullSwipeAction:l,children:c,...d},u)=>{let p=Z.useRef(null),[f,g]=Z.useState(0),[h,v]=Z.useState(false),b=Z.useRef(0),x=Z.useRef(0),y=n.length*(o==="sm"?64:o==="lg"?96:80),C=r.length*(o==="sm"?64:o==="lg"?96:80),w=k=>{i||(v(true),b.current=k.touches[0].clientX,x.current=f);},R=k=>{if(!h||i)return;let T=k.touches[0].clientX-b.current,M=x.current+T;(M>0&&n.length===0||M<0&&r.length===0)&&(M=0),M>y?M=y+(M-y)*.3:M<-C&&(M=-C+(M+C)*.3),g(M);},N=()=>{if(!h)return;v(false);let k=p.current?.offsetWidth||0,P=Math.abs(f)/k;if(l&&P>.6){l==="right"&&f>0&&n[0]?(n[0].onAction?.(),s?.("right",n[0].key)):l==="left"&&f<0&&r[0]&&(r[0].onAction?.(),s?.("left",r[0].key)),g(0);return}f>y*a&&n.length>0?(g(y),s?.("right")):f<-C*a&&r.length>0?(g(-C),s?.("left")):g(0);},S=(k,P)=>{k.onAction?.(),s?.(P,k.key),g(0);},D=()=>{g(0);};return jsxs("div",{ref:u,className:m(lv({variant:t,className:e})),...d,children:[n.length>0&&f>0&&jsx("div",{className:"absolute left-0 top-0 bottom-0 flex",style:{width:y},children:n.map(k=>jsxs("button",{type:"button",onClick:()=>S(k,"right"),className:m(Kl({variant:k.variant,size:o})),style:{opacity:Math.min(1,f/y)},children:[k.icon&&jsx("span",{className:"h-5 w-5 [&>svg]:h-full [&>svg]:w-full",children:k.icon}),!k.icon&&k.label]},k.key))}),r.length>0&&f<0&&jsx("div",{className:"absolute right-0 top-0 bottom-0 flex",style:{width:C},children:r.map(k=>jsxs("button",{type:"button",onClick:()=>S(k,"left"),className:m(Kl({variant:k.variant,size:o})),style:{opacity:Math.min(1,Math.abs(f)/C)},children:[k.icon&&jsx("span",{className:"h-5 w-5 [&>svg]:h-full [&>svg]:w-full",children:k.icon}),!k.icon&&k.label]},k.key))}),jsx("div",{ref:p,className:m("relative bg-background",h?"":"transition-transform duration-200"),style:{transform:`translateX(${f}px)`},onTouchStart:w,onTouchMove:R,onTouchEnd:N,onClick:f!==0?D:void 0,children:c})]})});cv.displayName="SwipeActions";var uv=cva("relative overflow-hidden",{variants:{variant:{default:"",contained:"h-full"}},defaultVariants:{variant:"default"}}),NM=cva("absolute left-1/2 -translate-x-1/2 flex items-center justify-center transition-all duration-200",{variants:{size:{sm:"h-8 w-8",md:"h-10 w-10",lg:"h-12 w-12"}},defaultVariants:{size:"md"}}),mv=Z.forwardRef(({className:e,variant:t,onRefresh:n,pullThreshold:r=80,maxPullDistance:o=120,loadingIndicator:a,pullIndicator:s,indicatorSize:i="md",disabled:l=false,pullText:c="Pull to refresh",releaseText:d="Release to refresh",refreshingText:u="Refreshing...",children:p,...f},g)=>{let h=Z.useRef(null),[v,b]=Z.useState(0),[x,y]=Z.useState("idle"),C=Z.useRef(0),w=Z.useRef(false),R=()=>l||x==="refreshing"?false:(h.current?.scrollTop??window.scrollY)<=0,N=T=>{R()&&(C.current=T.touches[0].clientY,w.current=true);},S=T=>{if(!w.current||!R())return;let H=T.touches[0].clientY-C.current;if(H<0){b(0),y("idle");return}let L=Math.min(H*.5,o);b(L),y(L>=r?"ready":"pulling");},D=async()=>{if(w.current)if(w.current=false,x==="ready"){y("refreshing"),b(r*.6);try{await n();}finally{y("idle"),b(0);}}else y("idle"),b(0);},k={sm:"h-4 w-4",md:"h-5 w-5",lg:"h-6 w-6"}[i],P=()=>{if(x==="refreshing")return a||jsxs("div",{className:"flex flex-col items-center gap-1",children:[jsx(Loader2,{className:m(k,"animate-spin text-primary")}),jsx("span",{className:"text-xs text-muted-foreground",children:u})]});let T=Math.min(v/r*180,180);return s||jsxs("div",{className:"flex flex-col items-center gap-1",children:[jsx(ArrowDown,{className:m(k,"text-muted-foreground transition-transform"),style:{transform:`rotate(${T}deg)`}}),jsx("span",{className:"text-xs text-muted-foreground",children:x==="ready"?d:c})]})};return jsxs("div",{ref:g,className:m(uv({variant:t,className:e})),...f,children:[jsx("div",{className:m(NM({size:i}),"z-10",x==="idle"&&v===0&&"opacity-0"),style:{top:Math.max(v-60,-60),opacity:Math.min(v/(r*.5),1)},children:P()}),jsx("div",{ref:h,className:m("transition-transform duration-200",x==="refreshing"&&"ease-out"),style:{transform:`translateY(${v}px)`,transition:w.current?"none":void 0},onTouchStart:N,onTouchMove:S,onTouchEnd:D,children:p})]})});mv.displayName="PullToRefresh";var jr=(e,t,n)=>({duration:e,delay:t,ease:n||[.4,0,.2,1]}),PM={hidden:e=>({opacity:e}),visible:{opacity:1},exit:e=>({opacity:e})},pv=Z.forwardRef(({show:e=true,children:t,duration:n=.3,delay:r=0,ease:o,className:a,unmountOnExit:s=true,initialOpacity:i=0,onAnimationStart:l,onAnimationComplete:c},d)=>{let u=jsx(motion.div,{ref:d,initial:"hidden",animate:e?"visible":"hidden",exit:s?"exit":void 0,variants:PM,custom:i,transition:jr(n,r,o),className:m(a),onAnimationStart:l,onAnimationComplete:c,children:t});return s?jsx(AnimatePresence,{children:e&&u}):u});pv.displayName="Fade";var EM=(e,t)=>{let n=typeof t=="number"?`${t}px`:t,r={up:{y:n},down:{y:`-${n}`},left:{x:n},right:{x:`-${n}`}};return {hidden:{opacity:0,...r[e]},visible:{opacity:1,x:0,y:0},exit:{opacity:0,...r[e]}}},fv=Z.forwardRef(({show:e=true,children:t,duration:n=.3,delay:r=0,ease:o,className:a,unmountOnExit:s=true,direction:i="up",offset:l=20,onAnimationStart:c,onAnimationComplete:d},u)=>{let p=Z.useMemo(()=>EM(i,l),[i,l]),f=jsx(motion.div,{ref:u,initial:"hidden",animate:e?"visible":"hidden",exit:s?"exit":void 0,variants:p,transition:jr(n,r,o),className:m(a),onAnimationStart:c,onAnimationComplete:d,children:t});return s?jsx(AnimatePresence,{children:e&&f}):f});fv.displayName="Slide";var SM={center:"center center",top:"center top",bottom:"center bottom",left:"left center",right:"right center","top-left":"left top","top-right":"right top","bottom-left":"left bottom","bottom-right":"right bottom"},LM={hidden:e=>({opacity:0,scale:e}),visible:{opacity:1,scale:1},exit:e=>({opacity:0,scale:e})},gv=Z.forwardRef(({show:e=true,children:t,duration:n=.3,delay:r=0,ease:o,className:a,unmountOnExit:s=true,initialScale:i=.9,origin:l="center",onAnimationStart:c,onAnimationComplete:d},u)=>{let p=jsx(motion.div,{ref:u,initial:"hidden",animate:e?"visible":"hidden",exit:s?"exit":void 0,variants:LM,custom:i,transition:jr(n,r,o),className:m(a),style:{transformOrigin:SM[l]},onAnimationStart:c,onAnimationComplete:d,children:t});return s?jsx(AnimatePresence,{children:e&&p}):p});gv.displayName="Scale";var bv=Z.forwardRef(({show:e=true,children:t,duration:n=.3,delay:r=0,ease:o,className:a,horizontal:s=false,startingSize:i=0,animateOpacity:l=true,onAnimationStart:c,onAnimationComplete:d},u)=>{let p=s?"width":"height",f={hidden:{[p]:i,opacity:l?0:1},visible:{[p]:"auto",opacity:1},exit:{[p]:i,opacity:l?0:1}};return jsx(AnimatePresence,{initial:false,children:e&&jsx(motion.div,{ref:u,initial:"hidden",animate:"visible",exit:"exit",variants:f,transition:jr(n,r,o),className:m("overflow-hidden",a),onAnimationStart:c,onAnimationComplete:d,children:t})})});bv.displayName="Collapse";var vv=Z.forwardRef(({show:e=true,children:t,duration:n=.4,delay:r=0,ease:o,className:a,initialWidth:s=0,initialHeight:i=0,animateOpacity:l=true,onAnimationStart:c,onAnimationComplete:d},u)=>{let p={hidden:{width:s,height:i,opacity:l?0:1},visible:{width:"auto",height:"auto",opacity:1},exit:{width:s,height:i,opacity:l?0:1}};return jsx(AnimatePresence,{initial:false,children:e&&jsx(motion.div,{ref:u,initial:"hidden",animate:"visible",exit:"exit",variants:p,transition:jr(n,r,o),className:m("overflow-hidden",a),onAnimationStart:c,onAnimationComplete:d,children:t})})});vv.displayName="Expand";var hv=Z.forwardRef(({show:e=true,children:t,duration:n=.3,delay:r=0,ease:o,className:a,unmountOnExit:s=true,initialRotation:i=-180,finalRotation:l=0,onAnimationStart:c,onAnimationComplete:d},u)=>{let p={hidden:{opacity:0,rotate:i},visible:{opacity:1,rotate:l},exit:{opacity:0,rotate:i}},f=jsx(motion.div,{ref:u,initial:"hidden",animate:e?"visible":"hidden",exit:s?"exit":void 0,variants:p,transition:jr(n,r,o),className:m(a),onAnimationStart:c,onAnimationComplete:d,children:t});return s?jsx(AnimatePresence,{children:e&&f}):f});hv.displayName="Rotate";var xv=Z.forwardRef(({front:e,back:t,direction:n="horizontal",flipped:r=false,duration:o=.6,delay:a=0,ease:s,className:i,onAnimationStart:l,onAnimationComplete:c},d)=>{let u=n==="horizontal"?"rotateY":"rotateX";return jsx("div",{ref:d,className:m("relative",i),style:{perspective:1e3},children:jsxs(motion.div,{animate:{[u]:r?180:0},transition:jr(o,a,s),style:{transformStyle:"preserve-3d"},onAnimationStart:l,onAnimationComplete:c,children:[jsx("div",{className:"absolute inset-0",style:{backfaceVisibility:"hidden"},children:e}),jsx("div",{className:"absolute inset-0",style:{backfaceVisibility:"hidden",transform:`${u}(180deg)`},children:t})]})})});xv.displayName="Flip";var yv=Z.forwardRef(({color:e="currentColor",duration:t=.6,children:n,className:r,disabled:o=false},a)=>{let[s,i]=Z.useState([]),l=Z.useRef(null),c=u=>{if(o)return;let p=l.current;if(!p)return;let f=p.getBoundingClientRect(),g=u.clientX-f.left,h=u.clientY-f.top,v=Math.max(f.width,f.height)*2,b={id:Date.now(),x:g,y:h,size:v};i(x=>[...x,b]);},d=u=>{i(p=>p.filter(f=>f.id!==u));};return jsxs("div",{ref:a,className:m("relative overflow-hidden rounded-[inherit]",r),onClick:c,children:[jsx("div",{ref:l,className:"relative z-0",children:n}),jsx(AnimatePresence,{children:s.map(u=>jsx(motion.span,{initial:{scale:0,opacity:.35},animate:{scale:1,opacity:0},exit:{opacity:0},transition:{duration:t,ease:"easeOut"},onAnimationComplete:()=>d(u.id),className:"pointer-events-none absolute rounded-full",style:{left:u.x-u.size/2,top:u.y-u.size/2,width:u.size,height:u.size,backgroundColor:e}},u.id))})]})});yv.displayName="Ripple";var Rv=Z.forwardRef(({children:e,animate:t=true,height:n=10,duration:r=.5,count:o=0,className:a,triggerOnHover:s=false},i)=>{let[l,c]=Z.useState(false),d=s?l:t,u={idle:{y:0},bounce:{y:[0,-n,0],transition:{duration:r,ease:"easeInOut",repeat:o===0?1/0:o-1,repeatType:"loop"}}};return jsx(motion.div,{ref:i,variants:u,initial:"idle",animate:d?"bounce":"idle",className:m(a),onMouseEnter:()=>s&&c(true),onMouseLeave:()=>s&&c(false),children:e})});Rv.displayName="Bounce";var IM={subtle:[0,-2,2,-2,2,-1,1,0],normal:[0,-5,5,-5,5,-3,3,0],strong:[0,-10,10,-10,10,-5,5,0]},wv=Z.forwardRef(({children:e,animate:t=true,intensity:n="normal",duration:r=.5,count:o=1,className:a,triggerOnHover:s=false},i)=>{let[l,c]=Z.useState(false),d=s?l:t,u={idle:{x:0},shake:{x:IM[n],transition:{duration:r,ease:"easeInOut",repeat:o-1}}};return jsx(motion.div,{ref:i,variants:u,initial:"idle",animate:d?"shake":"idle",className:m(a),onMouseEnter:()=>s&&c(true),onMouseLeave:()=>s&&c(false),children:e})});wv.displayName="Shake";var VM={slow:"animate-[pulse_3s_ease-in-out_infinite]",normal:"animate-[pulse_2s_ease-in-out_infinite]",fast:"animate-[pulse_1s_ease-in-out_infinite]"},Cv=Z.forwardRef(({children:e,animate:t=true,speed:n="normal",className:r},o)=>jsx("div",{ref:o,className:m(t&&VM[n],r),children:e}));Cv.displayName="Pulse";var Tv=Z.forwardRef(({children:e,animate:t=true,angle:n=10,duration:r=.3,count:o=0,className:a,triggerOnHover:s=false},i)=>{let[l,c]=Z.useState(false),d=s?l:t,u={idle:{rotate:0},wiggle:{rotate:[0,-n,n,-n,n,0],transition:{duration:r,ease:"easeInOut",repeat:o===0?1/0:o-1,repeatType:"loop"}}};return jsx(motion.div,{ref:i,variants:u,initial:"idle",animate:d?"wiggle":"idle",className:m(a),onMouseEnter:()=>s&&c(true),onMouseLeave:()=>s&&c(false),children:e})});Tv.displayName="Wiggle";var Mv=Z.forwardRef(({children:e,animate:t=false,scale:n=1.2,duration:r=.2,className:o,triggerOnHover:a=false,triggerOnClick:s=false},i)=>{let[l,c]=Z.useState(false),d=t||l,u={type:"spring",stiffness:400,damping:17,duration:r},p=()=>{s&&(c(true),setTimeout(()=>c(false),r*1e3));};return jsx(motion.div,{ref:i,animate:{scale:d?n:1},transition:u,className:m(o),onMouseEnter:()=>a&&c(true),onMouseLeave:()=>a&&c(false),onClick:p,children:e})});Mv.displayName="Pop";var KM=(e,t,n,r)=>{let o=e.toFixed(t),[a,s]=o.split("."),i=a.replace(/\B(?=(\d{3})+(?!\d))/g,n);return s?`${i}${r}${s}`:i},kv=Z.forwardRef(({value:e,from:t=0,duration:n=2,decimals:r=0,prefix:o="",suffix:a="",separator:s=",",decimalSeparator:i=".",animateOnView:l=true,delay:c=0,className:d,onComplete:u},p)=>{let f=Z.useRef(null),g=useInView(f,{once:true}),[h,v]=Z.useState(!l);Z.useEffect(()=>{if(l&&g){let y=setTimeout(()=>v(true),c*1e3);return ()=>clearTimeout(y)}},[l,g,c]);let b=useMotionValue(t),x=useTransform(b,y=>KM(y,r,s,i));return Z.useEffect(()=>{if(h){let y=animate(b,e,{duration:n,ease:"easeOut",onComplete:u});return ()=>y.stop()}},[h,e,n,b,u]),jsx("span",{ref:f,className:m(d),children:jsxs("span",{ref:p,children:[o,jsx(motion.span,{children:x}),a]})})});kv.displayName="Counter";var Nv=Z.forwardRef(({text:e,speed:t=50,delay:n=0,pauseBetween:r=1500,cursor:o=true,cursorChar:a="|",loop:s=false,deleteSpeed:i=30,animateOnView:l=true,className:c,cursorClassName:d,onComplete:u},p)=>{let f=Array.isArray(e)?e:[e],[g,h]=Z.useState(""),[v,b]=Z.useState(0),[x,y]=Z.useState(false),[C,w]=Z.useState(false),R=Z.useRef(null),N=useInView(R,{once:true}),[S,D]=Z.useState(!l);return Z.useEffect(()=>{if(l&&N){let k=setTimeout(()=>D(true),n*1e3);return ()=>clearTimeout(k)}},[l,N,n]),Z.useEffect(()=>{if(!S||C)return;let k=f[v],P;return x?g.length>0?P=setTimeout(()=>{h(g.slice(0,-1));},i):(y(false),b(T=>(T+1)%f.length)):g.length<k.length?P=setTimeout(()=>{h(k.slice(0,g.length+1));},t):v<f.length-1||s?P=setTimeout(()=>{y(true);},r):(w(true),u?.()),()=>clearTimeout(P)},[S,g,v,x,C,f,t,i,r,s,u]),jsxs("span",{ref:R,className:m(c),children:[jsx("span",{ref:p,children:g}),o&&jsx(motion.span,{animate:{opacity:[1,0]},transition:{duration:.8,repeat:1/0,repeatType:"reverse"},className:m("ml-0.5",d),children:a})]})});Nv.displayName="Typewriter";var Pv=Z.forwardRef(({children:e,direction:t="up",stagger:n=.05,duration:r=.5,delay:o=0,splitBy:a="word",animateOnView:s=true,className:i},l)=>{let c=Z.useRef(null),d=useInView(c,{once:true,amount:.5}),u=s?d:true,p=typeof e=="string"?e:"",f=a==="word"?p.split(" "):p.split(""),g={up:{y:20},down:{y:-20},left:{x:20},right:{x:-20}},h={hidden:{},visible:{transition:{staggerChildren:n,delayChildren:o}}},v={hidden:{opacity:0,...g[t]},visible:{opacity:1,x:0,y:0,transition:{duration:r,ease:"easeInOut"}}};return jsx(motion.div,{ref:l,className:m("inline-flex flex-wrap",i),variants:h,initial:"hidden",animate:u?"visible":"hidden",children:jsx("span",{ref:c,children:f.map((b,x)=>jsxs(motion.span,{variants:v,className:"inline-block",children:[b,a==="word"&&x<f.length-1&&"\xA0"]},x))})})});Pv.displayName="TextReveal";var Ev=Z.forwardRef(({words:e,duration:t=2,animation:n="slide",animationDuration:r=.5,className:o,loop:a=true},s)=>{let[i,l]=Z.useState(0);Z.useEffect(()=>{if(!a&&i===e.length-1)return;let d=setInterval(()=>{l(u=>(u+1)%e.length);},t*1e3);return ()=>clearInterval(d)},[e.length,t,a,i]);let c=()=>{switch(n){case "fade":return {initial:{opacity:0},animate:{opacity:1},exit:{opacity:0}};case "slide":return {initial:{opacity:0,y:20},animate:{opacity:1,y:0},exit:{opacity:0,y:-20}};case "scale":return {initial:{opacity:0,scale:.8},animate:{opacity:1,scale:1},exit:{opacity:0,scale:1.2}};case "blur":return {initial:{opacity:0,filter:"blur(10px)"},animate:{opacity:1,filter:"blur(0px)"},exit:{opacity:0,filter:"blur(10px)"}}}};return jsx("span",{ref:s,className:m("relative inline-block",o),children:jsx(AnimatePresence,{mode:"wait",children:jsx(motion.span,{variants:c(),initial:"initial",animate:"animate",exit:"exit",transition:{duration:r},className:"inline-block",children:e[i]},e[i])})})});Ev.displayName="WordRotate";var Hv=Z.forwardRef(({children:e,direction:t="up",distance:n=50,duration:r=.6,delay:o=0,once:a=true,threshold:s=.1,className:i,scale:l,rotate:c,blur:d,ease:u=[.4,0,.2,1]},p)=>{let f=Z.useRef(null),g=useInView(f,{once:a,amount:s}),v={up:{x:0,y:n},down:{x:0,y:-n},left:{x:n,y:0},right:{x:-n,y:0},none:{x:0,y:0}}[t],b={hidden:{opacity:0,x:v.x,y:v.y,scale:l??1,rotate:c??0,filter:d?`blur(${d}px)`:"blur(0px)"},visible:{opacity:1,x:0,y:0,scale:1,rotate:0,filter:"blur(0px)",transition:{duration:r,delay:o,ease:u}}};return jsx("div",{ref:f,children:jsx(motion.div,{ref:p,variants:b,initial:"hidden",animate:g?"visible":"hidden",className:m(i),children:e})})});Hv.displayName="ScrollReveal";var Iv=Z.forwardRef(({position:e="top",size:t=4,color:n="hsl(var(--primary))",backgroundColor:r="transparent",zIndex:o=50,className:a,container:s,showPercentage:i=false,useSpring:l=true},c)=>{let{scrollYProgress:d}=useScroll({container:s}),u=useSpring(d,{stiffness:100,damping:30,restDelta:.001}),p=l?u:d,f=e==="top"||e==="bottom",g={top:{top:0,left:0,right:0,height:t},bottom:{bottom:0,left:0,right:0,height:t},left:{top:0,left:0,bottom:0,width:t},right:{top:0,right:0,bottom:0,width:t}},h=f?"scaleX":"scaleY",v=f?"left":"top";return jsxs("div",{ref:c,className:m("fixed",a),style:{...g[e],zIndex:o,backgroundColor:r},children:[jsx(motion.div,{className:"h-full w-full",style:{[h]:p,transformOrigin:v,backgroundColor:n}}),i&&jsx(UM,{progress:p,position:e})]})});Iv.displayName="ScrollProgress";var UM=({progress:e,position:t})=>{let n=useTransform(e,s=>Math.round(s*100)),[r,o]=Z.useState(0);return Z.useEffect(()=>{let s=n.on("change",o);return ()=>s()},[n]),jsxs("span",{className:m("fixed rounded bg-background/80 px-2 py-1 text-xs font-medium backdrop-blur-sm",{top:"top-2 right-4",bottom:"bottom-2 right-4",left:"top-4 left-2",right:"top-4 right-2"}[t]),children:[r,"%"]})},Vv=Z.forwardRef(({children:e,speed:t=.5,direction:n="vertical",className:r,container:o},a)=>{let s=Z.useRef(null),{scrollYProgress:i}=useScroll({target:s,container:o,offset:["start end","end start"]}),l=[-100*t,100*t],c=useTransform(i,[0,1],l),d=useSpring(c,{stiffness:100,damping:30}),u=n==="horizontal"?d:0,p=n==="vertical"?d:0;return jsx("div",{ref:s,className:m("overflow-hidden",r),children:jsx(motion.div,{ref:a,style:{x:u,y:p},children:e})})});Vv.displayName="Parallax";var Ov=Z.forwardRef(({children:e,width:t,height:n,duration:r=1.5,direction:o="right",baseColor:a="hsl(var(--muted))",highlightColor:s="hsl(var(--muted-foreground) / 0.1)",borderRadius:i,className:l,active:c=true},d)=>{let u={left:"to left",right:"to right",top:"to top",bottom:"to bottom"},p={left:"shimmer-left",right:"shimmer-right",top:"shimmer-top",bottom:"shimmer-bottom"};return jsxs("div",{ref:d,className:m("relative overflow-hidden",l),style:{width:t,height:n,borderRadius:i,backgroundColor:a},children:[e,c&&jsx("div",{className:"absolute inset-0",style:{background:`linear-gradient(${u[o]}, transparent, ${s}, transparent)`,animation:`${p[o]} ${r}s infinite`}}),jsx("style",{children:`
|
|
56
56
|
@keyframes shimmer-right {
|
|
57
57
|
0% { transform: translateX(-100%); }
|
|
58
58
|
100% { transform: translateX(100%); }
|