jqx-es 1.5.3 → 1.5.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -13,4 +13,4 @@ ${r}`),g}}return{sheet:t,removeRules:b,tryParseAtOrNestedRules:x,ruleExists:f,ch
13
13
  `)}function jt(t){return t.reduce((e,r)=>{let[n,o]=[r.slice(0,r.indexOf(":")).trim(),r.slice(r.indexOf(":")+1).trim().replace(/;$|;.+(?=\/*).+\/$/,"")];return n&&o?{...e,[n]:o}:e},{})}function Jt(t){return jt(Rt(t))}function We(t,e){return t?.replace("::",":")===e?.replace("::",":")}var Ee=!1,Qt={on:()=>Ee=!0,off:()=>Ee=!1},M={tagsRaw:V,allowUnknownHtmlTags:Qt,isAllowed(t){if(Ee)return!0;let e=a(t,String)?t.toLowerCase():t?.nodeName.toLowerCase()||"none";return e==="#text"||!!V[e]},allowTag:t=>V[t.toLowerCase()]=!0,prohibitTag:t=>V[t.toLowerCase()]=!1};var kt=!0,re={data:/data-[\-\w.\p{L}]/ui,validURL:/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i,whiteSpace:/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g,notAllowedValues:/^javascript|injected|noreferrer|alert|DataURL/gi};function zt(t){if(kt&&Object.keys(t.removed).length){let e=Object.entries(t.removed).reduce((r,[n,o])=>[...r,`${D(n)} => ${o}`],[]).join("\\000A");C.error(`JQx: HTML creation error(s): ${e}`)}}function Bt(t){let e=t.nodeName.toLowerCase(),r=["annotation-xml","color-profile","font-face","font-face-src","font-face-uri","font-face-format","font-face-name","missing-glyph"];return/-/.test(e)&&!r.find(n=>n===e)||M.isAllowed(e)}function k(t){let e={rawHTML:t?.parentElement?.getHTML()??"no html",removed:{}};return a(t,HTMLElement)&&[...t.childNodes].forEach(r=>{if(r?.children?.length&&k(r),r?.attributes){let o=a(r,SVGElement)?W.svg:W.html;[...(r??{attributes:[]}).attributes].forEach(s=>{let f=s.name.trim().toLowerCase(),x=s.value.trim().toLowerCase().replace(re.whiteSpace,""),b=f==="href"?!re.validURL.test(x):re.notAllowedValues.test(x),E=f.startsWith("data")?!re.data.test(f):!!o[f];if(b||E){let d=ne(s.value||"none",60);d+=d.length===60?"...":"",e.removed[`${s.name}`]=`attribute/property/value not allowed, removed. Value: ${d}`,r.removeAttribute(s.name)}})}if(!(Bt(r)||r.constructor===CharacterData||r.constructor===Comment)){let o=(r?.outerHTML||r?.textContent).trim(),s=ne(o,60)??"EMPTY";s+=s.length===60?"...":"",e.removed[`<${r.nodeName?.toLowerCase()}>`]=`not allowed, not rendered. Value: ${s}`,r.remove()}}),zt(e),t}function Wt(t){let e=document.createElement("div");return e.insertAdjacentHTML(F.end,t),e.childNodes.length?k(e):void 0}function Vt(t,e,r){switch(!0){case a(t,Comment):return e.insertAdjacentHTML(r,`<!--${t.data}-->`);case a(t,Text):return e.insertAdjacentText(r,t.data||t.textContent);default:return}}function z(t=[],e=document.body,r=F.BeforeEnd){return r=r||F.BeforeEnd,e=e?.isJQx?e.node:e||document.body,t.reduce((n,o)=>{let s=O(o)&&_t(o,e,r);return s?[...n,s]:n},[])}function _t(t,e=document.body,r=F.BeforeEnd){return r=r||F.BeforeEnd,e=e?.isJQx?e?.[0]:e,a(t,Comment,Text)?Vt(t,e,r):a(t,HTMLElement)?e.insertAdjacentElement(r,t):void 0}function N(t){if(a(t,Text,Comment))return t;let e=t?.trim(),r=e?.split(/<text>|<\/text>/i)??[];if(r?.length&&(r=r.length>1?r.filter(o=>o.length).shift():void 0),e.startsWith("<!--")&&e.endsWith("-->"))return document.createComment(t.replace(/<!--|-->$/g,""));if(r||a(e,String)&&!/^<(.+)[^>]+>/m.test(e))return document.createTextNode(r??e);let n=Wt(t);return n.childNodes.length<1?N(`<span data-jqxcreationerror="1">${oe(t,60)}</span>`):n.children[0]}function ie(t){if(t.node("#jqxPopup"))return;t.logger.log("JQx: [JQx].Popup first call. Dialog element created."),t.dialog({id:"jqxPopup"},t.div({id:"jqxPopupContent"})).render,t.editCssRules(...Re);let e=[],[r,n]=[t("#jqxPopupContent"),t.node("#jqxPopup")],o={};return t.handle({type:"click, cancel",handlers:p,name:"genericPopupCloseHandler",capture:!0,about:"A generic handler for JQx popups"}),Object.freeze({show:s,remove:f,removeModal:h});function s(c){if(n.open)switch(!0){case x(c):return;default:return f(),setTimeout(()=>s(c),200)}o={...c};let{content:y}=o;return t.IS(y,String,HTMLElement)||y?.isJQx?b():!0}function f(){return o.modal?g(o.warnMessage):E()}function x(c){for(let[y,v]of Object.entries(o))if(v!==c[y])return!1;return!0}function b(){r.clear();let{content:c,modal:y,closeAfter:v}=o;y=t.IS(y,Boolean)?y:!1;let A=y?"":t.div({id:"closeHandleIcon"});r.append(A,t.IS(c,String)?t.div(c):c),n.showModal(),!y&&t.IS(v,Number)&&S(f,v)}function E(){if(n.close(o.returnValue),d(),t.IS(o.callback,Function))return e.push(setTimeout(()=>o.callback(o.returnValue),200));o={}}function d(){e.forEach(c=>clearTimeout(c)),e=[]}function h({callback:c,value:y}={}){o.returnValue=y,o.modal=!1,o.callback=c||o.callback,f()}function p({evt:c}){if(!(Object.keys(o).length<1||!n.open)&&(c.type==="cancel"&&o.modal&&c.preventDefault(),c.target.closest("#closeHandleIcon")||!c.target.closest("#jqxPopupContent")))return o.activeTimer&&clearTimeout(o.activeTimer),f()}function S(c,y){t.IS(c,Function)&&t.IS(y,Number)&&y>0&&(d(),e.push(setTimeout(c,y*1e3)))}function g(c){if(!t.IS(c,String,HTMLElement,Proxy))return;let y=r.find$(".warn");switch(!0){case y.is.empty:y=t.div({class:"warn"},c);default:r.append(y.addClass("active")),S(()=>r.find$(".warn").removeClass("active"),2)}}}function le(t){let e={},r="anonymous_";function n(d){if(d){let{handler:h,capture:p,type:S}=d;document.addEventListener(S,h,{capture:p})}}function o(d){if(d){let{type:h,handler:p,capture:S}=d;document.removeEventListener(h,p,{capture:S})}}function s(d,h,p,S){return function(g){if(!T(h))return d({evt:g});let c=g.target.closest(h);if(c){let y=t(c);d({self:y,me:y,evt:g}),p&&b(g.type,S)}return!0}}function f(d){return e[d]=e[d]||{},e[d]}function x(d,h){return Object.entries(f(d)).find(([p])=>p===h)}function b(d,h){let p=x(d,h);p&&(o(p[1]),delete e[d][h],delete se[h],C.warn(`Removed listener [${h}] for event type [${d}].`))}function E(d){let{type:h,handler:p,name:S,capture:g,once:c,selector:y,node:v,about:A}=d;e[h]=e[h]||{};let i=Le(S||p.name),l=p;if(v instanceof HTMLElement){let u=v.dataset.hid||i;v.dataset.hid=u,y=`[data-hid=${u}]`}switch(!0){case!e[h][i]:return C.log(`JQx: created listener for event type ${h}, with handler name ${i}`),e[h][i]={name:i,handler:s(p,y,c,i),capture:Ve(h,g),once:!!c,type:h,initialHandler:l,selector:!!y&&y||!1,about:!!A&&A||!1,unListen(){b(h,i)}},e[h][i];default:return console.warn(`The listener [${i}] for [${h}] exists, it is not re-assigned.`)}}return{remove(...d){return b(...d)},listen:function(d){let{type:h,handler:p}=d;if(!T(h)||!a(p,Function))return;let S=E(d);if(S)return n(S),{type:h,name:S.name,unListen(){b(h,S.name)}}},get ListenerStore(){return Object.freeze({...e})}}}var C=Zt(),Ut=["load","unload","scroll","focus","blur","DOMNodeRemovedFromDocument","DOMNodeInsertedIntoDocument","loadstart","progress","error","abort","load","loadend","pointerenter","pointerleave","readystatechange"],F=Object.freeze(new Proxy({start:"afterbegin",afterbegin:"afterbegin",end:"beforeend",beforeend:"beforeend",before:"beforebegin",beforebegin:"beforebegin",after:"afterend",afterend:"afterend"},{get(t,e){return t[String(e).toLowerCase()]??t[e]}})),Gt=[...Array(26)].map((t,e)=>String.fromCharCode(e+65)).concat([...Array(26)].map((t,e)=>String.fromCharCode(e+97))).concat([...Array(10)].map((t,e)=>`${e}`)),Te=Object.freeze({get(t,e){return t[Y(e)]||t[e]},enumerable:!1,configurable:!1}),se={};function $e(){let t=setTimeout(()=>{});for(;t>=0;)clearTimeout(t--)}function Le(t){return T(t)&&!/^handler|handlers$/gi.test(t.trim())?t.trim():_e()}function Fe(t){let e=!!t.node&&!a(t,Text,Comment);switch(!0){case e:let r=t.node.dataset?Object.keys(t.node.dataset).map(s=>`[data-${s}]`):[],o=[t.attr("id")&&`#${t?.attr("id")}`||void 0,t.attr("class")&&t?.attr("class").split(" ").map(s=>`.${s}`).join(", ")||void 0,r.length>0&&r.join(", ")||void 0].filter(s=>!!s).join(", ")||[];return o.length?`(${o})`:"";default:return""}}function _e(t){let e=`anonymous_${Math.random().toString(36).slice(2)}`;return se[e]?_e():(se[e]=e,e)}function Ve(t,e){return!!Ut.find(r=>r===t)||!!e}function ce(t){return t.startsWith("data")||W.html.find(e=>t.toLowerCase()===e)}function fe(t){return t&&(t.textContent="")}function G(t,e=0,r=!0){return t=t?.parentElement,e+=t?t[r?"scrollTop":"scrollLeft"]:0,t?G(t,e,r):e}function T(t,e=1){return e=a(e,Number)&&e||1,a(t,String)&&t.length>=e}function ne(t,e=120){return oe(t,e).replace(/&lt;/g,"<")}function oe(t,e=120){return`${t}`.trim().slice(0,e).replace(/>\s+</g,"><").replace(/</g,"&lt;").replace(/\s{2,}/g," ").replace(/\n/g,"\\n")+(t.length>e?" &hellip;":"").trim()}function D(t){switch(!0){case a(t,String):let e=document.createElement("div");return e.append(t),e.innerHTML;default:return t}}function Ce(t){return a(t,String)&&Object.assign(document.createElement("textarea"),{innerHTML:t}).textContent||t}function Zt(){let[t,e]=[!1,!0],r=[],n={get on(){return t=!0,n},get off(){return t=!1,n},get disable(){return e=!0,n},get enable(){return e=!1,n},get backLog(){return r}};function o(){e=!0}function s(){e=!1}function f(...E){return r.unshift(...E.map(d=>`${ue()} \u2A3B ${Ce(d)}`)),console.error(r.slice(0,E.length).join(`
14
14
  `)),n}function x(...E){return r.unshift(...E.map(d=>`${ue()} \u26A0 ${Ce(d)}`)),console.warn(r.slice(0,E.length).join(`
15
15
  `)),n}function b(...E){let d=E.map(h=>`${ue()} \u2714 ${Ce(h)}`);switch(!e&&r.unshift(...d),t){case!0:console.log(d.join(`
16
- `));default:return n}}return Object.defineProperties(n,{log:{value:b,enumerable:!1},error:{value:f,enumerable:!1},warn:{value:x,enumerable:!1}}),Object.freeze(n)}function ue(){return(t=>`[${ae(t.getHours())}:${ae(t.getMinutes())}:${ae(t.getSeconds())}.${ae(t.getMilliseconds(),3)}]`)(new Date)}function Ae(t,e){if(t)for(let[r,n]of Object.entries(e)){if(r=P(r),r.startsWith("data"))return de(t,n);a(n,String)&&ce(r)&&t.setAttribute(r,n.split(/[, ]/)?.join(" "))}}function de(t,e){if(t&&a(e,Object))for(let[r,n]of Object.entries(e))t.setAttribute(`data-${P(r)}`,n)}function me(t){return t?a(t,Proxy)?[t.EL]:a(t,NodeList)?[...t]:O(t)?[t]:K(t)?t:t.isJQx?t.collection:void 0:[]}function ge(t,e){return t.andThen(e)}function pe(t,e){return t.andThen(e,!0)}function O(t){return a(t,Text,HTMLElement,Comment)}function Z(t,e){if(a(e,Object))for(let[r,n]of Object.entries(e)){let o;/!important/i.test(n)&&(n=n.slice(0,n.indexOf("!")).trim(),o="important"),t.style.setProperty(P(r),n,o)}}function I(t){let e=t.cloneNode(!0);return e.removeAttribute&&e.removeAttribute("id"),t.isConnected?t.remove():t=null,e}function Ue(t){if(!a(t,HTMLElement))return;let e=t.style,r=getComputedStyle(t),n=!![e.visibility,r.visibility].includes("hidden"),o=!![e.display,r.display].includes("none"),s=!!t.hidden,f=parseInt(r.height)<1||parseInt(r.width)<1,x=t.offsetTop<0||t.offsetLeft+t.offsetWidth<0||t.offsetLeft>document.body.offsetWidth,b=+r.opacity==0||+(e.opacity||1)==0;return!(s||x||b||o||n||f)}function Ge(t){return t?.isConnected?!![...document.querySelectorAll(":is(:read-write)")].find(e=>e===t):!1}function Ze(t){return t?.filter(e=>e).reduce((e,r)=>e.concat(Pe(r)?`<!--${r.data}-->`:be(r)?r.textContent:r.outerHTML),"")}function ae(t,e=2){return`${t}`.padStart(e,"0")}function Ye(t,e=0){return[t,e]=[Math.floor(t),Math.ceil(e)],Math.floor([...crypto.getRandomValues(new Uint32Array(1))].shift()/2**32*(t-e+1)+e)}function ye(){return`_${Yt(Gt).slice(0,8).join("")}`}function He(t){return t=a(t,String)&&/,/.test(t)?t.split(",").map(e=>e.trim().toLowerCase()).filter(e=>e.length>0):t,a(t,Array)?t:a(t,String)&&t?.trim().toLowerCase()||""}function Xe(t){return t?.isConnected?!![...document.querySelectorAll(":is(:modal)")].find(e=>e===t):!1}function Ne(t,e){switch(t=String(t).trim(),!0){case/^(0|false|f)$/i.test(t):return!1;case/^(1|true|t)$/i.test(t):return!0;default:return e}}function Yt(t){let e=t.length;for(;e--;){let r=Ye(e);[t[e],t[r]]=[t[r],t[e]]}return t}function Y(t){return a(t,String)?t.toLowerCase().split("-").map((e,r)=>r&&`${Xt(e)}`||e).join(""):t}function P(t){return t.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`).replace(/^-|-$/,"")}function Xt([t,...e]){return`${t.toUpperCase()}${e.join("")}`}function be(t){return a(t,Comment,Text)}function Pe(t){a(t,Comment)}function Ke(t){return a(t,Text)}function X(t){return a(t,String)&&/^<|>$/.test(`${t}`.trim())}function K(t){return a(t,Array)&&!t?.find(e=>!O(e))}function he(t){return a(t,Array)&&!t?.find(e=>!X(e))}function L(t,e){let r=t.collection.filter(n=>!be(n));for(let n=0;n<r.length;n+=1)e(r[n],n);return t}function qe(t){return t.node?a(t.node,Comment)?`<!--${t.node.textContent}-->`:t.HTML.get(1).split(">")[0]+">...":""}function Me(t,e,r){let n=e!==document.body&&a(t,String)&&t.toLowerCase()!=="body"?e:document;try{r.collection=[...n.querySelectorAll(t)]}catch{C.warn(`JQx: Invalid CSS querySelector. [${a(t,String)?t:"Not a string!"}]`)}}function et(){return{isCommentOrTextNode:be,isNode:O,isComment:Pe,isText:Ke,isHtmlString:X,isArrayOfHtmlElements:K,isArrayOfHtmlStrings:he,ElemArray2HtmlString:Ze,input2Collection:me,setCollectionFromCssSelector:Me,cssRuleEdit:U({createWithId:"JQxStylesheet"})}}function tt(){let e=Object.freeze({notInDOM:"n/a",writable:"n/a",modal:"n/a",empty:!0,open:"n/a",visible:"n/a"});return r=>{let n=r.node;return a(n,Node)?Object.freeze({get writable(){return Ge(n)},get modal(){return Xe(n)},get inDOM(){return n.isConnected},get open(){return n.open??!1},get visible(){return Ue(n)},get disabled(){return n.hasAttribute("readonly")||n.hasAttribute("disabled")},get empty(){return r.collection.length<1},get virtual(){return r.isVirtual}}):e}}function rt(t,e,r,n){r&&a(e,String)&&(e={[e]:r==="-"?"":r});let o;e.className&&(o=e.className,delete e.className),o=[...t.classList].find(f=>f.startsWith("JQxClass-")||o&&f===o)||o||`JQxClass-${ye().slice(1)}`,n.editCssRule(`.${o}`,e),t.classList.add(o)}var Kt=tt();function nt(t){return{factoryExtensions:qt(t),instanceExtensions:er(t)}}function qt(t){return{data(e){return{get all(){return new Proxy(e[0]?.dataset??{},Te)},set(r={}){if(!e.is.empty&&a(r,Object))for(let[n,o]of Object.entries(r))e.setData({[n]:o});return e},get(r,n){return e.data.all[r]??n},add(r={}){if(!e.is.empty&&a(r,Object))for(let[n,o]of Object.entries(r))e.setData({[n]:o});return e},remove(r){return e[0]?.removeAttribute(`data-${P(r)}`),e}}},dimensions(e){if(e.is.empty)return C.error("[JQx instance].dimensions called on empty instance"),{error:"[JQx instance].dimensions: NO ELEMENTS"};let{node:r}=e,n=r.getBoundingClientRect().toJSON();return n.scrollTopDistance=G(r,0),n.scrollLeftDistance=G(r,0,!1),n},node(e){return e[0]},HTML(e){return{get(r,n){if(e.is.empty)return"NO ELEMENTS IN COLLECTION";let o=r?e.outerHtml:e.html();return n?D(o):o},set(r,n=!1,o=!1){r=r.isJQx?r.HTML.get(1):r;let s=a(r,String);return r=s&&o?D(r):r,s&&(r||"").trim().length&&e.html(r,n),e},replace(r,n=!1){return e.HTML.set(r,!1,n)},append(r,n=!1){return r=a(r,HTMLElement)?t(r).HTML.get(1):r.isJQx?r.HTML.get(1):r,e.HTML.set(r,!0,n)},insert(r,n=!1){return r=a(r,HTMLElement)?t(r).HTML.get(1):r.isJQx?r.HTML.get(1):r,e.HTML.set(r+e.HTML.get(),!1,n)}}},is(e){return Kt(e)},length(e){return e.collection.length},outerHtml(e){return(e.first()||{outerHTML:void 0}).outerHTML},parent(e){let r=t(e[0]?.parentNode);return r.is.empty?e:r},render(e){switch(!0){case!e.is.empty:return e.toDOM();default:return t.logger.warn("[JQx.render]: empty collection"),e}},Style(e){return{get computed(){return e.is.empty?{}:getComputedStyle(e[0])},inline(r){return e.style(r)},inSheet(r){return e.css(r)},valueOf(r){return e.is.empty?void 0:getComputedStyle(e[0])[P(r)]},nwRule(r){return e.Style.byRule({rules:r})},byRule({classes2Apply:r=[],rules:n=[]}={}){let s=a(n,String)&&!r.length?n.split("{")[0].trim():"";if(n=n&&a(n,String)?[n]:n,r=r&&a(r,String)?[r]:r,(n?.length||r?.length)&&(n?.length&&t.editCssRules(...n),r))for(let f of r)e.addClass(f);return s?.startsWith(".")&&e.addClass(s.slice(1)),s?.startsWith("#")&&!e.attr("id")&&e.prop({id:s.slice(1)}),e}}}}}function er(t){return{addClass(e,...r){return L(e,n=>n&&r.forEach(o=>n.classList.add(o)))},after:ge,afterMe:ge,andThen(e,r,n=!1){if(!r||!a(r,String,Node,Proxy))return C.log("[JQx instance].[before(Me) | after(Me) | andThen]: invalid/-sufficient input."),e;r=r?.isJQx?r:a(r,Node)?t.virtual(r):t.virtual(N(r));let[o,s,f]=n?[0,"before",r.collection.concat(e.collection)]:[e.collection.length-1,"after",e.collection.concat(r.collection)];return e[o][s](...r.collection),e.collection=f,e},append(e,...r){if(e.is.empty||r.length<1)return e;let n=e.length===1;for(let o of r){if(!o.isJQx&&T(o)){let s=o.trim(),x=!/^<(.+)[^>]+>$/m.test(s)?t.text(o):N(o);L(e,b=>b.append(n?x:I(x)))}O(o)&&L(e,s=>s.append(n?o:I(o))),o.isJQx&&!o.is.empty&&L(e,s=>o.collection.forEach(f=>s.append(n?f:I(f))))}return e},appendTo(e,r){switch(!0){case(!r.isJQx&&!a(r,HTMLElement)):return $.warn("[JQx instance].appendTo: invalid input"),e;default:return(r.isJQx?r:t(r)).append(e),e}},attr(e,r,n){if(!e.node||a(e.node,Text,Comment))return e;if(!n&&T(r))return r=P(r),r==="class"?[...e.node.classList].join(" "):e.node.getAttribute(r);if(T(r)&&n)switch(r=P(r),!0){case r.startsWith("data-"):r={data:{[r.replace("data-","")]:n}};break;default:r={[r]:n}}return a(r,Object)&&!e.is.empty&&Ae(e.node,r),e},before:pe,beforeMe:pe,clear(e){return L(e,fe)},closest(e,r){let n=T(r)?e.node?.closest(r):void 0;return n?t(n):e},computedStyle(e,r){let{node:n}=e;return n&&getComputedStyle(n)[r]},css(e,r,n){return L(e,o=>rt(o,r,n,t))},duplicate(e,r=!1,n=document.body){switch(!0){case e.is.empty:return C.error("Duplicating an empty JQx instance is not possible"),e;default:let o=e.collection[0].cloneNode(!0);return o.childNodes.forEach(s=>{s.removeAttribute&&s?.removeAttribute("id")}),r?t(o).toDOM(n):t.virtual(o)}},each(e,r){return L(e,r)},empty(e){return L(e,fe)},find(e,r){return e.collection.length>0?[...e.first()?.querySelectorAll(r)]:[]},find$(e,r){return e.collection.length>0?t(r,e):e},first(e,r=!1){return e.collection.length>0?r?e.single():e.collection[0]:void 0},first$(e,r){return e.single(r)},getData(e,r,n){return e.node?.dataset?.[r]||n},hasClass(e,...r){return e.is.empty||!e.node.classList.length?!1:r.find(n=>e.node.classList.contains(n))&&!0||!1},hide(e){return L(e,r=>Z(r,{display:"none !important"}))},html(e,r,n){switch(!0){case(e.is.empty&&!T(r)):return"";case!T(r):return e.node?.getHTML()??"";default:let o=N(`<div>${r.isJQx?r.HTML.get(!0):r}</div>`);return L(e,f=>(f.textContent=n?f.textContent:"",f.insertAdjacentHTML(t.at.end,o.getHTML())))}},htmlFor(e,r,n="",o=!1){if(e.is.empty||!T(r)||!T(n))return e;let s=e.find$(r);if(s.length<1)return e;let f=N(`<span>${n}</span>`);return s.each(x=>{o||(x.textContent=""),x.insertAdjacentHTML(t.at.end,f?.getHTML())}),e},isEmpty(e){return!e.node},nth$(e,r){return e.single(r)},on(e,r,...n){switch(!0){case(e.is.empty||!a(r,String,Array)||!T(r)||n.length<1):return e;default:return t.handle({type:r,node:e.node,handler:n}),e}},once(e,r,...n){switch(!0){case(e.is.empty||!a(r,String,Array)||!T(r)||n.length<1):return e;default:return t.handle({type:r,once:!0,node:e.node,handler:n}),e}},prepend(e,...r){if(e.is.empty||!r)return;let n=e.length===1;for(let o of r){if(T(o)){o=o.trim();let f=!/^<(.+)[^>]+>$/m.test(o)?t.text(o):N(o);f=n?f:I(f),L(e,x=>x.prepend(f.cloneNode(!0)))}O(o)&&L(e,s=>s.prepend(n?o:I(o))),o.isJQx&&!o.is.empty&&(o.collection.length>1&&o.collection.reverse(),L(e,s=>L(o,f=>s.prepend(n?f:I(f)))),o.collection.reverse())}return e},prependTo(e,r){return r.isJQx||(r=t.virtual(r)),r.prepend(e),e},prop(e,r,n){if(a(r,String)&&!n)return r.startsWith("data")?e[0]?.dataset[r.slice(r.indexOf("-")+1)]:e[0]?.[r];let o=a(r,Object)?r:{[r]:n};for(let[s,f]of Object.entries(o)){if(s=s.trim(),f&&!ce(s)||!f)return!1;if(s.toLowerCase()==="id")return e[0].id=f;L(e,b=>{if(s.startsWith("data"))return b.dataset[s.slice(s.indexOf("-")+1)]=f;b[s]=f})}return e},remove(e,r){let n=s=>s.remove(),o=()=>e.collection=e.collection.filter(s=>document.documentElement.contains(s));if(r){let s=e.find$(r);return s.is.empty||(L(s,n),o()),e}return L(e,n),o(),e},rmAttr(e,...r){for(let n of r)e.node.removeAttribute(n);return e},removeClass(e,...r){return L(e,n=>{if(n)for(let o of r)n.classList.remove(o)})},renderTo(e,r,n){return r=a(r,HTMLElement)||r.isJQx?r:document.body,n=a(n,String)&&t.at[n]?n:t.at.end,e.first$().toDOM(r,n),e},replace(e,r,n){let o=e.node;return!r||!a(n,HTMLElement)&&!n?.isJQx?(t.logger.error("JQx replace: invalid replacement value"),e):((n.isJQx||a(n,NodeList))&&(n=n[0]),o&&r&&(r=a(r,String)?o.querySelectorAll(r):r.isJQx?r.collection:r,a(r,HTMLElement,NodeList,Array)&&a(n,HTMLElement)&&(a(r,HTMLElement)?[r]:[...r]).forEach(s=>s.replaceWith(n.cloneNode(!0)))),e)},replaceClass(e,r,...n){return L(e,o=>{o.classList.remove(r);for(let s of n)o.classList.add(s)})},replaceMe(e,r){return e.replaceWith(r)},replaceWith(e,r){return r=a(r,Element)?r:r.isJQx?r[0]:void 0,r&&(e[0].replaceWith(r),e=t.virtual(r)),e},setData(e,r){return L(e,n=>de(n,r))},show(e){return L(e,r=>Z(r,{display:"revert-layer !important"}))},single(e,r){let n=e.collection.length>0;switch(r=r??0,!0){case(n&&a(r,String)):return e.find$(r);case(n&&a(r,Number)):return t(e.collection[r]);case n:return e.collection[0];default:return e}},style(e,r,n){return L(e,s=>{n&&a(r,String)&&(r={[r]:n||"none"}),Z(s,r)})},text(e,r,n=!1){switch(!0){case e.isEmpty():return e;case!a(r,String):return e.node.textContent;default:return L(e,o=>o.textContent=n?o.textContent+r:r)}},toDOM(e,r=document.body,n=F.BeforeEnd){return e.isVirtual=!1,z(e.collection,r,n),e},toggleClass(e,r){return L(e,n=>n.classList.toggle(r))},toNodeList(e){return[...e.collection].map(r=>document.importNode(r,!0))},trigger(e,r,n,o){if(n=/Event]$/.test(a(n))?n:Event,o=a(o,Object)?{...o,bubbles:o.bubbles??!0}:{bubbles:!0},!e.is.empty){let s=new n(r,o);e.each(f=>f.dispatchEvent(s))}return e},val(e,r){switch(!0){case(e.is.empty||!a(e.node,HTMLInputElement,HTMLSelectElement,HTMLTextAreaElement)):return e;case!a(r,String):return e.node.value;default:return e.node.value=a(r,String)?r:"",e}}}}var Oe,Se,{isComment:cn,isText:fn,isHtmlString:dn,isArrayOfHtmlElements:mn,isArrayOfHtmlStrings:gn,ElemArray2HtmlString:pn,cssRuleEdit:De,addFn:tr}=rr();function rr(){return{...et(),addFn:nr}}function nr(t,e){return t=t?.trim(),!T(t)||!a(e,Function)?C.error("JQx.fn: method invalid parameter(s)"):Se[t]=(r,...n)=>e(r,...n)}function or(t){return function(e,r,n){if(e=e?.trim(),!T(e)||!a(r,Function))return t.error("JQx.staticFn: invalid parameter(s)");let o=n?{get(){return r()}}:{value(...s){return r(...s)}};try{Object.defineProperty(t,e,o)}catch{return t.warn(`JQx.staticFn: extension [${e}] already exists`)}return C.log(`JQx: added static extension function [${e}]`)}}function q(t){return new Proxy(t,Object.freeze({get:(e,r)=>ir(e,r,t)}))}function ot(t,e){return(...r)=>a(t,Function)&&t(q(e),...r)}function ir(t,e,r){switch(!0){case a(e,Symbol):return B({trial:()=>t[e],whenError:()=>t});case a(+e,Number):return t.collection?.[e]||void 0;case e in Oe:return ot(Oe[e],r)();case e in Se:return ot(Se[e],r);default:return t[e]}}function st(t){let e=cr(t);for(let[r,n]of Object.entries(Object.getOwnPropertyDescriptors(e)))Object.defineProperty(t,r,n);return t}function lr(t){return{allow(e){let r=/-/.test(e),n=r&&e;e=r?Y(e):e.toLowerCase(),M.allowTag(e),Object.defineProperties(t,Ie(e,!0,t,n))},prohibit(e){e=e.toLowerCase(),M.prohibitTag(e),Object.defineProperties(t,Ie(e,!1,t))}}}function it(...t){if(t.length===1){let e=String(t.shift().trim());t=e.startsWith("!")?[e.slice(1,-1)]:e.split(",").map(r=>r.trim())}for(let e of t.map(r=>r.startsWith("!")?r.slice(1,-1):r))De(e,{removeRule:1})}function sr(t){return function(e,r,n){r=r?.isJQx?r?.[0]:r,n=n&&Object.values(F).find(s=>n===s);let o=t(e,document.createElement("br"));if(r&&!a(r,HTMLBRElement))for(let s of o.collection)n?r.insertAdjacentElement(n,s):r.append(s);return o}}function ar(...t){let e={};for(let r of t){let n=Object.getOwnPropertyDescriptors(r);for(let[o,s]of Object.entries(n))!(o in e)&&Object.defineProperty(e,o,{...s,enumerable:!1})}return e}function ur(t,e,r,n){return t=P(n||t.toLowerCase()),{get(){return(...o)=>{let s=e&&r.virtual(k(ee[t](...o)))||void 0,x=!a(s?.node,Comment,Text,void 0)?Fe(s):"";return C.log(e?`JQx: created (virtual) instance from [JQx].${t} ${x}`:`JQx: ${t.toUpperCase()} is prohibited. Use [JQx].allowTag if necessary.`),s}},enumerable:!1,configurable:!0}}function Ie(t,e,r,n){t=t.toLowerCase();let o=ur(t,e,r,n);return n?{[n]:o,[Y(n)]:o}:{[t]:o,[t.toUpperCase()]:o}}function cr(t){return ar(Object.entries(M.tagsRaw).reduce(fr(t),{}),br(t))}function fr(t){return function(e,[r,n]){return Object.defineProperties(e,Ie(r,n,t)),e}}function dr(t){return function(e,r,...n){a(r,Function)&&(n.push(r),r=void 0),t({type:e,selector:r,handlers:n})}}function mr(t){return function(e){let{type:r,types:n,origin:o,selector:s,handler:f,handlers:x,node:b,name:E,capture:d,once:h,about:p}=e;f=x||f,r=n||r,s=o||s;let S=He(r),g=E;f=a(f,Function)?[f]:f;let c={type:S,selector:s||o,capture:d,name:g,once:h,node:b,about:p};switch(!0){case(a(S,Array)&&S.length>0):for(let y of S)c.type=y,lt(f,c,t);break;default:return lt(f,c,t)}}}function lt(t,e,r){for(let n of t)r.listen({...e,handler:n})}function gr(t){return function(e,r){return r=T(r)&&r,e=T(e)&&e,r&&e&&t.listenerStore[e][r]}}function pr(t){return t.activePopup||Object.defineProperty(t,"activePopup",{value:ie(t),enumerable:!1}),t.activePopup}function yr(t){let e=(d,h)=>De(d,h),r=function(d){return U({createWithId:d||`jqx${ye()}`})},n=function(...d){for(let h of d)De(h)},o=lr(t),s=le(t),f=mr(s);return{editCssRule:e,createStyle:r,editCssRules:n,allowProhibit:o,handle:f,capturedHandling:f,log:(...d)=>C.on.log(...d).off,warn:(...d)=>C.on.warn(...d).off,error:(...d)=>C.on.error(...d).off,handlerWrapper:s}}function br(t){let{factoryExtensions:e,instanceExtensions:r}=nt(t);Oe=e,Se=r;let{editCssRule:n,createStyle:o,editCssRules:s,allowProhibit:f,handle:x,capturedHandling:b,log:E,warn:d,error:h,handlerWrapper:p}=yr(t),S=gr(t),g=or(t);return{log:E,warn:d,error:h,editCssRules:s,createStyle:o,editStylesheet:o,editCssRule:n,escHtml:D,logger:C,text(c,y=!1){return y?t.comment(c):document.createTextNode(c)},node(c,y=document){return y.querySelector(c,y)},nodes(c,y=document){return[...y.querySelectorAll(c,y)]},clearAllTimers:$e,get staticFn(){return function(c,y,v){return g(c,y,v)}},get toBool(){return Ne},get getNamedListener(){return S},get virtual(){return sr(t)},get allowTag(){return f.allow},get prohibitTag(){return f.prohibit},get removeCssRule(){return it},get removeCssRules(){return it},get delegate(){return dr(b)},get delegateCaptured(){return b},get handle(){return b},get listen(){return p.listen},get at(){return F},get setStyle(){return n},get fn(){return tr},get lenient(){return M.allowUnknownHtmlTags},get IS(){return a},get Popup(){return pr(t)},get listenerStore(){return p.ListenerStore}}}var at=st(hr());function hr(){return function(e,r,n=F.BeforeEnd){if(e?.isJQx)return e;let o=a(r,HTMLBRElement);r=(!o&&r&&r.isJQx?r[0]:r)||document.body,n=n&&Object.values(F).find(d=>n===d)?n:void 0;let s=X(e),x=!s&&he(e)||s,b={collection:me(e)??[],isVirtual:o,isJQx:!0},E=K(b.collection);if(b.collection.length&&E)return o||b.collection.forEach(d=>{r.contains(d)||z([d],r,n)}),q(b);if(x){if([e].flat().forEach(d=>b.collection.push(N(d))),b.collection.length>0){let d=b.collection.filter(g=>g?.dataset?.jqxcreationerror);b.collection=b.collection.filter(g=>!g?.dataset?.jqxcreationerror);let p=b.collection.map(g=>`${String(g.constructor).split(/function|\(/)[1].trim()}`).length>1;b=q(b);let S=b.collection.length>0?qe(b):"sanitized: no elements remaining";C.log(`JQx: created ${b.isVirtual?"(virtual)":""} instance from ${p?"array of ":""}HTML string${p?"s":""} ${S}`),b.isVirtual||z(b.collection,r,n)}return b}return Me(e,r,b),q(b)}}var Sr=at;return gt(xr);})();
16
+ `));default:return n}}return Object.defineProperties(n,{log:{value:b,enumerable:!1},error:{value:f,enumerable:!1},warn:{value:x,enumerable:!1}}),Object.freeze(n)}function ue(){return(t=>`[${ae(t.getHours())}:${ae(t.getMinutes())}:${ae(t.getSeconds())}.${ae(t.getMilliseconds(),3)}]`)(new Date)}function Ae(t,e){if(t)for(let[r,n]of Object.entries(e)){if(r=P(r),r.startsWith("data"))return de(t,n);a(n,String)&&ce(r)&&t.setAttribute(r,n.split(/[, ]/)?.join(" "))}}function de(t,e){if(t&&a(e,Object))for(let[r,n]of Object.entries(e))t.setAttribute(`data-${P(r)}`,n)}function me(t){return t?a(t,Proxy)?[t.EL]:a(t,NodeList)?[...t]:O(t)?[t]:K(t)?t:t.isJQx?t.collection:void 0:[]}function ge(t,e){return t.andThen(e)}function pe(t,e){return t.andThen(e,!0)}function O(t){return a(t,Text,HTMLElement,Comment)}function Z(t,e){if(a(e,Object))for(let[r,n]of Object.entries(e)){let o;/!important/i.test(n)&&(n=n.slice(0,n.indexOf("!")).trim(),o="important"),t.style.setProperty(P(r),n,o)}}function I(t){let e=t.cloneNode(!0);return e.removeAttribute&&e.removeAttribute("id"),t.isConnected?t.remove():t=null,e}function Ue(t){if(!a(t,HTMLElement))return;let e=t.style,r=getComputedStyle(t),n=!![e.visibility,r.visibility].includes("hidden"),o=!![e.display,r.display].includes("none"),s=!!t.hidden,f=parseInt(r.height)<1||parseInt(r.width)<1,x=t.offsetTop<0||t.offsetLeft+t.offsetWidth<0||t.offsetLeft>document.body.offsetWidth,b=+r.opacity==0||+(e.opacity||1)==0;return!(s||x||b||o||n||f)}function Ge(t){return t?.isConnected?!![...document.querySelectorAll(":is(:read-write)")].find(e=>e===t):!1}function Ze(t){return t?.filter(e=>e).reduce((e,r)=>e.concat(Pe(r)?`<!--${r.data}-->`:be(r)?r.textContent:r.outerHTML),"")}function ae(t,e=2){return`${t}`.padStart(e,"0")}function Ye(t,e=0){return[t,e]=[Math.floor(t),Math.ceil(e)],Math.floor([...crypto.getRandomValues(new Uint32Array(1))].shift()/2**32*(t-e+1)+e)}function ye(){return`_${Yt(Gt).slice(0,8).join("")}`}function He(t){return t=a(t,String)&&/,/.test(t)?t.split(",").map(e=>e.trim().toLowerCase()).filter(e=>e.length>0):t,a(t,Array)?t:a(t,String)&&t?.trim().toLowerCase()||""}function Xe(t){return t?.isConnected?!![...document.querySelectorAll(":is(:modal)")].find(e=>e===t):!1}function Ne(t,e){switch(t=String(t).trim(),!0){case/^(0|false|f)$/i.test(t):return!1;case/^(1|true|t)$/i.test(t):return!0;default:return e}}function Yt(t){let e=t.length;for(;e--;){let r=Ye(e);[t[e],t[r]]=[t[r],t[e]]}return t}function Y(t){return a(t,String)?t.toLowerCase().split("-").map((e,r)=>r&&`${Xt(e)}`||e).join(""):t}function P(t){return t.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`).replace(/^-|-$/,"")}function Xt([t,...e]){return`${t.toUpperCase()}${e.join("")}`}function be(t){return a(t,Comment,Text)}function Pe(t){a(t,Comment)}function Ke(t){return a(t,Text)}function X(t){return a(t,String)&&/^<|>$/.test(`${t}`.trim())}function K(t){return a(t,Array)&&!t?.find(e=>!O(e))}function he(t){return a(t,Array)&&!t?.find(e=>!X(e))}function L(t,e){let r=t.collection.filter(n=>!be(n));for(let n=0;n<r.length;n+=1)e(r[n],n);return t}function qe(t){return t.node?a(t.node,Comment)?`<!--${t.node.textContent}-->`:t.HTML.get(1).split(">")[0]+">...":""}function Me(t,e,r){let n=e!==document.body&&a(t,String)&&t.toLowerCase()!=="body"?e:document;try{r.collection=[...n.querySelectorAll(t)]}catch{C.warn(`JQx: Invalid CSS querySelector. [${a(t,String)?t:"Not a string!"}]`)}}function et(){return{isCommentOrTextNode:be,isNode:O,isComment:Pe,isText:Ke,isHtmlString:X,isArrayOfHtmlElements:K,isArrayOfHtmlStrings:he,ElemArray2HtmlString:Ze,input2Collection:me,setCollectionFromCssSelector:Me,cssRuleEdit:U({createWithId:"JQxStylesheet"})}}function tt(){let e=Object.freeze({notInDOM:"n/a",writable:"n/a",modal:"n/a",empty:!0,open:"n/a",visible:"n/a"});return r=>{let n=r.node;return a(n,Node)?Object.freeze({get writable(){return Ge(n)},get modal(){return Xe(n)},get inDOM(){return n.isConnected},get open(){return n.open??!1},get visible(){return Ue(n)},get disabled(){return n.hasAttribute("readonly")||n.hasAttribute("disabled")},get empty(){return r.collection.length<1},get virtual(){return r.isVirtual}}):e}}function rt(t,e,r,n){r&&a(e,String)&&(e={[e]:r==="-"?"":r});let o;e.className&&(o=e.className,delete e.className),o=[...t.classList].find(f=>f.startsWith("JQxClass-")||o&&f===o)||o||`JQxClass-${ye().slice(1)}`,n.editCssRule(`.${o}`,e),t.classList.add(o)}var Kt=tt();function nt(t){return{factoryExtensions:qt(t),instanceExtensions:er(t)}}function qt(t){return{data(e){return{get all(){return new Proxy(e[0]?.dataset??{},Te)},set(r={}){if(!e.is.empty&&a(r,Object))for(let[n,o]of Object.entries(r))e.setData({[n]:o});return e},get(r,n){return e.data.all[r]??n},add(r={}){if(!e.is.empty&&a(r,Object))for(let[n,o]of Object.entries(r))e.setData({[n]:o});return e},remove(r){return e[0]?.removeAttribute(`data-${P(r)}`),e}}},dimensions(e){if(e.is.empty)return C.error("[JQx instance].dimensions called on empty instance"),{error:"[JQx instance].dimensions: NO ELEMENTS"};let{node:r}=e,n=r.getBoundingClientRect().toJSON();return n.scrollTopDistance=G(r,0),n.scrollLeftDistance=G(r,0,!1),n},node(e){return e[0]},HTML(e){return{get(r,n){if(e.is.empty)return"NO ELEMENTS IN COLLECTION";let o=r?e.outerHtml:e.html();return n?D(o):o},set(r,n=!1,o=!1){r=r.isJQx?r.HTML.get(1):r;let s=a(r,String);return r=s&&o?D(r):r,s&&(r||"").trim().length&&e.html(r,n),e},replace(r,n=!1){return e.HTML.set(r,!1,n)},append(r,n=!1){return r=a(r,HTMLElement)?t(r).HTML.get(1):r.isJQx?r.HTML.get(1):r,e.HTML.set(r,!0,n)},insert(r,n=!1){return r=a(r,HTMLElement)?t(r).HTML.get(1):r.isJQx?r.HTML.get(1):r,e.HTML.set(r+e.HTML.get(),!1,n)}}},is(e){return Kt(e)},length(e){return e.collection.length},outerHtml(e){return(e.first()||{outerHTML:void 0}).outerHTML},parent(e){let r=t(e[0]?.parentNode);return r.is.empty?e:r},render(e){switch(!0){case!e.is.empty:return e.toDOM();default:return t.logger.warn("[JQx.render]: empty collection"),e}},Style(e){return{get computed(){return e.is.empty?{}:getComputedStyle(e[0])},inline(r){return e.style(r)},inSheet(r){return e.css(r)},valueOf(r){return e.is.empty?void 0:getComputedStyle(e[0])[P(r)]},nwRule(r){return e.Style.byRule({rules:r})},byRule({classes2Apply:r=[],rules:n=[]}={}){let s=a(n,String)&&!r.length?n.split("{")[0].trim():"";if(n=n&&a(n,String)?[n]:n,r=r&&a(r,String)?[r]:r,(n?.length||r?.length)&&(n?.length&&t.editCssRules(...n),r))for(let f of r)e.addClass(f);return s?.startsWith(".")&&e.addClass(s.slice(1)),s?.startsWith("#")&&!e.attr("id")&&e.prop({id:s.slice(1)}),e}}}}}function er(t){return{addClass(e,...r){return L(e,n=>n&&r.forEach(o=>n.classList.add(o)))},after:ge,afterMe:ge,andThen(e,r,n=!1){if(!r||!a(r,String,Node,Proxy))return C.log("[JQx instance].[before(Me) | after(Me) | andThen]: invalid/-sufficient input."),e;r=r?.isJQx?r:a(r,Node)?t.virtual(r):t.virtual(N(r));let[o,s,f]=n?[0,"before",r.collection.concat(e.collection)]:[e.collection.length-1,"after",e.collection.concat(r.collection)];return e[o][s](...r.collection),e.collection=f,e},append(e,...r){if(e.is.empty||r.length<1)return e;let n=e.length===1;for(let o of r){if(!o.isJQx&&T(o)){let s=o.trim(),x=!/^<(.+)[^>]+>$/m.test(s)?t.text(o):N(o);L(e,b=>b.append(n?x:I(x)))}O(o)&&L(e,s=>s.append(n?o:I(o))),o.isJQx&&!o.is.empty&&L(e,s=>o.collection.forEach(f=>s.append(n?f:I(f))))}return e},appendTo(e,r){switch(!0){case(!r.isJQx&&!a(r,HTMLElement)):return $.warn("[JQx instance].appendTo: invalid input"),e;default:return(r.isJQx?r:t(r)).append(e),e}},attr(e,r,n){if(!e.node||a(e.node,Text,Comment))return e;if(!n&&T(r))return r=P(r),r==="class"?[...e.node.classList].join(" "):e.node.getAttribute(r);if(T(r)&&n)switch(r=P(r),!0){case r.startsWith("data-"):r={data:{[r.replace("data-","")]:n}};break;default:r={[r]:n}}return a(r,Object)&&!e.is.empty&&Ae(e.node,r),e},before:pe,beforeMe:pe,clear(e){return L(e,fe)},closest(e,r){let n=T(r)?e.node?.closest(r):void 0;return n?t(n):e},computedStyle(e,r){let{node:n}=e;return n&&getComputedStyle(n)[r]},css(e,r,n){return L(e,o=>rt(o,r,n,t))},duplicate(e,r=!1,n=document.body){switch(!0){case e.is.empty:return C.error("Duplicating an empty JQx instance is not possible"),e;default:let o=e.collection[0].cloneNode(!0);return o.childNodes.forEach(s=>{s.removeAttribute&&s?.removeAttribute("id")}),r?t(o).toDOM(n):t.virtual(o)}},each(e,r){return L(e,r)},empty(e){return L(e,fe)},find(e,r){return e.collection.length>0?[...e.first()?.querySelectorAll(r)]:[]},find$(e,r){return e.collection.length>0?t(r,e):e},first(e,r=!1){return e.collection.length>0?r?e.single():e.collection[0]:void 0},first$(e,r){return e.single(r)},getData(e,r,n){return e.node?.dataset?.[r]||n},hasClass(e,...r){return e.is.empty||!e.node.classList.length?!1:r.find(n=>e.node.classList.contains(n))&&!0||!1},hide(e){return L(e,r=>Z(r,{display:"none !important"}))},html(e,r,n){switch(!0){case(e.is.empty&&!T(r)):return"";case!T(r):return e.node?.getHTML()??"";default:let o=N(`<div>${r.isJQx?r.HTML.get(!0):r}</div>`);return L(e,f=>(f.textContent=n?f.textContent:"",f.insertAdjacentHTML(t.at.end,o.getHTML())))}},htmlFor(e,r,n="",o=!1){if(e.is.empty||!T(r)||!T(n))return e;let s=e.find$(r);if(s.length<1)return e;let f=N(`<span>${n}</span>`);return s.each(x=>{o||(x.textContent=""),x.insertAdjacentHTML(t.at.end,f?.getHTML())}),e},isEmpty(e){return!e.node},nth$(e,r){return e.single(r)},on(e,r,...n){switch(!0){case(e.is.empty||!a(r,String,Array)||!T(r)||n.length<1):return e;default:return t.handle({type:r,node:e.node,handler:n}),e}},once(e,r,...n){switch(!0){case(e.is.empty||!a(r,String,Array)||!T(r)||n.length<1):return e;default:return t.handle({type:r,once:!0,node:e.node,handler:n}),e}},prepend(e,...r){if(e.is.empty||!r)return;let n=e.length===1;for(let o of r){if(T(o)){o=o.trim();let f=!/^<(.+)[^>]+>$/m.test(o)?t.text(o):N(o);f=n?f:I(f),L(e,x=>x.prepend(f.cloneNode(!0)))}O(o)&&L(e,s=>s.prepend(n?o:I(o))),o.isJQx&&!o.is.empty&&(o.collection.length>1&&o.collection.reverse(),L(e,s=>L(o,f=>s.prepend(n?f:I(f)))),o.collection.reverse())}return e},prependTo(e,r){return r.isJQx||(r=t.virtual(r)),r.prepend(e),e},prop(e,r,n){if(a(r,String)&&!n)return r.startsWith("data")?e[0]?.dataset[r.slice(r.indexOf("-")+1)]:e[0]?.[r];let o=a(r,Object)?r:{[r]:n};for(let[s,f]of Object.entries(o)){if(s=s.trim(),f&&!ce(s)||!f)return!1;if(s.toLowerCase()==="id")return e[0].id=f;L(e,b=>{if(s.startsWith("data"))return b.dataset[s.slice(s.indexOf("-")+1)]=f;b[s]=f})}return e},remove(e,r){let n=s=>s.remove(),o=()=>e.collection=e.collection.filter(s=>document.documentElement.contains(s));if(r){let s=e.find$(r);return s.is.empty||(L(s,n),o()),e}return L(e,n),o(),e},rmAttr(e,...r){for(let n of r)e.node.removeAttribute(n);return e},removeClass(e,...r){return L(e,n=>{if(n)for(let o of r)n.classList.remove(o)})},renderTo(e,r,n){return r=a(r,HTMLElement)||r.isJQx?r:document.body,n=a(n,String)&&t.at[n]?n:t.at.end,e.first$().toDOM(r,n),e},replace(e,r,n){let o=e.node;return!r||!a(n,HTMLElement)&&!n?.isJQx?(t.logger.error("JQx replace: invalid replacement value"),e):((n.isJQx||a(n,NodeList))&&(n=n[0]),o&&r&&(r=a(r,String)?o.querySelectorAll(r):r.isJQx?r.collection:r,a(r,HTMLElement,NodeList,Array)&&a(n,HTMLElement)&&(a(r,HTMLElement)?[r]:[...r]).forEach(s=>s.replaceWith(n.cloneNode(!0)))),e)},replaceClass(e,r,...n){return L(e,o=>{o.classList.remove(r);for(let s of n)o.classList.add(s)})},replaceMe(e,r){return e.replaceWith(r)},replaceWith(e,r){return r=a(r,Element)?r:r.isJQx?r[0]:void 0,r&&(e[0].replaceWith(r),e=t.virtual(r)),e},setData(e,r){return L(e,n=>de(n,r))},show(e){return L(e,r=>Z(r,{display:"revert-layer !important"}))},single(e,r){let n=e.collection.length>0;switch(r=r??0,!0){case(n&&a(r,String)):return e.find$(r);case(n&&a(r,Number)):return t(e.collection[r]);case n:return e.collection[0];default:return e}},style(e,r,n){return L(e,s=>{n&&a(r,String)&&(r={[r]:n||"none"}),Z(s,r)})},text(e,r,n=!1){switch(!0){case e.isEmpty():return e;case!a(r,String):return e.node.textContent;default:return L(e,o=>o.textContent=n?o.textContent+r:r)}},toDOM(e,r=document.body,n=F.BeforeEnd){return e.isVirtual=!1,z(e.collection,r,n),e},toggleClass(e,r){return L(e,n=>n.classList.toggle(r))},toNodeList(e){return[...e.collection].map(r=>document.importNode(r,!0))},trigger(e,r,n,o){n=a(n,Function)?n:Event,o=a(o,Object)?{...o,bubbles:o.bubbles??!0}:{bubbles:!0};let s=new n(r,o);return e.is.empty||e.each(f=>f.dispatchEvent(s)),e},val(e,r){switch(!0){case(e.is.empty||!a(e.node,HTMLInputElement,HTMLSelectElement,HTMLTextAreaElement)):return e;case!a(r,String):return e.node.value;default:return e.node.value=a(r,String)?r:"",e}}}}var Oe,Se,{isComment:cn,isText:fn,isHtmlString:dn,isArrayOfHtmlElements:mn,isArrayOfHtmlStrings:gn,ElemArray2HtmlString:pn,cssRuleEdit:De,addFn:tr}=rr();function rr(){return{...et(),addFn:nr}}function nr(t,e){return t=t?.trim(),!T(t)||!a(e,Function)?C.error("JQx.fn: method invalid parameter(s)"):Se[t]=(r,...n)=>e(r,...n)}function or(t){return function(e,r,n){if(e=e?.trim(),!T(e)||!a(r,Function))return t.error("JQx.staticFn: invalid parameter(s)");let o=n?{get(){return r()}}:{value(...s){return r(...s)}};try{Object.defineProperty(t,e,o)}catch{return t.warn(`JQx.staticFn: extension [${e}] already exists`)}return C.log(`JQx: added static extension function [${e}]`)}}function q(t){return new Proxy(t,Object.freeze({get:(e,r)=>ir(e,r,t)}))}function ot(t,e){return(...r)=>a(t,Function)&&t(q(e),...r)}function ir(t,e,r){switch(!0){case a(e,Symbol):return B({trial:()=>t[e],whenError:()=>t});case a(+e,Number):return t.collection?.[e]||void 0;case e in Oe:return ot(Oe[e],r)();case e in Se:return ot(Se[e],r);default:return t[e]}}function st(t){let e=cr(t);for(let[r,n]of Object.entries(Object.getOwnPropertyDescriptors(e)))Object.defineProperty(t,r,n);return t}function lr(t){return{allow(e){let r=/-/.test(e),n=r&&e;e=r?Y(e):e.toLowerCase(),M.allowTag(e),Object.defineProperties(t,Ie(e,!0,t,n))},prohibit(e){e=e.toLowerCase(),M.prohibitTag(e),Object.defineProperties(t,Ie(e,!1,t))}}}function it(...t){if(t.length===1){let e=String(t.shift().trim());t=e.startsWith("!")?[e.slice(1,-1)]:e.split(",").map(r=>r.trim())}for(let e of t.map(r=>r.startsWith("!")?r.slice(1,-1):r))De(e,{removeRule:1})}function sr(t){return function(e,r,n){r=r?.isJQx?r?.[0]:r,n=n&&Object.values(F).find(s=>n===s);let o=t(e,document.createElement("br"));if(r&&!a(r,HTMLBRElement))for(let s of o.collection)n?r.insertAdjacentElement(n,s):r.append(s);return o}}function ar(...t){let e={};for(let r of t){let n=Object.getOwnPropertyDescriptors(r);for(let[o,s]of Object.entries(n))!(o in e)&&Object.defineProperty(e,o,{...s,enumerable:!1})}return e}function ur(t,e,r,n){return t=P(n||t.toLowerCase()),{get(){return(...o)=>{let s=e&&r.virtual(k(ee[t](...o)))||void 0,x=!a(s?.node,Comment,Text,void 0)?Fe(s):"";return C.log(e?`JQx: created (virtual) instance from [JQx].${t} ${x}`:`JQx: ${t.toUpperCase()} is prohibited. Use [JQx].allowTag if necessary.`),s}},enumerable:!1,configurable:!0}}function Ie(t,e,r,n){t=t.toLowerCase();let o=ur(t,e,r,n);return n?{[n]:o,[Y(n)]:o}:{[t]:o,[t.toUpperCase()]:o}}function cr(t){return ar(Object.entries(M.tagsRaw).reduce(fr(t),{}),br(t))}function fr(t){return function(e,[r,n]){return Object.defineProperties(e,Ie(r,n,t)),e}}function dr(t){return function(e,r,...n){a(r,Function)&&(n.push(r),r=void 0),t({type:e,selector:r,handlers:n})}}function mr(t){return function(e){let{type:r,types:n,origin:o,selector:s,handler:f,handlers:x,node:b,name:E,capture:d,once:h,about:p}=e;f=x||f,r=n||r,s=o||s;let S=He(r),g=E;f=a(f,Function)?[f]:f;let c={type:S,selector:s||o,capture:d,name:g,once:h,node:b,about:p};switch(!0){case(a(S,Array)&&S.length>0):for(let y of S)c.type=y,lt(f,c,t);break;default:return lt(f,c,t)}}}function lt(t,e,r){for(let n of t)r.listen({...e,handler:n})}function gr(t){return function(e,r){return r=T(r)&&r,e=T(e)&&e,r&&e&&t.listenerStore[e][r]}}function pr(t){return t.activePopup||Object.defineProperty(t,"activePopup",{value:ie(t),enumerable:!1}),t.activePopup}function yr(t){let e=(d,h)=>De(d,h),r=function(d){return U({createWithId:d||`jqx${ye()}`})},n=function(...d){for(let h of d)De(h)},o=lr(t),s=le(t),f=mr(s);return{editCssRule:e,createStyle:r,editCssRules:n,allowProhibit:o,handle:f,capturedHandling:f,log:(...d)=>C.on.log(...d).off,warn:(...d)=>C.on.warn(...d).off,error:(...d)=>C.on.error(...d).off,handlerWrapper:s}}function br(t){let{factoryExtensions:e,instanceExtensions:r}=nt(t);Oe=e,Se=r;let{editCssRule:n,createStyle:o,editCssRules:s,allowProhibit:f,handle:x,capturedHandling:b,log:E,warn:d,error:h,handlerWrapper:p}=yr(t),S=gr(t),g=or(t);return{log:E,warn:d,error:h,editCssRules:s,createStyle:o,editStylesheet:o,editCssRule:n,escHtml:D,logger:C,text(c,y=!1){return y?t.comment(c):document.createTextNode(c)},node(c,y=document){return y.querySelector(c,y)},nodes(c,y=document){return[...y.querySelectorAll(c,y)]},clearAllTimers:$e,get staticFn(){return function(c,y,v){return g(c,y,v)}},get toBool(){return Ne},get getNamedListener(){return S},get virtual(){return sr(t)},get allowTag(){return f.allow},get prohibitTag(){return f.prohibit},get removeCssRule(){return it},get removeCssRules(){return it},get delegate(){return dr(b)},get delegateCaptured(){return b},get handle(){return b},get listen(){return p.listen},get at(){return F},get setStyle(){return n},get fn(){return tr},get lenient(){return M.allowUnknownHtmlTags},get IS(){return a},get Popup(){return pr(t)},get listenerStore(){return p.ListenerStore}}}var at=st(hr());function hr(){return function(e,r,n=F.BeforeEnd){if(e?.isJQx)return e;let o=a(r,HTMLBRElement);r=(!o&&r&&r.isJQx?r[0]:r)||document.body,n=n&&Object.values(F).find(d=>n===d)?n:void 0;let s=X(e),x=!s&&he(e)||s,b={collection:me(e)??[],isVirtual:o,isJQx:!0},E=K(b.collection);if(b.collection.length&&E)return o||b.collection.forEach(d=>{r.contains(d)||z([d],r,n)}),q(b);if(x){if([e].flat().forEach(d=>b.collection.push(N(d))),b.collection.length>0){let d=b.collection.filter(g=>g?.dataset?.jqxcreationerror);b.collection=b.collection.filter(g=>!g?.dataset?.jqxcreationerror);let p=b.collection.map(g=>`${String(g.constructor).split(/function|\(/)[1].trim()}`).length>1;b=q(b);let S=b.collection.length>0?qe(b):"sanitized: no elements remaining";C.log(`JQx: created ${b.isVirtual?"(virtual)":""} instance from ${p?"array of ":""}HTML string${p?"s":""} ${S}`),b.isVirtual||z(b.collection,r,n)}return b}return Me(e,r,b),q(b)}}var Sr=at;return gt(xr);})();
package/Bundle/jqx.min.js CHANGED
@@ -13,4 +13,4 @@ ${r}`),g}}return{sheet:t,removeRules:b,tryParseAtOrNestedRules:x,ruleExists:f,ch
13
13
  `)}function Nt(t){return t.reduce((e,r)=>{let[n,o]=[r.slice(0,r.indexOf(":")).trim(),r.slice(r.indexOf(":")+1).trim().replace(/;$|;.+(?=\/*).+\/$/,"")];return n&&o?{...e,[n]:o}:e},{})}function Pt(t){return Nt(Ht(t))}function Be(t,e){return t?.replace("::",":")===e?.replace("::",":")}var we=!1,Mt={on:()=>we=!0,off:()=>we=!1},M={tagsRaw:V,allowUnknownHtmlTags:Mt,isAllowed(t){if(we)return!0;let e=a(t,String)?t.toLowerCase():t?.nodeName.toLowerCase()||"none";return e==="#text"||!!V[e]},allowTag:t=>V[t.toLowerCase()]=!0,prohibitTag:t=>V[t.toLowerCase()]=!1};var Ot=!0,re={data:/data-[\-\w.\p{L}]/ui,validURL:/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i,whiteSpace:/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g,notAllowedValues:/^javascript|injected|noreferrer|alert|DataURL/gi};function Dt(t){if(Ot&&Object.keys(t.removed).length){let e=Object.entries(t.removed).reduce((r,[n,o])=>[...r,`${D(n)} => ${o}`],[]).join("\\000A");C.error(`JQx: HTML creation error(s): ${e}`)}}function It(t){let e=t.nodeName.toLowerCase(),r=["annotation-xml","color-profile","font-face","font-face-src","font-face-uri","font-face-format","font-face-name","missing-glyph"];return/-/.test(e)&&!r.find(n=>n===e)||M.isAllowed(e)}function k(t){let e={rawHTML:t?.parentElement?.getHTML()??"no html",removed:{}};return a(t,HTMLElement)&&[...t.childNodes].forEach(r=>{if(r?.children?.length&&k(r),r?.attributes){let o=a(r,SVGElement)?W.svg:W.html;[...(r??{attributes:[]}).attributes].forEach(s=>{let f=s.name.trim().toLowerCase(),x=s.value.trim().toLowerCase().replace(re.whiteSpace,""),b=f==="href"?!re.validURL.test(x):re.notAllowedValues.test(x),E=f.startsWith("data")?!re.data.test(f):!!o[f];if(b||E){let d=ne(s.value||"none",60);d+=d.length===60?"...":"",e.removed[`${s.name}`]=`attribute/property/value not allowed, removed. Value: ${d}`,r.removeAttribute(s.name)}})}if(!(It(r)||r.constructor===CharacterData||r.constructor===Comment)){let o=(r?.outerHTML||r?.textContent).trim(),s=ne(o,60)??"EMPTY";s+=s.length===60?"...":"",e.removed[`<${r.nodeName?.toLowerCase()}>`]=`not allowed, not rendered. Value: ${s}`,r.remove()}}),Dt(e),t}function Rt(t){let e=document.createElement("div");return e.insertAdjacentHTML(F.end,t),e.childNodes.length?k(e):void 0}function jt(t,e,r){switch(!0){case a(t,Comment):return e.insertAdjacentHTML(r,`<!--${t.data}-->`);case a(t,Text):return e.insertAdjacentText(r,t.data||t.textContent);default:return}}function z(t=[],e=document.body,r=F.BeforeEnd){return r=r||F.BeforeEnd,e=e?.isJQx?e.node:e||document.body,t.reduce((n,o)=>{let s=O(o)&&Jt(o,e,r);return s?[...n,s]:n},[])}function Jt(t,e=document.body,r=F.BeforeEnd){return r=r||F.BeforeEnd,e=e?.isJQx?e?.[0]:e,a(t,Comment,Text)?jt(t,e,r):a(t,HTMLElement)?e.insertAdjacentElement(r,t):void 0}function N(t){if(a(t,Text,Comment))return t;let e=t?.trim(),r=e?.split(/<text>|<\/text>/i)??[];if(r?.length&&(r=r.length>1?r.filter(o=>o.length).shift():void 0),e.startsWith("<!--")&&e.endsWith("-->"))return document.createComment(t.replace(/<!--|-->$/g,""));if(r||a(e,String)&&!/^<(.+)[^>]+>/m.test(e))return document.createTextNode(r??e);let n=Rt(t);return n.childNodes.length<1?N(`<span data-jqxcreationerror="1">${oe(t,60)}</span>`):n.children[0]}function ie(t){if(t.node("#jqxPopup"))return;t.logger.log("JQx: [JQx].Popup first call. Dialog element created."),t.dialog({id:"jqxPopup"},t.div({id:"jqxPopupContent"})).render,t.editCssRules(...Ie);let e=[],[r,n]=[t("#jqxPopupContent"),t.node("#jqxPopup")],o={};return t.handle({type:"click, cancel",handlers:p,name:"genericPopupCloseHandler",capture:!0,about:"A generic handler for JQx popups"}),Object.freeze({show:s,remove:f,removeModal:h});function s(c){if(n.open)switch(!0){case x(c):return;default:return f(),setTimeout(()=>s(c),200)}o={...c};let{content:y}=o;return t.IS(y,String,HTMLElement)||y?.isJQx?b():!0}function f(){return o.modal?g(o.warnMessage):E()}function x(c){for(let[y,v]of Object.entries(o))if(v!==c[y])return!1;return!0}function b(){r.clear();let{content:c,modal:y,closeAfter:v}=o;y=t.IS(y,Boolean)?y:!1;let A=y?"":t.div({id:"closeHandleIcon"});r.append(A,t.IS(c,String)?t.div(c):c),n.showModal(),!y&&t.IS(v,Number)&&S(f,v)}function E(){if(n.close(o.returnValue),d(),t.IS(o.callback,Function))return e.push(setTimeout(()=>o.callback(o.returnValue),200));o={}}function d(){e.forEach(c=>clearTimeout(c)),e=[]}function h({callback:c,value:y}={}){o.returnValue=y,o.modal=!1,o.callback=c||o.callback,f()}function p({evt:c}){if(!(Object.keys(o).length<1||!n.open)&&(c.type==="cancel"&&o.modal&&c.preventDefault(),c.target.closest("#closeHandleIcon")||!c.target.closest("#jqxPopupContent")))return o.activeTimer&&clearTimeout(o.activeTimer),f()}function S(c,y){t.IS(c,Function)&&t.IS(y,Number)&&y>0&&(d(),e.push(setTimeout(c,y*1e3)))}function g(c){if(!t.IS(c,String,HTMLElement,Proxy))return;let y=r.find$(".warn");switch(!0){case y.is.empty:y=t.div({class:"warn"},c);default:r.append(y.addClass("active")),S(()=>r.find$(".warn").removeClass("active"),2)}}}function le(t){let e={},r="anonymous_";function n(d){if(d){let{handler:h,capture:p,type:S}=d;document.addEventListener(S,h,{capture:p})}}function o(d){if(d){let{type:h,handler:p,capture:S}=d;document.removeEventListener(h,p,{capture:S})}}function s(d,h,p,S){return function(g){if(!T(h))return d({evt:g});let c=g.target.closest(h);if(c){let y=t(c);d({self:y,me:y,evt:g}),p&&b(g.type,S)}return!0}}function f(d){return e[d]=e[d]||{},e[d]}function x(d,h){return Object.entries(f(d)).find(([p])=>p===h)}function b(d,h){let p=x(d,h);p&&(o(p[1]),delete e[d][h],delete se[h],C.warn(`Removed listener [${h}] for event type [${d}].`))}function E(d){let{type:h,handler:p,name:S,capture:g,once:c,selector:y,node:v,about:A}=d;e[h]=e[h]||{};let i=Ee(S||p.name),l=p;if(v instanceof HTMLElement){let u=v.dataset.hid||i;v.dataset.hid=u,y=`[data-hid=${u}]`}switch(!0){case!e[h][i]:return C.log(`JQx: created listener for event type ${h}, with handler name ${i}`),e[h][i]={name:i,handler:s(p,y,c,i),capture:We(h,g),once:!!c,type:h,initialHandler:l,selector:!!y&&y||!1,about:!!A&&A||!1,unListen(){b(h,i)}},e[h][i];default:return console.warn(`The listener [${i}] for [${h}] exists, it is not re-assigned.`)}}return{remove(...d){return b(...d)},listen:function(d){let{type:h,handler:p}=d;if(!T(h)||!a(p,Function))return;let S=E(d);if(S)return n(S),{type:h,name:S.name,unListen(){b(h,S.name)}}},get ListenerStore(){return Object.freeze({...e})}}}var C=zt(),Qt=["load","unload","scroll","focus","blur","DOMNodeRemovedFromDocument","DOMNodeInsertedIntoDocument","loadstart","progress","error","abort","load","loadend","pointerenter","pointerleave","readystatechange"],F=Object.freeze(new Proxy({start:"afterbegin",afterbegin:"afterbegin",end:"beforeend",beforeend:"beforeend",before:"beforebegin",beforebegin:"beforebegin",after:"afterend",afterend:"afterend"},{get(t,e){return t[String(e).toLowerCase()]??t[e]}})),kt=[...Array(26)].map((t,e)=>String.fromCharCode(e+65)).concat([...Array(26)].map((t,e)=>String.fromCharCode(e+97))).concat([...Array(10)].map((t,e)=>`${e}`)),Ce=Object.freeze({get(t,e){return t[Y(e)]||t[e]},enumerable:!1,configurable:!1}),se={};function Te(){let t=setTimeout(()=>{});for(;t>=0;)clearTimeout(t--)}function Ee(t){return T(t)&&!/^handler|handlers$/gi.test(t.trim())?t.trim():Ve()}function $e(t){let e=!!t.node&&!a(t,Text,Comment);switch(!0){case e:let r=t.node.dataset?Object.keys(t.node.dataset).map(s=>`[data-${s}]`):[],o=[t.attr("id")&&`#${t?.attr("id")}`||void 0,t.attr("class")&&t?.attr("class").split(" ").map(s=>`.${s}`).join(", ")||void 0,r.length>0&&r.join(", ")||void 0].filter(s=>!!s).join(", ")||[];return o.length?`(${o})`:"";default:return""}}function Ve(t){let e=`anonymous_${Math.random().toString(36).slice(2)}`;return se[e]?Ve():(se[e]=e,e)}function We(t,e){return!!Qt.find(r=>r===t)||!!e}function ce(t){return t.startsWith("data")||W.html.find(e=>t.toLowerCase()===e)}function fe(t){return t&&(t.textContent="")}function G(t,e=0,r=!0){return t=t?.parentElement,e+=t?t[r?"scrollTop":"scrollLeft"]:0,t?G(t,e,r):e}function T(t,e=1){return e=a(e,Number)&&e||1,a(t,String)&&t.length>=e}function ne(t,e=120){return oe(t,e).replace(/&lt;/g,"<")}function oe(t,e=120){return`${t}`.trim().slice(0,e).replace(/>\s+</g,"><").replace(/</g,"&lt;").replace(/\s{2,}/g," ").replace(/\n/g,"\\n")+(t.length>e?" &hellip;":"").trim()}function D(t){switch(!0){case a(t,String):let e=document.createElement("div");return e.append(t),e.innerHTML;default:return t}}function Le(t){return a(t,String)&&Object.assign(document.createElement("textarea"),{innerHTML:t}).textContent||t}function zt(){let[t,e]=[!1,!0],r=[],n={get on(){return t=!0,n},get off(){return t=!1,n},get disable(){return e=!0,n},get enable(){return e=!1,n},get backLog(){return r}};function o(){e=!0}function s(){e=!1}function f(...E){return r.unshift(...E.map(d=>`${ue()} \u2A3B ${Le(d)}`)),console.error(r.slice(0,E.length).join(`
14
14
  `)),n}function x(...E){return r.unshift(...E.map(d=>`${ue()} \u26A0 ${Le(d)}`)),console.warn(r.slice(0,E.length).join(`
15
15
  `)),n}function b(...E){let d=E.map(h=>`${ue()} \u2714 ${Le(h)}`);switch(!e&&r.unshift(...d),t){case!0:console.log(d.join(`
16
- `));default:return n}}return Object.defineProperties(n,{log:{value:b,enumerable:!1},error:{value:f,enumerable:!1},warn:{value:x,enumerable:!1}}),Object.freeze(n)}function ue(){return(t=>`[${ae(t.getHours())}:${ae(t.getMinutes())}:${ae(t.getSeconds())}.${ae(t.getMilliseconds(),3)}]`)(new Date)}function Fe(t,e){if(t)for(let[r,n]of Object.entries(e)){if(r=P(r),r.startsWith("data"))return de(t,n);a(n,String)&&ce(r)&&t.setAttribute(r,n.split(/[, ]/)?.join(" "))}}function de(t,e){if(t&&a(e,Object))for(let[r,n]of Object.entries(e))t.setAttribute(`data-${P(r)}`,n)}function me(t){return t?a(t,Proxy)?[t.EL]:a(t,NodeList)?[...t]:O(t)?[t]:K(t)?t:t.isJQx?t.collection:void 0:[]}function ge(t,e){return t.andThen(e)}function pe(t,e){return t.andThen(e,!0)}function O(t){return a(t,Text,HTMLElement,Comment)}function Z(t,e){if(a(e,Object))for(let[r,n]of Object.entries(e)){let o;/!important/i.test(n)&&(n=n.slice(0,n.indexOf("!")).trim(),o="important"),t.style.setProperty(P(r),n,o)}}function I(t){let e=t.cloneNode(!0);return e.removeAttribute&&e.removeAttribute("id"),t.isConnected?t.remove():t=null,e}function _e(t){if(!a(t,HTMLElement))return;let e=t.style,r=getComputedStyle(t),n=!![e.visibility,r.visibility].includes("hidden"),o=!![e.display,r.display].includes("none"),s=!!t.hidden,f=parseInt(r.height)<1||parseInt(r.width)<1,x=t.offsetTop<0||t.offsetLeft+t.offsetWidth<0||t.offsetLeft>document.body.offsetWidth,b=+r.opacity==0||+(e.opacity||1)==0;return!(s||x||b||o||n||f)}function Ue(t){return t?.isConnected?!![...document.querySelectorAll(":is(:read-write)")].find(e=>e===t):!1}function Ge(t){return t?.filter(e=>e).reduce((e,r)=>e.concat(Ne(r)?`<!--${r.data}-->`:be(r)?r.textContent:r.outerHTML),"")}function ae(t,e=2){return`${t}`.padStart(e,"0")}function Ze(t,e=0){return[t,e]=[Math.floor(t),Math.ceil(e)],Math.floor([...crypto.getRandomValues(new Uint32Array(1))].shift()/2**32*(t-e+1)+e)}function ye(){return`_${Bt(kt).slice(0,8).join("")}`}function Ae(t){return t=a(t,String)&&/,/.test(t)?t.split(",").map(e=>e.trim().toLowerCase()).filter(e=>e.length>0):t,a(t,Array)?t:a(t,String)&&t?.trim().toLowerCase()||""}function Ye(t){return t?.isConnected?!![...document.querySelectorAll(":is(:modal)")].find(e=>e===t):!1}function He(t,e){switch(t=String(t).trim(),!0){case/^(0|false|f)$/i.test(t):return!1;case/^(1|true|t)$/i.test(t):return!0;default:return e}}function Bt(t){let e=t.length;for(;e--;){let r=Ze(e);[t[e],t[r]]=[t[r],t[e]]}return t}function Y(t){return a(t,String)?t.toLowerCase().split("-").map((e,r)=>r&&`${Wt(e)}`||e).join(""):t}function P(t){return t.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`).replace(/^-|-$/,"")}function Wt([t,...e]){return`${t.toUpperCase()}${e.join("")}`}function be(t){return a(t,Comment,Text)}function Ne(t){a(t,Comment)}function Xe(t){return a(t,Text)}function X(t){return a(t,String)&&/^<|>$/.test(`${t}`.trim())}function K(t){return a(t,Array)&&!t?.find(e=>!O(e))}function he(t){return a(t,Array)&&!t?.find(e=>!X(e))}function L(t,e){let r=t.collection.filter(n=>!be(n));for(let n=0;n<r.length;n+=1)e(r[n],n);return t}function Ke(t){return t.node?a(t.node,Comment)?`<!--${t.node.textContent}-->`:t.HTML.get(1).split(">")[0]+">...":""}function Pe(t,e,r){let n=e!==document.body&&a(t,String)&&t.toLowerCase()!=="body"?e:document;try{r.collection=[...n.querySelectorAll(t)]}catch{C.warn(`JQx: Invalid CSS querySelector. [${a(t,String)?t:"Not a string!"}]`)}}function qe(){return{isCommentOrTextNode:be,isNode:O,isComment:Ne,isText:Xe,isHtmlString:X,isArrayOfHtmlElements:K,isArrayOfHtmlStrings:he,ElemArray2HtmlString:Ge,input2Collection:me,setCollectionFromCssSelector:Pe,cssRuleEdit:U({createWithId:"JQxStylesheet"})}}function et(){let e=Object.freeze({notInDOM:"n/a",writable:"n/a",modal:"n/a",empty:!0,open:"n/a",visible:"n/a"});return r=>{let n=r.node;return a(n,Node)?Object.freeze({get writable(){return Ue(n)},get modal(){return Ye(n)},get inDOM(){return n.isConnected},get open(){return n.open??!1},get visible(){return _e(n)},get disabled(){return n.hasAttribute("readonly")||n.hasAttribute("disabled")},get empty(){return r.collection.length<1},get virtual(){return r.isVirtual}}):e}}function tt(t,e,r,n){r&&a(e,String)&&(e={[e]:r==="-"?"":r});let o;e.className&&(o=e.className,delete e.className),o=[...t.classList].find(f=>f.startsWith("JQxClass-")||o&&f===o)||o||`JQxClass-${ye().slice(1)}`,n.editCssRule(`.${o}`,e),t.classList.add(o)}var Vt=et();function rt(t){return{factoryExtensions:_t(t),instanceExtensions:Ut(t)}}function _t(t){return{data(e){return{get all(){return new Proxy(e[0]?.dataset??{},Ce)},set(r={}){if(!e.is.empty&&a(r,Object))for(let[n,o]of Object.entries(r))e.setData({[n]:o});return e},get(r,n){return e.data.all[r]??n},add(r={}){if(!e.is.empty&&a(r,Object))for(let[n,o]of Object.entries(r))e.setData({[n]:o});return e},remove(r){return e[0]?.removeAttribute(`data-${P(r)}`),e}}},dimensions(e){if(e.is.empty)return C.error("[JQx instance].dimensions called on empty instance"),{error:"[JQx instance].dimensions: NO ELEMENTS"};let{node:r}=e,n=r.getBoundingClientRect().toJSON();return n.scrollTopDistance=G(r,0),n.scrollLeftDistance=G(r,0,!1),n},node(e){return e[0]},HTML(e){return{get(r,n){if(e.is.empty)return"NO ELEMENTS IN COLLECTION";let o=r?e.outerHtml:e.html();return n?D(o):o},set(r,n=!1,o=!1){r=r.isJQx?r.HTML.get(1):r;let s=a(r,String);return r=s&&o?D(r):r,s&&(r||"").trim().length&&e.html(r,n),e},replace(r,n=!1){return e.HTML.set(r,!1,n)},append(r,n=!1){return r=a(r,HTMLElement)?t(r).HTML.get(1):r.isJQx?r.HTML.get(1):r,e.HTML.set(r,!0,n)},insert(r,n=!1){return r=a(r,HTMLElement)?t(r).HTML.get(1):r.isJQx?r.HTML.get(1):r,e.HTML.set(r+e.HTML.get(),!1,n)}}},is(e){return Vt(e)},length(e){return e.collection.length},outerHtml(e){return(e.first()||{outerHTML:void 0}).outerHTML},parent(e){let r=t(e[0]?.parentNode);return r.is.empty?e:r},render(e){switch(!0){case!e.is.empty:return e.toDOM();default:return t.logger.warn("[JQx.render]: empty collection"),e}},Style(e){return{get computed(){return e.is.empty?{}:getComputedStyle(e[0])},inline(r){return e.style(r)},inSheet(r){return e.css(r)},valueOf(r){return e.is.empty?void 0:getComputedStyle(e[0])[P(r)]},nwRule(r){return e.Style.byRule({rules:r})},byRule({classes2Apply:r=[],rules:n=[]}={}){let s=a(n,String)&&!r.length?n.split("{")[0].trim():"";if(n=n&&a(n,String)?[n]:n,r=r&&a(r,String)?[r]:r,(n?.length||r?.length)&&(n?.length&&t.editCssRules(...n),r))for(let f of r)e.addClass(f);return s?.startsWith(".")&&e.addClass(s.slice(1)),s?.startsWith("#")&&!e.attr("id")&&e.prop({id:s.slice(1)}),e}}}}}function Ut(t){return{addClass(e,...r){return L(e,n=>n&&r.forEach(o=>n.classList.add(o)))},after:ge,afterMe:ge,andThen(e,r,n=!1){if(!r||!a(r,String,Node,Proxy))return C.log("[JQx instance].[before(Me) | after(Me) | andThen]: invalid/-sufficient input."),e;r=r?.isJQx?r:a(r,Node)?t.virtual(r):t.virtual(N(r));let[o,s,f]=n?[0,"before",r.collection.concat(e.collection)]:[e.collection.length-1,"after",e.collection.concat(r.collection)];return e[o][s](...r.collection),e.collection=f,e},append(e,...r){if(e.is.empty||r.length<1)return e;let n=e.length===1;for(let o of r){if(!o.isJQx&&T(o)){let s=o.trim(),x=!/^<(.+)[^>]+>$/m.test(s)?t.text(o):N(o);L(e,b=>b.append(n?x:I(x)))}O(o)&&L(e,s=>s.append(n?o:I(o))),o.isJQx&&!o.is.empty&&L(e,s=>o.collection.forEach(f=>s.append(n?f:I(f))))}return e},appendTo(e,r){switch(!0){case(!r.isJQx&&!a(r,HTMLElement)):return $.warn("[JQx instance].appendTo: invalid input"),e;default:return(r.isJQx?r:t(r)).append(e),e}},attr(e,r,n){if(!e.node||a(e.node,Text,Comment))return e;if(!n&&T(r))return r=P(r),r==="class"?[...e.node.classList].join(" "):e.node.getAttribute(r);if(T(r)&&n)switch(r=P(r),!0){case r.startsWith("data-"):r={data:{[r.replace("data-","")]:n}};break;default:r={[r]:n}}return a(r,Object)&&!e.is.empty&&Fe(e.node,r),e},before:pe,beforeMe:pe,clear(e){return L(e,fe)},closest(e,r){let n=T(r)?e.node?.closest(r):void 0;return n?t(n):e},computedStyle(e,r){let{node:n}=e;return n&&getComputedStyle(n)[r]},css(e,r,n){return L(e,o=>tt(o,r,n,t))},duplicate(e,r=!1,n=document.body){switch(!0){case e.is.empty:return C.error("Duplicating an empty JQx instance is not possible"),e;default:let o=e.collection[0].cloneNode(!0);return o.childNodes.forEach(s=>{s.removeAttribute&&s?.removeAttribute("id")}),r?t(o).toDOM(n):t.virtual(o)}},each(e,r){return L(e,r)},empty(e){return L(e,fe)},find(e,r){return e.collection.length>0?[...e.first()?.querySelectorAll(r)]:[]},find$(e,r){return e.collection.length>0?t(r,e):e},first(e,r=!1){return e.collection.length>0?r?e.single():e.collection[0]:void 0},first$(e,r){return e.single(r)},getData(e,r,n){return e.node?.dataset?.[r]||n},hasClass(e,...r){return e.is.empty||!e.node.classList.length?!1:r.find(n=>e.node.classList.contains(n))&&!0||!1},hide(e){return L(e,r=>Z(r,{display:"none !important"}))},html(e,r,n){switch(!0){case(e.is.empty&&!T(r)):return"";case!T(r):return e.node?.getHTML()??"";default:let o=N(`<div>${r.isJQx?r.HTML.get(!0):r}</div>`);return L(e,f=>(f.textContent=n?f.textContent:"",f.insertAdjacentHTML(t.at.end,o.getHTML())))}},htmlFor(e,r,n="",o=!1){if(e.is.empty||!T(r)||!T(n))return e;let s=e.find$(r);if(s.length<1)return e;let f=N(`<span>${n}</span>`);return s.each(x=>{o||(x.textContent=""),x.insertAdjacentHTML(t.at.end,f?.getHTML())}),e},isEmpty(e){return!e.node},nth$(e,r){return e.single(r)},on(e,r,...n){switch(!0){case(e.is.empty||!a(r,String,Array)||!T(r)||n.length<1):return e;default:return t.handle({type:r,node:e.node,handler:n}),e}},once(e,r,...n){switch(!0){case(e.is.empty||!a(r,String,Array)||!T(r)||n.length<1):return e;default:return t.handle({type:r,once:!0,node:e.node,handler:n}),e}},prepend(e,...r){if(e.is.empty||!r)return;let n=e.length===1;for(let o of r){if(T(o)){o=o.trim();let f=!/^<(.+)[^>]+>$/m.test(o)?t.text(o):N(o);f=n?f:I(f),L(e,x=>x.prepend(f.cloneNode(!0)))}O(o)&&L(e,s=>s.prepend(n?o:I(o))),o.isJQx&&!o.is.empty&&(o.collection.length>1&&o.collection.reverse(),L(e,s=>L(o,f=>s.prepend(n?f:I(f)))),o.collection.reverse())}return e},prependTo(e,r){return r.isJQx||(r=t.virtual(r)),r.prepend(e),e},prop(e,r,n){if(a(r,String)&&!n)return r.startsWith("data")?e[0]?.dataset[r.slice(r.indexOf("-")+1)]:e[0]?.[r];let o=a(r,Object)?r:{[r]:n};for(let[s,f]of Object.entries(o)){if(s=s.trim(),f&&!ce(s)||!f)return!1;if(s.toLowerCase()==="id")return e[0].id=f;L(e,b=>{if(s.startsWith("data"))return b.dataset[s.slice(s.indexOf("-")+1)]=f;b[s]=f})}return e},remove(e,r){let n=s=>s.remove(),o=()=>e.collection=e.collection.filter(s=>document.documentElement.contains(s));if(r){let s=e.find$(r);return s.is.empty||(L(s,n),o()),e}return L(e,n),o(),e},rmAttr(e,...r){for(let n of r)e.node.removeAttribute(n);return e},removeClass(e,...r){return L(e,n=>{if(n)for(let o of r)n.classList.remove(o)})},renderTo(e,r,n){return r=a(r,HTMLElement)||r.isJQx?r:document.body,n=a(n,String)&&t.at[n]?n:t.at.end,e.first$().toDOM(r,n),e},replace(e,r,n){let o=e.node;return!r||!a(n,HTMLElement)&&!n?.isJQx?(t.logger.error("JQx replace: invalid replacement value"),e):((n.isJQx||a(n,NodeList))&&(n=n[0]),o&&r&&(r=a(r,String)?o.querySelectorAll(r):r.isJQx?r.collection:r,a(r,HTMLElement,NodeList,Array)&&a(n,HTMLElement)&&(a(r,HTMLElement)?[r]:[...r]).forEach(s=>s.replaceWith(n.cloneNode(!0)))),e)},replaceClass(e,r,...n){return L(e,o=>{o.classList.remove(r);for(let s of n)o.classList.add(s)})},replaceMe(e,r){return e.replaceWith(r)},replaceWith(e,r){return r=a(r,Element)?r:r.isJQx?r[0]:void 0,r&&(e[0].replaceWith(r),e=t.virtual(r)),e},setData(e,r){return L(e,n=>de(n,r))},show(e){return L(e,r=>Z(r,{display:"revert-layer !important"}))},single(e,r){let n=e.collection.length>0;switch(r=r??0,!0){case(n&&a(r,String)):return e.find$(r);case(n&&a(r,Number)):return t(e.collection[r]);case n:return e.collection[0];default:return e}},style(e,r,n){return L(e,s=>{n&&a(r,String)&&(r={[r]:n||"none"}),Z(s,r)})},text(e,r,n=!1){switch(!0){case e.isEmpty():return e;case!a(r,String):return e.node.textContent;default:return L(e,o=>o.textContent=n?o.textContent+r:r)}},toDOM(e,r=document.body,n=F.BeforeEnd){return e.isVirtual=!1,z(e.collection,r,n),e},toggleClass(e,r){return L(e,n=>n.classList.toggle(r))},toNodeList(e){return[...e.collection].map(r=>document.importNode(r,!0))},trigger(e,r,n,o){if(n=/Event]$/.test(a(n))?n:Event,o=a(o,Object)?{...o,bubbles:o.bubbles??!0}:{bubbles:!0},!e.is.empty){let s=new n(r,o);e.each(f=>f.dispatchEvent(s))}return e},val(e,r){switch(!0){case(e.is.empty||!a(e.node,HTMLInputElement,HTMLSelectElement,HTMLTextAreaElement)):return e;case!a(r,String):return e.node.value;default:return e.node.value=a(r,String)?r:"",e}}}}var Me,Se,{isComment:qr,isText:en,isHtmlString:tn,isArrayOfHtmlElements:rn,isArrayOfHtmlStrings:nn,ElemArray2HtmlString:on,cssRuleEdit:Oe,addFn:Gt}=Zt();function Zt(){return{...qe(),addFn:Yt}}function Yt(t,e){return t=t?.trim(),!T(t)||!a(e,Function)?C.error("JQx.fn: method invalid parameter(s)"):Se[t]=(r,...n)=>e(r,...n)}function Xt(t){return function(e,r,n){if(e=e?.trim(),!T(e)||!a(r,Function))return t.error("JQx.staticFn: invalid parameter(s)");let o=n?{get(){return r()}}:{value(...s){return r(...s)}};try{Object.defineProperty(t,e,o)}catch{return t.warn(`JQx.staticFn: extension [${e}] already exists`)}return C.log(`JQx: added static extension function [${e}]`)}}function q(t){return new Proxy(t,Object.freeze({get:(e,r)=>Kt(e,r,t)}))}function nt(t,e){return(...r)=>a(t,Function)&&t(q(e),...r)}function Kt(t,e,r){switch(!0){case a(e,Symbol):return B({trial:()=>t[e],whenError:()=>t});case a(+e,Number):return t.collection?.[e]||void 0;case e in Me:return nt(Me[e],r)();case e in Se:return nt(Se[e],r);default:return t[e]}}function lt(t){let e=nr(t);for(let[r,n]of Object.entries(Object.getOwnPropertyDescriptors(e)))Object.defineProperty(t,r,n);return t}function qt(t){return{allow(e){let r=/-/.test(e),n=r&&e;e=r?Y(e):e.toLowerCase(),M.allowTag(e),Object.defineProperties(t,De(e,!0,t,n))},prohibit(e){e=e.toLowerCase(),M.prohibitTag(e),Object.defineProperties(t,De(e,!1,t))}}}function ot(...t){if(t.length===1){let e=String(t.shift().trim());t=e.startsWith("!")?[e.slice(1,-1)]:e.split(",").map(r=>r.trim())}for(let e of t.map(r=>r.startsWith("!")?r.slice(1,-1):r))Oe(e,{removeRule:1})}function er(t){return function(e,r,n){r=r?.isJQx?r?.[0]:r,n=n&&Object.values(F).find(s=>n===s);let o=t(e,document.createElement("br"));if(r&&!a(r,HTMLBRElement))for(let s of o.collection)n?r.insertAdjacentElement(n,s):r.append(s);return o}}function tr(...t){let e={};for(let r of t){let n=Object.getOwnPropertyDescriptors(r);for(let[o,s]of Object.entries(n))!(o in e)&&Object.defineProperty(e,o,{...s,enumerable:!1})}return e}function rr(t,e,r,n){return t=P(n||t.toLowerCase()),{get(){return(...o)=>{let s=e&&r.virtual(k(ee[t](...o)))||void 0,x=!a(s?.node,Comment,Text,void 0)?$e(s):"";return C.log(e?`JQx: created (virtual) instance from [JQx].${t} ${x}`:`JQx: ${t.toUpperCase()} is prohibited. Use [JQx].allowTag if necessary.`),s}},enumerable:!1,configurable:!0}}function De(t,e,r,n){t=t.toLowerCase();let o=rr(t,e,r,n);return n?{[n]:o,[Y(n)]:o}:{[t]:o,[t.toUpperCase()]:o}}function nr(t){return tr(Object.entries(M.tagsRaw).reduce(or(t),{}),cr(t))}function or(t){return function(e,[r,n]){return Object.defineProperties(e,De(r,n,t)),e}}function ir(t){return function(e,r,...n){a(r,Function)&&(n.push(r),r=void 0),t({type:e,selector:r,handlers:n})}}function lr(t){return function(e){let{type:r,types:n,origin:o,selector:s,handler:f,handlers:x,node:b,name:E,capture:d,once:h,about:p}=e;f=x||f,r=n||r,s=o||s;let S=Ae(r),g=E;f=a(f,Function)?[f]:f;let c={type:S,selector:s||o,capture:d,name:g,once:h,node:b,about:p};switch(!0){case(a(S,Array)&&S.length>0):for(let y of S)c.type=y,it(f,c,t);break;default:return it(f,c,t)}}}function it(t,e,r){for(let n of t)r.listen({...e,handler:n})}function sr(t){return function(e,r){return r=T(r)&&r,e=T(e)&&e,r&&e&&t.listenerStore[e][r]}}function ar(t){return t.activePopup||Object.defineProperty(t,"activePopup",{value:ie(t),enumerable:!1}),t.activePopup}function ur(t){let e=(d,h)=>Oe(d,h),r=function(d){return U({createWithId:d||`jqx${ye()}`})},n=function(...d){for(let h of d)Oe(h)},o=qt(t),s=le(t),f=lr(s);return{editCssRule:e,createStyle:r,editCssRules:n,allowProhibit:o,handle:f,capturedHandling:f,log:(...d)=>C.on.log(...d).off,warn:(...d)=>C.on.warn(...d).off,error:(...d)=>C.on.error(...d).off,handlerWrapper:s}}function cr(t){let{factoryExtensions:e,instanceExtensions:r}=rt(t);Me=e,Se=r;let{editCssRule:n,createStyle:o,editCssRules:s,allowProhibit:f,handle:x,capturedHandling:b,log:E,warn:d,error:h,handlerWrapper:p}=ur(t),S=sr(t),g=Xt(t);return{log:E,warn:d,error:h,editCssRules:s,createStyle:o,editStylesheet:o,editCssRule:n,escHtml:D,logger:C,text(c,y=!1){return y?t.comment(c):document.createTextNode(c)},node(c,y=document){return y.querySelector(c,y)},nodes(c,y=document){return[...y.querySelectorAll(c,y)]},clearAllTimers:Te,get staticFn(){return function(c,y,v){return g(c,y,v)}},get toBool(){return He},get getNamedListener(){return S},get virtual(){return er(t)},get allowTag(){return f.allow},get prohibitTag(){return f.prohibit},get removeCssRule(){return ot},get removeCssRules(){return ot},get delegate(){return ir(b)},get delegateCaptured(){return b},get handle(){return b},get listen(){return p.listen},get at(){return F},get setStyle(){return n},get fn(){return Gt},get lenient(){return M.allowUnknownHtmlTags},get IS(){return a},get Popup(){return ar(t)},get listenerStore(){return p.ListenerStore}}}var st=lt(fr());function fr(){return function(e,r,n=F.BeforeEnd){if(e?.isJQx)return e;let o=a(r,HTMLBRElement);r=(!o&&r&&r.isJQx?r[0]:r)||document.body,n=n&&Object.values(F).find(d=>n===d)?n:void 0;let s=X(e),x=!s&&he(e)||s,b={collection:me(e)??[],isVirtual:o,isJQx:!0},E=K(b.collection);if(b.collection.length&&E)return o||b.collection.forEach(d=>{r.contains(d)||z([d],r,n)}),q(b);if(x){if([e].flat().forEach(d=>b.collection.push(N(d))),b.collection.length>0){let d=b.collection.filter(g=>g?.dataset?.jqxcreationerror);b.collection=b.collection.filter(g=>!g?.dataset?.jqxcreationerror);let p=b.collection.map(g=>`${String(g.constructor).split(/function|\(/)[1].trim()}`).length>1;b=q(b);let S=b.collection.length>0?Ke(b):"sanitized: no elements remaining";C.log(`JQx: created ${b.isVirtual?"(virtual)":""} instance from ${p?"array of ":""}HTML string${p?"s":""} ${S}`),b.isVirtual||z(b.collection,r,n)}return b}return Pe(e,r,b),q(b)}}var fn=st;export{fn as default};
16
+ `));default:return n}}return Object.defineProperties(n,{log:{value:b,enumerable:!1},error:{value:f,enumerable:!1},warn:{value:x,enumerable:!1}}),Object.freeze(n)}function ue(){return(t=>`[${ae(t.getHours())}:${ae(t.getMinutes())}:${ae(t.getSeconds())}.${ae(t.getMilliseconds(),3)}]`)(new Date)}function Fe(t,e){if(t)for(let[r,n]of Object.entries(e)){if(r=P(r),r.startsWith("data"))return de(t,n);a(n,String)&&ce(r)&&t.setAttribute(r,n.split(/[, ]/)?.join(" "))}}function de(t,e){if(t&&a(e,Object))for(let[r,n]of Object.entries(e))t.setAttribute(`data-${P(r)}`,n)}function me(t){return t?a(t,Proxy)?[t.EL]:a(t,NodeList)?[...t]:O(t)?[t]:K(t)?t:t.isJQx?t.collection:void 0:[]}function ge(t,e){return t.andThen(e)}function pe(t,e){return t.andThen(e,!0)}function O(t){return a(t,Text,HTMLElement,Comment)}function Z(t,e){if(a(e,Object))for(let[r,n]of Object.entries(e)){let o;/!important/i.test(n)&&(n=n.slice(0,n.indexOf("!")).trim(),o="important"),t.style.setProperty(P(r),n,o)}}function I(t){let e=t.cloneNode(!0);return e.removeAttribute&&e.removeAttribute("id"),t.isConnected?t.remove():t=null,e}function _e(t){if(!a(t,HTMLElement))return;let e=t.style,r=getComputedStyle(t),n=!![e.visibility,r.visibility].includes("hidden"),o=!![e.display,r.display].includes("none"),s=!!t.hidden,f=parseInt(r.height)<1||parseInt(r.width)<1,x=t.offsetTop<0||t.offsetLeft+t.offsetWidth<0||t.offsetLeft>document.body.offsetWidth,b=+r.opacity==0||+(e.opacity||1)==0;return!(s||x||b||o||n||f)}function Ue(t){return t?.isConnected?!![...document.querySelectorAll(":is(:read-write)")].find(e=>e===t):!1}function Ge(t){return t?.filter(e=>e).reduce((e,r)=>e.concat(Ne(r)?`<!--${r.data}-->`:be(r)?r.textContent:r.outerHTML),"")}function ae(t,e=2){return`${t}`.padStart(e,"0")}function Ze(t,e=0){return[t,e]=[Math.floor(t),Math.ceil(e)],Math.floor([...crypto.getRandomValues(new Uint32Array(1))].shift()/2**32*(t-e+1)+e)}function ye(){return`_${Bt(kt).slice(0,8).join("")}`}function Ae(t){return t=a(t,String)&&/,/.test(t)?t.split(",").map(e=>e.trim().toLowerCase()).filter(e=>e.length>0):t,a(t,Array)?t:a(t,String)&&t?.trim().toLowerCase()||""}function Ye(t){return t?.isConnected?!![...document.querySelectorAll(":is(:modal)")].find(e=>e===t):!1}function He(t,e){switch(t=String(t).trim(),!0){case/^(0|false|f)$/i.test(t):return!1;case/^(1|true|t)$/i.test(t):return!0;default:return e}}function Bt(t){let e=t.length;for(;e--;){let r=Ze(e);[t[e],t[r]]=[t[r],t[e]]}return t}function Y(t){return a(t,String)?t.toLowerCase().split("-").map((e,r)=>r&&`${Wt(e)}`||e).join(""):t}function P(t){return t.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`).replace(/^-|-$/,"")}function Wt([t,...e]){return`${t.toUpperCase()}${e.join("")}`}function be(t){return a(t,Comment,Text)}function Ne(t){a(t,Comment)}function Xe(t){return a(t,Text)}function X(t){return a(t,String)&&/^<|>$/.test(`${t}`.trim())}function K(t){return a(t,Array)&&!t?.find(e=>!O(e))}function he(t){return a(t,Array)&&!t?.find(e=>!X(e))}function L(t,e){let r=t.collection.filter(n=>!be(n));for(let n=0;n<r.length;n+=1)e(r[n],n);return t}function Ke(t){return t.node?a(t.node,Comment)?`<!--${t.node.textContent}-->`:t.HTML.get(1).split(">")[0]+">...":""}function Pe(t,e,r){let n=e!==document.body&&a(t,String)&&t.toLowerCase()!=="body"?e:document;try{r.collection=[...n.querySelectorAll(t)]}catch{C.warn(`JQx: Invalid CSS querySelector. [${a(t,String)?t:"Not a string!"}]`)}}function qe(){return{isCommentOrTextNode:be,isNode:O,isComment:Ne,isText:Xe,isHtmlString:X,isArrayOfHtmlElements:K,isArrayOfHtmlStrings:he,ElemArray2HtmlString:Ge,input2Collection:me,setCollectionFromCssSelector:Pe,cssRuleEdit:U({createWithId:"JQxStylesheet"})}}function et(){let e=Object.freeze({notInDOM:"n/a",writable:"n/a",modal:"n/a",empty:!0,open:"n/a",visible:"n/a"});return r=>{let n=r.node;return a(n,Node)?Object.freeze({get writable(){return Ue(n)},get modal(){return Ye(n)},get inDOM(){return n.isConnected},get open(){return n.open??!1},get visible(){return _e(n)},get disabled(){return n.hasAttribute("readonly")||n.hasAttribute("disabled")},get empty(){return r.collection.length<1},get virtual(){return r.isVirtual}}):e}}function tt(t,e,r,n){r&&a(e,String)&&(e={[e]:r==="-"?"":r});let o;e.className&&(o=e.className,delete e.className),o=[...t.classList].find(f=>f.startsWith("JQxClass-")||o&&f===o)||o||`JQxClass-${ye().slice(1)}`,n.editCssRule(`.${o}`,e),t.classList.add(o)}var Vt=et();function rt(t){return{factoryExtensions:_t(t),instanceExtensions:Ut(t)}}function _t(t){return{data(e){return{get all(){return new Proxy(e[0]?.dataset??{},Ce)},set(r={}){if(!e.is.empty&&a(r,Object))for(let[n,o]of Object.entries(r))e.setData({[n]:o});return e},get(r,n){return e.data.all[r]??n},add(r={}){if(!e.is.empty&&a(r,Object))for(let[n,o]of Object.entries(r))e.setData({[n]:o});return e},remove(r){return e[0]?.removeAttribute(`data-${P(r)}`),e}}},dimensions(e){if(e.is.empty)return C.error("[JQx instance].dimensions called on empty instance"),{error:"[JQx instance].dimensions: NO ELEMENTS"};let{node:r}=e,n=r.getBoundingClientRect().toJSON();return n.scrollTopDistance=G(r,0),n.scrollLeftDistance=G(r,0,!1),n},node(e){return e[0]},HTML(e){return{get(r,n){if(e.is.empty)return"NO ELEMENTS IN COLLECTION";let o=r?e.outerHtml:e.html();return n?D(o):o},set(r,n=!1,o=!1){r=r.isJQx?r.HTML.get(1):r;let s=a(r,String);return r=s&&o?D(r):r,s&&(r||"").trim().length&&e.html(r,n),e},replace(r,n=!1){return e.HTML.set(r,!1,n)},append(r,n=!1){return r=a(r,HTMLElement)?t(r).HTML.get(1):r.isJQx?r.HTML.get(1):r,e.HTML.set(r,!0,n)},insert(r,n=!1){return r=a(r,HTMLElement)?t(r).HTML.get(1):r.isJQx?r.HTML.get(1):r,e.HTML.set(r+e.HTML.get(),!1,n)}}},is(e){return Vt(e)},length(e){return e.collection.length},outerHtml(e){return(e.first()||{outerHTML:void 0}).outerHTML},parent(e){let r=t(e[0]?.parentNode);return r.is.empty?e:r},render(e){switch(!0){case!e.is.empty:return e.toDOM();default:return t.logger.warn("[JQx.render]: empty collection"),e}},Style(e){return{get computed(){return e.is.empty?{}:getComputedStyle(e[0])},inline(r){return e.style(r)},inSheet(r){return e.css(r)},valueOf(r){return e.is.empty?void 0:getComputedStyle(e[0])[P(r)]},nwRule(r){return e.Style.byRule({rules:r})},byRule({classes2Apply:r=[],rules:n=[]}={}){let s=a(n,String)&&!r.length?n.split("{")[0].trim():"";if(n=n&&a(n,String)?[n]:n,r=r&&a(r,String)?[r]:r,(n?.length||r?.length)&&(n?.length&&t.editCssRules(...n),r))for(let f of r)e.addClass(f);return s?.startsWith(".")&&e.addClass(s.slice(1)),s?.startsWith("#")&&!e.attr("id")&&e.prop({id:s.slice(1)}),e}}}}}function Ut(t){return{addClass(e,...r){return L(e,n=>n&&r.forEach(o=>n.classList.add(o)))},after:ge,afterMe:ge,andThen(e,r,n=!1){if(!r||!a(r,String,Node,Proxy))return C.log("[JQx instance].[before(Me) | after(Me) | andThen]: invalid/-sufficient input."),e;r=r?.isJQx?r:a(r,Node)?t.virtual(r):t.virtual(N(r));let[o,s,f]=n?[0,"before",r.collection.concat(e.collection)]:[e.collection.length-1,"after",e.collection.concat(r.collection)];return e[o][s](...r.collection),e.collection=f,e},append(e,...r){if(e.is.empty||r.length<1)return e;let n=e.length===1;for(let o of r){if(!o.isJQx&&T(o)){let s=o.trim(),x=!/^<(.+)[^>]+>$/m.test(s)?t.text(o):N(o);L(e,b=>b.append(n?x:I(x)))}O(o)&&L(e,s=>s.append(n?o:I(o))),o.isJQx&&!o.is.empty&&L(e,s=>o.collection.forEach(f=>s.append(n?f:I(f))))}return e},appendTo(e,r){switch(!0){case(!r.isJQx&&!a(r,HTMLElement)):return $.warn("[JQx instance].appendTo: invalid input"),e;default:return(r.isJQx?r:t(r)).append(e),e}},attr(e,r,n){if(!e.node||a(e.node,Text,Comment))return e;if(!n&&T(r))return r=P(r),r==="class"?[...e.node.classList].join(" "):e.node.getAttribute(r);if(T(r)&&n)switch(r=P(r),!0){case r.startsWith("data-"):r={data:{[r.replace("data-","")]:n}};break;default:r={[r]:n}}return a(r,Object)&&!e.is.empty&&Fe(e.node,r),e},before:pe,beforeMe:pe,clear(e){return L(e,fe)},closest(e,r){let n=T(r)?e.node?.closest(r):void 0;return n?t(n):e},computedStyle(e,r){let{node:n}=e;return n&&getComputedStyle(n)[r]},css(e,r,n){return L(e,o=>tt(o,r,n,t))},duplicate(e,r=!1,n=document.body){switch(!0){case e.is.empty:return C.error("Duplicating an empty JQx instance is not possible"),e;default:let o=e.collection[0].cloneNode(!0);return o.childNodes.forEach(s=>{s.removeAttribute&&s?.removeAttribute("id")}),r?t(o).toDOM(n):t.virtual(o)}},each(e,r){return L(e,r)},empty(e){return L(e,fe)},find(e,r){return e.collection.length>0?[...e.first()?.querySelectorAll(r)]:[]},find$(e,r){return e.collection.length>0?t(r,e):e},first(e,r=!1){return e.collection.length>0?r?e.single():e.collection[0]:void 0},first$(e,r){return e.single(r)},getData(e,r,n){return e.node?.dataset?.[r]||n},hasClass(e,...r){return e.is.empty||!e.node.classList.length?!1:r.find(n=>e.node.classList.contains(n))&&!0||!1},hide(e){return L(e,r=>Z(r,{display:"none !important"}))},html(e,r,n){switch(!0){case(e.is.empty&&!T(r)):return"";case!T(r):return e.node?.getHTML()??"";default:let o=N(`<div>${r.isJQx?r.HTML.get(!0):r}</div>`);return L(e,f=>(f.textContent=n?f.textContent:"",f.insertAdjacentHTML(t.at.end,o.getHTML())))}},htmlFor(e,r,n="",o=!1){if(e.is.empty||!T(r)||!T(n))return e;let s=e.find$(r);if(s.length<1)return e;let f=N(`<span>${n}</span>`);return s.each(x=>{o||(x.textContent=""),x.insertAdjacentHTML(t.at.end,f?.getHTML())}),e},isEmpty(e){return!e.node},nth$(e,r){return e.single(r)},on(e,r,...n){switch(!0){case(e.is.empty||!a(r,String,Array)||!T(r)||n.length<1):return e;default:return t.handle({type:r,node:e.node,handler:n}),e}},once(e,r,...n){switch(!0){case(e.is.empty||!a(r,String,Array)||!T(r)||n.length<1):return e;default:return t.handle({type:r,once:!0,node:e.node,handler:n}),e}},prepend(e,...r){if(e.is.empty||!r)return;let n=e.length===1;for(let o of r){if(T(o)){o=o.trim();let f=!/^<(.+)[^>]+>$/m.test(o)?t.text(o):N(o);f=n?f:I(f),L(e,x=>x.prepend(f.cloneNode(!0)))}O(o)&&L(e,s=>s.prepend(n?o:I(o))),o.isJQx&&!o.is.empty&&(o.collection.length>1&&o.collection.reverse(),L(e,s=>L(o,f=>s.prepend(n?f:I(f)))),o.collection.reverse())}return e},prependTo(e,r){return r.isJQx||(r=t.virtual(r)),r.prepend(e),e},prop(e,r,n){if(a(r,String)&&!n)return r.startsWith("data")?e[0]?.dataset[r.slice(r.indexOf("-")+1)]:e[0]?.[r];let o=a(r,Object)?r:{[r]:n};for(let[s,f]of Object.entries(o)){if(s=s.trim(),f&&!ce(s)||!f)return!1;if(s.toLowerCase()==="id")return e[0].id=f;L(e,b=>{if(s.startsWith("data"))return b.dataset[s.slice(s.indexOf("-")+1)]=f;b[s]=f})}return e},remove(e,r){let n=s=>s.remove(),o=()=>e.collection=e.collection.filter(s=>document.documentElement.contains(s));if(r){let s=e.find$(r);return s.is.empty||(L(s,n),o()),e}return L(e,n),o(),e},rmAttr(e,...r){for(let n of r)e.node.removeAttribute(n);return e},removeClass(e,...r){return L(e,n=>{if(n)for(let o of r)n.classList.remove(o)})},renderTo(e,r,n){return r=a(r,HTMLElement)||r.isJQx?r:document.body,n=a(n,String)&&t.at[n]?n:t.at.end,e.first$().toDOM(r,n),e},replace(e,r,n){let o=e.node;return!r||!a(n,HTMLElement)&&!n?.isJQx?(t.logger.error("JQx replace: invalid replacement value"),e):((n.isJQx||a(n,NodeList))&&(n=n[0]),o&&r&&(r=a(r,String)?o.querySelectorAll(r):r.isJQx?r.collection:r,a(r,HTMLElement,NodeList,Array)&&a(n,HTMLElement)&&(a(r,HTMLElement)?[r]:[...r]).forEach(s=>s.replaceWith(n.cloneNode(!0)))),e)},replaceClass(e,r,...n){return L(e,o=>{o.classList.remove(r);for(let s of n)o.classList.add(s)})},replaceMe(e,r){return e.replaceWith(r)},replaceWith(e,r){return r=a(r,Element)?r:r.isJQx?r[0]:void 0,r&&(e[0].replaceWith(r),e=t.virtual(r)),e},setData(e,r){return L(e,n=>de(n,r))},show(e){return L(e,r=>Z(r,{display:"revert-layer !important"}))},single(e,r){let n=e.collection.length>0;switch(r=r??0,!0){case(n&&a(r,String)):return e.find$(r);case(n&&a(r,Number)):return t(e.collection[r]);case n:return e.collection[0];default:return e}},style(e,r,n){return L(e,s=>{n&&a(r,String)&&(r={[r]:n||"none"}),Z(s,r)})},text(e,r,n=!1){switch(!0){case e.isEmpty():return e;case!a(r,String):return e.node.textContent;default:return L(e,o=>o.textContent=n?o.textContent+r:r)}},toDOM(e,r=document.body,n=F.BeforeEnd){return e.isVirtual=!1,z(e.collection,r,n),e},toggleClass(e,r){return L(e,n=>n.classList.toggle(r))},toNodeList(e){return[...e.collection].map(r=>document.importNode(r,!0))},trigger(e,r,n,o){n=a(n,Function)?n:Event,o=a(o,Object)?{...o,bubbles:o.bubbles??!0}:{bubbles:!0};let s=new n(r,o);return e.is.empty||e.each(f=>f.dispatchEvent(s)),e},val(e,r){switch(!0){case(e.is.empty||!a(e.node,HTMLInputElement,HTMLSelectElement,HTMLTextAreaElement)):return e;case!a(r,String):return e.node.value;default:return e.node.value=a(r,String)?r:"",e}}}}var Me,Se,{isComment:qr,isText:en,isHtmlString:tn,isArrayOfHtmlElements:rn,isArrayOfHtmlStrings:nn,ElemArray2HtmlString:on,cssRuleEdit:Oe,addFn:Gt}=Zt();function Zt(){return{...qe(),addFn:Yt}}function Yt(t,e){return t=t?.trim(),!T(t)||!a(e,Function)?C.error("JQx.fn: method invalid parameter(s)"):Se[t]=(r,...n)=>e(r,...n)}function Xt(t){return function(e,r,n){if(e=e?.trim(),!T(e)||!a(r,Function))return t.error("JQx.staticFn: invalid parameter(s)");let o=n?{get(){return r()}}:{value(...s){return r(...s)}};try{Object.defineProperty(t,e,o)}catch{return t.warn(`JQx.staticFn: extension [${e}] already exists`)}return C.log(`JQx: added static extension function [${e}]`)}}function q(t){return new Proxy(t,Object.freeze({get:(e,r)=>Kt(e,r,t)}))}function nt(t,e){return(...r)=>a(t,Function)&&t(q(e),...r)}function Kt(t,e,r){switch(!0){case a(e,Symbol):return B({trial:()=>t[e],whenError:()=>t});case a(+e,Number):return t.collection?.[e]||void 0;case e in Me:return nt(Me[e],r)();case e in Se:return nt(Se[e],r);default:return t[e]}}function lt(t){let e=nr(t);for(let[r,n]of Object.entries(Object.getOwnPropertyDescriptors(e)))Object.defineProperty(t,r,n);return t}function qt(t){return{allow(e){let r=/-/.test(e),n=r&&e;e=r?Y(e):e.toLowerCase(),M.allowTag(e),Object.defineProperties(t,De(e,!0,t,n))},prohibit(e){e=e.toLowerCase(),M.prohibitTag(e),Object.defineProperties(t,De(e,!1,t))}}}function ot(...t){if(t.length===1){let e=String(t.shift().trim());t=e.startsWith("!")?[e.slice(1,-1)]:e.split(",").map(r=>r.trim())}for(let e of t.map(r=>r.startsWith("!")?r.slice(1,-1):r))Oe(e,{removeRule:1})}function er(t){return function(e,r,n){r=r?.isJQx?r?.[0]:r,n=n&&Object.values(F).find(s=>n===s);let o=t(e,document.createElement("br"));if(r&&!a(r,HTMLBRElement))for(let s of o.collection)n?r.insertAdjacentElement(n,s):r.append(s);return o}}function tr(...t){let e={};for(let r of t){let n=Object.getOwnPropertyDescriptors(r);for(let[o,s]of Object.entries(n))!(o in e)&&Object.defineProperty(e,o,{...s,enumerable:!1})}return e}function rr(t,e,r,n){return t=P(n||t.toLowerCase()),{get(){return(...o)=>{let s=e&&r.virtual(k(ee[t](...o)))||void 0,x=!a(s?.node,Comment,Text,void 0)?$e(s):"";return C.log(e?`JQx: created (virtual) instance from [JQx].${t} ${x}`:`JQx: ${t.toUpperCase()} is prohibited. Use [JQx].allowTag if necessary.`),s}},enumerable:!1,configurable:!0}}function De(t,e,r,n){t=t.toLowerCase();let o=rr(t,e,r,n);return n?{[n]:o,[Y(n)]:o}:{[t]:o,[t.toUpperCase()]:o}}function nr(t){return tr(Object.entries(M.tagsRaw).reduce(or(t),{}),cr(t))}function or(t){return function(e,[r,n]){return Object.defineProperties(e,De(r,n,t)),e}}function ir(t){return function(e,r,...n){a(r,Function)&&(n.push(r),r=void 0),t({type:e,selector:r,handlers:n})}}function lr(t){return function(e){let{type:r,types:n,origin:o,selector:s,handler:f,handlers:x,node:b,name:E,capture:d,once:h,about:p}=e;f=x||f,r=n||r,s=o||s;let S=Ae(r),g=E;f=a(f,Function)?[f]:f;let c={type:S,selector:s||o,capture:d,name:g,once:h,node:b,about:p};switch(!0){case(a(S,Array)&&S.length>0):for(let y of S)c.type=y,it(f,c,t);break;default:return it(f,c,t)}}}function it(t,e,r){for(let n of t)r.listen({...e,handler:n})}function sr(t){return function(e,r){return r=T(r)&&r,e=T(e)&&e,r&&e&&t.listenerStore[e][r]}}function ar(t){return t.activePopup||Object.defineProperty(t,"activePopup",{value:ie(t),enumerable:!1}),t.activePopup}function ur(t){let e=(d,h)=>Oe(d,h),r=function(d){return U({createWithId:d||`jqx${ye()}`})},n=function(...d){for(let h of d)Oe(h)},o=qt(t),s=le(t),f=lr(s);return{editCssRule:e,createStyle:r,editCssRules:n,allowProhibit:o,handle:f,capturedHandling:f,log:(...d)=>C.on.log(...d).off,warn:(...d)=>C.on.warn(...d).off,error:(...d)=>C.on.error(...d).off,handlerWrapper:s}}function cr(t){let{factoryExtensions:e,instanceExtensions:r}=rt(t);Me=e,Se=r;let{editCssRule:n,createStyle:o,editCssRules:s,allowProhibit:f,handle:x,capturedHandling:b,log:E,warn:d,error:h,handlerWrapper:p}=ur(t),S=sr(t),g=Xt(t);return{log:E,warn:d,error:h,editCssRules:s,createStyle:o,editStylesheet:o,editCssRule:n,escHtml:D,logger:C,text(c,y=!1){return y?t.comment(c):document.createTextNode(c)},node(c,y=document){return y.querySelector(c,y)},nodes(c,y=document){return[...y.querySelectorAll(c,y)]},clearAllTimers:Te,get staticFn(){return function(c,y,v){return g(c,y,v)}},get toBool(){return He},get getNamedListener(){return S},get virtual(){return er(t)},get allowTag(){return f.allow},get prohibitTag(){return f.prohibit},get removeCssRule(){return ot},get removeCssRules(){return ot},get delegate(){return ir(b)},get delegateCaptured(){return b},get handle(){return b},get listen(){return p.listen},get at(){return F},get setStyle(){return n},get fn(){return Gt},get lenient(){return M.allowUnknownHtmlTags},get IS(){return a},get Popup(){return ar(t)},get listenerStore(){return p.ListenerStore}}}var st=lt(fr());function fr(){return function(e,r,n=F.BeforeEnd){if(e?.isJQx)return e;let o=a(r,HTMLBRElement);r=(!o&&r&&r.isJQx?r[0]:r)||document.body,n=n&&Object.values(F).find(d=>n===d)?n:void 0;let s=X(e),x=!s&&he(e)||s,b={collection:me(e)??[],isVirtual:o,isJQx:!0},E=K(b.collection);if(b.collection.length&&E)return o||b.collection.forEach(d=>{r.contains(d)||z([d],r,n)}),q(b);if(x){if([e].flat().forEach(d=>b.collection.push(N(d))),b.collection.length>0){let d=b.collection.filter(g=>g?.dataset?.jqxcreationerror);b.collection=b.collection.filter(g=>!g?.dataset?.jqxcreationerror);let p=b.collection.map(g=>`${String(g.constructor).split(/function|\(/)[1].trim()}`).length>1;b=q(b);let S=b.collection.length>0?Ke(b):"sanitized: no elements remaining";C.log(`JQx: created ${b.isVirtual?"(virtual)":""} instance from ${p?"array of ":""}HTML string${p?"s":""} ${S}`),b.isVirtual||z(b.collection,r,n)}return b}return Pe(e,r,b),q(b)}}var fn=st;export{fn as default};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jqx-es",
3
- "version": "1.5.3",
3
+ "version": "1.5.4",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "description": "JQuery alike with a few twists",
@@ -522,11 +522,11 @@ function instanceExtensionsFactory(jqx) {
522
522
  return [...instance.collection].map(el => document.importNode(el, true));
523
523
  },
524
524
  trigger(instance, evtType, SpecifiedEvent, options) {
525
- SpecifiedEvent = /Event]$/.test(IS(SpecifiedEvent)) ? SpecifiedEvent : Event;
525
+ SpecifiedEvent = IS(SpecifiedEvent, Function) ? SpecifiedEvent : Event;
526
526
  options = IS(options, Object) ? { ...options, bubbles: options.bubbles??true} : {bubbles: true};
527
+ const evObj = new SpecifiedEvent( evtType, options );
527
528
 
528
529
  if (!instance.is.empty) {
529
- const evObj = new SpecifiedEvent( evtType, options );
530
530
  instance.each(el => el.dispatchEvent(evObj));
531
531
  }
532
532