jqx-es 1.4.8 → 1.4.9

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 kt(t){return jt(Rt(t))}function We(t,e){return t?.replace("::",":")===e?.replace("::",":")}var Ee=!1,Jt={on:()=>Ee=!0,off:()=>Ee=!1},P={tagsRaw:W,allowUnknownHtmlTags:Jt,isAllowed(t){if(Ee)return!0;let e=a(t,String)?t.toLowerCase():t?.nodeName.toLowerCase()||"none";return e==="#text"||!!W[e]},allowTag:t=>W[t.toLowerCase()]=!0,prohibitTag:t=>W[t.toLowerCase()]=!1};var Qt=!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 Bt(t){if(Qt&&Object.keys(t.removed).length){let e=Object.entries(t.removed).reduce((r,[n,o])=>[...r,`${O(n)} => ${o}`],[]).join("\\000A");C.error(`JQx: HTML creation error(s): ${e}`)}}function zt(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)||P.isAllowed(e)}function Q(t){let e={rawHTML:t?.parentElement?.getHTML()??"no html",removed:{}};return a(t,HTMLElement)&&[...t.childNodes].forEach(r=>{if(r?.children?.length&&Q(r),r?.attributes){let o=a(r,SVGElement)?z.svg:z.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(!(zt(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()}}),Bt(e),t}function Wt(t){let e=document.createElement("div");return e.insertAdjacentHTML(T.end,t),e.childNodes.length?Q(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 B(t=[],e=document.body,r=T.BeforeEnd){return r=r||T.BeforeEnd,e=e?.isJQx?e.node:e||document.body,t.reduce((n,o)=>{let s=M(o)&&_t(o,e,r);return s?[...n,s]:n},[])}function _t(t,e=document.body,r=T.BeforeEnd){return r=r||T.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 H(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?H(`<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, keydown",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,w]of Object.entries(o))if(w!==c[y])return!1;return!0}function b(){r.clear();let{content:c,modal:y,closeAfter:w}=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(w,Number)&&S(f,w)}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==="keydown"&&c.key!=="Escape")&&(c.key==="Escape"&&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(!L(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:w,about:A}=d;e[h]=e[h]||{};let i=Fe(S||p.name),l=p;if(w instanceof HTMLElement){let u=w.dataset.hid||i;w.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(!L(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"],T=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}`)),Le=Object.freeze({get(t,e){return t[Z(e)]||t[e]},enumerable:!1,configurable:!1}),se={};function Te(){let t=setTimeout(()=>{});for(;t>=0;)clearTimeout(t--)}function Fe(t){return L(t)&&!/^handler|handlers$/gi.test(t.trim())?t.trim():_e()}function Ae(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")||z.html.find(e=>t.toLowerCase()===e)}function fe(t){return t&&(t.textContent="")}function U(t,e=0,r=!0){return t=t?.parentElement,e+=t?t[r?"scrollTop":"scrollLeft"]:0,t?U(t,e,r):e}function L(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 O(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 $e(t,e){if(t)for(let[r,n]of Object.entries(e)){if(r=N(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-${N(r)}`,n)}function me(t){return t?a(t,Proxy)?[t.EL]:a(t,NodeList)?[...t]:M(t)?[t]:X(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 M(t){return a(t,Text,HTMLElement,Comment)}function G(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(N(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(!t)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=t.offsetTop<0||t.offsetLeft+t.offsetWidth<0||t.offsetLeft>document.body.offsetWidth,x=+r.opacity==0||+(e.opacity||1)==0;return!(s||f||x||o||n)}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(Ne(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 De(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 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 Yt(t){let e=t.length;for(;e--;){let r=Ye(e);[t[e],t[r]]=[t[r],t[e]]}return t}function Z(t){return a(t,String)?t.toLowerCase().split("-").map((e,r)=>r&&`${Xt(e)}`||e).join(""):t}function N(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 Ne(t){a(t,Comment)}function Ke(t){return a(t,Text)}function Y(t){return a(t,String)&&/^<|>$/.test(`${t}`.trim())}function X(t){return a(t,Array)&&!t?.find(e=>!M(e))}function he(t){return a(t,Array)&&!t?.find(e=>!Y(e))}function F(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){if(t.node)return 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 et(){return{isCommentOrTextNode:be,isNode:M,isComment:Ne,isText:Ke,isHtmlString:Y,isArrayOfHtmlElements:X,isArrayOfHtmlStrings:he,ElemArray2HtmlString:Ze,input2Collection:me,setCollectionFromCssSelector:Pe,cssRuleEdit:_({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??{},Le)},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-${N(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=U(r,0),n.scrollLeftDistance=U(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?O(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?O(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])[N(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 F(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(H(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&&L(o)){let s=o.trim(),x=!/^<(.+)[^>]+>$/m.test(s)?t.text(o):H(o);F(e,b=>b.append(n?x:I(x)))}M(o)&&F(e,s=>s.append(n?o:I(o))),o.isJQx&&!o.is.empty&&F(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&&L(r))return r=N(r),r==="class"?[...e.node.classList].join(" "):e.node.getAttribute(r);if(L(r)&&n)switch(r=N(r),!0){case r.startsWith("data-"):r={data:{[r.replace("data-","")]:n}};break;default:r={[r]:n}}return a(r,Object)&&!e.is.empty&&$e(e.node,r),e},before:pe,beforeMe:pe,clear(e){return F(e,fe)},closest(e,r){let n=L(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 F(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 F(e,r)},empty(e){return F(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 F(e,r=>G(r,{display:"none !important"}))},html(e,r,n){switch(!0){case(e.is.empty&&!L(r)):return"";case!L(r):return e.node?.getHTML()??"";default:let o=H(`<div>${r.isJQx?r.HTML.get(!0):r}</div>`);return F(e,f=>(f.textContent=n?f.textContent:"",f.insertAdjacentHTML(t.at.end,o.getHTML())))}},htmlFor(e,r,n="",o=!1){if(e.is.empty||!L(r)||!L(n))return e;let s=e.find$(r);if(s.length<1)return e;let f=H(`<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)||!L(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)||!L(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(L(o)){o=o.trim();let f=!/^<(.+)[^>]+>$/m.test(o)?t.text(o):H(o);f=n?f:I(f),F(e,x=>x.prepend(f.cloneNode(!0)))}M(o)&&F(e,s=>s.prepend(n?o:I(o))),o.isJQx&&!o.is.empty&&(o.collection.length>1&&o.collection.reverse(),F(e,s=>F(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;F(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||(F(s,n),o()),e}return F(e,n),o(),e},rmAttr(e,...r){for(let n of r)e.node.removeAttribute(n);return e},removeClass(e,...r){return F(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 F(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 F(e,n=>de(n,r))},show(e){return F(e,r=>G(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 F(e,s=>{n&&a(r,String)&&(r={[r]:n||"none"}),G(s,r)})},text(e,r,n=!1){switch(!0){case e.isEmpty():return e;case!a(r,String):return e.node.textContent;default:return F(e,o=>o.textContent=n?o.textContent+r:r)}},toDOM(e,r=document.body,n=T.BeforeEnd){return e.isVirtual=!1,B(e.collection,r,n),e},toggleClass(e,r){return F(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:cn,isText:fn,isHtmlString:dn,isArrayOfHtmlElements:mn,isArrayOfHtmlStrings:gn,ElemArray2HtmlString:pn,cssRuleEdit:Oe,addFn:tr}=rr();function rr(){return{...et(),addFn:nr}}function nr(t,e){return t=t?.trim(),!L(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(),!L(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 K(t){return new Proxy(t,Object.freeze({get:(e,r)=>ir(e,r,t)}))}function ot(t,e){return(...r)=>a(t,Function)&&t(K(e),...r)}function ir(t,e,r){switch(!0){case a(e,Symbol):return t;case a(+e,Number):return t.collection?.[e]||void 0;case e in Me:return ot(Me[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?Z(e):e.toLowerCase(),P.allowTag(e),Object.defineProperties(t,Ie(e,!0,t,n))},prohibit(e){e=e.toLowerCase(),P.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))Oe(e,{removeRule:1})}function sr(t){return function(e,r,n){r=r?.isJQx?r?.[0]:r,n=n&&Object.values(T).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=N(n||t.toLowerCase()),{get(){return(...o)=>{let s=e&&r.virtual(Q(ee[t](...o)))||void 0,x=!a(s?.node,Comment,Text,void 0)?Ae(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,[Z(n)]:o}:{[t]:o,[t.toUpperCase()]:o}}function cr(t){return ar(Object.entries(P.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=De(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=L(r)&&r,e=L(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)=>Oe(d,h),r=function(d){return _({createWithId:d||`jqx${ye()}`})},n=function(...d){for(let h of d)Oe(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);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}=yr(t),S=gr(t),g=or(t);return{log:E,warn:d,error:h,editCssRules:s,createStyle:o,editStylesheet:o,editCssRule:n,escHtml:O,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,w){return g(c,y,w)}},get toBool(){return He},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 T},get setStyle(){return n},get fn(){return tr},get lenient(){return P.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=T.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(T).find(d=>n===d)?n:void 0;let s=Y(e),x=!s&&he(e)||s,b={collection:me(e)??[],isVirtual:o,isJQx:!0},E=X(b.collection);if(b.collection.length&&E)return o||b.collection.forEach(d=>{r.contains(d)||B([d],r,n)}),K(b);if(x){if([e].flat().forEach(d=>b.collection.push(H(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=K(b);let S=b.collection.length?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||B(b.collection,r,n)}return b}return Pe(e,r,b),K(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 $e(t,e){if(t)for(let[r,n]of Object.entries(e)){if(r=N(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-${N(r)}`,n)}function me(t){return t?a(t,Proxy)?[t.EL]:a(t,NodeList)?[...t]:M(t)?[t]:X(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 M(t){return a(t,Text,HTMLElement,Comment)}function G(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(N(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(!t)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=t.offsetTop<0||t.offsetLeft+t.offsetWidth<0||t.offsetLeft>document.body.offsetWidth,x=+r.opacity==0||+(e.opacity||1)==0;return!(s||f||x||o||n)}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(Ne(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 De(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 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 Yt(t){let e=t.length;for(;e--;){let r=Ye(e);[t[e],t[r]]=[t[r],t[e]]}return t}function Z(t){return a(t,String)?t.toLowerCase().split("-").map((e,r)=>r&&`${Xt(e)}`||e).join(""):t}function N(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 Ne(t){a(t,Comment)}function Ke(t){return a(t,Text)}function Y(t){return a(t,String)&&/^<|>$/.test(`${t}`.trim())}function X(t){return a(t,Array)&&!t?.find(e=>!M(e))}function he(t){return a(t,Array)&&!t?.find(e=>!Y(e))}function F(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 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 et(){return{isCommentOrTextNode:be,isNode:M,isComment:Ne,isText:Ke,isHtmlString:Y,isArrayOfHtmlElements:X,isArrayOfHtmlStrings:he,ElemArray2HtmlString:Ze,input2Collection:me,setCollectionFromCssSelector:Pe,cssRuleEdit:_({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??{},Le)},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-${N(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=U(r,0),n.scrollLeftDistance=U(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?O(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?O(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])[N(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 F(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(H(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&&L(o)){let s=o.trim(),x=!/^<(.+)[^>]+>$/m.test(s)?t.text(o):H(o);F(e,b=>b.append(n?x:I(x)))}M(o)&&F(e,s=>s.append(n?o:I(o))),o.isJQx&&!o.is.empty&&F(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&&L(r))return r=N(r),r==="class"?[...e.node.classList].join(" "):e.node.getAttribute(r);if(L(r)&&n)switch(r=N(r),!0){case r.startsWith("data-"):r={data:{[r.replace("data-","")]:n}};break;default:r={[r]:n}}return a(r,Object)&&!e.is.empty&&$e(e.node,r),e},before:pe,beforeMe:pe,clear(e){return F(e,fe)},closest(e,r){let n=L(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 F(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 F(e,r)},empty(e){return F(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 F(e,r=>G(r,{display:"none !important"}))},html(e,r,n){switch(!0){case(e.is.empty&&!L(r)):return"";case!L(r):return e.node?.getHTML()??"";default:let o=H(`<div>${r.isJQx?r.HTML.get(!0):r}</div>`);return F(e,f=>(f.textContent=n?f.textContent:"",f.insertAdjacentHTML(t.at.end,o.getHTML())))}},htmlFor(e,r,n="",o=!1){if(e.is.empty||!L(r)||!L(n))return e;let s=e.find$(r);if(s.length<1)return e;let f=H(`<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)||!L(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)||!L(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(L(o)){o=o.trim();let f=!/^<(.+)[^>]+>$/m.test(o)?t.text(o):H(o);f=n?f:I(f),F(e,x=>x.prepend(f.cloneNode(!0)))}M(o)&&F(e,s=>s.prepend(n?o:I(o))),o.isJQx&&!o.is.empty&&(o.collection.length>1&&o.collection.reverse(),F(e,s=>F(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;F(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||(F(s,n),o()),e}return F(e,n),o(),e},rmAttr(e,...r){for(let n of r)e.node.removeAttribute(n);return e},removeClass(e,...r){return F(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 F(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 F(e,n=>de(n,r))},show(e){return F(e,r=>G(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 F(e,s=>{n&&a(r,String)&&(r={[r]:n||"none"}),G(s,r)})},text(e,r,n=!1){switch(!0){case e.isEmpty():return e;case!a(r,String):return e.node.textContent;default:return F(e,o=>o.textContent=n?o.textContent+r:r)}},toDOM(e,r=document.body,n=T.BeforeEnd){return e.isVirtual=!1,B(e.collection,r,n),e},toggleClass(e,r){return F(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:cn,isText:fn,isHtmlString:dn,isArrayOfHtmlElements:mn,isArrayOfHtmlStrings:gn,ElemArray2HtmlString:pn,cssRuleEdit:Oe,addFn:tr}=rr();function rr(){return{...et(),addFn:nr}}function nr(t,e){return t=t?.trim(),!L(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(),!L(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 K(t){return new Proxy(t,Object.freeze({get:(e,r)=>ir(e,r,t)}))}function ot(t,e){return(...r)=>a(t,Function)&&t(K(e),...r)}function ir(t,e,r){switch(!0){case a(e,Symbol):return t;case a(+e,Number):return t.collection?.[e]||void 0;case e in Me:return ot(Me[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?Z(e):e.toLowerCase(),P.allowTag(e),Object.defineProperties(t,Ie(e,!0,t,n))},prohibit(e){e=e.toLowerCase(),P.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))Oe(e,{removeRule:1})}function sr(t){return function(e,r,n){r=r?.isJQx?r?.[0]:r,n=n&&Object.values(T).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=N(n||t.toLowerCase()),{get(){return(...o)=>{let s=e&&r.virtual(Q(ee[t](...o)))||void 0,x=!a(s?.node,Comment,Text,void 0)?Ae(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,[Z(n)]:o}:{[t]:o,[t.toUpperCase()]:o}}function cr(t){return ar(Object.entries(P.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=De(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=L(r)&&r,e=L(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)=>Oe(d,h),r=function(d){return _({createWithId:d||`jqx${ye()}`})},n=function(...d){for(let h of d)Oe(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);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}=yr(t),S=gr(t),g=or(t);return{log:E,warn:d,error:h,editCssRules:s,createStyle:o,editStylesheet:o,editCssRule:n,escHtml:O,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,w){return g(c,y,w)}},get toBool(){return He},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 T},get setStyle(){return n},get fn(){return tr},get lenient(){return P.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=T.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(T).find(d=>n===d)?n:void 0;let s=Y(e),x=!s&&he(e)||s,b={collection:me(e)??[],isVirtual:o,isJQx:!0},E=X(b.collection);if(b.collection.length&&E)return o||b.collection.forEach(d=>{r.contains(d)||B([d],r,n)}),K(b);if(x){if([e].flat().forEach(d=>b.collection.push(H(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=K(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||B(b.collection,r,n)}return b}return Pe(e,r,b),K(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 Ht(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 Nt(t){return Ht(Dt(t))}function ze(t,e){return t?.replace("::",":")===e?.replace("::",":")}var ve=!1,Pt={on:()=>ve=!0,off:()=>ve=!1},P={tagsRaw:W,allowUnknownHtmlTags:Pt,isAllowed(t){if(ve)return!0;let e=a(t,String)?t.toLowerCase():t?.nodeName.toLowerCase()||"none";return e==="#text"||!!W[e]},allowTag:t=>W[t.toLowerCase()]=!0,prohibitTag:t=>W[t.toLowerCase()]=!1};var Mt=!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 Ot(t){if(Mt&&Object.keys(t.removed).length){let e=Object.entries(t.removed).reduce((r,[n,o])=>[...r,`${O(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)||P.isAllowed(e)}function Q(t){let e={rawHTML:t?.parentElement?.getHTML()??"no html",removed:{}};return a(t,HTMLElement)&&[...t.childNodes].forEach(r=>{if(r?.children?.length&&Q(r),r?.attributes){let o=a(r,SVGElement)?z.svg:z.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()}}),Ot(e),t}function Rt(t){let e=document.createElement("div");return e.insertAdjacentHTML(T.end,t),e.childNodes.length?Q(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 B(t=[],e=document.body,r=T.BeforeEnd){return r=r||T.BeforeEnd,e=e?.isJQx?e.node:e||document.body,t.reduce((n,o)=>{let s=M(o)&&kt(o,e,r);return s?[...n,s]:n},[])}function kt(t,e=document.body,r=T.BeforeEnd){return r=r||T.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 H(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?H(`<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, keydown",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,w]of Object.entries(o))if(w!==c[y])return!1;return!0}function b(){r.clear();let{content:c,modal:y,closeAfter:w}=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(w,Number)&&S(f,w)}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==="keydown"&&c.key!=="Escape")&&(c.key==="Escape"&&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(!L(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:w,about:A}=d;e[h]=e[h]||{};let i=Ee(S||p.name),l=p;if(w instanceof HTMLElement){let u=w.dataset.hid||i;w.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(!L(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=Bt(),Jt=["load","unload","scroll","focus","blur","DOMNodeRemovedFromDocument","DOMNodeInsertedIntoDocument","loadstart","progress","error","abort","load","loadend","pointerenter","pointerleave","readystatechange"],T=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]}})),Qt=[...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[Z(e)]||t[e]},enumerable:!1,configurable:!1}),se={};function Le(){let t=setTimeout(()=>{});for(;t>=0;)clearTimeout(t--)}function Ee(t){return L(t)&&!/^handler|handlers$/gi.test(t.trim())?t.trim():Ve()}function Te(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!!Jt.find(r=>r===t)||!!e}function ce(t){return t.startsWith("data")||z.html.find(e=>t.toLowerCase()===e)}function fe(t){return t&&(t.textContent="")}function U(t,e=0,r=!0){return t=t?.parentElement,e+=t?t[r?"scrollTop":"scrollLeft"]:0,t?U(t,e,r):e}function L(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 O(t){switch(!0){case a(t,String):let e=document.createElement("div");return e.append(t),e.innerHTML;default:return t}}function Fe(t){return a(t,String)&&Object.assign(document.createElement("textarea"),{innerHTML:t}).textContent||t}function Bt(){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 ${Fe(d)}`)),console.error(r.slice(0,E.length).join(`
14
14
  `)),n}function x(...E){return r.unshift(...E.map(d=>`${ue()} \u26A0 ${Fe(d)}`)),console.warn(r.slice(0,E.length).join(`
15
15
  `)),n}function b(...E){let d=E.map(h=>`${ue()} \u2714 ${Fe(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=N(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-${N(r)}`,n)}function me(t){return t?a(t,Proxy)?[t.EL]:a(t,NodeList)?[...t]:M(t)?[t]:X(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 M(t){return a(t,Text,HTMLElement,Comment)}function G(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(N(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(!t)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=t.offsetTop<0||t.offsetLeft+t.offsetWidth<0||t.offsetLeft>document.body.offsetWidth,x=+r.opacity==0||+(e.opacity||1)==0;return!(s||f||x||o||n)}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(He(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`_${zt(Qt).slice(0,8).join("")}`}function $e(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 De(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 zt(t){let e=t.length;for(;e--;){let r=Ze(e);[t[e],t[r]]=[t[r],t[e]]}return t}function Z(t){return a(t,String)?t.toLowerCase().split("-").map((e,r)=>r&&`${Wt(e)}`||e).join(""):t}function N(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 He(t){a(t,Comment)}function Xe(t){return a(t,Text)}function Y(t){return a(t,String)&&/^<|>$/.test(`${t}`.trim())}function X(t){return a(t,Array)&&!t?.find(e=>!M(e))}function he(t){return a(t,Array)&&!t?.find(e=>!Y(e))}function F(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){if(t.node)return a(t.node,Comment)?`<!--${t.node.textContent}-->`:t.HTML.get(1).split(">")[0]+">..."}function Ne(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:M,isComment:He,isText:Xe,isHtmlString:Y,isArrayOfHtmlElements:X,isArrayOfHtmlStrings:he,ElemArray2HtmlString:Ge,input2Collection:me,setCollectionFromCssSelector:Ne,cssRuleEdit:_({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-${N(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=U(r,0),n.scrollLeftDistance=U(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?O(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?O(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])[N(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 F(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(H(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&&L(o)){let s=o.trim(),x=!/^<(.+)[^>]+>$/m.test(s)?t.text(o):H(o);F(e,b=>b.append(n?x:I(x)))}M(o)&&F(e,s=>s.append(n?o:I(o))),o.isJQx&&!o.is.empty&&F(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&&L(r))return r=N(r),r==="class"?[...e.node.classList].join(" "):e.node.getAttribute(r);if(L(r)&&n)switch(r=N(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 F(e,fe)},closest(e,r){let n=L(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 F(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 F(e,r)},empty(e){return F(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 F(e,r=>G(r,{display:"none !important"}))},html(e,r,n){switch(!0){case(e.is.empty&&!L(r)):return"";case!L(r):return e.node?.getHTML()??"";default:let o=H(`<div>${r.isJQx?r.HTML.get(!0):r}</div>`);return F(e,f=>(f.textContent=n?f.textContent:"",f.insertAdjacentHTML(t.at.end,o.getHTML())))}},htmlFor(e,r,n="",o=!1){if(e.is.empty||!L(r)||!L(n))return e;let s=e.find$(r);if(s.length<1)return e;let f=H(`<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)||!L(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)||!L(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(L(o)){o=o.trim();let f=!/^<(.+)[^>]+>$/m.test(o)?t.text(o):H(o);f=n?f:I(f),F(e,x=>x.prepend(f.cloneNode(!0)))}M(o)&&F(e,s=>s.prepend(n?o:I(o))),o.isJQx&&!o.is.empty&&(o.collection.length>1&&o.collection.reverse(),F(e,s=>F(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;F(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||(F(s,n),o()),e}return F(e,n),o(),e},rmAttr(e,...r){for(let n of r)e.node.removeAttribute(n);return e},removeClass(e,...r){return F(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 F(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 F(e,n=>de(n,r))},show(e){return F(e,r=>G(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 F(e,s=>{n&&a(r,String)&&(r={[r]:n||"none"}),G(s,r)})},text(e,r,n=!1){switch(!0){case e.isEmpty():return e;case!a(r,String):return e.node.textContent;default:return F(e,o=>o.textContent=n?o.textContent+r:r)}},toDOM(e,r=document.body,n=T.BeforeEnd){return e.isVirtual=!1,B(e.collection,r,n),e},toggleClass(e,r){return F(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 Pe,Se,{isComment:qr,isText:en,isHtmlString:tn,isArrayOfHtmlElements:rn,isArrayOfHtmlStrings:nn,ElemArray2HtmlString:on,cssRuleEdit:Me,addFn:Gt}=Zt();function Zt(){return{...qe(),addFn:Yt}}function Yt(t,e){return t=t?.trim(),!L(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(),!L(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 K(t){return new Proxy(t,Object.freeze({get:(e,r)=>Kt(e,r,t)}))}function nt(t,e){return(...r)=>a(t,Function)&&t(K(e),...r)}function Kt(t,e,r){switch(!0){case a(e,Symbol):return t;case a(+e,Number):return t.collection?.[e]||void 0;case e in Pe:return nt(Pe[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?Z(e):e.toLowerCase(),P.allowTag(e),Object.defineProperties(t,Oe(e,!0,t,n))},prohibit(e){e=e.toLowerCase(),P.prohibitTag(e),Object.defineProperties(t,Oe(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))Me(e,{removeRule:1})}function er(t){return function(e,r,n){r=r?.isJQx?r?.[0]:r,n=n&&Object.values(T).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=N(n||t.toLowerCase()),{get(){return(...o)=>{let s=e&&r.virtual(Q(ee[t](...o)))||void 0,x=!a(s?.node,Comment,Text,void 0)?Te(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 Oe(t,e,r,n){t=t.toLowerCase();let o=rr(t,e,r,n);return n?{[n]:o,[Z(n)]:o}:{[t]:o,[t.toUpperCase()]:o}}function nr(t){return tr(Object.entries(P.tagsRaw).reduce(or(t),{}),cr(t))}function or(t){return function(e,[r,n]){return Object.defineProperties(e,Oe(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=$e(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=L(r)&&r,e=L(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)=>Me(d,h),r=function(d){return _({createWithId:d||`jqx${ye()}`})},n=function(...d){for(let h of d)Me(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);Pe=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:O,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:Le,get staticFn(){return function(c,y,w){return g(c,y,w)}},get toBool(){return De},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 T},get setStyle(){return n},get fn(){return Gt},get lenient(){return P.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=T.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(T).find(d=>n===d)?n:void 0;let s=Y(e),x=!s&&he(e)||s,b={collection:me(e)??[],isVirtual:o,isJQx:!0},E=X(b.collection);if(b.collection.length&&E)return o||b.collection.forEach(d=>{r.contains(d)||B([d],r,n)}),K(b);if(x){if([e].flat().forEach(d=>b.collection.push(H(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=K(b);let S=b.collection.length?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||B(b.collection,r,n)}return b}return Ne(e,r,b),K(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 Ae(t,e){if(t)for(let[r,n]of Object.entries(e)){if(r=N(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-${N(r)}`,n)}function me(t){return t?a(t,Proxy)?[t.EL]:a(t,NodeList)?[...t]:M(t)?[t]:X(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 M(t){return a(t,Text,HTMLElement,Comment)}function G(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(N(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(!t)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=t.offsetTop<0||t.offsetLeft+t.offsetWidth<0||t.offsetLeft>document.body.offsetWidth,x=+r.opacity==0||+(e.opacity||1)==0;return!(s||f||x||o||n)}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(He(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`_${zt(Qt).slice(0,8).join("")}`}function $e(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 De(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 zt(t){let e=t.length;for(;e--;){let r=Ze(e);[t[e],t[r]]=[t[r],t[e]]}return t}function Z(t){return a(t,String)?t.toLowerCase().split("-").map((e,r)=>r&&`${Wt(e)}`||e).join(""):t}function N(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 He(t){a(t,Comment)}function Xe(t){return a(t,Text)}function Y(t){return a(t,String)&&/^<|>$/.test(`${t}`.trim())}function X(t){return a(t,Array)&&!t?.find(e=>!M(e))}function he(t){return a(t,Array)&&!t?.find(e=>!Y(e))}function F(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 Ne(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:M,isComment:He,isText:Xe,isHtmlString:Y,isArrayOfHtmlElements:X,isArrayOfHtmlStrings:he,ElemArray2HtmlString:Ge,input2Collection:me,setCollectionFromCssSelector:Ne,cssRuleEdit:_({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-${N(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=U(r,0),n.scrollLeftDistance=U(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?O(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?O(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])[N(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 F(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(H(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&&L(o)){let s=o.trim(),x=!/^<(.+)[^>]+>$/m.test(s)?t.text(o):H(o);F(e,b=>b.append(n?x:I(x)))}M(o)&&F(e,s=>s.append(n?o:I(o))),o.isJQx&&!o.is.empty&&F(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&&L(r))return r=N(r),r==="class"?[...e.node.classList].join(" "):e.node.getAttribute(r);if(L(r)&&n)switch(r=N(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 F(e,fe)},closest(e,r){let n=L(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 F(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 F(e,r)},empty(e){return F(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 F(e,r=>G(r,{display:"none !important"}))},html(e,r,n){switch(!0){case(e.is.empty&&!L(r)):return"";case!L(r):return e.node?.getHTML()??"";default:let o=H(`<div>${r.isJQx?r.HTML.get(!0):r}</div>`);return F(e,f=>(f.textContent=n?f.textContent:"",f.insertAdjacentHTML(t.at.end,o.getHTML())))}},htmlFor(e,r,n="",o=!1){if(e.is.empty||!L(r)||!L(n))return e;let s=e.find$(r);if(s.length<1)return e;let f=H(`<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)||!L(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)||!L(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(L(o)){o=o.trim();let f=!/^<(.+)[^>]+>$/m.test(o)?t.text(o):H(o);f=n?f:I(f),F(e,x=>x.prepend(f.cloneNode(!0)))}M(o)&&F(e,s=>s.prepend(n?o:I(o))),o.isJQx&&!o.is.empty&&(o.collection.length>1&&o.collection.reverse(),F(e,s=>F(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;F(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||(F(s,n),o()),e}return F(e,n),o(),e},rmAttr(e,...r){for(let n of r)e.node.removeAttribute(n);return e},removeClass(e,...r){return F(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 F(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 F(e,n=>de(n,r))},show(e){return F(e,r=>G(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 F(e,s=>{n&&a(r,String)&&(r={[r]:n||"none"}),G(s,r)})},text(e,r,n=!1){switch(!0){case e.isEmpty():return e;case!a(r,String):return e.node.textContent;default:return F(e,o=>o.textContent=n?o.textContent+r:r)}},toDOM(e,r=document.body,n=T.BeforeEnd){return e.isVirtual=!1,B(e.collection,r,n),e},toggleClass(e,r){return F(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 Pe,Se,{isComment:qr,isText:en,isHtmlString:tn,isArrayOfHtmlElements:rn,isArrayOfHtmlStrings:nn,ElemArray2HtmlString:on,cssRuleEdit:Me,addFn:Gt}=Zt();function Zt(){return{...qe(),addFn:Yt}}function Yt(t,e){return t=t?.trim(),!L(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(),!L(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 K(t){return new Proxy(t,Object.freeze({get:(e,r)=>Kt(e,r,t)}))}function nt(t,e){return(...r)=>a(t,Function)&&t(K(e),...r)}function Kt(t,e,r){switch(!0){case a(e,Symbol):return t;case a(+e,Number):return t.collection?.[e]||void 0;case e in Pe:return nt(Pe[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?Z(e):e.toLowerCase(),P.allowTag(e),Object.defineProperties(t,Oe(e,!0,t,n))},prohibit(e){e=e.toLowerCase(),P.prohibitTag(e),Object.defineProperties(t,Oe(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))Me(e,{removeRule:1})}function er(t){return function(e,r,n){r=r?.isJQx?r?.[0]:r,n=n&&Object.values(T).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=N(n||t.toLowerCase()),{get(){return(...o)=>{let s=e&&r.virtual(Q(ee[t](...o)))||void 0,x=!a(s?.node,Comment,Text,void 0)?Te(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 Oe(t,e,r,n){t=t.toLowerCase();let o=rr(t,e,r,n);return n?{[n]:o,[Z(n)]:o}:{[t]:o,[t.toUpperCase()]:o}}function nr(t){return tr(Object.entries(P.tagsRaw).reduce(or(t),{}),cr(t))}function or(t){return function(e,[r,n]){return Object.defineProperties(e,Oe(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=$e(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=L(r)&&r,e=L(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)=>Me(d,h),r=function(d){return _({createWithId:d||`jqx${ye()}`})},n=function(...d){for(let h of d)Me(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);Pe=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:O,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:Le,get staticFn(){return function(c,y,w){return g(c,y,w)}},get toBool(){return De},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 T},get setStyle(){return n},get fn(){return Gt},get lenient(){return P.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=T.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(T).find(d=>n===d)?n:void 0;let s=Y(e),x=!s&&he(e)||s,b={collection:me(e)??[],isVirtual:o,isJQx:!0},E=X(b.collection);if(b.collection.length&&E)return o||b.collection.forEach(d=>{r.contains(d)||B([d],r,n)}),K(b);if(x){if([e].flat().forEach(d=>b.collection.push(H(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=K(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||B(b.collection,r,n)}return b}return Ne(e,r,b),K(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.4.8",
3
+ "version": "1.4.9",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "description": "JQuery alike with a few twists",
@@ -50,7 +50,7 @@ function JQxMainFactory() {
50
50
  const elemsCreated = instance.collection.map(el => `${String(el.constructor).split(/function|\(/)[1].trim()}`);
51
51
  const multiple = elemsCreated.length > 1;
52
52
  instance = proxify(instance);
53
- const collectionLog = instance.collection.length
53
+ const collectionLog = instance.collection.length > 0
54
54
  ? getNodeContentForLog(instance)
55
55
  : "sanitized: no elements remaining";
56
56
 
@@ -33,6 +33,7 @@ function getNodeContentForLog(instance) {
33
33
  ? `<!--${instance.node.textContent}-->`
34
34
  : instance.HTML.get(1).split(`>`)[0] + `>...`
35
35
  }
36
+ return ``;
36
37
  }
37
38
 
38
39
  function setCollectionFromCssSelector(input, root, self) {