Files
sigpro/dist/sigpro.ui.js
2026-05-15 00:32:38 +02:00

2 lines
16 KiB
JavaScript

var{$:f,h:e,mount:j,val:x,isF:h,isA:P,isO:S}=window.SigPro,B=()=>document.activeElement?.blur(),b={accordion:(s,a)=>e("div",{...s,class:`collapse ${s.class||""}`},[e("input",{type:"radio",name:s.name,checked:s.checked}),a]),accordion_title:(s,a)=>e("div",{...s,class:`collapse-title ${s.class||""}`},a),accordion_content:(s,a)=>e("div",{...s,class:`collapse-content ${s.class||""}`},a),alert:(s,a)=>e("div",{...s,class:`alert ${s.class||""}`},a),autocomplete:(s)=>b.combo(s,({query:a,close:t,setValue:l})=>e("ul",{class:"menu bg-base-100 w-full"},()=>{let r=String(x(a)).toLowerCase(),o=(x(s.items)||[]).filter((c)=>(S(c)?c.label??c.value:String(c)).toLowerCase().includes(r));return o.length?o.map((c,i)=>e("li",{key:c.value??i},e("a",{onclick:(u)=>{u.preventDefault();let d=c?.value??c;if(l(S(c)?c.label??c.value:String(c)),h(s.value))s.value(d);else s.onChange?.(d);t()}},S(c)?c.label??c.value:c))):[e("li",{class:"disabled"},e("a",{},"Sin resultados"))]})),avatar:(s,a)=>e("div",{...s,class:`avatar ${s.class||""}`},e("div",{class:s.innerClass||""},a)),avatar_group:(s,a)=>e("div",{...s,class:`avatar-group -space-x-6 ${s.class||""}`},a),badge:(s,a)=>e("span",{...s,class:`badge ${s.class||""}`},a),breadcrumbs:(s,a)=>e("div",{...s,class:`breadcrumbs ${s.class||""}`},a),button:(s,a)=>e("button",{...s,class:`btn ${s.class||""}`},a),card:(s,a)=>e("div",{...s,class:`card ${s.class||""}`},a),card_title:(s,a)=>e("div",{...s,class:`card-title ${s.class||""}`},a),card_body:(s,a)=>e("div",{...s,class:`card-body ${s.class||""}`},a),card_actions:(s,a)=>e("div",{...s,class:`card-actions ${s.class||""}`},a),carousel:(s,a)=>e("div",{...s,class:`carousel ${s.class||""}`},a),carousel_item:(s,a)=>e("div",{...s,class:`carousel-item ${s.class||""}`},a),chat:(s,a)=>e("div",{...s,class:`chat ${s.class||""}`},a),chat_image:(s,a)=>e("div",{...s,class:`chat-image avatar ${s.class||""}`},a),chat_header:(s,a)=>e("div",{...s,class:`chat-header ${s.class||""}`},a),chat_bubble:(s,a)=>e("div",{...s,class:`chat-bubble ${s.class||""}`},a),chat_footer:(s,a)=>e("div",{...s,class:`chat-footer ${s.class||""}`},a),checkbox:(s)=>e("input",{...s,type:"checkbox",class:`checkbox ${s.class||""}`}),colorpicker:(s)=>b.combo({...s,custom:()=>e("span",{class:"w-4 h-4 rounded border border-base-300",style:`background:${x(s.value)||"#000"}`})},({close:a,setValue:t})=>E({...s,onchange:(l)=>{t(l),a()}})),combo:(s,a)=>{let{placeholder:t="",class:l=""}=s,r=h(s.value)?s.value:f(s.value??""),o,c=f(!1);return b.float({label:s.label},[e("div",{class:`dropdown w-full ${l} ${x(c)?"dropdown-open":""}`},[e("label",{class:"input w-full"},[e("span",{class:s.icon??"icon-[lucide--search]"}),s.custom??null,e("input",{type:"search",placeholder:t,tabindex:"0",value:r,onfocus:()=>c(!0),ref:(i)=>o=i})]),e("div",{class:"dropdown-content bg-base-100 rounded-box z-50 max-w-80 shadow-sm",onmousedown:(i)=>i.preventDefault()},()=>x(c)&&typeof a==="function"?a({query:r,open:c,close:()=>{c(!1),o?.blur()},setValue:(i)=>r(i)}):null)])])},datepicker:(s)=>{if(!(h(s.range)?s.range():s.range))return b.combo({value:(h(s.value)?s.value():s.value)||"",...s},({close:i,setValue:u})=>e("div",{class:"w-80"},L({...s,class:"w-full",onChange:(d)=>{if(u(d),i(),h(s.value))s.value(d)}})));let t=f(h(s.value)?s.value():s.value||{start:null,end:null}),l=f((t()||{}).start||""),r=f((t()||{}).end||""),o=()=>{if(t({start:l(),end:r()}),h(s.value))s.value(t())},c=(i,u,d,$)=>b.combo({value:u,placeholder:d,class:"flex-1",disabled:$},({close:_,setValue:y})=>e("div",{class:"w-72"},L({...s,class:"w-full",value:t,range:!0,onChange:(n)=>{if(t(n),l(n?.start||""),r(n?.end||""),y(n?.[i]||""),n?.end)_();if(h(s.value))s.value(n)}})));return e("div",{class:`flex gap-1 ${s.class||""}`,onchange:o},[c("start",l,s.fromPlaceholder||"Inicio"),c("end",r,s.toPlaceholder||"Fin",()=>!t()?.start)])},dialog:(s,a)=>{let t=f(s.pos||{x:100,y:100}),l=f(s.show||!1),r=f(!1);return watch(l,(o)=>o?setTimeout(()=>r(!0),10):r(!1)),e("div",{class:()=>`fixed z-50 transition-all duration-300 ${l()?r()?"opacity-100 scale-100":"opacity-0 scale-95":"opacity-0 scale-95 pointer-events-none"}`,style:()=>`left: ${t().x}px; top: ${t().y}px;`},[e("div",{class:`bg-base-100 rounded-box shadow-2xl border border-base-300 ${s.class||""}`,onclick:(o)=>o.stopPropagation()},[s.title?e("div",{class:"flex justify-between items-center cursor-move p-2 border-b select-none bg-base-200 rounded-t-box",onmousedown:(o)=>{let c=o.clientX-t().x,i=o.clientY-t().y,u=($)=>t({x:$.clientX-c,y:$.clientY-i}),d=()=>{document.removeEventListener("mousemove",u),document.removeEventListener("mouseup",d)};document.addEventListener("mousemove",u),document.addEventListener("mouseup",d),o.preventDefault()}},[e("span",{class:"font-bold"},s.title),e("button",{class:"btn btn-sm btn-circle btn-ghost",onclick:()=>l(!1)},"✕")]):null,e("div",{class:"p-4"},a),s.footer?e("div",{class:"p-2 border-t flex justify-end gap-2"},s.footer):null])])},divider:(s)=>e("div",{...s,class:`divider ${s.class||""}`}),drawer:(s,a)=>e("div",{...s,class:`drawer ${s.class||""}`},a),drawer_toggle:(s)=>e("input",{...s,type:"checkbox",class:`drawer-toggle ${s.class||""}`}),drawer_content:(s,a)=>e("div",{...s,class:`drawer-content ${s.class||""}`},a),drawer_side:(s,a)=>e("div",{...s,class:`drawer-side ${s.class||""}`},a),drawer_overlay:(s)=>e("label",{...s,class:`drawer-overlay ${s.class||""}`}),dropdown:(s,a)=>e("div",{...s,class:`dropdown ${s.class||""}`},a),dropdown_button:(s,a)=>e("div",{...s,tabindex:"0",role:"button",class:`btn ${s.class||""}`},a),dropdown_content:(s,a)=>e("div",{...s,tabindex:"0",class:`dropdown-content ${s.class||""}`},a),fab:(s,a)=>e("div",{...s,class:`fab ${s.class||""}`},a),fab_button:(s,a)=>e("div",{...s,tabindex:"0",role:"button",class:`btn ${s.class||""}`},a),fieldset:(s,a)=>e("fieldset",{class:`fieldset ${s.class||""}`},[e("legend",{class:"fieldset-legend"},s.label),a]),file:(s)=>e("input",{...s,type:"file",class:`file-input ${s.class||""}`}),file_drag:(s,a)=>e("label",{class:()=>`relative flex items-center justify-between h-12 px-4 border-2 border-dashed rounded-lg cursor-pointer transition-all ${s.drag?"border-primary bg-primary/10":"border-base-content/20 bg-base-100"} ${s.class||""}`,ondragover:(t)=>{t.preventDefault(),s.ondrag?.(!0)},ondragleave:()=>s.ondrag?.(!1),ondrop:(t)=>{t.preventDefault(),s.ondrag?.(!1),s.ondrop?.(t.dataTransfer.files)}},a),file_preview:(s)=>e("ul",{class:`mt-2 space-y-1 ${s.class||""}`},(s.files||[]).map((a,t)=>e("li",{class:"flex items-center justify-between p-1.5 pl-3 text-xs bg-base-200/50 rounded-md border"},[e("div",{class:"flex items-center gap-2 truncate opacity-70"},[e("span",{},"\uD83D\uDCC4"),e("span",{class:"truncate max-w-[180px]"},a.name),e("span",{class:"text-[9px] opacity-50"},`(${~~(a.size/1024)}KB)`)]),e("button",{class:"btn btn-ghost btn-xs btn-circle",onclick:()=>s.onremove?.(t)},e("span",{class:"icon-[lucide--x]"}))]))),file_error:(s)=>e("div",{class:`text-[10px] text-error mt-1 px-1 ${s.class||""}`},s.message),float:(s,a)=>e("label",{class:"floating-label"},[e("span",{},s.label??null),a]),indicator:(s,a)=>e("div",{...s,class:`indicator ${s.class||""}`},[s.value&&e("span",{class:`indicator-item badge ${s.badgeClass||""}`},s.value),a]),input:(s)=>b.float({label:s.label},[e("label",{class:"input w-full"},[span({class:`${s.icon??""}`}),e("input",{...s,class:`w-full ${s.class||""}`}),s.right||null])]),kbd:(s,a)=>e("kbd",{...s,class:`kbd ${s.class||""}`},a),label:(s,a)=>e("span",{...s,class:`label ${s.class||""}`},a),loading:(s)=>e("span",{...s,class:`loading loading-spinner ${s.class||""}`}),menu:(s,a)=>e("ul",{...s,class:`menu ${s.class||""}`},a),menu_title:(s,a)=>e("li",{...s,class:"menu-title"},a),menu_item:(s)=>s.items?e("li",{},[e("details",{open:s.open||!1},[e("summary",{},s.label),e("ul",{class:s.submenuClass||""},s.items.map((a)=>b.menu_item(a)))])]):e("li",{},s.href||s.onclick?e("a",{...s.href?{href:s.href}:{},onclick:s.onclick},s.label):s.label),modal:(s,a)=>e("dialog",{...s,class:`modal ${s.class||""}`},[a,e("form",{method:"dialog",class:"modal-backdrop"},e("button",{},"close"))]),modal_box:(s,a)=>e("div",{...s,class:`modal-box ${s.class||""}`},[e("form",{method:"dialog"},e("button",{class:"btn btn-sm btn-circle btn-ghost absolute right-2 top-2"},"✕")),a]),modal_action:(s,a)=>e("div",{...s,class:`modal-action ${s.class||""}`},a),navbar:(s,a)=>e("div",{...s,class:`navbar ${s.class||""}`},a),option:(s,a)=>e("option",{...s},a),password:(s)=>{let a=f(!1),{right:t,...l}=s;return b.input({...l,type:()=>x(a)?"text":"password",icon:"icon-[lucide--lock]",right:b.swap({value:a,class:"swap-rotate"},[b.swap_on({},span({class:"icon-[lucide--eye]"})),b.swap_off({},span({class:"icon-[lucide--eye-off]"}))])})},progress:(s)=>e("progress",{...s,class:`progress ${s.class||""}`}),radial:(s)=>e("div",{...s,class:`radial-progress ${s.class||""}`,style:`--value:${x(s.value)??0}`,role:"progressbar"},s.value??""),radio:(s)=>e("input",{...s,type:"radio",class:`radio ${s.class||""}`}),range:(s)=>e("input",{...s,type:"range",class:`range ${s.class||""}`}),rating:(s)=>e("div",{class:`rating ${s.class||""}`},[...Array(s.count||5)].map((a,t)=>e("input",{class:`mask ${s.mask||"mask-star"} ${s.itemClass||""}`,name:s.name,type:"radio",checked:()=>x(s.value)===(s.offset?t+s.offset:t),onclick:()=>h(s.value)?s.value(t):s.onChange?.(t)}))),search:(s)=>b.input({...s,type:"search",icon:s.icon??"icon-[lucide--search]"}),select:(s,a)=>e("select",{...s,class:`select ${s.class||""}`},a),stack:(s,a)=>e("div",{...s,class:`stack ${s.class||""}`},a),stat:(s,a)=>e("div",{...s,class:`stat ${s.class||""}`},a),stat_figure:(s,a)=>e("div",{...s,class:`stat-figure ${s.class||""}`},a),stat_title:(s,a)=>e("div",{...s,class:`stat-title ${s.class||""}`},a),stat_value:(s,a)=>e("div",{...s,class:`stat-value ${s.class||""}`},a),stat_desc:(s,a)=>e("div",{...s,class:`stat-desc ${s.class||""}`},a),steps:(s,a)=>e("ul",{...s,class:`steps ${s.class||""}`},a),step:(s,a)=>e("li",{...s,class:`step ${s.class||""}`,"data-content":s.dataContent},a),swap:(s,a)=>e("label",{class:`swap ${s.class||""}`},[e("input",{type:"checkbox",checked:s.value}),...P(a)?a:[a]]),swap_on:(s,a)=>e("div",{...s,class:`swap-on ${s.class||""}`},a),swap_off:(s,a)=>e("div",{...s,class:`swap-off ${s.class||""}`},a),table:(s,a)=>e("table",{...s,class:`table ${s.class||""}`},a),thead:(s,a)=>e("thead",{...s,class:s.class||""},a),tbody:(s,a)=>e("tbody",{...s,class:s.class||""},a),tfoot:(s,a)=>e("tfoot",{...s,class:s.class||""},a),tr:(s,a)=>e("tr",{...s,class:s.class||""},a),th:(s,a)=>e("th",{...s,class:s.class||""},a),td:(s,a)=>e("td",{...s,class:s.class||""},a),tabs:(s,a)=>div({...s,class:`tabs ${s.class||""}`},a),tab:(s)=>{let a=()=>s.tabs?.(s.tabs().filter((t,l)=>l!==s.index));return[e("label",{class:`tab ${s.class||""}`},[e("input",{type:"radio",name:s.name,checked:s.checked||void 0}),s.label,s.closable?e("span",{class:"ml-1 inline-flex items-center justify-center w-4 h-4 rounded-full hover:bg-base-300 text-base-content/60 hover:text-base-content cursor-pointer",onclick:(t)=>{t.stopPropagation(),a()}},e("span",{class:"icon-[lucide--x] w-3 h-3"})):null]),div({class:`tab-content ${s?.classContent||""}`},s.content)]},textarea:(s)=>e("textarea",{...s,class:`textarea ${s.class||""}`}),textrotate:(s,a)=>e("span",{...s,class:`text-rotate ${s.class||""}`},e("span",{},a)),theme:(s)=>b.swap({class:`text-xl ${s.class||""}`,value:s.value},[b.swap_on({},span({class:"icon-[lucide--moon]"})),b.swap_off({},span({class:"icon-[lucide--sun]"}))]),timeline:(s,a)=>e("ul",{...s,class:`timeline ${s.class||""}`},a),timeline_start:(s,a)=>e("div",{...s,class:`timeline-start ${s.class||""}`},a),timeline_middle:(s,a)=>e("div",{...s,class:`timeline-middle ${s.class||""}`},a),timeline_end:(s,a)=>e("div",{...s,class:`timeline-end ${s.class||""}`},a),toggle:(s)=>e("input",{...s,type:"checkbox",class:`toggle ${s.class||""}`}),tooltip:(s,a)=>e("div",{class:`tooltip ${s.class||""}`,"data-tip":s.tip},a),validator:(s,a)=>e("div",{...s,class:`validator-hint ${s.class||""}`},a)},L=(s)=>{let[a,t,l,r]=[f(new Date),f(0),f(0),f(0)],o=new Date,c=(n)=>n?`${n.getFullYear()}-${String(n.getMonth()+1).padStart(2,"0")}-${String(n.getDate()).padStart(2,"0")}`:"",i=(n)=>(n<10?"0":"")+n,u=(n,v=0)=>a(new Date(a().getFullYear()+v,a().getMonth()+n,1)),d=()=>typeof s.value=="function"?s.value():s.value,$=()=>typeof s.range=="function"?s.range():s.range,_=(n)=>{let v=c(n),g=d();if(!$())return s.onChange?.(s.hour?`${v}T${i(l())}:00:00`:v);if(!g?.start||g.end)return s.onChange?.({start:v,end:null,...s.hour&&{startHour:l()}});let k=v<g.start?{start:v,end:g.start}:{start:g.start,end:v};s.onChange?.({...k,...s.hour&&{startHour:g.startHour??l(),endHour:r()}})},y=({v:n,on:v})=>e("div",{class:"flex-1 flex gap-2 items-center"},[e("input",{type:"range",min:0,max:23,value:n,class:"range range-xs",oninput:(g)=>v(+g.target.value)}),e("span",{class:"text-sm font-mono"},()=>i(n())+":00")]);return e("div",{class:`p-4 bg-base-100 rounded-box w-80 select-none ${s.class||""}`},[e("div",{class:"flex justify-between items-center mb-4"},[e("div",{class:"flex gap-1"},[e("button",{class:"btn btn-ghost btn-xs",onclick:()=>u(0,-1)},e("span",{class:"icon-[lucide--chevrons-left]"})),e("button",{class:"btn btn-ghost btn-xs",onclick:()=>u(-1,0)},e("span",{class:"icon-[lucide--chevron-left]"}))]),e("span",{class:"font-bold uppercase"},()=>a().toLocaleString("es",{month:"short",year:"numeric"})),e("div",{class:"flex gap-1"},[e("button",{class:"btn btn-ghost btn-xs",onclick:()=>u(1,0)},e("span",{class:"icon-[lucide--chevron-right]"})),e("button",{class:"btn btn-ghost btn-xs",onclick:()=>u(0,1)},e("span",{class:"icon-[lucide--chevrons-right]"}))])]),e("div",{class:"grid grid-cols-7 gap-1",onmouseleave:()=>t(null)},[..."LMXJVSD".split("").map((n)=>e("div",{class:"text-[10px] opacity-40 font-bold text-center"},n)),()=>{let n=a().getFullYear(),v=a().getMonth(),g=(new Date(n,v,1).getDay()+6)%7;return[...Array(g).fill(e("div")),...Array(new Date(n,v+1,0).getDate()).keys()].map((p)=>{if(typeof p!="number")return p;let k=p+1,m=c(new Date(n,v,k)),F=c(o)==m;return e("button",{type:"button",onclick:()=>_(new Date(n,v,k)),onmouseenter:()=>$()&&t(m),class:()=>{let w=d(),C=t(),D=w?.start||(typeof w=="string"?w.slice(0,10):0),z=w?.end==m,T=D==m,A=$()&&w?.start&&(w.end?m>w.start&&m<w.end:C&&(m>D&&m<=C||m<D&&m>=C));return`btn btn-xs p-0 aspect-square min-h-0 h-auto font-normal relative ${T||z?"btn-primary z-10":A?"bg-primary/20 border-none rounded-none":"btn-ghost"} ${F?"ring-1 ring-primary font-black":""}`}},k)})}]),s.hour&&e("div",{class:"mt-3 pt-2 border-t flex gap-4"},$()?[y({v:l,on:l}),y({v:r,on:r})]:[y({v:l,on:l})])])},E=(s)=>{let a=(l)=>(l||"").toLowerCase(),t=["#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"];return e("div",{class:`p-3 bg-base-100 rounded-box shadow w-64 ${s.class||""}`},e("div",{class:"grid grid-cols-8 gap-1"},t.map((l)=>e("button",{type:"button",style:`background:${l}`,onclick:()=>(h(s.value)?s.value(l):s.onchange?.(l),B()),class:()=>`size-6 rounded-sm transition-all hover:scale-125 hover:z-10 active:scale-95 border border-black/5 p-0 min-h-0 ${a(x(s.value))==a(l)?"ring-2 ring-offset-1 ring-primary z-10 scale-110":""}`}))))},M=(s,a="alert-success",t=3500)=>{let l=document.getElementById("stc"),r,o,c=e("div",{style:"display:contents"});if(!l)document.body.append(l=e("div",{id:"stc",class:"fixed top-0 right-0 z-[9999] p-4 flex flex-col items-end gap-2 pointer-events-none"}));l.append(c);let i=j(()=>{let u=f(0),d=f(0);return o=()=>d()||(d(1),clearTimeout(r),setTimeout(()=>(i.destroy(),c.remove(),l.firstChild||l.remove()),300)),setTimeout(()=>u(1)),e("div",{class:()=>`alert alert-soft ${a} shadow-lg transition-all duration-300 inline-flex w-auto pointer-events-auto ${d()?"translate-x-full opacity-0":u()?"translate-x-0 opacity-100":"translate-x-10 opacity-0"}`},[typeof s=="function"?s():typeof s=="string"?e("span",s):s,e("button",{class:"btn btn-xs btn-circle btn-ghost",onclick:o},e("span",{class:"icon-[lucide--x]"}))])},c);if(t>0)r=setTimeout(o,t);return o};window.ui=b;window.toast=M;window.calendar=L;window.pallete=E;export{b as ui,M as toast,E as pallete,B as hide,L as calendar};