@arcgis/core 4.27.0-next.20230421 → 4.27.0-next.20230422

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 (41) hide show
  1. package/assets/esri/core/workers/RemoteClient.js +1 -1
  2. package/assets/esri/core/workers/chunks/085e9a46ee3a8a1a5e20.js +1 -0
  3. package/assets/esri/core/workers/chunks/5f3899efbb967c6e8422.js +1 -0
  4. package/assets/esri/core/workers/chunks/f47046967c3b13996a14.js +1 -0
  5. package/assets/esri/themes/base/widgets/_Editor.scss +1 -0
  6. package/assets/esri/themes/base/widgets/_FeatureMedia.scss +1 -1
  7. package/assets/esri/themes/dark/main.css +1 -1
  8. package/assets/esri/themes/light/main.css +1 -1
  9. package/assets/esri/themes/light/view.css +1 -1
  10. package/assets/esri/widgets/Popup/t9n/Popup.json +1 -1
  11. package/assets/esri/widgets/Popup/t9n/Popup_en.json +1 -1
  12. package/chunks/Button.js +5 -0
  13. package/chunks/ColorSet.js +5 -0
  14. package/chunks/DefaultTheme.js +5 -0
  15. package/chunks/Theme.js +5 -0
  16. package/chunks/Tick.js +5 -0
  17. package/chunks/Tooltip.js +5 -0
  18. package/interfaces.d.ts +6 -0
  19. package/layers/ImageryTileLayer.js +1 -1
  20. package/layers/mixins/ImageryTileMixin.js +1 -1
  21. package/layers/support/SubtypeSublayer.js +1 -1
  22. package/layers/support/rasterFunctions/BandArithmeticFunction.js +1 -1
  23. package/layers/support/rasterFunctions/NDVIFunction.js +1 -1
  24. package/layers/support/rasterFunctions/rasterFunctionHelper.js +1 -1
  25. package/package.json +1 -1
  26. package/support/revision.js +1 -1
  27. package/views/2d/layers/ImageryTileLayerView2D.js +1 -1
  28. package/views/2d/layers/imagery/ImageryTileView2D.js +1 -1
  29. package/views/layers/ImageryTileLayerView.js +1 -1
  30. package/widgets/Editor/CreateFeaturesWorkflow.js +1 -1
  31. package/widgets/Editor/EditorViewModel.js +1 -1
  32. package/widgets/Editor.js +1 -1
  33. package/widgets/Feature/FeatureMedia/chartCommon.js +5 -0
  34. package/widgets/Feature/FeatureMedia/pieChart.js +5 -0
  35. package/widgets/Feature/FeatureMedia/xyChart.js +5 -0
  36. package/widgets/Feature/FeatureMedia.js +1 -1
  37. package/widgets/support/chartUtilsAm5.js +5 -0
  38. package/assets/esri/core/workers/chunks/353e5b283e0f4416684a.js +0 -1
  39. package/assets/esri/core/workers/chunks/81529aee5e6efa3afc83.js +0 -1
  40. package/assets/esri/core/workers/chunks/bcd79124744cd3682c78.js +0 -1
  41. package/widgets/support/am5chartUtils.js +0 -5
