30 lines
239 KiB
JavaScript
30 lines
239 KiB
JavaScript
![]() |
var dl=Object.defineProperty;var fl=(i,t,e)=>t in i?dl(i,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):i[t]=e;var C=(i,t,e)=>fl(i,typeof t!="symbol"?t+"":t,e);import{g as gl,_ as pl,r as Vt,o as ml,c as Mn,w as Ht,a as Sn,E as ue,b as bl,d as He,e as Ys,f as vt,h as xl,i as _l,j as yl,k as Us,v as vl,l as Ml,m as Xs,n as Ti,p as Sl,q as wl,s as kl,t as Tl}from"./index-CtyWzmh7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//*!
|
||
|
* @kurkle/color v0.3.4
|
||
|
* https://github.com/kurkle/color#readme
|
||
|
* (c) 2024 Jukka Kurkela
|
||
|
* Released under the MIT License
|
||
|
*/function gi(i){return i+.5|0}const Kt=(i,t,e)=>Math.max(Math.min(i,e),t);function $e(i){return Kt(gi(i*2.55),0,255)}function ee(i){return Kt(gi(i*255),0,255)}function Ut(i){return Kt(gi(i/2.55)/100,0,1)}function $s(i){return Kt(gi(i*100),0,100)}const Mt={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15},Nn=[..."0123456789ABCDEF"],Pl=i=>Nn[i&15],Ol=i=>Nn[(i&240)>>4]+Nn[i&15],Pi=i=>(i&240)>>4===(i&15),Cl=i=>Pi(i.r)&&Pi(i.g)&&Pi(i.b)&&Pi(i.a);function Dl(i){var t=i.length,e;return i[0]==="#"&&(t===4||t===5?e={r:255&Mt[i[1]]*17,g:255&Mt[i[2]]*17,b:255&Mt[i[3]]*17,a:t===5?Mt[i[4]]*17:255}:(t===7||t===9)&&(e={r:Mt[i[1]]<<4|Mt[i[2]],g:Mt[i[3]]<<4|Mt[i[4]],b:Mt[i[5]]<<4|Mt[i[6]],a:t===9?Mt[i[7]]<<4|Mt[i[8]]:255})),e}const El=(i,t)=>i<255?t(i):"";function Al(i){var t=Cl(i)?Pl:Ol;return i?"#"+t(i.r)+t(i.g)+t(i.b)+El(i.a,t):void 0}const Ll=/^(hsla?|hwb|hsv)\(\s*([-+.e\d]+)(?:deg)?[\s,]+([-+.e\d]+)%[\s,]+([-+.e\d]+)%(?:[\s,]+([-+.e\d]+)(%)?)?\s*\)$/;function Or(i,t,e){const n=t*Math.min(e,1-e),s=(o,r=(o+i/30)%12)=>e-n*Math.max(Math.min(r-3,9-r,1),-1);return[s(0),s(8),s(4)]}function Il(i,t,e){const n=(s,o=(s+i/60)%6)=>e-e*t*Math.max(Math.min(o,4-o,1),0);return[n(5),n(3),n(1)]}function Rl(i,t,e){const n=Or(i,1,.5);let s;for(t+e>1&&(s=1/(t+e),t*=s,e*=s),s=0;s<3;s++)n[s]*=1-t-e,n[s]+=t;return n}function Fl(i,t,e,n,s){return i===s?(t-e)/n+(t<e?6:0):t===s?(e-i)/n+2:(i-t)/n+4}function rs(i){const e=i.r/255,n=i.g/255,s=i.b/255,o=Math.max(e,n,s),r=Math.min(e,n,s),a=(o+r)/2;let l,c,h;return o!==r&&(h=o-r,c=a>.5?h/(2-o-r):h/(o+r),l=Fl(e,n,s,h,o),l=l*60+.5),[l|0,c||0,a]}function as(i,t,e,n){return(Array.isArray(t)?i(t[0],t[1],t[2]):i(t,e,n)).map(ee)}function ls(i,t,e){return as(Or,i,t,e)}function zl(i,t,e){return as(Rl,i,t,e)}function Nl(i,t,e){return as(Il,i,t,e)}function Cr(i){return(i%360+360)%360}function Bl(i){const t=Ll.exec(i);let e=255,n;if(!t)return;t[5]!==n&&(e=t[6]?$e(+t[5]):ee(+t[5]));const s=Cr(+t[2]),o=+t[3]/100,r=+t[4]/100;return t[1]==="hwb"?n=zl(s,o,r):t[1]==="hsv"?n=Nl(s,o,r):n=ls(s,o,r),{r:n[0],g:n[1],b:n[2],a:e}}function Vl(i,t){var e=rs(i);e[0]=Cr(e[0]+t),e=ls(e),i.r=e[0],i.g=e[1],i.b=e[2]}function Hl(i){if(!i)return;const t=rs(i),e=t[0],n=$s(t[1]),s=$s(t[2]);return i.a<255?`hsla(${e}, ${n}%, ${s}%, ${Ut(i.a)})`:`hsl(${e}, ${n}%, ${s}%)`}const qs={x:"dark",Z:"light",Y:"re",X:"blu",W:"gr",V:"medium",U:"slate",A:"ee",T:"ol",S:"or",B:"ra",C:"lateg",D:"ights",R:"in",Q:"turquois",E:"hi",P:"ro",O:"al",N:"le",M:"de",L:"yello",F:"en",K:"ch",G:"arks",H:"ea",I:"ightg",J:"wh"},Zs={OiceXe:"f0f8ff",antiquewEte:"faebd7",aqua:"ffff",aquamarRe:"7fffd4",azuY:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"0",blanKedOmond:"ffebcd",Xe:"ff",XeviTet:"8a2be2",bPwn:"a52a2a",burlywood:"deb887",caMtXe:"5f9ea0",KartYuse:"7fff00",KocTate:"d2691e",cSO:"ff7f50",cSnflowerXe:"6495ed",cSnsilk:"fff8dc",crimson:"dc143c",cyan:"ffff",xXe:"8b",xcyan:"8b8b",xgTMnPd:"b8860b",xWay:"a9a9a9",xgYF:"6400",xgYy:"a9a9a9",xkhaki:"bdb76b",xmagFta:"8b008b",xTivegYF:"556b2f",xSange:"ff8c00",xScEd:"9932cc",xYd:"8b0000",xsOmon:"e9967a",xsHgYF:"8fbc8f",xUXe:"483d8b",xUWay:"2f4f4f",xUgYy:"2f4f4f",xQe:"ced1",xviTet:"9400d3",dAppRk:"ff1493",dApskyXe:"bfff",dimWay:"696969",dimgYy:"696969",dodgerXe:"1e90ff",fiYbrick:"b22222",flSOwEte:"fffaf0",foYstWAn:"228b22",fuKsia:"ff00ff",gaRsbSo:"dcdcdc",ghostwEte:"f8f8ff",gTd:"ffd700",gTMnPd:"daa520",Way:"808080",gYF:"8000",gYFLw:"adff2f",gYy:"808080",honeyMw:"f0fff0",hotpRk:"ff69b4",RdianYd:"cd5c5c",Rdigo:"4b0082",ivSy:"fffff0",khaki:"f0e68c",lavFMr:"e6e6fa",lavFMrXsh:"fff0f5",lawngYF:"7cfc00",NmoncEffon:"fffacd",ZXe:"add8e6",ZcSO:"f08080",Zcyan:"e0ffff",ZgTMnPdLw:"fafad2",ZWay:"d3d3d3",ZgYF:"90ee90",ZgYy:"d3d3d3",ZpRk:"ffb6c1",ZsOmon:"ffa07a",ZsHgYF:"20b2aa",ZskyXe:"87cefa",ZUWay:"778899",ZUgYy:"778899",ZstAlXe:"b0c4de",ZLw:"ffffe0",lime:"ff00",limegYF:"32cd32",lRF:"faf0e6",magFta:"ff00ff",maPon:"800000",VaquamarRe:"66cdaa",VXe:"cd",VScEd:"ba55d3",VpurpN:"9370db",VsHgYF:"3cb371",VUXe:"7b68ee",VsprRggYF:"fa9a",VQe:"48d1cc",VviTetYd:"c71585",midnightXe:"191970",mRtcYam:"f5fffa",mistyPse:"
|
||
|
* Chart.js v4.4.9
|
||
|
* https://www.chartjs.org
|
||
|
* (c) 2025 Chart.js Contributors
|
||
|
* Released under the MIT License
|
||
|
*/function Wt(){}const Zl=(()=>{let i=0;return()=>i++})();function V(i){return i==null}function $(i){if(Array.isArray&&Array.isArray(i))return!0;const t=Object.prototype.toString.call(i);return t.slice(0,7)==="[object"&&t.slice(-6)==="Array]"}function H(i){return i!==null&&Object.prototype.toString.call(i)==="[object Object]"}function G(i){return(typeof i=="number"||i instanceof Number)&&isFinite(+i)}function mt(i,t){return G(i)?i:t}function F(i,t){return typeof i>"u"?t:i}const Gl=(i,t)=>typeof i=="string"&&i.endsWith("%")?parseFloat(i)/100:+i/t,Er=(i,t)=>typeof i=="string"&&i.endsWith("%")?parseFloat(i)/100*t:+i;function I(i,t,e){if(i&&typeof i.call=="function")return i.apply(e,t)}function B(i,t,e,n){let s,o,r;if($(i))for(o=i.length,s=0;s<o;s++)t.call(e,i[s],s);else if(H(i))for(r=Object.keys(i),o=r.length,s=0;s<o;s++)t.call(e,i[r[s]],r[s])}function Ki(i,t){let e,n,s,o;if(!i||!t||i.length!==t.length)return!1;for(e=0,n=i.length;e<n;++e)if(s=i[e],o=t[e],s.datasetIndex!==o.datasetIndex||s.index!==o.index)return!1;return!0}function Ji(i){if($(i))return i.map(Ji);if(H(i)){const t=Object.create(null),e=Object.keys(i),n=e.length;let s=0;for(;s<n;++s)t[e[s]]=Ji(i[e[s]]);return t}return i}function Ar(i){return["__proto__","prototype","constructor"].indexOf(i)===-1}function Kl(i,t,e,n){if(!Ar(i))return;const s=t[i],o=e[i];H(s)&&H(o)?ri(s,o,n):t[i]=Ji(o)}function ri(i,t,e){const n=$(t)?t:[t],s=n.length;if(!H(i))return i;e=e||{};const o=e.merger||Kl;let r;for(let a=0;a<s;++a){if(r=n[a],!H(r))continue;const l=Object.keys(r);for(let c=0,h=l.length;c<h;++c)o(l[c],i,r,e)}return i}function Qe(i,t){return ri(i,t,{merger:Jl})}function Jl(i,t,e){if(!Ar(i))return;const n=t[i],s=e[i];H(n)&&H(s)?Qe(n,s):Object.prototype.hasOwnProperty.call(t,i)||(t[i]=Ji(s))}const Ks={"":i=>i,x:i=>i.x,y:i=>i.y};function Ql(i){const t=i.split("."),e=[];let n="";for(const s of t)n+=s,n.endsWith("\\")?n=n.slice(0,-1)+".":(e.push(n),n="");return e}function tc(i){const t=Ql(i);return e=>{for(const n of t){if(n==="")break;e=e&&e[n]}return e}}function ie(i,t){return(Ks[t]||(Ks[t]=tc(t)))(i)}function cs(i){return i.charAt(0).toUpperCase()+i.slice(1)}const ai=i=>typeof i<"u",ne=i=>typeof i=="function",Js=(i,t)=>{if(i.size!==t.size)return!1;for(const e of i)if(!t.has(e))return!1;return!0};function ec(i){return i.type==="mouseup"||i.type==="click"||i.type==="contextmenu"}const U=Math.PI,Y=2*U,ic=Y+U,Qi=Number.POSITIVE_INFINITY,nc=U/180,J=U/2,de=U/4,Qs=U*2/3,Jt=Math.log10,St=Math.sign;function xe(i,t,e){return Math.abs(i-t)<e}function to(i){const t=Math.round(i);i=xe(i,t,i/1e3)?t:i;const e=Math.pow(10,Math.floor(Jt(i))),n=i/e;return(n<=1?1:n<=2?2:n<=5?5:10)*e}function sc(i){const t=[],e=Math.sqrt(i);let n;for(n=1;n<e;n++)i%n===0&&(t.push(n),t.push(i/n));return e===(e|0)&&t.push(e),t.sort((s,o)=>s-o).pop(),t}function oc(i){return typeof i=="symbol"||typeof i=="object"&&i!==null&&!(Symbol.toPrimitive in i||"toString"in i||"valueOf"in i)}function De(i){return!oc(i)&&!isNaN(parseFloat(i))&&isFinite(i)}function rc(i,t){const e=Math.round(i);return e-t<=i&&e+t>=i}function Lr(i,t,e){let n,s,o;for(n=0,s=i.length;n<s;n++)o=i[n][e],isNaN(o)||(t.min=Math.min(t.min,o),t.max=Math.max(t.max,o))}function Tt(i){return i*(U/180)}function hs(i){return i*(180/U)}function eo(i){if(!G(i))return;let t=1,e=0;for(;Math.round(i*t)/t!==i;)t*=10,e++;return e}function Ir(i,t){const e=t.x-i.x,n=t.y-i.y,s=Math.sqrt(e*e+n*n);let o=Math.atan2(n,e);return o<-.5*U&&(o+=Y),{angle:o,distance:s}}function Bn(i,t){return Math.sqrt(Math.pow(t.x-i.x,2)+Math.pow(t.y-i.y,2))}function ac(i,t){return(i-t+ic)%Y-U}function bt(i){return(i%Y+Y)%Y}function li(i,t,e,n){const s=bt(i),o=bt(t),r=bt(e),a=bt(o-s),l=bt(r-s),c=bt(s-o),h=bt(s-r);return s===o||s===r||n&&o===r||a>l&&c<h}function st(i,t,e){return Math.max(t,Math.min(e,i))}function lc(i){return st(i,-32768,32767)}function Xt(i,t,e,n=1e-6){return i>=Math.min(t,e)-n&&i<=Math.max(t,e)+n}function us(i,t,e){e=e||(r=>i[r]<t);let n=i.length-1,s=0,o;for(;n-s>1;)o=s+n>>1,e(o)?s=o:n=o;return{lo:s,hi:n}}const $t=(i,t,e,n)=>us(i,e,n?s=>{const o=i[s][t];return o<e||o===e&&i[s+1
|
||
|
* Chart.js v4.4.9
|
||
|
* https://www.chartjs.org
|
||
|
* (c) 2025 Chart.js Contributors
|
||
|
* Released under the MIT License
|
||
|
*/class gh{constructor(){this._request=null,this._charts=new Map,this._running=!1,this._lastDate=void 0}_notify(t,e,n,s){const o=e.listeners[s],r=e.duration;o.forEach(a=>a({chart:t,initial:e.initial,numSteps:r,currentStep:Math.min(n-e.start,r)}))}_refresh(){this._request||(this._running=!0,this._request=zr.call(window,()=>{this._update(),this._request=null,this._running&&this._refresh()}))}_update(t=Date.now()){let e=0;this._charts.forEach((n,s)=>{if(!n.running||!n.items.length)return;const o=n.items;let r=o.length-1,a=!1,l;for(;r>=0;--r)l=o[r],l._active?(l._total>n.duration&&(n.duration=l._total),l.tick(t),a=!0):(o[r]=o[o.length-1],o.pop());a&&(s.draw(),this._notify(s,n,t,"progress")),o.length||(n.running=!1,this._notify(s,n,t,"complete"),n.initial=!1),e+=o.length}),this._lastDate=t,e===0&&(this._running=!1)}_getAnims(t){const e=this._charts;let n=e.get(t);return n||(n={running:!1,initial:!0,items:[],listeners:{complete:[],progress:[]}},e.set(t,n)),n}listen(t,e,n){this._getAnims(t).listeners[e].push(n)}add(t,e){!e||!e.length||this._getAnims(t).items.push(...e)}has(t){return this._getAnims(t).items.length>0}start(t){const e=this._charts.get(t);e&&(e.running=!0,e.start=Date.now(),e.duration=e.items.reduce((n,s)=>Math.max(n,s._duration),0),this._refresh())}running(t){if(!this._running)return!1;const e=this._charts.get(t);return!(!e||!e.running||!e.items.length)}stop(t){const e=this._charts.get(t);if(!e||!e.items.length)return;const n=e.items;let s=n.length-1;for(;s>=0;--s)n[s].cancel();e.items=[],this._notify(t,e,Date.now(),"complete")}remove(t){return this._charts.delete(t)}}var jt=new gh;const mo="transparent",ph={boolean(i,t,e){return e>.5?t:i},color(i,t,e){const n=oo(i||mo),s=n.valid&&oo(t||mo);return s&&s.valid?s.mix(n,e).hexString():t},number(i,t,e){return i+(t-i)*e}};class mh{constructor(t,e,n,s){const o=e[n];s=qe([t.to,s,o,t.from]);const r=qe([t.from,o,s]);this._active=!0,this._fn=t.fn||ph[t.type||typeof r],this._easing=ti[t.easing]||ti.linear,this._start=Math.floor(Date.now()+(t.delay||0)),this._duration=this._total=Math.floor(t.duration),this._loop=!!t.loop,this._target=e,this._prop=n,this._from=r,this._to=s,this._promises=void 0}active(){return this._active}update(t,e,n){if(this._active){this._notify(!1);const s=this._target[this._prop],o=n-this._start,r=this._duration-o;this._start=n,this._duration=Math.floor(Math.max(r,t.duration)),this._total+=o,this._loop=!!t.loop,this._to=qe([t.to,e,s,t.from]),this._from=qe([t.from,s,e])}}cancel(){this._active&&(this.tick(Date.now()),this._active=!1,this._notify(!1))}tick(t){const e=t-this._start,n=this._duration,s=this._prop,o=this._from,r=this._loop,a=this._to;let l;if(this._active=o!==a&&(r||e<n),!this._active){this._target[s]=a,this._notify(!0);return}if(e<0){this._target[s]=o;return}l=e/n%2,l=r&&l>1?2-l:l,l=this._easing(Math.min(1,Math.max(0,l))),this._target[s]=this._fn(o,a,l)}wait(){const t=this._promises||(this._promises=[]);return new Promise((e,n)=>{t.push({res:e,rej:n})})}_notify(t){const e=t?"res":"rej",n=this._promises||[];for(let s=0;s<n.length;s++)n[s][e]()}}class ia{constructor(t,e){this._chart=t,this._properties=new Map,this.configure(e)}configure(t){if(!H(t))return;const e=Object.keys(q.animation),n=this._properties;Object.getOwnPropertyNames(t).forEach(s=>{const o=t[s];if(!H(o))return;const r={};for(const a of e)r[a]=o[a];($(o.properties)&&o.properties||[s]).forEach(a=>{(a===s||!n.has(a))&&n.set(a,r)})})}_animateOptions(t,e){const n=e.options,s=xh(t,n);if(!s)return[];const o=this._createAnimations(s,n);return n.$shared&&bh(t.options.$animations,n).then(()=>{t.options=n},()=>{}),o}_createAnimations(t,e){const n=this._properties,s=[],o=t.$animations||(t.$animations={}),r=Object.keys(e),a=Date.now();let l;for(l=r.length-1;l>=0;--l){const c=r[l];if(c.charAt(0)==="$")continue;if(c==="options"){s.push(...this._animateOptions(t,e));continue}const h=e[c];let u=o[c];const d=n.get(c);if(u)if(d&&u.active()){u.update(d,h,a);continue}else u.cancel();if(!d||!d.duration){t[c]=h;continue}o[c]=u=new mh(d,t,c,h),s.push(u)}return s}update(t,e){if(this._properties.size===0
|
||
|
`)>-1?i.split(`
|
||
|
`):i}function ef(i,t){const{element:e,datasetIndex:n,index:s}=t,o=i.getDatasetMeta(n).controller,{label:r,value:a}=o.getLabelAndValue(s);return{chart:i,label:r,parsed:o.getParsed(s),raw:i.data.datasets[n].data[s],formattedValue:a,dataset:o.getDataset(),dataIndex:s,datasetIndex:n,element:e}}function er(i,t){const e=i.chart.ctx,{body:n,footer:s,title:o}=i,{boxWidth:r,boxHeight:a}=t,l=et(t.bodyFont),c=et(t.titleFont),h=et(t.footerFont),u=o.length,d=s.length,g=n.length,m=lt(t.padding);let b=m.height,_=0,y=n.reduce((w,S)=>w+S.before.length+S.lines.length+S.after.length,0);if(y+=i.beforeBody.length+i.afterBody.length,u&&(b+=u*c.lineHeight+(u-1)*t.titleSpacing+t.titleMarginBottom),y){const w=t.displayColors?Math.max(a,l.lineHeight):l.lineHeight;b+=g*w+(y-g)*l.lineHeight+(y-1)*t.bodySpacing}d&&(b+=t.footerMarginTop+d*h.lineHeight+(d-1)*t.footerSpacing);let v=0;const k=function(w){_=Math.max(_,e.measureText(w).width+v)};return e.save(),e.font=c.string,B(i.title,k),e.font=l.string,B(i.beforeBody.concat(i.afterBody),k),v=t.displayColors?r+2+t.boxPadding:0,B(n,w=>{B(w.before,k),B(w.lines,k),B(w.after,k)}),v=0,e.font=h.string,B(i.footer,k),e.restore(),_+=m.width,{width:_,height:b}}function nf(i,t){const{y:e,height:n}=t;return e<n/2?"top":e>i.height-n/2?"bottom":"center"}function sf(i,t,e,n){const{x:s,width:o}=n,r=e.caretSize+e.caretPadding;if(i==="left"&&s+o+r>t.width||i==="right"&&s-o-r<0)return!0}function of(i,t,e,n){const{x:s,width:o}=e,{width:r,chartArea:{left:a,right:l}}=i;let c="center";return n==="center"?c=s<=(a+l)/2?"left":"right":s<=o/2?c="left":s>=r-o/2&&(c="right"),sf(c,i,t,e)&&(c="center"),c}function ir(i,t,e){const n=e.yAlign||t.yAlign||nf(i,e);return{xAlign:e.xAlign||t.xAlign||of(i,t,e,n),yAlign:n}}function rf(i,t){let{x:e,width:n}=i;return t==="right"?e-=n:t==="center"&&(e-=n/2),e}function af(i,t,e){let{y:n,height:s}=i;return t==="top"?n+=e:t==="bottom"?n-=s+e:n-=s/2,n}function nr(i,t,e,n){const{caretSize:s,caretPadding:o,cornerRadius:r}=i,{xAlign:a,yAlign:l}=e,c=s+o,{topLeft:h,topRight:u,bottomLeft:d,bottomRight:g}=_e(r);let m=rf(t,a);const b=af(t,l,c);return l==="center"?a==="left"?m+=c:a==="right"&&(m-=c):a==="left"?m-=Math.max(h,d)+s:a==="right"&&(m+=Math.max(u,g)+s),{x:st(m,0,n.width-t.width),y:st(b,0,n.height-t.height)}}function Bi(i,t,e){const n=lt(e.padding);return t==="center"?i.x+i.width/2:t==="right"?i.x+i.width-n.right:i.x+n.left}function sr(i){return At([],Yt(i))}function lf(i,t,e){return oe(i,{tooltip:t,tooltipItems:e,type:"tooltip"})}function or(i,t){const e=t&&t.dataset&&t.dataset.tooltip&&t.dataset.tooltip.callbacks;return e?i.override(e):i}const Sa={beforeTitle:Wt,title(i){if(i.length>0){const t=i[0],e=t.chart.data.labels,n=e?e.length:0;if(this&&this.options&&this.options.mode==="dataset")return t.dataset.label||"";if(t.label)return t.label;if(n>0&&t.dataIndex<n)return e[t.dataIndex]}return""},afterTitle:Wt,beforeBody:Wt,beforeLabel:Wt,label(i){if(this&&this.options&&this.options.mode==="dataset")return i.label+": "+i.formattedValue||i.formattedValue;let t=i.dataset.label||"";t&&(t+=": ");const e=i.formattedValue;return V(e)||(t+=e),t},labelColor(i){const e=i.chart.getDatasetMeta(i.datasetIndex).controller.getStyle(i.dataIndex);return{borderColor:e.borderColor,backgroundColor:e.backgroundColor,borderWidth:e.borderWidth,borderDash:e.borderDash,borderDashOffset:e.borderDashOffset,borderRadius:0}},labelTextColor(){return this.options.bodyColor},labelPointStyle(i){const e=i.chart.getDatasetMeta(i.datasetIndex).controller.getStyle(i.dataIndex);return{pointStyle:e.pointStyle,rotation:e.rotation}},afterLabel:Wt,afterBody:Wt,beforeFooter:Wt,footer:Wt,afterFooter:Wt};function dt(i,t,e,n){const s=i[t].call(e,n);return typeof s>"u"?Sa[t].call(e,n):s}class qn extends Ot{constructor(t){super(),this.opacity=0,this._active=[],this._eventPosition=void 0,this._size=void 0,this._cachedAnimations=void 0,this._tooltipItems=[],this.$animations=void 0,this.$context=void 0,this.chart=t.chart,this.options=t.options,this.dataPoints=void 0,this.title=void 0,this.beforeBody=void 0,this.body=void 0,this.afterBody=void 0,this.f
|
||
|
* http://hammerjs.github.io/
|
||
|
*
|
||
|
* Copyright (c) 2016 Jorik Tangelder;
|
||
|
* Licensed under the MIT license */(function(i){(function(t,e,n,s){var o=["","webkit","Moz","MS","ms","o"],r=e.createElement("div"),a="function",l=Math.round,c=Math.abs,h=Date.now;function u(f,p,x){return setTimeout(k(f,x),p)}function d(f,p,x){return Array.isArray(f)?(g(f,x[p],x),!0):!1}function g(f,p,x){var M;if(f)if(f.forEach)f.forEach(p,x);else if(f.length!==s)for(M=0;M<f.length;)p.call(x,f[M],M,f),M++;else for(M in f)f.hasOwnProperty(M)&&p.call(x,f[M],M,f)}function m(f,p,x){var M="DEPRECATED METHOD: "+p+`
|
||
|
`+x+` AT
|
||
|
`;return function(){var T=new Error("get-stack-trace"),E=T&&T.stack?T.stack.replace(/^[^\(]+?[\n$]/gm,"").replace(/^\s+at\s+/gm,"").replace(/^Object.<anonymous>\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",N=t.console&&(t.console.warn||t.console.log);return N&&N.call(t.console,M,E),f.apply(this,arguments)}}var b;typeof Object.assign!="function"?b=function(p){if(p===s||p===null)throw new TypeError("Cannot convert undefined or null to object");for(var x=Object(p),M=1;M<arguments.length;M++){var T=arguments[M];if(T!==s&&T!==null)for(var E in T)T.hasOwnProperty(E)&&(x[E]=T[E])}return x}:b=Object.assign;var _=m(function(p,x,M){for(var T=Object.keys(x),E=0;E<T.length;)(!M||M&&p[T[E]]===s)&&(p[T[E]]=x[T[E]]),E++;return p},"extend","Use `assign`."),y=m(function(p,x){return _(p,x,!0)},"merge","Use `assign`.");function v(f,p,x){var M=p.prototype,T;T=f.prototype=Object.create(M),T.constructor=f,T._super=M,x&&b(T,x)}function k(f,p){return function(){return f.apply(p,arguments)}}function w(f,p){return typeof f==a?f.apply(p&&p[0]||s,p):f}function S(f,p){return f===s?p:f}function P(f,p,x){g(R(p),function(M){f.addEventListener(M,x,!1)})}function O(f,p,x){g(R(p),function(M){f.removeEventListener(M,x,!1)})}function D(f,p){for(;f;){if(f==p)return!0;f=f.parentNode}return!1}function A(f,p){return f.indexOf(p)>-1}function R(f){return f.trim().split(/\s+/g)}function L(f,p,x){if(f.indexOf&&!x)return f.indexOf(p);for(var M=0;M<f.length;){if(x&&f[M][x]==p||!x&&f[M]===p)return M;M++}return-1}function z(f){return Array.prototype.slice.call(f,0)}function K(f,p,x){for(var M=[],T=[],E=0;E<f.length;){var N=f[E][p];L(T,N)<0&&M.push(f[E]),T[E]=N,E++}return M=M.sort(function(ot,ht){return ot[p]>ht[p]}),M}function it(f,p){for(var x,M,T=p[0].toUpperCase()+p.slice(1),E=0;E<o.length;){if(x=o[E],M=x?x+T:p,M in f)return M;E++}return s}var W=1;function j(){return W++}function X(f){var p=f.ownerDocument||f;return p.defaultView||p.parentWindow||t}var pt=/mobile|tablet|ip(ad|hone|od)|android/i,tt="ontouchstart"in t,qt=it(t,"PointerEvent")!==s,ke=tt&&pt.test(navigator.userAgent),xt="touch",re="pen",wt="mouse",ae="kinect",zt=25,ct=1,le=2,Q=4,ut=8,mi=1,Ie=2,Re=4,Fe=8,ze=16,Ct=Ie|Re,ce=Fe|ze,ks=Ct|ce,Ts=["x","y"],bi=["clientX","clientY"];function _t(f,p){var x=this;this.manager=f,this.callback=p,this.element=f.element,this.target=f.options.inputTarget,this.domHandler=function(M){w(f.options.enable,[f])&&x.handler(M)},this.init()}_t.prototype={handler:function(){},init:function(){this.evEl&&P(this.element,this.evEl,this.domHandler),this.evTarget&&P(this.target,this.evTarget,this.domHandler),this.evWin&&P(X(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&O(this.element,this.evEl,this.domHandler),this.evTarget&&O(this.target,this.evTarget,this.domHandler),this.evWin&&O(X(this.element),this.evWin,this.domHandler)}};function Ba(f){var p,x=f.options.inputClass;return x?p=x:qt?p=fn:ke?p=yi:tt?p=gn:p=_i,new p(f,Va)}function Va(f,p,x){var M=x.pointers.length,T=x.changedPointers.length,E=p&ct&&M-T===0,N=p&(Q|ut)&&M-T===0;x.isFirst=!!E,x.isFinal=!!N,E&&(f.session={}),x.eventType=p,Ha(f,x),f.emit("hammer.input",x),f.recognize(x),f.session.prevInput=x}function Ha(f,p){var x=f.session,M=p.pointers,T=M.length;x.firstInput||(x.firstInput=Ps(p)),T>1&&!x.firstMultiple?x.firstMultiple=Ps(p):T===1&&(x.firstMultiple=!1);var E=x.firstInput,N=x.firstMultiple,nt=N?N.center:E.center,ot=p.center=Os(M);p.timeStamp=h(),p.deltaTime=p.timeStamp-E.timeStamp,p.angle=dn(nt,ot),p.distance=xi(nt,ot),Wa(x,p),p.offsetDirection=Ds(p.deltaX,p.deltaY);var ht=Cs(p.deltaTime,p.deltaX,p.deltaY);p.overallVelocityX=ht.x,p.overallVelocityY=ht.y,p.overallVelocity=c(ht.x)>c(ht.y)?ht.x:ht.y,p.scale=N?Ua(N.pointers,M):1,p.rotation=N?Ya(N.pointers,M):0,p.maxPointers=x.prevInput?p.pointers.length>x.prevInput.maxPointers?p.pointers.length:x.prevInput.maxPointers:p.pointers.length,ja(x,p);var Et=f.element;D(p.srcEvent.target,Et)&&(Et=p.srcEvent.target),p.target=Et}function Wa(f,p){var x=p.center,M=f.offsetDelta||{},T=f.prevDelta||{},E=f.prevInput||{};(p.eventType===ct||E.eventType===Q)&&(T=f.p
|
||
|
* chartjs-plugin-zoom v2.2.0
|
||
|
* https://www.chartjs.org/chartjs-plugin-zoom/2.2.0/
|
||
|
* (c) 2016-2024 chartjs-plugin-zoom Contributors
|
||
|
* Released under the MIT License
|
||
|
*/const fi=i=>i&&i.enabled&&i.modifierKey,Ta=(i,t)=>i&&t[i+"Key"],Ss=(i,t)=>i&&!t[i+"Key"];function se(i,t,e){return i===void 0?!0:typeof i=="string"?i.indexOf(t)!==-1:typeof i=="function"?i({chart:e}).indexOf(t)!==-1:!1}function zn(i,t){return typeof i=="function"&&(i=i({chart:t})),typeof i=="string"?{x:i.indexOf("x")!==-1,y:i.indexOf("y")!==-1}:{x:!1,y:!1}}function Ff(i,t){let e;return function(){return clearTimeout(e),e=setTimeout(i,t),t}}function zf({x:i,y:t},e){const n=e.scales,s=Object.keys(n);for(let o=0;o<s.length;o++){const r=n[s[o]];if(t>=r.top&&t<=r.bottom&&i>=r.left&&i<=r.right)return r}return null}function Pa(i,t,e){const{mode:n="xy",scaleMode:s,overScaleMode:o}=i||{},r=zf(t,e),a=zn(n,e),l=zn(s,e);if(o){const h=zn(o,e);for(const u of["x","y"])h[u]&&(l[u]=a[u],a[u]=!1)}if(r&&l[r.axis])return[r];const c=[];return B(e.scales,function(h){a[h.axis]&&c.push(h)}),c}const ts=new WeakMap;function Z(i){let t=ts.get(i);return t||(t={originalScaleLimits:{},updatedScaleLimits:{},handlers:{},panDelta:{},dragging:!1,panning:!1},ts.set(i,t)),t}function Nf(i){ts.delete(i)}function Oa(i,t,e,n){const s=Math.max(0,Math.min(1,(i-t)/e||0)),o=1-s;return{min:n*s,max:n*o}}function Ca(i,t){const e=i.isHorizontal()?t.x:t.y;return i.getValueForPixel(e)}function Da(i,t,e){const n=i.max-i.min,s=n*(t-1),o=Ca(i,e);return Oa(o,i.min,n,s)}function Bf(i,t,e){const n=Ca(i,e);if(n===void 0)return{min:i.min,max:i.max};const s=Math.log10(i.min),o=Math.log10(i.max),r=Math.log10(n),a=o-s,l=a*(t-1),c=Oa(r,s,a,l);return{min:Math.pow(10,s+c.min),max:Math.pow(10,o-c.max)}}function Vf(i,t){return t&&(t[i.id]||t[i.axis])||{}}function mr(i,t,e,n,s){let o=e[n];if(o==="original"){const r=i.originalScaleLimits[t.id][n];o=F(r.options,r.scale)}return F(o,s)}function Hf(i,t,e){const n=i.getValueForPixel(t),s=i.getValueForPixel(e);return{min:Math.min(n,s),max:Math.max(n,s)}}function Wf(i,{min:t,max:e,minLimit:n,maxLimit:s},o){const r=(i-e+t)/2;t-=r,e+=r;const a=o.min.options??o.min.scale,l=o.max.options??o.max.scale,c=i/1e6;return xe(t,a,c)&&(t=a),xe(e,l,c)&&(e=l),t<n?(t=n,e=Math.min(n+i,s)):e>s&&(e=s,t=Math.max(s-i,n)),{min:t,max:e}}function we(i,{min:t,max:e},n,s=!1){const o=Z(i.chart),{options:r}=i,a=Vf(i,n),{minRange:l=0}=a,c=mr(o,i,a,"min",-1/0),h=mr(o,i,a,"max",1/0);if(s==="pan"&&(t<c||e>h))return!0;const u=i.max-i.min,d=s?Math.max(e-t,l):u;if(s&&d===l&&u<=l)return!0;const g=Wf(d,{min:t,max:e,minLimit:c,maxLimit:h},o.originalScaleLimits[i.id]);return r.min=g.min,r.max=g.max,o.updatedScaleLimits[i.id]=g,i.parse(g.min)!==i.min||i.parse(g.max)!==i.max}function jf(i,t,e,n){const s=Da(i,t,e),o={min:i.min+s.min,max:i.max-s.max};return we(i,o,n,!0)}function Yf(i,t,e,n){const s=Bf(i,t,e);return we(i,s,n,!0)}function Uf(i,t,e,n){we(i,Hf(i,t,e),n,!0)}const br=i=>i===0||isNaN(i)?0:i<0?Math.min(Math.round(i),-1):Math.max(Math.round(i),1);function Xf(i){const e=i.getLabels().length-1;i.min>0&&(i.min-=1),i.max<e&&(i.max+=1)}function $f(i,t,e,n){const s=Da(i,t,e);i.min===i.max&&t<1&&Xf(i);const o={min:i.min+br(s.min),max:i.max-br(s.max)};return we(i,o,n,!0)}function qf(i){return i.isHorizontal()?i.width:i.height}function Zf(i,t,e){const s=i.getLabels().length-1;let{min:o,max:r}=i;const a=Math.max(r-o,1),l=Math.round(qf(i)/Math.max(a,10)),c=Math.round(Math.abs(t/l));let h;return t<-l?(r=Math.min(r+c,s),o=a===1?r:r-a,h=r===s):t>l&&(o=Math.max(0,o-c),r=a===1?o:o+a,h=o===0),we(i,{min:o,max:r},e)||h}const Gf={second:500,minute:30*1e3,hour:30*60*1e3,day:12*60*60*1e3,week:3.5*24*60*60*1e3,month:15*24*60*60*1e3,quarter:60*24*60*60*1e3,year:182*24*60*60*1e3};function Ea(i,t,e,n=!1){const{min:s,max:o,options:r}=i,a=r.time&&r.time.round,l=Gf[a]||0,c=i.getValueForPixel(i.getPixelForValue(s+l)-t),h=i.getValueForPixel(i.getPixelForValue(o+l)-t);return isNaN(c)||isNaN(h)?!0:we(i,{min:c,max:h},e,n?"pan":!1)}function xr(i,t,e){return Ea(i,t,e,!0)}const es={category:$f,default:jf,logarithmic:Yf},is={default:Uf},ns={category:Zf,default:Ea,logarithmic:xr,timeseries:xr};function Kf(i,t,e){const{id:n,options:{min:s,max:o}}=i;if(!t[n]||!e[n])return!0;const r=e[n];return r.min!==s||r.max!==o}
|