pacem 0.52.1 → 0.52.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/dist/css/pacem-dark-content.min.css +2 -2
  2. package/dist/css/pacem-dark-shell.min.css +3 -3
  3. package/dist/css/pacem-dark.min.css +3 -3
  4. package/dist/css/pacem-light-content.min.css +2 -2
  5. package/dist/css/pacem-light-shell.min.css +3 -3
  6. package/dist/css/pacem-light.min.css +3 -3
  7. package/dist/css/pacem-phousys-content.min.css +2 -2
  8. package/dist/css/pacem-phousys-shell.min.css +3 -3
  9. package/dist/css/pacem-phousys.min.css +3 -3
  10. package/dist/js/azure-maps.d.ts +2 -2
  11. package/dist/js/pacem-2d.d.ts +2 -2
  12. package/dist/js/pacem-2d.js +2 -2
  13. package/dist/js/pacem-2d.min.js +2 -2
  14. package/dist/js/pacem-3d.d.ts +2 -2
  15. package/dist/js/pacem-3d.js +2 -2
  16. package/dist/js/pacem-3d.min.js +2 -2
  17. package/dist/js/pacem-charts.d.ts +2 -2
  18. package/dist/js/pacem-charts.js +2 -2
  19. package/dist/js/pacem-charts.min.js +2 -2
  20. package/dist/js/pacem-cms.d.ts +2 -2
  21. package/dist/js/pacem-cms.js +2 -2
  22. package/dist/js/pacem-cms.min.js +2 -2
  23. package/dist/js/pacem-core.d.ts +2 -2
  24. package/dist/js/pacem-core.js +2 -2
  25. package/dist/js/pacem-core.min.js +2 -2
  26. package/dist/js/pacem-foundation.d.ts +2 -2
  27. package/dist/js/pacem-foundation.js +2 -2
  28. package/dist/js/pacem-foundation.min.js +2 -2
  29. package/dist/js/pacem-fx.d.ts +2 -2
  30. package/dist/js/pacem-fx.js +7 -4
  31. package/dist/js/pacem-fx.min.js +3 -3
  32. package/dist/js/pacem-logging.d.ts +2 -2
  33. package/dist/js/pacem-logging.js +2 -2
  34. package/dist/js/pacem-logging.min.js +2 -2
  35. package/dist/js/pacem-maps.d.ts +2 -2
  36. package/dist/js/pacem-maps.js +2 -2
  37. package/dist/js/pacem-maps.min.js +2 -2
  38. package/dist/js/pacem-media.d.ts +2 -2
  39. package/dist/js/pacem-media.js +2 -2
  40. package/dist/js/pacem-media.min.js +2 -2
  41. package/dist/js/pacem-networking.d.ts +37 -2
  42. package/dist/js/pacem-networking.js +180 -3
  43. package/dist/js/pacem-networking.min.js +3 -3
  44. package/dist/js/pacem-numerical.d.ts +2 -2
  45. package/dist/js/pacem-numerical.js +2 -2
  46. package/dist/js/pacem-numerical.min.js +2 -2
  47. package/dist/js/pacem-plus.d.ts +2 -2
  48. package/dist/js/pacem-plus.js +2 -2
  49. package/dist/js/pacem-plus.min.js +2 -2
  50. package/dist/js/pacem-scaffolding.d.ts +2 -2
  51. package/dist/js/pacem-scaffolding.js +2 -2
  52. package/dist/js/pacem-scaffolding.min.js +2 -2
  53. package/dist/js/pacem-ui.d.ts +2 -2
  54. package/dist/js/pacem-ui.js +2 -2
  55. package/dist/js/pacem-ui.min.js +2 -2
  56. package/dist/js/swagger-types.d.ts +2 -2
  57. package/package.json +6 -6
@@ -1,6 +1,6 @@
1
1
  /**
2
- * pacem v0.52.1 (https://js.pacem.it)
3
- * Copyright 2025 Pacem (https://pacem.it)
2
+ * pacem v0.52.2 (https://js.pacem.it)
3
+ * Copyright 2026 Pacem (https://pacem.it)
4
4
  * Licensed under Apache-2.0
5
5
  */
