Files
sigpro-ui/dist/sigpro-ui.esm.min.js
2026-04-06 22:22:11 +02:00

8 lines
33 KiB
JavaScript

var h_=Object.defineProperty;var R=(f,M)=>{for(var _ in M)h_(f,_,{get:M[_],enumerable:!0,configurable:!0,set:(T)=>M[_]=()=>T})};var U=null,h=null,p=new Set,i=!1,$f=new WeakMap,s=document,r=Array.isArray,Pf=Object.assign,lf=(f)=>s.createElement(f),u=(f)=>s.createTextNode(String(f??"")),k=(f)=>typeof f==="function",Wf=(f)=>typeof f==="object"&&f!==null,Cf=(f,M)=>{let _=U;U=f;try{return M()}finally{U=_}},t=(f)=>{if(f._cleanups)f._cleanups.forEach((M)=>M()),f._cleanups.clear();f.childNodes?.forEach(t)},j_=()=>{if(i)return;i=!0;while(p.size>0){let f=Array.from(p).sort((M,_)=>(M.depth||0)-(_.depth||0));p.clear();for(let M of f)if(!M._deleted)M()}i=!1},Jf=(f)=>{if(U&&!U._deleted)f.add(U),U._deps.add(f)},l=(f)=>{if(f.forEach((M)=>{if(M===U||M._deleted)return;if(M._isComputed){if(M.markDirty(),M._subs)l(M._subs)}else p.add(M)}),!i)queueMicrotask(j_)},g=(f)=>{let M=new Set,_=h,T=lf("div");T.style.display="contents",h={cleanups:M};let E=(A)=>{if(!A)return;if(A._isRuntime)M.add(A.destroy),T.appendChild(A.container);else if(r(A))A.forEach(E);else T.appendChild(A instanceof Node?A:u(A))};try{E(f({onCleanup:(A)=>M.add(A)}))}finally{h=_}return{_isRuntime:!0,container:T,destroy:()=>{M.forEach((A)=>A()),t(T),T.remove()}}},a=(f,M=null)=>{let _=new Set;if(k(f)){let E,A=!0,L=()=>{if(L._deleted)return;L._deps.forEach((W)=>W.delete(L)),L._deps.clear(),Cf(L,()=>{let W=f();if(!Object.is(E,W)||A)E=W,A=!1,l(_)})};if(Pf(L,{_deps:new Set,_isComputed:!0,_subs:_,_deleted:!1,markDirty:()=>A=!0,stop:()=>{L._deleted=!0,L._deps.forEach((W)=>W.delete(L)),_.clear()}}),h)h.cleanups.add(L.stop);return()=>{if(A)L();return Jf(_),E}}let T=f;if(M)try{let E=localStorage.getItem(M);if(E!==null)T=JSON.parse(E)}catch(E){console.warn("SigPro Storage Lock",E)}return(...E)=>{if(E.length){let A=k(E[0])?E[0](T):E[0];if(!Object.is(T,A)){if(T=A,M)localStorage.setItem(M,JSON.stringify(T));l(_)}}return Jf(_),T}},Bf=(f,M=new WeakMap)=>{if(!Wf(f))return f;if(M.has(f))return M.get(f);let _={},T=new Proxy(f,{get(E,A){if(U)Jf(_[A]??=new Set);let L=Reflect.get(E,A);return Wf(L)?Bf(L,M):L},set(E,A,L){if(Object.is(E[A],L))return!0;let W=Reflect.set(E,A,L);if(_[A])l(_[A]);return W}});return M.set(f,T),T},v=(f,M)=>{let _=r(f),T=_?M:f;if(!k(T))return()=>{};let E=h,A=()=>{if(A._deleted)return;A._deps.forEach((W)=>W.delete(A)),A._deps.clear(),A._cleanups.forEach((W)=>W()),A._cleanups.clear();let L=h;A.depth=U?U.depth+1:0,Cf(A,()=>{if(h={cleanups:A._cleanups},_)Cf(null,T),f.forEach((W)=>k(W)&&W());else T();h=L})};if(Pf(A,{_deps:new Set,_cleanups:new Set,_deleted:!1,stop:()=>{if(A._deleted)return;if(A._deleted=!0,p.delete(A),A._deps.forEach((L)=>L.delete(A)),A._cleanups.forEach((L)=>L()),E)E.cleanups.delete(A.stop)}}),E)E.cleanups.add(A.stop);return A(),A.stop},m=(f,M={},_=[])=>{if(M instanceof Node||r(M)||!Wf(M))_=M,M={};let E=/^(svg|path|circle|rect|line|polyline|polygon|g|defs|text|tspan|use)$/.test(f)?s.createElementNS("http://www.w3.org/2000/svg",f):lf(f);E._cleanups=new Set,E.onUnmount=(C)=>E._cleanups.add(C);let A=["disabled","checked","required","readonly","selected","multiple","autofocus"],L=(C,J)=>{let Q=(C==="src"||C==="href")&&String(J).toLowerCase().includes("javascript:")?"#":J;if(A.includes(C))E[C]=!!Q,Q?E.setAttribute(C,""):E.removeAttribute(C);else Q==null?E.removeAttribute(C):E.setAttribute(C,Q)};for(let[C,J]of Object.entries(M)){if(C==="ref"){k(J)?J(E):J.current=E;continue}let Q=k(J);if(C.startsWith("on")){let G=C.slice(2).toLowerCase().split(".")[0];E.addEventListener(G,J),E._cleanups.add(()=>E.removeEventListener(G,J))}else if(Q){if(E._cleanups.add(v(()=>{let G=J();C==="class"?E.className=G||"":L(C,G)})),["INPUT","TEXTAREA","SELECT"].includes(E.tagName)&&(C==="value"||C==="checked")){let G=C==="checked"?"change":"input",Y=(Z)=>J(Z.target[C]);E.addEventListener(G,Y),E._cleanups.add(()=>E.removeEventListener(G,Y))}}else L(C,J)}let W=(C)=>{if(r(C))return C.forEach(W);if(k(C)){let J=u("");E.appendChild(J);let Q=[];E._cleanups.add(v(()=>{let G=C(),Y=(r(G)?G:[G]).map((Z)=>Z?._isRuntime?Z.container:Z instanceof Node?Z:u(Z));Q.forEach((Z)=>{t(Z),Z.remove()}),Y.forEach((Z)=>J.parentNode?.insertBefore(Z,J)),Q=Y}))}else E.appendChild(C instanceof Node?C:u(C))};return W(_),E},sf=(f,M,_=null,T=null)=>{let E=u(""),A=m("div",{style:"display:contents"},[E]),L=null,W=null;return v(()=>{let C=!!(k(f)?f():f);if(C===W)return;W=C;let J=()=>{if(L)L.destroy();L=null};if(L&&!C&&T?.out)T.out(L.container,J);else J();let Q=C?M:_;if(Q){if(L=g(()=>k(Q)?Q():Q),A.insertBefore(L.container,E),C&&T?.in)T.in(L.container)}}),A},tf=(f,M,_,T="div",E={style:"display:contents"})=>{let A=u(""),L=m(T,E,[A]),W=new Map;return v(()=>{let C=(k(f)?f():f)||[],J=new Map,Q=[];for(let Y=0;Y<C.length;Y++){let Z=C[Y],X=_?_(Z,Y):Y,q=W.get(X);if(!q){let z=M(Z,Y);q=z instanceof Node?{container:z,destroy:()=>{t(z),z.remove()}}:g(()=>z)}W.delete(X),J.set(X,q),Q.push(X)}W.forEach((Y)=>Y.destroy());let G=A;for(let Y=Q.length-1;Y>=0;Y--){let Z=J.get(Q[Y]);if(Z.container.nextSibling!==G)L.insertBefore(Z.container,G);G=Z.container}W=J}),L},j=(f)=>{let M=a(window.location.hash.replace(/^#/,"")||"/");window.addEventListener("hashchange",()=>M(window.location.hash.replace(/^#/,"")||"/"));let _=m("div",{class:"router-transition"}),T=null;return v([M],async()=>{let E=M(),A=f.find((L)=>{let W=L.path.split("/").filter(Boolean),C=E.split("/").filter(Boolean);return W.length===C.length&&W.every((J,Q)=>J.startsWith(":")||J===C[Q])})||f.find((L)=>L.path==="*");if(A){let L=A.component;if(k(L)&&L.toString().includes("import"))L=(await L()).default||await L();let W={};if(A.path.split("/").filter(Boolean).forEach((C,J)=>{if(C.startsWith(":"))W[C.slice(1)]=E.split("/").filter(Boolean)[J]}),T)T.destroy();if(j.params)j.params(W);T=g(()=>{try{return k(L)?L(W):L}catch(C){return m("div",{class:"p-4 text-error"},"Error loading view")}}),_.appendChild(T.container)}}),_};j.params=a({});j.to=(f)=>window.location.hash=f.replace(/^#?\/?/,"#/");j.back=()=>window.history.back();j.path=()=>window.location.hash.replace(/^#/,"")||"/";var af=(f,M)=>{let _=typeof M==="string"?s.querySelector(M):M;if(!_)return;if($f.has(_))$f.get(_).destroy();let T=g(k(f)?f:()=>f);return _.replaceChildren(T.container),$f.set(_,T),T},of={$:a,$$:Bf,Render:g,Watch:v,Tag:m,If:sf,For:tf,Router:j,Mount:af};if(typeof window<"u")Pf(window,of),"div span p h1 h2 h3 h4 h5 h6 br hr section article aside nav main header footer address ul ol li dl dt dd a em strong small i b u mark time sub sup pre code blockquote details summary dialog form label input textarea select button option fieldset legend table thead tbody tfoot tr th td caption img video audio canvas svg iframe picture source progress meter".split(" ").forEach((M)=>{let _=M[0].toUpperCase()+M.slice(1);if(!(_ in window))window[_]=(T,E)=>m(M,T,E)}),window.SigPro=Object.freeze(of);var ff={};R(ff,{default:()=>I_,Tooltip:()=>U_,Toast:()=>F_,Timeline:()=>k_,Tabs:()=>V_,Table:()=>N_,Swap:()=>D_,Stat:()=>z_,Stack:()=>R_,Select:()=>K_,Rating:()=>q_,Range:()=>Y_,Radio:()=>S_,Navbar:()=>Z_,Modal:()=>X_,Menu:()=>Q_,List:()=>G_,Label:()=>B_,Input:()=>b,Indicator:()=>P_,Fileinput:()=>J_,Fieldset:()=>C_,Fab:()=>W_,Dropdown:()=>$_,Drawer:()=>L_,Datepicker:()=>A_,Colorpicker:()=>T_,Checkbox:()=>E_,Button:()=>c,Badge:()=>M_,Autocomplete:()=>__,Alert:()=>f_,Accordion:()=>ef});var Gf={};R(Gf,{Accordion:()=>ef});var e={};R(e,{val:()=>P,ui:()=>B,getIcon:()=>D});var P=(f)=>typeof f==="function"?f():f,B=(f,M)=>typeof M==="function"?()=>`${f} ${M()||""}`.trim():`${f} ${M||""}`.trim(),D=(f)=>{if(!f)return null;if(typeof f==="function")return Tag("span",{class:"mr-1"},f());if(typeof f==="object")return Tag("span",{class:"mr-1"},f);if(typeof f==="string"){let M=f.trim().split(/\s+/),_=M[M.length-1]==="right",T=_?M.slice(0,-1).join(" "):f,E=_?"ml-1":"mr-1";if(T&&!T.startsWith("icon-[")&&!T.includes("--"))return Tag("span",{class:E},T);return Tag("span",{class:`${T} ${E}`.trim()})}return null};var ef=(f,M)=>{let{class:_,title:T,name:E,open:A,...L}=f;return Tag("div",{...L,class:B("collapse collapse-arrow bg-base-200 mb-2",_)},[Tag("input",{type:E?"radio":"checkbox",name:E,checked:P(A)}),Tag("div",{class:"collapse-title text-xl font-medium"},T),Tag("div",{class:"collapse-content"},M)])};var Qf={};R(Qf,{Alert:()=>f_});var f_=(f,M)=>{let{class:_,actions:T,type:E="info",soft:A=!0,...L}=f,W={info:"icon-[lucide--info]",success:"icon-[lucide--check-circle]",warning:"icon-[lucide--alert-triangle]",error:"icon-[lucide--alert-circle]"},Q=[`alert-${E}`,A?"alert-soft":"",_].filter(Boolean).join(" "),G=M||f.message;return Tag("div",{...L,role:"alert",class:B("alert",Q)},()=>[D(W[E]),Tag("div",{class:"flex-1"},[Tag("span",{},[typeof G==="function"?G():G])]),T?Tag("div",{class:"flex-none"},[typeof T==="function"?T():T]):null].filter(Boolean))};var Zf={};R(Zf,{Autocomplete:()=>__});var x_={es:{close:"Cerrar",confirm:"Confirmar",cancel:"Cancelar",search:"Buscar...",loading:"Cargando...",nodata:"Sin datos"},en:{close:"Close",confirm:"Confirm",cancel:"Cancel",search:"Search...",loading:"Loading...",nodata:"No data"}},y_=$("es");var O=(f)=>()=>x_[y_()][f]||f;var Xf={};R(Xf,{Input:()=>b});var b=(f)=>{let{class:M,value:_,type:T="text",icon:E,oninput:A,placeholder:L,disabled:W,validate:C,label:J,...Q}=f,G=T==="password",Y=$(!1),Z=$(null),X={text:"icon-[lucide--text]",password:"icon-[lucide--lock]",date:"icon-[lucide--calendar]",number:"icon-[lucide--hash]",email:"icon-[lucide--mail]",search:"icon-[lucide--search]",tel:"icon-[lucide--phone]",url:"icon-[lucide--link]"},q=E?D(E):X[T]?D(X[T]):null,z=()=>D(Y()?"icon-[lucide--eye-off]":"icon-[lucide--eye]"),d=q?"pl-10":"",_f=G?"pr-10":"",n=()=>{if(M?.includes("input-xs"))return"btn-xs";if(M?.includes("input-sm"))return"btn-sm";if(M?.includes("input-lg"))return"btn-lg";return"btn-md"},o=(V)=>{let y=V.target.value;if(C){let Mf=C(y);Z(Mf||null)}A?.(V)},x=()=>Z()&&Z()!=="",S=()=>{let V=`input w-full ${d} ${_f}`;if(M)V+=` ${M}`;if(x())V+=" input-error";return V.trim()},K=Tag("input",{...Q,type:()=>G?Y()?"text":"password":T,placeholder:L||(J?" ":L),class:S,value:_,oninput:o,disabled:()=>P(W),"aria-invalid":()=>x()?"true":"false"}),N=()=>[K,q?Tag("div",{class:"absolute left-3 inset-y-0 flex items-center pointer-events-none text-base-content/60"},q):null,G?Tag("button",{type:"button",class:B("absolute right-3 inset-y-0 flex items-center","btn btn-ghost btn-circle opacity-50 hover:opacity-100",n()),onclick:(V)=>{V.preventDefault(),Y(!Y())}},()=>z()):null,Tag("div",{class:"text-error text-xs mt-1 px-3 absolute -bottom-5 left-0"},()=>x()?Z():null)];if(J)return Tag("label",{class:B("floating-label w-full",M)},()=>[Tag("div",{class:"relative w-full"},N),Tag("span",{},P(J))]);return Tag("div",{class:"relative w-full"},N)};var __=(f)=>{let{class:M,items:_=[],value:T,onselect:E,label:A,placeholder:L,...W}=f,C=$(P(T)||""),J=$(!1),Q=$(-1),G=$(()=>{let X=C().toLowerCase(),q=P(_)||[];return X?q.filter((z)=>(typeof z==="string"?z:z.label).toLowerCase().includes(X)):q}),Y=(X)=>{let q=typeof X==="string"?X:X.value,z=typeof X==="string"?X:X.label;if(C(z),typeof T==="function")T(q);E?.(X),J(!1),Q(-1)},Z=(X)=>{let q=G();if(X.key==="ArrowDown")X.preventDefault(),J(!0),Q(Math.min(Q()+1,q.length-1));else if(X.key==="ArrowUp")X.preventDefault(),Q(Math.max(Q()-1,0));else if(X.key==="Enter"&&Q()>=0)X.preventDefault(),Y(q[Q()]);else if(X.key==="Escape")J(!1)};return Tag("div",{class:"relative w-full"},[b({label:A,class:M,placeholder:L||O("search")(),value:C,onfocus:()=>J(!0),onblur:()=>setTimeout(()=>J(!1),150),onkeydown:Z,oninput:(X)=>{let q=X.target.value;if(C(q),typeof T==="function")T(q);J(!0),Q(-1)},...W}),Tag("ul",{class:"absolute left-0 w-full menu bg-base-100 rounded-box mt-1 p-2 shadow-xl max-h-60 overflow-y-auto border border-base-300 z-50",style:()=>J()&&G().length?"display:block":"display:none"},[For(G,(X,q)=>Tag("li",{},[Tag("a",{class:()=>`block w-full ${Q()===q?"active bg-primary text-primary-content":""}`,onclick:()=>Y(X),onmouseenter:()=>Q(q)},typeof X==="string"?X:X.label)]),(X,q)=>(typeof X==="string"?X:X.value)+q),()=>G().length?null:Tag("li",{class:"p-2 text-center opacity-50"},O("nodata")())])])};var Sf={};R(Sf,{Badge:()=>M_});var M_=(f,M)=>{let{class:_,...T}=f;return Tag("span",{...T,class:B("badge",_)},M)};var Yf={};R(Yf,{Button:()=>c});var c=(f,M)=>{let{class:_,loading:T,icon:E,...A}=f,L=D(E);return Tag("button",{...A,class:B("btn",_),disabled:()=>P(T)||P(f.disabled)},()=>[P(T)&&Tag("span",{class:"loading loading-spinner"}),L,M].filter(Boolean))};var qf={};R(qf,{Checkbox:()=>E_});var E_=(f)=>{let{class:M,value:_,toggle:T,label:E,...A}=f,L=Tag("input",{...A,type:"checkbox",class:()=>B(P(T)?"toggle":"checkbox",M),checked:_});return Tag("label",{class:"label cursor-pointer justify-start gap-3"},[L,E?Tag("span",{class:"label-text"},E):null])};var Kf={};R(Kf,{Colorpicker:()=>T_});var T_=(f)=>{let{class:M,value:_,label:T,...E}=f,A=$(!1),L=["#000","#1A1A1A","#333","#4D4D4D","#666","#808080","#B3B3B3","#FFF","#450a0a","#7f1d1d","#991b1b","#b91c1c","#dc2626","#ef4444","#f87171","#fca5a5","#431407","#7c2d12","#9a3412","#c2410c","#ea580c","#f97316","#fb923c","#ffedd5","#713f12","#a16207","#ca8a04","#eab308","#facc15","#fde047","#fef08a","#fff9c4","#064e3b","#065f46","#059669","#10b981","#34d399","#4ade80","#84cc16","#d9f99d","#082f49","#075985","#0284c7","#0ea5e9","#38bdf8","#7dd3fc","#22d3ee","#cffafe","#1e1b4b","#312e81","#4338ca","#4f46e5","#6366f1","#818cf8","#a5b4fc","#e0e7ff","#2e1065","#4c1d95","#6d28d9","#7c3aed","#8b5cf6","#a855f7","#d946ef","#fae8ff"],W=()=>P(_)||"#000000";return Tag("div",{class:B("relative w-fit",M)},[Tag("button",{type:"button",class:"btn px-3 bg-base-100 border-base-300 hover:border-primary/50 flex items-center gap-2 shadow-sm font-normal normal-case",onclick:(C)=>{C.stopPropagation(),A(!A())},...E},[Tag("div",{class:"size-5 rounded-sm shadow-inner border border-black/10 shrink-0",style:()=>`background-color: ${W()}`}),T?Tag("span",{class:"opacity-80"},T):null]),If(A,()=>Tag("div",{class:"absolute left-0 mt-2 p-3 bg-base-100 border border-base-300 shadow-2xl rounded-box z-[110] w-64 select-none",onclick:(C)=>C.stopPropagation()},[Tag("div",{class:"grid grid-cols-8 gap-1"},L.map((C)=>Tag("button",{type:"button",style:`background-color: ${C}`,class:()=>{return`size-6 rounded-sm cursor-pointer transition-all hover:scale-125 hover:z-10 active:scale-95 outline-none border border-black/5
${W().toLowerCase()===C.toLowerCase()?"ring-2 ring-offset-1 ring-primary z-10 scale-110":""}`},onclick:()=>{if(typeof _==="function")_(C);A(!1)}})))])),If(A,()=>Tag("div",{class:"fixed inset-0 z-[100]",onclick:()=>A(!1)}))])};var Rf={};R(Rf,{Datepicker:()=>A_});var A_=(f)=>{let{class:M,value:_,range:T,label:E,placeholder:A,hour:L=!1,...W}=f,C=$(!1),J=$(new Date),Q=$(null),G=$(0),Y=$(0),Z=()=>P(T)===!0,X=new Date,q=`${X.getFullYear()}-${String(X.getMonth()+1).padStart(2,"0")}-${String(X.getDate()).padStart(2,"0")}`,z=(S)=>{let K=S.getFullYear(),N=String(S.getMonth()+1).padStart(2,"0"),V=String(S.getDate()).padStart(2,"0");return`${K}-${N}-${V}`},d=(S)=>{let K=z(S),N=P(_);if(Z())if(!N?.start||N.start&&N.end){if(typeof _==="function")_({start:K,end:null,...L&&{startHour:G()}})}else{let V=N.start;if(typeof _==="function"){let y=K<V?{start:K,end:V}:{start:V,end:K};if(L)y.startHour=N.startHour||G(),y.endHour=N.endHour||Y();_(y)}C(!1)}else{if(typeof _==="function")_(L?`${K}T${String(G()).padStart(2,"0")}:00:00`:K);C(!1)}},_f=$(()=>{let S=P(_);if(!S)return"";if(typeof S==="string"){if(L&&S.includes("T"))return S.replace("T"," ");return S}if(S.start&&S.end){let K=L&&S.startHour?`${S.start} ${String(S.startHour).padStart(2,"0")}:00`:S.start,N=L&&S.endHour?`${S.end} ${String(S.endHour).padStart(2,"0")}:00`:S.end;return`${K} - ${N}`}if(S.start)return`${L&&S.startHour?`${S.start} ${String(S.startHour).padStart(2,"0")}:00`:S.start}...`;return""}),n=(S)=>{let K=J();J(new Date(K.getFullYear(),K.getMonth()+S,1))},o=(S)=>{let K=J();J(new Date(K.getFullYear()+S,K.getMonth(),1))},x=({value:S,onChange:K})=>{return Tag("div",{class:"flex-1"},[Tag("div",{class:"flex gap-2 items-center"},[Tag("input",{type:"range",min:0,max:23,value:S,class:"range range-xs flex-1",oninput:(N)=>{let V=parseInt(N.target.value);K(V)}}),Tag("span",{class:"text-sm font-mono min-w-[48px] text-center"},()=>String(P(S)).padStart(2,"0")+":00")])])};return Tag("div",{class:B("relative w-full",M)},[b({label:E,placeholder:A||(Z()?"Seleccionar rango...":"Seleccionar fecha..."),value:_f,readonly:!0,icon:D("icon-[lucide--calendar]"),onclick:(S)=>{S.stopPropagation(),C(!C())},...W}),If(C,()=>Tag("div",{class:"absolute left-0 mt-2 p-4 bg-base-100 border border-base-300 shadow-2xl rounded-box z-[100] w-80 select-none",onclick:(S)=>S.stopPropagation()},[Tag("div",{class:"flex justify-between items-center mb-4 gap-1"},[Tag("div",{class:"flex gap-0.5"},[Tag("button",{type:"button",class:"btn btn-ghost btn-xs px-1",onclick:()=>o(-1)},D("icon-[lucide--chevrons-left]")),Tag("button",{type:"button",class:"btn btn-ghost btn-xs px-1",onclick:()=>n(-1)},D("icon-[lucide--chevron-left]"))]),Tag("span",{class:"font-bold uppercase flex-1 text-center"},[()=>J().toLocaleString("es-ES",{month:"short",year:"numeric"})]),Tag("div",{class:"flex gap-0.5"},[Tag("button",{type:"button",class:"btn btn-ghost btn-xs px-1",onclick:()=>n(1)},D("icon-[lucide--chevron-right]")),Tag("button",{type:"button",class:"btn btn-ghost btn-xs px-1",onclick:()=>o(1)},D("icon-[lucide--chevrons-right]"))])]),Tag("div",{class:"grid grid-cols-7 gap-1",onmouseleave:()=>Q(null)},[...["L","M","X","J","V","S","D"].map((S)=>Tag("div",{class:"text-[10px] opacity-40 font-bold text-center"},S)),()=>{let S=J(),K=S.getFullYear(),N=S.getMonth(),V=new Date(K,N,1).getDay(),y=V===0?6:V-1,Mf=new Date(K,N+1,0).getDate(),Ef=[];for(let I=0;I<y;I++)Ef.push(Tag("div"));for(let I=1;I<=Mf;I++){let nf=new Date(K,N,I),F=z(nf);Ef.push(Tag("button",{type:"button",class:()=>{let H=P(_),Tf=Q(),w_=typeof H==="string"?H.split("T")[0]===F:H?.start===F,H_=H?.end===F,Af=!1;if(Z()&&H?.start){let Lf=H.start;if(!H.end&&Tf)Af=F>Lf&&F<=Tf||F<Lf&&F>=Tf;else if(H.end)Af=F>Lf&&F<H.end}return`${"btn btn-xs p-0 aspect-square min-h-0 h-auto font-normal relative"} ${w_||H_?"btn-primary z-10":Af?"bg-primary/20 border-none rounded-none":"btn-ghost"} ${F===q?"ring-1 ring-primary ring-inset font-black text-primary":""}`},onmouseenter:()=>{if(Z())Q(F)},onclick:()=>d(nf)},[I.toString()]))}return Ef}]),L?Tag("div",{class:"mt-3 pt-2 border-t border-base-300"},[Z()?Tag("div",{class:"flex gap-4"},[x({value:G,onChange:(S)=>{G(S);let K=P(_);if(K?.start)_({...K,startHour:S})}}),x({value:Y,onChange:(S)=>{Y(S);let K=P(_);if(K?.end)_({...K,endHour:S})}})]):x({value:G,onChange:(S)=>{G(S);let K=P(_);if(K&&typeof K==="string"&&K.includes("-"))_(K.split("T")[0]+"T"+String(S).padStart(2,"0")+":00:00")}})]):null])),If(C,()=>Tag("div",{class:"fixed inset-0 z-[90]",onclick:()=>C(!1)}))])};var zf={};R(zf,{Drawer:()=>L_});var L_=(f,M)=>{let{class:_,id:T,open:E,side:A,content:L,...W}=f,C=T||`drawer-${Math.random().toString(36).slice(2,9)}`;return Tag("div",{...W,class:B("drawer",_)},[Tag("input",{id:C,type:"checkbox",class:"drawer-toggle",checked:()=>typeof E==="function"?E():E,onchange:(J)=>{if(typeof E==="function")E(J.target.checked)}}),Tag("div",{class:"drawer-content"},[typeof L==="function"?L():L]),Tag("div",{class:"drawer-side"},[Tag("label",{for:C,class:"drawer-overlay",onclick:()=>{if(typeof E==="function")E(!1)}}),Tag("div",{class:"min-h-full bg-base-200 w-80"},[typeof A==="function"?A():A])])])};var Df={};R(Df,{Dropdown:()=>$_});var w=null;if(typeof window<"u"&&!window.__dropdownHandlerRegistered)window.addEventListener("click",(f)=>{if(w&&!w.contains(f.target))w.open=!1,w=null}),window.__dropdownHandlerRegistered=!0;var $_=(f)=>{let{class:M,label:_,icon:T,items:E,...A}=f;return Tag("details",{...A,class:B("dropdown",M)},[Tag("summary",{class:"btn m-1 flex items-center gap-2 list-none cursor-pointer",style:"display: inline-flex;",onclick:(L)=>{let W=L.currentTarget.closest("details");if(w&&w!==W)w.open=!1;setTimeout(()=>{w=W.open?W:null},0)}},[()=>T?typeof T==="function"?T():T:null,()=>_?typeof _==="function"?_():_:null]),Tag("ul",{tabindex:"-1",class:"dropdown-content z-[50] menu p-2 shadow bg-base-100 rounded-box w-52 border border-base-300"},[()=>{return(typeof E==="function"?E():E||[]).map((W)=>Tag("li",{},[Tag("a",{class:W.class||"",onclick:(C)=>{if(W.onclick)W.onclick(C);let J=C.currentTarget.closest("details");if(J){if(J.open=!1,w===J)w=null}}},[W.icon?Tag("span",{},W.icon):null,Tag("span",{},W.label)])]))}])])};var Nf={};R(Nf,{Fab:()=>W_});var W_=(f)=>{let{class:M,icon:_,label:T,actions:E=[],position:A="bottom-6 right-6",...L}=f;return Tag("div",{...L,class:B(`fab absolute ${A} flex flex-col-reverse items-end gap-3 z-[100]`,M)},[Tag("div",{tabindex:0,role:"button",class:"btn btn-lg btn-circle btn-primary shadow-2xl"},[_?D(_):null,!_&&T?T:null]),...P(E).map((W)=>Tag("div",{class:"flex items-center gap-3 transition-all duration-300"},[W.label?Tag("span",{class:"badge badge-ghost shadow-sm whitespace-nowrap"},W.label):null,Tag("button",{type:"button",class:`btn btn-circle shadow-lg ${W.class||""}`,onclick:(C)=>{C.stopPropagation(),W.onclick?.(C)}},[W.icon?D(W.icon):W.text||""])]))])};var Vf={};R(Vf,{Fieldset:()=>C_});var C_=(f,M)=>{let{class:_,legend:T,...E}=f;return Tag("fieldset",{...E,class:B("fieldset bg-base-200 border border-base-300 p-4 rounded-lg",_)},[()=>{let A=P(T);return A?Tag("legend",{class:"fieldset-legend font-bold"},[A]):null},M])};var kf={};R(kf,{Fileinput:()=>J_});var J_=(f)=>{let{class:M,tooltip:_,max:T=2,accept:E="*",onselect:A,...L}=f,W=$([]),C=$(!1),J=$(null),Q=T*1024*1024,G=(Z)=>{let X=Array.from(Z);if(J(null),X.find((z)=>z.size>Q)){J(`Máx ${T}MB`);return}W([...W(),...X]),A?.(W())},Y=(Z)=>{let X=W().filter((q,z)=>z!==Z);W(X),A?.(X)};return Tag("fieldset",{...L,class:B("fieldset w-full p-0",M)},[Tag("div",{class:()=>`w-full ${_?"tooltip tooltip-top before:z-50 after:z-50":""}`,"data-tip":_},[Tag("label",{class:()=>`
relative flex items-center justify-between w-full h-12 px-4
border-2 border-dashed rounded-lg cursor-pointer
transition-all duration-200
${C()?"border-primary bg-primary/10":"border-base-content/20 bg-base-100 hover:bg-base-200"}
`,ondragover:(Z)=>{Z.preventDefault(),C(!0)},ondragleave:()=>C(!1),ondrop:(Z)=>{Z.preventDefault(),C(!1),G(Z.dataTransfer.files)}},[Tag("div",{class:"flex items-center gap-3 w-full"},[D("icon-[lucide--upload]"),Tag("span",{class:"text-sm opacity-70 truncate grow text-left"},"Arrastra o selecciona archivos..."),Tag("span",{class:"text-[10px] opacity-40 shrink-0"},`Máx ${T}MB`)]),Tag("input",{type:"file",multiple:!0,accept:E,class:"hidden",onchange:(Z)=>G(Z.target.files)})])]),()=>J()?Tag("span",{class:"text-[10px] text-error mt-1 px-1 font-medium"},J()):null,If(()=>W().length>0,()=>Tag("ul",{class:"mt-2 space-y-1"},[For(W,(Z,X)=>Tag("li",{class:"flex items-center justify-between p-1.5 pl-3 text-xs bg-base-200/50 rounded-md border border-base-300"},[Tag("div",{class:"flex items-center gap-2 truncate"},[Tag("span",{class:"opacity-50"},"\uD83D\uDCC4"),Tag("span",{class:"truncate font-medium max-w-[200px]"},Z.name),Tag("span",{class:"text-[9px] opacity-40"},`(${(Z.size/1024).toFixed(0)} KB)`)]),Tag("button",{type:"button",class:"btn btn-ghost btn-xs btn-circle",onclick:(q)=>{q.preventDefault(),q.stopPropagation(),Y(X)}},[D("icon-[lucide--x]")])]),(Z)=>Z.name+Z.lastModified)]))])};var Ff={};R(Ff,{Indicator:()=>P_});var P_=(f,M)=>{let{value:_,class:T,...E}=f;return Tag("div",{...E,class:"indicator"},()=>[_?Tag("span",{class:B("indicator-item badge",T)},()=>typeof _==="function"?_():_):null,M].filter(Boolean))};var Uf={};R(Uf,{Label:()=>B_});var B_=(f)=>{let{children:M,value:_,floating:T=!1,class:E,...A}=f;if(T)return Tag("label",{class:B("floating-label",E),...A},()=>[typeof M==="function"?M():M,_?Tag("span",{},P(_)):null]);return Tag("label",{class:B("label",E),...A},()=>[_?Tag("span",{class:"label-text"},P(_)):null,typeof M==="function"?M():M])};var Of={};R(Of,{List:()=>G_});var G_=(f)=>{let{class:M,items:_,header:T,render:E=(C)=>C,keyFn:A=(C,J)=>C.id??J,...L}=f,W=For(_,(C,J)=>Tag("li",{class:"list-row",style:"width: 100%; display: block;"},[Tag("div",{style:"width: 100%;"},[E(C,J)])]),A);return Tag("ul",{...L,style:"display: block; width: 100%;",class:B("list bg-base-100 rounded-box shadow-md",M)},T?[If(T,()=>Tag("li",{class:"p-4 pb-2 text-xs opacity-60",style:"width: 100%;"},[P(T)])),W]:W)};var wf={};R(wf,{Menu:()=>Q_});var Q_=(f)=>{let{class:M,items:_,...T}=f,E=(A)=>For(()=>A||[],(L)=>Tag("li",{},[L.children?Tag("details",{open:L.open},[Tag("summary",{},[L.icon&&Tag("span",{class:"mr-2"},L.icon),L.label]),Tag("ul",{},E(L.children))]):Tag("a",{class:()=>P(L.active)?"active":"",onclick:L.onclick},[L.icon&&Tag("span",{class:"mr-2"},L.icon),L.label])]),(L,W)=>L.label||W);return Tag("ul",{...T,class:B("menu bg-base-200 rounded-box",M)},E(_))};var Hf={};R(Hf,{Modal:()=>X_});var X_=(f,M)=>{let{class:_,title:T,buttons:E,open:A,...L}=f,W=null,C=()=>{let Q=typeof A==="function"?A():A;if(!W)return;if(Q){if(!W.open)W.showModal()}else if(W.open)W.close()};Watch(()=>C());let J=()=>{if(typeof A==="function")A(!1)};return Tag("dialog",{...L,ref:(Q)=>{if(W=Q,Q)C()},class:B("modal",_),onclose:J,oncancel:J},[Tag("div",{class:"modal-box"},[T?Tag("h3",{class:"text-lg font-bold mb-4"},()=>typeof T==="function"?T():T):null,Tag("div",{class:"py-2"},[typeof M==="function"?M():M]),Tag("div",{class:"modal-action"},[Tag("form",{method:"dialog",class:"flex gap-2"},[...(Array.isArray(E)?E:[E]).filter(Boolean),c({type:"submit"},O("close")())])])]),Tag("form",{method:"dialog",class:"modal-backdrop"},[Tag("button",{},"close")])])};var hf={};R(hf,{Navbar:()=>Z_});var Z_=(f,M)=>{let{class:_,...T}=f;return Tag("div",{...T,class:B("navbar bg-base-100 shadow-sm px-4",_)},M)};var jf={};R(jf,{Radio:()=>S_});var S_=(f)=>{let{class:M,label:_,tooltip:T,value:E,inputValue:A,name:L,...W}=f,C=Tag("input",{...W,type:"radio",name:L,class:B("radio",M),checked:()=>P(E)===A,onclick:()=>{if(typeof E==="function")E(A)}});if(!_&&!T)return C;let J=Tag("label",{class:"label cursor-pointer justify-start gap-3"},[C,_?Tag("span",{class:"label-text"},_):null]);return T?Tag("div",{class:"tooltip","data-tip":T},J):J};var xf={};R(xf,{Range:()=>Y_});var Y_=(f)=>{let{class:M,label:_,tooltip:T,value:E,...A}=f,L=Tag("input",{...A,type:"range",class:B("range",M),value:E,disabled:()=>P(f.disabled)});if(!_&&!T)return L;let W=Tag("div",{class:"flex flex-col gap-2"},[_?Tag("span",{class:"label-text"},_):null,L]);return T?Tag("div",{class:"tooltip","data-tip":T},W):W};var yf={};R(yf,{Rating:()=>q_});var q_=(f)=>{let{class:M,value:_,count:T=5,mask:E="mask-star",readonly:A=!1,onchange:L,...W}=f,C=`rating-${Math.random().toString(36).slice(2,7)}`;return Tag("div",{...W,class:()=>B(`rating ${P(A)?"pointer-events-none":""}`,M)},Array.from({length:P(T)},(J,Q)=>{let G=Q+1;return Tag("input",{type:"radio",name:C,class:`mask ${E}`,checked:()=>Math.round(P(_))===G,onchange:()=>{if(!P(A)){if(typeof L==="function")L(G);else if(typeof _==="function")_(G)}}})}))};var vf={};R(vf,{Select:()=>K_});var K_=(f)=>{let{class:M,label:_,items:T,value:E,...A}=f,L=Tag("select",{...A,class:B("select select-bordered w-full",M),value:E},For(()=>P(T)||[],(W)=>Tag("option",{value:W.value,$selected:()=>String(P(E))===String(W.value)},W.label),(W)=>W.value));if(!_)return L;return Tag("label",{class:"fieldset-label flex flex-col gap-1"},[Tag("span",{},_),L])};var mf={};R(mf,{Stack:()=>R_});var R_=(f,M)=>{let{class:_,...T}=f;return Tag("div",{...T,class:B("stack",_)},M)};var uf={};R(uf,{Stat:()=>z_});var z_=(f)=>{let{class:M,icon:_,label:T,value:E,desc:A,...L}=f;return Tag("div",{...L,class:B("stat",M)},[_&&Tag("div",{class:"stat-figure text-secondary"},_),T&&Tag("div",{class:"stat-title"},T),Tag("div",{class:"stat-value"},()=>P(E)??E),A&&Tag("div",{class:"stat-desc"},A)])};var gf={};R(gf,{Swap:()=>D_});var D_=(f)=>{let{class:M,value:_,on:T,off:E,...A}=f;return Tag("label",{...A,class:B("swap",M)},[Tag("input",{type:"checkbox",checked:()=>P(_),onclick:(L)=>{if(typeof _==="function")_(L.target.checked)}}),Tag("div",{class:"swap-on"},T),Tag("div",{class:"swap-off"},E)])};var bf={};R(bf,{Table:()=>N_});var N_=(f)=>{let{class:M,items:_=[],columns:T=[],keyFn:E,zebra:A=!1,pinRows:L=!1,empty:W=O("nodata")(),...C}=f,J=()=>{let G=P(A)?"table-zebra":"",Y=P(L)?"table-pin-rows":"";return B("table",M,G,Y)},Q=E||((G,Y)=>G.id||Y);return Tag("div",{class:"overflow-x-auto w-full bg-base-100 rounded-box border border-base-300"},[Tag("table",{...C,class:J},[Tag("thead",{},[Tag("tr",{},T.map((G)=>Tag("th",{class:G.class||""},G.label)))]),Tag("tbody",{},[For(_,(G,Y)=>{let Z=()=>{let X=P(_),q=Q(G,Y);return X.find((z,d)=>Q(z,d)===q)||G};return Tag("tr",{class:"hover"},T.map((X)=>{let q=()=>{let z=Z();if(X.render)return X.render(z,Y);return P(z[X.key])};return Tag("td",{class:X.class||""},[q])}))},Q),If(()=>P(_).length===0,()=>Tag("tr",{},[Tag("td",{colspan:T.length,class:"text-center p-10 opacity-50"},[P(W)])]))])])])};var cf={};R(cf,{Tabs:()=>V_});var V_=(f)=>{let{items:M,class:_,...T}=f,E=typeof M==="function"?M:()=>M||[],A=$(0);return Watch(()=>{let L=E().findIndex((W)=>P(W.active)===!0);if(L!==-1&&L!==A())A(L)}),Tag("div",{...T,class:"w-full"},[Tag("div",{role:"tablist",class:B("tabs",_||"tabs-box")},()=>{return E().map((W,C)=>{let J=()=>A()===C,Q=Tag("button",{role:"tab",class:()=>B("tab",J()?"tab-active":""),onclick:(G)=>{if(G.preventDefault(),!P(W.disabled)){if(W.onclick)W.onclick();A(C)}}});return Watch(()=>{let G=P(W.label);if(G instanceof Node)Q.replaceChildren(G);else Q.textContent=String(G)}),Q})}),Tag("div",{class:"tab-panels"},()=>{return E().map((L,W)=>{let C=()=>A()===W;return Tag("div",{role:"tabpanel",class:"tab-content bg-base-100 border-base-300 p-6",style:()=>C()?"display: block":"display: none"},[()=>typeof L.content==="function"?L.content():L.content])})})])};var df={};R(df,{Timeline:()=>k_});var k_=(f)=>{let{class:M,items:_=[],vertical:T=!0,compact:E=!1,...A}=f,L={info:"icon-[lucide--info]",success:"icon-[lucide--check-circle]",warning:"icon-[lucide--alert-triangle]",error:"icon-[lucide--alert-circle]"};return Tag("ul",{...A,class:()=>B(`timeline ${P(T)?"timeline-vertical":"timeline-horizontal"} ${P(E)?"timeline-compact":""}`,M)},()=>{let W=(typeof _==="function"?_():_)||[];return W.map((C,J)=>{let Q=J===0,G=J===W.length-1,Y=C.type||"success",Z=()=>P(C.completed),X=()=>J>0&&P(W[J-1].completed),q=(z)=>typeof z==="function"?z():z;return Tag("li",{class:"flex-1"},[!Q?Tag("hr",{class:()=>X()?"bg-primary":""}):null,Tag("div",{class:"timeline-start"},[()=>q(C.title)]),Tag("div",{class:"timeline-middle"},[()=>C.icon?D(C.icon):D(L[Y]||L.success)]),Tag("div",{class:"timeline-end timeline-box shadow-sm"},[()=>q(C.detail)]),!G?Tag("hr",{class:()=>Z()?"bg-primary":""}):null])})})};var pf={};R(pf,{Toast:()=>F_});var F_=(f,M="alert-success",_=3500)=>{let T=document.getElementById("sigpro-toast-container");if(!T)T=Tag("div",{id:"sigpro-toast-container",class:"fixed top-0 right-0 z-[9999] p-4 flex flex-col gap-2 pointer-events-none"}),document.body.appendChild(T);let E=Tag("div",{style:"display: contents"});T.appendChild(E);let A,L=()=>{clearTimeout(A);let J=E.firstElementChild;if(J&&!J.classList.contains("opacity-0"))J.classList.add("translate-x-full","opacity-0"),setTimeout(()=>{if(C.destroy(),E.remove(),!T.hasChildNodes())T.remove()},300);else C.destroy(),E.remove()},W=()=>{let J=D("icon-[lucide--x]"),Q=Tag("div",{class:`alert alert-soft ${M} shadow-lg transition-all duration-300 translate-x-10 opacity-0 pointer-events-auto`},[Tag("span",{},[typeof f==="function"?f():f]),c({class:"btn-xs btn-circle btn-ghost",onclick:L},J)]);return requestAnimationFrame(()=>Q.classList.remove("translate-x-10","opacity-0")),Q},C=Mount(W,E);if(_>0)A=setTimeout(L,_);return L};var rf={};R(rf,{Tooltip:()=>U_});var U_=(f,M)=>Tag("div",{...f,class:()=>B("tooltip w-full",f.class),"data-tip":f.tip},M);var O_={...Gf,...Qf,...Zf,...Sf,...Yf,...qf,...Kf,...Rf,...zf,...Df,...Nf,...Vf,...kf,...Ff,...Xf,...Uf,...Of,...wf,...Hf,...hf,...jf,...xf,...yf,...vf,...mf,...uf,...gf,...bf,...cf,...df,...pf,...rf},I_={...O_,install:(f=window)=>{Object.entries(O_).forEach(([M,_])=>{f[M]=_}),console.log("\uD83D\uDE80 SigproUI")}};if(typeof window<"u")Object.entries(ff).forEach(([f,M])=>{Object.defineProperty(window,f,{value:M,writable:!1,configurable:!0,enumerable:!0})}),Object.entries(e).forEach(([f,M])=>{Object.defineProperty(window,f,{value:M,writable:!1,configurable:!0,enumerable:!0})}),Object.defineProperty(window,"tt",{value:O,writable:!1,configurable:!0,enumerable:!0}),Object.defineProperty(window,"SigProUI",{value:{...ff,Utils:e,tt:O},writable:!1,configurable:!0,enumerable:!0}),console.log("\uD83C\uDFA8 SigProUI ready");export{P as val,B as ui,O as tt,D as getIcon,v as Watch,U_ as Tooltip,F_ as Toast,k_ as Timeline,m as Tag,V_ as Tabs,N_ as Table,D_ as Swap,z_ as Stat,R_ as Stack,K_ as Select,j as Router,g as Render,q_ as Rating,Y_ as Range,S_ as Radio,Z_ as Navbar,af as Mount,X_ as Modal,Q_ as Menu,G_ as List,B_ as Label,b as Input,P_ as Indicator,sf as If,tf as For,J_ as Fileinput,C_ as Fieldset,W_ as Fab,$_ as Dropdown,L_ as Drawer,A_ as Datepicker,T_ as Colorpicker,E_ as Checkbox,c as Button,M_ as Badge,__ as Autocomplete,f_ as Alert,ef as Accordion,Bf as $$,a as $};