dynamic-html-helpers 1.5.8 → 1.5.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../Resource/Resource/Common/TypeofAnything.js", "../Resource/Resource/Common/EmbedResources.js", "../Resource/Resource/Common/tinyDOM.js", "../Resource/Resource/Common/LifeCSS.js", "../Resource/Resource/Common/HTMLTags.js", "../Resource/Resource/Common/DOMCleanup.js", "../Resource/Resource/Common/DOM.js", "../Resource/Resource/Common/Popup.js", "../Resource/Resource/Common/HandlerFactory.js", "../Resource/Resource/Common/Utilities.js", "../Resource/src/JQxUtilities.js", "../Resource/src/JQxInstanceMethods.js", "../Resource/src/JQxCreatorFactory.js", "../Resource/src/JQxConstructorFactory.js", "../Resource/index.js", "../Resource/Externals/ticktock.min.js", "../Resource/Externals/REHelper.js", "../Resource/Externals/splat.min.js", "../index.js"],
4
- "sourcesContent": ["const toaSymbols = Symbol.for(\"toa.symbols\");\r\nObject[toaSymbols] = Object.create(null, {});\r\nconst { IS, isOnly, maybe, $Wrap, isNothing, addSymbolicExtensions, proxyWrapper, } =\r\n TOAFactory({useSymbolicExtensions: false});\r\n\r\nexport { IS as default, maybe, isOnly, $Wrap, proxyWrapper, isNothing, addSymbolicExtensions, };\r\n\r\nfunction TOAFactory(specs = {}) {\r\n const { useSymbolicExtensions } = specs;\r\n const isJust = typeCheckFactory();\r\n const { shouldbeIsSingleObject, ISOneOf, isExcept, verifyNothingness, determineType,\r\n addSymbolicExtensions, maybe, $Wrap, detectableProxy } = TOAHelpers(IS, useSymbolicExtensions);\r\n const proxyWrapper = detectableProxy;\r\n \r\n if (!!useSymbolicExtensions) { addSymbolicExtensions(); }\r\n const TOASymbols = Object[toaSymbols];\r\n return {IS, isOnly, maybe, $Wrap, isNothing: verifyNothingness, addSymbolicExtensions, proxyWrapper, };\r\n \r\n function IS(anything, ...shouldBe) {\r\n const unChained = Object.getOwnPropertySymbols(anything || {})?.some(v => v === TOASymbols.justME) && shouldBe.length > 0;\r\n const single = anything?.[TOASymbols.justME];\r\n const input = unChained ? single : typeof anything === `symbol` ? TOASymbols.isSymbol : anything;\r\n switch(true) {\r\n case unChained: return isJust(single, ...shouldBe);\r\n case !!maybe({trial: _ => `isTypes` in (shouldBe?.[0] ?? {})}):\r\n return shouldbeIsSingleObject(anything, shouldBe[0]);\r\n default: return shouldBe.length > 1 ? ISOneOf(input, ...shouldBe) : determineType(anything, ...shouldBe);\r\n }\r\n }\r\n \r\n function isOnly(anything, ...shouldBe) {\r\n return IS({[TOASymbols.justME]: anything}, ...shouldBe);\r\n }\r\n}\r\n\r\nfunction TOAHelpers(IS, useSymbolicExtensions) {\r\n const { SymbolAndCustomProxyFactory, maybeFactory, WrapAnyFactory,\r\n verifyNothingness, determineType, detectableProxy } = AUXHelperFactory(IS, typeOf);\r\n const {addSymbolicExtensions} = SymbolAndCustomProxyFactory(IS, typeOf, useSymbolicExtensions);\r\n const [maybe, $Wrap] = [maybeFactory(), WrapAnyFactory(IS, typeOf)];\r\n \r\n return Object.freeze({\r\n shouldbeIsSingleObject, ISOneOf, isExcept, verifyNothingness,\r\n determineType, detectableProxy, addSymbolicExtensions, maybe, $Wrap });\r\n \r\n function typeOf(anything) {\r\n return anything?.[Object[toaSymbols].proxy] || IS(anything);\r\n }\r\n \r\n function shouldbeIsSingleObject(anything, isTypeObj) {\r\n switch(true) {\r\n case `defaultValue` in isTypeObj: return isOrDefault(anything, isTypeObj);\r\n case `notTypes` in isTypeObj: return isExcept(anything, isTypeObj);\r\n default: return IS(anything, ...[isTypeObj.isTypes].flat());\r\n }\r\n }\r\n \r\n function ISOneOf(obj, ...params) {\r\n return params.some(param => IS(obj, param));\r\n }\r\n \r\n function isOrDefault(input, {defaultValue, isTypes = [undefined], notTypes} = {}) {\r\n isTypes = isTypes?.constructor !== Array ? [isTypes] : isTypes;\r\n notTypes = notTypes && notTypes?.constructor !== Array ? [notTypes] : [];\r\n return notTypes.length < 1\r\n ? IS(input, ...isTypes) ? input : defaultValue\r\n : isExcept(input, {isTypes, notTypes}) ? input : defaultValue;\r\n }\r\n \r\n function isExcept(input, {isTypes = [undefined], notTypes = [undefined]} = {}) {\r\n isTypes = isTypes?.constructor !== Array ? [isTypes] : isTypes;\r\n notTypes = notTypes?.constructor !== Array ? [notTypes] : notTypes;\r\n return IS(input, ...isTypes) && !IS(input, ...notTypes);\r\n }\r\n}\r\n\r\nfunction AUXHelperFactory() {\r\n const TOASymbols = Object[toaSymbols];\r\n const SYMBOL_KEYS = {\r\n IS: 'toa.is',\r\n TYPE: 'toa.type',\r\n IS_SYMBOL: 'toa.isASymbol',\r\n PROXY: 'toa.proxyFor',\r\n TARGET: 'toa.target',\r\n JUSTME: 'toa.justME',\r\n };\r\n \r\n const TYPE_STRINGS = {\r\n NAN: 'NaN',\r\n INFINITY: 'Infinity',\r\n BOOLEAN: 'Boolean',\r\n OBJECT: 'Object',\r\n PROXY_PREFIX: 'Proxy for',\r\n };\r\n const detectableProxy = detectableProxyFactory();\r\n \r\n return Object.freeze({\r\n SymbolAndCustomProxyFactory: addSymbolsFactory, maybeFactory, WrapAnyFactory,\r\n verifyNothingness, determineType, detectableProxy,\r\n }\r\n );\r\n \r\n function detectableProxyFactory() {\r\n const trapped = type => ({\r\n get(target, key) {\r\n return key === Object[toaSymbols].proxy\r\n ? `Proxy for ${type}`\r\n : key === Object[toaSymbols].target\r\n ? target : Reflect.get(target, key);\r\n },\r\n has(target, key) { return key === Object[toaSymbols].proxy ? true : key in target; }\r\n });\r\n \r\n function wrapProxy(proxy2Wrap) {\r\n const type = proxy2Wrap.name || proxy2Wrap.constructor.name;\r\n return new Proxy( proxy2Wrap, trapped(type) );\r\n }\r\n \r\n function createDetectableProxy(target, traps) {\r\n traps = IS(traps, Object) ? traps : {};\r\n return wrapProxy(new Proxy(target, traps));\r\n }\r\n \r\n return {\r\n wrap: wrapProxy,\r\n create: createDetectableProxy\r\n };\r\n }\r\n \r\n function addSymbols2Anything(IS, typeOf) {\r\n if (!TOASymbols.is) {\r\n TOASymbols.is = Symbol(SYMBOL_KEYS.IS);\r\n TOASymbols.type = Symbol(SYMBOL_KEYS.TYPE);\r\n \r\n Object.defineProperties(Object.prototype, {\r\n [TOASymbols.type]: { get() { return typeOf(this); }, enumerable: false, configurable: true },\r\n [TOASymbols.is]: { value: function (...args) { return IS(this, ...args); }, enumerable: false, configurable: false },\r\n });\r\n Object.defineProperties(Object, {\r\n [TOASymbols.type]: { value(obj) { return typeOf(obj); }, enumerable: false, configurable: false },\r\n [TOASymbols.is]: { value: function (obj, ...args) { return IS(obj, ...args); }, enumerable: false, configurable: false },\r\n });\r\n }\r\n }\r\n \r\n function addSymbolsFactory(IS, typeOf, useSymbolicExtension) {\r\n \r\n if (!TOASymbols.isSymbol) {\r\n TOASymbols.isSymbol = Symbol(SYMBOL_KEYS.IS_SYMBOL);\r\n TOASymbols.proxy = Symbol(SYMBOL_KEYS.PROXY);\r\n TOASymbols.target = Symbol(SYMBOL_KEYS.TARGET);\r\n TOASymbols.justME = Symbol(SYMBOL_KEYS.JUSTME);\r\n }\r\n return {addSymbolicExtensions: () => addSymbols2Anything(IS, typeOf)};\r\n }\r\n \r\n function constructor2String(obj) {\r\n const ctor = !isNothing(obj, true) ? Object.getPrototypeOf(obj)?.constructor : {name: `unknown`};\r\n return ctor.name;\r\n }\r\n \r\n function processInput(input, ...shouldBe) {\r\n const noShouldbe = shouldBe.length < 1;\r\n const noInput = input === undefined || input === null;\r\n \r\n return {\r\n noInput,\r\n noShouldbe,\r\n compareTo: !noShouldbe && shouldBe[0],\r\n inputCTOR: !noInput && (input?.constructor || Object.getPrototypeOf(input)?.constructor),\r\n isNaN: Number.isNaN(input) || maybe({trial: _ => String(input) === TYPE_STRINGS.NAN}),\r\n isInfinity: maybe({trial: _ => String(input)}) === TYPE_STRINGS.INFINITY,\r\n shouldBeFirstElementIsNothing: !noShouldbe && verifyNothingness(shouldBe[0])\r\n };\r\n }\r\n \r\n function determineType(input, ...shouldBe) {\r\n let { noInput, noShouldbe, compareTo, inputCTOR, isNaN, isInfinity, shouldBeFirstElementIsNothing } =\r\n processInput(input, ...shouldBe);\r\n shouldBe = shouldBe.length && shouldBe[0];\r\n \r\n switch (true) {\r\n case shouldBeFirstElementIsNothing: return String(input) === String(compareTo);\r\n case input?.[Object[toaSymbols].proxy] && noShouldbe: return input[Object[toaSymbols].proxy];\r\n case input?.[Object[toaSymbols].proxy] && typeof shouldBe === `string`:\r\n return input[Object[toaSymbols].proxy].toLowerCase() === shouldBe.toLowerCase();\r\n case isNaN: return noShouldbe ? TYPE_STRINGS.NAN : String(compareTo) === String(input);\r\n case isInfinity: return noShouldbe ? TYPE_STRINGS.INFINITY : String(compareTo) === String(input);\r\n case noInput: return noShouldbe ? String(input) : String(compareTo) === String(input);\r\n case inputCTOR === Boolean: return noShouldbe ? TYPE_STRINGS.BOOLEAN : inputCTOR === shouldBe;\r\n default: return getResult(input, shouldBe, noShouldbe, finalInputResolver(input, inputCTOR));\r\n }\r\n }\r\n \r\n function finalInputResolver(input, inputCTOR) {\r\n switch(true) {\r\n case input === 0: return Number;\r\n case input === ``: return String;\r\n case !input: return {name: String(input)};\r\n default: return inputCTOR;\r\n }\r\n }\r\n \r\n function getResult(input, compareWith, noShouldbe, maybeResult) {\r\n switch (true) {\r\n case (!noShouldbe && compareWith === input) || (input?.[Object[toaSymbols].proxy] && compareWith === Proxy):\r\n return true;\r\n case String(compareWith) === TYPE_STRINGS.NAN:\r\n return String(input) === TYPE_STRINGS.NAN;\r\n case input?.[Symbol.toStringTag] && typeof compareWith === `string`:\r\n return String(compareWith) === input[Symbol.toStringTag];\r\n default:\r\n return compareWith ?\r\n resultWithComparison(input, compareWith, maybeResult) : resultWithoutComparison(input, maybeResult);\r\n }\r\n }\r\n \r\n function resultWithoutComparison(input, maybeResult) {\r\n const toStringTag = input?.[Symbol.toStringTag] ?? input?.prototype?.[Symbol.toStringTag];\r\n return toStringTag || maybeResult?.name || String(maybeResult);\r\n }\r\n \r\n function resultWithComparison(input, compareWith, maybeResult) {\r\n return maybe({trial: _ =>\r\n input instanceof compareWith}) ||\r\n compareWith === maybeResult ||\r\n compareWith === Object.getPrototypeOf(maybeResult) ||\r\n `${compareWith?.name}` === maybeResult?.name;\r\n }\r\n \r\n function WrapAnyFactory(IS, typeOf) {\r\n return function (someObj) {\r\n const wrapper = {\r\n get value() { return someObj; },\r\n is(...args) { return IS(someObj, ...args); },\r\n get type() { return typeOf(someObj); },\r\n };\r\n \r\n if (Object[Object[toaSymbols].type]) {\r\n Object.defineProperties(wrapper, {\r\n [Object[toaSymbols].type]: { get() { return typeOf(someObj);} },\r\n [Object[toaSymbols].is]: { value(...args) { return IS(someObj, ...args); }}\r\n });\r\n }\r\n return Object.freeze(wrapper);\r\n }\r\n }\r\n \r\n function maybeFactory() {\r\n const errFn = err => undefined;\r\n return function({trial, whenError = errFn } = {}) {\r\n try { return trial(); } catch (err) { return whenError(err); }\r\n };\r\n }\r\n \r\n function verifyNothingness(maybeNothing, all = false) {\r\n let nada = maybeNothing === null || maybeNothing === undefined;\r\n nada = all ? nada || IS(maybeNothing, Infinity) || IS(maybeNothing, NaN) : nada;\r\n return nada;\r\n }\r\n}\r\n\r\nfunction typeCheckFactory() {\r\n const collate = new Intl.Collator(`en`, {sensitivity: 'base'});\r\n const nameOf = type2Check => {\r\n return typeof type2Check?.constructor === `function`\r\n ? type2Check?.name || type2Check?.constructor?.name\r\n : typeof type2Check === `string` ? type2Check : typeof type2Check;\r\n };\r\n const isNothing = obj => [null, undefined, Infinity, NaN].some(v => v === obj);\r\n \r\n function checkSingleType(obj, type2Check) {\r\n if (\r\n type2Check !== obj &&\r\n ( isNothing(obj) || type2Check === Number && (Number.isNaN(obj) || !Number.isFinite(obj)) )\r\n ) { return false; }\r\n const [objName, typeName] = [nameOf(obj), nameOf(type2Check)];\r\n \r\n return obj?.[Object[toaSymbols].proxy] === type2Check ||\r\n type2Check === obj?.name ||\r\n 0 === collate.compare(objName, typeName) ||\r\n 0 === collate.compare(obj.constructor?.name, type2Check?.name) ||\r\n obj.constructor?.name === type2Check ||\r\n objName === type2Check ||\r\n 0 === collate.compare( Object.prototype.toString.call(obj), `[object ${typeName}]` );\r\n }\r\n \r\n return function checkType(obj, ...type2Check) {\r\n if (Array.isArray(type2Check) && type2Check.length > 1) {\r\n for (const chkType of type2Check) {\r\n if (checkSingleType(obj, chkType)) { return true; }\r\n }\r\n \r\n return false;\r\n }\r\n \r\n return checkSingleType(obj, type2Check?.[0]);\r\n }\r\n}\r\n", "let popupStyling = getPopupStyling();\r\nconst ATTRS = getAttrs();\r\nconst allTags = getPermissions();\r\nexport {popupStyling, ATTRS, allTags};\r\n\r\nfunction getAttrs() {\r\n return {\r\n html: Object.freeze(`accept,action,align,alt,autocapitalize,autocomplete,autopictureinpicture,autoplay,background,bgcolor,border,capture,cellpadding,cellspacing,checked,cite,class,clear,contenteditable,color,cols,colspan,controls,controlslist,coords,crossorigin,datetime,decoding,default,dir,disabled,disablepictureinpicture,disableremoteplayback,download,draggable,enctype,enterkeyhint,face,for,headers,height,hidden,high,href,hreflang,id,inputmode,integrity,is,ismap,kind,label,lang,list,loading,loop,low,max,maxlength,media,method,min,minlength,multiple,muted,name,nonce,noshade,novalidate,nowrap,open,optimum,pattern,placeholder,playsinline,poster,preload,pubdate,radiogroup,readonly,rel,required,rev,reversed,role,rows,rowspan,spellcheck,scope,selected,shape,size,sizes,span,srclang,start,src,srcset,step,style,summary,tabindex,target,title,translate,type,usemap,valign,value,width,xmlns,slot`\r\n .split(`,`)),\r\n svg: Object.freeze(`accent-height,accumulate,additive,alignment-baseline,ascent,attributename,attributetype,azimuth,basefrequency,baseline-shift,begin,bias,by,class,clip,clippathunits,clip-path,clip-rule,color,color-interpolation,color-interpolation-filters,color-profile,color-rendering,cx,cy,d,dx,dy,diffuseconstant,direction,display,divisor,dur,edgemode,elevation,end,fill,fill-opacity,fill-rule,filter,filterunits,flood-color,flood-opacity,font-family,font-size,font-size-adjust,font-stretch,font-style,font-variant,font-weight,fx,fy,g1,g2,glyph-name,glyphref,gradientunits,gradienttransform,height,href,id,image-rendering,in,in2,k,k1,k2,k3,k4,kerning,keypoints,keysplines,keytimes,lang,lengthadjust,letter-spacing,kernelmatrix,kernelunitlength,lighting-color,local,marker-end,marker-mid,marker-start,markerheight,markerunits,markerwidth,maskcontentunits,maskunits,max,mask,media,method,mode,min,name,numoctaves,offset,operator,opacity,order,orient,orientation,origin,overflow,paint-order,path,pathlength,patterncontentunits,patterntransform,patternunits,points,preservealpha,preserveaspectratio,primitiveunits,r,rx,ry,radius,refx,refy,repeatcount,repeatdur,restart,result,rotate,scale,seed,shape-rendering,specularconstant,specularexponent,spreadmethod,startoffset,stddeviation,stitchtiles,stop-color,stop-opacity,stroke-dasharray,stroke-dashoffset,stroke-linecap,stroke-linejoin,stroke-miterlimit,stroke-opacity,stroke,stroke-width,style,surfacescale,systemlanguage,tabindex,targetx,targety,transform,text-anchor,text-decoration,text-rendering,textlength,type,u1,u2,unicode,values,viewbox,visibility,version,vert-adv-y,vert-origin-x,vert-origin-y,width,word-spacing,wrap,writing-mode,xchannelselector,ychannelselector,x,x1,x2,xmlns,y,y1,y2,z,zoomandpan`\r\n .split(`,`)),\r\n };\r\n}\r\n\r\nfunction getPermissions() {\r\n return {a:true,area:true,audio:false,br:true,base:true,body:true,button:true,canvas:true,comment:true,dl:true,data:true,datalist:true,div:true,em:true, embed:false,fieldset:true,font:true,footer:true,form:false,hr:true,head:true,header:true,output:true,iframe:false,frameset:false,img:true,input:true,li:true,label:true,legend:true,link:true,map:true,mark:true,menu:true,media:true,meta:true,nav:true,meter:true,ol:true,object:false,optgroup:true,option:true,p:true,param:true,picture:true,pre:true,progress:false,quote:true,script:false,select:true,source:true,span:true,style:true,caption:true,td:true,col:true,table:true,tr:true,template:false,textarea:true,time:true,title:true,track:true,details:true,ul:true,video:true,del:true,ins:true,slot:true,blockquote:true,svg:true,dialog:true,summary:true,main:true,address:true,colgroup:true,tbody:true,tfoot:true,thead:true,th:true,dd:true,dt:true,figcaption:true,figure:true,i:true,b:true,code:true,h1:true,h2:true,h3:true,h4:true,abbr:true,bdo:true,dfn:true,kbd:true,q:true,rb:true,rp:true,rt:true,ruby:true,s:true,strike:true,samp:true,small:true,strong:true,sup:true,sub:true,u:true,var:true,wbr:true,nobr:true,tt:true,noscript:true};\r\n}\r\n\r\nfunction getPopupStyling() {\r\n return [\r\n \"::backdrop{background-color:grey;opacity:0.2;}\",\r\n \"#jqxPopup{overflow:hidden;background-color:transparent;outline:none;border:none;inset:0;animation:fade-out 0.5s ease-out;&[open]{display:flex;align-items:center;justify-content:center;animation:fade-in 0.5s ease;}#jqxPopupContent{background-color:white;border:solid 1px #eee;box-shadow:1px 2px 8px #999;border-radius:4px;padding:12px;vertical-align:middle;max-height:40vh;max-width:50vw;overflow:auto;margin:0 auto;div:not(#closeHandleIcon){clear:both;}@media (width <= 640px){max-width:80vw;max-height:60vh;}#closeHandleIcon{cursor:pointer;width:24px;height:24px;display:inline;position:absolute;top:4px;right:4px;justify-content:right;background-image:url(\\\"data:image/svg+xml;utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22iso-8859-1%22%3F%3E%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20id%3D%22Layer_1%22%20x%3D%220px%22%20y%3D%220px%22%20viewBox%3D%220%200%20128%20128%22%20style%3D%22enable-background%3Anew%200%200%20128%20128%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Crect%20x%3D%22-368%22%20y%3D%226%22%20style%3D%22display%3Anone%3Bfill%3A%23E0E0E0%3B%22%20width%3D%22866%22%20height%3D%221018%22%2F%3E%3Ccircle%20style%3D%22fill%3A%23FFFFFF%3B%22%20cx%3D%2264%22%20cy%3D%2264%22%20r%3D%2248%22%2F%3E%3Ccircle%20style%3D%22fill%3A%238CCFB9%3B%22%20cx%3D%2264%22%20cy%3D%2264%22%20r%3D%2239%22%2F%3E%3Ccircle%20style%3D%22fill%3Anone%3Bstroke%3A%23444B54%3Bstroke-width%3A6%3Bstroke-miterlimit%3A10%3B%22%20cx%3D%2264%22%20cy%3D%2264%22%20r%3D%2248%22%2F%3E%3Cpolyline%20style%3D%22fill%3Anone%3Bstroke%3A%23FFFFFF%3Bstroke-width%3A6%3Bstroke-linecap%3Around%3Bstroke-miterlimit%3A10%3B%22%20points%3D%2242%2C69%2055.55%2C81%20%20%2086%2C46%20%22%2F%3E%3C%2Fsvg%3E\\\");@media (width <= 640px){background-image:none;position:relative;margin:-15px -15px 4px 0;float:right;vertical-align:middle;border:1px solid #AAA;padding:2px;border-radius:50%;width:12px;height:12px;font-size:12px;line-height:12px;font-weight:bold;text-align:center;&:after{content:'\\\\2714';color:green;}}}.warn{display:none;text-align:center;color:red;border-top:1px solid #999;margin-top:1em;padding-top:3px;animation:warn-fade-out 0.2s ease-out;}.warn.active{opacity:1;display:block;animation:warn-fade-in 0.2s ease-in;}}}\",\r\n \"@keyframes fade-in{0%{opacity:0;transform:scale(0, 0);display:none;}100%{opacity:1;transform:scale(1, 1);display:flex;}}\",\r\n \"@keyframes fade-out{0%{opacity:1;transform:scale(1, 1);display:flex;}100%{opacity:0;transform:scale(0, 0);display:none;}}\",\r\n \"@keyframes warn-fade-in{0%{opacity:0;transform:scale(0, 0);display:none;}100%{opacity:1;transform:scale(1,1 );display:block;}}\",\r\n \"@keyframes warn-fade-out{0%{opacity:1;transform:scale(1, 1);display:block;}100%{opacity:0;transform:scale(0, 0);display:none;}}\"\r\n ];\r\n}\r\n", "// Standalone available @ https://www.npmjs.com/package/tinydom-es\n// Src/helpers.js\nvar checkType = typeCheckFactory();\nvar maybe = maybeFactory();\nvar converts = { html: `innerHTML`, text: `textContent`, class: `className` };\nfunction typeCheckFactory() {\n const collate = new Intl.Collator(`en`, { sensitivity: \"base\" });\n const nameOf = (type2Check) => {\n return typeof type2Check?.constructor === `function` ? type2Check?.name || type2Check?.constructor?.name : typeof type2Check === `string` ? type2Check : typeof type2Check;\n };\n const isNothing = (obj) => [null, void 0, Infinity, NaN].some((v) => v === obj);\n function checkSingleType(obj, type2Check) {\n switch (true) {\n case (type2Check !== obj && (isNothing(obj) || type2Check === Number && (Number.isNaN(obj) || !Number.isFinite(obj)))):\n return false;\n default:\n const [objName, typeName] = [nameOf(obj), nameOf(type2Check)];\n return obj?.[Symbol.proxy] === type2Check || type2Check === obj?.name || 0 === collate.compare(objName, typeName) || 0 === collate.compare(obj.constructor?.name, type2Check?.name) || obj.constructor?.name === type2Check || objName === type2Check || 0 === collate.compare(Object.prototype.toString.call(obj), `[object ${typeName}]`);\n }\n }\n return function checkType2(obj, ...type2Check) {\n if (Array.isArray(type2Check) && type2Check.length > 1) {\n for (const chkType of type2Check) {\n if (checkSingleType(obj, chkType)) {\n return true;\n }\n }\n return false;\n }\n return checkSingleType(obj, type2Check?.[0]);\n };\n}\nfunction ucFirst([first, ...theRest]) {\n return `${first.toUpperCase()}${theRest.join(``)}`;\n}\nfunction toDashedNotation(str2Convert) {\n return str2Convert.replace(/[A-Z]/g, (a) => `-${a.toLowerCase()}`).replace(/^-|-$/, ``);\n}\nfunction toCamelcase(str2Convert) {\n return checkType(str2Convert, String) ? str2Convert.toLowerCase().split(`-`).map((str, i) => i && `${ucFirst(str)}` || str).join(``) : str2Convert;\n}\nfunction maybeFactory() {\n const errFn = (err) => void 0;\n return function({ trial, whenError = errFn } = {}) {\n try {\n return trial();\n } catch (err) {\n return whenError(err);\n }\n };\n}\nfunction cloneExact(elementFunctionCollection2) {\n return Object.fromEntries(\n Object.entries(Object.getOwnPropertyDescriptors(elementFunctionCollection2))\n );\n}\nfunction cleanupProps(props) {\n if (Object.keys(props).length < 1) {\n return { assignable: {}, specials: [...Array(3)] };\n }\n const specials = retrieveSpecialProps(props);\n Object.keys(props).forEach((key) => {\n const keyCI = key.toLowerCase();\n keyCI in converts && (props[converts[keyCI]] = props[key]) && delete props[key];\n });\n return { assignable: props, specials };\n}\nfunction retrieveSpecialProps(props) {\n props = checkType(props, Object) && props || void 0;\n if (!props) {\n return Array(3);\n }\n const data = Object.entries(props.data ?? {});\n const attributes = Object.entries(props.attributes ?? {});\n const classList = props.class?.split(/[ ,]/).map((v) => v.trim()).filter((v) => v.length > 1);\n delete props.data;\n delete props.attributes;\n delete props.class;\n return [data, attributes, classList];\n}\nfunction cleanupComment(initial) {\n return initial?.constructor === Comment ? initial?.textContent : String(initial);\n}\nfunction isComment(tag) {\n return /comment/i.test(tag);\n}\nfunction containsHTML(str, tag) {\n return !isComment(tag) && checkType(str, String) && /<.*>|&[#|0-9a-z]+[^;];/i.test(str);\n}\nfunction validateElementTagName(tagName) {\n tagName = tagName.toLowerCase();\n return typeof tagName === `string` && tagName.length > 0 && /^[a-z]/.test(tagName) && /^[a-z0-9-]+$/gi.test(tagName);\n}\nfunction validateTag(name, customElementRegistry2, createElement2) {\n return validateElementTagName(name) && (name in customElementRegistry2 || !checkType(createElement2(name), HTMLUnknownElement));\n}\n\n// Src/tinyDOM.js\nvar elementFunctionCollection = Object.create(null, {});\nvar customElementRegistry = Object.create(null, {});\nvar tagFunctionError = (tag) => {\n console.error(`tinyDOM error: \"${tag}\" is not a valid HTML tag`);\n return void 0;\n};\nvar tinyDOM_default = tinyDOM();\nfunction tinyDOM() {\n return Object.seal(new Proxy(elementFunctionCollection, proxyTraps()));\n}\nfunction proxyTraps() {\n return {\n get(tagFns, key) {\n const tag = String(key);\n switch (true) {\n case tag in tagFns:\n return tagFns[tag];\n case validateTag(tag, customElementRegistry, createElement):\n return createTagFunctionProperty({ tag, key });\n default:\n return createTagFunctionProperty({ tag, key, isError: true });\n }\n },\n set(tagFns, key, value) {\n if (key === `setError` && typeof value === \"function\") {\n tagFunctionError = value;\n }\n return true;\n },\n enumerable: false,\n configurable: false\n };\n}\nfunction createTagFunctionProperty({ tag, key, custom, debug = false, isError = false } = {}) {\n let unsealedElementFunctionCollection = cloneExact(elementFunctionCollection);\n if (isError) {\n Object.defineProperty(unsealedElementFunctionCollection, tag, {\n get() {\n return (_) => tagFunctionError(key) ?? ``;\n }\n });\n return reSeal(unsealedElementFunctionCollection, tag);\n }\n if (tag.includes(`-`)) {\n const [dashed, camel] = tag.includes(`-`) ? [tag, toCamelcase(tag)] : [toDashedNotation(tag), tag];\n customElementRegistry[dashed] = dashed;\n customElementRegistry[camel] = dashed;\n custom = camel;\n }\n if (!!custom) {\n Object.defineProperty(unsealedElementFunctionCollection, custom, {\n get() {\n return tag2FN(tag);\n }\n });\n }\n Object.defineProperty(unsealedElementFunctionCollection, tag, {\n get() {\n return tag2FN(tag);\n }\n });\n return reSeal(unsealedElementFunctionCollection, tag);\n}\nfunction reSeal(unsealedCollection, tag) {\n elementFunctionCollection = Object.seal(new Proxy(unsealedCollection, proxyTraps()));\n return elementFunctionCollection[tag];\n}\nfunction processNext(root, next, tagName) {\n next = next?.isJQx && next.node || (checkType(next, Number) ? String(next) : next);\n return maybe({\n trial: (_) => containsHTML(next) ? root.insertAdjacentHTML(`beforeend`, next) : root.append(next),\n whenError: (err) => console.info(`${tagName} not created, reason\n`, err)\n });\n}\nfunction tagFN(tagName, initial, ...nested) {\n const elem = retrieveElementFromInitial(initial, tagName);\n nested?.forEach((arg) => processNext(elem, arg, tagName));\n return elem;\n}\nfunction retrieveElementFromInitial(initial, tag) {\n initial = isComment(tag) ? cleanupComment(initial) : initial?.isJQx ? initial.node : initial;\n switch (true) {\n case checkType(initial, String):\n return createElement(tag, containsHTML(initial, tag) ? { html: initial } : { text: initial });\n case initial instanceof Node:\n return createElementAndAppend(tag, initial);\n default:\n return createElement(tag, initial);\n }\n}\nfunction createElementAndAppend(tag, element2Append) {\n const elem = createElement(tag);\n elem.append(element2Append);\n return elem;\n}\nfunction assignSpecialProps(specialProps, element) {\n const [data, attributes, classList] = specialProps;\n data?.length && data.forEach(([key, value]) => element.dataset[key] = value);\n attributes?.length && attributes.forEach(([key, value]) => element.setAttribute(key, value));\n classList?.forEach((value) => element.classList.add(value));\n}\nfunction createElement(tagName, props) {\n props = props || {};\n const { assignable, specials } = cleanupProps(props);\n const elem = Object.assign(\n isComment(tagName) ? new Comment() : document.createElement(tagName),\n assignable\n );\n assignSpecialProps(specials, elem);\n return elem;\n}\nfunction tag2FN(tagName) {\n tagName = customElementRegistry[tagName] ?? tagName;\n return (initial, ...args) => tagFN(tagName, initial, ...args);\n}\nexport {\n tinyDOM_default as default\n};\n", "import {default as IS} from \"./TypeofAnything.js\";\r\nexport default LifeStyleFactory;\r\n\r\n/* region factory */\r\nfunction LifeStyleFactory({styleSheet, createWithId} = {}) {\r\n const { tryParseAtOrNestedRules, ruleExists, checkParams,\r\n sheet, removeRules, consider, currentSheetID } = sheetHelpers({styleSheet, createWithId});\r\n\r\n function setRules4Selector(rule, properties) {\r\n if (rule && properties.removeProperties) {\r\n Object.keys(properties.removeProperties)\r\n .forEach( prop => rule.style.removeProperty(toDashedNotation(prop)) );\r\n return;\r\n }\r\n\r\n Object.entries(properties)\r\n .forEach( ([prop, value]) => {\r\n prop = toDashedNotation(prop.trim());\r\n value = value.trim();\r\n\r\n let priority;\r\n\r\n if (/!important/.test(value)) {\r\n value = value.slice(0, value.indexOf(`!important`)).trim();\r\n priority = `important`;\r\n }\r\n\r\n if (!CSS.supports(prop, value)) {\r\n return console.error(`StylingFactory ${currentSheetID} error: '${\r\n prop}' with value '${value}' not supported (yet)`);\r\n }\r\n\r\n tryAndCatch( () => rule.style.setProperty(prop, value, priority),\r\n `StylingFactory ${currentSheetID} (setRule4Selector) failed`);\r\n });\r\n }\r\n\r\n function setRules(selector, styleRules, sheetOrMediaRules = sheet) {\r\n selector = selector?.trim?.();\r\n if (!IS(selector, String) || !selector.length || /[;,]$/g.test(selector)) {\r\n return console.error(`StylingFactory ${currentSheetID} (setRules): [${\r\n selector || `[no selector given]` }] is not a valid selector`);\r\n }\r\n\r\n if (styleRules.removeRule) {\r\n return removeRules(selector);\r\n }\r\n\r\n const exists = ruleExists(selector, true);\r\n const rule4Selector = exists\r\n || sheetOrMediaRules.cssRules[sheetOrMediaRules.insertRule(`${selector} {}`, sheetOrMediaRules.cssRules.length || 0)];\r\n\r\n return consider( () => setRules4Selector(rule4Selector, styleRules), selector, exists );\r\n }\r\n\r\n function doParse(cssDeclarationString) {\r\n const rule = cssDeclarationString.trim().split(/{/, 2);\r\n const selector = rule.shift().trim();\r\n\r\n if (!IS(selector, String) || !selector?.trim()?.length) {\r\n return console.error(`StylingFactory ${currentSheetID} (doParse): no (valid) selector could be extracted from rule ${\r\n shortenRule(cssDeclarationString)}`);\r\n }\r\n\r\n const cssRules = cssRuleFromText(rule.shift());\r\n\r\n return tryAndCatch( () => setRules(selector, cssRules), `StylingFactory ${currentSheetID} (setRules) failed` );\r\n }\r\n\r\n function styleFromString(cssDeclarationString) {\r\n const checkAts = tryParseAtOrNestedRules(cssDeclarationString);\r\n return checkAts.done ? checkAts.existing : doParse(cssDeclarationString);\r\n }\r\n\r\n function styleFromObject(selector, rulesObj) {\r\n if (selector.trim().startsWith(`@media`)) {\r\n return styleFromString(atMedia2String(selector, rulesObj));\r\n }\r\n return setRules(selector, rulesObj);\r\n }\r\n\r\n return function(cssBlockOrSelector, rulesObj = {}) {\r\n const checksOk = checkParams(cssBlockOrSelector, rulesObj);\r\n\r\n return checksOk && (\r\n Object.keys(rulesObj).length ?\r\n styleFromObject(cssBlockOrSelector, rulesObj) :\r\n styleFromString(cssBlockOrSelector) );\r\n };\r\n}\r\n/* endregion factory */\r\n\r\n/* region helpers */\r\nfunction sheetHelpers({styleSheet, createWithId}) {\r\n const notification = `Note: The rule or some of its properties may not be supported by your browser (yet)`;\r\n const currentSheetID = `for style#${createWithId}`;\r\n styleSheet = createWithId ? retrieveOrCreateSheet(createWithId) : styleSheet;\r\n\r\n function retrieveOrCreateSheet(id) {\r\n const existingSheet = document.querySelector(`#${id}`)?.sheet;\r\n\r\n if (existingSheet) { return existingSheet; }\r\n\r\n const newSheet = Object.assign(document.createElement(`style`), { id });\r\n document.head.insertAdjacentElement(`beforeend`, newSheet);\r\n return newSheet.sheet;\r\n }\r\n\r\n function notSupported(rule) {\r\n console.error(`StylingFactory ${currentSheetID} [rule: ${rule}]\r\n => @charset, @namespace and @import are not supported here`);\r\n return {done: true};\r\n }\r\n\r\n function ruleExists(ruleFragOrSelector, isSelector) {\r\n return [...styleSheet.rules].find( r =>\r\n isSelector ?\r\n compareSelectors((r.selectorText || ``), ruleFragOrSelector) :\r\n createRE`${escape4RegExp(ruleFragOrSelector)}${[...`gim`]}`.test(r.cssText));\r\n }\r\n\r\n function tryParseAtOrNestedRules(cssDeclarationString) {\r\n if (/^@charset|@import|namespace/i.test(cssDeclarationString.trim())) {\r\n return notSupported(cssDeclarationString);\r\n }\r\n\r\n if (cssDeclarationString.match(/}/g)?.length > 1) {\r\n return {existing: tryParse(cssDeclarationString, 1), done: true}\r\n }\r\n\r\n return { done: false };\r\n }\r\n\r\n function removeRules(selector) {\r\n const rulesAt = [...styleSheet.cssRules].reduce( (acc, v, i) =>\r\n compareSelectors(v.selectorText || ``, selector) && acc.concat(i) || acc, [] );\r\n const len = rulesAt.length;\r\n rulesAt.forEach(idx => styleSheet.deleteRule(idx));\r\n\r\n return len > 0\r\n ? console.info(`\u2714 Removed ${len} instance${len > 1 ? `s` : ``} of selector ${\r\n selector} from ${currentSheetID.slice(4)}`)\r\n : console.info(`\u2714 Remove rule: selector ${selector} does not exist in ${\r\n currentSheetID.slice(4)}`);\r\n }\r\n\r\n function checkParams(cssBlockOrSelector, rulesObj) {\r\n return cssBlockOrSelector\r\n && IS(cssBlockOrSelector, String)\r\n && cssBlockOrSelector.trim().length > 0\r\n && IS(rulesObj, Object) ||\r\n (console.error(`StylingFactory ${currentSheetID} called with invalid parameters`), false);\r\n }\r\n\r\n function tryParse(cssDeclarationString) {\r\n cssDeclarationString = cssDeclarationString.trim();\r\n const rule = cssDeclarationString.slice(0, cssDeclarationString.indexOf(`{`)).trim();\r\n const exists = !!ruleExists(rule);\r\n\r\n try {\r\n return (styleSheet.insertRule(`${cssDeclarationString}`, styleSheet.cssRules.length), exists);\r\n } catch(err) {\r\n return (console.error(`StylingFactory ${currentSheetID} (tryParse) ${err.name} Error:\\n${\r\n err.message}\\nRule: ${\r\n shortenRule(cssDeclarationString)}\\n${\r\n notification}`),\r\n exists);\r\n }\r\n }\r\n\r\n function consider(fn, rule, existing) {\r\n try {\r\n return (fn(), existing);\r\n } catch(err) {\r\n return (\r\n console.error(`StylingFactory ${currentSheetID} (tryAddOrModify) ${err.name} Error:\\n${\r\n err.message}\\nRule: ${shortenRule(rule)}\\n${notification}`),\r\n existing\r\n );\r\n }\r\n }\r\n\r\n return {\r\n sheet: styleSheet, removeRules, tryParseAtOrNestedRules,\r\n ruleExists, checkParams, tryParse, consider,\r\n currentSheetID };\r\n}\r\n/* endregion helpers */\r\n\r\n/* region globalOrShared */\r\nfunction atMedia2String(selector, rulesObj) {\r\n return `${selector.trim()} ${\r\n Object.entries(rulesObj).map( ( [ selectr, rule] ) =>\r\n `${selectr}: { ${stringifyMediaRule(rule) }` ) }`;\r\n}\r\n\r\nfunction shortenRule(rule) {\r\n const shortRule = (rule || `NO RULE`).trim().slice(0, 50).replace(/\\n/g, `\\\\n`).replace(/\\s{2,}/g, ` `);\r\n return rule.length > shortRule.length ? `${shortRule.trim()}...truncated` : shortRule;\r\n}\r\n\r\nfunction stringifyMediaRule(mediaObj) {\r\n return Object.entries(mediaObj)\r\n .map( ([key, value]) => `${key}: ${value.trim()}`).join(`;\\n`);\r\n}\r\n\r\nfunction escape4RegExp(str) {\r\n return str.replace(/([*\\[\\]()-+{}.$?\\\\])/g, a => `\\\\${a}`);\r\n}\r\n\r\nfunction createRE(regexStr, ...args) {\r\n const flags = args.length && Array.isArray(args.slice(-1)) ? args.pop().join(``) : ``;\r\n\r\n return new RegExp(\r\n (args.length &&\r\n regexStr.raw.reduce( (a, v, i ) => a.concat(args[i-1] || ``).concat(v), ``) ||\r\n regexStr.raw.join(``))\r\n .split(`\\n`)\r\n .map( line => line.replace(/\\s|\\/\\/.*$/g, ``).trim().replace(/(@s!)/g, ` `) )\r\n .join(``), flags);\r\n}\r\n\r\nfunction toDashedNotation(str2Convert) {\r\n return str2Convert.replace(/[A-Z]/g, a => `-${a.toLowerCase()}`).replace(/[^--]^-|-$/, ``);\r\n}\r\n\r\nfunction tryAndCatch(fn, msg) {\r\n try { return fn(); }\r\n catch(err) { console.error( `${msg || `an error occured`}: ${err.message}` ); }\r\n}\r\n\r\nfunction prepareCssRuleFromText(rule) {\r\n return rule\r\n .replace(/\\/\\*.+?\\*\\//gm, ``)\r\n .replace(/[}{\\r\\n]/g, ``)\r\n .replace(/(data:.+?);/g, (_,b) => `${b}\\\\3b`)\r\n .split(`;`)\r\n .map(l => l.trim())\r\n .join(`;\\n`)\r\n .replaceAll(`\\\\3b`, `;`)\r\n .split(`\\n`);\r\n}\r\n\r\nfunction toRuleObject(preparedRule) {\r\n return preparedRule\r\n .reduce( (acc, v) => {\r\n const [key, value] = [\r\n v.slice(0, v.indexOf(`:`)).trim(),\r\n v.slice(v.indexOf(`:`) + 1).trim().replace(/;$|;.+(?=\\/*).+\\/$/, ``)];\r\n return key && value ? {...acc, [key]: value} : acc; }, {} );\r\n}\r\n\r\nfunction cssRuleFromText(rule) {\r\n return toRuleObject(prepareCssRuleFromText(rule));\r\n}\r\n\r\nfunction compareSelectors(s1, s2) {\r\n return s1?.replace(`::`, `:`) === s2?.replace(`::`, `:`);\r\n}\r\n/* endregion globalOrShared */\r\n", "import { allTags } from \"./EmbedResources.js\";\r\nimport { IS } from \"./Utilities.js\";\r\nlet lenient = false;\r\nconst allowUnknownHtmlTags = {\r\n on: () => lenient = true,\r\n off: () => lenient = false,\r\n};\r\nexport default {\r\n tagsRaw: allTags,\r\n allowUnknownHtmlTags,\r\n isAllowed(elem) {\r\n if (lenient) { return true; }\r\n const nodeName = IS(elem, String) ? elem.toLowerCase() : elem?.nodeName.toLowerCase() || `none`;\r\n return nodeName === `#text` || !!allTags[nodeName];\r\n },\r\n allowTag: tag2Allow => allTags[tag2Allow.toLowerCase()] = true,\r\n prohibitTag: tag2Prohibit => allTags[tag2Prohibit.toLowerCase()] = false,\r\n};\r\n", "import cleanupTagInfo from \"./HTMLTags.js\";\r\nimport {ATTRS, IS, truncate2SingleStr, escHtml, systemLog} from \"./Utilities.js\";\r\n\r\nlet logElementCreationErrors2Console = true;\r\nconst attrRegExpStore = {\r\n data: /data-[\\-\\w.\\p{L}]/ui, // data-* minimal 1 character after dash\r\n validURL: /^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp):|[^a-z]|[a-z+.\\-]+(?:[^a-z+.\\-:]|$))/i,\r\n whiteSpace: /[\\u0000-\\u0020\\u00A0\\u1680\\u180E\\u2000-\\u2029\\u205F\\u3000]/g,\r\n notAllowedValues: /^javascript|injected|noreferrer|alert|DataURL/gi\r\n};\r\n\r\nfunction logContingentErrors(elCreationInfo) {\r\n if (logElementCreationErrors2Console && Object.keys(elCreationInfo.removed).length) {\r\n const msgs = Object.entries(elCreationInfo.removed)\r\n .reduce( (acc, [k, v]) => [...acc, `${escHtml(k)} => ${v}`], [])\r\n .join(`\\\\000A`);\r\n systemLog.error(`JQx: HTML creation error(s): ${msgs}`);\r\n }\r\n}\r\n\r\nfunction elementCheck(child) {\r\n const name = child.nodeName.toLowerCase();\r\n const notAllowedCustomElementNames = [\r\n `annotation-xml`, `color-profile`, `font-face`, `font-face-src`,\r\n `font-face-uri`, `font-face-format`, `font-face-name`, `missing-glyph` ];\r\n return /-/.test(name) && !notAllowedCustomElementNames.find(v => v === name) || cleanupTagInfo.isAllowed(name);\r\n}\r\n\r\nfunction cleanupHtml(el2Clean) {\r\n const elCreationInfo = {\r\n rawHTML: el2Clean?.parentElement?.getHTML() ?? `no html`,\r\n removed: { },\r\n }\r\n\r\n if (IS(el2Clean, HTMLElement)) {\r\n [...el2Clean.childNodes].forEach(child => {\r\n if (child?.children?.length) {\r\n cleanupHtml(child);\r\n }\r\n if (child?.attributes) {\r\n const attrStore = IS(child, SVGElement) ? ATTRS.svg : ATTRS.html;\r\n\r\n [...(child ?? {attributes: []}).attributes]\r\n .forEach(attr => {\r\n const name = attr.name.trim().toLowerCase();\r\n const value = attr.value.trim().toLowerCase().replace(attrRegExpStore.whiteSpace, ``);\r\n const evilValue = name === \"href\"\r\n ? !attrRegExpStore.validURL.test(value)\r\n : attrRegExpStore.notAllowedValues.test(value);\r\n const evilAttrib = name.startsWith(`data`) ? !attrRegExpStore.data.test(name) : !!attrStore[name];\r\n\r\n if (evilValue || evilAttrib) {\r\n let val = truncate2SingleStr(attr.value || `none`, 60);\r\n val += val.length === 60 ? `...` : ``;\r\n elCreationInfo.removed[`${attr.name}`] = `attribute/property/value not allowed, removed. Value: ${\r\n val}`;\r\n child.removeAttribute(attr.name);\r\n }\r\n });\r\n }\r\n\r\n const allowed = elementCheck(child) ||\r\n child.constructor === CharacterData ||\r\n child.constructor === Comment;\r\n\r\n if (!allowed) {\r\n const tag = (child?.outerHTML || child?.textContent).trim();\r\n let tagValue = truncate2SingleStr(tag, 60) ?? `EMPTY`;\r\n tagValue += tagValue.length === 60 ? `...` : ``;\r\n elCreationInfo.removed[`<${child.nodeName?.toLowerCase()}>`] = `not allowed, not rendered. Value: ${\r\n tagValue}`;\r\n child.remove();\r\n }\r\n });\r\n }\r\n logContingentErrors(elCreationInfo);\r\n\r\n return el2Clean;\r\n}\r\nconst emphasize = str => `***${str}***`;\r\nconst getRestricted = emphasizeTag =>\r\n Object.entries(cleanupTagInfo)\r\n .reduce((acc, [key, value]) =>\r\n !value.allowed &&\r\n [...acc, (emphasizeTag && key === emphasizeTag ? emphasize(key) : key)] ||\r\n acc, []);\r\n\r\nexport { cleanupHtml, getRestricted, ATTRS};\r\n", "import { cleanupHtml, getRestricted, } from \"./DOMCleanup.js\";\r\nimport {ATTRS, IS, insertPositions, isNode, truncateHtmlStr} from \"./Utilities.js\";\r\n\r\nexport {\r\n getRestricted, createElementFromHtmlString, element2DOM,\r\n cleanupHtml, inject2DOMTree, ATTRS\r\n};\r\n\r\nfunction htmlToVirtualElement(htmlString) {\r\n const placeholderNode = document.createElement(\"div\");\r\n placeholderNode.insertAdjacentHTML(insertPositions.end, htmlString);\r\n return placeholderNode.childNodes.length\r\n ? cleanupHtml(placeholderNode)\r\n : undefined;\r\n}\r\n\r\nfunction characterDataElement2DOM(elem, root, position) {\r\n switch(true) {\r\n case IS(elem, Comment): return root.insertAdjacentHTML(position, `<!--${elem.data}-->`);\r\n case IS(elem, Text): return root.insertAdjacentText(position, elem.data || elem.textContent);\r\n default: return;\r\n }\r\n}\r\n\r\nfunction inject2DOMTree( collection = [], root = document.body, position = insertPositions.BeforeEnd ) {\r\n position = position || insertPositions.BeforeEnd;\r\n root = root?.isJQx ? root.node : root || document.body;\r\n return collection.reduce( (acc, elem) => {\r\n const created = isNode(elem) && element2DOM(elem, root, position);\r\n return created ? [...acc, created] : acc;\r\n }, []);\r\n}\r\n\r\nfunction element2DOM(elem, root = document.body, position = insertPositions.BeforeEnd) {\r\n position = position || insertPositions.BeforeEnd;\r\n root = root?.isJQx ? root?.[0] : root;\r\n\r\n return IS(elem, Comment, Text)\r\n ? characterDataElement2DOM(elem, root, position)\r\n : IS(elem, HTMLElement) ? root.insertAdjacentElement(position, elem) : undefined;\r\n}\r\n\r\nfunction createElementFromHtmlString(htmlStrOrText) {\r\n if (IS(htmlStrOrText, Text, Comment)) {\r\n return htmlStrOrText;\r\n }\r\n \r\n const testStr = htmlStrOrText?.trim();\r\n let text = testStr?.split(/<text>|<\\/text>/i) ?? [];\r\n\r\n if (text?.length) {\r\n text = text.length > 1 ? text.filter(v => v.length).shift() : undefined;\r\n }\r\n\r\n if (testStr.startsWith(`<!--`) && testStr.endsWith(`-->`)) {\r\n return document.createComment(htmlStrOrText.replace(/<!--|-->$/g, ''));\r\n }\r\n \r\n if (!!text || (IS(testStr, String) && !/^<(.+)[^>]+>/m.test(testStr))) {\r\n return document.createTextNode(text ?? testStr);\r\n }\r\n\r\n const nwElem = htmlToVirtualElement(htmlStrOrText);\r\n\r\n if (nwElem.childNodes.length < 1) {\r\n return createElementFromHtmlString(`<span data-jqxcreationerror=\"1\">${truncateHtmlStr(htmlStrOrText, 60)}</span>`);\r\n }\r\n\r\n return nwElem.children[0];\r\n}\r\n", "import { popupStyling as styleRules } from \"./EmbedResources.js\";\r\n\r\nexport default function($) {\r\n if ($.node(`#jqxPopup`)) { return; }\r\n $.logger.log(`JQx: [JQx].Popup first call. Dialog element created.`);\r\n $.dialog({id: `jqxPopup`}, $.div({ id: \"jqxPopupContent\" })).render;\r\n $.editCssRules(...styleRules);\r\n let timers = [];\r\n const [popupContent, popupNode] = [$(`#jqxPopupContent`), $.node(`#jqxPopup`)];\r\n let currentProps = {};\r\n $.handle( {\r\n type: `click, cancel`,\r\n handlers: genericPopupCloseHandler,\r\n name: \"genericPopupCloseHandler\",\r\n capture: true,\r\n about: \"A generic handler for JQx popups\"} );\r\n return Object.freeze({show: initPopup, remove: initHidePopup, removeModal});\r\n\r\n function initPopup(props) {\r\n if (popupNode.open) {\r\n switch(true) {\r\n case isCurrent(props): return;\r\n default:\r\n initHidePopup();\r\n return setTimeout(() => initPopup(props), 200);\r\n }\r\n }\r\n \r\n currentProps = {...props};\r\n let {content} = currentProps;\r\n return !($.IS(content, String, HTMLElement) || content?.isJQx) ? true : showPopup();\r\n }\r\n\r\n function initHidePopup() {\r\n if (currentProps.modal) {\r\n return failModalClose(currentProps.warnMessage);\r\n }\r\n\r\n return hidePopup();\r\n }\r\n \r\n function isCurrent(props) {\r\n for (const [key, value] of Object.entries(currentProps)) {\r\n if (value !== props[key]) { return false; }\r\n }\r\n return true;\r\n }\r\n \r\n function showPopup() {\r\n popupContent.clear();\r\n let {content, modal, closeAfter} = currentProps;\r\n modal = $.IS(modal, Boolean) ? modal : false;\r\n const closerIcon = modal ? \"\" : $.div({ id: \"closeHandleIcon\"});\r\n popupContent.append(closerIcon, $.IS(content, String) ? $.div(content) : content);\r\n popupNode.showModal();\r\n if (!modal && $.IS(closeAfter, Number)) { createTimer(initHidePopup, closeAfter); }\r\n }\r\n\r\n function hidePopup() {\r\n popupNode.close(currentProps.returnValue);\r\n clearTimers();\r\n if ($.IS(currentProps.callback, Function)) {\r\n return timers.push(setTimeout(() => currentProps.callback(currentProps.returnValue), 200));\r\n }\r\n currentProps = {};\r\n }\r\n \r\n function clearTimers() {\r\n timers.forEach(timer => clearTimeout(timer));\r\n timers = [];\r\n }\r\n\r\n function removeModal({callback, value} = {}) {\r\n currentProps.returnValue = value;\r\n currentProps.modal = false;\r\n currentProps.callback = callback || currentProps.callback;\r\n initHidePopup();\r\n }\r\n\r\n function genericPopupCloseHandler({evt}) {\r\n if ( Object.keys(currentProps).length < 1 || !popupNode.open ) { return; }\r\n \r\n if (evt.type === `cancel` && currentProps.modal) { evt.preventDefault(); }\r\n \r\n if (evt.target.closest(`#closeHandleIcon`) || !evt.target.closest(`#jqxPopupContent`)) {\r\n currentProps.activeTimer && clearTimeout(currentProps.activeTimer);\r\n return initHidePopup();\r\n }\r\n }\r\n\r\n function createTimer(callback, seconds) {\r\n if ($.IS(callback, Function) && $.IS(seconds, Number) && seconds > 0) {\r\n clearTimers();\r\n timers.push(setTimeout(callback, seconds * 1000));\r\n }\r\n }\r\n\r\n function failModalClose(warnMessage) {\r\n if (!$.IS(warnMessage, String, HTMLElement) && !warnMessage.isJQx) { return; }\r\n let modalWarningBox = popupContent.find$(`.warn`);\r\n // note: fall through is intentional.\r\n switch(true) {\r\n case modalWarningBox.is.empty: modalWarningBox = $.div({class: `warn`}, warnMessage);\r\n default: popupContent.append(modalWarningBox.addClass(`active`));\r\n createTimer(() => popupContent.find$(`.warn`).removeClass(`active`), 2);\r\n }\r\n }\r\n}\r\n", "import {IS, isNonEmptyString, getCaptureValue, getHandlerName, handlerIdCache, systemLog} from \"./Utilities.js\";\r\n\r\nexport { HandlerFactory };\r\n\r\nfunction HandlerFactory(jqx) {\r\n const store = {};\r\n const anon = `anonymous_`;\r\n \r\n function setListener(listener) {\r\n if (listener) {\r\n const {handler, capture, type} = listener;\r\n document.addEventListener(type, handler, {capture});\r\n }\r\n }\r\n \r\n function removeListener(listener) {\r\n if (listener) {\r\n const {type, handler, capture} = listener;\r\n document.removeEventListener(type, handler, {capture});\r\n }\r\n }\r\n \r\n function wrapFn4Selector(fn, selector, once, handlerName) {\r\n return function(evt) {\r\n if (!isNonEmptyString(selector)) {\r\n return fn({evt});\r\n }\r\n \r\n const elemFound = evt.target.closest(selector);\r\n if (elemFound) {\r\n const me = jqx(elemFound);\r\n fn({self: me, me, evt}); // self is legacy\r\n // to avoid listener removal on capturing/bubbling,\r\n // once is handled manually\r\n if (once) { remove(evt.type, handlerName); }\r\n }\r\n return true;\r\n }\r\n }\r\n \r\n function storedEventType(eventType) {\r\n store[eventType] = store[eventType] || {};\r\n return store[eventType];\r\n }\r\n \r\n function retrieve(eventType, name) {\r\n return Object.entries(storedEventType(eventType))\r\n .find( ([key, ]) => key === name );\r\n }\r\n \r\n function remove(eventType, name) {\r\n const listener = retrieve(eventType, name);\r\n if (listener) {\r\n removeListener(listener[1]);\r\n delete store[eventType][name];\r\n delete handlerIdCache[name];\r\n \r\n systemLog.warn(`Removed listener [${name}] for event type [${eventType}].`);\r\n }\r\n }\r\n \r\n function storeHandler(spec) {\r\n let { type, handler, name, capture, once, selector, node, about } = spec;\r\n store[type] = store[type] || {};\r\n const handlerName = getHandlerName(name || handler.name);\r\n const initialHandler = handler;\r\n if (node instanceof HTMLElement) {\r\n // Note: for multiple event types dataset.hid may be defined already\r\n const handlerID = node.dataset.hid || handlerName;\r\n node.dataset.hid = handlerID;\r\n selector = `[data-hid=${handlerID}]`;\r\n }\r\n \r\n switch(true) {\r\n case !store[type][handlerName]:\r\n systemLog.log(`JQx: created listener for event type ${type}, with handler name ${handlerName}`);\r\n store[type][handlerName] = {\r\n name: handlerName,\r\n handler: wrapFn4Selector(handler, selector, once, handlerName),\r\n capture: getCaptureValue(type, capture),\r\n once: !!once,\r\n type: type,\r\n initialHandler,\r\n selector: !!selector && selector || false,\r\n about: !!about && about || false,\r\n unListen() { remove(type, handlerName); },\r\n };\r\n return store[type][handlerName];\r\n default: return console.warn(`The listener [${handlerName}] for [${\r\n type}] exists, it is not re-assigned.`);\r\n }\r\n }\r\n // todo: maybe enable a custom unListen handler\r\n return {\r\n remove(...args) { return remove(...args); },\r\n listen: function(spec) {\r\n const { type, handler } = spec;\r\n if ( !isNonEmptyString(type) || !IS(handler, Function) ) { return; }\r\n const nwHandler = storeHandler(spec);\r\n \r\n if (nwHandler) {\r\n setListener(nwHandler);\r\n return {\r\n type,\r\n name: nwHandler.name,\r\n unListen() { remove(type, nwHandler.name); },\r\n };\r\n }\r\n },\r\n get ListenerStore() { return Object.freeze({...store}); }\r\n };\r\n}\r\n", "import {default as IS, maybe, proxyWrapper, addSymbolicExtensions, } from \"./TypeofAnything.js\";\r\nimport {ATTRS} from \"./EmbedResources.js\";\r\nimport {default as tagFNFactory} from \"./tinyDOM.js\";\r\nimport styleFactory from \"./LifeCSS.js\";\r\nimport {createElementFromHtmlString, inject2DOMTree, cleanupHtml} from \"./DOM.js\";\r\nimport PopupFactory from \"./Popup.js\";\r\nimport { HandlerFactory } from \"./HandlerFactory.js\";\r\nimport tagLib from \"./HTMLTags.js\";\r\naddSymbolicExtensions();\r\nconst systemLog = systemLogFactory();\r\nconst allwaysCaptureEventTypes = [\r\n `load`, `unload`, `scroll`, `focus`, `blur`, `DOMNodeRemovedFromDocument`,\r\n `DOMNodeInsertedIntoDocument`, `loadstart`, `progress`, `error`, `abort`,\r\n `load`, `loadend`, `pointerenter`, `pointerleave`, `readystatechange`];\r\nconst insertPositions = Object.freeze(new Proxy({\r\n start: \"afterbegin\", afterbegin: \"afterbegin\",\r\n end: \"beforeend\", beforeend: \"beforeend\",\r\n before: \"beforebegin\", beforebegin: \"beforebegin\",\r\n after: \"afterend\", afterend: \"afterend\" }, {\r\n get(obj, key) { return obj[String(key).toLowerCase()] ?? obj[key]; }\r\n}));\r\nconst characters4RandomString = [...Array(26)]\r\n .map((x, i) => String.fromCharCode(i + 65))\r\n .concat([...Array(26)].map((x, i) => String.fromCharCode(i + 97)))\r\n .concat([...Array(10)].map((x, i) => `${i}`));\r\nconst datasetKeyProxy = Object.freeze({\r\n get(obj, key) { return obj[toCamelcase(key)] || obj[key]; },\r\n enumerable: false,\r\n configurable: false\r\n});\r\nconst handlerIdCache = {};\r\n\r\nexport {\r\n after, applyStyle, assignAttrValues, ATTRS, beforeOrAfter, checkProp, cleanupHtml, clearAllTimers,\r\n cloneAndDestroy, convert2Bool, createElementFromHtmlString, datasetKeyProxy, ElemArray2HtmlString, emptyElement,\r\n escHtml, findParentScrollDistance, getAttributesForLogging, getCaptureValue, getHandlerName, HandlerFactory,\r\n handlerIdCache, inject2DOMTree, input2Collection, insertPositions, IS, isArrayOfHtmlElements, isArrayOfHtmlStrings,\r\n isComment, isCommentOrTextNode, isHtmlString, isModal, isNode, isNonEmptyString, isText, isVisible, isWritable,\r\n logTime, maybe, pad0,PopupFactory, proxyWrapper, randomNr, randomString, resolveEventTypeParameter, setData,\r\n styleFactory, systemLog, tagFNFactory, tagLib, toCamelcase, toDashedNotation, truncate2SingleStr, truncateHtmlStr,\r\n ucFirst,\r\n};\r\n\r\nfunction clearAllTimers() {\r\n let id = setTimeout(() => {});\r\n while (id >= 0) { clearTimeout(id--); }\r\n}\r\n\r\nfunction getHandlerName(name) {\r\n const validName = isNonEmptyString(name) && !/^handler|handlers$/gi.test(name.trim())\r\n return validName ? name.trim() : uniqueHandlerID();\r\n}\r\n\r\nfunction getAttributesForLogging(instance) {\r\n const isElem = !!instance.node && !IS(instance, Text, Comment);\r\n switch(true) {\r\n case isElem:\r\n const dataset = instance.node.dataset ? Object.keys(instance.node.dataset)\r\n .map(v => `[data-${v}]`) : [];\r\n const relevantAttrs = [\r\n instance.attr(`id`) && `#${instance?.attr(`id`)}` || undefined,\r\n instance.attr(`class`) && instance?.attr(`class`).split(` `).map(v => `.${v}`).join(', ') || undefined,\r\n dataset.length > 0 && dataset.join(`, `) || undefined,\r\n ];\r\n const attrs = relevantAttrs.filter(v => !!v).join(`, `) || [];\r\n return attrs.length ? `(${attrs})` : ``;\r\n default: return ``;\r\n }\r\n}\r\n\r\nfunction uniqueHandlerID(idCache) {\r\n const anonID = `anonymous_${Math.random().toString(36).slice(2)}`;\r\n \r\n if (!handlerIdCache[anonID]) {\r\n handlerIdCache[anonID] = anonID;\r\n return anonID;\r\n }\r\n \r\n return uniqueHandlerID();\r\n}\r\n\r\nfunction getCaptureValue(eventType, captureValue) {\r\n return !!(allwaysCaptureEventTypes.find(t => t === eventType)) || !!captureValue;\r\n}\r\n\r\nfunction checkProp(prop) {\r\n return prop.startsWith(`data`) || ATTRS.html.find(attr => prop.toLowerCase() === attr);\r\n}\r\n\r\nfunction emptyElement(el) {\r\n return el && (el.textContent = \"\");\r\n}\r\n\r\nfunction findParentScrollDistance(node, distance = 0, top = true) {\r\n node = node?.parentElement;\r\n const what = top ? `scrollTop` : `scrollLeft`;\r\n distance += node ? node[what] : 0;\r\n return !node ? distance : findParentScrollDistance(node, distance, top);\r\n}\r\n\r\nfunction isNonEmptyString(str, minlen = 1) {\r\n minlen = IS(minlen, Number) && minlen || 1;\r\n return IS(str, String) && str.length >= minlen;\r\n}\r\n\r\nfunction truncate2SingleStr(str, maxLength = 120) {\r\n return truncateHtmlStr(str, maxLength).replace(/&lt;/g, `<`);\r\n}\r\n\r\nfunction truncateHtmlStr(str, maxLength = 120) {\r\n return `${str}`\r\n .trim()\r\n .slice(0, maxLength)\r\n .replace(/>\\s+</g, `><`)\r\n .replace(/</g, `&lt;`)\r\n .replace(/\\s{2,}/g, ` `)\r\n .replace(/\\n/g, `\\\\n`) + (str.length > maxLength ? ` &hellip;` : ``).trim();\r\n}\r\n\r\nfunction escHtml(html) {\r\n switch(true) {\r\n case IS(html, String):\r\n const tmpDiv = document.createElement(\"div\");\r\n tmpDiv.append(html);\r\n return tmpDiv.innerHTML;\r\n default: return html;\r\n }\r\n}\r\n\r\n/* private */\r\nfunction decodeForConsole(something) {\r\n return IS(something, String) &&\r\n Object.assign(\r\n document.createElement(`textarea`),\r\n {innerHTML: something}).textContent || something;\r\n}\r\n\r\nfunction systemLogFactory() {\r\n let [on, disabled] = [false, true];\r\n \r\n const backLog = [];\r\n const systemLogger = {\r\n get on() { on = true; return systemLogger; },\r\n get off() { on = false; return systemLogger; },\r\n get disable() { disabled = true; return systemLogger; },\r\n get enable() { disabled = false; return systemLogger; },\r\n get backLog() { return backLog; },\r\n };\r\n \r\n function disable() {\r\n disabled = true;\r\n }\r\n \r\n function enable() {\r\n disabled = false;\r\n }\r\n \r\n function error(...args) {\r\n backLog.unshift(...args.map(arg => `${logTime()} \u2A3B ${decodeForConsole(arg)}`));\r\n console.error(backLog.slice(0, args.length).join(`\\n`));\r\n return systemLogger;\r\n }\r\n \r\n function warn(...args) {\r\n backLog.unshift(...args.map(arg => `${logTime()} \u26A0 ${decodeForConsole(arg)}`));\r\n console.warn(backLog.slice(0, args.length).join(`\\n`));\r\n return systemLogger;\r\n }\r\n \r\n function log(...args) {\r\n const entryTxt = args.map(arg => `${logTime()} \u2714 ${decodeForConsole(arg)}`);\r\n !disabled && backLog.unshift(...entryTxt);\r\n switch(on) {\r\n case true: console.log(entryTxt.join(`\\n`));\r\n default: return systemLogger;\r\n }\r\n }\r\n \r\n Object.defineProperties(systemLogger, {\r\n log: {value: log, enumerable: false},\r\n error: {value: error, enumerable: false},\r\n warn: {value: warn, enumerable: false},\r\n });\r\n \r\n return Object.freeze(systemLogger);\r\n}\r\n\r\nfunction logTime() {\r\n return ((d) =>\r\n `[${pad0(d.getHours())}:${pad0(d.getMinutes())}:${\r\n pad0(d.getSeconds())}.${pad0(d.getMilliseconds(), 3)}]`)(new Date());\r\n}\r\n\r\nfunction assignAttrValues(el, keyValuePairs) {\r\n if (el) {\r\n for (let [key, value] of Object.entries(keyValuePairs)) {\r\n key = toDashedNotation(key);\r\n if (key.startsWith(`data`)) {\r\n return setData(el, value);\r\n }\r\n \r\n if (IS(value, String) && checkProp(key)) {\r\n el.setAttribute(key, value.split(/[, ]/)?.join(` `));\r\n }\r\n }\r\n }\r\n}\r\n\r\nfunction setData(el, keyValuePairs) {\r\n if (el && IS(keyValuePairs, Object)) {\r\n for (const [key, value] of Object.entries(keyValuePairs)) {\r\n el.setAttribute(`data-${toDashedNotation(key)}`, value);\r\n }\r\n }\r\n}\r\n\r\nfunction input2Collection(input) {\r\n return !input ? []\r\n : input.EL ? [input.EL]\r\n : IS(input, NodeList) ? [...input]\r\n : isNode(input) ? [input]\r\n : isArrayOfHtmlElements(input) ? input\r\n : input.isJQx ? input.collection : undefined;\r\n}\r\n\r\n\r\n\r\nfunction after(instance, elem2AddAfter) {\r\n return instance.andThen(elem2AddAfter);\r\n}\r\n\r\nfunction beforeOrAfter(instance, jqx, after = true, ...toAdd) {\r\n if (instance.is.empty) {\r\n systemLog.log(`[JQx instance].[before(Me) | after(Me) | andThen]: instance is empty.`, );\r\n return instance;\r\n }\r\n \r\n toAdd = toAdd.map(elem => elem.isJQx ? elem.node : IS(elem, String) ? jqx(elem).node ?? elem : elem );\r\n const noCando = toAdd.find(elem => !IS(elem, String, Element));\r\n \r\n if (noCando) {\r\n const bOrA = after ? `after` : `before`;\r\n systemLog.log(`[JQx instance].[${bOrA}(Me)]: invalid/-sufficient input.`, );\r\n return instance;\r\n }\r\n \r\n instance.node[after ? `after` : `before`](...toAdd);\r\n \r\n return instance;\r\n}\r\n\r\nfunction before(instance, elem2AddBefore) {\r\n return instance.andThen(elem2AddBefore, true);\r\n}\r\n\r\nfunction isNode(input) {\r\n return IS(input, Text, HTMLElement, Comment)\r\n}\r\n\r\nfunction applyStyle(el, rules) {\r\n if (IS(rules, Object)) {\r\n for (let [key, value] of Object.entries(rules)) {\r\n let priority;\r\n if (/!important/i.test(value)) {\r\n value = value.slice(0, value.indexOf(`!`)).trim();\r\n priority = 'important';\r\n }\r\n \r\n el.style.setProperty(toDashedNotation(key), value, priority)\r\n }\r\n }\r\n}\r\n\r\nfunction cloneAndDestroy(elem) {\r\n const cloned = elem.cloneNode(true)\r\n cloned.removeAttribute && cloned.removeAttribute(`id`);\r\n elem.isConnected ? elem.remove() : elem = null;\r\n return cloned;\r\n}\r\n\r\n\r\nfunction isVisible(el) {\r\n if (!IS(el, HTMLElement)) { return undefined; }\r\n const elStyle = el.style;\r\n const computedStyle = getComputedStyle(el);\r\n const invisible = !![elStyle.visibility, computedStyle.visibility].includes(\"hidden\");\r\n const noDisplay = !![elStyle.display, computedStyle.display].includes(\"none\");\r\n const hidden = !!el.hidden;\r\n const zeroHeightOrWidth = parseInt(computedStyle.height) < 1 || parseInt(computedStyle.width) < 1;\r\n const offscreen = el.offsetTop < 0 || (el.offsetLeft + el.offsetWidth) < 0\r\n || el.offsetLeft > document.body.offsetWidth;\r\n const noOpacity = +computedStyle.opacity === 0 || +(elStyle.opacity || 1) === 0;\r\n return !(hidden || offscreen || noOpacity || noDisplay || invisible || zeroHeightOrWidth);\r\n}\r\n\r\nfunction isWritable(elem) {\r\n if (elem?.isConnected) {\r\n return !![...document.querySelectorAll(`:is(:read-write)`)]\r\n .find(el => el === elem);\r\n }\r\n \r\n return false;\r\n}\r\n\r\nfunction ElemArray2HtmlString(elems) {\r\n return elems?.filter(el => el).reduce((acc, el) =>\r\n acc.concat(isComment(el) ? `<!--${el.data}-->`\r\n : isCommentOrTextNode(el) ? el.textContent\r\n : el.outerHTML), ``);\r\n}\r\n\r\n/* private */\r\nfunction pad0(nr, n=2) {\r\n return `${nr}`.padStart(n, `0`);\r\n}\r\n\r\nfunction randomNr(max, min = 0) {\r\n [max, min] = [Math.floor(max), Math.ceil(min)];\r\n return Math.floor( ([...crypto.getRandomValues(new Uint32Array(1))].shift() / 2 ** 32 ) * (max - min + 1) + min );\r\n}\r\n\r\nfunction randomString() {\r\n return `_${shuffle(characters4RandomString).slice(0, 8).join(``)}`;\r\n}\r\n\r\nfunction resolveEventTypeParameter (maybeTypes) {\r\n maybeTypes = IS(maybeTypes, String) && /,/.test(maybeTypes)\r\n ? maybeTypes\r\n .split(`,`)\r\n .map(t => t.trim().toLowerCase())\r\n .filter( t => t.length > 0)\r\n : maybeTypes;\r\n return IS(maybeTypes, Array)\r\n ? maybeTypes\r\n : IS(maybeTypes, String) && maybeTypes?.trim().toLowerCase() || ``;\r\n}\r\n\r\nfunction isModal(elem) {\r\n if (elem?.isConnected) {\r\n return !![...document.querySelectorAll(`:is(:modal)`)]\r\n .find(el => el === elem) ? true : false;\r\n }\r\n \r\n return false;\r\n}\r\n\r\nfunction convert2Bool(value, defaultValue) {\r\n // Valid input values: 0|false|f|1|true|t (case insensitive)\r\n value = String(value).trim();\r\n switch (true) {\r\n case /^(0|false|f)$/i.test(value):\r\n return false;\r\n case /^(1|true|t)$/i.test(value):\r\n return true;\r\n default:\r\n return defaultValue;\r\n }\r\n}\r\n\r\n/* private */\r\nfunction shuffle(array) {\r\n let i = array.length;\r\n while (i--) {\r\n const ri = randomNr(i);\r\n [array[i], array[ri]] = [array[ri], array[i]];\r\n }\r\n return array;\r\n}\r\n\r\nfunction toCamelcase(str2Convert) {\r\n return IS(str2Convert, String)\r\n ? str2Convert.toLowerCase()\r\n .split(`-`)\r\n .map( (str, i) => i && `${ucFirst(str)}` || str)\r\n .join(``)\r\n : str2Convert;\r\n}\r\n\r\nfunction toDashedNotation(str2Convert) {\r\n return str2Convert.replace(/[A-Z]/g, a => `-${a.toLowerCase()}`).replace(/^-|-$/, ``);\r\n}\r\n\r\nfunction ucFirst([first, ...theRest]) {\r\n return `${first.toUpperCase()}${theRest.join(``)}`;\r\n}\r\n\r\nfunction isCommentOrTextNode(node) {\r\n return IS(node, Comment, Text);\r\n}\r\n\r\nfunction isComment(input) {\r\n IS(input, Comment);\r\n}\r\n\r\nfunction isText(input) {\r\n return IS(input, Text);\r\n}\r\n\r\nfunction isHtmlString(input) {\r\n return IS(input, String) && /^<|>$/.test(`${input}`.trim());\r\n}\r\n\r\nfunction isArrayOfHtmlElements(input) {\r\n return IS(input, Array) && !input?.find(el => !isNode(el));\r\n}\r\n\r\nfunction isArrayOfHtmlStrings(input) {\r\n return IS(input, Array) && !input?.find(s => !isHtmlString(s));\r\n}\r\n", "import {\r\n after, applyStyle, assignAttrValues, beforeOrAfter, checkProp, cleanupHtml, clearAllTimers, cloneAndDestroy,\r\n convert2Bool, createElementFromHtmlString, datasetKeyProxy, ElemArray2HtmlString, emptyElement, escHtml,\r\n findParentScrollDistance, getAttributesForLogging, getHandlerName, HandlerFactory, inject2DOMTree, input2Collection,\r\n insertPositions, IS, isArrayOfHtmlElements, isArrayOfHtmlStrings, isComment, isCommentOrTextNode, isHtmlString,\r\n isModal, isNode, isNonEmptyString, isText, isVisible, isWritable, logTime, maybe, PopupFactory, proxyWrapper,\r\n randomNr, randomString, resolveEventTypeParameter, setData, styleFactory, systemLog, tagFNFactory, tagLib,\r\n toCamelcase, toDashedNotation, truncate2SingleStr, truncateHtmlStr,\r\n} from \"../Resource/Common/Utilities.js\"\r\n\r\nexport {\r\n after, applyStyle, assignAttrValues, beforeOrAfter, checkProp, cleanupHtml, clearAllTimers, cloneAndDestroy,\r\n convert2Bool, createElementFromHtmlString, css, datasetKeyProxy, ElemArray2HtmlString, emptyElement, escHtml,\r\n ExamineElementFeatureFactory, findParentScrollDistance, getAttributesForLogging, getHandlerName, getNodeContentForLog,\r\n HandlerFactory, inject2DOMTree, input2Collection, insertPositions, IS, isArrayOfHtmlElements, isArrayOfHtmlStrings,\r\n isCommentOrTextNode, isHtmlString, isNode, isNonEmptyString, logTime, loop, maybe, PopupFactory, proxyWrapper,\r\n randomNr, randomString, resolveEventTypeParameter, selectedFactoryHelpers, setCollectionFromCssSelector, setData,\r\n styleFactory, systemLog, tagFNFactory, tagLib, toCamelcase, toDashedNotation, truncate2SingleStr, truncateHtmlStr,\r\n};\r\n\r\nfunction loop(instance, callback) {\r\n const cleanCollection = instance.collection.filter(el => !isCommentOrTextNode(el));\r\n for (let i = 0; i < cleanCollection.length; i += 1) {\r\n callback(cleanCollection[i], i);\r\n }\r\n\r\n return instance;\r\n}\r\n\r\nfunction getNodeContentForLog(instance) {\r\n if (instance.node) {\r\n return IS(instance.node, Comment)\r\n ? `<!--${instance.node.textContent}-->`\r\n : instance.HTML.get(1).split(`>`)[0] + `>...`\r\n }\r\n return ``;\r\n}\r\n\r\nfunction setCollectionFromCssSelector(input, root, self) {\r\n const selectorRoot = root !== document.body && (IS(input, String) && input.toLowerCase() !== \"body\") ? root : document;\r\n if (!IS(input, String) || input.trim().length < 1) { return; }\r\n try { self.collection = [...selectorRoot.querySelectorAll(input)]; }\r\n catch (err) { systemLog.warn(`JQx: Invalid CSS querySelector. [${!IS(input, String) ? `Not a string!` : input}]`); }\r\n}\r\n\r\nfunction selectedFactoryHelpers() {\r\n return {\r\n isCommentOrTextNode, isNode, isComment, isText, isHtmlString, isArrayOfHtmlElements,\r\n isArrayOfHtmlStrings, ElemArray2HtmlString, input2Collection, setCollectionFromCssSelector,\r\n cssRuleEdit: styleFactory({createWithId: `JQxStylesheet`}) };\r\n}\r\n\r\nfunction ExamineElementFeatureFactory() {\r\n const notApplicable = `n/a`;\r\n const noElements = Object.freeze({\r\n notInDOM: notApplicable, writable: notApplicable, modal: notApplicable, empty: true,\r\n open: notApplicable, visible: notApplicable, });\r\n\r\n return self => {\r\n const firstElem = self.node;\r\n\r\n return IS(firstElem, Node)\r\n ? Object.freeze({\r\n get writable() {\r\n return isWritable(firstElem);\r\n },\r\n get modal() {\r\n return isModal(firstElem);\r\n },\r\n get inDOM() {\r\n return firstElem.isConnected;\r\n },\r\n get open() {\r\n return firstElem.open ?? false;\r\n },\r\n get visible() {\r\n return isVisible(firstElem);\r\n },\r\n get disabled() {\r\n return firstElem.hasAttribute(\"readonly\") || firstElem.hasAttribute(\"disabled\");\r\n },\r\n get empty() {\r\n return self.collection.length < 1;\r\n },\r\n get virtual() {\r\n return self.isVirtual;\r\n }\r\n })\r\n : noElements;\r\n };\r\n}\r\n\r\nfunction css(el, keyOrKvPairs, value, jqx) {\r\n if (value && IS(keyOrKvPairs, String)) {\r\n keyOrKvPairs = {[keyOrKvPairs]: value === \"-\" ? \"\" : value};\r\n }\r\n\r\n let nwClass = undefined;\r\n\r\n if (keyOrKvPairs.className) {\r\n nwClass = keyOrKvPairs.className;\r\n delete keyOrKvPairs.className;\r\n }\r\n\r\n const classExists = ([...el.classList].find(c => c.startsWith(`JQxClass-`) || nwClass && c === nwClass));\r\n nwClass = classExists || nwClass || `JQxClass-${randomString().slice(1)}`;\r\n jqx.editCssRule(`.${nwClass}`, keyOrKvPairs);\r\n el.classList.add(nwClass);\r\n}\r\n", "import {\r\n IS, isNode, ExamineElementFeatureFactory, beforeOrAfter,\r\n isNonEmptyString, toDashedNotation, escHtml, systemLog, insertPositions,\r\n datasetKeyProxy, loop, cloneAndDestroy, setData,\r\n findParentScrollDistance, emptyElement, checkProp, css, assignAttrValues,\r\n applyStyle, createElementFromHtmlString, inject2DOMTree,\r\n} from \"./JQxUtilities.js\";\r\n\r\nconst instanceIs = ExamineElementFeatureFactory();\r\n\r\nexport default function(jqx) {\r\n return {\r\n factoryExtensions: factoryExtensionsFactory(jqx),\r\n instanceExtensions: instanceExtensionsFactory(jqx),\r\n }\r\n};\r\n\r\nfunction factoryExtensionsFactory(jqx) {\r\n return {\r\n data(instance) {\r\n return {\r\n get all() {\r\n return new Proxy(instance[0]?.dataset ?? {}, datasetKeyProxy);\r\n },\r\n set(valuesObj = {}) {\r\n if (!instance.is.empty && IS(valuesObj, Object)) {\r\n for (const [key, value] of Object.entries(valuesObj)) {\r\n instance.setData({[key]: value});\r\n }\r\n }\r\n return instance;\r\n },\r\n get(key, whenUndefined) {\r\n return instance.data.all[key] ?? whenUndefined;\r\n },\r\n add(valuesObj = {}) {\r\n if (!instance.is.empty && IS(valuesObj, Object)) {\r\n for (const [key, value] of Object.entries(valuesObj)) {\r\n instance.setData({[key]: value});\r\n }\r\n }\r\n return instance;\r\n },\r\n remove(key) {\r\n instance[0]?.removeAttribute(`data-${toDashedNotation(key)}`);\r\n return instance;\r\n },\r\n };\r\n },\r\n dimensions(instance) {\r\n if (instance.is.empty) {\r\n systemLog.error(`[JQx instance].dimensions called on empty instance`);\r\n return { error: `[JQx instance].dimensions: NO ELEMENTS` };\r\n }\r\n let {node} = instance;\r\n const boundingRect = node.getBoundingClientRect().toJSON();\r\n boundingRect.scrollTopDistance = findParentScrollDistance(node, 0);\r\n boundingRect.scrollLeftDistance = findParentScrollDistance(node, 0, false);\r\n return boundingRect;\r\n },\r\n node(instance) { return instance[0]; },\r\n HTML(instance) {\r\n return {\r\n get(outer, escaped) {\r\n if (instance.is.empty) {\r\n return `NO ELEMENTS IN COLLECTION`;\r\n }\r\n const html = outer ? instance.outerHtml : instance.html();\r\n return escaped ? escHtml(html) : html;\r\n },\r\n set(content, append = false, escape = false) {\r\n content = content.isJQx ? content.HTML.get(1) : content;\r\n const isString = IS(content, String);\r\n content = isString && escape ? escHtml(content) : content;\r\n if (isString && (content || ``).trim().length) { instance.html(content, append); }\r\n return instance;\r\n },\r\n replace(content, escape = false) {\r\n return instance.HTML.set(content, false, escape);\r\n },\r\n append(content, escape = false) {\r\n content = IS(content, HTMLElement)\r\n ? jqx(content).HTML.get(1) : content.isJQx ? content.HTML.get(1) : content;\r\n return instance.HTML.set(content, true, escape);\r\n },\r\n insert(content, escape = false) {\r\n content = IS(content, HTMLElement)\r\n ? jqx(content).HTML.get(1) : content.isJQx ? content.HTML.get(1) : content;\r\n return instance.HTML.set(content + instance.HTML.get(), false, escape);\r\n },\r\n };\r\n },\r\n is(instance) { return instanceIs(instance); },\r\n length(instance) { return instance.collection.length; },\r\n outerHtml(instance) { return (instance.first() || {outerHTML: undefined}).outerHTML; },\r\n parent(instance) {\r\n const maybeParent = jqx(instance[0]?.parentNode);\r\n return !maybeParent.is.empty ? maybeParent : instance;\r\n },\r\n render(instance) {\r\n switch(true) {\r\n case !instance.is.empty: return instance.toDOM();\r\n default:\r\n jqx.logger.warn(`[JQx.render]: empty collection`);\r\n return instance;\r\n }\r\n },\r\n Style(instance) {\r\n return {\r\n get computed() { return !instance.is.empty ? getComputedStyle(instance[0]) : {}; },\r\n inline(styleObj) {\r\n return instance.style(styleObj);\r\n },\r\n inSheet(styleObj) {\r\n return instance.css(styleObj)\r\n },\r\n valueOf(key) {\r\n return !instance.is.empty ? getComputedStyle(instance[0])[toDashedNotation(key)] : undefined;\r\n },\r\n nwRule(rule) {\r\n return instance.Style.byRule({rules: rule})\r\n },\r\n byRule({classes2Apply = [], rules = []} = {}) {\r\n const isSingleRule = IS(rules, String);\r\n const addClassNameOrID = isSingleRule && !classes2Apply.length ? rules.split(`{`)[0].trim() : ``;\r\n rules = rules && IS(rules, String) ? [rules] : rules;\r\n classes2Apply = classes2Apply && IS(classes2Apply, String) ? [classes2Apply] : classes2Apply;\r\n \r\n if (rules?.length || classes2Apply?.length) {\r\n rules?.length && jqx.editCssRules(...rules);\r\n \r\n if (classes2Apply) {\r\n for(const selector of classes2Apply) { instance.addClass(selector); }\r\n }\r\n }\r\n \r\n if (addClassNameOrID?.startsWith(`.`)) {\r\n instance.addClass(addClassNameOrID.slice(1));\r\n }\r\n \r\n if (addClassNameOrID?.startsWith(`#`) && !instance.attr(`id`)) {\r\n instance.prop({id: addClassNameOrID.slice(1)});\r\n }\r\n \r\n return instance;\r\n },\r\n };\r\n }\r\n }\r\n}\r\n\r\nfunction instanceExtensionsFactory(jqx) {\r\n return {\r\n addClass(instance, ...classNames) {\r\n return loop(instance, el => el && classNames.forEach(cn => el.classList.add(cn)));\r\n },\r\n after(instance, ...elems) { return beforeOrAfter(instance, jqx, true, ...elems); },\r\n afterMe(instance, ...elems) { return beforeOrAfter(instance, jqx, true, ...elems); },\r\n andThen(instance, ...elems) { return beforeOrAfter(instance, jqx, true, ...elems); },\r\n append(instance, ...elems2Append) {\r\n if (instance.is.empty || elems2Append.length < 1) { return instance;}\r\n const shouldMove = instance.length === 1;\r\n for (let elem2Append of elems2Append) {\r\n if (!elem2Append.isJQx && isNonEmptyString(elem2Append)) {\r\n const elem2Append4Test = elem2Append.trim();\r\n const isPlainString = !/^<(.+)[^>]+>$/m.test(elem2Append4Test);\r\n let toAppend = isPlainString ? jqx.text(elem2Append) : createElementFromHtmlString(elem2Append);\r\n loop(instance, el => el.append(shouldMove ? toAppend : cloneAndDestroy(toAppend)));\r\n }\r\n\r\n if (isNode(elem2Append)) {\r\n loop(instance, el => el.append(shouldMove ? elem2Append : cloneAndDestroy(elem2Append)));\r\n }\r\n\r\n if (elem2Append.isJQx && !elem2Append.is.empty) {\r\n loop(instance, el =>\r\n elem2Append.collection.forEach(elem =>\r\n el.append(shouldMove ? elem : cloneAndDestroy(elem)))\r\n );\r\n }\r\n }\r\n return instance;\r\n },\r\n appendTo(instance, appendTo) {\r\n appendTo = typeof appendTo === `string` ? jqx(appendTo) : appendTo;\r\n switch(true) {\r\n case !appendTo?.isJQx && !IS(appendTo, HTMLElement) || appendTo?.collection?.length < 1:\r\n jqx.warn(`[JQx instance].appendTo: invalid input`);\r\n return instance;\r\n default:\r\n (!appendTo.isJQx ? jqx(appendTo) : appendTo).append(instance);\r\n return instance;\r\n }\r\n },\r\n attr(instance, keyOrObj, value) {\r\n if (!instance.node || IS(instance.node, Text, Comment)) { return instance }\r\n\r\n if (!value && isNonEmptyString(keyOrObj)) {\r\n keyOrObj = toDashedNotation(keyOrObj);\r\n\r\n if (keyOrObj === `class`) {\r\n return [...instance.node.classList]?.join(` `);\r\n }\r\n \r\n return instance.node.getAttribute(keyOrObj);\r\n }\r\n\r\n if (isNonEmptyString(keyOrObj) && value) {\r\n keyOrObj = toDashedNotation(keyOrObj);\r\n\r\n switch(true) {\r\n case keyOrObj.startsWith(`data-`):\r\n keyOrObj = { data: {[keyOrObj.replace(`data-`, ``)]: value } };\r\n break;\r\n default: keyOrObj = { [keyOrObj]: value };\r\n }\r\n }\r\n\r\n if (IS(keyOrObj, Object) && !instance.is.empty) {\r\n assignAttrValues(instance.node, keyOrObj);\r\n }\r\n\r\n return instance;\r\n },\r\n before(instance, ...elems) {\r\n return beforeOrAfter(instance, jqx, false, ...elems);\r\n },\r\n beforeMe(instance, ...elems) {\r\n beforeOrAfter(instance, jqx, false, ...elems)\r\n },\r\n clear(instance) { return loop(instance, emptyElement); },\r\n closest(instance, selector) {\r\n const theClosest = isNonEmptyString(selector) ? instance.node?.closest(selector) : undefined;\r\n return theClosest ? jqx(theClosest) : instance;\r\n },\r\n computedStyle(instance, property) {\r\n const {node} = instance;\r\n return node && getComputedStyle(node)[property];\r\n },\r\n css(instance, keyOrKvPairs, value) {\r\n return loop(instance, el => css(el, keyOrKvPairs, value, jqx));\r\n },\r\n duplicate(instance, toDOM = false, root = document.body) {\r\n switch(true) {\r\n case instance.is.empty:\r\n systemLog.error(`Duplicating an empty JQx instance is not possible`)\r\n return instance;\r\n default:\r\n const clone = instance.collection[0].cloneNode(true);\r\n clone.childNodes.forEach((node) => { node.removeAttribute && node?.removeAttribute(`id`) });\r\n return toDOM ? jqx(clone).toDOM(root) : jqx.virtual(clone);\r\n }\r\n },\r\n each(instance, cb) { return loop(instance, cb); },\r\n empty(instance) { return loop(instance, emptyElement); },\r\n find(instance, selector) {\r\n return instance.collection.length > 0 ? [...instance.first()?.querySelectorAll(selector)] : [];\r\n },\r\n find$(instance, selector) {\r\n return instance.collection.length > 0 ? jqx(selector, instance) : instance;\r\n },\r\n first(instance, asJQxInstance = false) {\r\n return instance.collection.length > 0\r\n ? asJQxInstance ? instance.single() : instance.collection[0]\r\n : undefined;\r\n },\r\n first$(instance, indexOrSelector) {\r\n return instance.single(indexOrSelector);\r\n },\r\n getData(instance, dataAttribute, valueWhenFalsy) {\r\n return instance.node?.dataset?.[dataAttribute] || valueWhenFalsy;\r\n },\r\n hasClass(instance, ...classNames) {\r\n return instance.is.empty || !instance.node.classList.length\r\n ? false\r\n : classNames.find(cn => instance.node.classList.contains(cn)) && true || false;\r\n },\r\n hide(instance) { return loop(instance, el => applyStyle(el, {display: `none !important`})); },\r\n html(instance, htmlValue, append) {\r\n switch(true) {\r\n case instance.is.empty && !isNonEmptyString(htmlValue): return \"\";\r\n case !isNonEmptyString(htmlValue): return instance.node?.getHTML() ?? ``;\r\n default:\r\n const nwElement = createElementFromHtmlString(\r\n `<div>${htmlValue.isJQx ? htmlValue.HTML.get(true) : htmlValue}</div>` );\r\n const cb = el => {\r\n el.textContent = !append ? `` : el.textContent;\r\n return el.insertAdjacentHTML(jqx.at.end, nwElement.getHTML());\r\n }\r\n return loop(instance, cb);\r\n }\r\n },\r\n htmlFor(instance, forSelector, htmlString = \"\", append = false) {\r\n if (instance.is.empty || !isNonEmptyString(forSelector) || !isNonEmptyString(htmlString)) { return instance; }\r\n const el2Change = instance.find$(forSelector);\r\n if (el2Change.length < 1) { return instance; }\r\n const nwElement = createElementFromHtmlString(`<span>${htmlString}</span>`);\r\n el2Change.each(el => {\r\n if (!append) { el.textContent = ``; }\r\n el.insertAdjacentHTML(jqx.at.end, nwElement?.getHTML());\r\n });\r\n\r\n return instance;\r\n },\r\n isEmpty(instance) { return !!!instance.node; },\r\n nth$(instance, indexOrSelector) { return instance.single(indexOrSelector); },\r\n on(instance, type, ...callback) {\r\n switch(true) {\r\n case instance.is.empty || !IS(type, String, Array) || !isNonEmptyString(type) || callback.length < 1:\r\n return instance;\r\n default: jqx.handle({type, node: instance.node, handler: callback});\r\n return instance;\r\n }\r\n },\r\n once(instance, type, ...callback) {\r\n switch(true) {\r\n case instance.is.empty || !IS(type, String, Array) || !isNonEmptyString(type) || callback.length < 1:\r\n return instance;\r\n default:\r\n jqx.handle({type, once: true, node: instance.node, handler: callback});\r\n return instance\r\n }\r\n },\r\n prepend(instance, ...elems2Prepend) {\r\n if (instance.is.empty || !elems2Prepend) { return; }\r\n const shouldMove = instance.length === 1;\r\n\r\n for (let elem2Prepend of elems2Prepend) {\r\n if (isNonEmptyString(elem2Prepend)) {\r\n elem2Prepend = elem2Prepend.trim();\r\n const isPlainString = !/^<(.+)[^>]+>$/m.test(elem2Prepend);\r\n let toPrepend = isPlainString ? jqx.text(elem2Prepend) : createElementFromHtmlString(elem2Prepend);\r\n toPrepend = shouldMove ? toPrepend : cloneAndDestroy(toPrepend);\r\n loop(instance, el => el.prepend(toPrepend.cloneNode(true)));\r\n }\r\n\r\n if (isNode(elem2Prepend)) {\r\n loop(instance, el => el.prepend(shouldMove ? elem2Prepend : cloneAndDestroy(elem2Prepend)));\r\n }\r\n\r\n if (elem2Prepend.isJQx && !elem2Prepend.is.empty) {\r\n elem2Prepend.collection.length > 1 && elem2Prepend.collection.reverse();\r\n loop(instance, el => loop( elem2Prepend, elem => el.prepend(shouldMove ? elem : cloneAndDestroy(elem)) ) );\r\n elem2Prepend.collection.reverse();\r\n }\r\n }\r\n \r\n return instance;\r\n },\r\n prependTo(instance, prependTo) {\r\n prependTo = typeof prependTo === `string` ? jqx(prependTo) : prependTo;\r\n switch(true) {\r\n case !prependTo?.isJQx && !IS(prependTo, HTMLElement) || prependTo?.collection?.length < 1:\r\n jqx.warn(`[JQx instance].appendTo: invalid input`);\r\n return instance;\r\n default:\r\n (!prependTo.isJQx ? jqx(prependTo) : prependTo).prepend(instance);\r\n return instance;\r\n }\r\n },\r\n prop(instance, nameOrProperties, value) {\r\n if (IS(nameOrProperties, String) && !value) {\r\n return nameOrProperties.startsWith(`data`)\r\n ? instance[0]?.dataset[nameOrProperties.slice(nameOrProperties.indexOf(`-`)+1)]\r\n : instance[0]?.[nameOrProperties];\r\n }\r\n\r\n const props = !IS(nameOrProperties, Object) ? { [nameOrProperties]: value } : nameOrProperties;\r\n for (let [propName, propValue] of Object.entries(props)) {\r\n propName = propName.trim();\r\n\r\n if (propValue && !checkProp(propName) || !propValue) {\r\n return false;\r\n }\r\n\r\n const isId = propName.toLowerCase() === `id`;\r\n\r\n if (isId) { return instance[0].id = propValue; }\r\n\r\n loop(instance, el => {\r\n if (propName.startsWith(`data`)) {\r\n return el.dataset[propName.slice(propName.indexOf(`-`)+1)] = propValue;\r\n }\r\n\r\n el[propName] = propValue;\r\n });\r\n }\r\n\r\n return instance;\r\n },\r\n remove(instance, selector) {\r\n const remover = el => el.remove();\r\n const removeFromCollection = () =>\r\n instance.collection = instance.collection.filter(el => document.documentElement.contains(el));\r\n\r\n if (selector) {\r\n const selectedElements = instance.find$(selector);\r\n if (!selectedElements.is.empty) {\r\n loop(selectedElements, remover);\r\n removeFromCollection();\r\n }\r\n return instance;\r\n }\r\n loop(instance, remover);\r\n removeFromCollection();\r\n return instance;\r\n },\r\n rmAttr(instance, ...attrNames) {\r\n for (const attr of attrNames) { instance.node.removeAttribute(attr); }\r\n return instance;\r\n },\r\n removeClass(instance, ...classNames) {\r\n return loop(instance, el => { if (el) { for (const cn of classNames) { el.classList.remove(cn); } } });\r\n },\r\n renderTo(instance, root, position) {\r\n root = IS(root, HTMLElement) || root.isJQx ? root : document.body;\r\n position = IS(position, String) && jqx.at[position] ? position : jqx.at.end;\r\n instance.first$().toDOM(root, position);\r\n return instance;\r\n },\r\n replace(instance, oldChild, newChild) {\r\n const firstElem = instance.node;\r\n\r\n if (!oldChild || (!IS(newChild, HTMLElement) && !newChild?.isJQx)) {\r\n jqx.logger.error(`JQx replace: invalid replacement value`);\r\n return instance;\r\n }\r\n\r\n if (newChild.isJQx || IS(newChild, NodeList)) {\r\n newChild = newChild[0];\r\n }\r\n\r\n if (firstElem && oldChild) {\r\n oldChild = IS(oldChild, String)\r\n ? firstElem.querySelectorAll(oldChild)\r\n : oldChild.isJQx\r\n ? oldChild.collection\r\n : oldChild;\r\n\r\n if (IS(oldChild, HTMLElement, NodeList, Array) && IS(newChild, HTMLElement)) {\r\n (IS(oldChild, HTMLElement) ? [oldChild] : [...oldChild])\r\n .forEach(chld => chld.replaceWith(newChild.cloneNode(true)));\r\n }\r\n }\r\n\r\n return instance;\r\n },\r\n replaceClass(instance, className, ...nwClassNames) {\r\n return loop( instance, el => {\r\n el.classList.remove(className);\r\n for (const name of nwClassNames) { el.classList.add(name); }\r\n } )\r\n },\r\n replaceMe(instance, newChild) {\r\n /*NODOC*/ return instance.replaceWith(newChild);\r\n },\r\n replaceWith(instance, newChild) {\r\n newChild = IS(newChild, Element) ? newChild : newChild.isJQx ? newChild[0] : undefined;\r\n\r\n if (newChild) {\r\n instance[0].replaceWith(newChild);\r\n instance = jqx.virtual(newChild);\r\n }\r\n\r\n return instance;\r\n },\r\n setData(instance, spec) {\r\n return loop(instance, el => setData(el, spec));\r\n },\r\n show(instance) {\r\n return loop(instance, el => applyStyle(el, {display: `revert-layer !important`}));\r\n },\r\n single(instance, indexOrSelector) {\r\n const hasNodes = instance.collection.length > 0;\r\n indexOrSelector = indexOrSelector ?? 0;\r\n \r\n switch(true) {\r\n case hasNodes && IS(indexOrSelector, String):\r\n return instance.find$(indexOrSelector);\r\n case hasNodes && IS(indexOrSelector, Number):\r\n return jqx(instance.collection[indexOrSelector]);\r\n case hasNodes: return instance.collection[0];\r\n default: return instance;\r\n }\r\n },\r\n style(instance, keyOrKvPairs, value) {\r\n const loopCollectionLambda = el => {\r\n if (value && IS(keyOrKvPairs, String)) {\r\n keyOrKvPairs = { [keyOrKvPairs]: value || `none` };\r\n }\r\n applyStyle(el, keyOrKvPairs);\r\n };\r\n return loop(instance, loopCollectionLambda);\r\n },\r\n text(instance, textValue, append = false) {\r\n switch(true) {\r\n case instance.isEmpty(): return instance;\r\n case !IS(textValue, String): return instance.node.textContent;\r\n default: return loop(instance, el => el.textContent = append ? el.textContent + textValue : textValue);\r\n }\r\n },\r\n toDOM(instance, root = document.body, position = insertPositions.BeforeEnd) {\r\n instance.isVirtual = false;\r\n inject2DOMTree(instance.collection, root, position);\r\n return instance;\r\n },\r\n toggleClass(instance, className) {\r\n return loop(instance, el => el.classList.toggle(className));\r\n },\r\n toNodeList(instance) {\r\n return [...instance.collection].map(el => document.importNode(el, true));\r\n },\r\n trigger(instance, evtType, SpecifiedEvent, options) {\r\n SpecifiedEvent = IS(SpecifiedEvent, Function) ? SpecifiedEvent : Event;\r\n options = IS(options, Object) ? { ...options, bubbles: options.bubbles??true} : {bubbles: true};\r\n const evObj = new SpecifiedEvent( evtType, options );\r\n \r\n if (!instance.is.empty) {\r\n instance.each(el => el.dispatchEvent(evObj));\r\n }\r\n \r\n return instance;\r\n },\r\n val(instance, newValue) {\r\n switch(true) {\r\n case instance.is.empty || !IS(instance.node, HTMLInputElement, HTMLSelectElement, HTMLTextAreaElement):\r\n return instance;\r\n case !IS(newValue, String):\r\n return instance.node.value;\r\n default:\r\n instance.node.value = !IS(newValue, String) ? \"\" : newValue;\r\n return instance;\r\n }\r\n },\r\n };\r\n}\r\n", "import {\r\n cleanupHtml,\r\n clearAllTimers,\r\n convert2Bool,\r\n escHtml,\r\n getAttributesForLogging,\r\n HandlerFactory,\r\n insertPositions,\r\n IS,\r\n isNonEmptyString,\r\n maybe,\r\n PopupFactory,\r\n proxyWrapper,\r\n randomString,\r\n resolveEventTypeParameter,\r\n selectedFactoryHelpers,\r\n styleFactory,\r\n systemLog,\r\n tagFNFactory as $T,\r\n tagLib,\r\n toCamelcase,\r\n toDashedNotation,\r\n} from \"./JQxUtilities.js\";\r\nimport allMethodsFactory from \"./JQxInstanceMethods.js\";\r\n\r\nlet instanceGetters, instanceMethods;\r\nconst {\r\n isComment, isText, isHtmlString, isArrayOfHtmlElements, isArrayOfHtmlStrings,\r\n ElemArray2HtmlString, cssRuleEdit, addFn\r\n} = selectedUtilitiesFactory();\r\n\r\nexport { proxify, addJQxStaticMethods };\r\n\r\nfunction selectedUtilitiesFactory() {\r\n return {\r\n ...selectedFactoryHelpers(),\r\n addFn: addFnMethod };\r\n}\r\n\r\nfunction addFnMethod(name, extensionMethod) {\r\n name = name?.trim();\r\n \r\n if (!isNonEmptyString(name) || !IS(extensionMethod, Function) ) {\r\n return systemLog.error(\"JQx.fn: method invalid parameter(s)\");\r\n }\r\n \r\n instanceMethods[name] = (self, ...params) => extensionMethod(self, ...params);\r\n return systemLog.log(`JQx: added extension function [${name}]`);\r\n}\r\n\r\nfunction staticFNMethodFactory(jqx) {\r\n return function(name, extensionMethod, isGetter){\r\n name = name?.trim();\r\n if (!isNonEmptyString(name) || !IS(extensionMethod, Function) ) {\r\n return jqx.error(\"JQx.staticFn: invalid parameter(s)\");\r\n }\r\n const ext = isGetter\r\n ? { get() { return extensionMethod(); } }\r\n : { value(...args) { return extensionMethod(...args); } };\r\n \r\n try { Object.defineProperty(jqx, name, ext); }\r\n catch(err) {\r\n return jqx.warn(`JQx.staticFn: extension [${name}] already exists`);\r\n }\r\n \r\n return systemLog.log(`JQx: added static extension function [${name}]`);\r\n }\r\n}\r\n\r\nfunction proxify(instance) {\r\n return new Proxy(\r\n instance, { get: (target, key) => proxyTrapFactory(target, key, instance) }\r\n );\r\n}\r\n\r\nfunction maybeReProxify(method, instance, isGetter = false) {\r\n instance = !!instance[Symbol.proxy] ? instance : proxify(instance);\r\n const returnValue = function(...args) { return method(instance, ...args); }\r\n return isGetter ? returnValue() : returnValue;\r\n}\r\n\r\nfunction proxyReporter(instance) {\r\n return `Proxy for JQx${instance.collection.length < 1 ? ` (empty)` : ``} instance`;\r\n}\r\n\r\nfunction proxyTrapFactory(JQxtarget, key, instance) {\r\n switch(true) {\r\n case key === Symbol.proxy: return proxyReporter(instance);\r\n case typeof key === `symbol`: return maybe({trial: () => JQxtarget[key], whenError: () => JQxtarget });\r\n case !Number.isNaN(+key) && typeof +key === `number`: return JQxtarget.collection?.[key] || undefined;\r\n case (instanceGetters.hasOwnProperty(key)): return maybeReProxify(instanceGetters[key], instance, true);\r\n case (instanceMethods.hasOwnProperty(key)): return maybeReProxify(instanceMethods[key], instance);\r\n default: return Reflect.get(JQxtarget, key);\r\n }\r\n}\r\n\r\nfunction addJQxStaticMethods(jqx) {\r\n const staticMethods = defaultStaticMethodsFactory(jqx);\r\n\r\n for (const [key, descriptor] of Object.entries(Object.getOwnPropertyDescriptors(staticMethods))) {\r\n Object.defineProperty(jqx, key, descriptor);\r\n }\r\n\r\n return jqx;\r\n}\r\n\r\nfunction allowances(jqx) {\r\n return {\r\n allow(tagName) {\r\n const isWebComponent = /-/.test(tagName);\r\n const webComponentTagName = isWebComponent && tagName;\r\n tagName = isWebComponent ? toCamelcase(tagName) : tagName.toLowerCase();\r\n tagLib.allowTag(tagName);\r\n Object.defineProperties( jqx, addGetters(tagName, true, jqx, webComponentTagName) );\r\n },\r\n prohibit(tagName) {\r\n tagName = tagName.toLowerCase();\r\n tagLib.prohibitTag(tagName);\r\n Object.defineProperties( jqx, addGetters(tagName, false, jqx) );\r\n }\r\n }\r\n}\r\n\r\nfunction cssRemove(...rules) {\r\n if (rules.length === 1) {\r\n const ruleStr = String(rules.shift().trim());\r\n rules = !ruleStr.startsWith(`!`)\r\n ? ruleStr.split(`,`).map(v => v.trim())\r\n : [ruleStr.slice(1, -1)];\r\n }\r\n\r\n for (const rule of rules.map(rule => rule.startsWith(`!`) ? rule.slice(1, -1) : rule)) {\r\n cssRuleEdit(rule, {removeRule: 1});\r\n }\r\n}\r\n\r\nfunction virtualFactory(jqx) {\r\n return function(html, root, position) {\r\n root = root?.isJQx ? root?.[0] : root;\r\n position = position && Object.values(insertPositions).find(pos => position === pos);\r\n const virtualElem = jqx(html, document.createElement(`br`));\r\n if (root && !IS(root, HTMLBRElement)) {\r\n for (const elem of virtualElem.collection) {\r\n position ? root.insertAdjacentElement(position, elem) : root.append(elem);\r\n }\r\n }\r\n return virtualElem;\r\n }\r\n}\r\n\r\nfunction combineObjectSources(...sources) {\r\n const result = {};\r\n for (const source of sources) {\r\n const descriptors = Object.getOwnPropertyDescriptors(source);\r\n for (const [key, descriptor] of Object.entries(descriptors)) {\r\n !(key in result) && Object.defineProperty(result, key, {...descriptor, enumerable: false});\r\n }\r\n }\r\n return result;\r\n}\r\n\r\nfunction tagGetterFactory(tagName, cando, jqx, webComponentTagName) {\r\n tagName = toDashedNotation(webComponentTagName || tagName.toLowerCase());\r\n return {\r\n get() {\r\n return (...args) => {\r\n const instance = cando && jqx.virtual(cleanupHtml($T[tagName](...args))) || undefined;\r\n const isElem = !IS(instance?.node, Comment, Text, undefined);\r\n let reportIdOrClass = isElem ? getAttributesForLogging(instance) : ``;\r\n \r\n systemLog.log( cando\r\n ? `JQx: created (virtual) instance from [JQx].${tagName} ${reportIdOrClass}`\r\n : `JQx: ${tagName.toUpperCase()} is prohibited. Use [JQx].allowTag if necessary.`);\r\n return instance;\r\n }\r\n },\r\n enumerable: false,\r\n configurable: true,\r\n }\r\n}\r\n\r\nfunction addGetters(tag, cando, jqx, webComponentTagName) {\r\n tag = tag.toLowerCase();\r\n const jqxGetterForThisTag = tagGetterFactory(tag, cando, jqx, webComponentTagName);\r\n return webComponentTagName\r\n ? { [webComponentTagName]: jqxGetterForThisTag, [toCamelcase(webComponentTagName)]: jqxGetterForThisTag, }\r\n : { [tag]: jqxGetterForThisTag, [tag.toUpperCase()]: jqxGetterForThisTag, };\r\n}\r\n\r\nfunction defaultStaticMethodsFactory(jqx) {\r\n return combineObjectSources(\r\n Object.entries(tagLib.tagsRaw).reduce(staticTagsLambda(jqx), {}),\r\n staticMethodsFactory(jqx));\r\n}\r\n\r\nfunction staticTagsLambda(jqx) {\r\n return function(acc, [tag, cando]) {\r\n Object.defineProperties( acc, addGetters(tag, cando, jqx) );\r\n return acc;\r\n }\r\n}\r\n\r\nfunction delegateFactory(listen) {\r\n return function(type, selector, ...listeners) {\r\n if (IS(selector, Function)) {\r\n listeners.push(selector);\r\n selector = undefined;\r\n }\r\n\r\n listen({type, selector: selector, handlers: listeners});\r\n }\r\n}\r\n\r\nfunction delegateCaptureFactory(handlerWrapper) {\r\n return function(spec) {\r\n let {type, types, origin, selector, handler, handlers, node, name, capture, once, about} = spec;\r\n // <legacy>\r\n handler = handlers || handler;\r\n type = types || type;\r\n selector = origin || selector;\r\n // </legacy>\r\n const typesResolved = resolveEventTypeParameter(type);\r\n const specifiedName = name;\r\n handler = IS(handler, Function) ? [handler] : handler;\r\n const params = {\r\n type: typesResolved, selector: selector || origin, capture,\r\n name: specifiedName, once, node, about };\r\n \r\n switch(true) {\r\n case IS(typesResolved, Array) && typesResolved.length > 0:\r\n for (const type of typesResolved) {\r\n params.type = type;\r\n assignListeners(handler, params, handlerWrapper);\r\n }\r\n break;\r\n default: return assignListeners(handler, params, handlerWrapper);\r\n }\r\n }\r\n}\r\n\r\nfunction assignListeners(handlerFns, params, handlerWrapper) {\r\n for (const handler of handlerFns) {\r\n handlerWrapper.listen({...params, handler});\r\n }\r\n}\r\n\r\nfunction getNamedListenerFactory(jqx) {\r\n return function(type, name) {\r\n name = isNonEmptyString(name) && name;\r\n type = isNonEmptyString(type) && type;\r\n return name && type && jqx.listenerStore[type][name];\r\n };\r\n}\r\n\r\nfunction popupGetter(jqx) {\r\n if (!jqx.activePopup) {\r\n Object.defineProperty(\r\n jqx, `activePopup`, {\r\n value: PopupFactory(jqx),\r\n enumerable: false\r\n } );\r\n }\r\n return jqx.activePopup;\r\n}\r\n\r\nfunction getSelectedStaticMethods(jqx) {\r\n const editCssRule = (ruleOrSelector, ruleObject) => cssRuleEdit(ruleOrSelector, ruleObject);\r\n const createStyle = function(id) {return styleFactory({createWithId: id || `jqx${randomString()}`}); };\r\n const editCssRules = function(...rules) { for (const rule of rules) { cssRuleEdit(rule); } };\r\n const allowProhibit = allowances(jqx);\r\n const handlerWrapper = HandlerFactory(jqx);\r\n const capturedHandling = delegateCaptureFactory(handlerWrapper);\r\n const log = (...line) => systemLog.on.log(...line).off;\r\n const warn = (...line) => systemLog.on.warn(...line).off;\r\n const error = (...line) => systemLog.on.error(...line).off;\r\n return {\r\n editCssRule, createStyle, editCssRules, allowProhibit, handle: capturedHandling, capturedHandling,\r\n log, warn, error, handlerWrapper};\r\n}\r\n\r\nfunction staticMethodsFactory(jqx) {\r\n const { factoryExtensions, instanceExtensions } = allMethodsFactory(jqx);\r\n instanceGetters = factoryExtensions;\r\n instanceMethods = instanceExtensions;\r\n const { editCssRule, createStyle, editCssRules, allowProhibit, handle,\r\n capturedHandling, log, warn, error, handlerWrapper } = getSelectedStaticMethods(jqx);\r\n const getNamedListener = getNamedListenerFactory(jqx);\r\n const staticFN = staticFNMethodFactory(jqx);\r\n $T.setError = key => {\r\n error(`JQx direct element creation error: [${key}] is not a valid tag`);\r\n return jqx.br();\r\n }\r\n return {\r\n log,\r\n warn,\r\n error,\r\n editCssRules,\r\n createStyle,\r\n editStylesheet: createStyle,\r\n editCssRule,\r\n escHtml,\r\n logger: systemLog,\r\n proxyWrapper,\r\n text(str, isComment = false) { return isComment ? jqx.comment(str) : document.createTextNode(str); },\r\n node(selector, root = document) { return root.querySelector(selector, root); },\r\n nodes(selector, root = document) { return [...root.querySelectorAll(selector, root)]; },\r\n clearAllTimers,\r\n get staticFn() { return function(name, method, isGetter) { return staticFN(name, method, isGetter); } },\r\n get toBool() { return convert2Bool; },\r\n get getNamedListener() { return getNamedListener; },\r\n get virtual() { return virtualFactory(jqx); },\r\n get allowTag() { return allowProhibit.allow; },\r\n get prohibitTag() { return allowProhibit.prohibit; },\r\n get removeCssRule() { return cssRemove; },\r\n get removeCssRules() { return cssRemove; },\r\n get delegate() { return delegateFactory(capturedHandling); },\r\n get delegateCaptured() { return capturedHandling; } ,\r\n get handle() { return capturedHandling; },\r\n get listen() { return handlerWrapper.listen; },\r\n get at() { return insertPositions; },\r\n get setStyle() { /*deprecated*/return editCssRule; },\r\n get fn() { return addFn; },\r\n get lenient() { return tagLib.allowUnknownHtmlTags; },\r\n get IS() { return IS; },\r\n get Popup() { return popupGetter(jqx); },\r\n get listenerStore() { return handlerWrapper.ListenerStore; },\r\n };\r\n}\r\n", "import { proxify, addJQxStaticMethods } from \"./JQxCreatorFactory.js\";\r\nimport {\r\n isHtmlString, isArrayOfHtmlStrings, isArrayOfHtmlElements,\r\n input2Collection, setCollectionFromCssSelector, IS, systemLog,\r\n insertPositions, inject2DOMTree, createElementFromHtmlString,\r\n getNodeContentForLog,\r\n} from \"./JQxUtilities.js\";\r\n\r\nexport default JQxMainFactory();\r\n\r\nfunction JQxMainFactory() {\r\n const logLineLength = 70;\r\n \r\n return addJQxStaticMethods(\r\n function(input, root, position = insertPositions.BeforeEnd) {\r\n if (input?.isJQx) { return input; }\r\n const isVirtual = IS(root, HTMLBRElement);\r\n root = (!isVirtual && root && root.isJQx ? root[0] : root) || document.body;\r\n position = position && Object.values(insertPositions).find(pos => position === pos) ? position : undefined;\r\n const isRawHtml = isHtmlString(input);\r\n const isRawHtmlArray = !isRawHtml && isArrayOfHtmlStrings(input);\r\n const shouldCreateElements = isRawHtmlArray || isRawHtml;\r\n \r\n let instance = {\r\n collection: input2Collection(input) ?? [],\r\n isVirtual,\r\n isJQx: true,\r\n };\r\n \r\n const isRawElemCollection = isArrayOfHtmlElements(instance.collection);\r\n \r\n switch(true) {\r\n case instance.collection.length && isRawElemCollection && !isVirtual:\r\n for (const el of instance.collection) {\r\n if (!root.contains(el)) {\r\n inject2DOMTree([el], root, position);\r\n }\r\n }\r\n break;\r\n case shouldCreateElements:\r\n for (const htmlStringOrComment of [input].flat()) {\r\n instance.collection.push(createElementFromHtmlString(htmlStringOrComment));\r\n }\r\n \r\n if (instance.collection.length > 0) {\r\n const errors = instance.collection.filter( el => el?.dataset?.jqxcreationerror );\r\n instance.collection = instance.collection.filter(el => !el?.dataset?.jqxcreationerror);\r\n const elemsCreated = instance.collection.map(el => `${String(el.constructor).split(/function|\\(/)[1].trim()}`);\r\n const multiple = elemsCreated.length > 1;\r\n instance = proxify(instance);\r\n const collectionLog = instance.collection.length > 0\r\n ? getNodeContentForLog(instance)\r\n : \"sanitized: no elements remaining\";\r\n \r\n systemLog.log(`JQx: created ${instance.isVirtual ? `(virtual)` : ``} instance from ` +\r\n `${multiple ? `array of ` : ``}HTML string${multiple ? `s` : ``} ${collectionLog}`);\r\n \r\n if (!instance.isVirtual) {\r\n inject2DOMTree(instance.collection, root, position);\r\n }\r\n }\r\n break;\r\n default: setCollectionFromCssSelector(input, root, instance);\r\n \r\n }\r\n \r\n return proxify(instance);\r\n })\r\n}\r\n", "/**\r\n This code is classfree object oriented. No this. No prototype. No class.\r\n Inspired by Douglas Crockford (see https://youtu.be/XFTOG895C7c?t=2562)\r\n*/\r\nimport JQx from \"./src/JQxConstructorFactory.js\";\r\nexport default JQx;\r\n", "var M=ke();function ke(){let[e,r,n,t]=[\"2-digit\",\"numeric\",\"long\",\"short\"],a={fixed:{MM:{month:n},M:{month:t},m:{month:r},mm:{month:e},yyyy:{year:r},yy:{year:e},WD:{weekday:n},wd:{weekday:t},d:{day:r},dd:{day:e},h:{hour:r},hh:{hour:e},mi:{minute:r},mmi:{minute:e},s:{second:r},ss:{second:e},ms:{fractionalSecondDigits:3},tz:{timeZoneName:\"shortOffset\"},dl:{locale:\"default\"},h12:{hour12:!1},yn:{yearName:\"\"},ry:{relatedYear:!0},msp:{fractionalSecond:!0}},dynamic:{tzn:l=>({timeZoneName:l.slice(4)}),hrc:l=>({hourCycle:`h${l.slice(4)}`}),ds:l=>({dateStyle:l.slice(3)}),ts:l=>({timeStyle:l.slice(3)}),tz:l=>({timeZone:l.slice(3)}),e:l=>({era:l.slice(2)}),l:l=>({locale:l.slice(2)})}},o={...a,retrieveDyn(l){let y=l?.slice(0,l.indexOf(\":\"));return a.dynamic[y]&&a.dynamic[y](l)},get re(){return new RegExp(`\\\\b(${Object.keys(a.fixed).join(\"|\")})\\\\b`,\"g\")}},s=(l=\"dtf\",y=0)=>{let h=` ${l.replace(/(?<=\\{)(.+?)(?=})/g,d=>`[${y++}]`).replace(/[{}]/g,\"\").trim()} `,D=l.match(/(?<=\\{)(.+?)(?=})/g)||[];return{get texts(){return D},formatString(d){h=d},set formatStr(d){h=d},get formatStr(){return h},get units(){return h.match(o.re)||[]},finalize(d=\"\",Z=\"\",b=\"\",$=\"\"){return h.replace(/~([\\d+]?)/g,\"$1\").replace(/dtf/,d).replace(/era/,b).replace(/dp\\b|~dp\\b/,Z).replace(/yn\\b/,$).replace(/\\[(\\d+?)]/g,(w,Fe)=>D[Fe].trim()).trim()}}},u=l=>l.replace(/\\s+/g,\"\"),c=(...l)=>l?.reduce((y,h)=>({...y,...o.retrieveDyn(h)||o.fixed[h]}),o.fixed.dl),i=(l,y,h)=>{let D=c(...u(h).split(\",\")),d=Intl.DateTimeFormat(D.locale,D).format(l);return y.finalize(d)},m=(l,y,h,D)=>l.toLocaleString(y,{timeZone:h,month:D?t:n}),T=(l,y,h)=>{let D=c(...y.units.concat(u(h).split(\",\")).flat()),d={...o.fixed},Z=($,w)=>D[$]===\"numeric\"&&w.startsWith(\"0\")?w.slice(1):w,b=Intl.DateTimeFormat(D.locale,D).formatToParts(l).reduce(($,w)=>w.type===\"literal\"&&/[ ,/-]/.test(w.value)?$:{...$,[w.type]:Z(w.type,w.value)},{});return d.ms=D.fractionalSecondDigits?d.msp:d.ms,d.yyyy=b.relatedYear?d.ry:d.yyyy,y.formatStr=y.formatStr.replace(o.re,$=>/^(M|MM)$/.test($)?m(l,D.locale,D.timeZone,/^M$/.test($)):b[Object.keys(d[$]).shift()]||$),y.finalize(void 0,b.dayPeriod,b.era,b.yearName)};return(l,y,h=\"l:default\")=>/ds:|ts:/.test(h)?i(l,s(void 0),h):T(l,s(y||void 0),h)}var le=Ce;function Ce(){let e=(t,a)=>{let o=isNaN(new Date(t)),s=isNaN(new Date(a));if(s){let[u,c,i]=Array(3).fill(\"end date not valid\");return{error:!0,message:u,full:c,clean:i}}if(o){let[u,c,i]=Array(3).fill(\"start date not valid\");return{error:!0,message:u,full:c,clean:i}}if(o&&!s){let[u,c,i]=Array(3).fill(\"start- and/or end date are not valid\");return{error:!0,message:u,full:c,clean:i}}return{error:!1}},r=n();return function({start:t,end:a,diffs:o={}}={}){let s=e(t,a),u=a>t?\"+\":\"-\";if(s.error)return s;let c=Math.abs(t-a),i=new Date(c),m=i.getUTCFullYear()-1970,T=i.getUTCMonth(),l=i.getUTCDate()-1,y=l%7,h=Math.floor(l/7),D=i.getUTCHours(),d=i.getUTCMinutes(),Z=i.getUTCSeconds(),b=i.getUTCMilliseconds(),$=Math.floor(c/864e5);o={...o,fromUTC:t,toUTC:a,sign:\"\",years:m,months:T,days:l,hours:D,minutes:d,seconds:Z,milliseconds:b,diffInDays:$},o.full=r({values:o,full:!0}),o.clean=r({values:o}),o.equalDates=o.clean===\"Dates are equal\";let w=D+d+Z>0?\"T\":\"\";return o.clean!==\"Dates are equal\"&&(o.sign=u,o.jsPeriod=`${u}P${m>0?`${m}Y`:\"\"}${T>0?`${T}M`:\"\"}${h>0?`${h}W`:\"\"}${y>0?`${y}D`:\"\"}${w}${D>0?`${D}H`:\"\"}${d>0?`${d}M`:\"\"}${Z>0?`${Z}S`:\"\"}`,o.ISOPeriod=`P${m>0?`${m}Y`:\"\"}${T>0?`${T}M`:\"\"}${l>0?`${l}D`:\"\"}${w}${D>0?`${D}H`:\"\"}${d>0?`${d}M`:\"\"}${Z>0?`${Z}S`:\"\"}`),o};function n(){let t=(...i)=>m=>i.reduce((T,l)=>l(T),m),a=(i,m)=>i===1?m.slice(0,-1):m;return t(({values:i,full:m})=>[Object.entries(i).filter(([T])=>/^(years|month|days|hours|minutes|seconds)/i.test(T)),m],([i,m])=>m?i:i.filter(([,T])=>m?+T:T>0),i=>i.reduce((m,[T,l])=>[...m,`${l} ${a(l,T)}`],[]),i=>i.length<1?\"Dates are equal\":`${i.slice(0,-1).join(\", \")}${i.length>1?\" and \":\"\"}${i.slice(-1).shift()}`)}}var ie=Ae;function Ae(){let e=Object.entries({year:\"FullYear\",month:\"Month\",date:\"Date\",day:\"Date\",hour:\"Hours\",minute:\"Minutes\",second:\"Seconds\",millisecond:\"Milliseconds\"}).reduce((t,[a,o])=>({...t,[a]:o,[`${a}s`]:o}),{}),r=!1,n=function(...t){let a=t.length===1;return r=t[0].trim().startsWith(\"subtract,\"),r&&(t=a?t[0].trim().replace(/^subtract,/i,\"\").split(\",\").map(o=>o.trim()):t.filter(o=>!o.startsWith(\"subtract\"))),a&&!r&&(t=t[0].split(\",\").map(o=>o.trim())),t.map(function(o){if(!o)return!1;let s=o.toLowerCase().split(/ {1,}/);return s.length<2?!1:s.map(u=>{u=`${u}`.trim().replace(/[^a-z0-9-+]/g,\"\");let c=parseInt(u,10);return Number.isNaN(c)?u:r?-c:+c})}).filter(o=>o)};return function(t,...a){if(a.length<1)return t;let o=n(...a);return o.length&&o.forEach(([s,u])=>{u=u,u=e[u],s&&u&&t[`set${u}`](t[`get${u}`]()+s)}),t}}var ge=le(),ye=Ye(),N=ie(),We=[\"sun\",\"mon\",\"tue\",\"wed\",\"thu\",\"fri\",\"sat\"],he=[\"sunday\",\"monday\",\"tuesday\",\"wednesday\",\"thursday\",\"friday\",\"saturday\"];function q(e,r=!1){let n=e.month+1,t=e.month;if(e.month+=r?-1:1,!r&&e.month>=n)for(;e.month>n;)e.dateNr-=1;if(r&&e.month===t)for(;e.month>=t;)e.dateNr-=1;return e}function H(e,...r){return N(e,...r),e}function De(e,r=!1){let n=Q(e.clone,{sunday:r}),t=[n];return{weekStart:n.format(\"WD\",\"l:en-GB\"),inputDate:e,dates:t.concat([...Array(6)].map((a,o)=>n.clone.addDays(o+1)))}}function W(e,{start:r,end:n,future:t,past:a,include:o={start:!1,end:!1}}={}){let s=e.clone.UTC;return r=r?.value||r?.constructor===Date?f(r?.value||r).UTC:f.now.UTC,n=n&&n?.value||n?.constructor===Date?f(n?.value||n).UTC:f.now.UTC,s.milliseconds=0,r.milliseconds=0,n.milliseconds=0,t?r>n:a?r<n:(o.start?+s>=+r:+s>+r)&&(o.end?+s<=+n:+s<+n)}function _(e,{zoneTime:r=!1,formatStr:n,moreOptions:t}={}){return t=r?e.localeInfo.formatOptions+(t?`,${t}`:\"\"):g.formatOptions+(t?`,${t}`:\"\"),r?(e.localeInfo||(e.localeInfo=g),M(e,n,t)):Ue(e,n,t)}function Ue(e,r,n){let t=e.clone.relocate(g);return n=(n||\"\").startsWith(\"+\")?`${t.localeInfo.formatOptions},${n.slice(1)}`:n||t.localeInfo.formatOptions,M(t,r,n)}function Te(e,r){let n=ge({start:e,end:r||e});return parseInt(`${n.sign}${n.diffInDays}`)}function G(e,r=!1){let{locale:n,timeZone:t}=r?e.localeInfo:g,a=se(n,t),o=e.format(\"MM|WD\",a).split(\"|\");return{locale:n,timeZone:t,monthName:o[0],dayName:o[1],dayNames:ae(n),monthNames:Y(n)}}function B(e,r=!1){let[n,t,a,o]=U(e,r),u={values4Timezone:r?g.timeZone:e.timeZone,hours:n,minutes:t,seconds:a,milliseconds:o};return Object.freeze(u)}function U(e,r=!1){let t=`l:en-CA,${r?`tz:${g.timeZone}`:`tz:${e.timeZone}`},hrc:23,ts:medium`;return e.format(\"\",t).split(/:/).map(Number).concat(e.getMilliseconds())}function J(e,r){let n=r?`tz:${g.timeZone}`:`,tz:${e.timeZone}`,[t,a,o]=e.format(\"yyyy-mm-dd\",n).split(/-/).map(Number);a-=1;let s=r?g.timeZone:e.timeZone;return Object.freeze({values4Timezone:s,year:t,month:a,date:o})}function K(e,r=!0){if(r)return[e.getFullYear(),e.getMonth(),e.getDate()];let n=e.format(\"yyyy-m-d\",e.localeInfo.formatOptions).split(/-/).map(Number);return n[1]-=1,n}function Le(e){let r=new Intl.Locale(e.locale),n=r.weekInfo?r.weekInfo.firstDay:r.getWeekInfo?r.getWeekInfo().firstDay:1;return n=n===7?0:n,he[n]}function Q(e,{sunday:r=!1}={}){let n=r?\"sunday\":Le(e);return x(e,{day:n,preserveTodayWhenEqual:!0})}function xe(e,r){let n=e.toString().match(/GMT([+-])\\d+/)?.[0]?.slice(3)??\"+0000\",t=r.toString().match(/GMT([+-])\\d+/)?.[0]?.slice(3)??\"+0000\";return n=A(n.slice(0,3)+\":\"+n.slice(-2),!0),t=A(t.slice(0,3)+\":\"+t.slice(-2),!0),[-n[0]+t[0],-n[1]+t[1]].map(a=>n[0]<0?-a:a)}function R({start:e,end:r}={}){r||(r=e.clone),r?.clone||(r=f(r,{timeZone:e.timeZone})),e=f(fe(e,e.timeZone),{timeZone:e.timeZone}),r=f(fe(r,r.timeZone),{timeZone:r.timeZone});let n=ge({start:e,end:r,diffs:{timeZoneStart:e.timeZone,timeZoneEnd:r.timeZone}}),t=xe(r,e),a=n.sign.startsWith(\"-\")?\"ahead of\":\"behind\",[o,s]=t.map(i=>Math.abs(i)),[u,c]=[`${o} ${C(o,\"hour\")}`,`${s} ${C(s,\"minute\")}`];return n.timeZonesOffsetDifference=n.sign.length<1||o+s===0?`Offsets of ${e.timeZone} and ${r.timeZone} are equal`:`${e.timeZone} is ${u}${s>0?` and ${c}`:\"\"} ${a} ${r.timeZone}`,n}function X(e,r){r=String(r).toLowerCase()===\"utc\"||r.timeZone===\"UTC\"?e.clone.relocate({timeZone:\"UTC\"}):f(e.value,{timeZone:r.timeZone||g.timeZone});let t=R({start:e.clone,end:r}),o=`${t.sign}${ce(t.hours)}:${ce(t.minutes)}`;return{fromTZ:e.timeZone,toTZ:r.timeZone,offset:o,offsetText:`${r.timeZone} ${je(o)} ${e.timeZone}`}}function ce(e,r=2){return`${e}`.padStart(r,\"0\")}function C(e,r){return`${r}${e>1||e===0?\"s\":\"\"}`}function je(e){if(/00:00/.test(e))return\"no time diffence to\";let r=e.slice(1).split(\":\").map(Number),[n,t]=r,a=C(n,\"hour\"),o=C(t,\"minute\"),s=e.startsWith(\"+\");return t>0?`${n} ${a} and ${t} ${o} ${s?\"ahead of\":\"behind\"}`:`${n} ${a} ${s?\"ahead of\":\"behind\"}`}function me(e,r,n){return e.clone.format(r,n||e.localeInfo.formatOptions)}function pe(e,{withFormat:r,withFormatOptions:n,local:t=!1}={}){if(r)return t?me(e,r,$D.localeInformation.formatOptions):me(e,r,n);let a=e.clone.relocate({locale:\"en\"}),o=t?g.formatOptions:a.localeInfo.formatOptions,u=`wd M dd yyyy hh:mmi:ss ${a.format(\"tz\",o+\",tzn:longOffset\").replace(\":\",\"\")} (tz)`;return a.format(u,o+\",tzn:long, hrc:23\")}function ee(e,r=!1){let n=Intl.DateTimeFormat(\"en\",{timeZone:r?e.timeZone:g.timeZone,weekday:\"short\"});return ye(n.format(e))}function $e(e){let r=g,n=e.localeInfo,t=e.clone.relocate({locale:r.locale,timeZone:r.timeZone}),a=e.offsetFrom(t),o=t.offsetFrom(e),s=r,u=n,c=e.format(\"hh:mmi:ss dp\",`hrc:12,tz:${e.timeZone}`),i=t.format(\"hh:mmi:ss dp\",`hrc:12,tz:${t.timeZone}`),m={note:\"'user' are values for your locale/timeZone, 'remote' (if applicable) idem for the instance\",locales:{user:{locale:s.locale,timeZone:s.timeZone}},dateTime:{user:{...e.dateTime,monthName:t.monthName,weekdayNr:t.day,weekdayName:t.dayName,dayPeriodTime:i,hasDST:t.hasDST,DSTActive:t.DSTActive,offsetFromRemote:a.offset,string:t.toString()}},offset:{fromUTC:e.UTC.offsetFrom(e).offsetText}};return n.timeZone!==r.timeZone&&(m.locales.remote={locale:u.locale,timeZone:u.timeZone},m.dateTime.remote={...e.zoneDateTime,monthName:e.zoneNames.monthName,weekdayNr:ee(e,!0),weekdayName:e.zoneNames.dayName,dayPeriodTime:c,hasDST:e.hasDST,DSTActive:e.DSTActive,offsetFromUser:o.offset,string:e.toString()},m.offset.fromUserTime=o.offsetText),m}function O(e,r=!0){if(r)return[e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()];let n=e.format(\"yyyy-m-d-hh-mmi-ss\",`${e.localeInfo.formatOptions},hrc23:true`).split(/-/).map(Number).concat(e.getMilliseconds());return n[1]-=1,n}function te(e){return new Date(e.year,e.month+1,0,0,0,0).getDate()}function L(e,r){r=p({locale:r||e.localeInfo.locale}).locale;let n=e.clone.relocate({locale:r});return n.date={date:1},[n].concat([...Array(te(n)-1)].map((t,a)=>n.clone.add(`${a+1} days`)))}function x(e,{day:r,next:n=!1,preserveTodayWhenEqual:t=!1}={}){r=r?.toLowerCase()||\"-\";let a=ye(r);if(a<0)return console.error(`[TickTock instance].next/previous invalid day value ${r}`),e.clone;let o=n?1:-1,s=f(new Date(...e.dateTimeValues),e.localeInfo);return t&&a===s.day?s:Pe(s.addDays(n?1:-1),a,o)}function Pe(e,r,n){function t(a){switch(!0){case a.day===r:return a;default:return t(a.add(`${n} days`))}}return t(e)}function F(e,{dateOnly:r=!1,timeOnly:n=!1}={}){let{locale:t,timeZone:a}=e.localeInfo;return r?new Date(e).toLocaleDateString(t,{timeZone:a}):n?new Date(e).toLocaleTimeString(t,{timeZone:a}):new Date(e).toLocaleString(t,{timeZone:a})}function fe(e,r){let n={timeZone:r,hourCycle:\"h23\"};return new Date(new Date(e).toLocaleString(\"en\",n))}function v(e,{year:r,month:n,date:t}={}){return S(r)&&e.setFullYear(parseInt(r)),S(t)&&e.setDate(parseInt(t)),S(n)&&e.setMonth(parseInt(n)),e}function I(e,{hours:r,minutes:n,seconds:t,milliseconds:a}={}){return S(r)&&e.setHours(parseInt(r)),S(n)&&e.setMinutes(parseInt(n)),S(t)&&e.setSeconds(parseInt(t)),S(a)&&e.setMilliseconds(parseInt(a)),e}function we(e){return e?.constructor===Date||e?.value}function re(e,r){return we(r)?f(r?.value||r,e.localeInfo):f.from(...e.dateTimeValues).relocate(e.localeInfo)}function Ye(){return function(e){e=`${e}`.toLowerCase();let r=We.indexOf(e);return r<0?he.indexOf(e):r}}function A(e){let r=e.slice(1).split(/[-:]/).map(Number),n=e.startsWith(\"-\");return r=r.map(t=>n?-t:t),r}function Se(e){return e.time={hours:0,minutes:0,seconds:0,milliseconds:0},e}function de(e,r){return Intl.DateTimeFormat(\"en-CA\",{timeZone:r,timeZoneName:\"long\"}).format(e).split(/,/)[1].trim()}function j(e,r){r=r||e?.timeZone||g.timeZone,e=e?.value?e:e?.constructor===Date?f(e,{timeZone:r}):f({timeZone:r});let n=e.year||e.getFullYear(),t=de(new Date(n,0,1),r),a=de(new Date(n,5,1),r);return t!==a}function P(e,r){return r=r||e?.timeZone||g.timeZone,e=e?.hasDST?e:e?.constructor===Date?f(e,{timeZone:r}):f({timeZone:r}),e.hasDST?!/standard/i.test(e.toString()):!1}function Ze(e,{locale:r,timeZone:n,l:t,tz:a}={}){return e.localeInfo=p({locale:t||r||e.l||e.locale,timeZone:a||n||e.tz||e.timeZone}),e}function be(e,r){return we(r)&&(e=f(r.value||r,r.localeInfo||e.localeInfo)),e}function k(e,r){let n=oe(new Date(e,11,r||31));return n===1?k(e,(r||31)-1):n}function ne(e,r){let n=e.month;switch(!0){case n<3:return r?1:\"First\";case n<6:return r?2:\"Second\";case n<9:return r?3:\"Third\";case n<12:return r?4:\"Fourth\";default:return\"unknown\"}}function oe(e){let r=new Date(e),n=(r.getDay()+6)%7;r.setDate(r.getDate()-n+3);let t=r.valueOf();return r.setMonth(0,1),r.getDay()!==4&&r.setMonth(0,1+(4-r.getDay()+7)%7),1+Math.ceil((t-r)/6048e5)}var E=Ee;function Ee({localeInfo:e,customMethods:r,dateValue:n}={}){let t,a={add(...o){return H(t,...o)},between({start:o,end:s,include:u}={}){return W(t,{start:o,end:s,include:u})},cloneWith(o){return re(t,o)},daysUntil(o){return Te(t,o)},differenceTo(o){return R({start:t,end:o})},differenceUntil(o){return t.differenceTo(o).clean},firstWeekday({sunday:o=!1,midnight:s=!1}={}){return Q(t,{sunday:o,midnight:s})},format(o,s){return _(t,{formatStr:o,moreOptions:s})},fullMonth(o){return L(t,o)},fullWeek(o=!1){return De(t,!!o)},isFuture(o){return W(t,{start:t,end:o,future:!0})},isPast(o){return W(t,{start:t,end:o,past:!0})},next(o,s){return x(t,{day:o,next:!0,preserveTodayWhenEqual:!!s})},offsetFrom(o){return X(t,o)},previous(o,s){return x(t,{day:o,next:!1,preserveTodayWhenEqual:!!s})},relocate({locale:o,timeZone:s,l:u,tz:c}={}){return Ze(t,{locale:o,timeZone:s,l:u,tz:c})},revalue(o){return t=be(t,o),t},setDateValues({year:o,month:s,date:u}={}){return v(t,{year:o,month:s,date:u})},setTimeValues({hours:o,minutes:s,seconds:u,milliseconds:c}={}){return I(t,{hours:o,minutes:s,seconds:u,milliseconds:c})},subtract(...o){return H(t,\"subtract,\"+o.join(\",\"))},toArray(o=!1){return O(t,o)},toString({template:o,formatOptions:s,local:u}={}){return pe(t,{withFormat:o,withFormatOptions:s,local:u})},values(o=!1){return o?t.dateTime:t.zoneDateTime},zoneFormat(o,s){return _(t,{zoneTime:!0,formatStr:o,moreOptions:s})},set date({year:o,month:s,date:u}){v(t,{year:o,month:s,date:u})},set dateNr(o){v(t,{date:o})},set hours(o){I(t,{hours:o})},set localeInfo({locale:o,timeZone:s,l:u,tz:c}){e=z({locale:o,timeZone:s,l:u,tz:c})},set milliseconds(o){I(t,{milliseconds:`${o}`})},set minutes(o){I(t,{minutes:o})},set month(o){v(t,{month:o})},set seconds(o){I(t,{seconds:o})},set time({hours:o,minutes:s,seconds:u,milliseconds:c}){I(t,{hours:o,minutes:s,seconds:u,milliseconds:c})},set year(o){v(t,{year:o})},get age(){return t.differenceTo(new Date).years},get ageFull(){return t.differenceTo(new Date).clean},get clone(){return re(t)},get date(){return J(t,!0)},get dateNr(){return t.date.date},get dateTime(){return{...t.date,...t.time}},get dateTimeValues(){return O(t,!0)},get dateValues(){return K(t,!0)},get day(){return t.getDay()},get dayName(){return t.names.dayName},get daysThisMonth(){return te(t)},get DSTActive(){return P(t)},get hasDST(){return j(t)},get hours(){return t.time.hours},get info(){return $e(t)},get isLeapYear(){return new Date(t.getFullYear(),2,0).getDate()===29},get ISO(){return t.toISOString()},get local(){return F(t)},get localDate(){return F(t,{dateOnly:!0})},get locale(){return(e||z()).locale},get localeInfo(){return e},get localeString(){return F(t)},get localTime(){return F(t,{timeOnly:!0})},get milliseconds(){return t.getMilliseconds()},get minutes(){return t.time.minutes},get month(){return t.date.month},get monthName(){return t.names.monthName},get names(){return G(t)},get quarter(){return ne(t)},get quarterNr(){return ne(t,!0)},get removeTime(){return Se(t)},get seconds(){return t.time.seconds},get time(){return B(t,!0)},get timeValues(){return U(t,!0)},get timeZone(){return(e||z()).timeZone},get unixEpochTimestamp(){return Math.floor(+t/1e3)},get userLocaleInfo(){return g},get UTC(){return t.clone.relocate({locale:t.locale,timeZone:\"UTC\"})},get UTCOffset(){return X(t,\"UTC\")},get value(){return new Date(t)},get weeknr(){return oe(t)},get weeksInYear(){return k(t.year,31)},get year(){return t.date.year},get zoneDate(){return J(t,!1)},get zoneDateNr(){return t.zoneDate.date},get zoneDateTime(){return{...t.zoneDate,...t.zoneTime}},get zoneDateTimeValues(){return O(t,!1)},get zoneDateValues(){return K(t,!1)},get zoneDay(){return ee(t,!0)},get zoneDayname(){return t.zoneNames.dayName},get zoneHours(){return t.zoneTime.hours},get zoneMinutes(){return t.zoneTime.minutes},get zoneMonth(){return t.zoneDate.month},get zoneMonthname(){return t.zoneNames.monthName},get zoneNames(){return G(t,!0)},get zoneSeconds(){return t.zoneTime.seconds},get zoneTime(){return B(t)},get zoneTimeValues(){return U(t)},get zoneYear(){return t.zoneDate.year},get zoneValues(){return t.zoneDateTime},get zoneArray(){return O(t,!1)}};return!e&&!n?a:(a.localeInfo=e||z(),t=new Proxy(n,Ve(a)),Object.entries(Object.getOwnPropertyDescriptors(ue(t,r))).forEach(([o,s])=>Object.defineProperty(a,o,s)),Object.freeze(t))}function Ve(e){return{get(r,n){return n!==\"toString\"&&n in r?r[n].bind(r):Reflect.get(e,n)},set(r,n,t){return n in e&&Reflect.set(e,n,t)}}}var g=Me(Intl.DateTimeFormat().resolvedOptions()),qe=Object.getOwnPropertyNames(Date.prototype).filter(e=>e.startsWith(\"set\")).reduce((e,r)=>[...e,{native:r,syn:\"change\"+r.slice(3)}],[]);function ae(e=\"en-GB\"){return e=p({locale:e}).locale,{long:[...Array(7).keys()].map(r=>new Date(Date.UTC(1970,0,4+r)).toLocaleDateString(e,{timeZone:\"Etc/UTC\",weekday:\"long\"})),short:[...Array(7).keys()].map(r=>new Date(Date.UTC(1970,0,4+r)).toLocaleDateString(e,{timeZone:\"Etc/UTC\",weekday:\"short\"}))}}function Y(e=\"en\"){return e=p({locale:e}).locale,{long:[...Array(12).keys()].map(r=>new Date(Date.UTC(1970,r,1)).toLocaleDateString(e,{timeZone:\"Etc/UTC\",month:\"long\"})),short:[...Array(12).keys()].map(r=>new Date(Date.UTC(1970,r,1)).toLocaleDateString(e,{timeZone:\"Etc/UTC\",month:\"short\"}))}}function He({year:e,locale:r}={}){e=S(e)?parseInt(e):new Date().getFullYear();let n={year:e,calendar:{}},t=Y().long.map(a=>a.toLowerCase());for(let a=0;a<12;a+=1){let o=f.from(e,a,1);n.calendar[t[a]]=L(o,r)}return n}function _e({year:e,monthNr:r,locale:n=\"en-CA\"}={}){e=S(r)&&parseInt(e)||-1,r=S(r)&&parseInt(r)||new Date().getFullYear();let t=r>=1&&r<=12;return n=p({locale:n}).locale,r=t?r-1:void 0,t?f.from(e,r,1).relocate({locale:n}).fullMonth(n):\"MonthNr should be a specific number (1 = january - 12 = december)\"}function Me(e){let r=se(e.locale,e.timeZone),n=new Intl.Locale(e.locale);return e.weekInfo=n.getWeekInfo?n.getWeekInfo():null,Object.defineProperty(e,\"formatOptions\",{value:r,enumerable:!1})}function se(e,r){return[`${e&&!(Array.isArray(e)&&e.length<1)?`l:${e}`:\"\"}`,`${r?`tz:${r}`:\"\"}`].filter(n=>n).join(\",\")}function p({locale:e,timeZone:r,l:n,tz:t}={}){return r=r||t,e=e||n,e=Ie({trial:function(){return Intl.DateTimeFormat(e,{timeZone:g.timeZone}).resolvedOptions().locale},onError:function(){return console.warn(`Intl locale \"${e}\" best fit impossible, using \"${g.locale}\"`),g.locale}}),r=Ie({trial:function(){return Intl.DateTimeFormat(e,{timeZone:r}).resolvedOptions().timeZone},onError:function(){return console.warn(`timeZone \"${r}\" not valid. Using \"${g.timeZone}\"`),g.timeZone}}),Me(Intl.DateTimeFormat(e,{timeZone:r}).resolvedOptions())}function z({locale:e,timeZone:r,l:n,tz:t}={}){return p({locale:e,timeZone:r,l:n,tz:t},!0)}function Ne(e){return!Number.isNaN(+e)&&e?.constructor===Date?e:new Date}function ve(e){let r=new Date;switch(!0){case(typeof e==\"string\"||typeof e==\"number\"):return Ne(new Date(e));case(Array.isArray(e)&&e.map(Number).length===e.length):return e.length===1?new Date(e[0],0,1):new Date(...e);case e?.constructor===Date:return Ne(e);default:return r}}function Ie({trial:e,onError:r=()=>{}}={}){if(e?.constructor===Function)try{return e()}catch(n){return r?.constructor===Function?r(n):void 0}}function Ge({timeZoneDate:e,timeZoneID:r,userTimeZoneID:n}={}){let t={timeZone:p({timeZone:r}).timeZone},a={timeZone:p({timeZone:n||\"\"}).timeZone},o=f(e,t),s=f(e,a),u=s.differenceTo(o),c=o.offsetFrom(s).offset,[i,m]=A(c,!0),T=s.clone.add(`${i} hours, ${m} minutes`),y=u.equalDates?\"No difference\":`Time offset ${c}: ${a.timeZone} is ${u.clean} ${i<0?\"behind\":\"ahead of\"} ${t.timeZone}`;return{remoteTimezone:t.timeZone,userTimezone:a.timeZone,timeDifference:y,result:{[t.timeZone.replace(/\\//,\"_\")]:f(e).toString({template:\"yyyy/mm/dd hh:mmi:ss\",formatOptions:\"hrc:23\"}),[a.timeZone.replace(/\\//,\"_\")]:T.toString({template:\"yyyy/mm/dd hh:mmi:ss\",formatOptions:\"hrc:23\"})}}}function S(e){return!Number.isNaN(parseInt(e))}function V(e,r,n){return e?.constructor===Number?N(r,`${e} ${n}`):r}function Be(e){let r={addYears(n=1){return V(n,e,\"years\")},addMonths(n=1){return V(n,e,\"months\")},addWeeks(n=1){return n=n?.constructor===Number?n*7:1,V(n,e,\"days\")},addDays(n=1){return V(n,e,\"days\")},get nextYear(){return N(e,\"1 year\")},get nextWeek(){return N(e,\"7 days\")},get previousWeek(){return N(e,\"-7 days\")},get previousYear(){return N(e,\"-1 year\")},get nextMonth(){return q(e)},get previousMonth(){return q(e,!0)},get tomorrow(){return N(e,\"1 day\")},get yesterday(){return N(e,\"-1 day\")}};for(let n of qe)r[n.syn]=function(...t){return e[n.native](...t),e};return r}function ue(e,r){let n=Be(e);for(let[t,a]of Object.entries(r||{})){let o=a.enumerable,s=a.isGetter?{get(){return a.method(e)},enumerable:o}:{value(...u){return a.method(e,...u)},enumerable:o};Object.defineProperty(n,t,s)}return n}function ze(e,r){return Object.defineProperties(e,{now:{get(){return e(new Date)}},localeInformation:{get(){return p()}},localWeekdaynames:{value(n){return ae(n)}},localMonthnames:{value(n){return Y(n)}},daysInMonth:{value(n,t=!1){return n=S(n)?parseInt(n):0,n>=1&&n<=12?new Date(t?2e3:2005,n,0).getDate():`${n} should be a Number between (1 (january) - 12 (december))`}},yearCalendar:{value:He},monthCalendar:{value:_e},from:{value(...n){return e(n)}},fromUxTS:{value(n,t){n=S(n)?parseInt(n)*1e3:void 0;let a=n?new Date(n):new Date;return f(a,t||g)}},hasDST:{value({date:n,timeZone:t}={}){return j(n,t)}},DSTActive:{value({date:n,timeZone:t}={}){return P(n,t)}},values:{value({date:n,timeZone:t}={}){n=n||n?.value||new Date;let a=M(n,\"yyyy-m-d-h-mi-s\",p({timeZone:t}).formatOptions.concat(\",hrc:23\")).split(\"-\").map(Number).concat(n.getMilliseconds());return a[1]-=1,a}},format:{value({date:n,template:t,timeZone:a,locale:o,opts:s}={}){n=n||n?.value||new Date,t=t?.constructor===String?t:\"yyyy/mm/dd hh:mmi:ss dp\";let u=p({timeZone:a,locale:o}).formatOptions;return u+=s?`,${s}`:\"\",M(n,t,u)}},addCustom:{value({name:n,method:t,enumerable:a=!1,isGetter:o=!1}={}){n?.constructor===String&&t?.constructor===Function&&t.length>0&&(r[n]={method:t,enumerable:a,isGetter:o})}},validateLocaleInformation:{value:p},timeAcrossZones:{value:Ge},weeksInYear:{value(n){return k(n,31)}},keys:{get(){let n=Object.fromEntries(Object.entries(r).filter(([a,o])=>o.enumerable===!0));return[...Object.keys(E()),...Object.keys(ue()),...Object.keys(n)].sort((a,o)=>a.localeCompare(o))}}}),e}var Oe={},f=ze(Je,Oe);function Je(e,r){if(e?.localeInfo)return e.clone;let n=e?.locale||e?.timeZone||e?.tz||e?.l;return E({localeInfo:p(n?e:r),dateValue:new Date(n?Date.now():ve(e)),customMethods:Oe})}export{f as default};\n", "export default Object.defineProperties(instanceCreator, {escape: {value: escape4RE, enumerable: true}});\r\n\r\nfunction instanceCreator(regExStr, ...args) {\r\n const {flags, cleanedArgs} = maybeFlags(...args);\r\n return createInstance(\r\n new RegExp(cleanup(createRegExpStringFromInput(regExStr, ...cleanedArgs)), flags)\r\n );\r\n}\r\n\r\nfunction createRegExpStringFromInput(regExStr, ...cleanedArgs) {\r\n return !hasLength(cleanedArgs) ? regExStr.raw.join(``) :\r\n regExStr.raw.reduce((a, v, i) => a.concat(cleanedArgs[i - 1] || ``).concat(v), ``);\r\n}\r\n\r\nfunction maybeFlags(...args) {\r\n const flags = cleanupFlags(getFlags(args.at(-1)));\r\n return { flags, cleanedArgs: hasLength(flags) ? args.slice(0, -1) : args };\r\n}\r\n\r\nfunction getFlags(maybeFlags) { return isOfType(maybeFlags, Array) ? maybeFlags.join(``) : ``; }\r\n\r\nfunction createInstance(regExp) {\r\n const instance = new Proxy( Object.defineProperties({}, {\r\n re: { get() { return regExp; }, enumerable: false },\r\n toString: {value: () => regExp.toString(), enumerable: false},\r\n valueOf: {value: () => regExp, enumerable: false},\r\n flags: { value(flags) { regExp = modifyFlags(flags, regExp); return instance; }, enumerable: false },\r\n clone: { get() { return clone(instance); }, enumerable: false },\r\n }), getterTrap(regExp) );\r\n \r\n return instance;\r\n}\r\n\r\nfunction hasLength(variable) { return variable?.length > 0; }\r\n\r\nfunction isOfType(any, CTOR) { return any?.constructor === CTOR; }\r\n\r\nfunction maybeProp(target, key, regExp) {\r\n const fromRegExp = Reflect.get(regExp, key);\r\n return {\r\n fromInstance: Reflect.get(target, key),\r\n fromRegExpMethod: isOfType(fromRegExp, Function) ? fromRegExp.bind(target.re) : target.re[key]\r\n }\r\n}\r\n\r\nfunction getterTrap(regExp) {\r\n return {\r\n get(target, key) {\r\n const {fromInstance, fromRegExpMethod} = maybeProp(target, key, regExp);\r\n switch (true) {\r\n case !!fromInstance: return fromInstance;\r\n default: return fromRegExpMethod;\r\n }\r\n },\r\n };\r\n}\r\n\r\nfunction clone(instance) {\r\n const source = instance.re.source;\r\n const flags = hasLength(instance.re.flags) ? [...instance.re.flags] : [];\r\n return instanceCreator`${source} ${flags}`;\r\n}\r\n\r\nfunction cleanupFlags(flags, currentFlags) {\r\n currentFlags = (currentFlags ?? ``).replace(/^-r\\|/, ``);\r\n flags = currentFlags.concat(isOfType(flags, String) && hasLength(flags) ? flags : ``);\r\n return [...new Set([...flags])].join(``).replace(/[^dgimsuvy]/g, ``);\r\n}\r\n\r\nfunction modifyFlags(flags, regExp) {\r\n switch (true) {\r\n case !isOfType(flags, String) || !hasLength(flags): return regExp;\r\n case flags === `-r`: return regExp = new RegExp(regExp.source);\r\n case flags.startsWith(`-r|`): return regExp = new RegExp(regExp.source, cleanupFlags(flags));\r\n default: return regExp = new RegExp(regExp.source, cleanupFlags(regExp.flags, flags));\r\n }\r\n}\r\n\r\nfunction escape4RE(string2Escape) {\r\n switch (true) {\r\n case string2Escape?.constructor !== String || !hasLength(string2Escape): return ``;\r\n case !!RegExp.escape: return RegExp.escape(string2Escape);\r\n default: return (`\\\\x${string2Escape.at(0)}` +\r\n string2Escape.slice(1).replace(/\\p{S}|\\p{P}/gu, a => `\\\\${a}`))\r\n .replace(/ |\\\\x /g, `\\\\x20`); }\r\n}\r\n\r\nfunction cleanup(str) {\r\n return str\r\n .replace(/\\/\\*(?:[^*]|\\*+[^*\\/])*\\*+\\/|(?<!:|\\\\\\|')\\/\\/.*/gm, ``)\r\n .replace(/\\s/g, ``)\r\n .trim().replace(/<!([^>]\\d+)>/g, (a, b) => String.fromCharCode(+b) ?? a);\r\n}\r\n", "var O=f(),h=f({defaultReplacer:\"\"});function f(i={}){let{defaultReplacer:n,useSymbolicExtensions:a}=i;return n=l(n)?String(n):void 0,typeof a==\"boolean\"&&a&&v(),function(e,...t){return j(e,m(t))};function p(e,t){return t&&typeof n==\"string\"?String(n):`{${e}}`}function s(e,t){let r=Object.hasOwn(t,e);return r&&l(t[e])?String(t[e]):p(e,r)}function y(e){return(...t)=>{let r=t.find(o=>o.key);return s(r?r.key:\"_\",e)}}function b(e,t){return e.replace(/\\{(?<key>[a-z_\\d]+)}/gim,y(t))}function d(e){let t=[];return Object.entries(e).forEach(([r,o])=>{o.forEach((c,u)=>(t[u]??={},t[u][r]=c))}),t}function g(e){return e.length===1&&Object.values(e[0]).every(Array.isArray)}function m(e){return g(e)?d(e[0]):e}function l(e){return typeof e==\"string\"||typeof e==\"number\"}function S(e){return Object.prototype.toString.call(e)===\"[object Object]\"}function j(e,t){let r=t?.length?t.filter(o=>S(o)).map((o,c)=>b(e,{...o,index:c+1})).join(\"\"):e;return typeof n!=\"string\"?r:r.replace(/\\{.+\\}/gmi,n??\"\")}}function v(){return String.prototype[Symbol.for(\"interpolate\")]||Object.defineProperties(String.prototype,{[Symbol.for(\"interpolate\")]:{value(...i){return O(this,...i)}},[Symbol.for(\"interpolate$\")]:{value(...i){return h(this,...i)}}}),[Symbol.for(\"interpolate\"),Symbol.for(\"interpolate$\")]}export{v as addSymbolicStringExtensions,O as default,h as interpolateClear,f as interpolateFactory};\n", "import $ from \"./Resource/Externals/jqx.min.js\";\r\nimport $D from \"./Resource/Externals/ticktock.min.js\";\r\nimport regexhelper from \"./Resource/Externals/REHelper.js\";\r\n\r\nimport {\r\n default as interpolate,\r\n interpolateClear,\r\n addSymbolicStringExtensions } from \"./Resource/Externals/splat.min.js\";\r\nsetDefaultStyling();\r\nfixSBLinks2TopProblem();\r\nconst splatModule = {interpolate, interpolateClear, addSymbolicStringExtensions};\r\nexport { $, logFactory, regexhelper, $D, splatModule };\r\n\r\nfunction fixSBLinks2TopProblem() {\r\n // fix for stackblitz rewriting hrefs with target _top (see README)\r\n /stackblitz/i.test(location.href) &&\r\n console.info(`\u2714 Stackblitz rewrites links to _top. The 'stackblitzhelpers' module fixed it.`);\r\n document.addEventListener(`click`, evt => {\r\n if (evt.target.href) {\r\n const ref = evt.target;\r\n if (ref.dataset.top || ref.classList.contains(`internalLink`) || ref.target === `_top`) {\r\n return top.location.href = ref.href;\r\n }\r\n }\r\n return true;\r\n });\r\n}\r\n\r\nfunction logFactory(formatJSON = true) {\r\n const logContainer = $(`<ul id=\"log2screen\">`).first();\r\n \r\n function logItem(top = false) {\r\n const where2PutIt = top ? $.at.start : $.at.end;\r\n return content => {\r\n if (content?.isJQx) {\r\n return $.li(\r\n content.data.get(`header`) ? {class: `head`} : ``, content\r\n ).renderTo(logContainer, where2PutIt);\r\n }\r\n \r\n content = !$.IS(content, String, Number, Symbol) ? tryJSON(content, formatJSON) : String(content);\r\n const isHead = content.startsWith(`!!`);\r\n content = isHead ? content.slice(2) : content;\r\n $.li(isHead ? {class: `head`} : ``, content)\r\n .renderTo(logContainer, where2PutIt);\r\n };\r\n }\r\n const [logLamda, logTopLambda] = [logItem(), logItem(true)];\r\n \r\n return {\r\n log: (...txt) => txt.forEach( logLamda ),\r\n logTop: (...txt) => txt.forEach( logTopLambda ),\r\n };\r\n}\r\n\r\nfunction tryJSON(content, formatted) {\r\n try { return formatted ? `<pre>${JSON.stringify(content, null, 2)}</pre>` : JSON.stringify(content); }\r\n catch(err) {return `Some [Object object] can not be converted to JSON`}\r\n}\r\n\r\nfunction setDefaultStyling() {\r\n $.editCssRules(`li::marker{vertical-align:top;}`,`code{color:green;background-color:#eee;padding:2px;font-family:monospace;}`,`code.codeblock{display:block;padding:6px;border:1px solid #999;margin:0.5rem 0;background-color:#eee;white-space:pre-wrap;}`,`h3{marginTop:1.5rem;}`,`.thickBorder{border:5px solid green;borderWidth:5px;padding:0.5rem;display:inline-block;}`,`a.ExternalLink{text-decoration:none;color:rgb(0,0,238);background-color:#EEE;padding:3px;font-weight:bold;}`,`.cmmt{color:#888;}`,`.hidden{display:none;}`,`.attention{color:red; font-size:1.2em; font-weight:bold;}`,`#log2screen li{listStyle:'\\\\2713';paddingLeft:6px;margin:0.5rem 0 0 -1.2rem;font-family:monospace}`,`#log2screen li.head{list-style-type:none;font-weight:bold;margin-top:0.8rem;margin-bottom:-0.2rem;font-family:revert;}`,`.err{fontStyle:italic; color:red; }`,`a{text-decoration:none; font-weight:bold;}`,`a:hover{text-decoration:underline;}`,`a[target]:before,a.internalLink:before,a.externalLink:before{color:rgba(0,0,238,0.7);font-size:1.1rem;padding-right:2px;vertical-align:baseline;}`,`a[target=\"_blank\"]:before,a.externalLink:before{content:'\\\\2197';}`,`a[data-top]:before,a.internalLink:before,a[target=\"_top\"]:before{content:'\\\\21BA';}`);\r\n}\r\n"],
5
- "mappings": "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",
6
- "names": ["toaSymbols", "IS", "isOnly", "maybe", "$Wrap", "isNothing", "addSymbolicExtensions", "proxyWrapper", "TOAFactory", "specs", "useSymbolicExtensions", "isJust", "typeCheckFactory", "shouldbeIsSingleObject", "ISOneOf", "isExcept", "verifyNothingness", "determineType", "detectableProxy", "TOAHelpers", "TOASymbols", "anything", "shouldBe", "unChained", "v", "single", "input", "_", "SymbolAndCustomProxyFactory", "maybeFactory", "WrapAnyFactory", "AUXHelperFactory", "typeOf", "isTypeObj", "isOrDefault", "obj", "params", "param", "defaultValue", "isTypes", "notTypes", "SYMBOL_KEYS", "TYPE_STRINGS", "detectableProxyFactory", "addSymbolsFactory", "trapped", "type", "target", "key", "wrapProxy", "proxy2Wrap", "createDetectableProxy", "traps", "addSymbols2Anything", "args", "useSymbolicExtension", "constructor2String", "processInput", "noShouldbe", "noInput", "compareTo", "inputCTOR", "isNaN", "isInfinity", "shouldBeFirstElementIsNothing", "getResult", "finalInputResolver", "compareWith", "maybeResult", "resultWithComparison", "resultWithoutComparison", "someObj", "wrapper", "errFn", "err", "trial", "whenError", "maybeNothing", "all", "nada", "collate", "nameOf", "type2Check", "checkSingleType", "objName", "typeName", "chkType", "popupStyling", "getPopupStyling", "ATTRS", "getAttrs", "allTags", "getPermissions", "checkType", "converts", "ucFirst", "first", "theRest", "toDashedNotation", "str2Convert", "a", "toCamelcase", "str", "i", "cloneExact", "elementFunctionCollection2", "cleanupProps", "props", "specials", "retrieveSpecialProps", "keyCI", "data", "attributes", "classList", "cleanupComment", "initial", "isComment", "tag", "containsHTML", "validateElementTagName", "tagName", "validateTag", "name", "customElementRegistry2", "createElement2", "elementFunctionCollection", "customElementRegistry", "tagFunctionError", "tinyDOM_default", "tinyDOM", "proxyTraps", "tagFns", "createElement", "createTagFunctionProperty", "value", "custom", "debug", "isError", "unsealedElementFunctionCollection", "reSeal", "dashed", "camel", "tag2FN", "unsealedCollection", "processNext", "root", "next", "tagFN", "nested", "elem", "retrieveElementFromInitial", "arg", "createElementAndAppend", "element2Append", "assignSpecialProps", "specialProps", "element", "assignable", "LifeCSS_default", "LifeStyleFactory", "styleSheet", "createWithId", "tryParseAtOrNestedRules", "ruleExists", "checkParams", "sheet", "removeRules", "consider", "currentSheetID", "sheetHelpers", "setRules4Selector", "rule", "properties", "prop", "priority", "tryAndCatch", "setRules", "selector", "styleRules", "sheetOrMediaRules", "exists", "rule4Selector", "doParse", "cssDeclarationString", "shortenRule", "cssRules", "cssRuleFromText", "styleFromString", "checkAts", "styleFromObject", "rulesObj", "atMedia2String", "cssBlockOrSelector", "notification", "retrieveOrCreateSheet", "id", "existingSheet", "newSheet", "notSupported", "ruleFragOrSelector", "isSelector", "r", "compareSelectors", "createRE", "escape4RegExp", "tryParse", "rulesAt", "acc", "len", "idx", "fn", "existing", "selectr", "stringifyMediaRule", "shortRule", "mediaObj", "regexStr", "flags", "line", "msg", "prepareCssRuleFromText", "b", "l", "toRuleObject", "preparedRule", "s1", "s2", "lenient", "allowUnknownHtmlTags", "HTMLTags_default", "nodeName", "tag2Allow", "tag2Prohibit", "logElementCreationErrors2Console", "attrRegExpStore", "logContingentErrors", "elCreationInfo", "msgs", "k", "escHtml", "systemLog", "elementCheck", "child", "notAllowedCustomElementNames", "cleanupHtml", "el2Clean", "attrStore", "attr", "evilValue", "evilAttrib", "val", "truncate2SingleStr", "tagValue", "htmlToVirtualElement", "htmlString", "placeholderNode", "insertPositions", "characterDataElement2DOM", "position", "inject2DOMTree", "collection", "created", "isNode", "element2DOM", "createElementFromHtmlString", "htmlStrOrText", "testStr", "text", "nwElem", "truncateHtmlStr", "Popup_default", "$", "timers", "popupContent", "popupNode", "currentProps", "genericPopupCloseHandler", "initPopup", "initHidePopup", "removeModal", "isCurrent", "content", "showPopup", "failModalClose", "hidePopup", "modal", "closeAfter", "closerIcon", "createTimer", "clearTimers", "timer", "callback", "evt", "seconds", "warnMessage", "modalWarningBox", "HandlerFactory", "jqx", "store", "anon", "setListener", "listener", "handler", "capture", "removeListener", "wrapFn4Selector", "once", "handlerName", "isNonEmptyString", "elemFound", "me", "remove", "storedEventType", "eventType", "retrieve", "handlerIdCache", "storeHandler", "spec", "node", "about", "getHandlerName", "initialHandler", "handlerID", "getCaptureValue", "nwHandler", "systemLogFactory", "allwaysCaptureEventTypes", "characters4RandomString", "x", "datasetKeyProxy", "clearAllTimers", "uniqueHandlerID", "getAttributesForLogging", "instance", "dataset", "attrs", "idCache", "anonID", "captureValue", "t", "checkProp", "emptyElement", "el", "findParentScrollDistance", "distance", "top", "minlen", "maxLength", "html", "tmpDiv", "decodeForConsole", "something", "on", "disabled", "backLog", "systemLogger", "disable", "enable", "error", "logTime", "warn", "log", "entryTxt", "d", "pad0", "assignAttrValues", "keyValuePairs", "setData", "input2Collection", "isArrayOfHtmlElements", "beforeOrAfter", "after", "toAdd", "bOrA", "applyStyle", "rules", "cloneAndDestroy", "cloned", "isVisible", "elStyle", "computedStyle", "invisible", "noDisplay", "hidden", "zeroHeightOrWidth", "offscreen", "noOpacity", "isWritable", "ElemArray2HtmlString", "elems", "isCommentOrTextNode", "nr", "n", "randomNr", "max", "min", "randomString", "shuffle", "resolveEventTypeParameter", "maybeTypes", "isModal", "convert2Bool", "array", "ri", "isText", "isHtmlString", "isArrayOfHtmlStrings", "s", "loop", "cleanCollection", "getNodeContentForLog", "setCollectionFromCssSelector", "self", "selectorRoot", "selectedFactoryHelpers", "ExamineElementFeatureFactory", "noElements", "firstElem", "css", "keyOrKvPairs", "nwClass", "c", "instanceIs", "JQxInstanceMethods_default", "factoryExtensionsFactory", "instanceExtensionsFactory", "valuesObj", "whenUndefined", "boundingRect", "outer", "escaped", "append", "escape", "isString", "maybeParent", "styleObj", "classes2Apply", "addClassNameOrID", "classNames", "cn", "elems2Append", "shouldMove", "elem2Append", "elem2Append4Test", "toAppend", "appendTo", "keyOrObj", "theClosest", "property", "toDOM", "clone", "cb", "asJQxInstance", "indexOrSelector", "dataAttribute", "valueWhenFalsy", "htmlValue", "nwElement", "forSelector", "el2Change", "elems2Prepend", "elem2Prepend", "toPrepend", "prependTo", "nameOrProperties", "propName", "propValue", "remover", "removeFromCollection", "selectedElements", "attrNames", "oldChild", "newChild", "chld", "className", "nwClassNames", "hasNodes", "textValue", "evtType", "SpecifiedEvent", "options", "evObj", "newValue", "instanceGetters", "instanceMethods", "cssRuleEdit", "addFn", "selectedUtilitiesFactory", "addFnMethod", "extensionMethod", "staticFNMethodFactory", "isGetter", "ext", "proxify", "proxyTrapFactory", "maybeReProxify", "method", "returnValue", "proxyReporter", "JQxtarget", "addJQxStaticMethods", "staticMethods", "defaultStaticMethodsFactory", "descriptor", "allowances", "isWebComponent", "webComponentTagName", "addGetters", "cssRemove", "ruleStr", "virtualFactory", "pos", "virtualElem", "combineObjectSources", "sources", "result", "source", "descriptors", "tagGetterFactory", "cando", "reportIdOrClass", "jqxGetterForThisTag", "staticTagsLambda", "staticMethodsFactory", "delegateFactory", "listen", "listeners", "delegateCaptureFactory", "handlerWrapper", "types", "origin", "handlers", "typesResolved", "specifiedName", "assignListeners", "handlerFns", "getNamedListenerFactory", "popupGetter", "getSelectedStaticMethods", "editCssRule", "ruleOrSelector", "ruleObject", "createStyle", "editCssRules", "allowProhibit", "capturedHandling", "factoryExtensions", "instanceExtensions", "handle", "getNamedListener", "staticFN", "JQxConstructorFactory_default", "JQxMainFactory", "isVirtual", "isRawHtml", "shouldCreateElements", "isRawElemCollection", "htmlStringOrComment", "errors", "multiple", "collectionLog", "index_default", "M", "ke", "r", "t", "a", "l", "o", "y", "s", "h", "d", "D", "Z", "b", "$", "w", "Fe", "u", "c", "i", "m", "T", "le", "Ce", "ie", "Ae", "ge", "ye", "Ye", "N", "We", "he", "q", "H", "De", "Q", "W", "f", "_", "g", "Ue", "Te", "G", "se", "ae", "Y", "B", "U", "J", "K", "Le", "x", "xe", "A", "R", "fe", "C", "X", "ce", "je", "me", "pe", "ee", "$e", "O", "te", "L", "p", "Pe", "F", "v", "S", "I", "we", "re", "Se", "de", "j", "P", "Ze", "be", "k", "oe", "ne", "E", "Ee", "z", "Ve", "ue", "Me", "qe", "He", "_e", "Ie", "Ne", "ve", "Ge", "V", "Be", "ze", "Oe", "Je", "REHelper_default", "instanceCreator", "escape4RE", "regExStr", "args", "flags", "cleanedArgs", "maybeFlags", "createInstance", "cleanup", "createRegExpStringFromInput", "hasLength", "a", "v", "i", "cleanupFlags", "getFlags", "isOfType", "regExp", "instance", "modifyFlags", "clone", "getterTrap", "variable", "any", "CTOR", "maybeProp", "target", "key", "fromRegExp", "fromInstance", "fromRegExpMethod", "source", "currentFlags", "string2Escape", "str", "b", "O", "f", "h", "i", "n", "a", "l", "v", "e", "t", "j", "m", "p", "s", "r", "y", "o", "b", "d", "c", "u", "g", "S", "setDefaultStyling", "fixSBLinks2TopProblem", "splatModule", "O", "h", "v", "fixSBLinks2TopProblem", "evt", "ref", "logFactory", "formatJSON", "logContainer", "En", "logItem", "top", "where2PutIt", "content", "tryJSON", "isHead", "logLamda", "logTopLambda", "txt", "formatted", "setDefaultStyling"]
4
+ "sourcesContent": ["const toaSymbols = Symbol.for(\"toa.symbols\");\r\nObject[toaSymbols] = Object.create(null, {});\r\nconst { IS, isOnly, maybe, $Wrap, isNothing, addSymbolicExtensions, proxyWrapper, } =\r\n TOAFactory({useSymbolicExtensions: false});\r\n\r\nexport { IS as default, maybe, isOnly, $Wrap, proxyWrapper, isNothing, addSymbolicExtensions, };\r\n\r\nfunction TOAFactory(specs = {}) {\r\n const { useSymbolicExtensions } = specs;\r\n const isJust = typeCheckFactory();\r\n const { shouldbeIsSingleObject, ISOneOf, isExcept, verifyNothingness, determineType,\r\n addSymbolicExtensions, maybe, $Wrap, detectableProxy } = TOAHelpers(IS, useSymbolicExtensions);\r\n const proxyWrapper = detectableProxy;\r\n \r\n if (!!useSymbolicExtensions) { addSymbolicExtensions(); }\r\n const TOASymbols = Object[toaSymbols];\r\n return {IS, isOnly, maybe, $Wrap, isNothing: verifyNothingness, addSymbolicExtensions, proxyWrapper, };\r\n \r\n function IS(anything, ...shouldBe) {\r\n const unChained = Object.getOwnPropertySymbols(anything || {})?.some(v => v === TOASymbols.justME) && shouldBe.length > 0;\r\n const single = anything?.[TOASymbols.justME];\r\n const input = unChained ? single : typeof anything === `symbol` ? TOASymbols.isSymbol : anything;\r\n switch(true) {\r\n case unChained: return isJust(single, ...shouldBe);\r\n case !!maybe({trial: _ => `isTypes` in (shouldBe?.[0] ?? {})}):\r\n return shouldbeIsSingleObject(anything, shouldBe[0]);\r\n default: return shouldBe.length > 1 ? ISOneOf(input, ...shouldBe) : determineType(anything, ...shouldBe);\r\n }\r\n }\r\n \r\n function isOnly(anything, ...shouldBe) {\r\n return IS({[TOASymbols.justME]: anything}, ...shouldBe);\r\n }\r\n}\r\n\r\nfunction TOAHelpers(IS, useSymbolicExtensions) {\r\n const { SymbolAndCustomProxyFactory, maybeFactory, WrapAnyFactory,\r\n verifyNothingness, determineType, detectableProxy } = AUXHelperFactory(IS, typeOf);\r\n const {addSymbolicExtensions} = SymbolAndCustomProxyFactory(IS, typeOf, useSymbolicExtensions);\r\n const [maybe, $Wrap] = [maybeFactory(), WrapAnyFactory(IS, typeOf)];\r\n \r\n return Object.freeze({\r\n shouldbeIsSingleObject, ISOneOf, isExcept, verifyNothingness,\r\n determineType, detectableProxy, addSymbolicExtensions, maybe, $Wrap });\r\n \r\n function typeOf(anything) {\r\n return anything?.[Object[toaSymbols].proxy] || IS(anything);\r\n }\r\n \r\n function shouldbeIsSingleObject(anything, isTypeObj) {\r\n switch(true) {\r\n case `defaultValue` in isTypeObj: return isOrDefault(anything, isTypeObj);\r\n case `notTypes` in isTypeObj: return isExcept(anything, isTypeObj);\r\n default: return IS(anything, ...[isTypeObj.isTypes].flat());\r\n }\r\n }\r\n \r\n function ISOneOf(obj, ...params) {\r\n return params.some(param => IS(obj, param));\r\n }\r\n \r\n function isOrDefault(input, {defaultValue, isTypes = [undefined], notTypes} = {}) {\r\n isTypes = isTypes?.constructor !== Array ? [isTypes] : isTypes;\r\n notTypes = notTypes && notTypes?.constructor !== Array ? [notTypes] : [];\r\n return notTypes.length < 1\r\n ? IS(input, ...isTypes) ? input : defaultValue\r\n : isExcept(input, {isTypes, notTypes}) ? input : defaultValue;\r\n }\r\n \r\n function isExcept(input, {isTypes = [undefined], notTypes = [undefined]} = {}) {\r\n isTypes = isTypes?.constructor !== Array ? [isTypes] : isTypes;\r\n notTypes = notTypes?.constructor !== Array ? [notTypes] : notTypes;\r\n return IS(input, ...isTypes) && !IS(input, ...notTypes);\r\n }\r\n}\r\n\r\nfunction AUXHelperFactory() {\r\n const TOASymbols = Object[toaSymbols];\r\n const SYMBOL_KEYS = {\r\n IS: 'toa.is',\r\n TYPE: 'toa.type',\r\n IS_SYMBOL: 'toa.isASymbol',\r\n PROXY: 'toa.proxyFor',\r\n TARGET: 'toa.target',\r\n JUSTME: 'toa.justME',\r\n };\r\n \r\n const TYPE_STRINGS = {\r\n NAN: 'NaN',\r\n INFINITY: 'Infinity',\r\n BOOLEAN: 'Boolean',\r\n OBJECT: 'Object',\r\n PROXY_PREFIX: 'Proxy for',\r\n };\r\n const detectableProxy = detectableProxyFactory();\r\n \r\n return Object.freeze({\r\n SymbolAndCustomProxyFactory: addSymbolsFactory, maybeFactory, WrapAnyFactory,\r\n verifyNothingness, determineType, detectableProxy,\r\n }\r\n );\r\n \r\n function detectableProxyFactory() {\r\n const trapped = type => ({\r\n get(target, key) {\r\n return key === Object[toaSymbols].proxy\r\n ? `Proxy for ${type}`\r\n : key === Object[toaSymbols].target\r\n ? target : Reflect.get(target, key);\r\n },\r\n has(target, key) { return key === Object[toaSymbols].proxy ? true : key in target; }\r\n });\r\n \r\n function wrapProxy(proxy2Wrap) {\r\n const type = proxy2Wrap.name || proxy2Wrap.constructor.name;\r\n return new Proxy( proxy2Wrap, trapped(type) );\r\n }\r\n \r\n function createDetectableProxy(target, traps) {\r\n traps = IS(traps, Object) ? traps : {};\r\n return wrapProxy(new Proxy(target, traps));\r\n }\r\n \r\n return {\r\n wrap: wrapProxy,\r\n create: createDetectableProxy\r\n };\r\n }\r\n \r\n function addSymbols2Anything(IS, typeOf) {\r\n if (!TOASymbols.is) {\r\n TOASymbols.is = Symbol(SYMBOL_KEYS.IS);\r\n TOASymbols.type = Symbol(SYMBOL_KEYS.TYPE);\r\n \r\n Object.defineProperties(Object.prototype, {\r\n [TOASymbols.type]: { get() { return typeOf(this); }, enumerable: false, configurable: true },\r\n [TOASymbols.is]: { value: function (...args) { return IS(this, ...args); }, enumerable: false, configurable: false },\r\n });\r\n Object.defineProperties(Object, {\r\n [TOASymbols.type]: { value(obj) { return typeOf(obj); }, enumerable: false, configurable: false },\r\n [TOASymbols.is]: { value: function (obj, ...args) { return IS(obj, ...args); }, enumerable: false, configurable: false },\r\n });\r\n }\r\n }\r\n \r\n function addSymbolsFactory(IS, typeOf, useSymbolicExtension) {\r\n \r\n if (!TOASymbols.isSymbol) {\r\n TOASymbols.isSymbol = Symbol(SYMBOL_KEYS.IS_SYMBOL);\r\n TOASymbols.proxy = Symbol(SYMBOL_KEYS.PROXY);\r\n TOASymbols.target = Symbol(SYMBOL_KEYS.TARGET);\r\n TOASymbols.justME = Symbol(SYMBOL_KEYS.JUSTME);\r\n }\r\n return {addSymbolicExtensions: () => addSymbols2Anything(IS, typeOf)};\r\n }\r\n \r\n function constructor2String(obj) {\r\n const ctor = !isNothing(obj, true) ? Object.getPrototypeOf(obj)?.constructor : {name: `unknown`};\r\n return ctor.name;\r\n }\r\n \r\n function processInput(input, ...shouldBe) {\r\n const noShouldbe = shouldBe.length < 1;\r\n const noInput = input === undefined || input === null;\r\n \r\n return {\r\n noInput,\r\n noShouldbe,\r\n compareTo: !noShouldbe && shouldBe[0],\r\n inputCTOR: !noInput && (input?.constructor || Object.getPrototypeOf(input)?.constructor),\r\n isNaN: Number.isNaN(input) || maybe({trial: _ => String(input) === TYPE_STRINGS.NAN}),\r\n isInfinity: maybe({trial: _ => String(input)}) === TYPE_STRINGS.INFINITY,\r\n shouldBeFirstElementIsNothing: !noShouldbe && verifyNothingness(shouldBe[0])\r\n };\r\n }\r\n \r\n function determineType(input, ...shouldBe) {\r\n let { noInput, noShouldbe, compareTo, inputCTOR, isNaN, isInfinity, shouldBeFirstElementIsNothing } =\r\n processInput(input, ...shouldBe);\r\n shouldBe = shouldBe.length && shouldBe[0];\r\n \r\n switch (true) {\r\n case shouldBeFirstElementIsNothing: return String(input) === String(compareTo);\r\n case input?.[Object[toaSymbols].proxy] && noShouldbe: return input[Object[toaSymbols].proxy];\r\n case input?.[Object[toaSymbols].proxy] && typeof shouldBe === `string`:\r\n return input[Object[toaSymbols].proxy].toLowerCase() === shouldBe.toLowerCase();\r\n case isNaN: return noShouldbe ? TYPE_STRINGS.NAN : String(compareTo) === String(input);\r\n case isInfinity: return noShouldbe ? TYPE_STRINGS.INFINITY : String(compareTo) === String(input);\r\n case noInput: return noShouldbe ? String(input) : String(compareTo) === String(input);\r\n case inputCTOR === Boolean: return noShouldbe ? TYPE_STRINGS.BOOLEAN : inputCTOR === shouldBe;\r\n default: return getResult(input, shouldBe, noShouldbe, finalInputResolver(input, inputCTOR));\r\n }\r\n }\r\n \r\n function finalInputResolver(input, inputCTOR) {\r\n switch(true) {\r\n case input === 0: return Number;\r\n case input === ``: return String;\r\n case !input: return {name: String(input)};\r\n default: return inputCTOR;\r\n }\r\n }\r\n \r\n function getResult(input, compareWith, noShouldbe, maybeResult) {\r\n switch (true) {\r\n case (!noShouldbe && compareWith === input) || (input?.[Object[toaSymbols].proxy] && compareWith === Proxy):\r\n return true;\r\n case String(compareWith) === TYPE_STRINGS.NAN:\r\n return String(input) === TYPE_STRINGS.NAN;\r\n case input?.[Symbol.toStringTag] && typeof compareWith === `string`:\r\n return String(compareWith) === input[Symbol.toStringTag];\r\n default:\r\n return compareWith ?\r\n resultWithComparison(input, compareWith, maybeResult) : resultWithoutComparison(input, maybeResult);\r\n }\r\n }\r\n \r\n function resultWithoutComparison(input, maybeResult) {\r\n const toStringTag = input?.[Symbol.toStringTag] ?? input?.prototype?.[Symbol.toStringTag];\r\n return toStringTag || maybeResult?.name || String(maybeResult);\r\n }\r\n \r\n function resultWithComparison(input, compareWith, maybeResult) {\r\n return maybe({trial: _ =>\r\n input instanceof compareWith}) ||\r\n compareWith === maybeResult ||\r\n compareWith === Object.getPrototypeOf(maybeResult) ||\r\n `${compareWith?.name}` === maybeResult?.name;\r\n }\r\n \r\n function WrapAnyFactory(IS, typeOf) {\r\n return function (someObj) {\r\n const wrapper = {\r\n get value() { return someObj; },\r\n is(...args) { return IS(someObj, ...args); },\r\n get type() { return typeOf(someObj); },\r\n };\r\n \r\n if (Object[Object[toaSymbols].type]) {\r\n Object.defineProperties(wrapper, {\r\n [Object[toaSymbols].type]: { get() { return typeOf(someObj);} },\r\n [Object[toaSymbols].is]: { value(...args) { return IS(someObj, ...args); }}\r\n });\r\n }\r\n return Object.freeze(wrapper);\r\n }\r\n }\r\n \r\n function maybeFactory() {\r\n const errFn = err => undefined;\r\n return function({trial, whenError = errFn } = {}) {\r\n try { return trial(); } catch (err) { return whenError(err); }\r\n };\r\n }\r\n \r\n function verifyNothingness(maybeNothing, all = false) {\r\n let nada = maybeNothing === null || maybeNothing === undefined;\r\n nada = all ? nada || IS(maybeNothing, Infinity) || IS(maybeNothing, NaN) : nada;\r\n return nada;\r\n }\r\n}\r\n\r\nfunction typeCheckFactory() {\r\n const collate = new Intl.Collator(`en`, {sensitivity: 'base'});\r\n const nameOf = type2Check => {\r\n return typeof type2Check?.constructor === `function`\r\n ? type2Check?.name || type2Check?.constructor?.name\r\n : typeof type2Check === `string` ? type2Check : typeof type2Check;\r\n };\r\n const isNothing = obj => [null, undefined, Infinity, NaN].some(v => v === obj);\r\n \r\n function checkSingleType(obj, type2Check) {\r\n if (\r\n type2Check !== obj &&\r\n ( isNothing(obj) || type2Check === Number && (Number.isNaN(obj) || !Number.isFinite(obj)) )\r\n ) { return false; }\r\n const [objName, typeName] = [nameOf(obj), nameOf(type2Check)];\r\n \r\n return obj?.[Object[toaSymbols].proxy] === type2Check ||\r\n type2Check === obj?.name ||\r\n 0 === collate.compare(objName, typeName) ||\r\n 0 === collate.compare(obj.constructor?.name, type2Check?.name) ||\r\n obj.constructor?.name === type2Check ||\r\n objName === type2Check ||\r\n 0 === collate.compare( Object.prototype.toString.call(obj), `[object ${typeName}]` );\r\n }\r\n \r\n return function checkType(obj, ...type2Check) {\r\n if (Array.isArray(type2Check) && type2Check.length > 1) {\r\n for (const chkType of type2Check) {\r\n if (checkSingleType(obj, chkType)) { return true; }\r\n }\r\n \r\n return false;\r\n }\r\n \r\n return checkSingleType(obj, type2Check?.[0]);\r\n }\r\n}\r\n", "let popupStyling = getPopupStyling();\r\nconst ATTRS = getAttrs();\r\nconst allTags = getPermissions();\r\nexport {popupStyling, ATTRS, allTags};\r\n\r\nfunction getAttrs() {\r\n return {\r\n html: Object.freeze(`accept,action,align,alt,autocapitalize,autocomplete,autopictureinpicture,autoplay,background,bgcolor,border,capture,cellpadding,cellspacing,checked,cite,class,clear,contenteditable,color,cols,colspan,controls,controlslist,coords,crossorigin,datetime,decoding,default,dir,disabled,disablepictureinpicture,disableremoteplayback,download,draggable,enctype,enterkeyhint,face,for,headers,height,hidden,high,href,hreflang,id,inputmode,integrity,is,ismap,kind,label,lang,list,loading,loop,low,max,maxlength,media,method,min,minlength,multiple,muted,name,nonce,noshade,novalidate,nowrap,open,optimum,pattern,placeholder,playsinline,poster,preload,pubdate,radiogroup,readonly,rel,required,rev,reversed,role,rows,rowspan,spellcheck,scope,selected,shape,size,sizes,span,srclang,start,src,srcset,step,style,summary,tabindex,target,title,translate,type,usemap,valign,value,width,xmlns,slot`\r\n .split(`,`)),\r\n svg: Object.freeze(`accent-height,accumulate,additive,alignment-baseline,ascent,attributename,attributetype,azimuth,basefrequency,baseline-shift,begin,bias,by,class,clip,clippathunits,clip-path,clip-rule,color,color-interpolation,color-interpolation-filters,color-profile,color-rendering,cx,cy,d,dx,dy,diffuseconstant,direction,display,divisor,dur,edgemode,elevation,end,fill,fill-opacity,fill-rule,filter,filterunits,flood-color,flood-opacity,font-family,font-size,font-size-adjust,font-stretch,font-style,font-variant,font-weight,fx,fy,g1,g2,glyph-name,glyphref,gradientunits,gradienttransform,height,href,id,image-rendering,in,in2,k,k1,k2,k3,k4,kerning,keypoints,keysplines,keytimes,lang,lengthadjust,letter-spacing,kernelmatrix,kernelunitlength,lighting-color,local,marker-end,marker-mid,marker-start,markerheight,markerunits,markerwidth,maskcontentunits,maskunits,max,mask,media,method,mode,min,name,numoctaves,offset,operator,opacity,order,orient,orientation,origin,overflow,paint-order,path,pathlength,patterncontentunits,patterntransform,patternunits,points,preservealpha,preserveaspectratio,primitiveunits,r,rx,ry,radius,refx,refy,repeatcount,repeatdur,restart,result,rotate,scale,seed,shape-rendering,specularconstant,specularexponent,spreadmethod,startoffset,stddeviation,stitchtiles,stop-color,stop-opacity,stroke-dasharray,stroke-dashoffset,stroke-linecap,stroke-linejoin,stroke-miterlimit,stroke-opacity,stroke,stroke-width,style,surfacescale,systemlanguage,tabindex,targetx,targety,transform,text-anchor,text-decoration,text-rendering,textlength,type,u1,u2,unicode,values,viewbox,visibility,version,vert-adv-y,vert-origin-x,vert-origin-y,width,word-spacing,wrap,writing-mode,xchannelselector,ychannelselector,x,x1,x2,xmlns,y,y1,y2,z,zoomandpan`\r\n .split(`,`)),\r\n };\r\n}\r\n\r\nfunction getPermissions() {\r\n return {a:true,area:true,audio:false,br:true,base:true,body:true,button:true,canvas:true,comment:true,dl:true,data:true,datalist:true,div:true,em:true, embed:false,fieldset:true,font:true,footer:true,form:false,hr:true,head:true,header:true,output:true,iframe:false,frameset:false,img:true,input:true,li:true,label:true,legend:true,link:true,map:true,mark:true,menu:true,media:true,meta:true,nav:true,meter:true,ol:true,object:false,optgroup:true,option:true,p:true,param:true,picture:true,pre:true,progress:false,quote:true,script:false,select:true,source:true,span:true,style:true,caption:true,td:true,col:true,table:true,tr:true,template:false,textarea:true,time:true,title:true,track:true,details:true,ul:true,video:true,del:true,ins:true,slot:true,blockquote:true,svg:true,dialog:true,summary:true,main:true,address:true,colgroup:true,tbody:true,tfoot:true,thead:true,th:true,dd:true,dt:true,figcaption:true,figure:true,i:true,b:true,code:true,h1:true,h2:true,h3:true,h4:true,abbr:true,bdo:true,dfn:true,kbd:true,q:true,rb:true,rp:true,rt:true,ruby:true,s:true,strike:true,samp:true,small:true,strong:true,sup:true,sub:true,u:true,var:true,wbr:true,nobr:true,tt:true,noscript:true};\r\n}\r\n\r\nfunction getPopupStyling() {\r\n return [\r\n \"::backdrop{background-color:grey;opacity:0.2;}\",\r\n \"#jqxPopup{overflow:hidden;background-color:transparent;outline:none;border:none;inset:0;animation:fade-out 0.5s ease-out;&[open]{display:flex;align-items:center;justify-content:center;animation:fade-in 0.5s ease;}#jqxPopupContent{background-color:white;border:solid 1px #eee;box-shadow:1px 2px 8px #999;border-radius:4px;padding:12px;vertical-align:middle;max-height:40vh;max-width:50vw;overflow:auto;margin:0 auto;div:not(#closeHandleIcon){clear:both;}@media (width <= 640px){max-width:80vw;max-height:60vh;}#closeHandleIcon{cursor:pointer;width:24px;height:24px;display:inline;position:absolute;top:4px;right:4px;justify-content:right;background-image:url(\\\"data:image/svg+xml;utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22iso-8859-1%22%3F%3E%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20id%3D%22Layer_1%22%20x%3D%220px%22%20y%3D%220px%22%20viewBox%3D%220%200%20128%20128%22%20style%3D%22enable-background%3Anew%200%200%20128%20128%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Crect%20x%3D%22-368%22%20y%3D%226%22%20style%3D%22display%3Anone%3Bfill%3A%23E0E0E0%3B%22%20width%3D%22866%22%20height%3D%221018%22%2F%3E%3Ccircle%20style%3D%22fill%3A%23FFFFFF%3B%22%20cx%3D%2264%22%20cy%3D%2264%22%20r%3D%2248%22%2F%3E%3Ccircle%20style%3D%22fill%3A%238CCFB9%3B%22%20cx%3D%2264%22%20cy%3D%2264%22%20r%3D%2239%22%2F%3E%3Ccircle%20style%3D%22fill%3Anone%3Bstroke%3A%23444B54%3Bstroke-width%3A6%3Bstroke-miterlimit%3A10%3B%22%20cx%3D%2264%22%20cy%3D%2264%22%20r%3D%2248%22%2F%3E%3Cpolyline%20style%3D%22fill%3Anone%3Bstroke%3A%23FFFFFF%3Bstroke-width%3A6%3Bstroke-linecap%3Around%3Bstroke-miterlimit%3A10%3B%22%20points%3D%2242%2C69%2055.55%2C81%20%20%2086%2C46%20%22%2F%3E%3C%2Fsvg%3E\\\");@media (width <= 640px){background-image:none;position:relative;margin:-15px -15px 4px 0;float:right;vertical-align:middle;border:1px solid #AAA;padding:2px;border-radius:50%;width:12px;height:12px;font-size:12px;line-height:12px;font-weight:bold;text-align:center;&:after{content:'\\\\2714';color:green;}}}.warn{display:none;text-align:center;color:red;border-top:1px solid #999;margin-top:1em;padding-top:3px;animation:warn-fade-out 0.2s ease-out;}.warn.active{opacity:1;display:block;animation:warn-fade-in 0.2s ease-in;}}}\",\r\n \"@keyframes fade-in{0%{opacity:0;transform:scale(0, 0);display:none;}100%{opacity:1;transform:scale(1, 1);display:flex;}}\",\r\n \"@keyframes fade-out{0%{opacity:1;transform:scale(1, 1);display:flex;}100%{opacity:0;transform:scale(0, 0);display:none;}}\",\r\n \"@keyframes warn-fade-in{0%{opacity:0;transform:scale(0, 0);display:none;}100%{opacity:1;transform:scale(1,1 );display:block;}}\",\r\n \"@keyframes warn-fade-out{0%{opacity:1;transform:scale(1, 1);display:block;}100%{opacity:0;transform:scale(0, 0);display:none;}}\"\r\n ];\r\n}\r\n", "// Standalone available @ https://www.npmjs.com/package/tinydom-es\n// Src/helpers.js\nvar checkType = typeCheckFactory();\nvar maybe = maybeFactory();\nvar converts = { html: `innerHTML`, text: `textContent`, class: `className` };\nfunction typeCheckFactory() {\n const collate = new Intl.Collator(`en`, { sensitivity: \"base\" });\n const nameOf = (type2Check) => {\n return typeof type2Check?.constructor === `function` ? type2Check?.name || type2Check?.constructor?.name : typeof type2Check === `string` ? type2Check : typeof type2Check;\n };\n const isNothing = (obj) => [null, void 0, Infinity, NaN].some((v) => v === obj);\n function checkSingleType(obj, type2Check) {\n switch (true) {\n case (type2Check !== obj && (isNothing(obj) || type2Check === Number && (Number.isNaN(obj) || !Number.isFinite(obj)))):\n return false;\n default:\n const [objName, typeName] = [nameOf(obj), nameOf(type2Check)];\n return obj?.[Symbol.proxy] === type2Check || type2Check === obj?.name || 0 === collate.compare(objName, typeName) || 0 === collate.compare(obj.constructor?.name, type2Check?.name) || obj.constructor?.name === type2Check || objName === type2Check || 0 === collate.compare(Object.prototype.toString.call(obj), `[object ${typeName}]`);\n }\n }\n return function checkType2(obj, ...type2Check) {\n if (Array.isArray(type2Check) && type2Check.length > 1) {\n for (const chkType of type2Check) {\n if (checkSingleType(obj, chkType)) {\n return true;\n }\n }\n return false;\n }\n return checkSingleType(obj, type2Check?.[0]);\n };\n}\nfunction ucFirst([first, ...theRest]) {\n return `${first.toUpperCase()}${theRest.join(``)}`;\n}\nfunction toDashedNotation(str2Convert) {\n return str2Convert.replace(/[A-Z]/g, (a) => `-${a.toLowerCase()}`).replace(/^-|-$/, ``);\n}\nfunction toCamelcase(str2Convert) {\n return checkType(str2Convert, String) ? str2Convert.toLowerCase().split(`-`).map((str, i) => i && `${ucFirst(str)}` || str).join(``) : str2Convert;\n}\nfunction maybeFactory() {\n const errFn = (err) => void 0;\n return function({ trial, whenError = errFn } = {}) {\n try {\n return trial();\n } catch (err) {\n return whenError(err);\n }\n };\n}\nfunction cloneExact(elementFunctionCollection2) {\n return Object.fromEntries(\n Object.entries(Object.getOwnPropertyDescriptors(elementFunctionCollection2))\n );\n}\nfunction cleanupProps(props) {\n if (Object.keys(props).length < 1) {\n return { assignable: {}, specials: [...Array(3)] };\n }\n const specials = retrieveSpecialProps(props);\n Object.keys(props).forEach((key) => {\n const keyCI = key.toLowerCase();\n keyCI in converts && (props[converts[keyCI]] = props[key]) && delete props[key];\n });\n return { assignable: props, specials };\n}\nfunction retrieveSpecialProps(props) {\n props = checkType(props, Object) && props || void 0;\n if (!props) {\n return Array(3);\n }\n const data = Object.entries(props.data ?? {});\n const attributes = Object.entries(props.attributes ?? {});\n const classList = props.class?.split(/[ ,]/).map((v) => v.trim()).filter((v) => v.length > 1);\n delete props.data;\n delete props.attributes;\n delete props.class;\n return [data, attributes, classList];\n}\nfunction cleanupComment(initial) {\n return initial?.constructor === Comment ? initial?.textContent : String(initial);\n}\nfunction isComment(tag) {\n return /comment/i.test(tag);\n}\nfunction containsHTML(str, tag) {\n return !isComment(tag) && checkType(str, String) && /<.*>|&[#|0-9a-z]+[^;];/i.test(str);\n}\nfunction validateElementTagName(tagName) {\n tagName = tagName.toLowerCase();\n return typeof tagName === `string` && tagName.length > 0 && /^[a-z]/.test(tagName) && /^[a-z0-9-]+$/gi.test(tagName);\n}\nfunction validateTag(name, customElementRegistry2, createElement2) {\n return validateElementTagName(name) && (name in customElementRegistry2 || !checkType(createElement2(name), HTMLUnknownElement));\n}\n\n// Src/tinyDOM.js\nvar elementFunctionCollection = Object.create(null, {});\nvar customElementRegistry = Object.create(null, {});\nvar tagFunctionError = (tag) => {\n console.error(`tinyDOM error: \"${tag}\" is not a valid HTML tag`);\n return void 0;\n};\nvar tinyDOM_default = tinyDOM();\nfunction tinyDOM() {\n return Object.seal(new Proxy(elementFunctionCollection, proxyTraps()));\n}\nfunction proxyTraps() {\n return {\n get(tagFns, key) {\n const tag = String(key);\n switch (true) {\n case tag in tagFns:\n return tagFns[tag];\n case validateTag(tag, customElementRegistry, createElement):\n return createTagFunctionProperty({ tag, key });\n default:\n return createTagFunctionProperty({ tag, key, isError: true });\n }\n },\n set(tagFns, key, value) {\n if (key === `setError` && typeof value === \"function\") {\n tagFunctionError = value;\n }\n return true;\n },\n enumerable: false,\n configurable: false\n };\n}\nfunction createTagFunctionProperty({ tag, key, custom, debug = false, isError = false } = {}) {\n let unsealedElementFunctionCollection = cloneExact(elementFunctionCollection);\n if (isError) {\n Object.defineProperty(unsealedElementFunctionCollection, tag, {\n get() {\n return (_) => tagFunctionError(key) ?? ``;\n }\n });\n return reSeal(unsealedElementFunctionCollection, tag);\n }\n if (tag.includes(`-`)) {\n const [dashed, camel] = tag.includes(`-`) ? [tag, toCamelcase(tag)] : [toDashedNotation(tag), tag];\n customElementRegistry[dashed] = dashed;\n customElementRegistry[camel] = dashed;\n custom = camel;\n }\n if (!!custom) {\n Object.defineProperty(unsealedElementFunctionCollection, custom, {\n get() {\n return tag2FN(tag);\n }\n });\n }\n Object.defineProperty(unsealedElementFunctionCollection, tag, {\n get() {\n return tag2FN(tag);\n }\n });\n return reSeal(unsealedElementFunctionCollection, tag);\n}\nfunction reSeal(unsealedCollection, tag) {\n elementFunctionCollection = Object.seal(new Proxy(unsealedCollection, proxyTraps()));\n return elementFunctionCollection[tag];\n}\nfunction processNext(root, next, tagName) {\n next = next?.isJQx && next.node || (checkType(next, Number) ? String(next) : next);\n return maybe({\n trial: (_) => containsHTML(next) ? root.insertAdjacentHTML(`beforeend`, next) : root.append(next),\n whenError: (err) => console.info(`${tagName} not created, reason\n`, err)\n });\n}\nfunction tagFN(tagName, initial, ...nested) {\n const elem = retrieveElementFromInitial(initial, tagName);\n nested?.forEach((arg) => processNext(elem, arg, tagName));\n return elem;\n}\nfunction retrieveElementFromInitial(initial, tag) {\n initial = isComment(tag) ? cleanupComment(initial) : initial?.isJQx ? initial.node : initial;\n switch (true) {\n case checkType(initial, String):\n return createElement(tag, containsHTML(initial, tag) ? { html: initial } : { text: initial });\n case initial instanceof Node:\n return createElementAndAppend(tag, initial);\n default:\n return createElement(tag, initial);\n }\n}\nfunction createElementAndAppend(tag, element2Append) {\n const elem = createElement(tag);\n elem.append(element2Append);\n return elem;\n}\nfunction assignSpecialProps(specialProps, element) {\n const [data, attributes, classList] = specialProps;\n data?.length && data.forEach(([key, value]) => element.dataset[key] = value);\n attributes?.length && attributes.forEach(([key, value]) => element.setAttribute(key, value));\n classList?.forEach((value) => element.classList.add(value));\n}\nfunction createElement(tagName, props) {\n props = props || {};\n const { assignable, specials } = cleanupProps(props);\n const elem = Object.assign(\n isComment(tagName) ? new Comment() : document.createElement(tagName),\n assignable\n );\n assignSpecialProps(specials, elem);\n return elem;\n}\nfunction tag2FN(tagName) {\n tagName = customElementRegistry[tagName] ?? tagName;\n return (initial, ...args) => tagFN(tagName, initial, ...args);\n}\nexport {\n tinyDOM_default as default\n};\n", "import {default as IS} from \"./TypeofAnything.js\";\r\nexport default LifeStyleFactory;\r\n\r\n/* region factory */\r\nfunction LifeStyleFactory({styleSheet, createWithId} = {}) {\r\n const { tryParseAtOrNestedRules, ruleExists, checkParams,\r\n sheet, removeRules, consider, currentSheetID } = sheetHelpers({styleSheet, createWithId});\r\n\r\n function setRules4Selector(rule, properties) {\r\n if (rule && properties.removeProperties) {\r\n Object.keys(properties.removeProperties)\r\n .forEach( prop => rule.style.removeProperty(toDashedNotation(prop)) );\r\n return;\r\n }\r\n\r\n Object.entries(properties)\r\n .forEach( ([prop, value]) => {\r\n prop = toDashedNotation(prop.trim());\r\n value = value.trim();\r\n\r\n let priority;\r\n\r\n if (/!important/.test(value)) {\r\n value = value.slice(0, value.indexOf(`!important`)).trim();\r\n priority = `important`;\r\n }\r\n\r\n if (!CSS.supports(prop, value)) {\r\n return console.error(`StylingFactory ${currentSheetID} error: '${\r\n prop}' with value '${value}' not supported (yet)`);\r\n }\r\n\r\n tryAndCatch( () => rule.style.setProperty(prop, value, priority),\r\n `StylingFactory ${currentSheetID} (setRule4Selector) failed`);\r\n });\r\n }\r\n\r\n function setRules(selector, styleRules, sheetOrMediaRules = sheet) {\r\n selector = selector?.trim?.();\r\n if (!IS(selector, String) || !selector.length || /[;,]$/g.test(selector)) {\r\n return console.error(`StylingFactory ${currentSheetID} (setRules): [${\r\n selector || `[no selector given]` }] is not a valid selector`);\r\n }\r\n\r\n if (styleRules.removeRule) {\r\n return removeRules(selector);\r\n }\r\n\r\n const exists = ruleExists(selector, true);\r\n const rule4Selector = exists\r\n || sheetOrMediaRules.cssRules[sheetOrMediaRules.insertRule(`${selector} {}`, sheetOrMediaRules.cssRules.length || 0)];\r\n\r\n return consider( () => setRules4Selector(rule4Selector, styleRules), selector, exists );\r\n }\r\n\r\n function doParse(cssDeclarationString) {\r\n const rule = cssDeclarationString.trim().split(/{/, 2);\r\n const selector = rule.shift().trim();\r\n\r\n if (!IS(selector, String) || !selector?.trim()?.length) {\r\n return console.error(`StylingFactory ${currentSheetID} (doParse): no (valid) selector could be extracted from rule ${\r\n shortenRule(cssDeclarationString)}`);\r\n }\r\n\r\n const cssRules = cssRuleFromText(rule.shift());\r\n\r\n return tryAndCatch( () => setRules(selector, cssRules), `StylingFactory ${currentSheetID} (setRules) failed` );\r\n }\r\n\r\n function styleFromString(cssDeclarationString) {\r\n const checkAts = tryParseAtOrNestedRules(cssDeclarationString);\r\n return checkAts.done ? checkAts.existing : doParse(cssDeclarationString);\r\n }\r\n\r\n function styleFromObject(selector, rulesObj) {\r\n if (selector.trim().startsWith(`@media`)) {\r\n return styleFromString(atMedia2String(selector, rulesObj));\r\n }\r\n return setRules(selector, rulesObj);\r\n }\r\n\r\n return function(cssBlockOrSelector, rulesObj = {}) {\r\n const checksOk = checkParams(cssBlockOrSelector, rulesObj);\r\n\r\n return checksOk && (\r\n Object.keys(rulesObj).length ?\r\n styleFromObject(cssBlockOrSelector, rulesObj) :\r\n styleFromString(cssBlockOrSelector) );\r\n };\r\n}\r\n/* endregion factory */\r\n\r\n/* region helpers */\r\nfunction sheetHelpers({styleSheet, createWithId}) {\r\n const notification = `Note: The rule or some of its properties may not be supported by your browser (yet)`;\r\n const currentSheetID = `for style#${createWithId}`;\r\n styleSheet = createWithId ? retrieveOrCreateSheet(createWithId) : styleSheet;\r\n\r\n function retrieveOrCreateSheet(id) {\r\n const existingSheet = document.querySelector(`#${id}`)?.sheet;\r\n\r\n if (existingSheet) { return existingSheet; }\r\n\r\n const newSheet = Object.assign(document.createElement(`style`), { id });\r\n document.head.insertAdjacentElement(`beforeend`, newSheet);\r\n return newSheet.sheet;\r\n }\r\n\r\n function notSupported(rule) {\r\n console.error(`StylingFactory ${currentSheetID} [rule: ${rule}]\r\n => @charset, @namespace and @import are not supported here`);\r\n return {done: true};\r\n }\r\n\r\n function ruleExists(ruleFragOrSelector, isSelector) {\r\n return [...styleSheet.rules].find( r =>\r\n isSelector ?\r\n compareSelectors((r.selectorText || ``), ruleFragOrSelector) :\r\n createRE`${escape4RegExp(ruleFragOrSelector)}${[...`gim`]}`.test(r.cssText));\r\n }\r\n\r\n function tryParseAtOrNestedRules(cssDeclarationString) {\r\n if (/^@charset|@import|namespace/i.test(cssDeclarationString.trim())) {\r\n return notSupported(cssDeclarationString);\r\n }\r\n\r\n if (cssDeclarationString.match(/}/g)?.length > 1) {\r\n return {existing: tryParse(cssDeclarationString, 1), done: true}\r\n }\r\n\r\n return { done: false };\r\n }\r\n\r\n function removeRules(selector) {\r\n const rulesAt = [...styleSheet.cssRules].reduce( (acc, v, i) =>\r\n compareSelectors(v.selectorText || ``, selector) && acc.concat(i) || acc, [] );\r\n const len = rulesAt.length;\r\n rulesAt.forEach(idx => styleSheet.deleteRule(idx));\r\n\r\n return len > 0\r\n ? console.info(`\u2714 Removed ${len} instance${len > 1 ? `s` : ``} of selector ${\r\n selector} from ${currentSheetID.slice(4)}`)\r\n : console.info(`\u2714 Remove rule: selector ${selector} does not exist in ${\r\n currentSheetID.slice(4)}`);\r\n }\r\n\r\n function checkParams(cssBlockOrSelector, rulesObj) {\r\n return cssBlockOrSelector\r\n && IS(cssBlockOrSelector, String)\r\n && cssBlockOrSelector.trim().length > 0\r\n && IS(rulesObj, Object) ||\r\n (console.error(`StylingFactory ${currentSheetID} called with invalid parameters`), false);\r\n }\r\n\r\n function tryParse(cssDeclarationString) {\r\n cssDeclarationString = cssDeclarationString.trim();\r\n const rule = cssDeclarationString.slice(0, cssDeclarationString.indexOf(`{`)).trim();\r\n const exists = !!ruleExists(rule);\r\n\r\n try {\r\n return (styleSheet.insertRule(`${cssDeclarationString}`, styleSheet.cssRules.length), exists);\r\n } catch(err) {\r\n return (console.error(`StylingFactory ${currentSheetID} (tryParse) ${err.name} Error:\\n${\r\n err.message}\\nRule: ${\r\n shortenRule(cssDeclarationString)}\\n${\r\n notification}`),\r\n exists);\r\n }\r\n }\r\n\r\n function consider(fn, rule, existing) {\r\n try {\r\n return (fn(), existing);\r\n } catch(err) {\r\n return (\r\n console.error(`StylingFactory ${currentSheetID} (tryAddOrModify) ${err.name} Error:\\n${\r\n err.message}\\nRule: ${shortenRule(rule)}\\n${notification}`),\r\n existing\r\n );\r\n }\r\n }\r\n\r\n return {\r\n sheet: styleSheet, removeRules, tryParseAtOrNestedRules,\r\n ruleExists, checkParams, tryParse, consider,\r\n currentSheetID };\r\n}\r\n/* endregion helpers */\r\n\r\n/* region globalOrShared */\r\nfunction atMedia2String(selector, rulesObj) {\r\n return `${selector.trim()} ${\r\n Object.entries(rulesObj).map( ( [ selectr, rule] ) =>\r\n `${selectr}: { ${stringifyMediaRule(rule) }` ) }`;\r\n}\r\n\r\nfunction shortenRule(rule) {\r\n const shortRule = (rule || `NO RULE`).trim().slice(0, 50).replace(/\\n/g, `\\\\n`).replace(/\\s{2,}/g, ` `);\r\n return rule.length > shortRule.length ? `${shortRule.trim()}...truncated` : shortRule;\r\n}\r\n\r\nfunction stringifyMediaRule(mediaObj) {\r\n return Object.entries(mediaObj)\r\n .map( ([key, value]) => `${key}: ${value.trim()}`).join(`;\\n`);\r\n}\r\n\r\nfunction escape4RegExp(str) {\r\n return str.replace(/([*\\[\\]()-+{}.$?\\\\])/g, a => `\\\\${a}`);\r\n}\r\n\r\nfunction createRE(regexStr, ...args) {\r\n const flags = args.length && Array.isArray(args.slice(-1)) ? args.pop().join(``) : ``;\r\n\r\n return new RegExp(\r\n (args.length &&\r\n regexStr.raw.reduce( (a, v, i ) => a.concat(args[i-1] || ``).concat(v), ``) ||\r\n regexStr.raw.join(``))\r\n .split(`\\n`)\r\n .map( line => line.replace(/\\s|\\/\\/.*$/g, ``).trim().replace(/(@s!)/g, ` `) )\r\n .join(``), flags);\r\n}\r\n\r\nfunction toDashedNotation(str2Convert) {\r\n return str2Convert.replace(/[A-Z]/g, a => `-${a.toLowerCase()}`).replace(/[^--]^-|-$/, ``);\r\n}\r\n\r\nfunction tryAndCatch(fn, msg) {\r\n try { return fn(); }\r\n catch(err) { console.error( `${msg || `an error occured`}: ${err.message}` ); }\r\n}\r\n\r\nfunction prepareCssRuleFromText(rule) {\r\n return rule\r\n .replace(/\\/\\*.+?\\*\\//gm, ``)\r\n .replace(/[}{\\r\\n]/g, ``)\r\n .replace(/(data:.+?);/g, (_,b) => `${b}\\\\3b`)\r\n .split(`;`)\r\n .map(l => l.trim())\r\n .join(`;\\n`)\r\n .replaceAll(`\\\\3b`, `;`)\r\n .split(`\\n`);\r\n}\r\n\r\nfunction toRuleObject(preparedRule) {\r\n return preparedRule\r\n .reduce( (acc, v) => {\r\n const [key, value] = [\r\n v.slice(0, v.indexOf(`:`)).trim(),\r\n v.slice(v.indexOf(`:`) + 1).trim().replace(/;$|;.+(?=\\/*).+\\/$/, ``)];\r\n return key && value ? {...acc, [key]: value} : acc; }, {} );\r\n}\r\n\r\nfunction cssRuleFromText(rule) {\r\n return toRuleObject(prepareCssRuleFromText(rule));\r\n}\r\n\r\nfunction compareSelectors(s1, s2) {\r\n return s1?.replace(`::`, `:`) === s2?.replace(`::`, `:`);\r\n}\r\n/* endregion globalOrShared */\r\n", "import { allTags } from \"./EmbedResources.js\";\r\nimport { IS } from \"./Utilities.js\";\r\nlet lenient = false;\r\nconst allowUnknownHtmlTags = {\r\n on: () => lenient = true,\r\n off: () => lenient = false,\r\n};\r\nexport default {\r\n tagsRaw: allTags,\r\n allowUnknownHtmlTags,\r\n isAllowed(elem) {\r\n if (lenient) { return true; }\r\n const nodeName = IS(elem, String) ? elem.toLowerCase() : elem?.nodeName.toLowerCase() || `none`;\r\n return nodeName === `#text` || !!allTags[nodeName];\r\n },\r\n allowTag: tag2Allow => allTags[tag2Allow.toLowerCase()] = true,\r\n prohibitTag: tag2Prohibit => allTags[tag2Prohibit.toLowerCase()] = false,\r\n};\r\n", "import cleanupTagInfo from \"./HTMLTags.js\";\r\nimport {ATTRS, IS, truncate2SingleStr, escHtml, systemLog} from \"./Utilities.js\";\r\n\r\nlet logElementCreationErrors2Console = true;\r\nconst attrRegExpStore = {\r\n data: /data-[\\-\\w.\\p{L}]/ui, // data-* minimal 1 character after dash\r\n validURL: /^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp):|[^a-z]|[a-z+.\\-]+(?:[^a-z+.\\-:]|$))/i,\r\n whiteSpace: /[\\u0000-\\u0020\\u00A0\\u1680\\u180E\\u2000-\\u2029\\u205F\\u3000]/g,\r\n notAllowedValues: /^javascript|injected|noreferrer|alert|DataURL/gi\r\n};\r\n\r\nfunction logContingentErrors(elCreationInfo) {\r\n if (logElementCreationErrors2Console && Object.keys(elCreationInfo.removed).length) {\r\n const msgs = Object.entries(elCreationInfo.removed)\r\n .reduce( (acc, [k, v]) => [...acc, `${escHtml(k)} => ${v}`], [])\r\n .join(`\\\\000A`);\r\n systemLog.error(`JQx: HTML creation error(s): ${msgs}`);\r\n }\r\n}\r\n\r\nfunction elementCheck(child) {\r\n const name = child.nodeName.toLowerCase();\r\n const notAllowedCustomElementNames = [\r\n `annotation-xml`, `color-profile`, `font-face`, `font-face-src`,\r\n `font-face-uri`, `font-face-format`, `font-face-name`, `missing-glyph` ];\r\n return /-/.test(name) && !notAllowedCustomElementNames.find(v => v === name) || cleanupTagInfo.isAllowed(name);\r\n}\r\n\r\nfunction cleanupHtml(el2Clean) {\r\n const elCreationInfo = {\r\n rawHTML: el2Clean?.parentElement?.getHTML() ?? `no html`,\r\n removed: { },\r\n }\r\n\r\n if (IS(el2Clean, HTMLElement)) {\r\n [...el2Clean.childNodes].forEach(child => {\r\n if (child?.children?.length) {\r\n cleanupHtml(child);\r\n }\r\n if (child?.attributes) {\r\n const attrStore = IS(child, SVGElement) ? ATTRS.svg : ATTRS.html;\r\n\r\n [...(child ?? {attributes: []}).attributes]\r\n .forEach(attr => {\r\n const name = attr.name.trim().toLowerCase();\r\n const value = attr.value.trim().toLowerCase().replace(attrRegExpStore.whiteSpace, ``);\r\n const evilValue = name === \"href\"\r\n ? !attrRegExpStore.validURL.test(value)\r\n : attrRegExpStore.notAllowedValues.test(value);\r\n const evilAttrib = name.startsWith(`data`) ? !attrRegExpStore.data.test(name) : !!attrStore[name];\r\n\r\n if (evilValue || evilAttrib) {\r\n let val = truncate2SingleStr(attr.value || `none`, 60);\r\n val += val.length === 60 ? `...` : ``;\r\n elCreationInfo.removed[`${attr.name}`] = `attribute/property/value not allowed, removed. Value: ${\r\n val}`;\r\n child.removeAttribute(attr.name);\r\n }\r\n });\r\n }\r\n\r\n const allowed = elementCheck(child) ||\r\n child.constructor === CharacterData ||\r\n child.constructor === Comment;\r\n\r\n if (!allowed) {\r\n const tag = (child?.outerHTML || child?.textContent).trim();\r\n let tagValue = truncate2SingleStr(tag, 60) ?? `EMPTY`;\r\n tagValue += tagValue.length === 60 ? `...` : ``;\r\n elCreationInfo.removed[`<${child.nodeName?.toLowerCase()}>`] = `not allowed, not rendered. Value: ${\r\n tagValue}`;\r\n child.remove();\r\n }\r\n });\r\n }\r\n logContingentErrors(elCreationInfo);\r\n\r\n return el2Clean;\r\n}\r\nconst emphasize = str => `***${str}***`;\r\nconst getRestricted = emphasizeTag =>\r\n Object.entries(cleanupTagInfo)\r\n .reduce((acc, [key, value]) =>\r\n !value.allowed &&\r\n [...acc, (emphasizeTag && key === emphasizeTag ? emphasize(key) : key)] ||\r\n acc, []);\r\n\r\nexport { cleanupHtml, getRestricted, ATTRS};\r\n", "import { cleanupHtml, getRestricted, } from \"./DOMCleanup.js\";\r\nimport {ATTRS, IS, insertPositions, isNode, truncateHtmlStr} from \"./Utilities.js\";\r\n\r\nexport {\r\n getRestricted, createElementFromHtmlString, element2DOM,\r\n cleanupHtml, inject2DOMTree, ATTRS\r\n};\r\n\r\nfunction htmlToVirtualElement(htmlString) {\r\n const placeholderNode = document.createElement(\"div\");\r\n placeholderNode.insertAdjacentHTML(insertPositions.end, htmlString);\r\n return placeholderNode.childNodes.length\r\n ? cleanupHtml(placeholderNode)\r\n : undefined;\r\n}\r\n\r\nfunction characterDataElement2DOM(elem, root, position) {\r\n switch(true) {\r\n case IS(elem, Comment): return root.insertAdjacentHTML(position, `<!--${elem.data}-->`);\r\n case IS(elem, Text): return root.insertAdjacentText(position, elem.data || elem.textContent);\r\n default: return;\r\n }\r\n}\r\n\r\nfunction inject2DOMTree( collection = [], root = document.body, position = insertPositions.BeforeEnd ) {\r\n position = position || insertPositions.BeforeEnd;\r\n root = root?.isJQx ? root.node : root || document.body;\r\n return collection.reduce( (acc, elem) => {\r\n const created = isNode(elem) && element2DOM(elem, root, position);\r\n return created ? [...acc, created] : acc;\r\n }, []);\r\n}\r\n\r\nfunction element2DOM(elem, root = document.body, position = insertPositions.BeforeEnd) {\r\n position = position || insertPositions.BeforeEnd;\r\n root = root?.isJQx ? root?.[0] : root;\r\n\r\n return IS(elem, Comment, Text)\r\n ? characterDataElement2DOM(elem, root, position)\r\n : IS(elem, HTMLElement) ? root.insertAdjacentElement(position, elem) : undefined;\r\n}\r\n\r\nfunction createElementFromHtmlString(htmlStrOrText) {\r\n if (IS(htmlStrOrText, Text, Comment)) {\r\n return htmlStrOrText;\r\n }\r\n \r\n const testStr = htmlStrOrText?.trim();\r\n let text = testStr?.split(/<text>|<\\/text>/i) ?? [];\r\n\r\n if (text?.length) {\r\n text = text.length > 1 ? text.filter(v => v.length).shift() : undefined;\r\n }\r\n\r\n if (testStr.startsWith(`<!--`) && testStr.endsWith(`-->`)) {\r\n return document.createComment(htmlStrOrText.replace(/<!--|-->$/g, ''));\r\n }\r\n \r\n if (!!text || (IS(testStr, String) && !/^<(.+)[^>]+>/m.test(testStr))) {\r\n return document.createTextNode(text ?? testStr);\r\n }\r\n\r\n const nwElem = htmlToVirtualElement(htmlStrOrText);\r\n\r\n if (nwElem.childNodes.length < 1) {\r\n return createElementFromHtmlString(`<span data-jqxcreationerror=\"1\">${truncateHtmlStr(htmlStrOrText, 60)}</span>`);\r\n }\r\n\r\n return nwElem.children[0];\r\n}\r\n", "import { popupStyling as styleRules } from \"./EmbedResources.js\";\r\n\r\nexport default function($) {\r\n if ($.node(`#jqxPopup`)) { return; }\r\n $.logger.log(`JQx: [JQx].Popup first call. Dialog element created.`);\r\n $.dialog({id: `jqxPopup`}, $.div({ id: \"jqxPopupContent\" })).render;\r\n $.editCssRules(...styleRules);\r\n let timers = [];\r\n const [popupContent, popupNode] = [$(`#jqxPopupContent`), $.node(`#jqxPopup`)];\r\n let currentProps = {};\r\n $.handle( {\r\n type: `click, cancel`,\r\n handlers: genericPopupCloseHandler,\r\n name: \"genericPopupCloseHandler\",\r\n capture: true,\r\n about: \"A generic handler for JQx popups\"} );\r\n return Object.freeze({show: initPopup, remove: initHidePopup, removeModal});\r\n\r\n function initPopup(props) {\r\n if (popupNode.open) {\r\n switch(true) {\r\n case isCurrent(props): return;\r\n default:\r\n initHidePopup();\r\n return setTimeout(() => initPopup(props), 200);\r\n }\r\n }\r\n \r\n currentProps = {...props};\r\n let {content} = currentProps;\r\n return !($.IS(content, String, HTMLElement) || content?.isJQx) ? true : showPopup();\r\n }\r\n\r\n function initHidePopup() {\r\n if (currentProps.modal) {\r\n return failModalClose(currentProps.warnMessage);\r\n }\r\n\r\n return hidePopup();\r\n }\r\n \r\n function isCurrent(props) {\r\n for (const [key, value] of Object.entries(currentProps)) {\r\n if (value !== props[key]) { return false; }\r\n }\r\n return true;\r\n }\r\n \r\n function showPopup() {\r\n popupContent.clear();\r\n let {content, modal, closeAfter} = currentProps;\r\n modal = $.IS(modal, Boolean) ? modal : false;\r\n const closerIcon = modal ? \"\" : $.div({ id: \"closeHandleIcon\"});\r\n popupContent.append(closerIcon, $.IS(content, String) ? $.div(content) : content);\r\n popupNode.showModal();\r\n if (!modal && $.IS(closeAfter, Number)) { createTimer(initHidePopup, closeAfter); }\r\n }\r\n\r\n function hidePopup() {\r\n popupNode.close(currentProps.returnValue);\r\n clearTimers();\r\n if ($.IS(currentProps.callback, Function)) {\r\n return timers.push(setTimeout(() => currentProps.callback(currentProps.returnValue), 200));\r\n }\r\n currentProps = {};\r\n }\r\n \r\n function clearTimers() {\r\n timers.forEach(timer => clearTimeout(timer));\r\n timers = [];\r\n }\r\n\r\n function removeModal({callback, value} = {}) {\r\n currentProps.returnValue = value;\r\n currentProps.modal = false;\r\n currentProps.callback = callback || currentProps.callback;\r\n initHidePopup();\r\n }\r\n\r\n function genericPopupCloseHandler({evt}) {\r\n if ( Object.keys(currentProps).length < 1 || !popupNode.open ) { return; }\r\n \r\n if (evt.type === `cancel` && currentProps.modal) { evt.preventDefault(); }\r\n \r\n if (evt.target.closest(`#closeHandleIcon`) || !evt.target.closest(`#jqxPopupContent`)) {\r\n currentProps.activeTimer && clearTimeout(currentProps.activeTimer);\r\n return initHidePopup();\r\n }\r\n }\r\n\r\n function createTimer(callback, seconds) {\r\n if ($.IS(callback, Function) && $.IS(seconds, Number) && seconds > 0) {\r\n clearTimers();\r\n timers.push(setTimeout(callback, seconds * 1000));\r\n }\r\n }\r\n\r\n function failModalClose(warnMessage) {\r\n if (!$.IS(warnMessage, String, HTMLElement) && !warnMessage.isJQx) { return; }\r\n let modalWarningBox = popupContent.find$(`.warn`);\r\n // note: fall through is intentional.\r\n switch(true) {\r\n case modalWarningBox.is.empty: modalWarningBox = $.div({class: `warn`}, warnMessage);\r\n default: popupContent.append(modalWarningBox.addClass(`active`));\r\n createTimer(() => popupContent.find$(`.warn`).removeClass(`active`), 2);\r\n }\r\n }\r\n}\r\n", "import {IS, isNonEmptyString, getCaptureValue, getHandlerName, handlerIdCache, systemLog} from \"./Utilities.js\";\r\n\r\nexport { HandlerFactory };\r\n\r\nfunction HandlerFactory(jqx) {\r\n const store = {};\r\n const anon = `anonymous_`;\r\n \r\n function setListener(listener) {\r\n if (listener) {\r\n const {handler, capture, type} = listener;\r\n document.addEventListener(type, handler, {capture});\r\n }\r\n }\r\n \r\n function removeListener(listener) {\r\n if (listener) {\r\n const {type, handler, capture} = listener;\r\n document.removeEventListener(type, handler, {capture});\r\n }\r\n }\r\n \r\n function wrapFn4Selector(fn, selector, once, handlerName) {\r\n return function(evt) {\r\n if (!isNonEmptyString(selector)) {\r\n return fn({evt});\r\n }\r\n \r\n const elemFound = evt.target.closest(selector);\r\n if (elemFound) {\r\n const me = jqx(elemFound);\r\n fn({self: me, me, evt}); // self is legacy\r\n // to avoid listener removal on capturing/bubbling,\r\n // once is handled manually\r\n if (once) { remove(evt.type, handlerName); }\r\n }\r\n return true;\r\n }\r\n }\r\n \r\n function storedEventType(eventType) {\r\n store[eventType] = store[eventType] || {};\r\n return store[eventType];\r\n }\r\n \r\n function retrieve(eventType, name) {\r\n return Object.entries(storedEventType(eventType))\r\n .find( ([key, ]) => key === name );\r\n }\r\n \r\n function remove(eventType, name) {\r\n const listener = retrieve(eventType, name);\r\n if (listener) {\r\n removeListener(listener[1]);\r\n delete store[eventType][name];\r\n delete handlerIdCache[name];\r\n \r\n systemLog.warn(`Removed listener [${name}] for event type [${eventType}].`);\r\n }\r\n }\r\n \r\n function storeHandler(spec) {\r\n let { type, handler, name, capture, once, selector, node, about } = spec;\r\n store[type] = store[type] || {};\r\n const handlerName = getHandlerName(name || handler.name);\r\n const initialHandler = handler;\r\n if (node instanceof HTMLElement) {\r\n // Note: for multiple event types dataset.hid may be defined already\r\n const handlerID = node.dataset.hid || handlerName;\r\n node.dataset.hid = handlerID;\r\n selector = `[data-hid=${handlerID}]`;\r\n }\r\n \r\n switch(true) {\r\n case !store[type][handlerName]:\r\n systemLog.log(`JQx: created listener for event type ${type}, with handler name ${handlerName}`);\r\n store[type][handlerName] = {\r\n name: handlerName,\r\n handler: wrapFn4Selector(handler, selector, once, handlerName),\r\n capture: getCaptureValue(type, capture),\r\n once: !!once,\r\n type: type,\r\n initialHandler,\r\n selector: !!selector && selector || false,\r\n about: !!about && about || false,\r\n unListen() { remove(type, handlerName); },\r\n };\r\n return store[type][handlerName];\r\n default: return console.warn(`The listener [${handlerName}] for [${\r\n type}] exists, it is not re-assigned.`);\r\n }\r\n }\r\n // todo: maybe enable a custom unListen handler\r\n return {\r\n remove(...args) { return remove(...args); },\r\n listen: function(spec) {\r\n const { type, handler } = spec;\r\n if ( !isNonEmptyString(type) || !IS(handler, Function) ) { return; }\r\n const nwHandler = storeHandler(spec);\r\n \r\n if (nwHandler) {\r\n setListener(nwHandler);\r\n return {\r\n type,\r\n name: nwHandler.name,\r\n unListen() { remove(type, nwHandler.name); },\r\n };\r\n }\r\n },\r\n get ListenerStore() { return Object.freeze({...store}); }\r\n };\r\n}\r\n", "import {default as IS, maybe, proxyWrapper, addSymbolicExtensions, } from \"./TypeofAnything.js\";\r\nimport {ATTRS} from \"./EmbedResources.js\";\r\nimport {default as tagFNFactory} from \"./tinyDOM.js\";\r\nimport styleFactory from \"./LifeCSS.js\";\r\nimport {createElementFromHtmlString, inject2DOMTree, cleanupHtml} from \"./DOM.js\";\r\nimport PopupFactory from \"./Popup.js\";\r\nimport { HandlerFactory } from \"./HandlerFactory.js\";\r\nimport tagLib from \"./HTMLTags.js\";\r\naddSymbolicExtensions();\r\nconst systemLog = systemLogFactory();\r\nconst allwaysCaptureEventTypes = [\r\n `load`, `unload`, `scroll`, `focus`, `blur`, `DOMNodeRemovedFromDocument`,\r\n `DOMNodeInsertedIntoDocument`, `loadstart`, `progress`, `error`, `abort`,\r\n `load`, `loadend`, `pointerenter`, `pointerleave`, `readystatechange`];\r\nconst insertPositions = Object.freeze(new Proxy({\r\n start: \"afterbegin\", afterbegin: \"afterbegin\",\r\n end: \"beforeend\", beforeend: \"beforeend\",\r\n before: \"beforebegin\", beforebegin: \"beforebegin\",\r\n after: \"afterend\", afterend: \"afterend\" }, {\r\n get(obj, key) { return obj[String(key).toLowerCase()] ?? obj[key]; }\r\n}));\r\nconst characters4RandomString = [...Array(26)]\r\n .map((x, i) => String.fromCharCode(i + 65))\r\n .concat([...Array(26)].map((x, i) => String.fromCharCode(i + 97)))\r\n .concat([...Array(10)].map((x, i) => `${i}`));\r\nconst datasetKeyProxy = Object.freeze({\r\n get(obj, key) { return obj[toCamelcase(key)] || obj[key]; },\r\n enumerable: false,\r\n configurable: false\r\n});\r\nconst handlerIdCache = {};\r\n\r\nexport {\r\n after, applyStyle, assignAttrValues, ATTRS, beforeOrAfter, checkProp, cleanupHtml, clearAllTimers,\r\n cloneAndDestroy, convert2Bool, createElementFromHtmlString, datasetKeyProxy, ElemArray2HtmlString, emptyElement,\r\n escHtml, findParentScrollDistance, getAttributesForLogging, getCaptureValue, getHandlerName, HandlerFactory,\r\n handlerIdCache, inject2DOMTree, input2Collection, insertPositions, IS, isArrayOfHtmlElements, isArrayOfHtmlStrings,\r\n isComment, isCommentOrTextNode, isHtmlString, isModal, isNode, isNonEmptyString, isText, isVisible, isWritable,\r\n logTime, maybe, pad0,PopupFactory, proxyWrapper, randomNr, randomString, resolveEventTypeParameter, setData,\r\n styleFactory, systemLog, tagFNFactory, tagLib, toCamelcase, toDashedNotation, truncate2SingleStr, truncateHtmlStr,\r\n ucFirst,\r\n};\r\n\r\nfunction clearAllTimers() {\r\n let id = setTimeout(() => {});\r\n while (id >= 0) { clearTimeout(id--); }\r\n}\r\n\r\nfunction getHandlerName(name) {\r\n const validName = isNonEmptyString(name) && !/^handler|handlers$/gi.test(name.trim())\r\n return validName ? name.trim() : uniqueHandlerID();\r\n}\r\n\r\nfunction getAttributesForLogging(instance) {\r\n const isElem = !!instance.node && !IS(instance, Text, Comment);\r\n switch(true) {\r\n case isElem:\r\n const dataset = instance.node.dataset ? Object.keys(instance.node.dataset)\r\n .map(v => `[data-${v}]`) : [];\r\n const relevantAttrs = [\r\n instance.attr(`id`) && `#${instance?.attr(`id`)}` || undefined,\r\n instance.attr(`class`) && instance?.attr(`class`).split(` `).map(v => `.${v}`).join(', ') || undefined,\r\n dataset.length > 0 && dataset.join(`, `) || undefined,\r\n ];\r\n const attrs = relevantAttrs.filter(v => !!v).join(`, `) || [];\r\n return attrs.length ? `(${attrs})` : ``;\r\n default: return ``;\r\n }\r\n}\r\n\r\nfunction uniqueHandlerID(idCache) {\r\n const anonID = `anonymous_${Math.random().toString(36).slice(2)}`;\r\n \r\n if (!handlerIdCache[anonID]) {\r\n handlerIdCache[anonID] = anonID;\r\n return anonID;\r\n }\r\n \r\n return uniqueHandlerID();\r\n}\r\n\r\nfunction getCaptureValue(eventType, captureValue) {\r\n return !!(allwaysCaptureEventTypes.find(t => t === eventType)) || !!captureValue;\r\n}\r\n\r\nfunction checkProp(prop) {\r\n return prop.startsWith(`data`) || ATTRS.html.find(attr => prop.toLowerCase() === attr);\r\n}\r\n\r\nfunction emptyElement(el) {\r\n return el && (el.textContent = \"\");\r\n}\r\n\r\nfunction findParentScrollDistance(node, distance = 0, top = true) {\r\n node = node?.parentElement;\r\n const what = top ? `scrollTop` : `scrollLeft`;\r\n distance += node ? node[what] : 0;\r\n return !node ? distance : findParentScrollDistance(node, distance, top);\r\n}\r\n\r\nfunction isNonEmptyString(str, minlen = 1) {\r\n minlen = IS(minlen, Number) && minlen || 1;\r\n return IS(str, String) && str.length >= minlen;\r\n}\r\n\r\nfunction truncate2SingleStr(str, maxLength = 120) {\r\n return truncateHtmlStr(str, maxLength).replace(/&lt;/g, `<`);\r\n}\r\n\r\nfunction truncateHtmlStr(str, maxLength = 120) {\r\n return `${str}`\r\n .trim()\r\n .slice(0, maxLength)\r\n .replace(/>\\s+</g, `><`)\r\n .replace(/</g, `&lt;`)\r\n .replace(/\\s{2,}/g, ` `)\r\n .replace(/\\n/g, `\\\\n`) + (str.length > maxLength ? ` &hellip;` : ``).trim();\r\n}\r\n\r\nfunction escHtml(html) {\r\n switch(true) {\r\n case IS(html, String):\r\n const tmpDiv = document.createElement(\"div\");\r\n tmpDiv.append(html);\r\n return tmpDiv.innerHTML;\r\n default: return html;\r\n }\r\n}\r\n\r\n/* private */\r\nfunction decodeForConsole(something) {\r\n return IS(something, String) &&\r\n Object.assign(\r\n document.createElement(`textarea`),\r\n {innerHTML: something}).textContent || something;\r\n}\r\n\r\nfunction systemLogFactory() {\r\n let [on, disabled] = [false, true];\r\n \r\n const backLog = [];\r\n const systemLogger = {\r\n get on() { on = true; return systemLogger; },\r\n get off() { on = false; return systemLogger; },\r\n get disable() { disabled = true; return systemLogger; },\r\n get enable() { disabled = false; return systemLogger; },\r\n get backLog() { return backLog; },\r\n };\r\n \r\n function disable() {\r\n disabled = true;\r\n }\r\n \r\n function enable() {\r\n disabled = false;\r\n }\r\n \r\n function error(...args) {\r\n backLog.unshift(...args.map(arg => `${logTime()} \u2A3B ${decodeForConsole(arg)}`));\r\n console.error(backLog.slice(0, args.length).join(`\\n`));\r\n return systemLogger;\r\n }\r\n \r\n function warn(...args) {\r\n backLog.unshift(...args.map(arg => `${logTime()} \u26A0 ${decodeForConsole(arg)}`));\r\n console.warn(backLog.slice(0, args.length).join(`\\n`));\r\n return systemLogger;\r\n }\r\n \r\n function log(...args) {\r\n const entryTxt = args.map(arg => `${logTime()} \u2714 ${decodeForConsole(arg)}`);\r\n !disabled && backLog.unshift(...entryTxt);\r\n switch(on) {\r\n case true: console.log(entryTxt.join(`\\n`));\r\n default: return systemLogger;\r\n }\r\n }\r\n \r\n Object.defineProperties(systemLogger, {\r\n log: {value: log, enumerable: false},\r\n error: {value: error, enumerable: false},\r\n warn: {value: warn, enumerable: false},\r\n });\r\n \r\n return Object.freeze(systemLogger);\r\n}\r\n\r\nfunction logTime() {\r\n return ((d) =>\r\n `[${pad0(d.getHours())}:${pad0(d.getMinutes())}:${\r\n pad0(d.getSeconds())}.${pad0(d.getMilliseconds(), 3)}]`)(new Date());\r\n}\r\n\r\nfunction assignAttrValues(el, keyValuePairs) {\r\n if (el) {\r\n for (let [key, value] of Object.entries(keyValuePairs)) {\r\n key = toDashedNotation(key);\r\n if (key.startsWith(`data`)) {\r\n return setData(el, value);\r\n }\r\n \r\n if (IS(value, String) && checkProp(key)) {\r\n el.setAttribute(key, value.split(/[, ]/)?.join(` `));\r\n }\r\n }\r\n }\r\n}\r\n\r\nfunction setData(el, keyValuePairs) {\r\n if (el && IS(keyValuePairs, Object)) {\r\n for (const [key, value] of Object.entries(keyValuePairs)) {\r\n el.setAttribute(`data-${toDashedNotation(key)}`, value);\r\n }\r\n }\r\n}\r\n\r\nfunction input2Collection(input) {\r\n return !input ? []\r\n : input.EL ? [input.EL]\r\n : IS(input, NodeList) ? [...input]\r\n : isNode(input) ? [input]\r\n : isArrayOfHtmlElements(input) ? input\r\n : input.isJQx ? input.collection : undefined;\r\n}\r\n\r\n\r\n\r\nfunction after(instance, elem2AddAfter) {\r\n return instance.andThen(elem2AddAfter);\r\n}\r\n\r\nfunction beforeOrAfter(instance, jqx, after = true, ...toAdd) {\r\n if (instance.is.empty) {\r\n systemLog.log(`[JQx instance].[before(Me) | after(Me) | andThen]: instance is empty.`, );\r\n return instance;\r\n }\r\n \r\n toAdd = toAdd.map(elem => elem.isJQx ? elem.node : IS(elem, String) ? jqx(elem).node ?? elem : elem );\r\n const noCando = toAdd.find(elem => !IS(elem, String, Element));\r\n \r\n if (noCando) {\r\n const bOrA = after ? `after` : `before`;\r\n systemLog.log(`[JQx instance].[${bOrA}(Me)]: invalid/-sufficient input.`, );\r\n return instance;\r\n }\r\n \r\n instance.node[after ? `after` : `before`](...toAdd);\r\n \r\n return instance;\r\n}\r\n\r\nfunction before(instance, elem2AddBefore) {\r\n return instance.andThen(elem2AddBefore, true);\r\n}\r\n\r\nfunction isNode(input) {\r\n return IS(input, Text, HTMLElement, Comment)\r\n}\r\n\r\nfunction applyStyle(el, rules) {\r\n if (IS(rules, Object)) {\r\n for (let [key, value] of Object.entries(rules)) {\r\n let priority;\r\n if (/!important/i.test(value)) {\r\n value = value.slice(0, value.indexOf(`!`)).trim();\r\n priority = 'important';\r\n }\r\n \r\n el.style.setProperty(toDashedNotation(key), value, priority)\r\n }\r\n }\r\n}\r\n\r\nfunction cloneAndDestroy(elem) {\r\n const cloned = elem.cloneNode(true)\r\n cloned.removeAttribute && cloned.removeAttribute(`id`);\r\n elem.isConnected ? elem.remove() : elem = null;\r\n return cloned;\r\n}\r\n\r\n\r\nfunction isVisible(el) {\r\n if (!IS(el, HTMLElement)) { return undefined; }\r\n const elStyle = el.style;\r\n const computedStyle = getComputedStyle(el);\r\n const invisible = !![elStyle.visibility, computedStyle.visibility].includes(\"hidden\");\r\n const noDisplay = !![elStyle.display, computedStyle.display].includes(\"none\");\r\n const hidden = !!el.hidden;\r\n const zeroHeightOrWidth = parseInt(computedStyle.height) < 1 || parseInt(computedStyle.width) < 1;\r\n const offscreen = el.offsetTop < 0 || (el.offsetLeft + el.offsetWidth) < 0\r\n || el.offsetLeft > document.body.offsetWidth;\r\n const noOpacity = +computedStyle.opacity === 0 || +(elStyle.opacity || 1) === 0;\r\n return !(hidden || offscreen || noOpacity || noDisplay || invisible || zeroHeightOrWidth);\r\n}\r\n\r\nfunction isWritable(elem) {\r\n if (elem?.isConnected) {\r\n return !![...document.querySelectorAll(`:is(:read-write)`)]\r\n .find(el => el === elem);\r\n }\r\n \r\n return false;\r\n}\r\n\r\nfunction ElemArray2HtmlString(elems) {\r\n return elems?.filter(el => el).reduce((acc, el) =>\r\n acc.concat(isComment(el) ? `<!--${el.data}-->`\r\n : isCommentOrTextNode(el) ? el.textContent\r\n : el.outerHTML), ``);\r\n}\r\n\r\n/* private */\r\nfunction pad0(nr, n=2) {\r\n return `${nr}`.padStart(n, `0`);\r\n}\r\n\r\nfunction randomNr(max, min = 0) {\r\n [max, min] = [Math.floor(max), Math.ceil(min)];\r\n return Math.floor( ([...crypto.getRandomValues(new Uint32Array(1))].shift() / 2 ** 32 ) * (max - min + 1) + min );\r\n}\r\n\r\nfunction randomString() {\r\n return `_${shuffle(characters4RandomString).slice(0, 8).join(``)}`;\r\n}\r\n\r\nfunction resolveEventTypeParameter (maybeTypes) {\r\n maybeTypes = IS(maybeTypes, String) && /,/.test(maybeTypes)\r\n ? maybeTypes\r\n .split(`,`)\r\n .map(t => t.trim().toLowerCase())\r\n .filter( t => t.length > 0)\r\n : maybeTypes;\r\n return IS(maybeTypes, Array)\r\n ? maybeTypes\r\n : IS(maybeTypes, String) && maybeTypes?.trim().toLowerCase() || ``;\r\n}\r\n\r\nfunction isModal(elem) {\r\n if (elem?.isConnected) {\r\n return !![...document.querySelectorAll(`:is(:modal)`)]\r\n .find(el => el === elem) ? true : false;\r\n }\r\n \r\n return false;\r\n}\r\n\r\nfunction convert2Bool(value, defaultValue) {\r\n // Valid input values: 0|false|f|1|true|t (case insensitive)\r\n value = String(value).trim();\r\n switch (true) {\r\n case /^(0|false|f)$/i.test(value):\r\n return false;\r\n case /^(1|true|t)$/i.test(value):\r\n return true;\r\n default:\r\n return defaultValue;\r\n }\r\n}\r\n\r\n/* private */\r\nfunction shuffle(array) {\r\n let i = array.length;\r\n while (i--) {\r\n const ri = randomNr(i);\r\n [array[i], array[ri]] = [array[ri], array[i]];\r\n }\r\n return array;\r\n}\r\n\r\nfunction toCamelcase(str2Convert) {\r\n return IS(str2Convert, String)\r\n ? str2Convert.toLowerCase()\r\n .split(`-`)\r\n .map( (str, i) => i && `${ucFirst(str)}` || str)\r\n .join(``)\r\n : str2Convert;\r\n}\r\n\r\nfunction toDashedNotation(str2Convert) {\r\n return str2Convert.replace(/[A-Z]/g, a => `-${a.toLowerCase()}`).replace(/^-|-$/, ``);\r\n}\r\n\r\nfunction ucFirst([first, ...theRest]) {\r\n return `${first.toUpperCase()}${theRest.join(``)}`;\r\n}\r\n\r\nfunction isCommentOrTextNode(node) {\r\n return IS(node, Comment, Text);\r\n}\r\n\r\nfunction isComment(input) {\r\n IS(input, Comment);\r\n}\r\n\r\nfunction isText(input) {\r\n return IS(input, Text);\r\n}\r\n\r\nfunction isHtmlString(input) {\r\n return IS(input, String) && /^<|>$/.test(`${input}`.trim());\r\n}\r\n\r\nfunction isArrayOfHtmlElements(input) {\r\n return IS(input, Array) && !input?.find(el => !isNode(el));\r\n}\r\n\r\nfunction isArrayOfHtmlStrings(input) {\r\n return IS(input, Array) && !input?.find(s => !isHtmlString(s));\r\n}\r\n", "import {\r\n after, applyStyle, assignAttrValues, beforeOrAfter, checkProp, cleanupHtml, clearAllTimers, cloneAndDestroy,\r\n convert2Bool, createElementFromHtmlString, datasetKeyProxy, ElemArray2HtmlString, emptyElement, escHtml,\r\n findParentScrollDistance, getAttributesForLogging, getHandlerName, HandlerFactory, inject2DOMTree, input2Collection,\r\n insertPositions, IS, isArrayOfHtmlElements, isArrayOfHtmlStrings, isComment, isCommentOrTextNode, isHtmlString,\r\n isModal, isNode, isNonEmptyString, isText, isVisible, isWritable, logTime, maybe, PopupFactory, proxyWrapper,\r\n randomNr, randomString, resolveEventTypeParameter, setData, styleFactory, systemLog, tagFNFactory, tagLib,\r\n toCamelcase, toDashedNotation, truncate2SingleStr, truncateHtmlStr,\r\n} from \"../Resource/Common/Utilities.js\"\r\n\r\nexport {\r\n after, applyStyle, assignAttrValues, beforeOrAfter, checkProp, cleanupHtml, clearAllTimers, cloneAndDestroy,\r\n convert2Bool, createElementFromHtmlString, css, datasetKeyProxy, ElemArray2HtmlString, emptyElement, escHtml,\r\n ExamineElementFeatureFactory, findParentScrollDistance, getAttributesForLogging, getHandlerName, getNodeContentForLog,\r\n HandlerFactory, inject2DOMTree, input2Collection, insertPositions, IS, isArrayOfHtmlElements, isArrayOfHtmlStrings,\r\n isCommentOrTextNode, isHtmlString, isNode, isNonEmptyString, logTime, loop, maybe, PopupFactory, proxyWrapper,\r\n randomNr, randomString, resolveEventTypeParameter, selectedFactoryHelpers, setCollectionFromCssSelector, setData,\r\n styleFactory, systemLog, tagFNFactory, tagLib, toCamelcase, toDashedNotation, truncate2SingleStr, truncateHtmlStr,\r\n};\r\n\r\nfunction loop(instance, callback) {\r\n const cleanCollection = instance.collection.filter(el => !isCommentOrTextNode(el));\r\n for (let i = 0; i < cleanCollection.length; i += 1) {\r\n callback(cleanCollection[i], i);\r\n }\r\n\r\n return instance;\r\n}\r\n\r\nfunction getNodeContentForLog(instance) {\r\n if (instance.node) {\r\n return IS(instance.node, Comment)\r\n ? `<!--${instance.node.textContent}-->`\r\n : instance.HTML.get(1).split(`>`)[0] + `>...`\r\n }\r\n return ``;\r\n}\r\n\r\nfunction setCollectionFromCssSelector(input, root, self) {\r\n const selectorRoot = root !== document.body && (IS(input, String) && input.toLowerCase() !== \"body\") ? root : document;\r\n if (!IS(input, String) || input.trim().length < 1) { return; }\r\n try { self.collection = [...selectorRoot.querySelectorAll(input)]; }\r\n catch (err) { systemLog.warn(`JQx: Invalid CSS querySelector. [${!IS(input, String) ? `Not a string!` : input}]`); }\r\n}\r\n\r\nfunction selectedFactoryHelpers() {\r\n return {\r\n isCommentOrTextNode, isNode, isComment, isText, isHtmlString, isArrayOfHtmlElements,\r\n isArrayOfHtmlStrings, ElemArray2HtmlString, input2Collection, setCollectionFromCssSelector,\r\n cssRuleEdit: styleFactory({createWithId: `JQxStylesheet`}) };\r\n}\r\n\r\nfunction ExamineElementFeatureFactory() {\r\n const notApplicable = `n/a`;\r\n const noElements = Object.freeze({\r\n notInDOM: notApplicable, writable: notApplicable, modal: notApplicable, empty: true,\r\n open: notApplicable, visible: notApplicable, });\r\n\r\n return self => {\r\n const firstElem = self.node;\r\n\r\n return IS(firstElem, Node)\r\n ? Object.freeze({\r\n get writable() {\r\n return isWritable(firstElem);\r\n },\r\n get modal() {\r\n return isModal(firstElem);\r\n },\r\n get inDOM() {\r\n return firstElem.isConnected;\r\n },\r\n get open() {\r\n return firstElem.open ?? false;\r\n },\r\n get visible() {\r\n return isVisible(firstElem);\r\n },\r\n get disabled() {\r\n return firstElem.hasAttribute(\"readonly\") || firstElem.hasAttribute(\"disabled\");\r\n },\r\n get empty() {\r\n return self.collection.length < 1;\r\n },\r\n get virtual() {\r\n return self.isVirtual;\r\n }\r\n })\r\n : noElements;\r\n };\r\n}\r\n\r\nfunction css(el, keyOrKvPairs, value, jqx) {\r\n if (value && IS(keyOrKvPairs, String)) {\r\n keyOrKvPairs = {[keyOrKvPairs]: value === \"-\" ? \"\" : value};\r\n }\r\n\r\n let nwClass = undefined;\r\n\r\n if (keyOrKvPairs.className) {\r\n nwClass = keyOrKvPairs.className;\r\n delete keyOrKvPairs.className;\r\n }\r\n\r\n const classExists = ([...el.classList].find(c => c.startsWith(`JQxClass-`) || nwClass && c === nwClass));\r\n nwClass = classExists || nwClass || `JQxClass-${randomString().slice(1)}`;\r\n jqx.editCssRule(`.${nwClass}`, keyOrKvPairs);\r\n el.classList.add(nwClass);\r\n}\r\n", "import {\r\n IS, isNode, ExamineElementFeatureFactory, beforeOrAfter,\r\n isNonEmptyString, toDashedNotation, escHtml, systemLog, insertPositions,\r\n datasetKeyProxy, loop, cloneAndDestroy, setData,\r\n findParentScrollDistance, emptyElement, checkProp, css, assignAttrValues,\r\n applyStyle, createElementFromHtmlString, inject2DOMTree,\r\n} from \"./JQxUtilities.js\";\r\n\r\nconst instanceIs = ExamineElementFeatureFactory();\r\n\r\nexport default function(jqx) {\r\n return {\r\n factoryExtensions: factoryExtensionsFactory(jqx),\r\n instanceExtensions: instanceExtensionsFactory(jqx),\r\n }\r\n};\r\n\r\nfunction factoryExtensionsFactory(jqx) {\r\n return {\r\n data(instance) {\r\n return {\r\n get all() {\r\n return new Proxy(instance[0]?.dataset ?? {}, datasetKeyProxy);\r\n },\r\n set(valuesObj = {}) {\r\n if (!instance.is.empty && IS(valuesObj, Object)) {\r\n for (const [key, value] of Object.entries(valuesObj)) {\r\n instance.setData({[key]: value});\r\n }\r\n }\r\n return instance;\r\n },\r\n get(key, whenUndefined) {\r\n return instance.data.all[key] ?? whenUndefined;\r\n },\r\n add(valuesObj = {}) {\r\n if (!instance.is.empty && IS(valuesObj, Object)) {\r\n for (const [key, value] of Object.entries(valuesObj)) {\r\n instance.setData({[key]: value});\r\n }\r\n }\r\n return instance;\r\n },\r\n remove(key) {\r\n instance[0]?.removeAttribute(`data-${toDashedNotation(key)}`);\r\n return instance;\r\n },\r\n };\r\n },\r\n dimensions(instance) {\r\n if (instance.is.empty) {\r\n systemLog.error(`[JQx instance].dimensions called on empty instance`);\r\n return { error: `[JQx instance].dimensions: NO ELEMENTS` };\r\n }\r\n let {node} = instance;\r\n const boundingRect = node.getBoundingClientRect().toJSON();\r\n boundingRect.scrollTopDistance = findParentScrollDistance(node, 0);\r\n boundingRect.scrollLeftDistance = findParentScrollDistance(node, 0, false);\r\n return boundingRect;\r\n },\r\n node(instance) { return instance[0]; },\r\n HTML(instance) {\r\n return {\r\n get(outer, escaped) {\r\n if (instance.is.empty) {\r\n return `NO ELEMENTS IN COLLECTION`;\r\n }\r\n const html = outer ? instance.outerHtml : instance.html();\r\n return escaped ? escHtml(html) : html;\r\n },\r\n set(content, append = false, escape = false) {\r\n content = content.isJQx ? content.HTML.get(1) : content;\r\n const isString = IS(content, String);\r\n content = isString && escape ? escHtml(content) : content;\r\n if (isString && (content || ``).trim().length) { instance.html(content, append); }\r\n return instance;\r\n },\r\n replace(content, escape = false) {\r\n return instance.HTML.set(content, false, escape);\r\n },\r\n append(content, escape = false) {\r\n content = IS(content, HTMLElement)\r\n ? jqx(content).HTML.get(1) : content.isJQx ? content.HTML.get(1) : content;\r\n return instance.HTML.set(content, true, escape);\r\n },\r\n insert(content, escape = false) {\r\n content = IS(content, HTMLElement)\r\n ? jqx(content).HTML.get(1) : content.isJQx ? content.HTML.get(1) : content;\r\n return instance.HTML.set(content + instance.HTML.get(), false, escape);\r\n },\r\n };\r\n },\r\n is(instance) { return instanceIs(instance); },\r\n length(instance) { return instance.collection.length; },\r\n outerHtml(instance) { return (instance.first() || {outerHTML: undefined}).outerHTML; },\r\n parent(instance) {\r\n const maybeParent = jqx(instance[0]?.parentNode);\r\n return !maybeParent.is.empty ? maybeParent : instance;\r\n },\r\n render(instance) {\r\n switch(true) {\r\n case !instance.is.empty: return instance.toDOM();\r\n default:\r\n jqx.logger.warn(`[JQx.render]: empty collection`);\r\n return instance;\r\n }\r\n },\r\n Style(instance) {\r\n return {\r\n get computed() { return !instance.is.empty ? getComputedStyle(instance[0]) : {}; },\r\n inline(styleObj) {\r\n return instance.style(styleObj);\r\n },\r\n inSheet(styleObj) {\r\n return instance.css(styleObj)\r\n },\r\n valueOf(key) {\r\n return !instance.is.empty ? getComputedStyle(instance[0])[toDashedNotation(key)] : undefined;\r\n },\r\n nwRule(rule) {\r\n return instance.Style.byRule({rules: rule})\r\n },\r\n byRule({classes2Apply = [], rules = []} = {}) {\r\n const isSingleRule = IS(rules, String);\r\n const addClassNameOrID = isSingleRule && !classes2Apply.length ? rules.split(`{`)[0].trim() : ``;\r\n rules = rules && IS(rules, String) ? [rules] : rules;\r\n classes2Apply = classes2Apply && IS(classes2Apply, String) ? [classes2Apply] : classes2Apply;\r\n \r\n if (rules?.length || classes2Apply?.length) {\r\n rules?.length && jqx.editCssRules(...rules);\r\n \r\n if (classes2Apply) {\r\n for(const selector of classes2Apply) { instance.addClass(selector); }\r\n }\r\n }\r\n \r\n if (addClassNameOrID?.startsWith(`.`)) {\r\n instance.addClass(addClassNameOrID.slice(1));\r\n }\r\n \r\n if (addClassNameOrID?.startsWith(`#`) && !instance.attr(`id`)) {\r\n instance.prop({id: addClassNameOrID.slice(1)});\r\n }\r\n \r\n return instance;\r\n },\r\n };\r\n }\r\n }\r\n}\r\n\r\nfunction instanceExtensionsFactory(jqx) {\r\n return {\r\n addClass(instance, ...classNames) {\r\n return loop(instance, el => el && classNames.forEach(cn => el.classList.add(cn)));\r\n },\r\n after(instance, ...elems) { return beforeOrAfter(instance, jqx, true, ...elems); },\r\n afterMe(instance, ...elems) { return beforeOrAfter(instance, jqx, true, ...elems); },\r\n andThen(instance, ...elems) { return beforeOrAfter(instance, jqx, true, ...elems); },\r\n append(instance, ...elems2Append) {\r\n if (instance.is.empty || elems2Append.length < 1) { return instance;}\r\n const shouldMove = instance.length === 1;\r\n for (let elem2Append of elems2Append) {\r\n if (!elem2Append.isJQx && isNonEmptyString(elem2Append)) {\r\n const elem2Append4Test = elem2Append.trim();\r\n const isPlainString = !/^<(.+)[^>]+>$/m.test(elem2Append4Test);\r\n let toAppend = isPlainString ? jqx.text(elem2Append) : createElementFromHtmlString(elem2Append);\r\n loop(instance, el => el.append(shouldMove ? toAppend : cloneAndDestroy(toAppend)));\r\n }\r\n\r\n if (isNode(elem2Append)) {\r\n loop(instance, el => el.append(shouldMove ? elem2Append : cloneAndDestroy(elem2Append)));\r\n }\r\n\r\n if (elem2Append.isJQx && !elem2Append.is.empty) {\r\n loop(instance, el =>\r\n elem2Append.collection.forEach(elem =>\r\n el.append(shouldMove ? elem : cloneAndDestroy(elem)))\r\n );\r\n }\r\n }\r\n return instance;\r\n },\r\n appendTo(instance, appendTo) {\r\n appendTo = typeof appendTo === `string` ? jqx(appendTo) : appendTo;\r\n switch(true) {\r\n case !appendTo?.isJQx && !IS(appendTo, HTMLElement) || appendTo?.collection?.length < 1:\r\n jqx.warn(`[JQx instance].appendTo: invalid input`);\r\n return instance;\r\n default:\r\n (!appendTo.isJQx ? jqx(appendTo) : appendTo).append(instance);\r\n return instance;\r\n }\r\n },\r\n attr(instance, keyOrObj, value) {\r\n if (!instance.node || IS(instance.node, Text, Comment)) { return instance }\r\n\r\n if (!value && isNonEmptyString(keyOrObj)) {\r\n keyOrObj = toDashedNotation(keyOrObj);\r\n\r\n if (keyOrObj === `class`) {\r\n return [...instance.node.classList]?.join(` `);\r\n }\r\n \r\n return instance.node.getAttribute(keyOrObj);\r\n }\r\n\r\n if (isNonEmptyString(keyOrObj) && value) {\r\n keyOrObj = toDashedNotation(keyOrObj);\r\n\r\n switch(true) {\r\n case keyOrObj.startsWith(`data-`):\r\n keyOrObj = { data: {[keyOrObj.replace(`data-`, ``)]: value } };\r\n break;\r\n default: keyOrObj = { [keyOrObj]: value };\r\n }\r\n }\r\n\r\n if (IS(keyOrObj, Object) && !instance.is.empty) {\r\n assignAttrValues(instance.node, keyOrObj);\r\n }\r\n\r\n return instance;\r\n },\r\n before(instance, ...elems) {\r\n return beforeOrAfter(instance, jqx, false, ...elems);\r\n },\r\n beforeMe(instance, ...elems) {\r\n beforeOrAfter(instance, jqx, false, ...elems)\r\n },\r\n clear(instance) { return loop(instance, emptyElement); },\r\n closest(instance, selector) {\r\n const theClosest = isNonEmptyString(selector) ? instance.node?.closest(selector) : undefined;\r\n return theClosest ? jqx(theClosest) : instance;\r\n },\r\n computedStyle(instance, property) {\r\n const {node} = instance;\r\n return node && getComputedStyle(node)[property];\r\n },\r\n css(instance, keyOrKvPairs, value) {\r\n return loop(instance, el => css(el, keyOrKvPairs, value, jqx));\r\n },\r\n duplicate(instance, toDOM = false, root = document.body) {\r\n switch(true) {\r\n case instance.is.empty:\r\n systemLog.error(`Duplicating an empty JQx instance is not possible`)\r\n return instance;\r\n default:\r\n const clone = instance.collection[0].cloneNode(true);\r\n clone.childNodes.forEach((node) => { node.removeAttribute && node?.removeAttribute(`id`) });\r\n return toDOM ? jqx(clone).toDOM(root) : jqx.virtual(clone);\r\n }\r\n },\r\n each(instance, cb) { return loop(instance, cb); },\r\n empty(instance) { return loop(instance, emptyElement); },\r\n find(instance, selector) {\r\n return instance.collection.length > 0 ? [...instance.first()?.querySelectorAll(selector)] : [];\r\n },\r\n find$(instance, selector) {\r\n return instance.collection.length > 0 ? jqx(selector, instance) : instance;\r\n },\r\n first(instance, asJQxInstance = false) {\r\n return instance.collection.length > 0\r\n ? asJQxInstance ? instance.single() : instance.collection[0]\r\n : undefined;\r\n },\r\n first$(instance, indexOrSelector) {\r\n return instance.single(indexOrSelector);\r\n },\r\n getData(instance, dataAttribute, valueWhenFalsy) {\r\n return instance.node?.dataset?.[dataAttribute] || valueWhenFalsy;\r\n },\r\n hasClass(instance, ...classNames) {\r\n return instance.is.empty || !instance.node.classList.length\r\n ? false\r\n : classNames.find(cn => instance.node.classList.contains(cn)) && true || false;\r\n },\r\n hide(instance) { return loop(instance, el => applyStyle(el, {display: `none !important`})); },\r\n html(instance, htmlValue, append) {\r\n switch(true) {\r\n case instance.is.empty && !isNonEmptyString(htmlValue): return \"\";\r\n case !isNonEmptyString(htmlValue): return instance.node?.getHTML() ?? ``;\r\n default:\r\n const nwElement = createElementFromHtmlString(\r\n `<div>${htmlValue.isJQx ? htmlValue.HTML.get(true) : htmlValue}</div>` );\r\n const cb = el => {\r\n el.textContent = !append ? `` : el.textContent;\r\n return el.insertAdjacentHTML(jqx.at.end, nwElement.getHTML());\r\n }\r\n return loop(instance, cb);\r\n }\r\n },\r\n htmlFor(instance, forSelector, htmlString = \"\", append = false) {\r\n if (instance.is.empty || !isNonEmptyString(forSelector) || !isNonEmptyString(htmlString)) { return instance; }\r\n const el2Change = instance.find$(forSelector);\r\n if (el2Change.length < 1) { return instance; }\r\n const nwElement = createElementFromHtmlString(`<span>${htmlString}</span>`);\r\n el2Change.each(el => {\r\n if (!append) { el.textContent = ``; }\r\n el.insertAdjacentHTML(jqx.at.end, nwElement?.getHTML());\r\n });\r\n\r\n return instance;\r\n },\r\n isEmpty(instance) { return !!!instance.node; },\r\n nth$(instance, indexOrSelector) { return instance.single(indexOrSelector); },\r\n on(instance, type, ...callback) {\r\n switch(true) {\r\n case instance.is.empty || !IS(type, String, Array) || !isNonEmptyString(type) || callback.length < 1:\r\n return instance;\r\n default: jqx.handle({type, node: instance.node, handler: callback});\r\n return instance;\r\n }\r\n },\r\n once(instance, type, ...callback) {\r\n switch(true) {\r\n case instance.is.empty || !IS(type, String, Array) || !isNonEmptyString(type) || callback.length < 1:\r\n return instance;\r\n default:\r\n jqx.handle({type, once: true, node: instance.node, handler: callback});\r\n return instance\r\n }\r\n },\r\n prepend(instance, ...elems2Prepend) {\r\n if (instance.is.empty || !elems2Prepend) { return; }\r\n const shouldMove = instance.length === 1;\r\n\r\n for (let elem2Prepend of elems2Prepend) {\r\n if (isNonEmptyString(elem2Prepend)) {\r\n elem2Prepend = elem2Prepend.trim();\r\n const isPlainString = !/^<(.+)[^>]+>$/m.test(elem2Prepend);\r\n let toPrepend = isPlainString ? jqx.text(elem2Prepend) : createElementFromHtmlString(elem2Prepend);\r\n toPrepend = shouldMove ? toPrepend : cloneAndDestroy(toPrepend);\r\n loop(instance, el => el.prepend(toPrepend.cloneNode(true)));\r\n }\r\n\r\n if (isNode(elem2Prepend)) {\r\n loop(instance, el => el.prepend(shouldMove ? elem2Prepend : cloneAndDestroy(elem2Prepend)));\r\n }\r\n\r\n if (elem2Prepend.isJQx && !elem2Prepend.is.empty) {\r\n elem2Prepend.collection.length > 1 && elem2Prepend.collection.reverse();\r\n loop(instance, el => loop( elem2Prepend, elem => el.prepend(shouldMove ? elem : cloneAndDestroy(elem)) ) );\r\n elem2Prepend.collection.reverse();\r\n }\r\n }\r\n \r\n return instance;\r\n },\r\n prependTo(instance, prependTo) {\r\n prependTo = typeof prependTo === `string` ? jqx(prependTo) : prependTo;\r\n switch(true) {\r\n case !prependTo?.isJQx && !IS(prependTo, HTMLElement) || prependTo?.collection?.length < 1:\r\n jqx.warn(`[JQx instance].appendTo: invalid input`);\r\n return instance;\r\n default:\r\n (!prependTo.isJQx ? jqx(prependTo) : prependTo).prepend(instance);\r\n return instance;\r\n }\r\n },\r\n prop(instance, nameOrProperties, value) {\r\n if (IS(nameOrProperties, String) && !value) {\r\n return nameOrProperties.startsWith(`data`)\r\n ? instance[0]?.dataset[nameOrProperties.slice(nameOrProperties.indexOf(`-`)+1)]\r\n : instance[0]?.[nameOrProperties];\r\n }\r\n\r\n const props = !IS(nameOrProperties, Object) ? { [nameOrProperties]: value } : nameOrProperties;\r\n for (let [propName, propValue] of Object.entries(props)) {\r\n propName = propName.trim();\r\n\r\n if (propValue && !checkProp(propName) || !propValue) {\r\n return false;\r\n }\r\n\r\n const isId = propName.toLowerCase() === `id`;\r\n\r\n if (isId) { return instance[0].id = propValue; }\r\n\r\n loop(instance, el => {\r\n if (propName.startsWith(`data`)) {\r\n return el.dataset[propName.slice(propName.indexOf(`-`)+1)] = propValue;\r\n }\r\n\r\n el[propName] = propValue;\r\n });\r\n }\r\n\r\n return instance;\r\n },\r\n remove(instance, selector) {\r\n const remover = el => el.remove();\r\n const removeFromCollection = () =>\r\n instance.collection = instance.collection.filter(el => document.documentElement.contains(el));\r\n\r\n if (selector) {\r\n const selectedElements = instance.find$(selector);\r\n if (!selectedElements.is.empty) {\r\n loop(selectedElements, remover);\r\n removeFromCollection();\r\n }\r\n return instance;\r\n }\r\n loop(instance, remover);\r\n removeFromCollection();\r\n return instance;\r\n },\r\n rmAttr(instance, ...attrNames) {\r\n for (const attr of attrNames) { instance.node.removeAttribute(attr); }\r\n return instance;\r\n },\r\n removeClass(instance, ...classNames) {\r\n return loop(instance, el => { if (el) { for (const cn of classNames) { el.classList.remove(cn); } } });\r\n },\r\n renderTo(instance, root, position) {\r\n root = IS(root, HTMLElement) || root.isJQx ? root : document.body;\r\n position = IS(position, String) && jqx.at[position] ? position : jqx.at.end;\r\n instance.first$().toDOM(root, position);\r\n return instance;\r\n },\r\n replace(instance, oldChild, newChild) {\r\n const firstElem = instance.node;\r\n\r\n if (!oldChild || (!IS(newChild, HTMLElement) && !newChild?.isJQx)) {\r\n jqx.logger.error(`JQx replace: invalid replacement value`);\r\n return instance;\r\n }\r\n\r\n if (newChild.isJQx || IS(newChild, NodeList)) {\r\n newChild = newChild[0];\r\n }\r\n\r\n if (firstElem && oldChild) {\r\n oldChild = IS(oldChild, String)\r\n ? firstElem.querySelectorAll(oldChild)\r\n : oldChild.isJQx\r\n ? oldChild.collection\r\n : oldChild;\r\n\r\n if (IS(oldChild, HTMLElement, NodeList, Array) && IS(newChild, HTMLElement)) {\r\n (IS(oldChild, HTMLElement) ? [oldChild] : [...oldChild])\r\n .forEach(chld => chld.replaceWith(newChild.cloneNode(true)));\r\n }\r\n }\r\n\r\n return instance;\r\n },\r\n replaceClass(instance, className, ...nwClassNames) {\r\n return loop( instance, el => {\r\n el.classList.remove(className);\r\n for (const name of nwClassNames) { el.classList.add(name); }\r\n } )\r\n },\r\n replaceMe(instance, newChild) {\r\n /*NODOC*/ return instance.replaceWith(newChild);\r\n },\r\n replaceWith(instance, newChild) {\r\n newChild = IS(newChild, Element) ? newChild : newChild.isJQx ? newChild[0] : undefined;\r\n\r\n if (newChild) {\r\n instance[0].replaceWith(newChild);\r\n instance = jqx.virtual(newChild);\r\n }\r\n\r\n return instance;\r\n },\r\n setData(instance, spec) {\r\n return loop(instance, el => setData(el, spec));\r\n },\r\n show(instance) {\r\n return loop(instance, el => applyStyle(el, {display: `revert-layer !important`}));\r\n },\r\n single(instance, indexOrSelector) {\r\n const hasNodes = instance.collection.length > 0;\r\n indexOrSelector = indexOrSelector ?? 0;\r\n \r\n switch(true) {\r\n case hasNodes && IS(indexOrSelector, String):\r\n return instance.find$(indexOrSelector);\r\n case hasNodes && IS(indexOrSelector, Number):\r\n return jqx(instance.collection[indexOrSelector]);\r\n case hasNodes: return instance.collection[0];\r\n default: return instance;\r\n }\r\n },\r\n style(instance, keyOrKvPairs, value) {\r\n const loopCollectionLambda = el => {\r\n if (value && IS(keyOrKvPairs, String)) {\r\n keyOrKvPairs = { [keyOrKvPairs]: value || `none` };\r\n }\r\n applyStyle(el, keyOrKvPairs);\r\n };\r\n return loop(instance, loopCollectionLambda);\r\n },\r\n text(instance, textValue, append = false) {\r\n switch(true) {\r\n case instance.isEmpty(): return instance;\r\n case !IS(textValue, String): return instance.node.textContent;\r\n default: return loop(instance, el => el.textContent = append ? el.textContent + textValue : textValue);\r\n }\r\n },\r\n toDOM(instance, root = document.body, position = insertPositions.BeforeEnd) {\r\n instance.isVirtual = false;\r\n inject2DOMTree(instance.collection, root, position);\r\n return instance;\r\n },\r\n toggleClass(instance, className) {\r\n return loop(instance, el => el.classList.toggle(className));\r\n },\r\n toNodeList(instance) {\r\n return [...instance.collection].map(el => document.importNode(el, true));\r\n },\r\n trigger(instance, evtType, SpecifiedEvent, options) {\r\n SpecifiedEvent = IS(SpecifiedEvent, Function) ? SpecifiedEvent : Event;\r\n options = IS(options, Object) ? { ...options, bubbles: options.bubbles??true} : {bubbles: true};\r\n const evObj = new SpecifiedEvent( evtType, options );\r\n \r\n if (!instance.is.empty) {\r\n instance.each(el => el.dispatchEvent(evObj));\r\n }\r\n \r\n return instance;\r\n },\r\n val(instance, newValue) {\r\n switch(true) {\r\n case instance.is.empty || !IS(instance.node, HTMLInputElement, HTMLSelectElement, HTMLTextAreaElement):\r\n return instance;\r\n case !IS(newValue, String):\r\n return instance.node.value;\r\n default:\r\n instance.node.value = !IS(newValue, String) ? \"\" : newValue;\r\n return instance;\r\n }\r\n },\r\n };\r\n}\r\n", "import {\r\n cleanupHtml,\r\n clearAllTimers,\r\n convert2Bool,\r\n escHtml,\r\n getAttributesForLogging,\r\n HandlerFactory,\r\n insertPositions,\r\n IS,\r\n isNonEmptyString,\r\n maybe,\r\n PopupFactory,\r\n proxyWrapper,\r\n randomString,\r\n resolveEventTypeParameter,\r\n selectedFactoryHelpers,\r\n styleFactory,\r\n systemLog,\r\n tagFNFactory as $T,\r\n tagLib,\r\n toCamelcase,\r\n toDashedNotation,\r\n} from \"./JQxUtilities.js\";\r\nimport allMethodsFactory from \"./JQxInstanceMethods.js\";\r\n\r\nlet instanceGetters, instanceMethods;\r\nconst {\r\n isComment, isText, isHtmlString, isArrayOfHtmlElements, isArrayOfHtmlStrings,\r\n ElemArray2HtmlString, cssRuleEdit, addFn\r\n} = selectedUtilitiesFactory();\r\n\r\nexport { proxify, addJQxStaticMethods };\r\n\r\nfunction selectedUtilitiesFactory() {\r\n return {\r\n ...selectedFactoryHelpers(),\r\n addFn: addFnMethod };\r\n}\r\n\r\nfunction addFnMethod(name, extensionMethod) {\r\n name = name?.trim();\r\n \r\n if (!isNonEmptyString(name) || !IS(extensionMethod, Function) ) {\r\n return systemLog.error(\"JQx.fn: method invalid parameter(s)\");\r\n }\r\n \r\n instanceMethods[name] = (self, ...params) => extensionMethod(self, ...params);\r\n return systemLog.log(`JQx: added extension function [${name}]`);\r\n}\r\n\r\nfunction staticFNMethodFactory(jqx) {\r\n return function(name, extensionMethod, isGetter){\r\n name = name?.trim();\r\n if (!isNonEmptyString(name) || !IS(extensionMethod, Function) ) {\r\n return jqx.error(\"JQx.staticFn: invalid parameter(s)\");\r\n }\r\n const ext = isGetter\r\n ? { get() { return extensionMethod(); } }\r\n : { value(...args) { return extensionMethod(...args); } };\r\n \r\n try { Object.defineProperty(jqx, name, ext); }\r\n catch(err) {\r\n return jqx.warn(`JQx.staticFn: extension [${name}] already exists`);\r\n }\r\n \r\n return systemLog.log(`JQx: added static extension function [${name}]`);\r\n }\r\n}\r\n\r\nfunction proxify(instance) {\r\n return new Proxy(\r\n instance, { get: (target, key) => proxyTrapFactory(target, key, instance) }\r\n );\r\n}\r\n\r\nfunction maybeReProxify(method, instance, isGetter = false) {\r\n instance = !!instance[Symbol.proxy] ? instance : proxify(instance);\r\n const returnValue = function(...args) { return method(instance, ...args); }\r\n return isGetter ? returnValue() : returnValue;\r\n}\r\n\r\nfunction proxyReporter(instance) {\r\n return `Proxy for JQx${instance.collection.length < 1 ? ` (empty)` : ``} instance`;\r\n}\r\n\r\nfunction proxyTrapFactory(JQxtarget, key, instance) {\r\n switch(true) {\r\n case key === Symbol.proxy: return proxyReporter(instance);\r\n case typeof key === `symbol`: return maybe({trial: () => JQxtarget[key], whenError: () => JQxtarget });\r\n case !Number.isNaN(+key) && typeof +key === `number`: return JQxtarget.collection?.[key] || undefined;\r\n case (instanceGetters.hasOwnProperty(key)): return maybeReProxify(instanceGetters[key], instance, true);\r\n case (instanceMethods.hasOwnProperty(key)): return maybeReProxify(instanceMethods[key], instance);\r\n default: return Reflect.get(JQxtarget, key);\r\n }\r\n}\r\n\r\nfunction addJQxStaticMethods(jqx) {\r\n const staticMethods = defaultStaticMethodsFactory(jqx);\r\n\r\n for (const [key, descriptor] of Object.entries(Object.getOwnPropertyDescriptors(staticMethods))) {\r\n Object.defineProperty(jqx, key, descriptor);\r\n }\r\n\r\n return jqx;\r\n}\r\n\r\nfunction allowances(jqx) {\r\n return {\r\n allow(tagName) {\r\n const isWebComponent = /-/.test(tagName);\r\n const webComponentTagName = isWebComponent && tagName;\r\n tagName = isWebComponent ? toCamelcase(tagName) : tagName.toLowerCase();\r\n tagLib.allowTag(tagName);\r\n Object.defineProperties( jqx, addGetters(tagName, true, jqx, webComponentTagName) );\r\n },\r\n prohibit(tagName) {\r\n tagName = tagName.toLowerCase();\r\n tagLib.prohibitTag(tagName);\r\n Object.defineProperties( jqx, addGetters(tagName, false, jqx) );\r\n }\r\n }\r\n}\r\n\r\nfunction cssRemove(...rules) {\r\n if (rules.length === 1) {\r\n const ruleStr = String(rules.shift().trim());\r\n rules = !ruleStr.startsWith(`!`)\r\n ? ruleStr.split(`,`).map(v => v.trim())\r\n : [ruleStr.slice(1, -1)];\r\n }\r\n\r\n for (const rule of rules.map(rule => rule.startsWith(`!`) ? rule.slice(1, -1) : rule)) {\r\n cssRuleEdit(rule, {removeRule: 1});\r\n }\r\n}\r\n\r\nfunction virtualFactory(jqx) {\r\n return function(html, root, position) {\r\n root = root?.isJQx ? root?.[0] : root;\r\n position = position && Object.values(insertPositions).find(pos => position === pos);\r\n const virtualElem = jqx(html, document.createElement(`br`));\r\n if (root && !IS(root, HTMLBRElement)) {\r\n for (const elem of virtualElem.collection) {\r\n position ? root.insertAdjacentElement(position, elem) : root.append(elem);\r\n }\r\n }\r\n return virtualElem;\r\n }\r\n}\r\n\r\nfunction combineObjectSources(...sources) {\r\n const result = {};\r\n for (const source of sources) {\r\n const descriptors = Object.getOwnPropertyDescriptors(source);\r\n for (const [key, descriptor] of Object.entries(descriptors)) {\r\n !(key in result) && Object.defineProperty(result, key, {...descriptor, enumerable: false});\r\n }\r\n }\r\n return result;\r\n}\r\n\r\nfunction tagGetterFactory(tagName, cando, jqx, webComponentTagName) {\r\n tagName = toDashedNotation(webComponentTagName || tagName.toLowerCase());\r\n return {\r\n get() {\r\n return (...args) => {\r\n const instance = cando && jqx.virtual(cleanupHtml($T[tagName](...args))) || undefined;\r\n const isElem = !IS(instance?.node, Comment, Text, undefined);\r\n let reportIdOrClass = isElem ? getAttributesForLogging(instance) : ``;\r\n \r\n systemLog.log( cando\r\n ? `JQx: created (virtual) instance from [JQx].${tagName} ${reportIdOrClass}`\r\n : `JQx: ${tagName.toUpperCase()} is prohibited. Use [JQx].allowTag if necessary.`);\r\n return instance;\r\n }\r\n },\r\n enumerable: false,\r\n configurable: true,\r\n }\r\n}\r\n\r\nfunction addGetters(tag, cando, jqx, webComponentTagName) {\r\n tag = tag.toLowerCase();\r\n const jqxGetterForThisTag = tagGetterFactory(tag, cando, jqx, webComponentTagName);\r\n return webComponentTagName\r\n ? { [webComponentTagName]: jqxGetterForThisTag, [toCamelcase(webComponentTagName)]: jqxGetterForThisTag, }\r\n : { [tag]: jqxGetterForThisTag, [tag.toUpperCase()]: jqxGetterForThisTag, };\r\n}\r\n\r\nfunction defaultStaticMethodsFactory(jqx) {\r\n return combineObjectSources(\r\n Object.entries(tagLib.tagsRaw).reduce(staticTagsLambda(jqx), {}),\r\n staticMethodsFactory(jqx));\r\n}\r\n\r\nfunction staticTagsLambda(jqx) {\r\n return function(acc, [tag, cando]) {\r\n Object.defineProperties( acc, addGetters(tag, cando, jqx) );\r\n return acc;\r\n }\r\n}\r\n\r\nfunction delegateFactory(listen) {\r\n return function(type, selector, ...listeners) {\r\n if (IS(selector, Function)) {\r\n listeners.push(selector);\r\n selector = undefined;\r\n }\r\n\r\n listen({type, selector: selector, handlers: listeners});\r\n }\r\n}\r\n\r\nfunction delegateCaptureFactory(handlerWrapper) {\r\n return function(spec) {\r\n let {type, types, origin, selector, handler, handlers, node, name, capture, once, about} = spec;\r\n // <legacy>\r\n handler = handlers || handler;\r\n type = types || type;\r\n selector = origin || selector;\r\n // </legacy>\r\n const typesResolved = resolveEventTypeParameter(type);\r\n const specifiedName = name;\r\n handler = IS(handler, Function) ? [handler] : handler;\r\n const params = {\r\n type: typesResolved, selector: selector || origin, capture,\r\n name: specifiedName, once, node, about };\r\n \r\n switch(true) {\r\n case IS(typesResolved, Array) && typesResolved.length > 0:\r\n for (const type of typesResolved) {\r\n params.type = type;\r\n assignListeners(handler, params, handlerWrapper);\r\n }\r\n break;\r\n default: return assignListeners(handler, params, handlerWrapper);\r\n }\r\n }\r\n}\r\n\r\nfunction assignListeners(handlerFns, params, handlerWrapper) {\r\n for (const handler of handlerFns) {\r\n handlerWrapper.listen({...params, handler});\r\n }\r\n}\r\n\r\nfunction getNamedListenerFactory(jqx) {\r\n return function(type, name) {\r\n name = isNonEmptyString(name) && name;\r\n type = isNonEmptyString(type) && type;\r\n return name && type && jqx.listenerStore[type][name];\r\n };\r\n}\r\n\r\nfunction popupGetter(jqx) {\r\n if (!jqx.activePopup) {\r\n Object.defineProperty(\r\n jqx, `activePopup`, {\r\n value: PopupFactory(jqx),\r\n enumerable: false\r\n } );\r\n }\r\n return jqx.activePopup;\r\n}\r\n\r\nfunction getSelectedStaticMethods(jqx) {\r\n const editCssRule = (ruleOrSelector, ruleObject) => cssRuleEdit(ruleOrSelector, ruleObject);\r\n const createStyle = function(id) {return styleFactory({createWithId: id || `jqx${randomString()}`}); };\r\n const editCssRules = function(...rules) { for (const rule of rules) { cssRuleEdit(rule); } };\r\n const allowProhibit = allowances(jqx);\r\n const handlerWrapper = HandlerFactory(jqx);\r\n const capturedHandling = delegateCaptureFactory(handlerWrapper);\r\n const log = (...line) => systemLog.on.log(...line).off;\r\n const warn = (...line) => systemLog.on.warn(...line).off;\r\n const error = (...line) => systemLog.on.error(...line).off;\r\n return {\r\n editCssRule, createStyle, editCssRules, allowProhibit, handle: capturedHandling, capturedHandling,\r\n log, warn, error, handlerWrapper};\r\n}\r\n\r\nfunction staticMethodsFactory(jqx) {\r\n const { factoryExtensions, instanceExtensions } = allMethodsFactory(jqx);\r\n instanceGetters = factoryExtensions;\r\n instanceMethods = instanceExtensions;\r\n const { editCssRule, createStyle, editCssRules, allowProhibit, handle,\r\n capturedHandling, log, warn, error, handlerWrapper } = getSelectedStaticMethods(jqx);\r\n const getNamedListener = getNamedListenerFactory(jqx);\r\n const staticFN = staticFNMethodFactory(jqx);\r\n $T.setError = key => {\r\n error(`JQx direct element creation error: [${key}] is not a valid tag`);\r\n return jqx.br();\r\n }\r\n return {\r\n log,\r\n warn,\r\n error,\r\n editCssRules,\r\n createStyle,\r\n editStylesheet: createStyle,\r\n editCssRule,\r\n escHtml,\r\n logger: systemLog,\r\n proxyWrapper,\r\n text(str, isComment = false) { return isComment ? jqx.comment(str) : document.createTextNode(str); },\r\n node(selector, root = document) { return root.querySelector(selector, root); },\r\n nodes(selector, root = document) { return [...root.querySelectorAll(selector, root)]; },\r\n clearAllTimers,\r\n get staticFn() { return function(name, method, isGetter) { return staticFN(name, method, isGetter); } },\r\n get toBool() { return convert2Bool; },\r\n get getNamedListener() { return getNamedListener; },\r\n get virtual() { return virtualFactory(jqx); },\r\n get allowTag() { return allowProhibit.allow; },\r\n get prohibitTag() { return allowProhibit.prohibit; },\r\n get removeCssRule() { return cssRemove; },\r\n get removeCssRules() { return cssRemove; },\r\n get delegate() { return delegateFactory(capturedHandling); },\r\n get delegateCaptured() { return capturedHandling; } ,\r\n get handle() { return capturedHandling; },\r\n get listen() { return handlerWrapper.listen; },\r\n get at() { return insertPositions; },\r\n get setStyle() { /*deprecated*/return editCssRule; },\r\n get fn() { return addFn; },\r\n get lenient() { return tagLib.allowUnknownHtmlTags; },\r\n get IS() { return IS; },\r\n get Popup() { return popupGetter(jqx); },\r\n get listenerStore() { return handlerWrapper.ListenerStore; },\r\n };\r\n}\r\n", "import { proxify, addJQxStaticMethods } from \"./JQxCreatorFactory.js\";\r\nimport {\r\n isHtmlString, isArrayOfHtmlStrings, isArrayOfHtmlElements,\r\n input2Collection, setCollectionFromCssSelector, IS, systemLog,\r\n insertPositions, inject2DOMTree, createElementFromHtmlString,\r\n getNodeContentForLog,\r\n} from \"./JQxUtilities.js\";\r\n\r\nexport default JQxMainFactory();\r\n\r\nfunction JQxMainFactory() {\r\n const logLineLength = 70;\r\n \r\n return addJQxStaticMethods(\r\n function(input, root, position = insertPositions.BeforeEnd) {\r\n if (input?.isJQx) { return input; }\r\n const isVirtual = IS(root, HTMLBRElement);\r\n root = (!isVirtual && root && root.isJQx ? root[0] : root) || document.body;\r\n position = position && Object.values(insertPositions).find(pos => position === pos) ? position : undefined;\r\n const isRawHtml = isHtmlString(input);\r\n const isRawHtmlArray = !isRawHtml && isArrayOfHtmlStrings(input);\r\n const shouldCreateElements = isRawHtmlArray || isRawHtml;\r\n \r\n let instance = {\r\n collection: input2Collection(input) ?? [],\r\n isVirtual,\r\n isJQx: true,\r\n };\r\n \r\n const isRawElemCollection = isArrayOfHtmlElements(instance.collection);\r\n \r\n switch(true) {\r\n case instance.collection.length && isRawElemCollection && !isVirtual:\r\n for (const el of instance.collection) {\r\n if (!root.contains(el)) {\r\n inject2DOMTree([el], root, position);\r\n }\r\n }\r\n break;\r\n case shouldCreateElements:\r\n for (const htmlStringOrComment of [input].flat()) {\r\n instance.collection.push(createElementFromHtmlString(htmlStringOrComment));\r\n }\r\n \r\n if (instance.collection.length > 0) {\r\n const errors = instance.collection.filter( el => el?.dataset?.jqxcreationerror );\r\n instance.collection = instance.collection.filter(el => !el?.dataset?.jqxcreationerror);\r\n const elemsCreated = instance.collection.map(el => `${String(el.constructor).split(/function|\\(/)[1].trim()}`);\r\n const multiple = elemsCreated.length > 1;\r\n instance = proxify(instance);\r\n const collectionLog = instance.collection.length > 0\r\n ? getNodeContentForLog(instance)\r\n : \"sanitized: no elements remaining\";\r\n \r\n systemLog.log(`JQx: created ${instance.isVirtual ? `(virtual)` : ``} instance from ` +\r\n `${multiple ? `array of ` : ``}HTML string${multiple ? `s` : ``} ${collectionLog}`);\r\n \r\n if (!instance.isVirtual) {\r\n inject2DOMTree(instance.collection, root, position);\r\n }\r\n }\r\n break;\r\n default: setCollectionFromCssSelector(input, root, instance);\r\n \r\n }\r\n \r\n return proxify(instance);\r\n })\r\n}\r\n", "/**\r\n This code is classfree object oriented. No this. No prototype. No class.\r\n Inspired by Douglas Crockford (see https://youtu.be/XFTOG895C7c?t=2562)\r\n*/\r\nimport JQx from \"./src/JQxConstructorFactory.js\";\r\nexport default JQx;\r\n", "var M=ke();function ke(){let[e,r,n,t]=[\"2-digit\",\"numeric\",\"long\",\"short\"],a={fixed:{MM:{month:n},M:{month:t},m:{month:r},mm:{month:e},yyyy:{year:r},yy:{year:e},WD:{weekday:n},wd:{weekday:t},d:{day:r},dd:{day:e},h:{hour:r},hh:{hour:e},mi:{minute:r},mmi:{minute:e},s:{second:r},ss:{second:e},ms:{fractionalSecondDigits:3},tz:{timeZoneName:\"shortOffset\"},dl:{locale:\"default\"},h12:{hour12:!1},yn:{yearName:\"\"},ry:{relatedYear:!0},msp:{fractionalSecond:!0}},dynamic:{tzn:l=>({timeZoneName:l.slice(4)}),hrc:l=>({hourCycle:`h${l.slice(4)}`}),ds:l=>({dateStyle:l.slice(3)}),ts:l=>({timeStyle:l.slice(3)}),tz:l=>({timeZone:l.slice(3)}),e:l=>({era:l.slice(2)}),l:l=>({locale:l.slice(2)})}},o={...a,retrieveDyn(l){let y=l?.slice(0,l.indexOf(\":\"));return a.dynamic[y]&&a.dynamic[y](l)},get re(){return new RegExp(`\\\\b(${Object.keys(a.fixed).join(\"|\")})\\\\b`,\"g\")}},s=(l=\"dtf\",y=0)=>{let h=` ${l.replace(/(?<=\\{)(.+?)(?=})/g,d=>`[${y++}]`).replace(/[{}]/g,\"\").trim()} `,D=l.match(/(?<=\\{)(.+?)(?=})/g)||[];return{get texts(){return D},formatString(d){h=d},set formatStr(d){h=d},get formatStr(){return h},get units(){return h.match(o.re)||[]},finalize(d=\"\",Z=\"\",b=\"\",$=\"\"){return h.replace(/~([\\d+]?)/g,\"$1\").replace(/dtf/,d).replace(/era/,b).replace(/dp\\b|~dp\\b/,Z).replace(/yn\\b/,$).replace(/\\[(\\d+?)]/g,(w,Fe)=>D[Fe].trim()).trim()}}},u=l=>l.replace(/\\s+/g,\"\"),c=(...l)=>l?.reduce((y,h)=>({...y,...o.retrieveDyn(h)||o.fixed[h]}),o.fixed.dl),i=(l,y,h)=>{let D=c(...u(h).split(\",\")),d=Intl.DateTimeFormat(D.locale,D).format(l);return y.finalize(d)},m=(l,y,h,D)=>l.toLocaleString(y,{timeZone:h,month:D?t:n}),T=(l,y,h)=>{let D=c(...y.units.concat(u(h).split(\",\")).flat()),d={...o.fixed},Z=($,w)=>D[$]===\"numeric\"&&w.startsWith(\"0\")?w.slice(1):w,b=Intl.DateTimeFormat(D.locale,D).formatToParts(l).reduce(($,w)=>w.type===\"literal\"&&/[ ,/-]/.test(w.value)?$:{...$,[w.type]:Z(w.type,w.value)},{});return d.ms=D.fractionalSecondDigits?d.msp:d.ms,d.yyyy=b.relatedYear?d.ry:d.yyyy,y.formatStr=y.formatStr.replace(o.re,$=>/^(M|MM)$/.test($)?m(l,D.locale,D.timeZone,/^M$/.test($)):b[Object.keys(d[$]).shift()]||$),y.finalize(void 0,b.dayPeriod,b.era,b.yearName)};return(l,y,h=\"l:default\")=>/ds:|ts:/.test(h)?i(l,s(void 0),h):T(l,s(y||void 0),h)}var le=Ce;function Ce(){let e=(t,a)=>{let o=isNaN(new Date(t)),s=isNaN(new Date(a));if(s){let[u,c,i]=Array(3).fill(\"end date not valid\");return{error:!0,message:u,full:c,clean:i}}if(o){let[u,c,i]=Array(3).fill(\"start date not valid\");return{error:!0,message:u,full:c,clean:i}}if(o&&!s){let[u,c,i]=Array(3).fill(\"start- and/or end date are not valid\");return{error:!0,message:u,full:c,clean:i}}return{error:!1}},r=n();return function({start:t,end:a,diffs:o={}}={}){let s=e(t,a),u=a>t?\"+\":\"-\";if(s.error)return s;let c=Math.abs(t-a),i=new Date(c),m=i.getUTCFullYear()-1970,T=i.getUTCMonth(),l=i.getUTCDate()-1,y=l%7,h=Math.floor(l/7),D=i.getUTCHours(),d=i.getUTCMinutes(),Z=i.getUTCSeconds(),b=i.getUTCMilliseconds(),$=Math.floor(c/864e5);o={...o,fromUTC:t,toUTC:a,sign:\"\",years:m,months:T,days:l,hours:D,minutes:d,seconds:Z,milliseconds:b,diffInDays:$},o.full=r({values:o,full:!0}),o.clean=r({values:o}),o.equalDates=o.clean===\"Dates are equal\";let w=D+d+Z>0?\"T\":\"\";return o.clean!==\"Dates are equal\"&&(o.sign=u,o.jsPeriod=`${u}P${m>0?`${m}Y`:\"\"}${T>0?`${T}M`:\"\"}${h>0?`${h}W`:\"\"}${y>0?`${y}D`:\"\"}${w}${D>0?`${D}H`:\"\"}${d>0?`${d}M`:\"\"}${Z>0?`${Z}S`:\"\"}`,o.ISOPeriod=`P${m>0?`${m}Y`:\"\"}${T>0?`${T}M`:\"\"}${l>0?`${l}D`:\"\"}${w}${D>0?`${D}H`:\"\"}${d>0?`${d}M`:\"\"}${Z>0?`${Z}S`:\"\"}`),o};function n(){let t=(...i)=>m=>i.reduce((T,l)=>l(T),m),a=(i,m)=>i===1?m.slice(0,-1):m;return t(({values:i,full:m})=>[Object.entries(i).filter(([T])=>/^(years|month|days|hours|minutes|seconds)/i.test(T)),m],([i,m])=>m?i:i.filter(([,T])=>m?+T:T>0),i=>i.reduce((m,[T,l])=>[...m,`${l} ${a(l,T)}`],[]),i=>i.length<1?\"Dates are equal\":`${i.slice(0,-1).join(\", \")}${i.length>1?\" and \":\"\"}${i.slice(-1).shift()}`)}}var ie=Ae;function Ae(){let e=Object.entries({year:\"FullYear\",month:\"Month\",date:\"Date\",day:\"Date\",hour:\"Hours\",minute:\"Minutes\",second:\"Seconds\",millisecond:\"Milliseconds\"}).reduce((t,[a,o])=>({...t,[a]:o,[`${a}s`]:o}),{}),r=!1,n=function(...t){let a=t.length===1;return r=t[0].trim().startsWith(\"subtract,\"),r&&(t=a?t[0].trim().replace(/^subtract,/i,\"\").split(\",\").map(o=>o.trim()):t.filter(o=>!o.startsWith(\"subtract\"))),a&&!r&&(t=t[0].split(\",\").map(o=>o.trim())),t.map(function(o){if(!o)return!1;let s=o.toLowerCase().split(/ {1,}/);return s.length<2?!1:s.map(u=>{u=`${u}`.trim().replace(/[^a-z0-9-+]/g,\"\");let c=parseInt(u,10);return Number.isNaN(c)?u:r?-c:+c})}).filter(o=>o)};return function(t,...a){if(a.length<1)return t;let o=n(...a);return o.length&&o.forEach(([s,u])=>{u=u,u=e[u],s&&u&&t[`set${u}`](t[`get${u}`]()+s)}),t}}var ge=le(),ye=Ye(),N=ie(),We=[\"sun\",\"mon\",\"tue\",\"wed\",\"thu\",\"fri\",\"sat\"],he=[\"sunday\",\"monday\",\"tuesday\",\"wednesday\",\"thursday\",\"friday\",\"saturday\"];function q(e,r=!1){let n=e.month+1,t=e.month;if(e.month+=r?-1:1,!r&&e.month>=n)for(;e.month>n;)e.dateNr-=1;if(r&&e.month===t)for(;e.month>=t;)e.dateNr-=1;return e}function H(e,...r){return N(e,...r),e}function De(e,r=!1){let n=Q(e.clone,{sunday:r}),t=[n];return{weekStart:n.format(\"WD\",\"l:en-GB\"),inputDate:e,dates:t.concat([...Array(6)].map((a,o)=>n.clone.addDays(o+1)))}}function W(e,{start:r,end:n,future:t,past:a,include:o={start:!1,end:!1}}={}){let s=e.clone.UTC;return r=r?.value||r?.constructor===Date?f(r?.value||r).UTC:f.now.UTC,n=n&&n?.value||n?.constructor===Date?f(n?.value||n).UTC:f.now.UTC,s.milliseconds=0,r.milliseconds=0,n.milliseconds=0,t?r>n:a?r<n:(o.start?+s>=+r:+s>+r)&&(o.end?+s<=+n:+s<+n)}function _(e,{zoneTime:r=!1,formatStr:n,moreOptions:t}={}){return t=r?e.localeInfo.formatOptions+(t?`,${t}`:\"\"):g.formatOptions+(t?`,${t}`:\"\"),r?(e.localeInfo||(e.localeInfo=g),M(e,n,t)):Ue(e,n,t)}function Ue(e,r,n){let t=e.clone.relocate(g);return n=(n||\"\").startsWith(\"+\")?`${t.localeInfo.formatOptions},${n.slice(1)}`:n||t.localeInfo.formatOptions,M(t,r,n)}function Te(e,r){let n=ge({start:e,end:r||e});return parseInt(`${n.sign}${n.diffInDays}`)}function G(e,r=!1){let{locale:n,timeZone:t}=r?e.localeInfo:g,a=se(n,t),o=e.format(\"MM|WD\",a).split(\"|\");return{locale:n,timeZone:t,monthName:o[0],dayName:o[1],dayNames:ae(n),monthNames:Y(n)}}function B(e,r=!1){let[n,t,a,o]=U(e,r),u={values4Timezone:r?g.timeZone:e.timeZone,hours:n,minutes:t,seconds:a,milliseconds:o};return Object.freeze(u)}function U(e,r=!1){let t=`l:en-CA,${r?`tz:${g.timeZone}`:`tz:${e.timeZone}`},hrc:23,ts:medium`;return e.format(\"\",t).split(/:/).map(Number).concat(e.getMilliseconds())}function J(e,r){let n=r?`tz:${g.timeZone}`:`,tz:${e.timeZone}`,[t,a,o]=e.format(\"yyyy-mm-dd\",n).split(/-/).map(Number);a-=1;let s=r?g.timeZone:e.timeZone;return Object.freeze({values4Timezone:s,year:t,month:a,date:o})}function K(e,r=!0){if(r)return[e.getFullYear(),e.getMonth(),e.getDate()];let n=e.format(\"yyyy-m-d\",e.localeInfo.formatOptions).split(/-/).map(Number);return n[1]-=1,n}function Le(e){let r=new Intl.Locale(e.locale),n=r.weekInfo?r.weekInfo.firstDay:r.getWeekInfo?r.getWeekInfo().firstDay:1;return n=n===7?0:n,he[n]}function Q(e,{sunday:r=!1}={}){let n=r?\"sunday\":Le(e);return x(e,{day:n,preserveTodayWhenEqual:!0})}function xe(e,r){let n=e.toString().match(/GMT([+-])\\d+/)?.[0]?.slice(3)??\"+0000\",t=r.toString().match(/GMT([+-])\\d+/)?.[0]?.slice(3)??\"+0000\";return n=A(n.slice(0,3)+\":\"+n.slice(-2),!0),t=A(t.slice(0,3)+\":\"+t.slice(-2),!0),[-n[0]+t[0],-n[1]+t[1]].map(a=>n[0]<0?-a:a)}function R({start:e,end:r}={}){r||(r=e.clone),r?.clone||(r=f(r,{timeZone:e.timeZone})),e=f(fe(e,e.timeZone),{timeZone:e.timeZone}),r=f(fe(r,r.timeZone),{timeZone:r.timeZone});let n=ge({start:e,end:r,diffs:{timeZoneStart:e.timeZone,timeZoneEnd:r.timeZone}}),t=xe(r,e),a=n.sign.startsWith(\"-\")?\"ahead of\":\"behind\",[o,s]=t.map(i=>Math.abs(i)),[u,c]=[`${o} ${C(o,\"hour\")}`,`${s} ${C(s,\"minute\")}`];return n.timeZonesOffsetDifference=n.sign.length<1||o+s===0?`Offsets of ${e.timeZone} and ${r.timeZone} are equal`:`${e.timeZone} is ${u}${s>0?` and ${c}`:\"\"} ${a} ${r.timeZone}`,n}function X(e,r){r=String(r).toLowerCase()===\"utc\"||r.timeZone===\"UTC\"?e.clone.relocate({timeZone:\"UTC\"}):f(e.value,{timeZone:r.timeZone||g.timeZone});let t=R({start:e.clone,end:r}),o=`${t.sign}${ce(t.hours)}:${ce(t.minutes)}`;return{fromTZ:e.timeZone,toTZ:r.timeZone,offset:o,offsetText:`${r.timeZone} ${je(o)} ${e.timeZone}`}}function ce(e,r=2){return`${e}`.padStart(r,\"0\")}function C(e,r){return`${r}${e>1||e===0?\"s\":\"\"}`}function je(e){if(/00:00/.test(e))return\"no time diffence to\";let r=e.slice(1).split(\":\").map(Number),[n,t]=r,a=C(n,\"hour\"),o=C(t,\"minute\"),s=e.startsWith(\"+\");return t>0?`${n} ${a} and ${t} ${o} ${s?\"ahead of\":\"behind\"}`:`${n} ${a} ${s?\"ahead of\":\"behind\"}`}function me(e,r,n){return e.clone.format(r,n||e.localeInfo.formatOptions)}function pe(e,{withFormat:r,withFormatOptions:n,local:t=!1}={}){if(r)return t?me(e,r,$D.localeInformation.formatOptions):me(e,r,n);let a=e.clone.relocate({locale:\"en\"}),o=t?g.formatOptions:a.localeInfo.formatOptions,u=`wd M dd yyyy hh:mmi:ss ${a.format(\"tz\",o+\",tzn:longOffset\").replace(\":\",\"\")} (tz)`;return a.format(u,o+\",tzn:long, hrc:23\")}function ee(e,r=!1){let n=Intl.DateTimeFormat(\"en\",{timeZone:r?e.timeZone:g.timeZone,weekday:\"short\"});return ye(n.format(e))}function $e(e){let r=g,n=e.localeInfo,t=e.clone.relocate({locale:r.locale,timeZone:r.timeZone}),a=e.offsetFrom(t),o=t.offsetFrom(e),s=r,u=n,c=e.format(\"hh:mmi:ss dp\",`hrc:12,tz:${e.timeZone}`),i=t.format(\"hh:mmi:ss dp\",`hrc:12,tz:${t.timeZone}`),m={note:\"'user' are values for your locale/timeZone, 'remote' (if applicable) idem for the instance\",locales:{user:{locale:s.locale,timeZone:s.timeZone}},dateTime:{user:{...e.dateTime,monthName:t.monthName,weekdayNr:t.day,weekdayName:t.dayName,dayPeriodTime:i,hasDST:t.hasDST,DSTActive:t.DSTActive,offsetFromRemote:a.offset,string:t.toString()}},offset:{fromUTC:e.UTC.offsetFrom(e).offsetText}};return n.timeZone!==r.timeZone&&(m.locales.remote={locale:u.locale,timeZone:u.timeZone},m.dateTime.remote={...e.zoneDateTime,monthName:e.zoneNames.monthName,weekdayNr:ee(e,!0),weekdayName:e.zoneNames.dayName,dayPeriodTime:c,hasDST:e.hasDST,DSTActive:e.DSTActive,offsetFromUser:o.offset,string:e.toString()},m.offset.fromUserTime=o.offsetText),m}function O(e,r=!0){if(r)return[e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()];let n=e.format(\"yyyy-m-d-hh-mmi-ss\",`${e.localeInfo.formatOptions},hrc23:true`).split(/-/).map(Number).concat(e.getMilliseconds());return n[1]-=1,n}function te(e){return new Date(e.year,e.month+1,0,0,0,0).getDate()}function L(e,r){r=p({locale:r||e.localeInfo.locale}).locale;let n=e.clone.relocate({locale:r});return n.date={date:1},[n].concat([...Array(te(n)-1)].map((t,a)=>n.clone.add(`${a+1} days`)))}function x(e,{day:r,next:n=!1,preserveTodayWhenEqual:t=!1}={}){r=r?.toLowerCase()||\"-\";let a=ye(r);if(a<0)return console.error(`[TickTock instance].next/previous invalid day value ${r}`),e.clone;let o=n?1:-1,s=f(new Date(...e.dateTimeValues),e.localeInfo);return t&&a===s.day?s:Pe(s.addDays(n?1:-1),a,o)}function Pe(e,r,n){function t(a){switch(!0){case a.day===r:return a;default:return t(a.add(`${n} days`))}}return t(e)}function F(e,{dateOnly:r=!1,timeOnly:n=!1}={}){let{locale:t,timeZone:a}=e.localeInfo;return r?new Date(e).toLocaleDateString(t,{timeZone:a}):n?new Date(e).toLocaleTimeString(t,{timeZone:a}):new Date(e).toLocaleString(t,{timeZone:a})}function fe(e,r){let n={timeZone:r,hourCycle:\"h23\"};return new Date(new Date(e).toLocaleString(\"en\",n))}function v(e,{year:r,month:n,date:t}={}){return S(r)&&e.setFullYear(parseInt(r)),S(t)&&e.setDate(parseInt(t)),S(n)&&e.setMonth(parseInt(n)),e}function I(e,{hours:r,minutes:n,seconds:t,milliseconds:a}={}){return S(r)&&e.setHours(parseInt(r)),S(n)&&e.setMinutes(parseInt(n)),S(t)&&e.setSeconds(parseInt(t)),S(a)&&e.setMilliseconds(parseInt(a)),e}function we(e){return e?.constructor===Date||e?.value}function re(e,r){return we(r)?f(r?.value||r,e.localeInfo):f.from(...e.dateTimeValues).relocate(e.localeInfo)}function Ye(){return function(e){e=`${e}`.toLowerCase();let r=We.indexOf(e);return r<0?he.indexOf(e):r}}function A(e){let r=e.slice(1).split(/[-:]/).map(Number),n=e.startsWith(\"-\");return r=r.map(t=>n?-t:t),r}function Se(e){return e.time={hours:0,minutes:0,seconds:0,milliseconds:0},e}function de(e,r){return Intl.DateTimeFormat(\"en-CA\",{timeZone:r,timeZoneName:\"long\"}).format(e).split(/,/)[1].trim()}function j(e,r){r=r||e?.timeZone||g.timeZone,e=e?.value?e:e?.constructor===Date?f(e,{timeZone:r}):f({timeZone:r});let n=e.year||e.getFullYear(),t=de(new Date(n,0,1),r),a=de(new Date(n,5,1),r);return t!==a}function P(e,r){return r=r||e?.timeZone||g.timeZone,e=e?.hasDST?e:e?.constructor===Date?f(e,{timeZone:r}):f({timeZone:r}),e.hasDST?!/standard/i.test(e.toString()):!1}function Ze(e,{locale:r,timeZone:n,l:t,tz:a}={}){return e.localeInfo=p({locale:t||r||e.l||e.locale,timeZone:a||n||e.tz||e.timeZone}),e}function be(e,r){return we(r)&&(e=f(r.value||r,r.localeInfo||e.localeInfo)),e}function k(e,r){let n=oe(new Date(e,11,r||31));return n===1?k(e,(r||31)-1):n}function ne(e,r){let n=e.month;switch(!0){case n<3:return r?1:\"First\";case n<6:return r?2:\"Second\";case n<9:return r?3:\"Third\";case n<12:return r?4:\"Fourth\";default:return\"unknown\"}}function oe(e){let r=new Date(e),n=(r.getDay()+6)%7;r.setDate(r.getDate()-n+3);let t=r.valueOf();return r.setMonth(0,1),r.getDay()!==4&&r.setMonth(0,1+(4-r.getDay()+7)%7),1+Math.ceil((t-r)/6048e5)}var E=Ee;function Ee({localeInfo:e,customMethods:r,dateValue:n}={}){let t,a={add(...o){return H(t,...o)},between({start:o,end:s,include:u}={}){return W(t,{start:o,end:s,include:u})},cloneWith(o){return re(t,o)},daysUntil(o){return Te(t,o)},differenceTo(o){return R({start:t,end:o})},differenceUntil(o){return t.differenceTo(o).clean},firstWeekday({sunday:o=!1,midnight:s=!1}={}){return Q(t,{sunday:o,midnight:s})},format(o,s){return _(t,{formatStr:o,moreOptions:s})},fullMonth(o){return L(t,o)},fullWeek(o=!1){return De(t,!!o)},isFuture(o){return W(t,{start:t,end:o,future:!0})},isPast(o){return W(t,{start:t,end:o,past:!0})},next(o,s){return x(t,{day:o,next:!0,preserveTodayWhenEqual:!!s})},offsetFrom(o){return X(t,o)},previous(o,s){return x(t,{day:o,next:!1,preserveTodayWhenEqual:!!s})},relocate({locale:o,timeZone:s,l:u,tz:c}={}){return Ze(t,{locale:o,timeZone:s,l:u,tz:c})},revalue(o){return t=be(t,o),t},setDateValues({year:o,month:s,date:u}={}){return v(t,{year:o,month:s,date:u})},setTimeValues({hours:o,minutes:s,seconds:u,milliseconds:c}={}){return I(t,{hours:o,minutes:s,seconds:u,milliseconds:c})},subtract(...o){return H(t,\"subtract,\"+o.join(\",\"))},toArray(o=!1){return O(t,o)},toString({template:o,formatOptions:s,local:u}={}){return pe(t,{withFormat:o,withFormatOptions:s,local:u})},values(o=!1){return o?t.dateTime:t.zoneDateTime},zoneFormat(o,s){return _(t,{zoneTime:!0,formatStr:o,moreOptions:s})},set date({year:o,month:s,date:u}){v(t,{year:o,month:s,date:u})},set dateNr(o){v(t,{date:o})},set hours(o){I(t,{hours:o})},set localeInfo({locale:o,timeZone:s,l:u,tz:c}){e=z({locale:o,timeZone:s,l:u,tz:c})},set milliseconds(o){I(t,{milliseconds:`${o}`})},set minutes(o){I(t,{minutes:o})},set month(o){v(t,{month:o})},set seconds(o){I(t,{seconds:o})},set time({hours:o,minutes:s,seconds:u,milliseconds:c}){I(t,{hours:o,minutes:s,seconds:u,milliseconds:c})},set year(o){v(t,{year:o})},get age(){return t.differenceTo(new Date).years},get ageFull(){return t.differenceTo(new Date).clean},get clone(){return re(t)},get date(){return J(t,!0)},get dateNr(){return t.date.date},get dateTime(){return{...t.date,...t.time}},get dateTimeValues(){return O(t,!0)},get dateValues(){return K(t,!0)},get day(){return t.getDay()},get dayName(){return t.names.dayName},get daysThisMonth(){return te(t)},get DSTActive(){return P(t)},get hasDST(){return j(t)},get hours(){return t.time.hours},get info(){return $e(t)},get isLeapYear(){return new Date(t.getFullYear(),2,0).getDate()===29},get ISO(){return t.toISOString()},get local(){return F(t)},get localDate(){return F(t,{dateOnly:!0})},get locale(){return(e||z()).locale},get localeInfo(){return e},get localeString(){return F(t)},get localTime(){return F(t,{timeOnly:!0})},get milliseconds(){return t.getMilliseconds()},get minutes(){return t.time.minutes},get month(){return t.date.month},get monthName(){return t.names.monthName},get names(){return G(t)},get quarter(){return ne(t)},get quarterNr(){return ne(t,!0)},get removeTime(){return Se(t)},get seconds(){return t.time.seconds},get time(){return B(t,!0)},get timeValues(){return U(t,!0)},get timeZone(){return(e||z()).timeZone},get unixEpochTimestamp(){return Math.floor(+t/1e3)},get userLocaleInfo(){return g},get UTC(){return t.clone.relocate({locale:t.locale,timeZone:\"UTC\"})},get UTCOffset(){return X(t,\"UTC\")},get value(){return new Date(t)},get weeknr(){return oe(t)},get weeksInYear(){return k(t.year,31)},get year(){return t.date.year},get zoneDate(){return J(t,!1)},get zoneDateNr(){return t.zoneDate.date},get zoneDateTime(){return{...t.zoneDate,...t.zoneTime}},get zoneDateTimeValues(){return O(t,!1)},get zoneDateValues(){return K(t,!1)},get zoneDay(){return ee(t,!0)},get zoneDayname(){return t.zoneNames.dayName},get zoneHours(){return t.zoneTime.hours},get zoneMinutes(){return t.zoneTime.minutes},get zoneMonth(){return t.zoneDate.month},get zoneMonthname(){return t.zoneNames.monthName},get zoneNames(){return G(t,!0)},get zoneSeconds(){return t.zoneTime.seconds},get zoneTime(){return B(t)},get zoneTimeValues(){return U(t)},get zoneYear(){return t.zoneDate.year},get zoneValues(){return t.zoneDateTime},get zoneArray(){return O(t,!1)}};return!e&&!n?a:(a.localeInfo=e||z(),t=new Proxy(n,Ve(a)),Object.entries(Object.getOwnPropertyDescriptors(ue(t,r))).forEach(([o,s])=>Object.defineProperty(a,o,s)),Object.freeze(t))}function Ve(e){return{get(r,n){return n!==\"toString\"&&n in r?r[n].bind(r):Reflect.get(e,n)},set(r,n,t){return n in e&&Reflect.set(e,n,t)}}}var g=Me(Intl.DateTimeFormat().resolvedOptions()),qe=Object.getOwnPropertyNames(Date.prototype).filter(e=>e.startsWith(\"set\")).reduce((e,r)=>[...e,{native:r,syn:\"change\"+r.slice(3)}],[]);function ae(e=\"en-GB\"){return e=p({locale:e}).locale,{long:[...Array(7).keys()].map(r=>new Date(Date.UTC(1970,0,4+r)).toLocaleDateString(e,{timeZone:\"Etc/UTC\",weekday:\"long\"})),short:[...Array(7).keys()].map(r=>new Date(Date.UTC(1970,0,4+r)).toLocaleDateString(e,{timeZone:\"Etc/UTC\",weekday:\"short\"}))}}function Y(e=\"en\"){return e=p({locale:e}).locale,{long:[...Array(12).keys()].map(r=>new Date(Date.UTC(1970,r,1)).toLocaleDateString(e,{timeZone:\"Etc/UTC\",month:\"long\"})),short:[...Array(12).keys()].map(r=>new Date(Date.UTC(1970,r,1)).toLocaleDateString(e,{timeZone:\"Etc/UTC\",month:\"short\"}))}}function He({year:e,locale:r}={}){e=S(e)?parseInt(e):new Date().getFullYear();let n={year:e,calendar:{}},t=Y().long.map(a=>a.toLowerCase());for(let a=0;a<12;a+=1){let o=f.from(e,a,1);n.calendar[t[a]]=L(o,r)}return n}function _e({year:e,monthNr:r,locale:n=\"en-CA\"}={}){e=S(r)&&parseInt(e)||-1,r=S(r)&&parseInt(r)||new Date().getFullYear();let t=r>=1&&r<=12;return n=p({locale:n}).locale,r=t?r-1:void 0,t?f.from(e,r,1).relocate({locale:n}).fullMonth(n):\"MonthNr should be a specific number (1 = january - 12 = december)\"}function Me(e){let r=se(e.locale,e.timeZone),n=new Intl.Locale(e.locale);return e.weekInfo=n.getWeekInfo?n.getWeekInfo():null,Object.defineProperty(e,\"formatOptions\",{value:r,enumerable:!1})}function se(e,r){return[`${e&&!(Array.isArray(e)&&e.length<1)?`l:${e}`:\"\"}`,`${r?`tz:${r}`:\"\"}`].filter(n=>n).join(\",\")}function p({locale:e,timeZone:r,l:n,tz:t}={}){return r=r||t,e=e||n,e=Ie({trial:function(){return Intl.DateTimeFormat(e,{timeZone:g.timeZone}).resolvedOptions().locale},onError:function(){return console.warn(`Intl locale \"${e}\" best fit impossible, using \"${g.locale}\"`),g.locale}}),r=Ie({trial:function(){return Intl.DateTimeFormat(e,{timeZone:r}).resolvedOptions().timeZone},onError:function(){return console.warn(`timeZone \"${r}\" not valid. Using \"${g.timeZone}\"`),g.timeZone}}),Me(Intl.DateTimeFormat(e,{timeZone:r}).resolvedOptions())}function z({locale:e,timeZone:r,l:n,tz:t}={}){return p({locale:e,timeZone:r,l:n,tz:t},!0)}function Ne(e){return!Number.isNaN(+e)&&e?.constructor===Date?e:new Date}function ve(e){let r=new Date;switch(!0){case(typeof e==\"string\"||typeof e==\"number\"):return Ne(new Date(e));case(Array.isArray(e)&&e.map(Number).length===e.length):return e.length===1?new Date(e[0],0,1):new Date(...e);case e?.constructor===Date:return Ne(e);default:return r}}function Ie({trial:e,onError:r=()=>{}}={}){if(e?.constructor===Function)try{return e()}catch(n){return r?.constructor===Function?r(n):void 0}}function Ge({timeZoneDate:e,timeZoneID:r,userTimeZoneID:n}={}){let t={timeZone:p({timeZone:r}).timeZone},a={timeZone:p({timeZone:n||\"\"}).timeZone},o=f(e,t),s=f(e,a),u=s.differenceTo(o),c=o.offsetFrom(s).offset,[i,m]=A(c,!0),T=s.clone.add(`${i} hours, ${m} minutes`),y=u.equalDates?\"No difference\":`Time offset ${c}: ${a.timeZone} is ${u.clean} ${i<0?\"behind\":\"ahead of\"} ${t.timeZone}`;return{remoteTimezone:t.timeZone,userTimezone:a.timeZone,timeDifference:y,result:{[t.timeZone.replace(/\\//,\"_\")]:f(e).toString({template:\"yyyy/mm/dd hh:mmi:ss\",formatOptions:\"hrc:23\"}),[a.timeZone.replace(/\\//,\"_\")]:T.toString({template:\"yyyy/mm/dd hh:mmi:ss\",formatOptions:\"hrc:23\"})}}}function S(e){return!Number.isNaN(parseInt(e))}function V(e,r,n){return e?.constructor===Number?N(r,`${e} ${n}`):r}function Be(e){let r={addYears(n=1){return V(n,e,\"years\")},addMonths(n=1){return V(n,e,\"months\")},addWeeks(n=1){return n=n?.constructor===Number?n*7:1,V(n,e,\"days\")},addDays(n=1){return V(n,e,\"days\")},get nextYear(){return N(e,\"1 year\")},get nextWeek(){return N(e,\"7 days\")},get previousWeek(){return N(e,\"-7 days\")},get previousYear(){return N(e,\"-1 year\")},get nextMonth(){return q(e)},get previousMonth(){return q(e,!0)},get tomorrow(){return N(e,\"1 day\")},get yesterday(){return N(e,\"-1 day\")}};for(let n of qe)r[n.syn]=function(...t){return e[n.native](...t),e};return r}function ue(e,r){let n=Be(e);for(let[t,a]of Object.entries(r||{})){let o=a.enumerable,s=a.isGetter?{get(){return a.method(e)},enumerable:o}:{value(...u){return a.method(e,...u)},enumerable:o};Object.defineProperty(n,t,s)}return n}function ze(e,r){return Object.defineProperties(e,{now:{get(){return e(new Date)}},localeInformation:{get(){return p()}},localWeekdaynames:{value(n){return ae(n)}},localMonthnames:{value(n){return Y(n)}},daysInMonth:{value(n,t=!1){return n=S(n)?parseInt(n):0,n>=1&&n<=12?new Date(t?2e3:2005,n,0).getDate():`${n} should be a Number between (1 (january) - 12 (december))`}},yearCalendar:{value:He},monthCalendar:{value:_e},from:{value(...n){return e(n)}},fromUxTS:{value(n,t){n=S(n)?parseInt(n)*1e3:void 0;let a=n?new Date(n):new Date;return f(a,t||g)}},hasDST:{value({date:n,timeZone:t}={}){return j(n,t)}},DSTActive:{value({date:n,timeZone:t}={}){return P(n,t)}},values:{value({date:n,timeZone:t}={}){n=n||n?.value||new Date;let a=M(n,\"yyyy-m-d-h-mi-s\",p({timeZone:t}).formatOptions.concat(\",hrc:23\")).split(\"-\").map(Number).concat(n.getMilliseconds());return a[1]-=1,a}},format:{value({date:n,template:t,timeZone:a,locale:o,opts:s}={}){n=n||n?.value||new Date,t=t?.constructor===String?t:\"yyyy/mm/dd hh:mmi:ss dp\";let u=p({timeZone:a,locale:o}).formatOptions;return u+=s?`,${s}`:\"\",M(n,t,u)}},addCustom:{value({name:n,method:t,enumerable:a=!1,isGetter:o=!1}={}){n?.constructor===String&&t?.constructor===Function&&t.length>0&&(r[n]={method:t,enumerable:a,isGetter:o})}},validateLocaleInformation:{value:p},timeAcrossZones:{value:Ge},weeksInYear:{value(n){return k(n,31)}},keys:{get(){let n=Object.fromEntries(Object.entries(r).filter(([a,o])=>o.enumerable===!0));return[...Object.keys(E()),...Object.keys(ue()),...Object.keys(n)].sort((a,o)=>a.localeCompare(o))}}}),e}var Oe={},f=ze(Je,Oe);function Je(e,r){if(e?.localeInfo)return e.clone;let n=e?.locale||e?.timeZone||e?.tz||e?.l;return E({localeInfo:p(n?e:r),dateValue:new Date(n?Date.now():ve(e)),customMethods:Oe})}export{f as default};\n", "export default Object.defineProperties(instanceCreator, {escape: {value: escape4RE, enumerable: true}});\r\n\r\nfunction instanceCreator(regExStr, ...args) {\r\n const {flags, cleanedArgs} = maybeFlags(...args);\r\n return createInstance(\r\n new RegExp(cleanup(createRegExpStringFromInput(regExStr, ...cleanedArgs)), flags)\r\n );\r\n}\r\n\r\nfunction createRegExpStringFromInput(regExStr, ...cleanedArgs) {\r\n return !hasLength(cleanedArgs) ? regExStr.raw.join(``) :\r\n regExStr.raw.reduce((a, v, i) => a.concat(cleanedArgs[i - 1] || ``).concat(v), ``);\r\n}\r\n\r\nfunction maybeFlags(...args) {\r\n const flags = cleanupFlags(getFlags(args.at(-1)));\r\n return { flags, cleanedArgs: hasLength(flags) ? args.slice(0, -1) : args };\r\n}\r\n\r\nfunction getFlags(maybeFlags) { return isOfType(maybeFlags, Array) ? maybeFlags.join(``) : ``; }\r\n\r\nfunction createInstance(regExp) {\r\n const instance = new Proxy( Object.defineProperties({}, {\r\n re: { get() { return regExp; }, enumerable: false },\r\n toString: {value: () => regExp.toString(), enumerable: false},\r\n valueOf: {value: () => regExp, enumerable: false},\r\n flags: { value(flags) { regExp = modifyFlags(flags, regExp); return instance; }, enumerable: false },\r\n clone: { get() { return clone(instance); }, enumerable: false },\r\n }), getterTrap(regExp) );\r\n \r\n return instance;\r\n}\r\n\r\nfunction hasLength(variable) { return variable?.length > 0; }\r\n\r\nfunction isOfType(any, CTOR) { return any?.constructor === CTOR; }\r\n\r\nfunction maybeProp(target, key, regExp) {\r\n const fromRegExp = Reflect.get(regExp, key);\r\n return {\r\n fromInstance: Reflect.get(target, key),\r\n fromRegExpMethod: isOfType(fromRegExp, Function) ? fromRegExp.bind(target.re) : target.re[key]\r\n }\r\n}\r\n\r\nfunction getterTrap(regExp) {\r\n return {\r\n get(target, key) {\r\n const {fromInstance, fromRegExpMethod} = maybeProp(target, key, regExp);\r\n switch (true) {\r\n case !!fromInstance: return fromInstance;\r\n default: return fromRegExpMethod;\r\n }\r\n },\r\n };\r\n}\r\n\r\nfunction clone(instance) {\r\n const source = instance.re.source;\r\n const flags = hasLength(instance.re.flags) ? [...instance.re.flags] : [];\r\n return instanceCreator`${source} ${flags}`;\r\n}\r\n\r\nfunction cleanupFlags(flags, currentFlags) {\r\n currentFlags = (currentFlags ?? ``).replace(/^-r\\|/, ``);\r\n flags = currentFlags.concat(isOfType(flags, String) && hasLength(flags) ? flags : ``);\r\n return [...new Set([...flags])].join(``).replace(/[^dgimsuvy]/g, ``);\r\n}\r\n\r\nfunction modifyFlags(flags, regExp) {\r\n switch (true) {\r\n case !isOfType(flags, String) || !hasLength(flags): return regExp;\r\n case flags === `-r`: return regExp = new RegExp(regExp.source);\r\n case flags.startsWith(`-r|`): return regExp = new RegExp(regExp.source, cleanupFlags(flags));\r\n default: return regExp = new RegExp(regExp.source, cleanupFlags(regExp.flags, flags));\r\n }\r\n}\r\n\r\nfunction escape4RE(string2Escape) {\r\n switch (true) {\r\n case string2Escape?.constructor !== String || !hasLength(string2Escape): return ``;\r\n case !!RegExp.escape: return RegExp.escape(string2Escape);\r\n default: return (`\\\\x${string2Escape.at(0)}` +\r\n string2Escape.slice(1).replace(/\\p{S}|\\p{P}/gu, a => `\\\\${a}`))\r\n .replace(/ |\\\\x /g, `\\\\x20`); }\r\n}\r\n\r\nfunction cleanup(str) {\r\n return str\r\n .replace(/\\/\\*(?:[^*]|\\*+[^*\\/])*\\*+\\/|(?<!:|\\\\\\|')\\/\\/.*/gm, ``)\r\n .replace(/\\s/g, ``)\r\n .trim().replace(/<!([^>]\\d+)>/g, (a, b) => String.fromCharCode(+b) ?? a);\r\n}\r\n", "var O=f(),h=f({defaultReplacer:\"\"});function f(i={}){let{defaultReplacer:n,useSymbolicExtensions:a}=i;return n=l(n)?String(n):void 0,typeof a==\"boolean\"&&a&&v(),function(e,...t){return j(e,m(t))};function p(e,t){return t&&typeof n==\"string\"?String(n):`{${e}}`}function s(e,t){let r=Object.hasOwn(t,e);return r&&l(t[e])?String(t[e]):p(e,r)}function y(e){return(...t)=>{let r=t.find(o=>o.key);return s(r?r.key:\"_\",e)}}function b(e,t){return e.replace(/\\{(?<key>[a-z_\\d]+)}/gim,y(t))}function d(e){let t=[];return Object.entries(e).forEach(([r,o])=>{o.forEach((c,u)=>(t[u]??={},t[u][r]=c))}),t}function g(e){return e.length===1&&Object.values(e[0]).every(Array.isArray)}function m(e){return g(e)?d(e[0]):e}function l(e){return typeof e==\"string\"||typeof e==\"number\"}function S(e){return Object.prototype.toString.call(e)===\"[object Object]\"}function j(e,t){let r=t?.length?t.filter(o=>S(o)).map((o,c)=>b(e,{...o,index:c+1})).join(\"\"):e;return typeof n!=\"string\"?r:r.replace(/\\{.+}/gmi,n??\"\")}}function v(){return String.prototype[Symbol.for(\"interpolate\")]||Object.defineProperties(String.prototype,{[Symbol.for(\"interpolate\")]:{value(...i){return O(this,...i)}},[Symbol.for(\"interpolate$\")]:{value(...i){return h(this,...i)}}}),[Symbol.for(\"interpolate\"),Symbol.for(\"interpolate$\")]}export{v as addSymbolicStringExtensions,O as default,h as interpolateClear,f as interpolateFactory};\n", "import $ from \"./Resource/Externals/jqx.min.js\";\r\nimport $D from \"./Resource/Externals/ticktock.min.js\";\r\nimport regexhelper from \"./Resource/Externals/REHelper.js\";\r\n\r\nimport {\r\n default as interpolate,\r\n interpolateClear,\r\n addSymbolicStringExtensions } from \"./Resource/Externals/splat.min.js\";\r\nsetDefaultStyling();\r\nfixSBLinks2TopProblem();\r\nconst splatModule = {interpolate, interpolateClear, addSymbolicStringExtensions};\r\nexport { $, logFactory, regexhelper, $D, splatModule };\r\n\r\nfunction fixSBLinks2TopProblem() {\r\n // fix for stackblitz rewriting hrefs with target _top (see README)\r\n /stackblitz/i.test(location.href) &&\r\n console.info(`\u2714 Stackblitz rewrites links to _top. The 'stackblitzhelpers' module fixed it.`);\r\n document.addEventListener(`click`, evt => {\r\n if (evt.target.href) {\r\n const ref = evt.target;\r\n if (ref.dataset.top || ref.classList.contains(`internalLink`) || ref.target === `_top`) {\r\n return top.location.href = ref.href;\r\n }\r\n }\r\n return true;\r\n });\r\n}\r\n\r\nfunction logFactory(formatJSON = true) {\r\n const logContainer = $(`<ul id=\"log2screen\">`).first();\r\n const [logLamda, logTopLambda] = [logItem(), logItem(true)];\r\n \r\n return {\r\n log: (...txt) => txt.forEach( logLamda ),\r\n logTop: (...txt) => txt.forEach( logTopLambda ),\r\n };\r\n \r\n function logItem(top = false) {\r\n const where2PutIt = top ? $.at.start : $.at.end;\r\n \r\n return content => {\r\n if (content?.isJQx) {\r\n const item = $.li().append(content);\r\n if (content.data.get(`header`)) { item.addClass(`head`); }\r\n return item.renderTo(logContainer, where2PutIt);\r\n }\r\n \r\n content = !$.IS(content, String, Number, Symbol) ? tryJSON(content, formatJSON) : String(content);\r\n const isHead = content.startsWith(`!!`);\r\n content = isHead ? content.slice(2) : content;\r\n const item = $.li(content);\r\n isHead && item.addClass(`head`);\r\n item.renderTo(logContainer, where2PutIt);\r\n };\r\n }\r\n}\r\n\r\nfunction tryJSON(content, formatted) {\r\n try { return formatted ? `<pre>${JSON.stringify(content, null, 2)}</pre>` : JSON.stringify(content); }\r\n catch(err) {return `Some [Object object] can not be converted to JSON`}\r\n}\r\n\r\nfunction setDefaultStyling() {\r\n $.editCssRules(`li::marker{vertical-align:top;}`,`code{color:green;background-color:#eee;padding:2px;font-family:monospace;}`,`code.codeblock{display:block;padding:6px;border:1px solid #999;margin:0.5rem 0;background-color:#eee;white-space:pre-wrap;}`,`h3{marginTop:1.5rem;}`,`.thickBorder{border:5px solid green;borderWidth:5px;padding:0.5rem;display:inline-block;}`,`a.ExternalLink{text-decoration:none;color:rgb(0,0,238);background-color:#EEE;padding:3px;font-weight:bold;}`,`.cmmt{color:#888;}`,`.hidden{display:none;}`,`.attention{color:red; font-size:1.2em; font-weight:bold;}`,`#log2screen li{listStyle:'\\\\2713';paddingLeft:6px;margin:0.5rem 0 0 -1.2rem;font-family:monospace}`,`#log2screen li.head{list-style-type:none;font-weight:bold;margin-top:0.8rem;margin-bottom:-0.2rem;font-family:revert;}`,`.err{fontStyle:italic; color:red; }`,`a{text-decoration:none; font-weight:bold;}`,`a:hover{text-decoration:underline;}`,`a[target]:before,a.internalLink:before,a.externalLink:before{color:rgba(0,0,238,0.7);font-size:1.1rem;padding-right:2px;vertical-align:baseline;}`,`a[target=\"_blank\"]:before,a.externalLink:before{content:'\\\\2197';}`,`a[data-top]:before,a.internalLink:before,a[target=\"_top\"]:before{content:'\\\\21BA';}`);\r\n}\r\n"],
5
+ "mappings": "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",
6
+ "names": ["toaSymbols", "IS", "isOnly", "maybe", "$Wrap", "isNothing", "addSymbolicExtensions", "proxyWrapper", "TOAFactory", "specs", "useSymbolicExtensions", "isJust", "typeCheckFactory", "shouldbeIsSingleObject", "ISOneOf", "isExcept", "verifyNothingness", "determineType", "detectableProxy", "TOAHelpers", "TOASymbols", "anything", "shouldBe", "unChained", "v", "single", "input", "_", "SymbolAndCustomProxyFactory", "maybeFactory", "WrapAnyFactory", "AUXHelperFactory", "typeOf", "isTypeObj", "isOrDefault", "obj", "params", "param", "defaultValue", "isTypes", "notTypes", "SYMBOL_KEYS", "TYPE_STRINGS", "detectableProxyFactory", "addSymbolsFactory", "trapped", "type", "target", "key", "wrapProxy", "proxy2Wrap", "createDetectableProxy", "traps", "addSymbols2Anything", "args", "useSymbolicExtension", "constructor2String", "processInput", "noShouldbe", "noInput", "compareTo", "inputCTOR", "isNaN", "isInfinity", "shouldBeFirstElementIsNothing", "getResult", "finalInputResolver", "compareWith", "maybeResult", "resultWithComparison", "resultWithoutComparison", "someObj", "wrapper", "errFn", "err", "trial", "whenError", "maybeNothing", "all", "nada", "collate", "nameOf", "type2Check", "checkSingleType", "objName", "typeName", "chkType", "popupStyling", "getPopupStyling", "ATTRS", "getAttrs", "allTags", "getPermissions", "checkType", "converts", "ucFirst", "first", "theRest", "toDashedNotation", "str2Convert", "a", "toCamelcase", "str", "i", "cloneExact", "elementFunctionCollection2", "cleanupProps", "props", "specials", "retrieveSpecialProps", "keyCI", "data", "attributes", "classList", "cleanupComment", "initial", "isComment", "tag", "containsHTML", "validateElementTagName", "tagName", "validateTag", "name", "customElementRegistry2", "createElement2", "elementFunctionCollection", "customElementRegistry", "tagFunctionError", "tinyDOM_default", "tinyDOM", "proxyTraps", "tagFns", "createElement", "createTagFunctionProperty", "value", "custom", "debug", "isError", "unsealedElementFunctionCollection", "reSeal", "dashed", "camel", "tag2FN", "unsealedCollection", "processNext", "root", "next", "tagFN", "nested", "elem", "retrieveElementFromInitial", "arg", "createElementAndAppend", "element2Append", "assignSpecialProps", "specialProps", "element", "assignable", "LifeCSS_default", "LifeStyleFactory", "styleSheet", "createWithId", "tryParseAtOrNestedRules", "ruleExists", "checkParams", "sheet", "removeRules", "consider", "currentSheetID", "sheetHelpers", "setRules4Selector", "rule", "properties", "prop", "priority", "tryAndCatch", "setRules", "selector", "styleRules", "sheetOrMediaRules", "exists", "rule4Selector", "doParse", "cssDeclarationString", "shortenRule", "cssRules", "cssRuleFromText", "styleFromString", "checkAts", "styleFromObject", "rulesObj", "atMedia2String", "cssBlockOrSelector", "notification", "retrieveOrCreateSheet", "id", "existingSheet", "newSheet", "notSupported", "ruleFragOrSelector", "isSelector", "r", "compareSelectors", "createRE", "escape4RegExp", "tryParse", "rulesAt", "acc", "len", "idx", "fn", "existing", "selectr", "stringifyMediaRule", "shortRule", "mediaObj", "regexStr", "flags", "line", "msg", "prepareCssRuleFromText", "b", "l", "toRuleObject", "preparedRule", "s1", "s2", "lenient", "allowUnknownHtmlTags", "HTMLTags_default", "nodeName", "tag2Allow", "tag2Prohibit", "logElementCreationErrors2Console", "attrRegExpStore", "logContingentErrors", "elCreationInfo", "msgs", "k", "escHtml", "systemLog", "elementCheck", "child", "notAllowedCustomElementNames", "cleanupHtml", "el2Clean", "attrStore", "attr", "evilValue", "evilAttrib", "val", "truncate2SingleStr", "tagValue", "htmlToVirtualElement", "htmlString", "placeholderNode", "insertPositions", "characterDataElement2DOM", "position", "inject2DOMTree", "collection", "created", "isNode", "element2DOM", "createElementFromHtmlString", "htmlStrOrText", "testStr", "text", "nwElem", "truncateHtmlStr", "Popup_default", "$", "timers", "popupContent", "popupNode", "currentProps", "genericPopupCloseHandler", "initPopup", "initHidePopup", "removeModal", "isCurrent", "content", "showPopup", "failModalClose", "hidePopup", "modal", "closeAfter", "closerIcon", "createTimer", "clearTimers", "timer", "callback", "evt", "seconds", "warnMessage", "modalWarningBox", "HandlerFactory", "jqx", "store", "anon", "setListener", "listener", "handler", "capture", "removeListener", "wrapFn4Selector", "once", "handlerName", "isNonEmptyString", "elemFound", "me", "remove", "storedEventType", "eventType", "retrieve", "handlerIdCache", "storeHandler", "spec", "node", "about", "getHandlerName", "initialHandler", "handlerID", "getCaptureValue", "nwHandler", "systemLogFactory", "allwaysCaptureEventTypes", "characters4RandomString", "x", "datasetKeyProxy", "clearAllTimers", "uniqueHandlerID", "getAttributesForLogging", "instance", "dataset", "attrs", "idCache", "anonID", "captureValue", "t", "checkProp", "emptyElement", "el", "findParentScrollDistance", "distance", "top", "minlen", "maxLength", "html", "tmpDiv", "decodeForConsole", "something", "on", "disabled", "backLog", "systemLogger", "disable", "enable", "error", "logTime", "warn", "log", "entryTxt", "d", "pad0", "assignAttrValues", "keyValuePairs", "setData", "input2Collection", "isArrayOfHtmlElements", "beforeOrAfter", "after", "toAdd", "bOrA", "applyStyle", "rules", "cloneAndDestroy", "cloned", "isVisible", "elStyle", "computedStyle", "invisible", "noDisplay", "hidden", "zeroHeightOrWidth", "offscreen", "noOpacity", "isWritable", "ElemArray2HtmlString", "elems", "isCommentOrTextNode", "nr", "n", "randomNr", "max", "min", "randomString", "shuffle", "resolveEventTypeParameter", "maybeTypes", "isModal", "convert2Bool", "array", "ri", "isText", "isHtmlString", "isArrayOfHtmlStrings", "s", "loop", "cleanCollection", "getNodeContentForLog", "setCollectionFromCssSelector", "self", "selectorRoot", "selectedFactoryHelpers", "ExamineElementFeatureFactory", "noElements", "firstElem", "css", "keyOrKvPairs", "nwClass", "c", "instanceIs", "JQxInstanceMethods_default", "factoryExtensionsFactory", "instanceExtensionsFactory", "valuesObj", "whenUndefined", "boundingRect", "outer", "escaped", "append", "escape", "isString", "maybeParent", "styleObj", "classes2Apply", "addClassNameOrID", "classNames", "cn", "elems2Append", "shouldMove", "elem2Append", "elem2Append4Test", "toAppend", "appendTo", "keyOrObj", "theClosest", "property", "toDOM", "clone", "cb", "asJQxInstance", "indexOrSelector", "dataAttribute", "valueWhenFalsy", "htmlValue", "nwElement", "forSelector", "el2Change", "elems2Prepend", "elem2Prepend", "toPrepend", "prependTo", "nameOrProperties", "propName", "propValue", "remover", "removeFromCollection", "selectedElements", "attrNames", "oldChild", "newChild", "chld", "className", "nwClassNames", "hasNodes", "textValue", "evtType", "SpecifiedEvent", "options", "evObj", "newValue", "instanceGetters", "instanceMethods", "cssRuleEdit", "addFn", "selectedUtilitiesFactory", "addFnMethod", "extensionMethod", "staticFNMethodFactory", "isGetter", "ext", "proxify", "proxyTrapFactory", "maybeReProxify", "method", "returnValue", "proxyReporter", "JQxtarget", "addJQxStaticMethods", "staticMethods", "defaultStaticMethodsFactory", "descriptor", "allowances", "isWebComponent", "webComponentTagName", "addGetters", "cssRemove", "ruleStr", "virtualFactory", "pos", "virtualElem", "combineObjectSources", "sources", "result", "source", "descriptors", "tagGetterFactory", "cando", "reportIdOrClass", "jqxGetterForThisTag", "staticTagsLambda", "staticMethodsFactory", "delegateFactory", "listen", "listeners", "delegateCaptureFactory", "handlerWrapper", "types", "origin", "handlers", "typesResolved", "specifiedName", "assignListeners", "handlerFns", "getNamedListenerFactory", "popupGetter", "getSelectedStaticMethods", "editCssRule", "ruleOrSelector", "ruleObject", "createStyle", "editCssRules", "allowProhibit", "capturedHandling", "factoryExtensions", "instanceExtensions", "handle", "getNamedListener", "staticFN", "JQxConstructorFactory_default", "JQxMainFactory", "isVirtual", "isRawHtml", "shouldCreateElements", "isRawElemCollection", "htmlStringOrComment", "errors", "multiple", "collectionLog", "index_default", "M", "ke", "r", "t", "a", "l", "o", "y", "s", "h", "d", "D", "Z", "b", "$", "w", "Fe", "u", "c", "i", "m", "T", "le", "Ce", "ie", "Ae", "ge", "ye", "Ye", "N", "We", "he", "q", "H", "De", "Q", "W", "f", "_", "g", "Ue", "Te", "G", "se", "ae", "Y", "B", "U", "J", "K", "Le", "x", "xe", "A", "R", "fe", "C", "X", "ce", "je", "me", "pe", "ee", "$e", "O", "te", "L", "p", "Pe", "F", "v", "S", "I", "we", "re", "Se", "de", "j", "P", "Ze", "be", "k", "oe", "ne", "E", "Ee", "z", "Ve", "ue", "Me", "qe", "He", "_e", "Ie", "Ne", "ve", "Ge", "V", "Be", "ze", "Oe", "Je", "REHelper_default", "instanceCreator", "escape4RE", "regExStr", "args", "flags", "cleanedArgs", "maybeFlags", "createInstance", "cleanup", "createRegExpStringFromInput", "hasLength", "a", "v", "i", "cleanupFlags", "getFlags", "isOfType", "regExp", "instance", "modifyFlags", "clone", "getterTrap", "variable", "any", "CTOR", "maybeProp", "target", "key", "fromRegExp", "fromInstance", "fromRegExpMethod", "source", "currentFlags", "string2Escape", "str", "b", "O", "f", "h", "i", "n", "a", "l", "v", "e", "t", "j", "m", "p", "s", "r", "y", "o", "b", "d", "c", "u", "g", "S", "setDefaultStyling", "fixSBLinks2TopProblem", "splatModule", "O", "h", "v", "fixSBLinks2TopProblem", "evt", "ref", "logFactory", "formatJSON", "logContainer", "En", "logLamda", "logTopLambda", "logItem", "txt", "top", "where2PutIt", "content", "item", "tryJSON", "isHead", "formatted", "setDefaultStyling"]
7
7
  }