6
6
  var __decorate=this&&this.__decorate||function(e,t,r,n){var s,i=arguments.length,o=i<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,t,r,n);else for(var a=e.length-1;a>=0;a--)(s=e[a])&&(o=(i<3?s(o):i>3?s(t,r,o):s(t,r))||o);return i>3&&o&&Object.defineProperty(t,r,o),o},Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem,Pacem;!function(e){e.Type=Function,e.WATCH_PROPS_VAR="pacem:properties",e.INSTANCE_BINDINGS_VAR="pacem:custom-element:bindings",e.INSTANCE_HOST_VAR="pacem:custom-element:host",e.INSTANCE_SCOPE_VAR="pacem:custom-element:scope"}(Pacem||(Pacem={})),function(e){class DeferPromise{constructor(){this.deferred=null;var e=this;e.promise=new Promise(function(t,r){e.deferred={resolve:t,reject:r,promise:e}})}then(e,t){return this.promise.then(e,t)}finally(e){return this.promise.then(e,e),this}success(e){return this.promise.then(e,null),this}error(e){return this.promise.then(null,e),this}static defer(){return(new DeferPromise).deferred}}e.DeferPromise=DeferPromise}(Pacem||(Pacem={})),function(e){class DeepCloner{constructor(){}static clone(e){return(new DeepCloner)._clone(e)}_clone(e){let t=new WeakMap;return function e(r){if(!("object"!=typeof r||null===r||r instanceof Element||r instanceof FileSystemHandle||r instanceof File)){if(Array.isArray(r))return r.map(e);if(r instanceof Date)return new Date(r.valueOf());if(r instanceof RegExp)return new RegExp(r);if(t.has(r))return t.get(r);{let n=Object.assign({},r);return t.set(r,n),Object.keys(n).forEach(t=>{n[t]=e(r[t])}),n}}return r}(e)}}e.DeepCloner=DeepCloner}(Pacem||(Pacem={})),function(Pacem){const REF_ID="$refId";let JsonFunctionConversion;!function(e){e[e.Ignore=0]="Ignore",e.Reference="reference",e.Plain="plain"}(JsonFunctionConversion=Pacem.JsonFunctionConversion||(Pacem.JsonFunctionConversion={}));class JsonFnStore{static{this._jsonFnWeakMap=new WeakMap}static{this._jsonFnMap=new Map}static store(e){const t=this._jsonFnWeakMap;if(!t.has(e)){const r=Pacem.Utils.uniqueCode();t.set(e,r),this._jsonFnMap.set(r,e)}return t.get(e)}static retrieve(e){return this._jsonFnMap.get(e)}static remove(e){const t=this.retrieve(e);this._jsonFnMap.delete(e),this._jsonFnWeakMap.delete(t)}}class Json{constructor(e){this._options=e}static serialize(e,t){return new Json(t)._serialize(e)}static deserialize(e){return(new Json)._deserialize(e)}_serialize(e){let t=Pacem.DeepCloner.clone(e),r=[REF_ID],n=this._flatten(t,0,null,r);return JSON.stringify(n,r.sort())}_deserialize(json){let hasRefs=!1,obj=JSON.parse(json,(key,value)=>{const elPattern=/^\$<#(.+)>$/,fnPattern=/^\$<fn:([^\x05]+)>$/,regexPattern=/^\$<regex:(.+)>$/,fnRefPattern=/^\$<fn#(.+)>$/;let arr;if(key===REF_ID)hasRefs=!0;else if("string"==typeof value){if((arr=regexPattern.exec(value))&&arr.length>1){const e=arr[1],t=e.lastIndexOf("|");return new RegExp(e.substr(0,t),e.substr(t+1))}if((arr=elPattern.exec(value))&&arr.length>1)return document.getElementById(arr[1]);if((arr=fnPattern.exec(value))&&arr.length>1)return eval(arr[1]);if((arr=fnRefPattern.exec(value))&&arr.length>1)return JsonFnStore.retrieve(arr[1])}return value});return hasRefs?this._revive(obj):obj}_flatten(e,t=0,r,n){if(r=r||new WeakSet,n=n||[],e instanceof Element){if(!e.id)return;return`$<#${e.id}>`}if(e instanceof RegExp)return`$<regex:${e.source}|${e.flags}>`;if(!("object"!=typeof e||null==e||e instanceof Date))return Array.isArray(e)?e.map(e=>this._flatten(e,t,r,n)):r.has(e)?e[REF_ID]=e[REF_ID]||"$#ref_"+t++:(r.add(e),Object.keys(e).forEach(s=>{-1===n.indexOf(s)&&n.push(s),e[s]=this._flatten(e[s],t,r,n)}),e);if("function"==typeof e)switch(this._options?.functions){case JsonFunctionConversion.Reference:return"$<fn#"+JsonFnStore.store(e)+">";case JsonFunctionConversion.Plain:return"$<fn:"+e+">";default:return}return e}_revive(e){let t={};const r=/^\$#ref_(.+)$/;return function e(n){if("object"==typeof n&&null!==n){if(Array.isArray(n))return n.map(e);REF_ID in n&&(t[n[REF_ID]]=n,delete n[REF_ID]),Object.keys(n).forEach(t=>{n[t]=e(n[t])})}else if("string"==typeof n&&r.test(n)){let e=r.exec(n);return t[e[0]]}return n}(e)}}Pacem.Json=Json}(Pacem||(Pacem={})),function(e){const t="download";e.stopPropagationHandler=e=>{e.stopPropagation()},e.preventDefaultHandler=e=>{e.preventDefault()},e.avoidHandler=e=>{e.preventDefault(),e.stopPropagation()};const r=/^\/[^\/]+/,n=/\/\{([a-z\$_][\w]*)\??\}/;class Utils{static get core(){const e=window.Pacem;var t=e&&e.Configuration&&e.Configuration.core||"pacem";return window[t]=window[t]||{}}static get customElements(){return window.customElements}static uniqueId(){return e.Keys.uniqueId()}static uniqueCode(){return e.Keys.uniqueCode()}static randomString(t){return e.Keys.randomString(t)}static parseDate(t){return e.Dates.parse(t)}static copyToClipboard(e){return navigator.clipboard?navigator.clipboard.writeText(e):new Promise((t,r)=>{const n=document.createElement("textarea");n.value=e,n.style.opacity="0",document.body.appendChild(n);try{n.select(),document.execCommand("copy"),n.remove(),t()}catch(e){r(e)}})}static{this.Json={stringify:e.Json.serialize,parse:e.Json.deserialize}}static{this.Dates={now:()=>Utils.parseDate(Date.now()),parse:Utils.parseDate,isLeapYear:e.Dates.isLeapYear,daysInMonth:e.Dates.daysInMonth,isDate:e.Dates.isDate,dateOnly:e.Dates.dateOnly,addMonths:e.Dates.addMonths,addDays:e.Dates.addDays,daysBetween:e.Dates.daysBetween}}static colorize(t,r){const n=38,s=.245,i=.6;var o,a,l;a="string"==typeof(o=t instanceof HTMLElement?r:t)?e.Colors.parse(o):{r:o[0],g:o[1],b:o[2]};const c=e.Colors.hsl(a);if(l=`brightness(50%) sepia(1) hue-rotate(${c.h-n}deg) saturate(${c.s-s+1}) brightness(${c.l-i+1})`,o!==r)return l;undefined.style.filter=l}static cssEscape(e){return escape(e).replace("%","\\")}static{this.Css={colorize:Utils.colorize,escape:Utils.cssEscape,getVariableValue:e=>getComputedStyle(document.documentElement).getPropertyValue(e),setVariable(e,t){getComputedStyle(document.documentElement).setProperty(e,t)},isClassDefined(e){const t=new RegExp("."+e+"($|[s.,])");for(let e=0;e<document.styleSheets.length;e++){const r=document.styleSheets.item(e);try{const e=r.cssRules;for(let n=0;n<e.length;n++){const e=r.cssRules.item(n);if(t.test(e.selectorText))return!0}}catch(e){e instanceof DOMException&&console.warn("Couldn't access cssRules of stylesheet \""+r.href+'".')}}return!1},deserializeTransform(e){const t=e instanceof Element?getComputedStyle(e):e;let r,n=1,s=0,i=0,o=1,a=0,l=0,c=/^matrix\((.*)\)$/.exec(t.transform);return c&&c.length>1&&6==(r=c[1].split(",")).length&&(n=parseFloat(r[0]),s=parseFloat(r[1]),i=parseFloat(r[2]),o=parseFloat(r[3]),a+=parseFloat(r[4]),l+=parseFloat(r[5])),{a:n,b:s,c:i,d:o,e:a,f:l}}}}static{this.leftPad=e.Strings.leftPad}static{this.formatString=e.Strings.format}static{this.diff=e.Strings.diff}static{this.Strings={leftPad:e.Strings.leftPad,format:e.Strings.format,diff:e.Strings.diff,stripHTML:e=>(new DOMParser).parseFromString(e,"text/html").body.textContent||""}}static{this.Blobs={toDataURL:e.Blobs.blobToDataURL,fromDataURL:e.Blobs.dataURLToBlob,toText:e.Blobs.blobToText,fromText:e.Blobs.textToBlob}}static{this.Images={load:e.Imaging.loadImage,resize:e.Imaging.resizeImage}}static loadImage(e){return new Promise((t,r)=>{const n=new Image;n.src=e,n.complete?t(n):(n.onload=e=>{t(n)},n.onerror=e=>{r()})})}static blobToDataURL(e){return Utils.Blobs.toDataURL(e)}static dataURLToBlob(e){return Utils.Blobs.fromDataURL(e)}static blobToText(e,t){return Utils.Blobs.toText(e,t)}static textToBlob(e,t="text/plain"){return Utils.Blobs.fromText(e,t)}static resizeImage(t,r,n,s){var i=e.DeferPromise.defer();return Utils.blobToDataURL(t).then(Utils.loadImage).then(e=>{const o=e.width,a=e.height;let l=document.createElement("canvas");l.width=o,l.height=a;let c=l.getContext("2d");if(o>r||a>n){const t=o/a;let m,d;r/n<t?(d=r,m=r/t):(m=n,d=n*t),l.width=d,l.height=m;const h=s>0&&s<=1;let u;h&&(c.fillStyle="#000",c.fillRect(0,0,l.width,l.height)),Utils.cropImageOntoCanvas(e,c),u=h?c.canvas.toDataURL("image/jpeg",s):c.canvas.toDataURL(),i.resolve(Utils.dataURLToBlob(u))}else i.resolve(t)},e=>{}),i.promise}static cropImage(t,r,n,s){var i=e.DeferPromise.defer();let o=new Image;return o.crossOrigin="anonymous",o.onload=function(e){let t=document.createElement("canvas"),a=t.getContext("2d");r&&(t.width=r),n&&(t.height=n);const l=s>0&&s<=1;l&&(a.fillStyle="#000",a.fillRect(0,0,t.width,t.height)),Utils.cropImageOntoCanvas(o,a),i.resolve(l?t.toDataURL("image/jpeg",s):t.toDataURL())},o.src=t,i.promise}static getUserMediaFunctions(){var e=[];let t=[navigator.getUserMedia,navigator.webkitGetUserMedia,navigator.msGetUserMedia,navigator.mozGetUserMedia].filter(function(e,t){return"function"==typeof e});return t.length&&(e=t),e}static cropImageOntoCanvas(e,t,r,n){t.imageSmoothingEnabled=t.mozImageSmoothingEnabled=t.oImageSmoothingEnabled=t.webkitImageSmoothingEnabled=!0;let s=t.canvas.width,i=t.canvas.height,o=s,a=i,l=r||1*e.width,c=n||1*e.height;s/i>l/c?(i=s/l*c,t.drawImage(e,0,.5*(-i+a),o,i)):(s=i/c*l,t.drawImage(e,-Math.abs(.5*(-s+o)),0,s,a))}static get _domURL(){return window.URL||window.webkitURL||window}static snapshotElement(e,t,r="image/png",n){function s(e){return new Promise((s,i)=>{const o=document.createElement("canvas"),a=e.width,l=e.height;if(a>0)if(l>0){o.width=a,o.height=l;const i=o.getContext("2d");Utils.isNullOrEmpty(t)||(i.fillStyle=t,i.fillRect(0,0,a,l)),i.drawImage(e,0,0),o.toBlob(e=>{s(e)},r,n)}else i("Image has height zero.");else i("Image has width zero.")})}return e instanceof HTMLCanvasElement?s(e):new Promise((t,r)=>{const n=[];function i(e){const t=new Promise((t,r)=>{fetch(e instanceof HTMLImageElement?e.src:e.href.baseVal).then(e=>e.blob()).then(e=>Utils.blobToDataURL(e)).then(r=>{var n;n=r,e instanceof HTMLImageElement?e.src=n:e.setAttribute("href",n),t()})});n.push(t)}function o(e,t){!function(e,t){const r=getComputedStyle(t);for(let t=0;t<r.length;t++){const n=r.item(t);e.style[n]=r[n]}}(e,t),e instanceof HTMLImageElement||e instanceof SVGImageElement?i(e):e instanceof HTMLCanvasElement&&function(e,t){const r=new Promise((r,n)=>{const s=new Image;s.crossOrigin="anonymous",s.width=t.width,s.height=t.height,s.style.cssText=e.style.cssText,s.onload=()=>{e.replaceWith(s),r()},s.src=t.toDataURL()});n.push(r)}(e,t);const r=e.children.length;for(let n=0;n<r;n++){const r=e.children.item(n),s=t.children.item(n);r.tagName===s.tagName&&o(r,s)}}if(e instanceof SVGElement){const t=e.cloneNode(!0);o(t,e),Promise.all(n).then(r=>{e=t,l()})}else{var a=document.implementation.createHTMLDocument("");a.write(e.outerHTML),a.documentElement.setAttribute("xmlns",a.documentElement.namespaceURI);const t=document.evaluate(".//"+e.localName,a.body,null,XPathResult.FIRST_ORDERED_NODE_TYPE,null).singleNodeValue;t.setAttribute("xmlns",a.documentElement.namespaceURI),o(t,e),Promise.all(n).then(r=>{const n=document.createElementNS("http://www.w3.org/2000/svg","svg"),s=Utils.offset(e);n.setAttribute("viewBox",`0 0 ${s.width} ${s.height}`),n.setAttribute("width",s.width.toString()),n.setAttribute("height",s.height.toString()),n.innerHTML=`<foreignObject width="${s.width}" height="${s.height}">${t.outerHTML}</foreignObject>`,e=n,l()})}function l(){const r=(new XMLSerializer).serializeToString(e),n=new Image;n.crossOrigin="anonymous";const i="data:image/svg+xml;charset=utf8,"+encodeURIComponent(r);n.onload=()=>{s(n).then(t)},n.src=i}})}static async download(e,r,n="application/download"){if("string"==typeof e){const o=e;let a,l={};Utils.isNullOrEmpty(r)||("object"==typeof r?(l={credentials:r.credentials,headers:r.headers},a=r.filename||a,n=r.mime||n):a=r);var s=await fetch(o,l);if(s.ok){if(Utils.isNullOrEmpty(a)){const e="Content-Disposition";if(s.headers.has(e)){const t=s.headers.get(e),r=/^attachment; filename=\"?([^;\"]+)\"?(;|$)/.exec(t);r.length>1&&(a=r[1])}else a=t}var i=await s.blob();const e=a.split(/[\\\/]/g).join("_");return Utils.download(i,e)}{const e=await s.text();throw new Error(e)}}{const n=e,s="string"==typeof r&&r||t,i=document.createElement("a");if(i.setAttribute("href",this._domURL.createObjectURL(n)),i.setAttribute("download",s),document.createEvent){var o=document.createEvent("MouseEvents");o.initEvent("click",!0,!0),i.dispatchEvent(o)}else i.click()}}static isDOMReady(){return"interactive"===document.readyState||"complete"===document.readyState}static onDOMReady(e){window.addEventListener("load",e,!1)}static moveChildren(e,t){return Utils.moveItems(e.childNodes,t)}static moveItems(e,t){let r,n=[];for(let s=e.length-1;s>=0;s--){let i=e instanceof NodeList?e.item(s):e[s];t.insertBefore(i,r),n.unshift(i),r=i}return n}static is(e,t){return(e.matches||e.matchesSelector||e.msMatchesSelector||e.mozMatchesSelector||e.webkitMatchesSelector||e.oMatchesSelector).call(e,t)}static lang(e){return e.lang||document.documentElement.lang||navigator.language}static jsonSortStringify(e){return Utils.isNull(e)?e:Utils.Json.stringify(e)}static{this.Browsers={detect:e.Browsers.detect}}static cookies(e){const t=(e??document.cookie).split(";"),r={};for(var n of t){const e=n.split("=");if(e.length<2)continue;const t=(e[0]||"").trim(),s=(e[1]||"").trim();Object.defineProperty(r,t,{configurable:!1,enumerable:!0,writable:!1,value:decodeURIComponent(s.split("+").join(" "))})}return r}static{this.Cookies={getAll:async e=>{const t="cookieStore"in window?window.cookieStore:null,r=[];if(Utils.isNull(t)){const t=Utils.cookies();for(let n in t)(Utils.isNullOrEmpty(e)||e===n)&&r.push({name:n,value:t[n]});return r}return await t.getAll(e)},stringify:e=>{let t=`${e.name}=${encodeURIComponent(e.value??"")}`;return Utils.isNullOrEmpty(e.domain)||(t+=`; domain=${encodeURIComponent(e.domain)}`),Utils.isNullOrEmpty(e.path)||(t+=`; path=${encodeURIComponent(e.path)}`),e.maxAge>0&&(t+=`; max-age=${e.maxAge.toFixed(0)}`),Utils.isNullOrEmpty(e.expires)||(t+=`; expires=${e.expires}`),e.partitioned&&(t+="; Partitioned"),Utils.isNullOrEmpty(e.sameSite)||(t+=`; SameSite=${encodeURIComponent(e.sameSite)}`),e.secure&&(t+="; Secure"),t}}}static isVisible(e){return"checkVisibility"in e?e.checkVisibility({checkOpacity:!0,checkVisibilityCSS:!0}):"hidden"!==getComputedStyle(e).visibility&&(e.clientWidth>0||e.clientHeight>0)}static hasClass(e,t){return e.classList?e.classList.contains(t):new RegExp("(^| )"+t+"( |$)","gi").test(e.className)}static addClass(e,t){const r=t.trim();e.classList?DOMTokenList.prototype.add.apply(e.classList,r.split(" ")):e.setAttribute("class",e.className+" "+r)}static removeClass(e,t){const r=t.trim();e.classList?DOMTokenList.prototype.remove.apply(e.classList,r.split(" ")):e.setAttribute("class",e.className.replace(new RegExp("(^|\\b)"+r.split(" ").join("|")+"(\\b|$)","gi")," "))}static hasPart(e,t){return e.part.contains(t)}static addPart(e,t){DOMTokenList.prototype.add.apply(e.part,t.trim().split(" "))}static removePart(e,t){DOMTokenList.prototype.remove.apply(e.part,t.trim().split(" "))}static offset(e){var t=e.getBoundingClientRect();return{top:Math.round(t.top)+Utils.scrollTop,left:Math.round(t.left)+Utils.scrollLeft,width:Math.round(t.width),height:Math.round(t.height)}}static offsetRect(e){var t=this.offset(e);return{y:t.top,x:t.left,width:t.width,height:t.height}}static naturalOffsetTop(e){return e.offsetTop+(e.offsetParent instanceof HTMLElement?this.naturalOffsetTop(e.offsetParent):0)}static naturalOffsetLeft(e){return e.offsetLeft+(e.offsetParent instanceof HTMLElement?this.naturalOffsetLeft(e.offsetParent):0)}static naturalOffset(e){return{left:this.naturalOffsetLeft(e),top:this.naturalOffsetTop(e),width:e.offsetWidth,height:e.offsetHeight}}static naturalOffsetRect(e){var t=this.naturalOffset(e);return{y:t.top,x:t.left,width:t.width,height:t.height}}static deserializeTransform(e){return Utils.Css.deserializeTransform(e)}static set scrollTop(e){window.scrollTo(Utils.scrollLeft,e)}static set scrollLeft(e){window.scrollTo(e,Utils.scrollTop)}static get scrollTop(){return window.scrollY||document.documentElement.scrollTop||document.body.scrollTop||0}static get scrollLeft(){return window.scrollX||document.documentElement.scrollLeft||document.body.scrollLeft||0}static get windowSize(){let e=window;return{width:e.innerWidth||e.document.documentElement.clientWidth||e.document.body.clientWidth||0,height:e.innerHeight||e.document.documentElement.clientHeight||e.document.body.clientHeight||0}}static addAnimationEndCallback(e,t,r=500){const n=r=>{r&&r.target!=e||(clearTimeout(s),e.removeEventListener("animationend",n,!1),e.removeEventListener("transitionend",n,!1),t.apply(this,[e]))};e.addEventListener("animationend",n,!1),e.addEventListener("transitionend",n,!1);const s=setTimeout(n,r)}static waitForAnimationEnd(e,t=500){return new Promise((r,n)=>{Utils.addAnimationEndCallback(e,()=>{r()},t)})}static idle(e){return new Promise((t,r)=>{setTimeout(()=>t(),e)})}static accelerateCallback(e,t=500,r=5,n=20){let s={cancel:!1},i=t,o=r+n,a=()=>{e(s),s.cancel||(setTimeout(a,i),i<o?i=n:i-=r)};a()}static isEmpty(t){return e.NullChecker.isEmpty(t)&&!(t instanceof Node)}static isNull(t){return e.NullChecker.isNull(t)}static isArray(e){return Array.isArray(e)}static isNullOrEmpty(e){return Utils.isNull(e)||Utils.isEmpty(e)}static areSemanticallyEqual(e,t){e??=null,t??=null;return(e&&e.valueOf&&e.valueOf())===(t&&t.valueOf&&t.valueOf())}static{this.extend=Object.assign}static clone(t){if(void 0!==t)return e.DeepCloner.clone(t)}static fromResult(e){return Promise.resolve(e)}static fromResultAsync(e){return new Promise(t=>requestAnimationFrame(()=>t(e())))}static readonlyCopy(e){if(Utils.isNull(e))return null;if(Utils.isArray(e)){const t=e.slice(0);return Object.freeze(t),t}{const t={};for(let r in e)t[r]=e[r];return Object.freeze(t),t}}static{this.URIs={format:function(e,t,r){for(let n in t||{}){let s=new RegExp("(^|\\/)\\{"+n+"\\??\\}(\\/|$)").exec(e);if(s&&s.length){let i=new RegExp("\\{"+n+"\\??\\}"),o=s.index;e=e.substring(0,o)+e.substring(o).replace(i,encodeURIComponent(t[n])),r&&delete t[n]}}const n=/(^|\/)\{[\w]+\?\}(\/|$)/;for(var s;(s=n.exec(e))&&s.length>0;){let t=s[0];e=e.replace(t,t.endsWith("/")?"/":"")}return e},appendQuery:function(e,t,r=!1,n=!1){const s=n?"#":"?",i=((n?/#/:/\?/).test(e)?"&":s)+Object.keys(t).filter(e=>!Utils.isNull(t[e])||!r).map(e=>encodeURIComponent(e)+"="+encodeURIComponent(t[e]??"")).join("&");return e+(i.length>1?i:"")},parseQuery:(e=window.location)=>{"string"!=typeof e&&(e=e.search);const t={};return new URLSearchParams(e).forEach((e,r)=>{Object.defineProperty(t,r,{enumerable:!0,value:e})}),t},hasMandatoryTemplateSegments:function(e){return/(^|\/)\{\.*\}(\/|$)/.test(e)},parseRoute:function(e){let t=e;const s=[];if(!Utils.isNullOrEmpty(t)){let e,i=0;for(;null!=(e=r.exec(t));){const r=e[0],o=n.exec(r);if(!Utils.isNullOrEmpty(o)){const e=o[1];s.push({name:e,optional:"?"===r.charAt(r.length-2),index:i})}t=t.substring(e.index+r.length),i++}}return s},split:function(e){const t=/^((https?:)?\/\/[^\/]+)?([^\?#]+)(\?[^#]*)?(#[^#]*)?$/.exec(e);return t?{domain:t[2]??"",protocol:t[1]??"",path:t[3]??"",query:t[4]??"",hash:t[5]??""}:null},parseState:function(e,t,n,s,i){let o=t;if(Utils.isNullOrEmpty(n)){const e=Utils.URIs.split(t);n=e.path,Utils.isNullOrEmpty(s)&&(s=e.query??""),Utils.isNullOrEmpty(i)&&(i=e.hash??""),o=n+s+i}let a={$path:o,$pathname:n,$querystring:s.length>0?s.substring(1):s,$query:(e=>{const t=e.indexOf("?");return 0===t?Utils.URIs.parseQuery(e.substring(t+1)):{}})(s),$hash:(e=>{const t=e.indexOf("#");return 0!==t?null:e.substring(t+1)})(i)},l=0;const c=e.slice();if(!Utils.isNullOrEmpty(c)){let e;for(;null!=(e=r.exec(n));){const t=e[0],r=c.findIndex(e=>e.index===l);if(r>=0){const e=c[r],{name:n}=e;Object.defineProperty(a,n,{enumerable:!0,value:t.substring(1)}),c.splice(r,1)}l++,n=n.substring(e.index+t.length)}}for(let e=0;e<c.length;e++)if(!c[e].optional)throw`Must provide "${c[e].name}" route value.`;return a}}}static getApiResult(e){if("object"==typeof e&&!Utils.isNull(e)&&e.hasOwnProperty("success"))switch(e.success){case!0:if(e.hasOwnProperty("result"))return e.result;break;case!1:if(e.hasOwnProperty("error"))return null}return e}}e.Utils=Utils}(Pacem||(Pacem={})),function(e){const t="__context_pacem",r=/'(\\'|[^'])*[^\\]?'|"(\\"|[^"])*[^\\]?"/g,n=/[^\w]new\s|[^\w]window\s*[\.\[]|[^\w]document\s*\.|[^\w]eval\s*\(/,s=/(^|[\s\(\[\+\-\*\/!])(:host\.|\^+item[\s\.,;\)\]]|\^+item$|\^+index[^\w\.]|\^+index$|\$?this[\.\s$]?|#[a-zA-Z_][\w]*|::[a-zA-Z_][\w]*)/g;class Expression{constructor(){this._pending=!1,this._independent=!1}get dependencies(){return this._dependencies}get functionBody(){return this._fnBody}get voidBody(){return this._voidBody}get pending(){return this._pending}get independent(){return this._independent}evaluate(){return this._fn||(this._fn=new Function("$pacem",t,this._fnBody)),this._fn.apply(null,[e.Utils.core,this._args])}evaluateAsync(){const r=e.DeferPromise.defer();return this._fn||(this._fn=new Function("$pacem",t,this._fnBody)),r.resolve(this._fn.apply(null,[e.Utils.core,this._args])),r.promise}evaluatePlus(r={}){if(!this._fn){let e=[t];for(var n in r)e.push(n);e.push("$pacem"),this._fn=new Function(e.join(", "),this._voidBody)}let s=[].concat(this._args);for(var n in r)s.push(r[n]);return s.push(e.Utils.core),this._fn.apply(null,s)}static{this._pendingExpression=null}static _getPendingExpressionSingleton(){if(null==Expression._pendingExpression){let e=new Expression;e._pending=!0,e._dependencies=[],Expression._pendingExpression=e}return Expression._pendingExpression}static parse(i,o){for(var a,l=e.CustomElementUtils.findScopeContext(o),c={$this:o},m=[],d="",h=!0,u=[],p=0,v=[];null!=(a=r.exec(i));){v.push(i.substr(p,a.index-p));let e=a[0].length;u.push({start:a.index,length:e}),p=a.index+e}p<i.length&&v.push(i.substr(p,i.length-p));for(var g=0;g<v.length;g++){let r=v[g];if(n.test(r))throw`Unsafe expression detected: "${r}".`;if(null==l){if(!0===new RegExp(s).test(r)){h=!1;break}}else{let n=r.replace(s,(r,n,s,i,a)=>{h=!1;const d="__host_pacem";let u,p=t+".$this"+(s.endsWith(".")?".":""),v=o,g=a.indexOf(".",i),f=g>i?a.substr(g+1).trim():"",_=/^[\w\.\$]+/.exec(f),y=_&&_.length>0&&_[0],E=y&&(u=y.split(".")).length>0&&u[0];if(":host."===s)v=c[d]=c[d]||e.CustomElementUtils.findHostContext(o),p=`${t}.${d}.`;else if(s.endsWith("^item")||s.substr(0,s.length-1).endsWith("^item")){let r=s.endsWith("^item")?"":s.substr(s.length-1,1),n=s.length-(r.length>0?6:5),i=`__item_${n}_up_pacem`,a=e.Repeater.findItemContext(o,n);v=c[i]=c[i]||a&&a.placeholder,y="item"+(y?"."+y:""),E="item",p=`${t}.${i}.item${r}`}else if(s.endsWith("^index")||s.substr(0,s.length-1).endsWith("^index")){let r=s.endsWith("^index")?"":s.substr(s.length-1,1),n=s.length-(r.length>0?7:6),i=`__item_${n}_up_pacem`,a=e.Repeater.findItemContext(o,n);v=c[i]=c[i]||a&&a.placeholder,y="index",E="index",p=`${t}.${i}.index${r}`}else if(s.startsWith("::")){let r=s.substr(2,s.length-2),n=c[d]=c[d]||e.CustomElementUtils.findHostContext(o);v=e.Utils.isNull(n)?null:n[r],p=`${t}.${d}.${r}`}else if(s.startsWith("#")){let e=s.substr(1,s.length-1);v=c[e]=c[e]||l.querySelector("#"+e),p=`${t}.${e}`}return E&&v&&E in v&&"function"!=typeof v[E]&&null==m.find(e=>e.element===v&&e.property==E)&&m.push({element:v,property:E,path:y,twowayAllowed:!1}),n+p});if(d+=n,g<u.length){const e=u[g];d+=i.substr(e.start,e.length)}}}if(h){var f=new Expression;return f._independent=!0,f._fnBody=`return ${i};`,f._voidBody=i,f._dependencies=[],f}if(null==l)return this._getPendingExpressionSingleton();for(var _ in c)if(null==c[_])return Expression._getPendingExpressionSingleton();1==m.length&&!0!==/[^\w\.\$]+/.test(d.trim())&&(m[0].twowayAllowed=!0);var y=new Expression;return y._args=c,y._fnBody=`try{ var ___$$$r = ${d}; return ___$$$r; }catch(e){ }`,y._voidBody=`try{ ${d} }catch(e){ }`,y._dependencies=m,y}}e.Expression=Expression}(Pacem||(Pacem={})),function(e){var t;e.P=(t=window.Pacem)&&t.Configuration&&t.Configuration.prefix||"pacem",e.PCSS=t.Configuration&&t.Configuration.css||e.P}(Pacem||(Pacem={})),function(e){const t="__pacem__",r=/^\{\{(.|\n)+\}\}$/;class CustomElementUtils{static get polyfilling(){return customElements instanceof window.CustomElementRegistry}static camelToKebab(e){return e&&e.replace(/([A-Z])/g,"-$1").toLowerCase()}static kebabToCamel(e){return e&&e.replace(/(-[a-z])/g,e=>e[1].toUpperCase())}static getWatchedProperties(t,r=!0){var n=[],s=t instanceof HTMLElement?t.constructor:t;do{let t=(this.getAttachedPropertyValue(s,e.WATCH_PROPS_VAR)||[]).filter(e=>!e.name.startsWith("_"));Array.prototype.splice.apply(n,[0,0].concat(t))}while(r&&(s=Object.getPrototypeOf(s)));return n}static getWatchedProperty(e,t){return this.getWatchedProperties(e,!0).find(e=>e.name===t)}static importjs(t,r=null,n=!1){var s={type:"text/javascript",src:t};return e.Utils.isNullOrEmpty(r)||e.Utils.extend(s,{integrity:r}),n&&e.Utils.extend(s,{crossorigin:""}),CustomElementUtils.import(t,"script",s,document.head||document.getElementsByTagName("head")[0])}static importcss(t,r=null,n=!1){var s={rel:"stylesheet",href:t};return e.Utils.isNullOrEmpty(r)||e.Utils.extend(s,{integrity:r}),n&&e.Utils.extend(s,{crossorigin:"anonymous"}),CustomElementUtils.import(t,"link",s,document.head||document.getElementsByTagName("head")[0])}static import(t,r,n,s=document.body){const i=e.Utils.core;var o=i.imports=i.imports||{};return o[t]=o[t]||new Promise((t,i)=>{var o=r;for(let e in n||{})o+=`[${e}="${n[e]}"]`;var a=document.querySelector(o);if(e.Utils.isNull(a)){for(var l in(a=document.createElement(r)).onerror=e=>{i(e)},a.onload=()=>{t(a)},n||{})a.setAttribute(l,n[l]);s.appendChild(a)}else t(a)})}static{this.Theme={importWebFonts(){function t(t){return e.Utils.isNullOrEmpty(t)?Promise.resolve():document.fonts.load("1rem "+t)}const r=["icons","std","main","tech","btn"].map(r=>{const n=e.Utils.Css.getVariableValue(`--${e.PCSS}-font-${r}`).split(",")[0],s=(i=e.Utils.Css.getVariableValue(`--${e.PCSS}-font-${r}-api-url`),/^('|").*\1$/.test(i)?i.substring(1,i.length-1):i);var i;return e.Utils.isNullOrEmpty(s)?t(n):CustomElementUtils.importcss(s).then(e=>t(n))}),n=new Promise(e=>{!function t(r=0){r>4||!("size"in document.fonts)||"number"==typeof document.fonts.size&&document.fonts.size>0?document.fonts.ready.then(e):setTimeout(t,250,r++)}()});return r.push(n),Promise.all(r)}}}static setAttachedPropertyValue(r,n,s){if(e.Utils.isNull(r))return;const i=Object.getOwnPropertyDescriptor(r,t),o=i&&i.value||Object.defineProperty(r,t,{value:{},enumerable:!1,writable:!1,configurable:!1})[t];e.Utils.isNull(s)?delete o[n]:o[n]=s}static deleteAttachedPropertyValue(e,t){CustomElementUtils.setAttachedPropertyValue(e,t,void 0)}static getAttachedPropertyValue(r,n,s){const i=Object.getOwnPropertyDescriptor(r,t),o=i&&i.value;return e.Utils.isNull(o&&o[n])&&!e.Utils.isNull(s)?(CustomElementUtils.setAttachedPropertyValue(r,n,s),s):o&&o[n]}static resolvePath(e,t){if(!e||!t)return;if(/[\(\)\{\}]/.test(e))throw`Security alert: not allowed to process paths like ${e}.`;const r=e.split(".");var n,s,i,o=t,a=o,l=r[0];return r.forEach((e,t)=>{e.split("[").forEach((e,t)=>{n=a,/\]$/.test(e)&&(e=e.substring(0,e.length-1),/^('|").+[^\\]\1$/.test(e)&&(e=e.substr(1,e.length-2))),a=a[e]})}),/\]$/.test(e)?(i=e.lastIndexOf("["),s=(s=e.substring(i+1)).substring(0,s.length-1)):(i=e.lastIndexOf("."),s=e.substring(i+1)),{target:{value:a,name:s},parent:{value:n||t,path:e.substring(0,i)},root:{value:o,property:l}}}static set(t,r,n){var s=CustomElementUtils.resolvePath(r,t),i=s.target.value;if(i!==n)if(s.parent.value==s.root.value||s.parent.value instanceof HTMLElement)s.parent.value[s.target.name]=n;else{s.parent.value[s.target.name]=n;const t=e.Utils.clone(s.root.value[s.root.property]);let r;s.parent.value[s.target.name]=i,"item"!==s.root.property||e.Utils.isNull(r=RepeaterItem.getRepeaterItem(s.root.value))?s.root.value[s.root.property]=t:r.repeater&&r.repeater.datasource&&r.repeater.datasource.splice(r.index,1,r.item=t)}}static get(e,t){var r=CustomElementUtils.resolvePath(t,e);return r&&r.target&&r.target.value}static _findScopeContextLegacy(e){let t,r=e;do{r=r.parentNode}while(null!=r&&(r!=(t=e.ownerDocument)||r instanceof HTMLElement&&null!=(t=r.shadowRoot)));return t}static findScopeContext(t){return(t.isConnected?t.getRootNode():CustomElementUtils.getAttachedPropertyValue(t,e.INSTANCE_SCOPE_VAR))??CustomElementUtils._findScopeContextLegacy(t)}static findAncestor(e,t){let r,n=e;for(;n&&null!=(n=n.parentNode||n.getRootNode()?.host);)if(n.host instanceof HTMLElement&&(n=n.host),t.apply(n,[n])){r=n;break}return r}static findAncestorShell(t){return CustomElementUtils.findAncestor(t,t=>e.Utils.is(t,`.${e.PCSS}-body`)||t===document.body)}static findAncestorOfType(e,t){return CustomElementUtils.findAncestor(e,e=>e instanceof t)}static findDescendants(e,t,r=!1){const n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT);for(var s=[];n.nextNode();){let e=n.currentNode;if(!0===t(e)&&(s.push(e),r))return s}return s}static findFirstDescendant(t,r){const n=CustomElementUtils.findDescendants(t,r,!0);return e.Utils.isNullOrEmpty(n)?void 0:n[0]}static findAll(e="[pacem]",t=e=>!0){const r=[];return document.querySelectorAll(e).forEach((e,n,s)=>{!0===t(e)&&r.push(e)}),r}static findPreviousSiblingOrAncestorOfType(e,t,r=0){let n=e,s=null,i=0;do{if(n=n.previousSibling||n.parentNode,n instanceof t){if(i>=r){s=n;break}n=n.parentNode,i++}}while(null!=n);return s}static findPreviousSiblingOrAncestor(e,t,r=0){let n=e,s=null,i=0;do{if(n=n.previousSibling||n.parentNode,n&&t.apply(n,[n])){if(i>=r){s=n;break}n=n.parentNode,i++}}while(null!=n);return s}static assignHostContext(t,r){const n=document.createTreeWalker(r.content,NodeFilter.SHOW_ELEMENT+NodeFilter.SHOW_DOCUMENT_FRAGMENT);for(;n.nextNode();){var s=n.currentNode;e.Utils.isNull(CustomElementUtils.getAttachedPropertyValue(s,e.INSTANCE_HOST_VAR))&&CustomElementUtils.setAttachedPropertyValue(s,e.INSTANCE_HOST_VAR,t)}}static findHostContext(t){let r,n,s=t;if(!s.isConnected)return r;for(;null!=s&&(r=CustomElementUtils.getAttachedPropertyValue(s,e.INSTANCE_HOST_VAR),!(r instanceof HTMLElement));)s=s.parentElement;return null==r&&console&&(n=console.warn)&&n(`Element "${t.constructor.name}" isn't a descendant of a templated component.`),r}static isBindingAttribute(e){return r.test(e)}static extractBindingAttributeExpression(e){if(CustomElementUtils.isBindingAttribute(e))return e.substr(2,e.length-4);throw"Invalid attribute: incorrect binding syntax."}static parseBindingAttribute(t,r){let n=CustomElementUtils.extractBindingAttributeExpression(t);const s=/,\s*(twoway|once)\s*$/.exec(n),i=s&&s.length>1&&s[1];e.Utils.isNullOrEmpty(i)||(n=n.substr(0,n.lastIndexOf(",")));var o=e.Expression.parse(n,r);return(o&&o.dependencies).forEach(e=>{switch(i){case"twoway":e.mode=e.twowayAllowed&&1==o.dependencies.length?"twoway":void 0;break;case"once":e.mode=i}}),o}static ensureMember(e,t,r){let n=Object.getOwnPropertyDescriptor(e,t);return null!=n?n:(Object.defineProperty(e,t,r),Object.getOwnPropertyDescriptor(e,t))}static stripObservedAttributes(e){n(e,!1)}static freezeObservedAttributes(e){n(e)}}function n(t,r=!0){const n=document.createTreeWalker(t,NodeFilter.SHOW_ELEMENT);do{var s=n.currentNode;if(s instanceof HTMLElement){const t=s.constructor.observedAttributes;if(!e.Utils.isNull(t)){CustomElementUtils.deleteAttachedPropertyValue(s,e.INSTANCE_BINDINGS_VAR);let n=function(t){if(e.Utils.isArray(t))return"["+t.map(n).join(",")+"]";if(t instanceof Element){return`#${t.id=t.id||"_"+e.Utils.uniqueCode()}`}return`${e.Utils.Json.stringify(t)}`};for(var i of t)if(i in s.attributes){let t,o;if(r&&!e.Utils.isNull(o=s[t=CustomElementUtils.kebabToCamel(i)])){let e=n(o);s.setAttribute(i,`{{ ${e} }}`)}else s.removeAttribute(i)}}}}while(n.nextNode())}e.CustomElementUtils=CustomElementUtils;const s=CustomElementUtils.getAttachedPropertyValue,i=CustomElementUtils.setAttachedPropertyValue,o="pacem:repeater-item";e.Repeater=class Repeater{static findItemContext(e,t=0,r=console.warn){let n=RepeaterItem.findUpwards(e,t,r);return null==n&&r&&e instanceof HTMLElement&&e.isConnected&&r(`Couldn't find a ${RepeaterItem.name} up ${t} level${1===t?"":"s"} from element "${e.constructor.name}".`),n}};class RepeaterItem{static findUpwards(t,r=0,n=console.warn){if(e.Utils.isNull(t)||"template"===t.localName||t instanceof e.TemplateElement)return null;let s=null;return null==CustomElementUtils.findPreviousSiblingOrAncestor(t,t=>!e.Utils.isNull(s=RepeaterItem.getRepeaterItem(t)),r)&&n&&t instanceof HTMLElement&&t.isConnected&&n(`Couldn't find a ${RepeaterItem.name} up ${r} level${1===r?"":"s"} from element "${t.constructor.name}".`),s}static isRepeaterItem(t){return!e.Utils.isNull(s(t,o))}static getRepeaterItem(e){return s(e,o)}constructor(e){this._placeholder=e,i(e,o,this)}get placeholder(){return this._placeholder}}e.RepeaterItem=RepeaterItem}(Pacem||(Pacem={})),function(e){let t;!function(e){e.AltKey="Alt",e.CtrlKey="Ctrl",e.ShiftKey="Shift",e.MetaKey="Cmd"}(t=e.EventKeyModifier||(e.EventKeyModifier={}));e.CustomEventUtils=class CustomEventUtils{static isInstanceOf(e,t){return e instanceof t}static getEventCoordinates(t){var r;return"touches"in t?e.Utils.isNullOrEmpty(t.touches)?e.Utils.isNullOrEmpty(t.changedTouches)||(r=t.changedTouches[0]):r=t.touches[0]:r=t,{page:{x:r.pageX,y:r.pageY},screen:{x:r.screenX,y:r.screenY},client:{x:r.clientX,y:r.clientY}}}static getEventKeyModifiers(e){var t=e.which;return e instanceof MouseEvent&&(t=e.button),{which:t,shiftKey:e.shiftKey,altKey:e.altKey,ctrlKey:e.ctrlKey,metaKey:e.metaKey}}static matchModifiers(t,...r){const n=(!e.Utils.isNull(r)&&(1===r.length&&e.Utils.isArray(r[0])?r[0]:Array.from(r).filter(t=>!e.Utils.isNullOrEmpty(t)))||[]).map(e=>e.toLowerCase()),s=n.indexOf("alt")>=0||n.indexOf("option")>=0,i=n.indexOf("shift")>=0,o=n.indexOf("ctrl")>=0,a=n.indexOf("win")>=0||n.indexOf("cmd")>=0;return s===t.altKey&&i===t.shiftKey&&a===t.metaKey&&o===t.ctrlKey}static fixEdgeCustomEventSubClassInstance(e,t){e instanceof t||Object.setPrototypeOf(e,t)}}}(Pacem||(Pacem={})),function(e){class CustomTypedEvent extends CustomEvent{constructor(t,r,n){super(t,e.Utils.extend({detail:r},n||{})),e.CustomEventUtils.fixEdgeCustomEventSubClassInstance(this,this.constructor)}}e.CustomTypedEvent=CustomTypedEvent;class CustomUIEvent extends CustomEvent{constructor(t,r,n,s){super(t,e.Utils.extend(function(e){if("detail"in e){for(let t in e)if("bubbles"!==t&&"cancelable"!==t&&"composed"!==t&&"detail"!==t)return!1;return!0}return!1}(r||{})?r:{detail:r},!(n instanceof Event)&&n||{}));const i=s||n;i instanceof Event&&(this.#e=i,this.#t=e.CustomEventUtils.getEventKeyModifiers(i),(i instanceof MouseEvent||i instanceof TouchEvent)&&(this.#r=e.CustomEventUtils.getEventCoordinates(i))),e.CustomEventUtils.fixEdgeCustomEventSubClassInstance(this,this.constructor)}#e;#t;#r;get originalEvent(){return this.#e}get which(){return this.#t?.which}get altKey(){return this.#t?.altKey}get shiftKey(){return this.#t?.shiftKey}get ctrlKey(){return this.#t?.ctrlKey}get metaKey(){return this.#t?.metaKey}get pageX(){return this.#r?.page.x}get pageY(){return this.#r?.page.y}get clientX(){return this.#r?.client.x}get clientY(){return this.#r?.client.y}get screenX(){return this.#r?.screen.x}get screenY(){return this.#r?.screen.y}}e.CustomUIEvent=CustomUIEvent,e.AttributeChangeEventName="attributechange";e.AttributeChangeEvent=class AttributeChangeEvent extends CustomTypedEvent{constructor(t){super(e.AttributeChangeEventName,t)}},e.PropertyChangeEventName="propertychange";e.PropertyChangeEvent=class PropertyChangeEvent extends CustomTypedEvent{constructor(t){super(e.PropertyChangeEventName,t)}}}(Pacem||(Pacem={})),function(e){const t={convert:e=>{}},r={convert:e=>e&&e.trim().split(/[ ,]+/),convertBack:t=>e.Utils.isArray(t)&&t.join(" ")||""},n={convert:e=>parseFloat(e),convertBack:e=>e.toString()},s={convert:t=>!e.Utils.isNullOrEmpty(t)&&"0"!==t&&"false"!==t,convertBack:e=>(!!e).toString()},i={convert:t=>e.Utils.parseDate(t),convertBack:t=>e.Utils.parseDate(t).toISOString()},o=i,a={convert:t=>e.Utils.Json.parse(t),convertBack:t=>e.Utils.Json.stringify(t)},l={convert:e=>Function(`return ${e};`).apply(null),convertBack:e=>{}},c={convert:e=>document.querySelector(e),convertBack:e=>e instanceof Element&&e.id?"#"+e.id:void 0,retryConversionWhenReady:!0},m={convert:t=>e.Point.parse(t),convertBack:e=>`${e.x||0} ${e.y||0}`},d={convert:t=>e.Size.parse(t),convertBack:e=>`${e.width||0} ${e.height||0}`},h={convert:t=>e.Rect.parse(t),convertBack:e=>`${e.x||0} ${e.y||0} ${e.width||0} ${e.height||0}`};e.PropertyConverters={None:t,String:{convert:e=>e,convertBack:e=>e},StringArray:r,Number:n,Boolean:s,BooleanStrict:{convert:e=>"true"===e||"1"===e,convertBack:e=>(!!e).toString()},Date:o,Datetime:i,Json:a,Eval:l,Element:c,Point:m,Rect:h,Size:d}}(Pacem||(Pacem={})),function(e){e.DefaultComparer=(t,r)=>e.Utils.areSemanticallyEqual(t,r)}(Pacem||(Pacem={})),function(e){const t=e.CustomElementUtils.getAttachedPropertyValue,r=e.CustomElementUtils.setAttachedPropertyValue,n=e.CustomElementUtils.deleteAttachedPropertyValue,s="pacem:version",i="pacem:binding:",o="pacem:view-children",a="pacem:has-binding:",l="pacem:custom-element:has-template",c="pacem:custom-element:has-templated",m="pacem:custom-element:promise",d="pacem:custom-element:ready",h="pacem:custom-element:startup";function u(s,o,l){var c=s;const m=o,h=l;var u=t(c,i+m);if(u&&u.forEach(t=>{t.dep.element.removeEventListener(e.PropertyChangeEventName,t.callback,!1)}),e.Utils.isNull(h)||!0!==t(s,d))n(c,i+m),n(c,a+m);else if(h.pending)r(c,i+m,[]);else{let t="oneway";switch(h.dependencies&&h.dependencies.length&&h.dependencies[0].mode){case"twoway":1==h.dependencies.length&&(t="twoway");break;case"once":t="once"}r(c,a+m,t);const n=h.dependencies.map(t=>{var r={dep:t,callback:function(e){e.detail.propertyName===t.property&&(c[m]=h.evaluate())}};return t.element.addEventListener(e.PropertyChangeEventName,r.callback,!1),r});r(c,i+m,n),c[m]=h.evaluate()}}e.CustomElement=s=>p=>{if(e.Utils.customElements.get(s.tagName))console.warn(`${s.tagName} registration skipped, since already defined.`);else{var v=e.CustomElementUtils.getWatchedProperties(p,!0);if(r(p,l,!(e.Utils.isNullOrEmpty(s.template)&&e.Utils.isNullOrEmpty(s.templateUrl))),v&&v.length>0){const t="observedAttributes";var g=[];p.hasOwnProperty(t)&&(g=p[t].slice(),delete p[t]);let r=g;for(var f of v){let t=e.CustomElementUtils.camelToKebab(f.name);r.unshift(t)}Object.defineProperty(p,t,{get:function(){return r},enumerable:!0,configurable:!1})}{const g=p.prototype,f=Object.getOwnPropertyDescriptor(g,"connectedCallback")||g.connectedCallback,_=Object.getOwnPropertyDescriptor(g,"viewActivatedCallback")||g.viewActivatedCallback;Object.defineProperty(g,"connectedCallback",{value:function(){const i=this;i.setAttribute("pacem",""),i.setAttribute("cloak",""),n(i,o),f&&f.value?f.value.apply(i,[]):"function"==typeof f&&f.apply(i),function(t){var r=e.DeferPromise.defer();const n=t=>{e.Utils.isDOMReady()?r.resolve(t):e.Utils.onDOMReady(e=>{r.resolve(t)})};t.template?n(t.template):t.templateUrl?(new e.Net.Http).get(t.templateUrl).success(e=>{let r=t.template=e.text;return n(r),e}).error(e=>{console.error(e.message),n(null)}):n(null);return r.promise}(s).then(n=>{if(!i.isConnected)return;var o=[];if(!0!==t(i,d)&&!e.Utils.isNullOrEmpty(n)&&1!=t(i,c)){r(i,c,!0);const d=i,h=s.shadow,u=document.createElement("template").content,v=document.createElement("template");if(!h)for(var a=d.childNodes.length-1;a>=0;a--)u.insertBefore(d.childNodes.item(a),u.firstChild);v.innerHTML=n;const _=v.content.querySelectorAll(e.P+"-content");if(e.CustomElementUtils.assignHostContext(i,v),1==_.length){const e=_.item(0);var p=e.nextSibling;const t=e.parentElement||v.content,r=u.childNodes;for(t.removeChild(e);r.length>0;)try{let e=r.item(0);t.insertBefore(e,p)}catch(e){console.error(e.toString())}}else if(_.length>1)throw"There can only be at most 1 content placeholder inside a template.";var g;if(s.shadow)(g=d.attachShadow({mode:"open"})).appendChild(v.content);else{g=d;for(var f=v.content.children;f.length>0;)g.append(f.item(0))}o=function(r,n){const s=document.createTreeWalker(n,NodeFilter.SHOW_ELEMENT);for(var i=[];s.nextNode();){var o=s.currentNode;if(!0===t(o.constructor,l)){var a=t(o,m,e.DeferPromise.defer());i.push(a.promise)}}return i}(0,g)}r(i,d,!0);for(let t of v){const r=t.name,n=t.config;if(!n.converter.retryConversionWhenReady||!e.Utils.isNull(i[r]))continue;const s=e.CustomElementUtils.camelToKebab(r),o=i.getAttribute(s);e.Utils.isNullOrEmpty(o)||e.CustomElementUtils.isBindingAttribute(o)||(i[r]=n.converter.convert(o,i))}(t(i,h)||[]).forEach(e=>{e.apply(i)});(t(i,e.INSTANCE_BINDINGS_VAR)||[]).forEach(t=>{const r=t;if(!(r in i.attributes))throw`Howcome? ${r} not in ${i.constructor.name} attributes!?...`;const n=i.attributes[r].value;if(e.CustomElementUtils.isBindingAttribute(n)){var s=e.CustomElementUtils.parseBindingAttribute(n,i);u(i,e.CustomElementUtils.kebabToCamel(t),s)}});i.removeAttribute("cloak"),Promise.all(o).then(r=>(()=>{_&&_.value?_.value.apply(i,[]):"function"==typeof _&&_.apply(i);var r=t(i,m);e.Utils.isNull(r)||r.resolve()})())})},configurable:!0,enumerable:!0});const y=Object.getOwnPropertyDescriptor(g,"disconnectedCallback")||g.disconnectedCallback;Object.defineProperty(g,"disconnectedCallback",{value:function(){const n=this;y&&y.value?y.value.apply(n,[]):"function"==typeof y&&y.apply(n,[]),r(n,d,!1);(t(n,e.INSTANCE_BINDINGS_VAR)||[]).forEach(t=>{u(n,e.CustomElementUtils.kebabToCamel(t))})},configurable:!0,enumerable:!0});const E=Object.getOwnPropertyDescriptor(g,"attributeChangedCallback")||g.attributeChangedCallback;Object.defineProperty(g,"attributeChangedCallback",{value:function(r,n,s){const i=this,o=!0===t(i,d);E&&E.value?E.value.apply(i,[r,n,s]):"function"==typeof E&&E.apply(i,[r,n,s]);const a=new e.AttributeChangeEvent({attributeName:r,oldValue:n,currentValue:s,firstChange:!o});i.dispatchEvent(a);const l=e.CustomElementUtils.isBindingAttribute(s),c=r,m=e.CustomElementUtils.kebabToCamel(c);if(l){let r=e.CustomElementUtils.parseBindingAttribute(s,i);if(!(r instanceof e.Expression))throw`Howcome? ${s} misinterpreted as ${c} binding...`;r.independent?(i[m]=r.evaluate(),u(i,m)):(t(i,e.INSTANCE_BINDINGS_VAR,[]).push(c),r.pending||u(i,m,r))}else{var h=v.find(e=>e.name===m);e.Utils.isNull(h)||(u(i,m),i[m]=h.config.converter.convert(s,i))}},configurable:!0,enumerable:!0});const C=Object.getOwnPropertyDescriptor(g,"propertyChangedCallback")||g.propertyChangedCallback;Object.defineProperty(g,"propertyChangedCallback",{value:function(r,n,s,o,l){const c=this,m=!0===t(c,d),p=()=>{const o=t(c,a+r);if(C&&C.value?C.value.apply(c,[r,n,s,!m]):"function"==typeof C&&C.apply(c,[r,n,s,!m]),!l||!1!==l.emit){const t=new e.PropertyChangeEvent({propertyName:r,oldValue:n,currentValue:s,firstChange:!m});c.dispatchEvent(t)}if(e.Utils.isNullOrEmpty(o)){var d=v.find(e=>e.name===r);if(l&&!0===l.reflectBack&&!e.CustomElementUtils.polyfilling){var h,p=e.CustomElementUtils.camelToKebab(r),g=c.attributes.getNamedItem(p);if(m||e.Utils.isNullOrEmpty(g))if(null==s)c.removeAttribute(p);else if(d&&(h=d.config)&&"function"==typeof h.converter.convertBack){const e=h.converter.convertBack(s,c);null!=g&&e===g.value||c.setAttribute(p,e)}}}else if("twoway"===o){const n=t(c,i+r)[0].dep;e.CustomElementUtils.set(n.element,n.path,s)}else"once"===o&&u(c,r)};m?p.apply(c):t(c,h,[]).push(p)},configurable:!0,enumerable:!0})}e.Utils.customElements.define(s.tagName,p,s.options),e.Utils.customElements.whenDefined(s.tagName).then(()=>{})}};const p=e.PropertyConverters.None;e.Watch=function(n){return(i,o,a)=>{t(i.constructor,e.WATCH_PROPS_VAR,[]).push({name:o,config:e.Utils.extend({emit:!0,converter:p},n)});const l=e.DefaultComparer,c=a&&a.set,m="pacem:property:"+o,d=s,h=s+":"+o;function u(){return t(this,m)}function v(e,r,s){const i=this,a=n&&n.debounce;let l;if("function"==typeof(l=i.propertyChangedCallback)){let s=()=>l.apply(i,[e,r,t(i,m),!1,n]);"number"==typeof a&&a>0?(clearTimeout(this["_handle_"+o]),this["_handle_"+o]=setTimeout(s,a)):!0===a?(cancelAnimationFrame(this["_handle_"+o]),this["_handle_"+o]=requestAnimationFrame(s)):s()}}function g(e){const n=this;if(e=e||n[o],!0===t(e,"pacem:array:decorated"))return;r(e,"pacem:array:decorated",!0);const s=Array.prototype,i={splice:s.splice,pop:s.pop,copyWithin:s.copyWithin,push:s.push,shift:s.shift,unshift:s.unshift};for(let t in i){let s=t;e[s]=function(...e){const t=i[s].apply(this,e);return r(this,d,Date.now()),v.call(n,o,this,this),t}}}function f(n,s){const i=this,a=e.Utils.isArray(s);(!l(n,s)||a&&t(s,d)!==t(i,h))&&(r(i,m,s),a&&(r(i,h,t(s,d)),g.call(i,s)),v.call(i,o,n,s))}if(c)a.set=function(e){const t=this,r=t[o];c.call(t,e);const n=t[o];f.call(t,r,n)};else{try{i.ownerDocument&&(i[m]=i[o])}catch(e){}delete i[o]&&Object.defineProperty(i,o,{get:function(){return u.call(this)},set:function(e){const r=t(this,m);f.call(this,r,e)},enumerable:!0,configurable:!0})}}},e.ViewChild=function(r){return(n,s,i)=>{const a=`${s}_${e.Utils.uniqueCode()}`;function l(){const n=this,s=(n.shadowRoot||n).querySelectorAll(r);for(let r=0;r<s.length;r++){let i=s.item(r);if(t(i,e.INSTANCE_HOST_VAR)===n)return i}return null}function c(){const e=t(this,o,{});return e[a]=e[a]||l.call(this)}delete n[s]&&Object.defineProperty(n,s,{get:function(){return c.call(this)},enumerable:!0,configurable:!0})}},e.Concurrent=function(){return function(t,r,n){const s=n.value,i=`pacem:concurrent-buffer:${r}`,o=`pacem:concurrent-running:${r}`;n.value=function(...t){var r=this,n=e.CustomElementUtils.getAttachedPropertyValue(r,i,[]);if(e.CustomElementUtils.getAttachedPropertyValue(r,o,!1)){let r=e.DeferPromise.defer();return t.push(r),n.push(t),r.promise}var a,l=s.apply(r,t);if((a=l)&&"function"==typeof a.then){let i=t&&t.length>0&&t[t.length-1];return i&&i.promise instanceof e.DeferPromise?t.pop():i=e.DeferPromise.defer(),e.CustomElementUtils.setAttachedPropertyValue(r,o,!0),l.then(t=>{i.resolve(t),e.CustomElementUtils.setAttachedPropertyValue(r,o,!1),n.length>0&&s.apply(r,n.shift())},t=>{e.CustomElementUtils.setAttachedPropertyValue(r,o,!1),i.reject(t)}),i.promise}return l}}},e.Debounce=function(e=50,n=(e,...t)=>`pacem:debouncer:${e}`){return function(s,i,o){const a=o.value;!0===e?o.value=function(...e){const s=n(i,...e);var o=this;cancelAnimationFrame(t(o,s)),r(o,s,requestAnimationFrame(()=>{a.apply(o,e)}))}:e>0&&(o.value=function(...s){const o=n(i,...s);var l=this;clearTimeout(t(l,o,0)),r(l,o,setTimeout(()=>{a.apply(l,s)},e))})}},e.Throttle=function(s=50,i=(e,...t)=>`pacem:throttler:${e}`){return function(o,a,l){const c=l.value;l.value=function(...o){const l=i(a,...o),m=`${l}:args`,d=this,h=()=>{n(d,l);const e=t(d,m);n(d,m),e&&c.apply(d,o)};e.Utils.isNull(t(d,l))?(r(d,l,1),c.apply(d,o),!0===s?requestAnimationFrame(h):s>0&&setTimeout(h,s)):r(d,m,o??["pacem"])}}};class Transforms{static register(t,r){let n=e.Utils.core;const s=(t||r.name).split(".");for(let e of s.slice(0,-1))n=n[e]||(n[e]={});const i=s[s.length-1]||r.name;e.Utils.isNull(n[i])?n[i]=r:console.warn(`A transform named ${i} already exists in this set.`)}}e.Transformer=function(e){return function(t,r,n){const s=n.value;Transforms.register(e,s)}}}(Pacem||(Pacem={})),function(e){!function(e){let t;!function(e){e.Trace="trace",e.Debug="debug",e.Warn="warn",e.Error="error",e.Info="info",e.Log="log"}(t=e.LogLevel||(e.LogLevel={}))}(e.Logging||(e.Logging={}))}(Pacem||(Pacem={})),function(e){!function(t){class PacemEventTarget extends HTMLElement{constructor(){super(),this._isReady=!1,this.emitHandler=e=>{this.disabled||this.emit(e)}}emit(e){e.defaultPrevented||this._emitCore(e)}_emitCore(t){var r=`on-${t.type.toLowerCase()}`;if(r in this.attributes){this.log(e.Logging.LogLevel.Debug,`Calling ${r} handler for event ${t.type}`);var n=this.attributes[r].value,s=e.Expression.parse(n,this);e.Utils.isNull(s)||!0===s.pending||s.evaluatePlus({$event:t})}}handle(t,r){"string"==typeof t&&(t=e.Utils.isNull(r)?new Event(t,{cancelable:!1}):new CustomEvent(t,{cancelable:!1,detail:r})),this.emit(t)}get isReady(){return this._isReady}connectedCallback(){e.CustomElementUtils.setAttachedPropertyValue(this,e.INSTANCE_SCOPE_VAR,e.CustomElementUtils.findScopeContext(this)),this.log(e.Logging.LogLevel.Debug,"Connected.")}disconnectedCallback(){this._isReady=!1,this.dispatchEvent(new Event("unload")),e.CustomElementUtils.deleteAttachedPropertyValue(this,e.INSTANCE_SCOPE_VAR),this.log(e.Logging.LogLevel.Debug,"Disconnected.")}viewActivatedCallback(){this._isReady=!0,this.log(e.Logging.LogLevel.Debug,"Loaded (view activated)."),this.dispatchEvent(new Event("load"))}propertyChangedCallback(t,r,n,s){s?this.log(e.Logging.LogLevel.Log,`Property "${t}" changed at start-up`):this.log(e.Logging.LogLevel.Log,`Property "${t}" changed from ${r} to ${n}`)}dispatchEvent(t){if(this.disabled)return!1;this.log(e.Logging.LogLevel.Log,`Dispatching event "${t.type}"`);const r=super.dispatchEvent(t);return this.emit(t),r}log(e,t,r=this.localName+(this.id?"#"+this.id:"")){this.logger&&"function"==typeof this.logger.log&&this.logger.log(e,t,r)}refreshBindings(){for(let t=0;t<this.attributes.length;t++){let r=this.attributes.item(t);if(!e.CustomElementUtils.isBindingAttribute(r.value))continue;let n=e.CustomElementUtils.kebabToCamel(r.name),s=e.CustomElementUtils.parseBindingAttribute(r.value,this);this[n]=s.evaluate()}}}__decorate([e.Watch({reflectBack:!0,converter:e.PropertyConverters.Boolean})],PacemEventTarget.prototype,"disabled",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Element})],PacemEventTarget.prototype,"logger",void 0),t.PacemEventTarget=PacemEventTarget}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){class CurrentIndexChangeEvent extends e.CustomTypedEvent{constructor(e){super("currentindexchange",e)}}e.CurrentIndexChangeEvent=CurrentIndexChangeEvent}(Pacem||(Pacem={})),Array.prototype.union=function(e){const t=Pacem.Utils.isNullOrEmpty(this),r=Pacem.Utils.isNullOrEmpty(e);return t&&r?[]:r?this.slice():t?e.slice():Array.from(new Set(this.concat(e)))},Array.prototype.moveWithin=function(e,t){const r="Index must be greater or equal than 0 and less or equal than the length of the array.";var n=this;if(e<0||e>n.length)throw new Error(r);if(t<0||t>n.length)throw new Error(r);n.splice(t,0,Array.prototype.splice.apply(n,[e,1])[0])},Array.prototype.equalsContent=function(e){if(null==e||this.length!==e.length)return!1;for(let t=0;t<this.length;t++)if(this[t]!==e[t])return!1;return!0},Array.prototype.cloneFrom=function(e){if(null==e)throw"Cannot clone array from null object.";const t=e.length;var r=this.length!==e.length;for(let n=0;n<t;n++){const t=e[n];this.length>n?this[n]!==t&&(this[n]=t,r=!0):(Array.prototype.push.apply(this,[t]),r=!0)}r&&this.splice(t)},function(e){e.CommandEventName="command";class CommandEvent extends e.CustomTypedEvent{constructor(t){super(e.CommandEventName,t,{bubbles:!0,cancelable:!0})}}e.CommandEvent=CommandEvent}(Pacem||(Pacem={})),function(e){e.Defaults={USE_SHADOW_ROOT:!1}}(Pacem||(Pacem={})),function(e){!function(e){e.EMPTY_MATCHER=/a^/;e.Regex=class Regex{static split(e,t){for(var r,n=0,s=[];null!=(r=t.exec(e));){s.push({value:e.substr(n,r.index-n),match:!1,index:n});let t=r[0].length;s.push({value:e.substr(r.index,t),match:!0,index:r.index}),n=r.index+t}return n<e.length&&s.push({value:e.substr(n,e.length-n),match:!1,index:n}),s}}}(e.RegularExpressions||(e.RegularExpressions={}))}(Pacem||(Pacem={})),function(e){const t="_exp";e.Storage=class Storage{_getStorage(e){return e?window.localStorage:window.sessionStorage}_parseValue(r,n){const s=r.getItem(n);if(e.Utils.isNullOrEmpty(s))return null;const i=e.Utils.Json.parse(s);if(!Object.hasOwnProperty(t))return i;return i[t]<Date.now()?(r.removeItem(n),null):i.value}setPropertyValue(r,n,s){var i=this._getStorage(!0===s||"number"==typeof s&&s>0),o=n;if("number"==typeof s&&s>0){const e=Date.now()+1e3*s;(o={value:n})[t]=e}i.setItem(r,e.Utils.Json.stringify(o)),(i=this._getStorage(!s)).removeItem(r)}getPropertyValue(e){return this._parseValue(this._getStorage(!1),e)||this._parseValue(this._getStorage(!0),e)}clear(){var e=this._getStorage(!0);e.clear(),(e=this._getStorage(!1)).clear()}removeProperty(e){var t=this._getStorage(!0);t.removeItem(e),(t=this._getStorage(!1)).removeItem(e)}}}(Pacem||(Pacem={})),function(e){class TemplateElement extends HTMLElement{}e.TemplateElement=TemplateElement}(Pacem||(Pacem={})),function(e){function t(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}class Transforms{static highlight(r,n,s=e.PCSS+"-highlight"){if(!n||!r)return r;let i=r.substring(0);const o=n.substring(0).split(" ");for(var a=0;a<o.length;a++){const e=t(o[a]),r=new RegExp("(?![^<>]*>)"+e,"gi");i=i.replace(r,function(e,t,r){var n;return(n=r.indexOf("<",t))!=r.indexOf("</",t)||-1==n?'<span class="'+s+'">'+e+"</span>":e})}return i}static diff(t,r,n="full",s,i,o){const{mode:a,output:l,cssAdd:c,cssRemove:m}=function(e,t,r,n){let s,i,o="char",a="full";return["line","word","char"].includes(e)?(o=e,a=t,s=r,i=n):(a=e,s=t,i=r),{mode:o,output:a,cssAdd:s??"fill-green-container",cssRemove:i??"fill-red-container"}}(n,s,i,o);return e.Utils.diff(t,r,a).reduce((t,r)=>{const n=r.type;if("="===n)t+=r.value;else if("+"===n&&"left"!==l||"-"===n&&"right"!==l){const s=r.value.split(/\r?\n/),i=s.length-1;for(let r=0;r<=i;r++){const o=s[r];if(!e.Utils.isNullOrEmpty(o)||r<i){const r="-"===n?m:c;t+=`<span class="${e.PCSS}-token ${r} text-prewrap">${o||" "}</span>`}r<i&&(t+="\n")}}return t},"")}static padleft(t,r,n){return e.Utils.leftPad(""+t,r,n)}static size(e){return e>0?e<1024?e+" B":e<1048576?(e/1024).toFixed(2)+" kB":e<1073741824?(e/1048576).toFixed(2)+" MB":(e/1073741824).toFixed(2)+" GB":"-"}static decToDeg(e,t="° ",r="' ",n='"'){const s=Math.sign(e);e=Math.abs(e);const i=Math.floor(e),o=60*(e-i),a=Math.floor(o),l=60*(o-a);return(s<0?"-":"")+i+t+a+r+Math.floor(l)+n}static date(t,r,n){var s=e.Utils.parseDate(t),i=n||navigator.language;if(!e.Utils.isNull(r)&&"string"!=typeof r)return s.toLocaleString(n,r);switch(r){case"iso":return s.toISOString();case"isodate":return s.toISOString().substring(0,10);case"localdate":return`${s.getFullYear()}-${e.Utils.leftPad(s.getMonth()+1,2,"0")}-${e.Utils.leftPad(s.getDate(),2,"0")}`;case"time":case"localtime":return s.toLocaleTimeString(i,{hour:"numeric",minute:"numeric",second:"numeric",hour12:!1});case"full":const t=-s.getTimezoneOffset()/60;var o="";return 0!=t&&(o=" (UTC"+(t>0?"+":"-")+Math.abs(t).toLocaleString()+")"),s.toLocaleString(i)+o;default:return s.toLocaleDateString(i)}}static timespan(t,r,n,s){const i=e.Utils.parseDate(t),o=e.Utils.parseDate(r).valueOf()-i.valueOf(),a=o<0?"-":"",l=Math.abs(o);if("object"==typeof n){const t={timeZone:"UTC",hour12:!1},r=e.Utils.extend(t,n);return(a||(n.sign?"+":""))+Intl.DateTimeFormat(s??navigator.language,r).format(l)}const c=864e5,m=36e5;return`${a}${Math.floor(l/c)}d ${Math.floor(l%c/m)}h ${Math.floor(l%m/6e4)}m ${Math.floor(l%6e4/1e3)}s ${Math.floor(l%1e3)}ms`}static currency(e,t,r){return new Intl.NumberFormat(r??navigator.language,{style:"currency",currency:t}).format(e)}static number(e,t,r){return"string"==typeof t?new Intl.NumberFormat(t||navigator.language).format(e):new Intl.NumberFormat(r??navigator.language,t).format(e)}static filter(e,t){return e.filter(t)}static orderby(t,r){return t.sort((t,n)=>(e.Utils.isNullOrEmpty(r)||(t=t[r],n=n[r]),t>n?1:t<n?-1:0))}static isMatch(e,t,r){return new RegExp(t,r).test(e)}static isEmpty(t){return e.Utils.isEmpty(t)}static isNull(t){return e.Utils.isNull(t)}static isNullOrEmpty(t){return e.Utils.isNullOrEmpty(t)}static getCssVariable(t){return e.Utils.Css.getVariableValue(t)}static getQuerystring(t){return e.Utils.URIs.parseQuery()[t]}static importThemeWebFonts(){return e.CustomElementUtils.Theme.importWebFonts()}static findHostContext(t){return e.CustomElementUtils.findHostContext(t)}}__decorate([e.Transformer()],Transforms,"highlight",null),__decorate([e.Transformer()],Transforms,"diff",null),__decorate([e.Transformer()],Transforms,"padleft",null),__decorate([e.Transformer()],Transforms,"size",null),__decorate([e.Transformer()],Transforms,"decToDeg",null),__decorate([e.Transformer()],Transforms,"date",null),__decorate([e.Transformer()],Transforms,"timespan",null),__decorate([e.Transformer()],Transforms,"currency",null),__decorate([e.Transformer()],Transforms,"number",null),__decorate([e.Transformer()],Transforms,"filter",null),__decorate([e.Transformer()],Transforms,"orderby",null),__decorate([e.Transformer("regex.")],Transforms,"isMatch",null),__decorate([e.Transformer()],Transforms,"isEmpty",null),__decorate([e.Transformer()],Transforms,"isNull",null),__decorate([e.Transformer()],Transforms,"isNullOrEmpty",null),__decorate([e.Transformer("cssvar")],Transforms,"getCssVariable",null),__decorate([e.Transformer("querystring")],Transforms,"getQuerystring",null),__decorate([e.Transformer()],Transforms,"importThemeWebFonts",null),__decorate([e.Transformer("host")],Transforms,"findHostContext",null)}(Pacem||(Pacem={})),function(e){!function(e){const t=.5*Math.PI,r=e=>e,n=e=>Math.sin(e*t-t)+1,s=e=>Math.sin(e*t),i=e=>.5*Math.sin(e*Math.PI-t)+.5,o=e=>(Math.pow(Math.E,e)-1)/(Math.E-1),a=e=>Math.log(e*(Math.E-1)+1),l=t=>t<.5?.5*e.Easings.expoIn(2*t):.5*(1+e.Easings.expoOut(2*t-1));function c(e,t){const r=t=>e(t);return r.css=t,r}e.Easings={linear:c(r,"linear"),sineIn:c(n,"cubic-bezier(0.12, 0, 0.39, 0)"),sineOut:c(s,"cubic-bezier(0.61, 1, 0.88, 1)"),sineInOut:c(i,"cubic-bezier(0.37, 0, 0.63, 1)"),expoIn:c(o,"cubic-bezier(0.7, 0, 0.84, 0)"),expoOut:c(a,"cubic-bezier(0.16, 1, 0.3, 1)"),expoInOut:c(l,"cubic-bezier(0.87, 0, 0.13, 1)")}}(e.Animations||(e.Animations={}))}(Pacem||(Pacem={})),function(e){!function(t){class AnimationEvent extends e.CustomTypedEvent{constructor(e){super("step",e)}}t.AnimationEvent=AnimationEvent;class AnimationEndEvent extends CustomEvent{constructor(){super("end")}}t.AnimationEndEvent=AnimationEndEvent;class AnimationStartEvent extends CustomEvent{constructor(){super("start")}}t.AnimationStartEvent=AnimationStartEvent}(e.Animations||(e.Animations={}))}(Pacem||(Pacem={})),function(e){!function(e){class Timer{#n;#s;#i;constructor(e,t){this.#o=0,this._run=e=>{this.#i=requestAnimationFrame(this._run);const t=performance.now(),r=this.#n,n=t-this.#o;n>=r&&(this.#o=t-n%r,this.#s(e))},this.#n=1e3/t,this.#s=e,this.#i=requestAnimationFrame(this._run)}#o;static run(e,t=60){return new Timer(e,t)}stop(){cancelAnimationFrame(this.#i)}}e.Timer=Timer}(e.Animations||(e.Animations={}))}(Pacem||(Pacem={})),function(e){!function(t){t.TweenService=class TweenService{run(r,n,s,i=0,o=t.Easings.linear,a=null){return new Promise((t,l)=>{const c=(performance&&performance.now()||Date.now())+Math.abs(i||0),m=c+Math.abs(s||0),d=()=>{const i=performance&&performance.now()||Date.now();if(i>=c&&i<m){const t=(i-c)/s,l=r+(o||e.Animations.Easings.linear)(t)*(n-r);a&&a(t,l)}i<m?requestAnimationFrame(d):(a&&a(1,n),t())};d()})}}}(e.Animations||(e.Animations={}))}(Pacem||(Pacem={})),function(e){!function(t){const r=()=>{};let n;!function(e){e.Get="GET",e.Post="POST",e.Put="PUT",e.Delete="DELETE",e.Options="OPTIONS",e.Head="HEAD",e.Patch="PATCH",e.Connect="CONNECT",e.Trace="TRACE"}(n=t.HttpMethod||(t.HttpMethod={}));class StatusCodeError extends Error{constructor(e,t){super(t),this.statusCode=e}get status(){return this.statusCode}}t.StatusCodeError=StatusCodeError;class Response{constructor(e,t){e&&(this._status=e.status,this._body=e.response,this._text=e.responseText,this._type=e.responseType,this._allHeadersRaw=e.getAllResponseHeaders(),this._processTime=t)}get processTime(){return this._processTime}get headers(){return void 0===this._headers&&this._allHeadersRaw&&this._parseHeaders(),this._headers}get size(){return+this.headers["Content-Length"]}get mime(){return this.headers["Content-Type"]}get date(){return new Date(Date.parse(this.headers.Date))}_parseHeaders(){let e={};this._allHeadersRaw.split("\r\n").forEach(t=>{if(t&&t.length){let r=t.indexOf(":"),n=t.substr(0,r).trim(),s=t.substr(r+1).trim();e[n]=s}}),this._headers=e}get status(){return this._status}get text(){return this._text}get content(){return this._body}get type(){return this._type}get json(){if("json"===this._type)return this._body;try{return JSON.parse(this._text)}catch(e){return}}}t.Response=Response;t.Http=class Http{constructor(){}request(t,s){var i=this;let o=e.DeferPromise.defer();var a=(s=s||{method:n.Get}).method||n.Get,l=s.data||{},c=s.progress||r,m=s.headers||{};i.accessToken&&(m.Authorization="Bearer "+i.accessToken);var d,h,u=new XMLHttpRequest;switch(u.withCredentials=!1,u.addEventListener("progress",e=>{if(e.lengthComputable){var t=e.loaded/e.total;"function"==typeof c&&c.apply(i,[t])}},!1),u.addEventListener("error",e=>{o.reject(new StatusCodeError(500,e.message||"Unknown error"))},!1),u.addEventListener("load",()=>{if(u.status>=200&&u.status<300){var e=new Response(u,Date.now()-d);o.resolve(e)}else o.reject(new StatusCodeError(u.status,u.statusText))},!1),a.toUpperCase()){case n.Get:t+=(/\?/.test(t)?"&":"?")+("string"==typeof l?l:Object.keys(l).map(function(e){return encodeURIComponent(e)+"="+encodeURIComponent(l[e])}).join("&"));break;case n.Post:h=JSON.stringify(l)}switch(u.open(a,t,!0),a.toUpperCase()){case n.Get:u.setRequestHeader("X-Requested-With","XMLHttpRequest");break;case n.Post:u.setRequestHeader("X-Requested-With","XMLHttpRequest"),u.setRequestHeader("Content-Type","application/json")}for(var p in m)u.setRequestHeader(p,m[p]);return d=Date.now(),u.send(h),o.promise}get(e,t,r){return this.request(e,{method:n.Get,data:t,headers:r||{}})}post(e,t,r){return this.request(e,{method:n.Post,data:t,headers:r||{}})}}}(e.Net||(e.Net={}))}(Pacem||(Pacem={})),function(e){!function(e){e.FetchResultEventName="fetchresult",e.FetchErrorEventName="error",e.FetchSuccessEventName="success";e.Fetcher=class Fetcher{static isEmpty(e){return 204===e.status||"0"===e.headers.get("Content-Length")}}}(e.Net||(e.Net={}))}(Pacem||(Pacem={})),function(e){!function(t){let r,n,s,i;!function(e){e.Self="self",e.Alias="alias",e.Copy="copy"}(r=t.DragDataMode||(t.DragDataMode={})),function(e){e.InsertChild="insert",e.None="none"}(n=t.DropBehavior||(t.DropBehavior={})),function(e){e.Revert="revert",e.Remove="remove",e.None="none"}(s=t.DropTargetMissedBehavior||(t.DropTargetMissedBehavior={})),function(e){e.Init="draginit",e.Start="dragstart",e.Drag="drag",e.Drop="drop",e.Over="dragover",e.Out="dragout",e.End="dragend"}(i=t.DragDropEventType||(t.DragDropEventType={}));class DragDropEventArgsBaseClass{constructor(e){this._builder=e,this.currentPosition=e.currentPosition,this.target=e.target}get element(){return this._builder.element}get origin(){return this._builder.origin}get initialDelta(){return this._builder.initialDelta}get startTime(){return this._builder.startTime}get floater(){return this._builder.floater}get delta(){var t=this;return e.Point.add(t.initialDelta,e.Point.subtract(t.origin,t.currentPosition))}}class DragDropInitEventArgsClass extends DragDropEventArgsBaseClass{constructor(e){super(e),this.placeholder=e.placeholder,this.data=e.data}static fromArgs(t){return new DragDropInitEventArgsClass(e.Utils.extend({},t))}}t.DragDropInitEventArgsClass=DragDropInitEventArgsClass;class DragDropEventArgsClass extends DragDropEventArgsBaseClass{constructor(e,t=e.placeholder,r=e.data){super(e),this._placeholder=t,this._data=r}get placeholder(){return this._placeholder}get data(){return this._data}static fromArgs(t){return new DragDropEventArgsClass(e.Utils.extend({},t))}}t.DragDropEventArgsClass=DragDropEventArgsClass;class DragDropEvent extends e.CustomUIEvent{constructor(e,t,r,n){super(e,t,r,n)}}t.DragDropEvent=DragDropEvent}(e.UI||(e.UI={}))}(Pacem||(Pacem={})),function(e){!function(t){let r,n;!function(e){e.All="all",e.Top="top",e.Left="left",e.Right="right",e.Bottom="bottom"}(r=t.RescaleHandle||(t.RescaleHandle={})),function(e){e.Start="rescalestart",e.Rescale="rescale",e.End="rescaleend"}(n=t.RescaleEventType||(t.RescaleEventType={}));class RescaleEventArgsClass{constructor(e){this._builder=e}get currentPosition(){return this._builder.currentPosition}get targetRect(){return this._builder.targetRect}get element(){return this._builder.element}get handle(){return this._builder.handle}static fromArgs(t){return new RescaleEventArgsClass(e.Utils.extend({},t))}}t.RescaleEventArgsClass=RescaleEventArgsClass;class RescaleEvent extends e.CustomUIEvent{constructor(e,t,r,n){super(e,t,r,n)}}t.RescaleEvent=RescaleEvent}(e.UI||(e.UI={}))}(Pacem||(Pacem={})),function(e){!function(t){let r;!function(e){e.Start="rotatestart",e.Rotate="rotate",e.End="rotateend"}(r=t.RotateEventType||(t.RotateEventType={}));class RotateEventArgsClass{constructor(e){this._builder=e}get currentPosition(){return this._builder.currentPosition}get rotation(){return this._builder.rotation}get element(){return this._builder.element}get center(){return this._builder.center}static fromArgs(t){return new RotateEventArgsClass(e.Utils.extend({},t))}}t.RotateEventArgsClass=RotateEventArgsClass;class RotateEvent extends e.CustomUIEvent{constructor(e,t,r,n){super(e,t,r,n)}}t.RotateEvent=RotateEvent}(e.UI||(e.UI={}))}(Pacem||(Pacem={})),function(e){!function(t){let r;!function(e){e.Swipe="swipe",e.SwipeLeft="swipeleft",e.SwipeRight="swiperight",e.SwipeAnimationEnd="swipeanimationend",e.SwipeLeftAnimationEnd="swipeleftanimationend",e.SwipeRightAnimationEnd="swiperightanimationend"}(r=t.SwipeEventType||(t.SwipeEventType={}));class SwipeEventArgsClass{constructor(e){this._builder=e}get direction(){return this._builder.horizontalspeed>0?"right":"left"}get speed(){return Math.abs(this._builder.horizontalspeed)}get element(){return this._builder.element}static fromArgs(t){return new SwipeEventArgsClass(e.Utils.extend({},t))}}t.SwipeEventArgsClass=SwipeEventArgsClass;class SwipeEvent extends e.CustomTypedEvent{constructor(e,t,r){super(e,t,r)}}t.SwipeEvent=SwipeEvent}(e.UI||(e.UI={}))}(Pacem||(Pacem={})),function(e){!function(t){class PacemBehavior extends e.Components.PacemEventTarget{#a=new WeakSet;register(e){var t=this.#a;t.has(e)||(t.add(e),this.decorate(e))}unregister(e){var t=this.#a;t.has(e)&&(this.undecorate(e),t.delete(e))}has(e){return this.#a.has(e)}}t.PacemBehavior=PacemBehavior}(e.Behaviors||(e.Behaviors={}))}(Pacem||(Pacem={})),function(e){!function(t){const r=e.CustomElementUtils.getAttachedPropertyValue,n=e.CustomElementUtils.setAttachedPropertyValue,s=e.CustomElementUtils.deleteAttachedPropertyValue,i="pacem:dragdrop:mousedown",o="pacem:dragdrop:info",a="pacem:dragdrop:delegate";class DragElementDelegate{constructor(t,n){this._logFn=n,this._started=!1,this._enterHandler=e=>{this._currentTarget=e.target},this._leaveHandler=e=>{this._currentTarget=null},this._revertTrackedTarget=null,this._moveHandler=t=>{"wheel"!==t.type&&e.avoidHandler(t);var n,s=this._element,i=this._dragDropper,a=r(s,o);if(!this._started){if(this._logFn(e.Logging.LogLevel.Info,"Dragging act started"),this._started=!0,i.dropBehavior===e.UI.DropBehavior.InsertChild){var l=s;do{l=l.parentElement}while(l&&-1==i.dropTargets.indexOf(l));this._currentTarget=l}i.dispatchEvent(new e.UI.DragDropEvent(e.UI.DragDropEventType.Start,e.UI.DragDropEventArgsClass.fromArgs(a),{},t))}if(!e.Utils.isNull(a)){this._logFn(e.Logging.LogLevel.Debug,"Dragging act ongoing");const r=t instanceof MouseEvent;e.Utils.addClass(e.CustomElementUtils.findAncestorShell(s),e.PCSS+"-dragging");a.currentPosition=n=n||(t instanceof MouseEvent?{x:t.pageX,y:t.pageY}:{x:t.touches[0].pageX,y:t.touches[0].pageY});let o=a.floater,l=new e.UI.DragDropEvent(e.UI.DragDropEventType.Drag,e.UI.DragDropEventArgsClass.fromArgs(a),{cancelable:!0},t);if(i.dispatchEvent(l),!l.defaultPrevented&&(o instanceof HTMLElement||o instanceof SVGElement)){let e={x:l.detail.delta.x,y:l.detail.delta.y};o.style.transform=`translate3d(${e.x}px, ${e.y}px, 0)`}var c=this._currentTarget;!r&&i.dropTargets.length>0&&(c=document.elementsFromPoint(a.currentPosition.x-e.Utils.scrollLeft,a.currentPosition.y-e.Utils.scrollTop).find(e=>i.dropTargets.indexOf(e)>=0));var m=a.target;if(c!==m)if(e.Utils.isNull(m)||(e.Utils.removeClass(m,e.PCSS+"-dropping"),i.dispatchEvent(new e.UI.DragDropEvent(e.UI.DragDropEventType.Out,e.UI.DragDropEventArgsClass.fromArgs(a),{},t)),this._logFn(e.Logging.LogLevel.Info,`Drop area left (${m.id||m.constructor.name})`)),-1!=i.dropTargets.indexOf(c)){a.target=c,this._logFn(e.Logging.LogLevel.Info,`Drop area entering (${a.target.id||a.target.constructor.name})`);let r=new e.UI.DragDropEvent(e.UI.DragDropEventType.Over,e.UI.DragDropEventArgsClass.fromArgs(a),{cancelable:!0},t);i.dispatchEvent(r),r.defaultPrevented?delete a.target:(e.Utils.addClass(a.target,e.PCSS+"-dropping"),this._logFn(e.Logging.LogLevel.Info,`Drop area entered (${a.target.id||a.target.constructor.name})`))}else delete a.target;if(this._revertTrackedTarget=a.target||m,e.Utils.isNull(a.target)||i.dropBehavior!==e.UI.DropBehavior.InsertChild){if(e.Utils.isNull(a.target)&&i.mode===e.UI.DragDataMode.Copy){const e=a.placeholder;e instanceof Element&&e.remove()}}else this._insertChild(c,a)}},this._endHandler=t=>{var n,i=this._element,a=e.CustomElementUtils.findAncestorShell(i),l=this._dragDropper;if(!e.Utils.isNull(n=r(i,o))){t instanceof MouseEvent&&e.avoidHandler(t);let r=()=>{let r=n.floater;(r instanceof HTMLElement||r instanceof SVGElement)&&(r.style.pointerEvents=""),l.mode!==e.UI.DragDataMode.Self&&n.floater.remove(),e.Utils.removeClass(i,e.PCSS+"-dragging"),e.Utils.removeClass(i,e.PCSS+"-drag-lock"),s(i,o),e.Utils.isNull(n.placeholder)||(e.Utils.removeClass(n.placeholder,e.PCSS+"-dragging"),e.Utils.removeClass(n.placeholder,"drag-placeholder"),e.Utils.removeClass(n.placeholder,e.PCSS+"-drag-lock"),s(n.placeholder,o));const c=!e.Utils.isNull(n.target);c&&(l.dispatchEvent(new e.UI.DragDropEvent(e.UI.DragDropEventType.Drop,e.UI.DragDropEventArgsClass.fromArgs(n),{},t)),e.Utils.removeClass(n.target,e.PCSS+"-dropping"));const m=n.data,d=(l.dropTargets,n.placeholder),h=this._repeaterItem,u=this._sourceRepeater,p=!e.Utils.isNull(h),v=d&&this._findTargetRepeaterItem(n.placeholder.parentElement,n.placeholder.nextElementSibling),g=v&&v.repeater,f=l.mode===e.UI.DragDataMode.Copy,_=c&&!e.Utils.isNull(g)&&!(e.Utils.isNull(h)&&u===g);if(p&&!f&&c&&u.removeItem(h.index),_)if(n.placeholder.remove(),g!==u||f)f||u&&u.datasource.splice(h.index,1),g&&(g.datasource=g.datasource||[]).splice(v.index,0,m);else{let e=h.index,t=v.index;t>e&&t--,u.datasource.moveWithin(e,t)}c||e.Utils.isNullOrEmpty(l.dropTargets)||l.spillBehavior!==e.UI.DropTargetMissedBehavior.Remove||f||(p?u.datasource.splice(h.index,1):i.remove()),l.dispatchEvent(new e.UI.DragDropEvent(e.UI.DragDropEventType.End,e.UI.DragDropEventArgsClass.fromArgs(n),{},t)),e.Utils.removeClass(a,e.PCSS+"-dragging")};const m=n.placeholder||n.element;if(n.floater!=m){let t=n.floater;var c=e.Utils.deserializeTransform(getComputedStyle(t));if(!e.Utils.isNull(n.target)||l.spillBehavior===e.UI.DropTargetMissedBehavior.Revert||l.dropBehavior===e.UI.DropBehavior.InsertChild&&l.spillBehavior!==e.UI.DropTargetMissedBehavior.Remove){const r=e.Utils.offset(m),n=e.Utils.offset(t);t.style.transition="transform .2s ease-in-out",c=e.Matrix2D.translate(c,{x:r.left-n.left,y:r.top-n.top})}else t.style.transition="transform .2s ease-in, opacity .2s linear",c=e.Matrix2D.scale(c,.1),t.style.opacity="0";e.Utils.addAnimationEndCallback(t,r,300),t.style.transform=`matrix(${c.a},${c.b},${c.c},${c.d},${c.e},${c.f})`}else r()}e.Utils.removeClass(i,e.PCSS+"-drag-lock"),this.dispose(),this._logFn(e.Logging.LogLevel.Info,"Dragging act disposed")},this._dragDropper=t.dragDrop,e.Utils.addClass(this._element=t.element,e.PCSS+"-drag-lock"),window.addEventListener("mouseup",this._endHandler,!1),window.addEventListener("touchend",this._endHandler,!1),window.addEventListener("mousemove",this._moveHandler,!1),document.addEventListener("wheel",this._moveHandler,!1),window.addEventListener("touchmove",this._moveHandler,{capture:!0,passive:!1}),this._dragDropper.dropTargets.forEach(e=>{e.addEventListener("mouseenter",this._enterHandler,!1),e.addEventListener("mouseleave",this._leaveHandler,!1)});var i=e.Repeater.findItemContext(this._element,0,null);i&&(i.dom&&1===i.dom.length&&i.dom[0]===this._element&&(this._repeaterItem=i),this._sourceRepeater=i.repeater),this._bootstrap(t.placeholder,t.data)}_getLogicalData(e){return e instanceof t.RepeaterItem?e.item:e instanceof HTMLElement?e.dataset:e}_getPhysicalData(e){return e instanceof t.RepeaterItem?e.dom:[e]}_createFloater(t,r){let n=t;if(this._dragDropper.mode!=e.UI.DragDataMode.Self&&(n=n.cloneNode(!0),e.CustomElementUtils.stripObservedAttributes(n),n instanceof HTMLElement||n instanceof SVGElement)){e.Utils.addClass(n,e.PCSS+"-drag-floater"),e.CustomElementUtils.findAncestorShell(this._element).appendChild(n),n.style.position="absolute";let s={left:r.x+n.clientWidth/2,top:r.y-n.clientHeight/2};if(t===this._element||t.classList.contains("drag-floater-resize")){let t=e.Utils.offset(this._element);n.style.boxSizing="border-box",n.style.width=t.width+"px",n.style.height=t.height+"px",s={left:t.left,top:t.top}}n.style.left=`${s.left}px`,n.style.top=`${s.top}px`}return(n instanceof HTMLElement||n instanceof SVGElement)&&(n.style.pointerEvents="none"),n}_findTargetRepeaterItem(r,n){var s=e.Repeater.findItemContext(n,0,null);if(!e.Utils.isNull(s))return{repeater:s.repeater,index:s.index};var i=null;return i=r instanceof t.PacemRepeaterElement?r:e.CustomElementUtils.findAncestorOfType(r,t.PacemRepeaterElement),e.Utils.isNull(i)?null:{repeater:i,index:i.datasource&&i.datasource.length||0}}_findNextSibling(t,r){const n=Array.from(t.children),s=(n.length,document.elementFromPoint(r.currentPosition.x-e.Utils.scrollLeft,r.currentPosition.y-e.Utils.scrollTop));let i;if(s===t)return this._currentHover=i=r.placeholder,i.parentElement===t?i.nextElementSibling:null;for(var o=s;o.parentElement!=t&&null!=o.parentElement;)o=o.parentElement;if(o.parentElement!=t||o===r.placeholder)return this._currentHover=i=r.placeholder,i.nextElementSibling;if(o!=this._currentHover){i=this._currentHover;const e=n.indexOf(i),t=n.indexOf(o);return this._currentHover=o,e>t?o:o.nextElementSibling}return o}_insertChild(t,r){const n=r.placeholder||r.element,s=r.target,i=this._findNextSibling(s,r);n.nextSibling==i&&n.parentElement==s||(e.Utils.isNull(i)||i.parentElement==t)&&(t.insertBefore(n,i),this._logFn(e.Logging.LogLevel.Info,`Positioned before ${i&&(i.id||i.constructor.name)||"null"} for drop`))}_bootstrap(t,a){var l,c,m=this._element,d=this._dragDropper;if(!e.Utils.isNull(l=r(m,i))){this._started=!1,s(m,i),e.Utils.addClass(m,e.PCSS+"-dragging");let r=getComputedStyle(m),h={x:0,y:0},u=e.Utils.deserializeTransform(r);h.x+=u.e,h.y+=u.f;let p=this._createFloater(d.floater||m,l);if(e.Utils.isNull(t))switch(d.mode){case e.UI.DragDataMode.Alias:t=m;break;case e.UI.DragDataMode.Copy:t=m.cloneNode(!0)}e.Utils.isNull(t)||e.Utils.addClass(t,"drag-placeholder"),e.Utils.isNull(this._repeaterItem)||e.Utils.isNull(t)||e.CustomElementUtils.freezeObservedAttributes(t);c={element:m,placeholder:t||m,data:a||this._getLogicalData(this._repeaterItem||m),startTime:Date.now(),origin:l,initialDelta:h,currentPosition:l,floater:p},n(m,o,c)}}dispose(){this._dragDropper.dropTargets.forEach(e=>{e.removeEventListener("mouseenter",this._enterHandler,!1),e.removeEventListener("mouseleave",this._leaveHandler,!1)}),window.removeEventListener("mouseup",this._endHandler,!1),window.removeEventListener("touchend",this._endHandler,!1),window.removeEventListener("mousemove",this._moveHandler,!1),document.removeEventListener("wheel",this._moveHandler,!1),window.removeEventListener("touchmove",this._moveHandler,{capture:!0})}}let l=class PacemDragDropElement extends e.Behaviors.PacemBehavior{constructor(){super(...arguments),this._startHandler=t=>{if(this.disabled)return;if(!e.Utils.isNullOrEmpty(this.handleSelector)&&t.currentTarget.querySelector(this.handleSelector)!==t.target)return;const r=t.currentTarget,s=e.CustomEventUtils.getEventCoordinates(t).page;let o=r,l=e.UI.DragDropInitEventArgsClass.fromArgs({element:o,placeholder:null,currentPosition:s,origin:s,initialDelta:{x:0,y:0},startTime:null,floater:null,data:null});const c=new e.UI.DragDropEvent(e.UI.DragDropEventType.Init,l,{cancelable:!0},t);if(this.dispatchEvent(c),c.defaultPrevented)return;e.avoidHandler(t);const m=t=>{this.log(e.Logging.LogLevel.Info,"Drag avoided!"),clearTimeout(d)},d=setTimeout(()=>{r.removeEventListener("mouseup",m,!1),r.removeEventListener("touchend",m,!1),this.log(e.Logging.LogLevel.Info,"Drag locked!"),n(r,i,s),n(r,a,new DragElementDelegate({element:o,dragDrop:this,placeholder:l.placeholder,data:l.data},(e,t,r)=>this.log.apply(this,[e,t,r])))},this.lockTimeout);r.addEventListener("mouseup",m,!1),r.addEventListener("touchend",m,!1)},this.lockTimeout=100,this.dropTargets=[],this.mode=e.UI.DragDataMode.Self}decorate(e){e.addEventListener("mousedown",this._startHandler,!1),e.addEventListener("touchstart",this._startHandler,{capture:!1,passive:!1})}undecorate(e){e.removeEventListener("mousedown",this._startHandler,!1),e.removeEventListener("touchstart",this._startHandler,{capture:!1,passive:!1})}addEventListener(e,t,r){super.addEventListener(e,t,r)}removeEventListener(e,t,r){super.removeEventListener(e,t,r)}dispatchEvent(t){return t.type===e.UI.DragDropEventType.End&&(s(t.detail.element,i),s(t.detail.element,a)),super.dispatchEvent(t)}};__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Number})],l.prototype,"lockTimeout",void 0),__decorate([e.Watch({emit:!1})],l.prototype,"dropTargets",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],l.prototype,"mode",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Element})],l.prototype,"floater",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],l.prototype,"dropBehavior",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],l.prototype,"spillBehavior",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],l.prototype,"handleSelector",void 0),l=__decorate([e.CustomElement({tagName:e.P+"-drag-drop"})],l),t.PacemDragDropElement=l}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){t.RepeaterItemCreateEventName="repeateritemcreate",t.RepeaterItemRemoveEventName="repeateritemremove";class RepeaterItemEvent extends e.CustomTypedEvent{constructor(e,t){super(e,t)}}t.RepeaterItemEvent=RepeaterItemEvent;t.RepeaterItemCreateEvent=class RepeaterItemCreateEvent extends RepeaterItemEvent{constructor(e){super(t.RepeaterItemCreateEventName,e)}};t.RepeaterItemRemoveEvent=class RepeaterItemRemoveEvent extends RepeaterItemEvent{constructor(e){super(t.RepeaterItemRemoveEventName,e)}};const r=["keydown","keyup","click","focus","blur","dblclick","mouseover","mouseout","mouseenter","mouseleave","mousedown","mouseup","mousemove","contextmenu","wheel"];class ElementAriaAttributes{constructor(t,r){this._element=t,this._aria=e.Utils.extend({},r||{})}toObject(){return e.Utils.extend({},this._aria)}set(e,t){this._aria[e]=t;const r=this._element;r.isConnected&&r.setAttribute("aria-"+e,t)}remove(e){delete this._aria[e];const t=this._element;t.isConnected&&t.removeAttribute("aria-"+e)}}class ElementAria{constructor(e,t,r){this._element=e,this._aria={role:t,attrs:new ElementAriaAttributes(e,r)}}get role(){return this._aria.role}set role(t){this._aria.role=t;const r=this._element;r.isConnected&&(e.Utils.isNullOrEmpty(t)?r.removeAttribute("role"):r.setAttribute("role",t))}get attributes(){return this._aria.attrs}}class PacemElement extends t.PacemEventTarget{constructor(e,t){super(),this.#l=[],this.#c=[],this._tabIndex=-1,this.behaviors=[],this._aria=new ElementAria(this,e,t)}get aria(){return this._aria}static#m=null;static get emittedEventTypes(){return this.#m??=e.Utils.readonlyCopy(r)}#l;#c;connectedCallback(){super.connectedCallback(),e.Utils.isNullOrEmpty(this._aria.role)||this.setAttribute("role",this._aria.role);let t=this._aria.attributes.toObject();if(!e.Utils.isNullOrEmpty(t))for(let e in t)this.setAttribute("aria-"+e,t[e])}viewActivatedCallback(){for(var e of(super.viewActivatedCallback(),r.forEach(e=>{this.addEventListener(e,this.emitHandler,!1)}),this.behaviors||[]))e.register(this)}disconnectedCallback(){for(var e of this.behaviors||[])e.unregister(this);r.forEach(e=>{this.removeEventListener(e,this.emitHandler,!1)}),super.disconnectedCallback()}propertyChangedCallback(t,r,n,s){switch(super.propertyChangedCallback(t,r,n,s),t){case"css":for(var i in this.css)this.style.setProperty(i,this.css[i]);break;case"cssClass":if(e.Utils.isArray(this.cssClass)){const t=this.cssClass;for(let t of this.#l.splice(0))e.Utils.removeClass(this,t);for(let r of t)this.#l.push(r),e.Utils.addClass(this,r)}else for(let t in this.cssClass)this.cssClass[t]?e.Utils.addClass(this,t):e.Utils.removeClass(this,t);break;case"cssPart":const o=this.cssPart,a=this.#c;if(e.Utils.isArray(o)){const t=o;for(let t of a.splice(0))e.Utils.removePart(this,t);for(let r of t)a.push(r),e.Utils.addPart(this,r)}else for(let t in o)o[t]?e.Utils.addPart(this,t):e.Utils.removePart(this,t);break;case"hide":const l=e.PCSS+"-hiding";if(n){const t=this,n=e.PCSS+"-anim",s=()=>{t.setAttribute("hidden",""),t.aria.attributes.set("hidden","true")};e.Utils.hasClass(t,n)&&!e.Utils.isNull(r)?(e.Utils.removeClass(t,n),requestAnimationFrame(()=>{e.Utils.addClass(t,l),e.Utils.addClass(t,n),e.Utils.waitForAnimationEnd(t,250).then(r=>{t.hide&&s(),e.Utils.removeClass(t,l)})})):s()}else e.Utils.removeClass(this,l),this.removeAttribute("hidden"),this.aria.attributes.remove("hidden");break;case"tooltip":this.title=n,e.Utils.isNullOrEmpty(n)?this.aria.attributes.remove("label"):this.aria.attributes.set("label",n);break;case"tabOrder":this._tabIndex=n,this.disabled||(this.tabIndex=n);break;case"behaviors":if(!e.Utils.isNullOrEmpty(r))for(let e of r)e.unregister(this);if(!e.Utils.isNullOrEmpty(n)&&!s)for(let e of n)e.register(this);break;case"disabled":let c=e.PCSS+"-"+t;n?(this._tabIndex=this.tabIndex,this.tabIndex=-1,e.Utils.addClass(this,c)):(this.tabIndex=this._tabIndex,e.Utils.removeClass(this,c));break;case"culture":e.Utils.isNullOrEmpty(n)?this.removeAttribute("lang"):this.setAttribute("lang",n),s||this.refreshBindings()}}}__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Json})],PacemElement.prototype,"cssClass",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Json})],PacemElement.prototype,"cssPart",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Json})],PacemElement.prototype,"css",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Boolean})],PacemElement.prototype,"hide",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],PacemElement.prototype,"tooltip",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Number})],PacemElement.prototype,"tabOrder",void 0),__decorate([e.Watch({converter:e.PropertyConverters.String})],PacemElement.prototype,"culture",void 0),__decorate([e.Watch({emit:!1})],PacemElement.prototype,"behaviors",void 0),t.PacemElement=PacemElement;class PacemContentElement extends PacemElement{propertyChangedCallback(e,t,r,n){super.propertyChangedCallback(e,t,r,n),"content"!==e||n||this._fillContent(r)}_isContentNullOrEmpty(t=this.content){return e.Utils.isNullOrEmpty(t)||t instanceof DocumentFragment&&0===t.childElementCount}viewActivatedCallback(){super.viewActivatedCallback(),this._original=Array.from(this.children),this._isContentNullOrEmpty()||this._fillContent()}disconnectedCallback(){e.Utils.isNullOrEmpty(this._original)||(this.innerHTML="",Element.prototype.append.apply(this,this._original)),super.disconnectedCallback()}_fillContent(t=this.content){const r=this.sanitize(t);e.Utils.isNullOrEmpty(r)?this.innerHTML="":r instanceof Node?(this.innerHTML="",this.append(r)):this.innerHTML=r}}__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],PacemContentElement.prototype,"content",void 0),t.PacemContentElement=PacemContentElement;t.PacemUnsafeContentElement=class PacemUnsafeContentElement extends PacemContentElement{sanitize(e){return e}};t.PacemSafeContentElement=class PacemSafeContentElement extends PacemContentElement{sanitize(t){if(e.Utils.isNullOrEmpty(t))return t;if(t instanceof Node){for(let e=t.childNodes.length-1;e>=0;e--){const r=t.childNodes.item(e);r instanceof HTMLScriptElement?r.remove():this.sanitize(r)}return t}{const e=/<script.+<\/script>/g;return(t||"").toString().replace(e,"")}}}}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){class RescaleElementDelegate{constructor(t,n,i,o){this._element=t,this._type=n,this._rescaler=i,this._logFn=o,this._startTime=Date.now(),this._moveHandler=t=>{t.stopPropagation();const r=this._element,n=this._origin,s=this._rescaler,i=this._type,o=s.keepProportions,a=s.minWidth||0,l=s.minHeight||0,c=s.maxWidth||Number.MAX_SAFE_INTEGER,m=s.maxHeight||Number.MAX_SAFE_INTEGER,d=t instanceof MouseEvent?{x:t.pageX,y:t.pageY}:{x:t.touches[0].pageX,y:t.touches[0].pageY},h={x:d.x,y:d.y},u=this._rect;switch(i){case"top":case"bottom":h.x=n.x;break;case"left":case"right":h.y=n.y}this._position=h;const p={x:h.x-n.x,y:h.y-n.y};var v;if(o){const t={x:u.x,y:u.y},r={x:u.x+u.width,y:u.y},n={x:u.x+u.width,y:u.y+u.height},s={x:u.x,y:u.y+u.height},o=e.Point.distance(n,s)/e.Point.distance(n,t),a=e.Point.distance(t,s)/e.Point.distance(n,t),l=e.Point.distance(t,n),c=(e,t)=>(e.x*t.x+e.y*t.y)/l;switch(i){case"topleft":const i=e.Point.subtract(n,t),l=c(e.Point.subtract(n,h),i),m={x:n.x-l*o,y:n.y-l*a};v={x:m.x,y:m.y,width:n.x-m.x,height:n.y-m.y};break;case"topright":const d=e.Point.subtract(s,r),u=c(e.Point.subtract(s,h),d),p={x:s.x+u*o,y:s.y-u*a};v={x:s.x,y:p.y,width:p.x-s.x,height:s.y-p.y};break;case"bottomleft":const g=e.Point.subtract(r,s),f=c(e.Point.subtract(r,h),g),_={x:r.x-f*o,y:r.y+f*a};v={x:_.x,y:r.y,width:r.x-_.x,height:_.y-r.y};break;default:const y=e.Point.subtract(t,n),E=c(e.Point.subtract(t,h),y),C={x:t.x+E*o,y:t.y+E*a};v={x:t.x,y:t.y,width:C.x-t.x,height:C.y-t.y}}}else v={x:this._rect.x,y:this._rect.y,width:this._rect.width+p.x,height:this._rect.height+p.y},i.startsWith("top")&&(v.y=this._rect.y+p.y,v.height=this._rect.height-p.y),i.endsWith("left")&&(v.x=this._rect.x+p.x,v.width=this._rect.width-p.x);this._logFn(e.Logging.LogLevel.Log,`handle: ${i}, origin: ${JSON.stringify(n)}, currentPosition: ${JSON.stringify(d)}`,"Rescaling"),this._logFn(e.Logging.LogLevel.Log,`delta: ${JSON.stringify(p)}, position: ${JSON.stringify(h)}`,"Rescaling"),this._logFn(e.Logging.LogLevel.Log,`from: ${JSON.stringify(this._rect)}, to: ${JSON.stringify(v)}`,"Rescaling");let g=v.width>=a&&v.width<=c,f=v.height>=l&&v.height<=m;if(!o||g&&f||(g=f=!1),g||(v.x=this._targetRect.x,v.width=this._targetRect.width),f||(v.y=this._targetRect.y,v.height=this._targetRect.height),g||f){const o={currentPosition:h,element:r,handle:i,origin:n,targetRect:v,startTime:this._startTime};let a=new e.UI.RescaleEvent(e.UI.RescaleEventType.Rescale,e.UI.RescaleEventArgsClass.fromArgs(o),{cancelable:!0},t);if(s.dispatchEvent(a),!a.defaultPrevented){const e=this._originalTransform;r.style.transform=`matrix(${e.a},${e.b},${e.c},${e.d},${e.e+v.x-this._rect.x},${e.f+v.y-this._rect.y})`,r.style.width=v.width+"px",r.style.height=v.height+"px"}this._targetRect=v}},this._endHandler=t=>{t.stopPropagation();const r=this._type;let n=new e.UI.RescaleEvent(e.UI.RescaleEventType.End,e.UI.RescaleEventArgsClass.fromArgs({element:this._element,origin:this._origin,handle:r,startTime:this._startTime,currentPosition:this._position,targetRect:this._targetRect}),{},t);e.Utils.removeClass(document.body,e.PCSS+"-rescaling rescale-"+r),this._rescaler.dispatchEvent(n),s(this._element,l),window.removeEventListener("mouseup",this._endHandler,!1),window.removeEventListener("touchend",this._endHandler,!1),window.removeEventListener("mousemove",this._moveHandler,!1),window.removeEventListener("touchmove",this._moveHandler,!1)},window.addEventListener("mouseup",this._endHandler,!1),window.addEventListener("touchend",this._endHandler,!1),window.addEventListener("mousemove",this._moveHandler,!1),window.addEventListener("touchmove",this._moveHandler,!1),this._origin=this._position=r(t,a),this._rect=this._targetRect=e.Utils.offsetRect(t),this._originalTransform=e.Utils.deserializeTransform(getComputedStyle(t)),e.Utils.addClass(document.body,e.PCSS+"-rescaling rescale-"+n)}}const r=e.CustomElementUtils.getAttachedPropertyValue,n=e.CustomElementUtils.setAttachedPropertyValue,s=e.CustomElementUtils.deleteAttachedPropertyValue,i="top right bottom left topleft topright bottomright bottomleft".split(" "),o="pacem:rescale:frame",a="pacem:rescale:origin",l="pacem:rescale:delegate";let c=class PacemRescaleElement extends e.Behaviors.PacemBehavior{constructor(){super(...arguments),this._bag=[],this._startHandler=t=>{t.stopPropagation();const r=e.CustomEventUtils.getEventCoordinates(t),s=t.currentTarget,i=r.page,o=/rescale-(.+)/.exec(s.className)[1],c=s.parentElement,m=new e.UI.RescaleEvent(e.UI.RescaleEventType.Start,e.UI.RescaleEventArgsClass.fromArgs({currentPosition:i,origin:i,element:c,handle:o,startTime:Date.now()}),{cancelable:!0},t);this.dispatchEvent(m),m.defaultPrevented||(e.avoidHandler(t),n(c,a,i),n(c,l,new RescaleElementDelegate(c,o,this,(e,t,r)=>this.log.apply(this,[e,t,r]))))}}decorate(t){const r=t;getComputedStyle(r);e.Utils.addClass(r,e.PCSS+"-rescalable"),this._setFrame(r)}undecorate(t){const r=t;e.Utils.removeClass(r,e.PCSS+"-rescalable"),this._removeFrame(r)}viewActivatedCallback(){super.viewActivatedCallback(),this._syncHandles()}propertyChangedCallback(e,t,r,n){switch(super.propertyChangedCallback(e,t,r,n),e){case"disabled":case"handles":case"keepProportions":this._syncHandles()}}_syncHandles(){const t=this.handles||[e.UI.RescaleHandle.All],n=null!=t.find(t=>t===e.UI.RescaleHandle.All),s=this.disabled,i=this.keepProportions;for(let a of this._bag){let l=r(a,o);l.top.hidden=s||!n&&null==t.find(t=>t===e.UI.RescaleHandle.Top),l.bottom.hidden=s||!n&&null==t.find(t=>t===e.UI.RescaleHandle.Bottom),l.left.hidden=s||!n&&null==t.find(t=>t===e.UI.RescaleHandle.Left),l.right.hidden=s||!n&&null==t.find(t=>t===e.UI.RescaleHandle.Right),l.topleft.hidden=l.top.hidden||l.left.hidden,l.topright.hidden=l.top.hidden||l.right.hidden,l.bottomleft.hidden=l.bottom.hidden||l.left.hidden,l.bottomright.hidden=l.bottom.hidden||l.right.hidden,i&&(l.top.hidden=l.bottom.hidden=l.left.hidden=l.right.hidden=!0)}}_setFrame(t){let r={};for(let n of i){const s=r[n]=document.createElement("div");e.Utils.addClass(s,e.PCSS+"-rescale rescale-"+n),t.setAttribute("pacem",""),t.appendChild(s),s.addEventListener("mousedown",this._startHandler,!1),s.addEventListener("touchstart",this._startHandler,{capture:!1,passive:!0})}n(t,o,r),this._bag.push(t),this._syncHandles()}_removeFrame(e){const t=r(e,o);for(var n in t){const e=t[n];e.removeEventListener("mousedown",this._startHandler,!1),e.removeEventListener("touchstart",this._startHandler,{capture:!1}),e.remove()}s(e,o),this._bag.splice(this._bag.indexOf(e),1)}};__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.StringArray})],c.prototype,"handles",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Number})],c.prototype,"minWidth",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Number})],c.prototype,"maxWidth",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Number})],c.prototype,"minHeight",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Number})],c.prototype,"maxHeight",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Boolean})],c.prototype,"keepProportions",void 0),c=__decorate([e.CustomElement({tagName:e.P+"-rescale"})],c),t.PacemRescaleElement=c}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){const r=e.CustomElementUtils.getAttachedPropertyValue,n=e.CustomElementUtils.setAttachedPropertyValue,s=e.CustomElementUtils.deleteAttachedPropertyValue,i="pacem:rotate:origin",o="pacem:rotate:delegate",a="pacem:rotate:offset",l="pacem:rotate:center";Math.PI;class RotateElementDelegate{constructor(t,c,m){this._element=t,this._rotator=c,this._logFn=m,this._startTime=Date.now(),this._moveHandler=t=>{t.stopPropagation();const r=this._element,s=this._previousPosition,i=this._rotator,o=i.minRotation,l=i.maxRotation,c=t instanceof MouseEvent?{x:t.pageX,y:t.pageY}:{x:t.touches[0].pageX,y:t.touches[0].pageY},m=this._pivot;var d=this._computeAngle(m,c,s)+this._previousAngle,h=this._constraintAngle(d,i.step);for(this._logFn(e.Logging.LogLevel.Log,`previousPosition: ${JSON.stringify(s)}, currentPosition: ${JSON.stringify(c)}`,"Rotating"),d>l&&(d=l);h>l&&i.step>0;)this._logFn(e.Logging.LogLevel.Log,`angle: ${h} constrained to max: ${l}`,"Rotating"),h-=i.step;for(d<o&&(d=o);h<o&&i.step>0;)this._logFn(e.Logging.LogLevel.Log,`angle: ${h} constrained to min: ${o}`,"Rotating"),h+=i.step;if(this._logFn(e.Logging.LogLevel.Log,`angle: ${h}, origin: ${JSON.stringify(this._originalPosition)}, current: ${JSON.stringify(c)}`,"Rotating"),h!=this._previousRenderedAngle){let s=new e.UI.RotateEvent(e.UI.RotateEventType.Rotate,e.UI.RotateEventArgsClass.fromArgs({element:this._element,origin:this._originalPosition,startTime:this._startTime,currentPosition:c,rotation:h,center:this._pivot}),{cancelable:!0},t);if(this._rotator.dispatchEvent(s),!s.defaultPrevented){const t=this._originalTransform,s=e.Matrix2D.rotate(t,h-this._originalAngle);r.style.transform=`matrix(${s.a}, ${s.b}, ${s.c}, ${s.d}, ${s.e}, ${s.f})`,n(this._element,a,h)}this._previousRenderedAngle=h}this._previousPosition=c,this._previousAngle=d},this._endHandler=t=>{t.stopPropagation();let r=new e.UI.RotateEvent(e.UI.RotateEventType.End,e.UI.RotateEventArgsClass.fromArgs({element:this._element,origin:this._originalPosition,startTime:this._startTime,currentPosition:this._previousPosition,rotation:this._previousAngle,center:this._pivot}),{},t);this._rotator.dispatchEvent(r),s(this._element,o),window.removeEventListener("mouseup",this._endHandler,!1),window.removeEventListener("touchend",this._endHandler,!1),window.removeEventListener("mousemove",this._moveHandler,!1),window.removeEventListener("touchmove",this._moveHandler,!1)},window.addEventListener("mouseup",this._endHandler,!1),window.addEventListener("touchend",this._endHandler,!1),window.addEventListener("mousemove",this._moveHandler,!1),window.addEventListener("touchmove",this._moveHandler,!1),this._originalPosition=this._previousPosition=r(t,i),this._originalAngle=this._previousAngle=this._previousRenderedAngle=r(t,a,0),this._pivot=r(t,l),this._originalTransform=e.Utils.Css.deserializeTransform(t)}_computeAngle(t,r,n){return e.Angle.angleBetween(t,r,n)}_constraintAngle(t,r){return r>0?e.Numbers.round(t,r):t}}let c=class PacemRotateElement extends e.Behaviors.PacemBehavior{constructor(){super(...arguments),this._startHandler=t=>{if(this.disabled)return;const s=e.CustomEventUtils.getEventCoordinates(t),c=t.currentTarget,m=s.page,d=e.Utils.offsetRect(c),h=d.width/2,u=d.height/2;var p=this.center;if(e.Utils.isNull(p))p={x:d.x+h,y:d.y+u},c.style.transformOrigin="50% 50%";else{const e=d.x+h-p.x,t=d.y+u-p.y;c.style.transformOrigin=`${-e}px ${-t}px`}const v=new e.UI.RotateEvent(e.UI.RotateEventType.Start,e.UI.RotateEventArgsClass.fromArgs({currentPosition:m,rotation:r(c,a,0),center:p,origin:m,element:c,startTime:Date.now()}),{cancelable:!0},t);this.dispatchEvent(v),v.defaultPrevented||(e.avoidHandler(t),n(c,i,m),n(c,l,p),n(c,o,new RotateElementDelegate(c,this,(e,t,r)=>this.log.apply(this,[e,t,r]))))}}decorate(t){const r=t;e.Utils.addClass(r,e.PCSS+"-rotatable");t.addEventListener("mousedown",this._startHandler,!1),t.addEventListener("touchstart",this._startHandler,{capture:!1,passive:!1})}undecorate(t){const r=t;e.Utils.removeClass(r,e.PCSS+"-rotatable");t.removeEventListener("mousedown",this._startHandler,!1),t.removeEventListener("touchstart",this._startHandler,{capture:!1,passive:!1})}};__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Number})],c.prototype,"step",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Number})],c.prototype,"minRotation",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Number})],c.prototype,"maxRotation",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Point})],c.prototype,"center",void 0),c=__decorate([e.CustomElement({tagName:e.P+"-rotate"})],c),t.PacemRotateElement=c}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){const r=e.CustomElementUtils.getAttachedPropertyValue,n=e.CustomElementUtils.setAttachedPropertyValue,s=e.CustomElementUtils.deleteAttachedPropertyValue,i="pacem:swipe:mousedown",o="pacem:swipe:data",a="pacem:swipe:delegate",l=Math.PI/2,c={capture:!1,passive:!1};class SwipeElementDelegate{constructor(t,a,m){this._element=t,this._swiper=a,this._logFn=m,this._moveHandler=t=>{e.avoidHandler(t);const a=this._element,c=this._getCurrentPosition(t),m=this._threshold;var h,u;const p=this._halfElementWidth,v=Date.now();e.Utils.isNull(h=r(a,i))?e.Utils.isNull(u=r(a,o))||this._updateState({position:c,timestamp:v}):(this._logFn(e.Logging.LogLevel.Debug,"Swipe act started"),s(a,i),n(a,o,u=this._refreshValues({position:c,timestamp:v},h)));Math.abs(c.x-u.t0.position.x)<Math.abs(c.y-u.t0.position.y)||e.avoidHandler(t);const g=function(e,t){const r=e-t;return-(m-p)*Math.sin(l*Math.max(-1,Math.min(1,r/m)))/d}(c.x,u.t0.position.x);this._logFn(e.Logging.LogLevel.Debug,`Moving element to x: ${g} (x0: ${u.t0.position.x})`);const f=this._originalTransform;a.style.transform=`matrix(${f.a},${f.b},${f.c},${f.d},${f.e+g},${f.f})`},this._endHandler=e=>{var t=r(this._element,o);this._endState(t)},e.Utils.addClass(t,e.PCSS+"-swipe-lock"),e.Utils.removeClass(t,e.PCSS+"-swipe-back"),this._originalTransform=e.Utils.deserializeTransform(getComputedStyle(t)),this._halfElementWidth=.5*t.clientWidth,this._threshold=a.threshold||Math.min(120,.25*e.Utils.windowSize.width),window.addEventListener("mouseup",this._endHandler,!1),window.addEventListener("touchend",this._endHandler,!1),window.addEventListener("mousemove",this._moveHandler,!1),window.addEventListener("touchmove",this._moveHandler,c)}dispose(){const t=this._element;s(t,i),s(t,o),s(t,a),e.Utils.removeClass(t,e.PCSS+"-swipe-lock"),window.removeEventListener("mouseup",this._endHandler,!1),window.removeEventListener("touchend",this._endHandler,!1),window.removeEventListener("mousemove",this._moveHandler,!1),window.removeEventListener("touchmove",this._moveHandler,c)}_getCurrentPosition(e){return e instanceof MouseEvent?{x:e.clientX,y:e.clientY}:{x:e.touches[0].clientX,y:e.touches[0].clientY}}_refreshValues(e,t){const r=e.position,n=r.x-t.position.x,s=(e.timestamp-t.timestamp)/1e3;return{element:this._element,horizontalspeed:n/s,verticalspeed:(r.y-t.position.y)/s,timestamp:e.timestamp,position:r,t0:t.t0||t}}_updateState(e){var t=this._getUpdatedState(e);n(this._element,o,t)}_getUpdatedState(e){const t=this._element,n=(this._swiper,r(t,o));return this._refreshValues(e,n)}_endState(t){if(!e.Utils.isNull(t)){const r=this._swiper,n=this._element,s=this._threshold,i=Math.abs(t.t0.position.x-t.position.x),o=.5*Math.pow(t.horizontalspeed,2),a=.5*m*(Math.pow(s,2)-Math.pow(i,2));let l=()=>{n.style.transform=n.style.opacity=n.style.transition=""};if(o>=a&&i>=s){const s=e.UI.SwipeEventArgsClass.fromArgs(t);this._logFn(e.Logging.LogLevel.Debug,`Swiping ${s.direction}! (speed: ${s.speed}, kinetic ${o}, elastic ${a})`);const i=new e.UI.SwipeEvent(e.UI.SwipeEventType.Swipe,s,{cancelable:!0});if(r.dispatchEvent(i),i.defaultPrevented)l();else{const i=new e.UI.SwipeEvent("left"===s.direction?e.UI.SwipeEventType.SwipeLeft:e.UI.SwipeEventType.SwipeRight,s,{cancelable:!0});if(r.dispatchEvent(i),i.defaultPrevented)l();else{let i=e.Utils.offset(n),o=e.Utils.windowSize.width,a="left"===s.direction?-(o-.5*(o-i.width)):i.width+.5*(o-i.width),c=(a-i.left)/t.horizontalspeed;n.style.transform=`translateX(${a}px)`,n.style.opacity="0",n.style.transition=`transform ${Math.min(.667,Math.max(.333,2*c))}s cubic-bezier(0.39, 0.575, 0.565, 1), opacity .5s`,e.Utils.addClass(n,e.PCSS+"-swipe-go"),e.Utils.addAnimationEndCallback(n,()=>{let t=new e.UI.SwipeEvent(e.UI.SwipeEventType.SwipeAnimationEnd,s,{cancelable:!0});if(r.dispatchEvent(t),!t.defaultPrevented){let t=new e.UI.SwipeEvent("left"===s.direction?e.UI.SwipeEventType.SwipeLeftAnimationEnd:e.UI.SwipeEventType.SwipeRightAnimationEnd,s,{cancelable:!0});r.dispatchEvent(t),t.defaultPrevented||l()}e.Utils.removeClass(n,e.PCSS+"-swipe-go")})}}}else this._logFn(e.Logging.LogLevel.Debug,`Rolling back: kinetic ${o} < elastic ${a})`),e.Utils.addClass(n,e.PCSS+"-swipe-back"),l()}this.dispose()}}__decorate([e.Throttle(25)],SwipeElementDelegate.prototype,"_updateState",null);const m=.15,d=1.25;let h=class PacemSwipeElement extends e.Behaviors.PacemBehavior{constructor(){super(...arguments),this._startHandler=t=>{if(this.disabled)return;if(t instanceof MouseEvent&&!this.includeMouse)return;const r=e.CustomEventUtils.getEventCoordinates(t),s=t.currentTarget,o=r.client;t.stopPropagation(),n(s,i,{position:o,timestamp:Date.now()}),n(s,a,new SwipeElementDelegate(s,this,(e,t,r)=>this.log.apply(this,[e,t,r])))}}decorate(e){e.addEventListener("touchstart",this._startHandler,c),e.addEventListener("mousedown",this._startHandler,!1)}undecorate(e){e.removeEventListener("touchstart",this._startHandler,c),e.removeEventListener("mousedown",this._startHandler,!1)}};__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Number})],h.prototype,"threshold",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Boolean})],h.prototype,"includeMouse",void 0),h=__decorate([e.CustomElement({tagName:e.P+"-swipe"})],h),t.PacemSwipeElement=h}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){class PacemAdapter extends t.PacemElement{constructor(){super(...arguments),this._propertyChangeHandler=e=>{this.masterPropertyChangedCallback(e.detail.propertyName,e.detail.oldValue,e.detail.currentValue,e.detail.firstChange)}}get master(){return this._element}get initialized(){return!e.Utils.isNull(this._element)}masterPropertyChangedCallback(t,r,n,s){switch(t){case"items":this._adjustFocusIndex();break;case"index":this._element.dispatchEvent(new e.CurrentIndexChangeEvent({currentIndex:n,previousIndex:r}))}}itemPropertyChangedCallback(e,t,r,n,s){}initializeCallback(){}destroyCallback(){}initialize(t){null!=this._element&&this.destroy(),null!=t&&(this._element=t,this._element.addEventListener(e.PropertyChangeEventName,this._propertyChangeHandler,!1)),this.initializeCallback()}destroy(){null!=this._element&&this._element.removeEventListener(e.PropertyChangeEventName,this._propertyChangeHandler,!1),this.destroyCallback()}disconnectedCallback(){this.destroy(),super.disconnectedCallback()}_adjustFocusIndex(){let e=this._element.items;const t=this._element.index,r=e&&e.length,n=r?Math.max(0,Math.min(r-1,t)):-1,s=this._getAvailable(n);this._element.index=s}_getNextAvailable(e){return this._getAvailable(e,1)}_getPreviousAvailable(e){return this._getAvailable(Math.max(0,e),-1)}_getAvailable(e=this._element&&this._element.index,r=0){let n,s=this._element.items;if(!(s&&(n=s.length)>0))return-1;let i,o=((e%=n)+r+n)%n;for(r=r||-1;(i=s[o])instanceof t.PacemEventTarget&&!0===i.disabled||i instanceof t.PacemElement&&!0===i.hide;)if(o=(o+r+n)%n,o==e)return-1;return o}isClose(e){const t=this._getAvailable();return e===t||e===this._getPreviousAvailable(t)||e===this._getNextAvailable(t)}isPrevious(e){const t=this._getAvailable();return e===this._getPreviousAvailable(t)}isNext(e){const t=this._getAvailable();return e===this._getNextAvailable(t)}select(e){this._element.index=this._getAvailable(e)}previous(e=!0){var t=this._getPreviousAvailable(this._element.index);t>=0&&(e||this._element.index>t)&&(this._element.index=t)}next(e=!0){var t=this._getNextAvailable(this._element.index);t>=0&&(e||this._element.index<t)&&(this._element.index=t)}}t.PacemAdapter=PacemAdapter}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){let r=class PacemAnnihilatorElement extends HTMLElement{constructor(){super()}connectedCallback(){this.remove()}};r=__decorate([e.CustomElement({tagName:e.P+"-annihilator"})],r),t.PacemAnnihilatorElement=r}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){e.RouterNavigatingEventName="navigating",e.RouterNavigateEventName="navigate";class RouterNavigateEvent extends e.CustomTypedEvent{constructor(t){super(e.RouterNavigateEventName,"string"==typeof t?{path:t}:t,{cancelable:!1,bubbles:!1})}}e.RouterNavigateEvent=RouterNavigateEvent;class RouterNavigatingEvent extends e.CustomTypedEvent{constructor(t){super(e.RouterNavigatingEventName,t,{cancelable:!0,bubbles:!1})}}e.RouterNavigatingEvent=RouterNavigatingEvent}(Pacem||(Pacem={})),function(e){!function(t){const r=/^([\w\.]:)?\/\/[^\/]+/;let n=class PacemRouterElement extends t.PacemEventTarget{constructor(){super(...arguments),this._onPopState=t=>{e.Utils.isNull(t.state)||this.#d||(this.path=t.state.$path)}}#d;#h;parseState(e={}){const t=this._stringifyMergedState(e),r=this._segmentateUrl(t);return this._parseState(r.path+r.query+r.hash,r.path,r.query,r.hash)}navigate(t,n){if(this.disabled||e.Utils.isNullOrEmpty(t))return;if((t="object"==typeof t?this._stringifyMergedState(t):e.Utils.URIs.format(t,this.state))!=this.path)return void(this.path=t);const s=document.location;if(r.test(t)&&!t.startsWith(s.protocol+"//"+s.host))throw`Only same-origin navigation is currently supported. "${t}" is not a valid path.`;if(!this.#d){const r=this.state&&this.state.$path||void 0,i=this._segmentateUrl(t),o=this._parseState(i.path+i.query+i.hash,i.path,i.query,i.hash),a=s.pathname+s.search+s.hash===i.path+i.query+i.hash,l=new e.RouterNavigatingEvent(t);if(window.dispatchEvent(l),this.#d=l.defaultPrevented)return a&&window.history.pushState(this.state,n,r),void(this.path=r);this.state=o,a?(window.history.scrollRestoration="manual",window.history.replaceState(o,n)):window.history.pushState(o,n,t),e.Utils.isNullOrEmpty(n)||(document.title=n),window.dispatchEvent(new e.RouterNavigateEvent({path:t,referrer:r,title:n}))}this.#d=!1}propertyChangedCallback(e,t,r,n){if(super.propertyChangedCallback(e,t,r,n),!n)switch(e){case"template":this.#h=null;break;case"path":this.navigate(r)}}connectedCallback(){super.connectedCallback(),window.addEventListener("popstate",this._onPopState,!1)}viewActivatedCallback(){super.viewActivatedCallback();const t=this.path;e.Utils.isNullOrEmpty(t)||this.navigate(t)}disconnectedCallback(){window.removeEventListener("popstate",this._onPopState,!1),super.disconnectedCallback()}_stringifyMergedState(t){const r=e.Utils.extend({},t),n=e.Utils.extend({},this.state,r),s=this.template;let i=""+s;for(let t of this._parseTemplate(s)){const s=t.name,o=new RegExp("/{"+s+"\\??}"),a=n[s];delete r[s],i=i.replace(o,e.Utils.isNullOrEmpty(a)?"":"/"+a)}const o=e.Utils.extend({},this.state.$query);for(let e in r)o[e]=r[e];const{hash:a}=this._segmentateUrl(this.path);return e.Utils.URIs.appendQuery(i,o,!0)+a}_parseTemplate(t=this.template){return e.Utils.isNullOrEmpty(this.#h)?this.#h=e.Utils.URIs.parseRoute(t):this.#h}_segmentateUrl(t){const r=e.Utils.URIs.split(t);return e.Utils.isNullOrEmpty(r.path)?null:r}_parseState(t,r,n,s){const i=this._parseTemplate();return e.Utils.URIs.parseState(i,t,r,n,s)}};__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],n.prototype,"template",void 0),__decorate([e.Watch({converter:e.PropertyConverters.Eval})],n.prototype,"state",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],n.prototype,"path",void 0),n=__decorate([e.CustomElement({tagName:e.P+"-router"})],n),t.PacemRouterElement=n}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){let r=class PacemBeforeunloadElement extends t.PacemEventTarget{constructor(){super(...arguments),this._unloadingHandler=e=>{const t=this.message;this.active&&!this.disabled&&("beforeunload"===e.type?(e.preventDefault(),e.returnValue=t||""):confirm(t||"Leave page?")||e.preventDefault())}}viewActivatedCallback(){super.viewActivatedCallback(),window.addEventListener("navigating",this._unloadingHandler,!1),window.addEventListener("beforeunload",this._unloadingHandler,!1)}disconnectedCallback(){window.removeEventListener("navigating",this._unloadingHandler,!1),window.removeEventListener("beforeunload",this._unloadingHandler,!1),super.disconnectedCallback()}};__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],r.prototype,"message",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Boolean})],r.prototype,"active",void 0),r=__decorate([e.CustomElement({tagName:e.P+"-beforeunload"})],r),t.PacemBeforeunloadElement=r}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){let r=class PacemBrowserDetectElement extends t.PacemEventTarget{viewActivatedCallback(){super.viewActivatedCallback(),this._detect()}propertyChangedCallback(e,t,r,n){super.propertyChangedCallback(e,t,r,n),"userAgent"===e&&this._detect(r)}#u;#p;get browser(){return this.#u}get version(){return this.#p}_detect(t=this.userAgent){const{version:r,name:n}=e.Utils.Browsers.detect(t),{browser:s,version:i}=this;n!=s&&(this.#u=n,this.dispatchEvent(new e.PropertyChangeEvent({propertyName:"browser",currentValue:n,oldValue:s}))),r!=i&&(this.#p=r,this.dispatchEvent(new e.PropertyChangeEvent({propertyName:"version",currentValue:r,oldValue:i})))}};__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],r.prototype,"userAgent",void 0),r=__decorate([e.CustomElement({tagName:e.P+"-browser-detect"})],r),t.PacemBrowserDetectElement=r}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){let r=class PacemDataElement extends t.PacemEventTarget{constructor(t=new e.Storage){super(),this.storage=t,this._handle=0,this._flag=!1}propertyChangedCallback(t,r,n,s){switch(super.propertyChangedCallback(t,r,n,s),t){case"persistAs":e.Utils.isNullOrEmpty(r)||this.storage.removeProperty(r),!0!==s||e.Utils.isNullOrEmpty(n)||(this.model=this.storage.getPropertyValue(n)||this.model);break;case"model":const i=this.debounce,o=this.throttle,a=()=>{this.dispatchEvent(new e.PropertyChangeEvent({propertyName:t,oldValue:r,currentValue:n,firstChange:s}))};if(i>0&&!s)if(o){if(this._flag)return;this._flag=!0,a(),this._handle=window.setTimeout(()=>{this._flag=!1},i)}else clearTimeout(this._handle),this._handle=window.setTimeout(a,i);else a();s||e.Utils.isNullOrEmpty(this.persistAs)||(e.Utils.isNull(n)?this.storage.removeProperty(this.persistAs):this.storage.setPropertyValue(this.persistAs,n,!0))}}};__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Eval})],r.prototype,"model",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],r.prototype,"persistAs",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Number})],r.prototype,"debounce",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.BooleanStrict})],r.prototype,"throttle",void 0),r=__decorate([e.CustomElement({tagName:e.P+"-data"})],r),t.PacemDataElement=r}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){let r=class PacemTweenElement extends t.PacemEventTarget{constructor(t=new e.Animations.TweenService){super(),this._tweener=t,this.duration=1e3}propertyChangedCallback(e,t,r,n){super.propertyChangedCallback(e,t,r,n),"start"===e&&!0===r&&1!=this.disabled&&this._animate()}run(){return this._animate()}_animate(){var t=!1;return this._tweener.run(this.from,this.to,this.duration,this.delay,this.easing,(r,n)=>{t=0==t&&this.dispatchEvent(new e.Animations.AnimationStartEvent),this.dispatchEvent(new e.Animations.AnimationEvent({time:r,value:this.value=n})),this.log(e.Logging.LogLevel.Info,"value: "+this.value),1==r&&(this.dispatchEvent(new e.Animations.AnimationEndEvent),this.start=!1)})}};__decorate([e.Watch({emit:!1})],r.prototype,"easing",void 0),__decorate([e.Watch({emit:!1,reflectBack:!0,converter:e.PropertyConverters.Number})],r.prototype,"from",void 0),__decorate([e.Watch({emit:!1,reflectBack:!0,converter:e.PropertyConverters.Number})],r.prototype,"to",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Number})],r.prototype,"duration",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Number})],r.prototype,"delay",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Boolean})],r.prototype,"start",void 0),__decorate([e.Watch({converter:e.PropertyConverters.Number})],r.prototype,"value",void 0),r=__decorate([e.CustomElement({tagName:e.P+"-tween"})],r),t.PacemTweenElement=r}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){let r;!function(e){e.Top="top",e.Bottom="bottom"}(r=t.DockMode||(t.DockMode={}));let n=class PacemDockElement extends t.PacemEventTarget{constructor(t=new e.Animations.TweenService){super(),this._tweener=t,this.mode=r.Top,this.transitionDuration=300}propertyChangedCallback(t,r,n,s){super.propertyChangedCallback(t,r,n,s),"dock"!==t||e.Utils.isNull(r)&&0==n?"mode"===t&&!0===this.dock&&this._doDock():this._doDock()}_animate(t,r){var n=this.transitionDuration;return n>0||(n=300),this._tweener.run(t,r,n,this.delay,e.Animations.Easings.sineInOut,(e,t)=>{this._setOffset(t)}).then(()=>{this._resetOffset()})}_setOffset(e){this.style.transform="translateY("+e+"px)"}_resetOffset(){this.style.transform=""}_compute(){const t=e.Utils.offset(this),n=getComputedStyle(this),s=e.Utils.scrollTop;switch(this.mode){case r.Bottom:const i=parseInt(n.marginBottom),o=t.top;return{delta:e.Utils.windowSize.height-(o-s+this.offsetHeight)+i};case r.Top:const a=parseInt(n.marginTop);return{delta:-(t.top-s+a)}}}_doDock(){if(this.dock){const t=this._compute();if(e.Utils.isNull(t))return;switch(e.Utils.addClass(this,e.PCSS+"-dock"),this.mode){case r.Bottom:e.Utils.removeClass(this,e.PCSS+"-dock-top"),e.Utils.addClass(this,e.PCSS+"-dock-bottom");break;case r.Top:e.Utils.removeClass(this,e.PCSS+"-dock-bottom"),e.Utils.addClass(this,e.PCSS+"-dock-top")}const n=-t.delta,s=0,i=e.CustomElementUtils.getAttachedPropertyValue(this,"pacem-dock:state")||0;e.CustomElementUtils.setAttachedPropertyValue(this,"pacem-dock:state",-n+i),this.log(e.Logging.LogLevel.Info,`animating from ${n}px to ${s}px`),this._animate(n,s)}else{const t=e.CustomElementUtils.getAttachedPropertyValue(this,"pacem-dock:state");e.CustomElementUtils.deleteAttachedPropertyValue(this,"pacem-dock:state");const r=0;this.log(e.Logging.LogLevel.Info,`animating back from ${t}px to ${r}px`),e.Utils.removeClass(this,`${e.PCSS}-dock ${e.PCSS}-dock-top ${e.PCSS}-dock-bottom`),this._animate(t,r)}}};__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],n.prototype,"mode",void 0),__decorate([e.Watch({converter:e.PropertyConverters.Boolean})],n.prototype,"dock",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Element})],n.prototype,"target",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Number})],n.prototype,"delay",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Number})],n.prototype,"transitionDuration",void 0),n=__decorate([e.CustomElement({tagName:e.P+"-dock"})],n),t.PacemDockElement=n}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){class PacemTransferProxyElement extends t.PacemEventTarget{constructor(){super(...arguments),this._dom=[],this._children=[]}get dom(){return this._children}viewActivatedCallback(){super.viewActivatedCallback(),this.moveContent(this.proxy)}moveContent(t){e.Utils.isNull(t)||(e.Utils.isNullOrEmpty(this._dom)?(this._dom=e.Utils.moveItems(this.childNodes,t),this._children=this._dom.filter(e=>e instanceof Element)):e.Utils.moveItems(this._children,t))}disconnectedCallback(){for(let e of(this._dom||[]).splice(0))e.remove();super.disconnectedCallback()}}t.PacemTransferProxyElement=PacemTransferProxyElement;let r=class PacemBodyProxyElement extends PacemTransferProxyElement{get proxy(){return document.body}};r=__decorate([e.CustomElement({tagName:e.P+"-body-proxy"})],r),t.PacemBodyProxyElement=r;let n=class PacemShellProxyElement extends PacemTransferProxyElement{get proxy(){return e.CustomElementUtils.findAncestorShell(this)}};n=__decorate([e.CustomElement({tagName:e.P+"-shell-proxy"})],n),t.PacemShellProxyElement=n;let s=class PacemElementProxyElement extends PacemTransferProxyElement{get proxy(){return this.target}propertyChangedCallback(e,t,r,n){super.propertyChangedCallback(e,t,r,n),"target"!==e||n||this.moveContent(this.proxy)}};__decorate([e.Watch({converter:e.PropertyConverters.Element})],s.prototype,"target",void 0),s=__decorate([e.CustomElement({tagName:e.P+"-element-proxy"})],s),t.PacemElementProxyElement=s}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){class EmitEvent extends Event{constructor(e){super("emit"),this._originalEvent=e}get originalEvent(){return this._originalEvent}}const r={convert:function(t,r){return"$window"===t?window:e.PropertyConverters.Element.convert(t,r)},convertBack:(t,r)=>t===window?"$window":e.PropertyConverters.Element.convertBack(t,r)};let n=class PacemEventProxyElement extends t.PacemEventTarget{constructor(){super(...arguments),this._emitHandler=e=>{var t=new EmitEvent(e);this.dispatchEvent(t)}}viewActivatedCallback(){super.viewActivatedCallback(),this._observe()}propertyChangedCallback(e,t,r,n){if(super.propertyChangedCallback(e,t,r,n),!n)switch(e){case"target":this._unobserve(t,this.event,this.capture),this._observe();break;case"event":this._unobserve(this.target,t,this.capture),this._observe();break;case"capture":this._unobserve(this.target,this.event,t),this._observe()}}disconnectedCallback(){this._unobserve(),super.disconnectedCallback()}_unobserve(t=this.target,r=this.event,n=this.capture){e.Utils.isNull(t)||e.Utils.isNullOrEmpty(r)||t.removeEventListener(r,this._emitHandler,{capture:n})}_observe(t=this.target,r=this.event,n=this.capture){e.Utils.isNull(t)||e.Utils.isNullOrEmpty(r)||t.addEventListener(r,this._emitHandler,{capture:n})}};__decorate([e.Watch({emit:!1,converter:r})],n.prototype,"target",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],n.prototype,"event",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Boolean})],n.prototype,"capture",void 0),n=__decorate([e.CustomElement({tagName:e.P+"-event-proxy"})],n),t.PacemEventProxyElement=n}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){const r="New incoming request overrides the ongoing one. Aborting.";let n=class PacemFetchElement extends t.PacemEventTarget{constructor(){super(...arguments),this.autofetch=!0,this.debounce=100}viewActivatedCallback(){super.viewActivatedCallback(),this._delayAndConditionallyFetch()}propertyChangedCallback(t,r,n,s){switch(super.propertyChangedCallback(t,r,n,s),t){case"url":case"method":case"type":case"as":case"mode":case"credentials":case"disabled":case"autofetch":this._delayAndConditionallyFetch();break;case"parameters":case"headers":this.diffByValues&&e.Utils.jsonSortStringify(r)==e.Utils.jsonSortStringify(n)||this._delayAndConditionallyFetch()}}_delayAndConditionallyFetch(){clearTimeout(this._handle),this.disabled?this._abortPending():this.autofetch&&(this._handle=setTimeout(()=>{this.fetch()},this.debounce||0))}_abortPending(){this.#v&&(this.#v.abort(r),this.#v=null)}#v;#g;fetch(){return this.throttle&&this.fetching?this.#g:this.#g=new Promise((t,n)=>{var s=this.url;if(!this.isReady||e.Utils.isNullOrEmpty(s)||this.disabled)return void t(null);let i=this;i.fetching=!0;let o="application/json";if("raw"===(i.type||"json"))o="application/x-www-form-urlencoded";const a=(i.method||e.Net.HttpMethod.Get).toUpperCase();let l={headers:e.Utils.extend({"Content-Type":o},i.headers),method:a,mode:i.mode||"cors",credentials:i.credentials||"same-origin",cache:i.cache||"default"};const c=e.Utils.clone(i.parameters??{});if(s=e.Utils.URIs.format(s,c,"GET"==a),!e.Utils.isNullOrEmpty(c))switch(a){case"GET":s=e.Utils.URIs.appendQuery(s,c);break;case"PUT":case"POST":case"PATCH":if("raw"===i.type){let e=new URLSearchParams;for(let t in c)e.set(t,c[t]);l.body=e}else l.body=e.Utils.Json.stringify(c)}if(e.Utils.URIs.hasMandatoryTemplateSegments(s))return void t(null);this._abortPending();const{signal:m}=this.#v=new AbortController;l.signal=m,fetch(s,l).then(r=>{if(this.#v=null,i.fetching=!1,r.ok){this.dispatchEvent(new CustomEvent(e.Net.FetchSuccessEventName,{detail:r}));if(e.Net.Fetcher.isEmpty(r))i.as,i.result=null,t(r);else switch(i.as){case"blob":case"image":r.blob().then(n=>{"image"===i.as?e.Utils.blobToDataURL(n).then(e=>{i._acceptFetchResult(e)}):i._acceptFetchResult(n),t(r)},r=>{this.log(e.Logging.LogLevel.Warn,`Couldn't parse a ${i.as}. ${r}`),t(null)});break;case"text":r.text().then(e=>{i._acceptFetchResult(e),t(r)});break;default:r.json().then(e=>{i._acceptFetchResult(e),t(r)},r=>{this.log(e.Logging.LogLevel.Warn,`Couldn't parse a ${i.as}. ${r}`),t(null)})}}else this.dispatchEvent(new CustomEvent(e.Net.FetchErrorEventName,{detail:r})),n(r)},s=>{"string"==typeof s&&s===r?(this.log(e.Logging.LogLevel.Info,s),t(null)):n(s)})})}_acceptFetchResult(t){this.dispatchEvent(new CustomEvent(e.Net.FetchResultEventName,{detail:t})),this.result=t}};__decorate([e.Watch({emit:!1,reflectBack:!0,converter:e.PropertyConverters.String})],n.prototype,"url",void 0),__decorate([e.Watch({emit:!1,reflectBack:!0,converter:e.PropertyConverters.String})],n.prototype,"method",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Json})],n.prototype,"parameters",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Json})],n.prototype,"headers",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],n.prototype,"credentials",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],n.prototype,"mode",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],n.prototype,"cache",void 0),__decorate([e.Watch({converter:e.PropertyConverters.BooleanStrict})],n.prototype,"fetching",void 0),__decorate([e.Watch({reflectBack:!0,converter:e.PropertyConverters.Boolean})],n.prototype,"autofetch",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],n.prototype,"as",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],n.prototype,"type",void 0),__decorate([e.Watch({reflectBack:!0,converter:e.PropertyConverters.Number})],n.prototype,"debounce",void 0),__decorate([e.Watch({emit:!1,reflectBack:!0,converter:e.PropertyConverters.Number})],n.prototype,"throttle",void 0),__decorate([e.Watch({emit:!1,reflectBack:!0,converter:e.PropertyConverters.Boolean})],n.prototype,"diffByValues",void 0),__decorate([e.Watch()],n.prototype,"result",void 0),n=__decorate([e.CustomElement({tagName:e.P+"-fetch"})],n),t.PacemFetchElement=n}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){class StateEvent extends CustomEvent{constructor(e,t){super(e,{detail:t})}}t.StateEvent=StateEvent;let r=class PacemHistoryElement extends t.PacemEventTarget{#f;propertyChangedCallback(t,r,n,s){switch(super.propertyChangedCallback(t,r,n,s),t){case"state":this._handleStateChange(n);break;case"maxlength":const t=this.#f;e.Utils.isNull(t)||(t.maxlength=n)}}viewActivatedCallback(){super.viewActivatedCallback(),this._handleStateChange()}_handleStateChange(t=this.state){const r=this.#f;e.Utils.isNull(r)?this.#f=new e.HistoryService(t,this.maxlength):!0!==e.DefaultComparer(r.current,t)&&(r.push(t),this.log(e.Logging.LogLevel.Log,"Pushed state."),this._synchronize("push"))}redo(){const t=this.#f;e.Utils.isNull(t)||(t.redo(),this.log(e.Logging.LogLevel.Log,"Redone state."),this._synchronize("redo"))}reset(){const t=this.#f;e.Utils.isNull(t)||(t.reset(),this.log(e.Logging.LogLevel.Log,"Reset state."),this._synchronize("reset"))}undo(){const t=this.#f;e.Utils.isNull(t)||(t.undo(),this.log(e.Logging.LogLevel.Log,"Undone state."),this._synchronize("undo"))}_synchronize(e){const t=this.#f;this.canUndo=t.canUndo,this.canRedo=t.canRedo,this.state=t.current;const{canRedo:r,canUndo:n,current:s}=t;this.dispatchEvent(new StateEvent(e,{canRedo:r,canUndo:n,state:s}))}};__decorate([e.Watch({emit:!0,converter:e.PropertyConverters.Json})],r.prototype,"state",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Number})],r.prototype,"maxlength",void 0),__decorate([e.Watch({emit:!0,converter:e.PropertyConverters.Boolean})],r.prototype,"canUndo",void 0),__decorate([e.Watch({emit:!0,converter:e.PropertyConverters.Boolean})],r.prototype,"canRedo",void 0),r=__decorate([e.CustomElement({tagName:e.P+"-history"})],r),t.PacemHistoryElement=r}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){let r=class PacemHtmlProxyElement extends t.PacemEventTarget{constructor(){super(...arguments),this._html=document.documentElement}propertyChangedCallback(e,t,r,n){super.propertyChangedCallback(e,t,r,n),"attr"===e&&t&&this._html.removeAttribute(t),this._update()}_update(){const t=this.attr;if(e.Utils.isNullOrEmpty(t)||this.disabled)return;const r=this.value,n=this._html;e.Utils.isNullOrEmpty(r)?n.removeAttribute(t):n.setAttribute(t,r)}};__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],r.prototype,"attr",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],r.prototype,"value",void 0),r=__decorate([e.CustomElement({tagName:e.P+"-html-proxy"})],r),t.PacemHtmlProxyElement=r}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){let r=class PacemIfElement extends HTMLElement{#_;propertyChangedCallback(t,r,n,s){e.Utils.isNullOrEmpty(this.#_)&&(this.#_=this.innerHTML),this.innerHTML=n?this.#_:""}};__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Boolean})],r.prototype,"match",void 0),r=__decorate([e.CustomElement({tagName:e.P+"-if"})],r),t.PacemIfElement=r}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){let r=class PacemTextElement extends HTMLElement{constructor(){super()}connectedCallback(){0==this.childNodes.length&&(this.innerHTML="&nbsp;"),this._text=this.childNodes.item(0)}propertyChangedCallback(t,r,n,s){e.Utils.isNull(n)&&!0===s||(this._text.nodeValue=n)}};__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],r.prototype,"text",void 0),r=__decorate([e.CustomElement({tagName:e.P+"-text"})],r),t.PacemTextElement=r}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){t.ScrollEventName="scroll";class ScrollEvent extends e.CustomTypedEvent{constructor(e){super(t.ScrollEventName,e)}}t.ScrollEvent=ScrollEvent;const r=new class PacemScrollOrchestrator{constructor(e){this.global=e,this.scrollers=[],this.scrollHandler=e=>{this._scroll(e)}}register(e){const t=this.scrollers;-1===t.indexOf(e)&&(t.push(e),1===t.length&&this.global.addEventListener("scroll",this.scrollHandler,!1),this._scroll())}unregister(e){var t;const r=this.scrollers;-1!==(t=r.indexOf(e))&&(r.splice(t,1),0===r.length&&this.global.removeEventListener("scroll",this.scrollHandler,!1))}_scroll(t){for(var r of this.scrollers){if(e.Utils.isNull(r.target)){const t=e.Utils.scrollTop,n=e.Utils.scrollLeft;r.offset={top:t,left:n}}else{const e=r.target.scrollTop,t=r.target.scrollLeft;r.offset={top:e,left:t}}r.dispatchEvent(new ScrollEvent(r.offset))}}}(window);let n=class PacemScrollAwareElement extends t.PacemEventTarget{viewActivatedCallback(){super.viewActivatedCallback(),r.register(this)}disconnectedCallback(){r.unregister(this),super.disconnectedCallback()}};__decorate([e.Watch({converter:e.PropertyConverters.Element})],n.prototype,"target",void 0),__decorate([e.Watch({converter:e.PropertyConverters.Json})],n.prototype,"offset",void 0),n=__decorate([e.CustomElement({tagName:e.P+"-scroll-aware"})],n),t.PacemScrollAwareElement=n}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){class PacemViewportOrchestrator{constructor(e){this._global=e,this.viewports=[],this._checkHandler=e=>{this._oncheck(e)}}register(e){const t=this.viewports,r=this._global;-1===t.indexOf(e)&&(t.push(e),1===t.length&&(r.addEventListener("resize",this._checkHandler,!1),r.addEventListener("scroll",this._checkHandler,!1),r.addEventListener("transitionend",this._checkHandler,!1),r.addEventListener("animationend",this._checkHandler,!1)),this._oncheck())}unregister(e){var t;const r=this.viewports,n=this._global;-1!==(t=r.indexOf(e))&&(r.splice(t,1),0===r.length&&(n.removeEventListener("resize",this._checkHandler,!1),n.removeEventListener("scroll",this._checkHandler,!1),n.removeEventListener("transitionend",this._checkHandler,!1),n.removeEventListener("animationend",this._checkHandler,!1)),this._oncheck())}isElementVisible(t,r){const n=e.Utils.windowSize;this._global.document;var s=t.getBoundingClientRect(),i=n.width,o=n.height;return s.bottom>0&&s.top<0+o&&(r||s.left<i+0&&s.right>0)}_oncheck(t){for(var r of this.viewports){const t=r.target||r,n=this.isElementVisible(t,r.ignoreHorizontal);if(n!==r.visible)(r.visible=n)?e.Utils.addClass(t,e.PCSS+"-in-viewport"):e.Utils.removeClass(t,e.PCSS+"-in-viewport")}}}__decorate([e.Debounce(100)],PacemViewportOrchestrator.prototype,"_oncheck",null);const r=new PacemViewportOrchestrator(window);let n=class PacemViewportAwareElement extends t.PacemEventTarget{viewActivatedCallback(){super.viewActivatedCallback(),r.register(this)}disconnectedCallback(){r.unregister(this),super.disconnectedCallback()}};__decorate([e.Watch({converter:e.PropertyConverters.Boolean})],n.prototype,"visible",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Element})],n.prototype,"target",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Boolean})],n.prototype,"ignoreHorizontal",void 0),n=__decorate([e.CustomElement({tagName:e.P+"-viewport-aware"})],n),t.PacemViewportAwareElement=n}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){t.ResizeEventName="resize";class ResizeEvent extends e.CustomTypedEvent{constructor(e){super(t.ResizeEventName,e)}}t.ResizeEvent=ResizeEvent;const r={subtree:!0,childList:!0,attributes:!0,characterData:!0},n=!("ResizeObserver"in window)||!1,s={box:"border-box"};let i=class PacemResizeElement extends t.PacemEventTarget{constructor(){super(...arguments),this._checkSizeHandler=e=>{this._assignSizeDebounced()}}get _target(){return this.target||this}propertyChangedCallback(t,n,i,o){switch(super.propertyChangedCallback(t,n,i,o),t){case"disabled":this._start();break;case"target":if(!e.Utils.isNull(this._observer)){var a=n||this;this._observer.unobserve(a)}case"watchPosition":var l=this.target||this;this._usePolyfill?e.Utils.isNull(this._mutationObserver)||this._mutationObserver.observe(l,r):e.Utils.isNull(this._observer)||this._observer.observe(l,s)}}get _usePolyfill(){return n||this.watchPosition}_start(){this.disabled?this._stop():(this.watchPosition?this._startWatchIntensively():this._usePolyfill?(this._mutationObserver=new MutationObserver(e=>{this._checkSizeHandler()}),this._mutationObserver.observe(this._target,r)):(this._observer=new ResizeObserver(e=>{var t=!1;for(let r of e)if(r.target===this._target&&r.contentRect){t=!0;break}t&&this._assignSizeDebounced()}),this._observer.observe(this._target,s)),window.addEventListener("resize",this._checkSizeHandler,!1))}_stop(){window.cancelAnimationFrame(this._handle),window.removeEventListener("resize",this._checkSizeHandler,!1),this._usePolyfill?e.Utils.isNull(this._mutationObserver)||(this._mutationObserver.disconnect(),this._mutationObserver=null):e.Utils.isNull(this._observer)||(this._observer.disconnect(),this._observer=null)}_startWatchIntensively(){this._checkSize(),this._handle=window.requestAnimationFrame(()=>{this._startWatchIntensively()})}_assignSizeDebounced(){this._checkSize()}_checkSize(){this.log(e.Logging.LogLevel.Log,"Resize flow triggered.");let t=this._target;const r=e.Utils.offset(t);let n=r.height,s=r.width;(n!=this._previousHeight||s!=this._previousWidth||this.watchPosition&&(r.left!=this._previousLeft||r.top!=this._previousTop))&&(this._previousHeight=n,this._previousWidth=s,this._previousLeft=r.left,this._previousTop=r.top,this._dispatchResize())}get currentSize(){var e={height:this._previousHeight,width:this._previousWidth};return this.watchPosition&&(e.left=this._previousLeft,e.top=this._previousTop),e}_dispatchResize(){this.dispatchEvent(new ResizeEvent(this.currentSize))}connectedCallback(){super.connectedCallback(),this._start()}disconnectedCallback(){this._stop(),super.disconnectedCallback()}};__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Element})],i.prototype,"target",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Boolean})],i.prototype,"watchPosition",void 0),i=__decorate([e.CustomElement({tagName:e.P+"-resize"})],i),t.PacemResizeElement=i}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){t.PositionChangeEventName="positionchange";class PositionChangeEvent extends e.CustomTypedEvent{constructor(e){super(t.PositionChangeEventName,e)}}t.PositionChangeEvent=PositionChangeEvent;let r=class PacemPositionElement extends t.PacemEventTarget{constructor(){super(),this._check=t=>{let r=this._target;var n=e.Utils.offset(r);let s=n.top,i=n.left;s==this.previousTop&&i==this.previousLeft||(this.previousTop=s,this.previousLeft=i,this._change()),this._timer=requestAnimationFrame(this._check)}}get _target(){return this.target||this}propertyChangedCallback(e,t,r,n){if(super.propertyChangedCallback(e,t,r,n),"disabled"===e)this.start()}start(){let t=this._target;if(this.disabled)cancelAnimationFrame(this._timer);else{var r=e.Utils.offset(t);this.previousTop=r.top,this.previousLeft=r.left,this._timer=requestAnimationFrame(this._check)}}_change(){this.dispatchEvent(new PositionChangeEvent({top:this.previousTop,left:this.previousLeft}))}connectedCallback(){super.connectedCallback(),this.start()}disconnectedCallback(){cancelAnimationFrame(this._timer),super.disconnectedCallback()}};__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Element})],r.prototype,"target",void 0),r=__decorate([e.CustomElement({tagName:e.P+"-position"})],r),t.PacemPositionElement=r}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){class AdjustEvent extends e.CustomTypedEvent{constructor(e){super("adjust",e)}}t.AdjustEvent=AdjustEvent;let r=class PacemOverlayElement extends t.PacemEventTarget{constructor(){super(),this._check=t=>{let r=this.target;const n=e.Utils.offset(r),s=n.width,i=n.height;i==this._previousHeight&&s==this._previousWidth&&n.left==this._previousLeft&&n.top==this._previousTop||(this._previousHeight=i,this._previousWidth=s,this._previousLeft=n.left,this._previousTop=n.top,this._adjust()),this._timer=requestAnimationFrame(this._check)}}propertyChangedCallback(e,t,r,n){switch(super.propertyChangedCallback(e,t,r,n),e){case"target":case"disabled":this.start()}}start(){let t=this.target;if(cancelAnimationFrame(this._timer),!this.disabled&&!e.Utils.isNull(t)){this._previousHeight=t.offsetHeight,this._previousWidth=t.offsetWidth;const r=e.Utils.offset(t);this._previousLeft=r.left,this._previousTop=r.top,this._timer=requestAnimationFrame(this._check)}}_adjust(){this.dispatchEvent(new AdjustEvent({top:this._previousTop,left:this._previousLeft,width:this._previousWidth,height:this._previousHeight}))}connectedCallback(){super.connectedCallback(),this.start()}disconnectedCallback(){cancelAnimationFrame(this._timer),super.disconnectedCallback()}};__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Element})],r.prototype,"target",void 0),__decorate([e.Debounce()],r.prototype,"_adjust",null),r=__decorate([e.CustomElement({tagName:e.P+"-overlay"})],r),t.PacemOverlayElement=r}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){let r=class PacemPanelElement extends t.PacemSafeContentElement{};r=__decorate([e.CustomElement({tagName:e.P+"-panel"})],r),t.PacemPanelElement=r}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){let r=class PacemSpanElement extends t.PacemSafeContentElement{propertyChangedCallback(e,t,r,n){super.propertyChangedCallback(e,t,r,n),"text"!==e||n||(this.textContent=r)}viewActivatedCallback(){super.viewActivatedCallback(),e.Utils.isNull(this.text)||(this.textContent=this.text)}};__decorate([e.Watch({converter:e.PropertyConverters.String})],r.prototype,"text",void 0),r=__decorate([e.CustomElement({tagName:e.P+"-span"})],r),t.PacemSpanElement=r}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){let r=class PacemTemplateProxyElement extends e.TemplateElement{propertyChangedCallback(e,t,r,n){"target"===e&&this.dispatchEvent(new Event("templatechange"))}addEventListener(e,t,r){super.addEventListener(e,t,r)}removeEventListener(e,t,r){super.removeEventListener(e,t,r)}};__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Element})],r.prototype,"target",void 0),r=__decorate([e.CustomElement({tagName:e.P+"-template-proxy"})],r),t.PacemTemplateProxyElement=r}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){var r;const n=e.CustomElementUtils.getAttachedPropertyValue;e.CustomElementUtils.setAttachedPropertyValue;class ItemEvent extends e.CustomTypedEvent{constructor(e,t,r){super(e,t,{bubbles:!1,cancelable:!0}),this._originalEvent=r}get srcEvent(){return this._originalEvent}}class ItemCommandEvent extends ItemEvent{constructor(t){super("item"+e.CommandEventName,t.detail,t)}}t.ItemCommandEvent=ItemCommandEvent;class CustomItemCommandEvent extends ItemEvent{constructor(e){super("item"+e.detail.commandName.toLowerCase(),e.detail.commandArgument,e)}}t.CustomItemCommandEvent=CustomItemCommandEvent;let s=r=class PacemRepeaterElement extends t.PacemEventTarget{constructor(){super(...arguments),this._childItems=[],this._fragment=document.createDocumentFragment(),this._setupItem=(e,t,r)=>{e.index=t,e.item=r},this._refreshItemTemplateHandler=e=>{const t=e.target;this._itemTemplate=t.target,this._databind()}}removeItem(e){this._removeItems(e,e)}_setItem(e,r,n){const s=this._childItems;let i;r>=s.length?(i=new RepeaterItem(this,this._itemTemplate,n,this._childTemplatePlaceholder),this._setupItem(i,r,e),s.push(i),i.append()):(i=s[r],this._setupItem(i,r,e),i.redrawEventually(this._itemTemplate,n)),this.dispatchEvent(new t.RepeaterItemCreateEvent(i))}_removeItems(e,r){let n=this._childItems.splice(e,r+1-e);for(var s=n.length-1;s>=0;s--){let e=n[s];this.dispatchEvent(new t.RepeaterItemRemoveEvent(e)),e.remove()}}databind(){this._databind()}_databind(t=this.datasource){if(!this.isConnected)return;let n=this._itemTemplate,s=this._childTemplatePlaceholder;if(null==n)throw`Missing template element in ${r.name}.`;let i=this._childItems,o=0;try{for(var a of t||[])this._setItem(a,o,this._fragment),o++}catch(t){this.log(e.Logging.LogLevel.Error,t)}o<i.length?this._removeItems(o,i.length-1):e.Utils.isNull(s&&s.parentNode)||s.parentNode.insertBefore(this._fragment,s)}_onCommand(e){this.dispatchEvent(new ItemCommandEvent(e)),this.dispatchEvent(new CustomItemCommandEvent(e))}_buildupItemTemplate(){let r=e.CustomElementUtils.findFirstDescendant(this,e=>e instanceof HTMLTemplateElement||e instanceof t.PacemTemplateProxyElement);return r instanceof t.PacemTemplateProxyElement?(r.addEventListener("templatechange",this._refreshItemTemplateHandler,!1),this._childTemplatePlaceholder=r,this._itemTemplate=r.target):this._itemTemplate=this._childTemplatePlaceholder=r}viewActivatedCallback(){super.viewActivatedCallback(),this.addEventListener(e.CommandEventName,this._onCommand,!1),this._buildupItemTemplate()&&this._databind()}disconnectedCallback(){const r=this._childTemplatePlaceholder;!e.Utils.isNull(r)&&r instanceof t.PacemTemplateProxyElement&&r.removeEventListener("templatechange",this._refreshItemTemplateHandler,!1),this.removeEventListener(e.CommandEventName,this._onCommand,!1),this.datasource=[],super.disconnectedCallback()}propertyChangedCallback(t,r,n,s){if(super.propertyChangedCallback(t,r,n,s),"datasource"===t)e.Utils.isNull(this._itemTemplate)||this._databind(n)}};__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Eval})],s.prototype,"datasource",void 0),s=r=__decorate([e.CustomElement({tagName:e.P+"-repeater"})],s),t.PacemRepeaterElement=s;class RepeaterItem extends e.RepeaterItem{constructor(t,r,n,s){super(document.createComment("pacem-repeater-item")),this._repeater=t,this._template=r,this._fragment=n,this._holder=s,this._alterEgos=[];function i(t,r){var n=this,s="_"+t;if(r!==n[s]){var i=n[s];n[s]=r;var o=new e.PropertyChangeEvent({propertyName:t,oldValue:i,currentValue:r});n.dispatchEvent(o)}}let o=this.placeholder;Object.defineProperties(o,{item:{get:function(){return this._item},set:function(e){i.apply(o,["item",e])},configurable:!0},index:{get:function(){const t=this._index;return e.Utils.isNull(t)?-1:t},set:function(e){i.apply(o,["index",e])},configurable:!0}})}append(){const t=this._template,r=this._fragment;this._alterEgos.push(r.appendChild(this.placeholder));const s=t.cloneNode(!0);var i;e.Utils.isNull(i=n(this._repeater,e.INSTANCE_HOST_VAR))||e.CustomElementUtils.assignHostContext(i,s);var o=s.content.childNodes;Array.prototype.push.apply(this._alterEgos,o),r.appendChild(s.content)}redrawEventually(e,t){if(e===this._template)return;this._fragment=t,this._template=e;const r=this._holder.parentElement,n=this._alterEgos;for(;n.length>0;)r.removeChild(n.pop());this.append()}get dom(){return this._alterEgos.filter(e=>!(e instanceof Comment||e instanceof Text))}get repeater(){return this._repeater}remove(){let t=this._holder.parentElement;for(var r of this._alterEgos)r.parentElement!==t||e.Utils.isNull(t)||t.removeChild(r)}get index(){return this.placeholder.index}set index(e){this.placeholder.index=e}get item(){return this.placeholder.item}set item(e){this.placeholder.item=e}}t.RepeaterItem=RepeaterItem}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){class PacemItemElement extends t.PacemElement{get container(){return this._container}findContainer(){return e.CustomElementUtils.findAncestor(this,e=>e instanceof PacemItemsContainerElement)}viewActivatedCallback(){super.viewActivatedCallback();let t=this._container=this.findContainer();e.Utils.isNull(t)||t.register(this)}disconnectedCallback(){e.Utils.isNull(this._container)||this._container.unregister(this),super.disconnectedCallback()}}t.PacemItemElement=PacemItemElement,t.isItemsContainer=function(t){return"items"in t&&(e.Utils.isNull(t.items)||e.Utils.isArray(t.items))&&"function"==typeof t.register&&"function"==typeof t.unregister},t.ItemRegisterEventName="itemregister",t.ItemUnregisterEventName="itemunregister";class ItemRegisterEvent extends e.CustomTypedEvent{constructor(e,r){super(t.ItemRegisterEventName,e,r)}}t.ItemRegisterEvent=ItemRegisterEvent;class ItemUnregisterEvent extends e.CustomTypedEvent{constructor(e,r){super(t.ItemUnregisterEventName,e,r)}}t.ItemUnregisterEvent=ItemUnregisterEvent;class ItemsContainerRegistrar{constructor(e){if(this._container=e,null==e||!(e instanceof PacemItemsContainerElement||e instanceof PacemCrossItemsContainerElement))throw"Must provide a valid itemscontainer."}register(t){const r=this._container;var n=!1;return r.validate(t)?e.Utils.isNull(r.items)?(r.items=[t],n=!0):-1===r.items.indexOf(t)&&(r.items.push(t),n=!0):r.logger&&r.logger.log(e.Logging.LogLevel.Debug,`${t&&t.localName} element couldn't be registered in a ${r.localName} element.`),n&&r.dispatchEvent(new ItemRegisterEvent(t)),n}unregister(t){const r=this._container;if(!e.Utils.isNull(r.items)){const e=r.items.indexOf(t);if(e>=0){let t=r.items.splice(e,1);return r.dispatchEvent(new ItemUnregisterEvent(t[0])),!0}}return!1}}class PacemCrossItemsContainerElement extends PacemItemElement{constructor(e,t){super(e,t),this._registrar=new ItemsContainerRegistrar(this)}register(e){return this._registrar.register(e)}unregister(e){return this._registrar.unregister(e)}}__decorate([e.Watch()],PacemCrossItemsContainerElement.prototype,"items",void 0),t.PacemCrossItemsContainerElement=PacemCrossItemsContainerElement;class PacemItemsContainerElement extends t.PacemElement{constructor(e,t){super(e,t),this._registrar=new ItemsContainerRegistrar(this)}register(e){return this._registrar.register(e)}unregister(e){return this._registrar.unregister(e)}}__decorate([e.Watch()],PacemItemsContainerElement.prototype,"items",void 0),t.PacemItemsContainerElement=PacemItemsContainerElement}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){class PacemIterableElement extends t.PacemItemElement{findContainer(){return e.CustomElementUtils.findAncestor(this,e=>e instanceof PacemIterativeElement)}propertyChangedCallback(e,t,r,n){super.propertyChangedCallback(e,t,r,n);const s=this.container,i=(s&&s.items||[]).indexOf(this);i>=0&&s&&s.adapter&&s.adapter.itemPropertyChangedCallback(i,e,t,r,n)}}t.PacemIterableElement=PacemIterableElement;class PacemIterativeElement extends t.PacemItemsContainerElement{propertyChangedCallback(t,r,n,s){switch(super.propertyChangedCallback(t,r,n,s),this.adapter&&this.adapter.masterPropertyChangedCallback(t,r,n,s),t){case"adapter":e.Utils.isNull(r)||r.destroy(),e.Utils.isNull(n)||this.adapter.initialize(this);break;case"items":this.isReady&&this._checkIndex()}}viewActivatedCallback(){super.viewActivatedCallback(),this._checkIndex()}_checkIndex(){let t=0;e.Utils.isNullOrEmpty(this.items)||this.index<this.items.length&&(t=this.index),this.index=t}disconnectedCallback(){e.Utils.isNull(this.adapter)||this.adapter.destroy(),super.disconnectedCallback()}}__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Element})],PacemIterativeElement.prototype,"adapter",void 0),__decorate([e.Watch({converter:e.PropertyConverters.Number})],PacemIterativeElement.prototype,"index",void 0),t.PacemIterativeElement=PacemIterativeElement}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){const r="false";let n=class PacemLayoutProxyElement extends t.PacemEventTarget{#y;connectedCallback(){super.connectedCallback(),this.#y=e.CustomElementUtils.findAncestorShell(this)}propertyChangedCallback(e,t,r,n){super.propertyChangedCallback(e,t,r,n),this._update()}disconnectedCallback(){const t=this.attr;e.Utils.isNullOrEmpty(t)||this._update(t,r,!1),super.disconnectedCallback()}_update(t=this.attr,n=this.value?.toString(),s=this.disabled){if(e.Utils.isNullOrEmpty(t)||s)return;const i=this.#y;e.Utils.isNull(i)||(e.Utils.isNullOrEmpty(n)||n===r?i.removeAttribute(t):i.setAttribute(t,"true"===n?"":n))}};__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],n.prototype,"attr",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],n.prototype,"value",void 0),n=__decorate([e.CustomElement({tagName:e.P+"-layout-proxy"})],n),t.PacemLayoutProxyElement=n}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){let r=class PacemMetaProxyElement extends t.PacemEventTarget{propertyChangedCallback(e,t,r,n){super.propertyChangedCallback(e,t,r,n),this._update()}viewActivatedCallback(){super.viewActivatedCallback(),this._update()}_update(){const t=this.content,r=!e.Utils.isNullOrEmpty(this.name),n=r?this.name:this.itemprop;if(e.Utils.isNullOrEmpty(n)||this.disabled)return;const s=e.Utils.cssEscape(n),i=r?`meta[name='${s}']`:`meta[itemprop='${s}']`;var o=document.head.querySelector(i);if(e.Utils.isNull(o))o=document.createElement("meta"),document.head.appendChild(o);else if(e.Utils.isNullOrEmpty(t))return void o.remove();o.setAttribute("content",t),o.setAttribute(r?"name":"itemprop",n),o.removeAttribute(r?"itemprop":"name")}};__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],r.prototype,"name",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],r.prototype,"itemprop",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],r.prototype,"content",void 0),__decorate([e.Debounce(!0)],r.prototype,"_update",null),r=__decorate([e.CustomElement({tagName:e.P+"-meta-proxy"})],r),t.PacemMetaProxyElement=r}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){let r=class PacemOnlineStatusElement extends t.PacemEventTarget{constructor(){super(...arguments),this._onlineHandler=t=>{e.Utils.isNull(t)?this.online=navigator.onLine||!1:this.online="online"===t.type}}connectedCallback(){super.connectedCallback(),window.addEventListener("online",this._onlineHandler,!1),window.addEventListener("offline",this._onlineHandler,!1)}viewActivatedCallback(){super.viewActivatedCallback(),this._onlineHandler()}disconnectedCallback(){window.removeEventListener("online",this._onlineHandler,!1),window.removeEventListener("offline",this._onlineHandler,!1),super.disconnectedCallback()}};__decorate([e.Watch({converter:e.PropertyConverters.Boolean})],r.prototype,"online",void 0),r=__decorate([e.CustomElement({tagName:e.P+"-online-status"})],r),t.PacemOnlineStatusElement=r}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){let r=class PacemServiceWorkerProxyElement extends t.PacemEventTarget{viewActivatedCallback(){super.viewActivatedCallback(),this._tryRegister()}disconnectedCallback(){this._tryUnregister(),super.disconnectedCallback()}propertyChangedCallback(t,r,n,s){switch(super.propertyChangedCallback(t,r,n,s),t){case"pushSubscription":e.Utils.isNull(r)||this.dispatchEvent(new CustomEvent("unsubscribe",{detail:r})),e.Utils.isNull(n)||this.dispatchEvent(new CustomEvent("subscribe",{detail:n}));break;case"registration":e.Utils.isNull(r)||this.dispatchEvent(new CustomEvent("unregister",{detail:r})),e.Utils.isNull(n)||this.dispatchEvent(new CustomEvent("register",{detail:n}))}}_tryUnregister(t=this.registration){return e.Utils.isNull(t)?Promise.resolve(!0):t.unregister()}_tryRegister(t=this.src){this._tryUnregister().then(r=>{!e.Utils.isNullOrEmpty(t)&&"serviceWorker"in navigator&&navigator.serviceWorker.register(t).then(e=>{this.registration=e,"PushManager"in window&&e.pushManager.getSubscription().then(e=>{this.pushSubscription=e})})})}unsubscribe(t=this.pushSubscription){return new Promise((r,n)=>{if(e.Utils.isNull(t))r(!1);else{const e=t===this.pushSubscription;t.unsubscribe().then(t=>{e&&(this.pushSubscription=null),r(t)})}})}subscribe(t=this.publicKey){return new Promise((r,n)=>{"string"==typeof t&&(t=function(e){e=(e+"=".repeat((4-e.length%4)%4)).replace(/\-/g,"+").replace(/_/g,"/");const t=window.atob(e),r=new Uint8Array(t.length);for(var n=0;n<t.length;n++)r[n]=t.charCodeAt(n);return r}(t));const s=this.registration?.pushManager;e.Utils.isNull(s)?r(null):s.subscribe({userVisibleOnly:!0,applicationServerKey:t}).then(e=>{"denied"===Notification.permission?r(this.pushSubscription=null):r(this.pushSubscription=e)})})}};__decorate([e.Watch()],r.prototype,"registration",void 0),__decorate([e.Watch()],r.prototype,"pushSubscription",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],r.prototype,"src",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],r.prototype,"publicKey",void 0),r=__decorate([e.CustomElement({tagName:e.P+"-serviceworker-proxy"})],r),t.PacemServiceWorkerProxyElement=r}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){const r="keydown";t.KeyboardShortcutExecuteEventName="execute";let n=class PacemShortcutElement extends t.PacemEventTarget{constructor(){super(...arguments),this._accumulator=[],this._shortcutHandler=r=>{const n=function(t,r,n=[]){if(e.Utils.isNullOrEmpty(r))return!1;const s=/(\w+)\s*\+/,i=[];let o;for(;!e.Utils.isNullOrEmpty(o=s.exec(r));)r=r.substr(o.index+o[0].length),i.push(o[1]);if(!e.CustomEventUtils.matchModifiers(t,i))return!1;const a=r.split(",").map(e=>e.trim().toLowerCase());if(e.Utils.isNullOrEmpty(a))return!1;var l,c,m=t.key.toLowerCase();return l=m,c=a[n.length],!!(l===c||"escape"===l&&"esc"===c||"backspace"===l&&"back"===c||"control"===l&&"ctrl"===c||"delete"===l&&("del"===c||"canc"===c)||/^arrow/.test(l)&&c===l.substr(5))&&(n.push(m),n.length==a.length||"ongoing")}(r,this.combination,this._accumulator);switch(n){case!0:e.avoidHandler(r),this.dispatchEvent(new Event(t.KeyboardShortcutExecuteEventName,{bubbles:!1,cancelable:!1}));case!1:this._accumulator.splice(0)}}}viewActivatedCallback(){super.viewActivatedCallback(),this._addHandler()}propertyChangedCallback(e,t,r,n){super.propertyChangedCallback(e,t,r,n),"target"!==e||n||(this._removeHandler(t),this._addHandler(r))}disconnectedCallback(){this._removeHandler(),super.disconnectedCallback()}_removeHandler(e=this.target){(e||window).removeEventListener(r,this._shortcutHandler,!1)}_addHandler(e=this.target){(e||window).addEventListener(r,this._shortcutHandler,!1)}};__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],n.prototype,"combination",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Element})],n.prototype,"target",void 0),n=__decorate([e.CustomElement({tagName:e.P+"-shortcut"})],n),t.PacemShortcutElement=n}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){let r=class PacemStyleProxyElement extends t.PacemEventTarget{propertyChangedCallback(t,r,n,s){switch(super.propertyChangedCallback(t,r,n,s),t){case"cssText":e.Utils.isNull(this._style)||(this.cssReady=!1,this._style.textContent=n,e.Utils.isNullOrEmpty(n)?this.cssReady=!0:this._idleWhileReady());break;case"disabled":case"src":this._fetch()}}viewActivatedCallback(){super.viewActivatedCallback();const e=this._style=document.createElement("style");e.setAttribute("type","text/css"),document.head.appendChild(e),this._fetch()}disconnectedCallback(){e.Utils.isNull(this._style)||this._style.remove(),super.disconnectedCallback()}_idleWhileReady(){let t=this._style.sheet,r=setInterval(()=>{try{t.cssRules.length>0&&(clearInterval(r),e.CustomElementUtils.Theme.importWebFonts().then(e=>{this.cssReady=!0,this.dispatchEvent(new Event("cssready"))}))}catch(e){}},100)}_fetch(){const t=this.src,r=this._style;this.disabled||e.Utils.isNull(r)||(e.Utils.isNullOrEmpty(t)?r.textContent=this.cssText||"":(this.cssReady=!1,fetch(t).then(e=>{e.text().then(e=>{r.textContent=e,this._idleWhileReady()},e=>{this.cssReady=!0})},e=>{this.cssReady=!0})))}};__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],r.prototype,"src",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],r.prototype,"cssText",void 0),__decorate([e.Watch({converter:e.PropertyConverters.Boolean})],r.prototype,"cssReady",void 0),r=__decorate([e.CustomElement({tagName:e.P+"-style-proxy"})],r),t.PacemStyleProxyElement=r}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){let r=class PacemTimerElement extends t.PacemEventTarget{constructor(){super(),this._handle=0}propertyChangedCallback(e,t,r,n){switch(super.propertyChangedCallback(e,t,r,n),e){case"interval":case"disabled":this._restart()}}viewActivatedCallback(){super.viewActivatedCallback(),this._restart()}disconnectedCallback(){window.clearInterval(this._handle),super.disconnectedCallback()}_restart(){clearInterval(this._handle),!this.disabled&&this.interval>0&&(this._handle=window.setInterval(()=>{this.dispatchEvent(new Event("tick",{bubbles:!1,cancelable:!1}))},this.interval))}};__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Number})],r.prototype,"interval",void 0),r=__decorate([e.CustomElement({tagName:e.P+"-timer"})],r),t.PacemTimerElement=r}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){let r=class PacemTitleProxyElement extends t.PacemEventTarget{propertyChangedCallback(e,t,r,n){super.propertyChangedCallback(e,t,r,n),this._update()}viewActivatedCallback(){super.viewActivatedCallback(),this._update()}_update(){const t=this.value;e.Utils.isNullOrEmpty(t)||this.disabled||(document.title=t)}};__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],r.prototype,"value",void 0),r=__decorate([e.CustomElement({tagName:e.P+"-title-proxy"})],r),t.PacemTitleProxyElement=r}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){let r=class PacemWebWorkerProxyElement extends t.PacemEventTarget{constructor(){super(...arguments),this.autosend=!0,this._messageHandler=e=>{this.result=e.data,this.dispatchEvent(new CustomEvent("receive",{detail:e.data,bubbles:!1,cancelable:!1}))},this._errorHandler=e=>{this.dispatchEvent(new CustomEvent("error",{detail:e.error,bubbles:!1,cancelable:!1}))}}viewActivatedCallback(){super.viewActivatedCallback(),this._initializeWorker()}propertyChangedCallback(e,t,r,n){if(super.propertyChangedCallback(e,t,r,n),!n)switch(e){case"src":this._disposeWorker(),this._initializeWorker(r);break;case"autosend":case"disabled":case"message":this.autosend&&this.send(this.message)}}disconnectedCallback(){this._disposeWorker(),super.disconnectedCallback()}send(t=this.message){if(this.disabled)return;const r=this._worker;e.Utils.isNull(r)||r.postMessage(t)}_initializeWorker(t=this.src){if(!e.Utils.isNullOrEmpty(t)){const r=this._worker=new Worker(t);r.addEventListener("message",this._messageHandler,!1),r.addEventListener("error",this._errorHandler,!1),this.autosend&&!e.Utils.isNull(this.message)&&this.send()}}_disposeWorker(t=this._worker){e.Utils.isNull(t)||(t.removeEventListener("error",this._errorHandler,!1),t.removeEventListener("message",this._messageHandler,!1),t.terminate())}};__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],r.prototype,"message",void 0),__decorate([e.Watch({converter:e.PropertyConverters.String})],r.prototype,"result",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],r.prototype,"src",void 0),__decorate([e.Watch({emit:!1,reflectBack:!0,converter:e.PropertyConverters.Boolean})],r.prototype,"autosend",void 0),r=__decorate([e.CustomElement({tagName:e.P+"-webworker-proxy"})],r),t.PacemWebWorkerProxyElement=r}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){const r={convert:t=>e.Animations.Easings[t]??e.Animations.Easings.linear};class AnimationElement extends t.PacemItemElement{}__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Element})],AnimationElement.prototype,"target",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],AnimationElement.prototype,"property",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Number})],AnimationElement.prototype,"delay",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Number})],AnimationElement.prototype,"duration",void 0),__decorate([e.Watch({emit:!1,converter:r})],AnimationElement.prototype,"easing",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Number})],AnimationElement.prototype,"iterations",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],AnimationElement.prototype,"direction",void 0),t.AnimationElement=AnimationElement;t.TweenAnimationElement=class TweenAnimationElement extends AnimationElement{constructor(t=new e.Animations.TweenService){super(),this._tweener=t}get tweener(){return this._tweener}#E=!1;startAnimation(){return this.#E=!1,new Promise((t,r)=>{this._tweener.run(0,1,this.duration??0,this.delay??0,this.easing??e.Animations.Easings.linear,(e,t)=>{this.#E||(this.target[this.property]=this.tweenInterpolationCallback(e,t))}).then(t)})}cancelAnimation(){this.#E=!0}}}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){const r={h:0,l:0,s:.5,a:1},n={h:0,l:1,s:.5,a:1};let s=class PacemColorAnimationElement extends t.TweenAnimationElement{propertyChangedCallback(e,t,r,n){if(super.propertyChangedCallback(e,t,r,n),!n)switch(e){case"from":this._precomputeFrom(r);break;case"to":this._precomputeTo(r)}}#C=r;#P=n;viewActivatedCallback(){super.viewActivatedCallback(),this._precomputeColors()}_precomputeColors(){this._precomputeFrom(),this._precomputeTo()}_precomputeFrom(e=this.from){this.#C=this._precomputeColor(e)??r}_precomputeTo(e=this.to){this.#P=this._precomputeColor(e)??r}_precomputeColor(t){if(!e.Utils.isNullOrEmpty(t))try{return this._parseColor(t)}catch{return null}}_parseColor(t){return e.Colors.hsl(e.Colors.parse(t))}tweenInterpolationCallback(t,r){const n=this.#C,s=this.#P,i={h:(s.h-n.h)*r+n.h,s:(s.s-n.s)*r+n.s,l:(s.l-n.l)*r+n.l,a:(s.a-n.a)*r+n.a};return e.Colors.stringify(i)}};__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],s.prototype,"from",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.String})],s.prototype,"to",void 0),s=__decorate([e.CustomElement({tagName:e.P+"-color-animation"})],s),t.PacemColorAnimationElement=s}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){let r=class PacemNumberAnimationElement extends t.TweenAnimationElement{tweenInterpolationCallback(e,t){const r=this.to??1,n=this.from??0;return(r-n)*t+n}};__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Number})],r.prototype,"from",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Number})],r.prototype,"to",void 0),r=__decorate([e.CustomElement({tagName:e.P+"-number-animation"})],r),t.PacemNumberAnimationElement=r}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){const r={x:0,y:0},n={x:1,y:1};let s=class PacemPointAnimationElement extends t.TweenAnimationElement{tweenInterpolationCallback(e,t){const s=this.to??n,i=this.from??r;return{x:(s.x-i.x)*t+i.x,y:(s.y-i.y)*t+i.y}}};__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Point})],s.prototype,"from",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Point})],s.prototype,"to",void 0),s=__decorate([e.CustomElement({tagName:e.P+"-point-animation"})],s),t.PacemPointAnimationElement=s}(e.Components||(e.Components={}))}(Pacem||(Pacem={})),function(e){!function(t){let r=class PacemStoryboardElement extends t.PacemItemsContainerElement{validate(e){return e instanceof t.AnimationElement}viewActivatedCallback(){super.viewActivatedCallback(),this._animate()}propertyChangedCallback(e,t,r,n){if(super.propertyChangedCallback(e,t,r,n),!n)switch(e){case"datasource":this._buildDatasourceFromDatasource(r);break;case"items":this._buildDatasourceFromItems(r);break;case"_adaptedDatasource":case"autostart":this._animate()}}_buildDatasourceFromItems(e=this.items){this._adaptedDatasource=e||[]}_buildDatasourceFromDatasource(e=this.datasource){this._adaptedDatasource=e||[]}_animate(t=this.autostart){const r=this._adaptedDatasource,n=[];if(t&&!e.Utils.isNullOrEmpty(r))for(let e of r)n.push(e.startAnimation());return Promise.all(n)}cancelAnimation(){const e=this._adaptedDatasource||[];for(let t of e)t.cancelAnimation()}startAnimation(){return this._animate(!0)}};__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Boolean})],r.prototype,"autostart",void 0),__decorate([e.Watch({emit:!1,converter:e.PropertyConverters.Number})],r.prototype,"duration",void 0),__decorate([e.Watch({emit:!1})],r.prototype,"datasource",void 0),__decorate([e.Watch({emit:!1})],r.prototype,"_adaptedDatasource",void 0),r=__decorate([e.CustomElement({tagName:e.P+"-storyboard"})],r),t.PacemStoryboardElement=r}(e.Components||(e.Components={}))}(Pacem||(Pacem={}));
@@ -1,6 +1,6 @@
1
1
  /**
2
- * pacem v0.52.1 (https://js.pacem.it)
3
- * Copyright 2025 Pacem (https://pacem.it)
2
+ * pacem v0.52.2 (https://js.pacem.it)
3
+ * Copyright 2026 Pacem (https://pacem.it)
4
4
  * Licensed under Apache-2.0
5
5
  */
6
6
  declare namespace Pacem {
@@ -1,6 +1,6 @@
1
1
  /**
2
- * pacem v0.52.1 (https://js.pacem.it)
3
- * Copyright 2025 Pacem (https://pacem.it)
2
+ * pacem v0.52.2 (https://js.pacem.it)
3
+ * Copyright 2026 Pacem (https://pacem.it)
4
4
  * Licensed under Apache-2.0
5
5
  */
6
6
  var Pacem;
@@ -1,6 +1,6 @@
1
1
  /**
2
- * pacem v0.52.1 (https://js.pacem.it)
3
- * Copyright 2025 Pacem (https://pacem.it)
2
+ * pacem v0.52.2 (https://js.pacem.it)
3
+ * Copyright 2026 Pacem (https://pacem.it)
4
4
  * Licensed under Apache-2.0
5
5
  */
6
6
  var Pacem;!function(e){e.Arrays=class Arrays{static range(e,t,r=2){let n=e;const a=(t-e)/(r-1),s=[];if(a>0)for(;s.length<r;)s.push(n.roundoff()),n+=a;return s}static chunkify(t,r){if(e.NullChecker.isNullOrEmpty(t))return[];if(r<=0||r%1!=0)throw new Error("Provide a positive integer number.");const n=Math.ceil(t.length/r);return Array.from({length:n},(e,n)=>{const a=n*r,s=a+r;return t.slice(a,s)})}}}(Pacem||(Pacem={})),function(e){class Blobs{static blobToDataURL(e){return new Promise((t,r)=>{const n=new FileReader;n.onload=e=>{t(e.target.result)},n.readAsDataURL(e)})}static _b64ToUint8Array(e){let t=e.length;const r=new Uint8Array(t);for(;t--;)r[t]=e.charCodeAt(t);return r}static base64ToBlob(e,t){const r=Blobs._b64ToUint8Array(atob(e));return new Blob([r],t)}static dataURLToBlob(e){const t=e.indexOf(",");if(-1===t)return Blobs.base64ToBlob(e);{const r=e.substring(t+1),n=e.substring(0,t).match(/:(.*?);/)[1];return Blobs.base64ToBlob(r,{type:n})}}static blobToText(e,t){return new Promise((r,n)=>{e.arrayBuffer().then(e=>{const n=new TextDecoder(t).decode(e);r(n)})})}static textToBlob(e,t="text/plain"){const r=(new TextEncoder).encode(e);return new Blob([r],{type:t})}}e.Blobs=Blobs}(Pacem||(Pacem={})),function(e){!function(e){const t=(e,t)=>{const r=e.match(t);return r?r[2]:null};e.detect=function(e=navigator.userAgent){let r="unknown",n=null;switch(/ucbrowser/i.test(e)?r="UCBrowser":/edg/i.test(e)?r="Edge":/googlebot/i.test(e)?r="GoogleBot":/chromium/i.test(e)?r="Chromium":/firefox|fxios/i.test(e)&&!/seamonkey/i.test(e)?r="Firefox":/; msie|trident/i.test(e)&&!/ucbrowser/i.test(e)?r="IE":/chrome|crios/i.test(e)&&!/opr|opera|chromium|edg|ucbrowser|googlebot/i.test(e)?r="Chrome":/safari/i.test(e)&&!/chromium|edg|ucbrowser|chrome|crios|opr|opera|fxios|firefox/i.test(e)?r="Safari":/opr|opera/i.test(e)&&(r="Opera"),r){case"UCBrowser":n=t(e,/(ucbrowser)\/([\d\.]+)/i);break;case"Edge":n=t(e,/(edge|edga|edgios|edg)\/([\d\.]+)/i);break;case"GoogleBot":n=t(e,/(googlebot)\/([\d\.]+)/i);break;case"Chromium":n=t(e,/(chromium)\/([\d\.]+)/i);break;case"Firefox":n=t(e,/(firefox|fxios)\/([\d\.]+)/i);break;case"Chrome":n=t(e,/(chrome|crios)\/([\d\.]+)/i);break;case"Safari":n=t(e,/(safari)\/([\d\.]+)/i);break;case"Opera":n=t(e,/(opera|opr)\/([\d\.]+)/i);break;case"IE":{const r=t(e,/(trident)\/([\d\.]+)/i);n=r?`${parseFloat(r)+4}`:"7.0";break}default:n="0.0.0.0"}return{name:r,version:n}}}(e.Browsers||(e.Browsers={}))}(Pacem||(Pacem={})),function(e){const t=/^hsl\s*\(\s*([\d\.]+)\s*,\s*([\d\.]+)%\s*,\s*([\d\.]+)%\s*\)$/,r=/^hsla\s*\(\s*([\d\.]+)\s*,\s*([\d\.]+)%\s*,\s*([\d\.]+)%\s*,\s*([\d\.]+)\)$/,n=/^rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)$/,a=/^rgba\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*,\s*([\d\.]+)\)$/,s=/^#[a-f0-9]{6}$/,i=/^#[a-f0-9]{3}$/;function o(t){return!e.NullChecker.isNullOrEmpty(t)&&"object"==typeof t&&"r"in t&&"g"in t&&"b"in t&&"number"==typeof t.r&&"number"==typeof t.b&&"number"==typeof t.g&&(t.a??=1,t.r>=0&&t.r<=1&&t.g>=0&&t.g<=1&&t.b>=0&&t.b<=1&&t.a>=0&&t.a<=1)}function c(t){return!e.NullChecker.isNullOrEmpty(t)&&"object"==typeof t&&"h"in t&&"s"in t&&"l"in t&&"number"==typeof t.h&&"number"==typeof t.s&&"number"==typeof t.l&&(t.a??=1,t.h>=0&&t.h<=360&&t.s>=0&&t.s<=1&&t.l>=0&&t.l<=1&&t.a>=0&&t.a<=1)}const l={adjustRgbChannel:e=>e<=.03928?e/12.92:Math.pow((e+.055)/1.055,2.4),adjustRgbChannelInv:e=>e<=.00304?12.92*e:1.055*(Math.pow(e,1/2.4)-.055),adjustRgb:e=>({r:l.adjustRgbChannel(e.r),g:l.adjustRgbChannel(e.g),b:l.adjustRgbChannel(e.b),a:e.a}),adjustRgbInv:e=>({r:l.adjustRgbChannelInv(e.r),g:l.adjustRgbChannelInv(e.g),b:l.adjustRgbChannelInv(e.b),a:e.a}),X:e=>.4125*e.r+.3576*e.g+.1804*e.b,Y:e=>.2126*e.r+.7152*e.g+.0722*e.b,Z:e=>.0193*e.r+.1191*e.g+.9503*e.b,relativeLuminance:e=>{const t=l.adjustRgb(e);return l.Y(t)},rgbToCieXYZ:e=>{const t=l.adjustRgb(e);return{x:l.X(t),y:l.Y(t),z:l.Z(t),a:e.a}},cieXYZToRgb:e=>{const t=3.241*e.x-1.5374*e.y-.4986*e.z,r=-.9692*e.x+1.876*e.y+.0416*e.z,n=.0556*e.x-.204*e.y+1.057*e.z;return l.adjustRgbInv({r:t,g:r,b:n,a:e.a})},contrastRatio:(e,t)=>{const r=l.relativeLuminance(e)+.05,n=l.relativeLuminance(t)+.05;return r>n?r/n:n/r}};function u(t){return e.Strings.leftPad(t.toString(16),2,"0")}class Colors{static WCAG_MINIMUM_CONTRAST=3;static WCAG_NORMAL_TEXT_CONTRAST=4.5;static WCAG_SAFE_CONTRAST=7;static _clampRGB(e){const t=e=>Math.min(1,Math.max(0,e));return null==e[3]&&(e[3]=1),{r:t(e[0]),g:t(e[1]),b:t(e[2]),a:Math.min(1,Math.max(0,e[3]))}}static _normalize(e){return[e[0]/255,e[1]/255,e[2]/255,e[3]]}static parse(e){if(e=(e||"").toLowerCase(),n.test(e)){let t=n.exec(e);return this._clampRGB(this._normalize([parseInt(t[1]),parseInt(t[2]),parseInt(t[3]),1]))}if(a.test(e)){let t=a.exec(e);return this._clampRGB(this._normalize([parseInt(t[1]),parseInt(t[2]),parseInt(t[3]),parseFloat(t[4])]))}if(s.test(e)){let t=s.exec(e)[0];return this._clampRGB(this._normalize([parseInt("0x"+t.substr(1,2)),parseInt("0x"+t.substr(3,2)),parseInt("0x"+t.substr(5,2)),1]))}if(i.test(e)){let t=i.exec(e)[0],r=t.substr(1,1),n=t.substr(2,1),a=t.substr(3,1);return this._clampRGB(this._normalize([parseInt("0x"+r+r),parseInt("0x"+n+n),parseInt("0x"+a+a),1]))}if(t.test(e)){let r=t.exec(e);const n={h:parseFloat(r[1]),s:.01*parseFloat(r[2]),l:.01*parseFloat(r[3])};return this.rgb(n)}if(r.test(e)){let t=r.exec(e);const n={h:parseFloat(t[1]),s:.01*parseFloat(t[2]),l:.01*parseFloat(t[3]),a:parseFloat(t[4])};return this.rgb(n)}}static hsl(e){const t=function(e){const t=e.r,r=e.g,n=e.b;return(.5*(Math.max(t,r,n)+Math.min(t,r,n))).clamp(0,1)}(e),r=function(e,t){const r=e.r,n=e.g,a=e.b,s=Math.max(r,n,a),i=Math.min(r,n,a);return(0===t||1===t?0:(s-i)/(1-Math.abs(2*t-1))).clamp(0,1)}(e,t),n=function(e){const t=e.r,r=e.g,n=e.b,a=Math.max(t,r,n),s=Math.min(t,r,n);let i=0;return a!==s&&(i=a===t?((r-n)/(a-s)*60+360)%360:a===r?((n-t)/(a-s)*60+120)%360:((t-r)/(a-s)*60+240)%360),i.clamp(0,360)}(e);return{h:n,s:r,l:t,a:e.a}}static cieXYZ(e){return c(e)&&(e=this.rgb(e)),l.rgbToCieXYZ(e)}static rgb(e){if(!c(e)){const t=l.cieXYZToRgb(e);return this._clampRGB([t.r,t.g,t.b,t.a])}{const t=e.h,r=e.s,n=e.l,a=t/60,s=(1-Math.abs(2*n-1))*r,i=s*(1-Math.abs(a%2-1)),o=n-s/2,c=(t,r,n)=>this._clampRGB([t+o,r+o,n+o,e.a]);if(a<=1)return c(s,i,0);if(a<=2)return c(i,s,0);if(a<=3)return c(0,s,i);if(a<=4)return c(0,i,s);if(a<=5)return c(i,0,s);if(a<=6)return c(s,0,i)}}static stringify(e,t=1){if(c(e)){t??=1,e.a??=1;const r="number"==typeof t?t:1;return`hsla(${e.h.roundoff(r)},${(100*e.s).roundoff(r)}%,${(100*e.l).roundoff(r)}%,${e.a.roundoff()})`}if(o(e)){t??=!0,e.a??=1;const r="boolean"==typeof t?t:!!t,n=Math.round(255*e.r),a=Math.round(255*e.g),s=Math.round(255*e.b),i=e.a.roundoff();return 1===i?r?("#"+u(n)+u(a)+u(s)).toUpperCase():`rgb(${n},${a},${s})`:`rgba(${n},${a},${s},${i})`}}static contrastRatio(e,t){return c(e)&&(e=this.rgb(e)),c(t)&&(t=this.rgb(t)),l.contrastRatio(e,t)}static luminance(e){return c(e)&&(e=Colors.rgb(e)),l.relativeLuminance(e)}static lighten(e,t=.1){if(t||=0,c(e)){const r=Math.min(1,Math.max(0,e.l+t));return Object.assign({},e,{l:r})}if(o(e)){const r=this.lighten(this.hsl(e),t);return this.rgb(r)}return e}static darken(e,t=.1){return this.lighten(e,-t)}static saturate(e,t=.1){if(t||=0,c(e)){const r=Math.min(1,Math.max(0,e.s+t));return Object.assign({},e,{s:r})}if(o(e)){const r=this.saturate(this.hsl(e),t);return this.rgb(r)}return e}static desaturate(e,t=.1){return this.saturate(e,-t)}static interpolate(e,t,r,n){r??=.5,n??=r;const a=(r+n).roundoff(),s=(r/a).roundoff(),i=(n/a).roundoff(),l=o(e),u=c(e),h=e=>o(e)||c(e)?Colors.cieXYZ(e):e;e=h(e),t=h(t);const d={x:(e.x*s+t.x*i).roundoff(),y:(e.y*s+t.y*i).roundoff(),z:(e.z*s+t.z*i).roundoff(),a:(e.a*s+t.a*i).roundoff()};return l?Colors.rgb(d):u?Colors.hsl(Colors.rgb(d)):d}}e.Colors=Colors}(Pacem||(Pacem={})),function(e){const t=/^\/Date\([\d]+\)\/$/i;class Dates{static parse(e){let r;return"string"==typeof e?(r=t.test(e)?parseInt(e.substring(6)):Date.parse(e),new Date(r)):"number"==typeof e?new Date(e):e}static isLeapYear(e){return e%4==0&&e%100!=0||e%400==0}static daysInMonth(e,t){return[31,Dates.isLeapYear(e)?29:28,31,30,31,30,31,31,30,31,30,31][t]}static isDate(e){return e instanceof Date&&!isNaN(e.valueOf())}static dateOnly(e){return new Date(e.getFullYear(),e.getMonth(),e.getDate())}static addMonths(e,t){let r=e.getDate(),n=new Date(e),a=n.getMonth()+t,s=0;for(;a<0;)a+=12,s--;return n.setDate(1),n.setMonth(a%12),n.setFullYear(n.getFullYear()+s+Math.floor(a/12)),n.setDate(Math.min(r,Dates.daysInMonth(n.getFullYear(),n.getMonth()))),n}static addDays(e,t){return new Date(e.valueOf()+864e5*t)}static daysBetween(e,t){return(t.valueOf()-e.valueOf())/864e5}}e.Dates=Dates}(Pacem||(Pacem={})),function(e){const t=/[-+]?([\d]+(\.[\d]+(e-[\d]+)?)?|[\d]*(\.[\d]+(e-[\d]+)?))/g;function r(e){const r=[];let n=e.match(t);return n&&n.length>0&&n.forEach(e=>r.push(parseFloat(e))),r}e.parseAsNumericalArray=r;class Angle{static isAngle(e){return"object"==typeof e&&"vertex"in e&&Point.isPoint(e.vertex)&&"start"in e&&Point.isPoint(e.start)&&"end"in e&&Point.isPoint(e.end)}static value(t){if(e.NullChecker.isNullOrEmpty(t)||!Angle.isAngle(t))return Number.NaN;const{vertex:r,start:n,end:a}=t;return Angle.angleBetween(r,n,a)}static angleBetween(e,t,r){const n=t.x-e.x,a=t.y-e.y,s=r.x-e.x,i=r.y-e.y,o=n*s+a*i,c=n*i-a*s;return-Math.atan2(c,o)}}e.Angle=Angle;class Size{static parse(e){let t=r(e);if(t&&2===t.length)return{width:t[0],height:t[1]};throw new Error(`Cannot parse "${e}" as a valid Size.`)}static isSize(e){return"object"==typeof e&&"width"in e&&"number"==typeof e.width&&"height"in e&&"number"==typeof e.height}}e.Size=Size;class Point{static parse(e){let t=r(e);if(t&&2===t.length)return{x:t[0],y:t[1]};throw new Error(`Cannot parse "${e}" as a valid Point.`)}static isPoint(e){return"object"==typeof e&&"x"in e&&"number"==typeof e.x&&"y"in e&&"number"==typeof e.y}static distance(e,t){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}static subtract(e,t){return{x:t.x-e.x,y:t.y-e.y}}static add(...e){var t={x:0,y:0};for(var r of e)t.x+=r.x,t.y+=r.y;return t}static multiply(e,t){return{x:e.x*t,y:e.y*t}}}e.Point=Point;class Rect{static parse(e){let t=r(e);if(t&&4===t.length)return{x:t[0],y:t[1],width:t[2],height:t[3]};throw new Error(`Cannot parse "${e}" as a valid Rect.`)}static isRect(e){return Point.isPoint(e)&&Size.isSize(e)}static _stretch(e,t){return{a:t.width/e.width,b:0,c:0,d:t.height/e.height,e:t.x-e.x,f:t.y-e.y}}static _contain(t,r,n,a){let s=1;s=t.width/t.height>=r.width/r.height?r.width/t.width:r.height/t.height;const i=t.width*s,o=t.height*s,c=this._align({x:t.x,y:t.y,width:i,height:o},r,n,a);return e.Matrix2D.translate({a:s,b:0,c:0,d:s,e:0,f:0},c)}static _cover(t,r,n,a){let s=1;s=t.width/t.height<r.width/r.height?r.width/t.width:r.height/t.height;const i=t.width*s,o=t.height*s,c=this._align({x:t.x,y:t.y,width:i,height:o},r,n,a);return e.Matrix2D.translate({a:s,b:0,c:0,d:s,e:0,f:0},c)}static _align(e,t,r,n){let a=0,s=0;switch(r){case"left":a=t.x-e.x;break;case"right":a=t.x+t.width-e.width-e.x;break;default:a=t.x+.5*t.width-.5*e.width-e.x}switch(n){case"top":s=t.y-e.y;break;case"bottom":s=t.y+t.height-e.height-e.y;break;default:s=t.y+.5*t.height-.5*e.height-e.y}return{x:a,y:s}}static findTransform(e,t,r="stretch",n="center",a="middle"){switch(r){case"contain":return this._contain(e,t,n,a);case"cover":return this._cover(e,t,n,a);default:return this._stretch(e,t)}}static intersect(...e){const t={x:0,y:0,height:0,width:0},r=Array.from(e||[]);if(r.length<=0)return t;for(var n=r[0],a=1;a<r.length;a++){const e=r[a],s=Math.max(e.x,n.x),i=Math.max(e.y,n.y),o=Math.min(e.x+e.width,n.x+n.width)-s,c=Math.min(e.y+e.height,n.y+n.height)-i;if(o<0||c<=0)return t;n={x:s,y:i,width:o,height:c}}return n}static expand(e,...t){const r=Array.from(t||[]);let n=e.x,a=e.y,s=n,i=a;Rect.isRect(e)&&(s+=e.width,i+=e.height);for(let e of r)n=Math.min(e.x,n),a=Math.min(e.y,a),s=Math.max(e.x,s),i=Math.max(e.y,i);return{x:n,y:a,width:s-n,height:i-a}}}e.Rect=Rect}(Pacem||(Pacem={})),function(e){e.HistoryService=class HistoryService{constructor(e,t){this.#e=e,this.#t=t}#r=[];#n=[];#t;#e;get current(){return this.#e}get canUndo(){return this.#r.length>0}get canRedo(){return this.#n.length>0}set maxlength(e){this.#t=e}undo(){if(this.canUndo){const e=this.#r,t=this.#n,r=this.#e;t.unshift(r),this.#e=e.pop()}}redo(){if(this.canRedo){const e=this.#r,t=this.#n,r=this.#e;e.push(r),this.#e=t.shift()}}push(e){this.#n.splice(0),this.#r.push(this.#e),this.#e=e;const t=this.#t,r=this.#r;t>0&&r.length>t&&r.splice(0,r.length-t)}reset(){this.#n.splice(0),this.#r.splice(0)}}}(Pacem||(Pacem={})),function(e){const t={mode:"stretch",align:"center",valign:"middle",quality:1,type:"image/jpeg"};class Imaging{static async loadImage(e){const t=await fetch(e);if(!t.ok)return null;return await t.blob()}static async resizeImage(r,n,a,s){if(n<=0||a<=0||isNaN(n)||isNaN(a))throw new Error("Invalid target size");"string"==typeof r&&(r=await Imaging.loadImage(r));const i=await self.createImageBitmap(r),o=i.width,c=i.height,l=new OffscreenCanvas(o,c),u=l.getContext("2d");u.imageSmoothingEnabled=u.mozImageSmoothingEnabled=u.oImageSmoothingEnabled=u.webkitImageSmoothingEnabled=!0;const{quality:h,type:d,mode:g,align:f,valign:p,background:m}=Object.assign({},t,s??{}),y={width:o,height:c,x:0,y:0},x={x:0,y:0,width:n,height:a},b=e.Rect.findTransform(y,x,g,f,p);l.width=n,l.height=a,m&&(u.fillStyle=m,u.fillRect(0,0,l.width,l.height)),u.setTransform(b),u.drawImage(i,0,0);return await l.convertToBlob({quality:h,type:d})}}e.Imaging=Imaging}(Pacem||(Pacem={})),function(e){class Keys{static#a;static uniqueId(){let e=Keys.#a||Date.now();return Keys.#a=++e}static uniqueCode(){return Keys.uniqueId().toBase62()}static randomString(e){let t="";do{t+=(62*Math.random()).toBase62()}while(t.length<e);return t}}e.Keys=Keys}(Pacem||(Pacem={})),function(e){class Matrix2D{static isIdentity(e){return 1===e.a&&1===e.d&&0===e.b&&0===e.f&&0===e.c&&0===e.e}static get identity(){return{a:1,b:0,c:0,d:1,e:0,f:0}}static copy(e){return{a:e.a,b:e.b,c:e.c,d:e.d,e:e.e,f:e.f}}static scale(e,t,r=t){return{a:e.a*t,b:e.b,c:e.c,d:e.d*r,e:e.e,f:e.f}}static translate(e,t){return{a:e.a,b:e.b,c:e.c,d:e.d,e:e.e+t.x,f:e.f+t.y}}static rotate(e,t){const r=Math.cos(t),n=Math.sin(t);return Matrix2D.multiply(e,{a:r,b:n,c:-n,d:r,e:0,f:0})}static multiply(e,t){return"x"in e&&"y"in e?"number"==typeof t?{x:e.x*t,y:e.y*t}:{x:e.x*t.a+e.y*t.c+t.e,y:e.x*t.b+e.y*t.d+t.f}:"number"==typeof t?{a:e.a*t,b:e.b*t,c:e.c*t,d:e.d*t,e:e.e*t,f:e.f*t}:{a:e.a*t.a+e.b*t.c,b:e.a*t.b+e.b*t.d,c:e.c*t.a+e.d*t.c,d:e.c*t.b+e.d*t.d,e:e.e*t.a+e.f*t.c+t.e,f:e.e*t.b+e.f*t.d+t.f}}static det(e){return e.a*e.d-e.c*e.b}static invert(e){const t=this.det(e);if(0===t)return null;const r=1/t;return this.multiply({a:e.d,b:-e.b,c:-e.c,d:e.a,e:-e.e*e.d+e.c*e.f,f:e.e*e.b-e.a*e.f},r)}static toComponents(e,t={x:0,y:0}){const r=Math.sqrt(e.a*e.a+e.c*e.c),n=Math.sqrt(e.b*e.b+e.d*e.d),a=0!=r?e.a/r:0,s=0!=r?e.c/r:0,i=Math.atan2(s,a),{x:o,y:c}=t;return{scaleX:r,scaleY:n,rotation:i,translation:{x:e.e-o*(r*a-1)+c*r*s,y:e.f-c*(n*a-1)-o*n*s}}}}e.Matrix2D=Matrix2D}(Pacem||(Pacem={})),function(e){class NullChecker{static isNull(e){return null==e}static isEmpty(t){try{return Array.isArray(t)&&0===t.length||"string"==typeof t&&""===t||"object"==typeof t&&0===Object.keys(t).length&&!e.Dates.isDate(t)&&!(t instanceof RegExp)&&!(t instanceof FileSystemDirectoryHandle)&&!(t instanceof FileSystemFileHandle)}catch(e){return!1}}static isNullOrEmpty(e){return NullChecker.isNull(e)||NullChecker.isEmpty(e)}}e.NullChecker=NullChecker}(Pacem||(Pacem={})),Number.prototype.isCloseTo=function(e,t=14){return this.toFixed(t)===e.toFixed(t)},Number.prototype.roundoff=function(e=14){return parseFloat(this.toFixed(e))},Number.prototype.clamp=function(e,t){let r=this;return null==e||isNaN(e)||(r=Math.max(r,e)),null==t||isNaN(t)||(r=Math.min(r,t)),r},Number.prototype.toBase62=function(){for(var e=this,t="";0!=e;){t="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".charAt(e%62)+t,e=Math.floor(e/62)}return t},Number.prototype.toBase36=function(){return this.toString(36)},function(e){e.Numbers=class Numbers{static round(e,t=1){return Math.round(e/t)*t}static log(e,t){return Math.log10(e)/Math.log10(t)}static rebase(e,t,r){const n=e.toString(),a=parseInt(n,t);return n.endsWith(a.toString(t))?parseInt(e.toString(),t).toString(r):Number.NaN.toString()}}}(Pacem||(Pacem={})),function(e){function t(e,t){const r=e.length,n=t.length,a=Array.from({length:r+1},()=>Array(n+1).fill(0));for(let s=1;s<=r;s++)for(let r=1;r<=n;r++)e[s-1]===t[r-1]?a[s][r]=a[s-1][r-1]+1:a[s][r]=Math.max(a[s-1][r],a[s][r-1]);return a}function r(e,t,r,n=""){const a=e.length,s=t.length,i=[];let o=a,c=s,l=null;const u=()=>{l&&(i.push(l),l=null)};for(;o>0||c>0;){var h=null;let a=null;o>0&&c>0&&e[o-1]===t[c-1]?(h="=",a=e[o-1],o--,c--):c>0&&(0===o||r[o][c-1]>=r[o-1][c])?(h="+",a=t[c-1],c--):o>0&&(0===c||r[o-1][c]>r[o][c-1])&&(h="-",a=e[o-1],o--),h&&null!==a?l&&l.type===h?l.value=a+(l.value?n:"")+l.value:(u(),l={type:h,value:a}):u()}return u(),i.reverse()}e.Strings=class Strings{static leftPad(e,t,r){let n=e.toString();for(;n.length<t;)n=r+n;return n}static format(t,...r){const n=Array.from(r);let a=t;for(let e=0;e<n.length;e++){const t=new RegExp("(^|[^\\{])\\{"+e+"\\}($|[^\\}])","g");a=a.replaceAll(t,(t,...r)=>t.replace("{"+e+"}",n[e]))}const s=/(^|[^\{}])\{(\d+)\}($|[^\}])/.exec(a);if(!e.NullChecker.isNullOrEmpty(s))throw new Error(`Missing argument at index ${s[2]}.`);return a}static diff(e,n,a="char"){switch(a){case"line":return function(e,n){const a=/\r?\n/,s=e.split(a),i=n.split(a);return r(s,i,t(s,i),"\n")}(e,n);case"word":return function(e,n){const a=/(\S+|\s+)/g,s=e.match(a)||[],i=n.match(a)||[];return r(s,i,t(s,i),"")}(e,n);default:return function(e,n){const a=e.split(""),s=n.split("");return r(a,s,t(a,s),"")}(e,n)}}}}(Pacem||(Pacem={})),function(e){!function(e){class LexerClass{tokenize(e,t){const r=[];for(;e;){const n=e.length;for(let n of t){const t=n.exec(e,this),a=t?.length;if(a>0){Array.prototype.push.apply(r,t);const n=t[a-1];e=e.substr((n.index||0)+n.raw.length);break}}if(e.length>=n)throw new Error(`Cannot parse\n"${e}"\n using the provided grammar.`)}return r}}e.Parser=class Parser{_lexer;constructor(e=new LexerClass){this._lexer=e}parse(e,t,r){const n=this._lexer.tokenize(e,t);return r.render(n)}}}(e.Compile||(e.Compile={}))}(Pacem||(Pacem={})),function(e){!function(t){!function(t){function r(e){return(e??"").replace(/</g,"&lt;")}function n(e){return e?.index||void 0}function a(e){return e?.replace(/[^\w]+/g," ").trim().replace(/ +/g,"-").toLowerCase()}function s(e,t,r){const n=t.exec(e);return n&&n.length?r(n):null}const i=/(<!--)([\s\S]*?)(-->|$)/,o=/^ {0,3}(={3,}|_{3,}|-{3,})(\r?\n|$)/,c=/^ {0,3}(#{1,6})\s+([^\n]+)(\r?\n|$)+/,l=/^ {0,3}([^\n]+)(\r?\n=+(\r?\n|$))+/,u=/^ {0,3}([^\n]+)(\r?\n-+(\r?\n|$))+/,h=/^ {4,}.+(\r?\n {4,}.+)*(\r?\n|$)+/,d=/^ {0,3}``` *([^\n]*)\r?\n(([\s\S](?!\r?\n {0,3}```))*.(\r?\n)+) {0,3}```(\r?\n|$)+/,g=/^ {0,3}> *([^\n]+)(\r?\n {0,3}> *([^\n]*))*(\r?\n|$)+/,f=/^( {0,3}([-+]).*\r?\n|$)((?!(?: {0,3}(?:\d+[.\)]|\r?\n\S))).*(\r?\n|$))*/,p=/^( {0,3}(\d+[.\)]).*\r?\n|$)((?!(?: {0,3}(?:[+-]|\r?\n\S))).*(\r?\n|$))*/,m=/^(?:[-+*]|\d+[.\)])/m,y=/^(?! {4,})(.+(\n(?! {0,3}```)(?! {0,3}([-+]|\d+[.\)]))(?! {4,})(?! {0,3}>).+)*)/,x=/^ {0,3}(!?)\[([^\]]+)\]: +(\S+)(?: +['"\(](.+)['"\)])?(\r?\n|$)+/,b=/!?\[(?!\s*\])((?:\[[^\[\]]*\]|\\[\[\]]|[^\[\]])*)\](?:\[\])?(\[[^\[\]]*\]|\([^\(\)]*\))?/,w=/(\*\*?|__?)(\[[^\]]*]\([^\)]+\))\1/,k=/(?:(?<!\\)`)(.+?)(?:(?<!\\)`)/,C=/(\*\*?|__?)((?!\1\s?)(?:(?!\1)[\S\s])*[^\s])\1/,$=/(~~?|__?)(?!\1\s?)([^\s][\s\S]*?(?!\1)[^\s])\1/,N=/(:")(?!":\s?)([^\s][\s\S]*?(?!":)[^\s])":/,M=/^\s+/,R=/ {2,}\r?\n/,I=/^[^\r\n]+/;let P,S;function L(t=[]){const L={[S.Comment]:{exec:(e,t)=>s(e,i,r=>{const a=n(r),s=[{type:P.Html,index:a,raw:r[0],text:r[2]}];if(a>0){const r=e.substr(0,a),n=t.tokenize(r,U);Array.prototype.unshift.apply(s,n)}return s})},[S.Reference]:{exec:e=>s(e,x,e=>{const t=n(e),r=e[0],a=r,s="!"===e[1],i=e[2],o=e[3],c=e[4];return[{type:P.Reference,index:t,raw:r,text:a,id:i,image:s,url:o,title:c}]})}},B=[],v=[],z={};for(let e of t){let t,r="inline";switch("type"in e?(r=e.type,t=e.rule):t=e,r){case"block":B.push(t);break;case"code":if("lang"in e){const r=e.lang.toLowerCase();(z[r]=z[r]||[]).push(t)}break;default:const r={exec:(e,r)=>{const n=t.exec(e,r);return E(e,n,r),n}};v.push(r)}}const _={[S.Text]:{exec:e=>s(e,I,e=>{const t=e[0],r=t;return[{index:n(e),raw:t,text:r,type:P.Text}]})},[S.Space]:{exec:e=>s(e,M,e=>{const t=e[0];return[{type:P.Space,raw:t,text:t}]})}},O={[S.ImageOrLink]:{exec:(t,r)=>T(t,b,r,t=>{const s=n(t),i=t[0],o="!"===i.charAt(0),c=t[1],l=function(t){if(!(e.NullChecker.isNullOrEmpty(t)||/^\[/.test(t)&&/\]$/.test(t)))return/^\(/.test(t)&&/\)$/.test(t)&&(t=t.substr(1,t.length-2)),t}(t[2]),u=a(function(t){if(!(e.NullChecker.isNullOrEmpty(t)||/^\(/.test(t)&&/\)$/.test(t)))return/^\[/.test(t)&&/\]$/.test(t)&&(t=t.substr(1,t.length-2)),t}(t[2])??c);return o?[{index:s,type:l?P.Image:P.ImageLike,raw:i,text:c,src:l,ref:u,tokens:r.tokenize(c,A)}]:[{index:s,type:l?P.Link:P.LinkLike,raw:i,text:c,href:l,ref:u,tokens:r.tokenize(c,A)}]})},[S.Code]:{exec:(e,t)=>T(e,k,t,e=>{const t=r(e[1]);return[{type:P.Code,raw:e[0],text:t,index:n(e)}]})},[S.EmphasizedLink]:{exec:(t,r)=>T(t,w,r,t=>{if(t.length<3||e.NullChecker.isNullOrEmpty(t[2]))return null;const a=t[1].length>1?P.Bold:P.Italic,s=t[2];return[{index:n(t),type:a,raw:t[0],text:s,tokens:r.tokenize(s,A)}]})},[S.Emphasize]:{exec:(t,r)=>T(t,C,r,t=>{if(t.length<3||e.NullChecker.isNullOrEmpty(t[2]))return null;const a=t[1].length>1?P.Bold:P.Italic,s=t[2];return[{index:n(t),type:a,raw:t[0],text:s,tokens:r.tokenize(s,A)}]})},[S.StrikeThrough]:{exec:(t,r)=>T(t,$,r,t=>{if(t.length<3||e.NullChecker.isNullOrEmpty(t[2]))return null;const a=P.StrikeThrough,s=t[2];return[{index:n(t),type:a,raw:t[0],text:s,tokens:r.tokenize(s,A)}]})},[S.Quote]:{exec:(t,r)=>T(t,N,r,t=>{if(t.length<3||e.NullChecker.isNullOrEmpty(t[2]))return null;const a=P.Quote,s=t[2];return[{index:n(t),type:a,raw:t[0],text:s,tokens:r.tokenize(s,A)}]})},[S.LineBreak]:{exec:(e,t)=>T(e,R,t,e=>{const t=e[0],r=t;return[{index:n(e),raw:t,text:r,type:P.LineBreak}]})}},E=(e,t,r)=>{const n=t?.length>0&&t[0].index;if(n>0){const a=e.substr(0,n),s=r.tokenize(a,A)||[];Array.prototype.unshift.apply(t,s)}},T=(e,t,r,n)=>{const a=s(e,t,r=>{if(t!=k){const t=k.exec(e);if(t&&t.length&&t.index<r.index)return null}return n(r)});return E(e,a,r),a},A=Object.values(O);Array.prototype.push.apply(A,v),A.push(_[S.Text],_[S.Space]);const D=e=>{const t=[_[S.Text],_[S.Space]],r=e?.toLowerCase()||"";return r&&r in z&&Array.prototype.unshift.apply(t,z[r]),t},H={[S.Paragraph]:{exec:(e,t)=>s(e,y,e=>{const r=e[0],n=r;return[{type:P.Paragraph,raw:r,text:n,tokens:t.tokenize(n,A)}]})},[S.Space]:_[S.Space]},j=(e,t)=>{const r=/^ {0,3}(`{3,}|$|>|[+-]\s|\d+[.\)])/m.test(e)?U:A;return t.tokenize(e,r)},F={[S.HorizontalRule]:{exec:(e,t)=>s(e,o,e=>{const t=e[0],r=t;return[{type:P.HorizontalRule,raw:t,text:r}]})},[S.Heading]:{exec:(e,t)=>s(e,c,e=>{const r=e[2];return[{type:P.Heading,raw:e[0],text:r,level:e[1].length,ref:a(r),tokens:t.tokenize(r,A)}]})},[S.Heading1]:{exec:(e,t)=>s(e,l,e=>{const r=e[1];return[{type:P.Heading,raw:e[0],text:r,level:1,ref:a(r),tokens:t.tokenize(r,A)}]})},[S.Heading2]:{exec:(e,t)=>s(e,u,e=>{const r=e[1];return[{type:P.Heading,raw:e[0],text:r,level:2,ref:a(r),tokens:t.tokenize(r,A)}]})},[S.CodeBlock]:{exec:(e,t)=>s(e,h,e=>{const n=e[0],a=r(n);return[{type:P.CodeBlock,raw:n,text:a,tokens:t.tokenize(a,[])}]})},[S.Fences]:{exec:(e,t)=>s(e,d,e=>{const n=r(e[2]),a=e[1]?.toLowerCase();return[{type:P.CodeBlock,raw:e[0],text:n,lang:a,tokens:t.tokenize(n,D(a))}]})},[S.BlockQuote]:{exec:(e,t)=>s(e,g,e=>{const r=e[0],n=r.replace(/^ {0,3}> */gm,"");return[{type:P.BlockQuote,raw:r,text:n,tokens:t.tokenize(n,[H[S.Paragraph],H[S.Space]])}]})},[S.OrderedList]:{exec:(t,r)=>s(t,p,t=>{const n=t[0],a=n.replace(/^ {0,3}/gm,"").split(m).filter(t=>!e.NullChecker.isNullOrEmpty(t)).map(e=>e.trim());return[{type:P.OrderedList,start:parseInt(/\d/.exec(t[0])[0]),raw:n,text:n,tokens:a.map(e=>({type:P.ListItem,raw:e,text:e,tokens:j(e,r)}))}]})},[S.UnorderedList]:{exec:(t,r)=>s(t,f,t=>{const n=t[0],a=n.replace(/^ {0,3}/gm,"").split(m).filter(t=>!e.NullChecker.isNullOrEmpty(t)).map(e=>e.trim());return[{type:P.UnorderedList,raw:n,text:n,tokens:a.map(e=>({type:P.ListItem,raw:e,text:e,tokens:j(e,r)}))}]})}},U=Object.values(F);return Array.prototype.push.apply(U,B),U.push(H[S.Paragraph],H[S.Space]),[L[S.Comment],L[S.Reference]].concat(U)}!function(e){e.Html="html",e.Text="text",e.Paragraph="paragraph",e.BlockQuote="blockquote",e.Space="space",e.Heading="heading",e.Bold="bold",e.Italic="italic",e.CodeBlock="codeblock",e.Code="code",e.Image="img",e.ImageLike="imglike",e.Link="link",e.LinkLike="linklike",e.LineBreak="br",e.StrikeThrough="strike",e.Quote="quote",e.HorizontalRule="hr",e.OrderedList="ol",e.UnorderedList="ul",e.ListItem="listitem",e.Reference="ref"}(P||(P={})),function(e){e[e.Comment=0]="Comment",e[e.Reference=1]="Reference",e[e.HorizontalRule=2]="HorizontalRule",e[e.Heading=3]="Heading",e[e.Heading1=4]="Heading1",e[e.Heading2=5]="Heading2",e[e.CodeBlock=6]="CodeBlock",e[e.Fences=7]="Fences",e[e.BlockQuote=8]="BlockQuote",e[e.OrderedList=9]="OrderedList",e[e.UnorderedList=10]="UnorderedList",e[e.Paragraph=11]="Paragraph",e[e.EmphasizedLink=12]="EmphasizedLink",e[e.ImageOrLink=13]="ImageOrLink",e[e.Emphasize=14]="Emphasize",e[e.StrikeThrough=15]="StrikeThrough",e[e.Quote=16]="Quote",e[e.Code=17]="Code",e[e.LineBreak=18]="LineBreak",e[e.Text=254]="Text",e[e.Space=255]="Space"}(S||(S={}));const B=/[ \r\n]*\0+[ \r\n]*/g;class HtmlRenderer{_extraItemRender;constructor(e=(e,t)=>e?.text||""){this._extraItemRender=e}_renderContent=t=>{const r=t.tokens;return e.NullChecker.isNullOrEmpty(r)?t.text:this._render(r)};_rendeItem(e,t){const r=this._renderContent,n="\0";switch(e?.type){case P.Reference:return"";case P.Html:return e.raw;case P.BlockQuote:return`<blockquote>\n${r(e)}</blockquote>${n}`;case P.Bold:return`<b>${r(e)}</b>`;case P.CodeBlock:const a=e.lang;return`<pre>${n}<code${a?' class="'+a+'"':""}>${r(e)}</code>${n}</pre>${n}`;case P.Code:return`<code>${r(e)}</code>`;case P.HorizontalRule:return`<hr />${n}`;case P.Heading:const s=e.level;return`<h${s} id="${e.ref}">${r(e)}</h${s}>${n}`;case P.Image:case P.ImageLike:const i=e;let o=i.src,c="";const l=i.text,u=i.ref;if(!o&&u){const e=t.find(e=>e.type===P.Reference&&!0===e.image&&e.id?.toLowerCase()===u.toLowerCase());e&&(o=e.url,c=e.title??"")}return o?`<img src="${o}" alt="${l}"${c?' title="'+c+'"':""} />`:`![${r(e)}]`;case P.Italic:return`<i>${r(e)}</i>`;case P.StrikeThrough:return`<s>${r(e)}</s>`;case P.Quote:return`<q>${r(e)}</q>`;case P.LineBreak:return"<br />\0";case P.OrderedList:return`<ol start="${e.start}">\n${r(e)}</ol>${n}`;case P.UnorderedList:return`<ul>\n${r(e)}</ul>${n}`;case P.ListItem:return`\t<li>${r(e)}</li>${n}`;case P.Link:case P.LinkLike:const h=e;let d=h.href,g="";const f=h.ref;if(!d&&f){const e=t.find(e=>e.type===P.Reference&&!0!==e.image&&e.id?.toLowerCase()===f.toLowerCase());e&&(d=e.url,g=e.title??"")}return d?`<a href="${d}"${g?' title="'+g+'"':""}>${r(e)}</a>`:`[${r(e)}]`;case P.Paragraph:return`<p>${r(e)}</p>${n}`;case P.Text:case P.Space:return e.text}return this._extraItemRender(e,t)}_render(e){let t="";for(let r of e||[])t+=this._rendeItem(r,e);return t}render(e){return t=this._render(e),t?.replace(B,"\n").trim();var t}}class TokenRenderer{_render(t){return e.NullChecker.isNullOrEmpty(t)?"":JSON.stringify(t)}render(t){return"["+t.filter(t=>!e.NullChecker.isNullOrEmpty(t)).map(this._render).join(",")+"]"}}class Parser extends e.Compile.Parser{toHtml(t,r,n){const a=new HtmlRenderer(n);return e.NullChecker.isNullOrEmpty(r)?this.parse(t,a):this.parse(t,L(r),a)}tokenize(e,t){const r=this.parse(e,L(t),new TokenRenderer);return JSON.parse(r)}parse(e,t=L(),r=new HtmlRenderer){return(n=t)&&"object"==typeof n&&"function"==typeof n.render?super.parse(e,L(),t):super.parse(e,t,r);var n}}t.Parser=Parser}(t.Markdown||(t.Markdown={}))}(e.Compile||(e.Compile={}))}(Pacem||(Pacem={}));
@@ -1,6 +1,6 @@
1
1
  /**
2
- * pacem v0.52.1 (https://js.pacem.it)
3
- * Copyright 2025 Pacem (https://pacem.it)
2
+ * pacem v0.52.2 (https://js.pacem.it)
3
+ * Copyright 2026 Pacem (https://pacem.it)
4
4
  * Licensed under Apache-2.0
5
5
  */
6
6
  declare namespace Pacem.Components.Fx {
@@ -1,6 +1,6 @@
1
1
  /**
2
- * pacem v0.52.1 (https://js.pacem.it)
3
- * Copyright 2025 Pacem (https://pacem.it)
2
+ * pacem v0.52.2 (https://js.pacem.it)
3
+ * Copyright 2026 Pacem (https://pacem.it)
4
4
  * Licensed under Apache-2.0
5
5
  */
6
6
  var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
@@ -356,9 +356,11 @@ var Pacem;
356
356
  if (!first) {
357
357
  switch (name) {
358
358
  case 'target':
359
- if (old)
359
+ if (old) {
360
360
  this._removeGradient(old);
361
+ }
361
362
  case 'mode':
363
+ case 'disabled':
362
364
  this._buildGradient();
363
365
  break;
364
366
  }
@@ -375,7 +377,8 @@ var Pacem;
375
377
  return;
376
378
  }
377
379
  let gradients = '';
378
- for (let item of this.items || []) {
380
+ const items = this.disabled ? [] : this.items ?? [];
381
+ for (let item of items) {
379
382
  if (item.hide || item.disabled) {
380
383
  continue;
381
384
  }