From 9b9549dbdab5354ebf22f7855f63fee8dd63dd34 Mon Sep 17 00:00:00 2001 From: sunhao Date: Tue, 4 Mar 2025 17:10:42 +0800 Subject: [PATCH] * [misc] update zui3 lib. --- www/js/zui3/zui.zentao.js | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/www/js/zui3/zui.zentao.js b/www/js/zui3/zui.zentao.js index 66f057c49d..96ee9f7e8e 100644 --- a/www/js/zui3/zui.zentao.js +++ b/www/js/zui3/zui.zentao.js @@ -1,12 +1,12 @@ -var wu=(I,nt,It)=>{if(!nt.has(I))throw TypeError("Cannot "+It)};var Dt=(I,nt,It)=>(wu(I,nt,"read from private field"),It?It.call(I):nt.get(I)),jt=(I,nt,It)=>{if(nt.has(I))throw TypeError("Cannot add the same private member more than once");nt instanceof WeakSet?nt.add(I):nt.set(I,It)},Wt=(I,nt,It,Xa)=>(wu(I,nt,"write to private field"),Xa?Xa.call(I,It):nt.set(I,It),It);var Cu=(I,nt,It)=>(wu(I,nt,"access private method"),It);(function(I,nt){typeof exports=="object"&&typeof module<"u"?nt(exports):typeof define=="function"&&define.amd?define(["exports"],nt):(I=typeof globalThis<"u"?globalThis:I||self,nt(I.zui={}))})(this,function(I){var wa,Ca,yr,vr,_r,br,wr,Cr,xa,wg,ka,Cg,Vn,Kn;"use strict";const nt="",It="",Xa="",g0="",y0="",v0="",_0="",b0="",w0="",C0="",x0="",k0="",$g="3.0.0",Dg="production",dn=document,zr=window,Tu=dn.documentElement,ns=dn.createElement.bind(dn),$u=ns("div"),Za=ns("table"),Ig=ns("tbody"),Du=ns("tr"),{isArray:Fr,prototype:Iu}=Array,{concat:Ng,filter:el,indexOf:Nu,map:Mu,push:Mg,slice:Eu,some:tl,splice:Eg}=Iu,Pg=/^#(?:[\w-]|\\.|[^\x00-\xa0])*$/,Ag=/^\.(?:[\w-]|\\.|[^\x00-\xa0])*$/,Lg=/<.+>/,Rg=/^\w+$/;function nl(s,e){const t=Og(e);return!s||!t&&!ss(e)&&!it(e)?[]:!t&&Ag.test(s)?e.getElementsByClassName(s.slice(1).replace(/\\/g,"")):!t&&Rg.test(s)?e.getElementsByTagName(s):e.querySelectorAll(s)}class jr{constructor(e,t){if(!e)return;if(sl(e))return e;let n=e;if(bt(e)){const i=t||dn;if(n=Pg.test(e)&&ss(i)?i.getElementById(e.slice(1).replace(/\\/g,"")):Lg.test(e)?zu(e):sl(i)?i.find(e):bt(i)?y(i).find(e):nl(e,i),!n)return}else if(is(e))return this.ready(e);(n.nodeType||n===zr)&&(n=[n]),this.length=n.length;for(let i=0,r=this.length;i{for(;e.firstChild;)e.removeChild(e.firstChild)})};function Br(...s){const e=Fg(s[0])?s.shift():!1,t=s.shift(),n=s.length;if(!t)return{};if(!n)return Br(e,y,t);for(let i=0;i{it(r)&&dt(t,(o,a)=>{n?e?r.classList.add(a):r.classList.remove(a):r.classList.toggle(a)})})},se.addClass=function(s){return this.toggleClass(s,!0)},se.removeAttr=function(s){const e=Hr(s);return this.each((t,n)=>{it(n)&&dt(e,(i,r)=>{n.removeAttribute(r)})})};function Bg(s,e){if(s){if(bt(s)){if(arguments.length<2){if(!this[0]||!it(this[0]))return;const t=this[0].getAttribute(s);return wi(t)?void 0:t}return Nt(e)?this:wi(e)?this.removeAttr(s):this.each((t,n)=>{it(n)&&n.setAttribute(s,e)})}for(const t in s)this.attr(t,s[t]);return this}}se.attr=Bg,se.removeClass=function(s){return arguments.length?this.toggleClass(s,!1):this.attr("class","")},se.hasClass=function(s){return!!s&&tl.call(this,e=>it(e)&&e.classList.contains(s))},se.get=function(s){return Nt(s)?Eu.call(this):(s=Number(s),this[s<0?s+this.length:s])},se.eq=function(s){return y(this.get(s))},se.first=function(){return this.eq(0)},se.last=function(){return this.eq(-1)};function Hg(s){return Nt(s)?this.get().map(e=>it(e)||zg(e)?e.textContent:"").join(""):this.each((e,t)=>{it(t)&&(t.textContent=s)})}se.text=Hg;function fn(s,e,t){if(!it(s))return;const n=zr.getComputedStyle(s,null);return t?n.getPropertyValue(e)||void 0:n[e]||s.style[e]}function Xt(s,e){return parseInt(fn(s,e),10)||0}function Au(s,e){return Xt(s,`border${e?"Left":"Top"}Width`)+Xt(s,`padding${e?"Left":"Top"}`)+Xt(s,`padding${e?"Right":"Bottom"}`)+Xt(s,`border${e?"Right":"Bottom"}Width`)}const rl={};function Wg(s){if(rl[s])return rl[s];const e=ns(s);dn.body.insertBefore(e,null);const t=fn(e,"display");return dn.body.removeChild(e),rl[s]=t!=="none"?t:"block"}function Lu(s){return fn(s,"display")==="none"}function Ru(s,e){const t=s&&(s.matches||s.webkitMatchesSelector||s.msMatchesSelector);return!!t&&!!e&&t.call(s,e)}function Wr(s){return bt(s)?(e,t)=>Ru(t,s):is(s)?s:sl(s)?(e,t)=>s.is(t):s?(e,t)=>t===s:()=>!1}se.filter=function(s){const e=Wr(s);return y(el.call(this,(t,n)=>e.call(t,n,t)))};function In(s,e){return e?s.filter(e):s}se.detach=function(s){return In(this,s).each((e,t)=>{t.parentNode&&t.parentNode.removeChild(t)}),this};const Ug=/^\s*<(\w+)[^>]*>/,Vg=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,Ou={"*":$u,tr:Ig,td:Du,th:Du,thead:Za,tbody:Za,tfoot:Za};function zu(s){if(!bt(s))return[];if(Vg.test(s))return[ns(RegExp.$1)];const e=Ug.test(s)&&RegExp.$1,t=Ou[e]||Ou["*"];return t.innerHTML=s,y(t.childNodes).detach().get()}y.parseHTML=zu,se.has=function(s){const e=bt(s)?(t,n)=>nl(s,n).length:(t,n)=>n.contains(s);return this.filter(e)},se.not=function(s){const e=Wr(s);return this.filter((t,n)=>(!bt(s)||it(n))&&!e.call(n,t,n))};function pn(s,e,t,n){const i=[],r=is(e),o=n&&Wr(n);for(let a=0,l=s.length;ae.selected&&!e.disabled&&!e.parentNode.disabled),"value"):s.value||""}function Kg(s){return arguments.length?this.each((e,t)=>{const n=t.multiple&&t.options;if(n||Ju.test(t.type)){const i=Fr(s)?Mu.call(s,String):wi(s)?[]:[String(s)];n?dt(t.options,(r,o)=>{o.selected=i.indexOf(o.value)>=0},!0):t.checked=i.indexOf(t.value)>=0}else t.value=Nt(s)||wi(s)?"":s}):this[0]&&Fu(this[0])}se.val=Kg,se.is=function(s){const e=Wr(s);return tl.call(this,(t,n)=>e.call(t,n,t))},y.guid=1;function Zt(s){return s.length>1?el.call(s,(e,t,n)=>Nu.call(n,e)===t):s}y.unique=Zt,se.add=function(s,e){return y(Zt(this.get().concat(y(s,e).get())))},se.children=function(s){return In(y(Zt(pn(this,e=>e.children))),s)},se.parent=function(s){return In(y(Zt(pn(this,"parentNode"))),s)},se.index=function(s){const e=s?y(s)[0]:this[0],t=s?this:y(e).parent().children();return Nu.call(t,e)},se.closest=function(s){const e=this.filter(s);if(e.length)return e;const t=this.parent();return t.length?t.closest(s):e},se.siblings=function(s){return In(y(Zt(pn(this,e=>y(e).parent().children().not(e)))),s)},se.find=function(s){return y(Zt(pn(this,e=>nl(s,e))))};const qg=/^\s*\s*$/g,Gg=/^$|^module$|\/(java|ecma)script/i,Yg=["type","src","nonce","noModule"];function Jg(s,e){const t=y(s);t.filter("script").add(t.find("script")).each((n,i)=>{if(Gg.test(i.type)&&Tu.contains(i)){const r=ns("script");r.text=i.textContent.replace(qg,""),dt(Yg,(o,a)=>{i[a]&&(r[a]=i[a])}),e.head.insertBefore(r,null),e.head.removeChild(r)}})}function Qg(s,e,t,n,i){n?s.insertBefore(e,t?s.firstChild:null):s.nodeName==="HTML"?s.parentNode.replaceChild(e,s):s.parentNode.insertBefore(e,t?s:s.nextSibling),i&&Jg(e,s.ownerDocument)}function Nn(s,e,t,n,i,r,o,a){return dt(s,(l,c)=>{dt(y(c),(d,u)=>{dt(y(e),(p,g)=>{const _=t?u:g,C=t?g:u,x=t?d:p;Qg(_,x?C.cloneNode(!0):C,n,i,!x)},a)},o)},r),e}se.after=function(){return Nn(arguments,this,!1,!1,!1,!0,!0)},se.append=function(){return Nn(arguments,this,!1,!1,!0)};function Xg(s){if(!arguments.length)return this[0]&&this[0].innerHTML;if(Nt(s))return this;const e=/]/.test(s);return this.each((t,n)=>{it(n)&&(e?y(n).empty().append(s):n.innerHTML=s)})}se.html=Xg,se.appendTo=function(s){return Nn(arguments,this,!0,!1,!0)},se.wrapInner=function(s){return this.each((e,t)=>{const n=y(t),i=n.contents();i.length?i.wrapAll(s):n.append(s)})},se.before=function(){return Nn(arguments,this,!1,!0)},se.wrapAll=function(s){let e=y(s),t=e[0];for(;t.children.length;)t=t.firstElementChild;return this.first().before(e),this.appendTo(t)},se.wrap=function(s){return this.each((e,t)=>{const n=y(s)[0];y(t).wrapAll(e?n.cloneNode(!0):n)})},se.insertAfter=function(s){return Nn(arguments,this,!0,!1,!1,!1,!1,!0)},se.insertBefore=function(s){return Nn(arguments,this,!0,!0)},se.prepend=function(){return Nn(arguments,this,!1,!0,!0,!0,!0)},se.prependTo=function(s){return Nn(arguments,this,!0,!0,!0,!1,!1,!0)},se.contents=function(){return y(Zt(pn(this,s=>s.tagName==="IFRAME"?[s.contentDocument]:s.tagName==="TEMPLATE"?s.content.childNodes:s.childNodes)))},se.next=function(s,e,t){return In(y(Zt(pn(this,"nextElementSibling",e,t))),s)},se.nextAll=function(s){return this.next(s,!0)},se.nextUntil=function(s,e){return this.next(e,!0,s)},se.parents=function(s,e){return In(y(Zt(pn(this,"parentElement",!0,e))),s)},se.parentsUntil=function(s,e){return this.parents(e,s)},se.prev=function(s,e,t){return In(y(Zt(pn(this,"previousElementSibling",e,t))),s)},se.prevAll=function(s){return this.prev(s,!0)},se.prevUntil=function(s,e){return this.prev(e,!0,s)},se.map=function(s){return y(Ng.apply([],Mu.call(this,(e,t)=>s.call(e,t,e))))},se.clone=function(){return this.map((s,e)=>e.cloneNode(!0))},se.offsetParent=function(){return this.map((s,e)=>{let t=e.offsetParent;for(;t&&fn(t,"position")==="static";)t=t.offsetParent;return t||Tu})},se.slice=function(s,e){return y(Eu.call(this,s,e))};const Zg=/-([a-z])/g;function ol(s){return s.replace(Zg,(e,t)=>t.toUpperCase())}se.ready=function(s){const e=()=>setTimeout(s,0,y);return dn.readyState!=="loading"?e():dn.addEventListener("DOMContentLoaded",e),this},se.unwrap=function(){return this.parent().each((s,e)=>{if(e.tagName==="BODY")return;const t=y(e);t.replaceWith(t.children())}),this},se.offset=function(){const s=this[0];if(!s)return;const e=s.getBoundingClientRect();return{top:e.top+zr.pageYOffset,left:e.left+zr.pageXOffset}},se.position=function(){const s=this[0];if(!s)return;const e=fn(s,"position")==="fixed",t=e?s.getBoundingClientRect():this.offset();if(!e){const n=s.ownerDocument;let i=s.offsetParent||n.documentElement;for(;(i===n.body||i===n.documentElement)&&fn(i,"position")==="static";)i=i.parentNode;if(i!==s&&it(i)){const r=y(i).offset();t.top-=r.top+Xt(i,"borderTopWidth"),t.left-=r.left+Xt(i,"borderLeftWidth")}}return{top:t.top-Xt(s,"marginTop"),left:t.left-Xt(s,"marginLeft")}};const ju={class:"className",contenteditable:"contentEditable",for:"htmlFor",readonly:"readOnly",maxlength:"maxLength",tabindex:"tabIndex",colspan:"colSpan",rowspan:"rowSpan",usemap:"useMap"};se.prop=function(s,e){if(s){if(bt(s))return s=ju[s]||s,arguments.length<2?this[0]&&this[0][s]:this.each((t,n)=>{n[s]=e});for(const t in s)this.prop(t,s[t]);return this}},se.removeProp=function(s){return this.each((e,t)=>{delete t[ju[s]||s]})};const ey=/^--/;function al(s){return ey.test(s)}const ll={},{style:ty}=$u,ny=["webkit","moz","ms"];function sy(s,e=al(s)){if(e)return s;if(!ll[s]){const t=ol(s),n=`${t[0].toUpperCase()}${t.slice(1)}`,i=`${t} ${ny.join(`${n} `)}${n}`.split(" ");dt(i,(r,o)=>{if(o in ty)return ll[s]=o,!1})}return ll[s]}const iy={animationIterationCount:!0,columnCount:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0};function Bu(s,e,t=al(s)){return!t&&!iy[s]&&Pu(e)?`${e}px`:e}function ry(s,e){if(bt(s)){const t=al(s);return s=sy(s,t),arguments.length<2?this[0]&&fn(this[0],s,t):s?(e=Bu(s,e,t),this.each((n,i)=>{it(i)&&(t?i.style.setProperty(s,e):i.style[s]=e)})):this}for(const t in s)this.css(t,s[t]);return this}se.css=ry;function Hu(s,e){try{return s(e)}catch{return e}}const oy=/^\s+|\s+$/;function Wu(s,e){const t=s.dataset[e]||s.dataset[ol(e)];return oy.test(t)?t:Hu(JSON.parse,t)}function ay(s,e,t){t=Hu(JSON.stringify,t),s.dataset[ol(e)]=t}function ly(s,e){if(!s){if(!this[0])return;const t={};for(const n in this[0].dataset)t[n]=Wu(this[0],n);return t}if(bt(s))return arguments.length<2?this[0]&&Wu(this[0],s):Nt(e)?this:this.each((t,n)=>{ay(n,s,e)});for(const t in s)this.data(t,s[t]);return this}se.data=ly;function Uu(s,e){const t=s.documentElement;return Math.max(s.body[`scroll${e}`],t[`scroll${e}`],s.body[`offset${e}`],t[`offset${e}`],t[`client${e}`])}dt([!0,!1],(s,e)=>{dt(["Width","Height"],(t,n)=>{const i=`${e?"outer":"inner"}${n}`;se[i]=function(r){if(this[0])return Es(this[0])?e?this[0][`inner${n}`]:this[0].document.documentElement[`client${n}`]:ss(this[0])?Uu(this[0],n):this[0][`${e?"offset":"client"}${n}`]+(r&&e?Xt(this[0],`margin${t?"Top":"Left"}`)+Xt(this[0],`margin${t?"Bottom":"Right"}`):0)}})}),dt(["Width","Height"],(s,e)=>{const t=e.toLowerCase();se[t]=function(n){if(!this[0])return Nt(n)?void 0:this;if(!arguments.length)return Es(this[0])?this[0].document.documentElement[`client${e}`]:ss(this[0])?Uu(this[0],e):this[0].getBoundingClientRect()[t]-Au(this[0],!s);const i=parseInt(n,10);return this.each((r,o)=>{if(!it(o))return;const a=fn(o,"boxSizing");o.style[t]=Bu(t,i+(a==="border-box"?Au(o,!s):0))})}});const Vu="___cd";se.toggle=function(s){return this.each((e,t)=>{if(!it(t))return;const n=Lu(t);(Nt(s)?n:s)?(t.style.display=t[Vu]||"",Lu(t)&&(t.style.display=Wg(t.tagName))):n||(t[Vu]=fn(t,"display"),t.style.display="none")})},se.hide=function(){return this.toggle(!1)},se.show=function(){return this.toggle(!0)};const Ku="___ce",cl=".",hl={focus:"focusin",blur:"focusout"},qu={mouseenter:"mouseover",mouseleave:"mouseout"},cy=/^(mouse|pointer|contextmenu|drag|drop|click|dblclick)/i;function ul(s){return qu[s]||hl[s]||s}function dl(s){const e=s.split(cl);return[e[0],e.slice(1).sort()]}se.trigger=function(s,e){if(bt(s)){const[n,i]=dl(s),r=ul(n);if(!r)return this;const o=cy.test(r)?"MouseEvents":"HTMLEvents";s=dn.createEvent(o),s.initEvent(r,!0,!0),s.namespace=i.join(cl),s.___ot=n}s.___td=e;const t=s.___ot in hl;return this.each((n,i)=>{t&&is(i[s.___ot])&&(i[`___i${s.type}`]=!0,i[s.___ot](),i[`___i${s.type}`]=!1),i.dispatchEvent(s)})};function Gu(s){return s[Ku]=s[Ku]||{}}function hy(s,e,t,n,i){const r=Gu(s);r[e]=r[e]||[],r[e].push([t,n,i]),s.addEventListener(e,i)}function Yu(s,e){return!e||!tl.call(e,t=>s.indexOf(t)<0)}function Ur(s,e,t,n,i){const r=Gu(s);if(e)r[e]&&(r[e]=r[e].filter(([o,a,l])=>{if(i&&l.guid!==i.guid||!Yu(o,t)||n&&n!==a)return!0;s.removeEventListener(e,l)}));else for(e in r)Ur(s,e,t,n,i)}se.off=function(s,e,t){if(Nt(s))this.each((n,i)=>{!it(i)&&!ss(i)&&!Es(i)||Ur(i)});else if(bt(s))is(e)&&(t=e,e=""),dt(Hr(s),(n,i)=>{const[r,o]=dl(i),a=ul(r);this.each((l,c)=>{!it(c)&&!ss(c)&&!Es(c)||Ur(c,a,o,e,t)})});else for(const n in s)this.off(n,s[n]);return this},se.remove=function(s){return In(this,s).detach().off(),this},se.replaceWith=function(s){return this.before(s).remove()},se.replaceAll=function(s){return y(s).replaceWith(this),this};function uy(s,e,t,n,i){if(!bt(s)){for(const r in s)this.on(r,e,t,s[r],i);return this}return bt(e)||(Nt(e)||wi(e)?e="":Nt(t)?(t=e,e=""):(n=t,t=e,e="")),is(n)||(n=t,t=void 0),n?(dt(Hr(s),(r,o)=>{const[a,l]=dl(o),c=ul(a),d=a in qu,u=a in hl;c&&this.each((p,g)=>{if(!it(g)&&!ss(g)&&!Es(g))return;const _=function(C){if(C.target[`___i${C.type}`])return C.stopImmediatePropagation();if(C.namespace&&!Yu(l,C.namespace.split(cl))||!e&&(u&&(C.target!==g||C.___ot===c)||d&&C.relatedTarget&&g.contains(C.relatedTarget)))return;let x=g;if(e){let $=C.target;for(;!Ru($,e);)if($===g||($=$.parentNode,!$))return;x=$}Object.defineProperty(C,"currentTarget",{configurable:!0,get(){return x}}),Object.defineProperty(C,"delegateTarget",{configurable:!0,get(){return g}}),Object.defineProperty(C,"data",{configurable:!0,get(){return t}});const k=n.call(x,C,C.___td);i&&Ur(g,c,l,e,_),k===!1&&(C.preventDefault(),C.stopPropagation())};_.guid=n.guid=n.guid||y.guid++,hy(g,c,l,e,_)})}),this):this}se.on=uy;function dy(s,e,t,n){return this.on(s,e,t,n,!0)}se.one=dy;const fy=/\r?\n/g;function py(s,e){return`&${encodeURIComponent(s)}=${encodeURIComponent(e.replace(fy,`\r -`))}`}const my=/file|reset|submit|button|image/i,Ju=/radio|checkbox/i;se.serialize=function(){let s="";return this.each((e,t)=>{dt(t.elements||[t],(n,i)=>{if(i.disabled||!i.name||i.tagName==="FIELDSET"||my.test(i.type)||Ju.test(i.type)&&!i.checked)return;const r=Fu(i);if(!Nt(r)){const o=Fr(r)?r:[r];dt(o,(a,l)=>{s+=py(i.name,l)})}})}),s.slice(1)},window.$=y;function Qu(s,e){if(s==null)return[s,void 0];typeof e=="string"&&(e=e.split("."));const t=e.join(".");let n=s;const i=[n];for(;typeof n=="object"&&n!==null&&e.length;){let r=e.shift(),o;const a=r.indexOf("[");if(a>0&&a{const i=t[n]??"";s=s.replace(new RegExp(`\\{${n}\\}`,"g"),`${i}`)}),s}for(let t=0;t(s[s.B=1]="B",s[s.KB=1024]="KB",s[s.MB=1048576]="MB",s[s.GB=1073741824]="GB",s[s.TB=1099511627776]="TB",s))(fl||{});function pt(s,e=2,t){return Number.isNaN(s)?"?KB":(t||(s<1024?t="B":s<1048576?t="KB":s<1073741824?t="MB":s<1099511627776?t="GB":t="TB"),(s/fl[t]).toFixed(e)+t)}const mn=s=>{const e=/^[0-9]*(B|KB|MB|GB|TB)$/;s=s.toUpperCase(),s.endsWith("B")||(s+="B");const t=s.match(e);if(!t)return 0;const n=t[1];return s=s.replace(n,""),Number.parseInt(s,10)*fl[n]};let pl=(document.documentElement.getAttribute("lang")||"zh_cn").toLowerCase().replace("-","_"),gn;function Xu(){return pl}function yy(s){pl=s.toLowerCase().replace("-","_")}function Zu(s,e){gn||(gn={}),typeof s=="string"&&(s={[s]:e??{}}),y.extend(!0,gn,s)}function Ne(s,e,t,n,i,r){Array.isArray(s)?gn&&s.unshift(gn):s=gn?[gn,s]:[s],typeof t=="string"&&(r=i,i=n,n=t,t=void 0);const o=i||pl;let a;for(const l of s){if(!l)continue;const c=l[o]||l.default;if(!c)continue;const d=r&&l===gn?`${r}.${e}`:e;if(a=Ci(c,d),a!==void 0)break}return a===void 0?n:t?be(a,...Array.isArray(t)?t:[t]):a}function vy(s,e,t,n){return Ne(void 0,s,e,t,n)}Ne.addLang=Zu,Ne.getLang=vy,Ne.getCode=Xu,Ne.setCode=yy,Ne.map=gn,Zu({zh_cn:{confirm:"确定",save:"保存",cancel:"取消",delete:"删除",reset:"重置",add:"添加",copy:"复制",close:"关闭"},zh_tw:{confirm:"確定",save:"儲存",cancel:"取消",delete:"刪除",reset:"重置",add:"添加",Copy:"複製",close:"關閉"},en:{confirm:"Confirm",save:"Save",cancel:"Cancel",delete:"Delete",reset:"Reset",add:"Add",copy:"Copy",close:"Close"}});function rs(s,e,t){t!=null&&(Array.isArray(t)?t.forEach(n=>rs(s,e,n)):!(t instanceof Blob)&&y.isPlainObject(t)?Object.entries(t).forEach(([n,i])=>{rs(s,`${e}[${n}]`,i)}):s.append(e,t instanceof Blob?t:String(t)))}function Vr(s,e){const t=e||new FormData;return s&&(typeof s=="string"&&(s=new URLSearchParams(s)),s instanceof URLSearchParams?s.forEach((n,i)=>{rs(t,i,n)}):Array.isArray(s)?s.forEach(([n,i])=>{rs(t,n,i)}):s instanceof FormData?s.forEach((n,i)=>{rs(t,i,n)}):y.isPlainObject(s)&&Object.entries(s).forEach(([n,i])=>{rs(t,n,i)})),t}function ed(s,e,t){s instanceof Headers?s.set(e,t):Array.isArray(s)?s.push([e,t]):s[e]=t}function _y(s,e){if(s){const t={text:"text/plain",html:"text/html",json:"application/json",...e};for(const[n,i]of Object.entries(t))if(i.split(",").map(r=>r.trim()).includes(s))return n}return"text"}class xi{get completed(){return this.data!==void 0||this.error!==void 0}get[Symbol.toStringTag](){return"Ajax"}constructor(e){this.setting=e,this._controller=new AbortController,this._callbacks={success:[],error:[],complete:[]}}on(e,t){return this._callbacks[e].push(t),this}success(e){return this.on("success",e)}done(e){return this.success(e)}fail(e){return this.on("error",e)}complete(e){return this.on("complete",e)}always(e){return this.complete(e)}then(e,t){return this.completed?t&&this.error?t(this.error):e(this.data):(this.success(n=>e(n)),t&&this.fail(t)),this}catch(e){return this.error?(e(this.error),this):this.on("error",t=>e(t))}finally(e){return this.completed?(e(),this):this.complete(()=>e())}abort(e){return this.completed?!1:(this._abortError=e,this._controller.abort(),!0)}getResponseHeader(e){var t;return(t=this.response)==null?void 0:t.headers.get(e)}_init(){if(this.completed)return;const{url:e,type:t,data:n,processData:i=!0,contentType:r,crossDomain:o,accepts:a,dataType:l,timeout:c,dataFilter:d,beforeSend:u,success:p,error:g,complete:_,...C}=this.setting;t&&(C.method=t);let x=n;x&&(i&&(x=Vr(x)),C.body=x),o&&(C.mode="cors");const k=C.headers||{};ed(k,"X-Requested-With","XMLHttpRequest"),r&&ed(k,"Content-Type",r),C.headers=k,C.signal&&C.signal.addEventListener("abort",()=>{this.abort()});const $=[...this.constructor.globalBeforeSends,u];for(const E of $){if(!E)continue;const z=E.call(this,C);if(z===!1)return;z&&Object.assign(C,z)}p&&this.success(p),g&&this.fail(g),_&&this.complete(_),C.signal=this._controller.signal,this.url=e,this.request=C}_emit(e,...t){this._callbacks[e].forEach(n=>{n.call(this,...t)})}async send(){var d;if(this.completed)return[];this._init();const{timeout:e,dataType:t,accepts:n,dataFilter:i,throws:r,jsonParser:o}=this.setting;e&&(this._timeoutID=window.setTimeout(()=>{this.abort(new Error("timeout"))},e));let a,l,c;try{a=await fetch(this.url,this.request),this.response=a;const{statusText:u}=a;if(a.ok){const p=(d=a.headers.get("Content-Disposition"))==null?void 0:d.startsWith("attachment"),g=p?"blob":t||_y(a.headers.get("Content-Type"),n);p||g==="blob"||g==="file"?c=await a.blob():g==="json"?typeof o=="function"?(c=await a.text(),c=o(c)):c=await a.json():c=await a.text(),this.data=c;const _=(i==null?void 0:i(c,g))??c;this._emit("success",_,u,a)}else throw this.data=await a.text(),new Error(u)}catch(u){this.data===void 0&&c!==void 0&&(this.data=c),l=u;let p=!1;l.name==="AbortError"&&(this._abortError?l=this._abortError:p=!0),this.error=l,p||this._emit("error",l,a==null?void 0:a.statusText,l.message)}if(this._timeoutID&&clearTimeout(this._timeoutID),this._emit("complete",a,a==null?void 0:a.statusText),l&&r)throw l;return[c,l,a]}}xi.globalBeforeSends=[],y.ajax=(s,e)=>{e=e||{},typeof s=="string"?e.url=s:y.extend(e,s);const t=new xi(e);return t.send(),t},y.getJSON=(s,e,t)=>(typeof e=="function"&&(t=e,e=void 0),y.ajax({url:s,data:e,success:t,dataType:"json"})),y.get=(s,e,t,n,i="GET")=>{let r,o;return typeof e=="function"?(r=e,o=void 0):o=e,typeof t=="function"?(r=t,n=void 0):n=t,y.ajax({method:i,url:s,data:o,success:r,dataType:n})},y.post=(s,e,t,n)=>y.get(s,e,t,n,"POST"),y.fn.load=function(s,e,t){typeof e=="function"&&(t=e,e=void 0);const[n,i]=s.split(" ");return y.get(n,e,(r,o,a)=>{i&&(r=y(r).find(i).html()),y(this).html(r).zuiInit(),t==null||t.call(this,r,o,a)},"html"),this};async function mt(s,e=[],t,n,i){const r={throws:!0,dataType:"json"};if(typeof s=="string")r.url=s;else if(typeof s=="object")y.extend(r,s);else if(typeof s=="function"){const l=s.call(n,...e);return l instanceof Promise?await l:l}t&&y.extend(r,typeof t=="function"?t(r):t),r.url&&(r.url=be(r.url,...e));const o=new xi(r);i==null||i(o);const[a]=await o.send();return a}function ml(s){return!!(s&&(typeof s=="string"||typeof s=="object"&&s.url||typeof s=="function"))}y.fetch=mt;function wt(){return y.guid++}function Kr(s,e){if(s===e)return!1;if(s&&e){const t=typeof s,n=typeof e;if(t!==n)return!0;if(t==="object"&&n==="object"){const i=Array.isArray(s),r=Array.isArray(e);if(i!==r)return!0;if(i&&r){if(s.length!==e.length)return!0;for(let l=0;ln instanceof os?n.value!==t[i]:Kr(n,t[i])))&&(this._value=this._compute(),this._lastDependencies=e.map(n=>n instanceof os?n.cache:n)),this._value}}function gl(...s){const e=[],t=new Map,n=(i,r)=>{if(Array.isArray(i)&&(r=i[1],i=i[0]),!i.length)return;const o=t.get(i);typeof o=="number"?e[o][1]=!!r:(t.set(i,e.length),e.push([i,!!r]))};return s.forEach(i=>{typeof i=="function"&&(i=i()),Array.isArray(i)?gl(...i).forEach(n):i&&typeof i=="object"?Object.entries(i).forEach(n):typeof i=="string"&&i.split(" ").forEach(r=>n(r,!0))}),e.sort((i,r)=>(t.get(i[0])||0)-(t.get(r[0])||0))}const V=(...s)=>gl(...s).reduce((e,[t,n])=>(n&&e.push(t),e),[]).join(" ");y.classes=V,y.fn.setClass=function(s,...e){return this.each((t,n)=>{const i=y(n);s===!0?i.attr("class",V(i.attr("class"),...e)):i.addClass(V(s,...e))})};const Ps=new WeakMap;function qr(s,e,t){const n=Ps.has(s),i=n?Ps.get(s):{};typeof e=="string"?i[e]=t:e===null?Object.keys(i).forEach(r=>{delete i[r]}):Object.assign(i,e),Object.keys(i).forEach(r=>{i[r]===void 0&&delete i[r]}),Object.keys(i).length?(!n&&s instanceof Element&&Object.assign(i,y(s).dataset(),i),Ps.set(s,i)):Ps.delete(s)}function ki(s,e,t){let n=Ps.get(s)||{};return t&&s instanceof Element&&(n=Object.assign({},y(s).dataset(),n)),e===void 0?n:n[e]}function by(s){Ps.delete(s)}y.fn.dataset=y.fn.data,y.fn.data=function(...s){const[e,t]=s;return!s.length||s.length===1&&typeof e=="string"?this.length?ki(this[0],e,!0):void 0:this.each((n,i)=>qr(i,e,t))},y.fn.removeData=function(s=null){return this.each((e,t)=>qr(t,s))};function as(s,...e){return s.includes("RAWJS")&&(s=s.split('"RAWJS<').join("").split('>RAWJS"').join("").split("").join('"').split("").join(` -`)),new Function(`return ${s}`)(...e)}function yl(s,...e){return s.includes("RAWJS")?as(s,...e):JSON.parse(s)}function wy(s){return JSON.stringify(s,(e,t)=>{if(typeof t=="function")return`RAWJS<${t.toString().split('"').join("").split(` -`).join("")}>RAWJS`})}function As(s,e){const t=y(s)[0];if(!t)return;const{prefix:n,getter:i,evalValue:r,json:o=!0,evalArgs:a=[]}={prefix:"z-",...typeof e=="string"?{prefix:e}:e},l=Array.isArray(r)?new Set(r):void 0;return Array.from(t.attributes).reduce((c,d)=>{let{name:u}=d;const{value:p}=d;let g=p;if(u.startsWith(n)){if(u=u.slice(n.length).replace(/-([a-z])/g,_=>_[1].toUpperCase()),i)g=i(u,p);else try{r&&(!l||l.has(u))||r===void 0&&p.includes("RAWJS")?g=as(p,...a):o&&(g=JSON.parse(p))}catch{}c[u]=g}return c},{})}function vl(s,e,t="z-"){const n=y(s);Object.keys(e).forEach(i=>{let r=e[i];typeof r=="function"&&(r=`RAWJS<${r}>RAWJS`),typeof r!="string"&&(r=JSON.stringify(r)),i=i.replace(/[A-Z]/g,o=>`-${o.toLowerCase()}`),n.attr(`${t}${i}`,r)})}function Cy(...s){var t;const e=s.length;if(!e)return As(this);if(e===1){const[n]=s;return typeof n=="string"?(t=As(this))==null?void 0:t[n]:(y.isPlainObject(n)&&vl(this,n),this)}return vl(this,{[s[0]]:s[1]}),this}y.fn.z=Cy,y.fn._attr=y.fn.attr,y.fn.extend({attr(...s){const[e,t]=s;return!s.length||s.length===1&&typeof e=="string"?this._attr.apply(this,s):typeof e=="object"?(e&&Object.keys(e).forEach(n=>{const i=e[n];i===null?this.removeAttr(n):this._attr(n,i)}),this):t===null?this.removeAttr(e):this._attr(e,t)}}),y.Event||(y.Event=(s,e)=>{const[t,...n]=s.split("."),i=new Event(t,{bubbles:!0,cancelable:!0});return i.namespace=n.join("."),i.___ot=t,i.___td=e,i});const ls=(s,e)=>new Promise(t=>{const n=window.setTimeout(t,s);e&&e(n)}),td={};y.share=td;var Gr,ze,nd;I.isValidElement=void 0;var cs,sd,id,_l,bl,wl,Cl,Si={},rd=[],xy=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,Yr=Array.isArray;function En(s,e){for(var t in e)s[t]=e[t];return s}function od(s){s&&s.parentNode&&s.parentNode.removeChild(s)}function b(s,e,t){var n,i,r,o={};for(r in e)r=="key"?n=e[r]:r=="ref"?i=e[r]:o[r]=e[r];if(arguments.length>2&&(o.children=arguments.length>3?Gr.call(arguments,2):t),typeof s=="function"&&s.defaultProps!=null)for(r in s.defaultProps)o[r]===void 0&&(o[r]=s.defaultProps[r]);return Jr(s,o,n,i,null)}function Jr(s,e,t,n,i){var r={type:s,props:e,key:t,ref:n,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,constructor:void 0,__v:i??++nd,__i:-1,__u:0};return i==null&&ze.vnode!=null&&ze.vnode(r),r}function ue(){return{current:null}}function yn(s){return s.children}function pe(s,e){this.props=s,this.context=e}function Ls(s,e){if(e==null)return s.__?Ls(s.__,s.__i+1):null;for(var t;ee&&cs.sort(_l));Qr.__r=0}function cd(s,e,t,n,i,r,o,a,l,c,d){var u,p,g,_,C,x=n&&n.__k||rd,k=e.length;for(t.__d=l,ky(t,e,x),l=t.__d,u=0;u0?Jr(i.type,i.props,i.key,i.ref?i.ref:null,i.__v):i).__=s,i.__b=s.__b+1,r=null,(a=i.__i=Sy(i,t,o,d))!==-1&&(d--,(r=t[a])&&(r.__u|=131072)),r==null||r.__v===null?(a==-1&&u--,typeof i.type!="function"&&(i.__u|=65536)):a!==o&&(a==o-1?u--:a==o+1?u++:(a>o?u--:u++,i.__u|=65536))):i=s.__k[n]=null;if(d)for(n=0;n(l!=null&&!(131072&l.__u)?1:0))for(;o>=0||a=0){if((l=e[o])&&!(131072&l.__u)&&i==l.key&&r===l.type)return o;o--}if(a{!t||typeof t!="object"||Object.keys(t).forEach(n=>{let i=t[n];const r=s[n];i!==r&&(r!==void 0&&(n==="className"||n.endsWith("Class")?i=[r,i]:n==="children"?i=[...Xr(r),...Xr(i)]:typeof r=="object"&&(n==="style"||n.endsWith("Style")||n==="attrs"||n.endsWith("Attrs")||n==="props")&&(i=y.extend(r,i))),s[n]=i)})}),s}function Sl(s){return Object.keys(s).forEach(e=>{s[e]===void 0&&delete s[e]}),s}function md(s,e=!0){const t=y(s),n=t[0],i="zui-disable-scroll";if(e){if(t.data(i))return;if((t.css("scrollbar-gutter")||"").includes("stable")){t.data(i,{overflow:t.css("overflow")}).css("overflow","hidden");return}const r=n===document.body||t.is("html")?window.innerWidth-document.body.clientWidth:n.offsetWidth-n.clientWidth;if(!r)return;const o=t.css("paddingRight")||"0";t.data(i,{paddingRight:o,overflow:t.css("overflow")}).css({paddingRight:`${r+Number.parseInt(o,10)}px`,overflow:"hidden"})}else{const r=t.data(i);if(!r)return;t.css(r).removeData(i)}}y.fn.disableScroll=function(s=!0){return this.each((e,t)=>{md(t,s)})},y.fn.enableScroll=function(s=!0){return this.disableScroll(!s)};function Tl(s,e,t){if(!(t.on||"click").split(" ").includes(e.type))return;const n=t.selector?y(e.target).closest(t.selector):s;if(!n.length)return;const i=c=>c===""?!0:c,r=c=>{if(typeof c=="string")try{c=JSON.parse(c)}catch{}return c};if(i(t.once)){if(t.onceCalled)return;s.dataset("once-called",!0)}if(i(t.prevent)&&e.preventDefault(),i(t.stop)&&e.stopPropagation(),i(t.self)&&e.currentTarget!==e.target)return;const o=[["$element",s],["event",e],["options",t],["$target",n]],a=c=>typeof c=="function"?c(...o):y.runJS(c,...o);if(t.if!==void 0&&!a(t.if))return;const l=t.call;if(l){let c;if(typeof l=="string"?c=/^[$A-Z_][0-9A-Z_$.]*$/i.test(l)?Ci(window,l):a(l):c=l,typeof c=="function"){const d=[],u=t.params;t.params=d,typeof u=="string"&&u.length?u[0]==="["?d.push(...r(u)):d.push(...u.split(", ").map(p=>(p=p.trim(),p==="$element"?s:p==="event"?e:p==="options"?t:p.startsWith("$element.")||p.startsWith("event.")||p.startsWith("options.")?a(p):r(p)))):Array.isArray(u)?d.push(...u):d.push(u),c(...d)}}t.do&&a(t.do)}function Dy(s){const e=y(this),t=s.type,n=e.attr("zui-on");if(n){const[o,a]=n.split("~").map(l=>l.trim());o&&o.split(" ").includes(t)&&Tl(e,s,y.extend({on:o},a?a.startsWith("{")?as(a):{do:a}:As(e,{prefix:"data-",evalValue:["call","if","do"]})))}const i=e.attr(`zui-on-${t}`);i&&Tl(e,s,y.extend({on:t},i.startsWith("{")?as(i):{do:i}));const r=e.attr("data-on");r&&r.split(" ").includes(t)&&Tl(e,s,As(e,{prefix:"data-",evalValue:["call","if","do"]}))}function gd(s){y(document).off(".zui.global").on(s.map(e=>`${e}.zui.global`).join(" "),`[zui-on],${s.map(e=>`[zui-on-${e}]`)},[data-on]`,Dy)}y(()=>{gd(["click","change","inited"])});function us(s,e){if(typeof s=="function")return us(s(...e||[]));if(typeof s=="number")return[s];let t=s.match(/(\d+)(%|px)?/);return t?[parseInt(t[1]),t[2]]:(t=s.match(/(\d+)\/(\d+)/),t?[100*parseInt(t[1])/parseInt(t[2]),"%"]:[NaN])}function Ve(s,e){if(s==null)return null;const[t,n="px"]=us(s,e);return Number.isNaN(t)?typeof s=="string"?s:null:`${t}${n}`}async function Ti(s,e){var n,i,r;if(s instanceof Blob){const o=document.createElement("a");return o.href=window.URL.createObjectURL(s),e&&(o.download=decodeURIComponent(e)),o.click(),o.remove(),s}if(s instanceof Response){const o=await s.blob();return e=e||((r=(i=(n=s.headers.get("Content-Disposition"))==null?void 0:n.split(";")[1])==null?void 0:i.split("=")[1])==null?void 0:r.replace(/"/g,"")),Ti(o,e)}const t=await fetch(s);return Ti(t)}class yd{constructor(e){this._$target=y(e)}on(...e){return this._$target.on(...e),this}one(...e){return this._$target.one(...e),this}off(...e){return this._$target.off(...e),this}trigger(...e){return this._$target.trigger(...e),this}}const en=new yd(document);y.bus=en,y.on=en.on.bind(en),y.one=en.one.bind(en),y.off=en.off.bind(en),y.trigger=en.trigger.bind(en);var Iy=["Shift","Meta","Alt","Control"],vd=typeof navigator=="object"?navigator.platform:"",_d=/Mac|iPod|iPhone|iPad/.test(vd),Ny=_d?"Meta":"Control",My=vd==="Win32"?["Control","Alt"]:_d?["Alt"]:[];function $l(s,e){return typeof s.getModifierState=="function"&&(s.getModifierState(e)||My.includes(e)&&s.getModifierState("AltGraph"))}function Ey(s){return s.trim().split(" ").map(function(e){var t=e.split(/\b\+/),n=t.pop();return[t=t.map(function(i){return i==="$mod"?Ny:i}),n]})}function bd(s,e){var t;e===void 0&&(e={});var n=(t=e.timeout)!=null?t:1e3,i=Object.keys(s).map(function(a){return[Ey(a),s[a]]}),r=new Map,o=null;return function(a){a instanceof KeyboardEvent&&(i.forEach(function(l){var c=l[0],d=l[1],u=r.get(c)||c;(function(p,g){return!(g[1].toUpperCase()!==p.key.toUpperCase()&&g[1]!==p.code||g[0].find(function(_){return!$l(p,_)})||Iy.find(function(_){return!g[0].includes(_)&&g[1]!==_&&$l(p,_)}))})(a,u[0])?u.length>1?r.set(c,u.slice(1)):(r.delete(c),d(a)):$l(a,a.key)||r.delete(c)}),o&&clearTimeout(o),o=setTimeout(r.clear.bind(r),n))}}function Py(s,e,t){var n;t===void 0&&(t={});var i=(n=t.event)!=null?n:"keydown",r=bd(e,t);return s.addEventListener(i,r),function(){s.removeEventListener(i,r)}}function Dl(s,e={}){if(!s)return;const t=Object.keys(e).reduce((n,i)=>(e[i].optional||(n[i]={...e[i]}),n),{});return Object.keys(s).forEach(n=>{const i=s[n];i?i===!0?e[n]&&(t[n]={...e[n]}):t[n]=i:delete t[n]}),Object.keys(t).reduce((n,i)=>{const{keys:r,handler:o}=t[i];return typeof r=="string"?n[r]=o:r.forEach(a=>{n[a]=o}),n},{})}function Il(s,e,t){const{timeout:n,event:i="keydown",scope:r,when:o}=t||{},a=bd(e,{timeout:n}),l=`.zui.hotkeys${r?`.${r}`:""}`,c="zui-hotkeys-composing";return y(s).on(`${i}${l}`,function(d){o&&o(d)===!1||y(d.target).data(c)||a(d)}).on(`compositionstart${l}`,d=>{y(d.target).data(c,!0)}).on(`compositionend${l}`,d=>{y(d.target).removeData(c)})}function Nl(s,e){return y(s).off(`.zui.hotkeys${e?`.${e}`:""}`)}const Ay=Py;y.fn.hotkeys=function(s,e){return Il(this,s,e)},y.fn.unbindHotkeys=function(s){return Nl(this,s)},y.hotkeys=function(s,e){Il(window,s,e)},y.unbindHotkeys=function(s){Nl(window,s)};function eo(){return document.fullscreenElement||document.webkitFullscreenElement||document.mozFullScreenElement}async function wd(s){(typeof s=="string"||s instanceof Element||s instanceof y)&&(s={target:s});const{target:e,onError:t,onSuccess:n,afterExit:i,afterEnter:r}=s,o=y(e),a=o[0];if(!a)return;const l=a.requestFullscreen||a.webkitRequestFullscreen||a.mozRequestFullScreen;if(!l){t==null||t.call(a,new Error("[ZUI] The browser does not support full screen feature."));return}try{await l.call(a),n==null||n.call(a),y(a).off(".zui.fullscreen"),i&&o.on("exitFullscreen.zui.fullscreen",i),r&&o.on("enterFullscreen.zui.fullscreen",r)}catch(c){t==null||t.call(a,c)}document.zuiBindFullscreenChange||(document.zuiBindFullscreenChange=!0,y(document).on("fullscreenchange.zui webkitfullscreenchange.zui mozfullscreenchange.zui",c=>{const d=eo();let u=d;d?y(d).addClass("is-in-fullscreen"):(u=y(document).find(".is-in-fullscreen")[0]||document,y(u).removeClass("is-in-fullscreen")),y("body").toggleClass("has-in-fullscreen",!!d);const p={event:c,target:u,fullscreenElement:d};y(u).trigger(d?"enterFullscreen":"exitFullscreen",p).trigger("toggleFullscreen",p)}))}async function Ml(s){const e=eo();return s===!1&&!!e===s?s:e?(document.exitFullscreen(),!1):(await wd(s),!0)}y.fn.fullscreen=function(s){return Ml({target:this,...s})},y.getFullscreenElement=eo,y.toggleFullscreen=Ml;function Pn(s){return!s||s.parentNode===document?!1:s.parentNode?Pn(s.parentNode):!0}y.isDetached=Pn,y.fn.isDetached=function(){const s=this[0];return!s||Pn(s)};const ds=class mg{constructor(e,t){var _;this._inited=!1,this._autoDestory=0,this._destroyed=!1;const{KEY:n,DATA_KEY:i,MULTI_INSTANCE:r,NAME:o,ATTR_KEY:a,ALL:l,TYPED_ALL:c}=this.constructor;if(!o)throw new Error('[ZUI] The component must have a "NAME" static property.');const d=y(e);if(d.data(n)&&!r)throw new Error(`[ZUI] The component "${o}" has been initialized on element.`);const u=d[0],p=wt();this._gid=p,this._element=u,this.resetOptions(t),this._key=this.options.key??`__${p}`;let g=l.get(u);if(g?g.add(this):(g=new Set([this]),l.set(u,g)),c.has(o)?c.get(o).add(this):c.set(o,new Set([this])),d.data(n,this).attr(a,"").attr(i,`${p}`).attr("z-use",[...new Set([...g].map(C=>C.constructor.NAME))].join(",")),r){const C=`${n}:ALL`;let x=d.data(C);x||(x=new Map,d.data(C,x)),x.set(this._key,this)}this.init(),(_=this.options.$onCreate)==null||_.call(this),requestAnimationFrame(async()=>{var C;this._inited=!0,await this.afterInit(),this.emit("inited",this.options),(C=this.options.$onInited)==null||C.call(this)})}static get ZUI(){return this.NAME.replace(/(^[A-Z]+)/,e=>e.toLowerCase())}static get KEY(){return`zui.${this.NAME}`}static get NAMESPACE(){return`.zui.${this.ZUI}`}static get DATA_KEY(){return`data-zui-${this.NAME}`}static get ATTR_KEY(){return`z-use-${this.NAME}`}static get SELECTOR(){return`[${this.DATA_KEY}]`}get inited(){return this._inited}get destroyed(){return this._destroyed}get element(){return this._element}get key(){return this._key}get options(){return this._options}get gid(){return this._gid}get $element(){return y(this.element)}get $emitter(){return this.$element}get i18nData(){return[this.options.i18n,this.constructor.i18n]}init(){}afterInit(){}render(e,t){this.setOptions(e,t)}destroy(){var g;const{KEY:e,DATA_KEY:t,ALL:n,TYPED_ALL:i,NAME:r,MULTI_INSTANCE:o,ATTR_KEY:a}=this.constructor,{$element:l,element:c}=this;if(this.emit("destroyed"),this._destroyed=!0,l.off(this.namespace).removeData(e).removeAttr(a).removeAttr(t),o){const _=this.$element.data(`${e}:ALL`);if(_)if(_.delete(this._key),_.size===0)this.$element.removeData(`${e}:ALL`);else{const C=_.values().next().value;l.data(e,C).attr(t,String(C==null?void 0:C.gid))}}const d=n.get(c);d&&(d.delete(this),d.size===0&&n.delete(c));const u=i.get(r);u&&(u.delete(this),u.size===0&&i.delete(r));const p=n.get(c);p!=null&&p.size?l.attr("z-use",[...new Set([...p].map(_=>_.constructor.NAME))].join(",")):l.removeAttr("z-use"),(g=this.options.$onDestroy)==null||g.call(this)}autoDestroy(e=100){this._autoDestory&&clearTimeout(this._autoDestory),this._autoDestory=window.setTimeout(()=>{this._autoDestory=0,Pn(this.element)&&this.destroy()},e)}setOptions(e,t){if(t){const n={...this.constructor.DEFAULT,...(e==null?void 0:e.$optionsFromDataset)!==!1?this.$element.dataset():{},...e},{$options:i}=n;if(i){const r=typeof i=="function"?i.call(this,this.element,n):i;r&&y.extend(n,r),delete n.$options}this._options=n}else e&&y.extend(this._options,e);return this._options}resetOptions(e){return this.setOptions(e,!0)}emit(e,...t){const n=y.Event(e);return n.__src=this,this.$emitter.trigger(n,[this,...t]),n}on(e,t,n){const i=this;this.$element[n!=null&&n.once?"one":"on"](this._wrapEvent(e),function(r,o){(!r.__src||r.__src===i)&&t.call(this,r,o)})}one(e,t){this.on(e,t,{once:!0})}off(e){this.$element.off(this._wrapEvent(e))}i18n(e,t,n){const{i18nData:i}=this;return Ne(i,e,t,n,this.options.lang,this.constructor.NAME)??Ne(i,e,t,n,this.options.lang)??`{i18n:${e}}`}get namespace(){return`${this.constructor.NAMESPACE}.${this._key}`}_wrapEvent(e){return e.split(" ").map(t=>t.includes(".")?t:`${t}${this.namespace}`).join(" ")}static get(e,t){const n=y(e);if(this.MULTI_INSTANCE&&t!==void 0){const i=n.data(`${this.KEY}:ALL`);return i?i.get(t):void 0}return n.data(this.KEY)}static isValid(e){return!0}static ensure(e,t){const n=this.get(e,t==null?void 0:t.key);if(n){if(this.isValid(n))return t&&n.setOptions(t),n;n.destroy()}return new this(e,t)}static getAll(e,t){var l;const{SELECTOR:n,ALL:i,TYPED_ALL:r}=this,o=[],a=c=>{c instanceof this&&(!t||t(c)!==!1)&&o.push(c)};return e?y(e).find(n).each((c,d)=>{var u;(u=i.get(d))==null||u.forEach(a)}):this!==mg?(l=r.get(this.NAME))==null||l.forEach(a):i.forEach(c=>{c.forEach(a)}),o.sort((c,d)=>c.gid-d.gid)}static query(e,t,n){return e===void 0?this.getAll(void 0,n).pop():this.get(y(e).closest(this.SELECTOR),t)}static defineFn(e){let t=e||this.ZUI;y.fn[t]&&(t=`zui${this.NAME}`);const n=this;y.fn.extend({[t](i,...r){const o=typeof i=="object"?i:void 0,a=typeof i=="string"?i:void 0;let l;return this.each((c,d)=>{let u=n.get(d);if(u)o&&u.render(o);else{if(a)return;u=new n(d,o)}if(a){let p=u[a],g=u;p===void 0&&(g=u.$,p=g[a]),typeof p=="function"?l=p.call(g,...r):l=p}}),l!==void 0?l:this}})}static register(e,t){var i,r;e=e||this,t=(t??e.NAME).toLowerCase(),this.map.set(t,e);const n=(r=(i=e.toggle)==null?void 0:i.name)==null?void 0:r.toLowerCase();n&&n!==t&&this.toggleMap.set(n,e)}};ds.DEFAULT={},ds.MULTI_INSTANCE=!1,ds.ALL=new Map,ds.TYPED_ALL=new Map,ds.map=new Map,ds.toggleMap=new Map;let je=ds;function $i(s){return je.map.get(s.toLowerCase())}function to(s,e,t={}){let n=$i(s);if(n||(n=El(s)),!n)return null;const{$update:i,...r}=t;if(!n.MULTI_INSTANCE){const o=n.get(e);if(o)return i&&o.render(r,i==="reset"),o}return new n(e,r)}function Ly(s,e,t={}){requestAnimationFrame(()=>to(s,e,t))}function Cd(s,e){je.register(s,e)}function El(s){const{zui:e}=window;if(e){s=s==null?void 0:s.toLowerCase();for(const t in e){const n=t.toLowerCase()===s;if(s&&!n)continue;const i=e[t];if(!(typeof i!="function"||!i.NAME||!i.ZUI)&&(je.map.has(t.toLowerCase())||Cd(i),n))return i}}}function Ry(s){var e;s?(e=$i(s))==null||e.defineFn():window._zuiDefined||(El(),je.map.forEach(t=>{t.defineFn()}),Object.assign(window,{_zuiDefined:!0}))}function Oy(s,e={}){const t=y(s);let n=t.attr("zui-create");const{update:i,onCreate:r}=e,o=(a,l)=>{if(l={$update:i,$optionsFromDataset:!1,...l},r){const d=r(a,l);if(d===!1)return;d&&(l=d)}const c=l.$lib;if(c){delete l.$lib,y.getLib(c).then(()=>to(a,s,l));return}Ly(a,s,l)};if(typeof n=="string"){n=n.trim();const a=n.length?n.split(",").map(d=>d.trim()):[],l=As(s,{prefix:"zui-create-",evalValue:!0}),c=Object.keys(l);if(!c.length&&a.length===1)o(a[0],t.dataset());else{const d=new Set;[...a,...c].forEach(u=>{if(d.has(u))return;const p=l[u];o(u,p),delete l[u],d.add(u)})}}else{const a=t.dataset(),l=a==null?void 0:a.zui;if(!l)return;console.warn("[ZUI] create component instance with [data-zui] is deprecated, use [zui-create] instead.",{element:s,options:e}),delete a.zui,o(l,a)}}function zy(){y(document).on("click.zui.toggle mouseenter.zui.toggle","[data-toggle],[zui-toggle]",function(s){const e=y(this),t=e.dataset("toggle")||e.attr("zui-toggle");if(!t)return;const n=je.toggleMap.get(t)||$i(t),i=n==null?void 0:n.toggle;if(!i)return;const{trigger:r="click",skip:o="[disabled],.disabled",check:a}=i,l=s.type==="mouseover"?"hover":"click";if(!r.includes(l)||a&&!a.call(n,this,l,s)||o&&e.is(o))return;const{onGet:c,onCreate:d,setOptions:u=!0,getOptions:p,prevent:g=!0,handler:_,onToggle:C,convertHref:x}=i;let k=e.dataset();const $=e.attr(`zui-toggle-${t}`);if($&&(k=y.extend(k,as($))),x&&e.is("a")){const z=e.attr("href");if(z){const H=x===!0?{selector:"target",url:"url"}:x;"#.".includes(z[0])?H.selector&&k[H.selector]===void 0&&(k[H.selector]=z):H.url&&k[H.url]===void 0&&(k[H.url]=z)}}if(p&&(k=p.call(n,this,k,s)),_){_.call(n,this,k,l,s),g&&s.preventDefault();return}let E=c?c.call(n,this):n.get(this);if(E)u&&E.setOptions(k);else{const z=d?d.call(n,this,s,k):new n(this,k);if(!z)return;E=z}if(C){if(C.call(n,E,this,s)===!1)return}else{const{shown:z,show:H,hide:G,toggle:Y}=E;let X;if(Y?X=Y:H&&G?z?X=G:X=H:H&&(X=H),X)X.call(E);else return}g&&s.preventDefault()})}function Fy(s,e){const t=ki(s),n=[];return Object.keys(t).forEach(i=>{if(!i.startsWith("zui."))return;const r=t[i];(e==null?void 0:e(r,i))!==!1&&n.push(t[i])}),n}let no=0;function xd(s=100){if(no&&clearTimeout(no),s){no=window.setTimeout(()=>xd(0),s);return}no=0,je.ALL.forEach(e=>{e.forEach(t=>t.autoDestroy())})}function jy(){if(!document.body||ki(document.body,"_autoDestoryMob"))return;const s=new MutationObserver(e=>{let t=!1;for(const n of e)if(n.removedNodes.length){t=!0;break}t&&xd()});s.observe(document.body,{childList:!0,subtree:!0}),qr(document.body,"_autoDestoryMob",s)}function Pl(s,e){const t=y(s);t.find("[zui-create],[data-zui]").each(function(){var n;((n=e==null?void 0:e.beforeCreate)==null?void 0:n.call(e,this))!==!1&&Oy(this,e)}),t.find("[zui-init]").each(function(){this.hasAttribute("z-zui-inited")||(this.setAttribute("z-zui-inited",""),y.runJS(this.getAttribute("zui-init"),["$element",y(this)]))}),t.find(".hide-before-init").removeClass("invisible hidden opacity-0"),t.find(".scroll-into-view").scrollIntoView(),t.find('[data-on="inited"],[zui-on-inited]').each((n,i)=>{const r=y(i);r.zui()||r.trigger("inited")}),e!=null&&e.runJS&&t.runJS()}y.fn.zuiInit=function(s){return Pl(this,s),this},y.fn.zui=function(s,e){const t=this[0];if(!t)return;if(typeof s!="string"){const i={};let r;return Fy(t,(o,a)=>{i[a]=o,(!r||r.gid1?t[0]:void 0,i=t[t.length>1?1:0],r=y(this).zui(n),o=r==null?void 0:r[i];typeof o=="function"&&o.apply(r,e)}),this},y(()=>{y("body").zuiInit({update:!0}),zy(),jy()});class so extends je{get $targets(){const{$element:e}=this,{targets:t}=this.options;return t?e.find(t):e}_handleScroll(e,t,n){const{offset:i=1}=this.options,r=this.$targets,o=e.getBoundingClientRect(),{scrollTop:a,scrollLeft:l}=e;r.each((c,d)=>{const u=d.getBoundingClientRect(),p=t==="top"&&a>0&&u.top<=o.top+i||t==="bottom"&&u.bottom>=o.bottom-i||t==="left"&&l>0&&u.left<=o.left+i||t==="right"&&l{this._raf&&cancelAnimationFrame(this._raf),this._raf=requestAnimationFrame(()=>{this._raf=0,this._handleScroll(l,t,i)})};this._scrollListener=c,l.addEventListener("scroll",c)}this._container=l,requestAnimationFrame(()=>{this._handleScroll(l,t,i)})}else this._ob=new IntersectionObserver(l=>{l.forEach(c=>{c.target.classList.toggle(i,c.intersectionRatiothis._ob.observe(c))}destroy(){var e;(e=this._ob)==null||e.disconnect(),this._container&&(this._container.removeEventListener("scroll",this._scrollListener),this._raf&&cancelAnimationFrame(this._raf))}}so.NAME="Sticky";const Rs=24*60*60*1e3,Be=s=>s===void 0?new Date:(s instanceof Date||(typeof s=="string"&&(s=s.trim(),/^\d+$/.test(s)&&(s=Number.parseInt(s,10))),typeof s=="number"&&s<1e10&&(s*=1e3),s=new Date(s)),s),kd=(s,e,t="day")=>{if(typeof e=="string"){const n=Number.parseInt(e,10);t=e.replace(n.toString(),""),e=n}return s=new Date(Be(s).getTime()),t==="month"?s.setMonth(s.getMonth()+e):t==="year"?s.setFullYear(s.getFullYear()+e):t==="week"?s.setDate(s.getDate()+e*7):t==="hour"?s.setHours(s.getHours()+e):t==="minute"?s.setMinutes(s.getMinutes()+e):t==="second"?s.setSeconds(s.getSeconds()+e):s.setDate(s.getDate()+e),s},An=(s,e=new Date)=>Be(s).toDateString()===Be(e).toDateString(),Di=(s,e=new Date)=>Be(s).getFullYear()===Be(e).getFullYear(),Al=(s,e=new Date)=>(s=Be(s),e=Be(e),s.getFullYear()===e.getFullYear()&&s.getMonth()===e.getMonth()),By=(s,e=new Date)=>{s=Be(s),e=Be(e);const t=1e3*60*60*24,n=Math.floor(s.getTime()/t),i=Math.floor(e.getTime()/t);return Math.floor((n+4)/7)===Math.floor((i+4)/7)},Hy=(s,e)=>An(Be(e),s),Wy=(s,e)=>An(Be(e).getTime()-Rs,s),Uy=(s,e)=>An(Be(e).getTime()+Rs,s),Ll=s=>s!=null&&!isNaN(Be(s).getTime()),rt=(s,e="yyyy-MM-dd hh:mm",t="")=>{if(s=Be(s),!Ll(s))return t;if(typeof e=="function")return e(s);const n={"M+":s.getMonth()+1,"d+":s.getDate(),"h+":s.getHours(),"H+":s.getHours()%12,"m+":s.getMinutes(),"s+":s.getSeconds(),"S+":s.getMilliseconds()};return/(y+)/i.test(e)&&(e.includes("[yyyy-]")&&(e=e.replace("[yyyy-]",Di(s)?"":"yyyy-")),e=e.replace(RegExp.$1,`${s.getFullYear()}`.substring(4-RegExp.$1.length))),Object.keys(n).forEach(i=>{if(new RegExp(`(${i})`).test(e)){const r=`${n[i]}`;e=e.replace(RegExp.$1,RegExp.$1.length===1?r:`00${r}`.substring(r.length))}}),e},Vy=(s,e,t)=>{const n={full:"yyyy-M-d",month:"M-d",day:"d",str:"{0} ~ {1}",...t},i=rt(s,Di(s)?n.month:n.full);if(An(s,e))return i;const r=rt(e,Di(s,e)?Al(s,e)?n.day:n.month:n.full);return n.str.replace("{0}",i).replace("{1}",r)};function Rl(s){let e=0;if(typeof s!="string"&&(s=String(s)),s&&s.length)for(let t=0;t{try{a.includes("%")&&(a=decodeURIComponent(a)),a=JSON.parse(a)}catch{}return[o,a]})),params:n.map(o=>{if(o!=="undefined"){if(o==="null")return null;try{return o.includes("%")&&(o=decodeURIComponent(o)),JSON.parse(o)}catch{return o}}})}}function Sd(s){if(Array.isArray(s))return{commands:s.map(io).filter(Boolean)};if(typeof s=="object")return s;s=s.replace(/^#!?/,"");const e=s.includes(">"),t=s.split(e?">":"|").map(io);return{async:e,commands:t.filter(Boolean)}}function Ol(s,e,t){if(typeof s=="string"&&(s=io(s)),!s)return;const{execute:n,event:i,scope:r}=e;if(!(r&&s.scope&&s.scope!==r))return n({name:s.name,options:{...e.options,...s.options},event:i,scope:s.scope,prevResult:t},s.params)}async function Td(s,e){const{async:t,commands:n}=Sd(s);if(!n.length)return[];const{signal:i}=e;if(t){const o=[];let a;for(const l of n){if(!(i!=null&&i.aborted))break;a=await Ol(l,e,a),i!=null&&i.aborted&&(a=void 0),o.push(a)}return o}return await Promise.all(n.map(o=>{if(!(i!=null&&i.aborted))return Ol(o,e)}))}const Os="zui.commands",zs="z-commands",Ky="zui-commands-proxy",$d="zui-command";function ro(s,e){typeof e=="string"?e={scope:e}:typeof e=="function"&&(e={onCommand:e});const{scope:t="",events:n="click"}=e??{},i=y(s),r=(i.attr(zs)||"").split(",");t&&!r.includes(t)&&r.push(t),i.attr(zs,r.join(",")).data(Os,{[t]:{...e,scope:t,events:n,gid:wt()},...i.data(Os)})}function oo(s,e=!0){const t=y(s);if(e===!0)t.removeAttr(zs),t.removeData(Os);else if(e.length){const n=t.data(Os)||{};e.split(",").forEach(r=>{delete n[r]});const i=Object.keys(n);i.length?t.attr(zs,i.join(",")).data(Os,ro):oo(t,!0)}}function Dd(s,e){let t=s.closest(`[${zs}]`);if(!t.length){const o=s.closest(`[${Ky}]`);o.length&&(t=y(o.data("zui.commandProxy")||o.attr("COMMAND_PROXY_ATTR")).closest(`[${zs}]`))}if(!t.length)return;const n=t.data(Os)||{},i=Object.values(n).sort((o,a)=>a.gid-o.gid);let r;return e!=null&&e.length?(r=i.find(o=>o.scope===e),r||(r=i.find(o=>{var a;return!((a=o.scope)!=null&&a.length)&&!o.scoped})),r):(r=i.find(o=>{var a;return!((a=o.scope)!=null&&a.length)&&!o.scoped}),r||(r=i.find(o=>!o.scoped)),r?r.element=t[0]:r=Dd(s.parent(),e),r)}function qy(s){if(!s.currentTarget)return;const e=y(s.currentTarget);if(e.closest(".disabled,[disabled]").length)return;const t=e.attr($d)||(e.is('a[href^="#!"]')?e.attr("href"):"");if(!t)return;const n=new AbortController,i=()=>n.abort();Td(t,{signal:n.signal,execute:(r,o)=>{const{scope:a,name:l}=r,c={...r,abort:i};let d;const u=Dd(e,a);if(u){c.element=u.element;const g=(u.commands?u.commands[`${a}~${l}`]||u.commands[l]:null)||u.onCommand;if(g&&(d=g(c,o),s.commandHandled))return d}const p=[c,o];if(e.trigger("command",p).trigger(`command:${a?`${l}.${a}`:l}`,p),a&&e.trigger(`command:.${a}`,p),s.commandHandled)return d;if(a==="event"){l==="stop"?s.stopPropagation():l==="prevent"?s.preventDefault():Mn(s,l,o);return}return a==="window"?Mn(window,l,o):a==="zui"?Mn(window.zui,l,o):a==="target"?Mn(e[0],l,o):a==="$target"?Mn(e,l,o):a==="$"?Mn(y,l,o):d},event:s})}y.fn.command=function(s,e){return this.on(`command:${s}`,e)},y.fn.offCommand=function(s,e){return this.off(`command:${s}`,e)},y.fn.commands=function(s){return this.each((e,t)=>ro(t,s)),this},y.fn.unbindCommands=function(s){return this.each((e,t)=>oo(t,s)),this},y(()=>{y(document).on("click.zui.command",`[${$d}],a[href^="#!"]`,qy)});function Ii(s,e,t=!1){var i;const n=y(s);if(e!==void 0){if(typeof e=="string"&&e.length){const r=`zui-runjs-${wt()}`;n.append(`