Files
sigpro-ui/dist/sigpro-ui.min.js
2026-04-13 22:23:10 +02:00

8 lines
34 KiB
JavaScript

(()=>{var{defineProperty:Wf,getOwnPropertyNames:w_,getOwnPropertyDescriptor:x_}=Object,y_=Object.prototype.hasOwnProperty;var V_=new WeakMap,I_=(f)=>{var M=V_.get(f),_;if(M)return M;if(M=Wf({},"__esModule",{value:!0}),f&&typeof f==="object"||typeof f==="function")w_(f).map((E)=>!y_.call(M,E)&&Wf(M,E,{get:()=>f[E],enumerable:!(_=x_(f,E))||_.enumerable}));return V_.set(f,M),M};var R=(f,M)=>{for(var _ in M)Wf(f,_,{get:M[_],enumerable:!0,configurable:!0,set:(E)=>M[_]=()=>E})};var n_={};R(n_,{val:()=>T,ui:()=>Z,tt:()=>j,getIcon:()=>z,Watch:()=>m,Tooltip:()=>z_,Toast:()=>C_,Timeline:()=>S_,Tag:()=>h,Tabs:()=>K_,Table:()=>X_,Swap:()=>T_,Stat:()=>G_,Stack:()=>J_,Select:()=>A_,Router:()=>v,Rating:()=>$_,Range:()=>M_,Radio:()=>f_,Navbar:()=>af,Mount:()=>Bf,Modal:()=>sf,Menu:()=>of,List:()=>rf,Label:()=>pf,Input:()=>d,Indicator:()=>cf,If:()=>Pf,For:()=>Tf,Fileinput:()=>vf,Fieldset:()=>uf,Fab:()=>xf,Dropdown:()=>jf,Drawer:()=>kf,Datepicker:()=>Uf,Colorpicker:()=>Of,Checkbox:()=>Nf,Button:()=>r,Badge:()=>Rf,Autocomplete:()=>qf,Alert:()=>Kf,Accordion:()=>Xf,$:()=>p});var k=(f)=>typeof f==="function",O_=(f)=>f&&typeof f==="object",i=Array.isArray,x=typeof document<"u"?document:null,F_=(f)=>f?._isRuntime?f.container:f instanceof Node?f:x.createTextNode(f==null?"":String(f)),O=null,F=null,e=!1,Qf=new Set,Jf=new WeakMap,b=(f)=>{if(!f||f._disposed)return;f._disposed=!0;let M=[f];while(M.length){let _=M.pop();if(_._cleanups)_._cleanups.forEach((E)=>E()),_._cleanups.clear();if(_._children)_._children.forEach((E)=>M.push(E)),_._children.clear();if(_._deps)_._deps.forEach((E)=>E.delete(_)),_._deps.clear()}},u_=(f)=>{if(F)(F._mounts||=[]).push(f)},l=(f)=>{if(F)(F._cleanups||=new Set).add(f)},m_=(f,M,_)=>{if(_===void 0)return f(k(M)?M(f()):M);let E=M.split("."),W={...f()},J=W,L;for(L of E.slice(0,-1))J=J[L]={...J[L]||{}};J[E.at(-1)]=_,f(W)},v_=(f)=>{let M=O;O=null;try{return f()}finally{O=M}},t=(f,M=!1)=>{let _=()=>{if(_._disposed)return;if(_._deps)_._deps.forEach((J)=>J.delete(_));if(_._cleanups)_._cleanups.forEach((J)=>J()),_._cleanups.clear();let E=O,W=F;O=F=_;try{return _._result=f()}catch(J){console.error("[SigPro]",J)}finally{O=E,F=W}};if(_._deps=_._cleanups=_._children=null,_._disposed=!1,_._isComputed=M,_._depth=O?O._depth+1:0,_._mounts=[],_._parent=F,F)(F._children||=new Set).add(_);return _},g_=()=>{if(e)return;e=!0;let f=Array.from(Qf).sort((M,_)=>M._depth-_._depth);Qf.clear();for(let M of f)if(!M._disposed)M();e=!1},s=(f,M=!1)=>{if(!M&&O&&!O._disposed)f.add(O),(O._deps||=new Set).add(f);else if(M){let _=!1;if(f.forEach((E)=>{if(E===O||E._disposed)return;if(E._isComputed){if(E._dirty=!0,E._subs)s(E._subs,!0)}else Qf.add(E),_=!0}),_&&!e)queueMicrotask(g_)}},p=(f,M=null)=>{let _=new Set;if(k(f)){let E,W=!0,J=()=>{if(W){let L=O;O=J;try{let A=f();if(!Object.is(E,A))E=A,W=!1,s(_,!0)}finally{O=L}}return s(_),E};if(J._isComputed=!0,J._subs=_,J._dirty=!0,J._deps=null,J._disposed=!1,J.markDirty=()=>{W=!0},J.stop=()=>{if(J._disposed=!0,J._deps)J._deps.forEach((L)=>L.delete(J)),J._deps.clear();_.clear()},F)l(J.stop);return J}if(M)try{f=JSON.parse(localStorage.getItem(M))??f}catch(E){}return(...E)=>{if(E.length){let W=k(E[0])?E[0](f):E[0];if(!Object.is(f,W)){if(f=W,M)localStorage.setItem(M,JSON.stringify(f));s(_,!0)}}return s(_),f}},m=(f,M)=>{if(M===void 0){let E=t(f);return E(),()=>b(E)}let _=t(()=>{let E=Array.isArray(f)?f.map((W)=>W()):f();v_(()=>M(E))});return _(),()=>b(_)},Gf=(f)=>{if(f._cleanups)f._cleanups.forEach((M)=>M()),f._cleanups.clear();if(f._ownerEffect)b(f._ownerEffect);if(f.childNodes)f.childNodes.forEach(Gf)},c_=/^\s*(javascript|data|vbscript):/i,b_=(f)=>f==="src"||f==="href"||f.startsWith("on"),U_=(f,M)=>{if(M==null||M===!1)return null;if(b_(f)){let _=String(M);if(c_.test(_))return console.warn(`[SigPro] Bloqueado protocolo peligroso en ${f}`),"#"}return M},h=(f,M={},_=[])=>{if(M instanceof Node||i(M)||!O_(M))_=M,M={};if(k(f)){let L={_mounts:[],_cleanups:new Set},A=t(()=>{let P=f(M,{children:_,emit:(S,...K)=>M[`on${S[0].toUpperCase()}${S.slice(1)}`]?.(...K)});return A._result=P,P});A();let Q=A._result;if(Q==null)return null;let G=Q instanceof Node||i(Q)&&Q.every((P)=>P instanceof Node)?Q:x.createTextNode(String(Q)),B=(P)=>{if(O_(P)&&!P._isRuntime)P._mounts=A._mounts||[],P._cleanups=A._cleanups||new Set,P._ownerEffect=A};return i(G)?G.forEach(B):B(G),G}let E=/^(svg|path|circle|rect|line|polyline|polygon|g|defs|text|tspan|use)$/.test(f),W=E?x.createElementNS("http://www.w3.org/2000/svg",f):x.createElement(f);W._cleanups=new Set;for(let L in M){if(!M.hasOwnProperty(L))continue;let A=M[L];if(L==="ref"){k(A)?A(W):A.current=W;continue}if(L.startsWith("on")){let Q=L.slice(2).toLowerCase();W.addEventListener(Q,A);let G=()=>W.removeEventListener(Q,A);W._cleanups.add(G),l(G)}else if(k(A)){let Q=t(()=>{let G=U_(L,A());if(L==="class")W.className=G||"";else if(G==null)W.removeAttribute(L);else if(L in W&&!E)W[L]=G;else W.setAttribute(L,G===!0?"":G)});if(Q(),W._cleanups.add(()=>b(Q)),l(()=>b(Q)),/^(INPUT|TEXTAREA|SELECT)$/.test(W.tagName)&&(L==="value"||L==="checked")){let G=L==="checked"?"change":"input";W.addEventListener(G,(B)=>A(B.target[L]))}}else{let Q=U_(L,A);if(Q!=null)if(L in W&&!E)W[L]=Q;else W.setAttribute(L,Q===!0?"":Q)}}let J=(L)=>{if(i(L))return L.forEach(J);if(k(L)){let A=x.createTextNode("");W.appendChild(A);let Q=[],G=t(()=>{let B=L(),P=(i(B)?B:[B]).map(F_);Q.forEach((K)=>{if(K._isRuntime)K.destroy();else Gf(K);if(K.parentNode)K.remove()});let S=A;for(let K=P.length-1;K>=0;K--){let X=P[K];if(X.parentNode!==S.parentNode)S.parentNode?.insertBefore(X,S);if(X._mounts)X._mounts.forEach((q)=>q());S=X}Q=P});G(),W._cleanups.add(()=>b(G)),l(()=>b(G))}else{let A=F_(L);if(W.appendChild(A),A._mounts)A._mounts.forEach((Q)=>Q())}};return J(_),W},a=(f)=>{let M=new Set,_=[],E=F,W=O,J=x.createElement("div");J.style.display="contents",J.setAttribute("role","presentation"),F={_cleanups:M,_mounts:_},O=null;let L=(A)=>{if(!A)return;if(A._isRuntime)M.add(A.destroy),J.appendChild(A.container);else if(i(A))A.forEach(L);else J.appendChild(A instanceof Node?A:x.createTextNode(String(A==null?"":A)))};try{L(f({onCleanup:(A)=>M.add(A)}))}finally{F=E,O=W}return _.forEach((A)=>A()),{_isRuntime:!0,container:J,destroy:()=>{M.forEach((A)=>A()),Gf(J),J.remove()}}},Pf=(f,M,_=null,E=null)=>{let W=x.createTextNode(""),J=h("div",{style:"display:contents"},[W]),L=null,A=null,Q=null;return m(()=>!!(k(f)?f():f),(G)=>{if(G===A)return;A=G;let B=()=>{if(L)L.destroy(),L=null};if(L&&!G&&E?.out){if(Q&&Q.cancel)Q.cancel();let S=E.out(L.container,B);if(Q=S,S&&S.finished)S.finished.then(B);else B()}else B();let P=G?M:_;if(P){if(L=a(()=>k(P)?P():P),J.insertBefore(L.container,W),E?.in)E.in(L.container)}}),J},Tf=(f,M,_)=>{let E=x.createTextNode(""),W=h("div",{style:"display:contents"},[E]),J=new Map;return m(()=>(k(f)?f():f)||[],(L)=>{let A=new Map,Q=[],G=L||[];for(let P=0;P<G.length;P++){let S=G[P],K=_?_(S,P):S?.id??P,X=J.get(K);if(!X)X=a(()=>M(S,P));else J.delete(K);A.set(K,X),Q.push(X)}J.forEach((P)=>P.destroy());let B=E;for(let P=Q.length-1;P>=0;P--){let K=Q[P].container;if(K.nextSibling!==B)W.insertBefore(K,B);B=K}J=A}),W},v=(f)=>{let M=()=>window.location.hash.slice(1)||"/",_=p(M()),E=()=>_(M());window.addEventListener("hashchange",E),l(()=>window.removeEventListener("hashchange",E));let W=h("div",{class:"router-hook"}),J=null;return m([_],()=>{let L=_(),A=f.find((Q)=>{let G=Q.path.split("/").filter(Boolean),B=L.split("/").filter(Boolean);return G.length===B.length&&G.every((P,S)=>P[0]===":"||P===B[S])})||f.find((Q)=>Q.path==="*");if(A){J?.destroy();let Q={};A.path.split("/").filter(Boolean).forEach((G,B)=>{if(G[0]===":")Q[G.slice(1)]=L.split("/").filter(Boolean)[B]}),v.params(Q),J=a(()=>k(A.component)?A.component(Q):A.component),W.replaceChildren(J.container)}}),W};v.params=p({});v.to=(f)=>window.location.hash=f.replace(/^#?\/?/,"#/");v.back=()=>window.history.back();v.path=()=>window.location.hash.replace(/^#/,"")||"/";var Bf=(f,M)=>{let _=typeof M==="string"?x.querySelector(M):M;if(!_)return;if(Jf.has(_))Jf.get(_).destroy();let E=a(k(f)?f:()=>f);return _.replaceChildren(E.container),Jf.set(_,E),E},h_=Object.freeze({$:p,Watch:m,Tag:h,Render:a,If:Pf,For:Tf,Router:v,Mount:Bf,onMount:u_,onUnmount:l,set:m_});if(typeof window<"u")Object.assign(window,h_),"div span p h1 h2 h3 h4 h5 h6 br hr section article aside nav main header footer ul ol li a em strong pre code form label input textarea select button img svg".split(" ").forEach((f)=>window[f[0].toUpperCase()+f.slice(1)]=(M,_)=>h_.Tag(f,M,_));var _f={};R(_f,{default:()=>r_,Tooltip:()=>z_,Toast:()=>C_,Timeline:()=>S_,Tabs:()=>K_,Table:()=>X_,Swap:()=>T_,Stat:()=>G_,Stack:()=>J_,Select:()=>A_,Rating:()=>$_,Range:()=>M_,Radio:()=>f_,Navbar:()=>af,Modal:()=>sf,Menu:()=>of,List:()=>rf,Label:()=>pf,Input:()=>d,Indicator:()=>cf,Fileinput:()=>vf,Fieldset:()=>uf,Fab:()=>xf,Dropdown:()=>jf,Drawer:()=>kf,Datepicker:()=>Uf,Colorpicker:()=>Of,Checkbox:()=>Nf,Button:()=>r,Badge:()=>Rf,Autocomplete:()=>qf,Alert:()=>Kf,Accordion:()=>Xf});var Zf={};R(Zf,{Accordion:()=>Xf});var ff={};R(ff,{val:()=>T,ui:()=>Z,getIcon:()=>z});var T=(f)=>typeof f==="function"?f():f,Z=(f,M)=>typeof M==="function"?()=>`${f} ${M()||""}`.trim():`${f} ${M||""}`.trim(),z=(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",E=_?M.slice(0,-1).join(" "):f,W=_?"ml-1":"mr-1";if(E&&!E.startsWith("icon-[")&&!E.includes("--"))return Tag("span",{class:W},E);return Tag("span",{class:`${E} ${W}`.trim()})}return null};var Xf=(f,M)=>{let{class:_,title:E,name:W,open:J,...L}=f;return Tag("div",{...L,class:Z("collapse collapse-arrow bg-base-200 mb-2",_)},[Tag("input",{type:W?"radio":"checkbox",name:W,checked:T(J)}),Tag("div",{class:"collapse-title text-xl font-medium"},E),Tag("div",{class:"collapse-content"},M)])};var Yf={};R(Yf,{Alert:()=>Kf});var Kf=(f,M)=>{let{class:_,actions:E,type:W="info",soft:J=!0,...L}=f,A={info:"icon-[lucide--info]",success:"icon-[lucide--check-circle]",warning:"icon-[lucide--alert-triangle]",error:"icon-[lucide--alert-circle]"},B=[`alert-${W}`,J?"alert-soft":"",_].filter(Boolean).join(" "),P=M||f.message;return Tag("div",{...L,role:"alert",class:Z("alert",B)},()=>[z(A[W]),Tag("div",{class:"flex-1"},[Tag("span",{},[typeof P==="function"?P():P])]),E?Tag("div",{class:"flex-none"},[typeof E==="function"?E():E]):null].filter(Boolean))};var Cf={};R(Cf,{Autocomplete:()=>qf});var p_={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"}},d_=$("es");var j=(f)=>()=>p_[d_()][f]||f;var Sf={};R(Sf,{Input:()=>d});var d=(f)=>{let{class:M,value:_,type:E="text",icon:W,oninput:J,placeholder:L,disabled:A,validate:Q,label:G,...B}=f,P=E==="password",S=$(!1),K=$(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=W?z(W):X[E]?z(X[E]):null,D=()=>z(S()?"icon-[lucide--eye-off]":"icon-[lucide--eye]"),w=q?"pl-10":"",I=P?"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 g=V.target.value;if(Q){let Mf=Q(g);K(Mf||null)}J?.(V)},U=()=>K()&&K()!=="",Y=()=>{let V=`input w-full ${w} ${I}`;if(M)V+=` ${M}`;if(U())V+=" input-error";return V.trim()},C=Tag("input",{...B,type:()=>P?S()?"text":"password":E,placeholder:L||(G?" ":L),class:Y,value:_,oninput:o,disabled:()=>T(A),"aria-invalid":()=>U()?"true":"false"}),N=()=>[C,q?Tag("div",{class:"absolute left-3 inset-y-0 flex items-center pointer-events-none text-base-content/60"},q):null,P?Tag("button",{type:"button",class:Z("absolute right-3 inset-y-0 flex items-center","btn btn-ghost btn-circle opacity-50 hover:opacity-100",n()),onclick:(V)=>{V.preventDefault(),S(!S())}},()=>D()):null,Tag("div",{class:"text-error text-xs mt-1 px-3 absolute -bottom-5 left-0"},()=>U()?K():null)];if(G)return Tag("label",{class:Z("floating-label w-full",M)},()=>[Tag("div",{class:"relative w-full"},N),Tag("span",{},T(G))]);return Tag("div",{class:"relative w-full"},N)};var qf=(f)=>{let{class:M,items:_=[],value:E,onselect:W,label:J,placeholder:L,...A}=f,Q=$(T(E)||""),G=$(!1),B=$(-1),P=$(()=>{let X=Q().toLowerCase(),q=T(_)||[];return X?q.filter((D)=>(typeof D==="string"?D:D.label).toLowerCase().includes(X)):q}),S=(X)=>{let q=typeof X==="string"?X:X.value,D=typeof X==="string"?X:X.label;if(Q(D),typeof E==="function")E(q);W?.(X),G(!1),B(-1)},K=(X)=>{let q=P();if(X.key==="ArrowDown")X.preventDefault(),G(!0),B(Math.min(B()+1,q.length-1));else if(X.key==="ArrowUp")X.preventDefault(),B(Math.max(B()-1,0));else if(X.key==="Enter"&&B()>=0)X.preventDefault(),S(q[B()]);else if(X.key==="Escape")G(!1)};return Tag("div",{class:"relative w-full"},[d({label:J,class:M,placeholder:L||j("search")(),value:Q,onfocus:()=>G(!0),onblur:()=>setTimeout(()=>G(!1),150),onkeydown:K,oninput:(X)=>{let q=X.target.value;if(Q(q),typeof E==="function")E(q);G(!0),B(-1)},...A}),Tag("ul",{class:"absolute dropdown-menu 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:()=>G()&&P().length?"display:block":"display:none"},[For(P,(X,q)=>Tag("li",{},[Tag("a",{class:()=>`block w-full ${B()===q?"active bg-primary text-primary-content":""}`,onclick:()=>S(X),onmouseenter:()=>B(q)},typeof X==="string"?X:X.label)]),(X,q)=>(typeof X==="string"?X:X.value)+q),()=>P().length?null:Tag("li",{class:"p-2 text-center opacity-50"},j("nodata")())])])};var zf={};R(zf,{Badge:()=>Rf});var Rf=(f,M)=>{let{class:_,...E}=f;return Tag("span",{...E,class:Z("badge",_)},M)};var Df={};R(Df,{Button:()=>r});var r=(f,M)=>{let{class:_,loading:E,icon:W,...J}=f,L=z(W);return Tag("button",{...J,class:Z("btn",_),disabled:()=>T(E)||T(f.disabled)},()=>[T(E)&&Tag("span",{class:"loading loading-spinner"}),L,M].filter(Boolean))};var Vf={};R(Vf,{Checkbox:()=>Nf});var Nf=(f)=>{let{class:M,value:_,toggle:E,label:W,...J}=f,L=Tag("input",{...J,type:"checkbox",class:()=>Z(T(E)?"toggle":"checkbox",M),checked:_});return Tag("label",{class:"label cursor-pointer justify-start gap-3"},[L,W?Tag("span",{class:"label-text"},W):null])};var Ff={};R(Ff,{Colorpicker:()=>Of});var Of=(f)=>{let{class:M,value:_,label:E,...W}=f,J=$(!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"],A=()=>T(_)||"#000000";return Tag("div",{class:Z("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:(Q)=>{Q.stopPropagation(),J(!J())},...W},[Tag("div",{class:"size-5 rounded-sm shadow-inner border border-black/10 shrink-0",style:()=>`background-color: ${A()}`}),E?Tag("span",{class:"opacity-80"},E):null]),If(J,()=>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:(Q)=>Q.stopPropagation()},[Tag("div",{class:"grid grid-cols-8 gap-1"},L.map((Q)=>Tag("button",{type:"button",style:`background-color: ${Q}`,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
${A().toLowerCase()===Q.toLowerCase()?"ring-2 ring-offset-1 ring-primary z-10 scale-110":""}`},onclick:()=>{if(typeof _==="function")_(Q);J(!1)}})))])),If(J,()=>Tag("div",{class:"fixed inset-0 z-[100]",onclick:()=>J(!1)}))])};var hf={};R(hf,{Datepicker:()=>Uf});var Uf=(f)=>{let{class:M,value:_,range:E,label:W,placeholder:J,hour:L=!1,...A}=f,Q=$(!1),G=$(new Date),B=$(null),P=$(0),S=$(0),K=()=>T(E)===!0,X=new Date,q=`${X.getFullYear()}-${String(X.getMonth()+1).padStart(2,"0")}-${String(X.getDate()).padStart(2,"0")}`,D=(Y)=>{let C=Y.getFullYear(),N=String(Y.getMonth()+1).padStart(2,"0"),V=String(Y.getDate()).padStart(2,"0");return`${C}-${N}-${V}`},w=(Y)=>{let C=D(Y),N=T(_);if(K())if(!N?.start||N.start&&N.end){if(typeof _==="function")_({start:C,end:null,...L&&{startHour:P()}})}else{let V=N.start;if(typeof _==="function"){let g=C<V?{start:C,end:V}:{start:V,end:C};if(L)g.startHour=N.startHour||P(),g.endHour=N.endHour||S();_(g)}Q(!1)}else{if(typeof _==="function")_(L?`${C}T${String(P()).padStart(2,"0")}:00:00`:C);Q(!1)}},I=$(()=>{let Y=T(_);if(!Y)return"";if(typeof Y==="string"){if(L&&Y.includes("T"))return Y.replace("T"," ");return Y}if(Y.start&&Y.end){let C=L&&Y.startHour?`${Y.start} ${String(Y.startHour).padStart(2,"0")}:00`:Y.start,N=L&&Y.endHour?`${Y.end} ${String(Y.endHour).padStart(2,"0")}:00`:Y.end;return`${C} - ${N}`}if(Y.start)return`${L&&Y.startHour?`${Y.start} ${String(Y.startHour).padStart(2,"0")}:00`:Y.start}...`;return""}),n=(Y)=>{let C=G();G(new Date(C.getFullYear(),C.getMonth()+Y,1))},o=(Y)=>{let C=G();G(new Date(C.getFullYear()+Y,C.getMonth(),1))},U=({value:Y,onChange:C})=>{return Tag("div",{class:"flex-1"},[Tag("div",{class:"flex gap-2 items-center"},[Tag("input",{type:"range",min:0,max:23,value:Y,class:"range range-xs flex-1",oninput:(N)=>{let V=parseInt(N.target.value);C(V)}}),Tag("span",{class:"text-sm font-mono min-w-[48px] text-center"},()=>String(T(Y)).padStart(2,"0")+":00")])])};return Tag("div",{class:Z("relative w-full",M)},[d({label:W,placeholder:J||(K()?"Seleccionar rango...":"Seleccionar fecha..."),value:I,readonly:!0,icon:z("icon-[lucide--calendar]"),onclick:(Y)=>{Y.stopPropagation(),Q(!Q())},...A}),If(Q,()=>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:(Y)=>Y.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)},z("icon-[lucide--chevrons-left]")),Tag("button",{type:"button",class:"btn btn-ghost btn-xs px-1",onclick:()=>n(-1)},z("icon-[lucide--chevron-left]"))]),Tag("span",{class:"font-bold uppercase flex-1 text-center"},[()=>G().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)},z("icon-[lucide--chevron-right]")),Tag("button",{type:"button",class:"btn btn-ghost btn-xs px-1",onclick:()=>o(1)},z("icon-[lucide--chevrons-right]"))])]),Tag("div",{class:"grid grid-cols-7 gap-1",onmouseleave:()=>B(null)},[...["L","M","X","J","V","S","D"].map((Y)=>Tag("div",{class:"text-[10px] opacity-40 font-bold text-center"},Y)),()=>{let Y=G(),C=Y.getFullYear(),N=Y.getMonth(),V=new Date(C,N,1).getDay(),g=V===0?6:V-1,Mf=new Date(C,N+1,0).getDate(),Ef=[];for(let c=0;c<g;c++)Ef.push(Tag("div"));for(let c=1;c<=Mf;c++){let N_=new Date(C,N,c),H=D(N_);Ef.push(Tag("button",{type:"button",class:()=>{let u=T(_),$f=B(),H_=typeof u==="string"?u.split("T")[0]===H:u?.start===H,j_=u?.end===H,Lf=!1;if(K()&&u?.start){let Af=u.start;if(!u.end&&$f)Lf=H>Af&&H<=$f||H<Af&&H>=$f;else if(u.end)Lf=H>Af&&H<u.end}return`${"btn btn-xs p-0 aspect-square min-h-0 h-auto font-normal relative"} ${H_||j_?"btn-primary z-10":Lf?"bg-primary/20 border-none rounded-none":"btn-ghost"} ${H===q?"ring-1 ring-primary ring-inset font-black text-primary":""}`},onmouseenter:()=>{if(K())B(H)},onclick:()=>w(N_)},[c.toString()]))}return Ef}]),L?Tag("div",{class:"mt-3 pt-2 border-t border-base-300"},[K()?Tag("div",{class:"flex gap-4"},[U({value:P,onChange:(Y)=>{P(Y);let C=T(_);if(C?.start)_({...C,startHour:Y})}}),U({value:S,onChange:(Y)=>{S(Y);let C=T(_);if(C?.end)_({...C,endHour:Y})}})]):U({value:P,onChange:(Y)=>{P(Y);let C=T(_);if(C&&typeof C==="string"&&C.includes("-"))_(C.split("T")[0]+"T"+String(Y).padStart(2,"0")+":00:00")}})]):null])),If(Q,()=>Tag("div",{class:"fixed inset-0 z-[90]",onclick:()=>Q(!1)}))])};var Hf={};R(Hf,{Drawer:()=>kf});var kf=(f,M)=>{let{class:_,id:E,open:W,side:J,content:L,...A}=f,Q=E||`drawer-${Math.random().toString(36).slice(2,9)}`;return Tag("div",{...A,class:Z("drawer",_)},[Tag("input",{id:Q,type:"checkbox",class:"drawer-toggle",checked:()=>typeof W==="function"?W():W,onchange:(G)=>{if(typeof W==="function")W(G.target.checked)}}),Tag("div",{class:"drawer-content"},[typeof L==="function"?L():L]),Tag("div",{class:"drawer-side"},[Tag("label",{for:Q,class:"drawer-overlay",onclick:()=>{if(typeof W==="function")W(!1)}}),Tag("div",{class:"min-h-full bg-base-200 w-80"},[typeof J==="function"?J():J])])])};var wf={};R(wf,{Dropdown:()=>jf});var y=null;if(typeof window<"u"&&!window.__dropdownHandlerRegistered)window.addEventListener("click",(f)=>{if(y&&!y.contains(f.target))y.open=!1,y=null}),window.__dropdownHandlerRegistered=!0;var jf=(f)=>{let{class:M,label:_,icon:E,items:W,...J}=f;return Tag("details",{...J,class:Z("dropdown",M)},[Tag("summary",{class:"btn m-1 flex items-center gap-2 list-none cursor-pointer",style:"display: inline-flex;",onclick:(L)=>{let A=L.currentTarget.closest("details");if(y&&y!==A)y.open=!1;setTimeout(()=>{y=A.open?A:null},0)}},[()=>E?typeof E==="function"?E():E: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 W==="function"?W():W||[]).map((A)=>Tag("li",{},[Tag("a",{class:A.class||"",onclick:(Q)=>{if(A.onclick)A.onclick(Q);let G=Q.currentTarget.closest("details");if(G){if(G.open=!1,y===G)y=null}}},[A.icon?Tag("span",{},A.icon):null,Tag("span",{},A.label)])]))}])])};var yf={};R(yf,{Fab:()=>xf});var xf=(f)=>{let{class:M,icon:_,label:E,actions:W=[],position:J="bottom-6 right-6",...L}=f;return Tag("div",{...L,class:Z(`fab absolute ${J} 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"},[_?z(_):null,!_&&E?E:null]),...T(W).map((A)=>Tag("div",{class:"flex items-center gap-3 transition-all duration-300"},[A.label?Tag("span",{class:"badge badge-ghost shadow-sm whitespace-nowrap"},A.label):null,Tag("button",{type:"button",class:`btn btn-circle shadow-lg ${A.class||""}`,onclick:(Q)=>{Q.stopPropagation(),A.onclick?.(Q)}},[A.icon?z(A.icon):A.text||""])]))])};var mf={};R(mf,{Fieldset:()=>uf});var uf=(f,M)=>{let{class:_,legend:E,...W}=f;return Tag("fieldset",{...W,class:Z("fieldset bg-base-200 border border-base-300 p-4 rounded-lg",_)},[()=>{let J=T(E);return J?Tag("legend",{class:"fieldset-legend font-bold"},[J]):null},M])};var gf={};R(gf,{Fileinput:()=>vf});var vf=(f)=>{let{class:M,tooltip:_,max:E=2,accept:W="*",onselect:J,...L}=f,A=$([]),Q=$(!1),G=$(null),B=E*1024*1024,P=(K)=>{let X=Array.from(K);if(G(null),X.find((D)=>D.size>B)){G(`Máx ${E}MB`);return}A([...A(),...X]),J?.(A())},S=(K)=>{let X=A().filter((q,D)=>D!==K);A(X),J?.(X)};return Tag("fieldset",{...L,class:Z("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
${Q()?"border-primary bg-primary/10":"border-base-content/20 bg-base-100 hover:bg-base-200"}
`,ondragover:(K)=>{K.preventDefault(),Q(!0)},ondragleave:()=>Q(!1),ondrop:(K)=>{K.preventDefault(),Q(!1),P(K.dataTransfer.files)}},[Tag("div",{class:"flex items-center gap-3 w-full"},[z("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 ${E}MB`)]),Tag("input",{type:"file",multiple:!0,accept:W,class:"hidden",onchange:(K)=>P(K.target.files)})])]),()=>G()?Tag("span",{class:"text-[10px] text-error mt-1 px-1 font-medium"},G()):null,If(()=>A().length>0,()=>Tag("ul",{class:"mt-2 space-y-1"},[For(A,(K,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]"},K.name),Tag("span",{class:"text-[9px] opacity-40"},`(${(K.size/1024).toFixed(0)} KB)`)]),Tag("button",{type:"button",class:"btn btn-ghost btn-xs btn-circle",onclick:(q)=>{q.preventDefault(),q.stopPropagation(),S(X)}},[z("icon-[lucide--x]")])]),(K)=>K.name+K.lastModified)]))])};var bf={};R(bf,{Indicator:()=>cf});var cf=(f,M)=>{let{value:_,class:E,...W}=f;return Tag("div",{...W,class:"indicator"},()=>[_?Tag("span",{class:Z("indicator-item badge",E)},()=>typeof _==="function"?_():_):null,M].filter(Boolean))};var df={};R(df,{Label:()=>pf});var pf=(f)=>{let{children:M,value:_,floating:E=!1,class:W,...J}=f;if(E)return Tag("label",{class:Z("floating-label",W),...J},()=>[typeof M==="function"?M():M,_?Tag("span",{},T(_)):null]);return Tag("label",{class:Z("label",W),...J},()=>[_?Tag("span",{class:"label-text"},T(_)):null,typeof M==="function"?M():M])};var nf={};R(nf,{List:()=>rf});var rf=(f)=>{let{class:M,items:_,header:E,render:W=(Q)=>Q,keyFn:J=(Q,G)=>Q.id??G,...L}=f,A=For(_,(Q,G)=>Tag("li",{class:"list-row",style:"width: 100%; display: block;"},[Tag("div",{style:"width: 100%;"},[W(Q,G)])]),J);return Tag("ul",{...L,style:"display: block; width: 100%;",class:Z("list bg-base-100 rounded-box shadow-md",M)},E?[If(E,()=>Tag("li",{class:"p-4 pb-2 text-xs opacity-60",style:"width: 100%;"},[T(E)])),A]:A)};var lf={};R(lf,{Menu:()=>of});var of=(f)=>{let{class:M,items:_,...E}=f,W=(J)=>For(()=>J||[],(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",{},W(L.children))]):Tag("a",{class:()=>T(L.active)?"active":"",onclick:L.onclick},[L.icon&&Tag("span",{class:"mr-2"},L.icon),L.label])]),(L,A)=>L.label||A);return Tag("ul",{...E,class:Z("menu bg-base-200 rounded-box",M)},W(_))};var tf={};R(tf,{Modal:()=>sf});var sf=(f,M)=>{let{class:_,title:E,buttons:W,open:J,...L}=f,A=null,Q=()=>{let B=typeof J==="function"?J():J;if(!A)return;if(B){if(!A.open)A.showModal()}else if(A.open)A.close()};Watch(()=>Q());let G=()=>{if(typeof J==="function")J(!1)};return Tag("dialog",{...L,ref:(B)=>{if(A=B,B)Q()},class:Z("modal",_),onclose:G,oncancel:G},[Tag("div",{class:"modal-box"},[E?Tag("h3",{class:"text-lg font-bold mb-4"},()=>typeof E==="function"?E():E):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(W)?W:[W]).filter(Boolean),r({type:"submit"},j("close")())])])]),Tag("form",{method:"dialog",class:"modal-backdrop"},[Tag("button",{},"close")])])};var ef={};R(ef,{Navbar:()=>af});var af=(f,M)=>{let{class:_,...E}=f;return Tag("div",{...E,class:Z("navbar bg-base-100 shadow-sm px-4",_)},M)};var __={};R(__,{Radio:()=>f_});var f_=(f)=>{let{class:M,label:_,tooltip:E,value:W,inputValue:J,name:L,...A}=f,Q=Tag("input",{...A,type:"radio",name:L,class:Z("radio",M),checked:()=>T(W)===J,onclick:()=>{if(typeof W==="function")W(J)}});if(!_&&!E)return Q;let G=Tag("label",{class:"label cursor-pointer justify-start gap-3"},[Q,_?Tag("span",{class:"label-text"},_):null]);return E?Tag("div",{class:"tooltip","data-tip":E},G):G};var E_={};R(E_,{Range:()=>M_});var M_=(f)=>{let{class:M,label:_,tooltip:E,value:W,...J}=f,L=Tag("input",{...J,type:"range",class:Z("range",M),value:W,disabled:()=>T(f.disabled)});if(!_&&!E)return L;let A=Tag("div",{class:"flex flex-col gap-2"},[_?Tag("span",{class:"label-text"},_):null,L]);return E?Tag("div",{class:"tooltip","data-tip":E},A):A};var L_={};R(L_,{Rating:()=>$_});var $_=(f)=>{let{class:M,value:_,count:E=5,mask:W="mask-star",readonly:J=!1,onchange:L,...A}=f,Q=`rating-${Math.random().toString(36).slice(2,7)}`;return Tag("div",{...A,class:()=>Z(`rating ${T(J)?"pointer-events-none":""}`,M)},Array.from({length:T(E)},(G,B)=>{let P=B+1;return Tag("input",{type:"radio",name:Q,class:`mask ${W}`,checked:()=>Math.round(T(_))===P,onchange:()=>{if(!T(J)){if(typeof L==="function")L(P);else if(typeof _==="function")_(P)}}})}))};var W_={};R(W_,{Select:()=>A_});var A_=(f)=>{let{class:M,label:_,items:E,value:W,...J}=f,L=Tag("select",{...J,class:Z("select select-bordered w-full",M),value:W},For(()=>T(E)||[],(A)=>Tag("option",{value:A.value,$selected:()=>String(T(W))===String(A.value)},A.label),(A)=>A.value));if(!_)return L;return Tag("label",{class:"fieldset-label flex flex-col gap-1"},[Tag("span",{},_),L])};var Q_={};R(Q_,{Stack:()=>J_});var J_=(f,M)=>{let{class:_,...E}=f;return Tag("div",{...E,class:Z("stack",_)},M)};var P_={};R(P_,{Stat:()=>G_});var G_=(f)=>{let{class:M,icon:_,label:E,value:W,desc:J,...L}=f;return Tag("div",{...L,class:Z("stat",M)},[_&&Tag("div",{class:"stat-figure text-secondary"},_),E&&Tag("div",{class:"stat-title"},E),Tag("div",{class:"stat-value"},()=>T(W)??W),J&&Tag("div",{class:"stat-desc"},J)])};var B_={};R(B_,{Swap:()=>T_});var T_=(f)=>{let{class:M,value:_,on:E,off:W,...J}=f;return Tag("label",{...J,class:Z("swap",M)},[Tag("input",{type:"checkbox",checked:()=>T(_),onclick:(L)=>{if(typeof _==="function")_(L.target.checked)}}),Tag("div",{class:"swap-on"},E),Tag("div",{class:"swap-off"},W)])};var Z_={};R(Z_,{Table:()=>X_});var X_=(f)=>{let{class:M,items:_=[],columns:E=[],keyFn:W,zebra:J=!1,pinRows:L=!1,empty:A=j("nodata")(),...Q}=f,G=()=>{let P=T(J)?"table-zebra":"",S=T(L)?"table-pin-rows":"";return Z("table",M,P,S)},B=W||((P,S)=>P.id||S);return Tag("div",{class:"overflow-x-auto w-full bg-base-100 rounded-box border border-base-300"},[Tag("table",{...Q,class:G},[Tag("thead",{},[Tag("tr",{},E.map((P)=>Tag("th",{class:P.class||""},P.label)))]),Tag("tbody",{},[For(_,(P,S)=>{let K=()=>{let X=T(_),q=B(P,S);return X.find((D,w)=>B(D,w)===q)||P};return Tag("tr",{class:"hover"},E.map((X)=>{let q=()=>{let D=K();if(X.render)return X.render(D,S);return T(D[X.key])};return Tag("td",{class:X.class||""},[q])}))},B),If(()=>T(_).length===0,()=>Tag("tr",{},[Tag("td",{colspan:E.length,class:"text-center p-10 opacity-50"},[T(A)])]))])])])};var Y_={};R(Y_,{Tabs:()=>K_});var K_=(f)=>{let{items:M,class:_,onTabClose:E,...W}=f,J=typeof M==="function"?M:()=>M||[],L=p(0);m(()=>{let G=J().findIndex((B)=>T(B.active)===!0);if(G!==-1&&L()!==G)L(G)});let A=(Q,G)=>{if(G.onClose)G.onClose(G);if(E)E(G,Q);let P=J().filter((X,q)=>q!==Q);if(!(typeof M==="function"&&!M._isComputed)){console.warn("Tabs: items must be a writable signal to support closable tabs");return}if(M(P),P.length===0)return;let K=L();if(Q<K)K--;else if(Q===K)K=Math.min(K,P.length-1);L(K)};return h("div",{...W,class:Z("tabs",_)},()=>{let Q=J(),G=[];for(let B=0;B<Q.length;B++){let P=Q[B],S=T(P.label),K=S instanceof Node?S:document.createTextNode(String(S)),X=[];if(P.closable){let U=z("icon-[lucide--x]");U.classList.add("w-3.5","h-3.5","ml-2","cursor-pointer","hover:opacity-70"),U.onclick=(C)=>{C.stopPropagation(),A(B,P)};let Y=h("span",{class:"flex items-center"},[K,U]);X.push(Y)}else X.push(K);let q=h("button",{class:()=>Z("tab",L()===B?"tab-active":""),onclick:(U)=>{if(U.preventDefault(),!T(P.disabled)){if(P.onclick)P.onclick();L(B)}}},X),D=P.tip?h("div",{class:"tooltip","data-tip":P.tip},q):q;G.push(D);let w,I=T(P.content);if(typeof I==="function")w=I();else if(I instanceof Node)w=I;else w=document.createTextNode(String(I));let n=h("div",{class:"tab-content-inner"},w),o=h("div",{class:"tab-content bg-base-100 border-base-300 p-6",style:()=>L()===B?"display: block":"display: none"},n);G.push(o)}return G})};var q_={};R(q_,{Timeline:()=>S_});var S_=(f)=>{let{class:M,items:_=[],vertical:E=!0,compact:W=!1,...J}=f,L={info:"icon-[lucide--info]",success:"icon-[lucide--check-circle]",warning:"icon-[lucide--alert-triangle]",error:"icon-[lucide--alert-circle]"};return Tag("ul",{...J,class:()=>Z(`timeline ${T(E)?"timeline-vertical":"timeline-horizontal"} ${T(W)?"timeline-compact":""}`,M)},()=>{let A=(typeof _==="function"?_():_)||[];return A.map((Q,G)=>{let B=G===0,P=G===A.length-1,S=Q.type||"success",K=()=>T(Q.completed),X=()=>G>0&&T(A[G-1].completed),q=(D)=>typeof D==="function"?D():D;return Tag("li",{class:"flex-1"},[!B?Tag("hr",{class:()=>X()?"bg-primary":""}):null,Tag("div",{class:"timeline-start"},[()=>q(Q.title)]),Tag("div",{class:"timeline-middle"},[()=>Q.icon?z(Q.icon):z(L[S]||L.success)]),Tag("div",{class:"timeline-end timeline-box shadow-sm"},[()=>q(Q.detail)]),!P?Tag("hr",{class:()=>K()?"bg-primary":""}):null])})})};var R_={};R(R_,{Toast:()=>C_});var C_=(f,M="alert-success",_=3500)=>{let E=document.getElementById("sigpro-toast-container");if(!E)E=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(E);let W=Tag("div",{style:"display: contents"});E.appendChild(W);let J,L=()=>{clearTimeout(J);let G=W.firstElementChild;if(G&&!G.classList.contains("opacity-0"))G.classList.add("translate-x-full","opacity-0"),setTimeout(()=>{if(Q.destroy(),W.remove(),!E.hasChildNodes())E.remove()},300);else Q.destroy(),W.remove()},A=()=>{let G=z("icon-[lucide--x]"),B=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]),r({class:"btn-xs btn-circle btn-ghost",onclick:L},G)]);return requestAnimationFrame(()=>B.classList.remove("translate-x-10","opacity-0")),B},Q=Mount(A,W);if(_>0)J=setTimeout(L,_);return L};var D_={};R(D_,{Tooltip:()=>z_});var z_=(f,M)=>Tag("div",{...f,class:()=>Z("tooltip w-full",f.class),"data-tip":f.tip},M);var k_={...Zf,...Yf,...Cf,...zf,...Df,...Vf,...Ff,...hf,...Hf,...wf,...yf,...mf,...gf,...bf,...Sf,...df,...nf,...lf,...tf,...ef,...__,...E_,...L_,...W_,...Q_,...P_,...B_,...Z_,...Y_,...q_,...R_,...D_},r_={...k_,install:(f=window)=>{Object.entries(k_).forEach(([M,_])=>{f[M]=_}),console.log("\uD83D\uDE80 SigproUI")}};if(typeof window<"u")Object.entries(_f).forEach(([f,M])=>{Object.defineProperty(window,f,{value:M,writable:!1,configurable:!0,enumerable:!0})}),Object.entries(ff).forEach(([f,M])=>{Object.defineProperty(window,f,{value:M,writable:!1,configurable:!0,enumerable:!0})}),Object.defineProperty(window,"tt",{value:j,writable:!1,configurable:!0,enumerable:!0}),Object.defineProperty(window,"SigProUI",{value:{..._f,Utils:ff,tt:j},writable:!1,configurable:!0,enumerable:!0}),console.log("\uD83C\uDFA8 SigProUI ready");})();