@@ -1,5 +0,0 @@
1
- /*
2
- All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
- See https://js.arcgis.com/4.27/esri/copyright.txt for details.
4
- */
5
- import"../../intl.js";import{a as e}from"../../chunks/tslib.es6.js";import{getLocale as t}from"../../intl/locale.js";function i(e){return Number(e)!==e}function s(e){return{}.toString.call(e)}function r(e){if(null!=e&&!u(e)){let t=Number(e);return i(t)&&h(e)&&""!=e?r(e.replace(/[^0-9.\-]+/g,"")):t}return e}function a(e){if(l(e))return new Date(e);if(u(e))return new Date(e);{let t=Number(e);return u(t)?new Date(t):new Date(e)}}function n(e){if(i(e))return"NaN";if(e===1/0)return"Infinity";if(e===-1/0)return"-Infinity";if(0===e&&1/e==-1/0)return"-0";let t=e<0;e=Math.abs(e);let s,r=/^([0-9]+)(?:\.([0-9]+))?(?:e[\+\-]([0-9]+))?$/.exec(""+e),a=r[1],n=r[2]||"";if(void 0===r[3])s=""===n?a:a+"."+n;else{let t=+r[3];if(e<1){s="0."+o("0",t-1)+a+n}else{let e=t-n.length;s=0===e?a+n:e<0?a+n.slice(0,e)+"."+n.slice(e):a+n+o("0",e)}}return t?"-"+s:s}function o(e,t){return new Array(t+1).join(e)}function l(e){return"[object Date]"===s(e)}function h(e){return"string"==typeof e}function u(e){return"number"==typeof e&&Number(e)==e}function d(e){return"object"==typeof e&&null!==e}const c="__§§§__",p="__§§§§__";function g(e,t){const i=e.length;for(let s=0;s<i;++s)if(e[s]===t)return s;return-1}function b(e,t){const i=e.length;for(let s=0;s<i;++s)if(t(e[s]))return!0;return!1}function _(e,t){const i=e.length,s=new Array(i);for(let r=0;r<i;++r)s[r]=t(e[r],r);return s}function f(e,t){const i=e.length;for(let s=0;s<i;++s)t(e[s],s)}function m(e,t){let i=e.length;for(;i>0;)--i,t(e[i],i)}function y(e,t){const i=e.length;for(let s=0;s<i&&t(e[s],s);++s);}function v(e,t){let i=!1,s=0;for(;;){if(s=e.indexOf(t,s),-1===s)return i;i=!0,e.splice(s,1)}}function w(e,t){let i=e.indexOf(t);return-1!==i&&(e.splice(i,1),!0)}function x(e,t){-1===e.indexOf(t)&&e.push(t)}function P(e){const t=e.length,i=new Array(t);for(let s=0;s<t;++s)i[s]=e[s];return i}function k(e,t,i){e.splice(t,0,i)}function D(e,t){e.splice(t,1)}function O(e,t){const i=e.length;for(let s=0;s<i;++s)if(t(e[s],s))return s;return-1}function T(e,t){let i=e.length;for(;i>0;)if(--i,t(e[i],i))return i;return-1}function S(e,t){const i=O(e,t);if(-1!==i)return e[i]}function j(e,t){const i=T(e,t);if(-1!==i)return e[i]}function B(e,t){let i=0,s=e.length,r=!1;for(;i<s;){const a=i+s>>1,n=t(e[a]);n<0?i=a+1:0===n?(r=!0,i=a+1):s=a}return{found:r,index:r?i-1:i}}function E(e,t){let i=0,s=e.length,r=!1;for(;i<s;){const a=i+s>>1,n=t(e[a]);n<0?i=a+1:0===n?(r=!0,s=a):s=a}return{found:r,index:i}}function M(e,t){let i=e.length;for(;i>0;)--i,t(e[i])||e.splice(i,1)}class C{constructor(){Object.defineProperty(this,"_disposed",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this._disposed=!1}isDisposed(){return this._disposed}dispose(){this._disposed||(this._disposed=!0,this._dispose())}}class A{constructor(e){Object.defineProperty(this,"_disposed",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_dispose",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this._disposed=!1,this._dispose=e}isDisposed(){return this._disposed}dispose(){this._disposed||(this._disposed=!0,this._dispose())}}class L extends C{constructor(){super(...arguments),Object.defineProperty(this,"_disposers",{enumerable:!0,configurable:!0,writable:!0,value:[]})}_dispose(){f(this._disposers,(e=>{e.dispose()}))}}class R extends C{constructor(e){super(),Object.defineProperty(this,"_disposers",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this._disposers=e}_dispose(){f(this._disposers,(e=>{e.dispose()}))}}class H extends A{constructor(){super(...arguments),Object.defineProperty(this,"_counter",{enumerable:!0,configurable:!0,writable:!0,value:0})}increment(){return++this._counter,new A((()=>{--this._counter,0===this._counter&&this.dispose()}))}}class I{constructor(){Object.defineProperty(this,"_listeners",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_killed",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_disabled",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_iterating",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_enabled",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_disposed",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this._listeners=[],this._killed=[],this._disabled={},this._iterating=0,this._enabled=!0,this._disposed=!1}isDisposed(){return this._disposed}dispose(){if(!this._disposed){this._disposed=!0;const e=this._listeners;this._iterating=1,this._listeners=null,this._disabled=null;try{f(e,(e=>{e.disposer.dispose()}))}finally{this._killed=null,this._iterating=null}}}hasListeners(){return 0!==this._listeners.length}hasListenersByType(e){return b(this._listeners,(t=>(null===t.type||t.type===e)&&!t.killed))}enable(){this._enabled=!0}disable(){this._enabled=!1}enableType(e){delete this._disabled[e]}disableType(e,t=1/0){this._disabled[e]=t}_removeListener(e){if(0===this._iterating){const t=this._listeners.indexOf(e);if(-1===t)throw new Error("Invalid state: could not remove listener");this._listeners.splice(t,1)}else this._killed.push(e)}_removeExistingListener(e,t,i,s){if(this._disposed)throw new Error("EventDispatcher is disposed");this._eachListener((r=>{r.once!==e||r.type!==t||void 0!==i&&r.callback!==i||r.context!==s||r.disposer.dispose()}))}isEnabled(e){if(this._disposed)throw new Error("EventDispatcher is disposed");return this._enabled&&this._listeners.length>0&&this.hasListenersByType(e)&&void 0===this._disabled[e]}removeType(e){if(this._disposed)throw new Error("EventDispatcher is disposed");this._eachListener((t=>{t.type===e&&t.disposer.dispose()}))}has(e,t,i){return-1!==O(this._listeners,(s=>!0!==s.once&&s.type===e&&(void 0===t||s.callback===t)&&s.context===i))}_shouldDispatch(e){if(this._disposed)throw new Error("EventDispatcher is disposed");const t=this._disabled[e];return u(t)?(t<=1?delete this._disabled[e]:--this._disabled[e],!1):this._enabled}_eachListener(e){++this._iterating;try{f(this._listeners,e)}finally{--this._iterating,0===this._iterating&&0!==this._killed.length&&(f(this._killed,(e=>{this._removeListener(e)})),this._killed.length=0)}}dispatch(e,t){this._shouldDispatch(e)&&this._eachListener((i=>{i.killed||null!==i.type&&i.type!==e||i.dispatch(e,t)}))}_on(e,t,i,s,r,a){if(this._disposed)throw new Error("EventDispatcher is disposed");this._removeExistingListener(e,t,i,s);const n={type:t,callback:i,context:s,shouldClone:r,dispatch:a,killed:!1,once:e,disposer:new A((()=>{n.killed=!0,this._removeListener(n)}))};return this._listeners.push(n),n}onAll(e,t,i=!0){return this._on(!1,null,e,t,i,((i,s)=>e.call(t,s))).disposer}on(e,t,i,s=!0){return this._on(!1,e,t,i,s,((e,s)=>t.call(i,s))).disposer}once(e,t,i,s=!0){const r=this._on(!0,e,t,i,s,((e,s)=>{r.disposer.dispose(),t.call(i,s)}));return r.disposer}off(e,t,i){this._removeExistingListener(!1,e,t,i)}copyFrom(e){if(this._disposed)throw new Error("EventDispatcher is disposed");if(e===this)throw new Error("Cannot copyFrom the same TargetedEventDispatcher");const t=[];return f(e._listeners,(e=>{!e.killed&&e.shouldClone&&(null===e.type?t.push(this.onAll(e.callback,e.context)):e.once?t.push(this.once(e.type,e.callback,e.context)):t.push(this.on(e.type,e.callback,e.context)))})),new R(t)}}function z(e,t){if(!(e>=0&&e<t))throw new Error("Index out of bounds: "+e)}class F{constructor(e=[]){Object.defineProperty(this,"_values",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"events",{enumerable:!0,configurable:!0,writable:!0,value:new I}),this._values=e}get values(){return this._values}contains(e){return-1!==this._values.indexOf(e)}removeValue(e){let t=0,i=this._values.length;for(;t<i;)this._values[t]===e?(this.removeIndex(t),--i):++t}indexOf(e){return g(this._values,e)}get length(){return this._values.length}hasIndex(e){return e>=0&&e<this._values.length}getIndex(e){return this._values[e]}_onPush(e){this.events.isEnabled("push")&&this.events.dispatch("push",{type:"push",target:this,newValue:e})}_onInsertIndex(e,t){this.events.isEnabled("insertIndex")&&this.events.dispatch("insertIndex",{type:"insertIndex",target:this,index:e,newValue:t})}_onSetIndex(e,t,i){this.events.isEnabled("setIndex")&&this.events.dispatch("setIndex",{type:"setIndex",target:this,index:e,oldValue:t,newValue:i})}_onRemoveIndex(e,t){this.events.isEnabled("removeIndex")&&this.events.dispatch("removeIndex",{type:"removeIndex",target:this,index:e,oldValue:t})}_onMoveIndex(e,t,i){this.events.isEnabled("moveIndex")&&this.events.dispatch("moveIndex",{type:"moveIndex",target:this,oldIndex:e,newIndex:t,value:i})}_onClear(e){this.events.isEnabled("clear")&&this.events.dispatch("clear",{type:"clear",target:this,oldValues:e})}setIndex(e,t){z(e,this._values.length);const i=this._values[e];return i!==t&&(this._values[e]=t,this._onSetIndex(e,i,t)),i}insertIndex(e,t){return z(e,this._values.length+1),k(this._values,e,t),this._onInsertIndex(e,t),t}swap(e,t){const i=this._values.length;if(z(e,i),z(t,i),e!==t){const i=this._values[e],s=this._values[t];this._values[e]=s,this._onSetIndex(e,i,s),this._values[t]=i,this._onSetIndex(t,s,i)}}removeIndex(e){z(e,this._values.length);const t=this._values[e];return D(this._values,e),this._onRemoveIndex(e,t),t}moveValue(e,t){let i=this.indexOf(e);if(-1!==i)if(D(this._values,i),null==t){const t=this._values.length;this._values.push(e),this._onMoveIndex(i,t,e)}else k(this._values,t,e),this._onMoveIndex(i,t,e);else null==t?(this._values.push(e),this._onPush(e)):(k(this._values,t,e),this._onInsertIndex(t,e));return e}push(e){return this._values.push(e),this._onPush(e),e}unshift(e){return this.insertIndex(0,e),e}pushAll(e){f(e,(e=>{this.push(e)}))}copyFrom(e){this.pushAll(e._values)}pop(){return this._values.length-1<0?void 0:this.removeIndex(this._values.length-1)}shift(){return this._values.length?this.removeIndex(0):void 0}setAll(e){const t=this._values;this._values=[],this._onClear(t),f(e,(e=>{this._values.push(e),this._onPush(e)}))}clear(){this.setAll([])}*[Symbol.iterator](){const e=this._values.length;for(let t=0;t<e;++t)yield this._values[t]}each(e){f(this._values,e)}eachReverse(e){m(this._values,e)}}class N extends F{constructor(e){super(),Object.defineProperty(this,"_disposed",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"_container",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_events",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this._container=e,this._events=this.events.onAll((e=>{if("clear"===e.type)f(e.oldValues,(e=>{this._onRemoved(e)}));else if("push"===e.type)this._onInserted(e.newValue);else if("setIndex"===e.type)this._onRemoved(e.oldValue),this._onInserted(e.newValue,e.index);else if("insertIndex"===e.type)this._onInserted(e.newValue,e.index);else if("removeIndex"===e.type)this._onRemoved(e.oldValue);else{if("moveIndex"!==e.type)throw new Error("Unknown IListEvent type");this._onRemoved(e.value),this._onInserted(e.value,e.newIndex)}}))}_onInserted(e,t){e._setParent(this._container,!0);const i=this._container._childrenDisplay;void 0===t?i.addChild(e._display):i.addChildAt(e._display,t)}_onRemoved(e){this._container._childrenDisplay.removeChild(e._display),this._container.markDirtyBounds(),this._container.markDirty()}isDisposed(){return this._disposed}dispose(){this._disposed||(this._disposed=!0,this._events.dispose(),f(this.values,(e=>{e.dispose()})))}}class Y{constructor(e){Object.defineProperty(this,"_value",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this._value=e}get value(){return this._value/100}get percent(){return this._value}toString(){return this._value+"%"}interpolate(e,t){return e+this.value*(t-e)}static normalize(e,t,i){return e instanceof Y?e:new Y(t===i?0:100*Math.min(Math.max(1/(i-t)*(e-t),0),1))}}function W(e){return new Y(e)}W(0);const U=W(100),V=W(50);function G(e){return Object.keys(e)}function X(e,t){return G(e).sort(t)}function K(e){return Object.assign({},e)}function q(e,t){G(e).forEach((i=>{t(i,e[i])}))}function Z(e,t){for(let i in e)if(J(e,i)&&!t(i,e[i]))break}function J(e,t){return{}.hasOwnProperty.call(e,t)}function $(e){e.parentNode&&e.parentNode.removeChild(e)}function Q(e,t,i,s){return e.addEventListener(t,i,s||!1),new A((()=>{e.removeEventListener(t,i,s||!1)}))}function ee(e){return Q(window,"resize",(t=>{e()}))}function te(e){switch(e){case"touchevents":return window.hasOwnProperty("TouchEvent");case"pointerevents":return window.hasOwnProperty("PointerEvent");case"mouseevents":return window.hasOwnProperty("MouseEvent");case"wheelevents":return window.hasOwnProperty("WheelEvent");case"keyboardevents":return window.hasOwnProperty("KeyboardEvent")}return!1}function ie(e){return e.pointerId||0}function se(){if(document.activeElement&&document.activeElement!=document.body)if(document.activeElement.blur)document.activeElement.blur();else{let e=document.createElement("button");e.style.position="fixed",e.style.top="0px",e.style.left="-10000px",document.body.appendChild(e),e.focus(),e.blur(),document.body.removeChild(e)}}function re(e){e&&e.focus()}function ae(e){if(te("pointerevents"))return e;if(te("touchevents"))switch(e){case"pointerover":case"pointerdown":return"touchstart";case"pointerout":case"pointerup":return"touchend";case"pointermove":return"touchmove";case"click":return"click";case"dblclick":return"dblclick"}else if(te("mouseevents"))switch(e){case"pointerover":return"mouseover";case"pointerout":return"mouseout";case"pointerdown":return"mousedown";case"pointermove":return"mousemove";case"pointerup":return"mouseup";case"click":return"click";case"dblclick":return"dblclick"}return e}function ne(e){if("undefined"!=typeof Touch&&e instanceof Touch)return!0;if("undefined"!=typeof PointerEvent&&e instanceof PointerEvent&&null!=e.pointerType)switch(e.pointerType){case"touch":case"pen":case 2:return!0;case"mouse":case 4:return!1;default:return!(e instanceof MouseEvent)}else if(null!=e.type&&e.type.match(/^mouse/))return!1;return!0}function oe(e,t,i){e.style[t]=i}function le(e,t){return e.style[t]}function he(e,t){let i=t;for(;;){if(e===i)return!0;if(null===i.parentNode){if(null==i.host)return!1;i=i.host}else i=i.parentNode}}function ue(e,t){return e.target&&he(t.root.dom,e.target)}function de(e,t){e.style.pointerEvents=t?"auto":"none"}function ce(){return/apple/i.test(navigator.vendor)&&"ontouchend"in document}function pe(){return ce()?1:void 0}function ge(e,t){return u(e)?e:null!=e&&u(e.value)&&u(t)?t*e.value:0}function be(e,t=0,i="0"){return"string"!=typeof e&&(e=e.toString()),t>e.length?Array(t-e.length+1).join(i)+e:e}function _e(e){return e.replace(/^[\s]*/,"")}function fe(e){return e.replace(/[\s]*$/,"")}function me(e){return _e(fe(e))}function ye(e){if(void 0===e)return"string";let t=(e=(e=(e=e.toLowerCase().replace(/^\[[^\]]*\]/,"")).replace(/\[[^\]]+\]/,"")).trim()).match(/\/(date|number|duration)$/);return t?t[1]:"number"===e?"number":"date"===e?"date":"duration"===e?"duration":e.match(/[#0]/)?"number":e.match(/[ymwdhnsqaxkzgtei]/)?"date":"string"}function ve(e){return e.replace(/\/(date|number|duration)$/i,"")}function we(e){return e?e.replace(/<[^>]*>/g,""):e}function xe(e){return e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")}function Pe(e,t=!1){const i=new Date(e.getFullYear(),0,0),s=e.getTime()-i.getTime()+60*(i.getTimezoneOffset()-e.getTimezoneOffset())*1e3,r=864e5;return Math.floor(s/r)}function ke(e,t=!1){const i=new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate())),s=i.getUTCDay()||7;i.setUTCDate(i.getUTCDate()+4-s);const r=new Date(Date.UTC(i.getUTCFullYear(),0,1));return Math.ceil(((i.getTime()-r.getTime())/864e5+1)/7)}function De(e,t=!1){const i=new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate())),s=i.getUTCDay()||7;i.setUTCDate(i.getUTCDate()+4-s);return new Date(Date.UTC(i.getUTCFullYear(),0,1)).getFullYear()}function Oe(e,t=!1){const i=ke(new Date(e.getFullYear(),e.getMonth(),1),t);let s=ke(e,t);return 1==s&&(s=53),s-i+1}function Te(e,t,i=1,s=!1){let r=new Date(t,0,4,0,0,0,0);return s&&r.setUTCFullYear(t),7*e+i-((r.getDay()||7)+3)}function Se(e,t){return e>12?e-=12:0===e&&(e=12),null!=t?e+(t-1):e}function je(e,t=!1,i=!1,s=!1){if(s)return t?"Coordinated Universal Time":"UTC";let r=e.toLocaleString("UTC"),a=e.toLocaleString("UTC",{timeZoneName:t?"long":"short"}).substr(r.length);return!1===i&&(a=a.replace(/ (standard|daylight|summer|winter) /i," ")),a}function Be(e){const t=new Date(Date.UTC(2012,0,1,0,0,0,0)),i=new Date(t.toLocaleString("en-US",{timeZone:"UTC"}));return(new Date(t.toLocaleString("en-US",{timeZone:e})).getTime()-i.getTime())/6e4*-1}function Ee(e){let t,i,s,r=e.h,a=e.s,n=e.l;if(0==a)t=i=s=n;else{let e=function(e,t,i){return i<0&&(i+=1),i>1&&(i-=1),i<1/6?e+6*(t-e)*i:i<.5?t:i<2/3?e+(t-e)*(2/3-i)*6:e},o=n<.5?n*(1+a):n+a-n*a,l=2*n-o;t=e(l,o,r+1/3),i=e(l,o,r),s=e(l,o,r-1/3)}return{r:Math.round(255*t),g:Math.round(255*i),b:Math.round(255*s)}}function Me(e){let t=e.r/255,i=e.g/255,s=e.b/255,r=Math.max(t,i,s),a=Math.min(t,i,s),n=0,o=0,l=(r+a)/2;if(r===a)n=o=0;else{let e=r-a;switch(o=l>.5?e/(2-r-a):e/(r+a),r){case t:n=(i-s)/e+(i<s?6:0);break;case i:n=(s-t)/e+2;break;case s:n=(t-i)/e+4}n/=6}return{h:n,s:o,l}}function Ce(e,t){return e?{r:Math.max(0,Math.min(255,e.r+Ae(e.r,t))),g:Math.max(0,Math.min(255,e.g+Ae(e.g,t))),b:Math.max(0,Math.min(255,e.b+Ae(e.b,t))),a:e.a}:e}function Ae(e,t){let i=t>0?255-e:e;return Math.round(i*t)}function Le(e,t){if(e){let i=Ae(Math.min(Math.max(e.r,e.g,e.b),230),t);return{r:Math.max(0,Math.min(255,Math.round(e.r+i))),g:Math.max(0,Math.min(255,Math.round(e.g+i))),b:Math.max(0,Math.min(255,Math.round(e.b+i))),a:e.a}}return e}function Re(e){return(299*e.r+587*e.g+114*e.b)/1e3>=128}function He(e,t){if(void 0===e||1==t)return e;let i=Me(e);return i.s=t,Ee(i)}function Ie(e,t={r:255,g:255,b:255},i={r:255,g:255,b:255}){let s=t,r=i;return Re(i)&&(s=i,r=t),Re(e)?r:s}function ze(e,t){return e||(e=[]),[...e,...t].filter(((e,t,i)=>i.indexOf(e)===t))}function Fe(e){return"#"===e[0]&&(e=e.substr(1)),3==e.length&&(e=e[0].repeat(2)+e[1].repeat(2)+e[2].repeat(2)),parseInt(e,16)}function Ne(e){let t=(e=e.replace(/[ ]/g,"")).match(/^rgb\(([0-9]*),([0-9]*),([0-9]*)\)/i);if(t)t.push("1");else if(t=e.match(/^rgba\(([0-9]*),([0-9]*),([0-9]*),([.0-9]*)\)/i),!t)return 0;let i="";for(let s=1;s<=3;s++){let e=parseInt(t[s]).toString(16);1==e.length&&(e="0"+e),i+=e}return Fe(i)}function Ye(e){return We.fromAny(e)}class We{constructor(e){Object.defineProperty(this,"_hex",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this._hex=0|e}get hex(){return this._hex}get r(){return this._hex>>>16}get g(){return this._hex>>8&255}get b(){return 255&this._hex}toCSS(e=1){return"rgba("+this.r+", "+this.g+", "+this.b+", "+e+")"}toCSSHex(){return"#"+be(this.r.toString(16),2)+be(this.g.toString(16),2)+be(this.b.toString(16),2)}toHSL(e=1){return Me({r:this.r,g:this.g,b:this.b,a:e})}static fromHSL(e,t,i){const s=Ee({h:e,s:t,l:i});return this.fromRGB(s.r,s.g,s.b)}toString(){return this.toCSSHex()}static fromHex(e){return new We(e)}static fromRGB(e,t,i){return new We((0|i)+(t<<8)+(e<<16))}static fromString(e){return new We(Fe(e))}static fromCSS(e){return new We(Ne(e))}static fromAny(e){if(h(e)){if("#"==e[0])return We.fromString(e);if("rgb"==e.substr(0,3))return We.fromCSS(e)}else{if(u(e))return We.fromHex(e);if(e instanceof We)return We.fromHex(e.hex)}throw new Error("Unknown color syntax: "+e)}static alternative(e,t,i){const s=Ie({r:e.r,g:e.g,b:e.b},t?{r:t.r,g:t.g,b:t.b}:void 0,i?{r:i.r,g:i.g,b:i.b}:void 0);return this.fromRGB(s.r,s.g,s.b)}static interpolate(e,t,i,s="rgb"){if("hsl"==s){const s=t.toHSL(),r=i.toHSL();return We.fromHSL(Ve(e,s.h,r.h),Ve(e,s.s,r.s),Ve(e,s.l,r.l))}return We.fromRGB(Ve(e,t.r,i.r),Ve(e,t.g,i.g),Ve(e,t.b,i.b))}static lighten(e,t){const i=Ce({r:e.r,g:e.g,b:e.b},t);return We.fromRGB(i.r,i.g,i.b)}static brighten(e,t){const i=Le({r:e.r,g:e.g,b:e.b},t);return We.fromRGB(i.r,i.g,i.b)}static saturate(e,t){const i=He({r:e.r,g:e.g,b:e.b},t);return We.fromRGB(i.r,i.g,i.b)}}function Ue(t){return e(this,void 0,void 0,(function*(){if(void 0!==t){const e=[];q(t,((t,i)=>{e.push(i.waitForStop())})),yield Promise.all(e)}}))}function Ve(e,t,i){return t+e*(i-t)}function Ge(e,t,i){return e>=1?i:t}function Xe(e,t,i){return new Y(Ve(e,t.percent,i.percent))}function Ke(e,t,i){return We.interpolate(e,t,i)}function qe(e,t){return"number"==typeof e&&"number"==typeof t?Ve:e instanceof Y&&t instanceof Y?Xe:e instanceof We&&t instanceof We?Ke:Ge}const Ze=Math.PI,Je=Ze/180,$e=180/Ze;function Qe(e,t,i){return Math.min(Math.max(e,t),i)}function et(e){return Math.sin(Je*e)}function tt(e){return Math.cos(Je*e)}function it(e){return(e%=360)<0&&(e+=360),e}function st(e,t,i,s,r){let a=Number.MAX_VALUE,n=Number.MAX_VALUE,o=-Number.MAX_VALUE,l=-Number.MAX_VALUE,h=[];h.push(rt(r,i)),h.push(rt(r,s));let u=Math.min(90*Math.floor(i/90),90*Math.floor(s/90)),d=Math.max(90*Math.ceil(i/90),90*Math.ceil(s/90));for(let c=u;c<=d;c+=90)c>=i&&c<=s&&h.push(rt(r,c));for(let c=0;c<h.length;c++){let e=h[c];e.x<a&&(a=e.x),e.y<n&&(n=e.y),e.x>o&&(o=e.x),e.y>l&&(l=e.y)}return{left:e+a,top:t+n,right:e+o,bottom:t+l}}function rt(e,t){return{x:e*tt(t),y:e*et(t)}}function at(e){return e}function nt(e){return e*e*e}function ot(e){return function(t){return 1-e(1-t)}}class lt{constructor(e,t){Object.defineProperty(this,"_entity",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_settings",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_userSettings",{enumerable:!0,configurable:!0,writable:!0,value:{}}),this._entity=e,this._settings=t,q(t,(e=>{this._userSettings[e]=!0}))}get(e,t){const i=this._settings[e];return void 0!==i?i:t}setRaw(e,t){this._settings[e]=t}set(e,t){this._userSettings[e]=!0,this.setRaw(e,t)}remove(e){delete this._userSettings[e],delete this._settings[e]}setAll(e){G(e).forEach((t=>{this.set(t,e[t])}))}_eachSetting(e){q(this._settings,e)}apply(){const e={stateAnimationEasing:!0,stateAnimationDuration:!0},t=this._entity.states.lookup("default");this._eachSetting(((i,s)=>{e[i]||(e[i]=!0,this!==t&&(i in t._settings||(t._settings[i]=this._entity.get(i))),this._entity.set(i,s))}))}applyAnimate(e){null==e&&(e=this._settings.stateAnimationDuration),null==e&&(e=this.get("stateAnimationDuration",this._entity.get("stateAnimationDuration",0)));let t=this._settings.stateAnimationEasing;null==t&&(t=this.get("stateAnimationEasing",this._entity.get("stateAnimationEasing",nt)));const i=this._entity.states.lookup("default"),s={stateAnimationEasing:!0,stateAnimationDuration:!0},r={};return this._eachSetting(((a,n)=>{if(!s[a]){s[a]=!0,this!=i&&(a in i._settings||(i._settings[a]=this._entity.get(a)));const o=this._entity.animate({key:a,to:n,duration:e,easing:t});o&&(r[a]=o)}})),r}}class ht{constructor(e){Object.defineProperty(this,"_states",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"_entity",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this._entity=e}lookup(e){return this._states[e]}create(e,t){const i=this._states[e];if(i)return i.setAll(t),i;{const i=new lt(this._entity,t);return this._states[e]=i,i}}remove(e){delete this._states[e]}apply(e){const t=this._states[e];t&&t.apply(),this._entity._applyState(e)}applyAnimate(e,t){let i;const s=this._states[e];return s&&(i=s.applyAnimate(t)),this._entity._applyStateAnimated(e,t),i}}class ut{constructor(){Object.defineProperty(this,"version",{enumerable:!0,configurable:!0,writable:!0,value:"5.3.11"}),Object.defineProperty(this,"licenses",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"entitiesById",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"rootElements",{enumerable:!0,configurable:!0,writable:!0,value:[]})}}const dt=new ut;function ct(e){dt.licenses.push(e)}function pt(e,t){return e===t?0:e<t?-1:1}function gt(e,t,i){const s=e.length,r=t.length,a=Math.min(s,r);for(let n=0;n<a;++n){const s=i(e[n],t[n]);if(0!==s)return s}return pt(s,r)}class bt{constructor(e){Object.defineProperty(this,"_entity",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_callbacks",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"_disabled",{enumerable:!0,configurable:!0,writable:!0,value:{}}),this._entity=e}add(e,t){let i=this._callbacks[e];return void 0===i&&(i=this._callbacks[e]=[]),i.push(t),this._entity._markDirtyKey(e),new A((()=>{w(i,t)&&this._entity._markDirtyKey(e)}))}remove(e){const t=this._callbacks[e];void 0!==t&&(delete this._callbacks[e],0!==t.length&&this._entity._markDirtyKey(e))}enable(e){this._disabled[e]&&(delete this._disabled[e],this._entity._markDirtyKey(e))}disable(e){this._disabled[e]||(this._disabled[e]=!0,this._entity._markDirtyKey(e))}fold(e,t){if(!this._disabled[e]){const i=this._callbacks[e];if(void 0!==i)for(let s=0,r=i.length;s<r;++s)t=i[s](t,this._entity,e)}return t}}class _t{constructor(e,t,i,s,r,a,n){Object.defineProperty(this,"_animation",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_from",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_to",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_duration",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_easing",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_loops",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_interpolate",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_oldTime",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_time",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"_stopped",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"_playing",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"events",{enumerable:!0,configurable:!0,writable:!0,value:new I}),this._animation=e,this._from=t,this._to=i,this._duration=s,this._easing=r,this._loops=a,this._interpolate=qe(t,i),this._oldTime=n}get to(){return this._to}get from(){return this._from}get playing(){return this._playing}get stopped(){return this._stopped}stop(){this._stopped||(this._stopped=!0,this._playing=!1,this.events.isEnabled("stopped")&&this.events.dispatch("stopped",{type:"stopped",target:this}))}pause(){this._playing=!1,this._oldTime=null}play(){this._stopped||this._playing||(this._playing=!0,this._animation._startAnimation())}get percentage(){return this._time/this._duration}waitForStop(){return new Promise(((e,t)=>{if(this._stopped)e();else{const t=()=>{i.dispose(),e()},i=this.events.on("stopped",t)}}))}_checkEnded(){return!(this._loops>1)||(--this._loops,!1)}_run(e){null!==this._oldTime&&(this._time+=e-this._oldTime,this._time>this._duration&&(this._time=this._duration)),this._oldTime=e}_reset(e){this._oldTime=e,this._time=0}_value(e){return this._interpolate(this._easing(e),this._from,this._to)}}let ft=0;class mt{constructor(e){Object.defineProperty(this,"uid",{enumerable:!0,configurable:!0,writable:!0,value:++ft}),Object.defineProperty(this,"_settings",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_privateSettings",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"_settingEvents",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"_privateSettingEvents",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"_prevSettings",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"_prevPrivateSettings",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"_animatingSettings",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"_animatingPrivateSettings",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"_disposed",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"_userProperties",{enumerable:!0,configurable:!0,writable:!0,value:{}}),this._settings=e}_checkDirty(){G(this._settings).forEach((e=>{this._userProperties[e]=!0,this._markDirtyKey(e)}))}resetUserSettings(){this._userProperties={}}_runAnimation(e){if(this.isDisposed())return!1;{let t=!1;return q(this._animatingSettings,((i,s)=>{if(s._stopped)this._stopAnimation(i);else if(s._playing){s._run(e);const r=s.percentage;r>=1?s._checkEnded()?this.set(i,s._value(1)):(t=!0,s._reset(e),this._set(i,s._value(1))):(t=!0,this._set(i,s._value(r)))}})),q(this._animatingPrivateSettings,((i,s)=>{if(s._stopped)this._stopAnimationPrivate(i);else if(s._playing){s._run(e);const r=s.percentage;r>=1?s._checkEnded()?this.setPrivate(i,s._value(1)):(t=!0,s._reset(e),this._setPrivate(i,s._value(1))):(t=!0,this._setPrivate(i,s._value(r)))}})),t}}_markDirtyKey(e){this.markDirty()}_markDirtyPrivateKey(e){this.markDirty()}on(e,t){let i=this._settingEvents[e];return void 0===i&&(i=this._settingEvents[e]=[]),i.push(t),new A((()=>{w(i,t),0===i.length&&delete this._settingEvents[e]}))}onPrivate(e,t){let i=this._privateSettingEvents[e];return void 0===i&&(i=this._privateSettingEvents[e]=[]),i.push(t),new A((()=>{w(i,t),0===i.length&&delete this._privateSettingEvents[e]}))}getRaw(e,t){const i=this._settings[e];return void 0!==i?i:t}get(e,t){return this.getRaw(e,t)}_sendKeyEvent(e,t){const i=this._settingEvents[e];void 0!==i&&f(i,(i=>{i(t,this,e)}))}_sendPrivateKeyEvent(e,t){const i=this._privateSettingEvents[e];void 0!==i&&f(i,(i=>{i(t,this,e)}))}_setRaw(e,t,i){this._prevSettings[e]=t,this._sendKeyEvent(e,i)}setRaw(e,t){const i=this._settings[e];this._settings[e]=t,i!==t&&this._setRaw(e,i,t)}_set(e,t){const i=this._settings[e];this._settings[e]=t,i!==t&&(this._setRaw(e,i,t),this._markDirtyKey(e))}_stopAnimation(e){const t=this._animatingSettings[e];t&&(delete this._animatingSettings[e],t.stop())}set(e,t){return this._set(e,t),this._stopAnimation(e),t}remove(e){e in this._settings&&(this._prevSettings[e]=this._settings[e],delete this._settings[e],this._sendKeyEvent(e,void 0),this._markDirtyKey(e)),this._stopAnimation(e)}removeAll(){f(G(this._settings),(e=>{this.remove(e)}))}getPrivate(e,t){const i=this._privateSettings[e];return void 0!==i?i:t}_setPrivateRaw(e,t,i){this._prevPrivateSettings[e]=t,this._sendPrivateKeyEvent(e,i)}setPrivateRaw(e,t){const i=this._privateSettings[e];this._privateSettings[e]=t,i!==t&&this._setPrivateRaw(e,i,t)}_setPrivate(e,t){const i=this._privateSettings[e];this._privateSettings[e]=t,i!==t&&(this._setPrivateRaw(e,i,t),this._markDirtyPrivateKey(e))}_stopAnimationPrivate(e){const t=this._animatingPrivateSettings[e];t&&(t.stop(),delete this._animatingPrivateSettings[e])}setPrivate(e,t){return this._setPrivate(e,t),this._stopAnimationPrivate(e),t}removePrivate(e){e in this._privateSettings&&(this._prevPrivateSettings[e]=this._privateSettings[e],delete this._privateSettings[e],this._markDirtyPrivateKey(e)),this._stopAnimationPrivate(e)}setAll(e){q(e,((e,t)=>{this.set(e,t)}))}animate(e){const t=e.key,i=e.to,s=e.duration||0,r=e.loops||1,a=void 0===e.from?this.get(t):e.from,n=void 0===e.easing?at:e.easing;if(0===s)this.set(t,i);else{if(void 0!==a&&a!==i){this.set(t,a);const e=this._animatingSettings[t]=new _t(this,a,i,s,n,r,this._animationTime());return this._startAnimation(),e}this.set(t,i)}const o=new _t(this,a,i,s,n,r,null);return o.stop(),o}animatePrivate(e){const t=e.key,i=e.to,s=e.duration||0,r=e.loops||1,a=void 0===e.from?this.getPrivate(t):e.from,n=void 0===e.easing?at:e.easing;if(0===s)this.setPrivate(t,i);else{if(void 0!==a&&a!==i){this.setPrivate(t,a);const e=this._animatingPrivateSettings[t]=new _t(this,a,i,s,n,r,this._animationTime());return this._startAnimation(),e}this.setPrivate(t,i)}const o=new _t(this,a,i,s,n,r,null);return o.stop(),o}_dispose(){}isDisposed(){return this._disposed}dispose(){this._disposed||(this._disposed=!0,this._dispose())}}class yt extends mt{constructor(e,t,i,s=[]){if(super(t),Object.defineProperty(this,"_root",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_user_id",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"states",{enumerable:!0,configurable:!0,writable:!0,value:new ht(this)}),Object.defineProperty(this,"adapters",{enumerable:!0,configurable:!0,writable:!0,value:new bt(this)}),Object.defineProperty(this,"events",{enumerable:!0,configurable:!0,writable:!0,value:this._createEvents()}),Object.defineProperty(this,"_userPrivateProperties",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"_dirty",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"_dirtyPrivate",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"_template",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_templates",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"_internalTemplates",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_defaultThemes",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"_templateDisposers",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"_disposers",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"_runSetup",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"_disposerProperties",{enumerable:!0,configurable:!0,writable:!0,value:{}}),!i)throw new Error("You cannot use `new Class()`, instead use `Class.new()`");this._root=e,this._internalTemplates=s,t.id&&this._registerId(t.id)}static new(e,t,i){const s=new this(e,t,!0);return s._template=i,s._afterNew(),s}static _new(e,t,i=[]){const s=new this(e,t,!0,i);return s._afterNew(),s}_afterNew(){this._checkDirty();let e=!1;const t=this._template;t&&(e=!0,t._setObjectTemplate(this)),f(this._internalTemplates,(t=>{e=!0,t._setObjectTemplate(this)})),e&&this._applyTemplates(!1),this.states.create("default",{}),this._setDefaults()}_afterNewApplyThemes(){this._checkDirty();const e=this._template;e&&e._setObjectTemplate(this),f(this._internalTemplates,(e=>{e._setObjectTemplate(this)})),this.states.create("default",{}),this._setDefaults(),this._applyThemes()}_createEvents(){return new I}get classNames(){return this.constructor.classNames}get className(){return this.constructor.className}_setDefaults(){}_setDefault(e,t){e in this._settings||super.set(e,t)}_setRawDefault(e,t){e in this._settings||super.setRaw(e,t)}_clearDirty(){G(this._dirty).forEach((e=>{this._dirty[e]=!1})),G(this._dirtyPrivate).forEach((e=>{this._dirtyPrivate[e]=!1}))}isDirty(e){return!!this._dirty[e]}isPrivateDirty(e){return!!this._dirtyPrivate[e]}_markDirtyKey(e){this._dirty[e]=!0,super._markDirtyKey(e)}_markDirtyPrivateKey(e){this._dirtyPrivate[e]=!0,super._markDirtyKey(e)}isType(e){return-1!==this.classNames.indexOf(e)}_pushPropertyDisposer(e,t){let i=this._disposerProperties[e];return void 0===i&&(i=this._disposerProperties[e]=[]),i.push(t),t}_disposeProperty(e){const t=this._disposerProperties[e];void 0!==t&&(f(t,(e=>{e.dispose()})),delete this._disposerProperties[e])}set template(e){const t=this._template;t!==e&&(this._template=e,t&&t._removeObjectTemplate(this),e&&e._setObjectTemplate(this),this._applyTemplates())}get template(){return this._template}markDirty(){this._root._addDirtyEntity(this)}_startAnimation(){this._root._addAnimation(this)}_animationTime(){return this._root.animationTime}_applyState(e){}_applyStateAnimated(e,t){}get(e,t){const i=this.adapters.fold(e,this._settings[e]);return void 0!==i?i:t}isUserSetting(e){return this._userProperties[e]||!1}set(e,t){return this._userProperties[e]=!0,super.set(e,t)}setRaw(e,t){this._userProperties[e]=!0,super.setRaw(e,t)}_setSoft(e,t){return this._userProperties[e]?t:super.set(e,t)}remove(e){delete this._userProperties[e],this._removeTemplateProperty(e)}setPrivate(e,t){return this._userPrivateProperties[e]=!0,super.setPrivate(e,t)}setPrivateRaw(e,t){this._userPrivateProperties[e]=!0,super.setPrivateRaw(e,t)}removePrivate(e){delete this._userPrivateProperties[e],this._removeTemplatePrivateProperty(e)}_setTemplateProperty(e,t,i){if(!this._userProperties[t]){e===this._findTemplateByKey(t)&&super.set(t,i)}}_setTemplatePrivateProperty(e,t,i){if(!this._userPrivateProperties[t]){e===this._findTemplateByPrivateKey(t)&&super.setPrivate(t,i)}}_removeTemplateProperty(e){if(!this._userProperties[e]){const t=this._findTemplateByKey(e);t?super.set(e,t._settings[e]):super.remove(e)}}_removeTemplatePrivateProperty(e){if(!this._userPrivateProperties[e]){const t=this._findTemplateByPrivateKey(e);t?super.setPrivate(e,t._privateSettings[e]):super.removePrivate(e)}}_walkParents(e){e(this._root._rootContainer),e(this)}_applyStateByKey(e){const t=this.states.create(e,{}),i={};this._eachTemplate((s=>{const r=s.states.lookup(e);r&&r._apply(t,i)})),q(t._settings,(e=>{i[e]||t._userSettings[e]||t.remove(e)}))}_applyTemplate(e,t){this._templateDisposers.push(e._apply(this,t)),q(e._settings,((e,i)=>{t.settings[e]||this._userProperties[e]||(t.settings[e]=!0,super.set(e,i))})),q(e._privateSettings,((e,i)=>{t.privateSettings[e]||this._userPrivateProperties[e]||(t.privateSettings[e]=!0,super.setPrivate(e,i))})),this._runSetup&&e.setup&&(this._runSetup=!1,e.setup(this))}_findStaticTemplate(e){if(this._template&&e(this._template))return this._template}_eachTemplate(e){this._findStaticTemplate((t=>(e(t),!1))),m(this._internalTemplates,e),f(this._templates,e)}_applyTemplates(e=!0){e&&this._disposeTemplates();const t={settings:{},privateSettings:{},states:{}};this._eachTemplate((e=>{this._applyTemplate(e,t)})),e&&(q(this._settings,(e=>{this._userProperties[e]||t.settings[e]||super.remove(e)})),q(this._privateSettings,(e=>{this._userPrivateProperties[e]||t.privateSettings[e]||super.removePrivate(e)})))}_findTemplate(e){const t=this._findStaticTemplate(e);if(void 0===t){const t=j(this._internalTemplates,e);return void 0===t?S(this._templates,e):t}return t}_findTemplateByKey(e){return this._findTemplate((t=>e in t._settings))}_findTemplateByPrivateKey(e){return this._findTemplate((t=>e in t._privateSettings))}_disposeTemplates(){f(this._templateDisposers,(e=>{e.dispose()})),this._templateDisposers.length=0}_removeTemplates(){f(this._templates,(e=>{e._removeObjectTemplate(this)})),this._templates.length=0}_applyThemes(){let e=!1;const t=[];let i=[];const s=new Set,r=this.get("themeTagsSelf");return r&&f(r,(e=>{s.add(e)})),this._walkParents((r=>{r===this._root._rootContainer&&(e=!0),r._defaultThemes.length>0&&t.push(r._defaultThemes);const a=r.get("themes");a&&i.push(a);const n=r.get("themeTags");n&&f(n,(e=>{s.add(e)}))})),i=t.concat(i),this._removeTemplates(),e&&m(this.classNames,(e=>{const t=[];f(i,(i=>{f(i,(i=>{const r=i._lookupRules(e);r&&m(r,(e=>{if(e.tags.every((e=>s.has(e)))){const i=E(t,(t=>{const i=pt(e.tags.length,t.tags.length);return 0===i?gt(e.tags,t.tags,pt):i}));t.splice(i.index,0,e)}}))}))})),f(t,(e=>{this._templates.push(e.template),e.template._setObjectTemplate(this)}))})),this._applyTemplates(),e&&(this._runSetup=!1),e}_changed(){}_beforeChanged(){if(this.isDirty("id")){const e=this.get("id");e&&this._registerId(e);const t=this._prevSettings.id;t&&delete dt.entitiesById[t]}}_registerId(e){if(dt.entitiesById[e]&&dt.entitiesById[e]!==this)throw new Error('An entity with id "'+e+'" already exists.');dt.entitiesById[e]=this}_afterChanged(){}addDisposer(e){return this._disposers.push(e),e}_dispose(){super._dispose();const e=this._template;e&&e._removeObjectTemplate(this),f(this._internalTemplates,(e=>{e._removeObjectTemplate(this)})),this._removeTemplates(),this._disposeTemplates(),this.events.dispose(),this._disposers.forEach((e=>{e.dispose()})),q(this._disposerProperties,((e,t)=>{f(t,(e=>{e.dispose()}))}));const t=this.get("id");t&&delete dt.entitiesById[t]}setTimeout(e,t){const i=setTimeout((()=>{this.removeDispose(s),e()}),t),s=new A((()=>{clearTimeout(i)}));return this._disposers.push(s),s}removeDispose(e){if(!this.isDisposed()){let t=g(this._disposers,e);t>-1&&this._disposers.splice(t,1)}e.dispose()}hasTag(e){return-1!==g(this.get("themeTags",[]),e)}addTag(e){if(!this.hasTag(e)){const t=this.get("themeTags",[]);t.push(e),this.set("themeTags",t)}}removeTag(e){if(this.hasTag(e)){const t=this.get("themeTags",[]);v(t,e),this.set("themeTags",t)}}_t(e,t,...i){return this._root.language.translate(e,t,...i)}get root(){return this._root}}Object.defineProperty(yt,"className",{enumerable:!0,configurable:!0,writable:!0,value:"Entity"}),Object.defineProperty(yt,"classNames",{enumerable:!0,configurable:!0,writable:!0,value:["Entity"]});class vt{constructor(e,t,i){Object.defineProperty(this,"_settings",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_name",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_template",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this._name=e,this._template=t,this._settings=i}get(e,t){const i=this._settings[e];return void 0!==i?i:t}set(e,t){this._settings[e]=t,this._template._stateChanged(this._name)}remove(e){delete this._settings[e],this._template._stateChanged(this._name)}setAll(e){G(e).forEach((t=>{this._settings[t]=e[t]})),this._template._stateChanged(this._name)}_apply(e,t){q(this._settings,((i,s)=>{t[i]||e._userSettings[i]||(t[i]=!0,e.setRaw(i,s))}))}}class wt{constructor(e){Object.defineProperty(this,"_template",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_states",{enumerable:!0,configurable:!0,writable:!0,value:{}}),this._template=e}lookup(e){return this._states[e]}create(e,t){const i=this._states[e];if(i)return i.setAll(t),i;{const i=new vt(e,this._template,t);return this._states[e]=i,this._template._stateChanged(e),i}}remove(e){delete this._states[e],this._template._stateChanged(e)}_apply(e,t){q(this._states,((i,s)=>{let r=t.states[i];null==r&&(r=t.states[i]={});const a=e.states.create(i,{});s._apply(a,r)}))}}class xt{constructor(){Object.defineProperty(this,"_callbacks",{enumerable:!0,configurable:!0,writable:!0,value:{}})}add(e,t){let i=this._callbacks[e];return void 0===i&&(i=this._callbacks[e]=[]),i.push(t),new A((()=>{w(i,t),0===i.length&&delete this._callbacks[e]}))}remove(e){void 0!==this._callbacks[e]&&delete this._callbacks[e]}_apply(e){const t=[];return q(this._callbacks,((i,s)=>{f(s,(s=>{t.push(e.adapters.add(i,s))}))})),new R(t)}}class Pt{constructor(e,t){if(Object.defineProperty(this,"_settings",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_privateSettings",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"_settingEvents",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"_privateSettingEvents",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"_entities",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"states",{enumerable:!0,configurable:!0,writable:!0,value:new wt(this)}),Object.defineProperty(this,"adapters",{enumerable:!0,configurable:!0,writable:!0,value:new xt}),Object.defineProperty(this,"events",{enumerable:!0,configurable:!0,writable:!0,value:new I}),Object.defineProperty(this,"setup",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),!t)throw new Error("You cannot use `new Class()`, instead use `Class.new()`");this._settings=e}static new(e){return new Pt(e,!0)}get entities(){return this._entities}get(e,t){const i=this._settings[e];return void 0!==i?i:t}setRaw(e,t){this._settings[e]=t}set(e,t){this._settings[e]!==t&&(this.setRaw(e,t),this._entities.forEach((i=>{i._setTemplateProperty(this,e,t)})))}remove(e){e in this._settings&&(delete this._settings[e],this._entities.forEach((t=>{t._removeTemplateProperty(e)})))}removeAll(){q(this._settings,((e,t)=>{this.remove(e)}))}getPrivate(e,t){const i=this._privateSettings[e];return void 0!==i?i:t}setPrivateRaw(e,t){return this._privateSettings[e]=t,t}setPrivate(e,t){return this._privateSettings[e]!==t&&(this.setPrivateRaw(e,t),this._entities.forEach((i=>{i._setTemplatePrivateProperty(this,e,t)}))),t}removePrivate(e){e in this._privateSettings&&(delete this._privateSettings[e],this._entities.forEach((t=>{t._removeTemplatePrivateProperty(e)})))}setAll(e){q(e,((e,t)=>{this.set(e,t)}))}on(e,t){let i=this._settingEvents[e];return void 0===i&&(i=this._settingEvents[e]=[]),i.push(t),new A((()=>{w(i,t),0===i.length&&delete this._settingEvents[e]}))}onPrivate(e,t){let i=this._privateSettingEvents[e];return void 0===i&&(i=this._privateSettingEvents[e]=[]),i.push(t),new A((()=>{w(i,t),0===i.length&&delete this._privateSettingEvents[e]}))}_apply(e,t){const i=[];return q(this._settingEvents,((t,s)=>{f(s,(s=>{i.push(e.on(t,s))}))})),q(this._privateSettingEvents,((t,s)=>{f(s,(s=>{i.push(e.onPrivate(t,s))}))})),this.states._apply(e,t),i.push(this.adapters._apply(e)),i.push(e.events.copyFrom(this.events)),new R(i)}_setObjectTemplate(e){this._entities.push(e)}_removeObjectTemplate(e){v(this._entities,e)}_stateChanged(e){this._entities.forEach((t=>{t._applyStateByKey(e)}))}}class kt extends I{constructor(e){super(),Object.defineProperty(this,"_sprite",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_rendererDisposers",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"_dispatchParents",{enumerable:!0,configurable:!0,writable:!0,value:!0}),this._sprite=e}_makePointerEvent(e,t){return{type:e,originalEvent:t.event,point:t.point,simulated:t.simulated,native:t.native,target:this._sprite}}_onRenderer(e,t){this._sprite.set("interactive",!0),this._sprite._display.interactive=!0;let i=this._rendererDisposers[e];if(void 0===i){const s=this._sprite._display.on(e,(e=>{t.call(this,e)}));i=this._rendererDisposers[e]=new H((()=>{delete this._rendererDisposers[e],s.dispose()}))}return i.increment()}_on(e,t,i,s,r,a){const n=super._on(e,t,i,s,r,a),o=kt.RENDERER_EVENTS[t];return void 0!==o&&(n.disposer=new R([n.disposer,this._onRenderer(t,o)])),n}stopParentDispatch(){this._dispatchParents=!1}dispatchParents(e,t){const i=this._dispatchParents;this._dispatchParents=!0;try{this.dispatch(e,t),this._dispatchParents&&this._sprite.parent&&this._sprite.parent.events.dispatchParents(e,t)}finally{this._dispatchParents=i}}}Object.defineProperty(kt,"RENDERER_EVENTS",{enumerable:!0,configurable:!0,writable:!0,value:{click:function(e){this.isEnabled("click")&&!this._sprite.isDragging()&&this._sprite._hasDown()&&!this._sprite._hasMoved(this._makePointerEvent("click",e))&&this.dispatch("click",this._makePointerEvent("click",e))},rightclick:function(e){this.isEnabled("rightclick")&&this.dispatch("rightclick",this._makePointerEvent("rightclick",e))},middleclick:function(e){this.isEnabled("middleclick")&&this.dispatch("middleclick",this._makePointerEvent("middleclick",e))},dblclick:function(e){this.dispatchParents("dblclick",this._makePointerEvent("dblclick",e))},pointerover:function(e){this.isEnabled("pointerover")&&this.dispatch("pointerover",this._makePointerEvent("pointerover",e))},pointerout:function(e){this.isEnabled("pointerout")&&this.dispatch("pointerout",this._makePointerEvent("pointerout",e))},pointerdown:function(e){this.dispatchParents("pointerdown",this._makePointerEvent("pointerdown",e))},pointerup:function(e){this.isEnabled("pointerup")&&this.dispatch("pointerup",this._makePointerEvent("pointerup",e))},globalpointerup:function(e){this.isEnabled("globalpointerup")&&this.dispatch("globalpointerup",this._makePointerEvent("globalpointerup",e))},globalpointermove:function(e){this.isEnabled("globalpointermove")&&this.dispatch("globalpointermove",this._makePointerEvent("globalpointermove",e))},wheel:function(e){this.dispatchParents("wheel",{type:"wheel",target:this._sprite,originalEvent:e.event,point:e.point})}}});class Dt extends yt{constructor(){super(...arguments),Object.defineProperty(this,"_adjustedLocalBounds",{enumerable:!0,configurable:!0,writable:!0,value:{left:0,right:0,top:0,bottom:0}}),Object.defineProperty(this,"_localBounds",{enumerable:!0,configurable:!0,writable:!0,value:{left:0,right:0,top:0,bottom:0}}),Object.defineProperty(this,"_parent",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_dataItem",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_templateField",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_sizeDirty",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"_isDragging",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"_dragEvent",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_dragPoint",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_isHidden",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"_isShowing",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"_isHiding",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"_isDown",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"_downPoint",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_downPoints",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"_toggleDp",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_dragDp",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_tooltipDp",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_hoverDp",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_focusDp",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_tooltipMoveDp",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_tooltipPointerDp",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_statesHandled",{enumerable:!0,configurable:!0,writable:!0,value:!1})}_afterNew(){this.setPrivateRaw("visible",!0),super._afterNew()}_markDirtyKey(e){super._markDirtyKey(e),"x"!=e&&"y"!=e&&"dx"!=e&&"dy"!=e||(this.markDirtyBounds(),this._addPercentagePositionChildren(),this.markDirtyPosition())}_markDirtyPrivateKey(e){super._markDirtyPrivateKey(e),"x"!=e&&"y"!=e||this.markDirtyPosition()}_removeTemplateField(){this._templateField&&this._templateField._removeObjectTemplate(this)}_createEvents(){return new kt(this)}_processTemplateField(){let e;const t=this.get("templateField");if(t){const i=this.dataItem;if(i){const s=i.dataContext;s&&(e=s[t],e instanceof Pt||!e||(e=Pt.new(e)))}}this._templateField!==e&&(this._removeTemplateField(),this._templateField=e,e&&e._setObjectTemplate(this),this._applyTemplates())}_setDataItem(e){const t=this._dataItem;this._dataItem=e,this._processTemplateField();const i="dataitemchanged";e!=t&&this.events.isEnabled(i)&&this.events.dispatch(i,{type:i,target:this,oldDataItem:t,newDataItem:e})}set dataItem(e){this._setDataItem(e)}get dataItem(){if(this._dataItem)return this._dataItem;{let e=this._parent;for(;e;){if(e._dataItem)return e._dataItem;e=e._parent}}}_addPercentageSizeChildren(){let e=this.parent;e&&(this.get("width")instanceof Y||this.get("height")instanceof Y?x(e._percentageSizeChildren,this):w(e._percentageSizeChildren,this))}_addPercentagePositionChildren(){let e=this.parent;e&&(this.get("x")instanceof Y||this.get("y")instanceof Y?x(e._percentagePositionChildren,this):w(e._percentagePositionChildren,this))}markDirtyPosition(){this._root._addDirtyPosition(this)}updatePivotPoint(){const e=this._localBounds;if(e){const t=this.get("centerX");null!=t&&(this._display.pivot.x=e.left+ge(t,e.right-e.left));const i=this.get("centerY");null!=i&&(this._display.pivot.y=e.top+ge(i,e.bottom-e.top))}}_beforeChanged(){if(super._beforeChanged(),this._handleStates(),this.isDirty("tooltip")){const e=this._prevSettings.tooltip;e&&e.dispose()}if((this.isDirty("layer")||this.isDirty("layerMargin"))&&(this._display.setLayer(this.get("layer"),this.get("layerMargin")),this.markDirtyLayer()),this.isDirty("tooltipPosition")){const e=this._tooltipMoveDp;e&&(e.dispose(),this._tooltipMoveDp=void 0);const t=this._tooltipPointerDp;t&&(t.dispose(),this._tooltipPointerDp=void 0),"pointer"==this.get("tooltipPosition")&&(this._tooltipPointerDp=new R([this.events.on("pointerover",(()=>{this._tooltipMoveDp=this.events.on("globalpointermove",(e=>{this.showTooltip(e.point)}))})),this.events.on("pointerout",(()=>{const e=this._tooltipMoveDp;e&&(e.dispose(),this._tooltipMoveDp=void 0)}))]))}}_handleStates(){this._statesHandled||(this.isDirty("active")&&(this.get("active")?(this.states.applyAnimate("active"),this.set("ariaChecked",!0)):(this.isHidden()||this.states.applyAnimate("default"),this.set("ariaChecked",!1)),this.markDirtyAccessibility()),this.isDirty("disabled")&&(this.get("disabled")?(this.states.applyAnimate("disabled"),this.set("ariaChecked",!1)):(this.isHidden()||this.states.applyAnimate("default"),this.set("ariaChecked",!0)),this.markDirtyAccessibility()),this._statesHandled=!0)}_changed(){super._changed();const e=this._display,t=this.events;if(this.isDirty("draggable")){const i=this.get("draggable");i?(this.set("interactive",!0),this._dragDp=new R([t.on("pointerdown",(e=>{this.dragStart(e)})),t.on("globalpointermove",(e=>{this.dragMove(e)})),t.on("globalpointerup",(e=>{this.dragStop(e)}))])):this._dragDp&&(this._dragDp.dispose(),this._dragDp=void 0),e.cancelTouch=!!i}if(this.isDirty("tooltipText")||this.isDirty("tooltipHTML")||this.isDirty("showTooltipOn")){const e=this.get("tooltipText"),i=this.get("tooltipHTML"),s=this.get("showTooltipOn","hover");this._tooltipDp&&(this._tooltipDp.dispose(),this._tooltipDp=void 0),(e||i)&&("click"==s?this._tooltipDp=new R([t.on("click",(()=>{this.setTimeout((()=>this.showTooltip()),10)})),Q(document,"click",(e=>{this.hideTooltip()}))]):"always"==s||(this._tooltipDp=new R([t.on("pointerover",(()=>{this.showTooltip()})),t.on("pointerout",(()=>{this.hideTooltip()}))])))}if(this.isDirty("toggleKey")){let e=this.get("toggleKey");e&&"none"!=e?this._toggleDp=t.on("click",(()=>{this._isDragging||this.set(e,!this.get(e))})):this._toggleDp&&(this._toggleDp.dispose(),this._toggleDp=void 0)}if(this.isDirty("opacity")&&(e.alpha=Math.max(0,this.get("opacity",1))),this.isDirty("rotation")&&(this.markDirtyBounds(),e.angle=this.get("rotation",0)),this.isDirty("scale")&&(this.markDirtyBounds(),e.scale=this.get("scale",0)),(this.isDirty("centerX")||this.isDirty("centerY"))&&(this.markDirtyBounds(),this.updatePivotPoint()),(this.isDirty("visible")||this.isPrivateDirty("visible")||this.isDirty("forceHidden"))&&(this.get("visible")&&this.getPrivate("visible")&&!this.get("forceHidden")?e.visible=!0:(e.visible=!1,this.hideTooltip()),this.markDirtyBounds(),this.get("focusable")&&this.markDirtyAccessibility()),this.isDirty("width")||this.isDirty("height")){this.markDirtyBounds(),this._addPercentageSizeChildren();const e=this.parent;e&&(this.isDirty("width")&&this.get("width")instanceof Y||this.isDirty("height")&&this.get("height")instanceof Y)&&(e.markDirty(),e._prevWidth=0),this._sizeDirty=!0}if((this.isDirty("maxWidth")||this.isDirty("maxHeight")||this.isPrivateDirty("width")||this.isPrivateDirty("height")||this.isDirty("minWidth")||this.isDirty("minHeight")||this.isPrivateDirty("maxWidth")||this.isPrivateDirty("maxHeight")||this.isPrivateDirty("minWidth")||this.isPrivateDirty("minHeight"))&&(this.markDirtyBounds(),this._sizeDirty=!0),this._sizeDirty&&this._updateSize(),this.isDirty("wheelable")){const t=this.get("wheelable");t&&this.set("interactive",!0),e.wheelable=!!t}if((this.isDirty("tabindexOrder")||this.isDirty("focusableGroup"))&&(this.get("focusable")?this._root._registerTabindexOrder(this):this._root._unregisterTabindexOrder(this)),this.isDirty("filter")&&(e.filter=this.get("filter")),this.isDirty("cursorOverStyle")&&(e.cursorOverStyle=this.get("cursorOverStyle")),this.isDirty("hoverOnFocus")&&(this.get("hoverOnFocus")?this._focusDp=new R([t.on("focus",(()=>{this.showTooltip()})),t.on("blur",(()=>{this.hideTooltip()}))]):this._focusDp&&(this._focusDp.dispose(),this._focusDp=void 0)),this.isDirty("focusable")&&(this.get("focusable")?this._root._registerTabindexOrder(this):this._root._unregisterTabindexOrder(this),this.markDirtyAccessibility()),(this.isDirty("role")||this.isDirty("ariaLive")||this.isDirty("ariaChecked")||this.isDirty("ariaHidden")||this.isDirty("ariaOrientation")||this.isDirty("ariaValueNow")||this.isDirty("ariaValueMin")||this.isDirty("ariaValueMax")||this.isDirty("ariaValueText")||this.isDirty("ariaLabel")||this.isDirty("ariaControls"))&&this.markDirtyAccessibility(),this.isDirty("exportable")&&(e.exportable=this.get("exportable")),this.isDirty("interactive")){const e=this.events;this.get("interactive")?this._hoverDp=new R([e.on("click",(e=>{ne(e.originalEvent)&&(this.getPrivate("touchHovering")||this.setTimeout((()=>{this._handleOver(),(this.get("tooltipText")||this.get("tooltipHTML"))&&this.showTooltip(),this.setPrivateRaw("touchHovering",!0),this.events.dispatch("pointerover",{type:"pointerover",target:e.target,originalEvent:e.originalEvent,point:e.point,simulated:e.simulated})}),10))})),e.on("globalpointerup",(e=>{ne(e.originalEvent)&&(this.getPrivate("touchHovering")&&(this._handleOut(),(this.get("tooltipText")||this.get("tooltipHTML"))&&this.hideTooltip()),this.setPrivateRaw("touchHovering",!1),this.events.dispatch("pointerout",{type:"pointerout",target:e.target,originalEvent:e.originalEvent,point:e.point,simulated:e.simulated})),this._isDown&&this._handleUp(e)})),e.on("pointerover",(()=>{this._handleOver()})),e.on("pointerout",(()=>{this._handleOut()})),e.on("pointerdown",(e=>{this._handleDown(e)}))]):(this._display.interactive=!1,this._hoverDp&&(this._hoverDp.dispose(),this._hoverDp=void 0))}this.isDirty("forceInactive")&&(this._display.inactive=this.get("forceInactive",!1)),"always"==this.get("showTooltipOn")&&this._display.visible&&this.showTooltip()}dragStart(e){this._dragEvent=e,this.events.stopParentDispatch()}dragStop(e){if(this._dragEvent=void 0,this._dragPoint=void 0,this.events.stopParentDispatch(),this._isDragging){this._isDragging=!1;const t="dragstop";this.events.isEnabled(t)&&this.events.dispatch(t,{type:t,target:this,originalEvent:e.originalEvent,point:e.point,simulated:e.simulated})}}_handleOver(){this.isHidden()||(this.get("active")&&this.states.lookup("hoverActive")?this.states.applyAnimate("hoverActive"):this.get("disabled")&&this.states.lookup("hoverDisabled")?this.states.applyAnimate("hoverDisabled"):this.states.applyAnimate("hover"),this.get("draggable")&&this._isDown&&this.states.lookup("down")&&this.states.applyAnimate("down"))}_handleOut(){this.isHidden()||(this.get("active")&&this.states.lookup("active")?this.states.applyAnimate("active"):this.get("disabled")&&this.states.lookup("disabled")?this.states.applyAnimate("disabled"):(this.states.lookup("hover")||this.states.lookup("hoverActive"))&&this.states.applyAnimate("default"),this.get("draggable")&&this._isDown&&this.states.lookup("down")&&this.states.applyAnimate("down"))}_handleUp(e){if(!this.isHidden()){this.get("active")&&this.states.lookup("active")?this.states.applyAnimate("active"):this.get("disabled")&&this.states.lookup("disabled")?this.states.applyAnimate("disabled"):this.states.lookup("down")&&(this.isHover()?this.states.applyAnimate("hover"):this.states.applyAnimate("default")),this._downPoint=void 0;const t=ie(e.originalEvent);delete this._downPoints[t],0==G(this._downPoints).length&&(this._isDown=!1)}}_hasMoved(e){const t=ie(e.originalEvent),i=this._downPoints[t];if(i){const t=Math.abs(i.x-e.point.x),s=Math.abs(i.y-e.point.y);return t>5||s>5}return!1}_hasDown(){return G(this._downPoints).length>0}_handleDown(e){const t=this.parent;if(t&&!this.get("draggable")&&t._handleDown(e),this.get("interactive")&&!this.isHidden()){this.states.lookup("down")&&this.states.applyAnimate("down"),this._downPoint={x:e.point.x,y:e.point.y},this._isDown=!0;const t=ie(e.originalEvent);this._downPoints[t]={x:e.point.x,y:e.point.y}}}dragMove(e){let t=this._dragEvent;if(t){if(t.simulated&&!e.simulated)return!0;let i=0,s=this.parent;for(;null!=s;)i+=s.get("rotation",0),s=s.parent;let r=e.point.x-t.point.x,a=e.point.y-t.point.y;const n=this.events;if(t.simulated&&!this._isDragging){this._isDragging=!0,this._dragEvent=e,this._dragPoint={x:this.x(),y:this.y()};const t="dragstart";n.isEnabled(t)&&n.dispatch(t,{type:t,target:this,originalEvent:e.originalEvent,point:e.point,simulated:e.simulated})}if(this._isDragging){let t=this._dragPoint;this.set("x",t.x+r*tt(i)+a*et(i)),this.set("y",t.y+a*tt(i)-r*et(i));const s="dragged";n.isEnabled(s)&&n.dispatch(s,{type:s,target:this,originalEvent:e.originalEvent,point:e.point,simulated:e.simulated})}else if(Math.hypot(r,a)>5){this._isDragging=!0,this._dragEvent=e,this._dragPoint={x:this.x(),y:this.y()};const t="dragstart";n.isEnabled(t)&&n.dispatch(t,{type:t,target:this,originalEvent:e.originalEvent,point:e.point,simulated:e.simulated})}}}_updateSize(){}_getBounds(){this._localBounds=this._display.getLocalBounds()}depth(){let e=this.parent,t=0;for(;;){if(!e)return t;++t,e=e.parent}}markDirtySize(){this._sizeDirty=!0,this.markDirty()}markDirtyBounds(){if(this.get("isMeasured")){const e=this._display;this._root._addDirtyBounds(this),e.isMeasured=!0,e.invalidateBounds();const t=this.parent;t&&"absolute"!=this.get("position")&&(null==t.get("width")||null==t.get("height")||t.get("layout"))&&t.markDirtyBounds(),this.get("focusable")&&this.isFocus()&&this.markDirtyAccessibility()}}markDirtyAccessibility(){this._root._invalidateAccessibility(this)}markDirtyLayer(){this._display.markDirtyLayer(!0)}markDirty(){super.markDirty(),this.markDirtyLayer()}_updateBounds(){const e=this._adjustedLocalBounds;let t;if(this.get("visible")&&this.getPrivate("visible")&&!this.get("forceHidden")?(this._getBounds(),this._fixMinBounds(this._localBounds),this.updatePivotPoint(),this._adjustedLocalBounds=this._display.getAdjustedBounds(this._localBounds),t=this._adjustedLocalBounds):(t={left:0,right:0,top:0,bottom:0},this._localBounds=t,this._adjustedLocalBounds=t),!e||e.left!==t.left||e.top!==t.top||e.right!==t.right||e.bottom!==t.bottom){const e="boundschanged";this.events.isEnabled(e)&&this.events.dispatch(e,{type:e,target:this}),this.parent&&(this.parent.markDirty(),this.parent.markDirtyBounds())}}_fixMinBounds(e){let t=this.get("minWidth",this.getPrivate("minWidth")),i=this.get("minHeight",this.getPrivate("minHeight"));u(t)&&e.right-e.left<t&&(e.right=e.left+t),u(i)&&e.bottom-e.top<i&&(e.bottom=e.top+i);let s=this.getPrivate("width"),r=this.getPrivate("height");u(s)&&(s>0?e.right=e.left+s:e.left=e.right+s),u(r)&&(r>0?e.bottom=e.top+r:e.top=e.bottom+r)}_removeParent(e){e&&(e.children.removeValue(this),w(e._percentageSizeChildren,this),w(e._percentagePositionChildren,this))}_clearDirty(){super._clearDirty(),this._sizeDirty=!1,this._statesHandled=!1}hover(){this.showTooltip(),this._handleOver()}unhover(){this.hideTooltip(),this._handleOut()}showTooltip(e){const t=this.getTooltip(),i=this.get("tooltipText"),s=this.get("tooltipHTML");if((i||s)&&t){const r=this.get("tooltipPosition"),a=this.getPrivate("tooltipTarget",this);"fixed"!=r&&e||(this._display._setMatrix(),e=this.toGlobal(a._getTooltipPoint())),t.set("pointTo",e),t.set("tooltipTarget",a),t.get("x")||t.set("x",e.x),t.get("y")||t.set("y",e.y),i&&t.label.set("text",i),s&&t.label.set("html",s);const n=this.dataItem;if(n&&t.label._setDataItem(n),"always"==this.get("showTooltipOn")&&(e.x<0||e.x>this._root.width()||e.y<0||e.y>this._root.height()))return void this.hideTooltip();t.label.text.markDirtyText();const o=t.show();return this.setPrivateRaw("showingTooltip",!0),o}}hideTooltip(){const e=this.getTooltip();if(e&&e.get("tooltipTarget")==this.getPrivate("tooltipTarget",this)){let t=e.get("keepTargetHover")&&0==e.get("stateAnimationDuration",0)?400:void 0;const i=e.hide(t);return this.setPrivateRaw("showingTooltip",!1),i}}_getTooltipPoint(){const e=this._localBounds;if(e){let t=0,i=0;return this.get("isMeasured")?(t=e.left+ge(this.get("tooltipX",0),e.right-e.left),i=e.top+ge(this.get("tooltipY",0),e.bottom-e.top)):(t=ge(this.get("tooltipX",0),this.width()),i=ge(this.get("tooltipY",0),this.height())),{x:t,y:i}}return{x:0,y:0}}getTooltip(){let e=this.get("tooltip");if(e)return e;{let e=this.parent;if(e)return e.getTooltip()}}_updatePosition(){const e=this.parent;let t=this.get("dx",0),i=this.get("dy",0),s=this.get("x"),r=this.getPrivate("x"),a=0,n=0;const o=this.get("position");s instanceof Y&&(s=e?e.innerWidth()*s.value+e.get("paddingLeft",0):0),u(s)?a=s+t:null!=r?a=r:e&&"relative"==o&&(a=e.get("paddingLeft",0)+t);let l=this.get("y"),h=this.getPrivate("y");l instanceof Y&&(l=e?e.innerHeight()*l.value+e.get("paddingTop",0):0),u(l)?n=l+i:null!=h?n=h:e&&"relative"==o&&(n=e.get("paddingTop",0)+i);const d=this._display;if(d.x!=a||d.y!=n){d.invalidateBounds(),d.x=a,d.y=n;const e="positionchanged";this.events.isEnabled(e)&&this.events.dispatch(e,{type:e,target:this})}this.getPrivate("showingTooltip")&&this.showTooltip()}x(){let e=this.get("x"),t=this.getPrivate("x");const i=this.parent;return i?e instanceof Y?ge(e,i.innerWidth())+i.get("paddingLeft",0):u(e)?e:null!=t?t:i.get("paddingLeft",this._display.x):this._display.x}y(){let e=this.getPrivate("y");if(null!=e)return e;let t=this.get("y");const i=this.parent;return i?t instanceof Y?ge(t,i.innerHeight())+i.get("paddingTop",0):u(t)?t:null!=e?e:i.get("paddingTop",this._display.y):this._display.y}_dispose(){super._dispose(),this._display.dispose(),this._removeTemplateField(),this._removeParent(this.parent),this._root._removeFocusElement(this);const e=this.get("tooltip");e&&e.dispose(),this.markDirty()}adjustedLocalBounds(){return this._fixMinBounds(this._adjustedLocalBounds),this._adjustedLocalBounds}localBounds(){return this._localBounds}bounds(){const e=this._adjustedLocalBounds,t=this.x(),i=this.y();return{left:e.left+t,right:e.right+t,top:e.top+i,bottom:e.bottom+i}}globalBounds(){const e=this.localBounds(),t=this.toGlobal({x:e.left,y:e.top}),i=this.toGlobal({x:e.right,y:e.top}),s=this.toGlobal({x:e.right,y:e.bottom}),r=this.toGlobal({x:e.left,y:e.bottom});return{left:Math.min(t.x,i.x,s.x,r.x),top:Math.min(t.y,i.y,s.y,r.y),right:Math.max(t.x,i.x,s.x,r.x),bottom:Math.max(t.y,i.y,s.y,r.y)}}_onShow(e){}_onHide(e){}appear(t,i){return e(this,void 0,void 0,(function*(){return yield this.hide(0),i?new Promise(((e,s)=>{this.setTimeout((()=>{e(this.show(t))}),i)})):this.show(t)}))}show(t){return e(this,void 0,void 0,(function*(){if(!this._isShowing){this._isHidden=!1,this._isShowing=!0,this._isHiding=!1,this.states.lookup("default").get("visible")&&this.set("visible",!0),this._onShow(t);const e=this.states.applyAnimate("default",t);yield Ue(e),this._isShowing=!1}}))}hide(t){return e(this,void 0,void 0,(function*(){if(!this._isHiding&&!this._isHidden){this._isHiding=!0,this._isShowing=!1;let e=this.states.lookup("hidden");e||(e=this.states.create("hidden",{opacity:0,visible:!1})),this._isHidden=!0,this._onHide(t);const i=this.states.applyAnimate("hidden",t);yield Ue(i),this._isHiding=!1}}))}isHidden(){return this._isHidden}isShowing(){return this._isShowing}isHiding(){return this._isHiding}isHover(){return this._display.hovering()}isFocus(){return this._root.focused(this)}isDragging(){return this._isDragging}isVisible(){return!(!this.get("visible")||!this.getPrivate("visible")||this.get("forceHidden"))}isVisibleDeep(){return this._parent?this._parent.isVisibleDeep()&&this.isVisible():this.isVisible()}compositeOpacity(){const e=this.get("opacity",1);return this._parent?this._parent.compositeOpacity()*e:e}width(){let e=this.get("width"),t=this.get("maxWidth",this.getPrivate("maxWidth")),i=this.get("minWidth",this.getPrivate("minWidth")),s=this.getPrivate("width"),r=0;if(u(s))r=s;else if(null==e)this._adjustedLocalBounds&&(r=this._adjustedLocalBounds.right-this._adjustedLocalBounds.left);else if(e instanceof Y){const t=this.parent;r=t?t.innerWidth()*e.value:this._root.width()*e.value}else u(e)&&(r=e);return u(i)&&(r=Math.max(i,r)),u(t)&&(r=Math.min(t,r)),r}maxWidth(){let e=this.get("maxWidth",this.getPrivate("maxWidth"));if(u(e))return e;{let e=this.get("width");if(u(e))return e}const t=this.parent;return t?t.innerWidth():this._root.width()}maxHeight(){let e=this.get("maxHeight",this.getPrivate("maxHeight"));if(u(e))return e;{let e=this.get("height");if(u(e))return e}const t=this.parent;return t?t.innerHeight():this._root.height()}height(){let e=this.get("height"),t=this.get("maxHeight",this.getPrivate("maxHeight")),i=this.get("minHeight",this.getPrivate("minHeight")),s=this.getPrivate("height"),r=0;if(u(s))r=s;else if(null==e)this._adjustedLocalBounds&&(r=this._adjustedLocalBounds.bottom-this._adjustedLocalBounds.top);else if(e instanceof Y){const t=this.parent;r=t?t.innerHeight()*e.value:this._root.height()*e.value}else u(e)&&(r=e);return u(i)&&(r=Math.max(i,r)),u(t)&&(r=Math.min(t,r)),r}_findStaticTemplate(e){return this._templateField&&e(this._templateField)?this._templateField:super._findStaticTemplate(e)}_walkParents(e){this._parent&&this._walkParent(e)}_walkParent(e){this._parent&&this._parent._walkParent(e),e(this)}get parent(){return this._parent}_setParent(e,t=!1){const i=this._parent;e!==i&&(this.markDirtyBounds(),e.markDirty(),this._parent=e,t&&(this._removeParent(i),e&&(this._addPercentageSizeChildren(),this._addPercentagePositionChildren())),this.markDirtyPosition(),this._applyThemes())}getNumberFormatter(){return this.get("numberFormatter",this._root.numberFormatter)}getDateFormatter(){return this.get("dateFormatter",this._root.dateFormatter)}getDurationFormatter(){return this.get("durationFormatter",this._root.durationFormatter)}toGlobal(e){return this._display.toGlobal(e)}toLocal(e){return this._display.toLocal(e)}_getDownPoint(){const e=this._getDownPointId();if(e)return this._downPoints[e]}_getDownPointId(){if(this._downPoints)return X(this._downPoints,((e,t)=>e>t?1:e<t?-1:0))[0]}toFront(){const e=this.parent;e&&e.children.moveValue(this,e.children.length-1)}toBack(){const e=this.parent;e&&e.children.moveValue(this,0)}}Object.defineProperty(Dt,"className",{enumerable:!0,configurable:!0,writable:!0,value:"Sprite"}),Object.defineProperty(Dt,"classNames",{enumerable:!0,configurable:!0,writable:!0,value:yt.classNames.concat([Dt.className])});class Ot extends yt{constructor(){super(...arguments),Object.defineProperty(this,"_display",{enumerable:!0,configurable:!0,writable:!0,value:this._root._renderer.makeGraphics()}),Object.defineProperty(this,"_backgroundDisplay",{enumerable:!0,configurable:!0,writable:!0,value:this._root._renderer.makeGraphics()}),Object.defineProperty(this,"_clear",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"_pattern",{enumerable:!0,configurable:!0,writable:!0,value:void 0})}_afterNew(){super._afterNewApplyThemes()}get pattern(){return this._pattern}_draw(){}_beforeChanged(){super._beforeChanged(),(this.isDirty("repetition")||this.isDirty("width")||this.isDirty("height")||this.isDirty("rotation")||this.isDirty("color")||this.isDirty("strokeWidth")||this.isDirty("strokeDasharray")||this.isDirty("strokeDashoffset")||this.isDirty("colorOpacity")||this.isDirty("fill")||this.isDirty("fillOpacity"))&&(this._clear=!0)}_changed(){if(super._changed(),this._clear){const e=this.get("repetition",""),t=this.get("width",100),i=this.get("height",100),s=this.get("fill"),r=this.get("fillOpacity",1);this._display.clear(),this._backgroundDisplay.clear(),s&&r>0&&(this._backgroundDisplay.beginFill(s,r),this._backgroundDisplay.drawRect(0,0,t,i),this._backgroundDisplay.endFill()),this._display.angle=this.get("rotation",0),this._draw(),this._pattern=this._root._renderer.createPattern(this._display,this._backgroundDisplay,e,t,i)}}}Object.defineProperty(Ot,"className",{enumerable:!0,configurable:!0,writable:!0,value:"Pattern"}),Object.defineProperty(Ot,"classNames",{enumerable:!0,configurable:!0,writable:!0,value:yt.classNames.concat([Ot.className])});class Tt extends Ot{constructor(){super(...arguments),Object.defineProperty(this,"_image",{enumerable:!0,configurable:!0,writable:!0,value:void 0})}_beforeChanged(){super._beforeChanged(),this._clear=!0,this.isDirty("src")&&this._load()}_draw(){super._draw();const e=this._image;if(e){const t=this.get("width",100),i=this.get("height",100),s=this.get("fit","image");let r=0,a=0;"pattern"==s?(r=t,a=i):(r=e.width,a=e.height,"image"==s&&(this.set("width",r),this.set("height",a)));let n=0,o=0;this.get("centered",!0)&&(n=t/2-r/2,o=i/2-a/2),this._display.image(e,r,a,n,o)}}_load(){const e=this.get("src");if(e){const t=new Image;t.src=e,t.decode().then((()=>{this._image=t,this._draw(),this.events.isEnabled("loaded")&&this.events.dispatch("loaded",{type:"loaded",target:this})})).catch((e=>{}))}}}var St;Object.defineProperty(Tt,"className",{enumerable:!0,configurable:!0,writable:!0,value:"PicturePattern"}),Object.defineProperty(Tt,"classNames",{enumerable:!0,configurable:!0,writable:!0,value:Ot.classNames.concat([Tt.className])}),function(e){e.ADD="lighter",e.COLOR="color",e.COLOR_BURN="color-burn",e.COLOR_DODGE="color-dodge",e.DARKEN="darken",e.DIFFERENCE="difference",e.DST_OVER="destination-over",e.EXCLUSION="exclusion",e.HARD_LIGHT="hard-light",e.HUE="hue",e.LIGHTEN="lighten",e.LUMINOSITY="luminosity",e.MULTIPLY="multiply",e.NORMAL="source-over",e.OVERLAY="overlay",e.SATURATION="saturation",e.SCREEN="screen",e.SOFT_LIGHT="soft-light",e.SRC_ATOP="source-atop",e.XOR="xor"}(St||(St={}));class jt extends Dt{constructor(){super(...arguments),Object.defineProperty(this,"_display",{enumerable:!0,configurable:!0,writable:!0,value:this._root._renderer.makeGraphics()}),Object.defineProperty(this,"_clear",{enumerable:!0,configurable:!0,writable:!0,value:!1})}_beforeChanged(){if(super._beforeChanged(),(this.isDirty("draw")||this.isDirty("svgPath"))&&this.markDirtyBounds(),(this.isDirty("fill")||this.isDirty("stroke")||this.isDirty("visible")||this.isDirty("forceHidden")||this.isDirty("scale")||this.isDirty("fillGradient")||this.isDirty("strokeGradient")||this.isDirty("fillPattern")||this.isDirty("strokePattern")||this.isDirty("fillOpacity")||this.isDirty("strokeOpacity")||this.isDirty("strokeWidth")||this.isDirty("draw")||this.isDirty("blendMode")||this.isDirty("strokeDasharray")||this.isDirty("strokeDashoffset")||this.isDirty("svgPath")||this.isDirty("lineJoin")||this.isDirty("shadowColor")||this.isDirty("shadowBlur")||this.isDirty("shadowOffsetX")||this.isDirty("shadowOffsetY"))&&(this._clear=!0),this._display.crisp=this.get("crisp",!1),this.isDirty("fillGradient")){const e=this.get("fillGradient");if(e){this._display.isMeasured=!0;const t=e.get("target");t&&(this._disposers.push(t.events.on("boundschanged",(()=>{this._markDirtyKey("fill")}))),this._disposers.push(t.events.on("positionchanged",(()=>{this._markDirtyKey("fill")}))))}}if(this.isDirty("strokeGradient")){const e=this.get("strokeGradient");if(e){this._display.isMeasured=!0;const t=e.get("target");t&&(this._disposers.push(t.events.on("boundschanged",(()=>{this._markDirtyKey("stroke")}))),this._disposers.push(t.events.on("positionchanged",(()=>{this._markDirtyKey("stroke")}))))}}}_changed(){if(super._changed(),this._clear){this.markDirtyBounds(),this.markDirtyLayer(),this._display.clear();let e=this.get("strokeDasharray");u(e)&&(e=e<.5?[0]:[e]),this._display.setLineDash(e);const t=this.get("strokeDashoffset");t&&this._display.setLineDashOffset(t);const i=this.get("blendMode",St.NORMAL);this._display.blendMode=i;const s=this.get("draw");s&&s(this._display,this);const r=this.get("svgPath");null!=r&&this._display.svgPath(r)}}_afterChanged(){if(super._afterChanged(),this._clear){const e=this.get("fill"),t=this.get("fillGradient"),i=this.get("fillPattern"),s=this.get("fillOpacity"),r=this.get("stroke"),a=this.get("strokeGradient"),n=this.get("strokePattern"),o=this.get("shadowColor"),l=this.get("shadowBlur"),h=this.get("shadowOffsetX"),u=this.get("shadowOffsetY"),d=this.get("shadowOpacity");if(o&&(l||h||u)&&this._display.shadow(o,l,h,u,d),i){let t=!1;!e||i.get("fill")&&!i.get("fillInherited")||(i.set("fill",e),i.set("fillInherited",!0),t=!0),!r||i.get("color")&&!i.get("colorInherited")||(i.set("color",r),i.set("colorInherited",!0),t=!0),t&&i._changed();const a=i.pattern;a&&(this._display.beginFill(a,s),this._display.endFill(),i instanceof Tt&&i.events.once("loaded",(()=>{this._clear=!0,this.markDirty()})))}else if(t){if(e){const i=t.get("stops",[]);i.length&&f(i,(t=>{t.color&&!t.colorInherited||!e||(t.color=e,t.colorInherited=!0),(null==t.opacity||t.opacityInherited)&&(t.opacity=s,t.opacityInherited=!0)}))}const i=t.getFill(this);i&&(this._display.beginFill(i,s),this._display.endFill())}else e&&(this._display.beginFill(e,s),this._display.endFill());if(r||a||n){const e=this.get("strokeOpacity");let t=this.get("strokeWidth",1);this.get("nonScalingStroke")&&(t/=this.get("scale",1)),this.get("crisp")&&(t/=this._root._renderer.resolution);const i=this.get("lineJoin");if(n){let s=!1;!r||n.get("color")&&!n.get("colorInherited")||(n.set("color",r),n.set("colorInherited",!0),s=!0),s&&n._changed();const a=n.pattern;a&&(this._display.lineStyle(t,a,e,i),this._display.endStroke(),n instanceof Tt&&n.events.once("loaded",(()=>{this._clear=!0,this.markDirty()})))}else if(a){const s=a.get("stops",[]);s.length&&f(s,(t=>{t.color&&!t.colorInherited||!r||(t.color=r,t.colorInherited=!0),(null==t.opacity||t.opacityInherited)&&(t.opacity=e,t.opacityInherited=!0)}));const n=a.getFill(this);n&&(this._display.lineStyle(t,n,e,i),this._display.endStroke())}else r&&(this._display.lineStyle(t,r,e,i),this._display.endStroke())}this.getPrivate("showingTooltip")&&this.showTooltip()}this._clear=!1}}Object.defineProperty(jt,"className",{enumerable:!0,configurable:!0,writable:!0,value:"Graphics"}),Object.defineProperty(jt,"classNames",{enumerable:!0,configurable:!0,writable:!0,value:Dt.classNames.concat([jt.className])});class Bt extends jt{_beforeChanged(){super._beforeChanged(),(this.isDirty("width")||this.isDirty("height")||this.isPrivateDirty("width")||this.isPrivateDirty("height"))&&(this._clear=!0)}_changed(){super._changed(),this._clear&&!this.get("draw")&&this._draw()}_draw(){this._display.drawRect(0,0,this.width(),this.height())}_updateSize(){this.markDirty(),this._clear=!0}}function Et(e,t){e.get("reverseChildren",!1)?e.children.eachReverse(t):e.children.each(t)}Object.defineProperty(Bt,"className",{enumerable:!0,configurable:!0,writable:!0,value:"Rectangle"}),Object.defineProperty(Bt,"classNames",{enumerable:!0,configurable:!0,writable:!0,value:jt.classNames.concat([Bt.className])});class Mt extends yt{}Object.defineProperty(Mt,"className",{enumerable:!0,configurable:!0,writable:!0,value:"Layout"}),Object.defineProperty(Mt,"classNames",{enumerable:!0,configurable:!0,writable:!0,value:yt.classNames.concat([Mt.className])});class Ct extends Mt{updateContainer(e){let t=e.get("paddingLeft",0),i=e.innerWidth(),s=0;Et(e,(e=>{if(e.isVisible()&&"relative"==e.get("position")){let t=e.get("width");if(t instanceof Y){s+=t.value;let r=i*t.value,a=e.get("minWidth",e.getPrivate("minWidth",-1/0));a>r&&(i-=a,s-=t.value);let n=e.get("maxWidth",e.getPrivate("maxWidth",1/0));r>n&&(i-=n,s-=t.value)}else u(t)||(t=e.width()),i-=t+e.get("marginLeft",0)+e.get("marginRight",0)}})),(i<=0||i==1/0)&&(i=.1),Et(e,(e=>{if(e.isVisible()&&"relative"==e.get("position")){let t=e.get("width");if(t instanceof Y){let r=i*t.value/s-e.get("marginLeft",0)-e.get("marginRight",0),a=e.get("minWidth",e.getPrivate("minWidth",-1/0)),n=e.get("maxWidth",e.getPrivate("maxWidth",1/0));r=Math.min(Math.max(a,r),n),e.setPrivate("width",r)}}}));let r=t;Et(e,(e=>{if("relative"==e.get("position"))if(e.isVisible()){let t=e.adjustedLocalBounds(),i=e.get("marginLeft",0),s=e.get("marginRight",0),a=e.get("maxWidth"),n=t.left,o=t.right;a&&o-n>a&&(o=n+a);let l=r+i-n;e.setPrivate("x",l),r=l+o+s}else e.setPrivate("x",void 0)}))}}Object.defineProperty(Ct,"className",{enumerable:!0,configurable:!0,writable:!0,value:"HorizontalLayout"}),Object.defineProperty(Ct,"classNames",{enumerable:!0,configurable:!0,writable:!0,value:Mt.classNames.concat([Ct.className])});class At extends Mt{updateContainer(e){let t=e.get("paddingTop",0),i=e.innerHeight(),s=0;Et(e,(e=>{if(e.isVisible()&&"relative"==e.get("position")){let t=e.get("height");if(t instanceof Y){s+=t.value;let r=i*t.value,a=e.get("minHeight",e.getPrivate("minHeight",-1/0));a>r&&(i-=a,s-=t.value);let n=e.get("maxHeight",e.getPrivate("maxHeight",1/0));r>n&&(i-=n,s-=t.value)}else u(t)||(t=e.height()),i-=t+e.get("marginTop",0)+e.get("marginBottom",0)}})),(i<=0||i==1/0)&&(i=.1),Et(e,(e=>{if(e.isVisible()&&"relative"==e.get("position")){let t=e.get("height");if(t instanceof Y){let r=i*t.value/s-e.get("marginTop",0)-e.get("marginBottom",0),a=e.get("minHeight",e.getPrivate("minHeight",-1/0)),n=e.get("maxHeight",e.getPrivate("maxHeight",1/0));r=Math.min(Math.max(a,r),n),e.setPrivate("height",r)}}}));let r=t;Et(e,(e=>{if("relative"==e.get("position"))if(e.isVisible()){let t=e.adjustedLocalBounds(),i=e.get("marginTop",0),s=t.top,a=t.bottom,n=e.get("maxHeight");n&&a-s>n&&(a=s+n);let o=e.get("marginBottom",0),l=r+i-s;e.setPrivate("y",l),r=l+a+o}else e.setPrivate("y",void 0)}))}}Object.defineProperty(At,"className",{enumerable:!0,configurable:!0,writable:!0,value:"VerticalLayout"}),Object.defineProperty(At,"classNames",{enumerable:!0,configurable:!0,writable:!0,value:Mt.classNames.concat([At.className])});class Lt extends Mt{_afterNew(){this._setRawDefault("maxColumns",Number.MAX_VALUE),super._afterNew()}updateContainer(e){let t=e.get("paddingLeft",0),i=e.get("paddingRight",0),s=e.get("paddingTop",0),r=e.maxWidth()-t-i,a=r,n=1;Et(e,(e=>{if(e.get("visible")&&e.getPrivate("visible")&&!e.get("forceHidden")&&"absolute"!=e.get("position")){let t=e.width();t<a&&(a=t),t>n&&(n=t)}})),a=Qe(a,1,r),n=Qe(n,1,r);let o=1;o=this.get("fixedWidthGrid")?r/n:r/a,o=Math.max(1,Math.floor(o)),o=Math.min(this.get("maxColumns",Number.MAX_VALUE),o);let l=this.getColumnWidths(e,o,n,r),h=s,u=0,d=0;o=l.length;let c=t;Et(e,(e=>{if("relative"==e.get("position")&&e.isVisible()){const i=e.get("marginTop",0),s=e.get("marginBottom",0);let r=e.adjustedLocalBounds(),a=e.get("marginLeft",0),n=e.get("marginRight",0),p=c+a-r.left,g=h+i-r.top;e.setPrivate("x",p),e.setPrivate("y",g),c+=l[u]+n,d=Math.max(d,e.height()+i+s),u++,u>=o&&(u=0,c=t,h+=d)}}))}getColumnWidths(e,t,i,s){let r=0,a=[],n=0;return Et(e,(s=>{let r=s.adjustedLocalBounds();"absolute"!=s.get("position")&&s.isVisible()&&(this.get("fixedWidthGrid")?a[n]=i:a[n]=Math.max(0|a[n],r.right-r.left+s.get("marginLeft",0)+s.get("marginRight",0)),n<e.children.length-1&&(n++,n==t&&(n=0)))})),f(a,(e=>{r+=e})),r>s?t>2?(t-=1,this.getColumnWidths(e,t,i,s)):[s]:a}}Object.defineProperty(Lt,"className",{enumerable:!0,configurable:!0,writable:!0,value:"GridLayout"}),Object.defineProperty(Lt,"classNames",{enumerable:!0,configurable:!0,writable:!0,value:Mt.classNames.concat([Lt.className])});class Rt{static escape(e){return e.replace(/\[\[/g,this.prefix+"1").replace(/([^\/\]]{1})\]\]/g,"$1"+this.prefix+"2").replace(/\]\]/g,this.prefix+"2").replace(/\{\{/g,this.prefix+"3").replace(/\}\}/g,this.prefix+"4").replace(/\'\'/g,this.prefix+"5")}static unescape(e){return e.replace(new RegExp(this.prefix+"1","g"),"[[").replace(new RegExp(this.prefix+"2","g"),"]]").replace(new RegExp(this.prefix+"3","g"),"{{").replace(new RegExp(this.prefix+"4","g"),"}}").replace(new RegExp(this.prefix+"5","g"),"''")}static cleanUp(e){return e.replace(/\[\[/g,"[").replace(/\]\]/g,"]").replace(/\{\{/g,"{").replace(/\}\}/g,"}").replace(/\'\'/g,"'")}static chunk(e,t=!1,i=!1){let s=[];e=this.escape(e);let r=t?e.split("'"):[e];for(let a=0;a<r.length;a++){let e=r[a];if(""!==e)if(a%2==0){e=e.replace(/\]\[/g,"]"+c+"["),e=e.replace(/\[\]/g,"[ ]");let t=e.split(/[\[\]]+/);for(let e=0;e<t.length;e++){let r=this.cleanUp(this.unescape(t[e]));r!==c&&(""!==r&&(e%2==0?s.push({type:"value",text:r}):s.push({type:i?"value":"format",text:"["+r+"]"})))}}else{let t=e.split(/[\[\]]+/);for(let e=0;e<t.length;e++){let i=this.cleanUp(this.unescape(t[e]));""!==i&&(e%2==0?s.push({type:"text",text:i}):this.isImage(i)?s.push({type:"image",text:"["+i+"]"}):s.push({type:"format",text:"["+i+"]"}))}}}return s}static isImage(e){return!!e.match(/img[ ]?:/)}static getTextStyle(e){let t={};if(""==e||"[ ]"==e)return{};const i=e.match(/('[^']*')|("[^"]*")/gi);if(i)for(let r=0;r<i.length;r++)e=e.replace(i[r],i[r].replace(/['"]*/g,"").replace(/[ ]+/g,"+"));let s=e.match(/([\w\-]*:[\s]?[^;\s\]]*)|(\#[\w]{1,6})|([\w\-]+)|(\/)/gi);if(!s)return{};for(let r=0;r<s.length;r++)if(s[r].match(/^(normal|bold|bolder|lighter|100|200|300|400|500|600|700|800|900)$/i))t.fontWeight=s[r];else if(s[r].match(/^(underline|line-through)$/i))t.textDecoration=s[r];else if("/"==s[r]);else if(s[r].match(/:/)){const e=s[r].replace("+"," ").split(/:[ ]*/);t[e[0]]=e[1]}else t.fill=We.fromString(s[r]);return t}}function Ht(e,t){if(null!=t){t=""+t;let i,s=(t=Rt.escape(t)).match(/\{([^}]+)\}/g);if(s)for(i=0;i<s.length;i++){let r=It(e,s[i].replace(/\{([^}]+)\}/,"$1"));null==r&&(r=""),t=t.split(s[i]).join(r)}t=Rt.unescape(t)}else t="";return t}function It(e,t,i){let s;const r=e.dataItem;let a,n=[],o=/([^.]+)\(([^)]*)\)|([^.]+)/g;for(;a=o.exec(t),null!==a;)if(a[3]){n.push({prop:a[3]});const t=e.getDateFormatter().get("dateFields",[]),i=e.getNumberFormatter().get("numericFields",[]),s=e.getDurationFormatter().get("durationFields",[]);-1!==t.indexOf(a[3])?n.push({method:"formatDate",params:[]}):-1!==i.indexOf(a[3])?n.push({method:"formatNumber",params:[]}):-1!==s.indexOf(a[3])&&n.push({method:"formatDuration",params:[]})}else{let e=[];if(""!=me(a[2])){let t,i=/'([^']*)'|"([^"]*)"|([0-9\-]+)/g;for(;t=i.exec(a[2]),null!==t;)e.push(t[1]||t[2]||t[3])}n.push({method:a[1],params:e})}if(r){s=Ft(e,n,r._settings),(null==s||d(s))&&(s=Ft(e,n,r));let i=r.dataContext;null==s&&i&&(s=Ft(e,n,i),null==s&&(s=Ft(e,[{prop:t}],i)),null==s&&i.dataContext&&(s=Ft(e,n,i.dataContext))),null==s&&r.component&&r.component.dataItem!==r&&(s=It(r.component,t))}return null==s&&(s=Ft(e,n,e)),null==s&&e.parent&&(s=It(e.parent,t)),s}function zt(e,t){const i=e.getPrivate("customData");if(d(i))return i[t]}function Ft(e,t,s,n){let o=s,h=!1;for(let u=0,d=t.length;u<d;u++){let d=t[u];if(d.prop){if(o instanceof Dt){let e=o.get(d.prop);null==e&&(e=o.getPrivate(d.prop)),null==e&&(e=zt(o,d.prop)),null==e&&(e=o[d.prop]),o=e}else if(o.get){let e=o.get(d.prop);null==e&&(e=o[d.prop]),o=e}else o=o[d.prop];if(null==o)return}else switch(d.method){case"formatNumber":let t=r(o);null!=t&&(o=e.getNumberFormatter().format(t,n||d.params[0]||void 0),h=!0);break;case"formatDate":let u=a(o);if(!l(u)||i(u.getTime()))return;null!=u&&(o=e.getDateFormatter().format(u,n||d.params[0]||void 0),h=!0);break;case"formatDuration":let c=r(o);null!=c&&(o=e.getDurationFormatter().format(c,n||d.params[0]||void 0,d.params[1]||void 0),h=!0);break;case"urlEncode":case"encodeURIComponent":o=encodeURIComponent(o);break;default:o[d.method]&&o[d.method].apply(s,d.params)}}if(!h){let t=[{method:"",params:n}];if(null==n)u(o)?(t[0].method="formatNumber",t[0].params=""):l(o)&&(t[0].method="formatDate",t[0].params="");else{let e=ye(n);"number"===e?t[0].method="formatNumber":"date"===e?t[0].method="formatDate":"duration"===e&&(t[0].method="formatDuration")}t[0].method&&(o=Ft(e,t,o))}return o}Object.defineProperty(Rt,"prefix",{enumerable:!0,configurable:!0,writable:!0,value:"__amcharts__"});class Nt extends Dt{constructor(){super(...arguments),Object.defineProperty(this,"_display",{enumerable:!0,configurable:!0,writable:!0,value:this._root._renderer.makeContainer()}),Object.defineProperty(this,"_childrenDisplay",{enumerable:!0,configurable:!0,writable:!0,value:this._root._renderer.makeContainer()}),Object.defineProperty(this,"children",{enumerable:!0,configurable:!0,writable:!0,value:new N(this)}),Object.defineProperty(this,"_percentageSizeChildren",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"_percentagePositionChildren",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"_prevWidth",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"_prevHeight",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"_contentWidth",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"_contentHeight",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"_contentMask",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_vsbd0",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_vsbd1",{enumerable:!0,configurable:!0,writable:!0,value:void 0})}_afterNew(){super._afterNew(),this._display.addChild(this._childrenDisplay)}_dispose(){m(this.allChildren(),(e=>{e.dispose()})),this.getPrivate("htmlElement")&&this._root._removeHTMLContent(this),super._dispose()}_changed(){if(super._changed(),this.isDirty("interactiveChildren")&&(this._display.interactiveChildren=this.get("interactiveChildren",!1)),this.isDirty("layout")&&(this._prevWidth=0,this._prevHeight=0,this.markDirtyBounds(),this._prevSettings.layout&&this.children.each((e=>{e.removePrivate("x"),e.removePrivate("y")}))),(this.isDirty("paddingTop")||this.isDirty("paddingBottom")||this.isDirty("paddingLeft")||this.isDirty("paddingRight"))&&this.children.each((e=>{e.markDirtyPosition()})),this.isDirty("maskContent")){const e=this._childrenDisplay;let t=this._contentMask;this.get("maskContent")?t||(t=Bt.new(this._root,{x:-.5,y:-.5,width:this.width()+1,height:this.height()+1}),this._contentMask=t,e.addChildAt(t._display,0),e.mask=t._display):t&&(e.removeChild(t._display),e.mask=null,t.dispose(),this._contentMask=void 0)}}_updateSize(){super._updateSize(),f(this._percentageSizeChildren,(e=>{e._updateSize()})),f(this._percentagePositionChildren,(e=>{e.markDirtyPosition(),e._updateSize()})),this.updateBackground()}updateBackground(){const e=this.get("background");let t=this._localBounds;if(t&&!this.isHidden()){let i=t.left,s=t.top,r=t.right-i,a=t.bottom-s,n=this.get("maxWidth"),o=this.get("maxHeight");o&&a>o&&(a=o),n&&r>n&&(r=n);let l=this.width(),h=this.height();e&&(e.setAll({width:r,height:a,x:i,y:s}),this._display.interactive&&(e._display.interactive=!0));const u=this._contentMask;u&&u.setAll({width:l+1,height:h+1});const d=this.get("verticalScrollbar");if(d){d.set("height",h),d.set("x",l-d.width()-d.get("marginRight",0)),d.set("end",d.get("start",0)+h/this._contentHeight);const e=d.get("background");e&&e.setAll({width:d.width(),height:h});let t=!0;this._contentHeight<=h&&(t=!1),d.setPrivate("visible",t)}}}_applyThemes(){return!!super._applyThemes()&&(this.eachChildren((e=>{e._applyThemes()})),!0)}_applyState(e){super._applyState(e),this.get("setStateOnChildren")&&this.eachChildren((t=>{t.states.apply(e)}))}_applyStateAnimated(e,t){super._applyStateAnimated(e,t),this.get("setStateOnChildren")&&this.eachChildren((i=>{i.states.applyAnimate(e,t)}))}innerWidth(){return this.width()-this.get("paddingRight",0)-this.get("paddingLeft",0)}innerHeight(){return this.height()-this.get("paddingTop",0)-this.get("paddingBottom",0)}_getBounds(){let e=this.get("width"),t=this.get("height"),i=this.getPrivate("width"),s=this.getPrivate("height"),r={left:0,top:0,right:this.width(),bottom:this.height()},a=this.get("layout"),n=!1,o=!1;if((a instanceof Ct||a instanceof Lt)&&(n=!0),a instanceof At&&(o=!0),null==e&&null==i||null==t&&null==s||this.get("verticalScrollbar")){let e=Number.MAX_VALUE,t=e,i=-e,s=e,a=-e;const l=this.get("paddingLeft",0),h=this.get("paddingTop",0),u=this.get("paddingRight",0),d=this.get("paddingBottom",0);this.children.each((e=>{if("absolute"!=e.get("position")&&e.get("isMeasured")){let r=e.adjustedLocalBounds(),l=e.x(),h=e.y(),u=l+r.left,d=l+r.right,c=h+r.top,p=h+r.bottom;n&&(u-=e.get("marginLeft",0),d+=e.get("marginRight",0)),o&&(c-=e.get("marginTop",0),p+=e.get("marginBottom",0)),u<t&&(t=u),d>i&&(i=d),c<s&&(s=c),p>a&&(a=p)}})),t==e&&(t=0),i==-e&&(i=0),s==e&&(s=0),a==-e&&(a=0),r.left=t-l,r.top=s-h,r.right=i+u,r.bottom=a+d}else;this._contentWidth=r.right-r.left,this._contentHeight=r.bottom-r.top,u(e)&&(r.left=0,r.right=e),u(i)&&(r.left=0,r.right=i),u(t)&&(r.top=0,r.bottom=t),u(s)&&(r.top=0,r.bottom=s),this._localBounds=r}_updateBounds(){const e=this.get("layout");e&&e.updateContainer(this),super._updateBounds(),this.updateBackground()}markDirty(){super.markDirty(),this._root._addDirtyParent(this)}_prepareChildren(){const e=this.innerWidth(),t=this.innerHeight();if(e!=this._prevWidth||t!=this._prevHeight){let i=this.get("layout"),s=!1,r=!1;i&&((i instanceof Ct||i instanceof Lt)&&(s=!0),i instanceof At&&(r=!0)),f(this._percentageSizeChildren,(i=>{if(!s){let t=i.get("width");t instanceof Y&&i.setPrivate("width",t.value*e)}if(!r){let e=i.get("height");e instanceof Y&&i.setPrivate("height",e.value*t)}})),f(this._percentagePositionChildren,(e=>{e.markDirtyPosition(),e.markDirtyBounds()})),this._prevWidth=e,this._prevHeight=t,this._sizeDirty=!0,this.updateBackground()}this._handleStates()}_updateChildren(){if(this.isDirty("html")){const e=this.get("html");e&&""!==e?this._root._setHTMLContent(this,Ht(this,this.get("html",""))):this._root._removeHTMLContent(this),this._root._positionHTMLElement(this)}if(this.isDirty("verticalScrollbar")){const e=this.get("verticalScrollbar");if(e){e._setParent(this),e.children.removeValue(e.startGrip),e.children.removeValue(e.endGrip),this.set("maskContent",!0),this.set("paddingRight",e.width()+e.get("marginRight",0)+e.get("marginLeft",0));let t=this.get("background");t||(t=this.set("background",Bt.new(this._root,{themeTags:["background"],fillOpacity:0,fill:this._root.interfaceColors.get("alternativeBackground")}))),this._vsbd0=this.events.on("wheel",(t=>{const i=t.originalEvent;if(!ue(i,this))return;i.preventDefault();let s=i.deltaY/5e3;const r=e.get("start",0),a=e.get("end",1);r+s<=0&&(s=-r),a+s>=1&&(s=1-a),r+s>=0&&a+s<=1&&(e.set("start",r+s),e.set("end",a+s))})),this._disposers.push(this._vsbd0),this._vsbd1=e.events.on("rangechanged",(()=>{let t=this._contentHeight;const i=this._childrenDisplay,s=this._contentMask;i.y=-e.get("start")*t,i.markDirtyLayer(),s&&(s._display.y=-i.y,i.mask=s._display)})),this._disposers.push(this._vsbd1),this._display.addChild(e._display)}else{const e=this._prevSettings.verticalScrollbar;if(e){this._display.removeChild(e._display),this._vsbd0&&this._vsbd0.dispose(),this._vsbd1&&this._vsbd1.dispose();this._childrenDisplay.y=0,this.setPrivate("height",void 0),this.set("maskContent",!1),this.set("paddingRight",void 0)}}}if(this.isDirty("background")){const e=this._prevSettings.background;e&&this._display.removeChild(e._display);const t=this.get("background");t instanceof Dt&&(t.set("isMeasured",!1),t._setParent(this),this._display.addChildAt(t._display,0))}if(this.isDirty("mask")){const t=this.get("mask"),i=this._prevSettings.mask;if(i&&(this._display.removeChild(i._display),i!=t&&i.dispose()),t){var e=t.parent;e&&e.children.removeValue(t),t._setParent(this),this._display.addChildAt(t._display,0),this._childrenDisplay.mask=t._display}}}_processTemplateField(){super._processTemplateField(),this.children.each((e=>{e._processTemplateField()}))}walkChildren(e){this.children.each((t=>{t instanceof Nt&&t.walkChildren(e),e(t)}))}eachChildren(e){const t=this.get("background");t&&e(t);const i=this.get("verticalScrollbar");i&&e(i);const s=this.get("mask");s&&e(s),this.children.values.forEach((t=>{e(t)}))}allChildren(){const e=[];return this.eachChildren((t=>{e.push(t)})),e}_setDataItem(e){const t=e!==this._dataItem;super._setDataItem(e);const i=this.get("html","");i&&""!==i&&t&&this._root._setHTMLContent(this,Ht(this,i))}}Object.defineProperty(Nt,"className",{enumerable:!0,configurable:!0,writable:!0,value:"Container"}),Object.defineProperty(Nt,"classNames",{enumerable:!0,configurable:!0,writable:!0,value:Dt.classNames.concat([Nt.className])});class Yt extends Dt{constructor(){super(...arguments),Object.defineProperty(this,"textStyle",{enumerable:!0,configurable:!0,writable:!0,value:this._root._renderer.makeTextStyle()}),Object.defineProperty(this,"_display",{enumerable:!0,configurable:!0,writable:!0,value:this._root._renderer.makeText("",this.textStyle)}),Object.defineProperty(this,"_textStyles",{enumerable:!0,configurable:!0,writable:!0,value:["textAlign","fontFamily","fontSize","fontStyle","fontWeight","fontStyle","fontVariant","textDecoration","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY","shadowOpacity","lineHeight","baselineRatio","direction","textBaseline","oversizedBehavior","breakWords","ellipsis","minScale"]}),Object.defineProperty(this,"_originalScale",{enumerable:!0,configurable:!0,writable:!0,value:void 0})}_updateBounds(){if(this.get("text"))super._updateBounds();else{let e={left:0,right:0,top:0,bottom:0};this._adjustedLocalBounds=e}}_changed(){super._changed(),this._display.clear();let e=this.textStyle;if(this.isDirty("opacity")){let e=this.get("opacity",1);this._display.alpha=e}if((this.isDirty("text")||this.isDirty("populateText"))&&(this._display.text=this._getText(),this.markDirtyBounds(),"tooltip"==this.get("role")&&this._root.updateTooltip(this)),this.isPrivateDirty("tooltipElement")){this.getPrivate("tooltipElement")&&this._disposers.push(new A((()=>{this._root._removeTooltipElement(this)})))}if(this.isDirty("width")&&(e.wordWrapWidth=this.width(),this.markDirtyBounds()),this.isDirty("oversizedBehavior")&&(e.oversizedBehavior=this.get("oversizedBehavior","none"),this.markDirtyBounds()),this.isDirty("breakWords")&&(e.breakWords=this.get("breakWords",!1),this.markDirtyBounds()),this.isDirty("ellipsis")&&(e.ellipsis=this.get("ellipsis"),this.markDirtyBounds()),this.isDirty("ignoreFormatting")&&(e.ignoreFormatting=this.get("ignoreFormatting",!1),this.markDirtyBounds()),this.isDirty("minScale")&&(e.minScale=this.get("minScale",0),this.markDirtyBounds()),this.isDirty("fill")){let t=this.get("fill");t&&(e.fill=t)}if(this.isDirty("fillOpacity")){let t=this.get("fillOpacity",1);t&&(e.fillOpacity=t)}(this.isDirty("maxWidth")||this.isPrivateDirty("maxWidth"))&&(e.maxWidth=this.get("maxWidth",this.getPrivate("maxWidth")),this.markDirtyBounds()),(this.isDirty("maxHeight")||this.isPrivateDirty("maxHeight"))&&(e.maxHeight=this.get("maxHeight",this.getPrivate("maxHeight")),this.markDirtyBounds()),f(this._textStyles,(t=>{this._dirty[t]&&(e[t]=this.get(t),this.markDirtyBounds())})),e.fontSize=this.get("fontSize"),e.fontFamily=this.get("fontFamily"),this._display.style=e,this.isDirty("role")&&"tooltip"==this.get("role")&&this._root.updateTooltip(this)}_getText(){const e=this.get("text","");return this.get("populateText")?Ht(this,e):e}markDirtyText(){this._display.text=this._getText(),"tooltip"==this.get("role")&&this._root.updateTooltip(this),this.markDirtyBounds(),this.markDirty()}_setDataItem(e){super._setDataItem(e),this.get("populateText")&&this.markDirtyText()}getNumberFormatter(){return this.parent?this.parent.getNumberFormatter():super.getNumberFormatter()}getDateFormatter(){return this.parent?this.parent.getDateFormatter():super.getDateFormatter()}getDurationFormatter(){return this.parent?this.parent.getDurationFormatter():super.getDurationFormatter()}}Object.defineProperty(Yt,"className",{enumerable:!0,configurable:!0,writable:!0,value:"Text"}),Object.defineProperty(Yt,"classNames",{enumerable:!0,configurable:!0,writable:!0,value:Dt.classNames.concat([Yt.className])});class Wt{constructor(){Object.defineProperty(this,"_observer",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_targets",{enumerable:!0,configurable:!0,writable:!0,value:[]}),this._observer=new ResizeObserver((e=>{f(e,(e=>{f(this._targets,(t=>{t.target===e.target&&t.callback()}))}))}))}addTarget(e,t){this._observer.observe(e,{box:"border-box"}),this._targets.push({target:e,callback:t})}removeTarget(e){this._observer.unobserve(e),M(this._targets,(t=>t.target!==e))}}class Ut{constructor(){Object.defineProperty(this,"_timer",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,"_targets",{enumerable:!0,configurable:!0,writable:!0,value:[]})}addTarget(e,t){if(null===this._timer){let e=null;const t=()=>{const i=Date.now();(null===e||i>e+Ut.delay)&&(e=i,f(this._targets,(e=>{let t=e.target.getBoundingClientRect();t.width===e.size.width&&t.height===e.size.height||(e.size=t,e.callback())}))),0===this._targets.length?this._timer=null:this._timer=requestAnimationFrame(t)};this._timer=requestAnimationFrame(t)}let i={width:0,height:0,left:0,right:0,top:0,bottom:0,x:0,y:0};this._targets.push({target:e,callback:t,size:i})}removeTarget(e){M(this._targets,(t=>t.target!==e)),0===this._targets.length&&null!==this._timer&&(cancelAnimationFrame(this._timer),this._timer=null)}}Object.defineProperty(Ut,"delay",{enumerable:!0,configurable:!0,writable:!0,value:200});let Vt=null;function Gt(){return null===Vt&&(Vt="undefined"!=typeof ResizeObserver?new Wt:new Ut),Vt}class Xt{constructor(e,t){Object.defineProperty(this,"_sensor",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_element",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_listener",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_disposed",{enumerable:!0,configurable:!0,writable:!0,value:!1}),this._sensor=Gt(),this._element=e,this._listener=ee(t),this._sensor.addTarget(e,t)}isDisposed(){return this._disposed}dispose(){this._disposed||(this._disposed=!0,this._sensor.removeTarget(this._element),this._listener.dispose())}get sensor(){return this._sensor}}class Kt extends yt{}Object.defineProperty(Kt,"className",{enumerable:!0,configurable:!0,writable:!0,value:"InterfaceColors"}),Object.defineProperty(Kt,"classNames",{enumerable:!0,configurable:!0,writable:!0,value:yt.classNames.concat([Kt.className])});class qt extends Nt{constructor(){super(...arguments),Object.defineProperty(this,"_text",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_textKeys",{enumerable:!0,configurable:!0,writable:!0,value:["text","fill","fillOpacity","textAlign","fontFamily","fontSize","fontStyle","fontWeight","fontStyle","fontVariant","textDecoration","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY","shadowOpacity","lineHeight","baselineRatio","direction","textBaseline","oversizedBehavior","breakWords","ellipsis","minScale","populateText","role","ignoreFormatting"]})}get text(){return this._text}_afterNew(){super._afterNew(),this._makeText(),f(this._textKeys,(e=>{const t=this.get(e);null!=t&&this._text.set(e,t)})),""!==this.get("html","")&&this._text.set("text",""),this.onPrivate("maxWidth",(()=>{this._setMaxDimentions()})),this.onPrivate("maxHeight",(()=>{this._setMaxDimentions()}))}_makeText(){this._text=this.children.push(Yt.new(this._root,{}))}_updateChildren(){if(super._updateChildren(),f(this._textKeys,(e=>{this._text.set(e,this.get(e))})),this.isDirty("maxWidth")&&this._setMaxDimentions(),this.isDirty("maxHeight")&&this._setMaxDimentions(),this.isDirty("rotation")&&this._setMaxDimentions(),""!==this.get("html","")?this._text.set("text",""):this._text.set("text",this.get("text")),this.isDirty("textAlign")||this.isDirty("width")){const e=this.get("textAlign");let t;null!=this.get("width")?t="right"==e?U:"center"==e?V:0:"left"==e||"start"==e?t=this.get("paddingLeft"):"right"!=e&&"end"!=e||(t=-this.get("paddingRight")),this.text.set("x",t)}}_setMaxDimentions(){const e=this.get("rotation"),t=90==e||270==e||-90==e,i=this.get("maxWidth",this.getPrivate("maxWidth",1/0));u(i)?this.text.set(t?"maxHeight":"maxWidth",i-this.get("paddingLeft",0)-this.get("paddingRight",0)):this.text.set(t?"maxHeight":"maxWidth",void 0);const s=this.get("maxHeight",this.getPrivate("maxHeight",1/0));u(s)?this.text.set(t?"maxWidth":"maxHeight",s-this.get("paddingTop",0)-this.get("paddingBottom",0)):this.text.set(t?"maxWidth":"maxHeight",void 0)}_setDataItem(e){super._setDataItem(e),this._markDirtyKey("text"),this.text.get("populateText")&&this.text.markDirtyText()}getText(){return this._text._getText()}}Object.defineProperty(qt,"className",{enumerable:!0,configurable:!0,writable:!0,value:"Label"}),Object.defineProperty(qt,"classNames",{enumerable:!0,configurable:!0,writable:!0,value:Nt.classNames.concat([qt.className])});class Zt extends jt{_beforeChanged(){super._beforeChanged(),(this.isDirty("pointerBaseWidth")||this.isDirty("cornerRadius")||this.isDirty("pointerLength")||this.isDirty("pointerX")||this.isDirty("pointerY")||this.isDirty("width")||this.isDirty("height"))&&(this._clear=!0)}_changed(){if(super._changed(),this._clear){this.markDirtyBounds();let e=this.width(),t=this.height();if(e>0&&t>0){let i=this.get("cornerRadius",8);i=Qe(i,0,Math.min(e/2,t/2));let s=this.get("pointerX",0),r=this.get("pointerY",0),a=this.get("pointerBaseWidth",15)/2,n=0,o=0,l=0,h=(s-n)*(t-o)-(r-o)*(e-n),u=(s-l)*(0-t)-(r-t)*(e-l);const d=this._display;if(d.moveTo(i,0),h>0&&u>0){let t=Math.round(Qe(s,i+a,e-a-i));r=Qe(r,-1/0,0),d.lineTo(t-a,0),d.lineTo(s,r),d.lineTo(t+a,0)}if(d.lineTo(e-i,0),d.arcTo(e,0,e,i,i),h>0&&u<0){let n=Math.round(Qe(r,i+a,t-a-i));s=Qe(s,e,1/0),d.lineTo(e,i),d.lineTo(e,Math.max(n-a,i)),d.lineTo(s,r),d.lineTo(e,n+a)}if(d.lineTo(e,t-i),d.arcTo(e,t,e-i,t,i),h<0&&u<0){let n=Math.round(Qe(s,i+a,e-a-i));r=Qe(r,t,1/0),d.lineTo(e-i,t),d.lineTo(n+a,t),d.lineTo(s,r),d.lineTo(n-a,t)}if(d.lineTo(i,t),d.arcTo(0,t,0,t-i,i),h<0&&u>0){let e=Math.round(Qe(r,i+a,t-i-a));s=Qe(s,-1/0,0),d.lineTo(0,t-i),d.lineTo(0,e+a),d.lineTo(s,r),d.lineTo(0,Math.max(e-a,i))}d.lineTo(0,i),d.arcTo(0,0,i,0,i),d.closePath()}}}}Object.defineProperty(Zt,"className",{enumerable:!0,configurable:!0,writable:!0,value:"PointedRectangle"}),Object.defineProperty(Zt,"classNames",{enumerable:!0,configurable:!0,writable:!0,value:jt.classNames.concat([Zt.className])});class Jt extends Nt{constructor(e,t,i,s=[]){super(e,t,i,s),Object.defineProperty(this,"_fx",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"_fy",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"_label",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_fillDp",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_strokeDp",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_labelDp",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_w",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"_h",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"_keepHoverDp",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_htmlContentHovered",{enumerable:!0,configurable:!0,writable:!0,value:!1})}_afterNew(){this._settings.themeTags=ze(this._settings.themeTags,["tooltip"]),super._afterNew(),this.set("background",Zt.new(this._root,{themeTags:["tooltip","background"]})),this._label=this.children.push(qt.new(this._root,{})),this._disposers.push(this._label.events.on("boundschanged",(()=>{this._updateBackground()}))),this._disposers.push(this.on("bounds",(()=>{this._updateBackground()}))),this._updateTextColor(),this._root.tooltipContainer.children.push(this),this.hide(0),this._disposers.push(this.label.onPrivate("htmlElement",(e=>{e&&(Q(e,"pointerover",(e=>{this._htmlContentHovered=!0})),Q(e,"pointerout",(e=>{this._htmlContentHovered=!1})))}))),this._root._tooltips.push(this)}get label(){return this._label}dispose(){super.dispose(),v(this._root._tooltips,this)}_updateChildren(){super._updateChildren(),(this.isDirty("pointerOrientation")||this.isPrivateDirty("minWidth")||this.isPrivateDirty("minHeight"))&&this.get("background")._markDirtyKey("width");null!=this.get("labelText")&&this.label.set("text",this.get("labelText"));null!=this.get("labelHTML")&&this.label.set("html",this.get("labelHTML"))}_changed(){if(super._changed(),(this.isDirty("pointTo")||this.isDirty("pointerOrientation"))&&this._updateBackground(),this.isDirty("tooltipTarget")&&this.updateBackgroundColor(),this.isDirty("keepTargetHover")){if(this.get("keepTargetHover")){const e=this.get("background");this._keepHoverDp=new R([e.events.on("pointerover",(e=>{let t=this.get("tooltipTarget");t&&(t.parent&&t.parent.getPrivate("tooltipTarget")==t&&(t=t.parent),t.hover())})),e.events.on("pointerout",(e=>{let t=this.get("tooltipTarget");t&&(t.parent&&t.parent.getPrivate("tooltipTarget")==t&&(t=t.parent),this._htmlContentHovered||t.unhover())}))])}else this._keepHoverDp&&(this._keepHoverDp.dispose(),this._keepHoverDp=void 0)}}_onShow(){super._onShow(),this.updateBackgroundColor()}updateBackgroundColor(){let e=this.get("tooltipTarget");const t=this.get("background");let i,s;e&&t&&(i=e.get("fill"),s=e.get("stroke"),null==i&&(i=s),this.get("getFillFromSprite")&&(this._fillDp&&this._fillDp.dispose(),null!=i&&t.set("fill",i),this._fillDp=e.on("fill",(e=>{null!=e&&(t.set("fill",e),this._updateTextColor(e))})),this._disposers.push(this._fillDp)),this.get("getStrokeFromSprite")&&(this._strokeDp&&this._strokeDp.dispose(),null!=i&&t.set("stroke",i),this._strokeDp=e.on("fill",(e=>{null!=e&&t.set("stroke",e)})),this._disposers.push(this._strokeDp)),this.get("getLabelFillFromSprite")&&(this._labelDp&&this._labelDp.dispose(),null!=i&&this.label.set("fill",i),this._labelDp=e.on("fill",(e=>{null!=e&&this.label.set("fill",e)})),this._disposers.push(this._labelDp))),this._updateTextColor(i)}_updateTextColor(e){this.get("autoTextColor")&&(null==e&&(e=this.get("background").get("fill")),null==e&&(e=this._root.interfaceColors.get("background")),e instanceof We&&this.label.set("fill",We.alternative(e,this._root.interfaceColors.get("alternativeText"),this._root.interfaceColors.get("text"))))}_setDataItem(e){super._setDataItem(e),this.label._setDataItem(e)}_updateBackground(){super.updateBackground();const e=this._root.container;if(e){let t=.5,i=.5,s=this.get("centerX");s instanceof Y&&(t=s.value);let r=this.get("centerY");r instanceof Y&&(i=r.value);let a=e.width(),n=e.height(),o=this.parent,l=0,h=0;if(o){l=o.x(),h=o.y();const e=o.get("layerMargin");e&&(l+=e.left||0,h+=e.top||0,a+=(e.left||0)+(e.right||0),n+=(e.top||0)+(e.bottom||0))}const u=this.get("bounds",{left:-l,top:-h,right:a-l,bottom:n-h});this._updateBounds();let d=this.width(),c=this.height();0===d&&(d=this._w),0===c&&(c=this._h);let p=this.get("pointTo",{x:a/2,y:n/2}),g=p.x,b=p.y,_=this.get("pointerOrientation"),f=this.get("background"),m=0,y=0,v=0;f instanceof Zt&&(m=f.get("pointerLength",0),y=f.get("strokeWidth",0)/2,v=y,f.set("width",d),f.set("height",c));let w=0,x=0,P=u.right-u.left,k=u.bottom-u.top;"horizontal"==_||"left"==_||"right"==_?(y=0,"horizontal"==_?g>u.left+P/2?(g-=d*(1-t)+m,v*=-1):g+=d*t+m:"left"==_?g+=d*(1-t)+m:(g-=d*t+m,v*=-1)):(v=0,"vertical"==_?b>u.top+c/2+m?b-=c*(1-i)+m:(b+=c*i+m,y*=-1):"down"==_?b-=c*(1-i)+m:(b+=c*i+m,y*=-1)),g=Qe(g,u.left+d*t,u.left+P-d*(1-t))+v,b=Qe(b,u.top+c*i,u.top+k-c*(1-i))-y,w=p.x-g+d*t+v,x=p.y-b+c*i-y,this._fx=g,this._fy=b;const D=this.get("animationDuration",0);if(D>0&&this.get("visible")&&this.get("opacity")>.1){const e=this.get("animationEasing");this.animate({key:"x",to:g,duration:D,easing:e}),this.animate({key:"y",to:b,duration:D,easing:e})}else this.set("x",g),this.set("y",b);f instanceof Zt&&(f.set("pointerX",w),f.set("pointerY",x)),d>0&&(this._w=d),c>0&&(this._h=c)}}}Object.defineProperty(Jt,"className",{enumerable:!0,configurable:!0,writable:!0,value:"Tooltip"}),Object.defineProperty(Jt,"classNames",{enumerable:!0,configurable:!0,writable:!0,value:Nt.classNames.concat([Jt.className])});class $t extends yt{_setDefaults(){this._setDefault("negativeBase",0),this._setDefault("numberFormat","#,###.#####"),this._setDefault("smallNumberThreshold",1);const e="_big_number_suffix_",t="_small_number_suffix_",i="_byte_suffix_";this._setDefault("bigNumberPrefixes",[{number:1e3,suffix:this._t(e+"3")},{number:1e6,suffix:this._t(e+"6")},{number:1e9,suffix:this._t(e+"9")},{number:1e12,suffix:this._t(e+"12")},{number:1e15,suffix:this._t(e+"15")},{number:1e18,suffix:this._t(e+"18")},{number:1e21,suffix:this._t(e+"21")},{number:1e24,suffix:this._t(e+"24")}]),this._setDefault("smallNumberPrefixes",[{number:1e-24,suffix:this._t(t+"24")},{number:1e-21,suffix:this._t(t+"21")},{number:1e-18,suffix:this._t(t+"18")},{number:1e-15,suffix:this._t(t+"15")},{number:1e-12,suffix:this._t(t+"12")},{number:1e-9,suffix:this._t(t+"9")},{number:1e-6,suffix:this._t(t+"6")},{number:.001,suffix:this._t(t+"3")}]),this._setDefault("bytePrefixes",[{number:1,suffix:this._t(i+"B")},{number:1024,suffix:this._t(i+"KB")},{number:1048576,suffix:this._t(i+"MB")},{number:1073741824,suffix:this._t(i+"GB")},{number:1099511627776,suffix:this._t(i+"TB")},{number:0x4000000000000,suffix:this._t(i+"PB")}]),super._setDefaults()}_beforeChanged(){super._beforeChanged()}format(e,t,i){let s;(null==t||h(t)&&"number"===t.toLowerCase())&&(t=this.get("numberFormat",""));let r=Number(e);if(d(t))try{return this.get("intlLocales")?new Intl.NumberFormat(this.get("intlLocales"),t).format(r):new Intl.NumberFormat(void 0,t).format(r)}catch(a){return"Invalid"}else{t=ve(t);let e,a=this.parseFormat(t,this._root.language);e=r>this.get("negativeBase")?a.positive:r<this.get("negativeBase")?a.negative:a.zero,null==i||e.mod||(e=K(e),e.decimals.active=0==r?0:i),s=e.template.split(c).join(this.applyFormat(r,e))}return s}parseFormat(e,t){const i=t.translateEmpty("_thousandSeparator"),s=t.translateEmpty("_decimalSeparator");let r={positive:{thousands:{active:-1,passive:-1,interval:-1,separator:i},decimals:{active:-1,passive:-1,separator:s},template:"",source:"",parsed:!1},negative:{thousands:{active:-1,passive:-1,interval:-1,separator:i},decimals:{active:-1,passive:-1,separator:s},template:"",source:"",parsed:!1},zero:{thousands:{active:-1,passive:-1,interval:-1,separator:i},decimals:{active:-1,passive:-1,separator:s},template:"",source:"",parsed:!1}},a=(e=e.replace("||",p)).split("|");return r.positive.source=a[0],void 0===a[2]?r.zero=r.positive:r.zero.source=a[2],void 0===a[1]?r.negative=r.positive:r.negative.source=a[1],q(r,((e,t)=>{if(t.parsed)return;let i=t.source;"number"===i.toLowerCase()&&(i=this.get("numberFormat","#,###.#####"));let s=Rt.chunk(i,!0);for(let r=0;r<s.length;r++){let e=s[r];if(e.text=e.text.replace(p,"|"),"value"===e.type){let i=e.text.match(/[#0.,]+[ ]?[abespABESP%!]?[abespABESP‰!]?/);if(i)if(null===i||""===i[0])t.template+=e.text;else{let s=i[0].match(/[abespABESP%‰!]{2}|[abespABESP%‰]{1}$/);s&&(t.mod=s[0].toLowerCase(),t.modSpacing=!!i[0].match(/[ ]{1}[abespABESP%‰!]{1}$/));let r=i[0].split(".");if(""===r[0]);else{t.thousands.active=(r[0].match(/0/g)||[]).length,t.thousands.passive=(r[0].match(/\#/g)||[]).length+t.thousands.active;let e=r[0].split(",");1===e.length||(t.thousands.interval=(e.pop()||"").length,0===t.thousands.interval&&(t.thousands.interval=-1))}void 0===r[1]||(t.decimals.active=(r[1].match(/0/g)||[]).length,t.decimals.passive=(r[1].match(/\#/g)||[]).length+t.decimals.active),t.template+=e.text.split(i[0]).join(c)}}else t.template+=e.text}t.parsed=!0})),r}applyFormat(e,t){let i=e<0;e=Math.abs(e);let s="",r="",a=t.mod?t.mod.split(""):[];if(-1!==a.indexOf("b")){let i=this.applyPrefix(e,this.get("bytePrefixes"),-1!==a.indexOf("!"));e=i[0],s=i[1],r=i[2],t.modSpacing&&(r=" "+r)}else if(-1!==a.indexOf("a")){let i=this.applyPrefix(e,e<this.get("smallNumberThreshold")?this.get("smallNumberPrefixes"):this.get("bigNumberPrefixes"),-1!==a.indexOf("!"));e=i[0],s=i[1],r=i[2],t.modSpacing&&(r=" "+r)}else if(-1!==a.indexOf("p")){let t=Math.min(e.toString().length+2,21);e=parseFloat(e.toPrecision(t)),s=this._root.language.translate("_percentPrefix"),r=this._root.language.translate("_percentSuffix"),""==s&&""==r&&(r="%")}else if(-1!==a.indexOf("%")){let t=Math.min(e.toString().length+2,21);e*=100,e=parseFloat(e.toPrecision(t)),r="%"}else if(-1!==a.indexOf("‰")){let t=Math.min(e.toString().length+3,21);e*=1e3,e=parseFloat(e.toPrecision(t)),r="‰"}if(-1!==a.indexOf("e")){let i;i=t.decimals.passive>=0?e.toExponential(t.decimals.passive).split("e"):e.toExponential().split("e"),e=Number(i[0]),r="e"+i[1],t.modSpacing&&(r=" "+r)}else if(0===t.decimals.passive)e=Math.round(e);else if(t.decimals.passive>0){let i=Math.pow(10,t.decimals.passive);e=Math.round(e*i)/i}let o="",l=n(e).split("."),h=l[0];if(h.length<t.thousands.active&&(h=Array(t.thousands.active-h.length+1).join("0")+h),t.thousands.interval>0){let e=[],i=h.split("").reverse().join("");for(let s=0,r=h.length;s<=r;s+=t.thousands.interval){let r=i.substr(s,t.thousands.interval).split("").reverse().join("");""!==r&&e.unshift(r)}h=e.join(t.thousands.separator)}o+=h,1===l.length&&l.push("");let u=l[1];return u.length<t.decimals.active&&(u+=Array(t.decimals.active-u.length+1).join("0")),""!==u&&(o+=t.decimals.separator+u),""===o&&(o="0"),0!==e&&i&&-1===a.indexOf("s")&&(o="-"+o),s&&(o=s+o),r&&(o+=r),o}applyPrefix(e,t,i=!1){let s=e,r="",a="",n=!1,o=1;for(let l=0,h=t.length;l<h;l++)t[l].number<=e&&(0===t[l].number?s=0:(s=e/t[l].number,o=t[l].number),r=t[l].prefix,a=t[l].suffix,n=!0);return!n&&i&&t.length&&0!=e&&(s=e/t[0].number,r=t[0].prefix,a=t[0].suffix,n=!0),n&&(s=parseFloat(s.toPrecision(Math.min(o.toString().length+Math.floor(s).toString().replace(/[^0-9]*/g,"").length,21)))),[s,r,a]}escape(e){return e.replace("||",p)}unescape(e){return e.replace(p,"|")}}function Qt(e,t){let i=0,s=0,r=1,a=0,n=0,o=0,l=0,h=0;return e.formatToParts(t).forEach((e=>{switch(e.type){case"year":i=+e.value;break;case"month":s=+e.value-1;break;case"day":r=+e.value;break;case"hour":a=+e.value;break;case"minute":n=+e.value;break;case"second":o=+e.value;break;case"fractionalSecond":l=+e.value;break;case"weekday":switch(e.value){case"Sun":h=0;break;case"Mon":h=1;break;case"Tue":h=2;break;case"Wed":h=3;break;case"Thu":h=4;break;case"Fri":h=5;break;case"Sat":h=6}}})),24===a&&(a=0),{year:i,month:s,day:r,hour:a,minute:n,second:o,millisecond:l,weekday:h}}function ei(e,t){const{year:i,month:s,day:r,hour:a,minute:n,second:o,millisecond:l}=Qt(e,t);return Date.UTC(i,s,r,a,n,o,l)}class ti{constructor(e,t){if(Object.defineProperty(this,"_utc",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_dtf",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),!t)throw new Error("You cannot use `new Class()`, instead use `Class.new()`");this.name=e,this._utc=new Intl.DateTimeFormat("UTC",{hour12:!1,timeZone:"UTC",year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",weekday:"short",fractionalSecondDigits:3}),this._dtf=new Intl.DateTimeFormat("UTC",{hour12:!1,timeZone:e,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",weekday:"short",fractionalSecondDigits:3})}static new(e){return new this(e,!0)}convertLocal(e){const t=this.offsetUTC(e),i=e.getTimezoneOffset(),s=new Date(e);s.setUTCMinutes(s.getUTCMinutes()-(t-i));const r=s.getTimezoneOffset();return i!=r&&s.setUTCMinutes(s.getUTCMinutes()+r-i),s}offsetUTC(e){return(ei(this._utc,e)-ei(this._dtf,e))/6e4}parseDate(e){return Qt(this._dtf,e)}}class ii extends yt{_setDefaults(){this._setDefault("capitalize",!0),this._setDefault("dateFormat","yyyy-MM-dd"),super._setDefaults()}_beforeChanged(){super._beforeChanged()}format(e,t){let i;void 0!==t&&""!==t||(t=this.get("dateFormat","yyyy-MM-dd"));let s=e;if(d(t))try{const e=this.get("intlLocales");return e?new Intl.DateTimeFormat(e,t).format(s):new Intl.DateTimeFormat(void 0,t).format(s)}catch(n){return"Invalid"}let r=this.parseFormat(t);const a=this._root.timezone;return a&&!this._root.utc&&(s=a.convertLocal(s)),u(s.getTime())?(i=this.applyFormat(s,r),this.get("capitalize")&&(i=i.replace(/^.{1}/,i.substr(0,1).toUpperCase())),i):"Invalid date"}applyFormat(e,t){let i,s,r,a,n,o,l,h,u=t.template,d=e.getTime();this._root.utc?(i=e.getUTCFullYear(),s=e.getUTCMonth(),r=e.getUTCDay(),a=e.getUTCDate(),n=e.getUTCHours(),o=e.getUTCMinutes(),l=e.getUTCSeconds(),h=e.getUTCMilliseconds()):(i=e.getFullYear(),s=e.getMonth(),r=e.getDay(),a=e.getDate(),n=e.getHours(),o=e.getMinutes(),l=e.getSeconds(),h=e.getMilliseconds());for(let p=0,g=t.parts.length;p<g;p++){let g="";switch(t.parts[p]){case"G":g=this._t(i<0?"_era_bc":"_era_ad");break;case"yyyy":g=Math.abs(i).toString(),i<0&&(g+=this._t("_era_bc"));break;case"yyy":case"yy":case"y":g=Math.abs(i).toString().substr(-t.parts[p].length),i<0&&(g+=this._t("_era_bc"));break;case"YYYY":case"YYY":case"YY":case"Y":let u=De(e,this._root.utc);g="YYYY"==t.parts[p]?Math.abs(u).toString():Math.abs(u).toString().substr(-t.parts[p].length),u<0&&(g+=this._t("_era_bc"));break;case"u":case"F":case"g":break;case"q":g=""+Math.ceil((e.getMonth()+1)/3);break;case"MMMMM":g=this._t(this._getMonth(s)).substr(0,1);break;case"MMMM":g=this._t(this._getMonth(s));break;case"MMM":g=this._t(this._getShortMonth(s));break;case"MM":g=be(s+1,2,"0");break;case"M":g=(s+1).toString();break;case"ww":g=be(ke(e,this._root.utc),2,"0");break;case"w":g=ke(e,this._root.utc).toString();break;case"W":g=Oe(e,this._root.utc).toString();break;case"dd":g=be(a,2,"0");break;case"d":g=a.toString();break;case"DD":case"DDD":g=be(Pe(e,this._root.utc).toString(),t.parts[p].length,"0");break;case"D":g=Pe(e,this._root.utc).toString();break;case"t":g=this._root.language.translateFunc("_dateOrd").call(this,a);break;case"E":g=(r||7).toString();break;case"EE":g=be((r||7).toString(),2,"0");break;case"EEE":case"eee":g=this._t(this._getShortWeekday(r));break;case"EEEE":case"eeee":g=this._t(this._getWeekday(r));break;case"EEEEE":case"eeeee":g=this._t(this._getShortWeekday(r)).substr(0,1);break;case"e":case"ee":g=(r-(this._root.locale.firstDayOfWeek||1)+1).toString(),"ee"==t.parts[p]&&(g=be(g,2,"0"));break;case"a":g=n>=12?this._t("PM"):this._t("AM");break;case"aa":g=n>=12?this._t("P.M."):this._t("A.M.");break;case"aaa":g=n>=12?this._t("P"):this._t("A");break;case"h":g=Se(n).toString();break;case"hh":g=be(Se(n),2,"0");break;case"H":g=n.toString();break;case"HH":g=be(n,2,"0");break;case"K":g=Se(n,0).toString();break;case"KK":g=be(Se(n,0),2,"0");break;case"k":g=(n+1).toString();break;case"kk":g=be(n+1,2,"0");break;case"m":g=o.toString();break;case"mm":g=be(o,2,"0");break;case"s":g=l.toString();break;case"ss":g=be(l,2,"0");break;case"S":case"SS":case"SSS":g=Math.round(h/1e3*Math.pow(10,t.parts[p].length)).toString();break;case"x":g=d.toString();break;case"n":case"nn":case"nnn":g=be(h,t.parts[p].length,"0");break;case"z":g=je(e,!1,!1,this._root.utc);break;case"zz":g=je(e,!0,!1,this._root.utc);break;case"zzz":g=je(e,!1,!0,this._root.utc);break;case"zzzz":g=je(e,!0,!0,this._root.utc);break;case"Z":case"ZZ":let c=this._root.utc?"UTC":this._root.timezone;c instanceof ti&&(c=c.name);const b=c?Be(c):e.getTimezoneOffset();let _=Math.abs(b)/60,f=Math.floor(_),m=60*_-60*f;this._root.utc&&(f=0,m=0),"Z"==t.parts[p]?(g="GMT",g+=b>0?"-":"+",g+=be(f,2)+":"+be(m,2)):(g=b>0?"-":"+",g+=be(f,2)+be(m,2));break;case"i":g=e.toISOString();break;case"I":g=e.toUTCString()}u=u.replace(c,g)}return u}parseFormat(e){let t={template:"",parts:[]},i=Rt.chunk(e,!0);for(let s=0;s<i.length;s++){let e=i[s];if("value"===e.type){if(e.text.match(/^date$/i)){let t=this.get("dateFormat","yyyy-MM-dd");h(t)||(t="yyyy-MM-dd"),e.text=t}let i=e.text.match(/G|yyyy|yyy|yy|y|YYYY|YYY|YY|Y|u|q|MMMMM|MMMM|MMM|MM|M|ww|w|W|dd|d|DDD|DD|D|F|g|EEEEE|EEEE|EEE|EE|E|eeeee|eeee|eee|ee|e|aaa|aa|a|hh|h|HH|H|KK|K|kk|k|mm|m|ss|s|SSS|SS|S|A|zzzz|zzz|zz|z|ZZ|Z|t|x|nnn|nn|n|i|I/g);if(i)for(let s=0;s<i.length;s++)t.parts.push(i[s]),e.text=e.text.replace(i[s],c)}t.template+=e.text}return t}_months(){return["January","February","March","April","May","June","July","August","September","October","November","December"]}_getMonth(e){return this._months()[e]}_shortMonths(){return["Jan","Feb","Mar","Apr","May(short)","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]}_getShortMonth(e){return this._shortMonths()[e]}_weekdays(){return["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]}_getWeekday(e){return this._weekdays()[e]}_shortWeekdays(){return["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]}_getShortWeekday(e){return this._shortWeekdays()[e]}parse(e,t){if(e instanceof Date)return e;if(u(e))return new Date(e);let i;h(e)||(e=e.toString());let s="";t=(t=ve(t)).substr(0,e.length);let a=this.parseFormat(t),n={year:-1,year3:-1,year2:-1,year1:-1,month:-1,monthShort:-1,monthLong:-1,weekdayShort:-1,weekdayLong:-1,day:-1,yearDay:-1,week:-1,hourBase0:-1,hour12Base0:-1,hourBase1:-1,hour12Base1:-1,minute:-1,second:-1,millisecond:-1,millisecondDigits:-1,am:-1,zone:-1,timestamp:-1,iso:-1},o={year:1970,month:0,day:1,hour:0,minute:0,second:0,millisecond:0,timestamp:null,offset:0,utc:this._root.utc},l=0,d=0;for(let r=0;r<a.parts.length;r++){switch(d=r+l+1,a.parts[r]){case"yyyy":case"YYYY":s+="([0-9]{4})",n.year=d;break;case"yyy":case"YYY":s+="([0-9]{3})",n.year3=d;break;case"yy":case"YY":s+="([0-9]{2})",n.year2=d;break;case"y":case"Y":s+="([0-9]{1})",n.year1=d;break;case"MMMM":s+="("+this.getStringList(this._months()).join("|")+")",n.monthLong=d;break;case"MMM":s+="("+this.getStringList(this._shortMonths()).join("|")+")",n.monthShort=d;break;case"MM":case"M":s+="([0-9]{2}|[0-9]{1})",n.month=d;break;case"ww":case"w":s+="([0-9]{2}|[0-9]{1})",n.week=d;break;case"dd":case"d":s+="([0-9]{2}|[0-9]{1})",n.day=d;break;case"DDD":case"DD":case"D":s+="([0-9]{3}|[0-9]{2}|[0-9]{1})",n.yearDay=d;break;case"dddd":s+="("+this.getStringList(this._weekdays()).join("|")+")",n.weekdayLong=d;break;case"ddd":s+="("+this.getStringList(this._shortWeekdays()).join("|")+")",n.weekdayShort=d;break;case"aaa":case"aa":case"a":s+="("+this.getStringList(["AM","PM","A.M.","P.M.","A","P"]).join("|")+")",n.am=d;break;case"hh":case"h":s+="([0-9]{2}|[0-9]{1})",n.hour12Base1=d;break;case"HH":case"H":s+="([0-9]{2}|[0-9]{1})",n.hourBase0=d;break;case"KK":case"K":s+="([0-9]{2}|[0-9]{1})",n.hour12Base0=d;break;case"kk":case"k":s+="([0-9]{2}|[0-9]{1})",n.hourBase1=d;break;case"mm":case"m":s+="([0-9]{2}|[0-9]{1})",n.minute=d;break;case"ss":case"s":s+="([0-9]{2}|[0-9]{1})",n.second=d;break;case"SSS":case"SS":case"S":s+="([0-9]{3}|[0-9]{2}|[0-9]{1})",n.millisecond=d,n.millisecondDigits=a.parts[r].length;break;case"nnn":case"nn":case"n":s+="([0-9]{3}|[0-9]{2}|[0-9]{1})",n.millisecond=d;break;case"x":s+="([0-9]{1,})",n.timestamp=d;break;case"Z":s+="GMT([-+]+[0-9]{2}:[0-9]{2})",n.zone=d;break;case"ZZ":s+="([\\-+]+[0-9]{2}[0-9]{2})",n.zone=d;break;case"i":s+="([0-9]{4})-?([0-9]{2})-?([0-9]{2})T?([0-9]{2}):?([0-9]{2}):?([0-9]{2})\\.?([0-9]{0,3})([zZ]|[+\\-][0-9]{2}:?[0-9]{2}|$)",n.iso=d,l+=7;break;case"G":case"YYYY":case"YYY":case"YY":case"Y":case"MMMMM":case"W":case"EEEEE":case"EEEE":case"EEE":case"EE":case"E":case"eeeee":case"eeee":case"eee":case"ee":case"e":case"zzzz":case"zzz":case"zz":case"z":case"t":l--}s+="[^0-9]*"}let c=new RegExp(s),p=e.match(c);if(p){if(n.year>-1&&(o.year=parseInt(p[n.year])),n.year3>-1){let e=parseInt(p[n.year3]);e+=1e3,o.year=e}if(n.year2>-1){let e=parseInt(p[n.year2]);e+=e>50?1e3:2e3,o.year=e}if(n.year1>-1){let e=parseInt(p[n.year1]);e=10*Math.floor((new Date).getFullYear()/10)+e,o.year=e}if(n.monthLong>-1&&(o.month=this.resolveMonth(p[n.monthLong])),n.monthShort>-1&&(o.month=this.resolveShortMonth(p[n.monthShort])),n.month>-1&&(o.month=parseInt(p[n.month])-1),n.week>-1&&-1===n.day&&(o.month=0,o.day=Te(parseInt(p[n.week]),o.year,1,this._root.utc)),n.day>-1&&(o.day=parseInt(p[n.day])),n.yearDay>-1&&(o.month=0,o.day=parseInt(p[n.yearDay])),n.hourBase0>-1&&(o.hour=parseInt(p[n.hourBase0])),n.hourBase1>-1&&(o.hour=parseInt(p[n.hourBase1])-1),n.hour12Base0>-1){let e=parseInt(p[n.hour12Base0]);11==e&&(e=0),n.am>-1&&!this.isAm(p[n.am])&&(e+=12),o.hour=e}if(n.hour12Base1>-1){let e=parseInt(p[n.hour12Base1]);12==e&&(e=0),n.am>-1&&!this.isAm(p[n.am])&&(e+=12),o.hour=e}if(n.minute>-1&&(o.minute=parseInt(p[n.minute])),n.second>-1&&(o.second=parseInt(p[n.second])),n.millisecond>-1){let e=parseInt(p[n.millisecond]);2==n.millisecondDigits?e*=10:1==n.millisecondDigits&&(e*=100),o.millisecond=e}if(n.timestamp>-1){o.timestamp=parseInt(p[n.timestamp]);const e=new Date(o.timestamp);o.year=e.getUTCFullYear(),o.month=e.getUTCMonth(),o.day=e.getUTCDate(),o.hour=e.getUTCHours(),o.minute=e.getUTCMinutes(),o.second=e.getUTCSeconds(),o.millisecond=e.getUTCMilliseconds()}n.zone>-1&&(o.offset=this.resolveTimezoneOffset(new Date(o.year,o.month,o.day),p[n.zone])),n.iso>-1&&(o.year=r(p[n.iso+0]),o.month=r(p[n.iso+1])-1,o.day=r(p[n.iso+2]),o.hour=r(p[n.iso+3]),o.minute=r(p[n.iso+4]),o.second=r(p[n.iso+5]),o.millisecond=r(p[n.iso+6]),"Z"==p[n.iso+7]||"z"==p[n.iso+7]?o.utc=!0:""!=p[n.iso+7]&&(o.offset=this.resolveTimezoneOffset(new Date(o.year,o.month,o.day),p[n.iso+7]))),i=o.utc?new Date(Date.UTC(o.year,o.month,o.day,o.hour,o.minute,o.second,o.millisecond)):new Date(o.year,o.month,o.day,o.hour,o.minute+o.offset,o.second,o.millisecond)}else i=new Date(e);return i}resolveTimezoneOffset(e,t){if(t.match(/([+\-]?)([0-9]{2}):?([0-9]{2})/)){let i=t.match(/([+\-]?)([0-9]{2}):?([0-9]{2})/),s=i[1],r=i[2],a=i[3],n=60*parseInt(r)+parseInt(a);return"+"==s&&(n*=-1),n-(e||new Date).getTimezoneOffset()}return 0}resolveMonth(e){let t=this._months().indexOf(e);return t>-1||!this._root.language.isDefault()&&(t=this._root.language.translateAll(this._months()).indexOf(e),t>-1)?t:0}resolveShortMonth(e){let t=this._shortMonths().indexOf(e);return t>-1?t:(t=this._months().indexOf(e),t>-1||this._root.language&&!this._root.language.isDefault()&&(t=this._root.language.translateAll(this._shortMonths()).indexOf(e),t>-1)?t:0)}isAm(e){return this.getStringList(["AM","A.M.","A"]).indexOf(e.toUpperCase())>-1}getStringList(e){let t=[];for(let i=0;i<e.length;i++)this._root.language?t.push(xe(this._t(e[i]))):t.push(xe(e[i]));return t}}class si extends yt{constructor(){super(...arguments),Object.defineProperty(this,"_unitAliases",{enumerable:!0,configurable:!0,writable:!0,value:{Y:"y",D:"d",H:"h",K:"h",k:"h",n:"S"}})}_setDefaults(){const e="_duration_millisecond",t="_duration_second",i="_duration_minute",s="_duration_hour",r="_duration_day",a="_duration_week",n="_duration_month",o="_duration_year",l="_second",h="_minute",u="_hour",d="_day",c="_week",p="_week",g="_year";this._setDefault("negativeBase",0),this._setDefault("baseUnit","second"),this._setDefault("durationFormats",{millisecond:{millisecond:this._t(e),second:this._t(e+l),minute:this._t(e+h),hour:this._t(e+u),day:this._t(e+d),week:this._t(e+c),month:this._t(e+p),year:this._t(e+g)},second:{second:this._t(t),minute:this._t(t+h),hour:this._t(t+u),day:this._t(t+d),week:this._t(t+c),month:this._t(t+p),year:this._t(t+g)},minute:{minute:this._t(i),hour:this._t(i+u),day:this._t(i+d),week:this._t(i+c),month:this._t(i+p),year:this._t(i+g)},hour:{hour:this._t(s),day:this._t(s+d),week:this._t(s+c),month:this._t(s+p),year:this._t(s+g)},day:{day:this._t(r),week:this._t(r+c),month:this._t(r+p),year:this._t(r+g)},week:{week:this._t(a),month:this._t(a+p),year:this._t(a+g)},month:{month:this._t(n),year:this._t(n+g)},year:{year:this._t(o)}}),super._setDefaults()}_beforeChanged(){super._beforeChanged()}format(e,t,i){let s=i||this.get("baseUnit");void 0!==t&&""!==t||(t=null!=this.get("durationFormat")?this.get("durationFormat"):this.getFormat(r(e),void 0,s)),t=ve(t);let a,n=this.parseFormat(t,s),o=Number(e);a=o>this.get("negativeBase")?n.positive:o<this.get("negativeBase")?n.negative:n.zero;let l=this.applyFormat(o,a);return""!==a.color&&(l="["+a.color+"]"+l+"[/]"),l}parseFormat(e,t){let i=t||this.get("baseUnit"),s={positive:{color:"",template:"",parts:[],source:"",baseUnit:i,parsed:!1,absolute:!1},negative:{color:"",template:"",parts:[],source:"",baseUnit:i,parsed:!1,absolute:!1},zero:{color:"",template:"",parts:[],source:"",baseUnit:i,parsed:!1,absolute:!1}},r=(e=e.replace("||",p)).split("|");return s.positive.source=r[0],void 0===r[2]?s.zero=s.positive:s.zero.source=r[2],void 0===r[1]?s.negative=s.positive:s.negative.source=r[1],q(s,((e,t)=>{if(t.parsed)return;let i=t.source,s=[];s=t.source.match(/^\[([^\]]*)\]/),s&&s.length&&""!==s[0]&&(i=t.source.substr(s[0].length),t.color=s[1]);let r=Rt.chunk(i,!0);for(let a=0;a<r.length;a++){let e=r[a];if(e.text=e.text.replace(p,"|"),"value"===e.type){e.text.match(/[yYMdDwhHKkmsSn]+a/)&&(t.absolute=!0,e.text=e.text.replace(/([yYMdDwhHKkmsSn]+)a/,"$1"));let i=e.text.match(/y+|Y+|M+|d+|D+|w+|h+|H+|K+|k+|m+|s+|S+|n+/g);if(i)for(let s=0;s<i.length;s++)null==i[s]&&(i[s]=this._unitAliases[i[s]]),t.parts.push(i[s]),e.text=e.text.replace(i[s],c)}t.template+=e.text}t.parsed=!0})),s}applyFormat(e,t){let i=!t.absolute&&e<this.get("negativeBase");e=Math.abs(e);let s=this.toTimeStamp(e,t.baseUnit),r=t.template;for(let a=0,n=t.parts.length;a<n;a++){let e=t.parts[a],i=this._toTimeUnit(e.substr(0,1)),n=e.length,o=Math.floor(s/this._getUnitValue(i));r=r.replace(c,be(o,n,"0")),s-=o*this._getUnitValue(i)}return i&&(r="-"+r),r}toTimeStamp(e,t){return e*this._getUnitValue(t)}_toTimeUnit(e){switch(e){case"S":return"millisecond";case"s":return"second";case"m":return"minute";case"h":return"hour";case"d":return"day";case"w":return"week";case"M":return"month";case"y":return"year"}}getFormat(e,t,i){if(null!=this.get("durationFormat"))return this.get("durationFormat");if(i||(i=this.get("baseUnit")),null!=t&&e!=t){e=Math.abs(e),t=Math.abs(t);let s=this.getValueUnit(Math.max(e,t),i);return this.get("durationFormats")[i][s]}{let t=this.getValueUnit(e,i);return this.get("durationFormats")[i][t]}}getValueUnit(e,t){let i;t||(t=this.get("baseUnit"));let s=this.getMilliseconds(e,t);return Z(this._getUnitValues(),((e,r)=>{if(e==t||i){if(s/r<=1)return i||(i=e),!1;i=e}return!0})),i}getMilliseconds(e,t){return t||(t=this.get("baseUnit")),e*this._getUnitValue(t)}_getUnitValue(e){return this._getUnitValues()[e]}_getUnitValues(){return{millisecond:1,second:1e3,minute:6e4,hour:36e5,day:864e5,week:6048e5,month:2592e6,year:31536e6}}}const ri={firstDayOfWeek:1,_decimalSeparator:".",_thousandSeparator:",",_percentPrefix:null,_percentSuffix:"%",_big_number_suffix_3:"k",_big_number_suffix_6:"M",_big_number_suffix_9:"G",_big_number_suffix_12:"T",_big_number_suffix_15:"P",_big_number_suffix_18:"E",_big_number_suffix_21:"Z",_big_number_suffix_24:"Y",_small_number_suffix_3:"m",_small_number_suffix_6:"μ",_small_number_suffix_9:"n",_small_number_suffix_12:"p",_small_number_suffix_15:"f",_small_number_suffix_18:"a",_small_number_suffix_21:"z",_small_number_suffix_24:"y",_byte_suffix_B:"B",_byte_suffix_KB:"KB",_byte_suffix_MB:"MB",_byte_suffix_GB:"GB",_byte_suffix_TB:"TB",_byte_suffix_PB:"PB",_date:"yyyy-MM-dd",_date_millisecond:"mm:ss SSS",_date_millisecond_full:"HH:mm:ss SSS",_date_second:"HH:mm:ss",_date_second_full:"HH:mm:ss",_date_minute:"HH:mm",_date_minute_full:"HH:mm - MMM dd, yyyy",_date_hour:"HH:mm",_date_hour_full:"HH:mm - MMM dd, yyyy",_date_day:"MMM dd",_date_day_full:"MMM dd, yyyy",_date_week:"ww",_date_week_full:"MMM dd, yyyy",_date_month:"MMM",_date_month_full:"MMM, yyyy",_date_year:"yyyy",_duration_millisecond:"SSS",_duration_millisecond_second:"ss.SSS",_duration_millisecond_minute:"mm:ss SSS",_duration_millisecond_hour:"hh:mm:ss SSS",_duration_millisecond_day:"d'd' mm:ss SSS",_duration_millisecond_week:"d'd' mm:ss SSS",_duration_millisecond_month:"M'm' dd'd' mm:ss SSS",_duration_millisecond_year:"y'y' MM'm' dd'd' mm:ss SSS",_duration_second:"ss",_duration_second_minute:"mm:ss",_duration_second_hour:"hh:mm:ss",_duration_second_day:"d'd' hh:mm:ss",_duration_second_week:"d'd' hh:mm:ss",_duration_second_month:"M'm' dd'd' hh:mm:ss",_duration_second_year:"y'y' MM'm' dd'd' hh:mm:ss",_duration_minute:"mm",_duration_minute_hour:"hh:mm",_duration_minute_day:"d'd' hh:mm",_duration_minute_week:"d'd' hh:mm",_duration_minute_month:"M'm' dd'd' hh:mm",_duration_minute_year:"y'y' MM'm' dd'd' hh:mm",_duration_hour:"hh'h'",_duration_hour_day:"d'd' hh'h'",_duration_hour_week:"d'd' hh'h'",_duration_hour_month:"M'm' dd'd' hh'h'",_duration_hour_year:"y'y' MM'm' dd'd' hh'h'",_duration_day:"d'd'",_duration_day_week:"d'd'",_duration_day_month:"M'm' dd'd'",_duration_day_year:"y'y' MM'm' dd'd'",_duration_week:"w'w'",_duration_week_month:"w'w'",_duration_week_year:"w'w'",_duration_month:"M'm'",_duration_month_year:"y'y' MM'm'",_duration_year:"y'y'",_era_ad:"AD",_era_bc:"BC",A:"",P:"",AM:"",PM:"","A.M.":"","P.M.":"",January:"",February:"",March:"",April:"",May:"",June:"",July:"",August:"",September:"",October:"",November:"",December:"",Jan:"",Feb:"",Mar:"",Apr:"","May(short)":"May",Jun:"",Jul:"",Aug:"",Sep:"",Oct:"",Nov:"",Dec:"",Sunday:"",Monday:"",Tuesday:"",Wednesday:"",Thursday:"",Friday:"",Saturday:"",Sun:"",Mon:"",Tue:"",Wed:"",Thu:"",Fri:"",Sat:"",_dateOrd:function(e){let t="th";if(e<11||e>13)switch(e%10){case 1:t="st";break;case 2:t="nd";break;case 3:t="rd"}return t},"Zoom Out":"",Play:"",Stop:"",Legend:"","Press ENTER to toggle":"",Loading:"",Home:"",Chart:"","Serial chart":"","X/Y chart":"","Pie chart":"","Gauge chart":"","Radar chart":"","Sankey diagram":"","Flow diagram":"","Chord diagram":"","TreeMap chart":"","Force directed tree":"","Sliced chart":"",Series:"","Candlestick Series":"","OHLC Series":"","Column Series":"","Line Series":"","Pie Slice Series":"","Funnel Series":"","Pyramid Series":"","X/Y Series":"",Map:"","Press ENTER to zoom in":"","Press ENTER to zoom out":"","Use arrow keys to zoom in and out":"","Use plus and minus keys on your keyboard to zoom in and out":"",Export:"",Image:"",Data:"",Print:"","Press ENTER or use arrow keys to navigate":"","Press ENTER to open":"","Press ENTER to print.":"","Press ENTER to export as %1.":"","(Press ESC to close this message)":"","Image Export Complete":"","Export operation took longer than expected. Something might have gone wrong.":"","Saved from":"",PNG:"",JPG:"",GIF:"",SVG:"",PDF:"",JSON:"",CSV:"",XLSX:"",HTML:"","Use TAB to select grip buttons or left and right arrows to change selection":"","Use left and right arrows to move selection":"","Use left and right arrows to move left selection":"","Use left and right arrows to move right selection":"","Use TAB select grip buttons or up and down arrows to change selection":"","Use up and down arrows to move selection":"","Use up and down arrows to move lower selection":"","Use up and down arrows to move upper selection":"","From %1 to %2":"","From %1":"","To %1":"","No parser available for file: %1":"","Error parsing file: %1":"","Unable to load file: %1":"","Invalid date":"",Close:"",Minimize:""};class ai extends yt{_setDefaults(){this.setPrivate("defaultLocale",ri),super._setDefaults()}translate(e,t,...i){t||(t=this._root.locale||this.getPrivate("defaultLocale"));let s=e,r=t[e];if(null===r)s="";else if(null!=r)r&&(s=r);else if(t!==this.getPrivate("defaultLocale"))return this.translate(e,this.getPrivate("defaultLocale"),...i);if(i.length)for(let a=i.length,n=0;n<a;++n)s=s.split("%"+(n+1)).join(i[n]);return s}translateAny(e,t,...i){return this.translate(e,t,...i)}setTranslationAny(e,t,i){(i||this._root.locale)[e]=t}setTranslationsAny(e,t){q(e,((e,i)=>{this.setTranslationAny(e,i,t)}))}translateEmpty(e,t,...i){let s=this.translate(e,t,...i);return s==e?"":s}translateFunc(e,t){return this._root.locale[e]?this._root.locale[e]:t!==this.getPrivate("defaultLocale")?this.translateFunc(e,this.getPrivate("defaultLocale")):()=>""}translateAll(e,t){return this.isDefault()?e:_(e,(e=>this.translate(e,t)))}isDefault(){return this.getPrivate("defaultLocale")===this._root.locale}}class ni{constructor(e,t){if(Object.defineProperty(this,"_root",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_rules",{enumerable:!0,configurable:!0,writable:!0,value:{}}),this._root=e,!t)throw new Error("You cannot use `new Class()`, instead use `Class.new()`")}static new(e){const t=new this(e,!0);return t.setupDefaultRules(),t}setupDefaultRules(){}_lookupRules(e){return this._rules[e]}ruleRaw(e,t=[]){let i=this._rules[e];i||(i=this._rules[e]=[]),t.sort(pt);const{index:s,found:r}=B(i,(e=>{const i=pt(e.tags.length,t.length);return 0===i?gt(e.tags,t,pt):i}));if(r)return i[s].template;{const e=Pt.new({});return i.splice(s,0,{tags:t,template:e}),e}}rule(e,t=[]){return this.ruleRaw(e,t)}}function oi(e,t,i,s){e.set(t,i.get(s)),i.on(s,(i=>{e.set(t,i)}))}class li extends ni{setupDefaultRules(){super.setupDefaultRules();const e=this._root.language,t=this._root.interfaceColors,i=this._root.horizontalLayout,s=this._root.verticalLayout,r=this.rule.bind(this);r("InterfaceColors").setAll({stroke:We.fromHex(15066597),fill:We.fromHex(15987699),primaryButton:We.fromHex(6788316),primaryButtonHover:We.fromHex(6779356),primaryButtonDown:We.fromHex(6872182),primaryButtonActive:We.fromHex(6872182),primaryButtonText:We.fromHex(16777215),primaryButtonStroke:We.fromHex(16777215),secondaryButton:We.fromHex(14277081),secondaryButtonHover:We.fromHex(10724259),secondaryButtonDown:We.fromHex(9276813),secondaryButtonActive:We.fromHex(15132390),secondaryButtonText:We.fromHex(0),secondaryButtonStroke:We.fromHex(16777215),grid:We.fromHex(0),background:We.fromHex(16777215),alternativeBackground:We.fromHex(0),text:We.fromHex(0),alternativeText:We.fromHex(16777215),disabled:We.fromHex(11382189),positive:We.fromHex(5288704),negative:We.fromHex(11730944)});{const e=r("ColorSet");e.setAll({passOptions:{hue:.05,saturation:0,lightness:0},colors:[We.fromHex(6797276)],step:1,reuse:!1,startIndex:0}),e.setPrivate("currentStep",0),e.setPrivate("currentPass",0)}r("Entity").setAll({stateAnimationDuration:0,stateAnimationEasing:ot(nt)}),r("Component").setAll({interpolationDuration:0,interpolationEasing:ot(nt)}),r("Sprite").setAll({visible:!0,scale:1,opacity:1,rotation:0,position:"relative",tooltipX:V,tooltipY:V,tooltipPosition:"fixed",isMeasured:!0}),r("Sprite").states.create("default",{visible:!0,opacity:1}),r("Container").setAll({interactiveChildren:!0,setStateOnChildren:!1}),r("Graphics").setAll({strokeWidth:1}),r("Chart").setAll({width:U,height:U,interactiveChildren:!1}),r("Sprite",["horizontal","center"]).setAll({centerX:V,x:V}),r("Sprite",["vertical","center"]).setAll({centerY:V,y:V}),r("Container",["horizontal","layout"]).setAll({layout:i}),r("Container",["vertical","layout"]).setAll({layout:s}),r("Pattern").setAll({repetition:"repeat",width:50,height:50,rotation:0,fillOpacity:1}),r("LinePattern").setAll({gap:6,colorOpacity:1,width:49,height:49}),r("RectanglePattern").setAll({gap:6,checkered:!1,centered:!0,maxWidth:5,maxHeight:5,width:48,height:48,strokeWidth:0}),r("CirclePattern").setAll({gap:5,checkered:!1,centered:!1,radius:3,strokeWidth:0,width:45,height:45}),r("LinearGradient").setAll({rotation:90}),r("Legend").setAll({fillField:"fill",strokeField:"stroke",nameField:"name",layout:Lt.new(this._root,{}),layer:30,clickTarget:"itemContainer"}),r("Container",["legend","item","itemcontainer"]).setAll({paddingLeft:5,paddingRight:5,paddingBottom:5,paddingTop:5,layout:i,setStateOnChildren:!0,interactiveChildren:!1,ariaChecked:!0,focusable:!0,ariaLabel:e.translate("Press ENTER to toggle"),role:"checkbox"});{const e=r("Rectangle",["legend","item","background"]);e.setAll({fillOpacity:0}),oi(e,"fill",t,"background")}r("Container",["legend","marker"]).setAll({setStateOnChildren:!0,centerY:V,paddingLeft:0,paddingRight:0,paddingBottom:0,paddingTop:0,width:18,height:18}),r("RoundedRectangle",["legend","marker","rectangle"]).setAll({width:U,height:U,cornerRadiusBL:3,cornerRadiusTL:3,cornerRadiusBR:3,cornerRadiusTR:3});{const e=r("RoundedRectangle",["legend","marker","rectangle"]).states.create("disabled",{});oi(e,"fill",t,"disabled"),oi(e,"stroke",t,"disabled")}r("Label",["legend","label"]).setAll({centerY:V,marginLeft:5,paddingRight:0,paddingLeft:0,paddingTop:0,paddingBottom:0,populateText:!0});oi(r("Label",["legend","label"]).states.create("disabled",{}),"fill",t,"disabled");r("Label",["legend","value","label"]).setAll({centerY:V,marginLeft:5,paddingRight:0,paddingLeft:0,paddingTop:0,paddingBottom:0,width:50,centerX:U,populateText:!0});oi(r("Label",["legend","value","label"]).states.create("disabled",{}),"fill",t,"disabled");r("HeatLegend").setAll({stepCount:1}),r("RoundedRectangle",["heatlegend","marker"]).setAll({cornerRadiusTR:0,cornerRadiusBR:0,cornerRadiusTL:0,cornerRadiusBL:0}),r("RoundedRectangle",["vertical","heatlegend","marker"]).setAll({height:U,width:15}),r("RoundedRectangle",["horizontal","heatlegend","marker"]).setAll({width:U,height:15}),r("HeatLegend",["vertical"]).setAll({height:U}),r("HeatLegend",["horizontal"]).setAll({width:U}),r("Label",["heatlegend","start"]).setAll({paddingLeft:5,paddingRight:5,paddingTop:5,paddingBottom:5}),r("Label",["heatlegend","end"]).setAll({paddingLeft:5,paddingRight:5,paddingTop:5,paddingBottom:5});{const e=r("Label");e.setAll({paddingTop:8,paddingBottom:8,paddingLeft:10,paddingRight:10,fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"',fontSize:"1em",populateText:!1}),oi(e,"fill",t,"text")}r("RadialLabel").setAll({textType:"regular",centerY:V,centerX:V,inside:!1,radius:0,baseRadius:U,orientation:"auto",textAlign:"center"}),r("RoundedRectangle").setAll({cornerRadiusTL:8,cornerRadiusBL:8,cornerRadiusTR:8,cornerRadiusBR:8}),r("PointedRectangle").setAll({pointerBaseWidth:15,pointerLength:10,cornerRadius:8}),r("Slice").setAll({shiftRadius:0,dRadius:0,dInnerRadius:0});{const e=r("Tick");e.setAll({strokeOpacity:.15,isMeasured:!1,length:4.5,position:"absolute",crisp:!0}),oi(e,"stroke",t,"grid")}r("Bullet").setAll({locationX:.5,locationY:.5}),r("Tooltip").setAll({position:"absolute",getFillFromSprite:!0,getStrokeFromSprite:!1,autoTextColor:!0,paddingTop:9,paddingBottom:8,paddingLeft:10,paddingRight:10,marginBottom:5,pointerOrientation:"vertical",centerX:V,centerY:V,animationEasing:ot(nt),exportable:!1});r("PointedRectangle",["tooltip","background"]).setAll({strokeOpacity:.9,cornerRadius:4,pointerLength:4,pointerBaseWidth:8,fillOpacity:.9,stroke:We.fromHex(16777215)});{const e=r("Label",["tooltip"]);e.setAll({role:"tooltip",populateText:!0,paddingRight:0,paddingTop:0,paddingLeft:0,paddingBottom:0}),oi(e,"fill",t,"alternativeText")}r("Button").setAll({paddingTop:8,paddingBottom:8,paddingLeft:10,paddingRight:10,interactive:!0,layout:i,interactiveChildren:!1,setStateOnChildren:!0,focusable:!0}),r("Button").states.create("hover",{}),r("Button").states.create("down",{stateAnimationDuration:0}),r("Button").states.create("active",{});{const e=r("RoundedRectangle",["button","background"]);oi(e,"fill",t,"primaryButton"),oi(e,"stroke",t,"primaryButtonStroke")}oi(r("RoundedRectangle",["button","background"]).states.create("hover",{}),"fill",t,"primaryButtonHover");oi(r("RoundedRectangle",["button","background"]).states.create("down",{stateAnimationDuration:0}),"fill",t,"primaryButtonDown");oi(r("RoundedRectangle",["button","background"]).states.create("active",{}),"fill",t,"primaryButtonActive");oi(r("Graphics",["button","icon"]),"stroke",t,"primaryButtonText");oi(r("Label",["button"]),"fill",t,"primaryButtonText");r("Button",["zoom"]).setAll({paddingTop:18,paddingBottom:18,paddingLeft:12,paddingRight:12,centerX:46,centerY:-10,y:0,x:U,role:"button",ariaLabel:e.translate("Zoom Out"),layer:30});{const e=r("RoundedRectangle",["background","button","zoom"]);e.setAll({cornerRadiusBL:40,cornerRadiusBR:40,cornerRadiusTL:40,cornerRadiusTR:40}),oi(e,"fill",t,"primaryButton")}oi(r("RoundedRectangle",["background","button","zoom"]).states.create("hover",{}),"fill",t,"primaryButtonHover");oi(r("RoundedRectangle",["background","button","zoom"]).states.create("down",{stateAnimationDuration:0}),"fill",t,"primaryButtonDown");{const e=r("Graphics",["icon","button","zoom"]);e.setAll({crisp:!0,strokeOpacity:.7,draw:e=>{e.moveTo(0,0),e.lineTo(12,0)}}),oi(e,"stroke",t,"primaryButtonText")}r("Button",["resize"]).setAll({paddingTop:9,paddingBottom:9,paddingLeft:13,paddingRight:13,draggable:!0,centerX:V,centerY:V,position:"absolute",role:"slider",ariaValueMin:"0",ariaValueMax:"100",ariaLabel:e.translate("Use up and down arrows to move selection")});{const e=r("RoundedRectangle",["background","resize","button"]);e.setAll({cornerRadiusBL:40,cornerRadiusBR:40,cornerRadiusTL:40,cornerRadiusTR:40}),oi(e,"fill",t,"secondaryButton"),oi(e,"stroke",t,"secondaryButtonStroke")}oi(r("RoundedRectangle",["background","resize","button"]).states.create("hover",{}),"fill",t,"secondaryButtonHover");oi(r("RoundedRectangle",["background","resize","button"]).states.create("down",{stateAnimationDuration:0}),"fill",t,"secondaryButtonDown");{const e=r("Graphics",["resize","button","icon"]);e.setAll({interactive:!1,crisp:!0,strokeOpacity:.5,draw:e=>{e.moveTo(0,.5),e.lineTo(0,12.5),e.moveTo(4,.5),e.lineTo(4,12.5)}}),oi(e,"stroke",t,"secondaryButtonText")}r("Button",["resize","vertical"]).setAll({rotation:90,cursorOverStyle:"ns-resize"}),r("Button",["resize","horizontal"]).setAll({cursorOverStyle:"ew-resize"}),r("Button",["play"]).setAll({paddingTop:13,paddingBottom:13,paddingLeft:14,paddingRight:14,ariaLabel:e.translate("Play"),toggleKey:"active"});{const e=r("RoundedRectangle",["play","background"]);e.setAll({strokeOpacity:.5,cornerRadiusBL:100,cornerRadiusBR:100,cornerRadiusTL:100,cornerRadiusTR:100}),oi(e,"fill",t,"primaryButton")}{const e=r("Graphics",["play","icon"]);e.setAll({stateAnimationDuration:0,dx:1,draw:e=>{e.moveTo(0,-5),e.lineTo(8,0),e.lineTo(0,5),e.lineTo(0,-5)}}),oi(e,"fill",t,"primaryButtonText")}r("Graphics",["play","icon"]).states.create("default",{stateAnimationDuration:0}),r("Graphics",["play","icon"]).states.create("active",{stateAnimationDuration:0,draw:e=>{e.moveTo(-4,-5),e.lineTo(-1,-5),e.lineTo(-1,5),e.lineTo(-4,5),e.lineTo(-4,-5),e.moveTo(4,-5),e.lineTo(1,-5),e.lineTo(1,5),e.lineTo(4,5),e.lineTo(4,-5)}}),r("Button",["switch"]).setAll({paddingTop:4,paddingBottom:4,paddingLeft:4,paddingRight:4,ariaLabel:e.translate("Press ENTER to toggle"),toggleKey:"active",width:40,height:24,layout:null});{const e=r("RoundedRectangle",["switch","background"]);e.setAll({strokeOpacity:.5,cornerRadiusBL:100,cornerRadiusBR:100,cornerRadiusTL:100,cornerRadiusTR:100}),oi(e,"fill",t,"primaryButton")}{const e=r("Circle",["switch","icon"]);e.setAll({radius:8,centerY:0,centerX:0,dx:0}),oi(e,"fill",t,"primaryButtonText")}r("Graphics",["switch","icon"]).states.create("active",{dx:16}),r("Scrollbar").setAll({start:0,end:1,layer:30,animationEasing:ot(nt)}),r("Scrollbar",["vertical"]).setAll({marginRight:13,marginLeft:13,minWidth:12,height:U}),r("Scrollbar",["horizontal"]).setAll({marginTop:13,marginBottom:13,minHeight:12,width:U}),this.rule("Button",["scrollbar"]).setAll({exportable:!1});{const e=r("RoundedRectangle",["scrollbar","main","background"]);e.setAll({cornerRadiusTL:8,cornerRadiusBL:8,cornerRadiusTR:8,cornerRadiusBR:8,fillOpacity:.8}),oi(e,"fill",t,"fill")}{const e=r("RoundedRectangle",["scrollbar","thumb"]);e.setAll({role:"slider",ariaLive:"polite",position:"absolute",draggable:!0}),oi(e,"fill",t,"secondaryButton")}oi(r("RoundedRectangle",["scrollbar","thumb"]).states.create("hover",{}),"fill",t,"secondaryButtonHover");oi(r("RoundedRectangle",["scrollbar","thumb"]).states.create("down",{stateAnimationDuration:0}),"fill",t,"secondaryButtonDown");r("RoundedRectangle",["scrollbar","thumb","vertical"]).setAll({x:V,width:U,centerX:V,ariaLabel:e.translate("Use up and down arrows to move selection")}),r("RoundedRectangle",["scrollbar","thumb","horizontal"]).setAll({y:V,centerY:V,height:U,ariaLabel:e.translate("Use left and right arrows to move selection")});{const e=r("PointedRectangle",["axis","tooltip","background"]);e.setAll({cornerRadius:0}),oi(e,"fill",t,"alternativeBackground")}r("Label",["axis","tooltip"]).setAll({role:void 0}),r("Label",["axis","tooltip","y"]).setAll({textAlign:"right"}),r("Label",["axis","tooltip","y","opposite"]).setAll({textAlign:"left"}),r("Label",["axis","tooltip","x"]).setAll({textAlign:"center"}),r("Tooltip",["categoryaxis"]).setAll({labelText:"{category}"}),r("Star").setAll({spikes:5,innerRadius:5,radius:10}),r("Tooltip",["stock"]).setAll({paddingTop:6,paddingBottom:5,paddingLeft:7,paddingRight:7}),r("PointedRectangle",["tooltip","stock","axis"]).setAll({pointerLength:0,pointerBaseWidth:0,cornerRadius:3}),r("Label",["tooltip","stock"]).setAll({fontSize:"0.8em"}),r("SpriteResizer").setAll({rotationStep:10});r("Container",["resizer","grip"]).states.create("hover",{});{const e=r("RoundedRectangle",["resizer","grip"]);e.setAll({strokeOpacity:.7,strokeWidth:1,fillOpacity:1,width:12,height:12}),oi(e,"fill",t,"background"),oi(e,"stroke",t,"alternativeBackground")}{const e=r("RoundedRectangle",["resizer","grip","outline"]);e.setAll({strokeOpacity:0,fillOpacity:0,width:20,height:20}),e.states.create("hover",{fillOpacity:.3}),oi(e,"fill",t,"alternativeBackground")}r("RoundedRectangle",["resizer","grip","left"]).setAll({cornerRadiusBL:0,cornerRadiusBR:0,cornerRadiusTL:0,cornerRadiusTR:0}),r("RoundedRectangle",["resizer","grip","right"]).setAll({cornerRadiusBL:0,cornerRadiusBR:0,cornerRadiusTL:0,cornerRadiusTR:0});{const e=r("Rectangle",["resizer","rectangle"]);e.setAll({strokeDasharray:[2,2],strokeOpacity:.5,strokeWidth:1}),oi(e,"stroke",t,"alternativeBackground")}}}class hi{constructor(e=1,t=0,i=0,s=1,r=0,a=0){Object.defineProperty(this,"a",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"b",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"c",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"d",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"tx",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"ty",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.a=e,this.b=t,this.c=i,this.d=s,this.tx=r,this.ty=a}setTransform(e,t,i,s,r,a=1){this.a=Math.cos(r)*a,this.b=Math.sin(r)*a,this.c=-Math.sin(r)*a,this.d=Math.cos(r)*a,this.tx=e-(i*this.a+s*this.c),this.ty=t-(i*this.b+s*this.d)}apply(e){return{x:this.a*e.x+this.c*e.y+this.tx,y:this.b*e.x+this.d*e.y+this.ty}}applyInverse(e){const t=1/(this.a*this.d+this.c*-this.b);return{x:this.d*t*e.x+-this.c*t*e.y+(this.ty*this.c-this.tx*this.d)*t,y:this.a*t*e.y+-this.b*t*e.x+(-this.ty*this.a+this.tx*this.b)*t}}append(e){const t=this.a,i=this.b,s=this.c,r=this.d;this.a=e.a*t+e.b*s,this.b=e.a*i+e.b*r,this.c=e.c*t+e.d*s,this.d=e.c*i+e.d*r,this.tx=e.tx*t+e.ty*s+this.tx,this.ty=e.tx*i+e.ty*r+this.ty}prepend(e){const t=this.tx;if(1!==e.a||0!==e.b||0!==e.c||1!==e.d){const t=this.a,i=this.c;this.a=t*e.a+this.b*e.c,this.b=t*e.b+this.b*e.d,this.c=i*e.a+this.d*e.c,this.d=i*e.b+this.d*e.d}this.tx=t*e.a+this.ty*e.c+e.tx,this.ty=t*e.b+this.ty*e.d+e.ty}copyFrom(e){this.a=e.a,this.b=e.b,this.c=e.c,this.d=e.d,this.tx=e.tx,this.ty=e.ty}}var ui=function(){function e(e,t){var i=[],s=!0,r=!1,a=void 0;try{for(var n,o=e[Symbol.iterator]();!(s=(n=o.next()).done)&&(i.push(n.value),!t||i.length!==t);s=!0);}catch(l){r=!0,a=l}finally{try{!s&&o.return&&o.return()}finally{if(r)throw a}}return i}return function(t,i){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return e(t,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),di=2*Math.PI,ci=function(e,t,i,s,r,a,n){var o=e.x,l=e.y;return{x:s*(o*=t)-r*(l*=i)+a,y:r*o+s*l+n}},pi=function(e,t){var i=1.5707963267948966===t?.551915024494:-1.5707963267948966===t?-.551915024494:4/3*Math.tan(t/4),s=Math.cos(e),r=Math.sin(e),a=Math.cos(e+t),n=Math.sin(e+t);return[{x:s-r*i,y:r+s*i},{x:a+n*i,y:n-a*i},{x:a,y:n}]},gi=function(e,t,i,s){var r=e*i+t*s;return r>1&&(r=1),r<-1&&(r=-1),(e*s-t*i<0?-1:1)*Math.acos(r)},bi=function(e,t,i,s,r,a,n,o,l,h,u,d){var c=Math.pow(r,2),p=Math.pow(a,2),g=Math.pow(u,2),b=Math.pow(d,2),_=c*p-c*b-p*g;_<0&&(_=0),_/=c*b+p*g;var f=(_=Math.sqrt(_)*(n===o?-1:1))*r/a*d,m=_*-a/r*u,y=h*f-l*m+(e+i)/2,v=l*f+h*m+(t+s)/2,w=(u-f)/r,x=(d-m)/a,P=(-u-f)/r,k=(-d-m)/a,D=gi(1,0,w,x),O=gi(w,x,P,k);return 0===o&&O>0&&(O-=di),1===o&&O<0&&(O+=di),[y,v,D,O]},_i=function(e){var t=e.px,i=e.py,s=e.cx,r=e.cy,a=e.rx,n=e.ry,o=e.xAxisRotation,l=void 0===o?0:o,h=e.largeArcFlag,u=void 0===h?0:h,d=e.sweepFlag,c=void 0===d?0:d,p=[];if(0===a||0===n)return[];var g=Math.sin(l*di/360),b=Math.cos(l*di/360),_=b*(t-s)/2+g*(i-r)/2,f=-g*(t-s)/2+b*(i-r)/2;if(0===_&&0===f)return[];a=Math.abs(a),n=Math.abs(n);var m=Math.pow(_,2)/Math.pow(a,2)+Math.pow(f,2)/Math.pow(n,2);m>1&&(a*=Math.sqrt(m),n*=Math.sqrt(m));var y=bi(t,i,s,r,a,n,u,c,g,b,_,f),v=ui(y,4),w=v[0],x=v[1],P=v[2],k=v[3],D=Math.abs(k)/(di/4);Math.abs(1-D)<1e-7&&(D=1);var O=Math.max(Math.ceil(D),1);k/=O;for(var T=0;T<O;T++)p.push(pi(P,k)),P+=k;return p.map((function(e){var t=ci(e[0],a,n,b,g,w,x),i=t.x,s=t.y,r=ci(e[1],a,n,b,g,w,x),o=r.x,l=r.y,h=ci(e[2],a,n,b,g,w,x);return{x1:i,y1:s,x2:o,y2:l,x:h.x,y:h.y}}))};function fi(e,t,i){if(t!==i)throw new Error("Required "+i+" arguments for "+e+" but got "+t)}function mi(e,t,i){if(t<i)throw new Error("Required at least "+i+" arguments for "+e+" but got "+t)}function yi(e,t,i){if(mi(e,t,i),t%i!=0)throw new Error("Arguments for "+e+" must be in pairs of "+i)}function vi(e){for(let t=0;t<e.length;t+=7){let i=t+3,s=e[i];if(s.length>1){const t=/^([01])([01])(.*)$/.exec(s);null!==t&&(e.splice(i,0,t[1]),++i,e.splice(i,0,t[2]),++i,t[3].length>0?e[i]=t[3]:e.splice(i,1))}if(++i,s=e[i],s.length>1){const t=/^([01])(.+)$/.exec(s);null!==t&&(e.splice(i,0,t[1]),++i,e[i]=t[2])}}}function wi(e){if(0===e||1===e)return e;throw new Error("Flag must be 0 or 1")}function xi(e){const t=[0,0,0];for(let i=0;i<24;i++)t[i%3]<<=1,t[i%3]|=1&e,e>>=1;return(0|t[2])+(t[1]<<8)+(t[0]<<16)}function Pi(e,t){for(;(!e.interactive||t(e))&&e._parent;)e=e._parent}function ki(e,t,i){return Q(e,ae(t),(e=>{let t=e.touches;t?(0==t.length&&(t=e.changedTouches),i(P(t))):i([e])}))}function Di(e){const t=document.createElement("canvas");t.width=1,t.height=1;const i=t.getContext("2d",{willReadFrequently:!0});i.drawImage(e,0,0,1,1);try{return i.getImageData(0,0,1,1),!1}catch(s){return console.warn('Image "'+e.src+'" is loaded from different host and is not covered by CORS policy. For more information about the implications read here: https://www.amcharts.com/docs/v5/concepts/cors'),!0}}function Oi(e){e.width=0,e.height=0,e.style.width="0px",e.style.height="0px"}class Ti{constructor(){Object.defineProperty(this,"_x",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"_y",{enumerable:!0,configurable:!0,writable:!0,value:0})}get x(){return this._x}get y(){return this._y}set x(e){this._x=e}set y(e){this._y=e}}class Si extends C{constructor(e){super(),Object.defineProperty(this,"_layer",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"mask",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,"visible",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"exportable",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"interactive",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"inactive",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"wheelable",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"cancelTouch",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"isMeasured",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"buttonMode",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"alpha",{enumerable:!0,configurable:!0,writable:!0,value:1}),Object.defineProperty(this,"compoundAlpha",{enumerable:!0,configurable:!0,writable:!0,value:1}),Object.defineProperty(this,"angle",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"scale",{enumerable:!0,configurable:!0,writable:!0,value:1}),Object.defineProperty(this,"x",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"y",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"crisp",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"pivot",{enumerable:!0,configurable:!0,writable:!0,value:new Ti}),Object.defineProperty(this,"filter",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"cursorOverStyle",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_replacedCursorStyle",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_localMatrix",{enumerable:!0,configurable:!0,writable:!0,value:new hi}),Object.defineProperty(this,"_matrix",{enumerable:!0,configurable:!0,writable:!0,value:new hi}),Object.defineProperty(this,"_uMatrix",{enumerable:!0,configurable:!0,writable:!0,value:new hi}),Object.defineProperty(this,"_renderer",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_parent",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_localBounds",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_bounds",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_colorId",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this._renderer=e}_dispose(){this._renderer._removeObject(this),this.getLayer().dirty=!0}getCanvas(){return this.getLayer().view}getLayer(){let e=this;for(;;){if(e._layer)return e._layer;if(!e._parent)return this._renderer.defaultLayer;e=e._parent}}setLayer(e,t){if(null==e)this._layer=void 0;else{const i=!0;this._layer=this._renderer.getLayer(e,i),this._layer.visible=i,this._layer.margin=t,t&&de(this._layer.view,!1),this._renderer._ghostLayer.setMargin(this._renderer.layers),this._parent&&this._parent.registerChildLayer(this._layer),this._layer.dirty=!0,this._renderer.resizeLayer(this._layer),this._renderer.resizeGhost()}}markDirtyLayer(){this.getLayer().dirty=!0}clear(){this.invalidateBounds()}invalidateBounds(){this._localBounds=void 0}_addBounds(e){}_getColorId(){return void 0===this._colorId&&(this._colorId=this._renderer.paintId(this)),this._colorId}_isInteractive(){return 0==this.inactive&&(this.interactive||this._renderer._forceInteractive>0)}_isInteractiveMask(){return this._isInteractive()}contains(e){for(;;){if(e===this)return!0;if(!e._parent)return!1;e=e._parent}}toGlobal(e){return this._matrix.apply(e)}toLocal(e){return this._matrix.applyInverse(e)}getLocalMatrix(){return this._uMatrix.setTransform(0,0,this.pivot.x,this.pivot.y,this.angle*Math.PI/180,this.scale),this._uMatrix}getLocalBounds(){if(!this._localBounds){const e=1e7;this._localBounds={left:e,top:e,right:-e,bottom:-e},this._addBounds(this._localBounds)}return this._localBounds}getAdjustedBounds(e){this._setMatrix();const t=this.getLocalMatrix(),i=t.apply({x:e.left,y:e.top}),s=t.apply({x:e.right,y:e.top}),r=t.apply({x:e.right,y:e.bottom}),a=t.apply({x:e.left,y:e.bottom});return{left:Math.min(i.x,s.x,r.x,a.x),top:Math.min(i.y,s.y,r.y,a.y),right:Math.max(i.x,s.x,r.x,a.x),bottom:Math.max(i.y,s.y,r.y,a.y)}}on(e,t,i){return this.interactive?this._renderer._addEvent(this,e,t,i):new A((()=>{}))}_setMatrix(){this._localMatrix.setTransform(this.x,this.y,this.pivot.x,this.pivot.y,this.angle*Math.PI/180,this.scale),this._matrix.copyFrom(this._localMatrix),this._parent&&this._matrix.prepend(this._parent._matrix)}_transform(e,t){const i=this._matrix;let s=i.tx*t,r=i.ty*t;this.crisp&&(s=Math.floor(s)+.5,r=Math.floor(r)+.5),e.setTransform(i.a*t,i.b*t,i.c*t,i.d*t,s,r)}_transformMargin(e,t,i){const s=this._matrix;e.setTransform(s.a*t,s.b*t,s.c*t,s.d*t,(s.tx+i.left)*t,(s.ty+i.top)*t)}_transformLayer(e,t,i){i.margin?this._transformMargin(e,i.scale||t,i.margin):this._transform(e,i.scale||t)}render(e){if(this.visible&&(!1!==this.exportable||!this._renderer._omitTainted)){this._setMatrix();const t=this._renderer.resolution,i=this._renderer.layers,s=this._renderer._ghostLayer,r=s.context,a=this.mask;a&&a._setMatrix(),f(i,(e=>{if(e){const i=e.context;i.save(),a&&(a._transformLayer(i,t,e),a._runPath(i),i.clip()),i.globalAlpha=this.compoundAlpha*this.alpha,this._transformLayer(i,t,e),this.filter&&(i.filter=this.filter)}})),r.save(),a&&this._isInteractiveMask()&&(a._transformMargin(r,t,s.margin),a._runPath(r),r.clip()),this._transformMargin(r,t,s.margin),this._render(e),r.restore(),f(i,(e=>{e&&e.context.restore()}))}}_render(e){if(!1===this.exportable){(this._layer||e).tainted=!0}}hovering(){return this._renderer._hovering.has(this)}dragging(){return this._renderer._dragging.some((e=>e.value===this))}shouldCancelTouch(){const e=this._renderer;return!(e.tapToActivate&&!e._touchActive)&&(!!this.cancelTouch||!!this._parent&&this._parent.shouldCancelTouch())}}class ji extends Si{constructor(){super(...arguments),Object.defineProperty(this,"interactiveChildren",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"_childLayers",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_children",{enumerable:!0,configurable:!0,writable:!0,value:[]})}_isInteractiveMask(){return this.interactiveChildren||super._isInteractiveMask()}addChild(e){e._parent=this,this._children.push(e),e._layer&&this.registerChildLayer(e._layer)}addChildAt(e,t){e._parent=this,this._children.splice(t,0,e),e._layer&&this.registerChildLayer(e._layer)}removeChild(e){e._parent=void 0,w(this._children,e)}_render(e){super._render(e);const t=this._renderer;this.interactive&&this.interactiveChildren&&++t._forceInteractive;const i=this._layer||e;f(this._children,(e=>{e.compoundAlpha=this.compoundAlpha*this.alpha,e.render(i)})),this.interactive&&this.interactiveChildren&&--t._forceInteractive}registerChildLayer(e){this._childLayers||(this._childLayers=[]),x(this._childLayers,e),this._parent&&this._parent.registerChildLayer(e)}markDirtyLayer(e=!1){super.markDirtyLayer(),e&&this._childLayers&&f(this._childLayers,(e=>e.dirty=!0))}_dispose(){super._dispose(),this._childLayers&&f(this._childLayers,(e=>{e.dirty=!0}))}}function Bi(e,t){e.left=Math.min(e.left,t.x),e.top=Math.min(e.top,t.y),e.right=Math.max(e.right,t.x),e.bottom=Math.max(e.bottom,t.y)}class Ei{colorize(e,t){}path(e){}addBounds(e){}}class Mi extends Ei{colorize(e,t){e.beginPath()}}class Ci extends Ei{constructor(e){super(),Object.defineProperty(this,"color",{enumerable:!0,configurable:!0,writable:!0,value:e})}colorize(e,t){e.fillStyle=void 0!==t?t:this.color}}class Ai extends Ei{constructor(e){super(),Object.defineProperty(this,"clearShadow",{enumerable:!0,configurable:!0,writable:!0,value:e})}colorize(e,t){e.fill(),this.clearShadow&&(e.shadowColor="",e.shadowBlur=0,e.shadowOffsetX=0,e.shadowOffsetY=0)}}class Li extends Ei{colorize(e,t){e.stroke()}}class Ri extends Ei{constructor(e,t,i){super(),Object.defineProperty(this,"width",{enumerable:!0,configurable:!0,writable:!0,value:e}),Object.defineProperty(this,"color",{enumerable:!0,configurable:!0,writable:!0,value:t}),Object.defineProperty(this,"lineJoin",{enumerable:!0,configurable:!0,writable:!0,value:i})}colorize(e,t){e.strokeStyle=void 0!==t?t:this.color,e.lineWidth=this.width,this.lineJoin&&(e.lineJoin=this.lineJoin)}}class Hi extends Ei{constructor(e){super(),Object.defineProperty(this,"dash",{enumerable:!0,configurable:!0,writable:!0,value:e})}colorize(e,t){e.setLineDash(this.dash)}}class Ii extends Ei{constructor(e){super(),Object.defineProperty(this,"dashOffset",{enumerable:!0,configurable:!0,writable:!0,value:e})}colorize(e,t){e.lineDashOffset=this.dashOffset}}class zi extends Ei{constructor(e,t,i,s){super(),Object.defineProperty(this,"x",{enumerable:!0,configurable:!0,writable:!0,value:e}),Object.defineProperty(this,"y",{enumerable:!0,configurable:!0,writable:!0,value:t}),Object.defineProperty(this,"width",{enumerable:!0,configurable:!0,writable:!0,value:i}),Object.defineProperty(this,"height",{enumerable:!0,configurable:!0,writable:!0,value:s})}path(e){e.rect(this.x,this.y,this.width,this.height)}addBounds(e){const t=this.x,i=this.y,s=t+this.width,r=i+this.height;Bi(e,{x:t,y:i}),Bi(e,{x:s,y:i}),Bi(e,{x:t,y:r}),Bi(e,{x:s,y:r})}}class Fi extends Ei{constructor(e,t,i){super(),Object.defineProperty(this,"x",{enumerable:!0,configurable:!0,writable:!0,value:e}),Object.defineProperty(this,"y",{enumerable:!0,configurable:!0,writable:!0,value:t}),Object.defineProperty(this,"radius",{enumerable:!0,configurable:!0,writable:!0,value:i})}path(e){e.moveTo(this.x+this.radius,this.y),e.arc(this.x,this.y,this.radius,0,2*Math.PI)}addBounds(e){Bi(e,{x:this.x-this.radius,y:this.y-this.radius}),Bi(e,{x:this.x+this.radius,y:this.y+this.radius})}}class Ni extends Ei{constructor(e,t,i,s){super(),Object.defineProperty(this,"x",{enumerable:!0,configurable:!0,writable:!0,value:e}),Object.defineProperty(this,"y",{enumerable:!0,configurable:!0,writable:!0,value:t}),Object.defineProperty(this,"radiusX",{enumerable:!0,configurable:!0,writable:!0,value:i}),Object.defineProperty(this,"radiusY",{enumerable:!0,configurable:!0,writable:!0,value:s})}path(e){e.ellipse(0,0,this.radiusX,this.radiusY,0,0,2*Math.PI)}addBounds(e){Bi(e,{x:this.x-this.radiusX,y:this.y-this.radiusY}),Bi(e,{x:this.x+this.radiusX,y:this.y+this.radiusY})}}class Yi extends Ei{constructor(e,t,i,s,r,a){super(),Object.defineProperty(this,"cx",{enumerable:!0,configurable:!0,writable:!0,value:e}),Object.defineProperty(this,"cy",{enumerable:!0,configurable:!0,writable:!0,value:t}),Object.defineProperty(this,"radius",{enumerable:!0,configurable:!0,writable:!0,value:i}),Object.defineProperty(this,"startAngle",{enumerable:!0,configurable:!0,writable:!0,value:s}),Object.defineProperty(this,"endAngle",{enumerable:!0,configurable:!0,writable:!0,value:r}),Object.defineProperty(this,"anticlockwise",{enumerable:!0,configurable:!0,writable:!0,value:a})}path(e){this.radius>0&&e.arc(this.cx,this.cy,this.radius,this.startAngle,this.endAngle,this.anticlockwise)}addBounds(e){let t=st(this.cx,this.cy,this.startAngle*$e,this.endAngle*$e,this.radius);Bi(e,{x:t.left,y:t.top}),Bi(e,{x:t.right,y:t.bottom})}}class Wi extends Ei{constructor(e,t,i,s,r){super(),Object.defineProperty(this,"x1",{enumerable:!0,configurable:!0,writable:!0,value:e}),Object.defineProperty(this,"y1",{enumerable:!0,configurable:!0,writable:!0,value:t}),Object.defineProperty(this,"x2",{enumerable:!0,configurable:!0,writable:!0,value:i}),Object.defineProperty(this,"y2",{enumerable:!0,configurable:!0,writable:!0,value:s}),Object.defineProperty(this,"radius",{enumerable:!0,configurable:!0,writable:!0,value:r})}path(e){this.radius>0&&e.arcTo(this.x1,this.y1,this.x2,this.y2,this.radius)}addBounds(e){}}class Ui extends Ei{constructor(e,t){super(),Object.defineProperty(this,"x",{enumerable:!0,configurable:!0,writable:!0,value:e}),Object.defineProperty(this,"y",{enumerable:!0,configurable:!0,writable:!0,value:t})}path(e){e.lineTo(this.x,this.y)}addBounds(e){Bi(e,{x:this.x,y:this.y})}}class Vi extends Ei{constructor(e,t){super(),Object.defineProperty(this,"x",{enumerable:!0,configurable:!0,writable:!0,value:e}),Object.defineProperty(this,"y",{enumerable:!0,configurable:!0,writable:!0,value:t})}path(e){e.moveTo(this.x,this.y)}addBounds(e){Bi(e,{x:this.x,y:this.y})}}class Gi extends Ei{path(e){e.closePath()}}class Xi extends Ei{constructor(e,t,i,s,r,a){super(),Object.defineProperty(this,"cpX",{enumerable:!0,configurable:!0,writable:!0,value:e}),Object.defineProperty(this,"cpY",{enumerable:!0,configurable:!0,writable:!0,value:t}),Object.defineProperty(this,"cpX2",{enumerable:!0,configurable:!0,writable:!0,value:i}),Object.defineProperty(this,"cpY2",{enumerable:!0,configurable:!0,writable:!0,value:s}),Object.defineProperty(this,"toX",{enumerable:!0,configurable:!0,writable:!0,value:r}),Object.defineProperty(this,"toY",{enumerable:!0,configurable:!0,writable:!0,value:a})}path(e){e.bezierCurveTo(this.cpX,this.cpY,this.cpX2,this.cpY2,this.toX,this.toY)}addBounds(e){Bi(e,{x:this.cpX,y:this.cpY}),Bi(e,{x:this.cpX2,y:this.cpY2}),Bi(e,{x:this.toX,y:this.toY})}}class Ki extends Ei{constructor(e,t,i,s){super(),Object.defineProperty(this,"cpX",{enumerable:!0,configurable:!0,writable:!0,value:e}),Object.defineProperty(this,"cpY",{enumerable:!0,configurable:!0,writable:!0,value:t}),Object.defineProperty(this,"toX",{enumerable:!0,configurable:!0,writable:!0,value:i}),Object.defineProperty(this,"toY",{enumerable:!0,configurable:!0,writable:!0,value:s})}path(e){e.quadraticCurveTo(this.cpX,this.cpY,this.toX,this.toY)}addBounds(e){Bi(e,{x:this.cpX,y:this.cpY}),Bi(e,{x:this.toX,y:this.toY})}}class qi extends Ei{constructor(e,t,i,s,r){super(),Object.defineProperty(this,"color",{enumerable:!0,configurable:!0,writable:!0,value:e}),Object.defineProperty(this,"blur",{enumerable:!0,configurable:!0,writable:!0,value:t}),Object.defineProperty(this,"offsetX",{enumerable:!0,configurable:!0,writable:!0,value:i}),Object.defineProperty(this,"offsetY",{enumerable:!0,configurable:!0,writable:!0,value:s}),Object.defineProperty(this,"opacity",{enumerable:!0,configurable:!0,writable:!0,value:r})}colorize(e,t){this.opacity&&(e.fillStyle=this.color),e.shadowColor=this.color,e.shadowBlur=this.blur,e.shadowOffsetX=this.offsetX,e.shadowOffsetY=this.offsetY}}class Zi extends Ei{constructor(e,t,i,s,r){super(),Object.defineProperty(this,"image",{enumerable:!0,configurable:!0,writable:!0,value:e}),Object.defineProperty(this,"width",{enumerable:!0,configurable:!0,writable:!0,value:t}),Object.defineProperty(this,"height",{enumerable:!0,configurable:!0,writable:!0,value:i}),Object.defineProperty(this,"x",{enumerable:!0,configurable:!0,writable:!0,value:s}),Object.defineProperty(this,"y",{enumerable:!0,configurable:!0,writable:!0,value:r})}path(e){e.drawImage(this.image,this.x,this.y,this.width,this.height)}addBounds(e){Bi(e,{x:this.x,y:this.y}),Bi(e,{x:this.width,y:this.height})}}class Ji extends Si{constructor(){super(...arguments),Object.defineProperty(this,"_operations",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"blendMode",{enumerable:!0,configurable:!0,writable:!0,value:St.NORMAL}),Object.defineProperty(this,"_hasShadows",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"_fillAlpha",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_strokeAlpha",{enumerable:!0,configurable:!0,writable:!0,value:void 0})}clear(){super.clear(),this._operations.length=0}_pushOp(e){this._operations.push(e)}beginFill(e,t=1){this._fillAlpha=t,e?e instanceof We?this._pushOp(new Ci(e.toCSS(t))):(this.isMeasured=!0,this._pushOp(new Ci(e))):this._pushOp(new Ci("rgba(0, 0, 0, "+t+")"))}endFill(){this._pushOp(new Ai(this._hasShadows))}endStroke(){this._pushOp(new Li)}beginPath(){this._pushOp(new Mi)}lineStyle(e=0,t,i=1,s){this._strokeAlpha=i,t?t instanceof We?this._pushOp(new Ri(e,t.toCSS(i),s)):this._pushOp(new Ri(e,t,s)):this._pushOp(new Ri(e,"rgba(0, 0, 0, "+i+")",s))}setLineDash(e){this._pushOp(new Hi(e||[]))}setLineDashOffset(e=0){this._pushOp(new Ii(e))}drawRect(e,t,i,s){this._pushOp(new zi(e,t,i,s))}drawCircle(e,t,i){this._pushOp(new Fi(e,t,i))}drawEllipse(e,t,i,s){this._pushOp(new Ni(e,t,i,s))}arc(e,t,i,s,r,a=!1){this._pushOp(new Yi(e,t,i,s,r,a))}arcTo(e,t,i,s,r){this._pushOp(new Wi(e,t,i,s,r))}lineTo(e,t){this._pushOp(new Ui(e,t))}moveTo(e,t){this._pushOp(new Vi(e,t))}bezierCurveTo(e,t,i,s,r,a){this._pushOp(new Xi(e,t,i,s,r,a))}quadraticCurveTo(e,t,i,s){this._pushOp(new Ki(e,t,i,s))}closePath(){this._pushOp(new Gi)}shadow(e,t=0,i=0,s=0,r){this._hasShadows=!0,this._pushOp(new qi(r?e.toCSS(r):e.toCSS(this._fillAlpha||this._strokeAlpha),t,i,s))}image(e,t,i,s,r){this._pushOp(new Zi(e,t,i,s,r))}svgPath(e){let t=0,i=0,s=null,r=null,a=null,n=null;const o=/([MmZzLlHhVvCcSsQqTtAa])([^MmZzLlHhVvCcSsQqTtAa]*)/g,l=/[\u0009\u0020\u000A\u000C\u000D]*([\+\-]?[0-9]*\.?[0-9]+(?:[eE][\+\-]?[0-9]+)?)[\u0009\u0020\u000A\u000C\u000D]*,?/g;let h;for(;null!==(h=o.exec(e));){const e=h[1],o=h[2],u=[];for(;null!==(h=l.exec(o));)u.push(h[1]);switch("S"!==e&&"s"!==e&&"C"!==e&&"c"!==e&&(s=null,r=null),"Q"!==e&&"q"!==e&&"T"!==e&&"t"!==e&&(a=null,n=null),e){case"M":yi(e,u.length,2),t=+u[0],i=+u[1],this.moveTo(t,i);for(let e=2;e<u.length;e+=2)t=+u[e],i=+u[e+1],this.lineTo(t,i);break;case"m":yi(e,u.length,2),t+=+u[0],i+=+u[1],this.moveTo(t,i);for(let e=2;e<u.length;e+=2)t+=+u[e],i+=+u[e+1],this.lineTo(t,i);break;case"L":yi(e,u.length,2);for(let e=0;e<u.length;e+=2)t=+u[e],i=+u[e+1],this.lineTo(t,i);break;case"l":yi(e,u.length,2);for(let e=0;e<u.length;e+=2)t+=+u[e],i+=+u[e+1],this.lineTo(t,i);break;case"H":mi(e,u.length,1);for(let e=0;e<u.length;++e)t=+u[e],this.lineTo(t,i);break;case"h":mi(e,u.length,1);for(let e=0;e<u.length;++e)t+=+u[e],this.lineTo(t,i);break;case"V":mi(e,u.length,1);for(let e=0;e<u.length;++e)i=+u[e],this.lineTo(t,i);break;case"v":mi(e,u.length,1);for(let e=0;e<u.length;++e)i+=+u[e],this.lineTo(t,i);break;case"C":yi(e,u.length,6);for(let e=0;e<u.length;e+=6){const a=+u[e],n=+u[e+1];s=+u[e+2],r=+u[e+3],t=+u[e+4],i=+u[e+5],this.bezierCurveTo(a,n,s,r,t,i)}break;case"c":yi(e,u.length,6);for(let e=0;e<u.length;e+=6){const a=+u[e]+t,n=+u[e+1]+i;s=+u[e+2]+t,r=+u[e+3]+i,t+=+u[e+4],i+=+u[e+5],this.bezierCurveTo(a,n,s,r,t,i)}break;case"S":yi(e,u.length,4),null!==s&&null!==r||(s=t,r=i);for(let e=0;e<u.length;e+=4){const a=2*t-s,n=2*i-r;s=+u[e],r=+u[e+1],t=+u[e+2],i=+u[e+3],this.bezierCurveTo(a,n,s,r,t,i)}break;case"s":yi(e,u.length,4),null!==s&&null!==r||(s=t,r=i);for(let e=0;e<u.length;e+=4){const a=2*t-s,n=2*i-r;s=+u[e]+t,r=+u[e+1]+i,t+=+u[e+2],i+=+u[e+3],this.bezierCurveTo(a,n,s,r,t,i)}break;case"Q":yi(e,u.length,4);for(let e=0;e<u.length;e+=4)a=+u[e],n=+u[e+1],t=+u[e+2],i=+u[e+3],this.quadraticCurveTo(a,n,t,i);break;case"q":yi(e,u.length,4);for(let e=0;e<u.length;e+=4)a=+u[e]+t,n=+u[e+1]+i,t+=+u[e+2],i+=+u[e+3],this.quadraticCurveTo(a,n,t,i);break;case"T":yi(e,u.length,2),null!==a&&null!==n||(a=t,n=i);for(let e=0;e<u.length;e+=2)a=2*t-a,n=2*i-n,t=+u[e],i=+u[e+1],this.quadraticCurveTo(a,n,t,i);break;case"t":yi(e,u.length,2),null!==a&&null!==n||(a=t,n=i);for(let e=0;e<u.length;e+=2)a=2*t-a,n=2*i-n,t+=+u[e],i+=+u[e+1],this.quadraticCurveTo(a,n,t,i);break;case"A":case"a":const o="a"===e;vi(u),yi(e,u.length,7);for(let e=0;e<u.length;e+=7){let s=+u[e+5],r=+u[e+6];o&&(s+=t,r+=i);f(_i({px:t,py:i,rx:+u[e],ry:+u[e+1],xAxisRotation:+u[e+2],largeArcFlag:wi(+u[e+3]),sweepFlag:wi(+u[e+4]),cx:s,cy:r}),(e=>{this.bezierCurveTo(e.x1,e.y1,e.x2,e.y2,e.x,e.y),t=e.x,i=e.y}))}break;case"Z":case"z":fi(e,u.length,0),this.closePath()}}}_runPath(e){e.beginPath(),f(this._operations,(t=>{t.path(e)}))}_render(e){super._render(e);const t=this._layer||e,i=t.dirty,s=this._isInteractive();if(i||s){const e=t.context,r=this._renderer._ghostLayer.context;let a;i&&(e.globalCompositeOperation=this.blendMode,e.beginPath()),s&&(r.beginPath(),a=this._getColorId()),f(this._operations,(t=>{i&&(t.path(e),t.colorize(e,void 0)),s&&(t.path(r),t.colorize(r,a))}))}}renderDetached(e){if(this.visible){this._setMatrix(),e.save();const t=this.mask;t&&(t._setMatrix(),t._transform(e,1),t._runPath(e),e.clip()),e.globalAlpha=this.compoundAlpha*this.alpha,this._transform(e,1),this.filter&&(e.filter=this.filter),e.globalCompositeOperation=this.blendMode,e.beginPath(),f(this._operations,(t=>{t.path(e),t.colorize(e,void 0)})),e.restore()}}_addBounds(e){this.visible&&this.isMeasured&&f(this._operations,(t=>{t.addBounds(e)}))}}class $i extends Si{constructor(e,t,i){super(e),Object.defineProperty(this,"text",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"style",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"resolution",{enumerable:!0,configurable:!0,writable:!0,value:1}),Object.defineProperty(this,"textVisible",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"_textInfo",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_originalScale",{enumerable:!0,configurable:!0,writable:!0,value:1}),this.text=t,this.style=i}invalidateBounds(){super.invalidateBounds(),this._textInfo=void 0}_shared(e){this.style.textAlign&&(e.textAlign=this.style.textAlign),this.style.direction&&(e.direction=this.style.direction),this.style.textBaseline&&(e.textBaseline=this.style.textBaseline)}_prerender(e,t=!1,i=!1){super._render(e);const s=e.context,r=this._renderer._ghostLayer.context,a=this.style;let n=this._getFontStyle(void 0,i);s.font=n,this._isInteractive()&&!t&&(r.font=n),a.fill&&(a.fill instanceof We?s.fillStyle=a.fill.toCSS(null!=a.fillOpacity?a.fillOpacity:1):s.fillStyle=a.fill),a.shadowColor&&(e.context.shadowColor=a.shadowColor.toCSS(a.shadowOpacity||1)),a.shadowBlur&&(e.context.shadowBlur=a.shadowBlur),a.shadowOffsetX&&(e.context.shadowOffsetX=a.shadowOffsetX),a.shadowOffsetY&&(e.context.shadowOffsetY=a.shadowOffsetY),this._shared(s),this._isInteractive()&&!t&&(r.fillStyle=this._getColorId(),this._shared(r))}_getFontStyle(e,t=!1){const i=this.style;let s=[];return e&&e.fontVariant?s.push(e.fontVariant):i.fontVariant&&s.push(i.fontVariant),t||(e&&e.fontWeight?s.push(e.fontWeight):i.fontWeight&&s.push(i.fontWeight)),e&&e.fontStyle?s.push(e.fontStyle):i.fontStyle&&s.push(i.fontStyle),e&&e.fontSize?(u(e.fontSize)&&(e.fontSize=e.fontSize+"px"),s.push(e.fontSize)):i.fontSize&&(u(i.fontSize)&&(i.fontSize=i.fontSize+"px"),s.push(i.fontSize)),e&&e.fontFamily?s.push(e.fontFamily):i.fontFamily?s.push(i.fontFamily):s.length&&s.push("Arial"),s.join(" ")}_render(e){const t=this._layer||e;if(this._textInfo||this._measure(t),this.textVisible){const e=this._isInteractive(),i=t.context,s=t.dirty,r=this._renderer._ghostLayer.context;i.save(),r.save(),this._prerender(t),f(this._textInfo,((t,a)=>{f(t.textChunks,((a,n)=>{if(a.style&&(i.save(),r.save(),i.font=a.style,this._isInteractive()&&(r.font=a.style)),a.fill&&(i.save(),i.fillStyle=a.fill.toCSS()),s&&i.fillText(a.text,a.offsetX,t.offsetY+a.offsetY),"underline"==a.textDecoration||"line-through"==a.textDecoration){let e,s=1,r=1,n=a.height,o=a.offsetX;switch(this.style.textAlign){case"right":case"end":o-=a.width;break;case"center":o-=a.width/2}if(a.style){switch(Rt.getTextStyle(a.style).fontWeight){case"bolder":case"bold":case"700":case"800":case"900":s=2}}n&&(r=n/20),e="line-through"==a.textDecoration?s+t.offsetY+a.offsetY-a.height/2:s+1.5*r+t.offsetY+a.offsetY,i.save(),i.beginPath(),a.fill?i.strokeStyle=a.fill.toCSS():this.style.fill&&this.style.fill instanceof We&&(i.strokeStyle=this.style.fill.toCSS()),i.lineWidth=s*r,i.moveTo(o,e),i.lineTo(o+a.width,e),i.stroke(),i.restore()}e&&this.interactive&&r.fillText(a.text,a.offsetX,t.offsetY+a.offsetY),a.fill&&i.restore(),a.style&&(i.restore(),r.restore())}))})),i.restore(),r.restore()}}_addBounds(e){if(this.visible&&this.isMeasured){const t=this._measure(this.getLayer());Bi(e,{x:t.left,y:t.top}),Bi(e,{x:t.right,y:t.bottom})}}_ignoreFontWeight(){return/apple/i.test(navigator.vendor)}_measure(e){const t=e.context,i=this._renderer._ghostLayer.context,s="rtl"==this.style.direction;this._textInfo=[];const a=this.style.oversizedBehavior,n=this.style.maxWidth,o=u(n)&&"truncate"==a,l=u(n)&&("wrap"==a||"wrap-no-break"==a);t.save(),i.save(),this._prerender(e,!0,this._ignoreFontWeight());const h="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 ",d=this.text.toString().replace(/\r/g,"").split(/\n/);let c,p=!0,g=0,b=0,_=0;f(d,((e,s)=>{let a;for(a=""==e?[{type:"value",text:""}]:Rt.chunk(e,!1,this.style.ignoreFormatting);a.length>0;){let e={offsetY:_,ascent:0,width:0,height:0,left:0,right:0,textChunks:[]};const s=this._measureText(h,t),u=s.actualBoundingBoxAscent+s.actualBoundingBoxDescent;let d;e.height=u,e.ascent=s.actualBoundingBoxAscent;let f,m,v,w=this.style.textDecoration,x=!1,P=!0,k=[];y(a,((s,u)=>{if("format"==s.type)if("[/]"==s.text)p||(t.restore(),i.restore(),p=!0),f=void 0,c=void 0,m=void 0,w=this.style.textDecoration,v=void 0,d=s.text;else{p||(t.restore(),i.restore());let a=Rt.getTextStyle(s.text);const n=this._getFontStyle(a);t.save(),i.save(),t.font=n,c=n,d=s.text,a.textDecoration&&(w=a.textDecoration),a.fill&&(f=a.fill),a.width&&(m=r(a.width)),a.verticalAlign&&(v=a.verticalAlign),p=!1;const o=this._measureText(h,t),l=o.actualBoundingBoxAscent+o.actualBoundingBoxDescent;l>e.height&&(e.height=l),o.actualBoundingBoxAscent>e.ascent&&(e.ascent=o.actualBoundingBoxAscent)}else if("value"==s.type&&!x){const i=this._measureText(s.text,t);let r=i.actualBoundingBoxLeft+i.actualBoundingBoxRight;if(o){let i=P||this.style.breakWords||!1;const a=this.style.ellipsis||"",o=this._measureText(a,t),l=o.actualBoundingBoxLeft+o.actualBoundingBoxRight;if(e.width+r>n){const r=n-e.width-l;s.text=this._truncateText(t,s.text,r,i),s.text+=a,x=!0}}else if(l&&e.width+r>n){const i=n-e.width,r=this._truncateText(t,s.text,i,!1,P&&"wrap-no-break"!=this.style.oversizedBehavior);if(""==r)return this.textVisible=!0,!1;k=a.slice(u+1),me(r)!=me(s.text)&&(k.unshift({type:"value",text:s.text.substr(r.length)}),d&&k.unshift({type:"format",text:d})),s.text=me(r),a=[],x=!0}let h=1,p=1;if(c&&m&&m>r){const e=r/m;switch(this.style.textAlign){case"right":case"end":h=e;break;case"center":h=e,p=e;break;default:p=e}r=m}const g=i.actualBoundingBoxAscent+i.actualBoundingBoxDescent;g>e.height&&(e.height=g),i.actualBoundingBoxAscent>e.ascent&&(e.ascent=i.actualBoundingBoxAscent),e.width+=r,e.left+=i.actualBoundingBoxLeft/h,e.right+=i.actualBoundingBoxRight/p,e.textChunks.push({style:c,fill:f,text:s.text,width:r,height:g,left:i.actualBoundingBoxLeft,right:i.actualBoundingBoxRight,ascent:i.actualBoundingBoxAscent,offsetX:0,offsetY:0,textDecoration:w,verticalAlign:v}),P=!1}return!0})),this.style.lineHeight instanceof Y?(e.height*=this.style.lineHeight.value,e.ascent*=this.style.lineHeight.value):(e.height*=this.style.lineHeight||1.2,e.ascent*=this.style.lineHeight||1.2),g<e.left&&(g=e.left),b<e.right&&(b=e.right),this._textInfo.push(e),_+=e.height,a=k||[]}})),p||(t.restore(),i.restore()),f(this._textInfo,((e,t)=>{let i=0;f(e.textChunks,(t=>{if(t.offsetX=i+t.left-e.left,t.offsetY+=e.height-e.height*(this.style.baselineRatio||.19),i+=t.width,t.verticalAlign)switch(t.verticalAlign){case"super":t.offsetY-=e.height/2-t.height/2;break;case"sub":t.offsetY+=t.height/2}}))}));const m={left:s?-b:-g,top:0,right:s?g:b,bottom:_};if("none"!==a){const e=this._fitRatio(m);if(e<1)if("fit"==a)u(this.style.minScale)&&e<this.style.minScale?(this.textVisible=!1,m.left=0,m.top=0,m.right=0,m.bottom=0):(this._originalScale&&1!=this._originalScale||(this._originalScale=this.scale),this.scale=e,this.textVisible=!0);else if("hide"==a)this.textVisible=!1,m.left=0,m.top=0,m.right=0,m.bottom=0;else{switch(this.style.textAlign){case"right":case"end":m.left=-n,m.right=0;break;case"center":m.left=-n/2,m.right=n/2;break;default:m.left=0,m.right=n}this.scale=this._originalScale||1,this._originalScale=void 0,this.textVisible=!0}else this.scale=this._originalScale||1,this._originalScale=void 0,this.textVisible=!0}return t.restore(),i.restore(),m}_fitRatio(e){const t=this.style.maxWidth,i=this.style.maxHeight;if(!u(t)&&!u(i))return 1;const s=e.right-e.left,r=e.bottom-e.top;return Math.min(t/s||1,i/r||1)}_truncateText(e,t,i,s=!1,r=!0){let a;do{if(s)t=t.slice(0,-1);else{let e=t.replace(/[^,;:!?\\\/\s]+[,;:!?\\\/\s]*$/g,"");if(""==e&&r)s=!0;else{if(""==e)return t;t=e}}const i=this._measureText(t,e);a=i.actualBoundingBoxLeft+i.actualBoundingBoxRight}while(a>i&&""!=t);return t}_measureText(e,t){let i=t.measureText(e),s={};if(null==i.actualBoundingBoxAscent){const t=document.createElement("div");t.innerText=e,t.style.visibility="hidden",t.style.position="absolute",t.style.top="-1000000px;",t.style.fontFamily=this.style.fontFamily||"",t.style.fontSize=this.style.fontSize+"",document.body.appendChild(t);const r=t.getBoundingClientRect();document.body.removeChild(t);const a=r.height,n=i.width;s={actualBoundingBoxAscent:a,actualBoundingBoxDescent:0,actualBoundingBoxLeft:0,actualBoundingBoxRight:n,fontBoundingBoxAscent:a,fontBoundingBoxDescent:0,width:n}}else s={actualBoundingBoxAscent:i.actualBoundingBoxAscent,actualBoundingBoxDescent:i.actualBoundingBoxDescent,actualBoundingBoxLeft:i.actualBoundingBoxLeft,actualBoundingBoxRight:i.actualBoundingBoxRight,fontBoundingBoxAscent:i.actualBoundingBoxAscent,fontBoundingBoxDescent:i.actualBoundingBoxDescent,width:i.width};const r=i.width;switch(this.style.textAlign){case"right":case"end":s.actualBoundingBoxLeft=r,s.actualBoundingBoxRight=0;break;case"center":s.actualBoundingBoxLeft=r/2,s.actualBoundingBoxRight=r/2;break;default:s.actualBoundingBoxLeft=0,s.actualBoundingBoxRight=r}return s}}class Qi{constructor(){Object.defineProperty(this,"fill",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"fillOpacity",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"textAlign",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"fontFamily",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"fontSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"fontWeight",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"fontStyle",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"fontVariant",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"textDecoration",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shadowColor",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shadowBlur",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shadowOffsetX",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shadowOffsetY",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shadowOpacity",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"lineHeight",{enumerable:!0,configurable:!0,writable:!0,value:W(120)}),Object.defineProperty(this,"baselineRatio",{enumerable:!0,configurable:!0,writable:!0,value:.19}),Object.defineProperty(this,"direction",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"textBaseline",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"oversizedBehavior",{enumerable:!0,configurable:!0,writable:!0,value:"none"}),Object.defineProperty(this,"breakWords",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"ellipsis",{enumerable:!0,configurable:!0,writable:!0,value:"…"}),Object.defineProperty(this,"maxWidth",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"maxHeight",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"minScale",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"ignoreFormatting",{enumerable:!0,configurable:!0,writable:!0,value:!1})}}class es extends $i{constructor(){super(...arguments),Object.defineProperty(this,"textType",{enumerable:!0,configurable:!0,writable:!0,value:"circular"}),Object.defineProperty(this,"radius",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"startAngle",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"inside",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"orientation",{enumerable:!0,configurable:!0,writable:!0,value:"auto"}),Object.defineProperty(this,"kerning",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"_textReversed",{enumerable:!0,configurable:!0,writable:!0,value:!1})}_render(e){if("circular"===this.textType)this._renderCircular(e);else super._render(e)}_renderCircular(e){if(this.textVisible){const t=this._layer||e;this._prerender(t);const i=this._isInteractive(),s=t.context,r=t.dirty,a=this._renderer._ghostLayer.context;s.save(),i&&a.save(),this._textInfo||this._measure(t);let n=this.radius||0,o=this.startAngle||0,l=0,h=this.orientation,u="auto"==h?"auto":"inward"==h;const d=this.inside,c=this.style.textAlign||"left",p=this.kerning||0;let g="left"==c?1:-1;const b=!this._textReversed;if("auto"==u){let e=0,t=0;f(this._textInfo,((t,i)=>{const s=o+t.width/(n-t.height)/2*-g;s>e&&(e=s)})),t="left"==c?(e+l/2)*$e:"right"==c?(e-l/2)*$e:o*$e,t=it(t),u=t>=270||t<=90}1==u&&b&&(this._textInfo.reverse(),this._textReversed=!0),f(this._textInfo,((e,t)=>{const h=e.height;d||(n+=h),(-1==g&&u||1==g&&!u)&&b&&e.textChunks.reverse();let _=o;l=0,"center"==c&&(_+=e.width/(n-h)/2*-g,l=_-o),_+=Math.PI*(u?0:1),s.save(),i&&a.save(),s.rotate(_),i&&a.rotate(_);let m=0;f(e.textChunks,((e,t)=>{const o=e.text,l=e.width;m=l/2/(n-h)*g,s.rotate(m),i&&a.rotate(m),e.style&&(s.save(),a.save(),s.font=e.style,i&&(a.font=e.style)),e.fill&&(s.save(),s.fillStyle=e.fill.toCSS()),s.textBaseline="middle",s.textAlign="center",i&&(a.textBaseline="middle",a.textAlign="center"),r&&s.fillText(o,0,(u?1:-1)*(0-n+h/2)),i&&a.fillText(o,0,(u?1:-1)*(0-n+h/2)),e.fill&&s.restore(),e.style&&(s.restore(),a.restore()),m=(l/2+p)/(n-h)*g,s.rotate(m),i&&a.rotate(m)})),s.restore(),i&&a.restore(),d&&(n-=h)})),s.restore(),i&&a.restore()}}_measure(e){return"circular"===this.textType?this._measureCircular(e):super._measure(e)}_measureCircular(e){const t=e.context,i=this._renderer._ghostLayer.context,s="rtl"==this.style.direction,a=this.style.oversizedBehavior,n=this.style.maxWidth,o=u(n)&&"truncate"==a,l=this.style.ellipsis||"";let h;this.textVisible=!0,this._textInfo=[],this._textReversed=!1,t.save(),i.save(),this._prerender(e,!0);const d=this.text.toString().replace(/\r/g,"").split(/\n/);let c=!0,p=0,g=0;return f(d,((e,a)=>{let u,d,b,_=Rt.chunk(e,!1,this.style.ignoreFormatting),m={offsetY:g,ascent:0,width:0,height:0,left:0,right:0,textChunks:[]};f(_,((e,a)=>{if("format"==e.type){if("[/]"==e.text)c||(t.restore(),i.restore(),c=!0),d=void 0,u=void 0,b=void 0;else{let s=Rt.getTextStyle(e.text);const a=this._getFontStyle(s);t.save(),i.save(),t.font=a,u=a,s.fill&&(d=s.fill),s.width&&(b=r(s.width)),c=!1}o&&(h=this._measureText(l,t))}else if("value"==e.type){const i=e.text.match(/./gu)||[];s&&i.reverse();for(let e=0;e<i.length;e++){const r=i[e],a=this._measureText(r,t);let c=a.width;u&&b&&b>c&&(c=b);const g=a.actualBoundingBoxAscent+a.actualBoundingBoxDescent;if(g>m.height&&(m.height=g),a.actualBoundingBoxAscent>m.ascent&&(m.ascent=a.actualBoundingBoxAscent),m.width+=c,m.left+=a.actualBoundingBoxLeft,m.right+=a.actualBoundingBoxRight,m.textChunks.push({style:u,fill:d,text:r,width:c,height:g+a.actualBoundingBoxDescent,left:a.actualBoundingBoxLeft,right:a.actualBoundingBoxRight,ascent:a.actualBoundingBoxAscent,offsetX:0,offsetY:g,textDecoration:void 0}),p+=c,o){h||(h=this._measureText(l,t));const e=h.actualBoundingBoxLeft+h.actualBoundingBoxRight;if(p+=e,p+e>n){1==m.textChunks.length?this.textVisible=!1:(m.width+=e,m.left+=h.actualBoundingBoxLeft,m.right+=h.actualBoundingBoxRight,m.textChunks.push({style:u,fill:d,text:l,width:e,height:g+h.actualBoundingBoxDescent,left:h.actualBoundingBoxLeft,right:h.actualBoundingBoxRight,ascent:h.actualBoundingBoxAscent,offsetX:0,offsetY:g,textDecoration:void 0}));break}}if(s)break}}})),this.style.lineHeight instanceof Y?m.height*=this.style.lineHeight.value:m.height*=this.style.lineHeight||1.2,this._textInfo.push(m),g+=m.height})),c||(t.restore(),i.restore()),"hide"==a&&p>n&&(this.textVisible=!1),f(this._textInfo,(e=>{f(e.textChunks,(t=>{t.offsetY+=Math.round((e.height-t.height+(e.ascent-t.ascent))/2)}))})),t.restore(),i.restore(),{left:0,top:0,right:0,bottom:0}}}class ts extends Si{constructor(e,t){super(e),Object.defineProperty(this,"width",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"height",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"image",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"tainted",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shadowColor",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shadowBlur",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shadowOffsetX",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shadowOffsetY",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shadowOpacity",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_imageMask",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.image=t}_dispose(){super._dispose(),this._imageMask&&Oi(this._imageMask)}getLocalBounds(){if(!this._localBounds){let e=0,t=0;this.width&&(e=this.width),this.height&&(t=this.height),this._localBounds={left:0,top:0,right:e,bottom:t},this._addBounds(this._localBounds)}return this._localBounds}_render(e){if(super._render(e),this.image){const t=this._layer||e;if(void 0===this.tainted&&(this.tainted=Di(this.image),t.tainted=!0),this.tainted&&this._renderer._omitTainted)return;if(t.dirty){this.shadowColor&&(t.context.shadowColor=this.shadowColor.toCSS(this.shadowOpacity||1)),this.shadowBlur&&(t.context.shadowBlur=this.shadowBlur),this.shadowOffsetX&&(t.context.shadowOffsetX=this.shadowOffsetX),this.shadowOffsetY&&(t.context.shadowOffsetY=this.shadowOffsetY);const e=this.width||this.image.naturalWidth,i=this.height||this.image.naturalHeight;t.context.drawImage(this.image,0,0,e,i)}if(this.interactive&&this._isInteractive()){const e=this._getMask(this.image);this._renderer._ghostLayer.context.drawImage(e,0,0)}}}clear(){super.clear(),this.image=void 0,this._imageMask=void 0}_getMask(e){if(void 0===this._imageMask){const t=this.width||e.naturalWidth,i=this.height||e.naturalHeight,s=document.createElement("canvas");s.width=t,s.height=i;const r=s.getContext("2d");r.imageSmoothingEnabled=!1,r.fillStyle=this._getColorId(),r.fillRect(0,0,t,i),Di(e)||(r.globalCompositeOperation="destination-in",r.drawImage(e,0,0,t,i)),this._imageMask=s}return this._imageMask}}class is{constructor(e,t,i,s){Object.defineProperty(this,"event",{enumerable:!0,configurable:!0,writable:!0,value:e}),Object.defineProperty(this,"originalPoint",{enumerable:!0,configurable:!0,writable:!0,value:t}),Object.defineProperty(this,"point",{enumerable:!0,configurable:!0,writable:!0,value:i}),Object.defineProperty(this,"bbox",{enumerable:!0,configurable:!0,writable:!0,value:s}),Object.defineProperty(this,"id",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"simulated",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"native",{enumerable:!0,configurable:!0,writable:!0,value:!0}),te("touchevents")&&e instanceof Touch?this.id=e.identifier:this.id=null}}class ss extends L{constructor(e){if(super(),Object.defineProperty(this,"view",{enumerable:!0,configurable:!0,writable:!0,value:document.createElement("div")}),Object.defineProperty(this,"_layerDom",{enumerable:!0,configurable:!0,writable:!0,value:document.createElement("div")}),Object.defineProperty(this,"layers",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"_dirtyLayers",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"defaultLayer",{enumerable:!0,configurable:!0,writable:!0,value:this.getLayer(0)}),Object.defineProperty(this,"_ghostLayer",{enumerable:!0,configurable:!0,writable:!0,value:new rs}),Object.defineProperty(this,"_patternCanvas",{enumerable:!0,configurable:!0,writable:!0,value:document.createElement("canvas")}),Object.defineProperty(this,"_patternContext",{enumerable:!0,configurable:!0,writable:!0,value:this._patternCanvas.getContext("2d")}),Object.defineProperty(this,"_domWidth",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"_domHeight",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"_canvasWidth",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"_canvasHeight",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"resolution",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"interactionsEnabled",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"_listeners",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"_events",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"_colorId",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"_colorMap",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"_forceInteractive",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"_omitTainted",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"_hovering",{enumerable:!0,configurable:!0,writable:!0,value:new Set}),Object.defineProperty(this,"_dragging",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"_mousedown",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"_lastPointerMoveEvent",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"tapToActivate",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"tapToActivateTimeout",{enumerable:!0,configurable:!0,writable:!0,value:3e3}),Object.defineProperty(this,"_touchActive",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"_touchActiveTimeout",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.resolution=e??window.devicePixelRatio,this.view.style.position="absolute",this.view.appendChild(this._layerDom),this._disposers.push(new A((()=>{q(this._events,((e,t)=>{t.disposer.dispose()})),f(this.layers,(e=>{Oi(e.view),e.exportableView&&Oi(e.exportableView)})),Oi(this._ghostLayer.view),Oi(this._patternCanvas)}))),this._disposers.push(ee((()=>{null==e&&(this.resolution=window.devicePixelRatio)}))),te("touchevents")){const e=e=>{0!==this._dragging.length&&y(this._dragging,(t=>!t.value.shouldCancelTouch()||(e.preventDefault(),!1))),this._touchActiveTimeout&&this._delayTouchDeactivate()};this._disposers.push(Q(window,"touchstart",e,{passive:!1})),this._disposers.push(Q(this.view,"touchstart",e,{passive:!1})),this._disposers.push(Q(this.view,"touchmove",(()=>{this._touchActiveTimeout&&this._delayTouchDeactivate()}),{passive:!0})),this._disposers.push(Q(window,"click",(e=>{this._touchActive=!1}),{passive:!0})),this._disposers.push(Q(this.view,"click",(e=>{window.setTimeout((()=>{this._touchActive=!0,this._delayTouchDeactivate()}),100)}),{passive:!0}))}te("wheelevents")&&this._disposers.push(Q(this.view,"wheel",(e=>{let t=!1;this._hovering.forEach((e=>{if(e.wheelable)return t=!0,!1})),t&&e.preventDefault()}),{passive:!1}))}_delayTouchDeactivate(){this._touchActiveTimeout&&clearTimeout(this._touchActiveTimeout),this.tapToActivateTimeout>0&&(this._touchActiveTimeout=window.setTimeout((()=>{this._touchActive=!1}),this.tapToActivateTimeout))}get debugGhostView(){return!!this._ghostLayer.view.parentNode}set debugGhostView(e){e?this._ghostLayer.view.parentNode||this.view.appendChild(this._ghostLayer.view):this._ghostLayer.view.parentNode&&this._ghostLayer.view.parentNode.removeChild(this._ghostLayer.view)}createLinearGradient(e,t,i,s){return this.defaultLayer.context.createLinearGradient(e,t,i,s)}createRadialGradient(e,t,i,s,r,a){return this.defaultLayer.context.createRadialGradient(e,t,i,s,r,a)}createPattern(e,t,i,s,r){return this._patternCanvas.width=s,this._patternCanvas.height=r,this._patternContext.clearRect(0,0,s,r),t.renderDetached(this._patternContext),e.renderDetached(this._patternContext),this._patternContext.createPattern(this._patternCanvas,i)}makeContainer(){return new ji(this)}makeGraphics(){return new Ji(this)}makeText(e,t){return new $i(this,e,t)}makeTextStyle(){return new Qi}makeRadialText(e,t){return new es(this,e,t)}makePicture(e){return new ts(this,e)}resizeLayer(e){e.resize(this._canvasWidth,this._canvasHeight,this._domWidth,this._domHeight,this.resolution)}resizeGhost(){this._ghostLayer.resize(this._canvasWidth,this._canvasHeight,this._domWidth,this._domHeight,this.resolution)}resize(e,t,i,s){this._canvasWidth=e,this._canvasHeight=t,this._domWidth=i,this._domHeight=s,f(this.layers,(e=>{e&&(e.dirty=!0,this.resizeLayer(e))})),this.resizeGhost(),this.view.style.width=i+"px",this.view.style.height=s+"px"}createDetachedLayer(e=!1){const t=document.createElement("canvas"),i=t.getContext("2d",{willReadFrequently:e}),s=new as(t,i);return t.style.position="absolute",t.style.top="0px",t.style.left="0px",s}getLayerByOrder(e){const t=this.layers,i=t.length;for(let s=0;s<i;s++){const i=t[s];if(i.order==e)return i}}getLayer(e,t=!0){let i=this.getLayerByOrder(e);if(i)return i;const s=this.createDetachedLayer(99==e);s.order=e,s.visible=t,s.visible&&this.resizeLayer(s);const r=this.layers;r.push(s),r.sort(((e,t)=>e.order>t.order?1:e.order<t.order?-1:0));const a=r.length;let n;for(let o=g(r,s)+1;o<a;o++)if(r[o].visible){n=r[o];break}return s.visible&&(void 0===n?this._layerDom.appendChild(s.view):this._layerDom.insertBefore(s.view,n.view)),s}render(e){if(this._dirtyLayers.length=0,f(this.layers,(e=>{e&&e.dirty&&e.visible&&(this._dirtyLayers.push(e),e.clear())})),this._ghostLayer.clear(),e.render(this.defaultLayer),this._ghostLayer.context.restore(),f(this.layers,(e=>{if(e){const t=e.context;t.beginPath(),t.moveTo(0,0),t.stroke()}})),f(this._dirtyLayers,(e=>{e.context.restore(),e.dirty=!1})),this._hovering.size&&this._lastPointerMoveEvent){const e=this._lastPointerMoveEvent.native;f(this._lastPointerMoveEvent.events,(t=>{this._dispatchGlobalMousemove(t,e)}))}}paintId(e){const t=xi(++this._colorId),i=We.fromHex(t).toCSS();return this._colorMap[i]=e,i}_removeObject(e){void 0!==e._colorId&&delete this._colorMap[e._colorId]}_adjustBoundingBox(e){const t=this._ghostLayer.margin;return new DOMRect(e.left-t.left,e.top-t.top,e.width+t.left+t.right,e.height+t.top+t.bottom)}getEvent(e,t=!0){const i=this.view.getBoundingClientRect(),s={x:e.clientX||0,y:e.clientY||0},r={x:s.x-(t?i.left:0),y:s.y-(t?i.top:0)};return new is(e,s,r,this._adjustBoundingBox(i))}_getHitTarget(e,t,i){if(0===t.width||0===t.height||e.x<t.left||e.x>t.right||e.y<t.top||e.y>t.bottom)return;if(!this._layerDom.contains(i.target))return;const s=this._ghostLayer.getImageData(e,t);if(0===s.data[0]&&0===s.data[1]&&0===s.data[2])return!1;const r=We.fromRGB(s.data[0],s.data[1],s.data[2]).toCSS();return this._colorMap[r]}_withEvents(e,t){const i=this._events[e];if(void 0!==i){i.dispatching=!0;try{t(i)}finally{i.dispatching=!1,i.cleanup&&(i.cleanup=!1,M(i.callbacks,(e=>!e.disposed)),0===i.callbacks.length&&(i.disposer.dispose(),delete this._events[e]))}}}_dispatchEventAll(e,t){this.interactionsEnabled&&this._withEvents(e,(e=>{f(e.callbacks,(e=>{e.disposed||e.callback.call(e.context,t)}))}))}_dispatchEvent(e,t,i){if(!this.interactionsEnabled)return!1;let s=!1;return this._withEvents(e,(e=>{f(e.callbacks,(e=>{e.disposed||e.object!==t||(e.callback.call(e.context,i),s=!0)}))})),s}_dispatchMousedown(e){const t=e.button;if(0!=t&&2!=t&&1!=t&&void 0!==t)return;const i=this.getEvent(e),s=this._getHitTarget(i.originalPoint,i.bbox,e);if(s){const e=i.id;let t=!1;Pi(s,(s=>{const r={id:e,value:s};if(this._mousedown.push(r),!t&&this._dispatchEvent("pointerdown",s,i)){t=!0;this._dragging.some((t=>t.value===s&&t.id===e))||this._dragging.push(r)}return!0}))}}_dispatchGlobalMousemove(e,t){const i=this.getEvent(e),s=this._getHitTarget(i.originalPoint,i.bbox,e);i.native=t,s?(this._hovering.forEach((e=>{e.contains(s)||(this._hovering.delete(e),e.cursorOverStyle&&oe(document.body,"cursor",e._replacedCursorStyle),this._dispatchEvent("pointerout",e,i))})),i.native&&Pi(s,(e=>(this._hovering.has(e)||(this._hovering.add(e),e.cursorOverStyle&&(e._replacedCursorStyle=le(document.body,"cursor"),oe(document.body,"cursor",e.cursorOverStyle)),this._dispatchEvent("pointerover",e,i)),!0)))):(this._hovering.forEach((e=>{e.cursorOverStyle&&oe(document.body,"cursor",e._replacedCursorStyle),this._dispatchEvent("pointerout",e,i)})),this._hovering.clear()),this._dispatchEventAll("globalpointermove",i)}_dispatchGlobalMouseup(e,t){const i=this.getEvent(e);i.native=t,this._dispatchEventAll("globalpointerup",i)}_dispatchDragMove(e){if(0!==this._dragging.length){const t=this.getEvent(e),i=t.id;this._dragging.forEach((e=>{e.id===i&&this._dispatchEvent("pointermove",e.value,t)}))}}_dispatchDragEnd(e){const t=e.button;let i;if(0==t||void 0===t)i="click";else if(2==t)i="rightclick";else{if(1!=t)return;i="middleclick"}const s=this.getEvent(e),r=s.id;if(0!==this._mousedown.length){const t=this._getHitTarget(s.originalPoint,s.bbox,e);t&&this._mousedown.forEach((e=>{e.id===r&&e.value.contains(t)&&this._dispatchEvent(i,e.value,s)})),this._mousedown.length=0}0!==this._dragging.length&&(this._dragging.forEach((e=>{e.id===r&&this._dispatchEvent("pointerup",e.value,s)})),this._dragging.length=0)}_dispatchDoubleClick(e){const t=this.getEvent(e),i=this._getHitTarget(t.originalPoint,t.bbox,e);i&&Pi(i,(e=>!this._dispatchEvent("dblclick",e,t)))}_dispatchWheel(e){const t=this.getEvent(e),i=this._getHitTarget(t.originalPoint,t.bbox,e);i&&Pi(i,(e=>!this._dispatchEvent("wheel",e,t)))}_makeSharedEvent(e,t){if(void 0===this._listeners[e]){const i=t();this._listeners[e]=new H((()=>{delete this._listeners[e],i.dispose()}))}return this._listeners[e].increment()}_onPointerEvent(e,t){let i=!1,s=null;function r(){s=null,i=!1}return new R([new A((()=>{null!==s&&clearTimeout(s),r()})),Q(this.view,ae(e),(e=>{i=!0,null!==s&&clearTimeout(s),s=window.setTimeout(r,0)})),ki(window,e,(e=>{null!==s&&(clearTimeout(s),s=null),t(e,i),i=!1}))])}_initEvent(e){switch(e){case"globalpointermove":case"pointerover":case"pointerout":return this._makeSharedEvent("pointermove",(()=>{const e=(e,t)=>{this._lastPointerMoveEvent={events:e,native:t},f(e,(e=>{this._dispatchGlobalMousemove(e,t)}))};return new R([this._onPointerEvent("pointerdown",e),this._onPointerEvent("pointermove",e)])}));case"globalpointerup":return this._makeSharedEvent("pointerup",(()=>{var e=this._onPointerEvent("pointerup",((e,t)=>{f(e,(e=>{this._dispatchGlobalMouseup(e,t)})),this._lastPointerMoveEvent={events:e,native:t}})),t=this._onPointerEvent("pointercancel",((e,t)=>{f(e,(e=>{this._dispatchGlobalMouseup(e,t)})),this._lastPointerMoveEvent={events:e,native:t}}));return new A((()=>{e.dispose(),t.dispose()}))}));case"click":case"rightclick":case"middleclick":case"pointerdown":case"pointermove":case"pointerup":return this._makeSharedEvent("pointerdown",(()=>{const e=this._onPointerEvent("pointerdown",(e=>{f(e,(e=>{this._dispatchMousedown(e)}))})),t=this._onPointerEvent("pointermove",(e=>{f(e,(e=>{this._dispatchDragMove(e)}))})),i=this._onPointerEvent("pointerup",(e=>{f(e,(e=>{this._dispatchDragEnd(e)}))})),s=this._onPointerEvent("pointercancel",(e=>{f(e,(e=>{this._dispatchDragEnd(e)}))}));return new A((()=>{e.dispose(),t.dispose(),i.dispose(),s.dispose()}))}));case"dblclick":return this._makeSharedEvent("dblclick",(()=>this._onPointerEvent("dblclick",(e=>{f(e,(e=>{this._dispatchDoubleClick(e)}))}))));case"wheel":return this._makeSharedEvent("wheel",(()=>Q(window,ae("wheel"),(e=>{this._dispatchWheel(e)}),{passive:!1})))}}_addEvent(e,t,i,s){let r=this._events[t];void 0===r&&(r=this._events[t]={disposer:this._initEvent(t),callbacks:[],dispatching:!1,cleanup:!1});const a={object:e,context:s,callback:i,disposed:!1};return r.callbacks.push(a),new A((()=>{a.disposed=!0,r.dispatching?r.cleanup=!0:(w(r.callbacks,a),0===r.callbacks.length&&(r.disposer.dispose(),delete this._events[t]))}))}getCanvas(e,t){this.render(e),t||(t={});let i=this.resolution,s=Math.floor(this._canvasWidth*this.resolution),r=Math.floor(this._canvasHeight*this.resolution);if(t.minWidth&&t.minWidth>s){let e=t.minWidth/s;e>i&&(i=e*this.resolution)}if(t.minHeight&&t.minHeight>r){let e=t.minHeight/r;e>i&&(i=e*this.resolution)}if(t.maxWidth&&t.maxWidth<s){let e=t.maxWidth/s;e<i&&(i=e*this.resolution)}if(t.maxHeight&&t.maxHeight>r){let e=t.maxHeight/r;e<i&&(i=e*this.resolution)}t.maintainPixelRatio&&(i/=this.resolution);const a=[];let n=!1;const o=document.createElement("canvas");i!=this.resolution&&(n=!0,s=s*i/this.resolution,r=r*i/this.resolution),o.width=s,o.height=r,o.style.position="fixed",o.style.top="-10000px",this.view.appendChild(o),a.push(o);const l=o.getContext("2d");let h=0,u=0,d=!1;return f(this.layers,(e=>{if(e&&e.visible&&(e.tainted||n)){d=!0,e.exportableView=e.view,e.exportableContext=e.context,e.view=document.createElement("canvas"),e.view.style.position="fixed",e.view.style.top="-10000px",this.view.appendChild(e.view),a.push(e.view);let t=0,n=0;e.margin&&(t+=e.margin.left||0+e.margin.right||0,n+=e.margin.top||0+e.margin.bottom||0),e.view.width=s+t,e.view.height=r+n,e.context=e.view.getContext("2d"),e.dirty=!0,e.scale=i}})),d&&(this._omitTainted=!0,this.render(e),this._omitTainted=!1),f(this.layers,(e=>{if(e&&e.visible){let t=0,i=0;e.margin&&(t=-(e.margin.left||0)*this.resolution,i=-(e.margin.top||0)*this.resolution),l.drawImage(e.view,t,i),e.exportableView&&(e.view=e.exportableView,e.exportableView=void 0),e.exportableContext&&(e.context=e.exportableContext,e.exportableContext=void 0),h<e.view.clientWidth&&(h=e.view.clientWidth),u<e.view.clientHeight&&(u=e.view.clientHeight),e.scale=void 0}})),o.style.width=h+"px",o.style.height=u+"px",f(a,(e=>{e.style.position="",e.style.top="",this.view.removeChild(e)})),o}}class rs{constructor(){Object.defineProperty(this,"view",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"context",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"margin",{enumerable:!0,configurable:!0,writable:!0,value:{left:0,right:0,top:0,bottom:0}}),Object.defineProperty(this,"_width",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"_height",{enumerable:!0,configurable:!0,writable:!0,value:0}),this.view=document.createElement("canvas"),this.context=this.view.getContext("2d",{alpha:!1,willReadFrequently:!0}),this.context.imageSmoothingEnabled=!1,this.view.style.position="absolute",this.view.style.top="0px",this.view.style.left="0px"}resize(e,t,i,s,r){e+=this.margin.left+this.margin.right,t+=this.margin.top+this.margin.bottom,i+=this.margin.left+this.margin.right,s+=this.margin.top+this.margin.bottom,this.view.style.left=-this.margin.left+"px",this.view.style.top=-this.margin.top+"px",this._width=Math.floor(e*r),this._height=Math.floor(t*r),this.view.width=this._width,this.view.style.width=i+"px",this.view.height=this._height,this.view.style.height=s+"px"}getImageData(e,t){return this.context.getImageData(Math.round((e.x-t.left)/t.width*this._width),Math.round((e.y-t.top)/t.height*this._height),1,1)}setMargin(e){this.margin.left=0,this.margin.right=0,this.margin.top=0,this.margin.bottom=0,f(e,(e=>{e.margin&&(this.margin.left=Math.max(this.margin.left,e.margin.left),this.margin.right=Math.max(this.margin.right,e.margin.right),this.margin.top=Math.max(this.margin.top,e.margin.top),this.margin.bottom=Math.max(this.margin.bottom,e.margin.bottom))}))}clear(){this.context.save(),this.context.fillStyle="#000",this.context.fillRect(0,0,this._width,this._height)}}class as{constructor(e,t){Object.defineProperty(this,"view",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"context",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"tainted",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"margin",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"order",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"visible",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"width",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"height",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"scale",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"dirty",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"exportableView",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"exportableContext",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_width",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"_height",{enumerable:!0,configurable:!0,writable:!0,value:0}),this.view=e,this.context=t}resize(e,t,i,s,r){null!=this.width&&(e=this.width,i=this.width),null!=this.height&&(t=this.height,s=this.height),this.margin?(e+=this.margin.left+this.margin.right,t+=this.margin.top+this.margin.bottom,i+=this.margin.left+this.margin.right,s+=this.margin.top+this.margin.bottom,this.view.style.left=-this.margin.left+"px",this.view.style.top=-this.margin.top+"px"):(this.view.style.left="0px",this.view.style.top="0px"),this._width=Math.floor(e*r),this._height=Math.floor(t*r),this.view.width=this._width,this.view.style.width=i+"px",this.view.height=this._height,this.view.style.height=s+"px"}clear(){this.context.save(),this.context.clearRect(0,0,this._width,this._height)}}function ns(e,t){null==e?requestAnimationFrame(t):setTimeout((()=>{requestAnimationFrame(t)}),1e3/e)}class os{constructor(e,t={},i){if(Object.defineProperty(this,"dom",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_inner",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_settings",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_isDirty",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"_isDirtyParents",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"_dirty",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"_dirtyParents",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"_dirtyBounds",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"_dirtyPositions",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"_ticker",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,"_tickers",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"_updateTick",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"events",{enumerable:!0,configurable:!0,writable:!0,value:new I}),Object.defineProperty(this,"animationTime",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,"_animations",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"_renderer",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_rootContainer",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"container",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"tooltipContainer",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_tooltipContainerSettings",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_tooltip",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"language",{enumerable:!0,configurable:!0,writable:!0,value:ai.new(this,{})}),Object.defineProperty(this,"locale",{enumerable:!0,configurable:!0,writable:!0,value:ri}),Object.defineProperty(this,"utc",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"timezone",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"fps",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"numberFormatter",{enumerable:!0,configurable:!0,writable:!0,value:$t.new(this,{})}),Object.defineProperty(this,"dateFormatter",{enumerable:!0,configurable:!0,writable:!0,value:ii.new(this,{})}),Object.defineProperty(this,"durationFormatter",{enumerable:!0,configurable:!0,writable:!0,value:si.new(this,{})}),Object.defineProperty(this,"tabindex",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"_tabindexes",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"_a11yD",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"_focusElementDirty",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"_focusElementContainer",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_focusedSprite",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_isShift",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_keyboardDragPoint",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_tooltipElementContainer",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_readerAlertElement",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_logo",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_tooltipDiv",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"nonce",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"interfaceColors",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"verticalLayout",{enumerable:!0,configurable:!0,writable:!0,value:At.new(this,{})}),Object.defineProperty(this,"horizontalLayout",{enumerable:!0,configurable:!0,writable:!0,value:Ct.new(this,{})}),Object.defineProperty(this,"gridLayout",{enumerable:!0,configurable:!0,writable:!0,value:Lt.new(this,{})}),Object.defineProperty(this,"_paused",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"autoResize",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"_fontHash",{enumerable:!0,configurable:!0,writable:!0,value:""}),Object.defineProperty(this,"_isDisposed",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"_disposers",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"_resizeSensorDisposer",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_tooltips",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"_htmlElementContainer",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_htmlEnabledContainers",{enumerable:!0,configurable:!0,writable:!0,value:[]}),!i)throw new Error("You cannot use `new Class()`, instead use `Class.new()`");let s,r;if(this._settings=t,0==t.accessible&&(this._a11yD=!0),null==t.useSafeResolution&&(t.useSafeResolution=!0),t.useSafeResolution&&(s=pe()),this._renderer=new ss(s),r=e instanceof HTMLElement?e:document.getElementById(e),f(dt.rootElements,(e=>{if(e.dom===r)throw new Error("You cannot have multiple Roots on the same DOM node")})),this.interfaceColors=Kt.new(this,{}),null===r)throw new Error("Could not find HTML element with id `"+e+"`");this.dom=r;let a=document.createElement("div");a.style.position="relative",a.style.height="100%",r.appendChild(a);const n=t.tooltipContainerBounds;n&&(this._tooltipContainerSettings=n),this._inner=a,this._updateComputedStyles(),dt.rootElements.push(this)}static new(e,t){const i=new os(e,t,!0);return i._init(),i}moveDOM(e){let t;if(t=e instanceof HTMLElement?e:document.getElementById(e),t){for(;this.dom.childNodes.length>0;)t.appendChild(this.dom.childNodes[0]);this.dom=t,this._initResizeSensor(),this.resize()}}_handleLogo(){if(this._logo){const e=this.dom.offsetWidth,t=this.dom.offsetHeight;e<=150||t<=60?this._logo.hide():this._logo.show()}}_showBranding(){if(!this._logo){const e=this.tooltipContainer.children.push(Nt.new(this,{interactive:!0,interactiveChildren:!1,position:"absolute",setStateOnChildren:!0,paddingTop:9,paddingRight:9,paddingBottom:9,paddingLeft:9,scale:.6,y:W(100),centerY:U,tooltipText:"Created using amCharts 5",tooltipX:U,cursorOverStyle:"pointer",background:Bt.new(this,{fill:Ye(4671320),fillOpacity:0,tooltipY:5})})),t=Jt.new(this,{pointerOrientation:"horizontal",paddingTop:4,paddingRight:7,paddingBottom:4,paddingLeft:7});t.label.setAll({fontSize:12}),t.get("background").setAll({fill:this.interfaceColors.get("background"),stroke:this.interfaceColors.get("grid"),strokeOpacity:.3}),e.set("tooltip",t),e.events.on("click",(()=>{window.open("https://www.amcharts.com/","_blank")})),e.states.create("hover",{});e.children.push(jt.new(this,{stroke:Ye(13421772),strokeWidth:3,svgPath:"M5 25 L13 25h13.6c3.4 0 6 0 10.3-4.3s5.2-12 8.6-12c3.4 0 4.3 8.6 7.7 8.6M83.4 25H79.8c-3.4 0-6 0-10.3-4.3s-5.2-12-8.6-12-4.3 8.6-7.7 8.6"})).states.create("hover",{stroke:Ye(3976191)});e.children.push(jt.new(this,{stroke:Ye(8947848),strokeWidth:3,svgPath:"M83.4 25h-31C37 25 39.5 4.4 28.4 4.4S18.9 24.2 4.3 25H0"})).states.create("hover",{stroke:Ye(4671320)}),this._logo=e,this._handleLogo()}}_getRealSize(){return this.dom.getBoundingClientRect()}_getCalculatedSize(e){return this._settings.calculateSize?this._settings.calculateSize(e):{width:e.width,height:e.height}}_init(){const e=this._renderer,t=this._getRealSize(),i=this._getCalculatedSize(t),s=Math.floor(i.width),r=Math.floor(i.height),a=Math.floor(t.width),n=Math.floor(t.height),o=Nt.new(this,{visible:!0,width:a,height:n});this._rootContainer=o,this._rootContainer._defaultThemes.push(li.new(this));const l=o.children.push(Nt.new(this,{visible:!0,width:U,height:U}));this.container=l,e.resize(a,n,s,r),this._inner.appendChild(e.view),this._initResizeSensor();const h=document.createElement("div");if(this._htmlElementContainer=h,h.className="am5-html-container",h.style.position="absolute",h.style.pointerEvents="none",this._tooltipContainerSettings||(h.style.overflow="hidden"),this._inner.appendChild(h),!0!==this._a11yD){const t=document.createElement("div");t.className="am5-reader-container",t.setAttribute("role","alert"),t.style.position="absolute",t.style.width="1px",t.style.height="1px",t.style.overflow="hidden",t.style.clip="rect(1px, 1px, 1px, 1px)",this._readerAlertElement=t,this._inner.appendChild(this._readerAlertElement);const i=document.createElement("div");i.className="am5-focus-container",i.style.position="absolute",i.style.pointerEvents="none",i.style.top="0px",i.style.left="0px",i.style.overflow="hidden",i.style.width=s+"px",i.style.height=r+"px",i.setAttribute("role","application"),de(i,!1),this._focusElementContainer=i,this._inner.appendChild(this._focusElementContainer);const a=document.createElement("div");this._tooltipElementContainer=a,a.className="am5-tooltip-container",this._inner.appendChild(a),te("keyboardevents")&&(this._disposers.push(Q(window,"keydown",(e=>{16==e.keyCode?this._isShift=!0:9==e.keyCode&&(this._isShift=e.shiftKey)}))),this._disposers.push(Q(window,"keyup",(e=>{16==e.keyCode&&(this._isShift=!1)}))),this._disposers.push(Q(i,"keydown",(t=>{const i=this._focusedSprite;if(i){27==t.keyCode&&(se(),this._focusedSprite=void 0);let s=0,r=0;switch(t.keyCode){case 13:t.preventDefault();const a=e.getEvent(new MouseEvent("click"));return void i.events.dispatch("click",{type:"click",originalEvent:a.event,point:a.point,simulated:!0,target:i});case 37:s=-6;break;case 39:s=6;break;case 38:r=-6;break;case 40:r=6;break;default:return}if(0!=s||0!=r){if(t.preventDefault(),!i.isDragging()){this._keyboardDragPoint={x:0,y:0};const t=e.getEvent(new MouseEvent("mousedown",{clientX:0,clientY:0}));i.events.isEnabled("pointerdown")&&i.events.dispatch("pointerdown",{type:"pointerdown",originalEvent:t.event,point:t.point,simulated:!0,target:i})}const a=this._keyboardDragPoint;a.x+=s,a.y+=r;const n=e.getEvent(new MouseEvent("mousemove",{clientX:a.x,clientY:a.y}),!1);i.events.isEnabled("globalpointermove")&&i.events.dispatch("globalpointermove",{type:"globalpointermove",originalEvent:n.event,point:n.point,simulated:!0,target:i})}}}))),this._disposers.push(Q(i,"keyup",(t=>{if(this._focusedSprite){const i=this._focusedSprite,s=t.keyCode;switch(s){case 37:case 39:case 38:case 40:if(i.isDragging()){const t=this._keyboardDragPoint,s=e.getEvent(new MouseEvent("mouseup",{clientX:t.x,clientY:t.y}));return i.events.isEnabled("globalpointerup")&&i.events.dispatch("globalpointerup",{type:"globalpointerup",originalEvent:s.event,point:s.point,simulated:!0,target:i}),void(this._keyboardDragPoint=void 0)}if(i.get("focusableGroup")){const e=i.get("focusableGroup"),t=this._tabindexes.filter((t=>t.get("focusableGroup")==e));let r=t.indexOf(i);const a=t.length-1;r+=39==s||40==s?1:-1,r<0?r=a:r>a&&(r=0),re(t[r].getPrivate("focusElement").dom)}}}}))))}this._startTicker(),this.setThemes([]),this._addTooltip(),this._hasLicense()||this._showBranding()}_initResizeSensor(){this._resizeSensorDisposer&&this._resizeSensorDisposer.dispose(),this._resizeSensorDisposer=new Xt(this.dom,(()=>{this.autoResize&&this.resize()})),this._disposers.push(this._resizeSensorDisposer)}resize(){const e=this._getRealSize(),t=this._getCalculatedSize(e),i=Math.floor(t.width),s=Math.floor(t.height);if(i>0&&s>0){const t=Math.floor(e.width),r=Math.floor(e.height),a=this._htmlElementContainer;if(a.style.width=i+"px",a.style.height=s+"px",!0!==this._a11yD){const e=this._focusElementContainer;e.style.width=i+"px",e.style.height=s+"px"}this._renderer.resize(t,r,i,s);const n=this._rootContainer;n.setPrivate("width",t),n.setPrivate("height",r),this._render(),this._handleLogo()}}_render(){this._renderer.render(this._rootContainer._display),this._focusElementDirty&&(this._updateCurrentFocus(),this._focusElementDirty=!1)}_runTickers(e){f(this._tickers,(t=>{t(e)}))}_runAnimations(e){M(this._animations,(t=>t._runAnimation(e)))}_runDirties(){let e={};for(;this._isDirtyParents;)this._isDirtyParents=!1,G(this._dirtyParents).forEach((t=>{const i=this._dirtyParents[t];delete this._dirtyParents[t],i.isDisposed()||(e[i.uid]=i,i._prepareChildren())}));G(e).forEach((t=>{e[t]._updateChildren()}));const t=[];G(this._dirty).forEach((e=>{const i=this._dirty[e];i.isDisposed()?delete this._dirty[i.uid]:(t.push(i),i._beforeChanged())})),t.forEach((e=>{e._changed(),delete this._dirty[e.uid],e._clearDirty()})),this._isDirty=!1;const i={},s=[];G(this._dirtyBounds).forEach((e=>{const t=this._dirtyBounds[e];delete this._dirtyBounds[e],t.isDisposed()||(i[t.uid]=t.depth(),s.push(t))})),this._positionHTMLElements(),s.sort(((e,t)=>pt(i[t.uid],i[e.uid]))),s.forEach((e=>{e._updateBounds()}));const r=this._dirtyPositions;G(r).forEach((e=>{const t=r[e];delete r[e],t.isDisposed()||t._updatePosition()})),t.forEach((e=>{e._afterChanged()}))}_renderFrame(e){return!this._updateTick||(this.events.isEnabled("framestarted")&&this.events.dispatch("framestarted",{type:"framestarted",target:this,timestamp:e}),this._checkComputedStyles(),this._runTickers(e),this._runAnimations(e),this._runDirties(),this._render(),this._positionHTMLElements(),this.events.isEnabled("frameended")&&this.events.dispatch("frameended",{type:"frameended",target:this,timestamp:e}),0===this._tickers.length&&0===this._animations.length&&!this._isDirty)}_runTicker(e,t){if(!this.isDisposed()){this.animationTime=e;this._renderFrame(e)?(this._ticker=null,this.animationTime=null):this._paused||(t?this._ticker:ns(this.fps,this._ticker))}}_runTickerNow(){if(!this.isDisposed())for(;;){const e=performance.now();this.animationTime=e;if(this._renderFrame(e)){this.animationTime=null;break}}}_startTicker(){null===this._ticker&&(this.animationTime=null,this._ticker=e=>{this._runTicker(e)},ns(this.fps,this._ticker))}get updateTick(){return this._updateTick}set updateTick(e){this._updateTick=e,e&&this._startTicker()}_addDirtyEntity(e){void 0===this._dirty[e.uid]&&(this._isDirty=!0,this._dirty[e.uid]=e,this._startTicker())}_addDirtyParent(e){void 0===this._dirtyParents[e.uid]&&(this._isDirty=!0,this._isDirtyParents=!0,this._dirtyParents[e.uid]=e,this._startTicker())}_addDirtyBounds(e){void 0===this._dirtyBounds[e.uid]&&(this._isDirty=!0,this._dirtyBounds[e.uid]=e,this._startTicker())}_addDirtyPosition(e){void 0===this._dirtyPositions[e.uid]&&(this._isDirty=!0,this._dirtyPositions[e.uid]=e,this._startTicker())}_addAnimation(e){-1===this._animations.indexOf(e)&&(this._animations.push(e),this._startTicker())}_markDirty(){this._isDirty=!0}_markDirtyRedraw(){this.events.once("frameended",(()=>{this._isDirty=!0,this._startTicker()}))}eachFrame(e){return this._tickers.push(e),this._startTicker(),new A((()=>{w(this._tickers,e)}))}markDirtyGlobal(e){e||(e=this.container),e.walkChildren((e=>{e instanceof Nt&&this.markDirtyGlobal(e),e.markDirty(),e.markDirtyBounds()}))}width(){return Math.floor(this._getCalculatedSize(this._getRealSize()).width)}height(){return Math.floor(this._getCalculatedSize(this._getRealSize()).height)}dispose(){this._isDisposed||(this._isDisposed=!0,this._rootContainer.dispose(),this._renderer.dispose(),this.horizontalLayout.dispose(),this.verticalLayout.dispose(),this.interfaceColors.dispose(),f(this._disposers,(e=>{e.dispose()})),this._inner&&$(this._inner),v(dt.rootElements,this))}isDisposed(){return this._isDisposed}readerAlert(e){!0!==this._a11yD&&(this._readerAlertElement.innerHTML=we(e))}setThemes(e){this._rootContainer.set("themes",e);const t=this.tooltipContainer;t&&t._applyThemes();const i=this.interfaceColors;i&&i._applyThemes()}_addTooltip(){if(!this.tooltipContainer){const e=this._tooltipContainerSettings,t=this._rootContainer.children.push(Nt.new(this,{position:"absolute",isMeasured:!1,width:U,height:U,layer:e?35:30,layerMargin:e||void 0}));this.tooltipContainer=t;const i=Jt.new(this,{});this.container.set("tooltip",i),i.hide(0),this._tooltip=i}}_registerTabindexOrder(e){1!=this._a11yD&&(e.get("focusable")?x(this._tabindexes,e):v(this._tabindexes,e),this._invalidateTabindexes())}_unregisterTabindexOrder(e){1!=this._a11yD&&(v(this._tabindexes,e),this._invalidateTabindexes())}_invalidateTabindexes(){if(1==this._a11yD)return;this._tabindexes.sort(((e,t)=>{const i=e.get("tabindexOrder",0),s=t.get("tabindexOrder",0);return i==s?0:i>s?1:-1}));const e=[];f(this._tabindexes,((t,i)=>{t.getPrivate("focusElement")?this._moveFocusElement(i,t):this._makeFocusElement(i,t);const s=t.get("focusableGroup");s&&(-1!==e.indexOf(s)?t.getPrivate("focusElement").dom.setAttribute("tabindex","-1"):e.push(s))}))}_updateCurrentFocus(){1!=this._a11yD&&this._focusedSprite&&(this._decorateFocusElement(this._focusedSprite),this._positionFocusElement(this._focusedSprite))}_decorateFocusElement(e,t){if(1==this._a11yD)return;if(t||(t=e.getPrivate("focusElement").dom),!t)return;e.get("visible")&&"tooltip"!=e.get("role")&&!e.isHidden()?"-1"!=t.getAttribute("tabindex")&&t.setAttribute("tabindex",""+this.tabindex):t.removeAttribute("tabindex");const i=e.get("role");i?t.setAttribute("role",i):t.removeAttribute("role");const s=e.get("ariaLabel");if(s){const i=Ht(e,s);t.setAttribute("aria-label",i)}else t.removeAttribute("aria-label");const r=e.get("ariaLive");r?t.setAttribute("aria-live",r):t.removeAttribute("aria-live");const a=e.get("ariaChecked");null!=a?t.setAttribute("aria-checked",a?"true":"false"):t.removeAttribute("aria-checked"),e.get("ariaHidden")?t.setAttribute("aria-hidden","hidden"):t.removeAttribute("aria-hidden");const n=e.get("ariaOrientation");n?t.setAttribute("aria-orientation",n):t.removeAttribute("aria-orientation");const o=e.get("ariaValueNow");o?t.setAttribute("aria-valuenow",o):t.removeAttribute("aria-valuenow");const l=e.get("ariaValueMin");l?t.setAttribute("aria-valuemin",l):t.removeAttribute("aria-valuemin");const h=e.get("ariaValueMax");h?t.setAttribute("aria-valuemax",h):t.removeAttribute("aria-valuemax");const u=e.get("ariaValueText");u?t.setAttribute("aria-valuetext",u):t.removeAttribute("aria-valuetext");const d=e.get("ariaControls");d?t.setAttribute("aria-controls",d):t.removeAttribute("aria-controls")}_makeFocusElement(e,t){if(t.getPrivate("focusElement")||1==this._a11yD)return;const i=document.createElement("div");"tooltip"!=t.get("role")&&(i.tabIndex=this.tabindex),i.style.position="absolute",de(i,!1);const s=[];t.setPrivate("focusElement",{dom:i,disposers:s}),this._decorateFocusElement(t),s.push(Q(i,"focus",(t=>{this._handleFocus(t,e)}))),s.push(Q(i,"blur",(t=>{this._handleBlur(t,e)}))),this._moveFocusElement(e,t)}_removeFocusElement(e){if(1==this._a11yD)return;v(this._tabindexes,e);const t=e.getPrivate("focusElement");if(t){this._focusElementContainer.removeChild(t.dom),f(t.disposers,(e=>{e.dispose()}))}}_hideFocusElement(e){if(1==this._a11yD)return;e.getPrivate("focusElement").dom.style.display="none"}_moveFocusElement(e,t){if(1==this._a11yD)return;const i=this._focusElementContainer,s=t.getPrivate("focusElement").dom;if(s===this._focusElementContainer.children[e])return;const r=this._focusElementContainer.children[e+1];r?i.insertBefore(s,r):i.append(s)}_positionFocusElement(e){if(1==this._a11yD)return;const t=e.globalBounds();let i=t.right==t.left?e.width():t.right-t.left,s=t.top==t.bottom?e.height():t.bottom-t.top,r=t.left-2,a=t.top-2;i<0&&(r+=i,i=Math.abs(i)),s<0&&(a+=s,s=Math.abs(s));const n=e.getPrivate("focusElement").dom;n.style.top=a+"px",n.style.left=r+"px",n.style.width=i+4+"px",n.style.height=s+4+"px"}_handleFocus(e,t){if(1==this._a11yD)return;const i=this._tabindexes[t];i.isVisibleDeep()?(this._positionFocusElement(i),this._focusedSprite=i,i.events.isEnabled("focus")&&i.events.dispatch("focus",{type:"focus",originalEvent:e,target:i})):this._focusNext(e.target,this._isShift?-1:1)}_focusNext(e,t){if(1==this._a11yD)return;var i=Array.from(document.querySelectorAll(["a[href]","area[href]","button:not([disabled])","details","input:not([disabled])","iframe:not([disabled])","select:not([disabled])","textarea:not([disabled])",'[contentEditable=""]','[contentEditable="true"]','[contentEditable="TRUE"]','[tabindex]:not([tabindex^="-"])'].join(",")));let s=i.indexOf(e)+t;s<0?s=i.length-1:s>=i.length&&(s=0),i[s].focus()}_handleBlur(e,t){if(1==this._a11yD)return;const i=this._focusedSprite;i&&i.events.isEnabled("blur")&&i.events.dispatch("blur",{type:"blur",originalEvent:e,target:i}),this._focusedSprite=void 0}updateTooltip(e){if(1==this._a11yD)return;const t=we(e._getText());let i=e.getPrivate("tooltipElement");"tooltip"==e.get("role")&&""!=t?(i||(i=this._makeTooltipElement(e)),i.innerHTML!=t&&(i.innerHTML=t)):i&&(i.remove(),e.removePrivate("tooltipElement"))}_makeTooltipElement(e){const t=this._tooltipElementContainer,i=document.createElement("div");return i.style.position="absolute",i.style.width="1px",i.style.height="1px",i.style.overflow="hidden",i.style.clip="rect(1px, 1px, 1px, 1px)",de(i,!1),this._decorateFocusElement(e,i),t.append(i),e.setPrivate("tooltipElement",i),i}_removeTooltipElement(e){if(1==this._a11yD)return;const t=e.getPrivate("tooltipElement");if(t){const e=t.parentElement;e&&e.removeChild(t)}}_invalidateAccessibility(e){if(1==this._a11yD)return;this._focusElementDirty=!0;const t=e.getPrivate("focusElement");e.get("focusable")?t&&(this._decorateFocusElement(e),this._positionFocusElement(e)):t&&this._removeFocusElement(e)}focused(e){return this._focusedSprite===e}documentPointToRoot(e){const t=this.dom.getBoundingClientRect();return{x:e.x-t.left,y:e.y-t.top}}rootPointToDocument(e){const t=this.dom.getBoundingClientRect();return{x:e.x+t.left,y:e.y+t.top}}addDisposer(e){return this._disposers.push(e),e}_updateComputedStyles(){const e=window.getComputedStyle(this.dom);let t="";q(e,((e,i)=>{h(e)&&e.match(/^font/)&&(t+=i)}));const i=t!=this._fontHash;return i&&(this._fontHash=t),i}_checkComputedStyles(){this._updateComputedStyles()&&this._invalidateLabelBounds(this.container)}_invalidateLabelBounds(e){e instanceof Nt?e.children.each((e=>{this._invalidateLabelBounds(e)})):e instanceof Yt&&e.markDirtyBounds()}_hasLicense(){for(let e=0;e<dt.licenses.length;e++)if(dt.licenses[e].match(/^AM5C.{5,}/i))return!0;return!1}_licenseApplied(){this._logo&&this._logo.set("forceHidden",!0)}get debugGhostView(){return this._renderer.debugGhostView}set debugGhostView(e){this._renderer.debugGhostView=e}set tapToActivate(e){this._renderer.tapToActivate=e}get tapToActivate(){return this._renderer.tapToActivate}set tapToActivateTimeout(e){this._renderer.tapToActivateTimeout=e}get tapToActivateTimeout(){return this._renderer.tapToActivateTimeout}_makeHTMLElement(e){const t=this._htmlElementContainer,i=document.createElement("div");return e.setPrivate("htmlElement",i),i.style.position="absolute",i.style.overflow="auto",i.style.boxSizing="border-box",de(i,e.get("interactive",!1)),e.events.isEnabled("click")&&(de(i,!0),this._disposers.push(Q(i,"click",(t=>{const i=this._renderer.getEvent(t);e.events.dispatch("click",{type:"click",originalEvent:i.event,point:i.point,simulated:!1,target:e})})))),this._positionHTMLElement(e),t.append(i),x(this._htmlEnabledContainers,e),i}_positionHTMLElements(){f(this._htmlEnabledContainers,(e=>{this._positionHTMLElement(e)}))}_positionHTMLElement(e){const t=e.getPrivate("htmlElement");if(t){f(["paddingTop","paddingRight","paddingBottom","paddingLeft","minWidth","minHeight","maxWidth","maxHeight"],(i=>{const s=e.get(i);t.style[i]=s?s+"px":""}));const i=e.compositeOpacity();setTimeout((()=>{t.style.opacity=i+""}),10);const s=e.isVisibleDeep();s&&(t.style.display="block");const r=e.globalBounds();t.style.top=r.top+"px",t.style.left=r.left+"px";const a=e.get("width"),n=e.get("height");let o=0,l=0;if(a&&(o=e.width()),n&&(l=e.height()),a&&n)e.removePrivate("minWidth"),e.removePrivate("minHeight");else{t.style.position="fixed",t.style.width="",t.style.height="";const i=t.getBoundingClientRect();t.style.position="absolute",o=i.width,l=i.height,e._adjustedLocalBounds={left:0,right:0,top:0,bottom:0},e.setPrivate("minWidth",o),e.setPrivate("minHeight",l)}o>0&&(t.style.minWidth=o+"px"),l>0&&(t.style.minHeight=l+"px"),s&&0!=i||(t.style.display="none")}}_setHTMLContent(e,t){let i=e.getPrivate("htmlElement");i||(i=this._makeHTMLElement(e)),i.innerHTML!=t&&(i.innerHTML=t)}_removeHTMLContent(e){let t=e.getPrivate("htmlElement");t&&this._htmlElementContainer.removeChild(t),v(this._htmlEnabledContainers,e)}}ct("AM5C241025748");const ls="en-us",hs=new Map([["ar",()=>import("../../chunks/ar2.js")],["bg-bg",()=>import("../../chunks/bg_BG2.js")],["bs-ba",()=>import("../../chunks/bs_BA2.js")],["ca-es",()=>import("../../chunks/ca_ES2.js")],["cs-cz",()=>import("../../chunks/cs_CZ2.js")],["da-dk",()=>import("../../chunks/da_DK2.js")],["de-de",()=>import("../../chunks/de_DE2.js")],["de-ch",()=>import("../../chunks/de_CH2.js")],["el-gr",()=>import("../../chunks/el_GR2.js")],["en-us",()=>import("../../chunks/en_US2.js")],["en-ca",()=>import("../../chunks/en_CA2.js")],["es-es",()=>import("../../chunks/es_ES2.js")],["et-ee",()=>import("../../chunks/et_EE2.js")],["fi-fi",()=>import("../../chunks/fi_FI2.js")],["fr-fr",()=>import("../../chunks/fr_FR2.js")],["he-il",()=>import("../../chunks/he_IL2.js")],["hr-hr",()=>import("../../chunks/hr_HR2.js")],["hu-hu",()=>import("../../chunks/hu_HU2.js")],["id-id",()=>import("../../chunks/id_ID2.js")],["it-it",()=>import("../../chunks/it_IT2.js")],["ja-jp",()=>import("../../chunks/ja_JP2.js")],["ko-kr",()=>import("../../chunks/ko_KR2.js")],["lt-lt",()=>import("../../chunks/lt_LT2.js")],["lv-lv",()=>import("../../chunks/lv_LV2.js")],["nb-no",()=>import("../../chunks/nb_NO2.js")],["nl-nl",()=>import("../../chunks/nl_NL2.js")],["pl-pl",()=>import("../../chunks/pl_PL2.js")],["pt-br",()=>import("../../chunks/pt_BR2.js")],["pt-pt",()=>import("../../chunks/pt_PT2.js")],["ro-ro",()=>import("../../chunks/ro_RO2.js")],["ru-ru",()=>import("../../chunks/ru_RU2.js")],["sk-sk",()=>import("../../chunks/sk_SK2.js")],["sl-sl",()=>import("../../chunks/sl_SL2.js")],["sr-rs",()=>import("../../chunks/sr_RS2.js")],["sv-se",()=>import("../../chunks/sv_SE2.js")],["th-th",()=>import("../../chunks/th_TH2.js")],["tr-tr",()=>import("../../chunks/tr_TR2.js")],["uk-ua",()=>import("../../chunks/uk_UA2.js")],["vi-vn",()=>import("../../chunks/vi_VN2.js")],["zh-cn",()=>import("../../chunks/zh_Hans2.js")],["zh-hk",()=>import("../../chunks/zh_Hant2.js")],["zh-tw",()=>import("../../chunks/zh_Hant2.js")]]);function us(e){const t=e.split("-")[0].toLowerCase();let i=null;for(const s of hs.keys())if(s.startsWith(t)){i=s;break}return i}function ds(e){return e?hs.has(e.toLowerCase())?e.toLowerCase():us(e)||ls:ls}async function cs(e,i=t()){const s=os.new(e);return s.locale=(await hs.get(ds(i))()).default,s}export{cs as createRoot};