tiny-essentials 1.19.3 → 1.20.1

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.
Files changed (57) hide show
  1. package/dist/v1/TinyBasicsEs.min.js +1 -1
  2. package/dist/v1/TinyDragger.min.js +1 -1
  3. package/dist/v1/TinyEssentials.min.js +1 -1
  4. package/dist/v1/TinyHtml.min.js +1 -1
  5. package/dist/v1/TinyIframeEvents.min.js +1 -0
  6. package/dist/v1/TinyNewWinEvents.min.js +1 -0
  7. package/dist/v1/TinySmartScroller.min.js +1 -1
  8. package/dist/v1/TinyUploadClicker.min.js +1 -1
  9. package/dist/v1/build/TinyIframeEvents.cjs +7 -0
  10. package/dist/v1/build/TinyIframeEvents.d.mts +3 -0
  11. package/dist/v1/build/TinyIframeEvents.mjs +2 -0
  12. package/dist/v1/build/TinyNewWinEvents.cjs +7 -0
  13. package/dist/v1/build/TinyNewWinEvents.d.mts +3 -0
  14. package/dist/v1/build/TinyNewWinEvents.mjs +2 -0
  15. package/dist/v1/index.cjs +4 -0
  16. package/dist/v1/index.d.mts +3 -1
  17. package/dist/v1/index.mjs +3 -1
  18. package/dist/v1/libs/TinyDragger.cjs +1 -1
  19. package/dist/v1/libs/TinyDragger.mjs +1 -1
  20. package/dist/v1/libs/TinyHtml.cjs +292 -103
  21. package/dist/v1/libs/TinyHtml.d.mts +142 -39
  22. package/dist/v1/libs/TinyHtml.mjs +266 -94
  23. package/dist/v1/libs/TinyIframeEvents.cjs +410 -0
  24. package/dist/v1/libs/TinyIframeEvents.d.mts +193 -0
  25. package/dist/v1/libs/TinyIframeEvents.mjs +348 -0
  26. package/dist/v1/libs/TinyNewWinEvents.cjs +488 -0
  27. package/dist/v1/libs/TinyNewWinEvents.d.mts +241 -0
  28. package/dist/v1/libs/TinyNewWinEvents.mjs +437 -0
  29. package/docs/v1/README.md +2 -0
  30. package/docs/v1/libs/TinyHtml.md +128 -6
  31. package/docs/v1/libs/TinyIframeEvents.md +149 -0
  32. package/docs/v1/libs/TinyNewWinEvents.md +186 -0
  33. package/docs/v1/libs/TinyNotifyCenter.md +1 -1
  34. package/package.json +1 -1
  35. package/dist/v1/ColorSafeStringify.js +0 -235
  36. package/dist/v1/TinyAfterScrollWatcher.js +0 -219
  37. package/dist/v1/TinyBasicsEs.js +0 -9334
  38. package/dist/v1/TinyClipboard.js +0 -459
  39. package/dist/v1/TinyColorConverter.js +0 -617
  40. package/dist/v1/TinyDomReadyManager.js +0 -213
  41. package/dist/v1/TinyDragDropDetector.js +0 -307
  42. package/dist/v1/TinyDragger.js +0 -6569
  43. package/dist/v1/TinyEssentials.js +0 -19893
  44. package/dist/v1/TinyEvents.js +0 -402
  45. package/dist/v1/TinyHtml.js +0 -5545
  46. package/dist/v1/TinyLevelUp.js +0 -291
  47. package/dist/v1/TinyLocalStorage.js +0 -1440
  48. package/dist/v1/TinyNotifications.js +0 -408
  49. package/dist/v1/TinyNotifyCenter.js +0 -493
  50. package/dist/v1/TinyPromiseQueue.js +0 -299
  51. package/dist/v1/TinyRateLimiter.js +0 -611
  52. package/dist/v1/TinySmartScroller.js +0 -7039
  53. package/dist/v1/TinyTextRangeEditor.js +0 -497
  54. package/dist/v1/TinyTimeout.js +0 -233
  55. package/dist/v1/TinyToastNotify.js +0 -441
  56. package/dist/v1/TinyUploadClicker.js +0 -13456
  57. package/dist/v1/UltraRandomMsgGen.js +0 -995
@@ -1 +1 @@
1
- (()=>{"use strict";var t={d:(e,r)=>{for(var o in r)t.o(r,o)&&!t.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:r[o]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r:t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})}},e={};t.d(e,{TinyHtml:()=>P});var r={};t.r(r),t.d(r,{areElsCollBottom:()=>n,areElsCollLeft:()=>i,areElsCollPerfBottom:()=>a,areElsCollPerfLeft:()=>c,areElsCollPerfRight:()=>p,areElsCollPerfTop:()=>l,areElsCollRight:()=>s,areElsCollTop:()=>o,areElsColliding:()=>m,areElsPerfColliding:()=>u,getElsCollDetails:()=>w,getElsCollDirDepth:()=>b,getElsCollOverlap:()=>h,getElsCollOverlapPos:()=>g,getElsColliding:()=>d,getElsPerfColliding:()=>f,getElsRelativeCenterOffset:()=>E,getRectCenter:()=>y});const o=(t,e)=>t.bottom<e.top,n=(t,e)=>t.top>e.bottom,i=(t,e)=>t.right<e.left,s=(t,e)=>t.left>e.right,l=(t,e)=>t.bottom<=e.top,a=(t,e)=>t.top>=e.bottom,c=(t,e)=>t.right<=e.left,p=(t,e)=>t.left>=e.right,m=(t,e)=>!(i(t,e)||s(t,e)||o(t,e)||n(t,e)),u=(t,e)=>!(c(t,e)||p(t,e)||l(t,e)||a(t,e)),d=(t,e)=>i(t,e)?"left":s(t,e)?"right":o(t,e)?"top":n(t,e)?"bottom":null,f=(t,e)=>c(t,e)?"left":p(t,e)?"right":l(t,e)?"top":a(t,e)?"bottom":null,h=(t,e)=>({overlapLeft:e.right-t.left,overlapRight:t.right-e.left,overlapTop:e.bottom-t.top,overlapBottom:t.bottom-e.top}),g=({overlapLeft:t=-1,overlapRight:e=-1,overlapTop:r=-1,overlapBottom:o=-1}={})=>({dirX:t<e?"right":"left",dirY:r<o?"bottom":"top"}),y=t=>({x:t.left+t.width/2,y:t.top+t.height/2});function E(t,e){const r=t.left+t.width/2,o=t.top+t.height/2;return{x:e.left+e.width/2-r,y:e.top+e.height/2-o}}function b(t,e){if(!u(t,e))return{inDir:null,dirX:null,dirY:null,depthX:0,depthY:0};const{overlapLeft:r,overlapRight:o,overlapTop:n,overlapBottom:i}=h(t,e),{dirX:s,dirY:l}=g({overlapLeft:r,overlapRight:o,overlapTop:n,overlapBottom:i}),a=Math.min(r,o),c=Math.min(n,i);let p;return p=a<c?s:l,{inDir:p,dirX:s,dirY:l,depthX:a,depthY:c}}function w(t,e){const r=u(t,e),o={in:null,x:null,y:null},n={y:null,x:null},i={top:0,bottom:0,left:0,right:0},{overlapLeft:s,overlapRight:l,overlapTop:a,overlapBottom:c}=h(e,t);i.top=a,i.bottom=c,i.left=s,i.right=l;const p=Object.entries(i).filter(([,t])=>t>0).sort((t,e)=>t[1]-e[1]),{dirX:m,dirY:d}=g({overlapLeft:l,overlapRight:s,overlapTop:c,overlapBottom:a});return o.y=d,o.x=m,i.bottom<0?n.y="bottom":i.top<0&&(n.y="top"),i.left<0?n.x="left":i.right<0&&(n.x="right"),o.in=r?i.top===i.bottom&&i.bottom===i.left&&i.left===i.right?"center":p.length?p[0][0]:"top":null,{dirs:o,depth:i,isNeg:n}}const{areElsColliding:T,areElsPerfColliding:v,areElsCollTop:_,areElsCollBottom:C,areElsCollLeft:S,areElsCollRight:A}=r,x=new WeakMap,k=new WeakMap,L={top:new WeakMap,bottom:new WeakMap,left:new WeakMap,right:new WeakMap};class W{static Utils={...r};static createElement(t,e){if("string"!=typeof t)throw new TypeError("[TinyHtml] createElement(): The tagName must be a string.");if(void 0!==e&&"object"!=typeof e)throw new TypeError("[TinyHtml] createElement(): The ops must be a object.");return new W(document.createElement(t,e))}static createTextNode(t){if("string"!=typeof t)throw new TypeError("[TinyHtml] createTextNode(): The value must be a string.");return new W(document.createTextNode(t))}static createElementFromHTML(t){const e=document.createElement("template");if(!(t=t.trim()).startsWith("<"))return W.createTextNode(t);if(e.innerHTML=t,!(e.content.firstChild instanceof Element))throw new Error("");return new W(e.content.firstChild)}static query(t,e=document){const r=e.querySelector(t);return r?new W(r):null}querySelector(t){return W.query(t,W._preElem(this,"query"))}static queryAll(t,e=document){const r=e.querySelectorAll(t);return W.toTinyElm([...r])}querySelectorAll(t){return W.queryAll(t,W._preElem(this,"queryAll"))}static getById(t){const e=document.getElementById(t);return e?new W(e):null}static getByClassName(t,e=document){const r=e.getElementsByClassName(t);return W.toTinyElm([...r])}getElementsByClassName(t){return W.getByClassName(t,W._preElem(this,"getByClassName"))}static getByName(t){const e=document.getElementsByName(t);return W.toTinyElm([...e])}static getByTagNameNS(t,e="http://www.w3.org/1999/xhtml",r=document){const o=r.getElementsByTagNameNS(e,t);return W.toTinyElm([...o])}getElementsByTagNameNS(t,e="http://www.w3.org/1999/xhtml"){return W.getByTagNameNS(t,e,W._preElem(this,"getByTagNameNS"))}get(){return this.#t}_getElement(t){if(!(this.#t instanceof Element||this.#t instanceof Window||this.#t instanceof Document))throw new Error(`[TinyHtml] Invalid Element in ${t}().`);return this.#t}static _preElemsTemplate(t,e,r,o){const n=t=>t.map(t=>{const n=t instanceof W?t._getElement(e):t;let i=!1;for(const t of r)if(n instanceof t){i=!0;break}if(!i)throw new Error(`[TinyHtml] Invalid element of the list "${o.join(",")}" in ${e}().`);return n});return Array.isArray(t)?n(t):n([t])}static _preElemTemplate(t,e,r,o,n=!1){const i=t=>{const i=t[0];let s=i instanceof W?i._getElement(e):i,l=!1;for(const t of r)if(s instanceof t){l=!0;break}if(n&&null==s&&(s=null,l=!0),!l)throw new Error(`[TinyHtml] Invalid element of the list "${o.join(",")}" in ${e}().`);return s};if(!Array.isArray(t))return i([t]);if(t.length>1)throw new Error(`[TinyHtml] Invalid element amount in ${e}() (Received ${t.length}/1).`);return i(t)}static _preElems(t,e){return W._preElemsTemplate(t,e,[Element],["Element"])}static _preElem(t,e){return W._preElemTemplate(t,e,[Element],["Element"])}static _preNodeElems(t,e){return W._preElemsTemplate(t,e,[Node],["Node"])}static _preNodeElem(t,e){return W._preElemTemplate(t,e,[Node],["Node"])}static _preNodeElemWithNull(t,e){return W._preElemTemplate(t,e,[Node],["Node"],!0)}static _preHtmlElems(t,e){return W._preElemsTemplate(t,e,[HTMLElement],["HTMLElement"])}static _preHtmlElem(t,e){return W._preElemTemplate(t,e,[HTMLElement],["HTMLElement"])}static _preInputElems(t,e){return W._preElemsTemplate(t,e,[HTMLInputElement,HTMLSelectElement,HTMLTextAreaElement,HTMLOptionElement],["HTMLInputElement","HTMLSelectElement","HTMLTextAreaElement","HTMLOptionElement"])}static _preInputElem(t,e){return W._preElemTemplate(t,e,[HTMLInputElement,HTMLSelectElement,HTMLTextAreaElement,HTMLOptionElement],["HTMLInputElement","HTMLSelectElement","HTMLTextAreaElement","HTMLOptionElement"])}static _preEventTargetElems(t,e){return W._preElemsTemplate(t,e,[EventTarget],["EventTarget"])}static _preEventTargetElem(t,e){return W._preElemTemplate(t,e,[EventTarget],["EventTarget"])}static _preElemsAndWindow(t,e){return W._preElemsTemplate(t,e,[Element,Window],["Element","Window"])}static _preElemAndWindow(t,e){return W._preElemTemplate(t,e,[Element,Window],["Element","Window"])}static _preElemsAndWinAndDoc(t,e){return W._preElemsTemplate(t,e,[Element,Window,Document],["Element","Window","Document"]).map(t=>t instanceof Document?t.documentElement:t)}static _preElemAndWinAndDoc(t,e){const r=W._preElemTemplate(t,e,[Element,Window,Document],["Element","Window","Document"]);return r instanceof Document?r.documentElement:r}static _preElemsWithDoc(t,e){return W._preElemsTemplate(t,e,[Element,Document],["Element","Document"])}static _preElemWithDoc(t,e){return W._preElemTemplate(t,e,[Element,Document],["Element","Document"])}static toTinyElm(t){const e=t=>t.map(t=>t instanceof W?t:new W(t));return Array.isArray(t)?e(t):e([t])}static fromTinyElm(t){const e=t=>t.map(t=>t instanceof W?t._getElement("fromTinyElm"):t);return Array.isArray(t)?e(t):e([t])}static winnow(t,e,r,o=!1){if("boolean"!=typeof o)throw new TypeError('The "not" must be a boolean.');if("function"==typeof e)return W._preElems(t,r).filter((t,r)=>!!e.call(t,r,t)!==o);if(e instanceof Element)return W._preElems(t,r).filter(t=>t===e!==o);if(Array.isArray(e)||"string"!=typeof e&&null!=e.length)return W._preElems(t,r).filter(t=>e.includes(t)!==o);let n=e;return o&&(n=`:not(${n})`),W._preElems(t,r).filter(t=>1===t.nodeType&&t.matches(n))}static filter(t,e,r=!1){return r&&(e=`:not(${e})`),W._preElems(t,"filter").filter(t=>1===t.nodeType&&t.matches(e))}static filterOnly(t,e){return W.winnow(t,e,"filterOnly",!1)}static not(t,e){return W.winnow(t,e,"not",!0)}not(t){return W.not(this,t)}static find(t,e){const r=[];for(const o of W._preElems(t,"find"))r.push(...o.querySelectorAll(e));return[...new Set(r)]}find(t){return W.find(this,t)}static is(t,e){return W.winnow(t,e,"is",!1).length>0}is(t){return W.is(this,t)}static has(t,e){const r="string"==typeof e?[...document.querySelectorAll(e)]:W._preElems(e,"has");return W._preElems(t,"has").filter(t=>r.some(e=>t&&t.contains(e)))}has(t){return W.has(this,t).length>0}static closest(t,e,r){const o=[];for(const n of W._preElems(t,"closest")){let t=n;for(;t&&t!==r;){if(1===t.nodeType&&("string"==typeof e?t.matches(e):t===e)){o.push(t);break}t=t.parentElement}}return[...new Set(o)]}closest(t,e){return W.closest(this,t,e)}static isSameDom(t,e){return W._preNodeElem(t,"isSameDom")===W._preNodeElem(e,"isSameDom")}isSameDom(t){return W.isSameDom(this,t)}_data={};static _dataSelector={public:(t,e)=>{const r=W._preElem(e,t);let o=k.get(r);return o||(o={},k.set(r,o)),o},private:(t,e)=>{if(!(e instanceof W))throw new Error(`Element must be a TinyHtml instance to execute ${t}().`);return e._data}};static data(t,e,r=!1){const o=W._dataSelector[r?"private":"public"]("data",t);if(null==e)return{...o};if("string"!=typeof e)throw new TypeError("The key must be a string.");return o.hasOwnProperty(e)?o[e]:void 0}data(t,e){return W.data(this,t,e)}static setData(t,e,r,o=!1){const n=W._dataSelector[o?"private":"public"]("setData",t);if("string"!=typeof e)throw new TypeError("The key must be a string.");return n[e]=r,t}setData(t,e,r=!1){return W.setData(this,t,e,r)}static _getSibling(t,e,r){let o=W._preNodeElemWithNull(t,r);for(;o&&(o=o[e])&&1!==o.nodeType;);return o instanceof Node?o:null}static _getSiblings(t,e){let r=t;const o=[];for(;r;r=r.nextSibling)1===r.nodeType&&r!==e&&o.push(r);return o}static domDir(t,e,r,o="domDir"){if("string"!=typeof e)throw new TypeError('The "direction" must be a string.');let n=W._preNodeElemWithNull(t,o);const i=[];for(;n&&(n=n[e]);)if(1===n.nodeType){if(r&&("string"==typeof r?n.matches(r):n===r))break;i.push(n)}return i}static parent(t){let e=W._preNodeElemWithNull(t,"parent");const r=e?e.parentNode:null;return r&&11!==r.nodeType?r:null}parent(){return W.parent(this)}static parents(t,e){return W.domDir(t,"parentNode",e,"parents")}parents(t){return W.parents(this,t)}static next(t){return W._getSibling(t,"nextSibling","next")}next(){return W.next(this)}static prev(t){return W._getSibling(t,"previousSibling","prev")}prev(){return W.prev(this)}static nextAll(t){return W.domDir(t,"nextSibling",void 0,"nextAll")}nextAll(){return W.nextAll(this)}static prevAll(t){return W.domDir(t,"previousSibling",void 0,"prevAll")}prevAll(){return W.prevAll(this)}static nextUntil(t,e){return W.domDir(t,"nextSibling",e,"nextUtil")}nextUntil(t){return W.nextUntil(this,t)}static prevUntil(t,e){return W.domDir(t,"previousSibling",e,"prevUtil")}prevUntil(t){return W.prevUntil(this,t)}static siblings(t){const e=W._preNodeElemWithNull(t,"siblings");return W._getSiblings(e&&e.parentNode?e.parentNode.firstChild:null,e)}siblings(){return W.siblings(this)}static children(t){const e=W._preNodeElemWithNull(t,"children");return W._getSiblings(e?e.firstChild:null)}children(){return W.children(this)}static contents(t){const e=W._preNodeElemWithNull(t,"contents");return e instanceof HTMLIFrameElement&&null!=e.contentDocument&&Object.getPrototypeOf(e.contentDocument)?[e.contentDocument]:e instanceof HTMLTemplateElement?Array.from((e.content||e).childNodes):e?Array.from(e.childNodes):[]}contents(){return W.contents(this)}static clone(t,e=!0){if("boolean"!=typeof e)throw new TypeError('The "deep" must be a boolean.');return W._preNodeElems(t,"clone").map(t=>t.cloneNode(e))}clone(t){return W.clone(this,t)[0]}static _appendChecker(t,...e){const r=[],o=[...e];for(const e in o)"string"!=typeof o[e]?r.push(W._preNodeElem(o[e],t)):r.push(o[e]);return r}static append(t,...e){return W._preElem(t,"append").append(...W._appendChecker("append",...e)),t}append(...t){return W.append(this,...t)}static prepend(t,...e){return W._preElem(t,"prepend").prepend(...W._appendChecker("prepend",...e)),t}prepend(...t){return W.prepend(this,...t)}static before(t,...e){return W._preElem(t,"before").before(...W._appendChecker("before",...e)),t}before(...t){return W.before(this,...t)}static after(t,...e){return W._preElem(t,"after").after(...W._appendChecker("after",...e)),t}after(...t){return W.after(this,...t)}static replaceWith(t,...e){return W._preElem(t,"replaceWith").replaceWith(...W._appendChecker("replaceWith",...e)),t}replaceWith(...t){return W.replaceWith(this,...t)}static appendTo(t,e){const r=W._preNodeElems(t,"appendTo"),o=W._preNodeElems(e,"appendTo");return o.forEach((t,e)=>{r.forEach(r=>t.appendChild(e===o.length-1?r:r.cloneNode(!0)))}),t}appendTo(t){return W.appendTo(this,t)}static prependTo(t,e){const r=W._preElems(t,"prependTo"),o=W._preElems(e,"prependTo");return o.forEach((t,e)=>{r.slice().reverse().forEach(r=>t.prepend(e===o.length-1?r:r.cloneNode(!0)))}),t}prependTo(t){return W.prependTo(this,t)}static insertBefore(t,e,r=null){const o=W._preNodeElem(t,"insertBefore"),n=W._preNodeElem(e,"insertBefore"),i=W._preNodeElemWithNull(r,"insertBefore");if(!n.parentNode)throw new Error("");return n.parentNode.insertBefore(o,i||n),t}insertBefore(t,e){return W.insertBefore(this,t,e)}static insertAfter(t,e,r=null){const o=W._preNodeElem(t,"insertAfter"),n=W._preNodeElem(e,"insertBefore"),i=W._preNodeElemWithNull(r,"insertBefore");if(!n.parentNode)throw new Error("");return n.parentNode.insertBefore(o,i||n.nextSibling),t}insertAfter(t,e){return W.insertAfter(this,t,e)}static replaceAll(t,e){const r=W._preNodeElems(t,"replaceAll"),o=W._preNodeElems(e,"replaceAll");return o.forEach((t,e)=>{const n=t.parentNode;r.forEach(r=>{n&&n.replaceChild(e===o.length-1?r:r.cloneNode(!0),t)})}),t}replaceAll(t){return W.replaceAll(this,t)}#t;constructor(t){if(t instanceof W)throw new Error("[TinyHtml] You are trying to put a TinyHtml inside another TinyHtml in constructor.");if(!(t instanceof Element||t instanceof Window||t instanceof Document||t instanceof Text))throw new Error("[TinyHtml] Invalid Target in constructor.");this.#t=t}static isWindow(t){return null!=t&&t===t.window}static css(t){const e=W._preElem(t,"css");return window.getComputedStyle(e)}css(){return W.css(this)}static cssString(t,e){const r=W._preElem(t,"cssString");if("string"!=typeof e)throw new TypeError("The prop must be a string.");const o=window.getComputedStyle(r)[e];return"string"==typeof o?o:"number"==typeof o?o.toString():null}cssString(t){return W.cssString(this,t)}static cssList(t,e){const r=W._preElem(t,"cssList");if(!Array.isArray(e))throw new TypeError("The prop must be an array of strings.");const o=window.getComputedStyle(r),n={};for(const t of e)void 0!==t&&(n[t]=o.getPropertyValue(t));return n}cssList(t){return W.cssList(this,t)}static cssFloat(t,e){const r=W._preElem(t,"cssFloat");if("string"!=typeof e)throw new TypeError("The prop must be a string.");const o=window.getComputedStyle(r)[e];return parseFloat(o)||0}cssFloat(t){return W.cssFloat(this,t)}static cssFloats(t,e){const r=W._preElem(t,"cssFloats");if(!Array.isArray(e))throw new TypeError("The prop must be an array of strings.");const o=window.getComputedStyle(r),n={};for(const t of e)n[t]=parseFloat(o[t])||0;return n}cssFloats(t){return W.cssFloats(this,t)}static#e={alignContent:"align-content",alignItems:"align-items",alignSelf:"align-self",animationDelay:"animation-delay",animationDirection:"animation-direction",animationDuration:"animation-duration",animationFillMode:"animation-fill-mode",animationIterationCount:"animation-iteration-count",animationName:"animation-name",animationPlayState:"animation-play-state",animationTimingFunction:"animation-timing-function",backfaceVisibility:"backface-visibility",backgroundAttachment:"background-attachment",backgroundBlendMode:"background-blend-mode",backgroundClip:"background-clip",backgroundColor:"background-color",backgroundImage:"background-image",backgroundOrigin:"background-origin",backgroundPosition:"background-position",backgroundRepeat:"background-repeat",backgroundSize:"background-size",borderBottom:"border-bottom",borderBottomColor:"border-bottom-color",borderBottomLeftRadius:"border-bottom-left-radius",borderBottomRightRadius:"border-bottom-right-radius",borderBottomStyle:"border-bottom-style",borderBottomWidth:"border-bottom-width",borderCollapse:"border-collapse",borderColor:"border-color",borderImage:"border-image",borderImageOutset:"border-image-outset",borderImageRepeat:"border-image-repeat",borderImageSlice:"border-image-slice",borderImageSource:"border-image-source",borderImageWidth:"border-image-width",borderLeft:"border-left",borderLeftColor:"border-left-color",borderLeftStyle:"border-left-style",borderLeftWidth:"border-left-width",borderRadius:"border-radius",borderRight:"border-right",borderRightColor:"border-right-color",borderRightStyle:"border-right-style",borderRightWidth:"border-right-width",borderSpacing:"border-spacing",borderStyle:"border-style",borderTop:"border-top",borderTopColor:"border-top-color",borderTopLeftRadius:"border-top-left-radius",borderTopRightRadius:"border-top-right-radius",borderTopStyle:"border-top-style",borderTopWidth:"border-top-width",borderWidth:"border-width",boxDecorationBreak:"box-decoration-break",boxShadow:"box-shadow",boxSizing:"box-sizing",breakAfter:"break-after",breakBefore:"break-before",breakInside:"break-inside",captionSide:"caption-side",caretColor:"caret-color",clipPath:"clip-path",columnCount:"column-count",columnFill:"column-fill",columnGap:"column-gap",columnRule:"column-rule",columnRuleColor:"column-rule-color",columnRuleStyle:"column-rule-style",columnRuleWidth:"column-rule-width",columnSpan:"column-span",columnWidth:"column-width",counterIncrement:"counter-increment",counterReset:"counter-reset",emptyCells:"empty-cells",flexBasis:"flex-basis",flexDirection:"flex-direction",flexFlow:"flex-flow",flexGrow:"flex-grow",flexShrink:"flex-shrink",flexWrap:"flex-wrap",fontFamily:"font-family",fontFeatureSettings:"font-feature-settings",fontKerning:"font-kerning",fontLanguageOverride:"font-language-override",fontSize:"font-size",fontSizeAdjust:"font-size-adjust",fontStretch:"font-stretch",fontStyle:"font-style",fontSynthesis:"font-synthesis",fontVariant:"font-variant",fontVariantAlternates:"font-variant-alternates",fontVariantCaps:"font-variant-caps",fontVariantEastAsian:"font-variant-east-asian",fontVariantLigatures:"font-variant-ligatures",fontVariantNumeric:"font-variant-numeric",fontVariantPosition:"font-variant-position",fontWeight:"font-weight",gridArea:"grid-area",gridAutoColumns:"grid-auto-columns",gridAutoFlow:"grid-auto-flow",gridAutoRows:"grid-auto-rows",gridColumn:"grid-column",gridColumnEnd:"grid-column-end",gridColumnGap:"grid-column-gap",gridColumnStart:"grid-column-start",gridGap:"grid-gap",gridRow:"grid-row",gridRowEnd:"grid-row-end",gridRowGap:"grid-row-gap",gridRowStart:"grid-row-start",gridTemplate:"grid-template",gridTemplateAreas:"grid-template-areas",gridTemplateColumns:"grid-template-columns",gridTemplateRows:"grid-template-rows",imageRendering:"image-rendering",justifyContent:"justify-content",letterSpacing:"letter-spacing",lineBreak:"line-break",lineHeight:"line-height",listStyle:"list-style",listStyleImage:"list-style-image",listStylePosition:"list-style-position",listStyleType:"list-style-type",marginBottom:"margin-bottom",marginLeft:"margin-left",marginRight:"margin-right",marginTop:"margin-top",maskClip:"mask-clip",maskComposite:"mask-composite",maskImage:"mask-image",maskMode:"mask-mode",maskOrigin:"mask-origin",maskPosition:"mask-position",maskRepeat:"mask-repeat",maskSize:"mask-size",maskType:"mask-type",maxHeight:"max-height",maxWidth:"max-width",minHeight:"min-height",minWidth:"min-width",mixBlendMode:"mix-blend-mode",objectFit:"object-fit",objectPosition:"object-position",offsetAnchor:"offset-anchor",offsetDistance:"offset-distance",offsetPath:"offset-path",offsetRotate:"offset-rotate",outlineColor:"outline-color",outlineOffset:"outline-offset",outlineStyle:"outline-style",outlineWidth:"outline-width",overflowAnchor:"overflow-anchor",overflowWrap:"overflow-wrap",overflowX:"overflow-x",overflowY:"overflow-y",paddingBottom:"padding-bottom",paddingLeft:"padding-left",paddingRight:"padding-right",paddingTop:"padding-top",pageBreakAfter:"page-break-after",pageBreakBefore:"page-break-before",pageBreakInside:"page-break-inside",perspectiveOrigin:"perspective-origin",placeContent:"place-content",placeItems:"place-items",placeSelf:"place-self",pointerEvents:"pointer-events",rowGap:"row-gap",scrollBehavior:"scroll-behavior",scrollMargin:"scroll-margin",scrollMarginBlock:"scroll-margin-block",scrollMarginBlockEnd:"scroll-margin-block-end",scrollMarginBlockStart:"scroll-margin-block-start",scrollMarginBottom:"scroll-margin-bottom",scrollMarginInline:"scroll-margin-inline",scrollMarginInlineEnd:"scroll-margin-inline-end",scrollMarginInlineStart:"scroll-margin-inline-start",scrollMarginLeft:"scroll-margin-left",scrollMarginRight:"scroll-margin-right",scrollMarginTop:"scroll-margin-top",scrollPadding:"scroll-padding",scrollPaddingBlock:"scroll-padding-block",scrollPaddingBlockEnd:"scroll-padding-block-end",scrollPaddingBlockStart:"scroll-padding-block-start",scrollPaddingBottom:"scroll-padding-bottom",scrollPaddingInline:"scroll-padding-inline",scrollPaddingInlineEnd:"scroll-padding-inline-end",scrollPaddingInlineStart:"scroll-padding-inline-start",scrollPaddingLeft:"scroll-padding-left",scrollPaddingRight:"scroll-padding-right",scrollPaddingTop:"scroll-padding-top",scrollSnapAlign:"scroll-snap-align",scrollSnapStop:"scroll-snap-stop",scrollSnapType:"scroll-snap-type",shapeImageThreshold:"shape-image-threshold",shapeMargin:"shape-margin",shapeOutside:"shape-outside",tabSize:"tab-size",tableLayout:"table-layout",textAlign:"text-align",textAlignLast:"text-align-last",textCombineUpright:"text-combine-upright",textDecoration:"text-decoration",textDecorationColor:"text-decoration-color",textDecorationLine:"text-decoration-line",textDecorationStyle:"text-decoration-style",textIndent:"text-indent",textJustify:"text-justify",textOrientation:"text-orientation",textOverflow:"text-overflow",textShadow:"text-shadow",textTransform:"text-transform",transformBox:"transform-box",transformOrigin:"transform-origin",transformStyle:"transform-style",transitionDelay:"transition-delay",transitionDuration:"transition-duration",transitionProperty:"transition-property",transitionTimingFunction:"transition-timing-function",unicodeBidi:"unicode-bidi",userSelect:"user-select",verticalAlign:"vertical-align",whiteSpace:"white-space",willChange:"will-change",wordBreak:"word-break",wordSpacing:"word-spacing",wordWrap:"word-wrap",writingMode:"writing-mode",zIndex:"z-index",WebkitTransform:"-webkit-transform",WebkitTransition:"-webkit-transition",WebkitBoxShadow:"-webkit-box-shadow",MozBoxShadow:"-moz-box-shadow",MozTransform:"-moz-transform",MozTransition:"-moz-transition",msTransform:"-ms-transform",msTransition:"-ms-transition"};static cssPropAliases=new Proxy(W.#e,{set:(t,e,r)=>(t[e]=r,W.cssPropRevAliases[r]=e,!0)});static cssPropRevAliases=Object.fromEntries(Object.entries(W.#e).map(([t,e])=>[e,t]));static toStyleKc(t){return"string"==typeof W.cssPropAliases[t]?W.cssPropAliases[t]:t}static toStyleCc(t){return"string"==typeof W.cssPropRevAliases[t]?W.cssPropRevAliases[t]:t}static setStyle(t,e,r=null){return W._preHtmlElems(t,"setStyle").forEach(t=>{if("object"==typeof e)for(const[r,o]of Object.entries(e))t.style.setProperty(W.toStyleKc(r),"string"==typeof o?o:"number"==typeof o?`${o}px`:String(o));else t.style.setProperty(W.toStyleKc(e),r)}),t}setStyle(t,e){return W.setStyle(this,t,e)}static getStyle(t,e){return W._preHtmlElem(t,"getStyle").style.getPropertyValue(W.toStyleKc(e))}getStyle(t){return W.getStyle(this,t)}static style(t,{camelCase:e=!1,rawAttr:r=!1}={}){if("boolean"!=typeof e)throw new TypeError('"camelCase" must be a boolean. Received: '+typeof e);if("boolean"!=typeof r)throw new TypeError('"rawAttr" must be a boolean. Received: '+typeof r);const o=W._preHtmlElem(t,"style"),n={};if(r){const t=(o.getAttribute("style")||"").split(";");for(const r of t){const[t,o]=r.split(":");if(!t||!o)continue;const i=t.trim(),s=o.trim();n[e?W.toStyleCc(i):i]=s}}else{const t=o.style;for(let r=0;r<t.length;r++){const o=t[r],i=t.getPropertyValue(o);n[e?W.toStyleCc(o):o]=i}}return n}style(t){return W.style(this,t)}static removeStyle(t,e){return W._preHtmlElems(t,"removeStyle").forEach(t=>{if(Array.isArray(e))for(const r of e)t.style.removeProperty(W.toStyleKc(r));else t.style.removeProperty(W.toStyleKc(e))}),t}removeStyle(t){return W.removeStyle(this,t)}static toggleStyle(t,e,r,o){return W._preHtmlElems(t,"toggleStyle").forEach(t=>{const n=W.getStyle(t,e).trim()===W.toStyleKc(r)?o:r;W.setStyle(t,e,n)}),t}toggleStyle(t,e,r){return W.toggleStyle(this,t,e,r)}static clearStyle(t){return W._preElems(t,"clearStyle").forEach(t=>t.removeAttribute("style")),t}clearStyle(){return W.clearStyle(this)}static focus(t){return W._preHtmlElem(t,"focus").focus(),t}focus(){return W.focus(this)}static blur(t){return W._preHtmlElem(t,"blur").blur(),t}blur(){return W.blur(this)}static boolCheck(t){return void 0!==t&&("true"===t||"1"===t||!0===t||"on"===t||"number"==typeof t&&t>0)}static setWinScrollTop(t){if("number"!=typeof t)throw new TypeError("The value must be a number.");W.setScrollTop(window,t)}static setWinScrollLeft(t){if("number"!=typeof t)throw new TypeError("The value must be a number.");W.setScrollLeft(window,t)}static winScrollTop(){return window.scrollY||document.documentElement.scrollTop}static winScrollLeft(){return window.scrollX||document.documentElement.scrollLeft}static winInnerHeight(){return window.innerHeight||document.documentElement.clientHeight}static winInnerWidth(){return window.innerWidth||document.documentElement.clientWidth}static isPageTop(){return 0===window.scrollY}static isPageBottom(){return window.innerHeight+window.scrollY>=document.body.offsetHeight}static getDimension(t,e,r="content"){const o=W._preElemAndWinAndDoc(t,"getDimension");if("string"!=typeof e)throw new TypeError("The type must be a string.");if("string"!=typeof r)throw new TypeError("The extra must be a string.");const n="width"===e?"Width":"Height";if(W.isWindow(o))return"margin"===r?o["inner"+n]:o.document.documentElement["client"+n];const i=o;if(9===i.nodeType){const t=i.documentElement;return Math.max(i.body["scroll"+n],t["scroll"+n],i.body["offset"+n],t["offset"+n],t["client"+n])}let s=i.getBoundingClientRect()[e];function l(t){return"width"===e?W.cssFloat(i,t+"Left")+W.cssFloat(i,t+"Right"):W.cssFloat(i,t+"Top")+W.cssFloat(i,t+"Bottom")}switch(r){case"content":s-=l("padding"),s-=l("border");break;case"padding":s-=l("border");break;case"border":break;case"margin":s+=l("margin")}return s}getDimension(t,e){return W.getDimension(this,t,e)}static setHeight(t,e){const r=W._preHtmlElem(t,"setHeight");if("number"!=typeof e&&"string"!=typeof e)throw new TypeError("The value must be a string or number.");return r.style.height="number"==typeof e?`${e}px`:e,t}setHeight(t){return W.setHeight(this,t)}static setWidth(t,e){const r=W._preHtmlElem(t,"setWidth");if("number"!=typeof e&&"string"!=typeof e)throw new TypeError("The value must be a string or number.");return r.style.width="number"==typeof e?`${e}px`:e,t}setWidth(t){return W.setWidth(this,t)}static height(t){const e=W._preElemAndWinAndDoc(t,"height");return W.getDimension(e,"height","content")}height(){return W.height(this)}static width(t){const e=W._preElemAndWinAndDoc(t,"width");return W.getDimension(e,"width","content")}width(){return W.width(this)}static innerHeight(t){const e=W._preElemAndWinAndDoc(t,"innerHeight");return W.getDimension(e,"height","padding")}innerHeight(){return W.innerHeight(this)}static innerWidth(t){const e=W._preElemAndWinAndDoc(t,"innerWidth");return W.getDimension(e,"width","padding")}innerWidth(){return W.innerWidth(this)}static outerHeight(t,e=!1){if("boolean"!=typeof e)throw new TypeError('The "includeMargin" must be a boolean.');const r=W._preElemAndWinAndDoc(t,"outerHeight");return W.getDimension(r,"height",e?"margin":"border")}outerHeight(t){return W.outerHeight(this,t)}static outerWidth(t,e=!1){if("boolean"!=typeof e)throw new TypeError('The "includeMargin" must be a boolean.');const r=W._preElemAndWinAndDoc(t,"outerWidth");return W.getDimension(r,"width",e?"margin":"border")}outerWidth(t){return W.outerWidth(this,t)}static animate(t,e,r){return W._preElems(t,"animate").forEach(t=>t.animate(e,r)),t}animate(t,e){return W.animate(this,t,e)}static offset(t){const e=W._preElem(t,"offset").getBoundingClientRect(),r=window.scrollY||document.documentElement.scrollTop,o=window.scrollX||document.documentElement.scrollLeft;return{top:e.top+r,left:e.left+o}}offset(){return W.offset(this)}static position(t){const e=W._preHtmlElem(t,"position");let r,o,n={top:0,left:0};if("fixed"===window.getComputedStyle(e).position)o=e.getBoundingClientRect();else{o=W.offset(e),r=e.offsetParent||document.documentElement;const{position:t}=window.getComputedStyle(r);for(;r instanceof HTMLElement&&(r===document.body||r===document.documentElement)&&"static"===t;)r=r.parentNode;if(r instanceof HTMLElement&&r!==e&&1===r.nodeType){const{borderTopWidth:t,borderLeftWidth:e}=W.cssFloats(r,["borderTopWidth","borderLeftWidth"]);n=W.offset(r),n.top+=t,n.left+=e}}return{top:o.top-n.top-W.cssFloat(e,"marginTop"),left:o.left-n.left-W.cssFloat(e,"marginLeft")}}position(){return W.position(this)}static offsetParent(t){let e=W._preHtmlElem(t,"offsetParent").offsetParent;for(;e instanceof HTMLElement&&"static"===window.getComputedStyle(e).position;)e=e.offsetParent;return e instanceof HTMLElement?e:document.documentElement}offsetParent(){return W.offsetParent(this)}static scrollTop(t){const e=W._preElemAndWindow(t,"scrollTop");return W.isWindow(e)?e.pageYOffset:9===e.nodeType?e.defaultView.pageYOffset:e.scrollTop}scrollTop(){return W.scrollTop(this)}static scrollLeft(t){const e=W._preElemAndWindow(t,"scrollLeft");return W.isWindow(e)?e.pageXOffset:9===e.nodeType?e.defaultView.pageXOffset:e.scrollLeft}scrollLeft(){return W.scrollLeft(this)}static easings={linear:t=>t,easeInQuad:t=>t*t,easeOutQuad:t=>t*(2-t),easeInOutQuad:t=>t<.5?2*t*t:(4-2*t)*t-1,easeInCubic:t=>t*t*t,easeOutCubic:t=>--t*t*t+1,easeInOutCubic:t=>t<.5?4*t*t*t:(t-1)*(2*t-2)*(2*t-2)+1};static scrollToXY(t,{targetX:e,targetY:r,duration:o,easing:n,onAnimation:i}={}){if(void 0!==e&&"number"!=typeof e)throw new TypeError("`targetX` must be a number if provided.");if(void 0!==r&&"number"!=typeof r)throw new TypeError("`targetY` must be a number if provided.");if(void 0!==o&&"number"!=typeof o)throw new TypeError("`duration` must be a number if provided.");if(void 0!==n&&"string"!=typeof n)throw new TypeError("`easing` must be a string if provided.");if(void 0!==n&&"function"!=typeof W.easings[n])throw new TypeError(`Unknown easing function: "${n}".`);if(void 0!==i&&"function"!=typeof i)throw new TypeError("`onAnimation` must be a function if provided.");const s=(t,e,r,o)=>{if(t instanceof Window)window.scrollTo(e,r);else if(9===t.nodeType)t.defaultView.scrollTo(e,r);else{const o=t instanceof Window?window.scrollX:t.scrollLeft,n=t instanceof Window?window.scrollY:t.scrollTop;o!==e&&(t.scrollLeft=e),n!==r&&(t.scrollTop=r)}"function"==typeof i&&i({x:e,y:r,isComplete:o>=1,time:o})};return W._preElemsAndWindow(t,"scrollToXY").forEach(t=>{const i=t instanceof Window?window.scrollX:t.scrollLeft,l=t instanceof Window?window.scrollY:t.scrollTop,a=e??i,c=r??l,p=a-i,m=c-l,u="string"==typeof n&&W.easings[n]||null;if("number"!=typeof o||"function"!=typeof u)return s(t,a,c,1);const d=performance.now(),f=o??0;requestAnimationFrame(function e(r){if("function"!=typeof u)return;const o=Math.min(1,(r-d)/f),n=u(o);s(t,i+p*n,l+m*n,o),o<1&&requestAnimationFrame(e)})}),t}scrollToXY({targetX:t,targetY:e,duration:r,easing:o,onAnimation:n}={}){return W.scrollToXY(this,{targetX:t,targetY:e,duration:r,easing:o,onAnimation:n})}static setScrollTop(t,e){if("number"!=typeof e)throw new TypeError("ScrollTop value must be a number.");return W.scrollToXY(t,{targetY:e})}setScrollTop(t){return W.setScrollTop(this,t)}static setScrollLeft(t,e){if("number"!=typeof e)throw new TypeError("ScrollLeft value must be a number.");return W.scrollToXY(t,{targetX:e})}setScrollLeft(t){return W.setScrollLeft(this,t)}static borderWidth(t){const e=W._preElem(t,"borderWidth"),{borderLeftWidth:r,borderRightWidth:o,borderTopWidth:n,borderBottomWidth:i}=W.cssFloats(e,["borderLeftWidth","borderRightWidth","borderTopWidth","borderBottomWidth"]);return{x:r+o,y:n+i,left:r,right:o,top:n,bottom:i}}borderWidth(){return W.borderWidth(this)}static border(t){const e=W._preElem(t,"border"),{borderLeft:r,borderRight:o,borderTop:n,borderBottom:i}=W.cssFloats(e,["borderLeft","borderRight","borderTop","borderBottom"]);return{x:r+o,y:n+i,left:r,right:o,top:n,bottom:i}}border(){return W.border(this)}static margin(t){const e=W._preElem(t,"margin"),{marginLeft:r,marginRight:o,marginTop:n,marginBottom:i}=W.cssFloats(e,["marginLeft","marginRight","marginTop","marginBottom"]);return{x:r+o,y:n+i,left:r,right:o,top:n,bottom:i}}margin(){return W.margin(this)}static padding(t){const e=W._preElem(t,"padding"),{paddingLeft:r,paddingRight:o,paddingTop:n,paddingBottom:i}=W.cssFloats(e,["paddingLeft","paddingRight","paddingTop","paddingBottom"]);return{x:r+o,y:n+i,left:r,right:o,top:n,bottom:i}}padding(){return W.padding(this)}static addClass(t,...e){return W._preElems(t,"addClass").forEach(t=>t.classList.add(...e)),t}addClass(...t){return W.addClass(this,...t)}static removeClass(t,...e){return W._preElems(t,"removeClass").forEach(t=>t.classList.remove(...e)),t}removeClass(...t){return W.removeClass(this,...t)}static replaceClass(t,e,r){if("string"!=typeof e)throw new TypeError('The "token" parameter must be a string.');if("string"!=typeof r)throw new TypeError('The "newToken" parameter must be a string.');const o=[];return W._preElems(t,"replaceClass").forEach(t=>o.push(t.classList.replace(e,r))),o}replaceClass(t,e){return W.replaceClass(this,t,e)[0]}static classItem(t,e){const r=W._preElem(t,"classItem");if("number"!=typeof e)throw new TypeError('The "index" parameter must be a number.');return r.classList.item(e)}classItem(t){return W.classItem(this,t)}static toggleClass(t,e,r){if("string"!=typeof e)throw new TypeError('The "token" parameter must be a string.');if(void 0!==r&&"boolean"!=typeof r)throw new TypeError('The "force" parameter must be a boolean.');const o=[];return W._preElems(t,"toggleClass").forEach(t=>o.push(t.classList.toggle(e,r))),o}toggleClass(t,e){return W.toggleClass(this,t,e)[0]}static hasClass(t,e){const r=W._preElem(t,"hasClass");if("string"!=typeof e)throw new TypeError('The "token" parameter must be a string.');return r.classList.contains(e)}hasClass(t){return W.hasClass(this,t)}static classLength(t){return W._preElem(t,"classLength").classList.length}classLength(){return W.classLength(this)}static classList(t){return W._preElem(t,"classList").classList.values().toArray()}classList(){return W.classList(this)}static tagName(t){return W._preElem(t,"tagName").tagName}tagName(){return W.tagName(this)}static id(t){return W._preElem(t,"id").id}id(){return W.id(this)}static text(t){return W._preElem(t,"text").textContent}text(){return W.text(this)}static setText(t,e){if("string"!=typeof e)throw new Error("Value is not a valid string.");return W._preElems(t,"setText").forEach(t=>t.textContent=e),t}setText(t){return W.setText(this,t)}static empty(t){return W._preElems(t,"empty").forEach(t=>t.textContent=""),t}empty(){return W.empty(this)}static html(t,e){return W._preElem(t,"html").getHTML(e)}html(t){return W.html(this,t)}static setHtml(t,e){if("string"!=typeof e)throw new Error("Value is not a valid string.");return W._preElems(t,"setHtml").forEach(t=>t.innerHTML=e),t}setHtml(t){return W.setHtml(this,t)}static _valHooks={option:{get:t=>{const e=t.getAttribute("value");return null!=e?e:t.textContent}},select:{get:t=>{const e=t.options,r=t.selectedIndex,o="select-one"===t.type,n=o?r+1:e.length,i=[];let s=r<0?n:o?r:0;for(;s<n;s++){const t=e[s],n=t.parentNode;if((t.selected||s===r)&&!t.disabled&&(!n||!n.disabled||"OPTGROUP"!==n.tagName)){const e=W._valHooks.option.get(t);if(o)return e;i.push(e)}}return i},set:(t,e)=>{const r=t.options,o=Array.isArray(e)?e.map(String):[String(e)];let n=!1;for(let t=0;t<r.length;t++){const e=r[t],i=W._valHooks.option.get(e);"string"==typeof i&&(e.selected=o.includes(i))&&(n=!0)}return n||(t.selectedIndex=-1),o}},radio:{get:t=>t.checked?"on":"off",set(t,e){if("boolean"==typeof e){const r=t.closest("label");return e&&r&&r.querySelectorAll('input[type="radio"]').forEach(e=>{e instanceof HTMLInputElement&&e!==t&&(e.checked=!1)}),t.checked=e,e}}},checkbox:{get:t=>t.checked?"on":"off",set(t,e){if("boolean"==typeof e)return t.checked=e,e}}};static setVal(t,e){return W._preInputElems(t,"setVal").forEach(t=>{if(1!==t.nodeType)return;let r="function"==typeof e?e(t,W.val(t)):e;null==r?r="":"number"==typeof r?r=String(r):Array.isArray(r)&&(r=((t,e)=>{const r=[];for(let o=0;o<t.length;o++)r.push(e(t[o]));return r})(r,t=>null==t?"":String(t)));const o=W._valHooks[t.type]||W._valHooks[t.nodeName.toLowerCase()];if(!o||"function"!=typeof o.set||void 0===o.set(t,r,"value")){if("string"!=typeof r&&"boolean"!=typeof r)throw new Error(`Invalid setValue "${typeof r}" value.`);"string"==typeof r&&(t.value=r)}}),t}setVal(t){return W.setVal(this,t)}static _valTypes={string:t=>t.value,date:t=>t.valueAsDate,number:t=>t.valueAsNumber};static _getValByType(t,e,r){if("string"!=typeof e)throw new TypeError('The "type" must be a string.');if("string"!=typeof r)throw new TypeError('The "where" must be a string.');if(!(t instanceof HTMLInputElement))throw new Error(`Provided element is not an HTMLInputElement in ${r}().`);if("function"!=typeof W._valTypes[e])throw new Error(`No handler found for type "${e}" in ${r}().`);return W._valTypes[e](t)}static _val(t,e,r){const o=W._preInputElem(t,e),n=W._valHooks[o.type]||W._valHooks[o.nodeName.toLowerCase()];if(n&&"function"==typeof n.get){const t=n.get(o,"value",r);if(void 0!==t)return"string"==typeof t?t.replace(/\r/g,""):t}return W._getValByType(o,r,e)}_val(t,e){return W._val(this,t,e)}static val(t){return W._val(t,"val","string")}val(){return W.val(this)}static valTxt(t){const e=W._val(t,"valTxt","string");if("string"!=typeof e&&null!==e)throw new Error("Value is not a valid string.");return null==e?"":"string"==typeof e?e.replace(/\r/g,""):e}valTxt(){return W.valTxt(this)}static _valArr(t,e,r){const o=W._val(t,e,r);if(!Array.isArray(o))throw new Error(`Value expected an array but got ${typeof o}.`);return o}_valArr(t,e){return W._valArr(this,t,e)}static valArr(t){return W._valArr(t,"valArr","string")}valArr(){return W.valArr(this)}static valNb(t){if(!(W._preInputElem(t,"valNb")instanceof HTMLInputElement))throw new Error("Element must be an input element.");const e=W._val(t,"valNb","number");if(Number.isNaN(e))throw new Error("Value is not a valid number.");return e}valNb(){return W.valNb(this)}static valDate(t){if(!(W._preInputElem(t,"valDate")instanceof HTMLInputElement))throw new Error("Element must be an input element.");const e=W._val(t,"valDate","date");if(!(e instanceof Date))throw new Error("Value is not a valid date.");return e}valDate(){return W.valDate(this)}static valBool(t){const e=W._preInputElem(t,"valBool");if(!(e instanceof HTMLInputElement))throw new Error("Element must be an input element.");return"on"===W.val(e)}valBool(){return W.valBool(this)}static listenForPaste(t,{onFilePaste:e,onTextPaste:r}={}){if(void 0!==e&&"function"!=typeof e)throw new TypeError("onFilePaste must be a function.");if(void 0!==r&&"function"!=typeof r)throw new TypeError("onTextPaste must be a function.");const o=t=>{if(!(t instanceof ClipboardEvent))return;const o=t.clipboardData?.items||[];for(const t of o)if("file"===t.kind){if("function"==typeof e){const r=t.getAsFile();r&&e(t,r)}}else"string"===t.kind&&"function"==typeof r&&t.getAsString(e=>r(t,e))};return W._preElemsWithDoc(t,"listenForPaste").forEach(t=>W.on(t,"paste",o)),o}listenForPaste({onFilePaste:t,onTextPaste:e}={}){return W.listenForPaste(this,{onFilePaste:t,onTextPaste:e})}static hasEventListener(t,e){const r=W._preEventTargetElem(t,"hasEventListener");if(!x.has(r))return!1;const o=x.get(r);return!!(o&&Array.isArray(o[e])&&o[e].length>0)}hasEventListener(t){return W.hasEventListener(this,t)}static hasExactEventListener(t,e,r){const o=W._preEventTargetElem(t,"hasExactEventListener");if("function"!=typeof r)throw new TypeError('The "handler" must be a function.');if(!x.has(o))return!1;const n=x.get(o);return!(!n||!Array.isArray(n[e]))&&n[e].some(t=>t.handler===r)}hasExactEventListener(t,e){return W.hasExactEventListener(this,t,e)}static on(t,e,r,o){if("string"!=typeof e)throw new TypeError("The event name must be a string.");return W._preEventTargetElems(t,"on").forEach(t=>{t.addEventListener(e,r,o),x.has(t)||x.set(t,{});const n=x.get(t);n&&(Array.isArray(n[e])||(n[e]=[]),n[e].push({handler:r,options:o}))}),t}on(t,e,r){return W.on(this,t,e,r)}static once(t,e,r,o={}){if("string"!=typeof e)throw new TypeError("The event name must be a string.");return W._preEventTargetElems(t,"once").forEach(t=>{const n=o=>{W.off(t,e,n),"function"==typeof r&&r(o)};W.on(t,e,n,"boolean"==typeof o?o:{...o,once:!0})}),t}once(t,e,r={}){return W.once(this,t,e,r)}static off(t,e,r,o){if("string"!=typeof e)throw new TypeError("The event name must be a string.");return W._preEventTargetElems(t,"off").forEach(t=>{t.removeEventListener(e,r,o);const n=x.get(t);n&&n[e]&&(n[e]=n[e].filter(t=>t.handler!==r),0===n[e].length&&delete n[e])}),t}off(t,e,r){return W.off(this,t,e,r)}static offAll(t,e){if("string"!=typeof e)throw new TypeError("The event name must be a string.");return W._preEventTargetElems(t,"offAll").forEach(t=>{const r=x.get(t);if(r&&r[e]){for(const o of r[e])t.removeEventListener(e,o.handler,o.options);delete r[e]}}),t}offAll(t){return W.offAll(this,t)}static offAllTypes(t,e=null){if(null!==e&&"function"!=typeof e)throw new TypeError('The "filterFn" must be a function.');return W._preEventTargetElems(t,"offAllTypes").forEach(t=>{const r=x.get(t);if(r){for(const o in r)for(const n of r[o])("function"!=typeof e||e(n.handler,o))&&t.removeEventListener(o,n.handler,n.options);x.delete(t)}}),t}offAllTypes(t=null){return W.offAllTypes(this,t)}static trigger(t,e,r={}){if("string"!=typeof e)throw new TypeError("The event name must be a string.");return W._preEventTargetElems(t,"trigger").forEach(t=>{const o=r instanceof Event||r instanceof CustomEvent?r:new CustomEvent(e,{bubbles:!0,cancelable:!0,detail:r});t.dispatchEvent(o)}),t}trigger(t,e={}){return W.trigger(this,t,e)}static _propFix={for:"htmlFor",class:"className"};static attr(t,e){if("string"!=typeof e)throw new TypeError('The "name" must be a string.');return W._preElem(t,"attr").getAttribute(e)}attr(t){return W.attr(this,t)}static setAttr(t,e,r=null){if("string"!=typeof e)throw new TypeError('The "name" must be a string.');if(null!==r&&"string"!=typeof r)throw new TypeError('The "value" must be a string.');return W._preElems(t,"setAttr").forEach(t=>{null===r?t.removeAttribute(e):t.setAttribute(e,r)}),t}setAttr(t,e){return W.setAttr(this,t,e)}static removeAttr(t,e){if("string"!=typeof e)throw new TypeError('The "name" must be a string.');return W._preElems(t,"removeAttr").forEach(t=>t.removeAttribute(e)),t}removeAttr(t){return W.removeAttr(this,t)}static hasAttr(t,e){if("string"!=typeof e)throw new TypeError('The "name" must be a string.');return W._preElem(t,"hasAttr").hasAttribute(e)}hasAttr(t){return W.hasAttr(this,t)}static hasProp(t,e){if("string"!=typeof e)throw new TypeError('The "name" must be a string.');return!!W._preElem(t,"hasProp")[W._propFix[e]||e]}hasProp(t){return W.hasProp(this,t)}static addProp(t,e){if("string"!=typeof e)throw new TypeError('The "name" must be a string.');return W._preElems(t,"addProp").forEach(t=>{t[e=W._propFix[e]||e]=!0}),t}addProp(t){return W.addProp(this,t)}static removeProp(t,e){if("string"!=typeof e)throw new TypeError('The "name" must be a string.');return W._preElems(t,"removeProp").forEach(t=>{t[e=W._propFix[e]||e]=!1}),t}removeProp(t){return W.removeProp(this,t)}static toggleProp(t,e,r){if("string"!=typeof e)throw new TypeError('The "name" must be a string.');if(void 0!==r&&"boolean"!=typeof r)throw new TypeError('The "force" must be a boolean.');W._preElems(t,"toggleProp").forEach(t=>{const o=W._propFix[e]||e;(void 0===r?!t[o]:r)?W.addProp(t,e):W.removeProp(t,e)})}toggleProp(t,e){return W.toggleProp(this,t,e)}static remove(t){return W._preElems(t,"remove").forEach(t=>t.remove()),t}remove(){return W.remove(this)}static index(t,e=null){const r=W._preElem(t,"index");if(!r)return-1;if(!e)return Array.prototype.indexOf.call(r.parentNode?.children||[],r);if(e){const t="string"==typeof e?document.querySelectorAll(e):W._preElems(e,"index");return Array.prototype.indexOf.call(t,r)}return-1}index(t){return W.index(this,t)}static _getCustomRect(t,e){const r={height:0,width:0,x:0,y:0,bottom:0,left:0,right:0,top:0,toJSON:function(){throw new Error("Function not implemented.")}};for(const e in t)"number"==typeof t[e]&&(r[e]=t[e]);if("object"!=typeof e||null===e||Array.isArray(e))throw new Error("");const{height:o=0,width:n=0,top:i=0,bottom:s=0,left:l=0,right:a=0}=e;if("number"!=typeof o)throw new Error("");if("number"!=typeof n)throw new Error("");if("number"!=typeof i)throw new Error("");if("number"!=typeof s)throw new Error("");if("number"!=typeof l)throw new Error("");if("number"!=typeof a)throw new Error("");return r.height+=o,r.width+=n,r.top+=i,r.bottom+=s,r.left+=l,r.right+=a,r}static isCollWith(t,e,r={}){const o=W._getCustomRect(W._preElem(t,"isCollWith").getBoundingClientRect(),r),n=W._preElem(e,"isCollWith").getBoundingClientRect();return T(o,n)}isCollWith(t,e){return W.isCollWith(this,t,e)}static isCollPerfWith(t,e,r={}){const o=W._getCustomRect(W._preElem(t,"isCollPerfWith").getBoundingClientRect(),r),n=W._preElem(e,"isCollPerfWith").getBoundingClientRect();return v(o,n)}isCollPerfWith(t,e){return W.isCollPerfWith(this,t,e)}static _isCollWithLock(t,e,r,o,n){const i=L[n];if(t)return i.has(o)||i.set(o,!0),!0;if(i.has(o)){let t=!1;switch(n){case"top":t=_(e,r);break;case"bottom":t=C(e,r);break;case"left":t=S(e,r);break;case"right":t=A(e,r)}return t&&i.delete(o),i.has(o)}return!1}static isCollWithLock(t,e,r,o={}){const n=W._preElem(t,"isCollWithLock"),i=W._preElem(e,"isCollWithLock"),s=W._getCustomRect(n.getBoundingClientRect(),o),l=i.getBoundingClientRect(),a=T(s,l);return W._isCollWithLock(a,s,l,n,r)}isCollWithLock(t,e,r){return W.isCollWithLock(this,t,e,r)}static isCollPerfWithLock(t,e,r,o={}){const n=W._preElem(t,"isCollPerfWithLock"),i=W._preElem(e,"isCollPerfWithLock"),s=W._getCustomRect(n.getBoundingClientRect(),o),l=i.getBoundingClientRect(),a=v(s,l);return W._isCollWithLock(a,s,l,n,r)}isCollPerfWithLock(t,e,r){return W.isCollPerfWithLock(this,t,e,r)}static resetCollLock(t){const e=W._preElem(t,"resetCollLock");let r=!1;for(const t of["top","bottom","left","right"])L[t].has(e)&&(L[t].delete(e),r=!0);return r}resetCollLock(){return W.resetCollLock(this)}static resetCollLockDir(t,e){const r=W._preElem(t,"resetCollLockDir"),o=L[e];return!!o.has(r)&&(o.delete(r),!0)}resetCollLockDir(t){return W.resetCollLockDir(this,t)}static isInViewport(t){const e=W._preElem(t,"isInViewport");if(!e.checkVisibility({contentVisibilityAuto:!1,opacityProperty:!1,visibilityProperty:!1}))return!1;const r=W.offset(e).top,o=r+W.outerHeight(e),n=W.scrollTop(window),i=n+W.height(window);return o>n&&r<i}isInViewport(){return W.isInViewport(this)}static isScrolledIntoView(t){const e=W._preElem(t,"isScrolledIntoView");if(!e.checkVisibility({contentVisibilityAuto:!1,opacityProperty:!1,visibilityProperty:!1}))return!1;const r=W.scrollTop(window),o=r+W.height(window),n=W.offset(e).top;return n+W.height(e)<=o&&n>=r}isScrolledIntoView(){return W.isScrolledIntoView(this)}static isInContainer(t,e){const r=W._preElem(t,"isInContainer"),o=W._preElem(e,"isInContainer");if(!r.checkVisibility({contentVisibilityAuto:!1,opacityProperty:!1,visibilityProperty:!1}))return!1;const n=r.getBoundingClientRect(),i=o.getBoundingClientRect(),s=n.bottom>i.top&&n.top<i.bottom,l=n.right>i.left&&n.left<i.right;return s&&l}isInContainer(t){return W.isInContainer(this,t)}static isFullyInContainer(t,e){const r=W._preElem(t,"isScrolledIntoView"),o=W._preElem(e,"isInContainer");if(!r.checkVisibility({contentVisibilityAuto:!1,opacityProperty:!1,visibilityProperty:!1}))return!1;const n=r.getBoundingClientRect(),i=o.getBoundingClientRect();return n.top>=i.top&&n.bottom<=i.bottom&&n.left>=i.left&&n.right<=i.right}isFullyInContainer(t){return W.isFullyInContainer(this,t)}static hasScroll(t){const e=W._preElem(t,"hasScroll");return{v:e.scrollHeight>e.clientHeight,h:e.scrollWidth>e.clientWidth}}hasScroll(){return W.hasScroll(this)}}const P=W;window.TinyHtml=e.TinyHtml})();
1
+ (()=>{"use strict";var e={d:(t,r)=>{for(var n in r)e.o(r,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:r[n]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r:e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};e.d(t,{TinyHtml:()=>P});var r={};e.r(r),e.d(r,{areElsCollBottom:()=>o,areElsCollLeft:()=>i,areElsCollPerfBottom:()=>a,areElsCollPerfLeft:()=>c,areElsCollPerfRight:()=>p,areElsCollPerfTop:()=>l,areElsCollRight:()=>s,areElsCollTop:()=>n,areElsColliding:()=>m,areElsPerfColliding:()=>u,getElsCollDetails:()=>w,getElsCollDirDepth:()=>E,getElsCollOverlap:()=>h,getElsCollOverlapPos:()=>g,getElsColliding:()=>d,getElsPerfColliding:()=>f,getElsRelativeCenterOffset:()=>b,getRectCenter:()=>y});const n=(e,t)=>e.bottom<t.top,o=(e,t)=>e.top>t.bottom,i=(e,t)=>e.right<t.left,s=(e,t)=>e.left>t.right,l=(e,t)=>e.bottom<=t.top,a=(e,t)=>e.top>=t.bottom,c=(e,t)=>e.right<=t.left,p=(e,t)=>e.left>=t.right,m=(e,t)=>!(i(e,t)||s(e,t)||n(e,t)||o(e,t)),u=(e,t)=>!(c(e,t)||p(e,t)||l(e,t)||a(e,t)),d=(e,t)=>i(e,t)?"left":s(e,t)?"right":n(e,t)?"top":o(e,t)?"bottom":null,f=(e,t)=>c(e,t)?"left":p(e,t)?"right":l(e,t)?"top":a(e,t)?"bottom":null,h=(e,t)=>({overlapLeft:t.right-e.left,overlapRight:e.right-t.left,overlapTop:t.bottom-e.top,overlapBottom:e.bottom-t.top}),g=({overlapLeft:e=-1,overlapRight:t=-1,overlapTop:r=-1,overlapBottom:n=-1}={})=>({dirX:e<t?"right":"left",dirY:r<n?"bottom":"top"}),y=e=>({x:e.left+e.width/2,y:e.top+e.height/2});function b(e,t){const r=e.left+e.width/2,n=e.top+e.height/2;return{x:t.left+t.width/2-r,y:t.top+t.height/2-n}}function E(e,t){if(!u(e,t))return{inDir:null,dirX:null,dirY:null,depthX:0,depthY:0};const{overlapLeft:r,overlapRight:n,overlapTop:o,overlapBottom:i}=h(e,t),{dirX:s,dirY:l}=g({overlapLeft:r,overlapRight:n,overlapTop:o,overlapBottom:i}),a=Math.min(r,n),c=Math.min(o,i);let p;return p=a<c?s:l,{inDir:p,dirX:s,dirY:l,depthX:a,depthY:c}}function w(e,t){const r=u(e,t),n={in:null,x:null,y:null},o={y:null,x:null},i={top:0,bottom:0,left:0,right:0},{overlapLeft:s,overlapRight:l,overlapTop:a,overlapBottom:c}=h(t,e);i.top=a,i.bottom=c,i.left=s,i.right=l;const p=Object.entries(i).filter(([,e])=>e>0).sort((e,t)=>e[1]-t[1]),{dirX:m,dirY:d}=g({overlapLeft:l,overlapRight:s,overlapTop:c,overlapBottom:a});return n.y=d,n.x=m,i.bottom<0?o.y="bottom":i.top<0&&(o.y="top"),i.left<0?o.x="left":i.right<0&&(o.x="right"),n.in=r?i.top===i.bottom&&i.bottom===i.left&&i.left===i.right?"center":p.length?p[0][0]:"top":null,{dirs:n,depth:i,isNeg:o}}const{areElsColliding:T,areElsPerfColliding:v,areElsCollTop:_,areElsCollBottom:C,areElsCollLeft:A,areElsCollRight:x}=r,S=new WeakMap,L=new WeakMap,k={top:new WeakMap,bottom:new WeakMap,left:new WeakMap,right:new WeakMap};class W{static Utils={...r};static createFrom(e,t){if("string"!=typeof e)throw new TypeError('The "tagName" must be a string.');if(void 0!==t&&"object"!=typeof t)throw new TypeError('The "attrs" must be a object.');const r=W.createElement(e);if("object"==typeof t)for(const e in t)r.setAttr(e,t[e]);return r}static createElement(e,t){if("string"!=typeof e)throw new TypeError("[TinyHtml] createElement(): The tagName must be a string.");if(void 0!==t&&"object"!=typeof t)throw new TypeError("[TinyHtml] createElement(): The ops must be a object.");return new W(document.createElement(e,t))}static createTextNode(e){if("string"!=typeof e)throw new TypeError("[TinyHtml] createTextNode(): The value must be a string.");return new W(document.createTextNode(e))}static createElementFromHTML(e){const t=document.createElement("template");if(!(e=e.trim()).startsWith("<"))return W.createTextNode(e);if(t.innerHTML=e,!(t.content.firstChild instanceof Element))throw new Error("The HTML string must contain a valid HTML element.");return new W(t.content.firstChild)}static query(e,t=document){const r=t.querySelector(e);return r?new W(r):null}querySelector(e){return W.query(e,W._preElem(this,"query"))}static queryAll(e,t=document){return new W(t.querySelectorAll(e))}querySelectorAll(e){return W.queryAll(e,W._preElem(this,"queryAll"))}static getById(e){const t=document.getElementById(e);return t?new W(t):null}static getByClassName(e,t=document){return new W(t.getElementsByClassName(e))}getElementsByClassName(e){return W.getByClassName(e,W._preElem(this,"getByClassName"))}static getByName(e){return new W(document.getElementsByName(e))}static getByTagNameNS(e,t="http://www.w3.org/1999/xhtml",r=document){return new W(r.getElementsByTagNameNS(t,e))}getElementsByTagNameNS(e,t="http://www.w3.org/1999/xhtml"){return W.getByTagNameNS(e,t,W._preElem(this,"getByTagNameNS"))}get(e){if("number"!=typeof e)throw new TypeError("The index must be a number.");if(!this.#e[e])throw new Error(`No element found at index ${e}.`);return this.#e[e]}extract(e){if("number"!=typeof e)throw new TypeError("The index must be a number.");if(!this.#e[e])throw new Error(`Cannot extract: no element exists at index ${e}.`);return new W(this.#e[e])}exists(e){if("number"!=typeof e)throw new TypeError("The index must be a number.");return!!this.#e[e]}getAll(){return[...this.#e]}_getElement(e,t){if(!(this.#e[t]instanceof Element||this.#e[t]instanceof Window||this.#e[t]instanceof Document))throw new Error(`[TinyHtml] Invalid Element in ${e}().`);return this.#e[t]}_getElements(e){if(!this.#e.every(e=>e instanceof Element||e instanceof Window||e instanceof Document))throw new Error(`[TinyHtml] Invalid Element in ${e}().`);return[...this.#e]}static _preElemsTemplate(e,t,r,n){const o=e=>{const o=[];return e.map(e=>(e instanceof W?e._getElements(t):[e]).map(e=>{let i=!1;for(const t of r)if(e instanceof t){i=!0;break}if(!i)throw new Error(`[TinyHtml] Invalid element of the list "${n.join(",")}" in ${t}().`);return o.push(e),e})),o};return Array.isArray(e)?o(e):o([e])}static _preElemTemplate(e,t,r,n,o=!1){const i=e=>{const i=e[0],s=i instanceof W?i._getElements(t):[i];if(s.length>1)throw new Error(`[TinyHtml] Invalid element amount in ${t}() (Received ${s.length}/1).`);let l=!1;for(const e of r)if(s[0]instanceof e){l=!0;break}if(!o||null!==s[0]&&void 0!==s[0]||(s[0]=null,l=!0),!l)throw new Error(`[TinyHtml] Invalid element of the list "${n.join(",")}" in ${t}().`);return s[0]};if(!Array.isArray(e))return i([e]);if(e.length>1)throw new Error(`[TinyHtml] Invalid element amount in ${t}() (Received ${e.length}/1).`);return i(e)}static _preElems(e,t){return W._preElemsTemplate(e,t,[Element],["Element"])}static _preElem(e,t){return W._preElemTemplate(e,t,[Element],["Element"])}static _preNodeElems(e,t){return W._preElemsTemplate(e,t,[Node],["Node"])}static _preNodeElem(e,t){return W._preElemTemplate(e,t,[Node],["Node"])}static _preNodeElemWithNull(e,t){return W._preElemTemplate(e,t,[Node],["Node"],!0)}static _preHtmlElems(e,t){return W._preElemsTemplate(e,t,[HTMLElement],["HTMLElement"])}static _preHtmlElem(e,t){return W._preElemTemplate(e,t,[HTMLElement],["HTMLElement"])}static _preInputElems(e,t){return W._preElemsTemplate(e,t,[HTMLInputElement,HTMLSelectElement,HTMLTextAreaElement,HTMLOptionElement],["HTMLInputElement","HTMLSelectElement","HTMLTextAreaElement","HTMLOptionElement"])}static _preInputElem(e,t){return W._preElemTemplate(e,t,[HTMLInputElement,HTMLSelectElement,HTMLTextAreaElement,HTMLOptionElement],["HTMLInputElement","HTMLSelectElement","HTMLTextAreaElement","HTMLOptionElement"])}static _preEventTargetElems(e,t){return W._preElemsTemplate(e,t,[EventTarget],["EventTarget"])}static _preEventTargetElem(e,t){return W._preElemTemplate(e,t,[EventTarget],["EventTarget"])}static _preElemsAndWindow(e,t){return W._preElemsTemplate(e,t,[Element,Window],["Element","Window"])}static _preElemAndWindow(e,t){return W._preElemTemplate(e,t,[Element,Window],["Element","Window"])}static _preElemsAndWinAndDoc(e,t){return W._preElemsTemplate(e,t,[Element,Window,Document],["Element","Window","Document"]).map(e=>e instanceof Document?e.documentElement:e)}static _preElemAndWinAndDoc(e,t){const r=W._preElemTemplate(e,t,[Element,Window,Document],["Element","Window","Document"]);return r instanceof Document?r.documentElement:r}static _preElemsWithDoc(e,t){return W._preElemsTemplate(e,t,[Element,Document],["Element","Document"])}static _preElemWithDoc(e,t){return W._preElemTemplate(e,t,[Element,Document],["Element","Document"])}static toTinyElm(e){const t=e=>e.map(e=>e instanceof W?e:new W(e));return Array.isArray(e)?t(e):t([e])}static fromTinyElm(e){const t=e=>{const t=[];return e.map(e=>(e instanceof W?e._getElements("fromTinyElm"):[e]).map(e=>t.push(e))),t};return Array.isArray(e)?t(e):t([e])}static winnow(e,t,r,n=!1){if("boolean"!=typeof n)throw new TypeError('The "not" must be a boolean.');if("function"==typeof t)return W._preElems(e,r).filter((e,r)=>!!t.call(e,r,e)!==n);if(t instanceof Element)return W._preElems(e,r).filter(e=>e===t!==n);if(Array.isArray(t)||"string"!=typeof t&&null!=t.length)return W._preElems(e,r).filter(e=>t.includes(e)!==n);let o=t;return n&&(o=`:not(${o})`),W._preElems(e,r).filter(e=>1===e.nodeType&&e.matches(o))}static filter(e,t,r=!1){return r&&(t=`:not(${t})`),W._preElems(e,"filter").filter(e=>1===e.nodeType&&e.matches(t))}static filterOnly(e,t){return W.winnow(e,t,"filterOnly",!1)}static not(e,t){return W.winnow(e,t,"not",!0)}not(e){return W.not(this,e)}static find(e,t){const r=[];for(const n of W._preElems(e,"find"))r.push(...n.querySelectorAll(t));return[...new Set(r)]}find(e){return W.find(this,e)}static is(e,t){return W.winnow(e,t,"is",!1).length>0}is(e){return W.is(this,e)}static has(e,t){const r="string"==typeof t?[...document.querySelectorAll(t)]:W._preElems(t,"has");return W._preElems(e,"has").filter(e=>r.some(t=>e&&e.contains(t)))}has(e){return W.has(this,e).length>0}static closest(e,t,r){const n=[];for(const o of W._preElems(e,"closest")){let e=o;for(;e&&e!==r;){if(1===e.nodeType&&("string"==typeof t?e.matches(t):e===t)){n.push(e);break}e=e.parentElement}}return[...new Set(n)]}closest(e,t){return W.closest(this,e,t)}static isSameDom(e,t){return W._preNodeElem(e,"isSameDom")===W._preNodeElem(t,"isSameDom")}isSameDom(e){return W.isSameDom(this,e)}_data={};static _dataSelector={public:(e,t)=>{const r=W._preElem(t,e);let n=L.get(r);return n||(n={},L.set(r,n)),n},private:(e,t)=>{if(!(t instanceof W))throw new Error(`Element must be a TinyHtml instance to execute ${e}().`);return t._data}};static data(e,t,r=!1){const n=W._dataSelector[r?"private":"public"]("data",e);if(null==t)return{...n};if("string"!=typeof t)throw new TypeError("The key must be a string.");return n.hasOwnProperty(t)?n[t]:void 0}data(e,t){return W.data(this,e,t)}static setData(e,t,r,n=!1){const o=W._dataSelector[n?"private":"public"]("setData",e);if("string"!=typeof t)throw new TypeError("The key must be a string.");return o[t]=r,e}setData(e,t,r=!1){return W.setData(this,e,t,r)}static _getSibling(e,t,r){let n=W._preNodeElemWithNull(e,r);for(;n&&(n=n[t])&&1!==n.nodeType;);return n instanceof Node?n:null}static _getSiblings(e,t){let r=e;const n=[];for(;r;r=r.nextSibling)1===r.nodeType&&r!==t&&n.push(r);return n}static domDir(e,t,r,n="domDir"){if("string"!=typeof t)throw new TypeError('The "direction" must be a string.');let o=W._preNodeElemWithNull(e,n);const i=[];for(;o&&(o=o[t]);)if(1===o.nodeType){if(r&&("string"==typeof r?o.matches(r):o===r))break;i.push(o)}return i}static parent(e){let t=W._preNodeElemWithNull(e,"parent");const r=t?t.parentNode:null;return r&&11!==r.nodeType?r:null}parent(){return W.parent(this)}static parents(e,t){return W.domDir(e,"parentNode",t,"parents")}parents(e){return W.parents(this,e)}static next(e){return W._getSibling(e,"nextSibling","next")}next(){return W.next(this)}static prev(e){return W._getSibling(e,"previousSibling","prev")}prev(){return W.prev(this)}static nextAll(e){return W.domDir(e,"nextSibling",void 0,"nextAll")}nextAll(){return W.nextAll(this)}static prevAll(e){return W.domDir(e,"previousSibling",void 0,"prevAll")}prevAll(){return W.prevAll(this)}static nextUntil(e,t){return W.domDir(e,"nextSibling",t,"nextUtil")}nextUntil(e){return W.nextUntil(this,e)}static prevUntil(e,t){return W.domDir(e,"previousSibling",t,"prevUtil")}prevUntil(e){return W.prevUntil(this,e)}static siblings(e){const t=W._preNodeElemWithNull(e,"siblings");return W._getSiblings(t&&t.parentNode?t.parentNode.firstChild:null,t)}siblings(){return W.siblings(this)}static children(e){const t=W._preNodeElemWithNull(e,"children");return W._getSiblings(t?t.firstChild:null)}children(){return W.children(this)}static contents(e){const t=W._preNodeElemWithNull(e,"contents");return t instanceof HTMLIFrameElement&&null!=t.contentDocument&&Object.getPrototypeOf(t.contentDocument)?[t.contentDocument]:t instanceof HTMLTemplateElement?Array.from((t.content||t).childNodes):t?Array.from(t.childNodes):[]}contents(){return W.contents(this)}static clone(e,t=!0){if("boolean"!=typeof t)throw new TypeError('The "deep" must be a boolean.');return W._preNodeElems(e,"clone").map(e=>e.cloneNode(t))}clone(e){return W.clone(this,e)[0]}static _appendChecker(e,...t){const r=[],n=[...t];for(const t in n)"string"!=typeof n[t]?r.push(W._preNodeElem(n[t],e)):r.push(n[t]);return r}static append(e,...t){return W._preElem(e,"append").append(...W._appendChecker("append",...t)),e}append(...e){return W.append(this,...e)}static prepend(e,...t){return W._preElem(e,"prepend").prepend(...W._appendChecker("prepend",...t)),e}prepend(...e){return W.prepend(this,...e)}static before(e,...t){return W._preElem(e,"before").before(...W._appendChecker("before",...t)),e}before(...e){return W.before(this,...e)}static after(e,...t){return W._preElem(e,"after").after(...W._appendChecker("after",...t)),e}after(...e){return W.after(this,...e)}static replaceWith(e,...t){return W._preElem(e,"replaceWith").replaceWith(...W._appendChecker("replaceWith",...t)),e}replaceWith(...e){return W.replaceWith(this,...e)}static appendTo(e,t){const r=W._preNodeElems(e,"appendTo"),n=W._preNodeElems(t,"appendTo");return n.forEach((e,t)=>{r.forEach(r=>e.appendChild(t===n.length-1?r:r.cloneNode(!0)))}),e}appendTo(e){return W.appendTo(this,e)}static prependTo(e,t){const r=W._preElems(e,"prependTo"),n=W._preElems(t,"prependTo");return n.forEach((e,t)=>{r.slice().reverse().forEach(r=>e.prepend(t===n.length-1?r:r.cloneNode(!0)))}),e}prependTo(e){return W.prependTo(this,e)}static insertBefore(e,t,r=null){const n=W._preNodeElem(e,"insertBefore"),o=W._preNodeElem(t,"insertBefore"),i=W._preNodeElemWithNull(r,"insertBefore");if(!o.parentNode)throw new Error("The target element has no parent node to insert before.");return o.parentNode.insertBefore(n,i||o),e}insertBefore(e,t){return W.insertBefore(this,e,t)}static insertAfter(e,t,r=null){const n=W._preNodeElem(e,"insertAfter"),o=W._preNodeElem(t,"insertBefore"),i=W._preNodeElemWithNull(r,"insertBefore");if(!o.parentNode)throw new Error("The target element has no parent node to insert after.");return o.parentNode.insertBefore(n,i||o.nextSibling),e}insertAfter(e,t){return W.insertAfter(this,e,t)}static replaceAll(e,t){const r=W._preNodeElems(e,"replaceAll"),n=W._preNodeElems(t,"replaceAll");return n.forEach((e,t)=>{const o=e.parentNode;r.forEach(r=>{o&&o.replaceChild(t===n.length-1?r:r.cloneNode(!0),e)})}),e}replaceAll(e){return W.replaceAll(this,e)}#e;constructor(e){if(e instanceof W)throw new Error("[TinyHtml] You are trying to put a TinyHtml inside another TinyHtml in constructor.");const t=e=>{if(!e.every(e=>e instanceof Element||e instanceof Window||e instanceof Document||e instanceof Text))throw new Error("[TinyHtml] Invalid Target in constructor.")};if(Array.isArray(e))t(e),this.#e=e;else if(e instanceof NodeList||e instanceof HTMLCollection){const r=[...e];t(r),this.#e=r}else{const r=[e];t(r),this.#e=r}}static isWindow(e){return null!=e&&e===e.window}static css(e){const t=W._preElem(e,"css");return window.getComputedStyle(t)}css(){return W.css(this)}static cssString(e,t){const r=W._preElem(e,"cssString");if("string"!=typeof t)throw new TypeError("The prop must be a string.");const n=window.getComputedStyle(r)[t];return"string"==typeof n?n:"number"==typeof n?n.toString():null}cssString(e){return W.cssString(this,e)}static cssList(e,t){const r=W._preElem(e,"cssList");if(!Array.isArray(t))throw new TypeError("The prop must be an array of strings.");const n=window.getComputedStyle(r),o={};for(const e of t)void 0!==e&&(o[e]=n.getPropertyValue(e));return o}cssList(e){return W.cssList(this,e)}static cssFloat(e,t){const r=W._preElem(e,"cssFloat");if("string"!=typeof t)throw new TypeError("The prop must be a string.");const n=window.getComputedStyle(r)[t];return parseFloat(n)||0}cssFloat(e){return W.cssFloat(this,e)}static cssFloats(e,t){const r=W._preElem(e,"cssFloats");if(!Array.isArray(t))throw new TypeError("The prop must be an array of strings.");const n=window.getComputedStyle(r),o={};for(const e of t)o[e]=parseFloat(n[e])||0;return o}cssFloats(e){return W.cssFloats(this,e)}static#t={alignContent:"align-content",alignItems:"align-items",alignSelf:"align-self",animationDelay:"animation-delay",animationDirection:"animation-direction",animationDuration:"animation-duration",animationFillMode:"animation-fill-mode",animationIterationCount:"animation-iteration-count",animationName:"animation-name",animationPlayState:"animation-play-state",animationTimingFunction:"animation-timing-function",backfaceVisibility:"backface-visibility",backgroundAttachment:"background-attachment",backgroundBlendMode:"background-blend-mode",backgroundClip:"background-clip",backgroundColor:"background-color",backgroundImage:"background-image",backgroundOrigin:"background-origin",backgroundPosition:"background-position",backgroundRepeat:"background-repeat",backgroundSize:"background-size",borderBottom:"border-bottom",borderBottomColor:"border-bottom-color",borderBottomLeftRadius:"border-bottom-left-radius",borderBottomRightRadius:"border-bottom-right-radius",borderBottomStyle:"border-bottom-style",borderBottomWidth:"border-bottom-width",borderCollapse:"border-collapse",borderColor:"border-color",borderImage:"border-image",borderImageOutset:"border-image-outset",borderImageRepeat:"border-image-repeat",borderImageSlice:"border-image-slice",borderImageSource:"border-image-source",borderImageWidth:"border-image-width",borderLeft:"border-left",borderLeftColor:"border-left-color",borderLeftStyle:"border-left-style",borderLeftWidth:"border-left-width",borderRadius:"border-radius",borderRight:"border-right",borderRightColor:"border-right-color",borderRightStyle:"border-right-style",borderRightWidth:"border-right-width",borderSpacing:"border-spacing",borderStyle:"border-style",borderTop:"border-top",borderTopColor:"border-top-color",borderTopLeftRadius:"border-top-left-radius",borderTopRightRadius:"border-top-right-radius",borderTopStyle:"border-top-style",borderTopWidth:"border-top-width",borderWidth:"border-width",boxDecorationBreak:"box-decoration-break",boxShadow:"box-shadow",boxSizing:"box-sizing",breakAfter:"break-after",breakBefore:"break-before",breakInside:"break-inside",captionSide:"caption-side",caretColor:"caret-color",clipPath:"clip-path",columnCount:"column-count",columnFill:"column-fill",columnGap:"column-gap",columnRule:"column-rule",columnRuleColor:"column-rule-color",columnRuleStyle:"column-rule-style",columnRuleWidth:"column-rule-width",columnSpan:"column-span",columnWidth:"column-width",counterIncrement:"counter-increment",counterReset:"counter-reset",emptyCells:"empty-cells",flexBasis:"flex-basis",flexDirection:"flex-direction",flexFlow:"flex-flow",flexGrow:"flex-grow",flexShrink:"flex-shrink",flexWrap:"flex-wrap",fontFamily:"font-family",fontFeatureSettings:"font-feature-settings",fontKerning:"font-kerning",fontLanguageOverride:"font-language-override",fontSize:"font-size",fontSizeAdjust:"font-size-adjust",fontStretch:"font-stretch",fontStyle:"font-style",fontSynthesis:"font-synthesis",fontVariant:"font-variant",fontVariantAlternates:"font-variant-alternates",fontVariantCaps:"font-variant-caps",fontVariantEastAsian:"font-variant-east-asian",fontVariantLigatures:"font-variant-ligatures",fontVariantNumeric:"font-variant-numeric",fontVariantPosition:"font-variant-position",fontWeight:"font-weight",gridArea:"grid-area",gridAutoColumns:"grid-auto-columns",gridAutoFlow:"grid-auto-flow",gridAutoRows:"grid-auto-rows",gridColumn:"grid-column",gridColumnEnd:"grid-column-end",gridColumnGap:"grid-column-gap",gridColumnStart:"grid-column-start",gridGap:"grid-gap",gridRow:"grid-row",gridRowEnd:"grid-row-end",gridRowGap:"grid-row-gap",gridRowStart:"grid-row-start",gridTemplate:"grid-template",gridTemplateAreas:"grid-template-areas",gridTemplateColumns:"grid-template-columns",gridTemplateRows:"grid-template-rows",imageRendering:"image-rendering",justifyContent:"justify-content",letterSpacing:"letter-spacing",lineBreak:"line-break",lineHeight:"line-height",listStyle:"list-style",listStyleImage:"list-style-image",listStylePosition:"list-style-position",listStyleType:"list-style-type",marginBottom:"margin-bottom",marginLeft:"margin-left",marginRight:"margin-right",marginTop:"margin-top",maskClip:"mask-clip",maskComposite:"mask-composite",maskImage:"mask-image",maskMode:"mask-mode",maskOrigin:"mask-origin",maskPosition:"mask-position",maskRepeat:"mask-repeat",maskSize:"mask-size",maskType:"mask-type",maxHeight:"max-height",maxWidth:"max-width",minHeight:"min-height",minWidth:"min-width",mixBlendMode:"mix-blend-mode",objectFit:"object-fit",objectPosition:"object-position",offsetAnchor:"offset-anchor",offsetDistance:"offset-distance",offsetPath:"offset-path",offsetRotate:"offset-rotate",outlineColor:"outline-color",outlineOffset:"outline-offset",outlineStyle:"outline-style",outlineWidth:"outline-width",overflowAnchor:"overflow-anchor",overflowWrap:"overflow-wrap",overflowX:"overflow-x",overflowY:"overflow-y",paddingBottom:"padding-bottom",paddingLeft:"padding-left",paddingRight:"padding-right",paddingTop:"padding-top",pageBreakAfter:"page-break-after",pageBreakBefore:"page-break-before",pageBreakInside:"page-break-inside",perspectiveOrigin:"perspective-origin",placeContent:"place-content",placeItems:"place-items",placeSelf:"place-self",pointerEvents:"pointer-events",rowGap:"row-gap",scrollBehavior:"scroll-behavior",scrollMargin:"scroll-margin",scrollMarginBlock:"scroll-margin-block",scrollMarginBlockEnd:"scroll-margin-block-end",scrollMarginBlockStart:"scroll-margin-block-start",scrollMarginBottom:"scroll-margin-bottom",scrollMarginInline:"scroll-margin-inline",scrollMarginInlineEnd:"scroll-margin-inline-end",scrollMarginInlineStart:"scroll-margin-inline-start",scrollMarginLeft:"scroll-margin-left",scrollMarginRight:"scroll-margin-right",scrollMarginTop:"scroll-margin-top",scrollPadding:"scroll-padding",scrollPaddingBlock:"scroll-padding-block",scrollPaddingBlockEnd:"scroll-padding-block-end",scrollPaddingBlockStart:"scroll-padding-block-start",scrollPaddingBottom:"scroll-padding-bottom",scrollPaddingInline:"scroll-padding-inline",scrollPaddingInlineEnd:"scroll-padding-inline-end",scrollPaddingInlineStart:"scroll-padding-inline-start",scrollPaddingLeft:"scroll-padding-left",scrollPaddingRight:"scroll-padding-right",scrollPaddingTop:"scroll-padding-top",scrollSnapAlign:"scroll-snap-align",scrollSnapStop:"scroll-snap-stop",scrollSnapType:"scroll-snap-type",shapeImageThreshold:"shape-image-threshold",shapeMargin:"shape-margin",shapeOutside:"shape-outside",tabSize:"tab-size",tableLayout:"table-layout",textAlign:"text-align",textAlignLast:"text-align-last",textCombineUpright:"text-combine-upright",textDecoration:"text-decoration",textDecorationColor:"text-decoration-color",textDecorationLine:"text-decoration-line",textDecorationStyle:"text-decoration-style",textIndent:"text-indent",textJustify:"text-justify",textOrientation:"text-orientation",textOverflow:"text-overflow",textShadow:"text-shadow",textTransform:"text-transform",transformBox:"transform-box",transformOrigin:"transform-origin",transformStyle:"transform-style",transitionDelay:"transition-delay",transitionDuration:"transition-duration",transitionProperty:"transition-property",transitionTimingFunction:"transition-timing-function",unicodeBidi:"unicode-bidi",userSelect:"user-select",verticalAlign:"vertical-align",whiteSpace:"white-space",willChange:"will-change",wordBreak:"word-break",wordSpacing:"word-spacing",wordWrap:"word-wrap",writingMode:"writing-mode",zIndex:"z-index",WebkitTransform:"-webkit-transform",WebkitTransition:"-webkit-transition",WebkitBoxShadow:"-webkit-box-shadow",MozBoxShadow:"-moz-box-shadow",MozTransform:"-moz-transform",MozTransition:"-moz-transition",msTransform:"-ms-transform",msTransition:"-ms-transition"};static cssPropAliases=new Proxy(W.#t,{set:(e,t,r)=>(e[t]=r,W.cssPropRevAliases[r]=t,!0)});static cssPropRevAliases=Object.fromEntries(Object.entries(W.#t).map(([e,t])=>[t,e]));static toStyleKc(e){return"string"==typeof W.cssPropAliases[e]?W.cssPropAliases[e]:e}static toStyleCc(e){return"string"==typeof W.cssPropRevAliases[e]?W.cssPropRevAliases[e]:e}static setStyle(e,t,r=null){return W._preHtmlElems(e,"setStyle").forEach(e=>{if("object"==typeof t)for(const[r,n]of Object.entries(t))e.style.setProperty(W.toStyleKc(r),"string"==typeof n?n:"number"==typeof n?`${n}px`:String(n));else e.style.setProperty(W.toStyleKc(t),r)}),e}setStyle(e,t){return W.setStyle(this,e,t)}static getStyle(e,t){return W._preHtmlElem(e,"getStyle").style.getPropertyValue(W.toStyleKc(t))}getStyle(e){return W.getStyle(this,e)}static style(e,{camelCase:t=!1,rawAttr:r=!1}={}){if("boolean"!=typeof t)throw new TypeError('"camelCase" must be a boolean. Received: '+typeof t);if("boolean"!=typeof r)throw new TypeError('"rawAttr" must be a boolean. Received: '+typeof r);const n=W._preHtmlElem(e,"style"),o={};if(r){const e=(n.getAttribute("style")||"").split(";");for(const r of e){const[e,n]=r.split(":");if(!e||!n)continue;const i=e.trim(),s=n.trim();o[t?W.toStyleCc(i):i]=s}}else{const e=n.style;for(let r=0;r<e.length;r++){const n=e[r],i=e.getPropertyValue(n);o[t?W.toStyleCc(n):n]=i}}return o}style(e){return W.style(this,e)}static removeStyle(e,t){return W._preHtmlElems(e,"removeStyle").forEach(e=>{if(Array.isArray(t))for(const r of t)e.style.removeProperty(W.toStyleKc(r));else e.style.removeProperty(W.toStyleKc(t))}),e}removeStyle(e){return W.removeStyle(this,e)}static toggleStyle(e,t,r,n){return W._preHtmlElems(e,"toggleStyle").forEach(e=>{const o=W.getStyle(e,t).trim()===W.toStyleKc(r)?n:r;W.setStyle(e,t,o)}),e}toggleStyle(e,t,r){return W.toggleStyle(this,e,t,r)}static clearStyle(e){return W._preElems(e,"clearStyle").forEach(e=>e.removeAttribute("style")),e}clearStyle(){return W.clearStyle(this)}static focus(e){return W._preHtmlElem(e,"focus").focus(),e}focus(){return W.focus(this)}static blur(e){return W._preHtmlElem(e,"blur").blur(),e}blur(){return W.blur(this)}static boolCheck(e){return void 0!==e&&("true"===e||"1"===e||!0===e||"on"===e||"number"==typeof e&&e>0)}static setWinScrollTop(e){if("number"!=typeof e)throw new TypeError("The value must be a number.");W.setScrollTop(window,e)}static setWinScrollLeft(e){if("number"!=typeof e)throw new TypeError("The value must be a number.");W.setScrollLeft(window,e)}static winScrollTop(){return window.scrollY||document.documentElement.scrollTop}static winScrollLeft(){return window.scrollX||document.documentElement.scrollLeft}static winInnerHeight(){return window.innerHeight||document.documentElement.clientHeight}static winInnerWidth(){return window.innerWidth||document.documentElement.clientWidth}static isPageTop(){return 0===window.scrollY}static isPageBottom(){return window.innerHeight+window.scrollY>=document.body.offsetHeight}static getDimension(e,t,r="content"){const n=W._preElemAndWinAndDoc(e,"getDimension");if("string"!=typeof t)throw new TypeError("The type must be a string.");if("string"!=typeof r)throw new TypeError("The extra must be a string.");const o="width"===t?"Width":"Height";if(W.isWindow(n))return"margin"===r?n["inner"+o]:n.document.documentElement["client"+o];const i=n;if(9===i.nodeType){const e=i.documentElement;return Math.max(i.body["scroll"+o],e["scroll"+o],i.body["offset"+o],e["offset"+o],e["client"+o])}let s=i.getBoundingClientRect()[t];function l(e){return"width"===t?W.cssFloat(i,e+"Left")+W.cssFloat(i,e+"Right"):W.cssFloat(i,e+"Top")+W.cssFloat(i,e+"Bottom")}switch(r){case"content":s-=l("padding"),s-=l("border");break;case"padding":s-=l("border");break;case"border":break;case"margin":s+=l("margin")}return s}getDimension(e,t){return W.getDimension(this,e,t)}static setHeight(e,t){const r=W._preHtmlElem(e,"setHeight");if("number"!=typeof t&&"string"!=typeof t)throw new TypeError("The value must be a string or number.");return r.style.height="number"==typeof t?`${t}px`:t,e}setHeight(e){return W.setHeight(this,e)}static setWidth(e,t){const r=W._preHtmlElem(e,"setWidth");if("number"!=typeof t&&"string"!=typeof t)throw new TypeError("The value must be a string or number.");return r.style.width="number"==typeof t?`${t}px`:t,e}setWidth(e){return W.setWidth(this,e)}static height(e){const t=W._preElemAndWinAndDoc(e,"height");return W.getDimension(t,"height","content")}height(){return W.height(this)}static width(e){const t=W._preElemAndWinAndDoc(e,"width");return W.getDimension(t,"width","content")}width(){return W.width(this)}static innerHeight(e){const t=W._preElemAndWinAndDoc(e,"innerHeight");return W.getDimension(t,"height","padding")}innerHeight(){return W.innerHeight(this)}static innerWidth(e){const t=W._preElemAndWinAndDoc(e,"innerWidth");return W.getDimension(t,"width","padding")}innerWidth(){return W.innerWidth(this)}static outerHeight(e,t=!1){if("boolean"!=typeof t)throw new TypeError('The "includeMargin" must be a boolean.');const r=W._preElemAndWinAndDoc(e,"outerHeight");return W.getDimension(r,"height",t?"margin":"border")}outerHeight(e){return W.outerHeight(this,e)}static outerWidth(e,t=!1){if("boolean"!=typeof t)throw new TypeError('The "includeMargin" must be a boolean.');const r=W._preElemAndWinAndDoc(e,"outerWidth");return W.getDimension(r,"width",t?"margin":"border")}outerWidth(e){return W.outerWidth(this,e)}static animate(e,t,r){return W._preElems(e,"animate").forEach(e=>e.animate(t,r)),e}animate(e,t){return W.animate(this,e,t)}static offset(e){const t=W._preElem(e,"offset").getBoundingClientRect(),r=window.scrollY||document.documentElement.scrollTop,n=window.scrollX||document.documentElement.scrollLeft;return{top:t.top+r,left:t.left+n}}offset(){return W.offset(this)}static position(e){const t=W._preHtmlElem(e,"position");let r,n,o={top:0,left:0};if("fixed"===window.getComputedStyle(t).position)n=t.getBoundingClientRect();else{n=W.offset(t),r=t.offsetParent||document.documentElement;const{position:e}=window.getComputedStyle(r);for(;r instanceof HTMLElement&&(r===document.body||r===document.documentElement)&&"static"===e;)r=r.parentNode;if(r instanceof HTMLElement&&r!==t&&1===r.nodeType){const{borderTopWidth:e,borderLeftWidth:t}=W.cssFloats(r,["borderTopWidth","borderLeftWidth"]);o=W.offset(r),o.top+=e,o.left+=t}}return{top:n.top-o.top-W.cssFloat(t,"marginTop"),left:n.left-o.left-W.cssFloat(t,"marginLeft")}}position(){return W.position(this)}static offsetParent(e){let t=W._preHtmlElem(e,"offsetParent").offsetParent;for(;t instanceof HTMLElement&&"static"===window.getComputedStyle(t).position;)t=t.offsetParent;return t instanceof HTMLElement?t:document.documentElement}offsetParent(){return W.offsetParent(this)}static scrollTop(e){const t=W._preElemAndWindow(e,"scrollTop");return W.isWindow(t)?t.pageYOffset:9===t.nodeType?t.defaultView.pageYOffset:t.scrollTop}scrollTop(){return W.scrollTop(this)}static scrollLeft(e){const t=W._preElemAndWindow(e,"scrollLeft");return W.isWindow(t)?t.pageXOffset:9===t.nodeType?t.defaultView.pageXOffset:t.scrollLeft}scrollLeft(){return W.scrollLeft(this)}static easings={linear:e=>e,easeInQuad:e=>e*e,easeOutQuad:e=>e*(2-e),easeInOutQuad:e=>e<.5?2*e*e:(4-2*e)*e-1,easeInCubic:e=>e*e*e,easeOutCubic:e=>--e*e*e+1,easeInOutCubic:e=>e<.5?4*e*e*e:(e-1)*(2*e-2)*(2*e-2)+1};static scrollToXY(e,{targetX:t,targetY:r,duration:n,easing:o,onAnimation:i}={}){if(void 0!==t&&"number"!=typeof t)throw new TypeError("`targetX` must be a number if provided.");if(void 0!==r&&"number"!=typeof r)throw new TypeError("`targetY` must be a number if provided.");if(void 0!==n&&"number"!=typeof n)throw new TypeError("`duration` must be a number if provided.");if(void 0!==o&&"string"!=typeof o)throw new TypeError("`easing` must be a string if provided.");if(void 0!==o&&"function"!=typeof W.easings[o])throw new TypeError(`Unknown easing function: "${o}".`);if(void 0!==i&&"function"!=typeof i)throw new TypeError("`onAnimation` must be a function if provided.");const s=(e,t,r,n)=>{if(e instanceof Window)window.scrollTo(t,r);else if(9===e.nodeType)e.defaultView.scrollTo(t,r);else{const n=e instanceof Window?window.scrollX:e.scrollLeft,o=e instanceof Window?window.scrollY:e.scrollTop;n!==t&&(e.scrollLeft=t),o!==r&&(e.scrollTop=r)}"function"==typeof i&&i({x:t,y:r,isComplete:n>=1,time:n})};return W._preElemsAndWindow(e,"scrollToXY").forEach(e=>{const i=e instanceof Window?window.scrollX:e.scrollLeft,l=e instanceof Window?window.scrollY:e.scrollTop,a=t??i,c=r??l,p=a-i,m=c-l,u="string"==typeof o&&W.easings[o]||null;if("number"!=typeof n||"function"!=typeof u)return s(e,a,c,1);const d=performance.now(),f=n??0;requestAnimationFrame(function t(r){if("function"!=typeof u)return;const n=Math.min(1,(r-d)/f),o=u(n);s(e,i+p*o,l+m*o,n),n<1&&requestAnimationFrame(t)})}),e}scrollToXY({targetX:e,targetY:t,duration:r,easing:n,onAnimation:o}={}){return W.scrollToXY(this,{targetX:e,targetY:t,duration:r,easing:n,onAnimation:o})}static setScrollTop(e,t){if("number"!=typeof t)throw new TypeError("ScrollTop value must be a number.");return W.scrollToXY(e,{targetY:t})}setScrollTop(e){return W.setScrollTop(this,e)}static setScrollLeft(e,t){if("number"!=typeof t)throw new TypeError("ScrollLeft value must be a number.");return W.scrollToXY(e,{targetX:t})}setScrollLeft(e){return W.setScrollLeft(this,e)}static borderWidth(e){const t=W._preElem(e,"borderWidth"),{borderLeftWidth:r,borderRightWidth:n,borderTopWidth:o,borderBottomWidth:i}=W.cssFloats(t,["borderLeftWidth","borderRightWidth","borderTopWidth","borderBottomWidth"]);return{x:r+n,y:o+i,left:r,right:n,top:o,bottom:i}}borderWidth(){return W.borderWidth(this)}static border(e){const t=W._preElem(e,"border"),{borderLeft:r,borderRight:n,borderTop:o,borderBottom:i}=W.cssFloats(t,["borderLeft","borderRight","borderTop","borderBottom"]);return{x:r+n,y:o+i,left:r,right:n,top:o,bottom:i}}border(){return W.border(this)}static margin(e){const t=W._preElem(e,"margin"),{marginLeft:r,marginRight:n,marginTop:o,marginBottom:i}=W.cssFloats(t,["marginLeft","marginRight","marginTop","marginBottom"]);return{x:r+n,y:o+i,left:r,right:n,top:o,bottom:i}}margin(){return W.margin(this)}static padding(e){const t=W._preElem(e,"padding"),{paddingLeft:r,paddingRight:n,paddingTop:o,paddingBottom:i}=W.cssFloats(t,["paddingLeft","paddingRight","paddingTop","paddingBottom"]);return{x:r+n,y:o+i,left:r,right:n,top:o,bottom:i}}padding(){return W.padding(this)}static addClass(e,...t){return W._preElems(e,"addClass").forEach(e=>e.classList.add(...t)),e}addClass(...e){return W.addClass(this,...e)}static removeClass(e,...t){return W._preElems(e,"removeClass").forEach(e=>e.classList.remove(...t)),e}removeClass(...e){return W.removeClass(this,...e)}static replaceClass(e,t,r){if("string"!=typeof t)throw new TypeError('The "token" parameter must be a string.');if("string"!=typeof r)throw new TypeError('The "newToken" parameter must be a string.');const n=[];return W._preElems(e,"replaceClass").forEach(e=>n.push(e.classList.replace(t,r))),n}replaceClass(e,t){return W.replaceClass(this,e,t)[0]}static classItem(e,t){const r=W._preElem(e,"classItem");if("number"!=typeof t)throw new TypeError('The "index" parameter must be a number.');return r.classList.item(t)}classItem(e){return W.classItem(this,e)}static toggleClass(e,t,r){if("string"!=typeof t)throw new TypeError('The "token" parameter must be a string.');if(void 0!==r&&"boolean"!=typeof r)throw new TypeError('The "force" parameter must be a boolean.');const n=[];return W._preElems(e,"toggleClass").forEach(e=>n.push(e.classList.toggle(t,r))),n}toggleClass(e,t){return W.toggleClass(this,e,t)[0]}static hasClass(e,t){const r=W._preElem(e,"hasClass");if("string"!=typeof t)throw new TypeError('The "token" parameter must be a string.');return r.classList.contains(t)}hasClass(e){return W.hasClass(this,e)}static classLength(e){return W._preElem(e,"classLength").classList.length}classLength(){return W.classLength(this)}static classList(e){return W._preElem(e,"classList").classList.values().toArray()}classList(){return W.classList(this)}static tagName(e){return W._preElem(e,"tagName").tagName}tagName(){return W.tagName(this)}static id(e){return W._preElem(e,"id").id}id(){return W.id(this)}static text(e){return W._preElem(e,"text").textContent}text(){return W.text(this)}static setText(e,t){if("string"!=typeof t)throw new Error("Value is not a valid string.");return W._preElems(e,"setText").forEach(e=>e.textContent=t),e}setText(e){return W.setText(this,e)}static empty(e){return W._preElems(e,"empty").forEach(e=>e.textContent=""),e}empty(){return W.empty(this)}static html(e,t){return W._preElem(e,"html").getHTML(t)}html(e){return W.html(this,e)}static setHtml(e,t){if("string"!=typeof t)throw new Error("Value is not a valid string.");return W._preElems(e,"setHtml").forEach(e=>e.innerHTML=t),e}setHtml(e){return W.setHtml(this,e)}static _valHooks={option:{get:e=>{const t=e.getAttribute("value");return null!=t?t:e.textContent}},select:{get:e=>{const t=e.options,r=e.selectedIndex,n="select-one"===e.type,o=n?r+1:t.length,i=[];let s=r<0?o:n?r:0;for(;s<o;s++){const e=t[s],o=e.parentNode;if((e.selected||s===r)&&!e.disabled&&(!o||!o.disabled||"OPTGROUP"!==o.tagName)){const t=W._valHooks.option.get(e);if(n)return t;i.push(t)}}return i},set:(e,t)=>{const r=e.options,n=Array.isArray(t)?t.map(String):[String(t)];let o=!1;for(let e=0;e<r.length;e++){const t=r[e],i=W._valHooks.option.get(t);"string"==typeof i&&(t.selected=n.includes(i))&&(o=!0)}return o||(e.selectedIndex=-1),n}},radio:{get:e=>e.checked?"on":"off",set(e,t){if("boolean"==typeof t){const r=e.closest("label");return t&&r&&r.querySelectorAll('input[type="radio"]').forEach(t=>{t instanceof HTMLInputElement&&t!==e&&(t.checked=!1)}),e.checked=t,t}}},checkbox:{get:e=>e.checked?"on":"off",set(e,t){if("boolean"==typeof t)return e.checked=t,t}}};static setVal(e,t){return W._preInputElems(e,"setVal").forEach(e=>{if(1!==e.nodeType)return;let r="function"==typeof t?t(e,W.val(e)):t;null==r?r="":"number"==typeof r?r=String(r):Array.isArray(r)&&(r=((e,t)=>{const r=[];for(let n=0;n<e.length;n++)r.push(t(e[n]));return r})(r,e=>null==e?"":String(e)));const n=W._valHooks[e.type]||W._valHooks[e.nodeName.toLowerCase()];if(!n||"function"!=typeof n.set||void 0===n.set(e,r,"value")){if("string"!=typeof r&&"boolean"!=typeof r)throw new Error(`Invalid setValue "${typeof r}" value.`);"string"==typeof r&&(e.value=r)}}),e}setVal(e){return W.setVal(this,e)}static _valTypes={string:e=>e.value,date:e=>e.valueAsDate,number:e=>e.valueAsNumber};static _getValByType(e,t,r){if("string"!=typeof t)throw new TypeError('The "type" must be a string.');if("string"!=typeof r)throw new TypeError('The "where" must be a string.');if(!(e instanceof HTMLInputElement||e instanceof HTMLTextAreaElement))throw new Error(`Provided element is not an HTMLInputElement in ${r}().`);if("function"!=typeof W._valTypes[t])throw new Error(`No handler found for type "${t}" in ${r}().`);return W._valTypes[t](e)}static _val(e,t,r){const n=W._preInputElem(e,t),o=W._valHooks[n.type]||W._valHooks[n.nodeName.toLowerCase()];if(o&&"function"==typeof o.get){const e=o.get(n,"value",r);if(void 0!==e)return"string"==typeof e?e.replace(/\r/g,""):e}return W._getValByType(n,r,t)}_val(e,t){return W._val(this,e,t)}static val(e){return W._val(e,"val","string")}val(){return W.val(this)}static valTxt(e){const t=W._val(e,"valTxt","string");if("string"!=typeof t&&null!==t)throw new Error("Value is not a valid string.");return null==t?"":"string"==typeof t?t.replace(/\r/g,""):t}valTxt(){return W.valTxt(this)}static _valArr(e,t,r){const n=W._val(e,t,r);if(!Array.isArray(n))throw new Error(`Value expected an array but got ${typeof n}.`);return n}_valArr(e,t){return W._valArr(this,e,t)}static valArr(e){return W._valArr(e,"valArr","string")}valArr(){return W.valArr(this)}static valNb(e){if(!(W._preInputElem(e,"valNb")instanceof HTMLInputElement))throw new Error("Element must be an input element.");const t=W._val(e,"valNb","number");if(Number.isNaN(t))throw new Error("Value is not a valid number.");return t}valNb(){return W.valNb(this)}static valDate(e){if(!(W._preInputElem(e,"valDate")instanceof HTMLInputElement))throw new Error("Element must be an input element.");const t=W._val(e,"valDate","date");if(!(t instanceof Date))throw new Error("Value is not a valid date.");return t}valDate(){return W.valDate(this)}static valBool(e){const t=W._preInputElem(e,"valBool");if(!(t instanceof HTMLInputElement))throw new Error("Element must be an input element.");return"on"===W.val(t)}valBool(){return W.valBool(this)}static listenForPaste(e,{onFilePaste:t,onTextPaste:r}={}){if(void 0!==t&&"function"!=typeof t)throw new TypeError("onFilePaste must be a function.");if(void 0!==r&&"function"!=typeof r)throw new TypeError("onTextPaste must be a function.");const n=e=>{if(!(e instanceof ClipboardEvent))return;const n=e.clipboardData?.items||[];for(const e of n)if("file"===e.kind){if("function"==typeof t){const r=e.getAsFile();r&&t(e,r)}}else"string"===e.kind&&"function"==typeof r&&e.getAsString(t=>r(e,t))};return W._preElemsWithDoc(e,"listenForPaste").forEach(e=>W.on(e,"paste",n)),n}listenForPaste({onFilePaste:e,onTextPaste:t}={}){return W.listenForPaste(this,{onFilePaste:e,onTextPaste:t})}static hasEventListener(e,t){const r=W._preEventTargetElem(e,"hasEventListener");if(!S.has(r))return!1;const n=S.get(r);return!!(n&&Array.isArray(n[t])&&n[t].length>0)}hasEventListener(e){return W.hasEventListener(this,e)}static hasExactEventListener(e,t,r){const n=W._preEventTargetElem(e,"hasExactEventListener");if("function"!=typeof r)throw new TypeError('The "handler" must be a function.');if(!S.has(n))return!1;const o=S.get(n);return!(!o||!Array.isArray(o[t]))&&o[t].some(e=>e.handler===r)}hasExactEventListener(e,t){return W.hasExactEventListener(this,e,t)}static on(e,t,r,n){if("string"!=typeof t)throw new TypeError("The event name must be a string.");return W._preEventTargetElems(e,"on").forEach(e=>{e.addEventListener(t,r,n),S.has(e)||S.set(e,{});const o=S.get(e);o&&(Array.isArray(o[t])||(o[t]=[]),o[t].push({handler:r,options:n}))}),e}on(e,t,r){return W.on(this,e,t,r)}static once(e,t,r,n={}){if("string"!=typeof t)throw new TypeError("The event name must be a string.");return W._preEventTargetElems(e,"once").forEach(e=>{const o=n=>{W.off(e,t,o),"function"==typeof r&&r(n)};W.on(e,t,o,"boolean"==typeof n?n:{...n,once:!0})}),e}once(e,t,r={}){return W.once(this,e,t,r)}static off(e,t,r,n){if("string"!=typeof t)throw new TypeError("The event name must be a string.");return W._preEventTargetElems(e,"off").forEach(e=>{e.removeEventListener(t,r,n);const o=S.get(e);o&&o[t]&&(o[t]=o[t].filter(e=>e.handler!==r),0===o[t].length&&delete o[t])}),e}off(e,t,r){return W.off(this,e,t,r)}static offAll(e,t){if("string"!=typeof t)throw new TypeError("The event name must be a string.");return W._preEventTargetElems(e,"offAll").forEach(e=>{const r=S.get(e);if(r&&r[t]){for(const n of r[t])e.removeEventListener(t,n.handler,n.options);delete r[t]}}),e}offAll(e){return W.offAll(this,e)}static offAllTypes(e,t=null){if(null!==t&&"function"!=typeof t)throw new TypeError('The "filterFn" must be a function.');return W._preEventTargetElems(e,"offAllTypes").forEach(e=>{const r=S.get(e);if(r){for(const n in r)for(const o of r[n])("function"!=typeof t||t(o.handler,n))&&e.removeEventListener(n,o.handler,o.options);S.delete(e)}}),e}offAllTypes(e=null){return W.offAllTypes(this,e)}static trigger(e,t,r={}){if("string"!=typeof t)throw new TypeError("The event name must be a string.");return W._preEventTargetElems(e,"trigger").forEach(e=>{const n=r instanceof Event||r instanceof CustomEvent?r:new CustomEvent(t,{bubbles:!0,cancelable:!0,detail:r});e.dispatchEvent(n)}),e}trigger(e,t={}){return W.trigger(this,e,t)}static#r={for:"htmlFor",class:"className"};static propFix=new Proxy(W.#r,{set:(e,t,r)=>(e[t]=r,W.attrFix[r]=t,!0)});static attrFix=Object.fromEntries(Object.entries(W.#r).map(([e,t])=>[t,e]));static getPropName(e){return"string"==typeof W.propFix[e]?W.propFix[e]:e}static getAttrName(e){return"string"==typeof W.attrFix[e]?W.attrFix[e]:e}static attr(e,t){if("string"!=typeof t)throw new TypeError('The "name" must be a string.');return W._preElem(e,"attr").getAttribute(W.getAttrName(t))}attr(e){return W.attr(this,e)}static setAttr(e,t,r=null){if("string"!=typeof t)throw new TypeError('The "name" must be a string.');if(null!==r&&"string"!=typeof r)throw new TypeError('The "value" must be a string.');return W._preElems(e,"setAttr").forEach(e=>{null===r?e.removeAttribute(W.getAttrName(t)):e.setAttribute(W.getAttrName(t),r)}),e}setAttr(e,t){return W.setAttr(this,e,t)}static removeAttr(e,t){if("string"!=typeof t)throw new TypeError('The "name" must be a string.');return W._preElems(e,"removeAttr").forEach(e=>e.removeAttribute(W.getAttrName(t))),e}removeAttr(e){return W.removeAttr(this,e)}static hasAttr(e,t){if("string"!=typeof t)throw new TypeError('The "name" must be a string.');return W._preElem(e,"hasAttr").hasAttribute(W.getAttrName(t))}hasAttr(e){return W.hasAttr(this,e)}static hasProp(e,t){if("string"!=typeof t)throw new TypeError('The "name" must be a string.');return!!W._preElem(e,"hasProp")[W.getPropName(t)]}hasProp(e){return W.hasProp(this,e)}static addProp(e,t){if("string"!=typeof t)throw new TypeError('The "name" must be a string.');return W._preElems(e,"addProp").forEach(e=>{e[W.getPropName(t)]=!0}),e}addProp(e){return W.addProp(this,e)}static removeProp(e,t){if("string"!=typeof t)throw new TypeError('The "name" must be a string.');return W._preElems(e,"removeProp").forEach(e=>{e[W.getPropName(t)]=!1}),e}removeProp(e){return W.removeProp(this,e)}static toggleProp(e,t,r){if("string"!=typeof t)throw new TypeError('The "name" must be a string.');if(void 0!==r&&"boolean"!=typeof r)throw new TypeError('The "force" must be a boolean.');W._preElems(e,"toggleProp").forEach(e=>{(void 0===r?!e[W.getPropName(t)]:r)?W.addProp(e,t):W.removeProp(e,t)})}toggleProp(e,t){return W.toggleProp(this,e,t)}static remove(e){return W._preElems(e,"remove").forEach(e=>e.remove()),e}remove(){return W.remove(this)}static index(e,t=null){const r=W._preElem(e,"index");if(!r)return-1;if(!t)return Array.prototype.indexOf.call(r.parentNode?.children||[],r);if(t){const e="string"==typeof t?document.querySelectorAll(t):W._preElems(t,"index");return Array.prototype.indexOf.call(e,r)}return-1}index(e){return W.index(this,e)}static _getCustomRect(e,t){const r={height:0,width:0,x:0,y:0,bottom:0,left:0,right:0,top:0,toJSON:function(){throw new Error("Function not implemented.")}};for(const t in e)"number"==typeof e[t]&&(r[t]=e[t]);if("object"!=typeof t||null===t||Array.isArray(t))throw new Error("extraRect must be a non-null object.");const{height:n=0,width:o=0,top:i=0,bottom:s=0,left:l=0,right:a=0}=t;if("number"!=typeof n)throw new Error("extraRect.height must be a number.");if("number"!=typeof o)throw new Error("extraRect.width must be a number.");if("number"!=typeof i)throw new Error("extraRect.top must be a number.");if("number"!=typeof s)throw new Error("extraRect.bottom must be a number.");if("number"!=typeof l)throw new Error("extraRect.left must be a number.");if("number"!=typeof a)throw new Error("extraRect.right must be a number.");return r.height+=n,r.width+=o,r.top+=i,r.bottom+=s,r.left+=l,r.right+=a,r}static isCollWith(e,t,r={}){const n=W._getCustomRect(W._preElem(e,"isCollWith").getBoundingClientRect(),r),o=W._preElem(t,"isCollWith").getBoundingClientRect();return T(n,o)}isCollWith(e,t){return W.isCollWith(this,e,t)}static isCollPerfWith(e,t,r={}){const n=W._getCustomRect(W._preElem(e,"isCollPerfWith").getBoundingClientRect(),r),o=W._preElem(t,"isCollPerfWith").getBoundingClientRect();return v(n,o)}isCollPerfWith(e,t){return W.isCollPerfWith(this,e,t)}static _isCollWithLock(e,t,r,n,o){const i=k[o];if(e)return i.has(n)||i.set(n,!0),!0;if(i.has(n)){let e=!1;switch(o){case"top":e=_(t,r);break;case"bottom":e=C(t,r);break;case"left":e=A(t,r);break;case"right":e=x(t,r)}return e&&i.delete(n),i.has(n)}return!1}static isCollWithLock(e,t,r,n={}){const o=W._preElem(e,"isCollWithLock"),i=W._preElem(t,"isCollWithLock"),s=W._getCustomRect(o.getBoundingClientRect(),n),l=i.getBoundingClientRect(),a=T(s,l);return W._isCollWithLock(a,s,l,o,r)}isCollWithLock(e,t,r){return W.isCollWithLock(this,e,t,r)}static isCollPerfWithLock(e,t,r,n={}){const o=W._preElem(e,"isCollPerfWithLock"),i=W._preElem(t,"isCollPerfWithLock"),s=W._getCustomRect(o.getBoundingClientRect(),n),l=i.getBoundingClientRect(),a=v(s,l);return W._isCollWithLock(a,s,l,o,r)}isCollPerfWithLock(e,t,r){return W.isCollPerfWithLock(this,e,t,r)}static resetCollLock(e){const t=W._preElem(e,"resetCollLock");let r=!1;for(const e of["top","bottom","left","right"])k[e].has(t)&&(k[e].delete(t),r=!0);return r}resetCollLock(){return W.resetCollLock(this)}static resetCollLockDir(e,t){const r=W._preElem(e,"resetCollLockDir"),n=k[t];return!!n.has(r)&&(n.delete(r),!0)}resetCollLockDir(e){return W.resetCollLockDir(this,e)}static isInViewport(e){const t=W._preElem(e,"isInViewport");if(!t.checkVisibility({contentVisibilityAuto:!1,opacityProperty:!1,visibilityProperty:!1}))return!1;const r=W.offset(t).top,n=r+W.outerHeight(t),o=W.scrollTop(window),i=o+W.height(window);return n>o&&r<i}isInViewport(){return W.isInViewport(this)}static isScrolledIntoView(e){const t=W._preElem(e,"isScrolledIntoView");if(!t.checkVisibility({contentVisibilityAuto:!1,opacityProperty:!1,visibilityProperty:!1}))return!1;const r=W.scrollTop(window),n=r+W.height(window),o=W.offset(t).top;return o+W.height(t)<=n&&o>=r}isScrolledIntoView(){return W.isScrolledIntoView(this)}static isInContainer(e,t){const r=W._preElem(e,"isInContainer"),n=W._preElem(t,"isInContainer");if(!r.checkVisibility({contentVisibilityAuto:!1,opacityProperty:!1,visibilityProperty:!1}))return!1;const o=r.getBoundingClientRect(),i=n.getBoundingClientRect(),s=o.bottom>i.top&&o.top<i.bottom,l=o.right>i.left&&o.left<i.right;return s&&l}isInContainer(e){return W.isInContainer(this,e)}static isFullyInContainer(e,t){const r=W._preElem(e,"isScrolledIntoView"),n=W._preElem(t,"isInContainer");if(!r.checkVisibility({contentVisibilityAuto:!1,opacityProperty:!1,visibilityProperty:!1}))return!1;const o=r.getBoundingClientRect(),i=n.getBoundingClientRect();return o.top>=i.top&&o.bottom<=i.bottom&&o.left>=i.left&&o.right<=i.right}isFullyInContainer(e){return W.isFullyInContainer(this,e)}static hasScroll(e){const t=W._preElem(e,"hasScroll");return{v:t.scrollHeight>t.clientHeight,h:t.scrollWidth>t.clientWidth}}hasScroll(){return W.hasScroll(this)}}const P=W;window.TinyHtml=t.TinyHtml})();
@@ -0,0 +1 @@
1
+ (()=>{"use strict";var e={d:(t,n)=>{for(var r in n)e.o(n,r)&&!e.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:n[r]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t)},t={};e.d(t,{TinyIframeEvents:()=>s});const n=class{#e=new Map;#t=10;#n=!1;setThrowOnMaxListeners(e){if("boolean"!=typeof e)throw new TypeError("setThrowOnMaxListeners(value): value must be a boolean");this.#n=e}getThrowOnMaxListeners(){return this.#n}#r(e,t,{once:n=!1}={}){let r=this.#e.get(e);Array.isArray(r)||(r=[],this.#e.set(e,r)),r.unshift({handler:t,config:{once:n}});const s=this.#t;if(s>0&&r.length>s){const t=`Possible memory leak detected. ${r.length} "${e}" listeners added. Use setMaxListeners() to increase limit.`;if(this.#n)throw new Error(t);console.warn(t)}}prependListener(e,t){if("string"!=typeof e)throw new TypeError("prepend(event, handler): event name must be a string");if("function"!=typeof t)throw new TypeError("prepend(event, handler): handler must be a function");this.#r(e,t)}prependListenerOnce(e,t){if("string"!=typeof e)throw new TypeError("prependOnceListener(event, handler): event name must be a string");if("function"!=typeof t)throw new TypeError("prependOnceListener(event, handler): handler must be a function");const n=(...r)=>{this.off(e,n),t(...r)};return this.#r(e,n,{once:!0}),n}#s(e,t,{once:n=!1}={}){let r=this.#e.get(e);Array.isArray(r)||(r=[],this.#e.set(e,r)),r.push({handler:t,config:{once:n}});const s=this.#t;if(s>0&&r.length>s){const t=`Possible memory leak detected. ${r.length} "${e}" listeners added. Use setMaxListeners() to increase limit.`;if(this.#n)throw new Error(t);console.warn(t)}}on(e,t){if("string"!=typeof e)throw new TypeError("on(event, handler): event name must be a string");if("function"!=typeof t)throw new TypeError("on(event, handler): handler must be a function");return this.#s(e,t)}once(e,t){if("string"!=typeof e)throw new TypeError("The event name must be a string.");if("function"!=typeof t)throw new TypeError("once(event, handler): handler must be a function");const n=r=>{this.off(e,n),"function"==typeof t&&t(r)};return this.#s(e,n,{once:!0}),n}appendListener(e,t){return this.on(e,t)}appendListenerOnce(e,t){return this.once(e,t)}off(e,t){if("string"!=typeof e)throw new TypeError("off(event, handler): event name must be a string");if("function"!=typeof t)throw new TypeError("off(event, handler): handler must be a function");const n=this.#e.get(e);if(!Array.isArray(n))return;const r=n.findIndex(e=>e.handler===t);-1!==r&&n.splice(r,1),0===n.length&&this.#e.delete(e)}offAll(e){if("string"!=typeof e)throw new TypeError("The event name must be a string.");this.#e.delete(e)}offAllTypes(){this.#e.clear()}listenerCount(e){if("string"!=typeof e)throw new TypeError("listenerCount(event): event name must be a string");const t=this.#e.get(e);return Array.isArray(t)?t.length:0}listeners(e){if("string"!=typeof e)throw new TypeError("listeners(event): event name must be a string");const t=this.#e.get(e);return Array.isArray(t)?[...t].filter(e=>!e.config.once).map(e=>e.handler):[]}onceListeners(e){if("string"!=typeof e)throw new TypeError("onceListeners(event): event name must be a string");const t=this.#e.get(e);return Array.isArray(t)?[...t].filter(e=>e.config.once).map(e=>e.handler):[]}allListeners(e){if("string"!=typeof e)throw new TypeError("allListeners(event): event name must be a string");const t=this.#e.get(e);return Array.isArray(t)?[...t].map(e=>e.handler):[]}eventNames(){return[...this.#e.keys()]}emit(e,...t){if("string"!=typeof e)throw new TypeError("emit(event, data): event name must be a string");const n=this.#e.get(e);return!(!Array.isArray(n)||0===n.length||(n.forEach(e=>e.handler(...t)),0))}setMaxListeners(e){if(!Number.isInteger(e)||e<0)throw new TypeError("setMaxListeners(n): n must be a non-negative integer");this.#t=e}getMaxListeners(){return this.#t}},r=new WeakMap,s=class{#i=new n;setThrowOnMaxListeners(e){return this.#i.setThrowOnMaxListeners(e)}getThrowOnMaxListeners(){return this.#i.getThrowOnMaxListeners()}prependListener(e,t){return this.#i.prependListener(e,t)}prependListenerOnce(e,t){return this.#i.prependListenerOnce(e,t)}appendListener(e,t){return this.#i.appendListener(e,t)}appendListenerOnce(e,t){return this.#i.appendListenerOnce(e,t)}on(e,t){return this.#i.on(e,t)}once(e,t){return this.#i.once(e,t)}off(e,t){return this.#i.off(e,t)}offAll(e){return this.#i.offAll(e)}offAllTypes(){return this.#i.offAllTypes()}listenerCount(e){return this.#i.listenerCount(e)}listeners(e){return this.#i.listeners(e)}onceListeners(e){return this.#i.onceListeners(e)}allListeners(e){return this.#i.allListeners(e)}eventNames(){return this.#i.eventNames()}setMaxListeners(e){return this.#i.setMaxListeners(e)}getMaxListeners(){return this.#i.getMaxListeners()}#o;#a;#h;#d=!1;#f=!1;#p=[];#l="__tinyIframeEvent__";get secretEventName(){return this.#l}set secretEventName(e){if("string"!=typeof e)throw new TypeError("TinyIframeEvents: secretEventName must be a string.");this.#l=e}constructor({targetIframe:e,targetOrigin:t}={}){if(!(void 0===e||e instanceof HTMLIFrameElement&&e.contentWindow))throw new TypeError('[TinyIframeEvents] Invalid "targetIframe" provided: expected a HTML Iframe Element, received '+typeof e);if(void 0!==t&&"string"!=typeof t)throw new TypeError('[TinyIframeEvents] Invalid "targetOrigin" provided: expected a string, received '+typeof t);if(this.#o=e?.contentWindow??window.parent,this.#a=t??window.location.origin,this.#h=e?"parent":"iframe",r.has(this.#o))throw new Error("Duplicate window reference.");this._boundOnMessage=this.#c.bind(this),this._boundOnceMessage=this.#g.bind(this),"complete"===this.#o.document.readyState||"interactive"===this.#o.document.readyState?this.#g():(this.#o.addEventListener("load",this._boundOnceMessage,!1),this.#o.addEventListener("DOMContentLoaded",this._boundOnceMessage,!1)),window.addEventListener("message",this._boundOnMessage,!1),r.set(this.#o,this)}#g(){this.#f||(this.#f=!0,this.#u())}#c(e){const{data:t,source:n}=e;if(null===(r=t)||"object"!=typeof r||Array.isArray(r)||"[object Object]"!==Object.prototype.toString.call(r)||!t[this.#l])return;var r;const{eventName:s,payload:i,direction:o}=t;n===this.#o&&("iframe"===this.#h&&"iframe"!==o||"parent"===this.#h&&"parent"!==o||this.#i.emit(s,i,e))}emit(e,t){if("string"!=typeof e)throw new TypeError("Event name must be a string.");if(this.#d)throw new Error("Cannot emit: instance has been destroyed.");const n={[this.#l]:!0,eventName:e,payload:t,direction:"parent"===this.#h?"iframe":"parent"};this.#f?this.#o.postMessage(n,this.#a):this.#p.push(n)}#u(){for(;this.#p.length;){const e=this.#p.shift();e&&this.#o.postMessage(e,this.#a)}}isDestroyed(){return this.#d}destroy(){this.#d=!0,window.removeEventListener("message",this._boundOnMessage),this.#o.removeEventListener("load",this._boundOnceMessage,!1),this.#o.removeEventListener("DOMContentLoaded",this._boundOnceMessage,!1),this.#i.offAllTypes(),this.#p=[],r.delete(this.#o)}};window.TinyIframeEvents=t.TinyIframeEvents})();
@@ -0,0 +1 @@
1
+ (()=>{"use strict";var e={d:(t,n)=>{for(var s in n)e.o(n,s)&&!e.o(t,s)&&Object.defineProperty(t,s,{enumerable:!0,get:n[s]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t)},t={};e.d(t,{TinyNewWinEvents:()=>r});const n=class{#e=new Map;#t=10;#n=!1;setThrowOnMaxListeners(e){if("boolean"!=typeof e)throw new TypeError("setThrowOnMaxListeners(value): value must be a boolean");this.#n=e}getThrowOnMaxListeners(){return this.#n}#s(e,t,{once:n=!1}={}){let s=this.#e.get(e);Array.isArray(s)||(s=[],this.#e.set(e,s)),s.unshift({handler:t,config:{once:n}});const r=this.#t;if(r>0&&s.length>r){const t=`Possible memory leak detected. ${s.length} "${e}" listeners added. Use setMaxListeners() to increase limit.`;if(this.#n)throw new Error(t);console.warn(t)}}prependListener(e,t){if("string"!=typeof e)throw new TypeError("prepend(event, handler): event name must be a string");if("function"!=typeof t)throw new TypeError("prepend(event, handler): handler must be a function");this.#s(e,t)}prependListenerOnce(e,t){if("string"!=typeof e)throw new TypeError("prependOnceListener(event, handler): event name must be a string");if("function"!=typeof t)throw new TypeError("prependOnceListener(event, handler): handler must be a function");const n=(...s)=>{this.off(e,n),t(...s)};return this.#s(e,n,{once:!0}),n}#r(e,t,{once:n=!1}={}){let s=this.#e.get(e);Array.isArray(s)||(s=[],this.#e.set(e,s)),s.push({handler:t,config:{once:n}});const r=this.#t;if(r>0&&s.length>r){const t=`Possible memory leak detected. ${s.length} "${e}" listeners added. Use setMaxListeners() to increase limit.`;if(this.#n)throw new Error(t);console.warn(t)}}on(e,t){if("string"!=typeof e)throw new TypeError("on(event, handler): event name must be a string");if("function"!=typeof t)throw new TypeError("on(event, handler): handler must be a function");return this.#r(e,t)}once(e,t){if("string"!=typeof e)throw new TypeError("The event name must be a string.");if("function"!=typeof t)throw new TypeError("once(event, handler): handler must be a function");const n=s=>{this.off(e,n),"function"==typeof t&&t(s)};return this.#r(e,n,{once:!0}),n}appendListener(e,t){return this.on(e,t)}appendListenerOnce(e,t){return this.once(e,t)}off(e,t){if("string"!=typeof e)throw new TypeError("off(event, handler): event name must be a string");if("function"!=typeof t)throw new TypeError("off(event, handler): handler must be a function");const n=this.#e.get(e);if(!Array.isArray(n))return;const s=n.findIndex(e=>e.handler===t);-1!==s&&n.splice(s,1),0===n.length&&this.#e.delete(e)}offAll(e){if("string"!=typeof e)throw new TypeError("The event name must be a string.");this.#e.delete(e)}offAllTypes(){this.#e.clear()}listenerCount(e){if("string"!=typeof e)throw new TypeError("listenerCount(event): event name must be a string");const t=this.#e.get(e);return Array.isArray(t)?t.length:0}listeners(e){if("string"!=typeof e)throw new TypeError("listeners(event): event name must be a string");const t=this.#e.get(e);return Array.isArray(t)?[...t].filter(e=>!e.config.once).map(e=>e.handler):[]}onceListeners(e){if("string"!=typeof e)throw new TypeError("onceListeners(event): event name must be a string");const t=this.#e.get(e);return Array.isArray(t)?[...t].filter(e=>e.config.once).map(e=>e.handler):[]}allListeners(e){if("string"!=typeof e)throw new TypeError("allListeners(event): event name must be a string");const t=this.#e.get(e);return Array.isArray(t)?[...t].map(e=>e.handler):[]}eventNames(){return[...this.#e.keys()]}emit(e,...t){if("string"!=typeof e)throw new TypeError("emit(event, data): event name must be a string");const n=this.#e.get(e);return!(!Array.isArray(n)||0===n.length||(n.forEach(e=>e.handler(...t)),0))}setMaxListeners(e){if(!Number.isInteger(e)||e<0)throw new TypeError("setMaxListeners(n): n must be a non-negative integer");this.#t=e}getMaxListeners(){return this.#t}},s=new WeakMap,r=class{#i=new n;setThrowOnMaxListeners(e){return this.#i.setThrowOnMaxListeners(e)}getThrowOnMaxListeners(){return this.#i.getThrowOnMaxListeners()}prependListener(e,t){return this.#i.prependListener(e,t)}prependListenerOnce(e,t){return this.#i.prependListenerOnce(e,t)}appendListener(e,t){return this.#i.appendListener(e,t)}appendListenerOnce(e,t){return this.#i.appendListenerOnce(e,t)}on(e,t){return this.#i.on(e,t)}once(e,t){return this.#i.once(e,t)}off(e,t){return this.#i.off(e,t)}offAll(e){return this.#i.offAll(e)}offAllTypes(){return this.#i.offAllTypes()}listenerCount(e){return this.#i.listenerCount(e)}listeners(e){return this.#i.listeners(e)}onceListeners(e){return this.#i.onceListeners(e)}allListeners(e){return this.#i.allListeners(e)}eventNames(){return this.#i.eventNames()}setMaxListeners(e){return this.#i.setMaxListeners(e)}getMaxListeners(){return this.#i.getMaxListeners()}#o;#a;#h=[];#l=!1;#w=!1;#d=null;#f="__TNE_READY__";#p="__TNE_ROUTE__";get readyEventName(){return this.#f}set readyEventName(e){if("string"!=typeof e)throw new TypeError("TinyNewWinEvents: readyEventName must be a string.");this.#f=e}get routeEventName(){return this.#p}set routeEventName(e){if("string"!=typeof e)throw new TypeError("TinyNewWinEvents: routeEventName must be a string.");this.#p=e}constructor({targetOrigin:e,url:t,name:n,features:r}={}){if("string"==typeof n&&"_blank"===n)throw new Error('TinyNewWinEvents: The window name "_blank" is not supported. Please use a custom name to allow tracking.');if(void 0!==e&&"string"!=typeof e)throw new TypeError('TinyNewWinEvents: The "targetOrigin" option must be a string.');if(void 0!==t&&"string"!=typeof t)throw new TypeError('TinyNewWinEvents: The "url" option must be a string.');if(void 0!==r&&"string"!=typeof r)throw new TypeError('TinyNewWinEvents: The "features" option must be a string if provided.');if(void 0===t?this.#o=window.opener:(this.#o="string"==typeof t?window.open(t,n,r):t,this.#w=!0),!this.#o||s.has(this.#o))throw new Error("Invalid or duplicate window reference.");this.#a=e??window.location.origin,this._handleMessage=this.#u.bind(this),window.addEventListener("message",this._handleMessage,!1),this.#w||(this.#y(this.#f,null),this.#v())}getWin(){return this.#o}#u(e){if(!e.source||this.#o&&e.source!==this.#o)return;const{type:t,route:n,payload:s}=e.data||{};if(t===this.#f)return this.#l=!0,this.#c(),this.#v(),void(this.#w&&this.#y(this.#f,null));t===this.#p&&this.#i.emit(n,s,e)}#c(){for(;this.#h.length;){const e=this.#h.shift();if(e){const{route:t,payload:n}=e;this.emit(t,n)}}}#y(e,t,n=""){this.#o&&this.#o.closed||this.#o?.postMessage({type:e,route:n,payload:t},this.#a)}close(){if(!this.#w)throw new Error("Only host can close the window.");this.#o&&!this.#o.closed&&this.#o.close()}emit(e,t){if("string"!=typeof e)throw new TypeError("Event name must be a string.");if(this.isDestroyed())throw new Error("Cannot emit: instance has been destroyed.");this.#l?this.#y(this.#p,t,e):this.#h.push({route:e,payload:t})}isConnected(){return!(!this.#l||!this.#o||this.#o.closed)}#v(){this.#o&&!this.#d&&(this.#d=setInterval(()=>{this.#o?.closed&&(this.#i.emit("WINDOW_REF_CLOSED"),this.destroy())},500),s.set(this.#o,this.#d))}onClose(e){return this.#i.on("WINDOW_REF_CLOSED",e)}offClose(e){return this.#i.off("WINDOW_REF_CLOSED",e)}isDestroyed(){return!this.#o}destroy(){this.#o&&(this.#d&&(clearInterval(this.#d),this.#d=null,s.delete(this.#o)),window.removeEventListener("message",this._handleMessage),this.#h=[],this.#l=!1,this.#o=null,this.#i.offAllTypes())}};window.TinyNewWinEvents=t.TinyNewWinEvents})();