hubbi-ui 1.2.4 → 1.2.6
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.
- package/dist/components/index.d.ts +1 -0
- package/dist/components/selectorMultiple/index.d.ts +1 -0
- package/dist/components/selectorMultiple/select.stories.d.ts +6 -0
- package/dist/components/selectorMultiple/selectorMultiple.d.ts +15 -0
- package/dist/hubbi-ui.cjs.js +13 -13
- package/dist/hubbi-ui.es.js +614 -511
- package/dist/hubbi-ui.umd.js +12 -12
- package/dist/styles.css +1 -1
- package/package.json +2 -2
package/dist/hubbi-ui.cjs.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var _o=Object.defineProperty;var vo=(i,t,e)=>t in i?_o(i,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):i[t]=e;var
|
|
1
|
+
"use strict";var _o=Object.defineProperty;var vo=(i,t,e)=>t in i?_o(i,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):i[t]=e;var j=(i,t,e)=>vo(i,typeof t!="symbol"?t+"":t,e);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const X=require("react"),I=require("clsx"),D=require("phosphor-react"),Ls=require("@react-input/mask");var Ue={exports:{}},ge={};/**
|
|
2
2
|
* @license React
|
|
3
3
|
* react-jsx-runtime.production.min.js
|
|
4
4
|
*
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
*
|
|
7
7
|
* This source code is licensed under the MIT license found in the
|
|
8
8
|
* LICENSE file in the root directory of this source tree.
|
|
9
|
-
*/var Ns;function ko(){if(Ns)return ge;Ns=1;var i=
|
|
9
|
+
*/var Ns;function ko(){if(Ns)return ge;Ns=1;var i=X,t=Symbol.for("react.element"),e=Symbol.for("react.fragment"),s=Object.prototype.hasOwnProperty,n=i.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,r={key:!0,ref:!0,__self:!0,__source:!0};function o(a,l,h){var c,u={},d=null,b=null;h!==void 0&&(d=""+h),l.key!==void 0&&(d=""+l.key),l.ref!==void 0&&(b=l.ref);for(c in l)s.call(l,c)&&!r.hasOwnProperty(c)&&(u[c]=l[c]);if(a&&a.defaultProps)for(c in l=a.defaultProps,l)u[c]===void 0&&(u[c]=l[c]);return{$$typeof:t,type:a,key:d,ref:b,props:u,_owner:n.current}}return ge.Fragment=e,ge.jsx=o,ge.jsxs=o,ge}var pe={};/**
|
|
10
10
|
* @license React
|
|
11
11
|
* react-jsx-runtime.development.js
|
|
12
12
|
*
|
|
@@ -14,34 +14,34 @@
|
|
|
14
14
|
*
|
|
15
15
|
* This source code is licensed under the MIT license found in the
|
|
16
16
|
* LICENSE file in the root directory of this source tree.
|
|
17
|
-
*/var Is;function wo(){return Is||(Is=1,process.env.NODE_ENV!=="production"&&function(){var i=
|
|
18
|
-
`+Ci+m}}var Pi=!1,Ve;{var qr=typeof WeakMap=="function"?WeakMap:Map;Ve=new qr}function _s(m,k){if(!m||Pi)return"";{var P=Ve.get(m);if(P!==void 0)return P}var
|
|
19
|
-
`),ct=
|
|
17
|
+
*/var Is;function wo(){return Is||(Is=1,process.env.NODE_ENV!=="production"&&function(){var i=X,t=Symbol.for("react.element"),e=Symbol.for("react.portal"),s=Symbol.for("react.fragment"),n=Symbol.for("react.strict_mode"),r=Symbol.for("react.profiler"),o=Symbol.for("react.provider"),a=Symbol.for("react.context"),l=Symbol.for("react.forward_ref"),h=Symbol.for("react.suspense"),c=Symbol.for("react.suspense_list"),u=Symbol.for("react.memo"),d=Symbol.for("react.lazy"),b=Symbol.for("react.offscreen"),g=Symbol.iterator,p="@@iterator";function x(m){if(m===null||typeof m!="object")return null;var k=g&&m[g]||m[p];return typeof k=="function"?k:null}var y=i.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function _(m){{for(var k=arguments.length,P=new Array(k>1?k-1:0),A=1;A<k;A++)P[A-1]=arguments[A];w("error",m,P)}}function w(m,k,P){{var A=y.ReactDebugCurrentFrame,V=A.getStackAddendum();V!==""&&(k+="%s",P=P.concat([V]));var K=P.map(function(B){return String(B)});K.unshift("Warning: "+k),Function.prototype.apply.call(console[m],console,K)}}var M=!1,v=!1,O=!1,S=!1,C=!1,R;R=Symbol.for("react.module.reference");function T(m){return!!(typeof m=="string"||typeof m=="function"||m===s||m===r||C||m===n||m===h||m===c||S||m===b||M||v||O||typeof m=="object"&&m!==null&&(m.$$typeof===d||m.$$typeof===u||m.$$typeof===o||m.$$typeof===a||m.$$typeof===l||m.$$typeof===R||m.getModuleId!==void 0))}function E(m,k,P){var A=m.displayName;if(A)return A;var V=k.displayName||k.name||"";return V!==""?P+"("+V+")":P}function L(m){return m.displayName||"Context"}function H(m){if(m==null)return null;if(typeof m.tag=="number"&&_("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),typeof m=="function")return m.displayName||m.name||null;if(typeof m=="string")return m;switch(m){case s:return"Fragment";case e:return"Portal";case r:return"Profiler";case n:return"StrictMode";case h:return"Suspense";case c:return"SuspenseList"}if(typeof m=="object")switch(m.$$typeof){case a:var k=m;return L(k)+".Consumer";case o:var P=m;return L(P._context)+".Provider";case l:return E(m,m.render,"ForwardRef");case u:var A=m.displayName||null;return A!==null?A:H(m.type)||"Memo";case d:{var V=m,K=V._payload,B=V._init;try{return H(B(K))}catch{return null}}}return null}var J=Object.assign,z=0,q,Z,ut,st,Pt,Vt,Ot;function Nt(){}Nt.__reactDisabledLog=!0;function jt(){{if(z===0){q=console.log,Z=console.info,ut=console.warn,st=console.error,Pt=console.group,Vt=console.groupCollapsed,Ot=console.groupEnd;var m={configurable:!0,enumerable:!0,value:Nt,writable:!0};Object.defineProperties(console,{info:m,log:m,warn:m,error:m,group:m,groupCollapsed:m,groupEnd:m})}z++}}function $t(){{if(z--,z===0){var m={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:J({},m,{value:q}),info:J({},m,{value:Z}),warn:J({},m,{value:ut}),error:J({},m,{value:st}),group:J({},m,{value:Pt}),groupCollapsed:J({},m,{value:Vt}),groupEnd:J({},m,{value:Ot})})}z<0&&_("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}}var _t=y.ReactCurrentDispatcher,Ci;function We(m,k,P){{if(Ci===void 0)try{throw Error()}catch(V){var A=V.stack.trim().match(/\n( *(at )?)/);Ci=A&&A[1]||""}return`
|
|
18
|
+
`+Ci+m}}var Pi=!1,Ve;{var qr=typeof WeakMap=="function"?WeakMap:Map;Ve=new qr}function _s(m,k){if(!m||Pi)return"";{var P=Ve.get(m);if(P!==void 0)return P}var A;Pi=!0;var V=Error.prepareStackTrace;Error.prepareStackTrace=void 0;var K;K=_t.current,_t.current=null,jt();try{if(k){var B=function(){throw Error()};if(Object.defineProperty(B.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(B,[])}catch(dt){A=dt}Reflect.construct(m,[],B)}else{try{B.call()}catch(dt){A=dt}m.call(B.prototype)}}else{try{throw Error()}catch(dt){A=dt}m()}}catch(dt){if(dt&&A&&typeof dt.stack=="string"){for(var F=dt.stack.split(`
|
|
19
|
+
`),ct=A.stack.split(`
|
|
20
20
|
`),tt=F.length-1,it=ct.length-1;tt>=1&&it>=0&&F[tt]!==ct[it];)it--;for(;tt>=1&&it>=0;tt--,it--)if(F[tt]!==ct[it]){if(tt!==1||it!==1)do if(tt--,it--,it<0||F[tt]!==ct[it]){var gt=`
|
|
21
|
-
`+F[tt].replace(" at new "," at ");return m.displayName&>.includes("<anonymous>")&&(gt=gt.replace("<anonymous>",m.displayName)),typeof m=="function"&&Ve.set(m,gt),gt}while(tt>=1&&it>=0);break}}}finally{Pi=!1,_t.current=
|
|
21
|
+
`+F[tt].replace(" at new "," at ");return m.displayName&>.includes("<anonymous>")&&(gt=gt.replace("<anonymous>",m.displayName)),typeof m=="function"&&Ve.set(m,gt),gt}while(tt>=1&&it>=0);break}}}finally{Pi=!1,_t.current=K,$t(),Error.prepareStackTrace=V}var re=m?m.displayName||m.name:"",Yt=re?We(re):"";return typeof m=="function"&&Ve.set(m,Yt),Yt}function Kr(m,k,P){return _s(m,!1)}function Gr(m){var k=m.prototype;return!!(k&&k.isReactComponent)}function $e(m,k,P){if(m==null)return"";if(typeof m=="function")return _s(m,Gr(m));if(typeof m=="string")return We(m);switch(m){case h:return We("Suspense");case c:return We("SuspenseList")}if(typeof m=="object")switch(m.$$typeof){case l:return Kr(m.render);case u:return $e(m.type,k,P);case d:{var A=m,V=A._payload,K=A._init;try{return $e(K(V),k,P)}catch{}}}return""}var fe=Object.prototype.hasOwnProperty,vs={},ks=y.ReactDebugCurrentFrame;function Ye(m){if(m){var k=m._owner,P=$e(m.type,m._source,k?k.type:null);ks.setExtraStackFrame(P)}else ks.setExtraStackFrame(null)}function Zr(m,k,P,A,V){{var K=Function.call.bind(fe);for(var B in m)if(K(m,B)){var F=void 0;try{if(typeof m[B]!="function"){var ct=Error((A||"React class")+": "+P+" type `"+B+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof m[B]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw ct.name="Invariant Violation",ct}F=m[B](k,B,A,P,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(tt){F=tt}F&&!(F instanceof Error)&&(Ye(V),_("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",A||"React class",P,B,typeof F),Ye(null)),F instanceof Error&&!(F.message in vs)&&(vs[F.message]=!0,Ye(V),_("Failed %s type: %s",P,F.message),Ye(null))}}}var Jr=Array.isArray;function Oi(m){return Jr(m)}function Qr(m){{var k=typeof Symbol=="function"&&Symbol.toStringTag,P=k&&m[Symbol.toStringTag]||m.constructor.name||"Object";return P}}function to(m){try{return ws(m),!1}catch{return!0}}function ws(m){return""+m}function Ss(m){if(to(m))return _("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.",Qr(m)),ws(m)}var Ms=y.ReactCurrentOwner,eo={key:!0,ref:!0,__self:!0,__source:!0},Cs,Ps;function io(m){if(fe.call(m,"ref")){var k=Object.getOwnPropertyDescriptor(m,"ref").get;if(k&&k.isReactWarning)return!1}return m.ref!==void 0}function so(m){if(fe.call(m,"key")){var k=Object.getOwnPropertyDescriptor(m,"key").get;if(k&&k.isReactWarning)return!1}return m.key!==void 0}function no(m,k){typeof m.ref=="string"&&Ms.current}function ro(m,k){{var P=function(){Cs||(Cs=!0,_("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",k))};P.isReactWarning=!0,Object.defineProperty(m,"key",{get:P,configurable:!0})}}function oo(m,k){{var P=function(){Ps||(Ps=!0,_("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",k))};P.isReactWarning=!0,Object.defineProperty(m,"ref",{get:P,configurable:!0})}}var ao=function(m,k,P,A,V,K,B){var F={$$typeof:t,type:m,key:k,ref:P,props:B,_owner:K};return F._store={},Object.defineProperty(F._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(F,"_self",{configurable:!1,enumerable:!1,writable:!1,value:A}),Object.defineProperty(F,"_source",{configurable:!1,enumerable:!1,writable:!1,value:V}),Object.freeze&&(Object.freeze(F.props),Object.freeze(F)),F};function lo(m,k,P,A,V){{var K,B={},F=null,ct=null;P!==void 0&&(Ss(P),F=""+P),so(k)&&(Ss(k.key),F=""+k.key),io(k)&&(ct=k.ref,no(k,V));for(K in k)fe.call(k,K)&&!eo.hasOwnProperty(K)&&(B[K]=k[K]);if(m&&m.defaultProps){var tt=m.defaultProps;for(K in tt)B[K]===void 0&&(B[K]=tt[K])}if(F||ct){var it=typeof m=="function"?m.displayName||m.name||"Unknown":m;F&&ro(B,it),ct&&oo(B,it)}return ao(m,F,ct,V,A,Ms.current,B)}}var ji=y.ReactCurrentOwner,Os=y.ReactDebugCurrentFrame;function ne(m){if(m){var k=m._owner,P=$e(m.type,m._source,k?k.type:null);Os.setExtraStackFrame(P)}else Os.setExtraStackFrame(null)}var Ri;Ri=!1;function Ai(m){return typeof m=="object"&&m!==null&&m.$$typeof===t}function js(){{if(ji.current){var m=H(ji.current.type);if(m)return`
|
|
22
22
|
|
|
23
|
-
Check the render method of \``+m+"`."}return""}}function ho(m){return""}var
|
|
23
|
+
Check the render method of \``+m+"`."}return""}}function ho(m){return""}var Rs={};function co(m){{var k=js();if(!k){var P=typeof m=="string"?m:m.displayName||m.name;P&&(k=`
|
|
24
24
|
|
|
25
|
-
Check the top-level render call using <`+P+">.")}return k}}function
|
|
25
|
+
Check the top-level render call using <`+P+">.")}return k}}function As(m,k){{if(!m._store||m._store.validated||m.key!=null)return;m._store.validated=!0;var P=co(k);if(Rs[P])return;Rs[P]=!0;var A="";m&&m._owner&&m._owner!==ji.current&&(A=" It was passed a child from "+H(m._owner.type)+"."),ne(m),_('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',P,A),ne(null)}}function Ds(m,k){{if(typeof m!="object")return;if(Oi(m))for(var P=0;P<m.length;P++){var A=m[P];Ai(A)&&As(A,k)}else if(Ai(m))m._store&&(m._store.validated=!0);else if(m){var V=x(m);if(typeof V=="function"&&V!==m.entries)for(var K=V.call(m),B;!(B=K.next()).done;)Ai(B.value)&&As(B.value,k)}}}function uo(m){{var k=m.type;if(k==null||typeof k=="string")return;var P;if(typeof k=="function")P=k.propTypes;else if(typeof k=="object"&&(k.$$typeof===l||k.$$typeof===u))P=k.propTypes;else return;if(P){var A=H(k);Zr(P,m.props,"prop",A,m)}else if(k.PropTypes!==void 0&&!Ri){Ri=!0;var V=H(k);_("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",V||"Unknown")}typeof k.getDefaultProps=="function"&&!k.getDefaultProps.isReactClassApproved&&_("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}function bo(m){{for(var k=Object.keys(m.props),P=0;P<k.length;P++){var A=k[P];if(A!=="children"&&A!=="key"){ne(m),_("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",A),ne(null);break}}m.ref!==null&&(ne(m),_("Invalid attribute `ref` supplied to `React.Fragment`."),ne(null))}}var Ts={};function Es(m,k,P,A,V,K){{var B=T(m);if(!B){var F="";(m===void 0||typeof m=="object"&&m!==null&&Object.keys(m).length===0)&&(F+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");var ct=ho();ct?F+=ct:F+=js();var tt;m===null?tt="null":Oi(m)?tt="array":m!==void 0&&m.$$typeof===t?(tt="<"+(H(m.type)||"Unknown")+" />",F=" Did you accidentally export a JSX literal instead of a component?"):tt=typeof m,_("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",tt,F)}var it=lo(m,k,P,V,K);if(it==null)return it;if(B){var gt=k.children;if(gt!==void 0)if(A)if(Oi(gt)){for(var re=0;re<gt.length;re++)Ds(gt[re],m);Object.freeze&&Object.freeze(gt)}else _("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else Ds(gt,m)}if(fe.call(k,"key")){var Yt=H(m),dt=Object.keys(k).filter(function(yo){return yo!=="key"}),Di=dt.length>0?"{key: someKey, "+dt.join(": ..., ")+": ...}":"{key: someKey}";if(!Ts[Yt+Di]){var xo=dt.length>0?"{"+dt.join(": ..., ")+": ...}":"{}";_(`A props object containing a "key" prop is being spread into JSX:
|
|
26
26
|
let props = %s;
|
|
27
27
|
<%s {...props} />
|
|
28
28
|
React keys must be passed directly to JSX without using spread:
|
|
29
29
|
let props = %s;
|
|
30
|
-
<%s key={someKey} {...props} />`,Di,Yt,xo,Yt),Ts[Yt+Di]=!0}}return m===s?bo(it):uo(it),it}}function fo(m,k,P){return Es(m,k,P,!0)}function go(m,k,P){return Es(m,k,P,!1)}var po=go,mo=fo;pe.Fragment=s,pe.jsx=po,pe.jsxs=mo}()),pe}var Fs;function So(){return Fs||(Fs=1,process.env.NODE_ENV==="production"?Ue.exports=ko():Ue.exports=wo()),Ue.exports}var f=So();function Mo({title:i,borderColor:t="hubbi-border-primary",children:e,defaultOpen:s=!1}){const[n,r]=G.useState(s);return f.jsx("div",{className:"ui",children:f.jsx("div",{className:I(t,"hubbi-border-l-4 hubbi-rounded-lg hubbi-overflow-hidden hubbi-bg-surfaceSecondary-light dark:hubbi-bg-surfaceSecondary-dark"),children:f.jsxs("div",{className:"hubbi-rounded-lg hubbi-border hubbi-border-stroke-light dark:hubbi-border-stroke-dark hubbi-overflow-hidden",children:[f.jsxs("button",{onClick:()=>r(!n),className:"hover:hubbi-bg-gray-200 dark:hover:hubbi-bg-gray-800 hubbi-flex hubbi-items-center hubbi-justify-between hubbi-w-full hubbi-p-4 hubbi-text-textPrimary-light dark:hubbi-text-textPrimary-dark hubbi-font-medium",children:[f.jsx("span",{children:i}),f.jsx(D.CaretDown,{className:`hubbi-transition-transform hubbi-duration-200 ${n?"hubbi-rotate-180":""}`})]}),n&&f.jsx("div",{className:"hubbi-border-t hubbi-border-stroke-light dark:hubbi-border-stroke-dark hubbi-p-4",children:e})]})})})}const Co=({variant:i="info",title:t,children:e,className:s})=>{const n="hubbi-p-4 hubbi-rounded-lg",r={info:"hubbi-bg-white hubbi-border-l-4 hubbi-border-primary hubbi-text-primary dark:hubbi-bg-surfacePrimary-dark dark:hubbi-border-primary dark:hubbi-text-primary",success:"hubbi-bg-success-100 hubbi-border-l-4 hubbi-border-success-600 hubbi-text-success-600 dark:hubbi-bg-success-100 dark:hubbi-border-success-600 dark:hubbi-text-success-600",warning:"hubbi-bg-warning-100 hubbi-border-l-4 hubbi-border-warning-600 hubbi-text-warning-600 dark:hubbi-bg-warning-100 dark:hubbi-border-warning-600 dark:hubbi-text-warning-600",error:"hubbi-bg-error-100 hubbi-border-l-4 hubbi-border-error-600 hubbi-text-error-600 dark:hubbi-bg-error-100 dark:hubbi-border-error-600 dark:hubbi-text-error-600"},o={info:f.jsx(D.Info,{size:20,weight:"bold",className:"hubbi-text-primary dark:hubbi-text-primary"}),success:f.jsx(D.CheckCircle,{size:20,weight:"bold",className:"hubbi-text-success-600 dark:hubbi-text-success-600"}),warning:f.jsx(D.WarningOctagon,{size:20,weight:"bold",className:"hubbi-text-warning-600 dark:hubbi-text-warning-600"}),error:f.jsx(D.WarningCircle,{size:20,weight:"bold",className:"hubbi-text-error-600 dark:hubbi-text-error-600"})};return f.jsx("div",{className:"ui",children:f.jsx("div",{className:I(n,r[i],s),children:f.jsxs("div",{className:"hubbi-flex",children:[f.jsx("div",{className:"hubbi-flex-shrink-0",children:o[i]}),f.jsxs("div",{className:"hubbi-ml-3 hubbi-flex-1",children:[t&&f.jsx("h3",{className:"text-sm font-medium",children:t}),f.jsx("div",{className:I("hubbi-text-sm",t?"hubbi-mt-2":""),children:e})]})]})})})};function Qi({colorClass:i="hubbi-text-textPrimary-light dark:hubbi-text-textPrimary-dark",size:t="large",className:e}){const s={small:"hubbi-w-4 hubbi-h-4",medium:"hubbi-w-8 hubbi-h-8",large:"hubbi-w-12 hubbi-h-12"};return f.jsx("div",{className:"ui",children:f.jsx("div",{className:"hubbi-flex hubbi-items-center hubbi-justify-center hubbi-overflow-hidden",role:"status","aria-label":"Loading",children:f.jsx(D.CircleNotch,{weight:"bold",className:I("hubbi-animate-spin",e,s[t],i)})})})}function Lt({children:i,variant:t="contained",color:e="primary",size:s="medium",disabled:n=!1,fullWidth:r=!1,startIcon:o,endIcon:a,loading:l=!1,spinnerColor:h,className:c,...u}){const d="hubbi-inline-flex hubbi-items-center hubbi-justify-center hubbi-font-medium hubbi-rounded hubbi-transition hubbi-focus:outline-none hubbi-focus:ring-2 hubbi-focus:ring-offset-2 hubbi-whitespace-nowrap",b={small:"hubbi-px-3 hubbi-text-sm hubbi-gap-1 hubbi-h-8",medium:"hubbi-px-4 hubbi-text-base hubbi-gap-2 hubbi-h-10",large:"hubbi-px-5 hubbi-text-lg hubbi-gap-3 hubbi-h-12"},g={primary:{contained:"hubbi-bg-primary hubbi-text-white hover:hubbi-bg-blue-800",outlined:"hubbi-border hubbi-border-primary hubbi-text-primary hover:hubbi-bg-blue-50 dark:hover:hubbi-bg-blue-950",text:"hubbi-text-primary hover:hubbi-bg-blue-50 dark:hover:hubbi-bg-blue-950"},error:{contained:"hubbi-bg-error-600 hubbi-text-white hover:hubbi-bg-red-700",outlined:"hubbi-border hubbi-border-error-600 hubbi-text-error-600 hover:hubbi-bg-red-50 dark:hover:hubbi-bg-red-950",text:"hubbi-text-error-600 hover:hubbi-bg-red-50 dark:hover:hubbi-bg-red-950"},success:{contained:"hubbi-bg-success-600 hubbi-text-white hover:hubbi-bg-green-700",outlined:"hubbi-border hubbi-border-success-600 hubbi-text-success-600 hover:hubbi-bg-green-50 dark:hover:hubbi-bg-green-950",text:"hubbi-text-success-600 hover:hubbi-bg-green-50 dark:hover:hubbi-bg-green-950"},warning:{contained:"hubbi-bg-warning-600 hubbi-text-white hover:hubbi-bg-yellow-700",outlined:"hubbi-border hubbi-border-warning-600 hubbi-text-warning-600 hover:hubbi-bg-yellow-50 dark:hover:hubbi-bg-yellow-950",text:"hubbi-text-warning-600 hover:hubbi-bg-yellow-50 dark:hover:hubbi-bg-yellow-950"},indigo:{contained:"hubbi-bg-indigo-600 hubbi-text-white hover:hubbi-bg-indigo-700",outlined:"hubbi-border hubbi-border-indigo-600 hubbi-text-indigo-600 hover:hubbi-bg-indigo-50 dark:hover:hubbi-bg-indigo-950",text:"hubbi-text-indigo-600 hover:hubbi-bg-indigo-50 dark:hover:hubbi-bg-indigo-950"},default:{contained:"hubbi-bg-gray-200 hubbi-text-gray-800 hover:hubbi-bg-gray-300 dark:hubbi-bg-gray-700 dark:hubbi-text-white dark:hover:hubbi-bg-gray-600",outlined:"hubbi-border hubbi-border-gray-400 hubbi-text-gray-800 hover:hubbi-bg-gray-100 dark:hubbi-border-gray-600 dark:hubbi-text-white dark:hover:hubbi-bg-gray-700",text:"hubbi-text-gray-800 hover:hubbi-bg-gray-100 dark:hubbi-text-white dark:hover:hubbi-bg-gray-700"}};return f.jsx("div",{className:"ui flex",children:f.jsx("button",{disabled:n||l,className:I(c,d,b[s],r&&"hubbi-w-full",n?"hubbi-bg-disabled-light hubbi-text-gray-800 hubbi-cursor-not-allowed dark:hubbi-bg-disabled-dark dark:hubbi-text-gray-300":g[e][t]),...u,children:f.jsxs(f.Fragment,{children:[l?f.jsx(Qi,{colorClass:h,size:"small"}):o&&f.jsx("span",{children:o}),i,a&&f.jsx("span",{children:a})]})})})}function Po({status:i,selected:t,icon:e,label:s,...n}){const r="hubbi-inline-flex hubbi-items-center hubbi-px-3 hubbi-py-1.5 hubbi-rounded-full hubbi-text-sm hubbi-font-medium hubbi-transition-colors",o=l=>{switch(l){case"all":return"hubbi-bg-indigo-600 hubbi-text-white";case"open":return"hubbi-bg-yellow-500 hubbi-text-white";case"completed":return"hubbi-bg-green-500 hubbi-text-white";case"cancelled":return"hubbi-bg-red-500 hubbi-text-white";default:return"hubbi-bg-gray-500 hubbi-text-white"}};return f.jsx("div",{className:"ui",children:f.jsxs("button",{className:I.clsx(r,t?o(i):"hubbi-bg-white hubbi-text-gray-600 hover:hubbi-bg-gray-50 dark:hubbi-bg-surfacePrimary-dark dark:hubbi-text-textSecondary-dark dark:hover:hubbi-bg-surfaceSecondary-dark"),...n,children:[f.jsx("span",{className:"hubbi-mr-1.5 hubbi-h-4 hubbi-w-4",children:e}),s]})})}function ir({title:i,children:t,className:e,titleClassName:s,backgroundColor:n,bodyClassName:r}){return f.jsx("div",{className:`ui ${e||""}`,children:f.jsxs("div",{className:I(n||"hubbi-bg-surfacePrimary-light dark:hubbi-bg-surfacePrimary-dark","hubbi-p-6 hubbi-rounded-lg hubbi-shadow",r),children:[i&&f.jsx("h3",{className:I(s,"hubbi-text-lg hubbi-font-medium hubbi-text-textPrimary-light hubbi-mb-4 dark:hubbi-text-textPrimary-dark"),children:i}),t]})})}const Oo={primary:"hubbi-bg-primary/10 hubbi-border-primary/30",success:"hubbi-bg-success-600/10 hubbi-border-success-600/30",warning:"hubbi-bg-warning-600/10 hubbi-border-warning-600/30",error:"hubbi-bg-error-600/10 hubbi-border-error-600/30",indigo:"hubbi-bg-indigo-600/10 hubbi-border-indigo-600/30"},zs={primary:"hubbi-text-primary",success:"hubbi-text-success-600",warning:"hubbi-text-warning-600",error:"hubbi-text-error-600",indigo:"hubbi-text-indigo-600"};function Ro({icon:i,title:t,description:e,color:s="primary",buttonText:n,onButtonClick:r,buttonClassName:o="",containerClassName:a=""}){return f.jsx("div",{className:"ui flex flex-1",children:f.jsx("div",{className:I(a,`hubbi-p-4 hubbi-rounded-lg hubbi-border hubbi-flex hubbi-flex-1 hubbi-items-start hubbi-gap-3 ${Oo[s]}`),children:f.jsx("div",{className:"hubbi-flex-1",children:f.jsxs("div",{className:"hubbi-flex hubbi-flex-col hubbi-items-start hubbi-justify-between hubbi-gap-4",children:[f.jsxs("div",{children:[f.jsxs("h3",{className:`hubbi-flex hubbi-flex-row hubbi-gap-2 hubbi-items-center hubbi-font-medium ${zs[s]}`,children:[f.jsx("span",{children:i}),f.jsx("span",{className:"hubbi-font-bold",children:t})]}),f.jsx("p",{className:`hubbi-text-sm ${zs[s]}`,children:e})]}),n&&f.jsx(Lt,{variant:"outlined",size:"small",color:s,onClick:r,className:o,children:n})]})})})})}const Ao={h1:"hubbi-text-5xl hubbi-font-bold",h2:"hubbi-text-4xl hubbi-font-bold",h3:"hubbi-text-3xl hubbi-font-bold",h4:"hubbi-text-2xl hubbi-font-semibold",h5:"hubbi-text-xl hubbi-font-semibold",h6:"hubbi-text-lg hubbi-font-semibold",subtitle1:"hubbi-text-base hubbi-font-medium",subtitle2:"hubbi-text-sm hubbi-font-medium",body1:"hubbi-text-base",body2:"hubbi-text-sm",caption:"hubbi-text-xs",overline:"hubbi-text-xs hubbi-uppercase hubbi-tracking-wide"},jo={primary:"hubbi-text-textPrimary-light dark:hubbi-text-textPrimary-dark",secondary:"hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark",inherit:"",warning:"hubbi-text-warning-600",error:"hubbi-text-error-600",success:"hubbi-text-success-600",disable:"hubbi-text-disabled-light dark:hubbi-text-disabled-dark"},Do={left:"hubbi-text-left",center:"hubbi-text-center",right:"hubbi-text-right",justify:"hubbi-text-justify"},To={normal:"hubbi-font-normal",medium:"hubbi-font-medium",semibold:"hubbi-font-semibold",bold:"hubbi-font-bold",extrabold:"hubbi-font-extrabold"},Eo={xs:"hubbi-text-xs",sm:"hubbi-text-sm",base:"hubbi-text-base",lg:"hubbi-text-lg",xl:"hubbi-text-xl","2xl":"hubbi-text-2xl","3xl":"hubbi-text-3xl","4xl":"hubbi-text-4xl","5xl":"hubbi-text-5xl","6xl":"hubbi-text-6xl"};function Jt({children:i,variant:t="body1",color:e="primary",customColor:s,align:n,weight:r,size:o,className:a,as:l}){const h=l||"p";return f.jsx("div",{className:"ui",children:f.jsx(h,{className:I(a,n&&Do[n],r&&To[r],o&&Eo[o],Ao[t],s||e!=="inherit"&&jo[e]),children:i})})}const Lo=({getRootProps:i,getInputProps:t,isDragActive:e,isDragReject:s,fileName:n,onClearFile:r,supportedFileText:o="Apenas arquivos suportados são aceitos",variant:a="default",details:l})=>{const h=t(),c=I("hubbi-border-2 hubbi-border-dashed hubbi-rounded-lg hubbi-p-4 sm:hubbi-p-2 hubbi-text-center hubbi-cursor-pointer hubbi-transition-colors hubbi-relative","hubbi-bg-surfacePrimary-light dark:hubbi-bg-surfacePrimary-dark","hubbi-border-stroke-light dark:hubbi-border-stroke-dark",{"hubbi-border-primary hubbi-bg-primary/10":e,"hubbi-border-error-600 hubbi-bg-error-100":s,"hover:hubbi-border-stroke-dark dark:hover:hubbi-border-stroke-light":!e&&!s});return f.jsx("div",{className:"ui",children:f.jsx("div",{className:"hubbi-space-y-4",children:f.jsxs("div",{...i(),className:c,children:[f.jsx("input",{...h,className:"hubbi-hidden"}),a==="simple"?f.jsxs("div",{className:"hubbi-flex hubbi-items-center hubbi-gap-2 hubbi-justify-center p-2",children:[f.jsx(D.Upload,{weight:"bold",className:"hubbi-w-5 hubbi-h-5 hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark"}),f.jsx(Jt,{variant:"body2",color:"secondary",children:l||"Clique ou arraste para fazer upload"})]}):f.jsxs("div",{className:"hubbi-flex hubbi-flex-col hubbi-items-center hubbi-gap-2",children:[f.jsx(D.Upload,{weight:"bold",className:"hubbi-w-8 hubbi-h-8 sm:hubbi-w-12 sm:hubbi-h-12 hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark"}),f.jsx(Jt,{variant:"body2",color:"secondary",children:e?"Solte o arquivo aqui":n?`Arquivo selecionado: ${n}`:"Arraste e solte um arquivo aqui, ou clique para selecionar"}),f.jsx(Jt,{variant:"caption",color:"disable",children:o})]}),n&&r&&f.jsx("button",{onClick:u=>{u.stopPropagation(),r()},className:"hubbi-absolute hubbi-top-2 hubbi-right-2 hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark hover:hubbi-text-error-600","aria-label":"Limpar arquivo selecionado",children:f.jsx(D.X,{weight:"bold",className:"hubbi-w-6 hubbi-h-6"})})]})})})};function No({onMenuClick:i,isDarkMode:t,user:e,toggleTheme:s,position:n="left"}){var r,o;return f.jsx("header",{className:"ui",children:f.jsx("div",{className:"hubbi-border-b hubbi-shadow-sm hubbi-h-16 hubbi-px-4 hubbi-bg-surfacePrimary-light hubbi-border-stroke-light dark:hubbi-bg-surfacePrimary-dark dark:hubbi-border-stroke-dark",children:f.jsxs("div",{className:"hubbi-flex hubbi-items-center hubbi-h-full hubbi-justify-between hubbi-gap-4",children:[f.jsx(Lt,{variant:"text",color:"default",size:"small",onClick:i,className:"hubbi-rounded-full md:hubbi-hidden",children:f.jsx(D.List,{size:24})}),f.jsxs("div",{className:I("hubbi-flex hubbi-items-center hubbi-gap-4 hubbi-flex-1 ",n==="left"&&"hubbi-justify-start",n==="right"&&"hubbi-justify-end"),children:[f.jsx(Lt,{variant:"text",color:"default",size:"small",onClick:s,className:"hubbi-rounded-full",children:t?f.jsx(D.Sun,{size:20}):f.jsx(D.Moon,{size:20})}),f.jsx(Lt,{variant:"text",color:"default",size:"small",className:"hubbi-rounded-full",children:f.jsx(D.Bell,{size:20})}),f.jsxs("div",{className:"hubbi-flex hubbi-items-center hubbi-ml-4",children:[(r=e==null?void 0:e.image)!=null&&r.file_low?f.jsx("img",{src:e.image.file_low,alt:e.username,className:"hubbi-h-8 hubbi-w-8 hubbi-rounded-full hubbi-object-cover"}):f.jsx("div",{className:"hubbi-h-8 hubbi-w-8 hubbi-rounded-full hubbi-bg-indigo-500 hubbi-flex hubbi-items-center hubbi-justify-center hubbi-text-white hubbi-font-medium",children:((o=e==null?void 0:e.username)==null?void 0:o.charAt(0).toUpperCase())||"U"}),f.jsxs("div",{className:"hubbi-ml-3 hubbi-flex hubbi-flex-col hubbi-leading-tight",children:[f.jsx(Jt,{variant:"subtitle2",color:"primary",children:(e==null?void 0:e.username)||"Usuário"}),f.jsx(Jt,{variant:"caption",color:"secondary",children:(e==null?void 0:e.email)||"usuario@exemplo.com"})]})]})]})]})})})}function Io({label:i,placeholder:t,error:e=!1,helperText:s,disabled:n=!1,icon:r,className:o,...a}){return f.jsx("div",{className:"ui",children:f.jsxs("div",{className:"hubbi-flex hubbi-flex-col hubbi-gap-1 hubbi-w-full",children:[i&&f.jsx("label",{className:"hubbi-text-sm hubbi-font-medium hubbi-text-textPrimary-light dark:hubbi-text-textPrimary-dark",children:i}),f.jsxs("div",{className:"hubbi-relative hubbi-flex-1",children:[r&&f.jsx("div",{className:"hubbi-absolute hubbi-left-3 hubbi-top-2.5 hubbi-text-textPrimary-light dark:hubbi-text-textPrimary-dark ",children:r}),f.jsx("input",{...a,disabled:n,placeholder:t,className:I("hubbi-w-full hubbi-min-h-10 hubbi-py-2 hubbi-rounded-lg hubbi-border hubbi-text-sm hubbi-bg-white dark:hubbi-bg-surfacePrimary-dark dark:hubbi-text-textPrimary-dark",r?"hubbi-pl-10 hubbi-pr-4":"hubbi-px-4",n&&"hubbi-bg-disabled-light dark:hubbi-bg-disabled-dark hubbi-cursor-not-allowed",e?"hubbi-border-error-600 focus:hubbi-ring-error-600":"hubbi-border-stroke-light dark:hubbi-border-stroke-dark focus:hubbi-ring-primary",o)})]}),s&&f.jsx("p",{className:I("hubbi-text-xs",e?"hubbi-text-error-600":"hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark"),children:s})]})})}function Fo({label:i,placeholder:t,error:e=!1,helperText:s,disabled:n=!1,icon:r,className:o,mask:a,replacement:l={_:/\d/},value:h="",...c}){const[u,d]=G.useState("");return G.useEffect(()=>{if(h&&a){const b=Ls.format(String(h),{mask:a,replacement:l});d(b)}else d(String(h??""))},[h,a,l]),f.jsx("div",{className:"ui",children:f.jsxs("div",{className:"hubbi-flex hubbi-flex-col hubbi-gap-1 hubbi-w-full",children:[i&&f.jsx("label",{className:"hubbi-text-sm hubbi-font-medium hubbi-text-textPrimary-light dark:hubbi-text-textPrimary-dark",children:i}),f.jsxs("div",{className:"hubbi-relative hubbi-flex-1",children:[r&&f.jsx("div",{className:"hubbi-absolute hubbi-left-3 hubbi-top-2.5 hubbi-text-textPrimary-light dark:hubbi-text-textPrimary-dark",children:r}),f.jsx(Ls.InputMask,{...c,value:u,mask:a,replacement:l,disabled:n,placeholder:t,className:I("hubbi-w-full hubbi-min-h-10 hubbi-py-2 hubbi-rounded-lg hubbi-border hubbi-text-sm hubbi-bg-white dark:hubbi-bg-surfacePrimary-dark dark:hubbi-text-textPrimary-dark",r?"hubbi-pl-10 hubbi-pr-4":"hubbi-px-4",n&&"hubbi-bg-disabled-light dark:hubbi-bg-disabled-dark hubbi-cursor-not-allowed",e?"hubbi-border-error-600 focus:hubbi-ring-error-600":"hubbi-border-stroke-light dark:hubbi-border-stroke-dark focus:hubbi-ring-primary",o)})]}),s&&f.jsx("p",{className:I("hubbi-text-xs",e?"hubbi-text-error-600":"hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark"),children:s})]})})}const Bs={0:{label:"Em aberto",bg:"hubbi-bg-blue-100 dark:hubbi-bg-blue-600",text:"hubbi-text-blue-900 dark:hubbi-text-white",border:"hubbi-border-blue-500 dark:hubbi-border-blue-400"},2:{label:"Sucesso",bg:"hubbi-bg-green-100 dark:hubbi-bg-green-600",text:"hubbi-text-green-900 dark:hubbi-text-white",border:"hubbi-border-green-500 dark:hubbi-border-green-400"},3:{label:"Falha Parcial",bg:"hubbi-bg-red-100 dark:hubbi-bg-red-600",text:"hubbi-text-red-900 dark:hubbi-text-white",border:"hubbi-border-red-500 dark:hubbi-border-red-400"},4:{label:"Falha Total",bg:"hubbi-bg-red-100 dark:hubbi-bg-red-600",text:"hubbi-text-red-900 dark:hubbi-text-white",border:"hubbi-border-red-500 dark:hubbi-border-red-400"},99:{label:"Processando",bg:"hubbi-bg-yellow-100 dark:hubbi-bg-yellow-600",text:"hubbi-text-yellow-900 dark:hubbi-text-white",border:"hubbi-border-yellow-500 dark:hubbi-border-yellow-400"}},zo={"EM ABERTO":"Em aberto",AGUARDANDO_PAGAMENTO:"Aguardando Pagamento",AGUARDANDO_CONFIRMACAO:"Aguardando Confirmação",PAGO:"Pago",CONFIRMADO:"Confirmado",FATURADO:"Faturado",ENVIADO:"Enviado",ENTREGUE:"Entregue",RECEBIDO:"Recebido",EM_DISPUTA:"Em Disputa",CANCELADO:"Cancelado",CONCLUIDO:"Concluído",CONCLUÍDO:"Concluído",DISPONÍVEL:"Disponível",CONECTADO:"Conectado",FECHADA:"Fechado",ATRASADO:"Atrasado",CRIADO:"Aberto",ACEITO:"Aprovado",RECUSADO:"Recusado"},ot={yellow:{bg:"hubbi-bg-yellow-100 dark:hubbi-bg-yellow-700",text:"hubbi-text-yellow-800 dark:hubbi-text-yellow-100",border:"hubbi-border-yellow-500 dark:hubbi-border-yellow-400"},yellowDark:{bg:"hubbi-bg-yellow-200 dark:hubbi-bg-yellow-600",text:"hubbi-text-yellow-900 dark:hubbi-text-yellow-100",border:"hubbi-border-yellow-500 dark:hubbi-border-yellow-400"},green:{bg:"hubbi-bg-green-100 dark:hubbi-bg-green-700",text:"hubbi-text-green-900 dark:hubbi-text-white",border:"hubbi-border-green-500 dark:hubbi-border-green-400"},red:{bg:"hubbi-bg-red-100 dark:hubbi-bg-red-600",text:"hubbi-text-red-900 dark:hubbi-text-white",border:"hubbi-border-red-500 dark:hubbi-border-red-400"},blue:{bg:"hubbi-bg-blue-100 dark:hubbi-bg-blue-600",text:"hubbi-text-blue-900 dark:hubbi-text-white",border:"hubbi-border-blue-500 dark:hubbi-border-blue-400"},cyan:{bg:"hubbi-bg-cyan-100 dark:hubbi-bg-cyan-600",text:"hubbi-text-cyan-900 dark:hubbi-text-white",border:"hubbi-border-cyan-500 dark:hubbi-border-cyan-400"},lime:{bg:"hubbi-bg-lime-100 dark:hubbi-bg-lime-600",text:"hubbi-text-lime-900 dark:hubbi-text-white",border:"hubbi-border-lime-500 dark:hubbi-border-lime-400"},violet:{bg:"hubbi-bg-violet-100 dark:hubbi-bg-violet-600",text:"hubbi-text-violet-900 dark:hubbi-text-white",border:"hubbi-border-violet-500 dark:hubbi-border-violet-400"},orange:{bg:"hubbi-bg-orange-100 dark:hubbi-bg-orange-600",text:"hubbi-text-orange-900 dark:hubbi-text-white",border:"hubbi-border-orange-500 dark:hubbi-border-orange-400"},emerald:{bg:"hubbi-bg-emerald-100 dark:hubbi-bg-emerald-600",text:"hubbi-text-emerald-900 dark:hubbi-text-white",border:"hubbi-border-emerald-500 dark:hubbi-border-emerald-400"}},Bo={"Em aberto":ot.yellow,"Aguardando Confirmação":ot.yellowDark,Fechada:ot.yellowDark,Atrasado:ot.red,Cancelado:ot.red,Recusado:ot.red,Aberto:ot.blue,Disponível:ot.blue,Enviado:ot.blue,Conectado:ot.green,Pago:ot.emerald,Confirmado:ot.lime,Faturado:ot.cyan,Entregue:ot.violet,Recebido:ot.green,"Em Disputa":ot.orange,Concluído:ot.green,Aprovado:ot.green};function Ho({label:i,statusKey:t,noIcon:e=!1}){const s=zo[t]||t,{bg:n,text:r,border:o}=Bo[s]||{bg:"hubbi-bg-gray-100 dark:hubbi-bg-gray-700",text:"hubbi-text-gray-800 dark:hubbi-text-gray-100",border:"hubbi-border-gray-400 dark:hubbi-border-gray-500"},l={"Em aberto":f.jsx(D.Clock,{size:14,weight:"bold"}),"Aguardando Pagamento":f.jsx(D.Money,{size:14,weight:"bold"}),"Aguardando Confirmação":f.jsx(D.Hourglass,{size:14,weight:"bold"}),Pago:f.jsx(D.CheckCircle,{size:14,weight:"bold"}),Confirmado:f.jsx(D.CheckCircle,{size:14,weight:"bold"}),Faturado:f.jsx(D.FileText,{size:14,weight:"bold"}),Enviado:f.jsx(D.Truck,{size:14,weight:"bold"}),Entregue:f.jsx(D.Package,{size:14,weight:"bold"}),Recebido:f.jsx(D.Handshake,{size:14,weight:"bold"}),"Em Disputa":f.jsx(D.WarningCircle,{size:14,weight:"bold"}),Cancelado:f.jsx(D.XCircle,{size:14,weight:"bold"}),Concluido:f.jsx(D.CheckSquare,{size:14,weight:"bold"}),Concluído:f.jsx(D.CheckSquare,{size:14,weight:"bold"}),Aberto:f.jsx(D.Clock,{size:14,weight:"bold"}),Aprovado:f.jsx(D.CheckCircle,{size:14,weight:"bold"}),Recusado:f.jsx(D.XCircle,{size:14,weight:"bold"})}[s];return f.jsx("div",{className:"ui",children:f.jsxs("span",{className:I("hubbi-inline-flex hubbi-items-center hubbi-px-2 hubbi-py-0.5 hubbi-text-xs hubbi-font-medium hubbi-rounded-full hubbi-border hubbi-gap-1 hubbi-whitespace-nowrap",n,r,o),children:[!e&&l,i||s]})})}function Wo({status:i}){const{label:t,border:e,text:s,bg:n}=Bs[i]||Bs[99],o={"Em aberto":f.jsx(D.Hourglass,{size:14,weight:"bold"}),Sucesso:f.jsx(D.CheckCircle,{size:14,weight:"bold"}),"Falha Parcial":f.jsx(D.Warning,{size:14,weight:"bold"}),"Falha Total":f.jsx(D.Warning,{size:14,weight:"bold"}),Processando:f.jsx(D.Hourglass,{size:14,weight:"bold"})}[t];return f.jsx("div",{className:"ui",children:f.jsxs("span",{className:I("hubbi-inline-flex hubbi-items-center hubbi-px-2 hubbi-py-0.5 hubbi-text-xs hubbi-font-medium hubbi-rounded-full hubbi-border hubbi-gap-1 hubbi-whitespace-nowrap",n,s,e),children:[o,t]})})}function Vo({className:i=" ",backgroundColor:t="",title:e,titleClassName:s="",value:n,valueClassName:r="",change:o,changeClassName:a="",trend:l,icon:h,iconClassName:c="",loading:u=!1,bodyClassName:d="",iconPosition:b="right"}){return f.jsx(ir,{className:I("hubbi-h-full",i),backgroundColor:t,bodyClassName:d,children:u?f.jsx("div",{className:"hubbi-flex hubbi-justify-center hubbi-items-center hubbi-h-20 lg:hubbi-h-24",children:f.jsx(Qi,{})}):f.jsx(f.Fragment,{children:b==="left"?f.jsxs("div",{className:"flex items-center",children:[h&&f.jsx("div",{className:"flex items-center hubbi-rounded-full justify-center w-10 h-10 bg-blue-50 mr-4",children:f.jsx(h,{className:I("w-6 h-6 text-blue-500",c)})}),f.jsxs("div",{children:[f.jsx("p",{className:s||"hubbi-text-sm hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark",children:e}),f.jsx("p",{className:r||"hubbi-text-2xl hubbi-font-semibold hubbi-mt-1 hubbi-text-textPrimary-light dark:hubbi-text-textPrimary-dark",children:n}),f.jsxs("div",{className:"hubbi-flex hubbi-items-center",children:[o&&f.jsx("span",{className:I("hubbi-text-sm hubbi-font-medium",l==="up"?"hubbi-text-success-600":l==="down"?"hubbi-text-error-600":"hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark",a),children:o}),l&&f.jsx("span",{className:"hubbi-ml-2",children:l==="up"?f.jsx(D.ArrowUp,{className:"hubbi-w-4 hubbi-h-4 hubbi-text-success-600"}):f.jsx(D.ArrowDown,{className:"hubbi-w-4 hubbi-h-4 hubbi-text-error-600"})})]})]})]}):f.jsxs("div",{className:"hubbi-flex hubbi-items-center hubbi-justify-between",children:[f.jsxs("div",{children:[f.jsx("p",{className:s||"hubbi-text-sm hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark",children:e}),f.jsx("p",{className:r||"hubbi-text-2xl hubbi-font-semibold hubbi-mt-1 hubbi-text-textPrimary-light dark:hubbi-text-textPrimary-dark",children:n}),f.jsxs("div",{className:"hubbi-flex hubbi-items-center",children:[o&&f.jsx("span",{className:I("hubbi-text-sm hubbi-font-medium",l==="up"?"hubbi-text-success-600":l==="down"?"hubbi-text-error-600":"hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark",a),children:o}),l&&f.jsx("span",{className:"hubbi-ml-2",children:l==="up"?f.jsx(D.ArrowUp,{className:"hubbi-w-4 hubbi-h-4 hubbi-text-success-600"}):f.jsx(D.ArrowDown,{className:"hubbi-w-4 hubbi-h-4 hubbi-text-error-600"})})]})]}),h&&f.jsx("div",{className:I("hubbi-p-3 hubbi-rounded-full hubbi-self-start",l==="up"?"hubbi-bg-success-100":l==="down"?"hubbi-bg-error-100":"hubbi-bg-gray-100 dark:hubbi-bg-gray-800"),children:f.jsx(h,{className:I("hubbi-w-6 hubbi-h-6",l==="up"?"hubbi-text-success-600":l==="down"?"hubbi-text-error-600":"hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark",c)})})]})})})}const $o=({isOpen:i,title:t,onClose:e,footer:s,children:n,size:r="4xl"})=>{if(!i)return null;const o={xs:"hubbi-max-w-xs",sm:"hubbi-max-w-sm",md:"hubbi-max-w-md",lg:"hubbi-max-w-lg",xl:"hubbi-max-w-xl","2xl":"hubbi-max-w-2xl","3xl":"hubbi-max-w-3xl","4xl":"hubbi-max-w-4xl"};return f.jsx("div",{className:"ui",children:f.jsx("div",{className:"hubbi-fixed hubbi-inset-0 hubbi-z-50 hubbi-flex hubbi-items-center hubbi-justify-center hubbi-bg-black/50",children:f.jsxs("div",{className:I("hubbi-bg-surfacePrimary-light dark:hubbi-bg-surfacePrimary-dark hubbi-rounded-lg hubbi-shadow-xl hubbi-w-full hubbi-max-h-[90vh] hubbi-overflow-y-auto hubbi-p-4",o[r]),children:[f.jsxs("div",{className:"hubbi-flex hubbi-items-center hubbi-justify-between",children:[f.jsx(Jt,{as:"h3",variant:"body1",size:"xl",children:t}),f.jsx("button",{onClick:e,className:"hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark hover:hubbi-text-textHover-light dark:hover:hubbi-text-textHover-dark hubbi-transition-colors","aria-label":"Fechar modal",children:f.jsx(D.X,{className:"hubbi-w-5 hubbi-h-5"})})]}),f.jsx("div",{className:"hubbi-my-4",children:n}),s]})})})};function Yo({isActive:i,onClick:t,icon:e,children:s}){return f.jsx("div",{className:"ui",children:f.jsxs("button",{onClick:t,className:I.clsx("hubbi-px-3 hubbi-py-2 hubbi-rounded-md hubbi-text-sm hubbi-font-medium hubbi-flex hubbi-items-center hubbi-transition-colors",i?"hubbi-bg-primary hubbi-text-white":"hubbi-text-textSecondary-light hover:hubbi-text-textHover-light dark:hubbi-text-textSecondary-dark dark:hover:hubbi-text-textHover-dark"),children:[e&&f.jsx("span",{className:"hubbi-mr-2",children:e}),s]})})}const Uo={0:"hubbi-shadow-none",1:"hubbi-shadow-sm",2:"hubbi-shadow",3:"hubbi-shadow-md",4:"hubbi-shadow-lg"};function sr({children:i,className:t,elevation:e=1,padding:s=4,header:n,fullWidth:r}){return f.jsx("div",{className:I("ui",r&&"flex flex-col flex-1"),children:f.jsxs("div",{className:I(t,`hubbi-p-${s} hubbi-bg-surfacePrimary-light dark:hubbi-bg-surfacePrimary-dark`,Uo[e]),children:[n&&f.jsx("div",{className:"hubbi-px-4 hubbi-py-3 hubbi-border-b hubbi-border-stroke-light dark:hubbi-border-stroke-dark",children:n}),i]})})}function Xo({count:i,pageLimit:t,setPageLimit:e=()=>{},currentPage:s,goToPage:n=()=>{}}){const[r,o]=G.useState(Math.ceil(i/t));G.useEffect(()=>{o(Math.ceil(i/t))},[i,t]);const a=(s-1)*t+1,l=Math.min(s*t,i),h=c=>{c<1||c>r||n(c)};return f.jsx("div",{className:"ui",children:f.jsx(sr,{elevation:0,className:"hubbi-rounded-lg hubbi-bg-surfaceSecondary-light dark:hubbi-bg-surfaceSecondary-dark",children:f.jsx("div",{className:"hubbi-w-full hubbi-flex hubbi-flex-col hubbi-gap-4 ",children:i>0&&f.jsxs("div",{className:"hubbi-w-full hubbi-flex hubbi-flex-wrap hubbi-items-center hubbi-justify-between hubbi-gap-4",children:[f.jsxs("div",{className:"hubbi-text-sm hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark hubbi-min-w-fit",children:["Exibindo ",a," a ",l," de ",i," resultados"]}),f.jsxs("div",{className:"hubbi-flex hubbi-items-center hubbi-gap-2 hubbi-min-w-fit",children:[f.jsx("span",{className:"hubbi-text-sm hubbi-font-light hubbi-text-textPrimary-light dark:hubbi-text-textPrimary-dark",children:"Por página:"}),f.jsx("select",{value:t,onChange:c=>e(Number(c.target.value)),className:"hubbi-p-1 hubbi-rounded hubbi-border hubbi-border-stroke-light dark:hubbi-border-stroke-dark hubbi-bg-surfacePrimary-light dark:hubbi-bg-surfacePrimary-dark hubbi-text-textPrimary-light dark:hubbi-text-textPrimary-dark",children:[12,24,48,96].map(c=>f.jsx("option",{value:c,children:c},c))})]}),f.jsxs("div",{className:"hubbi-flex hubbi-items-center hubbi-gap-1 hubbi-flex-wrap hubbi-justify-end hubbi-text-sm",children:[f.jsx(Lt,{onClick:()=>h(s-1),disabled:s<=1,variant:"outlined",size:"small",children:"Anterior"}),[...Array(5)].map((c,u)=>{const b=Math.max(3,Math.min(s,r-2))-2+u,g=b===s,p=b<1||b>r;return f.jsx(Lt,{onClick:()=>h(b),size:"small",variant:g?"contained":"outlined",color:g?"primary":"default",disabled:p,children:b},u)}),f.jsx(Lt,{onClick:()=>h(s+1),disabled:s>=r,variant:"outlined",size:"small",children:"Próximo"})]})]})})})})}const qo=({trigger:i,children:t,placement:e={trigger:{vertical:"bottom",horizontal:"center"},children:{vertical:"bottom",horizontal:"center"}},position:s={trigger:{x:0,y:0},children:{x:0,y:0}},className:n="",ignoreOutsideClick:r})=>{const[o,a]=G.useState(!1),l=G.useRef(null),h=G.useRef(null),c=()=>a(d=>!d);G.useEffect(()=>{const d=b=>{var p,x;const g=b.target;(p=l.current)!=null&&p.contains(g)||(x=h.current)!=null&&x.contains(g)||r!=null&&r(g)||a(!1)};return document.addEventListener("mousedown",d),()=>document.removeEventListener("mousedown",d)},[r]);const u=(d,b,g)=>{const p={position:"fixed",pointerEvents:"auto"};d==="top"&&(p.top=g.y),d==="bottom"&&(p.bottom=g.y),d==="center"&&(p.top="50%"),b==="left"&&(p.left=g.x),b==="right"&&(p.right=g.x),b==="center"&&(p.left="50%");const x=[];return d==="center"&&x.push("translateY(-50%)"),b==="center"&&x.push("translateX(-50%)"),x.length&&(p.transform=x.join(" ")),p};return f.jsxs("div",{className:"ui fixed top-0 left-0 w-screen h-screen z-50 pointer-events-none",children:[f.jsx("div",{ref:h,className:"hubbi-pointer-events-auto",style:u(e.trigger.vertical,e.trigger.horizontal,s.trigger),onClick:c,children:i}),o&&f.jsx("div",{ref:l,className:`hubbi-pointer-events-auto ${n}`,style:u(e.children.vertical,e.children.horizontal,s.children),children:typeof t=="function"?t(c):t})]})},Ko=({isSelected:i,onClick:t,className:e=""})=>f.jsx("div",{className:"ui",children:f.jsx("div",{className:`hubbi-w-6 hubbi-h-6 hubbi-rounded-full hubbi-border-2 hubbi-flex hubbi-items-center hubbi-justify-center hubbi-transition-all hubbi-cursor-pointer ${i?"hubbi-border-blue-500 hubbi-bg-blue-500 hubbi-shadow-md":"hubbi-border-gray-300 hover:hubbi-border-blue-300"} ${e||""}`,onClick:t,role:"radio","aria-checked":i,tabIndex:0,onKeyPress:s=>{(s.key==="Enter"||s.key===" ")&&t&&t()},children:i&&f.jsx("div",{className:"hubbi-w-3 hubbi-h-3 hubbi-rounded-full hubbi-bg-gray-100 hubbi-transition-colors"})})}),Go=({value:i,onChange:t,options:e,label:s,fullWidth:n=!1})=>f.jsxs("div",{className:`ui ${n?"w-full":""}`,children:[f.jsx("label",{className:"hubbi-text-sm hubbi-font-medium hubbi-text-textPrimary-light dark:hubbi-text-textPrimary-dark",children:s}),f.jsx("select",{value:i,onChange:r=>t(r.target.value),className:"hubbi-w-full hubbi-min-h-10 hubbi-py-2 hubbi-rounded-lg hubbi-border hubbi-text-sm hubbi-bg-white dark:hubbi-bg-surfacePrimary-dark hubbi-px-4 hubbi-border-stroke-light dark:hubbi-border-stroke-dark focus:hubbi-ring-primary dark:hubbi-text-textPrimary-dark dark:[color-scheme:dark]",children:e.map(r=>f.jsx("option",{value:r.value,children:r.label},r.value))})]}),Zo=({data:i,children:t})=>f.jsx("tbody",{className:"hubbi-divide-y hubbi-divide-gray-200 dark:hubbi-divide-gray-700 hubbi-bg-white dark:hubbi-bg-surfaceSecondary-dark",children:i.map((e,s)=>t(e,s))}),Jo=({children:i,align:t="left",className:e=""})=>{const s={left:"hubbi-text-left",center:"hubbi-text-center",right:"hubbi-text-right"};return f.jsx("td",{className:`hubbi-px-6 hubbi-py-4 hubbi-text-sm hubbi-text-gray-700 dark:hubbi-text-gray-200 ${s[t]} ${e||""}`,children:i})},Qo=({columns:i,showCheckbox:t=!1,allSelected:e=!1,onSelectAll:s,onSort:n,currentSortKey:r,currentSortDirection:o})=>{const a=c=>{s==null||s(c.target.checked)},l=c=>{const u=typeof c=="string"?{label:c}:c,d=u.sortKey||u.label;if(!u.sortable||!n)return;let b="asc";r===d&&(o==="asc"?b="desc":o==="desc"&&(b=null)),n(d,b)},h=c=>{const u=typeof c=="string"?{label:c}:c,d=u.sortKey||u.label;if(!u.sortable)return null;const b=r===d;return b&&o==="asc"?f.jsx("svg",{className:"hubbi-ml-2 hubbi-w-4 hubbi-h-4 hubbi-text-blue-600 dark:hubbi-text-blue-400",fill:"currentColor",viewBox:"0 0 20 20",children:f.jsx("path",{fillRule:"evenodd",d:"M14.707 12.707a1 1 0 01-1.414 0L10 9.414l-3.293 3.293a1 1 0 01-1.414-1.414l4-4a1 1 0 011.414 0l4 4a1 1 0 010 1.414z",clipRule:"evenodd"})}):b&&o==="desc"?f.jsx("svg",{className:"hubbi-ml-2 hubbi-w-4 hubbi-h-4 hubbi-text-blue-600 dark:hubbi-text-blue-400",fill:"currentColor",viewBox:"0 0 20 20",children:f.jsx("path",{fillRule:"evenodd",d:"M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z",clipRule:"evenodd"})}):f.jsx("svg",{className:"hubbi-ml-2 hubbi-w-4 hubbi-h-4 hubbi-text-gray-400 dark:hubbi-text-gray-600",fill:"currentColor",viewBox:"0 0 20 20",children:f.jsx("path",{d:"M3 3a1 1 0 000 2h11a1 1 0 100-2H3zM3 7a1 1 0 000 2h7a1 1 0 100-2H3zM3 11a1 1 0 100 2h4a1 1 0 100-2H3zM15 8a1 1 0 10-2 0v5.586l-1.293-1.293a1 1 0 00-1.414 1.414l3 3a1 1 0 001.414 0l3-3a1 1 0 00-1.414-1.414L15 13.586V8z"})})};return f.jsx("thead",{className:"hubbi-bg-gray-100 dark:hubbi-bg-gray-800",children:f.jsxs("tr",{children:[t&&f.jsx("th",{scope:"col",className:"hubbi-px-6 hubbi-py-3 hubbi-w-12",children:f.jsx("input",{type:"checkbox",checked:e,onChange:a,className:"hubbi-w-4 hubbi-h-4 hubbi-text-blue-600 hubbi-bg-gray-100 hubbi-border-gray-300 hubbi-rounded focus:hubbi-ring-blue-500 dark:focus:hubbi-ring-blue-600 dark:hubbi-ring-offset-gray-800 focus:hubbi-ring-2 dark:hubbi-bg-gray-700 dark:hubbi-border-gray-600"})}),i.map((c,u)=>{const d=typeof c=="string"?{label:c}:c,b=d.sortable&&n;return f.jsx("th",{scope:"col",className:`hubbi-px-6 hubbi-py-3 hubbi-text-left hubbi-text-xs hubbi-font-medium hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark ${b?"hubbi-cursor-pointer hover:hubbi-bg-gray-200 dark:hover:hubbi-bg-gray-700 hubbi-select-none":""}`,onClick:()=>b&&l(c),children:f.jsxs("div",{className:"hubbi-flex hubbi-items-center",children:[f.jsx("span",{children:d.label}),h(c)]})},u)})]})})},ta=({children:i,onClick:t,selected:e=!1,selectable:s=!1,showCheckbox:n=!1,onSelectChange:r})=>{const o=s||!!t,a=h=>{h.stopPropagation(),r==null||r(h.target.checked)},l=()=>{n&&r&&r(!e),t&&t()};return f.jsxs("tr",{role:"row",onClick:l,className:I("hubbi-transition-colors","hover:hubbi-bg-gray-50 dark:hover:hubbi-bg-gray-800",(o||n)&&"cursor-pointer",e&&"hubbi-bg-blue-50 dark:hubbi-bg-gray-900"),children:[n&&f.jsx("td",{className:"hubbi-px-6 hubbi-py-4 hubbi-w-12",children:f.jsx("input",{type:"checkbox",checked:e,onChange:a,onClick:h=>h.stopPropagation(),className:"hubbi-w-4 hubbi-h-4 hubbi-text-blue-600 hubbi-bg-gray-100 hubbi-border-gray-300 hubbi-rounded focus:hubbi-ring-blue-500 dark:focus:hubbi-ring-blue-600 dark:hubbi-ring-offset-gray-800 focus:hubbi-ring-2 dark:hubbi-bg-gray-700 dark:hubbi-border-gray-600"})}),i]})},Be=({children:i})=>f.jsx("div",{className:"ui overflow-x-auto border rounded-lg border-gray-200 dark:border-gray-700",children:f.jsx("table",{className:"hubbi-min-w-full hubbi-divide-y hubbi-divide-gray-200 dark:hubbi-divide-gray-700",children:i})});Be.Header=Qo;Be.Body=Zo;Be.Row=ta;Be.Cell=Jo;const ea=Be,ia=({fill:i="white",width:t=159,height:e=67,full:s=!0,className:n=""})=>f.jsxs("svg",{width:t,height:e,viewBox:"0 0 159 67",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:n,children:[f.jsx("path",{d:"M45.395 53.6836V66.3873H47.706H50.0169V61.1697V55.9521H56.4966H62.9763V61.1697V66.3873H65.2872H67.5981V53.6836V40.9799H65.2872H62.9763V46.4697V51.9596H56.4966H50.0169V46.4697V40.9799H47.706H45.395V53.6836Z",fill:s?i:"none"}),f.jsx("path",{d:"M72.7003 49.1194C72.7275 57.1499 72.7366 57.277 72.9269 58.1572C73.9872 62.8394 77.0412 65.8066 81.7356 66.714C82.9409 66.9409 85.5147 66.9409 86.72 66.714C89.049 66.2603 90.9159 65.3348 92.4203 63.9011C94.0243 62.3585 94.9759 60.5981 95.5287 58.1572C95.719 57.277 95.7281 57.1499 95.7553 49.1194L95.7915 40.9799H93.4806H91.1696L91.1425 49.0287C91.1153 57.0048 91.1062 57.0955 90.9159 57.767C90.1818 60.2896 88.5053 62.0136 86.1762 62.6398C85.3515 62.8666 83.104 62.8666 82.2794 62.6398C79.9503 62.0136 78.2737 60.2896 77.5397 57.767C77.3494 57.0955 77.3403 57.0048 77.3131 49.0287L77.2859 40.9799H74.975H72.6641L72.7003 49.1194Z",fill:s?i:"none"}),f.jsx("path",{d:"M100.857 53.6836V66.3964L108.135 66.3692C115.276 66.3329 115.421 66.3329 116.381 66.1333C121.166 65.1261 123.532 62.2677 122.843 58.3205C122.58 56.796 121.855 55.4803 120.813 54.6273C120.233 54.1464 118.901 53.484 118.194 53.3207C117.931 53.2572 117.714 53.1846 117.714 53.1483C117.714 53.121 117.967 52.9759 118.285 52.8398C119.463 52.3225 120.605 51.2246 121.121 50.0994C121.52 49.2373 121.656 48.5386 121.647 47.3772C121.647 46.4516 121.601 46.1794 121.402 45.5623C120.677 43.3664 118.711 41.8601 115.72 41.1886C115.131 41.0616 114.134 41.0344 107.953 41.0072L100.857 40.9709V53.6836ZM114.66 45.0451C116.409 45.526 117.351 46.5514 117.351 47.967C117.351 49.2827 116.526 50.4533 115.149 51.0975C113.989 51.642 113.545 51.6873 109.286 51.6873H105.479V48.2301V44.7729L109.721 44.8092C113.708 44.8455 113.998 44.8636 114.66 45.0451ZM115.838 55.8886C116.708 56.1881 117.106 56.4422 117.605 56.9866C118.221 57.6581 118.393 58.1118 118.393 59.0827C118.393 59.7905 118.357 59.9629 118.149 60.3531C117.877 60.8794 117.179 61.569 116.653 61.8322C116.055 62.1407 115.176 62.3857 114.315 62.4855C113.871 62.5309 111.696 62.5762 109.494 62.5762H105.479V59.0736V55.5801L110.31 55.6073L115.131 55.6346L115.838 55.8886Z",fill:s?i:"none"}),f.jsx("path",{d:"M127.501 53.6836V66.3964L134.778 66.3692C141.919 66.3329 142.064 66.3329 143.025 66.1333C147.81 65.1261 150.175 62.2677 149.487 58.3205C149.224 56.796 148.499 55.4803 147.457 54.6273C146.877 54.1464 145.544 53.484 144.838 53.3207C144.575 53.2572 144.357 53.1846 144.357 53.1483C144.357 53.121 144.611 52.9759 144.928 52.8398C146.106 52.3225 147.248 51.2246 147.765 50.0994C148.163 49.2373 148.299 48.5386 148.29 47.3772C148.29 46.4516 148.245 46.1794 148.046 45.5623C147.321 43.3664 145.354 41.8601 142.363 41.1886C141.774 41.0616 140.778 41.0344 134.597 41.0072L127.501 40.9709V53.6836ZM141.303 45.0451C143.052 45.526 143.995 46.5514 143.995 47.967C143.995 49.2827 143.17 50.4533 141.793 51.0975C140.633 51.642 140.188 51.6873 135.929 51.6873H132.123V48.2301V44.7729L136.364 44.8092C140.352 44.8455 140.642 44.8636 141.303 45.0451ZM142.481 55.8886C143.351 56.1881 143.75 56.4422 144.248 56.9866C144.865 57.6581 145.037 58.1118 145.037 59.0827C145.037 59.7905 145.001 59.9629 144.792 60.3531C144.52 60.8794 143.823 61.569 143.297 61.8322C142.699 62.1407 141.82 62.3857 140.959 62.4855C140.515 62.5309 138.34 62.5762 136.138 62.5762H132.123V59.0736V55.5801L136.953 55.6073L141.774 55.6346L142.481 55.8886Z",fill:s?i:"none"}),f.jsx("path",{d:"M154.145 53.6836V66.3873H156.456H158.767V53.6836V40.9799H156.456H154.145V53.6836Z",fill:s?i:"none"}),f.jsx("path",{d:"M47.3889 0.0195503C43.2473 0.37344 40.2748 1.17196 37.0214 2.79622C29.1732 6.72529 23.772 14.3838 22.6936 23.1131C22.6211 23.7301 22.5576 24.3018 22.5576 24.3925C22.5576 24.5468 22.8023 24.5558 27.5148 24.5377L32.472 24.5105L32.5807 23.6394C33.5776 15.6996 40.1207 9.69251 48.1592 9.33862C53.8051 9.09363 59.3786 11.9973 62.4689 16.8157C63.6832 18.7031 64.5714 21.0805 64.8795 23.2401C64.9339 23.6394 64.9973 24.1021 65.0245 24.2564L65.0698 24.5558H70.0451C74.7667 24.5558 75.0295 24.5468 75.0295 24.3925C75.0295 24.3018 74.9661 23.7301 74.8936 23.1131C73.4073 11.1444 63.9551 1.68011 52.0017 0.191957C50.887 0.0558472 48.1682 -0.0439682 47.3889 0.0195503Z",fill:i}),f.jsx("path",{d:"M14.8996 24.8825C11.8364 25.2909 9.07238 26.4251 6.65269 28.2581C5.85519 28.8661 4.31457 30.3905 3.66207 31.2253C0.934257 34.7098 -0.370742 39.1742 0.091445 43.4118C0.444882 46.7329 1.63207 49.6729 3.66207 52.2772C4.43238 53.2663 6.10894 54.8724 7.15113 55.6074C8.77332 56.7598 11.0571 57.8033 12.9693 58.2661C13.8664 58.4838 14.0205 58.4929 16.8208 58.4929H19.748L19.5577 58.0211C18.878 56.297 18.6514 53.7744 19.0139 51.9051C19.1771 51.0613 19.4308 50.1538 19.7027 49.4824C19.7661 49.3372 19.6664 49.3281 18.4158 49.3281C16.9296 49.3281 16.3224 49.2464 15.3074 48.9107C13.1958 48.2211 11.2474 46.2701 10.5586 44.1559C9.82457 41.9237 10.0511 39.6279 11.2021 37.6679C11.9814 36.325 13.5674 34.9638 14.9539 34.4375C16.1955 33.9566 16.2046 33.9566 20.4277 33.9113L24.4061 33.8568L28.3302 29.3651C30.478 26.897 32.2452 24.8462 32.2452 24.8009C32.2542 24.7646 28.5568 24.7374 24.0346 24.7464C17.6908 24.7555 15.5974 24.7827 14.8996 24.8825Z",fill:i}),f.jsx("path",{d:"M29.1549 45.4353C27.433 45.6894 25.7565 46.4788 24.4877 47.6403C22.5574 49.4098 21.479 52.377 21.8233 54.9903C22.3671 59.0555 25.3305 61.9864 29.4268 62.4946C31.8918 62.8031 34.6377 61.8503 36.4321 60.0446C38.2355 58.2479 39.1871 55.4985 38.879 53.0303C38.6887 51.4605 38.2083 50.2083 37.3111 48.9016C35.5893 46.4062 32.2361 44.9816 29.1549 45.4353Z",fill:i})]}),sa={primary:{text:"hubbi-text-primary",bg10:"hubbi-bg-primary/10",bg20:"hubbi-bg-primary/20"},indigo:{text:"hubbi-text-indigo-500",bg10:"hubbi-bg-indigo-500/10",bg20:"hubbi-bg-indigo-500/20"}};function na(i,t){return i.map(e=>{if(e.subItems){const n=e.subItems.map(r=>({...r,locked:r.hasPermission===!1})).filter(r=>t||!r.locked);return n.length===0?null:{...e,subItems:n}}const s=e.hasPermission===!1;return!t&&s?null:{...e,locked:s}}).filter(Boolean)}function ra({isOpen:i,onClose:t,navItems:e,logout:s,location:n,isDarkMode:r,lockMenu:o=!1,lockLink:a="",onNavigate:l,color:h="primary",logo:c}){const u=na(e,o),{text:d,bg10:b,bg20:g}=sa[h],p=()=>{const S=u.findIndex(C=>{var A;return(A=C.subItems)==null?void 0:A.some(T=>new RegExp(`^${T.to}(/)?$`).test(n.pathname))});return S>=0?S:null},[x,y]=G.useState(p),_=S=>{y(C=>C===S?null:S)},w=(S,C)=>{l(C?a:S)},M=S=>new RegExp(`^${S}(/)?$`).test(n.pathname),v=S=>{var C;return(C=S.subItems)==null?void 0:C.some(A=>M(A.to))},O=f.jsx(ia,{width:64,height:64,className:"mx-8",fill:r?"white":"#3D6CB9"});return f.jsxs(f.Fragment,{children:[i&&f.jsx("div",{className:"hubbi-fixed hubbi-inset-0 hubbi-z-20 hubbi-bg-textPrimary-light/50 dark:hubbi-bg-textPrimary-dark/50 md:hubbi-hidden",onClick:t}),f.jsx("div",{className:"ui",children:f.jsxs("div",{className:I("hubbi-h-screen hubbi-fixed hubbi-inset-y-0 hubbi-left-0 hubbi-z-30 hubbi-w-64 hubbi-flex-shrink-0 hubbi-bg-surfacePrimary-light dark:hubbi-bg-surfacePrimary-dark hubbi-border-r hubbi-border-stroke-light dark:hubbi-border-stroke-dark hubbi-transform hubbi-transition-transform hubbi-duration-200 hubbi-ease-in-out md:hubbi-static md:hubbi-translate-x-0",i?"hubbi-translate-x-0":"-hubbi-translate-x-full"),children:[f.jsxs("div",{className:"hubbi-h-16 hubbi-flex hubbi-items-center hubbi-justify-between hubbi-px-4 hubbi-border-b hubbi-border-stroke-light dark:hubbi-border-stroke-dark",children:[c??O,f.jsx("button",{className:"md:hubbi-hidden hubbi-p-1 hubbi-rounded-md hubbi-text-textSecondary-light hover:hubbi-text-textHover-light dark:hubbi-text-textSecondary-dark dark:hover:hubbi-text-textHover-dark hover:hubbi-bg-surfaceSecondary-light dark:hover:hubbi-bg-surfaceSecondary-dark",onClick:t,children:f.jsx(D.X,{className:"hubbi-h-6 hubbi-w-6"})})]}),f.jsxs("div",{className:"hubbi-flex hubbi-flex-col hubbi-justify-between hubbi-h-[calc(100%-4rem)]",children:[f.jsx("nav",{className:"hubbi-flex-1 hubbi-px-2 hubbi-py-4 hubbi-overflow-y-auto",children:f.jsx("ul",{className:"hubbi-space-y-1",children:u.map((S,C)=>{var L;const A=x===C,T=v(S);if((L=S.subItems)!=null&&L.length)return f.jsxs("li",{children:[f.jsxs("button",{onClick:()=>_(C),className:I("hubbi-w-full hubbi-flex hubbi-items-center hubbi-px-4 hubbi-py-2 hubbi-rounded hubbi-transition-colors","hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark hover:hubbi-bg-surfaceSecondary-light dark:hover:hubbi-bg-surfaceSecondary-dark",T&&`${b} dark:${g} ${d} hubbi-font-medium`),children:[f.jsx(S.icon,{className:"hubbi-h-5 hubbi-w-5 hubbi-mr-3"}),f.jsx("span",{className:"hubbi-flex-1 hubbi-text-left",children:S.label}),f.jsx(D.CaretDown,{className:I("hubbi-h-4 hubbi-w-4 hubbi-transition-transform",A&&"hubbi-rotate-180")})]}),A&&f.jsx("ul",{className:"hubbi-pl-8 hubbi-mt-1 hubbi-space-y-1",children:S.subItems.map((H,J)=>f.jsx("li",{children:f.jsxs("button",{onClick:()=>w(H.to,H.locked),className:I("hubbi-flex hubbi-items-center hubbi-w-full hubbi-px-4 hubbi-py-2 hubbi-text-sm hubbi-rounded hubbi-transition-colors",M(H.to)?`${b} dark:${g} ${d} hubbi-font-medium`:H.locked?"hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark hover:hubbi-text-error-600":`hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark hover:${d} hover:hubbi-bg-surfaceSecondary-light dark:hover:hubbi-bg-surfaceSecondary-dark`),children:[f.jsx("span",{className:"hubbi-flex-1 hubbi-text-left",children:H.label}),H.locked&&f.jsx(D.Lock,{className:"hubbi-h-4 hubbi-w-4"})]})},J))})]},C);const E=M(S.to||"");return f.jsx("li",{children:f.jsxs("button",{onClick:()=>w(S.to,S.locked),className:I("hubbi-flex hubbi-items-center hubbi-w-full hubbi-px-4 hubbi-py-2 hubbi-rounded hubbi-transition-colors",E?`${b} dark:${g} ${d} hubbi-font-medium`:S.locked?"hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark hover:hubbi-text-error-600":`hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark hover:${d} hover:hubbi-bg-surfaceSecondary-light dark:hover:hubbi-bg-surfaceSecondary-dark`),children:[f.jsx(S.icon,{className:"hubbi-h-5 hubbi-w-5 hubbi-mr-3"}),f.jsx("span",{className:"hubbi-flex-1 hubbi-text-left",children:S.label}),S.locked&&f.jsx(D.Lock,{className:"hubbi-h-4 hubbi-w-4"})]})},C)})})}),f.jsx("div",{className:"hubbi-p-4 hubbi-border-t hubbi-border-stroke-light dark:hubbi-border-stroke-dark",children:f.jsxs("button",{className:"hubbi-w-full hubbi-flex hubbi-items-center hubbi-px-4 hubbi-py-2 hubbi-rounded-md hubbi-transition-colors hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark hover:hubbi-bg-surfaceSecondary-light dark:hover:hubbi-bg-surfaceSecondary-dark hover:hubbi-text-error-600",onClick:s,children:[f.jsx(D.SignOut,{className:"hubbi-h-5 hubbi-w-5 hubbi-mr-3"}),"Sair"]})})]})]})})]})}function oa({tabs:i,defaultSelected:t}){var n;const[e,s]=G.useState(t||i[0].id);return f.jsxs("div",{className:"ui",children:[f.jsx("div",{className:"hubbi-flex",children:i.map(r=>{const o=r.id===e;return f.jsxs("button",{onClick:()=>s(r.id),className:I("hubbi-flex hubbi-items-center hubbi-gap-2 hubbi-p-4 hubbi-border-b-2 hubbi-transition-colors hubbi-flex-1 hubbi-justify-center",o?r.activeTabStyle:"hubbi-text-disabled-light dark:hubbi-text-disabled-dark hubbi-border-disabled-light dark:hubbi-border-disabled-dark hover:hubbi-border-textSecondary-light dark:hover:hubbi-border-textSecondary-dark"),children:[r.icon&&f.jsx("span",{children:r.icon}),f.jsx("span",{children:r.label}),r.count!==void 0&&f.jsx("span",{className:I("hubbi-ml-1 hubbi-rounded-full hubbi-px-2 hubbi-py-0.5 hubbi-text-xs hubbi-font-medium hubbi-border",r.activeTabStyle),children:r.count})]},r.id)})}),f.jsx("div",{className:"hubbi-mt-4",children:(n=i.find(r=>r.id===e))==null?void 0:n.content})]})}function aa({tabs:i,activeTab:t,onChange:e,disabled:s=!0}){return f.jsx("div",{className:"ui",children:f.jsx("div",{className:"hubbi-border-b hubbi-border-stroke-light dark:hubbi-border-stroke-dark hubbi-overflow-x-auto hubbi-whitespace-nowrap hubbi-no-scrollbar",children:f.jsx("div",{className:"hubbi-mb-px hubbi-flex hubbi-space-x-8",children:i.map(n=>{const r=t===n.value;return f.jsxs(Lt,{variant:"text",color:"default",disabled:s,onClick:()=>e(n.value),className:I(s&&"hubbi-bg-transparent dark:hubbi-bg-transparent","hubbi-rounded-none hubbi-border-b-2 hubbi-text-sm hubbi-font-medium hubbi-pb-4 hubbi-px-1 hover:hubbi-bg-transparent dark:hover:hubbi-bg-transparent",r?"hubbi-border-primary hubbi-text-primary":"hubbi-border-transparent hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark hover:hubbi-text-textHover-light dark:hover:hubbi-text-textHover-dark hover:hubbi-border-stroke-light dark:hover:hubbi-border-stroke-dark"),children:[n.label,n.count&&` (${n.count})`]},n.value)})})})})}/*!
|
|
30
|
+
<%s key={someKey} {...props} />`,Di,Yt,xo,Yt),Ts[Yt+Di]=!0}}return m===s?bo(it):uo(it),it}}function fo(m,k,P){return Es(m,k,P,!0)}function go(m,k,P){return Es(m,k,P,!1)}var po=go,mo=fo;pe.Fragment=s,pe.jsx=po,pe.jsxs=mo}()),pe}var Fs;function So(){return Fs||(Fs=1,process.env.NODE_ENV==="production"?Ue.exports=ko():Ue.exports=wo()),Ue.exports}var f=So();function Mo({title:i,borderColor:t="hubbi-border-primary",children:e,defaultOpen:s=!1}){const[n,r]=X.useState(s);return f.jsx("div",{className:"ui",children:f.jsx("div",{className:I(t,"hubbi-border-l-4 hubbi-rounded-lg hubbi-overflow-hidden hubbi-bg-surfaceSecondary-light dark:hubbi-bg-surfaceSecondary-dark"),children:f.jsxs("div",{className:"hubbi-rounded-lg hubbi-border hubbi-border-stroke-light dark:hubbi-border-stroke-dark hubbi-overflow-hidden",children:[f.jsxs("button",{onClick:()=>r(!n),className:"hover:hubbi-bg-gray-200 dark:hover:hubbi-bg-gray-800 hubbi-flex hubbi-items-center hubbi-justify-between hubbi-w-full hubbi-p-4 hubbi-text-textPrimary-light dark:hubbi-text-textPrimary-dark hubbi-font-medium",children:[f.jsx("span",{children:i}),f.jsx(D.CaretDown,{className:`hubbi-transition-transform hubbi-duration-200 ${n?"hubbi-rotate-180":""}`})]}),n&&f.jsx("div",{className:"hubbi-border-t hubbi-border-stroke-light dark:hubbi-border-stroke-dark hubbi-p-4",children:e})]})})})}const Co=({variant:i="info",title:t,children:e,className:s})=>{const n="hubbi-p-4 hubbi-rounded-lg",r={info:"hubbi-bg-white hubbi-border-l-4 hubbi-border-primary hubbi-text-primary dark:hubbi-bg-surfacePrimary-dark dark:hubbi-border-primary dark:hubbi-text-primary",success:"hubbi-bg-success-100 hubbi-border-l-4 hubbi-border-success-600 hubbi-text-success-600 dark:hubbi-bg-success-100 dark:hubbi-border-success-600 dark:hubbi-text-success-600",warning:"hubbi-bg-warning-100 hubbi-border-l-4 hubbi-border-warning-600 hubbi-text-warning-600 dark:hubbi-bg-warning-100 dark:hubbi-border-warning-600 dark:hubbi-text-warning-600",error:"hubbi-bg-error-100 hubbi-border-l-4 hubbi-border-error-600 hubbi-text-error-600 dark:hubbi-bg-error-100 dark:hubbi-border-error-600 dark:hubbi-text-error-600"},o={info:f.jsx(D.Info,{size:20,weight:"bold",className:"hubbi-text-primary dark:hubbi-text-primary"}),success:f.jsx(D.CheckCircle,{size:20,weight:"bold",className:"hubbi-text-success-600 dark:hubbi-text-success-600"}),warning:f.jsx(D.WarningOctagon,{size:20,weight:"bold",className:"hubbi-text-warning-600 dark:hubbi-text-warning-600"}),error:f.jsx(D.WarningCircle,{size:20,weight:"bold",className:"hubbi-text-error-600 dark:hubbi-text-error-600"})};return f.jsx("div",{className:"ui",children:f.jsx("div",{className:I(n,r[i],s),children:f.jsxs("div",{className:"hubbi-flex",children:[f.jsx("div",{className:"hubbi-flex-shrink-0",children:o[i]}),f.jsxs("div",{className:"hubbi-ml-3 hubbi-flex-1",children:[t&&f.jsx("h3",{className:"text-sm font-medium",children:t}),f.jsx("div",{className:I("hubbi-text-sm",t?"hubbi-mt-2":""),children:e})]})]})})})};function Qi({colorClass:i="hubbi-text-textPrimary-light dark:hubbi-text-textPrimary-dark",size:t="large",className:e}){const s={small:"hubbi-w-4 hubbi-h-4",medium:"hubbi-w-8 hubbi-h-8",large:"hubbi-w-12 hubbi-h-12"};return f.jsx("div",{className:"ui",children:f.jsx("div",{className:"hubbi-flex hubbi-items-center hubbi-justify-center hubbi-overflow-hidden",role:"status","aria-label":"Loading",children:f.jsx(D.CircleNotch,{weight:"bold",className:I("hubbi-animate-spin",e,s[t],i)})})})}function Lt({children:i,variant:t="contained",color:e="primary",size:s="medium",disabled:n=!1,fullWidth:r=!1,startIcon:o,endIcon:a,loading:l=!1,spinnerColor:h,className:c,...u}){const d="hubbi-inline-flex hubbi-items-center hubbi-justify-center hubbi-font-medium hubbi-rounded hubbi-transition hubbi-focus:outline-none hubbi-focus:ring-2 hubbi-focus:ring-offset-2 hubbi-whitespace-nowrap",b={small:"hubbi-px-3 hubbi-text-sm hubbi-gap-1 hubbi-h-8",medium:"hubbi-px-4 hubbi-text-base hubbi-gap-2 hubbi-h-10",large:"hubbi-px-5 hubbi-text-lg hubbi-gap-3 hubbi-h-12"},g={primary:{contained:"hubbi-bg-primary hubbi-text-white hover:hubbi-bg-blue-800",outlined:"hubbi-border hubbi-border-primary hubbi-text-primary hover:hubbi-bg-blue-50 dark:hover:hubbi-bg-blue-950",text:"hubbi-text-primary hover:hubbi-bg-blue-50 dark:hover:hubbi-bg-blue-950"},error:{contained:"hubbi-bg-error-600 hubbi-text-white hover:hubbi-bg-red-700",outlined:"hubbi-border hubbi-border-error-600 hubbi-text-error-600 hover:hubbi-bg-red-50 dark:hover:hubbi-bg-red-950",text:"hubbi-text-error-600 hover:hubbi-bg-red-50 dark:hover:hubbi-bg-red-950"},success:{contained:"hubbi-bg-success-600 hubbi-text-white hover:hubbi-bg-green-700",outlined:"hubbi-border hubbi-border-success-600 hubbi-text-success-600 hover:hubbi-bg-green-50 dark:hover:hubbi-bg-green-950",text:"hubbi-text-success-600 hover:hubbi-bg-green-50 dark:hover:hubbi-bg-green-950"},warning:{contained:"hubbi-bg-warning-600 hubbi-text-white hover:hubbi-bg-yellow-700",outlined:"hubbi-border hubbi-border-warning-600 hubbi-text-warning-600 hover:hubbi-bg-yellow-50 dark:hover:hubbi-bg-yellow-950",text:"hubbi-text-warning-600 hover:hubbi-bg-yellow-50 dark:hover:hubbi-bg-yellow-950"},indigo:{contained:"hubbi-bg-indigo-600 hubbi-text-white hover:hubbi-bg-indigo-700",outlined:"hubbi-border hubbi-border-indigo-600 hubbi-text-indigo-600 hover:hubbi-bg-indigo-50 dark:hover:hubbi-bg-indigo-950",text:"hubbi-text-indigo-600 hover:hubbi-bg-indigo-50 dark:hover:hubbi-bg-indigo-950"},default:{contained:"hubbi-bg-gray-200 hubbi-text-gray-800 hover:hubbi-bg-gray-300 dark:hubbi-bg-gray-700 dark:hubbi-text-white dark:hover:hubbi-bg-gray-600",outlined:"hubbi-border hubbi-border-gray-400 hubbi-text-gray-800 hover:hubbi-bg-gray-100 dark:hubbi-border-gray-600 dark:hubbi-text-white dark:hover:hubbi-bg-gray-700",text:"hubbi-text-gray-800 hover:hubbi-bg-gray-100 dark:hubbi-text-white dark:hover:hubbi-bg-gray-700"}};return f.jsx("div",{className:"ui flex",children:f.jsx("button",{disabled:n||l,className:I(c,d,b[s],r&&"hubbi-w-full",n?"hubbi-bg-disabled-light hubbi-text-gray-800 hubbi-cursor-not-allowed dark:hubbi-bg-disabled-dark dark:hubbi-text-gray-300":g[e][t]),...u,children:f.jsxs(f.Fragment,{children:[l?f.jsx(Qi,{colorClass:h,size:"small"}):o&&f.jsx("span",{children:o}),i,a&&f.jsx("span",{children:a})]})})})}function Po({status:i,selected:t,icon:e,label:s,...n}){const r="hubbi-inline-flex hubbi-items-center hubbi-px-3 hubbi-py-1.5 hubbi-rounded-full hubbi-text-sm hubbi-font-medium hubbi-transition-colors",o=l=>{switch(l){case"all":return"hubbi-bg-indigo-600 hubbi-text-white";case"open":return"hubbi-bg-yellow-500 hubbi-text-white";case"completed":return"hubbi-bg-green-500 hubbi-text-white";case"cancelled":return"hubbi-bg-red-500 hubbi-text-white";default:return"hubbi-bg-gray-500 hubbi-text-white"}};return f.jsx("div",{className:"ui",children:f.jsxs("button",{className:I.clsx(r,t?o(i):"hubbi-bg-white hubbi-text-gray-600 hover:hubbi-bg-gray-50 dark:hubbi-bg-surfacePrimary-dark dark:hubbi-text-textSecondary-dark dark:hover:hubbi-bg-surfaceSecondary-dark"),...n,children:[f.jsx("span",{className:"hubbi-mr-1.5 hubbi-h-4 hubbi-w-4",children:e}),s]})})}function ir({title:i,children:t,className:e,titleClassName:s,backgroundColor:n,bodyClassName:r}){return f.jsx("div",{className:`ui ${e||""}`,children:f.jsxs("div",{className:I(n||"hubbi-bg-surfacePrimary-light dark:hubbi-bg-surfacePrimary-dark","hubbi-p-6 hubbi-rounded-lg hubbi-shadow",r),children:[i&&f.jsx("h3",{className:I(s,"hubbi-text-lg hubbi-font-medium hubbi-text-textPrimary-light hubbi-mb-4 dark:hubbi-text-textPrimary-dark"),children:i}),t]})})}const Oo={primary:"hubbi-bg-primary/10 hubbi-border-primary/30",success:"hubbi-bg-success-600/10 hubbi-border-success-600/30",warning:"hubbi-bg-warning-600/10 hubbi-border-warning-600/30",error:"hubbi-bg-error-600/10 hubbi-border-error-600/30",indigo:"hubbi-bg-indigo-600/10 hubbi-border-indigo-600/30"},zs={primary:"hubbi-text-primary",success:"hubbi-text-success-600",warning:"hubbi-text-warning-600",error:"hubbi-text-error-600",indigo:"hubbi-text-indigo-600"};function jo({icon:i,title:t,description:e,color:s="primary",buttonText:n,onButtonClick:r,buttonClassName:o="",containerClassName:a=""}){return f.jsx("div",{className:"ui flex flex-1",children:f.jsx("div",{className:I(a,`hubbi-p-4 hubbi-rounded-lg hubbi-border hubbi-flex hubbi-flex-1 hubbi-items-start hubbi-gap-3 ${Oo[s]}`),children:f.jsx("div",{className:"hubbi-flex-1",children:f.jsxs("div",{className:"hubbi-flex hubbi-flex-col hubbi-items-start hubbi-justify-between hubbi-gap-4",children:[f.jsxs("div",{children:[f.jsxs("h3",{className:`hubbi-flex hubbi-flex-row hubbi-gap-2 hubbi-items-center hubbi-font-medium ${zs[s]}`,children:[f.jsx("span",{children:i}),f.jsx("span",{className:"hubbi-font-bold",children:t})]}),f.jsx("p",{className:`hubbi-text-sm ${zs[s]}`,children:e})]}),n&&f.jsx(Lt,{variant:"outlined",size:"small",color:s,onClick:r,className:o,children:n})]})})})})}const Ro={h1:"hubbi-text-5xl hubbi-font-bold",h2:"hubbi-text-4xl hubbi-font-bold",h3:"hubbi-text-3xl hubbi-font-bold",h4:"hubbi-text-2xl hubbi-font-semibold",h5:"hubbi-text-xl hubbi-font-semibold",h6:"hubbi-text-lg hubbi-font-semibold",subtitle1:"hubbi-text-base hubbi-font-medium",subtitle2:"hubbi-text-sm hubbi-font-medium",body1:"hubbi-text-base",body2:"hubbi-text-sm",caption:"hubbi-text-xs",overline:"hubbi-text-xs hubbi-uppercase hubbi-tracking-wide"},Ao={primary:"hubbi-text-textPrimary-light dark:hubbi-text-textPrimary-dark",secondary:"hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark",inherit:"",warning:"hubbi-text-warning-600",error:"hubbi-text-error-600",success:"hubbi-text-success-600",disable:"hubbi-text-disabled-light dark:hubbi-text-disabled-dark"},Do={left:"hubbi-text-left",center:"hubbi-text-center",right:"hubbi-text-right",justify:"hubbi-text-justify"},To={normal:"hubbi-font-normal",medium:"hubbi-font-medium",semibold:"hubbi-font-semibold",bold:"hubbi-font-bold",extrabold:"hubbi-font-extrabold"},Eo={xs:"hubbi-text-xs",sm:"hubbi-text-sm",base:"hubbi-text-base",lg:"hubbi-text-lg",xl:"hubbi-text-xl","2xl":"hubbi-text-2xl","3xl":"hubbi-text-3xl","4xl":"hubbi-text-4xl","5xl":"hubbi-text-5xl","6xl":"hubbi-text-6xl"};function Jt({children:i,variant:t="body1",color:e="primary",customColor:s,align:n,weight:r,size:o,className:a,as:l}){const h=l||"p";return f.jsx("div",{className:"ui",children:f.jsx(h,{className:I(a,n&&Do[n],r&&To[r],o&&Eo[o],Ro[t],s||e!=="inherit"&&Ao[e]),children:i})})}const Lo=({getRootProps:i,getInputProps:t,isDragActive:e,isDragReject:s,fileName:n,onClearFile:r,supportedFileText:o="Apenas arquivos suportados são aceitos",variant:a="default",details:l})=>{const h=t(),c=I("hubbi-border-2 hubbi-border-dashed hubbi-rounded-lg hubbi-p-4 sm:hubbi-p-2 hubbi-text-center hubbi-cursor-pointer hubbi-transition-colors hubbi-relative","hubbi-bg-surfacePrimary-light dark:hubbi-bg-surfacePrimary-dark","hubbi-border-stroke-light dark:hubbi-border-stroke-dark",{"hubbi-border-primary hubbi-bg-primary/10":e,"hubbi-border-error-600 hubbi-bg-error-100":s,"hover:hubbi-border-stroke-dark dark:hover:hubbi-border-stroke-light":!e&&!s});return f.jsx("div",{className:"ui",children:f.jsx("div",{className:"hubbi-space-y-4",children:f.jsxs("div",{...i(),className:c,children:[f.jsx("input",{...h,className:"hubbi-hidden"}),a==="simple"?f.jsxs("div",{className:"hubbi-flex hubbi-items-center hubbi-gap-2 hubbi-justify-center p-2",children:[f.jsx(D.Upload,{weight:"bold",className:"hubbi-w-5 hubbi-h-5 hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark"}),f.jsx(Jt,{variant:"body2",color:"secondary",children:l||"Clique ou arraste para fazer upload"})]}):f.jsxs("div",{className:"hubbi-flex hubbi-flex-col hubbi-items-center hubbi-gap-2",children:[f.jsx(D.Upload,{weight:"bold",className:"hubbi-w-8 hubbi-h-8 sm:hubbi-w-12 sm:hubbi-h-12 hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark"}),f.jsx(Jt,{variant:"body2",color:"secondary",children:e?"Solte o arquivo aqui":n?`Arquivo selecionado: ${n}`:"Arraste e solte um arquivo aqui, ou clique para selecionar"}),f.jsx(Jt,{variant:"caption",color:"disable",children:o})]}),n&&r&&f.jsx("button",{onClick:u=>{u.stopPropagation(),r()},className:"hubbi-absolute hubbi-top-2 hubbi-right-2 hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark hover:hubbi-text-error-600","aria-label":"Limpar arquivo selecionado",children:f.jsx(D.X,{weight:"bold",className:"hubbi-w-6 hubbi-h-6"})})]})})})};function No({onMenuClick:i,isDarkMode:t,user:e,toggleTheme:s,position:n="left"}){var r,o;return f.jsx("header",{className:"ui",children:f.jsx("div",{className:"hubbi-border-b hubbi-shadow-sm hubbi-h-16 hubbi-px-4 hubbi-bg-surfacePrimary-light hubbi-border-stroke-light dark:hubbi-bg-surfacePrimary-dark dark:hubbi-border-stroke-dark",children:f.jsxs("div",{className:"hubbi-flex hubbi-items-center hubbi-h-full hubbi-justify-between hubbi-gap-4",children:[f.jsx(Lt,{variant:"text",color:"default",size:"small",onClick:i,className:"hubbi-rounded-full md:hubbi-hidden",children:f.jsx(D.List,{size:24})}),f.jsxs("div",{className:I("hubbi-flex hubbi-items-center hubbi-gap-4 hubbi-flex-1 ",n==="left"&&"hubbi-justify-start",n==="right"&&"hubbi-justify-end"),children:[f.jsx(Lt,{variant:"text",color:"default",size:"small",onClick:s,className:"hubbi-rounded-full",children:t?f.jsx(D.Sun,{size:20}):f.jsx(D.Moon,{size:20})}),f.jsx(Lt,{variant:"text",color:"default",size:"small",className:"hubbi-rounded-full",children:f.jsx(D.Bell,{size:20})}),f.jsxs("div",{className:"hubbi-flex hubbi-items-center hubbi-ml-4",children:[(r=e==null?void 0:e.image)!=null&&r.file_low?f.jsx("img",{src:e.image.file_low,alt:e.username,className:"hubbi-h-8 hubbi-w-8 hubbi-rounded-full hubbi-object-cover"}):f.jsx("div",{className:"hubbi-h-8 hubbi-w-8 hubbi-rounded-full hubbi-bg-indigo-500 hubbi-flex hubbi-items-center hubbi-justify-center hubbi-text-white hubbi-font-medium",children:((o=e==null?void 0:e.username)==null?void 0:o.charAt(0).toUpperCase())||"U"}),f.jsxs("div",{className:"hubbi-ml-3 hubbi-flex hubbi-flex-col hubbi-leading-tight",children:[f.jsx(Jt,{variant:"subtitle2",color:"primary",children:(e==null?void 0:e.username)||"Usuário"}),f.jsx(Jt,{variant:"caption",color:"secondary",children:(e==null?void 0:e.email)||"usuario@exemplo.com"})]})]})]})]})})})}function Io({label:i,placeholder:t,error:e=!1,helperText:s,disabled:n=!1,icon:r,className:o,...a}){return f.jsx("div",{className:"ui",children:f.jsxs("div",{className:"hubbi-flex hubbi-flex-col hubbi-gap-1 hubbi-w-full",children:[i&&f.jsx("label",{className:"hubbi-text-sm hubbi-font-medium hubbi-text-textPrimary-light dark:hubbi-text-textPrimary-dark",children:i}),f.jsxs("div",{className:"hubbi-relative hubbi-flex-1",children:[r&&f.jsx("div",{className:"hubbi-absolute hubbi-left-3 hubbi-top-2.5 hubbi-text-textPrimary-light dark:hubbi-text-textPrimary-dark ",children:r}),f.jsx("input",{...a,disabled:n,placeholder:t,className:I("hubbi-w-full hubbi-min-h-10 hubbi-py-2 hubbi-rounded-lg hubbi-border hubbi-text-sm hubbi-bg-white dark:hubbi-bg-surfacePrimary-dark dark:hubbi-text-textPrimary-dark",r?"hubbi-pl-10 hubbi-pr-4":"hubbi-px-4",n&&"hubbi-bg-disabled-light dark:hubbi-bg-disabled-dark hubbi-cursor-not-allowed",e?"hubbi-border-error-600 focus:hubbi-ring-error-600":"hubbi-border-stroke-light dark:hubbi-border-stroke-dark focus:hubbi-ring-primary",o)})]}),s&&f.jsx("p",{className:I("hubbi-text-xs",e?"hubbi-text-error-600":"hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark"),children:s})]})})}function Fo({label:i,placeholder:t,error:e=!1,helperText:s,disabled:n=!1,icon:r,className:o,mask:a,replacement:l={_:/\d/},value:h="",...c}){const[u,d]=X.useState("");return X.useEffect(()=>{if(h&&a){const b=Ls.format(String(h),{mask:a,replacement:l});d(b)}else d(String(h??""))},[h,a,l]),f.jsx("div",{className:"ui",children:f.jsxs("div",{className:"hubbi-flex hubbi-flex-col hubbi-gap-1 hubbi-w-full",children:[i&&f.jsx("label",{className:"hubbi-text-sm hubbi-font-medium hubbi-text-textPrimary-light dark:hubbi-text-textPrimary-dark",children:i}),f.jsxs("div",{className:"hubbi-relative hubbi-flex-1",children:[r&&f.jsx("div",{className:"hubbi-absolute hubbi-left-3 hubbi-top-2.5 hubbi-text-textPrimary-light dark:hubbi-text-textPrimary-dark",children:r}),f.jsx(Ls.InputMask,{...c,value:u,mask:a,replacement:l,disabled:n,placeholder:t,className:I("hubbi-w-full hubbi-min-h-10 hubbi-py-2 hubbi-rounded-lg hubbi-border hubbi-text-sm hubbi-bg-white dark:hubbi-bg-surfacePrimary-dark dark:hubbi-text-textPrimary-dark",r?"hubbi-pl-10 hubbi-pr-4":"hubbi-px-4",n&&"hubbi-bg-disabled-light dark:hubbi-bg-disabled-dark hubbi-cursor-not-allowed",e?"hubbi-border-error-600 focus:hubbi-ring-error-600":"hubbi-border-stroke-light dark:hubbi-border-stroke-dark focus:hubbi-ring-primary",o)})]}),s&&f.jsx("p",{className:I("hubbi-text-xs",e?"hubbi-text-error-600":"hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark"),children:s})]})})}const Bs={0:{label:"Em aberto",bg:"hubbi-bg-blue-100 dark:hubbi-bg-blue-600",text:"hubbi-text-blue-900 dark:hubbi-text-white",border:"hubbi-border-blue-500 dark:hubbi-border-blue-400"},2:{label:"Sucesso",bg:"hubbi-bg-green-100 dark:hubbi-bg-green-600",text:"hubbi-text-green-900 dark:hubbi-text-white",border:"hubbi-border-green-500 dark:hubbi-border-green-400"},3:{label:"Falha Parcial",bg:"hubbi-bg-red-100 dark:hubbi-bg-red-600",text:"hubbi-text-red-900 dark:hubbi-text-white",border:"hubbi-border-red-500 dark:hubbi-border-red-400"},4:{label:"Falha Total",bg:"hubbi-bg-red-100 dark:hubbi-bg-red-600",text:"hubbi-text-red-900 dark:hubbi-text-white",border:"hubbi-border-red-500 dark:hubbi-border-red-400"},99:{label:"Processando",bg:"hubbi-bg-yellow-100 dark:hubbi-bg-yellow-600",text:"hubbi-text-yellow-900 dark:hubbi-text-white",border:"hubbi-border-yellow-500 dark:hubbi-border-yellow-400"}},zo={"EM ABERTO":"Em aberto",AGUARDANDO_PAGAMENTO:"Aguardando Pagamento",AGUARDANDO_CONFIRMACAO:"Aguardando Confirmação",PAGO:"Pago",CONFIRMADO:"Confirmado",FATURADO:"Faturado",ENVIADO:"Enviado",ENTREGUE:"Entregue",RECEBIDO:"Recebido",EM_DISPUTA:"Em Disputa",CANCELADO:"Cancelado",CONCLUIDO:"Concluído",CONCLUÍDO:"Concluído",DISPONÍVEL:"Disponível",CONECTADO:"Conectado",FECHADA:"Fechado",ATRASADO:"Atrasado",CRIADO:"Aberto",ACEITO:"Aprovado",RECUSADO:"Recusado"},ot={yellow:{bg:"hubbi-bg-yellow-100 dark:hubbi-bg-yellow-700",text:"hubbi-text-yellow-800 dark:hubbi-text-yellow-100",border:"hubbi-border-yellow-500 dark:hubbi-border-yellow-400"},yellowDark:{bg:"hubbi-bg-yellow-200 dark:hubbi-bg-yellow-600",text:"hubbi-text-yellow-900 dark:hubbi-text-yellow-100",border:"hubbi-border-yellow-500 dark:hubbi-border-yellow-400"},green:{bg:"hubbi-bg-green-100 dark:hubbi-bg-green-700",text:"hubbi-text-green-900 dark:hubbi-text-white",border:"hubbi-border-green-500 dark:hubbi-border-green-400"},red:{bg:"hubbi-bg-red-100 dark:hubbi-bg-red-600",text:"hubbi-text-red-900 dark:hubbi-text-white",border:"hubbi-border-red-500 dark:hubbi-border-red-400"},blue:{bg:"hubbi-bg-blue-100 dark:hubbi-bg-blue-600",text:"hubbi-text-blue-900 dark:hubbi-text-white",border:"hubbi-border-blue-500 dark:hubbi-border-blue-400"},cyan:{bg:"hubbi-bg-cyan-100 dark:hubbi-bg-cyan-600",text:"hubbi-text-cyan-900 dark:hubbi-text-white",border:"hubbi-border-cyan-500 dark:hubbi-border-cyan-400"},lime:{bg:"hubbi-bg-lime-100 dark:hubbi-bg-lime-600",text:"hubbi-text-lime-900 dark:hubbi-text-white",border:"hubbi-border-lime-500 dark:hubbi-border-lime-400"},violet:{bg:"hubbi-bg-violet-100 dark:hubbi-bg-violet-600",text:"hubbi-text-violet-900 dark:hubbi-text-white",border:"hubbi-border-violet-500 dark:hubbi-border-violet-400"},orange:{bg:"hubbi-bg-orange-100 dark:hubbi-bg-orange-600",text:"hubbi-text-orange-900 dark:hubbi-text-white",border:"hubbi-border-orange-500 dark:hubbi-border-orange-400"},emerald:{bg:"hubbi-bg-emerald-100 dark:hubbi-bg-emerald-600",text:"hubbi-text-emerald-900 dark:hubbi-text-white",border:"hubbi-border-emerald-500 dark:hubbi-border-emerald-400"}},Bo={"Em aberto":ot.yellow,"Aguardando Confirmação":ot.yellowDark,Fechada:ot.yellowDark,Atrasado:ot.red,Cancelado:ot.red,Recusado:ot.red,Aberto:ot.blue,Disponível:ot.blue,Enviado:ot.blue,Conectado:ot.green,Pago:ot.emerald,Confirmado:ot.lime,Faturado:ot.cyan,Entregue:ot.violet,Recebido:ot.green,"Em Disputa":ot.orange,Concluído:ot.green,Aprovado:ot.green};function Ho({label:i,statusKey:t,noIcon:e=!1}){const s=zo[t]||t,{bg:n,text:r,border:o}=Bo[s]||{bg:"hubbi-bg-gray-100 dark:hubbi-bg-gray-700",text:"hubbi-text-gray-800 dark:hubbi-text-gray-100",border:"hubbi-border-gray-400 dark:hubbi-border-gray-500"},l={"Em aberto":f.jsx(D.Clock,{size:14,weight:"bold"}),"Aguardando Pagamento":f.jsx(D.Money,{size:14,weight:"bold"}),"Aguardando Confirmação":f.jsx(D.Hourglass,{size:14,weight:"bold"}),Pago:f.jsx(D.CheckCircle,{size:14,weight:"bold"}),Confirmado:f.jsx(D.CheckCircle,{size:14,weight:"bold"}),Faturado:f.jsx(D.FileText,{size:14,weight:"bold"}),Enviado:f.jsx(D.Truck,{size:14,weight:"bold"}),Entregue:f.jsx(D.Package,{size:14,weight:"bold"}),Recebido:f.jsx(D.Handshake,{size:14,weight:"bold"}),"Em Disputa":f.jsx(D.WarningCircle,{size:14,weight:"bold"}),Cancelado:f.jsx(D.XCircle,{size:14,weight:"bold"}),Concluido:f.jsx(D.CheckSquare,{size:14,weight:"bold"}),Concluído:f.jsx(D.CheckSquare,{size:14,weight:"bold"}),Aberto:f.jsx(D.Clock,{size:14,weight:"bold"}),Aprovado:f.jsx(D.CheckCircle,{size:14,weight:"bold"}),Recusado:f.jsx(D.XCircle,{size:14,weight:"bold"})}[s];return f.jsx("div",{className:"ui",children:f.jsxs("span",{className:I("hubbi-inline-flex hubbi-items-center hubbi-px-2 hubbi-py-0.5 hubbi-text-xs hubbi-font-medium hubbi-rounded-full hubbi-border hubbi-gap-1 hubbi-whitespace-nowrap",n,r,o),children:[!e&&l,i||s]})})}function Wo({status:i}){const{label:t,border:e,text:s,bg:n}=Bs[i]||Bs[99],o={"Em aberto":f.jsx(D.Hourglass,{size:14,weight:"bold"}),Sucesso:f.jsx(D.CheckCircle,{size:14,weight:"bold"}),"Falha Parcial":f.jsx(D.Warning,{size:14,weight:"bold"}),"Falha Total":f.jsx(D.Warning,{size:14,weight:"bold"}),Processando:f.jsx(D.Hourglass,{size:14,weight:"bold"})}[t];return f.jsx("div",{className:"ui",children:f.jsxs("span",{className:I("hubbi-inline-flex hubbi-items-center hubbi-px-2 hubbi-py-0.5 hubbi-text-xs hubbi-font-medium hubbi-rounded-full hubbi-border hubbi-gap-1 hubbi-whitespace-nowrap",n,s,e),children:[o,t]})})}function Vo({className:i=" ",backgroundColor:t="",title:e,titleClassName:s="",value:n,valueClassName:r="",change:o,changeClassName:a="",trend:l,icon:h,iconClassName:c="",loading:u=!1,bodyClassName:d="",iconPosition:b="right"}){return f.jsx(ir,{className:I("hubbi-h-full",i),backgroundColor:t,bodyClassName:d,children:u?f.jsx("div",{className:"hubbi-flex hubbi-justify-center hubbi-items-center hubbi-h-20 lg:hubbi-h-24",children:f.jsx(Qi,{})}):f.jsx(f.Fragment,{children:b==="left"?f.jsxs("div",{className:"flex items-center",children:[h&&f.jsx("div",{className:"flex items-center hubbi-rounded-full justify-center w-10 h-10 bg-blue-50 mr-4",children:f.jsx(h,{className:I("w-6 h-6 text-blue-500",c)})}),f.jsxs("div",{children:[f.jsx("p",{className:s||"hubbi-text-sm hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark",children:e}),f.jsx("p",{className:r||"hubbi-text-2xl hubbi-font-semibold hubbi-mt-1 hubbi-text-textPrimary-light dark:hubbi-text-textPrimary-dark",children:n}),f.jsxs("div",{className:"hubbi-flex hubbi-items-center",children:[o&&f.jsx("span",{className:I("hubbi-text-sm hubbi-font-medium",l==="up"?"hubbi-text-success-600":l==="down"?"hubbi-text-error-600":"hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark",a),children:o}),l&&f.jsx("span",{className:"hubbi-ml-2",children:l==="up"?f.jsx(D.ArrowUp,{className:"hubbi-w-4 hubbi-h-4 hubbi-text-success-600"}):f.jsx(D.ArrowDown,{className:"hubbi-w-4 hubbi-h-4 hubbi-text-error-600"})})]})]})]}):f.jsxs("div",{className:"hubbi-flex hubbi-items-center hubbi-justify-between",children:[f.jsxs("div",{children:[f.jsx("p",{className:s||"hubbi-text-sm hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark",children:e}),f.jsx("p",{className:r||"hubbi-text-2xl hubbi-font-semibold hubbi-mt-1 hubbi-text-textPrimary-light dark:hubbi-text-textPrimary-dark",children:n}),f.jsxs("div",{className:"hubbi-flex hubbi-items-center",children:[o&&f.jsx("span",{className:I("hubbi-text-sm hubbi-font-medium",l==="up"?"hubbi-text-success-600":l==="down"?"hubbi-text-error-600":"hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark",a),children:o}),l&&f.jsx("span",{className:"hubbi-ml-2",children:l==="up"?f.jsx(D.ArrowUp,{className:"hubbi-w-4 hubbi-h-4 hubbi-text-success-600"}):f.jsx(D.ArrowDown,{className:"hubbi-w-4 hubbi-h-4 hubbi-text-error-600"})})]})]}),h&&f.jsx("div",{className:I("hubbi-p-3 hubbi-rounded-full hubbi-self-start",l==="up"?"hubbi-bg-success-100":l==="down"?"hubbi-bg-error-100":"hubbi-bg-gray-100 dark:hubbi-bg-gray-800"),children:f.jsx(h,{className:I("hubbi-w-6 hubbi-h-6",l==="up"?"hubbi-text-success-600":l==="down"?"hubbi-text-error-600":"hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark",c)})})]})})})}const $o=({isOpen:i,title:t,onClose:e,footer:s,children:n,size:r="4xl"})=>{if(!i)return null;const o={xs:"hubbi-max-w-xs",sm:"hubbi-max-w-sm",md:"hubbi-max-w-md",lg:"hubbi-max-w-lg",xl:"hubbi-max-w-xl","2xl":"hubbi-max-w-2xl","3xl":"hubbi-max-w-3xl","4xl":"hubbi-max-w-4xl"};return f.jsx("div",{className:"ui",children:f.jsx("div",{className:"hubbi-fixed hubbi-inset-0 hubbi-z-50 hubbi-flex hubbi-items-center hubbi-justify-center hubbi-bg-black/50",onClick:e,children:f.jsxs("div",{className:I("hubbi-bg-surfacePrimary-light dark:hubbi-bg-surfacePrimary-dark hubbi-rounded-lg hubbi-shadow-xl hubbi-w-full hubbi-max-h-[90vh] hubbi-overflow-y-auto hubbi-p-4",o[r]),onClick:a=>a.stopPropagation(),children:[f.jsxs("div",{className:"hubbi-flex hubbi-items-center hubbi-justify-between",children:[f.jsx(Jt,{as:"h3",variant:"body1",size:"xl",children:t}),f.jsx("button",{onClick:e,className:"hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark hover:hubbi-text-textHover-light dark:hover:hubbi-text-textHover-dark hubbi-transition-colors","aria-label":"Fechar modal",children:f.jsx(D.X,{className:"hubbi-w-5 hubbi-h-5"})})]}),f.jsx("div",{className:"hubbi-my-4",children:n}),s]})})})};function Yo({isActive:i,onClick:t,icon:e,children:s}){return f.jsx("div",{className:"ui",children:f.jsxs("button",{onClick:t,className:I.clsx("hubbi-px-3 hubbi-py-2 hubbi-rounded-md hubbi-text-sm hubbi-font-medium hubbi-flex hubbi-items-center hubbi-transition-colors",i?"hubbi-bg-primary hubbi-text-white":"hubbi-text-textSecondary-light hover:hubbi-text-textHover-light dark:hubbi-text-textSecondary-dark dark:hover:hubbi-text-textHover-dark"),children:[e&&f.jsx("span",{className:"hubbi-mr-2",children:e}),s]})})}const Uo={0:"hubbi-shadow-none",1:"hubbi-shadow-sm",2:"hubbi-shadow",3:"hubbi-shadow-md",4:"hubbi-shadow-lg"};function sr({children:i,className:t,elevation:e=1,padding:s=4,header:n,fullWidth:r}){return f.jsx("div",{className:I("ui",r&&"flex flex-col flex-1"),children:f.jsxs("div",{className:I(t,`hubbi-p-${s} hubbi-bg-surfacePrimary-light dark:hubbi-bg-surfacePrimary-dark`,Uo[e]),children:[n&&f.jsx("div",{className:"hubbi-px-4 hubbi-py-3 hubbi-border-b hubbi-border-stroke-light dark:hubbi-border-stroke-dark",children:n}),i]})})}function Xo({count:i,pageLimit:t,setPageLimit:e=()=>{},currentPage:s,goToPage:n=()=>{}}){const[r,o]=X.useState(Math.ceil(i/t));X.useEffect(()=>{o(Math.ceil(i/t))},[i,t]);const a=(s-1)*t+1,l=Math.min(s*t,i),h=c=>{c<1||c>r||n(c)};return f.jsx("div",{className:"ui",children:f.jsx(sr,{elevation:0,className:"hubbi-rounded-lg hubbi-bg-surfaceSecondary-light dark:hubbi-bg-surfaceSecondary-dark",children:f.jsx("div",{className:"hubbi-w-full hubbi-flex hubbi-flex-col hubbi-gap-4 ",children:i>0&&f.jsxs("div",{className:"hubbi-w-full hubbi-flex hubbi-flex-wrap hubbi-items-center hubbi-justify-between hubbi-gap-4",children:[f.jsxs("div",{className:"hubbi-text-sm hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark hubbi-min-w-fit",children:["Exibindo ",a," a ",l," de ",i," resultados"]}),f.jsxs("div",{className:"hubbi-flex hubbi-items-center hubbi-gap-2 hubbi-min-w-fit",children:[f.jsx("span",{className:"hubbi-text-sm hubbi-font-light hubbi-text-textPrimary-light dark:hubbi-text-textPrimary-dark",children:"Por página:"}),f.jsx("select",{value:t,onChange:c=>e(Number(c.target.value)),className:"hubbi-p-1 hubbi-rounded hubbi-border hubbi-border-stroke-light dark:hubbi-border-stroke-dark hubbi-bg-surfacePrimary-light dark:hubbi-bg-surfacePrimary-dark hubbi-text-textPrimary-light dark:hubbi-text-textPrimary-dark",children:[12,24,48,96].map(c=>f.jsx("option",{value:c,children:c},c))})]}),f.jsxs("div",{className:"hubbi-flex hubbi-items-center hubbi-gap-1 hubbi-flex-wrap hubbi-justify-end hubbi-text-sm",children:[f.jsx(Lt,{onClick:()=>h(s-1),disabled:s<=1,variant:"outlined",size:"small",children:"Anterior"}),[...Array(5)].map((c,u)=>{const b=Math.max(3,Math.min(s,r-2))-2+u,g=b===s,p=b<1||b>r;return f.jsx(Lt,{onClick:()=>h(b),size:"small",variant:g?"contained":"outlined",color:g?"primary":"default",disabled:p,children:b},u)}),f.jsx(Lt,{onClick:()=>h(s+1),disabled:s>=r,variant:"outlined",size:"small",children:"Próximo"})]})]})})})})}const qo=({trigger:i,children:t,placement:e={trigger:{vertical:"bottom",horizontal:"center"},children:{vertical:"bottom",horizontal:"center"}},position:s={trigger:{x:0,y:0},children:{x:0,y:0}},className:n="",ignoreOutsideClick:r})=>{const[o,a]=X.useState(!1),l=X.useRef(null),h=X.useRef(null),c=()=>a(d=>!d);X.useEffect(()=>{const d=b=>{var p,x;const g=b.target;(p=l.current)!=null&&p.contains(g)||(x=h.current)!=null&&x.contains(g)||r!=null&&r(g)||a(!1)};return document.addEventListener("mousedown",d),()=>document.removeEventListener("mousedown",d)},[r]);const u=(d,b,g)=>{const p={position:"fixed",pointerEvents:"auto"};d==="top"&&(p.top=g.y),d==="bottom"&&(p.bottom=g.y),d==="center"&&(p.top="50%"),b==="left"&&(p.left=g.x),b==="right"&&(p.right=g.x),b==="center"&&(p.left="50%");const x=[];return d==="center"&&x.push("translateY(-50%)"),b==="center"&&x.push("translateX(-50%)"),x.length&&(p.transform=x.join(" ")),p};return f.jsxs("div",{className:"ui fixed top-0 left-0 w-screen h-screen z-50 pointer-events-none",children:[f.jsx("div",{ref:h,className:"hubbi-pointer-events-auto",style:u(e.trigger.vertical,e.trigger.horizontal,s.trigger),onClick:c,children:i}),o&&f.jsx("div",{ref:l,className:`hubbi-pointer-events-auto ${n}`,style:u(e.children.vertical,e.children.horizontal,s.children),children:typeof t=="function"?t(c):t})]})},Ko=({isSelected:i,onClick:t,className:e=""})=>f.jsx("div",{className:"ui",children:f.jsx("div",{className:`hubbi-w-6 hubbi-h-6 hubbi-rounded-full hubbi-border-2 hubbi-flex hubbi-items-center hubbi-justify-center hubbi-transition-all hubbi-cursor-pointer ${i?"hubbi-border-blue-500 hubbi-bg-blue-500 hubbi-shadow-md":"hubbi-border-gray-300 hover:hubbi-border-blue-300"} ${e||""}`,onClick:t,role:"radio","aria-checked":i,tabIndex:0,onKeyPress:s=>{(s.key==="Enter"||s.key===" ")&&t&&t()},children:i&&f.jsx("div",{className:"hubbi-w-3 hubbi-h-3 hubbi-rounded-full hubbi-bg-gray-100 hubbi-transition-colors"})})}),Go=({value:i,onChange:t,options:e,label:s,fullWidth:n=!1})=>f.jsxs("div",{className:`ui ${n?"w-full":""}`,children:[f.jsx("label",{className:"hubbi-text-sm hubbi-font-medium hubbi-text-textPrimary-light dark:hubbi-text-textPrimary-dark",children:s}),f.jsx("select",{value:i,onChange:r=>t(r.target.value),className:"hubbi-w-full hubbi-min-h-10 hubbi-py-2 hubbi-rounded-lg hubbi-border hubbi-text-sm hubbi-bg-white dark:hubbi-bg-surfacePrimary-dark hubbi-px-4 hubbi-border-stroke-light dark:hubbi-border-stroke-dark focus:hubbi-ring-primary dark:hubbi-text-textPrimary-dark dark:[color-scheme:dark]",children:e.map(r=>f.jsx("option",{value:r.value,children:r.label},r.value))})]}),Zo=({value:i,onChange:t,options:e,label:s,fullWidth:n=!1,placeholder:r="Selecione..."})=>{const[o,a]=X.useState(!1),l=X.useRef(null);X.useEffect(()=>{const d=b=>{l.current&&!l.current.contains(b.target)&&a(!1)};return document.addEventListener("mousedown",d),()=>document.removeEventListener("mousedown",d)},[]);const h=d=>{i.includes(d)?t(i.filter(b=>b!==d)):t([...i,d])},c=(d,b)=>{b.stopPropagation(),t(i.filter(g=>g!==d))},u=e.filter(d=>i.includes(d.value));return f.jsxs("div",{ref:l,className:`ui hubbi-relative ${n?"hubbi-w-full":""}`,children:[s&&f.jsx("label",{className:"hubbi-text-sm hubbi-font-medium hubbi-text-textPrimary-light dark:hubbi-text-textPrimary-dark hubbi-mb-1 hubbi-block",children:s}),f.jsx("div",{onClick:()=>a(d=>!d),className:"hubbi-w-full hubbi-min-h-10 hubbi-py-2 hubbi-rounded-lg hubbi-border hubbi-text-sm hubbi-bg-white dark:hubbi-bg-surfacePrimary-dark hubbi-px-3 hubbi-border-stroke-light dark:hubbi-border-stroke-dark focus:hubbi-ring-primary dark:hubbi-text-textPrimary-dark hubbi-cursor-pointer hubbi-flex hubbi-items-center hubbi-flex-wrap hubbi-gap-1",children:u.length===0?f.jsx("span",{className:"hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark",children:r}):u.map(d=>f.jsxs("span",{className:"hubbi-inline-flex hubbi-items-center hubbi-gap-1 hubbi-bg-primary/10 hubbi-text-primary hubbi-text-xs hubbi-font-medium hubbi-px-2 hubbi-py-0.5 hubbi-rounded-md",children:[d.label,f.jsx("button",{type:"button",onClick:b=>c(d.value,b),className:"hubbi-text-primary hover:hubbi-text-primary/70 hubbi-leading-none hubbi-text-sm hubbi-font-bold",children:"×"})]},d.value))}),o&&f.jsx("ul",{className:"hubbi-absolute hubbi-z-50 hubbi-mt-1 hubbi-w-full hubbi-max-h-60 hubbi-overflow-auto hubbi-rounded-lg hubbi-border hubbi-border-stroke-light dark:hubbi-border-stroke-dark hubbi-bg-white dark:hubbi-bg-surfacePrimary-dark hubbi-shadow-lg hubbi-py-1",children:e.map(d=>{const b=i.includes(d.value);return f.jsxs("li",{onClick:()=>h(d.value),className:`hubbi-flex hubbi-items-center hubbi-gap-2 hubbi-px-3 hubbi-py-2 hubbi-text-sm hubbi-cursor-pointer hover:hubbi-bg-surfaceSecondary-light dark:hover:hubbi-bg-surfaceSecondary-dark hubbi-text-textPrimary-light dark:hubbi-text-textPrimary-dark ${b?"hubbi-bg-primary/5":""}`,children:[f.jsx("span",{className:`hubbi-w-4 hubbi-h-4 hubbi-rounded hubbi-border hubbi-flex hubbi-items-center hubbi-justify-center hubbi-shrink-0 ${b?"hubbi-bg-primary hubbi-border-primary":"hubbi-border-stroke-light dark:hubbi-border-stroke-dark"}`,children:b&&f.jsx("svg",{className:"hubbi-w-3 hubbi-h-3 hubbi-text-white",viewBox:"0 0 12 12",fill:"none",children:f.jsx("path",{d:"M2.5 6L5 8.5L9.5 3.5",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}),d.label]},d.value)})})]})},Jo=({data:i,children:t})=>f.jsx("tbody",{className:"hubbi-divide-y hubbi-divide-gray-200 dark:hubbi-divide-gray-700 hubbi-bg-white dark:hubbi-bg-surfaceSecondary-dark",children:i.map((e,s)=>t(e,s))}),Qo=({children:i,align:t="left",className:e=""})=>{const s={left:"hubbi-text-left",center:"hubbi-text-center",right:"hubbi-text-right"};return f.jsx("td",{className:`hubbi-px-6 hubbi-py-4 hubbi-text-sm hubbi-text-gray-700 dark:hubbi-text-gray-200 ${s[t]} ${e||""}`,children:i})},ta=({columns:i,showCheckbox:t=!1,allSelected:e=!1,onSelectAll:s,onSort:n,currentSortKey:r,currentSortDirection:o})=>{const a=c=>{s==null||s(c.target.checked)},l=c=>{const u=typeof c=="string"?{label:c}:c,d=u.sortKey||u.label;if(!u.sortable||!n)return;let b="asc";r===d&&(o==="asc"?b="desc":o==="desc"&&(b=null)),n(d,b)},h=c=>{const u=typeof c=="string"?{label:c}:c,d=u.sortKey||u.label;if(!u.sortable)return null;const b=r===d;return b&&o==="asc"?f.jsx("svg",{className:"hubbi-ml-2 hubbi-w-4 hubbi-h-4 hubbi-text-blue-600 dark:hubbi-text-blue-400",fill:"currentColor",viewBox:"0 0 20 20",children:f.jsx("path",{fillRule:"evenodd",d:"M14.707 12.707a1 1 0 01-1.414 0L10 9.414l-3.293 3.293a1 1 0 01-1.414-1.414l4-4a1 1 0 011.414 0l4 4a1 1 0 010 1.414z",clipRule:"evenodd"})}):b&&o==="desc"?f.jsx("svg",{className:"hubbi-ml-2 hubbi-w-4 hubbi-h-4 hubbi-text-blue-600 dark:hubbi-text-blue-400",fill:"currentColor",viewBox:"0 0 20 20",children:f.jsx("path",{fillRule:"evenodd",d:"M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z",clipRule:"evenodd"})}):f.jsx("svg",{className:"hubbi-ml-2 hubbi-w-4 hubbi-h-4 hubbi-text-gray-400 dark:hubbi-text-gray-600",fill:"currentColor",viewBox:"0 0 20 20",children:f.jsx("path",{d:"M3 3a1 1 0 000 2h11a1 1 0 100-2H3zM3 7a1 1 0 000 2h7a1 1 0 100-2H3zM3 11a1 1 0 100 2h4a1 1 0 100-2H3zM15 8a1 1 0 10-2 0v5.586l-1.293-1.293a1 1 0 00-1.414 1.414l3 3a1 1 0 001.414 0l3-3a1 1 0 00-1.414-1.414L15 13.586V8z"})})};return f.jsx("thead",{className:"hubbi-bg-gray-100 dark:hubbi-bg-gray-800",children:f.jsxs("tr",{children:[t&&f.jsx("th",{scope:"col",className:"hubbi-px-6 hubbi-py-3 hubbi-w-12",children:f.jsx("input",{type:"checkbox",checked:e,onChange:a,className:"hubbi-w-4 hubbi-h-4 hubbi-text-blue-600 hubbi-bg-gray-100 hubbi-border-gray-300 hubbi-rounded focus:hubbi-ring-blue-500 dark:focus:hubbi-ring-blue-600 dark:hubbi-ring-offset-gray-800 focus:hubbi-ring-2 dark:hubbi-bg-gray-700 dark:hubbi-border-gray-600"})}),i.map((c,u)=>{const d=typeof c=="string"?{label:c}:c,b=d.sortable&&n;return f.jsx("th",{scope:"col",className:`hubbi-px-6 hubbi-py-3 hubbi-text-left hubbi-text-xs hubbi-font-medium hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark ${b?"hubbi-cursor-pointer hover:hubbi-bg-gray-200 dark:hover:hubbi-bg-gray-700 hubbi-select-none":""}`,onClick:()=>b&&l(c),children:f.jsxs("div",{className:"hubbi-flex hubbi-items-center",children:[f.jsx("span",{children:d.label}),h(c)]})},u)})]})})},ea=({children:i,onClick:t,selected:e=!1,selectable:s=!1,showCheckbox:n=!1,onSelectChange:r})=>{const o=s||!!t,a=h=>{h.stopPropagation(),r==null||r(h.target.checked)},l=()=>{n&&r&&r(!e),t&&t()};return f.jsxs("tr",{role:"row",onClick:l,className:I("hubbi-transition-colors","hover:hubbi-bg-gray-50 dark:hover:hubbi-bg-gray-800",(o||n)&&"cursor-pointer",e&&"hubbi-bg-blue-50 dark:hubbi-bg-gray-900"),children:[n&&f.jsx("td",{className:"hubbi-px-6 hubbi-py-4 hubbi-w-12",children:f.jsx("input",{type:"checkbox",checked:e,onChange:a,onClick:h=>h.stopPropagation(),className:"hubbi-w-4 hubbi-h-4 hubbi-text-blue-600 hubbi-bg-gray-100 hubbi-border-gray-300 hubbi-rounded focus:hubbi-ring-blue-500 dark:focus:hubbi-ring-blue-600 dark:hubbi-ring-offset-gray-800 focus:hubbi-ring-2 dark:hubbi-bg-gray-700 dark:hubbi-border-gray-600"})}),i]})},Be=({children:i})=>f.jsx("div",{className:"ui overflow-x-auto border rounded-lg border-gray-200 dark:border-gray-700",children:f.jsx("table",{className:"hubbi-min-w-full hubbi-divide-y hubbi-divide-gray-200 dark:hubbi-divide-gray-700",children:i})});Be.Header=ta;Be.Body=Jo;Be.Row=ea;Be.Cell=Qo;const ia=Be,sa=({fill:i="white",width:t=159,height:e=67,full:s=!0,className:n=""})=>f.jsxs("svg",{width:t,height:e,viewBox:"0 0 159 67",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:n,children:[f.jsx("path",{d:"M45.395 53.6836V66.3873H47.706H50.0169V61.1697V55.9521H56.4966H62.9763V61.1697V66.3873H65.2872H67.5981V53.6836V40.9799H65.2872H62.9763V46.4697V51.9596H56.4966H50.0169V46.4697V40.9799H47.706H45.395V53.6836Z",fill:s?i:"none"}),f.jsx("path",{d:"M72.7003 49.1194C72.7275 57.1499 72.7366 57.277 72.9269 58.1572C73.9872 62.8394 77.0412 65.8066 81.7356 66.714C82.9409 66.9409 85.5147 66.9409 86.72 66.714C89.049 66.2603 90.9159 65.3348 92.4203 63.9011C94.0243 62.3585 94.9759 60.5981 95.5287 58.1572C95.719 57.277 95.7281 57.1499 95.7553 49.1194L95.7915 40.9799H93.4806H91.1696L91.1425 49.0287C91.1153 57.0048 91.1062 57.0955 90.9159 57.767C90.1818 60.2896 88.5053 62.0136 86.1762 62.6398C85.3515 62.8666 83.104 62.8666 82.2794 62.6398C79.9503 62.0136 78.2737 60.2896 77.5397 57.767C77.3494 57.0955 77.3403 57.0048 77.3131 49.0287L77.2859 40.9799H74.975H72.6641L72.7003 49.1194Z",fill:s?i:"none"}),f.jsx("path",{d:"M100.857 53.6836V66.3964L108.135 66.3692C115.276 66.3329 115.421 66.3329 116.381 66.1333C121.166 65.1261 123.532 62.2677 122.843 58.3205C122.58 56.796 121.855 55.4803 120.813 54.6273C120.233 54.1464 118.901 53.484 118.194 53.3207C117.931 53.2572 117.714 53.1846 117.714 53.1483C117.714 53.121 117.967 52.9759 118.285 52.8398C119.463 52.3225 120.605 51.2246 121.121 50.0994C121.52 49.2373 121.656 48.5386 121.647 47.3772C121.647 46.4516 121.601 46.1794 121.402 45.5623C120.677 43.3664 118.711 41.8601 115.72 41.1886C115.131 41.0616 114.134 41.0344 107.953 41.0072L100.857 40.9709V53.6836ZM114.66 45.0451C116.409 45.526 117.351 46.5514 117.351 47.967C117.351 49.2827 116.526 50.4533 115.149 51.0975C113.989 51.642 113.545 51.6873 109.286 51.6873H105.479V48.2301V44.7729L109.721 44.8092C113.708 44.8455 113.998 44.8636 114.66 45.0451ZM115.838 55.8886C116.708 56.1881 117.106 56.4422 117.605 56.9866C118.221 57.6581 118.393 58.1118 118.393 59.0827C118.393 59.7905 118.357 59.9629 118.149 60.3531C117.877 60.8794 117.179 61.569 116.653 61.8322C116.055 62.1407 115.176 62.3857 114.315 62.4855C113.871 62.5309 111.696 62.5762 109.494 62.5762H105.479V59.0736V55.5801L110.31 55.6073L115.131 55.6346L115.838 55.8886Z",fill:s?i:"none"}),f.jsx("path",{d:"M127.501 53.6836V66.3964L134.778 66.3692C141.919 66.3329 142.064 66.3329 143.025 66.1333C147.81 65.1261 150.175 62.2677 149.487 58.3205C149.224 56.796 148.499 55.4803 147.457 54.6273C146.877 54.1464 145.544 53.484 144.838 53.3207C144.575 53.2572 144.357 53.1846 144.357 53.1483C144.357 53.121 144.611 52.9759 144.928 52.8398C146.106 52.3225 147.248 51.2246 147.765 50.0994C148.163 49.2373 148.299 48.5386 148.29 47.3772C148.29 46.4516 148.245 46.1794 148.046 45.5623C147.321 43.3664 145.354 41.8601 142.363 41.1886C141.774 41.0616 140.778 41.0344 134.597 41.0072L127.501 40.9709V53.6836ZM141.303 45.0451C143.052 45.526 143.995 46.5514 143.995 47.967C143.995 49.2827 143.17 50.4533 141.793 51.0975C140.633 51.642 140.188 51.6873 135.929 51.6873H132.123V48.2301V44.7729L136.364 44.8092C140.352 44.8455 140.642 44.8636 141.303 45.0451ZM142.481 55.8886C143.351 56.1881 143.75 56.4422 144.248 56.9866C144.865 57.6581 145.037 58.1118 145.037 59.0827C145.037 59.7905 145.001 59.9629 144.792 60.3531C144.52 60.8794 143.823 61.569 143.297 61.8322C142.699 62.1407 141.82 62.3857 140.959 62.4855C140.515 62.5309 138.34 62.5762 136.138 62.5762H132.123V59.0736V55.5801L136.953 55.6073L141.774 55.6346L142.481 55.8886Z",fill:s?i:"none"}),f.jsx("path",{d:"M154.145 53.6836V66.3873H156.456H158.767V53.6836V40.9799H156.456H154.145V53.6836Z",fill:s?i:"none"}),f.jsx("path",{d:"M47.3889 0.0195503C43.2473 0.37344 40.2748 1.17196 37.0214 2.79622C29.1732 6.72529 23.772 14.3838 22.6936 23.1131C22.6211 23.7301 22.5576 24.3018 22.5576 24.3925C22.5576 24.5468 22.8023 24.5558 27.5148 24.5377L32.472 24.5105L32.5807 23.6394C33.5776 15.6996 40.1207 9.69251 48.1592 9.33862C53.8051 9.09363 59.3786 11.9973 62.4689 16.8157C63.6832 18.7031 64.5714 21.0805 64.8795 23.2401C64.9339 23.6394 64.9973 24.1021 65.0245 24.2564L65.0698 24.5558H70.0451C74.7667 24.5558 75.0295 24.5468 75.0295 24.3925C75.0295 24.3018 74.9661 23.7301 74.8936 23.1131C73.4073 11.1444 63.9551 1.68011 52.0017 0.191957C50.887 0.0558472 48.1682 -0.0439682 47.3889 0.0195503Z",fill:i}),f.jsx("path",{d:"M14.8996 24.8825C11.8364 25.2909 9.07238 26.4251 6.65269 28.2581C5.85519 28.8661 4.31457 30.3905 3.66207 31.2253C0.934257 34.7098 -0.370742 39.1742 0.091445 43.4118C0.444882 46.7329 1.63207 49.6729 3.66207 52.2772C4.43238 53.2663 6.10894 54.8724 7.15113 55.6074C8.77332 56.7598 11.0571 57.8033 12.9693 58.2661C13.8664 58.4838 14.0205 58.4929 16.8208 58.4929H19.748L19.5577 58.0211C18.878 56.297 18.6514 53.7744 19.0139 51.9051C19.1771 51.0613 19.4308 50.1538 19.7027 49.4824C19.7661 49.3372 19.6664 49.3281 18.4158 49.3281C16.9296 49.3281 16.3224 49.2464 15.3074 48.9107C13.1958 48.2211 11.2474 46.2701 10.5586 44.1559C9.82457 41.9237 10.0511 39.6279 11.2021 37.6679C11.9814 36.325 13.5674 34.9638 14.9539 34.4375C16.1955 33.9566 16.2046 33.9566 20.4277 33.9113L24.4061 33.8568L28.3302 29.3651C30.478 26.897 32.2452 24.8462 32.2452 24.8009C32.2542 24.7646 28.5568 24.7374 24.0346 24.7464C17.6908 24.7555 15.5974 24.7827 14.8996 24.8825Z",fill:i}),f.jsx("path",{d:"M29.1549 45.4353C27.433 45.6894 25.7565 46.4788 24.4877 47.6403C22.5574 49.4098 21.479 52.377 21.8233 54.9903C22.3671 59.0555 25.3305 61.9864 29.4268 62.4946C31.8918 62.8031 34.6377 61.8503 36.4321 60.0446C38.2355 58.2479 39.1871 55.4985 38.879 53.0303C38.6887 51.4605 38.2083 50.2083 37.3111 48.9016C35.5893 46.4062 32.2361 44.9816 29.1549 45.4353Z",fill:i})]}),na={primary:{text:"hubbi-text-primary",bg10:"hubbi-bg-primary/10",bg20:"hubbi-bg-primary/20"},indigo:{text:"hubbi-text-indigo-500",bg10:"hubbi-bg-indigo-500/10",bg20:"hubbi-bg-indigo-500/20"}};function ra(i,t){return i.map(e=>{if(e.subItems){const n=e.subItems.map(r=>({...r,locked:r.hasPermission===!1})).filter(r=>t||!r.locked);return n.length===0?null:{...e,subItems:n}}const s=e.hasPermission===!1;return!t&&s?null:{...e,locked:s}}).filter(Boolean)}function oa({isOpen:i,onClose:t,navItems:e,logout:s,location:n,isDarkMode:r,lockMenu:o=!1,lockLink:a="",onNavigate:l,color:h="primary",logo:c}){const u=ra(e,o),{text:d,bg10:b,bg20:g}=na[h],p=()=>{const S=u.findIndex(C=>{var R;return(R=C.subItems)==null?void 0:R.some(T=>new RegExp(`^${T.to}(/)?$`).test(n.pathname))});return S>=0?S:null},[x,y]=X.useState(p),_=S=>{y(C=>C===S?null:S)},w=(S,C)=>{l(C?a:S)},M=S=>new RegExp(`^${S}(/)?$`).test(n.pathname),v=S=>{var C;return(C=S.subItems)==null?void 0:C.some(R=>M(R.to))},O=f.jsx(sa,{width:64,height:64,className:"mx-8",fill:r?"white":"#3D6CB9"});return f.jsxs(f.Fragment,{children:[i&&f.jsx("div",{className:"hubbi-fixed hubbi-inset-0 hubbi-z-20 hubbi-bg-textPrimary-light/50 dark:hubbi-bg-textPrimary-dark/50 md:hubbi-hidden",onClick:t}),f.jsx("div",{className:"ui",children:f.jsxs("div",{className:I("hubbi-h-screen hubbi-fixed hubbi-inset-y-0 hubbi-left-0 hubbi-z-30 hubbi-w-64 hubbi-flex-shrink-0 hubbi-bg-surfacePrimary-light dark:hubbi-bg-surfacePrimary-dark hubbi-border-r hubbi-border-stroke-light dark:hubbi-border-stroke-dark hubbi-transform hubbi-transition-transform hubbi-duration-200 hubbi-ease-in-out md:hubbi-static md:hubbi-translate-x-0",i?"hubbi-translate-x-0":"-hubbi-translate-x-full"),children:[f.jsxs("div",{className:"hubbi-h-16 hubbi-flex hubbi-items-center hubbi-justify-between hubbi-px-4 hubbi-border-b hubbi-border-stroke-light dark:hubbi-border-stroke-dark",children:[c??O,f.jsx("button",{className:"md:hubbi-hidden hubbi-p-1 hubbi-rounded-md hubbi-text-textSecondary-light hover:hubbi-text-textHover-light dark:hubbi-text-textSecondary-dark dark:hover:hubbi-text-textHover-dark hover:hubbi-bg-surfaceSecondary-light dark:hover:hubbi-bg-surfaceSecondary-dark",onClick:t,children:f.jsx(D.X,{className:"hubbi-h-6 hubbi-w-6"})})]}),f.jsxs("div",{className:"hubbi-flex hubbi-flex-col hubbi-justify-between hubbi-h-[calc(100%-4rem)]",children:[f.jsx("nav",{className:"hubbi-flex-1 hubbi-px-2 hubbi-py-4 hubbi-overflow-y-auto",children:f.jsx("ul",{className:"hubbi-space-y-1",children:u.map((S,C)=>{var L;const R=x===C,T=v(S);if((L=S.subItems)!=null&&L.length)return f.jsxs("li",{children:[f.jsxs("button",{onClick:()=>_(C),className:I("hubbi-w-full hubbi-flex hubbi-items-center hubbi-px-4 hubbi-py-2 hubbi-rounded hubbi-transition-colors","hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark hover:hubbi-bg-surfaceSecondary-light dark:hover:hubbi-bg-surfaceSecondary-dark",T&&`${b} dark:${g} ${d} hubbi-font-medium`),children:[f.jsx(S.icon,{className:"hubbi-h-5 hubbi-w-5 hubbi-mr-3"}),f.jsx("span",{className:"hubbi-flex-1 hubbi-text-left",children:S.label}),f.jsx(D.CaretDown,{className:I("hubbi-h-4 hubbi-w-4 hubbi-transition-transform",R&&"hubbi-rotate-180")})]}),R&&f.jsx("ul",{className:"hubbi-pl-8 hubbi-mt-1 hubbi-space-y-1",children:S.subItems.map((H,J)=>f.jsx("li",{children:f.jsxs("button",{onClick:()=>w(H.to,H.locked),className:I("hubbi-flex hubbi-items-center hubbi-w-full hubbi-px-4 hubbi-py-2 hubbi-text-sm hubbi-rounded hubbi-transition-colors",M(H.to)?`${b} dark:${g} ${d} hubbi-font-medium`:H.locked?"hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark hover:hubbi-text-error-600":`hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark hover:${d} hover:hubbi-bg-surfaceSecondary-light dark:hover:hubbi-bg-surfaceSecondary-dark`),children:[f.jsx("span",{className:"hubbi-flex-1 hubbi-text-left",children:H.label}),H.locked&&f.jsx(D.Lock,{className:"hubbi-h-4 hubbi-w-4"})]})},J))})]},C);const E=M(S.to||"");return f.jsx("li",{children:f.jsxs("button",{onClick:()=>w(S.to,S.locked),className:I("hubbi-flex hubbi-items-center hubbi-w-full hubbi-px-4 hubbi-py-2 hubbi-rounded hubbi-transition-colors",E?`${b} dark:${g} ${d} hubbi-font-medium`:S.locked?"hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark hover:hubbi-text-error-600":`hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark hover:${d} hover:hubbi-bg-surfaceSecondary-light dark:hover:hubbi-bg-surfaceSecondary-dark`),children:[f.jsx(S.icon,{className:"hubbi-h-5 hubbi-w-5 hubbi-mr-3"}),f.jsx("span",{className:"hubbi-flex-1 hubbi-text-left",children:S.label}),S.locked&&f.jsx(D.Lock,{className:"hubbi-h-4 hubbi-w-4"})]})},C)})})}),f.jsx("div",{className:"hubbi-p-4 hubbi-border-t hubbi-border-stroke-light dark:hubbi-border-stroke-dark",children:f.jsxs("button",{className:"hubbi-w-full hubbi-flex hubbi-items-center hubbi-px-4 hubbi-py-2 hubbi-rounded-md hubbi-transition-colors hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark hover:hubbi-bg-surfaceSecondary-light dark:hover:hubbi-bg-surfaceSecondary-dark hover:hubbi-text-error-600",onClick:s,children:[f.jsx(D.SignOut,{className:"hubbi-h-5 hubbi-w-5 hubbi-mr-3"}),"Sair"]})})]})]})})]})}function aa({tabs:i,defaultSelected:t}){var n;const[e,s]=X.useState(t||i[0].id);return f.jsxs("div",{className:"ui",children:[f.jsx("div",{className:"hubbi-flex",children:i.map(r=>{const o=r.id===e;return f.jsxs("button",{onClick:()=>s(r.id),className:I("hubbi-flex hubbi-items-center hubbi-gap-2 hubbi-p-4 hubbi-border-b-2 hubbi-transition-colors hubbi-flex-1 hubbi-justify-center",o?r.activeTabStyle:"hubbi-text-disabled-light dark:hubbi-text-disabled-dark hubbi-border-disabled-light dark:hubbi-border-disabled-dark hover:hubbi-border-textSecondary-light dark:hover:hubbi-border-textSecondary-dark"),children:[r.icon&&f.jsx("span",{children:r.icon}),f.jsx("span",{children:r.label}),r.count!==void 0&&f.jsx("span",{className:I("hubbi-ml-1 hubbi-rounded-full hubbi-px-2 hubbi-py-0.5 hubbi-text-xs hubbi-font-medium hubbi-border",r.activeTabStyle),children:r.count})]},r.id)})}),f.jsx("div",{className:"hubbi-mt-4",children:(n=i.find(r=>r.id===e))==null?void 0:n.content})]})}function la({tabs:i,activeTab:t,onChange:e,disabled:s=!0}){return f.jsx("div",{className:"ui",children:f.jsx("div",{className:"hubbi-border-b hubbi-border-stroke-light dark:hubbi-border-stroke-dark hubbi-overflow-x-auto hubbi-whitespace-nowrap hubbi-no-scrollbar",children:f.jsx("div",{className:"hubbi-mb-px hubbi-flex hubbi-space-x-8",children:i.map(n=>{const r=t===n.value;return f.jsxs(Lt,{variant:"text",color:"default",disabled:s,onClick:()=>e(n.value),className:I(s&&"hubbi-bg-transparent dark:hubbi-bg-transparent","hubbi-rounded-none hubbi-border-b-2 hubbi-text-sm hubbi-font-medium hubbi-pb-4 hubbi-px-1 hover:hubbi-bg-transparent dark:hover:hubbi-bg-transparent",r?"hubbi-border-primary hubbi-text-primary":"hubbi-border-transparent hubbi-text-textSecondary-light dark:hubbi-text-textSecondary-dark hover:hubbi-text-textHover-light dark:hover:hubbi-text-textHover-dark hover:hubbi-border-stroke-light dark:hover:hubbi-border-stroke-dark"),children:[n.label,n.count&&` (${n.count})`]},n.value)})})})})}/*!
|
|
31
31
|
* @kurkle/color v0.3.4
|
|
32
32
|
* https://github.com/kurkle/color#readme
|
|
33
33
|
* (c) 2024 Jukka Kurkela
|
|
34
34
|
* Released under the MIT License
|
|
35
|
-
*/function He(i){return i+.5|0}const Ft=(i,t,e)=>Math.max(Math.min(i,e),t);function ke(i){return Ft(He(i*2.55),0,255)}function Ht(i){return Ft(He(i*255),0,255)}function Tt(i){return Ft(He(i/2.55)/100,0,1)}function Hs(i){return Ft(He(i*100),0,100)}const pt={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},Yi=[..."0123456789ABCDEF"],
|
|
35
|
+
*/function He(i){return i+.5|0}const Ft=(i,t,e)=>Math.max(Math.min(i,e),t);function ke(i){return Ft(He(i*2.55),0,255)}function Ht(i){return Ft(He(i*255),0,255)}function Tt(i){return Ft(He(i/2.55)/100,0,1)}function Hs(i){return Ft(He(i*100),0,100)}const pt={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},Yi=[..."0123456789ABCDEF"],ha=i=>Yi[i&15],ca=i=>Yi[(i&240)>>4]+Yi[i&15],Xe=i=>(i&240)>>4===(i&15),ua=i=>Xe(i.r)&&Xe(i.g)&&Xe(i.b)&&Xe(i.a);function da(i){var t=i.length,e;return i[0]==="#"&&(t===4||t===5?e={r:255&pt[i[1]]*17,g:255&pt[i[2]]*17,b:255&pt[i[3]]*17,a:t===5?pt[i[4]]*17:255}:(t===7||t===9)&&(e={r:pt[i[1]]<<4|pt[i[2]],g:pt[i[3]]<<4|pt[i[4]],b:pt[i[5]]<<4|pt[i[6]],a:t===9?pt[i[7]]<<4|pt[i[8]]:255})),e}const ba=(i,t)=>i<255?t(i):"";function fa(i){var t=ua(i)?ha:ca;return i?"#"+t(i.r)+t(i.g)+t(i.b)+ba(i.a,t):void 0}const ga=/^(hsla?|hwb|hsv)\(\s*([-+.e\d]+)(?:deg)?[\s,]+([-+.e\d]+)%[\s,]+([-+.e\d]+)%(?:[\s,]+([-+.e\d]+)(%)?)?\s*\)$/;function nr(i,t,e){const s=t*Math.min(e,1-e),n=(r,o=(r+i/30)%12)=>e-s*Math.max(Math.min(o-3,9-o,1),-1);return[n(0),n(8),n(4)]}function pa(i,t,e){const s=(n,r=(n+i/60)%6)=>e-e*t*Math.max(Math.min(r,4-r,1),0);return[s(5),s(3),s(1)]}function ma(i,t,e){const s=nr(i,1,.5);let n;for(t+e>1&&(n=1/(t+e),t*=n,e*=n),n=0;n<3;n++)s[n]*=1-t-e,s[n]+=t;return s}function xa(i,t,e,s,n){return i===n?(t-e)/s+(t<e?6:0):t===n?(e-i)/s+2:(i-t)/s+4}function ts(i){const e=i.r/255,s=i.g/255,n=i.b/255,r=Math.max(e,s,n),o=Math.min(e,s,n),a=(r+o)/2;let l,h,c;return r!==o&&(c=r-o,h=a>.5?c/(2-r-o):c/(r+o),l=xa(e,s,n,c,r),l=l*60+.5),[l|0,h||0,a]}function es(i,t,e,s){return(Array.isArray(t)?i(t[0],t[1],t[2]):i(t,e,s)).map(Ht)}function is(i,t,e){return es(nr,i,t,e)}function ya(i,t,e){return es(ma,i,t,e)}function _a(i,t,e){return es(pa,i,t,e)}function rr(i){return(i%360+360)%360}function va(i){const t=ga.exec(i);let e=255,s;if(!t)return;t[5]!==s&&(e=t[6]?ke(+t[5]):Ht(+t[5]));const n=rr(+t[2]),r=+t[3]/100,o=+t[4]/100;return t[1]==="hwb"?s=ya(n,r,o):t[1]==="hsv"?s=_a(n,r,o):s=is(n,r,o),{r:s[0],g:s[1],b:s[2],a:e}}function ka(i,t){var e=ts(i);e[0]=rr(e[0]+t),e=is(e),i.r=e[0],i.g=e[1],i.b=e[2]}function wa(i){if(!i)return;const t=ts(i),e=t[0],s=Hs(t[1]),n=Hs(t[2]);return i.a<255?`hsla(${e}, ${s}%, ${n}%, ${Tt(i.a)})`:`hsl(${e}, ${s}%, ${n}%)`}const Ws={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"},Vs={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:"ffe4e1",moccasR:"ffe4b5",navajowEte:"ffdead",navy:"80",Tdlace:"fdf5e6",Tive:"808000",TivedBb:"6b8e23",Sange:"ffa500",SangeYd:"ff4500",ScEd:"da70d6",pOegTMnPd:"eee8aa",pOegYF:"98fb98",pOeQe:"afeeee",pOeviTetYd:"db7093",papayawEp:"ffefd5",pHKpuff:"ffdab9",peru:"cd853f",pRk:"ffc0cb",plum:"dda0dd",powMrXe:"b0e0e6",purpN:"800080",YbeccapurpN:"663399",Yd:"ff0000",Psybrown:"bc8f8f",PyOXe:"4169e1",saddNbPwn:"8b4513",sOmon:"fa8072",sandybPwn:"f4a460",sHgYF:"2e8b57",sHshell:"fff5ee",siFna:"a0522d",silver:"c0c0c0",skyXe:"87ceeb",UXe:"6a5acd",UWay:"708090",UgYy:"708090",snow:"fffafa",sprRggYF:"ff7f",stAlXe:"4682b4",tan:"d2b48c",teO:"8080",tEstN:"d8bfd8",tomato:"ff6347",Qe:"40e0d0",viTet:"ee82ee",JHt:"f5deb3",wEte:"ffffff",wEtesmoke:"f5f5f5",Lw:"ffff00",LwgYF:"9acd32"};function Sa(){const i={},t=Object.keys(Vs),e=Object.keys(Ws);let s,n,r,o,a;for(s=0;s<t.length;s++){for(o=a=t[s],n=0;n<e.length;n++)r=e[n],a=a.replace(r,Ws[r]);r=parseInt(Vs[o],16),i[a]=[r>>16&255,r>>8&255,r&255]}return i}let qe;function Ma(i){qe||(qe=Sa(),qe.transparent=[0,0,0,0]);const t=qe[i.toLowerCase()];return t&&{r:t[0],g:t[1],b:t[2],a:t.length===4?t[3]:255}}const Ca=/^rgba?\(\s*([-+.\d]+)(%)?[\s,]+([-+.e\d]+)(%)?[\s,]+([-+.e\d]+)(%)?(?:[\s,/]+([-+.e\d]+)(%)?)?\s*\)$/;function Pa(i){const t=Ca.exec(i);let e=255,s,n,r;if(t){if(t[7]!==s){const o=+t[7];e=t[8]?ke(o):Ft(o*255,0,255)}return s=+t[1],n=+t[3],r=+t[5],s=255&(t[2]?ke(s):Ft(s,0,255)),n=255&(t[4]?ke(n):Ft(n,0,255)),r=255&(t[6]?ke(r):Ft(r,0,255)),{r:s,g:n,b:r,a:e}}}function Oa(i){return i&&(i.a<255?`rgba(${i.r}, ${i.g}, ${i.b}, ${Tt(i.a)})`:`rgb(${i.r}, ${i.g}, ${i.b})`)}const Ti=i=>i<=.0031308?i*12.92:Math.pow(i,1/2.4)*1.055-.055,oe=i=>i<=.04045?i/12.92:Math.pow((i+.055)/1.055,2.4);function ja(i,t,e){const s=oe(Tt(i.r)),n=oe(Tt(i.g)),r=oe(Tt(i.b));return{r:Ht(Ti(s+e*(oe(Tt(t.r))-s))),g:Ht(Ti(n+e*(oe(Tt(t.g))-n))),b:Ht(Ti(r+e*(oe(Tt(t.b))-r))),a:i.a+e*(t.a-i.a)}}function Ke(i,t,e){if(i){let s=ts(i);s[t]=Math.max(0,Math.min(s[t]+s[t]*e,t===0?360:1)),s=is(s),i.r=s[0],i.g=s[1],i.b=s[2]}}function or(i,t){return i&&Object.assign(t||{},i)}function $s(i){var t={r:0,g:0,b:0,a:255};return Array.isArray(i)?i.length>=3&&(t={r:i[0],g:i[1],b:i[2],a:255},i.length>3&&(t.a=Ht(i[3]))):(t=or(i,{r:0,g:0,b:0,a:1}),t.a=Ht(t.a)),t}function Ra(i){return i.charAt(0)==="r"?Pa(i):va(i)}class De{constructor(t){if(t instanceof De)return t;const e=typeof t;let s;e==="object"?s=$s(t):e==="string"&&(s=da(t)||Ma(t)||Ra(t)),this._rgb=s,this._valid=!!s}get valid(){return this._valid}get rgb(){var t=or(this._rgb);return t&&(t.a=Tt(t.a)),t}set rgb(t){this._rgb=$s(t)}rgbString(){return this._valid?Oa(this._rgb):void 0}hexString(){return this._valid?fa(this._rgb):void 0}hslString(){return this._valid?wa(this._rgb):void 0}mix(t,e){if(t){const s=this.rgb,n=t.rgb;let r;const o=e===r?.5:e,a=2*o-1,l=s.a-n.a,h=((a*l===-1?a:(a+l)/(1+a*l))+1)/2;r=1-h,s.r=255&h*s.r+r*n.r+.5,s.g=255&h*s.g+r*n.g+.5,s.b=255&h*s.b+r*n.b+.5,s.a=o*s.a+(1-o)*n.a,this.rgb=s}return this}interpolate(t,e){return t&&(this._rgb=ja(this._rgb,t._rgb,e)),this}clone(){return new De(this.rgb)}alpha(t){return this._rgb.a=Ht(t),this}clearer(t){const e=this._rgb;return e.a*=1-t,this}greyscale(){const t=this._rgb,e=He(t.r*.3+t.g*.59+t.b*.11);return t.r=t.g=t.b=e,this}opaquer(t){const e=this._rgb;return e.a*=1+t,this}negate(){const t=this._rgb;return t.r=255-t.r,t.g=255-t.g,t.b=255-t.b,this}lighten(t){return Ke(this._rgb,2,t),this}darken(t){return Ke(this._rgb,2,-t),this}saturate(t){return Ke(this._rgb,1,t),this}desaturate(t){return Ke(this._rgb,1,-t),this}rotate(t){return ka(this._rgb,t),this}}/*!
|
|
36
36
|
* Chart.js v4.5.0
|
|
37
37
|
* https://www.chartjs.org
|
|
38
38
|
* (c) 2025 Chart.js Contributors
|
|
39
39
|
* Released under the MIT License
|
|
40
|
-
*/function At(){}const Aa=(()=>{let i=0;return()=>i++})();function $(i){return i==null}function nt(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 W(i){return i!==null&&Object.prototype.toString.call(i)==="[object Object]"}function xt(i){return(typeof i=="number"||i instanceof Number)&&isFinite(+i)}function wt(i,t){return xt(i)?i:t}function N(i,t){return typeof i>"u"?t:i}const ja=(i,t)=>typeof i=="string"&&i.endsWith("%")?parseFloat(i)/100:+i/t,ar=(i,t)=>typeof i=="string"&&i.endsWith("%")?parseFloat(i)/100*t:+i;function K(i,t,e){if(i&&typeof i.call=="function")return i.apply(e,t)}function Y(i,t,e,s){let n,r,o;if(nt(i))for(r=i.length,n=0;n<r;n++)t.call(e,i[n],n);else if(W(i))for(o=Object.keys(i),r=o.length,n=0;n<r;n++)t.call(e,i[o[n]],o[n])}function bi(i,t){let e,s,n,r;if(!i||!t||i.length!==t.length)return!1;for(e=0,s=i.length;e<s;++e)if(n=i[e],r=t[e],n.datasetIndex!==r.datasetIndex||n.index!==r.index)return!1;return!0}function fi(i){if(nt(i))return i.map(fi);if(W(i)){const t=Object.create(null),e=Object.keys(i),s=e.length;let n=0;for(;n<s;++n)t[e[n]]=fi(i[e[n]]);return t}return i}function lr(i){return["__proto__","prototype","constructor"].indexOf(i)===-1}function Da(i,t,e,s){if(!lr(i))return;const n=t[i],r=e[i];W(n)&&W(r)?Te(n,r,s):t[i]=fi(r)}function Te(i,t,e){const s=nt(t)?t:[t],n=s.length;if(!W(i))return i;e=e||{};const r=e.merger||Da;let o;for(let a=0;a<n;++a){if(o=s[a],!W(o))continue;const l=Object.keys(o);for(let h=0,c=l.length;h<c;++h)r(l[h],i,o,e)}return i}function Oe(i,t){return Te(i,t,{merger:Ta})}function Ta(i,t,e){if(!lr(i))return;const s=t[i],n=e[i];W(s)&&W(n)?Oe(s,n):Object.prototype.hasOwnProperty.call(t,i)||(t[i]=fi(n))}const Ys={"":i=>i,x:i=>i.x,y:i=>i.y};function Ea(i){const t=i.split("."),e=[];let s="";for(const n of t)s+=n,s.endsWith("\\")?s=s.slice(0,-1)+".":(e.push(s),s="");return e}function La(i){const t=Ea(i);return e=>{for(const s of t){if(s==="")break;e=e&&e[s]}return e}}function ee(i,t){return(Ys[t]||(Ys[t]=La(t)))(i)}function ss(i){return i.charAt(0).toUpperCase()+i.slice(1)}const Ee=i=>typeof i<"u",Wt=i=>typeof i=="function",Us=(i,t)=>{if(i.size!==t.size)return!1;for(const e of i)if(!t.has(e))return!1;return!0};function Na(i){return i.type==="mouseup"||i.type==="click"||i.type==="contextmenu"}const U=Math.PI,Q=2*U,Ia=Q+U,gi=Number.POSITIVE_INFINITY,Fa=U/180,rt=U/2,Ut=U/4,Xs=U*2/3,hr=Math.log10,Ct=Math.sign;function Re(i,t,e){return Math.abs(i-t)<e}function qs(i){const t=Math.round(i);i=Re(i,t,i/1e3)?t:i;const e=Math.pow(10,Math.floor(hr(i))),s=i/e;return(s<=1?1:s<=2?2:s<=5?5:10)*e}function za(i){const t=[],e=Math.sqrt(i);let s;for(s=1;s<e;s++)i%s===0&&(t.push(s),t.push(i/s));return e===(e|0)&&t.push(e),t.sort((n,r)=>n-r).pop(),t}function Ba(i){return typeof i=="symbol"||typeof i=="object"&&i!==null&&!(Symbol.toPrimitive in i||"toString"in i||"valueOf"in i)}function Le(i){return!Ba(i)&&!isNaN(parseFloat(i))&&isFinite(i)}function Ha(i,t){const e=Math.round(i);return e-t<=i&&e+t>=i}function Wa(i,t,e){let s,n,r;for(s=0,n=i.length;s<n;s++)r=i[s][e],isNaN(r)||(t.min=Math.min(t.min,r),t.max=Math.max(t.max,r))}function Et(i){return i*(U/180)}function Va(i){return i*(180/U)}function Ks(i){if(!xt(i))return;let t=1,e=0;for(;Math.round(i*t)/t!==i;)t*=10,e++;return e}function cr(i,t){const e=t.x-i.x,s=t.y-i.y,n=Math.sqrt(e*e+s*s);let r=Math.atan2(s,e);return r<-.5*U&&(r+=Q),{angle:r,distance:n}}function Ui(i,t){return Math.sqrt(Math.pow(t.x-i.x,2)+Math.pow(t.y-i.y,2))}function $a(i,t){return(i-t+Ia)%Q-U}function vt(i){return(i%Q+Q)%Q}function Ne(i,t,e,s){const n=vt(i),r=vt(t),o=vt(e),a=vt(r-n),l=vt(o-n),h=vt(n-r),c=vt(n-o);return n===r||n===o||s&&r===o||a>l&&h<c}function lt(i,t,e){return Math.max(t,Math.min(e,i))}function Ya(i){return lt(i,-32768,32767)}function zt(i,t,e,s=1e-6){return i>=Math.min(t,e)-s&&i<=Math.max(t,e)+s}function ns(i,t,e){e=e||(o=>i[o]<t);let s=i.length-1,n=0,r;for(;s-n>1;)r=n+s>>1,e(r)?n=r:s=r;return{lo:n,hi:s}}const Zt=(i,t,e,s)=>ns(i,e,s?n=>{const r=i[n][t];return r<e||r===e&&i[n+1][t]===e}:n=>i[n][t]<e),Ua=(i,t,e)=>ns(i,e,s=>i[s][t]>=e);function Xa(i,t,e){let s=0,n=i.length;for(;s<n&&i[s]<t;)s++;for(;n>s&&i[n-1]>e;)n--;return s>0||n<i.length?i.slice(s,n):i}const ur=["push","pop","shift","splice","unshift"];function qa(i,t){if(i._chartjs){i._chartjs.listeners.push(t);return}Object.defineProperty(i,"_chartjs",{configurable:!0,enumerable:!1,value:{listeners:[t]}}),ur.forEach(e=>{const s="_onData"+ss(e),n=i[e];Object.defineProperty(i,e,{configurable:!0,enumerable:!1,value(...r){const o=n.apply(this,r);return i._chartjs.listeners.forEach(a=>{typeof a[s]=="function"&&a[s](...r)}),o}})})}function Gs(i,t){const e=i._chartjs;if(!e)return;const s=e.listeners,n=s.indexOf(t);n!==-1&&s.splice(n,1),!(s.length>0)&&(ur.forEach(r=>{delete i[r]}),delete i._chartjs)}function dr(i){const t=new Set(i);return t.size===i.length?i:Array.from(t)}const br=function(){return typeof window>"u"?function(i){return i()}:window.requestAnimationFrame}();function fr(i,t){let e=[],s=!1;return function(...n){e=n,s||(s=!0,br.call(window,()=>{s=!1,i.apply(t,e)}))}}function Ka(i,t){let e;return function(...s){return t?(clearTimeout(e),e=setTimeout(i,t,s)):i.apply(this,s),t}}const rs=i=>i==="start"?"left":i==="end"?"right":"center",at=(i,t,e)=>i==="start"?t:i==="end"?e:(t+e)/2,Ga=(i,t,e,s)=>i===(s?"left":"right")?e:i==="center"?(t+e)/2:t;function Za(i,t,e){const s=t.length;let n=0,r=s;if(i._sorted){const{iScale:o,vScale:a,_parsed:l}=i,h=i.dataset&&i.dataset.options?i.dataset.options.spanGaps:null,c=o.axis,{min:u,max:d,minDefined:b,maxDefined:g}=o.getUserBounds();if(b){if(n=Math.min(Zt(l,c,u).lo,e?s:Zt(t,c,o.getPixelForValue(u)).lo),h){const p=l.slice(0,n+1).reverse().findIndex(x=>!$(x[a.axis]));n-=Math.max(0,p)}n=lt(n,0,s-1)}if(g){let p=Math.max(Zt(l,o.axis,d,!0).hi+1,e?0:Zt(t,c,o.getPixelForValue(d),!0).hi+1);if(h){const x=l.slice(p-1).findIndex(y=>!$(y[a.axis]));p+=Math.max(0,x)}r=lt(p,n,s)-n}else r=s-n}return{start:n,count:r}}function Ja(i){const{xScale:t,yScale:e,_scaleRanges:s}=i,n={xmin:t.min,xmax:t.max,ymin:e.min,ymax:e.max};if(!s)return i._scaleRanges=n,!0;const r=s.xmin!==t.min||s.xmax!==t.max||s.ymin!==e.min||s.ymax!==e.max;return Object.assign(s,n),r}const Ge=i=>i===0||i===1,Zs=(i,t,e)=>-(Math.pow(2,10*(i-=1))*Math.sin((i-t)*Q/e)),Js=(i,t,e)=>Math.pow(2,-10*i)*Math.sin((i-t)*Q/e)+1,Ae={linear:i=>i,easeInQuad:i=>i*i,easeOutQuad:i=>-i*(i-2),easeInOutQuad:i=>(i/=.5)<1?.5*i*i:-.5*(--i*(i-2)-1),easeInCubic:i=>i*i*i,easeOutCubic:i=>(i-=1)*i*i+1,easeInOutCubic:i=>(i/=.5)<1?.5*i*i*i:.5*((i-=2)*i*i+2),easeInQuart:i=>i*i*i*i,easeOutQuart:i=>-((i-=1)*i*i*i-1),easeInOutQuart:i=>(i/=.5)<1?.5*i*i*i*i:-.5*((i-=2)*i*i*i-2),easeInQuint:i=>i*i*i*i*i,easeOutQuint:i=>(i-=1)*i*i*i*i+1,easeInOutQuint:i=>(i/=.5)<1?.5*i*i*i*i*i:.5*((i-=2)*i*i*i*i+2),easeInSine:i=>-Math.cos(i*rt)+1,easeOutSine:i=>Math.sin(i*rt),easeInOutSine:i=>-.5*(Math.cos(U*i)-1),easeInExpo:i=>i===0?0:Math.pow(2,10*(i-1)),easeOutExpo:i=>i===1?1:-Math.pow(2,-10*i)+1,easeInOutExpo:i=>Ge(i)?i:i<.5?.5*Math.pow(2,10*(i*2-1)):.5*(-Math.pow(2,-10*(i*2-1))+2),easeInCirc:i=>i>=1?i:-(Math.sqrt(1-i*i)-1),easeOutCirc:i=>Math.sqrt(1-(i-=1)*i),easeInOutCirc:i=>(i/=.5)<1?-.5*(Math.sqrt(1-i*i)-1):.5*(Math.sqrt(1-(i-=2)*i)+1),easeInElastic:i=>Ge(i)?i:Zs(i,.075,.3),easeOutElastic:i=>Ge(i)?i:Js(i,.075,.3),easeInOutElastic(i){return Ge(i)?i:i<.5?.5*Zs(i*2,.1125,.45):.5+.5*Js(i*2-1,.1125,.45)},easeInBack(i){return i*i*((1.70158+1)*i-1.70158)},easeOutBack(i){return(i-=1)*i*((1.70158+1)*i+1.70158)+1},easeInOutBack(i){let t=1.70158;return(i/=.5)<1?.5*(i*i*(((t*=1.525)+1)*i-t)):.5*((i-=2)*i*(((t*=1.525)+1)*i+t)+2)},easeInBounce:i=>1-Ae.easeOutBounce(1-i),easeOutBounce(i){return i<1/2.75?7.5625*i*i:i<2/2.75?7.5625*(i-=1.5/2.75)*i+.75:i<2.5/2.75?7.5625*(i-=2.25/2.75)*i+.9375:7.5625*(i-=2.625/2.75)*i+.984375},easeInOutBounce:i=>i<.5?Ae.easeInBounce(i*2)*.5:Ae.easeOutBounce(i*2-1)*.5+.5};function os(i){if(i&&typeof i=="object"){const t=i.toString();return t==="[object CanvasPattern]"||t==="[object CanvasGradient]"}return!1}function Qs(i){return os(i)?i:new De(i)}function Ei(i){return os(i)?i:new De(i).saturate(.5).darken(.1).hexString()}const Qa=["x","y","borderWidth","radius","tension"],tl=["color","borderColor","backgroundColor"];function el(i){i.set("animation",{delay:void 0,duration:1e3,easing:"easeOutQuart",fn:void 0,from:void 0,loop:void 0,to:void 0,type:void 0}),i.describe("animation",{_fallback:!1,_indexable:!1,_scriptable:t=>t!=="onProgress"&&t!=="onComplete"&&t!=="fn"}),i.set("animations",{colors:{type:"color",properties:tl},numbers:{type:"number",properties:Qa}}),i.describe("animations",{_fallback:"animation"}),i.set("transitions",{active:{animation:{duration:400}},resize:{animation:{duration:0}},show:{animations:{colors:{from:"transparent"},visible:{type:"boolean",duration:0}}},hide:{animations:{colors:{to:"transparent"},visible:{type:"boolean",easing:"linear",fn:t=>t|0}}}})}function il(i){i.set("layout",{autoPadding:!0,padding:{top:0,right:0,bottom:0,left:0}})}const tn=new Map;function sl(i,t){t=t||{};const e=i+JSON.stringify(t);let s=tn.get(e);return s||(s=new Intl.NumberFormat(i,t),tn.set(e,s)),s}function as(i,t,e){return sl(t,e).format(i)}const nl={values(i){return nt(i)?i:""+i},numeric(i,t,e){if(i===0)return"0";const s=this.chart.options.locale;let n,r=i;if(e.length>1){const h=Math.max(Math.abs(e[0].value),Math.abs(e[e.length-1].value));(h<1e-4||h>1e15)&&(n="scientific"),r=rl(i,e)}const o=hr(Math.abs(r)),a=isNaN(o)?1:Math.max(Math.min(-1*Math.floor(o),20),0),l={notation:n,minimumFractionDigits:a,maximumFractionDigits:a};return Object.assign(l,this.options.ticks.format),as(i,s,l)}};function rl(i,t){let e=t.length>3?t[2].value-t[1].value:t[1].value-t[0].value;return Math.abs(e)>=1&&i!==Math.floor(i)&&(e=i-Math.floor(i)),e}var gr={formatters:nl};function ol(i){i.set("scale",{display:!0,offset:!1,reverse:!1,beginAtZero:!1,bounds:"ticks",clip:!0,grace:0,grid:{display:!0,lineWidth:1,drawOnChartArea:!0,drawTicks:!0,tickLength:8,tickWidth:(t,e)=>e.lineWidth,tickColor:(t,e)=>e.color,offset:!1},border:{display:!0,dash:[],dashOffset:0,width:1},title:{display:!1,text:"",padding:{top:4,bottom:4}},ticks:{minRotation:0,maxRotation:50,mirror:!1,textStrokeWidth:0,textStrokeColor:"",padding:3,display:!0,autoSkip:!0,autoSkipPadding:3,labelOffset:0,callback:gr.formatters.values,minor:{},major:{},align:"center",crossAlign:"near",showLabelBackdrop:!1,backdropColor:"rgba(255, 255, 255, 0.75)",backdropPadding:2}}),i.route("scale.ticks","color","","color"),i.route("scale.grid","color","","borderColor"),i.route("scale.border","color","","borderColor"),i.route("scale.title","color","","color"),i.describe("scale",{_fallback:!1,_scriptable:t=>!t.startsWith("before")&&!t.startsWith("after")&&t!=="callback"&&t!=="parser",_indexable:t=>t!=="borderDash"&&t!=="tickBorderDash"&&t!=="dash"}),i.describe("scales",{_fallback:"scale"}),i.describe("scale.ticks",{_scriptable:t=>t!=="backdropPadding"&&t!=="callback",_indexable:t=>t!=="backdropPadding"})}const ie=Object.create(null),Xi=Object.create(null);function je(i,t){if(!t)return i;const e=t.split(".");for(let s=0,n=e.length;s<n;++s){const r=e[s];i=i[r]||(i[r]=Object.create(null))}return i}function Li(i,t,e){return typeof t=="string"?Te(je(i,t),e):Te(je(i,""),t)}class al{constructor(t,e){this.animation=void 0,this.backgroundColor="rgba(0,0,0,0.1)",this.borderColor="rgba(0,0,0,0.1)",this.color="#666",this.datasets={},this.devicePixelRatio=s=>s.chart.platform.getDevicePixelRatio(),this.elements={},this.events=["mousemove","mouseout","click","touchstart","touchmove"],this.font={family:"'Helvetica Neue', 'Helvetica', 'Arial', sans-serif",size:12,style:"normal",lineHeight:1.2,weight:null},this.hover={},this.hoverBackgroundColor=(s,n)=>Ei(n.backgroundColor),this.hoverBorderColor=(s,n)=>Ei(n.borderColor),this.hoverColor=(s,n)=>Ei(n.color),this.indexAxis="x",this.interaction={mode:"nearest",intersect:!0,includeInvisible:!1},this.maintainAspectRatio=!0,this.onHover=null,this.onClick=null,this.parsing=!0,this.plugins={},this.responsive=!0,this.scale=void 0,this.scales={},this.showLine=!0,this.drawActiveElementsOnTop=!0,this.describe(t),this.apply(e)}set(t,e){return Li(this,t,e)}get(t){return je(this,t)}describe(t,e){return Li(Xi,t,e)}override(t,e){return Li(ie,t,e)}route(t,e,s,n){const r=je(this,t),o=je(this,s),a="_"+e;Object.defineProperties(r,{[a]:{value:r[e],writable:!0},[e]:{enumerable:!0,get(){const l=this[a],h=o[n];return W(l)?Object.assign({},h,l):N(l,h)},set(l){this[a]=l}}})}apply(t){t.forEach(e=>e(this))}}var et=new al({_scriptable:i=>!i.startsWith("on"),_indexable:i=>i!=="events",hover:{_fallback:"interaction"},interaction:{_scriptable:!1,_indexable:!1}},[el,il,ol]);function ll(i){return!i||$(i.size)||$(i.family)?null:(i.style?i.style+" ":"")+(i.weight?i.weight+" ":"")+i.size+"px "+i.family}function en(i,t,e,s,n){let r=t[n];return r||(r=t[n]=i.measureText(n).width,e.push(n)),r>s&&(s=r),s}function Xt(i,t,e){const s=i.currentDevicePixelRatio,n=e!==0?Math.max(e/2,.5):0;return Math.round((t-n)*s)/s+n}function sn(i,t){!t&&!i||(t=t||i.getContext("2d"),t.save(),t.resetTransform(),t.clearRect(0,0,i.width,i.height),t.restore())}function qi(i,t,e,s){pr(i,t,e,s,null)}function pr(i,t,e,s,n){let r,o,a,l,h,c,u,d;const b=t.pointStyle,g=t.rotation,p=t.radius;let x=(g||0)*Fa;if(b&&typeof b=="object"&&(r=b.toString(),r==="[object HTMLImageElement]"||r==="[object HTMLCanvasElement]")){i.save(),i.translate(e,s),i.rotate(x),i.drawImage(b,-b.width/2,-b.height/2,b.width,b.height),i.restore();return}if(!(isNaN(p)||p<=0)){switch(i.beginPath(),b){default:n?i.ellipse(e,s,n/2,p,0,0,Q):i.arc(e,s,p,0,Q),i.closePath();break;case"triangle":c=n?n/2:p,i.moveTo(e+Math.sin(x)*c,s-Math.cos(x)*p),x+=Xs,i.lineTo(e+Math.sin(x)*c,s-Math.cos(x)*p),x+=Xs,i.lineTo(e+Math.sin(x)*c,s-Math.cos(x)*p),i.closePath();break;case"rectRounded":h=p*.516,l=p-h,o=Math.cos(x+Ut)*l,u=Math.cos(x+Ut)*(n?n/2-h:l),a=Math.sin(x+Ut)*l,d=Math.sin(x+Ut)*(n?n/2-h:l),i.arc(e-u,s-a,h,x-U,x-rt),i.arc(e+d,s-o,h,x-rt,x),i.arc(e+u,s+a,h,x,x+rt),i.arc(e-d,s+o,h,x+rt,x+U),i.closePath();break;case"rect":if(!g){l=Math.SQRT1_2*p,c=n?n/2:l,i.rect(e-c,s-l,2*c,2*l);break}x+=Ut;case"rectRot":u=Math.cos(x)*(n?n/2:p),o=Math.cos(x)*p,a=Math.sin(x)*p,d=Math.sin(x)*(n?n/2:p),i.moveTo(e-u,s-a),i.lineTo(e+d,s-o),i.lineTo(e+u,s+a),i.lineTo(e-d,s+o),i.closePath();break;case"crossRot":x+=Ut;case"cross":u=Math.cos(x)*(n?n/2:p),o=Math.cos(x)*p,a=Math.sin(x)*p,d=Math.sin(x)*(n?n/2:p),i.moveTo(e-u,s-a),i.lineTo(e+u,s+a),i.moveTo(e+d,s-o),i.lineTo(e-d,s+o);break;case"star":u=Math.cos(x)*(n?n/2:p),o=Math.cos(x)*p,a=Math.sin(x)*p,d=Math.sin(x)*(n?n/2:p),i.moveTo(e-u,s-a),i.lineTo(e+u,s+a),i.moveTo(e+d,s-o),i.lineTo(e-d,s+o),x+=Ut,u=Math.cos(x)*(n?n/2:p),o=Math.cos(x)*p,a=Math.sin(x)*p,d=Math.sin(x)*(n?n/2:p),i.moveTo(e-u,s-a),i.lineTo(e+u,s+a),i.moveTo(e+d,s-o),i.lineTo(e-d,s+o);break;case"line":o=n?n/2:Math.cos(x)*p,a=Math.sin(x)*p,i.moveTo(e-o,s-a),i.lineTo(e+o,s+a);break;case"dash":i.moveTo(e,s),i.lineTo(e+Math.cos(x)*(n?n/2:p),s+Math.sin(x)*p);break;case!1:i.closePath();break}i.fill(),t.borderWidth>0&&i.stroke()}}function Ie(i,t,e){return e=e||.5,!t||i&&i.x>t.left-e&&i.x<t.right+e&&i.y>t.top-e&&i.y<t.bottom+e}function ls(i,t){i.save(),i.beginPath(),i.rect(t.left,t.top,t.right-t.left,t.bottom-t.top),i.clip()}function hs(i){i.restore()}function hl(i,t,e,s,n){if(!t)return i.lineTo(e.x,e.y);if(n==="middle"){const r=(t.x+e.x)/2;i.lineTo(r,t.y),i.lineTo(r,e.y)}else n==="after"!=!!s?i.lineTo(t.x,e.y):i.lineTo(e.x,t.y);i.lineTo(e.x,e.y)}function cl(i,t,e,s){if(!t)return i.lineTo(e.x,e.y);i.bezierCurveTo(s?t.cp1x:t.cp2x,s?t.cp1y:t.cp2y,s?e.cp2x:e.cp1x,s?e.cp2y:e.cp1y,e.x,e.y)}function ul(i,t){t.translation&&i.translate(t.translation[0],t.translation[1]),$(t.rotation)||i.rotate(t.rotation),t.color&&(i.fillStyle=t.color),t.textAlign&&(i.textAlign=t.textAlign),t.textBaseline&&(i.textBaseline=t.textBaseline)}function dl(i,t,e,s,n){if(n.strikethrough||n.underline){const r=i.measureText(s),o=t-r.actualBoundingBoxLeft,a=t+r.actualBoundingBoxRight,l=e-r.actualBoundingBoxAscent,h=e+r.actualBoundingBoxDescent,c=n.strikethrough?(l+h)/2:h;i.strokeStyle=i.fillStyle,i.beginPath(),i.lineWidth=n.decorationWidth||2,i.moveTo(o,c),i.lineTo(a,c),i.stroke()}}function bl(i,t){const e=i.fillStyle;i.fillStyle=t.color,i.fillRect(t.left,t.top,t.width,t.height),i.fillStyle=e}function Fe(i,t,e,s,n,r={}){const o=nt(t)?t:[t],a=r.strokeWidth>0&&r.strokeColor!=="";let l,h;for(i.save(),i.font=n.string,ul(i,r),l=0;l<o.length;++l)h=o[l],r.backdrop&&bl(i,r.backdrop),a&&(r.strokeColor&&(i.strokeStyle=r.strokeColor),$(r.strokeWidth)||(i.lineWidth=r.strokeWidth),i.strokeText(h,e,s,r.maxWidth)),i.fillText(h,e,s,r.maxWidth),dl(i,e,s,h,r),s+=Number(n.lineHeight);i.restore()}function pi(i,t){const{x:e,y:s,w:n,h:r,radius:o}=t;i.arc(e+o.topLeft,s+o.topLeft,o.topLeft,1.5*U,U,!0),i.lineTo(e,s+r-o.bottomLeft),i.arc(e+o.bottomLeft,s+r-o.bottomLeft,o.bottomLeft,U,rt,!0),i.lineTo(e+n-o.bottomRight,s+r),i.arc(e+n-o.bottomRight,s+r-o.bottomRight,o.bottomRight,rt,0,!0),i.lineTo(e+n,s+o.topRight),i.arc(e+n-o.topRight,s+o.topRight,o.topRight,0,-rt,!0),i.lineTo(e+o.topLeft,s)}const fl=/^(normal|(\d+(?:\.\d+)?)(px|em|%)?)$/,gl=/^(normal|italic|initial|inherit|unset|(oblique( -?[0-9]?[0-9]deg)?))$/;function pl(i,t){const e=(""+i).match(fl);if(!e||e[1]==="normal")return t*1.2;switch(i=+e[2],e[3]){case"px":return i;case"%":i/=100;break}return t*i}const ml=i=>+i||0;function cs(i,t){const e={},s=W(t),n=s?Object.keys(t):t,r=W(i)?s?o=>N(i[o],i[t[o]]):o=>i[o]:()=>i;for(const o of n)e[o]=ml(r(o));return e}function mr(i){return cs(i,{top:"y",right:"x",bottom:"y",left:"x"})}function le(i){return cs(i,["topLeft","topRight","bottomLeft","bottomRight"])}function yt(i){const t=mr(i);return t.width=t.left+t.right,t.height=t.top+t.bottom,t}function ht(i,t){i=i||{},t=t||et.font;let e=N(i.size,t.size);typeof e=="string"&&(e=parseInt(e,10));let s=N(i.style,t.style);s&&!(""+s).match(gl)&&(console.warn('Invalid font style specified: "'+s+'"'),s=void 0);const n={family:N(i.family,t.family),lineHeight:pl(N(i.lineHeight,t.lineHeight),e),size:e,style:s,weight:N(i.weight,t.weight),string:""};return n.string=ll(n),n}function Ze(i,t,e,s){let n,r,o;for(n=0,r=i.length;n<r;++n)if(o=i[n],o!==void 0&&o!==void 0)return o}function xl(i,t,e){const{min:s,max:n}=i,r=ar(t,(n-s)/2),o=(a,l)=>e&&a===0?0:a+l;return{min:o(s,-Math.abs(r)),max:o(n,r)}}function se(i,t){return Object.assign(Object.create(i),t)}function us(i,t=[""],e,s,n=()=>i[0]){const r=e||i;typeof s>"u"&&(s=vr("_fallback",i));const o={[Symbol.toStringTag]:"Object",_cacheable:!0,_scopes:i,_rootScopes:r,_fallback:s,_getTarget:n,override:a=>us([a,...i],t,r,s)};return new Proxy(o,{deleteProperty(a,l){return delete a[l],delete a._keys,delete i[0][l],!0},get(a,l){return yr(a,l,()=>Cl(l,t,i,a))},getOwnPropertyDescriptor(a,l){return Reflect.getOwnPropertyDescriptor(a._scopes[0],l)},getPrototypeOf(){return Reflect.getPrototypeOf(i[0])},has(a,l){return rn(a).includes(l)},ownKeys(a){return rn(a)},set(a,l,h){const c=a._storage||(a._storage=n());return a[l]=c[l]=h,delete a._keys,!0}})}function ce(i,t,e,s){const n={_cacheable:!1,_proxy:i,_context:t,_subProxy:e,_stack:new Set,_descriptors:xr(i,s),setContext:r=>ce(i,r,e,s),override:r=>ce(i.override(r),t,e,s)};return new Proxy(n,{deleteProperty(r,o){return delete r[o],delete i[o],!0},get(r,o,a){return yr(r,o,()=>_l(r,o,a))},getOwnPropertyDescriptor(r,o){return r._descriptors.allKeys?Reflect.has(i,o)?{enumerable:!0,configurable:!0}:void 0:Reflect.getOwnPropertyDescriptor(i,o)},getPrototypeOf(){return Reflect.getPrototypeOf(i)},has(r,o){return Reflect.has(i,o)},ownKeys(){return Reflect.ownKeys(i)},set(r,o,a){return i[o]=a,delete r[o],!0}})}function xr(i,t={scriptable:!0,indexable:!0}){const{_scriptable:e=t.scriptable,_indexable:s=t.indexable,_allKeys:n=t.allKeys}=i;return{allKeys:n,scriptable:e,indexable:s,isScriptable:Wt(e)?e:()=>e,isIndexable:Wt(s)?s:()=>s}}const yl=(i,t)=>i?i+ss(t):t,ds=(i,t)=>W(t)&&i!=="adapters"&&(Object.getPrototypeOf(t)===null||t.constructor===Object);function yr(i,t,e){if(Object.prototype.hasOwnProperty.call(i,t)||t==="constructor")return i[t];const s=e();return i[t]=s,s}function _l(i,t,e){const{_proxy:s,_context:n,_subProxy:r,_descriptors:o}=i;let a=s[t];return Wt(a)&&o.isScriptable(t)&&(a=vl(t,a,i,e)),nt(a)&&a.length&&(a=kl(t,a,i,o.isIndexable)),ds(t,a)&&(a=ce(a,n,r&&r[t],o)),a}function vl(i,t,e,s){const{_proxy:n,_context:r,_subProxy:o,_stack:a}=e;if(a.has(i))throw new Error("Recursion detected: "+Array.from(a).join("->")+"->"+i);a.add(i);let l=t(r,o||s);return a.delete(i),ds(i,l)&&(l=bs(n._scopes,n,i,l)),l}function kl(i,t,e,s){const{_proxy:n,_context:r,_subProxy:o,_descriptors:a}=e;if(typeof r.index<"u"&&s(i))return t[r.index%t.length];if(W(t[0])){const l=t,h=n._scopes.filter(c=>c!==l);t=[];for(const c of l){const u=bs(h,n,i,c);t.push(ce(u,r,o&&o[i],a))}}return t}function _r(i,t,e){return Wt(i)?i(t,e):i}const wl=(i,t)=>i===!0?t:typeof i=="string"?ee(t,i):void 0;function Sl(i,t,e,s,n){for(const r of t){const o=wl(e,r);if(o){i.add(o);const a=_r(o._fallback,e,n);if(typeof a<"u"&&a!==e&&a!==s)return a}else if(o===!1&&typeof s<"u"&&e!==s)return null}return!1}function bs(i,t,e,s){const n=t._rootScopes,r=_r(t._fallback,e,s),o=[...i,...n],a=new Set;a.add(s);let l=nn(a,o,e,r||e,s);return l===null||typeof r<"u"&&r!==e&&(l=nn(a,o,r,l,s),l===null)?!1:us(Array.from(a),[""],n,r,()=>Ml(t,e,s))}function nn(i,t,e,s,n){for(;e;)e=Sl(i,t,e,s,n);return e}function Ml(i,t,e){const s=i._getTarget();t in s||(s[t]={});const n=s[t];return nt(n)&&W(e)?e:n||{}}function Cl(i,t,e,s){let n;for(const r of t)if(n=vr(yl(r,i),e),typeof n<"u")return ds(i,n)?bs(e,s,i,n):n}function vr(i,t){for(const e of t){if(!e)continue;const s=e[i];if(typeof s<"u")return s}}function rn(i){let t=i._keys;return t||(t=i._keys=Pl(i._scopes)),t}function Pl(i){const t=new Set;for(const e of i)for(const s of Object.keys(e).filter(n=>!n.startsWith("_")))t.add(s);return Array.from(t)}const Ol=Number.EPSILON||1e-14,ue=(i,t)=>t<i.length&&!i[t].skip&&i[t],kr=i=>i==="x"?"y":"x";function Rl(i,t,e,s){const n=i.skip?t:i,r=t,o=e.skip?t:e,a=Ui(r,n),l=Ui(o,r);let h=a/(a+l),c=l/(a+l);h=isNaN(h)?0:h,c=isNaN(c)?0:c;const u=s*h,d=s*c;return{previous:{x:r.x-u*(o.x-n.x),y:r.y-u*(o.y-n.y)},next:{x:r.x+d*(o.x-n.x),y:r.y+d*(o.y-n.y)}}}function Al(i,t,e){const s=i.length;let n,r,o,a,l,h=ue(i,0);for(let c=0;c<s-1;++c)if(l=h,h=ue(i,c+1),!(!l||!h)){if(Re(t[c],0,Ol)){e[c]=e[c+1]=0;continue}n=e[c]/t[c],r=e[c+1]/t[c],a=Math.pow(n,2)+Math.pow(r,2),!(a<=9)&&(o=3/Math.sqrt(a),e[c]=n*o*t[c],e[c+1]=r*o*t[c])}}function jl(i,t,e="x"){const s=kr(e),n=i.length;let r,o,a,l=ue(i,0);for(let h=0;h<n;++h){if(o=a,a=l,l=ue(i,h+1),!a)continue;const c=a[e],u=a[s];o&&(r=(c-o[e])/3,a[`cp1${e}`]=c-r,a[`cp1${s}`]=u-r*t[h]),l&&(r=(l[e]-c)/3,a[`cp2${e}`]=c+r,a[`cp2${s}`]=u+r*t[h])}}function Dl(i,t="x"){const e=kr(t),s=i.length,n=Array(s).fill(0),r=Array(s);let o,a,l,h=ue(i,0);for(o=0;o<s;++o)if(a=l,l=h,h=ue(i,o+1),!!l){if(h){const c=h[t]-l[t];n[o]=c!==0?(h[e]-l[e])/c:0}r[o]=a?h?Ct(n[o-1])!==Ct(n[o])?0:(n[o-1]+n[o])/2:n[o-1]:n[o]}Al(i,n,r),jl(i,r,t)}function Je(i,t,e){return Math.max(Math.min(i,e),t)}function Tl(i,t){let e,s,n,r,o,a=Ie(i[0],t);for(e=0,s=i.length;e<s;++e)o=r,r=a,a=e<s-1&&Ie(i[e+1],t),r&&(n=i[e],o&&(n.cp1x=Je(n.cp1x,t.left,t.right),n.cp1y=Je(n.cp1y,t.top,t.bottom)),a&&(n.cp2x=Je(n.cp2x,t.left,t.right),n.cp2y=Je(n.cp2y,t.top,t.bottom)))}function El(i,t,e,s,n){let r,o,a,l;if(t.spanGaps&&(i=i.filter(h=>!h.skip)),t.cubicInterpolationMode==="monotone")Dl(i,n);else{let h=s?i[i.length-1]:i[0];for(r=0,o=i.length;r<o;++r)a=i[r],l=Rl(h,a,i[Math.min(r+1,o-(s?0:1))%o],t.tension),a.cp1x=l.previous.x,a.cp1y=l.previous.y,a.cp2x=l.next.x,a.cp2y=l.next.y,h=a}t.capBezierPoints&&Tl(i,e)}function fs(){return typeof window<"u"&&typeof document<"u"}function gs(i){let t=i.parentNode;return t&&t.toString()==="[object ShadowRoot]"&&(t=t.host),t}function mi(i,t,e){let s;return typeof i=="string"?(s=parseInt(i,10),i.indexOf("%")!==-1&&(s=s/100*t.parentNode[e])):s=i,s}const wi=i=>i.ownerDocument.defaultView.getComputedStyle(i,null);function Ll(i,t){return wi(i).getPropertyValue(t)}const Nl=["top","right","bottom","left"];function Qt(i,t,e){const s={};e=e?"-"+e:"";for(let n=0;n<4;n++){const r=Nl[n];s[r]=parseFloat(i[t+"-"+r+e])||0}return s.width=s.left+s.right,s.height=s.top+s.bottom,s}const Il=(i,t,e)=>(i>0||t>0)&&(!e||!e.shadowRoot);function Fl(i,t){const e=i.touches,s=e&&e.length?e[0]:i,{offsetX:n,offsetY:r}=s;let o=!1,a,l;if(Il(n,r,i.target))a=n,l=r;else{const h=t.getBoundingClientRect();a=s.clientX-h.left,l=s.clientY-h.top,o=!0}return{x:a,y:l,box:o}}function Kt(i,t){if("native"in i)return i;const{canvas:e,currentDevicePixelRatio:s}=t,n=wi(e),r=n.boxSizing==="border-box",o=Qt(n,"padding"),a=Qt(n,"border","width"),{x:l,y:h,box:c}=Fl(i,e),u=o.left+(c&&a.left),d=o.top+(c&&a.top);let{width:b,height:g}=t;return r&&(b-=o.width+a.width,g-=o.height+a.height),{x:Math.round((l-u)/b*e.width/s),y:Math.round((h-d)/g*e.height/s)}}function zl(i,t,e){let s,n;if(t===void 0||e===void 0){const r=i&&gs(i);if(!r)t=i.clientWidth,e=i.clientHeight;else{const o=r.getBoundingClientRect(),a=wi(r),l=Qt(a,"border","width"),h=Qt(a,"padding");t=o.width-h.width-l.width,e=o.height-h.height-l.height,s=mi(a.maxWidth,r,"clientWidth"),n=mi(a.maxHeight,r,"clientHeight")}}return{width:t,height:e,maxWidth:s||gi,maxHeight:n||gi}}const Qe=i=>Math.round(i*10)/10;function Bl(i,t,e,s){const n=wi(i),r=Qt(n,"margin"),o=mi(n.maxWidth,i,"clientWidth")||gi,a=mi(n.maxHeight,i,"clientHeight")||gi,l=zl(i,t,e);let{width:h,height:c}=l;if(n.boxSizing==="content-box"){const d=Qt(n,"border","width"),b=Qt(n,"padding");h-=b.width+d.width,c-=b.height+d.height}return h=Math.max(0,h-r.width),c=Math.max(0,s?h/s:c-r.height),h=Qe(Math.min(h,o,l.maxWidth)),c=Qe(Math.min(c,a,l.maxHeight)),h&&!c&&(c=Qe(h/2)),(t!==void 0||e!==void 0)&&s&&l.height&&c>l.height&&(c=l.height,h=Qe(Math.floor(c*s))),{width:h,height:c}}function on(i,t,e){const s=t||1,n=Math.floor(i.height*s),r=Math.floor(i.width*s);i.height=Math.floor(i.height),i.width=Math.floor(i.width);const o=i.canvas;return o.style&&(e||!o.style.height&&!o.style.width)&&(o.style.height=`${i.height}px`,o.style.width=`${i.width}px`),i.currentDevicePixelRatio!==s||o.height!==n||o.width!==r?(i.currentDevicePixelRatio=s,o.height=n,o.width=r,i.ctx.setTransform(s,0,0,s,0,0),!0):!1}const Hl=function(){let i=!1;try{const t={get passive(){return i=!0,!1}};fs()&&(window.addEventListener("test",null,t),window.removeEventListener("test",null,t))}catch{}return i}();function an(i,t){const e=Ll(i,t),s=e&&e.match(/^(\d+)(\.\d+)?px$/);return s?+s[1]:void 0}function Gt(i,t,e,s){return{x:i.x+e*(t.x-i.x),y:i.y+e*(t.y-i.y)}}function Wl(i,t,e,s){return{x:i.x+e*(t.x-i.x),y:s==="middle"?e<.5?i.y:t.y:s==="after"?e<1?i.y:t.y:e>0?t.y:i.y}}function Vl(i,t,e,s){const n={x:i.cp2x,y:i.cp2y},r={x:t.cp1x,y:t.cp1y},o=Gt(i,n,e),a=Gt(n,r,e),l=Gt(r,t,e),h=Gt(o,a,e),c=Gt(a,l,e);return Gt(h,c,e)}const $l=function(i,t){return{x(e){return i+i+t-e},setWidth(e){t=e},textAlign(e){return e==="center"?e:e==="right"?"left":"right"},xPlus(e,s){return e-s},leftForLtr(e,s){return e-s}}},Yl=function(){return{x(i){return i},setWidth(i){},textAlign(i){return i},xPlus(i,t){return i+t},leftForLtr(i,t){return i}}};function he(i,t,e){return i?$l(t,e):Yl()}function wr(i,t){let e,s;(t==="ltr"||t==="rtl")&&(e=i.canvas.style,s=[e.getPropertyValue("direction"),e.getPropertyPriority("direction")],e.setProperty("direction",t,"important"),i.prevTextDirection=s)}function Sr(i,t){t!==void 0&&(delete i.prevTextDirection,i.canvas.style.setProperty("direction",t[0],t[1]))}function Mr(i){return i==="angle"?{between:Ne,compare:$a,normalize:vt}:{between:zt,compare:(t,e)=>t-e,normalize:t=>t}}function ln({start:i,end:t,count:e,loop:s,style:n}){return{start:i%e,end:t%e,loop:s&&(t-i+1)%e===0,style:n}}function Ul(i,t,e){const{property:s,start:n,end:r}=e,{between:o,normalize:a}=Mr(s),l=t.length;let{start:h,end:c,loop:u}=i,d,b;if(u){for(h+=l,c+=l,d=0,b=l;d<b&&o(a(t[h%l][s]),n,r);++d)h--,c--;h%=l,c%=l}return c<h&&(c+=l),{start:h,end:c,loop:u,style:i.style}}function Xl(i,t,e){if(!e)return[i];const{property:s,start:n,end:r}=e,o=t.length,{compare:a,between:l,normalize:h}=Mr(s),{start:c,end:u,loop:d,style:b}=Ul(i,t,e),g=[];let p=!1,x=null,y,_,w;const M=()=>l(n,w,y)&&a(n,w)!==0,v=()=>a(r,y)===0||l(r,w,y),O=()=>p||M(),S=()=>!p||v();for(let C=c,A=c;C<=u;++C)_=t[C%o],!_.skip&&(y=h(_[s]),y!==w&&(p=l(y,n,r),x===null&&O()&&(x=a(y,n)===0?C:A),x!==null&&S()&&(g.push(ln({start:x,end:C,loop:d,count:o,style:b})),x=null),A=C,w=y));return x!==null&&g.push(ln({start:x,end:u,loop:d,count:o,style:b})),g}function ql(i,t){const e=[],s=i.segments;for(let n=0;n<s.length;n++){const r=Xl(s[n],i.points,t);r.length&&e.push(...r)}return e}function Kl(i,t,e,s){let n=0,r=t-1;if(e&&!s)for(;n<t&&!i[n].skip;)n++;for(;n<t&&i[n].skip;)n++;for(n%=t,e&&(r+=n);r>n&&i[r%t].skip;)r--;return r%=t,{start:n,end:r}}function Gl(i,t,e,s){const n=i.length,r=[];let o=t,a=i[t],l;for(l=t+1;l<=e;++l){const h=i[l%n];h.skip||h.stop?a.skip||(s=!1,r.push({start:t%n,end:(l-1)%n,loop:s}),t=o=h.stop?l:null):(o=l,a.skip&&(t=l)),a=h}return o!==null&&r.push({start:t%n,end:o%n,loop:s}),r}function Zl(i,t){const e=i.points,s=i.options.spanGaps,n=e.length;if(!n)return[];const r=!!i._loop,{start:o,end:a}=Kl(e,n,r,s);if(s===!0)return hn(i,[{start:o,end:a,loop:r}],e,t);const l=a<o?a+n:a,h=!!i._fullLoop&&o===0&&a===n-1;return hn(i,Gl(e,o,l,h),e,t)}function hn(i,t,e,s){return!s||!s.setContext||!e?t:Jl(i,t,e,s)}function Jl(i,t,e,s){const n=i._chart.getContext(),r=cn(i.options),{_datasetIndex:o,options:{spanGaps:a}}=i,l=e.length,h=[];let c=r,u=t[0].start,d=u;function b(g,p,x,y){const _=a?-1:1;if(g!==p){for(g+=l;e[g%l].skip;)g-=_;for(;e[p%l].skip;)p+=_;g%l!==p%l&&(h.push({start:g%l,end:p%l,loop:x,style:y}),c=y,u=p%l)}}for(const g of t){u=a?u:g.start;let p=e[u%l],x;for(d=u+1;d<=g.end;d++){const y=e[d%l];x=cn(s.setContext(se(n,{type:"segment",p0:p,p1:y,p0DataIndex:(d-1)%l,p1DataIndex:d%l,datasetIndex:o}))),Ql(x,c)&&b(u,d-1,g.loop,c),p=y,c=x}u<d-1&&b(u,d-1,g.loop,c)}return h}function cn(i){return{backgroundColor:i.backgroundColor,borderCapStyle:i.borderCapStyle,borderDash:i.borderDash,borderDashOffset:i.borderDashOffset,borderJoinStyle:i.borderJoinStyle,borderWidth:i.borderWidth,borderColor:i.borderColor}}function Ql(i,t){if(!t)return!1;const e=[],s=function(n,r){return os(r)?(e.includes(r)||e.push(r),e.indexOf(r)):r};return JSON.stringify(i,s)!==JSON.stringify(t,s)}function ti(i,t,e){return i.options.clip?i[e]:t[e]}function th(i,t){const{xScale:e,yScale:s}=i;return e&&s?{left:ti(e,t,"left"),right:ti(e,t,"right"),top:ti(s,t,"top"),bottom:ti(s,t,"bottom")}:t}function eh(i,t){const e=t._clip;if(e.disabled)return!1;const s=th(t,i.chartArea);return{left:e.left===!1?0:s.left-(e.left===!0?0:e.left),right:e.right===!1?i.width:s.right+(e.right===!0?0:e.right),top:e.top===!1?0:s.top-(e.top===!0?0:e.top),bottom:e.bottom===!1?i.height:s.bottom+(e.bottom===!0?0:e.bottom)}}/*!
|
|
40
|
+
*/function Rt(){}const Aa=(()=>{let i=0;return()=>i++})();function $(i){return i==null}function nt(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 W(i){return i!==null&&Object.prototype.toString.call(i)==="[object Object]"}function xt(i){return(typeof i=="number"||i instanceof Number)&&isFinite(+i)}function wt(i,t){return xt(i)?i:t}function N(i,t){return typeof i>"u"?t:i}const Da=(i,t)=>typeof i=="string"&&i.endsWith("%")?parseFloat(i)/100:+i/t,ar=(i,t)=>typeof i=="string"&&i.endsWith("%")?parseFloat(i)/100*t:+i;function G(i,t,e){if(i&&typeof i.call=="function")return i.apply(e,t)}function Y(i,t,e,s){let n,r,o;if(nt(i))for(r=i.length,n=0;n<r;n++)t.call(e,i[n],n);else if(W(i))for(o=Object.keys(i),r=o.length,n=0;n<r;n++)t.call(e,i[o[n]],o[n])}function bi(i,t){let e,s,n,r;if(!i||!t||i.length!==t.length)return!1;for(e=0,s=i.length;e<s;++e)if(n=i[e],r=t[e],n.datasetIndex!==r.datasetIndex||n.index!==r.index)return!1;return!0}function fi(i){if(nt(i))return i.map(fi);if(W(i)){const t=Object.create(null),e=Object.keys(i),s=e.length;let n=0;for(;n<s;++n)t[e[n]]=fi(i[e[n]]);return t}return i}function lr(i){return["__proto__","prototype","constructor"].indexOf(i)===-1}function Ta(i,t,e,s){if(!lr(i))return;const n=t[i],r=e[i];W(n)&&W(r)?Te(n,r,s):t[i]=fi(r)}function Te(i,t,e){const s=nt(t)?t:[t],n=s.length;if(!W(i))return i;e=e||{};const r=e.merger||Ta;let o;for(let a=0;a<n;++a){if(o=s[a],!W(o))continue;const l=Object.keys(o);for(let h=0,c=l.length;h<c;++h)r(l[h],i,o,e)}return i}function Oe(i,t){return Te(i,t,{merger:Ea})}function Ea(i,t,e){if(!lr(i))return;const s=t[i],n=e[i];W(s)&&W(n)?Oe(s,n):Object.prototype.hasOwnProperty.call(t,i)||(t[i]=fi(n))}const Ys={"":i=>i,x:i=>i.x,y:i=>i.y};function La(i){const t=i.split("."),e=[];let s="";for(const n of t)s+=n,s.endsWith("\\")?s=s.slice(0,-1)+".":(e.push(s),s="");return e}function Na(i){const t=La(i);return e=>{for(const s of t){if(s==="")break;e=e&&e[s]}return e}}function ee(i,t){return(Ys[t]||(Ys[t]=Na(t)))(i)}function ss(i){return i.charAt(0).toUpperCase()+i.slice(1)}const Ee=i=>typeof i<"u",Wt=i=>typeof i=="function",Us=(i,t)=>{if(i.size!==t.size)return!1;for(const e of i)if(!t.has(e))return!1;return!0};function Ia(i){return i.type==="mouseup"||i.type==="click"||i.type==="contextmenu"}const U=Math.PI,Q=2*U,Fa=Q+U,gi=Number.POSITIVE_INFINITY,za=U/180,rt=U/2,Ut=U/4,Xs=U*2/3,hr=Math.log10,Ct=Math.sign;function je(i,t,e){return Math.abs(i-t)<e}function qs(i){const t=Math.round(i);i=je(i,t,i/1e3)?t:i;const e=Math.pow(10,Math.floor(hr(i))),s=i/e;return(s<=1?1:s<=2?2:s<=5?5:10)*e}function Ba(i){const t=[],e=Math.sqrt(i);let s;for(s=1;s<e;s++)i%s===0&&(t.push(s),t.push(i/s));return e===(e|0)&&t.push(e),t.sort((n,r)=>n-r).pop(),t}function Ha(i){return typeof i=="symbol"||typeof i=="object"&&i!==null&&!(Symbol.toPrimitive in i||"toString"in i||"valueOf"in i)}function Le(i){return!Ha(i)&&!isNaN(parseFloat(i))&&isFinite(i)}function Wa(i,t){const e=Math.round(i);return e-t<=i&&e+t>=i}function Va(i,t,e){let s,n,r;for(s=0,n=i.length;s<n;s++)r=i[s][e],isNaN(r)||(t.min=Math.min(t.min,r),t.max=Math.max(t.max,r))}function Et(i){return i*(U/180)}function $a(i){return i*(180/U)}function Ks(i){if(!xt(i))return;let t=1,e=0;for(;Math.round(i*t)/t!==i;)t*=10,e++;return e}function cr(i,t){const e=t.x-i.x,s=t.y-i.y,n=Math.sqrt(e*e+s*s);let r=Math.atan2(s,e);return r<-.5*U&&(r+=Q),{angle:r,distance:n}}function Ui(i,t){return Math.sqrt(Math.pow(t.x-i.x,2)+Math.pow(t.y-i.y,2))}function Ya(i,t){return(i-t+Fa)%Q-U}function vt(i){return(i%Q+Q)%Q}function Ne(i,t,e,s){const n=vt(i),r=vt(t),o=vt(e),a=vt(r-n),l=vt(o-n),h=vt(n-r),c=vt(n-o);return n===r||n===o||s&&r===o||a>l&&h<c}function lt(i,t,e){return Math.max(t,Math.min(e,i))}function Ua(i){return lt(i,-32768,32767)}function zt(i,t,e,s=1e-6){return i>=Math.min(t,e)-s&&i<=Math.max(t,e)+s}function ns(i,t,e){e=e||(o=>i[o]<t);let s=i.length-1,n=0,r;for(;s-n>1;)r=n+s>>1,e(r)?n=r:s=r;return{lo:n,hi:s}}const Zt=(i,t,e,s)=>ns(i,e,s?n=>{const r=i[n][t];return r<e||r===e&&i[n+1][t]===e}:n=>i[n][t]<e),Xa=(i,t,e)=>ns(i,e,s=>i[s][t]>=e);function qa(i,t,e){let s=0,n=i.length;for(;s<n&&i[s]<t;)s++;for(;n>s&&i[n-1]>e;)n--;return s>0||n<i.length?i.slice(s,n):i}const ur=["push","pop","shift","splice","unshift"];function Ka(i,t){if(i._chartjs){i._chartjs.listeners.push(t);return}Object.defineProperty(i,"_chartjs",{configurable:!0,enumerable:!1,value:{listeners:[t]}}),ur.forEach(e=>{const s="_onData"+ss(e),n=i[e];Object.defineProperty(i,e,{configurable:!0,enumerable:!1,value(...r){const o=n.apply(this,r);return i._chartjs.listeners.forEach(a=>{typeof a[s]=="function"&&a[s](...r)}),o}})})}function Gs(i,t){const e=i._chartjs;if(!e)return;const s=e.listeners,n=s.indexOf(t);n!==-1&&s.splice(n,1),!(s.length>0)&&(ur.forEach(r=>{delete i[r]}),delete i._chartjs)}function dr(i){const t=new Set(i);return t.size===i.length?i:Array.from(t)}const br=function(){return typeof window>"u"?function(i){return i()}:window.requestAnimationFrame}();function fr(i,t){let e=[],s=!1;return function(...n){e=n,s||(s=!0,br.call(window,()=>{s=!1,i.apply(t,e)}))}}function Ga(i,t){let e;return function(...s){return t?(clearTimeout(e),e=setTimeout(i,t,s)):i.apply(this,s),t}}const rs=i=>i==="start"?"left":i==="end"?"right":"center",at=(i,t,e)=>i==="start"?t:i==="end"?e:(t+e)/2,Za=(i,t,e,s)=>i===(s?"left":"right")?e:i==="center"?(t+e)/2:t;function Ja(i,t,e){const s=t.length;let n=0,r=s;if(i._sorted){const{iScale:o,vScale:a,_parsed:l}=i,h=i.dataset&&i.dataset.options?i.dataset.options.spanGaps:null,c=o.axis,{min:u,max:d,minDefined:b,maxDefined:g}=o.getUserBounds();if(b){if(n=Math.min(Zt(l,c,u).lo,e?s:Zt(t,c,o.getPixelForValue(u)).lo),h){const p=l.slice(0,n+1).reverse().findIndex(x=>!$(x[a.axis]));n-=Math.max(0,p)}n=lt(n,0,s-1)}if(g){let p=Math.max(Zt(l,o.axis,d,!0).hi+1,e?0:Zt(t,c,o.getPixelForValue(d),!0).hi+1);if(h){const x=l.slice(p-1).findIndex(y=>!$(y[a.axis]));p+=Math.max(0,x)}r=lt(p,n,s)-n}else r=s-n}return{start:n,count:r}}function Qa(i){const{xScale:t,yScale:e,_scaleRanges:s}=i,n={xmin:t.min,xmax:t.max,ymin:e.min,ymax:e.max};if(!s)return i._scaleRanges=n,!0;const r=s.xmin!==t.min||s.xmax!==t.max||s.ymin!==e.min||s.ymax!==e.max;return Object.assign(s,n),r}const Ge=i=>i===0||i===1,Zs=(i,t,e)=>-(Math.pow(2,10*(i-=1))*Math.sin((i-t)*Q/e)),Js=(i,t,e)=>Math.pow(2,-10*i)*Math.sin((i-t)*Q/e)+1,Re={linear:i=>i,easeInQuad:i=>i*i,easeOutQuad:i=>-i*(i-2),easeInOutQuad:i=>(i/=.5)<1?.5*i*i:-.5*(--i*(i-2)-1),easeInCubic:i=>i*i*i,easeOutCubic:i=>(i-=1)*i*i+1,easeInOutCubic:i=>(i/=.5)<1?.5*i*i*i:.5*((i-=2)*i*i+2),easeInQuart:i=>i*i*i*i,easeOutQuart:i=>-((i-=1)*i*i*i-1),easeInOutQuart:i=>(i/=.5)<1?.5*i*i*i*i:-.5*((i-=2)*i*i*i-2),easeInQuint:i=>i*i*i*i*i,easeOutQuint:i=>(i-=1)*i*i*i*i+1,easeInOutQuint:i=>(i/=.5)<1?.5*i*i*i*i*i:.5*((i-=2)*i*i*i*i+2),easeInSine:i=>-Math.cos(i*rt)+1,easeOutSine:i=>Math.sin(i*rt),easeInOutSine:i=>-.5*(Math.cos(U*i)-1),easeInExpo:i=>i===0?0:Math.pow(2,10*(i-1)),easeOutExpo:i=>i===1?1:-Math.pow(2,-10*i)+1,easeInOutExpo:i=>Ge(i)?i:i<.5?.5*Math.pow(2,10*(i*2-1)):.5*(-Math.pow(2,-10*(i*2-1))+2),easeInCirc:i=>i>=1?i:-(Math.sqrt(1-i*i)-1),easeOutCirc:i=>Math.sqrt(1-(i-=1)*i),easeInOutCirc:i=>(i/=.5)<1?-.5*(Math.sqrt(1-i*i)-1):.5*(Math.sqrt(1-(i-=2)*i)+1),easeInElastic:i=>Ge(i)?i:Zs(i,.075,.3),easeOutElastic:i=>Ge(i)?i:Js(i,.075,.3),easeInOutElastic(i){return Ge(i)?i:i<.5?.5*Zs(i*2,.1125,.45):.5+.5*Js(i*2-1,.1125,.45)},easeInBack(i){return i*i*((1.70158+1)*i-1.70158)},easeOutBack(i){return(i-=1)*i*((1.70158+1)*i+1.70158)+1},easeInOutBack(i){let t=1.70158;return(i/=.5)<1?.5*(i*i*(((t*=1.525)+1)*i-t)):.5*((i-=2)*i*(((t*=1.525)+1)*i+t)+2)},easeInBounce:i=>1-Re.easeOutBounce(1-i),easeOutBounce(i){return i<1/2.75?7.5625*i*i:i<2/2.75?7.5625*(i-=1.5/2.75)*i+.75:i<2.5/2.75?7.5625*(i-=2.25/2.75)*i+.9375:7.5625*(i-=2.625/2.75)*i+.984375},easeInOutBounce:i=>i<.5?Re.easeInBounce(i*2)*.5:Re.easeOutBounce(i*2-1)*.5+.5};function os(i){if(i&&typeof i=="object"){const t=i.toString();return t==="[object CanvasPattern]"||t==="[object CanvasGradient]"}return!1}function Qs(i){return os(i)?i:new De(i)}function Ei(i){return os(i)?i:new De(i).saturate(.5).darken(.1).hexString()}const tl=["x","y","borderWidth","radius","tension"],el=["color","borderColor","backgroundColor"];function il(i){i.set("animation",{delay:void 0,duration:1e3,easing:"easeOutQuart",fn:void 0,from:void 0,loop:void 0,to:void 0,type:void 0}),i.describe("animation",{_fallback:!1,_indexable:!1,_scriptable:t=>t!=="onProgress"&&t!=="onComplete"&&t!=="fn"}),i.set("animations",{colors:{type:"color",properties:el},numbers:{type:"number",properties:tl}}),i.describe("animations",{_fallback:"animation"}),i.set("transitions",{active:{animation:{duration:400}},resize:{animation:{duration:0}},show:{animations:{colors:{from:"transparent"},visible:{type:"boolean",duration:0}}},hide:{animations:{colors:{to:"transparent"},visible:{type:"boolean",easing:"linear",fn:t=>t|0}}}})}function sl(i){i.set("layout",{autoPadding:!0,padding:{top:0,right:0,bottom:0,left:0}})}const tn=new Map;function nl(i,t){t=t||{};const e=i+JSON.stringify(t);let s=tn.get(e);return s||(s=new Intl.NumberFormat(i,t),tn.set(e,s)),s}function as(i,t,e){return nl(t,e).format(i)}const rl={values(i){return nt(i)?i:""+i},numeric(i,t,e){if(i===0)return"0";const s=this.chart.options.locale;let n,r=i;if(e.length>1){const h=Math.max(Math.abs(e[0].value),Math.abs(e[e.length-1].value));(h<1e-4||h>1e15)&&(n="scientific"),r=ol(i,e)}const o=hr(Math.abs(r)),a=isNaN(o)?1:Math.max(Math.min(-1*Math.floor(o),20),0),l={notation:n,minimumFractionDigits:a,maximumFractionDigits:a};return Object.assign(l,this.options.ticks.format),as(i,s,l)}};function ol(i,t){let e=t.length>3?t[2].value-t[1].value:t[1].value-t[0].value;return Math.abs(e)>=1&&i!==Math.floor(i)&&(e=i-Math.floor(i)),e}var gr={formatters:rl};function al(i){i.set("scale",{display:!0,offset:!1,reverse:!1,beginAtZero:!1,bounds:"ticks",clip:!0,grace:0,grid:{display:!0,lineWidth:1,drawOnChartArea:!0,drawTicks:!0,tickLength:8,tickWidth:(t,e)=>e.lineWidth,tickColor:(t,e)=>e.color,offset:!1},border:{display:!0,dash:[],dashOffset:0,width:1},title:{display:!1,text:"",padding:{top:4,bottom:4}},ticks:{minRotation:0,maxRotation:50,mirror:!1,textStrokeWidth:0,textStrokeColor:"",padding:3,display:!0,autoSkip:!0,autoSkipPadding:3,labelOffset:0,callback:gr.formatters.values,minor:{},major:{},align:"center",crossAlign:"near",showLabelBackdrop:!1,backdropColor:"rgba(255, 255, 255, 0.75)",backdropPadding:2}}),i.route("scale.ticks","color","","color"),i.route("scale.grid","color","","borderColor"),i.route("scale.border","color","","borderColor"),i.route("scale.title","color","","color"),i.describe("scale",{_fallback:!1,_scriptable:t=>!t.startsWith("before")&&!t.startsWith("after")&&t!=="callback"&&t!=="parser",_indexable:t=>t!=="borderDash"&&t!=="tickBorderDash"&&t!=="dash"}),i.describe("scales",{_fallback:"scale"}),i.describe("scale.ticks",{_scriptable:t=>t!=="backdropPadding"&&t!=="callback",_indexable:t=>t!=="backdropPadding"})}const ie=Object.create(null),Xi=Object.create(null);function Ae(i,t){if(!t)return i;const e=t.split(".");for(let s=0,n=e.length;s<n;++s){const r=e[s];i=i[r]||(i[r]=Object.create(null))}return i}function Li(i,t,e){return typeof t=="string"?Te(Ae(i,t),e):Te(Ae(i,""),t)}class ll{constructor(t,e){this.animation=void 0,this.backgroundColor="rgba(0,0,0,0.1)",this.borderColor="rgba(0,0,0,0.1)",this.color="#666",this.datasets={},this.devicePixelRatio=s=>s.chart.platform.getDevicePixelRatio(),this.elements={},this.events=["mousemove","mouseout","click","touchstart","touchmove"],this.font={family:"'Helvetica Neue', 'Helvetica', 'Arial', sans-serif",size:12,style:"normal",lineHeight:1.2,weight:null},this.hover={},this.hoverBackgroundColor=(s,n)=>Ei(n.backgroundColor),this.hoverBorderColor=(s,n)=>Ei(n.borderColor),this.hoverColor=(s,n)=>Ei(n.color),this.indexAxis="x",this.interaction={mode:"nearest",intersect:!0,includeInvisible:!1},this.maintainAspectRatio=!0,this.onHover=null,this.onClick=null,this.parsing=!0,this.plugins={},this.responsive=!0,this.scale=void 0,this.scales={},this.showLine=!0,this.drawActiveElementsOnTop=!0,this.describe(t),this.apply(e)}set(t,e){return Li(this,t,e)}get(t){return Ae(this,t)}describe(t,e){return Li(Xi,t,e)}override(t,e){return Li(ie,t,e)}route(t,e,s,n){const r=Ae(this,t),o=Ae(this,s),a="_"+e;Object.defineProperties(r,{[a]:{value:r[e],writable:!0},[e]:{enumerable:!0,get(){const l=this[a],h=o[n];return W(l)?Object.assign({},h,l):N(l,h)},set(l){this[a]=l}}})}apply(t){t.forEach(e=>e(this))}}var et=new ll({_scriptable:i=>!i.startsWith("on"),_indexable:i=>i!=="events",hover:{_fallback:"interaction"},interaction:{_scriptable:!1,_indexable:!1}},[il,sl,al]);function hl(i){return!i||$(i.size)||$(i.family)?null:(i.style?i.style+" ":"")+(i.weight?i.weight+" ":"")+i.size+"px "+i.family}function en(i,t,e,s,n){let r=t[n];return r||(r=t[n]=i.measureText(n).width,e.push(n)),r>s&&(s=r),s}function Xt(i,t,e){const s=i.currentDevicePixelRatio,n=e!==0?Math.max(e/2,.5):0;return Math.round((t-n)*s)/s+n}function sn(i,t){!t&&!i||(t=t||i.getContext("2d"),t.save(),t.resetTransform(),t.clearRect(0,0,i.width,i.height),t.restore())}function qi(i,t,e,s){pr(i,t,e,s,null)}function pr(i,t,e,s,n){let r,o,a,l,h,c,u,d;const b=t.pointStyle,g=t.rotation,p=t.radius;let x=(g||0)*za;if(b&&typeof b=="object"&&(r=b.toString(),r==="[object HTMLImageElement]"||r==="[object HTMLCanvasElement]")){i.save(),i.translate(e,s),i.rotate(x),i.drawImage(b,-b.width/2,-b.height/2,b.width,b.height),i.restore();return}if(!(isNaN(p)||p<=0)){switch(i.beginPath(),b){default:n?i.ellipse(e,s,n/2,p,0,0,Q):i.arc(e,s,p,0,Q),i.closePath();break;case"triangle":c=n?n/2:p,i.moveTo(e+Math.sin(x)*c,s-Math.cos(x)*p),x+=Xs,i.lineTo(e+Math.sin(x)*c,s-Math.cos(x)*p),x+=Xs,i.lineTo(e+Math.sin(x)*c,s-Math.cos(x)*p),i.closePath();break;case"rectRounded":h=p*.516,l=p-h,o=Math.cos(x+Ut)*l,u=Math.cos(x+Ut)*(n?n/2-h:l),a=Math.sin(x+Ut)*l,d=Math.sin(x+Ut)*(n?n/2-h:l),i.arc(e-u,s-a,h,x-U,x-rt),i.arc(e+d,s-o,h,x-rt,x),i.arc(e+u,s+a,h,x,x+rt),i.arc(e-d,s+o,h,x+rt,x+U),i.closePath();break;case"rect":if(!g){l=Math.SQRT1_2*p,c=n?n/2:l,i.rect(e-c,s-l,2*c,2*l);break}x+=Ut;case"rectRot":u=Math.cos(x)*(n?n/2:p),o=Math.cos(x)*p,a=Math.sin(x)*p,d=Math.sin(x)*(n?n/2:p),i.moveTo(e-u,s-a),i.lineTo(e+d,s-o),i.lineTo(e+u,s+a),i.lineTo(e-d,s+o),i.closePath();break;case"crossRot":x+=Ut;case"cross":u=Math.cos(x)*(n?n/2:p),o=Math.cos(x)*p,a=Math.sin(x)*p,d=Math.sin(x)*(n?n/2:p),i.moveTo(e-u,s-a),i.lineTo(e+u,s+a),i.moveTo(e+d,s-o),i.lineTo(e-d,s+o);break;case"star":u=Math.cos(x)*(n?n/2:p),o=Math.cos(x)*p,a=Math.sin(x)*p,d=Math.sin(x)*(n?n/2:p),i.moveTo(e-u,s-a),i.lineTo(e+u,s+a),i.moveTo(e+d,s-o),i.lineTo(e-d,s+o),x+=Ut,u=Math.cos(x)*(n?n/2:p),o=Math.cos(x)*p,a=Math.sin(x)*p,d=Math.sin(x)*(n?n/2:p),i.moveTo(e-u,s-a),i.lineTo(e+u,s+a),i.moveTo(e+d,s-o),i.lineTo(e-d,s+o);break;case"line":o=n?n/2:Math.cos(x)*p,a=Math.sin(x)*p,i.moveTo(e-o,s-a),i.lineTo(e+o,s+a);break;case"dash":i.moveTo(e,s),i.lineTo(e+Math.cos(x)*(n?n/2:p),s+Math.sin(x)*p);break;case!1:i.closePath();break}i.fill(),t.borderWidth>0&&i.stroke()}}function Ie(i,t,e){return e=e||.5,!t||i&&i.x>t.left-e&&i.x<t.right+e&&i.y>t.top-e&&i.y<t.bottom+e}function ls(i,t){i.save(),i.beginPath(),i.rect(t.left,t.top,t.right-t.left,t.bottom-t.top),i.clip()}function hs(i){i.restore()}function cl(i,t,e,s,n){if(!t)return i.lineTo(e.x,e.y);if(n==="middle"){const r=(t.x+e.x)/2;i.lineTo(r,t.y),i.lineTo(r,e.y)}else n==="after"!=!!s?i.lineTo(t.x,e.y):i.lineTo(e.x,t.y);i.lineTo(e.x,e.y)}function ul(i,t,e,s){if(!t)return i.lineTo(e.x,e.y);i.bezierCurveTo(s?t.cp1x:t.cp2x,s?t.cp1y:t.cp2y,s?e.cp2x:e.cp1x,s?e.cp2y:e.cp1y,e.x,e.y)}function dl(i,t){t.translation&&i.translate(t.translation[0],t.translation[1]),$(t.rotation)||i.rotate(t.rotation),t.color&&(i.fillStyle=t.color),t.textAlign&&(i.textAlign=t.textAlign),t.textBaseline&&(i.textBaseline=t.textBaseline)}function bl(i,t,e,s,n){if(n.strikethrough||n.underline){const r=i.measureText(s),o=t-r.actualBoundingBoxLeft,a=t+r.actualBoundingBoxRight,l=e-r.actualBoundingBoxAscent,h=e+r.actualBoundingBoxDescent,c=n.strikethrough?(l+h)/2:h;i.strokeStyle=i.fillStyle,i.beginPath(),i.lineWidth=n.decorationWidth||2,i.moveTo(o,c),i.lineTo(a,c),i.stroke()}}function fl(i,t){const e=i.fillStyle;i.fillStyle=t.color,i.fillRect(t.left,t.top,t.width,t.height),i.fillStyle=e}function Fe(i,t,e,s,n,r={}){const o=nt(t)?t:[t],a=r.strokeWidth>0&&r.strokeColor!=="";let l,h;for(i.save(),i.font=n.string,dl(i,r),l=0;l<o.length;++l)h=o[l],r.backdrop&&fl(i,r.backdrop),a&&(r.strokeColor&&(i.strokeStyle=r.strokeColor),$(r.strokeWidth)||(i.lineWidth=r.strokeWidth),i.strokeText(h,e,s,r.maxWidth)),i.fillText(h,e,s,r.maxWidth),bl(i,e,s,h,r),s+=Number(n.lineHeight);i.restore()}function pi(i,t){const{x:e,y:s,w:n,h:r,radius:o}=t;i.arc(e+o.topLeft,s+o.topLeft,o.topLeft,1.5*U,U,!0),i.lineTo(e,s+r-o.bottomLeft),i.arc(e+o.bottomLeft,s+r-o.bottomLeft,o.bottomLeft,U,rt,!0),i.lineTo(e+n-o.bottomRight,s+r),i.arc(e+n-o.bottomRight,s+r-o.bottomRight,o.bottomRight,rt,0,!0),i.lineTo(e+n,s+o.topRight),i.arc(e+n-o.topRight,s+o.topRight,o.topRight,0,-rt,!0),i.lineTo(e+o.topLeft,s)}const gl=/^(normal|(\d+(?:\.\d+)?)(px|em|%)?)$/,pl=/^(normal|italic|initial|inherit|unset|(oblique( -?[0-9]?[0-9]deg)?))$/;function ml(i,t){const e=(""+i).match(gl);if(!e||e[1]==="normal")return t*1.2;switch(i=+e[2],e[3]){case"px":return i;case"%":i/=100;break}return t*i}const xl=i=>+i||0;function cs(i,t){const e={},s=W(t),n=s?Object.keys(t):t,r=W(i)?s?o=>N(i[o],i[t[o]]):o=>i[o]:()=>i;for(const o of n)e[o]=xl(r(o));return e}function mr(i){return cs(i,{top:"y",right:"x",bottom:"y",left:"x"})}function le(i){return cs(i,["topLeft","topRight","bottomLeft","bottomRight"])}function yt(i){const t=mr(i);return t.width=t.left+t.right,t.height=t.top+t.bottom,t}function ht(i,t){i=i||{},t=t||et.font;let e=N(i.size,t.size);typeof e=="string"&&(e=parseInt(e,10));let s=N(i.style,t.style);s&&!(""+s).match(pl)&&(console.warn('Invalid font style specified: "'+s+'"'),s=void 0);const n={family:N(i.family,t.family),lineHeight:ml(N(i.lineHeight,t.lineHeight),e),size:e,style:s,weight:N(i.weight,t.weight),string:""};return n.string=hl(n),n}function Ze(i,t,e,s){let n,r,o;for(n=0,r=i.length;n<r;++n)if(o=i[n],o!==void 0&&o!==void 0)return o}function yl(i,t,e){const{min:s,max:n}=i,r=ar(t,(n-s)/2),o=(a,l)=>e&&a===0?0:a+l;return{min:o(s,-Math.abs(r)),max:o(n,r)}}function se(i,t){return Object.assign(Object.create(i),t)}function us(i,t=[""],e,s,n=()=>i[0]){const r=e||i;typeof s>"u"&&(s=vr("_fallback",i));const o={[Symbol.toStringTag]:"Object",_cacheable:!0,_scopes:i,_rootScopes:r,_fallback:s,_getTarget:n,override:a=>us([a,...i],t,r,s)};return new Proxy(o,{deleteProperty(a,l){return delete a[l],delete a._keys,delete i[0][l],!0},get(a,l){return yr(a,l,()=>Pl(l,t,i,a))},getOwnPropertyDescriptor(a,l){return Reflect.getOwnPropertyDescriptor(a._scopes[0],l)},getPrototypeOf(){return Reflect.getPrototypeOf(i[0])},has(a,l){return rn(a).includes(l)},ownKeys(a){return rn(a)},set(a,l,h){const c=a._storage||(a._storage=n());return a[l]=c[l]=h,delete a._keys,!0}})}function ce(i,t,e,s){const n={_cacheable:!1,_proxy:i,_context:t,_subProxy:e,_stack:new Set,_descriptors:xr(i,s),setContext:r=>ce(i,r,e,s),override:r=>ce(i.override(r),t,e,s)};return new Proxy(n,{deleteProperty(r,o){return delete r[o],delete i[o],!0},get(r,o,a){return yr(r,o,()=>vl(r,o,a))},getOwnPropertyDescriptor(r,o){return r._descriptors.allKeys?Reflect.has(i,o)?{enumerable:!0,configurable:!0}:void 0:Reflect.getOwnPropertyDescriptor(i,o)},getPrototypeOf(){return Reflect.getPrototypeOf(i)},has(r,o){return Reflect.has(i,o)},ownKeys(){return Reflect.ownKeys(i)},set(r,o,a){return i[o]=a,delete r[o],!0}})}function xr(i,t={scriptable:!0,indexable:!0}){const{_scriptable:e=t.scriptable,_indexable:s=t.indexable,_allKeys:n=t.allKeys}=i;return{allKeys:n,scriptable:e,indexable:s,isScriptable:Wt(e)?e:()=>e,isIndexable:Wt(s)?s:()=>s}}const _l=(i,t)=>i?i+ss(t):t,ds=(i,t)=>W(t)&&i!=="adapters"&&(Object.getPrototypeOf(t)===null||t.constructor===Object);function yr(i,t,e){if(Object.prototype.hasOwnProperty.call(i,t)||t==="constructor")return i[t];const s=e();return i[t]=s,s}function vl(i,t,e){const{_proxy:s,_context:n,_subProxy:r,_descriptors:o}=i;let a=s[t];return Wt(a)&&o.isScriptable(t)&&(a=kl(t,a,i,e)),nt(a)&&a.length&&(a=wl(t,a,i,o.isIndexable)),ds(t,a)&&(a=ce(a,n,r&&r[t],o)),a}function kl(i,t,e,s){const{_proxy:n,_context:r,_subProxy:o,_stack:a}=e;if(a.has(i))throw new Error("Recursion detected: "+Array.from(a).join("->")+"->"+i);a.add(i);let l=t(r,o||s);return a.delete(i),ds(i,l)&&(l=bs(n._scopes,n,i,l)),l}function wl(i,t,e,s){const{_proxy:n,_context:r,_subProxy:o,_descriptors:a}=e;if(typeof r.index<"u"&&s(i))return t[r.index%t.length];if(W(t[0])){const l=t,h=n._scopes.filter(c=>c!==l);t=[];for(const c of l){const u=bs(h,n,i,c);t.push(ce(u,r,o&&o[i],a))}}return t}function _r(i,t,e){return Wt(i)?i(t,e):i}const Sl=(i,t)=>i===!0?t:typeof i=="string"?ee(t,i):void 0;function Ml(i,t,e,s,n){for(const r of t){const o=Sl(e,r);if(o){i.add(o);const a=_r(o._fallback,e,n);if(typeof a<"u"&&a!==e&&a!==s)return a}else if(o===!1&&typeof s<"u"&&e!==s)return null}return!1}function bs(i,t,e,s){const n=t._rootScopes,r=_r(t._fallback,e,s),o=[...i,...n],a=new Set;a.add(s);let l=nn(a,o,e,r||e,s);return l===null||typeof r<"u"&&r!==e&&(l=nn(a,o,r,l,s),l===null)?!1:us(Array.from(a),[""],n,r,()=>Cl(t,e,s))}function nn(i,t,e,s,n){for(;e;)e=Ml(i,t,e,s,n);return e}function Cl(i,t,e){const s=i._getTarget();t in s||(s[t]={});const n=s[t];return nt(n)&&W(e)?e:n||{}}function Pl(i,t,e,s){let n;for(const r of t)if(n=vr(_l(r,i),e),typeof n<"u")return ds(i,n)?bs(e,s,i,n):n}function vr(i,t){for(const e of t){if(!e)continue;const s=e[i];if(typeof s<"u")return s}}function rn(i){let t=i._keys;return t||(t=i._keys=Ol(i._scopes)),t}function Ol(i){const t=new Set;for(const e of i)for(const s of Object.keys(e).filter(n=>!n.startsWith("_")))t.add(s);return Array.from(t)}const jl=Number.EPSILON||1e-14,ue=(i,t)=>t<i.length&&!i[t].skip&&i[t],kr=i=>i==="x"?"y":"x";function Rl(i,t,e,s){const n=i.skip?t:i,r=t,o=e.skip?t:e,a=Ui(r,n),l=Ui(o,r);let h=a/(a+l),c=l/(a+l);h=isNaN(h)?0:h,c=isNaN(c)?0:c;const u=s*h,d=s*c;return{previous:{x:r.x-u*(o.x-n.x),y:r.y-u*(o.y-n.y)},next:{x:r.x+d*(o.x-n.x),y:r.y+d*(o.y-n.y)}}}function Al(i,t,e){const s=i.length;let n,r,o,a,l,h=ue(i,0);for(let c=0;c<s-1;++c)if(l=h,h=ue(i,c+1),!(!l||!h)){if(je(t[c],0,jl)){e[c]=e[c+1]=0;continue}n=e[c]/t[c],r=e[c+1]/t[c],a=Math.pow(n,2)+Math.pow(r,2),!(a<=9)&&(o=3/Math.sqrt(a),e[c]=n*o*t[c],e[c+1]=r*o*t[c])}}function Dl(i,t,e="x"){const s=kr(e),n=i.length;let r,o,a,l=ue(i,0);for(let h=0;h<n;++h){if(o=a,a=l,l=ue(i,h+1),!a)continue;const c=a[e],u=a[s];o&&(r=(c-o[e])/3,a[`cp1${e}`]=c-r,a[`cp1${s}`]=u-r*t[h]),l&&(r=(l[e]-c)/3,a[`cp2${e}`]=c+r,a[`cp2${s}`]=u+r*t[h])}}function Tl(i,t="x"){const e=kr(t),s=i.length,n=Array(s).fill(0),r=Array(s);let o,a,l,h=ue(i,0);for(o=0;o<s;++o)if(a=l,l=h,h=ue(i,o+1),!!l){if(h){const c=h[t]-l[t];n[o]=c!==0?(h[e]-l[e])/c:0}r[o]=a?h?Ct(n[o-1])!==Ct(n[o])?0:(n[o-1]+n[o])/2:n[o-1]:n[o]}Al(i,n,r),Dl(i,r,t)}function Je(i,t,e){return Math.max(Math.min(i,e),t)}function El(i,t){let e,s,n,r,o,a=Ie(i[0],t);for(e=0,s=i.length;e<s;++e)o=r,r=a,a=e<s-1&&Ie(i[e+1],t),r&&(n=i[e],o&&(n.cp1x=Je(n.cp1x,t.left,t.right),n.cp1y=Je(n.cp1y,t.top,t.bottom)),a&&(n.cp2x=Je(n.cp2x,t.left,t.right),n.cp2y=Je(n.cp2y,t.top,t.bottom)))}function Ll(i,t,e,s,n){let r,o,a,l;if(t.spanGaps&&(i=i.filter(h=>!h.skip)),t.cubicInterpolationMode==="monotone")Tl(i,n);else{let h=s?i[i.length-1]:i[0];for(r=0,o=i.length;r<o;++r)a=i[r],l=Rl(h,a,i[Math.min(r+1,o-(s?0:1))%o],t.tension),a.cp1x=l.previous.x,a.cp1y=l.previous.y,a.cp2x=l.next.x,a.cp2y=l.next.y,h=a}t.capBezierPoints&&El(i,e)}function fs(){return typeof window<"u"&&typeof document<"u"}function gs(i){let t=i.parentNode;return t&&t.toString()==="[object ShadowRoot]"&&(t=t.host),t}function mi(i,t,e){let s;return typeof i=="string"?(s=parseInt(i,10),i.indexOf("%")!==-1&&(s=s/100*t.parentNode[e])):s=i,s}const wi=i=>i.ownerDocument.defaultView.getComputedStyle(i,null);function Nl(i,t){return wi(i).getPropertyValue(t)}const Il=["top","right","bottom","left"];function Qt(i,t,e){const s={};e=e?"-"+e:"";for(let n=0;n<4;n++){const r=Il[n];s[r]=parseFloat(i[t+"-"+r+e])||0}return s.width=s.left+s.right,s.height=s.top+s.bottom,s}const Fl=(i,t,e)=>(i>0||t>0)&&(!e||!e.shadowRoot);function zl(i,t){const e=i.touches,s=e&&e.length?e[0]:i,{offsetX:n,offsetY:r}=s;let o=!1,a,l;if(Fl(n,r,i.target))a=n,l=r;else{const h=t.getBoundingClientRect();a=s.clientX-h.left,l=s.clientY-h.top,o=!0}return{x:a,y:l,box:o}}function Kt(i,t){if("native"in i)return i;const{canvas:e,currentDevicePixelRatio:s}=t,n=wi(e),r=n.boxSizing==="border-box",o=Qt(n,"padding"),a=Qt(n,"border","width"),{x:l,y:h,box:c}=zl(i,e),u=o.left+(c&&a.left),d=o.top+(c&&a.top);let{width:b,height:g}=t;return r&&(b-=o.width+a.width,g-=o.height+a.height),{x:Math.round((l-u)/b*e.width/s),y:Math.round((h-d)/g*e.height/s)}}function Bl(i,t,e){let s,n;if(t===void 0||e===void 0){const r=i&&gs(i);if(!r)t=i.clientWidth,e=i.clientHeight;else{const o=r.getBoundingClientRect(),a=wi(r),l=Qt(a,"border","width"),h=Qt(a,"padding");t=o.width-h.width-l.width,e=o.height-h.height-l.height,s=mi(a.maxWidth,r,"clientWidth"),n=mi(a.maxHeight,r,"clientHeight")}}return{width:t,height:e,maxWidth:s||gi,maxHeight:n||gi}}const Qe=i=>Math.round(i*10)/10;function Hl(i,t,e,s){const n=wi(i),r=Qt(n,"margin"),o=mi(n.maxWidth,i,"clientWidth")||gi,a=mi(n.maxHeight,i,"clientHeight")||gi,l=Bl(i,t,e);let{width:h,height:c}=l;if(n.boxSizing==="content-box"){const d=Qt(n,"border","width"),b=Qt(n,"padding");h-=b.width+d.width,c-=b.height+d.height}return h=Math.max(0,h-r.width),c=Math.max(0,s?h/s:c-r.height),h=Qe(Math.min(h,o,l.maxWidth)),c=Qe(Math.min(c,a,l.maxHeight)),h&&!c&&(c=Qe(h/2)),(t!==void 0||e!==void 0)&&s&&l.height&&c>l.height&&(c=l.height,h=Qe(Math.floor(c*s))),{width:h,height:c}}function on(i,t,e){const s=t||1,n=Math.floor(i.height*s),r=Math.floor(i.width*s);i.height=Math.floor(i.height),i.width=Math.floor(i.width);const o=i.canvas;return o.style&&(e||!o.style.height&&!o.style.width)&&(o.style.height=`${i.height}px`,o.style.width=`${i.width}px`),i.currentDevicePixelRatio!==s||o.height!==n||o.width!==r?(i.currentDevicePixelRatio=s,o.height=n,o.width=r,i.ctx.setTransform(s,0,0,s,0,0),!0):!1}const Wl=function(){let i=!1;try{const t={get passive(){return i=!0,!1}};fs()&&(window.addEventListener("test",null,t),window.removeEventListener("test",null,t))}catch{}return i}();function an(i,t){const e=Nl(i,t),s=e&&e.match(/^(\d+)(\.\d+)?px$/);return s?+s[1]:void 0}function Gt(i,t,e,s){return{x:i.x+e*(t.x-i.x),y:i.y+e*(t.y-i.y)}}function Vl(i,t,e,s){return{x:i.x+e*(t.x-i.x),y:s==="middle"?e<.5?i.y:t.y:s==="after"?e<1?i.y:t.y:e>0?t.y:i.y}}function $l(i,t,e,s){const n={x:i.cp2x,y:i.cp2y},r={x:t.cp1x,y:t.cp1y},o=Gt(i,n,e),a=Gt(n,r,e),l=Gt(r,t,e),h=Gt(o,a,e),c=Gt(a,l,e);return Gt(h,c,e)}const Yl=function(i,t){return{x(e){return i+i+t-e},setWidth(e){t=e},textAlign(e){return e==="center"?e:e==="right"?"left":"right"},xPlus(e,s){return e-s},leftForLtr(e,s){return e-s}}},Ul=function(){return{x(i){return i},setWidth(i){},textAlign(i){return i},xPlus(i,t){return i+t},leftForLtr(i,t){return i}}};function he(i,t,e){return i?Yl(t,e):Ul()}function wr(i,t){let e,s;(t==="ltr"||t==="rtl")&&(e=i.canvas.style,s=[e.getPropertyValue("direction"),e.getPropertyPriority("direction")],e.setProperty("direction",t,"important"),i.prevTextDirection=s)}function Sr(i,t){t!==void 0&&(delete i.prevTextDirection,i.canvas.style.setProperty("direction",t[0],t[1]))}function Mr(i){return i==="angle"?{between:Ne,compare:Ya,normalize:vt}:{between:zt,compare:(t,e)=>t-e,normalize:t=>t}}function ln({start:i,end:t,count:e,loop:s,style:n}){return{start:i%e,end:t%e,loop:s&&(t-i+1)%e===0,style:n}}function Xl(i,t,e){const{property:s,start:n,end:r}=e,{between:o,normalize:a}=Mr(s),l=t.length;let{start:h,end:c,loop:u}=i,d,b;if(u){for(h+=l,c+=l,d=0,b=l;d<b&&o(a(t[h%l][s]),n,r);++d)h--,c--;h%=l,c%=l}return c<h&&(c+=l),{start:h,end:c,loop:u,style:i.style}}function ql(i,t,e){if(!e)return[i];const{property:s,start:n,end:r}=e,o=t.length,{compare:a,between:l,normalize:h}=Mr(s),{start:c,end:u,loop:d,style:b}=Xl(i,t,e),g=[];let p=!1,x=null,y,_,w;const M=()=>l(n,w,y)&&a(n,w)!==0,v=()=>a(r,y)===0||l(r,w,y),O=()=>p||M(),S=()=>!p||v();for(let C=c,R=c;C<=u;++C)_=t[C%o],!_.skip&&(y=h(_[s]),y!==w&&(p=l(y,n,r),x===null&&O()&&(x=a(y,n)===0?C:R),x!==null&&S()&&(g.push(ln({start:x,end:C,loop:d,count:o,style:b})),x=null),R=C,w=y));return x!==null&&g.push(ln({start:x,end:u,loop:d,count:o,style:b})),g}function Kl(i,t){const e=[],s=i.segments;for(let n=0;n<s.length;n++){const r=ql(s[n],i.points,t);r.length&&e.push(...r)}return e}function Gl(i,t,e,s){let n=0,r=t-1;if(e&&!s)for(;n<t&&!i[n].skip;)n++;for(;n<t&&i[n].skip;)n++;for(n%=t,e&&(r+=n);r>n&&i[r%t].skip;)r--;return r%=t,{start:n,end:r}}function Zl(i,t,e,s){const n=i.length,r=[];let o=t,a=i[t],l;for(l=t+1;l<=e;++l){const h=i[l%n];h.skip||h.stop?a.skip||(s=!1,r.push({start:t%n,end:(l-1)%n,loop:s}),t=o=h.stop?l:null):(o=l,a.skip&&(t=l)),a=h}return o!==null&&r.push({start:t%n,end:o%n,loop:s}),r}function Jl(i,t){const e=i.points,s=i.options.spanGaps,n=e.length;if(!n)return[];const r=!!i._loop,{start:o,end:a}=Gl(e,n,r,s);if(s===!0)return hn(i,[{start:o,end:a,loop:r}],e,t);const l=a<o?a+n:a,h=!!i._fullLoop&&o===0&&a===n-1;return hn(i,Zl(e,o,l,h),e,t)}function hn(i,t,e,s){return!s||!s.setContext||!e?t:Ql(i,t,e,s)}function Ql(i,t,e,s){const n=i._chart.getContext(),r=cn(i.options),{_datasetIndex:o,options:{spanGaps:a}}=i,l=e.length,h=[];let c=r,u=t[0].start,d=u;function b(g,p,x,y){const _=a?-1:1;if(g!==p){for(g+=l;e[g%l].skip;)g-=_;for(;e[p%l].skip;)p+=_;g%l!==p%l&&(h.push({start:g%l,end:p%l,loop:x,style:y}),c=y,u=p%l)}}for(const g of t){u=a?u:g.start;let p=e[u%l],x;for(d=u+1;d<=g.end;d++){const y=e[d%l];x=cn(s.setContext(se(n,{type:"segment",p0:p,p1:y,p0DataIndex:(d-1)%l,p1DataIndex:d%l,datasetIndex:o}))),th(x,c)&&b(u,d-1,g.loop,c),p=y,c=x}u<d-1&&b(u,d-1,g.loop,c)}return h}function cn(i){return{backgroundColor:i.backgroundColor,borderCapStyle:i.borderCapStyle,borderDash:i.borderDash,borderDashOffset:i.borderDashOffset,borderJoinStyle:i.borderJoinStyle,borderWidth:i.borderWidth,borderColor:i.borderColor}}function th(i,t){if(!t)return!1;const e=[],s=function(n,r){return os(r)?(e.includes(r)||e.push(r),e.indexOf(r)):r};return JSON.stringify(i,s)!==JSON.stringify(t,s)}function ti(i,t,e){return i.options.clip?i[e]:t[e]}function eh(i,t){const{xScale:e,yScale:s}=i;return e&&s?{left:ti(e,t,"left"),right:ti(e,t,"right"),top:ti(s,t,"top"),bottom:ti(s,t,"bottom")}:t}function ih(i,t){const e=t._clip;if(e.disabled)return!1;const s=eh(t,i.chartArea);return{left:e.left===!1?0:s.left-(e.left===!0?0:e.left),right:e.right===!1?i.width:s.right+(e.right===!0?0:e.right),top:e.top===!1?0:s.top-(e.top===!0?0:e.top),bottom:e.bottom===!1?i.height:s.bottom+(e.bottom===!0?0:e.bottom)}}/*!
|
|
41
41
|
* Chart.js v4.5.0
|
|
42
42
|
* https://www.chartjs.org
|
|
43
43
|
* (c) 2025 Chart.js Contributors
|
|
44
44
|
* Released under the MIT License
|
|
45
|
-
*/class ih{constructor(){this._request=null,this._charts=new Map,this._running=!1,this._lastDate=void 0}_notify(t,e,s,n){const r=e.listeners[n],o=e.duration;r.forEach(a=>a({chart:t,initial:e.initial,numSteps:o,currentStep:Math.min(s-e.start,o)}))}_refresh(){this._request||(this._running=!0,this._request=br.call(window,()=>{this._update(),this._request=null,this._running&&this._refresh()}))}_update(t=Date.now()){let e=0;this._charts.forEach((s,n)=>{if(!s.running||!s.items.length)return;const r=s.items;let o=r.length-1,a=!1,l;for(;o>=0;--o)l=r[o],l._active?(l._total>s.duration&&(s.duration=l._total),l.tick(t),a=!0):(r[o]=r[r.length-1],r.pop());a&&(n.draw(),this._notify(n,s,t,"progress")),r.length||(s.running=!1,this._notify(n,s,t,"complete"),s.initial=!1),e+=r.length}),this._lastDate=t,e===0&&(this._running=!1)}_getAnims(t){const e=this._charts;let s=e.get(t);return s||(s={running:!1,initial:!0,items:[],listeners:{complete:[],progress:[]}},e.set(t,s)),s}listen(t,e,s){this._getAnims(t).listeners[e].push(s)}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((s,n)=>Math.max(s,n._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 s=e.items;let n=s.length-1;for(;n>=0;--n)s[n].cancel();e.items=[],this._notify(t,e,Date.now(),"complete")}remove(t){return this._charts.delete(t)}}var jt=new ih;const un="transparent",sh={boolean(i,t,e){return e>.5?t:i},color(i,t,e){const s=Qs(i||un),n=s.valid&&Qs(t||un);return n&&n.valid?n.mix(s,e).hexString():t},number(i,t,e){return i+(t-i)*e}};class nh{constructor(t,e,s,n){const r=e[s];n=Ze([t.to,n,r,t.from]);const o=Ze([t.from,r,n]);this._active=!0,this._fn=t.fn||sh[t.type||typeof o],this._easing=Ae[t.easing]||Ae.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=s,this._from=o,this._to=n,this._promises=void 0}active(){return this._active}update(t,e,s){if(this._active){this._notify(!1);const n=this._target[this._prop],r=s-this._start,o=this._duration-r;this._start=s,this._duration=Math.floor(Math.max(o,t.duration)),this._total+=r,this._loop=!!t.loop,this._to=Ze([t.to,e,n,t.from]),this._from=Ze([t.from,n,e])}}cancel(){this._active&&(this.tick(Date.now()),this._active=!1,this._notify(!1))}tick(t){const e=t-this._start,s=this._duration,n=this._prop,r=this._from,o=this._loop,a=this._to;let l;if(this._active=r!==a&&(o||e<s),!this._active){this._target[n]=a,this._notify(!0);return}if(e<0){this._target[n]=r;return}l=e/s%2,l=o&&l>1?2-l:l,l=this._easing(Math.min(1,Math.max(0,l))),this._target[n]=this._fn(r,a,l)}wait(){const t=this._promises||(this._promises=[]);return new Promise((e,s)=>{t.push({res:e,rej:s})})}_notify(t){const e=t?"res":"rej",s=this._promises||[];for(let n=0;n<s.length;n++)s[n][e]()}}class Cr{constructor(t,e){this._chart=t,this._properties=new Map,this.configure(e)}configure(t){if(!W(t))return;const e=Object.keys(et.animation),s=this._properties;Object.getOwnPropertyNames(t).forEach(n=>{const r=t[n];if(!W(r))return;const o={};for(const a of e)o[a]=r[a];(nt(r.properties)&&r.properties||[n]).forEach(a=>{(a===n||!s.has(a))&&s.set(a,o)})})}_animateOptions(t,e){const s=e.options,n=oh(t,s);if(!n)return[];const r=this._createAnimations(n,s);return s.$shared&&rh(t.options.$animations,s).then(()=>{t.options=s},()=>{}),r}_createAnimations(t,e){const s=this._properties,n=[],r=t.$animations||(t.$animations={}),o=Object.keys(e),a=Date.now();let l;for(l=o.length-1;l>=0;--l){const h=o[l];if(h.charAt(0)==="$")continue;if(h==="options"){n.push(...this._animateOptions(t,e));continue}const c=e[h];let u=r[h];const d=s.get(h);if(u)if(d&&u.active()){u.update(d,c,a);continue}else u.cancel();if(!d||!d.duration){t[h]=c;continue}r[h]=u=new nh(d,t,h,c),n.push(u)}return n}update(t,e){if(this._properties.size===0){Object.assign(t,e);return}const s=this._createAnimations(t,e);if(s.length)return jt.add(this._chart,s),!0}}function rh(i,t){const e=[],s=Object.keys(t);for(let n=0;n<s.length;n++){const r=i[s[n]];r&&r.active()&&e.push(r.wait())}return Promise.all(e)}function oh(i,t){if(!t)return;let e=i.options;if(!e){i.options=t;return}return e.$shared&&(i.options=e=Object.assign({},e,{$shared:!1,$animations:{}})),e}function dn(i,t){const e=i&&i.options||{},s=e.reverse,n=e.min===void 0?t:0,r=e.max===void 0?t:0;return{start:s?r:n,end:s?n:r}}function ah(i,t,e){if(e===!1)return!1;const s=dn(i,e),n=dn(t,e);return{top:n.end,right:s.end,bottom:n.start,left:s.start}}function lh(i){let t,e,s,n;return W(i)?(t=i.top,e=i.right,s=i.bottom,n=i.left):t=e=s=n=i,{top:t,right:e,bottom:s,left:n,disabled:i===!1}}function Pr(i,t){const e=[],s=i._getSortedDatasetMetas(t);let n,r;for(n=0,r=s.length;n<r;++n)e.push(s[n].index);return e}function bn(i,t,e,s={}){const n=i.keys,r=s.mode==="single";let o,a,l,h;if(t===null)return;let c=!1;for(o=0,a=n.length;o<a;++o){if(l=+n[o],l===e){if(c=!0,s.all)continue;break}h=i.values[l],xt(h)&&(r||t===0||Ct(t)===Ct(h))&&(t+=h)}return!c&&!s.all?0:t}function hh(i,t){const{iScale:e,vScale:s}=t,n=e.axis==="x"?"x":"y",r=s.axis==="x"?"x":"y",o=Object.keys(i),a=new Array(o.length);let l,h,c;for(l=0,h=o.length;l<h;++l)c=o[l],a[l]={[n]:c,[r]:i[c]};return a}function Ni(i,t){const e=i&&i.options.stacked;return e||e===void 0&&t.stack!==void 0}function ch(i,t,e){return`${i.id}.${t.id}.${e.stack||e.type}`}function uh(i){const{min:t,max:e,minDefined:s,maxDefined:n}=i.getUserBounds();return{min:s?t:Number.NEGATIVE_INFINITY,max:n?e:Number.POSITIVE_INFINITY}}function dh(i,t,e){const s=i[t]||(i[t]={});return s[e]||(s[e]={})}function fn(i,t,e,s){for(const n of t.getMatchingVisibleMetas(s).reverse()){const r=i[n.index];if(e&&r>0||!e&&r<0)return n.index}return null}function gn(i,t){const{chart:e,_cachedMeta:s}=i,n=e._stacks||(e._stacks={}),{iScale:r,vScale:o,index:a}=s,l=r.axis,h=o.axis,c=ch(r,o,s),u=t.length;let d;for(let b=0;b<u;++b){const g=t[b],{[l]:p,[h]:x}=g,y=g._stacks||(g._stacks={});d=y[h]=dh(n,c,p),d[a]=x,d._top=fn(d,o,!0,s.type),d._bottom=fn(d,o,!1,s.type);const _=d._visualValues||(d._visualValues={});_[a]=x}}function Ii(i,t){const e=i.scales;return Object.keys(e).filter(s=>e[s].axis===t).shift()}function bh(i,t){return se(i,{active:!1,dataset:void 0,datasetIndex:t,index:t,mode:"default",type:"dataset"})}function fh(i,t,e){return se(i,{active:!1,dataIndex:t,parsed:void 0,raw:void 0,element:e,index:t,mode:"default",type:"data"})}function me(i,t){const e=i.controller.index,s=i.vScale&&i.vScale.axis;if(s){t=t||i._parsed;for(const n of t){const r=n._stacks;if(!r||r[s]===void 0||r[s][e]===void 0)return;delete r[s][e],r[s]._visualValues!==void 0&&r[s]._visualValues[e]!==void 0&&delete r[s]._visualValues[e]}}}const Fi=i=>i==="reset"||i==="none",pn=(i,t)=>t?i:Object.assign({},i),gh=(i,t,e)=>i&&!t.hidden&&t._stacked&&{keys:Pr(e,!0),values:null};class te{constructor(t,e){this.chart=t,this._ctx=t.ctx,this.index=e,this._cachedDataOpts={},this._cachedMeta=this.getMeta(),this._type=this._cachedMeta.type,this.options=void 0,this._parsing=!1,this._data=void 0,this._objectData=void 0,this._sharedOptions=void 0,this._drawStart=void 0,this._drawCount=void 0,this.enableOptionSharing=!1,this.supportsDecimation=!1,this.$context=void 0,this._syncList=[],this.datasetElementType=new.target.datasetElementType,this.dataElementType=new.target.dataElementType,this.initialize()}initialize(){const t=this._cachedMeta;this.configure(),this.linkScales(),t._stacked=Ni(t.vScale,t),this.addElements(),this.options.fill&&!this.chart.isPluginEnabled("filler")&&console.warn("Tried to use the 'fill' option without the 'Filler' plugin enabled. Please import and register the 'Filler' plugin and make sure it is not disabled in the options")}updateIndex(t){this.index!==t&&me(this._cachedMeta),this.index=t}linkScales(){const t=this.chart,e=this._cachedMeta,s=this.getDataset(),n=(u,d,b,g)=>u==="x"?d:u==="r"?g:b,r=e.xAxisID=N(s.xAxisID,Ii(t,"x")),o=e.yAxisID=N(s.yAxisID,Ii(t,"y")),a=e.rAxisID=N(s.rAxisID,Ii(t,"r")),l=e.indexAxis,h=e.iAxisID=n(l,r,o,a),c=e.vAxisID=n(l,o,r,a);e.xScale=this.getScaleForId(r),e.yScale=this.getScaleForId(o),e.rScale=this.getScaleForId(a),e.iScale=this.getScaleForId(h),e.vScale=this.getScaleForId(c)}getDataset(){return this.chart.data.datasets[this.index]}getMeta(){return this.chart.getDatasetMeta(this.index)}getScaleForId(t){return this.chart.scales[t]}_getOtherScale(t){const e=this._cachedMeta;return t===e.iScale?e.vScale:e.iScale}reset(){this._update("reset")}_destroy(){const t=this._cachedMeta;this._data&&Gs(this._data,this),t._stacked&&me(t)}_dataCheck(){const t=this.getDataset(),e=t.data||(t.data=[]),s=this._data;if(W(e)){const n=this._cachedMeta;this._data=hh(e,n)}else if(s!==e){if(s){Gs(s,this);const n=this._cachedMeta;me(n),n._parsed=[]}e&&Object.isExtensible(e)&&qa(e,this),this._syncList=[],this._data=e}}addElements(){const t=this._cachedMeta;this._dataCheck(),this.datasetElementType&&(t.dataset=new this.datasetElementType)}buildOrUpdateElements(t){const e=this._cachedMeta,s=this.getDataset();let n=!1;this._dataCheck();const r=e._stacked;e._stacked=Ni(e.vScale,e),e.stack!==s.stack&&(n=!0,me(e),e.stack=s.stack),this._resyncElements(t),(n||r!==e._stacked)&&(gn(this,e._parsed),e._stacked=Ni(e.vScale,e))}configure(){const t=this.chart.config,e=t.datasetScopeKeys(this._type),s=t.getOptionScopes(this.getDataset(),e,!0);this.options=t.createResolver(s,this.getContext()),this._parsing=this.options.parsing,this._cachedDataOpts={}}parse(t,e){const{_cachedMeta:s,_data:n}=this,{iScale:r,_stacked:o}=s,a=r.axis;let l=t===0&&e===n.length?!0:s._sorted,h=t>0&&s._parsed[t-1],c,u,d;if(this._parsing===!1)s._parsed=n,s._sorted=!0,d=n;else{nt(n[t])?d=this.parseArrayData(s,n,t,e):W(n[t])?d=this.parseObjectData(s,n,t,e):d=this.parsePrimitiveData(s,n,t,e);const b=()=>u[a]===null||h&&u[a]<h[a];for(c=0;c<e;++c)s._parsed[c+t]=u=d[c],l&&(b()&&(l=!1),h=u);s._sorted=l}o&&gn(this,d)}parsePrimitiveData(t,e,s,n){const{iScale:r,vScale:o}=t,a=r.axis,l=o.axis,h=r.getLabels(),c=r===o,u=new Array(n);let d,b,g;for(d=0,b=n;d<b;++d)g=d+s,u[d]={[a]:c||r.parse(h[g],g),[l]:o.parse(e[g],g)};return u}parseArrayData(t,e,s,n){const{xScale:r,yScale:o}=t,a=new Array(n);let l,h,c,u;for(l=0,h=n;l<h;++l)c=l+s,u=e[c],a[l]={x:r.parse(u[0],c),y:o.parse(u[1],c)};return a}parseObjectData(t,e,s,n){const{xScale:r,yScale:o}=t,{xAxisKey:a="x",yAxisKey:l="y"}=this._parsing,h=new Array(n);let c,u,d,b;for(c=0,u=n;c<u;++c)d=c+s,b=e[d],h[c]={x:r.parse(ee(b,a),d),y:o.parse(ee(b,l),d)};return h}getParsed(t){return this._cachedMeta._parsed[t]}getDataElement(t){return this._cachedMeta.data[t]}applyStack(t,e,s){const n=this.chart,r=this._cachedMeta,o=e[t.axis],a={keys:Pr(n,!0),values:e._stacks[t.axis]._visualValues};return bn(a,o,r.index,{mode:s})}updateRangeFromParsed(t,e,s,n){const r=s[e.axis];let o=r===null?NaN:r;const a=n&&s._stacks[e.axis];n&&a&&(n.values=a,o=bn(n,r,this._cachedMeta.index)),t.min=Math.min(t.min,o),t.max=Math.max(t.max,o)}getMinMax(t,e){const s=this._cachedMeta,n=s._parsed,r=s._sorted&&t===s.iScale,o=n.length,a=this._getOtherScale(t),l=gh(e,s,this.chart),h={min:Number.POSITIVE_INFINITY,max:Number.NEGATIVE_INFINITY},{min:c,max:u}=uh(a);let d,b;function g(){b=n[d];const p=b[a.axis];return!xt(b[t.axis])||c>p||u<p}for(d=0;d<o&&!(!g()&&(this.updateRangeFromParsed(h,t,b,l),r));++d);if(r){for(d=o-1;d>=0;--d)if(!g()){this.updateRangeFromParsed(h,t,b,l);break}}return h}getAllParsedValues(t){const e=this._cachedMeta._parsed,s=[];let n,r,o;for(n=0,r=e.length;n<r;++n)o=e[n][t.axis],xt(o)&&s.push(o);return s}getMaxOverflow(){return!1}getLabelAndValue(t){const e=this._cachedMeta,s=e.iScale,n=e.vScale,r=this.getParsed(t);return{label:s?""+s.getLabelForValue(r[s.axis]):"",value:n?""+n.getLabelForValue(r[n.axis]):""}}_update(t){const e=this._cachedMeta;this.update(t||"default"),e._clip=lh(N(this.options.clip,ah(e.xScale,e.yScale,this.getMaxOverflow())))}update(t){}draw(){const t=this._ctx,e=this.chart,s=this._cachedMeta,n=s.data||[],r=e.chartArea,o=[],a=this._drawStart||0,l=this._drawCount||n.length-a,h=this.options.drawActiveElementsOnTop;let c;for(s.dataset&&s.dataset.draw(t,r,a,l),c=a;c<a+l;++c){const u=n[c];u.hidden||(u.active&&h?o.push(u):u.draw(t,r))}for(c=0;c<o.length;++c)o[c].draw(t,r)}getStyle(t,e){const s=e?"active":"default";return t===void 0&&this._cachedMeta.dataset?this.resolveDatasetElementOptions(s):this.resolveDataElementOptions(t||0,s)}getContext(t,e,s){const n=this.getDataset();let r;if(t>=0&&t<this._cachedMeta.data.length){const o=this._cachedMeta.data[t];r=o.$context||(o.$context=fh(this.getContext(),t,o)),r.parsed=this.getParsed(t),r.raw=n.data[t],r.index=r.dataIndex=t}else r=this.$context||(this.$context=bh(this.chart.getContext(),this.index)),r.dataset=n,r.index=r.datasetIndex=this.index;return r.active=!!e,r.mode=s,r}resolveDatasetElementOptions(t){return this._resolveElementOptions(this.datasetElementType.id,t)}resolveDataElementOptions(t,e){return this._resolveElementOptions(this.dataElementType.id,e,t)}_resolveElementOptions(t,e="default",s){const n=e==="active",r=this._cachedDataOpts,o=t+"-"+e,a=r[o],l=this.enableOptionSharing&&Ee(s);if(a)return pn(a,l);const h=this.chart.config,c=h.datasetElementScopeKeys(this._type,t),u=n?[`${t}Hover`,"hover",t,""]:[t,""],d=h.getOptionScopes(this.getDataset(),c),b=Object.keys(et.elements[t]),g=()=>this.getContext(s,n,e),p=h.resolveNamedOptions(d,b,g,u);return p.$shared&&(p.$shared=l,r[o]=Object.freeze(pn(p,l))),p}_resolveAnimations(t,e,s){const n=this.chart,r=this._cachedDataOpts,o=`animation-${e}`,a=r[o];if(a)return a;let l;if(n.options.animation!==!1){const c=this.chart.config,u=c.datasetAnimationScopeKeys(this._type,e),d=c.getOptionScopes(this.getDataset(),u);l=c.createResolver(d,this.getContext(t,s,e))}const h=new Cr(n,l&&l.animations);return l&&l._cacheable&&(r[o]=Object.freeze(h)),h}getSharedOptions(t){if(t.$shared)return this._sharedOptions||(this._sharedOptions=Object.assign({},t))}includeOptions(t,e){return!e||Fi(t)||this.chart._animationsDisabled}_getSharedOptions(t,e){const s=this.resolveDataElementOptions(t,e),n=this._sharedOptions,r=this.getSharedOptions(s),o=this.includeOptions(e,r)||r!==n;return this.updateSharedOptions(r,e,s),{sharedOptions:r,includeOptions:o}}updateElement(t,e,s,n){Fi(n)?Object.assign(t,s):this._resolveAnimations(e,n).update(t,s)}updateSharedOptions(t,e,s){t&&!Fi(e)&&this._resolveAnimations(void 0,e).update(t,s)}_setStyle(t,e,s,n){t.active=n;const r=this.getStyle(e,n);this._resolveAnimations(e,s,n).update(t,{options:!n&&this.getSharedOptions(r)||r})}removeHoverStyle(t,e,s){this._setStyle(t,s,"active",!1)}setHoverStyle(t,e,s){this._setStyle(t,s,"active",!0)}_removeDatasetHoverStyle(){const t=this._cachedMeta.dataset;t&&this._setStyle(t,void 0,"active",!1)}_setDatasetHoverStyle(){const t=this._cachedMeta.dataset;t&&this._setStyle(t,void 0,"active",!0)}_resyncElements(t){const e=this._data,s=this._cachedMeta.data;for(const[a,l,h]of this._syncList)this[a](l,h);this._syncList=[];const n=s.length,r=e.length,o=Math.min(r,n);o&&this.parse(0,o),r>n?this._insertElements(n,r-n,t):r<n&&this._removeElements(r,n-r)}_insertElements(t,e,s=!0){const n=this._cachedMeta,r=n.data,o=t+e;let a;const l=h=>{for(h.length+=e,a=h.length-1;a>=o;a--)h[a]=h[a-e]};for(l(r),a=t;a<o;++a)r[a]=new this.dataElementType;this._parsing&&l(n._parsed),this.parse(t,e),s&&this.updateElements(r,t,e,"reset")}updateElements(t,e,s,n){}_removeElements(t,e){const s=this._cachedMeta;if(this._parsing){const n=s._parsed.splice(t,e);s._stacked&&me(s,n)}s.data.splice(t,e)}_sync(t){if(this._parsing)this._syncList.push(t);else{const[e,s,n]=t;this[e](s,n)}this.chart._dataChanges.push([this.index,...t])}_onDataPush(){const t=arguments.length;this._sync(["_insertElements",this.getDataset().data.length-t,t])}_onDataPop(){this._sync(["_removeElements",this._cachedMeta.data.length-1,1])}_onDataShift(){this._sync(["_removeElements",0,1])}_onDataSplice(t,e){e&&this._sync(["_removeElements",t,e]);const s=arguments.length-2;s&&this._sync(["_insertElements",t,s])}_onDataUnshift(){this._sync(["_insertElements",0,arguments.length])}}R(te,"defaults",{}),R(te,"datasetElementType",null),R(te,"dataElementType",null);function ph(i,t){if(!i._cache.$bar){const e=i.getMatchingVisibleMetas(t);let s=[];for(let n=0,r=e.length;n<r;n++)s=s.concat(e[n].controller.getAllParsedValues(i));i._cache.$bar=dr(s.sort((n,r)=>n-r))}return i._cache.$bar}function mh(i){const t=i.iScale,e=ph(t,i.type);let s=t._length,n,r,o,a;const l=()=>{o===32767||o===-32768||(Ee(a)&&(s=Math.min(s,Math.abs(o-a)||s)),a=o)};for(n=0,r=e.length;n<r;++n)o=t.getPixelForValue(e[n]),l();for(a=void 0,n=0,r=t.ticks.length;n<r;++n)o=t.getPixelForTick(n),l();return s}function xh(i,t,e,s){const n=e.barThickness;let r,o;return $(n)?(r=t.min*e.categoryPercentage,o=e.barPercentage):(r=n*s,o=1),{chunk:r/s,ratio:o,start:t.pixels[i]-r/2}}function yh(i,t,e,s){const n=t.pixels,r=n[i];let o=i>0?n[i-1]:null,a=i<n.length-1?n[i+1]:null;const l=e.categoryPercentage;o===null&&(o=r-(a===null?t.end-t.start:a-r)),a===null&&(a=r+r-o);const h=r-(r-Math.min(o,a))/2*l;return{chunk:Math.abs(a-o)/2*l/s,ratio:e.barPercentage,start:h}}function _h(i,t,e,s){const n=e.parse(i[0],s),r=e.parse(i[1],s),o=Math.min(n,r),a=Math.max(n,r);let l=o,h=a;Math.abs(o)>Math.abs(a)&&(l=a,h=o),t[e.axis]=h,t._custom={barStart:l,barEnd:h,start:n,end:r,min:o,max:a}}function Or(i,t,e,s){return nt(i)?_h(i,t,e,s):t[e.axis]=e.parse(i,s),t}function mn(i,t,e,s){const n=i.iScale,r=i.vScale,o=n.getLabels(),a=n===r,l=[];let h,c,u,d;for(h=e,c=e+s;h<c;++h)d=t[h],u={},u[n.axis]=a||n.parse(o[h],h),l.push(Or(d,u,r,h));return l}function zi(i){return i&&i.barStart!==void 0&&i.barEnd!==void 0}function vh(i,t,e){return i!==0?Ct(i):(t.isHorizontal()?1:-1)*(t.min>=e?1:-1)}function kh(i){let t,e,s,n,r;return i.horizontal?(t=i.base>i.x,e="left",s="right"):(t=i.base<i.y,e="bottom",s="top"),t?(n="end",r="start"):(n="start",r="end"),{start:e,end:s,reverse:t,top:n,bottom:r}}function wh(i,t,e,s){let n=t.borderSkipped;const r={};if(!n){i.borderSkipped=r;return}if(n===!0){i.borderSkipped={top:!0,right:!0,bottom:!0,left:!0};return}const{start:o,end:a,reverse:l,top:h,bottom:c}=kh(i);n==="middle"&&e&&(i.enableBorderRadius=!0,(e._top||0)===s?n=h:(e._bottom||0)===s?n=c:(r[xn(c,o,a,l)]=!0,n=h)),r[xn(n,o,a,l)]=!0,i.borderSkipped=r}function xn(i,t,e,s){return s?(i=Sh(i,t,e),i=yn(i,e,t)):i=yn(i,t,e),i}function Sh(i,t,e){return i===t?e:i===e?t:i}function yn(i,t,e){return i==="start"?t:i==="end"?e:i}function Mh(i,{inflateAmount:t},e){i.inflateAmount=t==="auto"?e===1?.33:0:t}class ai extends te{parsePrimitiveData(t,e,s,n){return mn(t,e,s,n)}parseArrayData(t,e,s,n){return mn(t,e,s,n)}parseObjectData(t,e,s,n){const{iScale:r,vScale:o}=t,{xAxisKey:a="x",yAxisKey:l="y"}=this._parsing,h=r.axis==="x"?a:l,c=o.axis==="x"?a:l,u=[];let d,b,g,p;for(d=s,b=s+n;d<b;++d)p=e[d],g={},g[r.axis]=r.parse(ee(p,h),d),u.push(Or(ee(p,c),g,o,d));return u}updateRangeFromParsed(t,e,s,n){super.updateRangeFromParsed(t,e,s,n);const r=s._custom;r&&e===this._cachedMeta.vScale&&(t.min=Math.min(t.min,r.min),t.max=Math.max(t.max,r.max))}getMaxOverflow(){return 0}getLabelAndValue(t){const e=this._cachedMeta,{iScale:s,vScale:n}=e,r=this.getParsed(t),o=r._custom,a=zi(o)?"["+o.start+", "+o.end+"]":""+n.getLabelForValue(r[n.axis]);return{label:""+s.getLabelForValue(r[s.axis]),value:a}}initialize(){this.enableOptionSharing=!0,super.initialize();const t=this._cachedMeta;t.stack=this.getDataset().stack}update(t){const e=this._cachedMeta;this.updateElements(e.data,0,e.data.length,t)}updateElements(t,e,s,n){const r=n==="reset",{index:o,_cachedMeta:{vScale:a}}=this,l=a.getBasePixel(),h=a.isHorizontal(),c=this._getRuler(),{sharedOptions:u,includeOptions:d}=this._getSharedOptions(e,n);for(let b=e;b<e+s;b++){const g=this.getParsed(b),p=r||$(g[a.axis])?{base:l,head:l}:this._calculateBarValuePixels(b),x=this._calculateBarIndexPixels(b,c),y=(g._stacks||{})[a.axis],_={horizontal:h,base:p.base,enableBorderRadius:!y||zi(g._custom)||o===y._top||o===y._bottom,x:h?p.head:x.center,y:h?x.center:p.head,height:h?x.size:Math.abs(p.size),width:h?Math.abs(p.size):x.size};d&&(_.options=u||this.resolveDataElementOptions(b,t[b].active?"active":n));const w=_.options||t[b].options;wh(_,w,y,o),Mh(_,w,c.ratio),this.updateElement(t[b],b,_,n)}}_getStacks(t,e){const{iScale:s}=this._cachedMeta,n=s.getMatchingVisibleMetas(this._type).filter(c=>c.controller.options.grouped),r=s.options.stacked,o=[],a=this._cachedMeta.controller.getParsed(e),l=a&&a[s.axis],h=c=>{const u=c._parsed.find(b=>b[s.axis]===l),d=u&&u[c.vScale.axis];if($(d)||isNaN(d))return!0};for(const c of n)if(!(e!==void 0&&h(c))&&((r===!1||o.indexOf(c.stack)===-1||r===void 0&&c.stack===void 0)&&o.push(c.stack),c.index===t))break;return o.length||o.push(void 0),o}_getStackCount(t){return this._getStacks(void 0,t).length}_getAxisCount(){return this._getAxis().length}getFirstScaleIdForIndexAxis(){const t=this.chart.scales,e=this.chart.options.indexAxis;return Object.keys(t).filter(s=>t[s].axis===e).shift()}_getAxis(){const t={},e=this.getFirstScaleIdForIndexAxis();for(const s of this.chart.data.datasets)t[N(this.chart.options.indexAxis==="x"?s.xAxisID:s.yAxisID,e)]=!0;return Object.keys(t)}_getStackIndex(t,e,s){const n=this._getStacks(t,s),r=e!==void 0?n.indexOf(e):-1;return r===-1?n.length-1:r}_getRuler(){const t=this.options,e=this._cachedMeta,s=e.iScale,n=[];let r,o;for(r=0,o=e.data.length;r<o;++r)n.push(s.getPixelForValue(this.getParsed(r)[s.axis],r));const a=t.barThickness;return{min:a||mh(e),pixels:n,start:s._startPixel,end:s._endPixel,stackCount:this._getStackCount(),scale:s,grouped:t.grouped,ratio:a?1:t.categoryPercentage*t.barPercentage}}_calculateBarValuePixels(t){const{_cachedMeta:{vScale:e,_stacked:s,index:n},options:{base:r,minBarLength:o}}=this,a=r||0,l=this.getParsed(t),h=l._custom,c=zi(h);let u=l[e.axis],d=0,b=s?this.applyStack(e,l,s):u,g,p;b!==u&&(d=b-u,b=u),c&&(u=h.barStart,b=h.barEnd-h.barStart,u!==0&&Ct(u)!==Ct(h.barEnd)&&(d=0),d+=u);const x=!$(r)&&!c?r:d;let y=e.getPixelForValue(x);if(this.chart.getDataVisibility(t)?g=e.getPixelForValue(d+b):g=y,p=g-y,Math.abs(p)<o){p=vh(p,e,a)*o,u===a&&(y-=p/2);const _=e.getPixelForDecimal(0),w=e.getPixelForDecimal(1),M=Math.min(_,w),v=Math.max(_,w);y=Math.max(Math.min(y,v),M),g=y+p,s&&!c&&(l._stacks[e.axis]._visualValues[n]=e.getValueForPixel(g)-e.getValueForPixel(y))}if(y===e.getPixelForValue(a)){const _=Ct(p)*e.getLineWidthForValue(a)/2;y+=_,p-=_}return{size:p,base:y,head:g,center:g+p/2}}_calculateBarIndexPixels(t,e){const s=e.scale,n=this.options,r=n.skipNull,o=N(n.maxBarThickness,1/0);let a,l;const h=this._getAxisCount();if(e.grouped){const c=r?this._getStackCount(t):e.stackCount,u=n.barThickness==="flex"?yh(t,e,n,c*h):xh(t,e,n,c*h),d=this.chart.options.indexAxis==="x"?this.getDataset().xAxisID:this.getDataset().yAxisID,b=this._getAxis().indexOf(N(d,this.getFirstScaleIdForIndexAxis())),g=this._getStackIndex(this.index,this._cachedMeta.stack,r?t:void 0)+b;a=u.start+u.chunk*g+u.chunk/2,l=Math.min(o,u.chunk*u.ratio)}else a=s.getPixelForValue(this.getParsed(t)[s.axis],t),l=Math.min(o,e.min*e.ratio);return{base:a-l/2,head:a+l/2,center:a,size:l}}draw(){const t=this._cachedMeta,e=t.vScale,s=t.data,n=s.length;let r=0;for(;r<n;++r)this.getParsed(r)[e.axis]!==null&&!s[r].hidden&&s[r].draw(this._ctx)}}R(ai,"id","bar"),R(ai,"defaults",{datasetElementType:!1,dataElementType:"bar",categoryPercentage:.8,barPercentage:.9,grouped:!0,animations:{numbers:{type:"number",properties:["x","y","base","width","height"]}}}),R(ai,"overrides",{scales:{_index_:{type:"category",offset:!0,grid:{offset:!0}},_value_:{type:"linear",beginAtZero:!0}}});function Ch(i,t,e){let s=1,n=1,r=0,o=0;if(t<Q){const a=i,l=a+t,h=Math.cos(a),c=Math.sin(a),u=Math.cos(l),d=Math.sin(l),b=(w,M,v)=>Ne(w,a,l,!0)?1:Math.max(M,M*e,v,v*e),g=(w,M,v)=>Ne(w,a,l,!0)?-1:Math.min(M,M*e,v,v*e),p=b(0,h,u),x=b(rt,c,d),y=g(U,h,u),_=g(U+rt,c,d);s=(p-y)/2,n=(x-_)/2,r=-(p+y)/2,o=-(x+_)/2}return{ratioX:s,ratioY:n,offsetX:r,offsetY:o}}class we extends te{constructor(t,e){super(t,e),this.enableOptionSharing=!0,this.innerRadius=void 0,this.outerRadius=void 0,this.offsetX=void 0,this.offsetY=void 0}linkScales(){}parse(t,e){const s=this.getDataset().data,n=this._cachedMeta;if(this._parsing===!1)n._parsed=s;else{let r=l=>+s[l];if(W(s[t])){const{key:l="value"}=this._parsing;r=h=>+ee(s[h],l)}let o,a;for(o=t,a=t+e;o<a;++o)n._parsed[o]=r(o)}}_getRotation(){return Et(this.options.rotation-90)}_getCircumference(){return Et(this.options.circumference)}_getRotationExtents(){let t=Q,e=-Q;for(let s=0;s<this.chart.data.datasets.length;++s)if(this.chart.isDatasetVisible(s)&&this.chart.getDatasetMeta(s).type===this._type){const n=this.chart.getDatasetMeta(s).controller,r=n._getRotation(),o=n._getCircumference();t=Math.min(t,r),e=Math.max(e,r+o)}return{rotation:t,circumference:e-t}}update(t){const e=this.chart,{chartArea:s}=e,n=this._cachedMeta,r=n.data,o=this.getMaxBorderWidth()+this.getMaxOffset(r)+this.options.spacing,a=Math.max((Math.min(s.width,s.height)-o)/2,0),l=Math.min(ja(this.options.cutout,a),1),h=this._getRingWeight(this.index),{circumference:c,rotation:u}=this._getRotationExtents(),{ratioX:d,ratioY:b,offsetX:g,offsetY:p}=Ch(u,c,l),x=(s.width-o)/d,y=(s.height-o)/b,_=Math.max(Math.min(x,y)/2,0),w=ar(this.options.radius,_),M=Math.max(w*l,0),v=(w-M)/this._getVisibleDatasetWeightTotal();this.offsetX=g*w,this.offsetY=p*w,n.total=this.calculateTotal(),this.outerRadius=w-v*this._getRingWeightOffset(this.index),this.innerRadius=Math.max(this.outerRadius-v*h,0),this.updateElements(r,0,r.length,t)}_circumference(t,e){const s=this.options,n=this._cachedMeta,r=this._getCircumference();return e&&s.animation.animateRotate||!this.chart.getDataVisibility(t)||n._parsed[t]===null||n.data[t].hidden?0:this.calculateCircumference(n._parsed[t]*r/Q)}updateElements(t,e,s,n){const r=n==="reset",o=this.chart,a=o.chartArea,h=o.options.animation,c=(a.left+a.right)/2,u=(a.top+a.bottom)/2,d=r&&h.animateScale,b=d?0:this.innerRadius,g=d?0:this.outerRadius,{sharedOptions:p,includeOptions:x}=this._getSharedOptions(e,n);let y=this._getRotation(),_;for(_=0;_<e;++_)y+=this._circumference(_,r);for(_=e;_<e+s;++_){const w=this._circumference(_,r),M=t[_],v={x:c+this.offsetX,y:u+this.offsetY,startAngle:y,endAngle:y+w,circumference:w,outerRadius:g,innerRadius:b};x&&(v.options=p||this.resolveDataElementOptions(_,M.active?"active":n)),y+=w,this.updateElement(M,_,v,n)}}calculateTotal(){const t=this._cachedMeta,e=t.data;let s=0,n;for(n=0;n<e.length;n++){const r=t._parsed[n];r!==null&&!isNaN(r)&&this.chart.getDataVisibility(n)&&!e[n].hidden&&(s+=Math.abs(r))}return s}calculateCircumference(t){const e=this._cachedMeta.total;return e>0&&!isNaN(t)?Q*(Math.abs(t)/e):0}getLabelAndValue(t){const e=this._cachedMeta,s=this.chart,n=s.data.labels||[],r=as(e._parsed[t],s.options.locale);return{label:n[t]||"",value:r}}getMaxBorderWidth(t){let e=0;const s=this.chart;let n,r,o,a,l;if(!t){for(n=0,r=s.data.datasets.length;n<r;++n)if(s.isDatasetVisible(n)){o=s.getDatasetMeta(n),t=o.data,a=o.controller;break}}if(!t)return 0;for(n=0,r=t.length;n<r;++n)l=a.resolveDataElementOptions(n),l.borderAlign!=="inner"&&(e=Math.max(e,l.borderWidth||0,l.hoverBorderWidth||0));return e}getMaxOffset(t){let e=0;for(let s=0,n=t.length;s<n;++s){const r=this.resolveDataElementOptions(s);e=Math.max(e,r.offset||0,r.hoverOffset||0)}return e}_getRingWeightOffset(t){let e=0;for(let s=0;s<t;++s)this.chart.isDatasetVisible(s)&&(e+=this._getRingWeight(s));return e}_getRingWeight(t){return Math.max(N(this.chart.data.datasets[t].weight,1),0)}_getVisibleDatasetWeightTotal(){return this._getRingWeightOffset(this.chart.data.datasets.length)||1}}R(we,"id","doughnut"),R(we,"defaults",{datasetElementType:!1,dataElementType:"arc",animation:{animateRotate:!0,animateScale:!1},animations:{numbers:{type:"number",properties:["circumference","endAngle","innerRadius","outerRadius","startAngle","x","y","offset","borderWidth","spacing"]}},cutout:"50%",rotation:0,circumference:360,radius:"100%",spacing:0,indexAxis:"r"}),R(we,"descriptors",{_scriptable:t=>t!=="spacing",_indexable:t=>t!=="spacing"&&!t.startsWith("borderDash")&&!t.startsWith("hoverBorderDash")}),R(we,"overrides",{aspectRatio:1,plugins:{legend:{labels:{generateLabels(t){const e=t.data;if(e.labels.length&&e.datasets.length){const{labels:{pointStyle:s,color:n}}=t.legend.options;return e.labels.map((r,o)=>{const l=t.getDatasetMeta(0).controller.getStyle(o);return{text:r,fillStyle:l.backgroundColor,strokeStyle:l.borderColor,fontColor:n,lineWidth:l.borderWidth,pointStyle:s,hidden:!t.getDataVisibility(o),index:o}})}return[]}},onClick(t,e,s){s.chart.toggleDataVisibility(e.index),s.chart.update()}}}});class li extends te{initialize(){this.enableOptionSharing=!0,this.supportsDecimation=!0,super.initialize()}update(t){const e=this._cachedMeta,{dataset:s,data:n=[],_dataset:r}=e,o=this.chart._animationsDisabled;let{start:a,count:l}=Za(e,n,o);this._drawStart=a,this._drawCount=l,Ja(e)&&(a=0,l=n.length),s._chart=this.chart,s._datasetIndex=this.index,s._decimated=!!r._decimated,s.points=n;const h=this.resolveDatasetElementOptions(t);this.options.showLine||(h.borderWidth=0),h.segment=this.options.segment,this.updateElement(s,void 0,{animated:!o,options:h},t),this.updateElements(n,a,l,t)}updateElements(t,e,s,n){const r=n==="reset",{iScale:o,vScale:a,_stacked:l,_dataset:h}=this._cachedMeta,{sharedOptions:c,includeOptions:u}=this._getSharedOptions(e,n),d=o.axis,b=a.axis,{spanGaps:g,segment:p}=this.options,x=Le(g)?g:Number.POSITIVE_INFINITY,y=this.chart._animationsDisabled||r||n==="none",_=e+s,w=t.length;let M=e>0&&this.getParsed(e-1);for(let v=0;v<w;++v){const O=t[v],S=y?O:{};if(v<e||v>=_){S.skip=!0;continue}const C=this.getParsed(v),A=$(C[b]),T=S[d]=o.getPixelForValue(C[d],v),E=S[b]=r||A?a.getBasePixel():a.getPixelForValue(l?this.applyStack(a,C,l):C[b],v);S.skip=isNaN(T)||isNaN(E)||A,S.stop=v>0&&Math.abs(C[d]-M[d])>x,p&&(S.parsed=C,S.raw=h.data[v]),u&&(S.options=c||this.resolveDataElementOptions(v,O.active?"active":n)),y||this.updateElement(O,v,S,n),M=C}}getMaxOverflow(){const t=this._cachedMeta,e=t.dataset,s=e.options&&e.options.borderWidth||0,n=t.data||[];if(!n.length)return s;const r=n[0].size(this.resolveDataElementOptions(0)),o=n[n.length-1].size(this.resolveDataElementOptions(n.length-1));return Math.max(s,r,o)/2}draw(){const t=this._cachedMeta;t.dataset.updateControlPoints(this.chart.chartArea,t.iScale.axis),super.draw()}}R(li,"id","line"),R(li,"defaults",{datasetElementType:"line",dataElementType:"point",showLine:!0,spanGaps:!1}),R(li,"overrides",{scales:{_index_:{type:"category"},_value_:{type:"linear"}}});function qt(){throw new Error("This method is not implemented: Check that a complete date adapter is provided.")}class ps{constructor(t){R(this,"options");this.options=t||{}}static override(t){Object.assign(ps.prototype,t)}init(){}formats(){return qt()}parse(){return qt()}format(){return qt()}add(){return qt()}diff(){return qt()}startOf(){return qt()}endOf(){return qt()}}var Ph={_date:ps};function Oh(i,t,e,s){const{controller:n,data:r,_sorted:o}=i,a=n._cachedMeta.iScale,l=i.dataset&&i.dataset.options?i.dataset.options.spanGaps:null;if(a&&t===a.axis&&t!=="r"&&o&&r.length){const h=a._reversePixels?Ua:Zt;if(s){if(n._sharedOptions){const c=r[0],u=typeof c.getRange=="function"&&c.getRange(t);if(u){const d=h(r,t,e-u),b=h(r,t,e+u);return{lo:d.lo,hi:b.hi}}}}else{const c=h(r,t,e);if(l){const{vScale:u}=n._cachedMeta,{_parsed:d}=i,b=d.slice(0,c.lo+1).reverse().findIndex(p=>!$(p[u.axis]));c.lo-=Math.max(0,b);const g=d.slice(c.hi).findIndex(p=>!$(p[u.axis]));c.hi+=Math.max(0,g)}return c}}return{lo:0,hi:r.length-1}}function Si(i,t,e,s,n){const r=i.getSortedVisibleDatasetMetas(),o=e[t];for(let a=0,l=r.length;a<l;++a){const{index:h,data:c}=r[a],{lo:u,hi:d}=Oh(r[a],t,o,n);for(let b=u;b<=d;++b){const g=c[b];g.skip||s(g,h,b)}}}function Rh(i){const t=i.indexOf("x")!==-1,e=i.indexOf("y")!==-1;return function(s,n){const r=t?Math.abs(s.x-n.x):0,o=e?Math.abs(s.y-n.y):0;return Math.sqrt(Math.pow(r,2)+Math.pow(o,2))}}function Bi(i,t,e,s,n){const r=[];return!n&&!i.isPointInArea(t)||Si(i,e,t,function(a,l,h){!n&&!Ie(a,i.chartArea,0)||a.inRange(t.x,t.y,s)&&r.push({element:a,datasetIndex:l,index:h})},!0),r}function Ah(i,t,e,s){let n=[];function r(o,a,l){const{startAngle:h,endAngle:c}=o.getProps(["startAngle","endAngle"],s),{angle:u}=cr(o,{x:t.x,y:t.y});Ne(u,h,c)&&n.push({element:o,datasetIndex:a,index:l})}return Si(i,e,t,r),n}function jh(i,t,e,s,n,r){let o=[];const a=Rh(e);let l=Number.POSITIVE_INFINITY;function h(c,u,d){const b=c.inRange(t.x,t.y,n);if(s&&!b)return;const g=c.getCenterPoint(n);if(!(!!r||i.isPointInArea(g))&&!b)return;const x=a(t,g);x<l?(o=[{element:c,datasetIndex:u,index:d}],l=x):x===l&&o.push({element:c,datasetIndex:u,index:d})}return Si(i,e,t,h),o}function Hi(i,t,e,s,n,r){return!r&&!i.isPointInArea(t)?[]:e==="r"&&!s?Ah(i,t,e,n):jh(i,t,e,s,n,r)}function _n(i,t,e,s,n){const r=[],o=e==="x"?"inXRange":"inYRange";let a=!1;return Si(i,e,t,(l,h,c)=>{l[o]&&l[o](t[e],n)&&(r.push({element:l,datasetIndex:h,index:c}),a=a||l.inRange(t.x,t.y,n))}),s&&!a?[]:r}var Dh={modes:{index(i,t,e,s){const n=Kt(t,i),r=e.axis||"x",o=e.includeInvisible||!1,a=e.intersect?Bi(i,n,r,s,o):Hi(i,n,r,!1,s,o),l=[];return a.length?(i.getSortedVisibleDatasetMetas().forEach(h=>{const c=a[0].index,u=h.data[c];u&&!u.skip&&l.push({element:u,datasetIndex:h.index,index:c})}),l):[]},dataset(i,t,e,s){const n=Kt(t,i),r=e.axis||"xy",o=e.includeInvisible||!1;let a=e.intersect?Bi(i,n,r,s,o):Hi(i,n,r,!1,s,o);if(a.length>0){const l=a[0].datasetIndex,h=i.getDatasetMeta(l).data;a=[];for(let c=0;c<h.length;++c)a.push({element:h[c],datasetIndex:l,index:c})}return a},point(i,t,e,s){const n=Kt(t,i),r=e.axis||"xy",o=e.includeInvisible||!1;return Bi(i,n,r,s,o)},nearest(i,t,e,s){const n=Kt(t,i),r=e.axis||"xy",o=e.includeInvisible||!1;return Hi(i,n,r,e.intersect,s,o)},x(i,t,e,s){const n=Kt(t,i);return _n(i,n,"x",e.intersect,s)},y(i,t,e,s){const n=Kt(t,i);return _n(i,n,"y",e.intersect,s)}}};const Rr=["left","top","right","bottom"];function xe(i,t){return i.filter(e=>e.pos===t)}function vn(i,t){return i.filter(e=>Rr.indexOf(e.pos)===-1&&e.box.axis===t)}function ye(i,t){return i.sort((e,s)=>{const n=t?s:e,r=t?e:s;return n.weight===r.weight?n.index-r.index:n.weight-r.weight})}function Th(i){const t=[];let e,s,n,r,o,a;for(e=0,s=(i||[]).length;e<s;++e)n=i[e],{position:r,options:{stack:o,stackWeight:a=1}}=n,t.push({index:e,box:n,pos:r,horizontal:n.isHorizontal(),weight:n.weight,stack:o&&r+o,stackWeight:a});return t}function Eh(i){const t={};for(const e of i){const{stack:s,pos:n,stackWeight:r}=e;if(!s||!Rr.includes(n))continue;const o=t[s]||(t[s]={count:0,placed:0,weight:0,size:0});o.count++,o.weight+=r}return t}function Lh(i,t){const e=Eh(i),{vBoxMaxWidth:s,hBoxMaxHeight:n}=t;let r,o,a;for(r=0,o=i.length;r<o;++r){a=i[r];const{fullSize:l}=a.box,h=e[a.stack],c=h&&a.stackWeight/h.weight;a.horizontal?(a.width=c?c*s:l&&t.availableWidth,a.height=n):(a.width=s,a.height=c?c*n:l&&t.availableHeight)}return e}function Nh(i){const t=Th(i),e=ye(t.filter(h=>h.box.fullSize),!0),s=ye(xe(t,"left"),!0),n=ye(xe(t,"right")),r=ye(xe(t,"top"),!0),o=ye(xe(t,"bottom")),a=vn(t,"x"),l=vn(t,"y");return{fullSize:e,leftAndTop:s.concat(r),rightAndBottom:n.concat(l).concat(o).concat(a),chartArea:xe(t,"chartArea"),vertical:s.concat(n).concat(l),horizontal:r.concat(o).concat(a)}}function kn(i,t,e,s){return Math.max(i[e],t[e])+Math.max(i[s],t[s])}function Ar(i,t){i.top=Math.max(i.top,t.top),i.left=Math.max(i.left,t.left),i.bottom=Math.max(i.bottom,t.bottom),i.right=Math.max(i.right,t.right)}function Ih(i,t,e,s){const{pos:n,box:r}=e,o=i.maxPadding;if(!W(n)){e.size&&(i[n]-=e.size);const u=s[e.stack]||{size:0,count:1};u.size=Math.max(u.size,e.horizontal?r.height:r.width),e.size=u.size/u.count,i[n]+=e.size}r.getPadding&&Ar(o,r.getPadding());const a=Math.max(0,t.outerWidth-kn(o,i,"left","right")),l=Math.max(0,t.outerHeight-kn(o,i,"top","bottom")),h=a!==i.w,c=l!==i.h;return i.w=a,i.h=l,e.horizontal?{same:h,other:c}:{same:c,other:h}}function Fh(i){const t=i.maxPadding;function e(s){const n=Math.max(t[s]-i[s],0);return i[s]+=n,n}i.y+=e("top"),i.x+=e("left"),e("right"),e("bottom")}function zh(i,t){const e=t.maxPadding;function s(n){const r={left:0,top:0,right:0,bottom:0};return n.forEach(o=>{r[o]=Math.max(t[o],e[o])}),r}return s(i?["left","right"]:["top","bottom"])}function Se(i,t,e,s){const n=[];let r,o,a,l,h,c;for(r=0,o=i.length,h=0;r<o;++r){a=i[r],l=a.box,l.update(a.width||t.w,a.height||t.h,zh(a.horizontal,t));const{same:u,other:d}=Ih(t,e,a,s);h|=u&&n.length,c=c||d,l.fullSize||n.push(a)}return h&&Se(n,t,e,s)||c}function ei(i,t,e,s,n){i.top=e,i.left=t,i.right=t+s,i.bottom=e+n,i.width=s,i.height=n}function wn(i,t,e,s){const n=e.padding;let{x:r,y:o}=t;for(const a of i){const l=a.box,h=s[a.stack]||{placed:0,weight:1},c=a.stackWeight/h.weight||1;if(a.horizontal){const u=t.w*c,d=h.size||l.height;Ee(h.start)&&(o=h.start),l.fullSize?ei(l,n.left,o,e.outerWidth-n.right-n.left,d):ei(l,t.left+h.placed,o,u,d),h.start=o,h.placed+=u,o=l.bottom}else{const u=t.h*c,d=h.size||l.width;Ee(h.start)&&(r=h.start),l.fullSize?ei(l,r,n.top,d,e.outerHeight-n.bottom-n.top):ei(l,r,t.top+h.placed,d,u),h.start=r,h.placed+=u,r=l.right}}t.x=r,t.y=o}var mt={addBox(i,t){i.boxes||(i.boxes=[]),t.fullSize=t.fullSize||!1,t.position=t.position||"top",t.weight=t.weight||0,t._layers=t._layers||function(){return[{z:0,draw(e){t.draw(e)}}]},i.boxes.push(t)},removeBox(i,t){const e=i.boxes?i.boxes.indexOf(t):-1;e!==-1&&i.boxes.splice(e,1)},configure(i,t,e){t.fullSize=e.fullSize,t.position=e.position,t.weight=e.weight},update(i,t,e,s){if(!i)return;const n=yt(i.options.layout.padding),r=Math.max(t-n.width,0),o=Math.max(e-n.height,0),a=Nh(i.boxes),l=a.vertical,h=a.horizontal;Y(i.boxes,p=>{typeof p.beforeLayout=="function"&&p.beforeLayout()});const c=l.reduce((p,x)=>x.box.options&&x.box.options.display===!1?p:p+1,0)||1,u=Object.freeze({outerWidth:t,outerHeight:e,padding:n,availableWidth:r,availableHeight:o,vBoxMaxWidth:r/2/c,hBoxMaxHeight:o/2}),d=Object.assign({},n);Ar(d,yt(s));const b=Object.assign({maxPadding:d,w:r,h:o,x:n.left,y:n.top},n),g=Lh(l.concat(h),u);Se(a.fullSize,b,u,g),Se(l,b,u,g),Se(h,b,u,g)&&Se(l,b,u,g),Fh(b),wn(a.leftAndTop,b,u,g),b.x+=b.w,b.y+=b.h,wn(a.rightAndBottom,b,u,g),i.chartArea={left:b.left,top:b.top,right:b.left+b.w,bottom:b.top+b.h,height:b.h,width:b.w},Y(a.chartArea,p=>{const x=p.box;Object.assign(x,i.chartArea),x.update(b.w,b.h,{left:0,top:0,right:0,bottom:0})})}};class jr{acquireContext(t,e){}releaseContext(t){return!1}addEventListener(t,e,s){}removeEventListener(t,e,s){}getDevicePixelRatio(){return 1}getMaximumSize(t,e,s,n){return e=Math.max(0,e||t.width),s=s||t.height,{width:e,height:Math.max(0,n?Math.floor(e/n):s)}}isAttached(t){return!0}updateConfig(t){}}class Bh extends jr{acquireContext(t){return t&&t.getContext&&t.getContext("2d")||null}updateConfig(t){t.options.animation=!1}}const hi="$chartjs",Hh={touchstart:"mousedown",touchmove:"mousemove",touchend:"mouseup",pointerenter:"mouseenter",pointerdown:"mousedown",pointermove:"mousemove",pointerup:"mouseup",pointerleave:"mouseout",pointerout:"mouseout"},Sn=i=>i===null||i==="";function Wh(i,t){const e=i.style,s=i.getAttribute("height"),n=i.getAttribute("width");if(i[hi]={initial:{height:s,width:n,style:{display:e.display,height:e.height,width:e.width}}},e.display=e.display||"block",e.boxSizing=e.boxSizing||"border-box",Sn(n)){const r=an(i,"width");r!==void 0&&(i.width=r)}if(Sn(s))if(i.style.height==="")i.height=i.width/(t||2);else{const r=an(i,"height");r!==void 0&&(i.height=r)}return i}const Dr=Hl?{passive:!0}:!1;function Vh(i,t,e){i&&i.addEventListener(t,e,Dr)}function $h(i,t,e){i&&i.canvas&&i.canvas.removeEventListener(t,e,Dr)}function Yh(i,t){const e=Hh[i.type]||i.type,{x:s,y:n}=Kt(i,t);return{type:e,chart:t,native:i,x:s!==void 0?s:null,y:n!==void 0?n:null}}function xi(i,t){for(const e of i)if(e===t||e.contains(t))return!0}function Uh(i,t,e){const s=i.canvas,n=new MutationObserver(r=>{let o=!1;for(const a of r)o=o||xi(a.addedNodes,s),o=o&&!xi(a.removedNodes,s);o&&e()});return n.observe(document,{childList:!0,subtree:!0}),n}function Xh(i,t,e){const s=i.canvas,n=new MutationObserver(r=>{let o=!1;for(const a of r)o=o||xi(a.removedNodes,s),o=o&&!xi(a.addedNodes,s);o&&e()});return n.observe(document,{childList:!0,subtree:!0}),n}const ze=new Map;let Mn=0;function Tr(){const i=window.devicePixelRatio;i!==Mn&&(Mn=i,ze.forEach((t,e)=>{e.currentDevicePixelRatio!==i&&t()}))}function qh(i,t){ze.size||window.addEventListener("resize",Tr),ze.set(i,t)}function Kh(i){ze.delete(i),ze.size||window.removeEventListener("resize",Tr)}function Gh(i,t,e){const s=i.canvas,n=s&&gs(s);if(!n)return;const r=fr((a,l)=>{const h=n.clientWidth;e(a,l),h<n.clientWidth&&e()},window),o=new ResizeObserver(a=>{const l=a[0],h=l.contentRect.width,c=l.contentRect.height;h===0&&c===0||r(h,c)});return o.observe(n),qh(i,r),o}function Wi(i,t,e){e&&e.disconnect(),t==="resize"&&Kh(i)}function Zh(i,t,e){const s=i.canvas,n=fr(r=>{i.ctx!==null&&e(Yh(r,i))},i);return Vh(s,t,n),n}class Jh extends jr{acquireContext(t,e){const s=t&&t.getContext&&t.getContext("2d");return s&&s.canvas===t?(Wh(t,e),s):null}releaseContext(t){const e=t.canvas;if(!e[hi])return!1;const s=e[hi].initial;["height","width"].forEach(r=>{const o=s[r];$(o)?e.removeAttribute(r):e.setAttribute(r,o)});const n=s.style||{};return Object.keys(n).forEach(r=>{e.style[r]=n[r]}),e.width=e.width,delete e[hi],!0}addEventListener(t,e,s){this.removeEventListener(t,e);const n=t.$proxies||(t.$proxies={}),o={attach:Uh,detach:Xh,resize:Gh}[e]||Zh;n[e]=o(t,e,s)}removeEventListener(t,e){const s=t.$proxies||(t.$proxies={}),n=s[e];if(!n)return;({attach:Wi,detach:Wi,resize:Wi}[e]||$h)(t,e,n),s[e]=void 0}getDevicePixelRatio(){return window.devicePixelRatio}getMaximumSize(t,e,s,n){return Bl(t,e,s,n)}isAttached(t){const e=t&&gs(t);return!!(e&&e.isConnected)}}function Qh(i){return!fs()||typeof OffscreenCanvas<"u"&&i instanceof OffscreenCanvas?Bh:Jh}class kt{constructor(){R(this,"x");R(this,"y");R(this,"active",!1);R(this,"options");R(this,"$animations")}tooltipPosition(t){const{x:e,y:s}=this.getProps(["x","y"],t);return{x:e,y:s}}hasValue(){return Le(this.x)&&Le(this.y)}getProps(t,e){const s=this.$animations;if(!e||!s)return this;const n={};return t.forEach(r=>{n[r]=s[r]&&s[r].active()?s[r]._to:this[r]}),n}}R(kt,"defaults",{}),R(kt,"defaultRoutes");function tc(i,t){const e=i.options.ticks,s=ec(i),n=Math.min(e.maxTicksLimit||s,s),r=e.major.enabled?sc(t):[],o=r.length,a=r[0],l=r[o-1],h=[];if(o>n)return nc(t,h,r,o/n),h;const c=ic(r,t,n);if(o>0){let u,d;const b=o>1?Math.round((l-a)/(o-1)):null;for(ii(t,h,c,$(b)?0:a-b,a),u=0,d=o-1;u<d;u++)ii(t,h,c,r[u],r[u+1]);return ii(t,h,c,l,$(b)?t.length:l+b),h}return ii(t,h,c),h}function ec(i){const t=i.options.offset,e=i._tickSize(),s=i._length/e+(t?0:1),n=i._maxLength/e;return Math.floor(Math.min(s,n))}function ic(i,t,e){const s=rc(i),n=t.length/e;if(!s)return Math.max(n,1);const r=za(s);for(let o=0,a=r.length-1;o<a;o++){const l=r[o];if(l>n)return l}return Math.max(n,1)}function sc(i){const t=[];let e,s;for(e=0,s=i.length;e<s;e++)i[e].major&&t.push(e);return t}function nc(i,t,e,s){let n=0,r=e[0],o;for(s=Math.ceil(s),o=0;o<i.length;o++)o===r&&(t.push(i[o]),n++,r=e[n*s])}function ii(i,t,e,s,n){const r=N(s,0),o=Math.min(N(n,i.length),i.length);let a=0,l,h,c;for(e=Math.ceil(e),n&&(l=n-s,e=l/Math.floor(l/e)),c=r;c<0;)a++,c=Math.round(r+a*e);for(h=Math.max(r,0);h<o;h++)h===c&&(t.push(i[h]),a++,c=Math.round(r+a*e))}function rc(i){const t=i.length;let e,s;if(t<2)return!1;for(s=i[0],e=1;e<t;++e)if(i[e]-i[e-1]!==s)return!1;return s}const oc=i=>i==="left"?"right":i==="right"?"left":i,Cn=(i,t,e)=>t==="top"||t==="left"?i[t]+e:i[t]-e,Pn=(i,t)=>Math.min(t||i,i);function On(i,t){const e=[],s=i.length/t,n=i.length;let r=0;for(;r<n;r+=s)e.push(i[Math.floor(r)]);return e}function ac(i,t,e){const s=i.ticks.length,n=Math.min(t,s-1),r=i._startPixel,o=i._endPixel,a=1e-6;let l=i.getPixelForTick(n),h;if(!(e&&(s===1?h=Math.max(l-r,o-l):t===0?h=(i.getPixelForTick(1)-l)/2:h=(l-i.getPixelForTick(n-1))/2,l+=n<t?h:-h,l<r-a||l>o+a)))return l}function lc(i,t){Y(i,e=>{const s=e.gc,n=s.length/2;let r;if(n>t){for(r=0;r<n;++r)delete e.data[s[r]];s.splice(0,n)}})}function _e(i){return i.drawTicks?i.tickLength:0}function Rn(i,t){if(!i.display)return 0;const e=ht(i.font,t),s=yt(i.padding);return(nt(i.text)?i.text.length:1)*e.lineHeight+s.height}function hc(i,t){return se(i,{scale:t,type:"scale"})}function cc(i,t,e){return se(i,{tick:e,index:t,type:"tick"})}function uc(i,t,e){let s=rs(i);return(e&&t!=="right"||!e&&t==="right")&&(s=oc(s)),s}function dc(i,t,e,s){const{top:n,left:r,bottom:o,right:a,chart:l}=i,{chartArea:h,scales:c}=l;let u=0,d,b,g;const p=o-n,x=a-r;if(i.isHorizontal()){if(b=at(s,r,a),W(e)){const y=Object.keys(e)[0],_=e[y];g=c[y].getPixelForValue(_)+p-t}else e==="center"?g=(h.bottom+h.top)/2+p-t:g=Cn(i,e,t);d=a-r}else{if(W(e)){const y=Object.keys(e)[0],_=e[y];b=c[y].getPixelForValue(_)-x+t}else e==="center"?b=(h.left+h.right)/2-x+t:b=Cn(i,e,t);g=at(s,o,n),u=e==="left"?-rt:rt}return{titleX:b,titleY:g,maxWidth:d,rotation:u}}class de extends kt{constructor(t){super(),this.id=t.id,this.type=t.type,this.options=void 0,this.ctx=t.ctx,this.chart=t.chart,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.width=void 0,this.height=void 0,this._margins={left:0,right:0,top:0,bottom:0},this.maxWidth=void 0,this.maxHeight=void 0,this.paddingTop=void 0,this.paddingBottom=void 0,this.paddingLeft=void 0,this.paddingRight=void 0,this.axis=void 0,this.labelRotation=void 0,this.min=void 0,this.max=void 0,this._range=void 0,this.ticks=[],this._gridLineItems=null,this._labelItems=null,this._labelSizes=null,this._length=0,this._maxLength=0,this._longestTextCache={},this._startPixel=void 0,this._endPixel=void 0,this._reversePixels=!1,this._userMax=void 0,this._userMin=void 0,this._suggestedMax=void 0,this._suggestedMin=void 0,this._ticksLength=0,this._borderValue=0,this._cache={},this._dataLimitsCached=!1,this.$context=void 0}init(t){this.options=t.setContext(this.getContext()),this.axis=t.axis,this._userMin=this.parse(t.min),this._userMax=this.parse(t.max),this._suggestedMin=this.parse(t.suggestedMin),this._suggestedMax=this.parse(t.suggestedMax)}parse(t,e){return t}getUserBounds(){let{_userMin:t,_userMax:e,_suggestedMin:s,_suggestedMax:n}=this;return t=wt(t,Number.POSITIVE_INFINITY),e=wt(e,Number.NEGATIVE_INFINITY),s=wt(s,Number.POSITIVE_INFINITY),n=wt(n,Number.NEGATIVE_INFINITY),{min:wt(t,s),max:wt(e,n),minDefined:xt(t),maxDefined:xt(e)}}getMinMax(t){let{min:e,max:s,minDefined:n,maxDefined:r}=this.getUserBounds(),o;if(n&&r)return{min:e,max:s};const a=this.getMatchingVisibleMetas();for(let l=0,h=a.length;l<h;++l)o=a[l].controller.getMinMax(this,t),n||(e=Math.min(e,o.min)),r||(s=Math.max(s,o.max));return e=r&&e>s?s:e,s=n&&e>s?e:s,{min:wt(e,wt(s,e)),max:wt(s,wt(e,s))}}getPadding(){return{left:this.paddingLeft||0,top:this.paddingTop||0,right:this.paddingRight||0,bottom:this.paddingBottom||0}}getTicks(){return this.ticks}getLabels(){const t=this.chart.data;return this.options.labels||(this.isHorizontal()?t.xLabels:t.yLabels)||t.labels||[]}getLabelItems(t=this.chart.chartArea){return this._labelItems||(this._labelItems=this._computeLabelItems(t))}beforeLayout(){this._cache={},this._dataLimitsCached=!1}beforeUpdate(){K(this.options.beforeUpdate,[this])}update(t,e,s){const{beginAtZero:n,grace:r,ticks:o}=this.options,a=o.sampleSize;this.beforeUpdate(),this.maxWidth=t,this.maxHeight=e,this._margins=s=Object.assign({left:0,right:0,top:0,bottom:0},s),this.ticks=null,this._labelSizes=null,this._gridLineItems=null,this._labelItems=null,this.beforeSetDimensions(),this.setDimensions(),this.afterSetDimensions(),this._maxLength=this.isHorizontal()?this.width+s.left+s.right:this.height+s.top+s.bottom,this._dataLimitsCached||(this.beforeDataLimits(),this.determineDataLimits(),this.afterDataLimits(),this._range=xl(this,r,n),this._dataLimitsCached=!0),this.beforeBuildTicks(),this.ticks=this.buildTicks()||[],this.afterBuildTicks();const l=a<this.ticks.length;this._convertTicksToLabels(l?On(this.ticks,a):this.ticks),this.configure(),this.beforeCalculateLabelRotation(),this.calculateLabelRotation(),this.afterCalculateLabelRotation(),o.display&&(o.autoSkip||o.source==="auto")&&(this.ticks=tc(this,this.ticks),this._labelSizes=null,this.afterAutoSkip()),l&&this._convertTicksToLabels(this.ticks),this.beforeFit(),this.fit(),this.afterFit(),this.afterUpdate()}configure(){let t=this.options.reverse,e,s;this.isHorizontal()?(e=this.left,s=this.right):(e=this.top,s=this.bottom,t=!t),this._startPixel=e,this._endPixel=s,this._reversePixels=t,this._length=s-e,this._alignToPixels=this.options.alignToPixels}afterUpdate(){K(this.options.afterUpdate,[this])}beforeSetDimensions(){K(this.options.beforeSetDimensions,[this])}setDimensions(){this.isHorizontal()?(this.width=this.maxWidth,this.left=0,this.right=this.width):(this.height=this.maxHeight,this.top=0,this.bottom=this.height),this.paddingLeft=0,this.paddingTop=0,this.paddingRight=0,this.paddingBottom=0}afterSetDimensions(){K(this.options.afterSetDimensions,[this])}_callHooks(t){this.chart.notifyPlugins(t,this.getContext()),K(this.options[t],[this])}beforeDataLimits(){this._callHooks("beforeDataLimits")}determineDataLimits(){}afterDataLimits(){this._callHooks("afterDataLimits")}beforeBuildTicks(){this._callHooks("beforeBuildTicks")}buildTicks(){return[]}afterBuildTicks(){this._callHooks("afterBuildTicks")}beforeTickToLabelConversion(){K(this.options.beforeTickToLabelConversion,[this])}generateTickLabels(t){const e=this.options.ticks;let s,n,r;for(s=0,n=t.length;s<n;s++)r=t[s],r.label=K(e.callback,[r.value,s,t],this)}afterTickToLabelConversion(){K(this.options.afterTickToLabelConversion,[this])}beforeCalculateLabelRotation(){K(this.options.beforeCalculateLabelRotation,[this])}calculateLabelRotation(){const t=this.options,e=t.ticks,s=Pn(this.ticks.length,t.ticks.maxTicksLimit),n=e.minRotation||0,r=e.maxRotation;let o=n,a,l,h;if(!this._isVisible()||!e.display||n>=r||s<=1||!this.isHorizontal()){this.labelRotation=n;return}const c=this._getLabelSizes(),u=c.widest.width,d=c.highest.height,b=lt(this.chart.width-u,0,this.maxWidth);a=t.offset?this.maxWidth/s:b/(s-1),u+6>a&&(a=b/(s-(t.offset?.5:1)),l=this.maxHeight-_e(t.grid)-e.padding-Rn(t.title,this.chart.options.font),h=Math.sqrt(u*u+d*d),o=Va(Math.min(Math.asin(lt((c.highest.height+6)/a,-1,1)),Math.asin(lt(l/h,-1,1))-Math.asin(lt(d/h,-1,1)))),o=Math.max(n,Math.min(r,o))),this.labelRotation=o}afterCalculateLabelRotation(){K(this.options.afterCalculateLabelRotation,[this])}afterAutoSkip(){}beforeFit(){K(this.options.beforeFit,[this])}fit(){const t={width:0,height:0},{chart:e,options:{ticks:s,title:n,grid:r}}=this,o=this._isVisible(),a=this.isHorizontal();if(o){const l=Rn(n,e.options.font);if(a?(t.width=this.maxWidth,t.height=_e(r)+l):(t.height=this.maxHeight,t.width=_e(r)+l),s.display&&this.ticks.length){const{first:h,last:c,widest:u,highest:d}=this._getLabelSizes(),b=s.padding*2,g=Et(this.labelRotation),p=Math.cos(g),x=Math.sin(g);if(a){const y=s.mirror?0:x*u.width+p*d.height;t.height=Math.min(this.maxHeight,t.height+y+b)}else{const y=s.mirror?0:p*u.width+x*d.height;t.width=Math.min(this.maxWidth,t.width+y+b)}this._calculatePadding(h,c,x,p)}}this._handleMargins(),a?(this.width=this._length=e.width-this._margins.left-this._margins.right,this.height=t.height):(this.width=t.width,this.height=this._length=e.height-this._margins.top-this._margins.bottom)}_calculatePadding(t,e,s,n){const{ticks:{align:r,padding:o},position:a}=this.options,l=this.labelRotation!==0,h=a!=="top"&&this.axis==="x";if(this.isHorizontal()){const c=this.getPixelForTick(0)-this.left,u=this.right-this.getPixelForTick(this.ticks.length-1);let d=0,b=0;l?h?(d=n*t.width,b=s*e.height):(d=s*t.height,b=n*e.width):r==="start"?b=e.width:r==="end"?d=t.width:r!=="inner"&&(d=t.width/2,b=e.width/2),this.paddingLeft=Math.max((d-c+o)*this.width/(this.width-c),0),this.paddingRight=Math.max((b-u+o)*this.width/(this.width-u),0)}else{let c=e.height/2,u=t.height/2;r==="start"?(c=0,u=t.height):r==="end"&&(c=e.height,u=0),this.paddingTop=c+o,this.paddingBottom=u+o}}_handleMargins(){this._margins&&(this._margins.left=Math.max(this.paddingLeft,this._margins.left),this._margins.top=Math.max(this.paddingTop,this._margins.top),this._margins.right=Math.max(this.paddingRight,this._margins.right),this._margins.bottom=Math.max(this.paddingBottom,this._margins.bottom))}afterFit(){K(this.options.afterFit,[this])}isHorizontal(){const{axis:t,position:e}=this.options;return e==="top"||e==="bottom"||t==="x"}isFullSize(){return this.options.fullSize}_convertTicksToLabels(t){this.beforeTickToLabelConversion(),this.generateTickLabels(t);let e,s;for(e=0,s=t.length;e<s;e++)$(t[e].label)&&(t.splice(e,1),s--,e--);this.afterTickToLabelConversion()}_getLabelSizes(){let t=this._labelSizes;if(!t){const e=this.options.ticks.sampleSize;let s=this.ticks;e<s.length&&(s=On(s,e)),this._labelSizes=t=this._computeLabelSizes(s,s.length,this.options.ticks.maxTicksLimit)}return t}_computeLabelSizes(t,e,s){const{ctx:n,_longestTextCache:r}=this,o=[],a=[],l=Math.floor(e/Pn(e,s));let h=0,c=0,u,d,b,g,p,x,y,_,w,M,v;for(u=0;u<e;u+=l){if(g=t[u].label,p=this._resolveTickFontOptions(u),n.font=x=p.string,y=r[x]=r[x]||{data:{},gc:[]},_=p.lineHeight,w=M=0,!$(g)&&!nt(g))w=en(n,y.data,y.gc,w,g),M=_;else if(nt(g))for(d=0,b=g.length;d<b;++d)v=g[d],!$(v)&&!nt(v)&&(w=en(n,y.data,y.gc,w,v),M+=_);o.push(w),a.push(M),h=Math.max(w,h),c=Math.max(M,c)}lc(r,e);const O=o.indexOf(h),S=a.indexOf(c),C=A=>({width:o[A]||0,height:a[A]||0});return{first:C(0),last:C(e-1),widest:C(O),highest:C(S),widths:o,heights:a}}getLabelForValue(t){return t}getPixelForValue(t,e){return NaN}getValueForPixel(t){}getPixelForTick(t){const e=this.ticks;return t<0||t>e.length-1?null:this.getPixelForValue(e[t].value)}getPixelForDecimal(t){this._reversePixels&&(t=1-t);const e=this._startPixel+t*this._length;return Ya(this._alignToPixels?Xt(this.chart,e,0):e)}getDecimalForPixel(t){const e=(t-this._startPixel)/this._length;return this._reversePixels?1-e:e}getBasePixel(){return this.getPixelForValue(this.getBaseValue())}getBaseValue(){const{min:t,max:e}=this;return t<0&&e<0?e:t>0&&e>0?t:0}getContext(t){const e=this.ticks||[];if(t>=0&&t<e.length){const s=e[t];return s.$context||(s.$context=cc(this.getContext(),t,s))}return this.$context||(this.$context=hc(this.chart.getContext(),this))}_tickSize(){const t=this.options.ticks,e=Et(this.labelRotation),s=Math.abs(Math.cos(e)),n=Math.abs(Math.sin(e)),r=this._getLabelSizes(),o=t.autoSkipPadding||0,a=r?r.widest.width+o:0,l=r?r.highest.height+o:0;return this.isHorizontal()?l*s>a*n?a/s:l/n:l*n<a*s?l/s:a/n}_isVisible(){const t=this.options.display;return t!=="auto"?!!t:this.getMatchingVisibleMetas().length>0}_computeGridLineItems(t){const e=this.axis,s=this.chart,n=this.options,{grid:r,position:o,border:a}=n,l=r.offset,h=this.isHorizontal(),u=this.ticks.length+(l?1:0),d=_e(r),b=[],g=a.setContext(this.getContext()),p=g.display?g.width:0,x=p/2,y=function(X){return Xt(s,X,p)};let _,w,M,v,O,S,C,A,T,E,L,H;if(o==="top")_=y(this.bottom),S=this.bottom-d,A=_-x,E=y(t.top)+x,H=t.bottom;else if(o==="bottom")_=y(this.top),E=t.top,H=y(t.bottom)-x,S=_+x,A=this.top+d;else if(o==="left")_=y(this.right),O=this.right-d,C=_-x,T=y(t.left)+x,L=t.right;else if(o==="right")_=y(this.left),T=t.left,L=y(t.right)-x,O=_+x,C=this.left+d;else if(e==="x"){if(o==="center")_=y((t.top+t.bottom)/2+.5);else if(W(o)){const X=Object.keys(o)[0],Z=o[X];_=y(this.chart.scales[X].getPixelForValue(Z))}E=t.top,H=t.bottom,S=_+x,A=S+d}else if(e==="y"){if(o==="center")_=y((t.left+t.right)/2);else if(W(o)){const X=Object.keys(o)[0],Z=o[X];_=y(this.chart.scales[X].getPixelForValue(Z))}O=_-x,C=O-d,T=t.left,L=t.right}const J=N(n.ticks.maxTicksLimit,u),z=Math.max(1,Math.ceil(u/J));for(w=0;w<u;w+=z){const X=this.getContext(w),Z=r.setContext(X),ut=a.setContext(X),st=Z.lineWidth,Pt=Z.color,Vt=ut.dash||[],Ot=ut.dashOffset,Nt=Z.tickWidth,Rt=Z.tickColor,$t=Z.tickBorderDash||[],_t=Z.tickBorderDashOffset;M=ac(this,w,l),M!==void 0&&(v=Xt(s,M,st),h?O=C=T=L=v:S=A=E=H=v,b.push({tx1:O,ty1:S,tx2:C,ty2:A,x1:T,y1:E,x2:L,y2:H,width:st,color:Pt,borderDash:Vt,borderDashOffset:Ot,tickWidth:Nt,tickColor:Rt,tickBorderDash:$t,tickBorderDashOffset:_t}))}return this._ticksLength=u,this._borderValue=_,b}_computeLabelItems(t){const e=this.axis,s=this.options,{position:n,ticks:r}=s,o=this.isHorizontal(),a=this.ticks,{align:l,crossAlign:h,padding:c,mirror:u}=r,d=_e(s.grid),b=d+c,g=u?-c:b,p=-Et(this.labelRotation),x=[];let y,_,w,M,v,O,S,C,A,T,E,L,H="middle";if(n==="top")O=this.bottom-g,S=this._getXAxisLabelAlignment();else if(n==="bottom")O=this.top+g,S=this._getXAxisLabelAlignment();else if(n==="left"){const z=this._getYAxisLabelAlignment(d);S=z.textAlign,v=z.x}else if(n==="right"){const z=this._getYAxisLabelAlignment(d);S=z.textAlign,v=z.x}else if(e==="x"){if(n==="center")O=(t.top+t.bottom)/2+b;else if(W(n)){const z=Object.keys(n)[0],X=n[z];O=this.chart.scales[z].getPixelForValue(X)+b}S=this._getXAxisLabelAlignment()}else if(e==="y"){if(n==="center")v=(t.left+t.right)/2-b;else if(W(n)){const z=Object.keys(n)[0],X=n[z];v=this.chart.scales[z].getPixelForValue(X)}S=this._getYAxisLabelAlignment(d).textAlign}e==="y"&&(l==="start"?H="top":l==="end"&&(H="bottom"));const J=this._getLabelSizes();for(y=0,_=a.length;y<_;++y){w=a[y],M=w.label;const z=r.setContext(this.getContext(y));C=this.getPixelForTick(y)+r.labelOffset,A=this._resolveTickFontOptions(y),T=A.lineHeight,E=nt(M)?M.length:1;const X=E/2,Z=z.color,ut=z.textStrokeColor,st=z.textStrokeWidth;let Pt=S;o?(v=C,S==="inner"&&(y===_-1?Pt=this.options.reverse?"left":"right":y===0?Pt=this.options.reverse?"right":"left":Pt="center"),n==="top"?h==="near"||p!==0?L=-E*T+T/2:h==="center"?L=-J.highest.height/2-X*T+T:L=-J.highest.height+T/2:h==="near"||p!==0?L=T/2:h==="center"?L=J.highest.height/2-X*T:L=J.highest.height-E*T,u&&(L*=-1),p!==0&&!z.showLabelBackdrop&&(v+=T/2*Math.sin(p))):(O=C,L=(1-E)*T/2);let Vt;if(z.showLabelBackdrop){const Ot=yt(z.backdropPadding),Nt=J.heights[y],Rt=J.widths[y];let $t=L-Ot.top,_t=0-Ot.left;switch(H){case"middle":$t-=Nt/2;break;case"bottom":$t-=Nt;break}switch(S){case"center":_t-=Rt/2;break;case"right":_t-=Rt;break;case"inner":y===_-1?_t-=Rt:y>0&&(_t-=Rt/2);break}Vt={left:_t,top:$t,width:Rt+Ot.width,height:Nt+Ot.height,color:z.backdropColor}}x.push({label:M,font:A,textOffset:L,options:{rotation:p,color:Z,strokeColor:ut,strokeWidth:st,textAlign:Pt,textBaseline:H,translation:[v,O],backdrop:Vt}})}return x}_getXAxisLabelAlignment(){const{position:t,ticks:e}=this.options;if(-Et(this.labelRotation))return t==="top"?"left":"right";let n="center";return e.align==="start"?n="left":e.align==="end"?n="right":e.align==="inner"&&(n="inner"),n}_getYAxisLabelAlignment(t){const{position:e,ticks:{crossAlign:s,mirror:n,padding:r}}=this.options,o=this._getLabelSizes(),a=t+r,l=o.widest.width;let h,c;return e==="left"?n?(c=this.right+r,s==="near"?h="left":s==="center"?(h="center",c+=l/2):(h="right",c+=l)):(c=this.right-a,s==="near"?h="right":s==="center"?(h="center",c-=l/2):(h="left",c=this.left)):e==="right"?n?(c=this.left+r,s==="near"?h="right":s==="center"?(h="center",c-=l/2):(h="left",c-=l)):(c=this.left+a,s==="near"?h="left":s==="center"?(h="center",c+=l/2):(h="right",c=this.right)):h="right",{textAlign:h,x:c}}_computeLabelArea(){if(this.options.ticks.mirror)return;const t=this.chart,e=this.options.position;if(e==="left"||e==="right")return{top:0,left:this.left,bottom:t.height,right:this.right};if(e==="top"||e==="bottom")return{top:this.top,left:0,bottom:this.bottom,right:t.width}}drawBackground(){const{ctx:t,options:{backgroundColor:e},left:s,top:n,width:r,height:o}=this;e&&(t.save(),t.fillStyle=e,t.fillRect(s,n,r,o),t.restore())}getLineWidthForValue(t){const e=this.options.grid;if(!this._isVisible()||!e.display)return 0;const n=this.ticks.findIndex(r=>r.value===t);return n>=0?e.setContext(this.getContext(n)).lineWidth:0}drawGrid(t){const e=this.options.grid,s=this.ctx,n=this._gridLineItems||(this._gridLineItems=this._computeGridLineItems(t));let r,o;const a=(l,h,c)=>{!c.width||!c.color||(s.save(),s.lineWidth=c.width,s.strokeStyle=c.color,s.setLineDash(c.borderDash||[]),s.lineDashOffset=c.borderDashOffset,s.beginPath(),s.moveTo(l.x,l.y),s.lineTo(h.x,h.y),s.stroke(),s.restore())};if(e.display)for(r=0,o=n.length;r<o;++r){const l=n[r];e.drawOnChartArea&&a({x:l.x1,y:l.y1},{x:l.x2,y:l.y2},l),e.drawTicks&&a({x:l.tx1,y:l.ty1},{x:l.tx2,y:l.ty2},{color:l.tickColor,width:l.tickWidth,borderDash:l.tickBorderDash,borderDashOffset:l.tickBorderDashOffset})}}drawBorder(){const{chart:t,ctx:e,options:{border:s,grid:n}}=this,r=s.setContext(this.getContext()),o=s.display?r.width:0;if(!o)return;const a=n.setContext(this.getContext(0)).lineWidth,l=this._borderValue;let h,c,u,d;this.isHorizontal()?(h=Xt(t,this.left,o)-o/2,c=Xt(t,this.right,a)+a/2,u=d=l):(u=Xt(t,this.top,o)-o/2,d=Xt(t,this.bottom,a)+a/2,h=c=l),e.save(),e.lineWidth=r.width,e.strokeStyle=r.color,e.beginPath(),e.moveTo(h,u),e.lineTo(c,d),e.stroke(),e.restore()}drawLabels(t){if(!this.options.ticks.display)return;const s=this.ctx,n=this._computeLabelArea();n&&ls(s,n);const r=this.getLabelItems(t);for(const o of r){const a=o.options,l=o.font,h=o.label,c=o.textOffset;Fe(s,h,0,c,l,a)}n&&hs(s)}drawTitle(){const{ctx:t,options:{position:e,title:s,reverse:n}}=this;if(!s.display)return;const r=ht(s.font),o=yt(s.padding),a=s.align;let l=r.lineHeight/2;e==="bottom"||e==="center"||W(e)?(l+=o.bottom,nt(s.text)&&(l+=r.lineHeight*(s.text.length-1))):l+=o.top;const{titleX:h,titleY:c,maxWidth:u,rotation:d}=dc(this,l,e,a);Fe(t,s.text,0,0,r,{color:s.color,maxWidth:u,rotation:d,textAlign:uc(a,e,n),textBaseline:"middle",translation:[h,c]})}draw(t){this._isVisible()&&(this.drawBackground(),this.drawGrid(t),this.drawBorder(),this.drawTitle(),this.drawLabels(t))}_layers(){const t=this.options,e=t.ticks&&t.ticks.z||0,s=N(t.grid&&t.grid.z,-1),n=N(t.border&&t.border.z,0);return!this._isVisible()||this.draw!==de.prototype.draw?[{z:e,draw:r=>{this.draw(r)}}]:[{z:s,draw:r=>{this.drawBackground(),this.drawGrid(r),this.drawTitle()}},{z:n,draw:()=>{this.drawBorder()}},{z:e,draw:r=>{this.drawLabels(r)}}]}getMatchingVisibleMetas(t){const e=this.chart.getSortedVisibleDatasetMetas(),s=this.axis+"AxisID",n=[];let r,o;for(r=0,o=e.length;r<o;++r){const a=e[r];a[s]===this.id&&(!t||a.type===t)&&n.push(a)}return n}_resolveTickFontOptions(t){const e=this.options.ticks.setContext(this.getContext(t));return ht(e.font)}_maxDigits(){const t=this._resolveTickFontOptions(0).lineHeight;return(this.isHorizontal()?this.width:this.height)/t}}class si{constructor(t,e,s){this.type=t,this.scope=e,this.override=s,this.items=Object.create(null)}isForType(t){return Object.prototype.isPrototypeOf.call(this.type.prototype,t.prototype)}register(t){const e=Object.getPrototypeOf(t);let s;gc(e)&&(s=this.register(e));const n=this.items,r=t.id,o=this.scope+"."+r;if(!r)throw new Error("class does not have id: "+t);return r in n||(n[r]=t,bc(t,o,s),this.override&&et.override(t.id,t.overrides)),o}get(t){return this.items[t]}unregister(t){const e=this.items,s=t.id,n=this.scope;s in e&&delete e[s],n&&s in et[n]&&(delete et[n][s],this.override&&delete ie[s])}}function bc(i,t,e){const s=Te(Object.create(null),[e?et.get(e):{},et.get(t),i.defaults]);et.set(t,s),i.defaultRoutes&&fc(t,i.defaultRoutes),i.descriptors&&et.describe(t,i.descriptors)}function fc(i,t){Object.keys(t).forEach(e=>{const s=e.split("."),n=s.pop(),r=[i].concat(s).join("."),o=t[e].split("."),a=o.pop(),l=o.join(".");et.route(r,n,l,a)})}function gc(i){return"id"in i&&"defaults"in i}class pc{constructor(){this.controllers=new si(te,"datasets",!0),this.elements=new si(kt,"elements"),this.plugins=new si(Object,"plugins"),this.scales=new si(de,"scales"),this._typedRegistries=[this.controllers,this.scales,this.elements]}add(...t){this._each("register",t)}remove(...t){this._each("unregister",t)}addControllers(...t){this._each("register",t,this.controllers)}addElements(...t){this._each("register",t,this.elements)}addPlugins(...t){this._each("register",t,this.plugins)}addScales(...t){this._each("register",t,this.scales)}getController(t){return this._get(t,this.controllers,"controller")}getElement(t){return this._get(t,this.elements,"element")}getPlugin(t){return this._get(t,this.plugins,"plugin")}getScale(t){return this._get(t,this.scales,"scale")}removeControllers(...t){this._each("unregister",t,this.controllers)}removeElements(...t){this._each("unregister",t,this.elements)}removePlugins(...t){this._each("unregister",t,this.plugins)}removeScales(...t){this._each("unregister",t,this.scales)}_each(t,e,s){[...e].forEach(n=>{const r=s||this._getRegistryForType(n);s||r.isForType(n)||r===this.plugins&&n.id?this._exec(t,r,n):Y(n,o=>{const a=s||this._getRegistryForType(o);this._exec(t,a,o)})})}_exec(t,e,s){const n=ss(t);K(s["before"+n],[],s),e[t](s),K(s["after"+n],[],s)}_getRegistryForType(t){for(let e=0;e<this._typedRegistries.length;e++){const s=this._typedRegistries[e];if(s.isForType(t))return s}return this.plugins}_get(t,e,s){const n=e.get(t);if(n===void 0)throw new Error('"'+t+'" is not a registered '+s+".");return n}}var Mt=new pc;class mc{constructor(){this._init=[]}notify(t,e,s,n){e==="beforeInit"&&(this._init=this._createDescriptors(t,!0),this._notify(this._init,t,"install"));const r=n?this._descriptors(t).filter(n):this._descriptors(t),o=this._notify(r,t,e,s);return e==="afterDestroy"&&(this._notify(r,t,"stop"),this._notify(this._init,t,"uninstall")),o}_notify(t,e,s,n){n=n||{};for(const r of t){const o=r.plugin,a=o[s],l=[e,n,r.options];if(K(a,l,o)===!1&&n.cancelable)return!1}return!0}invalidate(){$(this._cache)||(this._oldCache=this._cache,this._cache=void 0)}_descriptors(t){if(this._cache)return this._cache;const e=this._cache=this._createDescriptors(t);return this._notifyStateChanges(t),e}_createDescriptors(t,e){const s=t&&t.config,n=N(s.options&&s.options.plugins,{}),r=xc(s);return n===!1&&!e?[]:_c(t,r,n,e)}_notifyStateChanges(t){const e=this._oldCache||[],s=this._cache,n=(r,o)=>r.filter(a=>!o.some(l=>a.plugin.id===l.plugin.id));this._notify(n(e,s),t,"stop"),this._notify(n(s,e),t,"start")}}function xc(i){const t={},e=[],s=Object.keys(Mt.plugins.items);for(let r=0;r<s.length;r++)e.push(Mt.getPlugin(s[r]));const n=i.plugins||[];for(let r=0;r<n.length;r++){const o=n[r];e.indexOf(o)===-1&&(e.push(o),t[o.id]=!0)}return{plugins:e,localIds:t}}function yc(i,t){return!t&&i===!1?null:i===!0?{}:i}function _c(i,{plugins:t,localIds:e},s,n){const r=[],o=i.getContext();for(const a of t){const l=a.id,h=yc(s[l],n);h!==null&&r.push({plugin:a,options:vc(i.config,{plugin:a,local:e[l]},h,o)})}return r}function vc(i,{plugin:t,local:e},s,n){const r=i.pluginScopeKeys(t),o=i.getOptionScopes(s,r);return e&&t.defaults&&o.push(t.defaults),i.createResolver(o,n,[""],{scriptable:!1,indexable:!1,allKeys:!0})}function Ki(i,t){const e=et.datasets[i]||{};return((t.datasets||{})[i]||{}).indexAxis||t.indexAxis||e.indexAxis||"x"}function kc(i,t){let e=i;return i==="_index_"?e=t:i==="_value_"&&(e=t==="x"?"y":"x"),e}function wc(i,t){return i===t?"_index_":"_value_"}function An(i){if(i==="x"||i==="y"||i==="r")return i}function Sc(i){if(i==="top"||i==="bottom")return"x";if(i==="left"||i==="right")return"y"}function Gi(i,...t){if(An(i))return i;for(const e of t){const s=e.axis||Sc(e.position)||i.length>1&&An(i[0].toLowerCase());if(s)return s}throw new Error(`Cannot determine type of '${i}' axis. Please provide 'axis' or 'position' option.`)}function jn(i,t,e){if(e[t+"AxisID"]===i)return{axis:t}}function Mc(i,t){if(t.data&&t.data.datasets){const e=t.data.datasets.filter(s=>s.xAxisID===i||s.yAxisID===i);if(e.length)return jn(i,"x",e[0])||jn(i,"y",e[0])}return{}}function Cc(i,t){const e=ie[i.type]||{scales:{}},s=t.scales||{},n=Ki(i.type,t),r=Object.create(null);return Object.keys(s).forEach(o=>{const a=s[o];if(!W(a))return console.error(`Invalid scale configuration for scale: ${o}`);if(a._proxy)return console.warn(`Ignoring resolver passed as options for scale: ${o}`);const l=Gi(o,a,Mc(o,i),et.scales[a.type]),h=wc(l,n),c=e.scales||{};r[o]=Oe(Object.create(null),[{axis:l},a,c[l],c[h]])}),i.data.datasets.forEach(o=>{const a=o.type||i.type,l=o.indexAxis||Ki(a,t),c=(ie[a]||{}).scales||{};Object.keys(c).forEach(u=>{const d=kc(u,l),b=o[d+"AxisID"]||d;r[b]=r[b]||Object.create(null),Oe(r[b],[{axis:d},s[b],c[u]])})}),Object.keys(r).forEach(o=>{const a=r[o];Oe(a,[et.scales[a.type],et.scale])}),r}function Er(i){const t=i.options||(i.options={});t.plugins=N(t.plugins,{}),t.scales=Cc(i,t)}function Lr(i){return i=i||{},i.datasets=i.datasets||[],i.labels=i.labels||[],i}function Pc(i){return i=i||{},i.data=Lr(i.data),Er(i),i}const Dn=new Map,Nr=new Set;function ni(i,t){let e=Dn.get(i);return e||(e=t(),Dn.set(i,e),Nr.add(e)),e}const ve=(i,t,e)=>{const s=ee(t,e);s!==void 0&&i.add(s)};class Oc{constructor(t){this._config=Pc(t),this._scopeCache=new Map,this._resolverCache=new Map}get platform(){return this._config.platform}get type(){return this._config.type}set type(t){this._config.type=t}get data(){return this._config.data}set data(t){this._config.data=Lr(t)}get options(){return this._config.options}set options(t){this._config.options=t}get plugins(){return this._config.plugins}update(){const t=this._config;this.clearCache(),Er(t)}clearCache(){this._scopeCache.clear(),this._resolverCache.clear()}datasetScopeKeys(t){return ni(t,()=>[[`datasets.${t}`,""]])}datasetAnimationScopeKeys(t,e){return ni(`${t}.transition.${e}`,()=>[[`datasets.${t}.transitions.${e}`,`transitions.${e}`],[`datasets.${t}`,""]])}datasetElementScopeKeys(t,e){return ni(`${t}-${e}`,()=>[[`datasets.${t}.elements.${e}`,`datasets.${t}`,`elements.${e}`,""]])}pluginScopeKeys(t){const e=t.id,s=this.type;return ni(`${s}-plugin-${e}`,()=>[[`plugins.${e}`,...t.additionalOptionScopes||[]]])}_cachedScopes(t,e){const s=this._scopeCache;let n=s.get(t);return(!n||e)&&(n=new Map,s.set(t,n)),n}getOptionScopes(t,e,s){const{options:n,type:r}=this,o=this._cachedScopes(t,s),a=o.get(e);if(a)return a;const l=new Set;e.forEach(c=>{t&&(l.add(t),c.forEach(u=>ve(l,t,u))),c.forEach(u=>ve(l,n,u)),c.forEach(u=>ve(l,ie[r]||{},u)),c.forEach(u=>ve(l,et,u)),c.forEach(u=>ve(l,Xi,u))});const h=Array.from(l);return h.length===0&&h.push(Object.create(null)),Nr.has(e)&&o.set(e,h),h}chartOptionScopes(){const{options:t,type:e}=this;return[t,ie[e]||{},et.datasets[e]||{},{type:e},et,Xi]}resolveNamedOptions(t,e,s,n=[""]){const r={$shared:!0},{resolver:o,subPrefixes:a}=Tn(this._resolverCache,t,n);let l=o;if(Ac(o,e)){r.$shared=!1,s=Wt(s)?s():s;const h=this.createResolver(t,s,a);l=ce(o,s,h)}for(const h of e)r[h]=l[h];return r}createResolver(t,e,s=[""],n){const{resolver:r}=Tn(this._resolverCache,t,s);return W(e)?ce(r,e,void 0,n):r}}function Tn(i,t,e){let s=i.get(t);s||(s=new Map,i.set(t,s));const n=e.join();let r=s.get(n);return r||(r={resolver:us(t,e),subPrefixes:e.filter(a=>!a.toLowerCase().includes("hover"))},s.set(n,r)),r}const Rc=i=>W(i)&&Object.getOwnPropertyNames(i).some(t=>Wt(i[t]));function Ac(i,t){const{isScriptable:e,isIndexable:s}=xr(i);for(const n of t){const r=e(n),o=s(n),a=(o||r)&&i[n];if(r&&(Wt(a)||Rc(a))||o&&nt(a))return!0}return!1}var jc="4.5.0";const Dc=["top","bottom","left","right","chartArea"];function En(i,t){return i==="top"||i==="bottom"||Dc.indexOf(i)===-1&&t==="x"}function Ln(i,t){return function(e,s){return e[i]===s[i]?e[t]-s[t]:e[i]-s[i]}}function Nn(i){const t=i.chart,e=t.options.animation;t.notifyPlugins("afterRender"),K(e&&e.onComplete,[i],t)}function Tc(i){const t=i.chart,e=t.options.animation;K(e&&e.onProgress,[i],t)}function Ir(i){return fs()&&typeof i=="string"?i=document.getElementById(i):i&&i.length&&(i=i[0]),i&&i.canvas&&(i=i.canvas),i}const ci={},In=i=>{const t=Ir(i);return Object.values(ci).filter(e=>e.canvas===t).pop()};function Ec(i,t,e){const s=Object.keys(i);for(const n of s){const r=+n;if(r>=t){const o=i[n];delete i[n],(e>0||r>t)&&(i[r+e]=o)}}}function Lc(i,t,e,s){return!e||i.type==="mouseout"?null:s?t:i}var It;let be=(It=class{static register(...t){Mt.add(...t),Fn()}static unregister(...t){Mt.remove(...t),Fn()}constructor(t,e){const s=this.config=new Oc(e),n=Ir(t),r=In(n);if(r)throw new Error("Canvas is already in use. Chart with ID '"+r.id+"' must be destroyed before the canvas with ID '"+r.canvas.id+"' can be reused.");const o=s.createResolver(s.chartOptionScopes(),this.getContext());this.platform=new(s.platform||Qh(n)),this.platform.updateConfig(s);const a=this.platform.acquireContext(n,o.aspectRatio),l=a&&a.canvas,h=l&&l.height,c=l&&l.width;if(this.id=Aa(),this.ctx=a,this.canvas=l,this.width=c,this.height=h,this._options=o,this._aspectRatio=this.aspectRatio,this._layers=[],this._metasets=[],this._stacks=void 0,this.boxes=[],this.currentDevicePixelRatio=void 0,this.chartArea=void 0,this._active=[],this._lastEvent=void 0,this._listeners={},this._responsiveListeners=void 0,this._sortedMetasets=[],this.scales={},this._plugins=new mc,this.$proxies={},this._hiddenIndices={},this.attached=!1,this._animationsDisabled=void 0,this.$context=void 0,this._doResize=Ka(u=>this.update(u),o.resizeDelay||0),this._dataChanges=[],ci[this.id]=this,!a||!l){console.error("Failed to create chart: can't acquire context from the given item");return}jt.listen(this,"complete",Nn),jt.listen(this,"progress",Tc),this._initialize(),this.attached&&this.update()}get aspectRatio(){const{options:{aspectRatio:t,maintainAspectRatio:e},width:s,height:n,_aspectRatio:r}=this;return $(t)?e&&r?r:n?s/n:null:t}get data(){return this.config.data}set data(t){this.config.data=t}get options(){return this._options}set options(t){this.config.options=t}get registry(){return Mt}_initialize(){return this.notifyPlugins("beforeInit"),this.options.responsive?this.resize():on(this,this.options.devicePixelRatio),this.bindEvents(),this.notifyPlugins("afterInit"),this}clear(){return sn(this.canvas,this.ctx),this}stop(){return jt.stop(this),this}resize(t,e){jt.running(this)?this._resizeBeforeDraw={width:t,height:e}:this._resize(t,e)}_resize(t,e){const s=this.options,n=this.canvas,r=s.maintainAspectRatio&&this.aspectRatio,o=this.platform.getMaximumSize(n,t,e,r),a=s.devicePixelRatio||this.platform.getDevicePixelRatio(),l=this.width?"resize":"attach";this.width=o.width,this.height=o.height,this._aspectRatio=this.aspectRatio,on(this,a,!0)&&(this.notifyPlugins("resize",{size:o}),K(s.onResize,[this,o],this),this.attached&&this._doResize(l)&&this.render())}ensureScalesHaveIDs(){const e=this.options.scales||{};Y(e,(s,n)=>{s.id=n})}buildOrUpdateScales(){const t=this.options,e=t.scales,s=this.scales,n=Object.keys(s).reduce((o,a)=>(o[a]=!1,o),{});let r=[];e&&(r=r.concat(Object.keys(e).map(o=>{const a=e[o],l=Gi(o,a),h=l==="r",c=l==="x";return{options:a,dposition:h?"chartArea":c?"bottom":"left",dtype:h?"radialLinear":c?"category":"linear"}}))),Y(r,o=>{const a=o.options,l=a.id,h=Gi(l,a),c=N(a.type,o.dtype);(a.position===void 0||En(a.position,h)!==En(o.dposition))&&(a.position=o.dposition),n[l]=!0;let u=null;if(l in s&&s[l].type===c)u=s[l];else{const d=Mt.getScale(c);u=new d({id:l,type:c,ctx:this.ctx,chart:this}),s[u.id]=u}u.init(a,t)}),Y(n,(o,a)=>{o||delete s[a]}),Y(s,o=>{mt.configure(this,o,o.options),mt.addBox(this,o)})}_updateMetasets(){const t=this._metasets,e=this.data.datasets.length,s=t.length;if(t.sort((n,r)=>n.index-r.index),s>e){for(let n=e;n<s;++n)this._destroyDatasetMeta(n);t.splice(e,s-e)}this._sortedMetasets=t.slice(0).sort(Ln("order","index"))}_removeUnreferencedMetasets(){const{_metasets:t,data:{datasets:e}}=this;t.length>e.length&&delete this._stacks,t.forEach((s,n)=>{e.filter(r=>r===s._dataset).length===0&&this._destroyDatasetMeta(n)})}buildOrUpdateControllers(){const t=[],e=this.data.datasets;let s,n;for(this._removeUnreferencedMetasets(),s=0,n=e.length;s<n;s++){const r=e[s];let o=this.getDatasetMeta(s);const a=r.type||this.config.type;if(o.type&&o.type!==a&&(this._destroyDatasetMeta(s),o=this.getDatasetMeta(s)),o.type=a,o.indexAxis=r.indexAxis||Ki(a,this.options),o.order=r.order||0,o.index=s,o.label=""+r.label,o.visible=this.isDatasetVisible(s),o.controller)o.controller.updateIndex(s),o.controller.linkScales();else{const l=Mt.getController(a),{datasetElementType:h,dataElementType:c}=et.datasets[a];Object.assign(l,{dataElementType:Mt.getElement(c),datasetElementType:h&&Mt.getElement(h)}),o.controller=new l(this,s),t.push(o.controller)}}return this._updateMetasets(),t}_resetElements(){Y(this.data.datasets,(t,e)=>{this.getDatasetMeta(e).controller.reset()},this)}reset(){this._resetElements(),this.notifyPlugins("reset")}update(t){const e=this.config;e.update();const s=this._options=e.createResolver(e.chartOptionScopes(),this.getContext()),n=this._animationsDisabled=!s.animation;if(this._updateScales(),this._checkEventBindings(),this._updateHiddenIndices(),this._plugins.invalidate(),this.notifyPlugins("beforeUpdate",{mode:t,cancelable:!0})===!1)return;const r=this.buildOrUpdateControllers();this.notifyPlugins("beforeElementsUpdate");let o=0;for(let h=0,c=this.data.datasets.length;h<c;h++){const{controller:u}=this.getDatasetMeta(h),d=!n&&r.indexOf(u)===-1;u.buildOrUpdateElements(d),o=Math.max(+u.getMaxOverflow(),o)}o=this._minPadding=s.layout.autoPadding?o:0,this._updateLayout(o),n||Y(r,h=>{h.reset()}),this._updateDatasets(t),this.notifyPlugins("afterUpdate",{mode:t}),this._layers.sort(Ln("z","_idx"));const{_active:a,_lastEvent:l}=this;l?this._eventHandler(l,!0):a.length&&this._updateHoverStyles(a,a,!0),this.render()}_updateScales(){Y(this.scales,t=>{mt.removeBox(this,t)}),this.ensureScalesHaveIDs(),this.buildOrUpdateScales()}_checkEventBindings(){const t=this.options,e=new Set(Object.keys(this._listeners)),s=new Set(t.events);(!Us(e,s)||!!this._responsiveListeners!==t.responsive)&&(this.unbindEvents(),this.bindEvents())}_updateHiddenIndices(){const{_hiddenIndices:t}=this,e=this._getUniformDataChanges()||[];for(const{method:s,start:n,count:r}of e){const o=s==="_removeElements"?-r:r;Ec(t,n,o)}}_getUniformDataChanges(){const t=this._dataChanges;if(!t||!t.length)return;this._dataChanges=[];const e=this.data.datasets.length,s=r=>new Set(t.filter(o=>o[0]===r).map((o,a)=>a+","+o.splice(1).join(","))),n=s(0);for(let r=1;r<e;r++)if(!Us(n,s(r)))return;return Array.from(n).map(r=>r.split(",")).map(r=>({method:r[1],start:+r[2],count:+r[3]}))}_updateLayout(t){if(this.notifyPlugins("beforeLayout",{cancelable:!0})===!1)return;mt.update(this,this.width,this.height,t);const e=this.chartArea,s=e.width<=0||e.height<=0;this._layers=[],Y(this.boxes,n=>{s&&n.position==="chartArea"||(n.configure&&n.configure(),this._layers.push(...n._layers()))},this),this._layers.forEach((n,r)=>{n._idx=r}),this.notifyPlugins("afterLayout")}_updateDatasets(t){if(this.notifyPlugins("beforeDatasetsUpdate",{mode:t,cancelable:!0})!==!1){for(let e=0,s=this.data.datasets.length;e<s;++e)this.getDatasetMeta(e).controller.configure();for(let e=0,s=this.data.datasets.length;e<s;++e)this._updateDataset(e,Wt(t)?t({datasetIndex:e}):t);this.notifyPlugins("afterDatasetsUpdate",{mode:t})}}_updateDataset(t,e){const s=this.getDatasetMeta(t),n={meta:s,index:t,mode:e,cancelable:!0};this.notifyPlugins("beforeDatasetUpdate",n)!==!1&&(s.controller._update(e),n.cancelable=!1,this.notifyPlugins("afterDatasetUpdate",n))}render(){this.notifyPlugins("beforeRender",{cancelable:!0})!==!1&&(jt.has(this)?this.attached&&!jt.running(this)&&jt.start(this):(this.draw(),Nn({chart:this})))}draw(){let t;if(this._resizeBeforeDraw){const{width:s,height:n}=this._resizeBeforeDraw;this._resizeBeforeDraw=null,this._resize(s,n)}if(this.clear(),this.width<=0||this.height<=0||this.notifyPlugins("beforeDraw",{cancelable:!0})===!1)return;const e=this._layers;for(t=0;t<e.length&&e[t].z<=0;++t)e[t].draw(this.chartArea);for(this._drawDatasets();t<e.length;++t)e[t].draw(this.chartArea);this.notifyPlugins("afterDraw")}_getSortedDatasetMetas(t){const e=this._sortedMetasets,s=[];let n,r;for(n=0,r=e.length;n<r;++n){const o=e[n];(!t||o.visible)&&s.push(o)}return s}getSortedVisibleDatasetMetas(){return this._getSortedDatasetMetas(!0)}_drawDatasets(){if(this.notifyPlugins("beforeDatasetsDraw",{cancelable:!0})===!1)return;const t=this.getSortedVisibleDatasetMetas();for(let e=t.length-1;e>=0;--e)this._drawDataset(t[e]);this.notifyPlugins("afterDatasetsDraw")}_drawDataset(t){const e=this.ctx,s={meta:t,index:t.index,cancelable:!0},n=eh(this,t);this.notifyPlugins("beforeDatasetDraw",s)!==!1&&(n&&ls(e,n),t.controller.draw(),n&&hs(e),s.cancelable=!1,this.notifyPlugins("afterDatasetDraw",s))}isPointInArea(t){return Ie(t,this.chartArea,this._minPadding)}getElementsAtEventForMode(t,e,s,n){const r=Dh.modes[e];return typeof r=="function"?r(this,t,s,n):[]}getDatasetMeta(t){const e=this.data.datasets[t],s=this._metasets;let n=s.filter(r=>r&&r._dataset===e).pop();return n||(n={type:null,data:[],dataset:null,controller:null,hidden:null,xAxisID:null,yAxisID:null,order:e&&e.order||0,index:t,_dataset:e,_parsed:[],_sorted:!1},s.push(n)),n}getContext(){return this.$context||(this.$context=se(null,{chart:this,type:"chart"}))}getVisibleDatasetCount(){return this.getSortedVisibleDatasetMetas().length}isDatasetVisible(t){const e=this.data.datasets[t];if(!e)return!1;const s=this.getDatasetMeta(t);return typeof s.hidden=="boolean"?!s.hidden:!e.hidden}setDatasetVisibility(t,e){const s=this.getDatasetMeta(t);s.hidden=!e}toggleDataVisibility(t){this._hiddenIndices[t]=!this._hiddenIndices[t]}getDataVisibility(t){return!this._hiddenIndices[t]}_updateVisibility(t,e,s){const n=s?"show":"hide",r=this.getDatasetMeta(t),o=r.controller._resolveAnimations(void 0,n);Ee(e)?(r.data[e].hidden=!s,this.update()):(this.setDatasetVisibility(t,s),o.update(r,{visible:s}),this.update(a=>a.datasetIndex===t?n:void 0))}hide(t,e){this._updateVisibility(t,e,!1)}show(t,e){this._updateVisibility(t,e,!0)}_destroyDatasetMeta(t){const e=this._metasets[t];e&&e.controller&&e.controller._destroy(),delete this._metasets[t]}_stop(){let t,e;for(this.stop(),jt.remove(this),t=0,e=this.data.datasets.length;t<e;++t)this._destroyDatasetMeta(t)}destroy(){this.notifyPlugins("beforeDestroy");const{canvas:t,ctx:e}=this;this._stop(),this.config.clearCache(),t&&(this.unbindEvents(),sn(t,e),this.platform.releaseContext(e),this.canvas=null,this.ctx=null),delete ci[this.id],this.notifyPlugins("afterDestroy")}toBase64Image(...t){return this.canvas.toDataURL(...t)}bindEvents(){this.bindUserEvents(),this.options.responsive?this.bindResponsiveEvents():this.attached=!0}bindUserEvents(){const t=this._listeners,e=this.platform,s=(r,o)=>{e.addEventListener(this,r,o),t[r]=o},n=(r,o,a)=>{r.offsetX=o,r.offsetY=a,this._eventHandler(r)};Y(this.options.events,r=>s(r,n))}bindResponsiveEvents(){this._responsiveListeners||(this._responsiveListeners={});const t=this._responsiveListeners,e=this.platform,s=(l,h)=>{e.addEventListener(this,l,h),t[l]=h},n=(l,h)=>{t[l]&&(e.removeEventListener(this,l,h),delete t[l])},r=(l,h)=>{this.canvas&&this.resize(l,h)};let o;const a=()=>{n("attach",a),this.attached=!0,this.resize(),s("resize",r),s("detach",o)};o=()=>{this.attached=!1,n("resize",r),this._stop(),this._resize(0,0),s("attach",a)},e.isAttached(this.canvas)?a():o()}unbindEvents(){Y(this._listeners,(t,e)=>{this.platform.removeEventListener(this,e,t)}),this._listeners={},Y(this._responsiveListeners,(t,e)=>{this.platform.removeEventListener(this,e,t)}),this._responsiveListeners=void 0}updateHoverStyle(t,e,s){const n=s?"set":"remove";let r,o,a,l;for(e==="dataset"&&(r=this.getDatasetMeta(t[0].datasetIndex),r.controller["_"+n+"DatasetHoverStyle"]()),a=0,l=t.length;a<l;++a){o=t[a];const h=o&&this.getDatasetMeta(o.datasetIndex).controller;h&&h[n+"HoverStyle"](o.element,o.datasetIndex,o.index)}}getActiveElements(){return this._active||[]}setActiveElements(t){const e=this._active||[],s=t.map(({datasetIndex:r,index:o})=>{const a=this.getDatasetMeta(r);if(!a)throw new Error("No dataset found at index "+r);return{datasetIndex:r,element:a.data[o],index:o}});!bi(s,e)&&(this._active=s,this._lastEvent=null,this._updateHoverStyles(s,e))}notifyPlugins(t,e,s){return this._plugins.notify(this,t,e,s)}isPluginEnabled(t){return this._plugins._cache.filter(e=>e.plugin.id===t).length===1}_updateHoverStyles(t,e,s){const n=this.options.hover,r=(l,h)=>l.filter(c=>!h.some(u=>c.datasetIndex===u.datasetIndex&&c.index===u.index)),o=r(e,t),a=s?t:r(t,e);o.length&&this.updateHoverStyle(o,n.mode,!1),a.length&&n.mode&&this.updateHoverStyle(a,n.mode,!0)}_eventHandler(t,e){const s={event:t,replay:e,cancelable:!0,inChartArea:this.isPointInArea(t)},n=o=>(o.options.events||this.options.events).includes(t.native.type);if(this.notifyPlugins("beforeEvent",s,n)===!1)return;const r=this._handleEvent(t,e,s.inChartArea);return s.cancelable=!1,this.notifyPlugins("afterEvent",s,n),(r||s.changed)&&this.render(),this}_handleEvent(t,e,s){const{_active:n=[],options:r}=this,o=e,a=this._getActiveElements(t,n,s,o),l=Na(t),h=Lc(t,this._lastEvent,s,l);s&&(this._lastEvent=null,K(r.onHover,[t,a,this],this),l&&K(r.onClick,[t,a,this],this));const c=!bi(a,n);return(c||e)&&(this._active=a,this._updateHoverStyles(a,n,e)),this._lastEvent=h,c}_getActiveElements(t,e,s,n){if(t.type==="mouseout")return[];if(!s)return e;const r=this.options.hover;return this.getElementsAtEventForMode(t,r.mode,r,n)}},R(It,"defaults",et),R(It,"instances",ci),R(It,"overrides",ie),R(It,"registry",Mt),R(It,"version",jc),R(It,"getChart",In),It);function Fn(){return Y(be.instances,i=>i._plugins.invalidate())}function Nc(i,t,e){const{startAngle:s,x:n,y:r,outerRadius:o,innerRadius:a,options:l}=t,{borderWidth:h,borderJoinStyle:c}=l,u=Math.min(h/o,vt(s-e));if(i.beginPath(),i.arc(n,r,o-h/2,s+u/2,e-u/2),a>0){const d=Math.min(h/a,vt(s-e));i.arc(n,r,a+h/2,e-d/2,s+d/2,!0)}else{const d=Math.min(h/2,o*vt(s-e));if(c==="round")i.arc(n,r,d,e-U/2,s+U/2,!0);else if(c==="bevel"){const b=2*d*d,g=-b*Math.cos(e+U/2)+n,p=-b*Math.sin(e+U/2)+r,x=b*Math.cos(s+U/2)+n,y=b*Math.sin(s+U/2)+r;i.lineTo(g,p),i.lineTo(x,y)}}i.closePath(),i.moveTo(0,0),i.rect(0,0,i.canvas.width,i.canvas.height),i.clip("evenodd")}function Ic(i,t,e){const{startAngle:s,pixelMargin:n,x:r,y:o,outerRadius:a,innerRadius:l}=t;let h=n/a;i.beginPath(),i.arc(r,o,a,s-h,e+h),l>n?(h=n/l,i.arc(r,o,l,e+h,s-h,!0)):i.arc(r,o,n,e+rt,s-rt),i.closePath(),i.clip()}function Fc(i){return cs(i,["outerStart","outerEnd","innerStart","innerEnd"])}function zc(i,t,e,s){const n=Fc(i.options.borderRadius),r=(e-t)/2,o=Math.min(r,s*t/2),a=l=>{const h=(e-Math.min(r,l))*s/2;return lt(l,0,Math.min(r,h))};return{outerStart:a(n.outerStart),outerEnd:a(n.outerEnd),innerStart:lt(n.innerStart,0,o),innerEnd:lt(n.innerEnd,0,o)}}function ae(i,t,e,s){return{x:e+i*Math.cos(t),y:s+i*Math.sin(t)}}function yi(i,t,e,s,n,r){const{x:o,y:a,startAngle:l,pixelMargin:h,innerRadius:c}=t,u=Math.max(t.outerRadius+s+e-h,0),d=c>0?c+s+e+h:0;let b=0;const g=n-l;if(s){const z=c>0?c-s:0,X=u>0?u-s:0,Z=(z+X)/2,ut=Z!==0?g*Z/(Z+s):g;b=(g-ut)/2}const p=Math.max(.001,g*u-e/U)/u,x=(g-p)/2,y=l+x+b,_=n-x-b,{outerStart:w,outerEnd:M,innerStart:v,innerEnd:O}=zc(t,d,u,_-y),S=u-w,C=u-M,A=y+w/S,T=_-M/C,E=d+v,L=d+O,H=y+v/E,J=_-O/L;if(i.beginPath(),r){const z=(A+T)/2;if(i.arc(o,a,u,A,z),i.arc(o,a,u,z,T),M>0){const st=ae(C,T,o,a);i.arc(st.x,st.y,M,T,_+rt)}const X=ae(L,_,o,a);if(i.lineTo(X.x,X.y),O>0){const st=ae(L,J,o,a);i.arc(st.x,st.y,O,_+rt,J+Math.PI)}const Z=(_-O/d+(y+v/d))/2;if(i.arc(o,a,d,_-O/d,Z,!0),i.arc(o,a,d,Z,y+v/d,!0),v>0){const st=ae(E,H,o,a);i.arc(st.x,st.y,v,H+Math.PI,y-rt)}const ut=ae(S,y,o,a);if(i.lineTo(ut.x,ut.y),w>0){const st=ae(S,A,o,a);i.arc(st.x,st.y,w,y-rt,A)}}else{i.moveTo(o,a);const z=Math.cos(A)*u+o,X=Math.sin(A)*u+a;i.lineTo(z,X);const Z=Math.cos(T)*u+o,ut=Math.sin(T)*u+a;i.lineTo(Z,ut)}i.closePath()}function Bc(i,t,e,s,n){const{fullCircles:r,startAngle:o,circumference:a}=t;let l=t.endAngle;if(r){yi(i,t,e,s,l,n);for(let h=0;h<r;++h)i.fill();isNaN(a)||(l=o+(a%Q||Q))}return yi(i,t,e,s,l,n),i.fill(),l}function Hc(i,t,e,s,n){const{fullCircles:r,startAngle:o,circumference:a,options:l}=t,{borderWidth:h,borderJoinStyle:c,borderDash:u,borderDashOffset:d,borderRadius:b}=l,g=l.borderAlign==="inner";if(!h)return;i.setLineDash(u||[]),i.lineDashOffset=d,g?(i.lineWidth=h*2,i.lineJoin=c||"round"):(i.lineWidth=h,i.lineJoin=c||"bevel");let p=t.endAngle;if(r){yi(i,t,e,s,p,n);for(let x=0;x<r;++x)i.stroke();isNaN(a)||(p=o+(a%Q||Q))}g&&Ic(i,t,p),l.selfJoin&&p-o>=U&&b===0&&c!=="miter"&&Nc(i,t,p),r||(yi(i,t,e,s,p,n),i.stroke())}class Me extends kt{constructor(e){super();R(this,"circumference");R(this,"endAngle");R(this,"fullCircles");R(this,"innerRadius");R(this,"outerRadius");R(this,"pixelMargin");R(this,"startAngle");this.options=void 0,this.circumference=void 0,this.startAngle=void 0,this.endAngle=void 0,this.innerRadius=void 0,this.outerRadius=void 0,this.pixelMargin=0,this.fullCircles=0,e&&Object.assign(this,e)}inRange(e,s,n){const r=this.getProps(["x","y"],n),{angle:o,distance:a}=cr(r,{x:e,y:s}),{startAngle:l,endAngle:h,innerRadius:c,outerRadius:u,circumference:d}=this.getProps(["startAngle","endAngle","innerRadius","outerRadius","circumference"],n),b=(this.options.spacing+this.options.borderWidth)/2,g=N(d,h-l),p=Ne(o,l,h)&&l!==h,x=g>=Q||p,y=zt(a,c+b,u+b);return x&&y}getCenterPoint(e){const{x:s,y:n,startAngle:r,endAngle:o,innerRadius:a,outerRadius:l}=this.getProps(["x","y","startAngle","endAngle","innerRadius","outerRadius"],e),{offset:h,spacing:c}=this.options,u=(r+o)/2,d=(a+l+c+h)/2;return{x:s+Math.cos(u)*d,y:n+Math.sin(u)*d}}tooltipPosition(e){return this.getCenterPoint(e)}draw(e){const{options:s,circumference:n}=this,r=(s.offset||0)/4,o=(s.spacing||0)/2,a=s.circular;if(this.pixelMargin=s.borderAlign==="inner"?.33:0,this.fullCircles=n>Q?Math.floor(n/Q):0,n===0||this.innerRadius<0||this.outerRadius<0)return;e.save();const l=(this.startAngle+this.endAngle)/2;e.translate(Math.cos(l)*r,Math.sin(l)*r);const h=1-Math.sin(Math.min(U,n||0)),c=r*h;e.fillStyle=s.backgroundColor,e.strokeStyle=s.borderColor,Bc(e,this,c,o,a),Hc(e,this,c,o,a),e.restore()}}R(Me,"id","arc"),R(Me,"defaults",{borderAlign:"center",borderColor:"#fff",borderDash:[],borderDashOffset:0,borderJoinStyle:void 0,borderRadius:0,borderWidth:2,offset:0,spacing:0,angle:void 0,circular:!0,selfJoin:!1}),R(Me,"defaultRoutes",{backgroundColor:"backgroundColor"}),R(Me,"descriptors",{_scriptable:!0,_indexable:e=>e!=="borderDash"});function Fr(i,t,e=t){i.lineCap=N(e.borderCapStyle,t.borderCapStyle),i.setLineDash(N(e.borderDash,t.borderDash)),i.lineDashOffset=N(e.borderDashOffset,t.borderDashOffset),i.lineJoin=N(e.borderJoinStyle,t.borderJoinStyle),i.lineWidth=N(e.borderWidth,t.borderWidth),i.strokeStyle=N(e.borderColor,t.borderColor)}function Wc(i,t,e){i.lineTo(e.x,e.y)}function Vc(i){return i.stepped?hl:i.tension||i.cubicInterpolationMode==="monotone"?cl:Wc}function zr(i,t,e={}){const s=i.length,{start:n=0,end:r=s-1}=e,{start:o,end:a}=t,l=Math.max(n,o),h=Math.min(r,a),c=n<o&&r<o||n>a&&r>a;return{count:s,start:l,loop:t.loop,ilen:h<l&&!c?s+h-l:h-l}}function $c(i,t,e,s){const{points:n,options:r}=t,{count:o,start:a,loop:l,ilen:h}=zr(n,e,s),c=Vc(r);let{move:u=!0,reverse:d}=s||{},b,g,p;for(b=0;b<=h;++b)g=n[(a+(d?h-b:b))%o],!g.skip&&(u?(i.moveTo(g.x,g.y),u=!1):c(i,p,g,d,r.stepped),p=g);return l&&(g=n[(a+(d?h:0))%o],c(i,p,g,d,r.stepped)),!!l}function Yc(i,t,e,s){const n=t.points,{count:r,start:o,ilen:a}=zr(n,e,s),{move:l=!0,reverse:h}=s||{};let c=0,u=0,d,b,g,p,x,y;const _=M=>(o+(h?a-M:M))%r,w=()=>{p!==x&&(i.lineTo(c,x),i.lineTo(c,p),i.lineTo(c,y))};for(l&&(b=n[_(0)],i.moveTo(b.x,b.y)),d=0;d<=a;++d){if(b=n[_(d)],b.skip)continue;const M=b.x,v=b.y,O=M|0;O===g?(v<p?p=v:v>x&&(x=v),c=(u*c+M)/++u):(w(),i.lineTo(M,v),g=O,u=0,p=x=v),y=v}w()}function Zi(i){const t=i.options,e=t.borderDash&&t.borderDash.length;return!i._decimated&&!i._loop&&!t.tension&&t.cubicInterpolationMode!=="monotone"&&!t.stepped&&!e?Yc:$c}function Uc(i){return i.stepped?Wl:i.tension||i.cubicInterpolationMode==="monotone"?Vl:Gt}function Xc(i,t,e,s){let n=t._path;n||(n=t._path=new Path2D,t.path(n,e,s)&&n.closePath()),Fr(i,t.options),i.stroke(n)}function qc(i,t,e,s){const{segments:n,options:r}=t,o=Zi(t);for(const a of n)Fr(i,r,a.style),i.beginPath(),o(i,t,a,{start:e,end:e+s-1})&&i.closePath(),i.stroke()}const Kc=typeof Path2D=="function";function Gc(i,t,e,s){Kc&&!t.options.segment?Xc(i,t,e,s):qc(i,t,e,s)}class Ce extends kt{constructor(t){super(),this.animated=!0,this.options=void 0,this._chart=void 0,this._loop=void 0,this._fullLoop=void 0,this._path=void 0,this._points=void 0,this._segments=void 0,this._decimated=!1,this._pointsUpdated=!1,this._datasetIndex=void 0,t&&Object.assign(this,t)}updateControlPoints(t,e){const s=this.options;if((s.tension||s.cubicInterpolationMode==="monotone")&&!s.stepped&&!this._pointsUpdated){const n=s.spanGaps?this._loop:this._fullLoop;El(this._points,s,t,n,e),this._pointsUpdated=!0}}set points(t){this._points=t,delete this._segments,delete this._path,this._pointsUpdated=!1}get points(){return this._points}get segments(){return this._segments||(this._segments=Zl(this,this.options.segment))}first(){const t=this.segments,e=this.points;return t.length&&e[t[0].start]}last(){const t=this.segments,e=this.points,s=t.length;return s&&e[t[s-1].end]}interpolate(t,e){const s=this.options,n=t[e],r=this.points,o=ql(this,{property:e,start:n,end:n});if(!o.length)return;const a=[],l=Uc(s);let h,c;for(h=0,c=o.length;h<c;++h){const{start:u,end:d}=o[h],b=r[u],g=r[d];if(b===g){a.push(b);continue}const p=Math.abs((n-b[e])/(g[e]-b[e])),x=l(b,g,p,s.stepped);x[e]=t[e],a.push(x)}return a.length===1?a[0]:a}pathSegment(t,e,s){return Zi(this)(t,this,e,s)}path(t,e,s){const n=this.segments,r=Zi(this);let o=this._loop;e=e||0,s=s||this.points.length-e;for(const a of n)o&=r(t,this,a,{start:e,end:e+s-1});return!!o}draw(t,e,s,n){const r=this.options||{};(this.points||[]).length&&r.borderWidth&&(t.save(),Gc(t,this,s,n),t.restore()),this.animated&&(this._pointsUpdated=!1,this._path=void 0)}}R(Ce,"id","line"),R(Ce,"defaults",{borderCapStyle:"butt",borderDash:[],borderDashOffset:0,borderJoinStyle:"miter",borderWidth:3,capBezierPoints:!0,cubicInterpolationMode:"default",fill:!1,spanGaps:!1,stepped:!1,tension:0}),R(Ce,"defaultRoutes",{backgroundColor:"backgroundColor",borderColor:"borderColor"}),R(Ce,"descriptors",{_scriptable:!0,_indexable:t=>t!=="borderDash"&&t!=="fill"});function zn(i,t,e,s){const n=i.options,{[e]:r}=i.getProps([e],s);return Math.abs(t-r)<n.radius+n.hitRadius}class ui extends kt{constructor(e){super();R(this,"parsed");R(this,"skip");R(this,"stop");this.options=void 0,this.parsed=void 0,this.skip=void 0,this.stop=void 0,e&&Object.assign(this,e)}inRange(e,s,n){const r=this.options,{x:o,y:a}=this.getProps(["x","y"],n);return Math.pow(e-o,2)+Math.pow(s-a,2)<Math.pow(r.hitRadius+r.radius,2)}inXRange(e,s){return zn(this,e,"x",s)}inYRange(e,s){return zn(this,e,"y",s)}getCenterPoint(e){const{x:s,y:n}=this.getProps(["x","y"],e);return{x:s,y:n}}size(e){e=e||this.options||{};let s=e.radius||0;s=Math.max(s,s&&e.hoverRadius||0);const n=s&&e.borderWidth||0;return(s+n)*2}draw(e,s){const n=this.options;this.skip||n.radius<.1||!Ie(this,s,this.size(n)/2)||(e.strokeStyle=n.borderColor,e.lineWidth=n.borderWidth,e.fillStyle=n.backgroundColor,qi(e,n,this.x,this.y))}getRange(){const e=this.options||{};return e.radius+e.hitRadius}}R(ui,"id","point"),R(ui,"defaults",{borderWidth:1,hitRadius:1,hoverBorderWidth:1,hoverRadius:4,pointStyle:"circle",radius:3,rotation:0}),R(ui,"defaultRoutes",{backgroundColor:"backgroundColor",borderColor:"borderColor"});function Br(i,t){const{x:e,y:s,base:n,width:r,height:o}=i.getProps(["x","y","base","width","height"],t);let a,l,h,c,u;return i.horizontal?(u=o/2,a=Math.min(e,n),l=Math.max(e,n),h=s-u,c=s+u):(u=r/2,a=e-u,l=e+u,h=Math.min(s,n),c=Math.max(s,n)),{left:a,top:h,right:l,bottom:c}}function Bt(i,t,e,s){return i?0:lt(t,e,s)}function Zc(i,t,e){const s=i.options.borderWidth,n=i.borderSkipped,r=mr(s);return{t:Bt(n.top,r.top,0,e),r:Bt(n.right,r.right,0,t),b:Bt(n.bottom,r.bottom,0,e),l:Bt(n.left,r.left,0,t)}}function Jc(i,t,e){const{enableBorderRadius:s}=i.getProps(["enableBorderRadius"]),n=i.options.borderRadius,r=le(n),o=Math.min(t,e),a=i.borderSkipped,l=s||W(n);return{topLeft:Bt(!l||a.top||a.left,r.topLeft,0,o),topRight:Bt(!l||a.top||a.right,r.topRight,0,o),bottomLeft:Bt(!l||a.bottom||a.left,r.bottomLeft,0,o),bottomRight:Bt(!l||a.bottom||a.right,r.bottomRight,0,o)}}function Qc(i){const t=Br(i),e=t.right-t.left,s=t.bottom-t.top,n=Zc(i,e/2,s/2),r=Jc(i,e/2,s/2);return{outer:{x:t.left,y:t.top,w:e,h:s,radius:r},inner:{x:t.left+n.l,y:t.top+n.t,w:e-n.l-n.r,h:s-n.t-n.b,radius:{topLeft:Math.max(0,r.topLeft-Math.max(n.t,n.l)),topRight:Math.max(0,r.topRight-Math.max(n.t,n.r)),bottomLeft:Math.max(0,r.bottomLeft-Math.max(n.b,n.l)),bottomRight:Math.max(0,r.bottomRight-Math.max(n.b,n.r))}}}}function Vi(i,t,e,s){const n=t===null,r=e===null,a=i&&!(n&&r)&&Br(i,s);return a&&(n||zt(t,a.left,a.right))&&(r||zt(e,a.top,a.bottom))}function tu(i){return i.topLeft||i.topRight||i.bottomLeft||i.bottomRight}function eu(i,t){i.rect(t.x,t.y,t.w,t.h)}function $i(i,t,e={}){const s=i.x!==e.x?-t:0,n=i.y!==e.y?-t:0,r=(i.x+i.w!==e.x+e.w?t:0)-s,o=(i.y+i.h!==e.y+e.h?t:0)-n;return{x:i.x+s,y:i.y+n,w:i.w+r,h:i.h+o,radius:i.radius}}class di extends kt{constructor(t){super(),this.options=void 0,this.horizontal=void 0,this.base=void 0,this.width=void 0,this.height=void 0,this.inflateAmount=void 0,t&&Object.assign(this,t)}draw(t){const{inflateAmount:e,options:{borderColor:s,backgroundColor:n}}=this,{inner:r,outer:o}=Qc(this),a=tu(o.radius)?pi:eu;t.save(),(o.w!==r.w||o.h!==r.h)&&(t.beginPath(),a(t,$i(o,e,r)),t.clip(),a(t,$i(r,-e,o)),t.fillStyle=s,t.fill("evenodd")),t.beginPath(),a(t,$i(r,e)),t.fillStyle=n,t.fill(),t.restore()}inRange(t,e,s){return Vi(this,t,e,s)}inXRange(t,e){return Vi(this,t,null,e)}inYRange(t,e){return Vi(this,null,t,e)}getCenterPoint(t){const{x:e,y:s,base:n,horizontal:r}=this.getProps(["x","y","base","horizontal"],t);return{x:r?(e+n)/2:e,y:r?s:(s+n)/2}}getRange(t){return t==="x"?this.width/2:this.height/2}}R(di,"id","bar"),R(di,"defaults",{borderSkipped:"start",borderWidth:0,borderRadius:0,inflateAmount:"auto",pointStyle:void 0}),R(di,"defaultRoutes",{backgroundColor:"backgroundColor",borderColor:"borderColor"});const Bn=(i,t)=>{let{boxHeight:e=t,boxWidth:s=t}=i;return i.usePointStyle&&(e=Math.min(e,t),s=i.pointStyleWidth||Math.min(s,t)),{boxWidth:s,boxHeight:e,itemHeight:Math.max(t,e)}},iu=(i,t)=>i!==null&&t!==null&&i.datasetIndex===t.datasetIndex&&i.index===t.index;class Hn extends kt{constructor(t){super(),this._added=!1,this.legendHitBoxes=[],this._hoveredItem=null,this.doughnutMode=!1,this.chart=t.chart,this.options=t.options,this.ctx=t.ctx,this.legendItems=void 0,this.columnSizes=void 0,this.lineWidths=void 0,this.maxHeight=void 0,this.maxWidth=void 0,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.height=void 0,this.width=void 0,this._margins=void 0,this.position=void 0,this.weight=void 0,this.fullSize=void 0}update(t,e,s){this.maxWidth=t,this.maxHeight=e,this._margins=s,this.setDimensions(),this.buildLabels(),this.fit()}setDimensions(){this.isHorizontal()?(this.width=this.maxWidth,this.left=this._margins.left,this.right=this.width):(this.height=this.maxHeight,this.top=this._margins.top,this.bottom=this.height)}buildLabels(){const t=this.options.labels||{};let e=K(t.generateLabels,[this.chart],this)||[];t.filter&&(e=e.filter(s=>t.filter(s,this.chart.data))),t.sort&&(e=e.sort((s,n)=>t.sort(s,n,this.chart.data))),this.options.reverse&&e.reverse(),this.legendItems=e}fit(){const{options:t,ctx:e}=this;if(!t.display){this.width=this.height=0;return}const s=t.labels,n=ht(s.font),r=n.size,o=this._computeTitleHeight(),{boxWidth:a,itemHeight:l}=Bn(s,r);let h,c;e.font=n.string,this.isHorizontal()?(h=this.maxWidth,c=this._fitRows(o,r,a,l)+10):(c=this.maxHeight,h=this._fitCols(o,n,a,l)+10),this.width=Math.min(h,t.maxWidth||this.maxWidth),this.height=Math.min(c,t.maxHeight||this.maxHeight)}_fitRows(t,e,s,n){const{ctx:r,maxWidth:o,options:{labels:{padding:a}}}=this,l=this.legendHitBoxes=[],h=this.lineWidths=[0],c=n+a;let u=t;r.textAlign="left",r.textBaseline="middle";let d=-1,b=-c;return this.legendItems.forEach((g,p)=>{const x=s+e/2+r.measureText(g.text).width;(p===0||h[h.length-1]+x+2*a>o)&&(u+=c,h[h.length-(p>0?0:1)]=0,b+=c,d++),l[p]={left:0,top:b,row:d,width:x,height:n},h[h.length-1]+=x+a}),u}_fitCols(t,e,s,n){const{ctx:r,maxHeight:o,options:{labels:{padding:a}}}=this,l=this.legendHitBoxes=[],h=this.columnSizes=[],c=o-t;let u=a,d=0,b=0,g=0,p=0;return this.legendItems.forEach((x,y)=>{const{itemWidth:_,itemHeight:w}=su(s,e,r,x,n);y>0&&b+w+2*a>c&&(u+=d+a,h.push({width:d,height:b}),g+=d+a,p++,d=b=0),l[y]={left:g,top:b,col:p,width:_,height:w},d=Math.max(d,_),b+=w+a}),u+=d,h.push({width:d,height:b}),u}adjustHitBoxes(){if(!this.options.display)return;const t=this._computeTitleHeight(),{legendHitBoxes:e,options:{align:s,labels:{padding:n},rtl:r}}=this,o=he(r,this.left,this.width);if(this.isHorizontal()){let a=0,l=at(s,this.left+n,this.right-this.lineWidths[a]);for(const h of e)a!==h.row&&(a=h.row,l=at(s,this.left+n,this.right-this.lineWidths[a])),h.top+=this.top+t+n,h.left=o.leftForLtr(o.x(l),h.width),l+=h.width+n}else{let a=0,l=at(s,this.top+t+n,this.bottom-this.columnSizes[a].height);for(const h of e)h.col!==a&&(a=h.col,l=at(s,this.top+t+n,this.bottom-this.columnSizes[a].height)),h.top=l,h.left+=this.left+n,h.left=o.leftForLtr(o.x(h.left),h.width),l+=h.height+n}}isHorizontal(){return this.options.position==="top"||this.options.position==="bottom"}draw(){if(this.options.display){const t=this.ctx;ls(t,this),this._draw(),hs(t)}}_draw(){const{options:t,columnSizes:e,lineWidths:s,ctx:n}=this,{align:r,labels:o}=t,a=et.color,l=he(t.rtl,this.left,this.width),h=ht(o.font),{padding:c}=o,u=h.size,d=u/2;let b;this.drawTitle(),n.textAlign=l.textAlign("left"),n.textBaseline="middle",n.lineWidth=.5,n.font=h.string;const{boxWidth:g,boxHeight:p,itemHeight:x}=Bn(o,u),y=function(O,S,C){if(isNaN(g)||g<=0||isNaN(p)||p<0)return;n.save();const A=N(C.lineWidth,1);if(n.fillStyle=N(C.fillStyle,a),n.lineCap=N(C.lineCap,"butt"),n.lineDashOffset=N(C.lineDashOffset,0),n.lineJoin=N(C.lineJoin,"miter"),n.lineWidth=A,n.strokeStyle=N(C.strokeStyle,a),n.setLineDash(N(C.lineDash,[])),o.usePointStyle){const T={radius:p*Math.SQRT2/2,pointStyle:C.pointStyle,rotation:C.rotation,borderWidth:A},E=l.xPlus(O,g/2),L=S+d;pr(n,T,E,L,o.pointStyleWidth&&g)}else{const T=S+Math.max((u-p)/2,0),E=l.leftForLtr(O,g),L=le(C.borderRadius);n.beginPath(),Object.values(L).some(H=>H!==0)?pi(n,{x:E,y:T,w:g,h:p,radius:L}):n.rect(E,T,g,p),n.fill(),A!==0&&n.stroke()}n.restore()},_=function(O,S,C){Fe(n,C.text,O,S+x/2,h,{strikethrough:C.hidden,textAlign:l.textAlign(C.textAlign)})},w=this.isHorizontal(),M=this._computeTitleHeight();w?b={x:at(r,this.left+c,this.right-s[0]),y:this.top+c+M,line:0}:b={x:this.left+c,y:at(r,this.top+M+c,this.bottom-e[0].height),line:0},wr(this.ctx,t.textDirection);const v=x+c;this.legendItems.forEach((O,S)=>{n.strokeStyle=O.fontColor,n.fillStyle=O.fontColor;const C=n.measureText(O.text).width,A=l.textAlign(O.textAlign||(O.textAlign=o.textAlign)),T=g+d+C;let E=b.x,L=b.y;l.setWidth(this.width),w?S>0&&E+T+c>this.right&&(L=b.y+=v,b.line++,E=b.x=at(r,this.left+c,this.right-s[b.line])):S>0&&L+v>this.bottom&&(E=b.x=E+e[b.line].width+c,b.line++,L=b.y=at(r,this.top+M+c,this.bottom-e[b.line].height));const H=l.x(E);if(y(H,L,O),E=Ga(A,E+g+d,w?E+T:this.right,t.rtl),_(l.x(E),L,O),w)b.x+=T+c;else if(typeof O.text!="string"){const J=h.lineHeight;b.y+=Hr(O,J)+c}else b.y+=v}),Sr(this.ctx,t.textDirection)}drawTitle(){const t=this.options,e=t.title,s=ht(e.font),n=yt(e.padding);if(!e.display)return;const r=he(t.rtl,this.left,this.width),o=this.ctx,a=e.position,l=s.size/2,h=n.top+l;let c,u=this.left,d=this.width;if(this.isHorizontal())d=Math.max(...this.lineWidths),c=this.top+h,u=at(t.align,u,this.right-d);else{const g=this.columnSizes.reduce((p,x)=>Math.max(p,x.height),0);c=h+at(t.align,this.top,this.bottom-g-t.labels.padding-this._computeTitleHeight())}const b=at(a,u,u+d);o.textAlign=r.textAlign(rs(a)),o.textBaseline="middle",o.strokeStyle=e.color,o.fillStyle=e.color,o.font=s.string,Fe(o,e.text,b,c,s)}_computeTitleHeight(){const t=this.options.title,e=ht(t.font),s=yt(t.padding);return t.display?e.lineHeight+s.height:0}_getLegendItemAt(t,e){let s,n,r;if(zt(t,this.left,this.right)&&zt(e,this.top,this.bottom)){for(r=this.legendHitBoxes,s=0;s<r.length;++s)if(n=r[s],zt(t,n.left,n.left+n.width)&&zt(e,n.top,n.top+n.height))return this.legendItems[s]}return null}handleEvent(t){const e=this.options;if(!ou(t.type,e))return;const s=this._getLegendItemAt(t.x,t.y);if(t.type==="mousemove"||t.type==="mouseout"){const n=this._hoveredItem,r=iu(n,s);n&&!r&&K(e.onLeave,[t,n,this],this),this._hoveredItem=s,s&&!r&&K(e.onHover,[t,s,this],this)}else s&&K(e.onClick,[t,s,this],this)}}function su(i,t,e,s,n){const r=nu(s,i,t,e),o=ru(n,s,t.lineHeight);return{itemWidth:r,itemHeight:o}}function nu(i,t,e,s){let n=i.text;return n&&typeof n!="string"&&(n=n.reduce((r,o)=>r.length>o.length?r:o)),t+e.size/2+s.measureText(n).width}function ru(i,t,e){let s=i;return typeof t.text!="string"&&(s=Hr(t,e)),s}function Hr(i,t){const e=i.text?i.text.length:0;return t*e}function ou(i,t){return!!((i==="mousemove"||i==="mouseout")&&(t.onHover||t.onLeave)||t.onClick&&(i==="click"||i==="mouseup"))}var ms={id:"legend",_element:Hn,start(i,t,e){const s=i.legend=new Hn({ctx:i.ctx,options:e,chart:i});mt.configure(i,s,e),mt.addBox(i,s)},stop(i){mt.removeBox(i,i.legend),delete i.legend},beforeUpdate(i,t,e){const s=i.legend;mt.configure(i,s,e),s.options=e},afterUpdate(i){const t=i.legend;t.buildLabels(),t.adjustHitBoxes()},afterEvent(i,t){t.replay||i.legend.handleEvent(t.event)},defaults:{display:!0,position:"top",align:"center",fullSize:!0,reverse:!1,weight:1e3,onClick(i,t,e){const s=t.datasetIndex,n=e.chart;n.isDatasetVisible(s)?(n.hide(s),t.hidden=!0):(n.show(s),t.hidden=!1)},onHover:null,onLeave:null,labels:{color:i=>i.chart.options.color,boxWidth:40,padding:10,generateLabels(i){const t=i.data.datasets,{labels:{usePointStyle:e,pointStyle:s,textAlign:n,color:r,useBorderRadius:o,borderRadius:a}}=i.legend.options;return i._getSortedDatasetMetas().map(l=>{const h=l.controller.getStyle(e?0:void 0),c=yt(h.borderWidth);return{text:t[l.index].label,fillStyle:h.backgroundColor,fontColor:r,hidden:!l.visible,lineCap:h.borderCapStyle,lineDash:h.borderDash,lineDashOffset:h.borderDashOffset,lineJoin:h.borderJoinStyle,lineWidth:(c.width+c.height)/4,strokeStyle:h.borderColor,pointStyle:s||h.pointStyle,rotation:h.rotation,textAlign:n||h.textAlign,borderRadius:o&&(a||h.borderRadius),datasetIndex:l.index}},this)}},title:{color:i=>i.chart.options.color,display:!1,position:"center",text:""}},descriptors:{_scriptable:i=>!i.startsWith("on"),labels:{_scriptable:i=>!["generateLabels","filter","sort"].includes(i)}}};class Wr extends kt{constructor(t){super(),this.chart=t.chart,this.options=t.options,this.ctx=t.ctx,this._padding=void 0,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.width=void 0,this.height=void 0,this.position=void 0,this.weight=void 0,this.fullSize=void 0}update(t,e){const s=this.options;if(this.left=0,this.top=0,!s.display){this.width=this.height=this.right=this.bottom=0;return}this.width=this.right=t,this.height=this.bottom=e;const n=nt(s.text)?s.text.length:1;this._padding=yt(s.padding);const r=n*ht(s.font).lineHeight+this._padding.height;this.isHorizontal()?this.height=r:this.width=r}isHorizontal(){const t=this.options.position;return t==="top"||t==="bottom"}_drawArgs(t){const{top:e,left:s,bottom:n,right:r,options:o}=this,a=o.align;let l=0,h,c,u;return this.isHorizontal()?(c=at(a,s,r),u=e+t,h=r-s):(o.position==="left"?(c=s+t,u=at(a,n,e),l=U*-.5):(c=r-t,u=at(a,e,n),l=U*.5),h=n-e),{titleX:c,titleY:u,maxWidth:h,rotation:l}}draw(){const t=this.ctx,e=this.options;if(!e.display)return;const s=ht(e.font),r=s.lineHeight/2+this._padding.top,{titleX:o,titleY:a,maxWidth:l,rotation:h}=this._drawArgs(r);Fe(t,e.text,0,0,s,{color:e.color,maxWidth:l,rotation:h,textAlign:rs(e.align),textBaseline:"middle",translation:[o,a]})}}function au(i,t){const e=new Wr({ctx:i.ctx,options:t,chart:i});mt.configure(i,e,t),mt.addBox(i,e),i.titleBlock=e}var Vr={id:"title",_element:Wr,start(i,t,e){au(i,e)},stop(i){const t=i.titleBlock;mt.removeBox(i,t),delete i.titleBlock},beforeUpdate(i,t,e){const s=i.titleBlock;mt.configure(i,s,e),s.options=e},defaults:{align:"center",display:!1,font:{weight:"bold"},fullSize:!0,padding:10,position:"top",text:"",weight:2e3},defaultRoutes:{color:"color"},descriptors:{_scriptable:!0,_indexable:!1}};const Pe={average(i){if(!i.length)return!1;let t,e,s=new Set,n=0,r=0;for(t=0,e=i.length;t<e;++t){const a=i[t].element;if(a&&a.hasValue()){const l=a.tooltipPosition();s.add(l.x),n+=l.y,++r}}return r===0||s.size===0?!1:{x:[...s].reduce((a,l)=>a+l)/s.size,y:n/r}},nearest(i,t){if(!i.length)return!1;let e=t.x,s=t.y,n=Number.POSITIVE_INFINITY,r,o,a;for(r=0,o=i.length;r<o;++r){const l=i[r].element;if(l&&l.hasValue()){const h=l.getCenterPoint(),c=Ui(t,h);c<n&&(n=c,a=l)}}if(a){const l=a.tooltipPosition();e=l.x,s=l.y}return{x:e,y:s}}};function St(i,t){return t&&(nt(t)?Array.prototype.push.apply(i,t):i.push(t)),i}function Dt(i){return(typeof i=="string"||i instanceof String)&&i.indexOf(`
|
|
45
|
+
*/class sh{constructor(){this._request=null,this._charts=new Map,this._running=!1,this._lastDate=void 0}_notify(t,e,s,n){const r=e.listeners[n],o=e.duration;r.forEach(a=>a({chart:t,initial:e.initial,numSteps:o,currentStep:Math.min(s-e.start,o)}))}_refresh(){this._request||(this._running=!0,this._request=br.call(window,()=>{this._update(),this._request=null,this._running&&this._refresh()}))}_update(t=Date.now()){let e=0;this._charts.forEach((s,n)=>{if(!s.running||!s.items.length)return;const r=s.items;let o=r.length-1,a=!1,l;for(;o>=0;--o)l=r[o],l._active?(l._total>s.duration&&(s.duration=l._total),l.tick(t),a=!0):(r[o]=r[r.length-1],r.pop());a&&(n.draw(),this._notify(n,s,t,"progress")),r.length||(s.running=!1,this._notify(n,s,t,"complete"),s.initial=!1),e+=r.length}),this._lastDate=t,e===0&&(this._running=!1)}_getAnims(t){const e=this._charts;let s=e.get(t);return s||(s={running:!1,initial:!0,items:[],listeners:{complete:[],progress:[]}},e.set(t,s)),s}listen(t,e,s){this._getAnims(t).listeners[e].push(s)}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((s,n)=>Math.max(s,n._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 s=e.items;let n=s.length-1;for(;n>=0;--n)s[n].cancel();e.items=[],this._notify(t,e,Date.now(),"complete")}remove(t){return this._charts.delete(t)}}var At=new sh;const un="transparent",nh={boolean(i,t,e){return e>.5?t:i},color(i,t,e){const s=Qs(i||un),n=s.valid&&Qs(t||un);return n&&n.valid?n.mix(s,e).hexString():t},number(i,t,e){return i+(t-i)*e}};class rh{constructor(t,e,s,n){const r=e[s];n=Ze([t.to,n,r,t.from]);const o=Ze([t.from,r,n]);this._active=!0,this._fn=t.fn||nh[t.type||typeof o],this._easing=Re[t.easing]||Re.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=s,this._from=o,this._to=n,this._promises=void 0}active(){return this._active}update(t,e,s){if(this._active){this._notify(!1);const n=this._target[this._prop],r=s-this._start,o=this._duration-r;this._start=s,this._duration=Math.floor(Math.max(o,t.duration)),this._total+=r,this._loop=!!t.loop,this._to=Ze([t.to,e,n,t.from]),this._from=Ze([t.from,n,e])}}cancel(){this._active&&(this.tick(Date.now()),this._active=!1,this._notify(!1))}tick(t){const e=t-this._start,s=this._duration,n=this._prop,r=this._from,o=this._loop,a=this._to;let l;if(this._active=r!==a&&(o||e<s),!this._active){this._target[n]=a,this._notify(!0);return}if(e<0){this._target[n]=r;return}l=e/s%2,l=o&&l>1?2-l:l,l=this._easing(Math.min(1,Math.max(0,l))),this._target[n]=this._fn(r,a,l)}wait(){const t=this._promises||(this._promises=[]);return new Promise((e,s)=>{t.push({res:e,rej:s})})}_notify(t){const e=t?"res":"rej",s=this._promises||[];for(let n=0;n<s.length;n++)s[n][e]()}}class Cr{constructor(t,e){this._chart=t,this._properties=new Map,this.configure(e)}configure(t){if(!W(t))return;const e=Object.keys(et.animation),s=this._properties;Object.getOwnPropertyNames(t).forEach(n=>{const r=t[n];if(!W(r))return;const o={};for(const a of e)o[a]=r[a];(nt(r.properties)&&r.properties||[n]).forEach(a=>{(a===n||!s.has(a))&&s.set(a,o)})})}_animateOptions(t,e){const s=e.options,n=ah(t,s);if(!n)return[];const r=this._createAnimations(n,s);return s.$shared&&oh(t.options.$animations,s).then(()=>{t.options=s},()=>{}),r}_createAnimations(t,e){const s=this._properties,n=[],r=t.$animations||(t.$animations={}),o=Object.keys(e),a=Date.now();let l;for(l=o.length-1;l>=0;--l){const h=o[l];if(h.charAt(0)==="$")continue;if(h==="options"){n.push(...this._animateOptions(t,e));continue}const c=e[h];let u=r[h];const d=s.get(h);if(u)if(d&&u.active()){u.update(d,c,a);continue}else u.cancel();if(!d||!d.duration){t[h]=c;continue}r[h]=u=new rh(d,t,h,c),n.push(u)}return n}update(t,e){if(this._properties.size===0){Object.assign(t,e);return}const s=this._createAnimations(t,e);if(s.length)return At.add(this._chart,s),!0}}function oh(i,t){const e=[],s=Object.keys(t);for(let n=0;n<s.length;n++){const r=i[s[n]];r&&r.active()&&e.push(r.wait())}return Promise.all(e)}function ah(i,t){if(!t)return;let e=i.options;if(!e){i.options=t;return}return e.$shared&&(i.options=e=Object.assign({},e,{$shared:!1,$animations:{}})),e}function dn(i,t){const e=i&&i.options||{},s=e.reverse,n=e.min===void 0?t:0,r=e.max===void 0?t:0;return{start:s?r:n,end:s?n:r}}function lh(i,t,e){if(e===!1)return!1;const s=dn(i,e),n=dn(t,e);return{top:n.end,right:s.end,bottom:n.start,left:s.start}}function hh(i){let t,e,s,n;return W(i)?(t=i.top,e=i.right,s=i.bottom,n=i.left):t=e=s=n=i,{top:t,right:e,bottom:s,left:n,disabled:i===!1}}function Pr(i,t){const e=[],s=i._getSortedDatasetMetas(t);let n,r;for(n=0,r=s.length;n<r;++n)e.push(s[n].index);return e}function bn(i,t,e,s={}){const n=i.keys,r=s.mode==="single";let o,a,l,h;if(t===null)return;let c=!1;for(o=0,a=n.length;o<a;++o){if(l=+n[o],l===e){if(c=!0,s.all)continue;break}h=i.values[l],xt(h)&&(r||t===0||Ct(t)===Ct(h))&&(t+=h)}return!c&&!s.all?0:t}function ch(i,t){const{iScale:e,vScale:s}=t,n=e.axis==="x"?"x":"y",r=s.axis==="x"?"x":"y",o=Object.keys(i),a=new Array(o.length);let l,h,c;for(l=0,h=o.length;l<h;++l)c=o[l],a[l]={[n]:c,[r]:i[c]};return a}function Ni(i,t){const e=i&&i.options.stacked;return e||e===void 0&&t.stack!==void 0}function uh(i,t,e){return`${i.id}.${t.id}.${e.stack||e.type}`}function dh(i){const{min:t,max:e,minDefined:s,maxDefined:n}=i.getUserBounds();return{min:s?t:Number.NEGATIVE_INFINITY,max:n?e:Number.POSITIVE_INFINITY}}function bh(i,t,e){const s=i[t]||(i[t]={});return s[e]||(s[e]={})}function fn(i,t,e,s){for(const n of t.getMatchingVisibleMetas(s).reverse()){const r=i[n.index];if(e&&r>0||!e&&r<0)return n.index}return null}function gn(i,t){const{chart:e,_cachedMeta:s}=i,n=e._stacks||(e._stacks={}),{iScale:r,vScale:o,index:a}=s,l=r.axis,h=o.axis,c=uh(r,o,s),u=t.length;let d;for(let b=0;b<u;++b){const g=t[b],{[l]:p,[h]:x}=g,y=g._stacks||(g._stacks={});d=y[h]=bh(n,c,p),d[a]=x,d._top=fn(d,o,!0,s.type),d._bottom=fn(d,o,!1,s.type);const _=d._visualValues||(d._visualValues={});_[a]=x}}function Ii(i,t){const e=i.scales;return Object.keys(e).filter(s=>e[s].axis===t).shift()}function fh(i,t){return se(i,{active:!1,dataset:void 0,datasetIndex:t,index:t,mode:"default",type:"dataset"})}function gh(i,t,e){return se(i,{active:!1,dataIndex:t,parsed:void 0,raw:void 0,element:e,index:t,mode:"default",type:"data"})}function me(i,t){const e=i.controller.index,s=i.vScale&&i.vScale.axis;if(s){t=t||i._parsed;for(const n of t){const r=n._stacks;if(!r||r[s]===void 0||r[s][e]===void 0)return;delete r[s][e],r[s]._visualValues!==void 0&&r[s]._visualValues[e]!==void 0&&delete r[s]._visualValues[e]}}}const Fi=i=>i==="reset"||i==="none",pn=(i,t)=>t?i:Object.assign({},i),ph=(i,t,e)=>i&&!t.hidden&&t._stacked&&{keys:Pr(e,!0),values:null};class te{constructor(t,e){this.chart=t,this._ctx=t.ctx,this.index=e,this._cachedDataOpts={},this._cachedMeta=this.getMeta(),this._type=this._cachedMeta.type,this.options=void 0,this._parsing=!1,this._data=void 0,this._objectData=void 0,this._sharedOptions=void 0,this._drawStart=void 0,this._drawCount=void 0,this.enableOptionSharing=!1,this.supportsDecimation=!1,this.$context=void 0,this._syncList=[],this.datasetElementType=new.target.datasetElementType,this.dataElementType=new.target.dataElementType,this.initialize()}initialize(){const t=this._cachedMeta;this.configure(),this.linkScales(),t._stacked=Ni(t.vScale,t),this.addElements(),this.options.fill&&!this.chart.isPluginEnabled("filler")&&console.warn("Tried to use the 'fill' option without the 'Filler' plugin enabled. Please import and register the 'Filler' plugin and make sure it is not disabled in the options")}updateIndex(t){this.index!==t&&me(this._cachedMeta),this.index=t}linkScales(){const t=this.chart,e=this._cachedMeta,s=this.getDataset(),n=(u,d,b,g)=>u==="x"?d:u==="r"?g:b,r=e.xAxisID=N(s.xAxisID,Ii(t,"x")),o=e.yAxisID=N(s.yAxisID,Ii(t,"y")),a=e.rAxisID=N(s.rAxisID,Ii(t,"r")),l=e.indexAxis,h=e.iAxisID=n(l,r,o,a),c=e.vAxisID=n(l,o,r,a);e.xScale=this.getScaleForId(r),e.yScale=this.getScaleForId(o),e.rScale=this.getScaleForId(a),e.iScale=this.getScaleForId(h),e.vScale=this.getScaleForId(c)}getDataset(){return this.chart.data.datasets[this.index]}getMeta(){return this.chart.getDatasetMeta(this.index)}getScaleForId(t){return this.chart.scales[t]}_getOtherScale(t){const e=this._cachedMeta;return t===e.iScale?e.vScale:e.iScale}reset(){this._update("reset")}_destroy(){const t=this._cachedMeta;this._data&&Gs(this._data,this),t._stacked&&me(t)}_dataCheck(){const t=this.getDataset(),e=t.data||(t.data=[]),s=this._data;if(W(e)){const n=this._cachedMeta;this._data=ch(e,n)}else if(s!==e){if(s){Gs(s,this);const n=this._cachedMeta;me(n),n._parsed=[]}e&&Object.isExtensible(e)&&Ka(e,this),this._syncList=[],this._data=e}}addElements(){const t=this._cachedMeta;this._dataCheck(),this.datasetElementType&&(t.dataset=new this.datasetElementType)}buildOrUpdateElements(t){const e=this._cachedMeta,s=this.getDataset();let n=!1;this._dataCheck();const r=e._stacked;e._stacked=Ni(e.vScale,e),e.stack!==s.stack&&(n=!0,me(e),e.stack=s.stack),this._resyncElements(t),(n||r!==e._stacked)&&(gn(this,e._parsed),e._stacked=Ni(e.vScale,e))}configure(){const t=this.chart.config,e=t.datasetScopeKeys(this._type),s=t.getOptionScopes(this.getDataset(),e,!0);this.options=t.createResolver(s,this.getContext()),this._parsing=this.options.parsing,this._cachedDataOpts={}}parse(t,e){const{_cachedMeta:s,_data:n}=this,{iScale:r,_stacked:o}=s,a=r.axis;let l=t===0&&e===n.length?!0:s._sorted,h=t>0&&s._parsed[t-1],c,u,d;if(this._parsing===!1)s._parsed=n,s._sorted=!0,d=n;else{nt(n[t])?d=this.parseArrayData(s,n,t,e):W(n[t])?d=this.parseObjectData(s,n,t,e):d=this.parsePrimitiveData(s,n,t,e);const b=()=>u[a]===null||h&&u[a]<h[a];for(c=0;c<e;++c)s._parsed[c+t]=u=d[c],l&&(b()&&(l=!1),h=u);s._sorted=l}o&&gn(this,d)}parsePrimitiveData(t,e,s,n){const{iScale:r,vScale:o}=t,a=r.axis,l=o.axis,h=r.getLabels(),c=r===o,u=new Array(n);let d,b,g;for(d=0,b=n;d<b;++d)g=d+s,u[d]={[a]:c||r.parse(h[g],g),[l]:o.parse(e[g],g)};return u}parseArrayData(t,e,s,n){const{xScale:r,yScale:o}=t,a=new Array(n);let l,h,c,u;for(l=0,h=n;l<h;++l)c=l+s,u=e[c],a[l]={x:r.parse(u[0],c),y:o.parse(u[1],c)};return a}parseObjectData(t,e,s,n){const{xScale:r,yScale:o}=t,{xAxisKey:a="x",yAxisKey:l="y"}=this._parsing,h=new Array(n);let c,u,d,b;for(c=0,u=n;c<u;++c)d=c+s,b=e[d],h[c]={x:r.parse(ee(b,a),d),y:o.parse(ee(b,l),d)};return h}getParsed(t){return this._cachedMeta._parsed[t]}getDataElement(t){return this._cachedMeta.data[t]}applyStack(t,e,s){const n=this.chart,r=this._cachedMeta,o=e[t.axis],a={keys:Pr(n,!0),values:e._stacks[t.axis]._visualValues};return bn(a,o,r.index,{mode:s})}updateRangeFromParsed(t,e,s,n){const r=s[e.axis];let o=r===null?NaN:r;const a=n&&s._stacks[e.axis];n&&a&&(n.values=a,o=bn(n,r,this._cachedMeta.index)),t.min=Math.min(t.min,o),t.max=Math.max(t.max,o)}getMinMax(t,e){const s=this._cachedMeta,n=s._parsed,r=s._sorted&&t===s.iScale,o=n.length,a=this._getOtherScale(t),l=ph(e,s,this.chart),h={min:Number.POSITIVE_INFINITY,max:Number.NEGATIVE_INFINITY},{min:c,max:u}=dh(a);let d,b;function g(){b=n[d];const p=b[a.axis];return!xt(b[t.axis])||c>p||u<p}for(d=0;d<o&&!(!g()&&(this.updateRangeFromParsed(h,t,b,l),r));++d);if(r){for(d=o-1;d>=0;--d)if(!g()){this.updateRangeFromParsed(h,t,b,l);break}}return h}getAllParsedValues(t){const e=this._cachedMeta._parsed,s=[];let n,r,o;for(n=0,r=e.length;n<r;++n)o=e[n][t.axis],xt(o)&&s.push(o);return s}getMaxOverflow(){return!1}getLabelAndValue(t){const e=this._cachedMeta,s=e.iScale,n=e.vScale,r=this.getParsed(t);return{label:s?""+s.getLabelForValue(r[s.axis]):"",value:n?""+n.getLabelForValue(r[n.axis]):""}}_update(t){const e=this._cachedMeta;this.update(t||"default"),e._clip=hh(N(this.options.clip,lh(e.xScale,e.yScale,this.getMaxOverflow())))}update(t){}draw(){const t=this._ctx,e=this.chart,s=this._cachedMeta,n=s.data||[],r=e.chartArea,o=[],a=this._drawStart||0,l=this._drawCount||n.length-a,h=this.options.drawActiveElementsOnTop;let c;for(s.dataset&&s.dataset.draw(t,r,a,l),c=a;c<a+l;++c){const u=n[c];u.hidden||(u.active&&h?o.push(u):u.draw(t,r))}for(c=0;c<o.length;++c)o[c].draw(t,r)}getStyle(t,e){const s=e?"active":"default";return t===void 0&&this._cachedMeta.dataset?this.resolveDatasetElementOptions(s):this.resolveDataElementOptions(t||0,s)}getContext(t,e,s){const n=this.getDataset();let r;if(t>=0&&t<this._cachedMeta.data.length){const o=this._cachedMeta.data[t];r=o.$context||(o.$context=gh(this.getContext(),t,o)),r.parsed=this.getParsed(t),r.raw=n.data[t],r.index=r.dataIndex=t}else r=this.$context||(this.$context=fh(this.chart.getContext(),this.index)),r.dataset=n,r.index=r.datasetIndex=this.index;return r.active=!!e,r.mode=s,r}resolveDatasetElementOptions(t){return this._resolveElementOptions(this.datasetElementType.id,t)}resolveDataElementOptions(t,e){return this._resolveElementOptions(this.dataElementType.id,e,t)}_resolveElementOptions(t,e="default",s){const n=e==="active",r=this._cachedDataOpts,o=t+"-"+e,a=r[o],l=this.enableOptionSharing&&Ee(s);if(a)return pn(a,l);const h=this.chart.config,c=h.datasetElementScopeKeys(this._type,t),u=n?[`${t}Hover`,"hover",t,""]:[t,""],d=h.getOptionScopes(this.getDataset(),c),b=Object.keys(et.elements[t]),g=()=>this.getContext(s,n,e),p=h.resolveNamedOptions(d,b,g,u);return p.$shared&&(p.$shared=l,r[o]=Object.freeze(pn(p,l))),p}_resolveAnimations(t,e,s){const n=this.chart,r=this._cachedDataOpts,o=`animation-${e}`,a=r[o];if(a)return a;let l;if(n.options.animation!==!1){const c=this.chart.config,u=c.datasetAnimationScopeKeys(this._type,e),d=c.getOptionScopes(this.getDataset(),u);l=c.createResolver(d,this.getContext(t,s,e))}const h=new Cr(n,l&&l.animations);return l&&l._cacheable&&(r[o]=Object.freeze(h)),h}getSharedOptions(t){if(t.$shared)return this._sharedOptions||(this._sharedOptions=Object.assign({},t))}includeOptions(t,e){return!e||Fi(t)||this.chart._animationsDisabled}_getSharedOptions(t,e){const s=this.resolveDataElementOptions(t,e),n=this._sharedOptions,r=this.getSharedOptions(s),o=this.includeOptions(e,r)||r!==n;return this.updateSharedOptions(r,e,s),{sharedOptions:r,includeOptions:o}}updateElement(t,e,s,n){Fi(n)?Object.assign(t,s):this._resolveAnimations(e,n).update(t,s)}updateSharedOptions(t,e,s){t&&!Fi(e)&&this._resolveAnimations(void 0,e).update(t,s)}_setStyle(t,e,s,n){t.active=n;const r=this.getStyle(e,n);this._resolveAnimations(e,s,n).update(t,{options:!n&&this.getSharedOptions(r)||r})}removeHoverStyle(t,e,s){this._setStyle(t,s,"active",!1)}setHoverStyle(t,e,s){this._setStyle(t,s,"active",!0)}_removeDatasetHoverStyle(){const t=this._cachedMeta.dataset;t&&this._setStyle(t,void 0,"active",!1)}_setDatasetHoverStyle(){const t=this._cachedMeta.dataset;t&&this._setStyle(t,void 0,"active",!0)}_resyncElements(t){const e=this._data,s=this._cachedMeta.data;for(const[a,l,h]of this._syncList)this[a](l,h);this._syncList=[];const n=s.length,r=e.length,o=Math.min(r,n);o&&this.parse(0,o),r>n?this._insertElements(n,r-n,t):r<n&&this._removeElements(r,n-r)}_insertElements(t,e,s=!0){const n=this._cachedMeta,r=n.data,o=t+e;let a;const l=h=>{for(h.length+=e,a=h.length-1;a>=o;a--)h[a]=h[a-e]};for(l(r),a=t;a<o;++a)r[a]=new this.dataElementType;this._parsing&&l(n._parsed),this.parse(t,e),s&&this.updateElements(r,t,e,"reset")}updateElements(t,e,s,n){}_removeElements(t,e){const s=this._cachedMeta;if(this._parsing){const n=s._parsed.splice(t,e);s._stacked&&me(s,n)}s.data.splice(t,e)}_sync(t){if(this._parsing)this._syncList.push(t);else{const[e,s,n]=t;this[e](s,n)}this.chart._dataChanges.push([this.index,...t])}_onDataPush(){const t=arguments.length;this._sync(["_insertElements",this.getDataset().data.length-t,t])}_onDataPop(){this._sync(["_removeElements",this._cachedMeta.data.length-1,1])}_onDataShift(){this._sync(["_removeElements",0,1])}_onDataSplice(t,e){e&&this._sync(["_removeElements",t,e]);const s=arguments.length-2;s&&this._sync(["_insertElements",t,s])}_onDataUnshift(){this._sync(["_insertElements",0,arguments.length])}}j(te,"defaults",{}),j(te,"datasetElementType",null),j(te,"dataElementType",null);function mh(i,t){if(!i._cache.$bar){const e=i.getMatchingVisibleMetas(t);let s=[];for(let n=0,r=e.length;n<r;n++)s=s.concat(e[n].controller.getAllParsedValues(i));i._cache.$bar=dr(s.sort((n,r)=>n-r))}return i._cache.$bar}function xh(i){const t=i.iScale,e=mh(t,i.type);let s=t._length,n,r,o,a;const l=()=>{o===32767||o===-32768||(Ee(a)&&(s=Math.min(s,Math.abs(o-a)||s)),a=o)};for(n=0,r=e.length;n<r;++n)o=t.getPixelForValue(e[n]),l();for(a=void 0,n=0,r=t.ticks.length;n<r;++n)o=t.getPixelForTick(n),l();return s}function yh(i,t,e,s){const n=e.barThickness;let r,o;return $(n)?(r=t.min*e.categoryPercentage,o=e.barPercentage):(r=n*s,o=1),{chunk:r/s,ratio:o,start:t.pixels[i]-r/2}}function _h(i,t,e,s){const n=t.pixels,r=n[i];let o=i>0?n[i-1]:null,a=i<n.length-1?n[i+1]:null;const l=e.categoryPercentage;o===null&&(o=r-(a===null?t.end-t.start:a-r)),a===null&&(a=r+r-o);const h=r-(r-Math.min(o,a))/2*l;return{chunk:Math.abs(a-o)/2*l/s,ratio:e.barPercentage,start:h}}function vh(i,t,e,s){const n=e.parse(i[0],s),r=e.parse(i[1],s),o=Math.min(n,r),a=Math.max(n,r);let l=o,h=a;Math.abs(o)>Math.abs(a)&&(l=a,h=o),t[e.axis]=h,t._custom={barStart:l,barEnd:h,start:n,end:r,min:o,max:a}}function Or(i,t,e,s){return nt(i)?vh(i,t,e,s):t[e.axis]=e.parse(i,s),t}function mn(i,t,e,s){const n=i.iScale,r=i.vScale,o=n.getLabels(),a=n===r,l=[];let h,c,u,d;for(h=e,c=e+s;h<c;++h)d=t[h],u={},u[n.axis]=a||n.parse(o[h],h),l.push(Or(d,u,r,h));return l}function zi(i){return i&&i.barStart!==void 0&&i.barEnd!==void 0}function kh(i,t,e){return i!==0?Ct(i):(t.isHorizontal()?1:-1)*(t.min>=e?1:-1)}function wh(i){let t,e,s,n,r;return i.horizontal?(t=i.base>i.x,e="left",s="right"):(t=i.base<i.y,e="bottom",s="top"),t?(n="end",r="start"):(n="start",r="end"),{start:e,end:s,reverse:t,top:n,bottom:r}}function Sh(i,t,e,s){let n=t.borderSkipped;const r={};if(!n){i.borderSkipped=r;return}if(n===!0){i.borderSkipped={top:!0,right:!0,bottom:!0,left:!0};return}const{start:o,end:a,reverse:l,top:h,bottom:c}=wh(i);n==="middle"&&e&&(i.enableBorderRadius=!0,(e._top||0)===s?n=h:(e._bottom||0)===s?n=c:(r[xn(c,o,a,l)]=!0,n=h)),r[xn(n,o,a,l)]=!0,i.borderSkipped=r}function xn(i,t,e,s){return s?(i=Mh(i,t,e),i=yn(i,e,t)):i=yn(i,t,e),i}function Mh(i,t,e){return i===t?e:i===e?t:i}function yn(i,t,e){return i==="start"?t:i==="end"?e:i}function Ch(i,{inflateAmount:t},e){i.inflateAmount=t==="auto"?e===1?.33:0:t}class ai extends te{parsePrimitiveData(t,e,s,n){return mn(t,e,s,n)}parseArrayData(t,e,s,n){return mn(t,e,s,n)}parseObjectData(t,e,s,n){const{iScale:r,vScale:o}=t,{xAxisKey:a="x",yAxisKey:l="y"}=this._parsing,h=r.axis==="x"?a:l,c=o.axis==="x"?a:l,u=[];let d,b,g,p;for(d=s,b=s+n;d<b;++d)p=e[d],g={},g[r.axis]=r.parse(ee(p,h),d),u.push(Or(ee(p,c),g,o,d));return u}updateRangeFromParsed(t,e,s,n){super.updateRangeFromParsed(t,e,s,n);const r=s._custom;r&&e===this._cachedMeta.vScale&&(t.min=Math.min(t.min,r.min),t.max=Math.max(t.max,r.max))}getMaxOverflow(){return 0}getLabelAndValue(t){const e=this._cachedMeta,{iScale:s,vScale:n}=e,r=this.getParsed(t),o=r._custom,a=zi(o)?"["+o.start+", "+o.end+"]":""+n.getLabelForValue(r[n.axis]);return{label:""+s.getLabelForValue(r[s.axis]),value:a}}initialize(){this.enableOptionSharing=!0,super.initialize();const t=this._cachedMeta;t.stack=this.getDataset().stack}update(t){const e=this._cachedMeta;this.updateElements(e.data,0,e.data.length,t)}updateElements(t,e,s,n){const r=n==="reset",{index:o,_cachedMeta:{vScale:a}}=this,l=a.getBasePixel(),h=a.isHorizontal(),c=this._getRuler(),{sharedOptions:u,includeOptions:d}=this._getSharedOptions(e,n);for(let b=e;b<e+s;b++){const g=this.getParsed(b),p=r||$(g[a.axis])?{base:l,head:l}:this._calculateBarValuePixels(b),x=this._calculateBarIndexPixels(b,c),y=(g._stacks||{})[a.axis],_={horizontal:h,base:p.base,enableBorderRadius:!y||zi(g._custom)||o===y._top||o===y._bottom,x:h?p.head:x.center,y:h?x.center:p.head,height:h?x.size:Math.abs(p.size),width:h?Math.abs(p.size):x.size};d&&(_.options=u||this.resolveDataElementOptions(b,t[b].active?"active":n));const w=_.options||t[b].options;Sh(_,w,y,o),Ch(_,w,c.ratio),this.updateElement(t[b],b,_,n)}}_getStacks(t,e){const{iScale:s}=this._cachedMeta,n=s.getMatchingVisibleMetas(this._type).filter(c=>c.controller.options.grouped),r=s.options.stacked,o=[],a=this._cachedMeta.controller.getParsed(e),l=a&&a[s.axis],h=c=>{const u=c._parsed.find(b=>b[s.axis]===l),d=u&&u[c.vScale.axis];if($(d)||isNaN(d))return!0};for(const c of n)if(!(e!==void 0&&h(c))&&((r===!1||o.indexOf(c.stack)===-1||r===void 0&&c.stack===void 0)&&o.push(c.stack),c.index===t))break;return o.length||o.push(void 0),o}_getStackCount(t){return this._getStacks(void 0,t).length}_getAxisCount(){return this._getAxis().length}getFirstScaleIdForIndexAxis(){const t=this.chart.scales,e=this.chart.options.indexAxis;return Object.keys(t).filter(s=>t[s].axis===e).shift()}_getAxis(){const t={},e=this.getFirstScaleIdForIndexAxis();for(const s of this.chart.data.datasets)t[N(this.chart.options.indexAxis==="x"?s.xAxisID:s.yAxisID,e)]=!0;return Object.keys(t)}_getStackIndex(t,e,s){const n=this._getStacks(t,s),r=e!==void 0?n.indexOf(e):-1;return r===-1?n.length-1:r}_getRuler(){const t=this.options,e=this._cachedMeta,s=e.iScale,n=[];let r,o;for(r=0,o=e.data.length;r<o;++r)n.push(s.getPixelForValue(this.getParsed(r)[s.axis],r));const a=t.barThickness;return{min:a||xh(e),pixels:n,start:s._startPixel,end:s._endPixel,stackCount:this._getStackCount(),scale:s,grouped:t.grouped,ratio:a?1:t.categoryPercentage*t.barPercentage}}_calculateBarValuePixels(t){const{_cachedMeta:{vScale:e,_stacked:s,index:n},options:{base:r,minBarLength:o}}=this,a=r||0,l=this.getParsed(t),h=l._custom,c=zi(h);let u=l[e.axis],d=0,b=s?this.applyStack(e,l,s):u,g,p;b!==u&&(d=b-u,b=u),c&&(u=h.barStart,b=h.barEnd-h.barStart,u!==0&&Ct(u)!==Ct(h.barEnd)&&(d=0),d+=u);const x=!$(r)&&!c?r:d;let y=e.getPixelForValue(x);if(this.chart.getDataVisibility(t)?g=e.getPixelForValue(d+b):g=y,p=g-y,Math.abs(p)<o){p=kh(p,e,a)*o,u===a&&(y-=p/2);const _=e.getPixelForDecimal(0),w=e.getPixelForDecimal(1),M=Math.min(_,w),v=Math.max(_,w);y=Math.max(Math.min(y,v),M),g=y+p,s&&!c&&(l._stacks[e.axis]._visualValues[n]=e.getValueForPixel(g)-e.getValueForPixel(y))}if(y===e.getPixelForValue(a)){const _=Ct(p)*e.getLineWidthForValue(a)/2;y+=_,p-=_}return{size:p,base:y,head:g,center:g+p/2}}_calculateBarIndexPixels(t,e){const s=e.scale,n=this.options,r=n.skipNull,o=N(n.maxBarThickness,1/0);let a,l;const h=this._getAxisCount();if(e.grouped){const c=r?this._getStackCount(t):e.stackCount,u=n.barThickness==="flex"?_h(t,e,n,c*h):yh(t,e,n,c*h),d=this.chart.options.indexAxis==="x"?this.getDataset().xAxisID:this.getDataset().yAxisID,b=this._getAxis().indexOf(N(d,this.getFirstScaleIdForIndexAxis())),g=this._getStackIndex(this.index,this._cachedMeta.stack,r?t:void 0)+b;a=u.start+u.chunk*g+u.chunk/2,l=Math.min(o,u.chunk*u.ratio)}else a=s.getPixelForValue(this.getParsed(t)[s.axis],t),l=Math.min(o,e.min*e.ratio);return{base:a-l/2,head:a+l/2,center:a,size:l}}draw(){const t=this._cachedMeta,e=t.vScale,s=t.data,n=s.length;let r=0;for(;r<n;++r)this.getParsed(r)[e.axis]!==null&&!s[r].hidden&&s[r].draw(this._ctx)}}j(ai,"id","bar"),j(ai,"defaults",{datasetElementType:!1,dataElementType:"bar",categoryPercentage:.8,barPercentage:.9,grouped:!0,animations:{numbers:{type:"number",properties:["x","y","base","width","height"]}}}),j(ai,"overrides",{scales:{_index_:{type:"category",offset:!0,grid:{offset:!0}},_value_:{type:"linear",beginAtZero:!0}}});function Ph(i,t,e){let s=1,n=1,r=0,o=0;if(t<Q){const a=i,l=a+t,h=Math.cos(a),c=Math.sin(a),u=Math.cos(l),d=Math.sin(l),b=(w,M,v)=>Ne(w,a,l,!0)?1:Math.max(M,M*e,v,v*e),g=(w,M,v)=>Ne(w,a,l,!0)?-1:Math.min(M,M*e,v,v*e),p=b(0,h,u),x=b(rt,c,d),y=g(U,h,u),_=g(U+rt,c,d);s=(p-y)/2,n=(x-_)/2,r=-(p+y)/2,o=-(x+_)/2}return{ratioX:s,ratioY:n,offsetX:r,offsetY:o}}class we extends te{constructor(t,e){super(t,e),this.enableOptionSharing=!0,this.innerRadius=void 0,this.outerRadius=void 0,this.offsetX=void 0,this.offsetY=void 0}linkScales(){}parse(t,e){const s=this.getDataset().data,n=this._cachedMeta;if(this._parsing===!1)n._parsed=s;else{let r=l=>+s[l];if(W(s[t])){const{key:l="value"}=this._parsing;r=h=>+ee(s[h],l)}let o,a;for(o=t,a=t+e;o<a;++o)n._parsed[o]=r(o)}}_getRotation(){return Et(this.options.rotation-90)}_getCircumference(){return Et(this.options.circumference)}_getRotationExtents(){let t=Q,e=-Q;for(let s=0;s<this.chart.data.datasets.length;++s)if(this.chart.isDatasetVisible(s)&&this.chart.getDatasetMeta(s).type===this._type){const n=this.chart.getDatasetMeta(s).controller,r=n._getRotation(),o=n._getCircumference();t=Math.min(t,r),e=Math.max(e,r+o)}return{rotation:t,circumference:e-t}}update(t){const e=this.chart,{chartArea:s}=e,n=this._cachedMeta,r=n.data,o=this.getMaxBorderWidth()+this.getMaxOffset(r)+this.options.spacing,a=Math.max((Math.min(s.width,s.height)-o)/2,0),l=Math.min(Da(this.options.cutout,a),1),h=this._getRingWeight(this.index),{circumference:c,rotation:u}=this._getRotationExtents(),{ratioX:d,ratioY:b,offsetX:g,offsetY:p}=Ph(u,c,l),x=(s.width-o)/d,y=(s.height-o)/b,_=Math.max(Math.min(x,y)/2,0),w=ar(this.options.radius,_),M=Math.max(w*l,0),v=(w-M)/this._getVisibleDatasetWeightTotal();this.offsetX=g*w,this.offsetY=p*w,n.total=this.calculateTotal(),this.outerRadius=w-v*this._getRingWeightOffset(this.index),this.innerRadius=Math.max(this.outerRadius-v*h,0),this.updateElements(r,0,r.length,t)}_circumference(t,e){const s=this.options,n=this._cachedMeta,r=this._getCircumference();return e&&s.animation.animateRotate||!this.chart.getDataVisibility(t)||n._parsed[t]===null||n.data[t].hidden?0:this.calculateCircumference(n._parsed[t]*r/Q)}updateElements(t,e,s,n){const r=n==="reset",o=this.chart,a=o.chartArea,h=o.options.animation,c=(a.left+a.right)/2,u=(a.top+a.bottom)/2,d=r&&h.animateScale,b=d?0:this.innerRadius,g=d?0:this.outerRadius,{sharedOptions:p,includeOptions:x}=this._getSharedOptions(e,n);let y=this._getRotation(),_;for(_=0;_<e;++_)y+=this._circumference(_,r);for(_=e;_<e+s;++_){const w=this._circumference(_,r),M=t[_],v={x:c+this.offsetX,y:u+this.offsetY,startAngle:y,endAngle:y+w,circumference:w,outerRadius:g,innerRadius:b};x&&(v.options=p||this.resolveDataElementOptions(_,M.active?"active":n)),y+=w,this.updateElement(M,_,v,n)}}calculateTotal(){const t=this._cachedMeta,e=t.data;let s=0,n;for(n=0;n<e.length;n++){const r=t._parsed[n];r!==null&&!isNaN(r)&&this.chart.getDataVisibility(n)&&!e[n].hidden&&(s+=Math.abs(r))}return s}calculateCircumference(t){const e=this._cachedMeta.total;return e>0&&!isNaN(t)?Q*(Math.abs(t)/e):0}getLabelAndValue(t){const e=this._cachedMeta,s=this.chart,n=s.data.labels||[],r=as(e._parsed[t],s.options.locale);return{label:n[t]||"",value:r}}getMaxBorderWidth(t){let e=0;const s=this.chart;let n,r,o,a,l;if(!t){for(n=0,r=s.data.datasets.length;n<r;++n)if(s.isDatasetVisible(n)){o=s.getDatasetMeta(n),t=o.data,a=o.controller;break}}if(!t)return 0;for(n=0,r=t.length;n<r;++n)l=a.resolveDataElementOptions(n),l.borderAlign!=="inner"&&(e=Math.max(e,l.borderWidth||0,l.hoverBorderWidth||0));return e}getMaxOffset(t){let e=0;for(let s=0,n=t.length;s<n;++s){const r=this.resolveDataElementOptions(s);e=Math.max(e,r.offset||0,r.hoverOffset||0)}return e}_getRingWeightOffset(t){let e=0;for(let s=0;s<t;++s)this.chart.isDatasetVisible(s)&&(e+=this._getRingWeight(s));return e}_getRingWeight(t){return Math.max(N(this.chart.data.datasets[t].weight,1),0)}_getVisibleDatasetWeightTotal(){return this._getRingWeightOffset(this.chart.data.datasets.length)||1}}j(we,"id","doughnut"),j(we,"defaults",{datasetElementType:!1,dataElementType:"arc",animation:{animateRotate:!0,animateScale:!1},animations:{numbers:{type:"number",properties:["circumference","endAngle","innerRadius","outerRadius","startAngle","x","y","offset","borderWidth","spacing"]}},cutout:"50%",rotation:0,circumference:360,radius:"100%",spacing:0,indexAxis:"r"}),j(we,"descriptors",{_scriptable:t=>t!=="spacing",_indexable:t=>t!=="spacing"&&!t.startsWith("borderDash")&&!t.startsWith("hoverBorderDash")}),j(we,"overrides",{aspectRatio:1,plugins:{legend:{labels:{generateLabels(t){const e=t.data;if(e.labels.length&&e.datasets.length){const{labels:{pointStyle:s,color:n}}=t.legend.options;return e.labels.map((r,o)=>{const l=t.getDatasetMeta(0).controller.getStyle(o);return{text:r,fillStyle:l.backgroundColor,strokeStyle:l.borderColor,fontColor:n,lineWidth:l.borderWidth,pointStyle:s,hidden:!t.getDataVisibility(o),index:o}})}return[]}},onClick(t,e,s){s.chart.toggleDataVisibility(e.index),s.chart.update()}}}});class li extends te{initialize(){this.enableOptionSharing=!0,this.supportsDecimation=!0,super.initialize()}update(t){const e=this._cachedMeta,{dataset:s,data:n=[],_dataset:r}=e,o=this.chart._animationsDisabled;let{start:a,count:l}=Ja(e,n,o);this._drawStart=a,this._drawCount=l,Qa(e)&&(a=0,l=n.length),s._chart=this.chart,s._datasetIndex=this.index,s._decimated=!!r._decimated,s.points=n;const h=this.resolveDatasetElementOptions(t);this.options.showLine||(h.borderWidth=0),h.segment=this.options.segment,this.updateElement(s,void 0,{animated:!o,options:h},t),this.updateElements(n,a,l,t)}updateElements(t,e,s,n){const r=n==="reset",{iScale:o,vScale:a,_stacked:l,_dataset:h}=this._cachedMeta,{sharedOptions:c,includeOptions:u}=this._getSharedOptions(e,n),d=o.axis,b=a.axis,{spanGaps:g,segment:p}=this.options,x=Le(g)?g:Number.POSITIVE_INFINITY,y=this.chart._animationsDisabled||r||n==="none",_=e+s,w=t.length;let M=e>0&&this.getParsed(e-1);for(let v=0;v<w;++v){const O=t[v],S=y?O:{};if(v<e||v>=_){S.skip=!0;continue}const C=this.getParsed(v),R=$(C[b]),T=S[d]=o.getPixelForValue(C[d],v),E=S[b]=r||R?a.getBasePixel():a.getPixelForValue(l?this.applyStack(a,C,l):C[b],v);S.skip=isNaN(T)||isNaN(E)||R,S.stop=v>0&&Math.abs(C[d]-M[d])>x,p&&(S.parsed=C,S.raw=h.data[v]),u&&(S.options=c||this.resolveDataElementOptions(v,O.active?"active":n)),y||this.updateElement(O,v,S,n),M=C}}getMaxOverflow(){const t=this._cachedMeta,e=t.dataset,s=e.options&&e.options.borderWidth||0,n=t.data||[];if(!n.length)return s;const r=n[0].size(this.resolveDataElementOptions(0)),o=n[n.length-1].size(this.resolveDataElementOptions(n.length-1));return Math.max(s,r,o)/2}draw(){const t=this._cachedMeta;t.dataset.updateControlPoints(this.chart.chartArea,t.iScale.axis),super.draw()}}j(li,"id","line"),j(li,"defaults",{datasetElementType:"line",dataElementType:"point",showLine:!0,spanGaps:!1}),j(li,"overrides",{scales:{_index_:{type:"category"},_value_:{type:"linear"}}});function qt(){throw new Error("This method is not implemented: Check that a complete date adapter is provided.")}class ps{constructor(t){j(this,"options");this.options=t||{}}static override(t){Object.assign(ps.prototype,t)}init(){}formats(){return qt()}parse(){return qt()}format(){return qt()}add(){return qt()}diff(){return qt()}startOf(){return qt()}endOf(){return qt()}}var Oh={_date:ps};function jh(i,t,e,s){const{controller:n,data:r,_sorted:o}=i,a=n._cachedMeta.iScale,l=i.dataset&&i.dataset.options?i.dataset.options.spanGaps:null;if(a&&t===a.axis&&t!=="r"&&o&&r.length){const h=a._reversePixels?Xa:Zt;if(s){if(n._sharedOptions){const c=r[0],u=typeof c.getRange=="function"&&c.getRange(t);if(u){const d=h(r,t,e-u),b=h(r,t,e+u);return{lo:d.lo,hi:b.hi}}}}else{const c=h(r,t,e);if(l){const{vScale:u}=n._cachedMeta,{_parsed:d}=i,b=d.slice(0,c.lo+1).reverse().findIndex(p=>!$(p[u.axis]));c.lo-=Math.max(0,b);const g=d.slice(c.hi).findIndex(p=>!$(p[u.axis]));c.hi+=Math.max(0,g)}return c}}return{lo:0,hi:r.length-1}}function Si(i,t,e,s,n){const r=i.getSortedVisibleDatasetMetas(),o=e[t];for(let a=0,l=r.length;a<l;++a){const{index:h,data:c}=r[a],{lo:u,hi:d}=jh(r[a],t,o,n);for(let b=u;b<=d;++b){const g=c[b];g.skip||s(g,h,b)}}}function Rh(i){const t=i.indexOf("x")!==-1,e=i.indexOf("y")!==-1;return function(s,n){const r=t?Math.abs(s.x-n.x):0,o=e?Math.abs(s.y-n.y):0;return Math.sqrt(Math.pow(r,2)+Math.pow(o,2))}}function Bi(i,t,e,s,n){const r=[];return!n&&!i.isPointInArea(t)||Si(i,e,t,function(a,l,h){!n&&!Ie(a,i.chartArea,0)||a.inRange(t.x,t.y,s)&&r.push({element:a,datasetIndex:l,index:h})},!0),r}function Ah(i,t,e,s){let n=[];function r(o,a,l){const{startAngle:h,endAngle:c}=o.getProps(["startAngle","endAngle"],s),{angle:u}=cr(o,{x:t.x,y:t.y});Ne(u,h,c)&&n.push({element:o,datasetIndex:a,index:l})}return Si(i,e,t,r),n}function Dh(i,t,e,s,n,r){let o=[];const a=Rh(e);let l=Number.POSITIVE_INFINITY;function h(c,u,d){const b=c.inRange(t.x,t.y,n);if(s&&!b)return;const g=c.getCenterPoint(n);if(!(!!r||i.isPointInArea(g))&&!b)return;const x=a(t,g);x<l?(o=[{element:c,datasetIndex:u,index:d}],l=x):x===l&&o.push({element:c,datasetIndex:u,index:d})}return Si(i,e,t,h),o}function Hi(i,t,e,s,n,r){return!r&&!i.isPointInArea(t)?[]:e==="r"&&!s?Ah(i,t,e,n):Dh(i,t,e,s,n,r)}function _n(i,t,e,s,n){const r=[],o=e==="x"?"inXRange":"inYRange";let a=!1;return Si(i,e,t,(l,h,c)=>{l[o]&&l[o](t[e],n)&&(r.push({element:l,datasetIndex:h,index:c}),a=a||l.inRange(t.x,t.y,n))}),s&&!a?[]:r}var Th={modes:{index(i,t,e,s){const n=Kt(t,i),r=e.axis||"x",o=e.includeInvisible||!1,a=e.intersect?Bi(i,n,r,s,o):Hi(i,n,r,!1,s,o),l=[];return a.length?(i.getSortedVisibleDatasetMetas().forEach(h=>{const c=a[0].index,u=h.data[c];u&&!u.skip&&l.push({element:u,datasetIndex:h.index,index:c})}),l):[]},dataset(i,t,e,s){const n=Kt(t,i),r=e.axis||"xy",o=e.includeInvisible||!1;let a=e.intersect?Bi(i,n,r,s,o):Hi(i,n,r,!1,s,o);if(a.length>0){const l=a[0].datasetIndex,h=i.getDatasetMeta(l).data;a=[];for(let c=0;c<h.length;++c)a.push({element:h[c],datasetIndex:l,index:c})}return a},point(i,t,e,s){const n=Kt(t,i),r=e.axis||"xy",o=e.includeInvisible||!1;return Bi(i,n,r,s,o)},nearest(i,t,e,s){const n=Kt(t,i),r=e.axis||"xy",o=e.includeInvisible||!1;return Hi(i,n,r,e.intersect,s,o)},x(i,t,e,s){const n=Kt(t,i);return _n(i,n,"x",e.intersect,s)},y(i,t,e,s){const n=Kt(t,i);return _n(i,n,"y",e.intersect,s)}}};const jr=["left","top","right","bottom"];function xe(i,t){return i.filter(e=>e.pos===t)}function vn(i,t){return i.filter(e=>jr.indexOf(e.pos)===-1&&e.box.axis===t)}function ye(i,t){return i.sort((e,s)=>{const n=t?s:e,r=t?e:s;return n.weight===r.weight?n.index-r.index:n.weight-r.weight})}function Eh(i){const t=[];let e,s,n,r,o,a;for(e=0,s=(i||[]).length;e<s;++e)n=i[e],{position:r,options:{stack:o,stackWeight:a=1}}=n,t.push({index:e,box:n,pos:r,horizontal:n.isHorizontal(),weight:n.weight,stack:o&&r+o,stackWeight:a});return t}function Lh(i){const t={};for(const e of i){const{stack:s,pos:n,stackWeight:r}=e;if(!s||!jr.includes(n))continue;const o=t[s]||(t[s]={count:0,placed:0,weight:0,size:0});o.count++,o.weight+=r}return t}function Nh(i,t){const e=Lh(i),{vBoxMaxWidth:s,hBoxMaxHeight:n}=t;let r,o,a;for(r=0,o=i.length;r<o;++r){a=i[r];const{fullSize:l}=a.box,h=e[a.stack],c=h&&a.stackWeight/h.weight;a.horizontal?(a.width=c?c*s:l&&t.availableWidth,a.height=n):(a.width=s,a.height=c?c*n:l&&t.availableHeight)}return e}function Ih(i){const t=Eh(i),e=ye(t.filter(h=>h.box.fullSize),!0),s=ye(xe(t,"left"),!0),n=ye(xe(t,"right")),r=ye(xe(t,"top"),!0),o=ye(xe(t,"bottom")),a=vn(t,"x"),l=vn(t,"y");return{fullSize:e,leftAndTop:s.concat(r),rightAndBottom:n.concat(l).concat(o).concat(a),chartArea:xe(t,"chartArea"),vertical:s.concat(n).concat(l),horizontal:r.concat(o).concat(a)}}function kn(i,t,e,s){return Math.max(i[e],t[e])+Math.max(i[s],t[s])}function Rr(i,t){i.top=Math.max(i.top,t.top),i.left=Math.max(i.left,t.left),i.bottom=Math.max(i.bottom,t.bottom),i.right=Math.max(i.right,t.right)}function Fh(i,t,e,s){const{pos:n,box:r}=e,o=i.maxPadding;if(!W(n)){e.size&&(i[n]-=e.size);const u=s[e.stack]||{size:0,count:1};u.size=Math.max(u.size,e.horizontal?r.height:r.width),e.size=u.size/u.count,i[n]+=e.size}r.getPadding&&Rr(o,r.getPadding());const a=Math.max(0,t.outerWidth-kn(o,i,"left","right")),l=Math.max(0,t.outerHeight-kn(o,i,"top","bottom")),h=a!==i.w,c=l!==i.h;return i.w=a,i.h=l,e.horizontal?{same:h,other:c}:{same:c,other:h}}function zh(i){const t=i.maxPadding;function e(s){const n=Math.max(t[s]-i[s],0);return i[s]+=n,n}i.y+=e("top"),i.x+=e("left"),e("right"),e("bottom")}function Bh(i,t){const e=t.maxPadding;function s(n){const r={left:0,top:0,right:0,bottom:0};return n.forEach(o=>{r[o]=Math.max(t[o],e[o])}),r}return s(i?["left","right"]:["top","bottom"])}function Se(i,t,e,s){const n=[];let r,o,a,l,h,c;for(r=0,o=i.length,h=0;r<o;++r){a=i[r],l=a.box,l.update(a.width||t.w,a.height||t.h,Bh(a.horizontal,t));const{same:u,other:d}=Fh(t,e,a,s);h|=u&&n.length,c=c||d,l.fullSize||n.push(a)}return h&&Se(n,t,e,s)||c}function ei(i,t,e,s,n){i.top=e,i.left=t,i.right=t+s,i.bottom=e+n,i.width=s,i.height=n}function wn(i,t,e,s){const n=e.padding;let{x:r,y:o}=t;for(const a of i){const l=a.box,h=s[a.stack]||{placed:0,weight:1},c=a.stackWeight/h.weight||1;if(a.horizontal){const u=t.w*c,d=h.size||l.height;Ee(h.start)&&(o=h.start),l.fullSize?ei(l,n.left,o,e.outerWidth-n.right-n.left,d):ei(l,t.left+h.placed,o,u,d),h.start=o,h.placed+=u,o=l.bottom}else{const u=t.h*c,d=h.size||l.width;Ee(h.start)&&(r=h.start),l.fullSize?ei(l,r,n.top,d,e.outerHeight-n.bottom-n.top):ei(l,r,t.top+h.placed,d,u),h.start=r,h.placed+=u,r=l.right}}t.x=r,t.y=o}var mt={addBox(i,t){i.boxes||(i.boxes=[]),t.fullSize=t.fullSize||!1,t.position=t.position||"top",t.weight=t.weight||0,t._layers=t._layers||function(){return[{z:0,draw(e){t.draw(e)}}]},i.boxes.push(t)},removeBox(i,t){const e=i.boxes?i.boxes.indexOf(t):-1;e!==-1&&i.boxes.splice(e,1)},configure(i,t,e){t.fullSize=e.fullSize,t.position=e.position,t.weight=e.weight},update(i,t,e,s){if(!i)return;const n=yt(i.options.layout.padding),r=Math.max(t-n.width,0),o=Math.max(e-n.height,0),a=Ih(i.boxes),l=a.vertical,h=a.horizontal;Y(i.boxes,p=>{typeof p.beforeLayout=="function"&&p.beforeLayout()});const c=l.reduce((p,x)=>x.box.options&&x.box.options.display===!1?p:p+1,0)||1,u=Object.freeze({outerWidth:t,outerHeight:e,padding:n,availableWidth:r,availableHeight:o,vBoxMaxWidth:r/2/c,hBoxMaxHeight:o/2}),d=Object.assign({},n);Rr(d,yt(s));const b=Object.assign({maxPadding:d,w:r,h:o,x:n.left,y:n.top},n),g=Nh(l.concat(h),u);Se(a.fullSize,b,u,g),Se(l,b,u,g),Se(h,b,u,g)&&Se(l,b,u,g),zh(b),wn(a.leftAndTop,b,u,g),b.x+=b.w,b.y+=b.h,wn(a.rightAndBottom,b,u,g),i.chartArea={left:b.left,top:b.top,right:b.left+b.w,bottom:b.top+b.h,height:b.h,width:b.w},Y(a.chartArea,p=>{const x=p.box;Object.assign(x,i.chartArea),x.update(b.w,b.h,{left:0,top:0,right:0,bottom:0})})}};class Ar{acquireContext(t,e){}releaseContext(t){return!1}addEventListener(t,e,s){}removeEventListener(t,e,s){}getDevicePixelRatio(){return 1}getMaximumSize(t,e,s,n){return e=Math.max(0,e||t.width),s=s||t.height,{width:e,height:Math.max(0,n?Math.floor(e/n):s)}}isAttached(t){return!0}updateConfig(t){}}class Hh extends Ar{acquireContext(t){return t&&t.getContext&&t.getContext("2d")||null}updateConfig(t){t.options.animation=!1}}const hi="$chartjs",Wh={touchstart:"mousedown",touchmove:"mousemove",touchend:"mouseup",pointerenter:"mouseenter",pointerdown:"mousedown",pointermove:"mousemove",pointerup:"mouseup",pointerleave:"mouseout",pointerout:"mouseout"},Sn=i=>i===null||i==="";function Vh(i,t){const e=i.style,s=i.getAttribute("height"),n=i.getAttribute("width");if(i[hi]={initial:{height:s,width:n,style:{display:e.display,height:e.height,width:e.width}}},e.display=e.display||"block",e.boxSizing=e.boxSizing||"border-box",Sn(n)){const r=an(i,"width");r!==void 0&&(i.width=r)}if(Sn(s))if(i.style.height==="")i.height=i.width/(t||2);else{const r=an(i,"height");r!==void 0&&(i.height=r)}return i}const Dr=Wl?{passive:!0}:!1;function $h(i,t,e){i&&i.addEventListener(t,e,Dr)}function Yh(i,t,e){i&&i.canvas&&i.canvas.removeEventListener(t,e,Dr)}function Uh(i,t){const e=Wh[i.type]||i.type,{x:s,y:n}=Kt(i,t);return{type:e,chart:t,native:i,x:s!==void 0?s:null,y:n!==void 0?n:null}}function xi(i,t){for(const e of i)if(e===t||e.contains(t))return!0}function Xh(i,t,e){const s=i.canvas,n=new MutationObserver(r=>{let o=!1;for(const a of r)o=o||xi(a.addedNodes,s),o=o&&!xi(a.removedNodes,s);o&&e()});return n.observe(document,{childList:!0,subtree:!0}),n}function qh(i,t,e){const s=i.canvas,n=new MutationObserver(r=>{let o=!1;for(const a of r)o=o||xi(a.removedNodes,s),o=o&&!xi(a.addedNodes,s);o&&e()});return n.observe(document,{childList:!0,subtree:!0}),n}const ze=new Map;let Mn=0;function Tr(){const i=window.devicePixelRatio;i!==Mn&&(Mn=i,ze.forEach((t,e)=>{e.currentDevicePixelRatio!==i&&t()}))}function Kh(i,t){ze.size||window.addEventListener("resize",Tr),ze.set(i,t)}function Gh(i){ze.delete(i),ze.size||window.removeEventListener("resize",Tr)}function Zh(i,t,e){const s=i.canvas,n=s&&gs(s);if(!n)return;const r=fr((a,l)=>{const h=n.clientWidth;e(a,l),h<n.clientWidth&&e()},window),o=new ResizeObserver(a=>{const l=a[0],h=l.contentRect.width,c=l.contentRect.height;h===0&&c===0||r(h,c)});return o.observe(n),Kh(i,r),o}function Wi(i,t,e){e&&e.disconnect(),t==="resize"&&Gh(i)}function Jh(i,t,e){const s=i.canvas,n=fr(r=>{i.ctx!==null&&e(Uh(r,i))},i);return $h(s,t,n),n}class Qh extends Ar{acquireContext(t,e){const s=t&&t.getContext&&t.getContext("2d");return s&&s.canvas===t?(Vh(t,e),s):null}releaseContext(t){const e=t.canvas;if(!e[hi])return!1;const s=e[hi].initial;["height","width"].forEach(r=>{const o=s[r];$(o)?e.removeAttribute(r):e.setAttribute(r,o)});const n=s.style||{};return Object.keys(n).forEach(r=>{e.style[r]=n[r]}),e.width=e.width,delete e[hi],!0}addEventListener(t,e,s){this.removeEventListener(t,e);const n=t.$proxies||(t.$proxies={}),o={attach:Xh,detach:qh,resize:Zh}[e]||Jh;n[e]=o(t,e,s)}removeEventListener(t,e){const s=t.$proxies||(t.$proxies={}),n=s[e];if(!n)return;({attach:Wi,detach:Wi,resize:Wi}[e]||Yh)(t,e,n),s[e]=void 0}getDevicePixelRatio(){return window.devicePixelRatio}getMaximumSize(t,e,s,n){return Hl(t,e,s,n)}isAttached(t){const e=t&&gs(t);return!!(e&&e.isConnected)}}function tc(i){return!fs()||typeof OffscreenCanvas<"u"&&i instanceof OffscreenCanvas?Hh:Qh}class kt{constructor(){j(this,"x");j(this,"y");j(this,"active",!1);j(this,"options");j(this,"$animations")}tooltipPosition(t){const{x:e,y:s}=this.getProps(["x","y"],t);return{x:e,y:s}}hasValue(){return Le(this.x)&&Le(this.y)}getProps(t,e){const s=this.$animations;if(!e||!s)return this;const n={};return t.forEach(r=>{n[r]=s[r]&&s[r].active()?s[r]._to:this[r]}),n}}j(kt,"defaults",{}),j(kt,"defaultRoutes");function ec(i,t){const e=i.options.ticks,s=ic(i),n=Math.min(e.maxTicksLimit||s,s),r=e.major.enabled?nc(t):[],o=r.length,a=r[0],l=r[o-1],h=[];if(o>n)return rc(t,h,r,o/n),h;const c=sc(r,t,n);if(o>0){let u,d;const b=o>1?Math.round((l-a)/(o-1)):null;for(ii(t,h,c,$(b)?0:a-b,a),u=0,d=o-1;u<d;u++)ii(t,h,c,r[u],r[u+1]);return ii(t,h,c,l,$(b)?t.length:l+b),h}return ii(t,h,c),h}function ic(i){const t=i.options.offset,e=i._tickSize(),s=i._length/e+(t?0:1),n=i._maxLength/e;return Math.floor(Math.min(s,n))}function sc(i,t,e){const s=oc(i),n=t.length/e;if(!s)return Math.max(n,1);const r=Ba(s);for(let o=0,a=r.length-1;o<a;o++){const l=r[o];if(l>n)return l}return Math.max(n,1)}function nc(i){const t=[];let e,s;for(e=0,s=i.length;e<s;e++)i[e].major&&t.push(e);return t}function rc(i,t,e,s){let n=0,r=e[0],o;for(s=Math.ceil(s),o=0;o<i.length;o++)o===r&&(t.push(i[o]),n++,r=e[n*s])}function ii(i,t,e,s,n){const r=N(s,0),o=Math.min(N(n,i.length),i.length);let a=0,l,h,c;for(e=Math.ceil(e),n&&(l=n-s,e=l/Math.floor(l/e)),c=r;c<0;)a++,c=Math.round(r+a*e);for(h=Math.max(r,0);h<o;h++)h===c&&(t.push(i[h]),a++,c=Math.round(r+a*e))}function oc(i){const t=i.length;let e,s;if(t<2)return!1;for(s=i[0],e=1;e<t;++e)if(i[e]-i[e-1]!==s)return!1;return s}const ac=i=>i==="left"?"right":i==="right"?"left":i,Cn=(i,t,e)=>t==="top"||t==="left"?i[t]+e:i[t]-e,Pn=(i,t)=>Math.min(t||i,i);function On(i,t){const e=[],s=i.length/t,n=i.length;let r=0;for(;r<n;r+=s)e.push(i[Math.floor(r)]);return e}function lc(i,t,e){const s=i.ticks.length,n=Math.min(t,s-1),r=i._startPixel,o=i._endPixel,a=1e-6;let l=i.getPixelForTick(n),h;if(!(e&&(s===1?h=Math.max(l-r,o-l):t===0?h=(i.getPixelForTick(1)-l)/2:h=(l-i.getPixelForTick(n-1))/2,l+=n<t?h:-h,l<r-a||l>o+a)))return l}function hc(i,t){Y(i,e=>{const s=e.gc,n=s.length/2;let r;if(n>t){for(r=0;r<n;++r)delete e.data[s[r]];s.splice(0,n)}})}function _e(i){return i.drawTicks?i.tickLength:0}function jn(i,t){if(!i.display)return 0;const e=ht(i.font,t),s=yt(i.padding);return(nt(i.text)?i.text.length:1)*e.lineHeight+s.height}function cc(i,t){return se(i,{scale:t,type:"scale"})}function uc(i,t,e){return se(i,{tick:e,index:t,type:"tick"})}function dc(i,t,e){let s=rs(i);return(e&&t!=="right"||!e&&t==="right")&&(s=ac(s)),s}function bc(i,t,e,s){const{top:n,left:r,bottom:o,right:a,chart:l}=i,{chartArea:h,scales:c}=l;let u=0,d,b,g;const p=o-n,x=a-r;if(i.isHorizontal()){if(b=at(s,r,a),W(e)){const y=Object.keys(e)[0],_=e[y];g=c[y].getPixelForValue(_)+p-t}else e==="center"?g=(h.bottom+h.top)/2+p-t:g=Cn(i,e,t);d=a-r}else{if(W(e)){const y=Object.keys(e)[0],_=e[y];b=c[y].getPixelForValue(_)-x+t}else e==="center"?b=(h.left+h.right)/2-x+t:b=Cn(i,e,t);g=at(s,o,n),u=e==="left"?-rt:rt}return{titleX:b,titleY:g,maxWidth:d,rotation:u}}class de extends kt{constructor(t){super(),this.id=t.id,this.type=t.type,this.options=void 0,this.ctx=t.ctx,this.chart=t.chart,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.width=void 0,this.height=void 0,this._margins={left:0,right:0,top:0,bottom:0},this.maxWidth=void 0,this.maxHeight=void 0,this.paddingTop=void 0,this.paddingBottom=void 0,this.paddingLeft=void 0,this.paddingRight=void 0,this.axis=void 0,this.labelRotation=void 0,this.min=void 0,this.max=void 0,this._range=void 0,this.ticks=[],this._gridLineItems=null,this._labelItems=null,this._labelSizes=null,this._length=0,this._maxLength=0,this._longestTextCache={},this._startPixel=void 0,this._endPixel=void 0,this._reversePixels=!1,this._userMax=void 0,this._userMin=void 0,this._suggestedMax=void 0,this._suggestedMin=void 0,this._ticksLength=0,this._borderValue=0,this._cache={},this._dataLimitsCached=!1,this.$context=void 0}init(t){this.options=t.setContext(this.getContext()),this.axis=t.axis,this._userMin=this.parse(t.min),this._userMax=this.parse(t.max),this._suggestedMin=this.parse(t.suggestedMin),this._suggestedMax=this.parse(t.suggestedMax)}parse(t,e){return t}getUserBounds(){let{_userMin:t,_userMax:e,_suggestedMin:s,_suggestedMax:n}=this;return t=wt(t,Number.POSITIVE_INFINITY),e=wt(e,Number.NEGATIVE_INFINITY),s=wt(s,Number.POSITIVE_INFINITY),n=wt(n,Number.NEGATIVE_INFINITY),{min:wt(t,s),max:wt(e,n),minDefined:xt(t),maxDefined:xt(e)}}getMinMax(t){let{min:e,max:s,minDefined:n,maxDefined:r}=this.getUserBounds(),o;if(n&&r)return{min:e,max:s};const a=this.getMatchingVisibleMetas();for(let l=0,h=a.length;l<h;++l)o=a[l].controller.getMinMax(this,t),n||(e=Math.min(e,o.min)),r||(s=Math.max(s,o.max));return e=r&&e>s?s:e,s=n&&e>s?e:s,{min:wt(e,wt(s,e)),max:wt(s,wt(e,s))}}getPadding(){return{left:this.paddingLeft||0,top:this.paddingTop||0,right:this.paddingRight||0,bottom:this.paddingBottom||0}}getTicks(){return this.ticks}getLabels(){const t=this.chart.data;return this.options.labels||(this.isHorizontal()?t.xLabels:t.yLabels)||t.labels||[]}getLabelItems(t=this.chart.chartArea){return this._labelItems||(this._labelItems=this._computeLabelItems(t))}beforeLayout(){this._cache={},this._dataLimitsCached=!1}beforeUpdate(){G(this.options.beforeUpdate,[this])}update(t,e,s){const{beginAtZero:n,grace:r,ticks:o}=this.options,a=o.sampleSize;this.beforeUpdate(),this.maxWidth=t,this.maxHeight=e,this._margins=s=Object.assign({left:0,right:0,top:0,bottom:0},s),this.ticks=null,this._labelSizes=null,this._gridLineItems=null,this._labelItems=null,this.beforeSetDimensions(),this.setDimensions(),this.afterSetDimensions(),this._maxLength=this.isHorizontal()?this.width+s.left+s.right:this.height+s.top+s.bottom,this._dataLimitsCached||(this.beforeDataLimits(),this.determineDataLimits(),this.afterDataLimits(),this._range=yl(this,r,n),this._dataLimitsCached=!0),this.beforeBuildTicks(),this.ticks=this.buildTicks()||[],this.afterBuildTicks();const l=a<this.ticks.length;this._convertTicksToLabels(l?On(this.ticks,a):this.ticks),this.configure(),this.beforeCalculateLabelRotation(),this.calculateLabelRotation(),this.afterCalculateLabelRotation(),o.display&&(o.autoSkip||o.source==="auto")&&(this.ticks=ec(this,this.ticks),this._labelSizes=null,this.afterAutoSkip()),l&&this._convertTicksToLabels(this.ticks),this.beforeFit(),this.fit(),this.afterFit(),this.afterUpdate()}configure(){let t=this.options.reverse,e,s;this.isHorizontal()?(e=this.left,s=this.right):(e=this.top,s=this.bottom,t=!t),this._startPixel=e,this._endPixel=s,this._reversePixels=t,this._length=s-e,this._alignToPixels=this.options.alignToPixels}afterUpdate(){G(this.options.afterUpdate,[this])}beforeSetDimensions(){G(this.options.beforeSetDimensions,[this])}setDimensions(){this.isHorizontal()?(this.width=this.maxWidth,this.left=0,this.right=this.width):(this.height=this.maxHeight,this.top=0,this.bottom=this.height),this.paddingLeft=0,this.paddingTop=0,this.paddingRight=0,this.paddingBottom=0}afterSetDimensions(){G(this.options.afterSetDimensions,[this])}_callHooks(t){this.chart.notifyPlugins(t,this.getContext()),G(this.options[t],[this])}beforeDataLimits(){this._callHooks("beforeDataLimits")}determineDataLimits(){}afterDataLimits(){this._callHooks("afterDataLimits")}beforeBuildTicks(){this._callHooks("beforeBuildTicks")}buildTicks(){return[]}afterBuildTicks(){this._callHooks("afterBuildTicks")}beforeTickToLabelConversion(){G(this.options.beforeTickToLabelConversion,[this])}generateTickLabels(t){const e=this.options.ticks;let s,n,r;for(s=0,n=t.length;s<n;s++)r=t[s],r.label=G(e.callback,[r.value,s,t],this)}afterTickToLabelConversion(){G(this.options.afterTickToLabelConversion,[this])}beforeCalculateLabelRotation(){G(this.options.beforeCalculateLabelRotation,[this])}calculateLabelRotation(){const t=this.options,e=t.ticks,s=Pn(this.ticks.length,t.ticks.maxTicksLimit),n=e.minRotation||0,r=e.maxRotation;let o=n,a,l,h;if(!this._isVisible()||!e.display||n>=r||s<=1||!this.isHorizontal()){this.labelRotation=n;return}const c=this._getLabelSizes(),u=c.widest.width,d=c.highest.height,b=lt(this.chart.width-u,0,this.maxWidth);a=t.offset?this.maxWidth/s:b/(s-1),u+6>a&&(a=b/(s-(t.offset?.5:1)),l=this.maxHeight-_e(t.grid)-e.padding-jn(t.title,this.chart.options.font),h=Math.sqrt(u*u+d*d),o=$a(Math.min(Math.asin(lt((c.highest.height+6)/a,-1,1)),Math.asin(lt(l/h,-1,1))-Math.asin(lt(d/h,-1,1)))),o=Math.max(n,Math.min(r,o))),this.labelRotation=o}afterCalculateLabelRotation(){G(this.options.afterCalculateLabelRotation,[this])}afterAutoSkip(){}beforeFit(){G(this.options.beforeFit,[this])}fit(){const t={width:0,height:0},{chart:e,options:{ticks:s,title:n,grid:r}}=this,o=this._isVisible(),a=this.isHorizontal();if(o){const l=jn(n,e.options.font);if(a?(t.width=this.maxWidth,t.height=_e(r)+l):(t.height=this.maxHeight,t.width=_e(r)+l),s.display&&this.ticks.length){const{first:h,last:c,widest:u,highest:d}=this._getLabelSizes(),b=s.padding*2,g=Et(this.labelRotation),p=Math.cos(g),x=Math.sin(g);if(a){const y=s.mirror?0:x*u.width+p*d.height;t.height=Math.min(this.maxHeight,t.height+y+b)}else{const y=s.mirror?0:p*u.width+x*d.height;t.width=Math.min(this.maxWidth,t.width+y+b)}this._calculatePadding(h,c,x,p)}}this._handleMargins(),a?(this.width=this._length=e.width-this._margins.left-this._margins.right,this.height=t.height):(this.width=t.width,this.height=this._length=e.height-this._margins.top-this._margins.bottom)}_calculatePadding(t,e,s,n){const{ticks:{align:r,padding:o},position:a}=this.options,l=this.labelRotation!==0,h=a!=="top"&&this.axis==="x";if(this.isHorizontal()){const c=this.getPixelForTick(0)-this.left,u=this.right-this.getPixelForTick(this.ticks.length-1);let d=0,b=0;l?h?(d=n*t.width,b=s*e.height):(d=s*t.height,b=n*e.width):r==="start"?b=e.width:r==="end"?d=t.width:r!=="inner"&&(d=t.width/2,b=e.width/2),this.paddingLeft=Math.max((d-c+o)*this.width/(this.width-c),0),this.paddingRight=Math.max((b-u+o)*this.width/(this.width-u),0)}else{let c=e.height/2,u=t.height/2;r==="start"?(c=0,u=t.height):r==="end"&&(c=e.height,u=0),this.paddingTop=c+o,this.paddingBottom=u+o}}_handleMargins(){this._margins&&(this._margins.left=Math.max(this.paddingLeft,this._margins.left),this._margins.top=Math.max(this.paddingTop,this._margins.top),this._margins.right=Math.max(this.paddingRight,this._margins.right),this._margins.bottom=Math.max(this.paddingBottom,this._margins.bottom))}afterFit(){G(this.options.afterFit,[this])}isHorizontal(){const{axis:t,position:e}=this.options;return e==="top"||e==="bottom"||t==="x"}isFullSize(){return this.options.fullSize}_convertTicksToLabels(t){this.beforeTickToLabelConversion(),this.generateTickLabels(t);let e,s;for(e=0,s=t.length;e<s;e++)$(t[e].label)&&(t.splice(e,1),s--,e--);this.afterTickToLabelConversion()}_getLabelSizes(){let t=this._labelSizes;if(!t){const e=this.options.ticks.sampleSize;let s=this.ticks;e<s.length&&(s=On(s,e)),this._labelSizes=t=this._computeLabelSizes(s,s.length,this.options.ticks.maxTicksLimit)}return t}_computeLabelSizes(t,e,s){const{ctx:n,_longestTextCache:r}=this,o=[],a=[],l=Math.floor(e/Pn(e,s));let h=0,c=0,u,d,b,g,p,x,y,_,w,M,v;for(u=0;u<e;u+=l){if(g=t[u].label,p=this._resolveTickFontOptions(u),n.font=x=p.string,y=r[x]=r[x]||{data:{},gc:[]},_=p.lineHeight,w=M=0,!$(g)&&!nt(g))w=en(n,y.data,y.gc,w,g),M=_;else if(nt(g))for(d=0,b=g.length;d<b;++d)v=g[d],!$(v)&&!nt(v)&&(w=en(n,y.data,y.gc,w,v),M+=_);o.push(w),a.push(M),h=Math.max(w,h),c=Math.max(M,c)}hc(r,e);const O=o.indexOf(h),S=a.indexOf(c),C=R=>({width:o[R]||0,height:a[R]||0});return{first:C(0),last:C(e-1),widest:C(O),highest:C(S),widths:o,heights:a}}getLabelForValue(t){return t}getPixelForValue(t,e){return NaN}getValueForPixel(t){}getPixelForTick(t){const e=this.ticks;return t<0||t>e.length-1?null:this.getPixelForValue(e[t].value)}getPixelForDecimal(t){this._reversePixels&&(t=1-t);const e=this._startPixel+t*this._length;return Ua(this._alignToPixels?Xt(this.chart,e,0):e)}getDecimalForPixel(t){const e=(t-this._startPixel)/this._length;return this._reversePixels?1-e:e}getBasePixel(){return this.getPixelForValue(this.getBaseValue())}getBaseValue(){const{min:t,max:e}=this;return t<0&&e<0?e:t>0&&e>0?t:0}getContext(t){const e=this.ticks||[];if(t>=0&&t<e.length){const s=e[t];return s.$context||(s.$context=uc(this.getContext(),t,s))}return this.$context||(this.$context=cc(this.chart.getContext(),this))}_tickSize(){const t=this.options.ticks,e=Et(this.labelRotation),s=Math.abs(Math.cos(e)),n=Math.abs(Math.sin(e)),r=this._getLabelSizes(),o=t.autoSkipPadding||0,a=r?r.widest.width+o:0,l=r?r.highest.height+o:0;return this.isHorizontal()?l*s>a*n?a/s:l/n:l*n<a*s?l/s:a/n}_isVisible(){const t=this.options.display;return t!=="auto"?!!t:this.getMatchingVisibleMetas().length>0}_computeGridLineItems(t){const e=this.axis,s=this.chart,n=this.options,{grid:r,position:o,border:a}=n,l=r.offset,h=this.isHorizontal(),u=this.ticks.length+(l?1:0),d=_e(r),b=[],g=a.setContext(this.getContext()),p=g.display?g.width:0,x=p/2,y=function(q){return Xt(s,q,p)};let _,w,M,v,O,S,C,R,T,E,L,H;if(o==="top")_=y(this.bottom),S=this.bottom-d,R=_-x,E=y(t.top)+x,H=t.bottom;else if(o==="bottom")_=y(this.top),E=t.top,H=y(t.bottom)-x,S=_+x,R=this.top+d;else if(o==="left")_=y(this.right),O=this.right-d,C=_-x,T=y(t.left)+x,L=t.right;else if(o==="right")_=y(this.left),T=t.left,L=y(t.right)-x,O=_+x,C=this.left+d;else if(e==="x"){if(o==="center")_=y((t.top+t.bottom)/2+.5);else if(W(o)){const q=Object.keys(o)[0],Z=o[q];_=y(this.chart.scales[q].getPixelForValue(Z))}E=t.top,H=t.bottom,S=_+x,R=S+d}else if(e==="y"){if(o==="center")_=y((t.left+t.right)/2);else if(W(o)){const q=Object.keys(o)[0],Z=o[q];_=y(this.chart.scales[q].getPixelForValue(Z))}O=_-x,C=O-d,T=t.left,L=t.right}const J=N(n.ticks.maxTicksLimit,u),z=Math.max(1,Math.ceil(u/J));for(w=0;w<u;w+=z){const q=this.getContext(w),Z=r.setContext(q),ut=a.setContext(q),st=Z.lineWidth,Pt=Z.color,Vt=ut.dash||[],Ot=ut.dashOffset,Nt=Z.tickWidth,jt=Z.tickColor,$t=Z.tickBorderDash||[],_t=Z.tickBorderDashOffset;M=lc(this,w,l),M!==void 0&&(v=Xt(s,M,st),h?O=C=T=L=v:S=R=E=H=v,b.push({tx1:O,ty1:S,tx2:C,ty2:R,x1:T,y1:E,x2:L,y2:H,width:st,color:Pt,borderDash:Vt,borderDashOffset:Ot,tickWidth:Nt,tickColor:jt,tickBorderDash:$t,tickBorderDashOffset:_t}))}return this._ticksLength=u,this._borderValue=_,b}_computeLabelItems(t){const e=this.axis,s=this.options,{position:n,ticks:r}=s,o=this.isHorizontal(),a=this.ticks,{align:l,crossAlign:h,padding:c,mirror:u}=r,d=_e(s.grid),b=d+c,g=u?-c:b,p=-Et(this.labelRotation),x=[];let y,_,w,M,v,O,S,C,R,T,E,L,H="middle";if(n==="top")O=this.bottom-g,S=this._getXAxisLabelAlignment();else if(n==="bottom")O=this.top+g,S=this._getXAxisLabelAlignment();else if(n==="left"){const z=this._getYAxisLabelAlignment(d);S=z.textAlign,v=z.x}else if(n==="right"){const z=this._getYAxisLabelAlignment(d);S=z.textAlign,v=z.x}else if(e==="x"){if(n==="center")O=(t.top+t.bottom)/2+b;else if(W(n)){const z=Object.keys(n)[0],q=n[z];O=this.chart.scales[z].getPixelForValue(q)+b}S=this._getXAxisLabelAlignment()}else if(e==="y"){if(n==="center")v=(t.left+t.right)/2-b;else if(W(n)){const z=Object.keys(n)[0],q=n[z];v=this.chart.scales[z].getPixelForValue(q)}S=this._getYAxisLabelAlignment(d).textAlign}e==="y"&&(l==="start"?H="top":l==="end"&&(H="bottom"));const J=this._getLabelSizes();for(y=0,_=a.length;y<_;++y){w=a[y],M=w.label;const z=r.setContext(this.getContext(y));C=this.getPixelForTick(y)+r.labelOffset,R=this._resolveTickFontOptions(y),T=R.lineHeight,E=nt(M)?M.length:1;const q=E/2,Z=z.color,ut=z.textStrokeColor,st=z.textStrokeWidth;let Pt=S;o?(v=C,S==="inner"&&(y===_-1?Pt=this.options.reverse?"left":"right":y===0?Pt=this.options.reverse?"right":"left":Pt="center"),n==="top"?h==="near"||p!==0?L=-E*T+T/2:h==="center"?L=-J.highest.height/2-q*T+T:L=-J.highest.height+T/2:h==="near"||p!==0?L=T/2:h==="center"?L=J.highest.height/2-q*T:L=J.highest.height-E*T,u&&(L*=-1),p!==0&&!z.showLabelBackdrop&&(v+=T/2*Math.sin(p))):(O=C,L=(1-E)*T/2);let Vt;if(z.showLabelBackdrop){const Ot=yt(z.backdropPadding),Nt=J.heights[y],jt=J.widths[y];let $t=L-Ot.top,_t=0-Ot.left;switch(H){case"middle":$t-=Nt/2;break;case"bottom":$t-=Nt;break}switch(S){case"center":_t-=jt/2;break;case"right":_t-=jt;break;case"inner":y===_-1?_t-=jt:y>0&&(_t-=jt/2);break}Vt={left:_t,top:$t,width:jt+Ot.width,height:Nt+Ot.height,color:z.backdropColor}}x.push({label:M,font:R,textOffset:L,options:{rotation:p,color:Z,strokeColor:ut,strokeWidth:st,textAlign:Pt,textBaseline:H,translation:[v,O],backdrop:Vt}})}return x}_getXAxisLabelAlignment(){const{position:t,ticks:e}=this.options;if(-Et(this.labelRotation))return t==="top"?"left":"right";let n="center";return e.align==="start"?n="left":e.align==="end"?n="right":e.align==="inner"&&(n="inner"),n}_getYAxisLabelAlignment(t){const{position:e,ticks:{crossAlign:s,mirror:n,padding:r}}=this.options,o=this._getLabelSizes(),a=t+r,l=o.widest.width;let h,c;return e==="left"?n?(c=this.right+r,s==="near"?h="left":s==="center"?(h="center",c+=l/2):(h="right",c+=l)):(c=this.right-a,s==="near"?h="right":s==="center"?(h="center",c-=l/2):(h="left",c=this.left)):e==="right"?n?(c=this.left+r,s==="near"?h="right":s==="center"?(h="center",c-=l/2):(h="left",c-=l)):(c=this.left+a,s==="near"?h="left":s==="center"?(h="center",c+=l/2):(h="right",c=this.right)):h="right",{textAlign:h,x:c}}_computeLabelArea(){if(this.options.ticks.mirror)return;const t=this.chart,e=this.options.position;if(e==="left"||e==="right")return{top:0,left:this.left,bottom:t.height,right:this.right};if(e==="top"||e==="bottom")return{top:this.top,left:0,bottom:this.bottom,right:t.width}}drawBackground(){const{ctx:t,options:{backgroundColor:e},left:s,top:n,width:r,height:o}=this;e&&(t.save(),t.fillStyle=e,t.fillRect(s,n,r,o),t.restore())}getLineWidthForValue(t){const e=this.options.grid;if(!this._isVisible()||!e.display)return 0;const n=this.ticks.findIndex(r=>r.value===t);return n>=0?e.setContext(this.getContext(n)).lineWidth:0}drawGrid(t){const e=this.options.grid,s=this.ctx,n=this._gridLineItems||(this._gridLineItems=this._computeGridLineItems(t));let r,o;const a=(l,h,c)=>{!c.width||!c.color||(s.save(),s.lineWidth=c.width,s.strokeStyle=c.color,s.setLineDash(c.borderDash||[]),s.lineDashOffset=c.borderDashOffset,s.beginPath(),s.moveTo(l.x,l.y),s.lineTo(h.x,h.y),s.stroke(),s.restore())};if(e.display)for(r=0,o=n.length;r<o;++r){const l=n[r];e.drawOnChartArea&&a({x:l.x1,y:l.y1},{x:l.x2,y:l.y2},l),e.drawTicks&&a({x:l.tx1,y:l.ty1},{x:l.tx2,y:l.ty2},{color:l.tickColor,width:l.tickWidth,borderDash:l.tickBorderDash,borderDashOffset:l.tickBorderDashOffset})}}drawBorder(){const{chart:t,ctx:e,options:{border:s,grid:n}}=this,r=s.setContext(this.getContext()),o=s.display?r.width:0;if(!o)return;const a=n.setContext(this.getContext(0)).lineWidth,l=this._borderValue;let h,c,u,d;this.isHorizontal()?(h=Xt(t,this.left,o)-o/2,c=Xt(t,this.right,a)+a/2,u=d=l):(u=Xt(t,this.top,o)-o/2,d=Xt(t,this.bottom,a)+a/2,h=c=l),e.save(),e.lineWidth=r.width,e.strokeStyle=r.color,e.beginPath(),e.moveTo(h,u),e.lineTo(c,d),e.stroke(),e.restore()}drawLabels(t){if(!this.options.ticks.display)return;const s=this.ctx,n=this._computeLabelArea();n&&ls(s,n);const r=this.getLabelItems(t);for(const o of r){const a=o.options,l=o.font,h=o.label,c=o.textOffset;Fe(s,h,0,c,l,a)}n&&hs(s)}drawTitle(){const{ctx:t,options:{position:e,title:s,reverse:n}}=this;if(!s.display)return;const r=ht(s.font),o=yt(s.padding),a=s.align;let l=r.lineHeight/2;e==="bottom"||e==="center"||W(e)?(l+=o.bottom,nt(s.text)&&(l+=r.lineHeight*(s.text.length-1))):l+=o.top;const{titleX:h,titleY:c,maxWidth:u,rotation:d}=bc(this,l,e,a);Fe(t,s.text,0,0,r,{color:s.color,maxWidth:u,rotation:d,textAlign:dc(a,e,n),textBaseline:"middle",translation:[h,c]})}draw(t){this._isVisible()&&(this.drawBackground(),this.drawGrid(t),this.drawBorder(),this.drawTitle(),this.drawLabels(t))}_layers(){const t=this.options,e=t.ticks&&t.ticks.z||0,s=N(t.grid&&t.grid.z,-1),n=N(t.border&&t.border.z,0);return!this._isVisible()||this.draw!==de.prototype.draw?[{z:e,draw:r=>{this.draw(r)}}]:[{z:s,draw:r=>{this.drawBackground(),this.drawGrid(r),this.drawTitle()}},{z:n,draw:()=>{this.drawBorder()}},{z:e,draw:r=>{this.drawLabels(r)}}]}getMatchingVisibleMetas(t){const e=this.chart.getSortedVisibleDatasetMetas(),s=this.axis+"AxisID",n=[];let r,o;for(r=0,o=e.length;r<o;++r){const a=e[r];a[s]===this.id&&(!t||a.type===t)&&n.push(a)}return n}_resolveTickFontOptions(t){const e=this.options.ticks.setContext(this.getContext(t));return ht(e.font)}_maxDigits(){const t=this._resolveTickFontOptions(0).lineHeight;return(this.isHorizontal()?this.width:this.height)/t}}class si{constructor(t,e,s){this.type=t,this.scope=e,this.override=s,this.items=Object.create(null)}isForType(t){return Object.prototype.isPrototypeOf.call(this.type.prototype,t.prototype)}register(t){const e=Object.getPrototypeOf(t);let s;pc(e)&&(s=this.register(e));const n=this.items,r=t.id,o=this.scope+"."+r;if(!r)throw new Error("class does not have id: "+t);return r in n||(n[r]=t,fc(t,o,s),this.override&&et.override(t.id,t.overrides)),o}get(t){return this.items[t]}unregister(t){const e=this.items,s=t.id,n=this.scope;s in e&&delete e[s],n&&s in et[n]&&(delete et[n][s],this.override&&delete ie[s])}}function fc(i,t,e){const s=Te(Object.create(null),[e?et.get(e):{},et.get(t),i.defaults]);et.set(t,s),i.defaultRoutes&&gc(t,i.defaultRoutes),i.descriptors&&et.describe(t,i.descriptors)}function gc(i,t){Object.keys(t).forEach(e=>{const s=e.split("."),n=s.pop(),r=[i].concat(s).join("."),o=t[e].split("."),a=o.pop(),l=o.join(".");et.route(r,n,l,a)})}function pc(i){return"id"in i&&"defaults"in i}class mc{constructor(){this.controllers=new si(te,"datasets",!0),this.elements=new si(kt,"elements"),this.plugins=new si(Object,"plugins"),this.scales=new si(de,"scales"),this._typedRegistries=[this.controllers,this.scales,this.elements]}add(...t){this._each("register",t)}remove(...t){this._each("unregister",t)}addControllers(...t){this._each("register",t,this.controllers)}addElements(...t){this._each("register",t,this.elements)}addPlugins(...t){this._each("register",t,this.plugins)}addScales(...t){this._each("register",t,this.scales)}getController(t){return this._get(t,this.controllers,"controller")}getElement(t){return this._get(t,this.elements,"element")}getPlugin(t){return this._get(t,this.plugins,"plugin")}getScale(t){return this._get(t,this.scales,"scale")}removeControllers(...t){this._each("unregister",t,this.controllers)}removeElements(...t){this._each("unregister",t,this.elements)}removePlugins(...t){this._each("unregister",t,this.plugins)}removeScales(...t){this._each("unregister",t,this.scales)}_each(t,e,s){[...e].forEach(n=>{const r=s||this._getRegistryForType(n);s||r.isForType(n)||r===this.plugins&&n.id?this._exec(t,r,n):Y(n,o=>{const a=s||this._getRegistryForType(o);this._exec(t,a,o)})})}_exec(t,e,s){const n=ss(t);G(s["before"+n],[],s),e[t](s),G(s["after"+n],[],s)}_getRegistryForType(t){for(let e=0;e<this._typedRegistries.length;e++){const s=this._typedRegistries[e];if(s.isForType(t))return s}return this.plugins}_get(t,e,s){const n=e.get(t);if(n===void 0)throw new Error('"'+t+'" is not a registered '+s+".");return n}}var Mt=new mc;class xc{constructor(){this._init=[]}notify(t,e,s,n){e==="beforeInit"&&(this._init=this._createDescriptors(t,!0),this._notify(this._init,t,"install"));const r=n?this._descriptors(t).filter(n):this._descriptors(t),o=this._notify(r,t,e,s);return e==="afterDestroy"&&(this._notify(r,t,"stop"),this._notify(this._init,t,"uninstall")),o}_notify(t,e,s,n){n=n||{};for(const r of t){const o=r.plugin,a=o[s],l=[e,n,r.options];if(G(a,l,o)===!1&&n.cancelable)return!1}return!0}invalidate(){$(this._cache)||(this._oldCache=this._cache,this._cache=void 0)}_descriptors(t){if(this._cache)return this._cache;const e=this._cache=this._createDescriptors(t);return this._notifyStateChanges(t),e}_createDescriptors(t,e){const s=t&&t.config,n=N(s.options&&s.options.plugins,{}),r=yc(s);return n===!1&&!e?[]:vc(t,r,n,e)}_notifyStateChanges(t){const e=this._oldCache||[],s=this._cache,n=(r,o)=>r.filter(a=>!o.some(l=>a.plugin.id===l.plugin.id));this._notify(n(e,s),t,"stop"),this._notify(n(s,e),t,"start")}}function yc(i){const t={},e=[],s=Object.keys(Mt.plugins.items);for(let r=0;r<s.length;r++)e.push(Mt.getPlugin(s[r]));const n=i.plugins||[];for(let r=0;r<n.length;r++){const o=n[r];e.indexOf(o)===-1&&(e.push(o),t[o.id]=!0)}return{plugins:e,localIds:t}}function _c(i,t){return!t&&i===!1?null:i===!0?{}:i}function vc(i,{plugins:t,localIds:e},s,n){const r=[],o=i.getContext();for(const a of t){const l=a.id,h=_c(s[l],n);h!==null&&r.push({plugin:a,options:kc(i.config,{plugin:a,local:e[l]},h,o)})}return r}function kc(i,{plugin:t,local:e},s,n){const r=i.pluginScopeKeys(t),o=i.getOptionScopes(s,r);return e&&t.defaults&&o.push(t.defaults),i.createResolver(o,n,[""],{scriptable:!1,indexable:!1,allKeys:!0})}function Ki(i,t){const e=et.datasets[i]||{};return((t.datasets||{})[i]||{}).indexAxis||t.indexAxis||e.indexAxis||"x"}function wc(i,t){let e=i;return i==="_index_"?e=t:i==="_value_"&&(e=t==="x"?"y":"x"),e}function Sc(i,t){return i===t?"_index_":"_value_"}function Rn(i){if(i==="x"||i==="y"||i==="r")return i}function Mc(i){if(i==="top"||i==="bottom")return"x";if(i==="left"||i==="right")return"y"}function Gi(i,...t){if(Rn(i))return i;for(const e of t){const s=e.axis||Mc(e.position)||i.length>1&&Rn(i[0].toLowerCase());if(s)return s}throw new Error(`Cannot determine type of '${i}' axis. Please provide 'axis' or 'position' option.`)}function An(i,t,e){if(e[t+"AxisID"]===i)return{axis:t}}function Cc(i,t){if(t.data&&t.data.datasets){const e=t.data.datasets.filter(s=>s.xAxisID===i||s.yAxisID===i);if(e.length)return An(i,"x",e[0])||An(i,"y",e[0])}return{}}function Pc(i,t){const e=ie[i.type]||{scales:{}},s=t.scales||{},n=Ki(i.type,t),r=Object.create(null);return Object.keys(s).forEach(o=>{const a=s[o];if(!W(a))return console.error(`Invalid scale configuration for scale: ${o}`);if(a._proxy)return console.warn(`Ignoring resolver passed as options for scale: ${o}`);const l=Gi(o,a,Cc(o,i),et.scales[a.type]),h=Sc(l,n),c=e.scales||{};r[o]=Oe(Object.create(null),[{axis:l},a,c[l],c[h]])}),i.data.datasets.forEach(o=>{const a=o.type||i.type,l=o.indexAxis||Ki(a,t),c=(ie[a]||{}).scales||{};Object.keys(c).forEach(u=>{const d=wc(u,l),b=o[d+"AxisID"]||d;r[b]=r[b]||Object.create(null),Oe(r[b],[{axis:d},s[b],c[u]])})}),Object.keys(r).forEach(o=>{const a=r[o];Oe(a,[et.scales[a.type],et.scale])}),r}function Er(i){const t=i.options||(i.options={});t.plugins=N(t.plugins,{}),t.scales=Pc(i,t)}function Lr(i){return i=i||{},i.datasets=i.datasets||[],i.labels=i.labels||[],i}function Oc(i){return i=i||{},i.data=Lr(i.data),Er(i),i}const Dn=new Map,Nr=new Set;function ni(i,t){let e=Dn.get(i);return e||(e=t(),Dn.set(i,e),Nr.add(e)),e}const ve=(i,t,e)=>{const s=ee(t,e);s!==void 0&&i.add(s)};class jc{constructor(t){this._config=Oc(t),this._scopeCache=new Map,this._resolverCache=new Map}get platform(){return this._config.platform}get type(){return this._config.type}set type(t){this._config.type=t}get data(){return this._config.data}set data(t){this._config.data=Lr(t)}get options(){return this._config.options}set options(t){this._config.options=t}get plugins(){return this._config.plugins}update(){const t=this._config;this.clearCache(),Er(t)}clearCache(){this._scopeCache.clear(),this._resolverCache.clear()}datasetScopeKeys(t){return ni(t,()=>[[`datasets.${t}`,""]])}datasetAnimationScopeKeys(t,e){return ni(`${t}.transition.${e}`,()=>[[`datasets.${t}.transitions.${e}`,`transitions.${e}`],[`datasets.${t}`,""]])}datasetElementScopeKeys(t,e){return ni(`${t}-${e}`,()=>[[`datasets.${t}.elements.${e}`,`datasets.${t}`,`elements.${e}`,""]])}pluginScopeKeys(t){const e=t.id,s=this.type;return ni(`${s}-plugin-${e}`,()=>[[`plugins.${e}`,...t.additionalOptionScopes||[]]])}_cachedScopes(t,e){const s=this._scopeCache;let n=s.get(t);return(!n||e)&&(n=new Map,s.set(t,n)),n}getOptionScopes(t,e,s){const{options:n,type:r}=this,o=this._cachedScopes(t,s),a=o.get(e);if(a)return a;const l=new Set;e.forEach(c=>{t&&(l.add(t),c.forEach(u=>ve(l,t,u))),c.forEach(u=>ve(l,n,u)),c.forEach(u=>ve(l,ie[r]||{},u)),c.forEach(u=>ve(l,et,u)),c.forEach(u=>ve(l,Xi,u))});const h=Array.from(l);return h.length===0&&h.push(Object.create(null)),Nr.has(e)&&o.set(e,h),h}chartOptionScopes(){const{options:t,type:e}=this;return[t,ie[e]||{},et.datasets[e]||{},{type:e},et,Xi]}resolveNamedOptions(t,e,s,n=[""]){const r={$shared:!0},{resolver:o,subPrefixes:a}=Tn(this._resolverCache,t,n);let l=o;if(Ac(o,e)){r.$shared=!1,s=Wt(s)?s():s;const h=this.createResolver(t,s,a);l=ce(o,s,h)}for(const h of e)r[h]=l[h];return r}createResolver(t,e,s=[""],n){const{resolver:r}=Tn(this._resolverCache,t,s);return W(e)?ce(r,e,void 0,n):r}}function Tn(i,t,e){let s=i.get(t);s||(s=new Map,i.set(t,s));const n=e.join();let r=s.get(n);return r||(r={resolver:us(t,e),subPrefixes:e.filter(a=>!a.toLowerCase().includes("hover"))},s.set(n,r)),r}const Rc=i=>W(i)&&Object.getOwnPropertyNames(i).some(t=>Wt(i[t]));function Ac(i,t){const{isScriptable:e,isIndexable:s}=xr(i);for(const n of t){const r=e(n),o=s(n),a=(o||r)&&i[n];if(r&&(Wt(a)||Rc(a))||o&&nt(a))return!0}return!1}var Dc="4.5.0";const Tc=["top","bottom","left","right","chartArea"];function En(i,t){return i==="top"||i==="bottom"||Tc.indexOf(i)===-1&&t==="x"}function Ln(i,t){return function(e,s){return e[i]===s[i]?e[t]-s[t]:e[i]-s[i]}}function Nn(i){const t=i.chart,e=t.options.animation;t.notifyPlugins("afterRender"),G(e&&e.onComplete,[i],t)}function Ec(i){const t=i.chart,e=t.options.animation;G(e&&e.onProgress,[i],t)}function Ir(i){return fs()&&typeof i=="string"?i=document.getElementById(i):i&&i.length&&(i=i[0]),i&&i.canvas&&(i=i.canvas),i}const ci={},In=i=>{const t=Ir(i);return Object.values(ci).filter(e=>e.canvas===t).pop()};function Lc(i,t,e){const s=Object.keys(i);for(const n of s){const r=+n;if(r>=t){const o=i[n];delete i[n],(e>0||r>t)&&(i[r+e]=o)}}}function Nc(i,t,e,s){return!e||i.type==="mouseout"?null:s?t:i}var It;let be=(It=class{static register(...t){Mt.add(...t),Fn()}static unregister(...t){Mt.remove(...t),Fn()}constructor(t,e){const s=this.config=new jc(e),n=Ir(t),r=In(n);if(r)throw new Error("Canvas is already in use. Chart with ID '"+r.id+"' must be destroyed before the canvas with ID '"+r.canvas.id+"' can be reused.");const o=s.createResolver(s.chartOptionScopes(),this.getContext());this.platform=new(s.platform||tc(n)),this.platform.updateConfig(s);const a=this.platform.acquireContext(n,o.aspectRatio),l=a&&a.canvas,h=l&&l.height,c=l&&l.width;if(this.id=Aa(),this.ctx=a,this.canvas=l,this.width=c,this.height=h,this._options=o,this._aspectRatio=this.aspectRatio,this._layers=[],this._metasets=[],this._stacks=void 0,this.boxes=[],this.currentDevicePixelRatio=void 0,this.chartArea=void 0,this._active=[],this._lastEvent=void 0,this._listeners={},this._responsiveListeners=void 0,this._sortedMetasets=[],this.scales={},this._plugins=new xc,this.$proxies={},this._hiddenIndices={},this.attached=!1,this._animationsDisabled=void 0,this.$context=void 0,this._doResize=Ga(u=>this.update(u),o.resizeDelay||0),this._dataChanges=[],ci[this.id]=this,!a||!l){console.error("Failed to create chart: can't acquire context from the given item");return}At.listen(this,"complete",Nn),At.listen(this,"progress",Ec),this._initialize(),this.attached&&this.update()}get aspectRatio(){const{options:{aspectRatio:t,maintainAspectRatio:e},width:s,height:n,_aspectRatio:r}=this;return $(t)?e&&r?r:n?s/n:null:t}get data(){return this.config.data}set data(t){this.config.data=t}get options(){return this._options}set options(t){this.config.options=t}get registry(){return Mt}_initialize(){return this.notifyPlugins("beforeInit"),this.options.responsive?this.resize():on(this,this.options.devicePixelRatio),this.bindEvents(),this.notifyPlugins("afterInit"),this}clear(){return sn(this.canvas,this.ctx),this}stop(){return At.stop(this),this}resize(t,e){At.running(this)?this._resizeBeforeDraw={width:t,height:e}:this._resize(t,e)}_resize(t,e){const s=this.options,n=this.canvas,r=s.maintainAspectRatio&&this.aspectRatio,o=this.platform.getMaximumSize(n,t,e,r),a=s.devicePixelRatio||this.platform.getDevicePixelRatio(),l=this.width?"resize":"attach";this.width=o.width,this.height=o.height,this._aspectRatio=this.aspectRatio,on(this,a,!0)&&(this.notifyPlugins("resize",{size:o}),G(s.onResize,[this,o],this),this.attached&&this._doResize(l)&&this.render())}ensureScalesHaveIDs(){const e=this.options.scales||{};Y(e,(s,n)=>{s.id=n})}buildOrUpdateScales(){const t=this.options,e=t.scales,s=this.scales,n=Object.keys(s).reduce((o,a)=>(o[a]=!1,o),{});let r=[];e&&(r=r.concat(Object.keys(e).map(o=>{const a=e[o],l=Gi(o,a),h=l==="r",c=l==="x";return{options:a,dposition:h?"chartArea":c?"bottom":"left",dtype:h?"radialLinear":c?"category":"linear"}}))),Y(r,o=>{const a=o.options,l=a.id,h=Gi(l,a),c=N(a.type,o.dtype);(a.position===void 0||En(a.position,h)!==En(o.dposition))&&(a.position=o.dposition),n[l]=!0;let u=null;if(l in s&&s[l].type===c)u=s[l];else{const d=Mt.getScale(c);u=new d({id:l,type:c,ctx:this.ctx,chart:this}),s[u.id]=u}u.init(a,t)}),Y(n,(o,a)=>{o||delete s[a]}),Y(s,o=>{mt.configure(this,o,o.options),mt.addBox(this,o)})}_updateMetasets(){const t=this._metasets,e=this.data.datasets.length,s=t.length;if(t.sort((n,r)=>n.index-r.index),s>e){for(let n=e;n<s;++n)this._destroyDatasetMeta(n);t.splice(e,s-e)}this._sortedMetasets=t.slice(0).sort(Ln("order","index"))}_removeUnreferencedMetasets(){const{_metasets:t,data:{datasets:e}}=this;t.length>e.length&&delete this._stacks,t.forEach((s,n)=>{e.filter(r=>r===s._dataset).length===0&&this._destroyDatasetMeta(n)})}buildOrUpdateControllers(){const t=[],e=this.data.datasets;let s,n;for(this._removeUnreferencedMetasets(),s=0,n=e.length;s<n;s++){const r=e[s];let o=this.getDatasetMeta(s);const a=r.type||this.config.type;if(o.type&&o.type!==a&&(this._destroyDatasetMeta(s),o=this.getDatasetMeta(s)),o.type=a,o.indexAxis=r.indexAxis||Ki(a,this.options),o.order=r.order||0,o.index=s,o.label=""+r.label,o.visible=this.isDatasetVisible(s),o.controller)o.controller.updateIndex(s),o.controller.linkScales();else{const l=Mt.getController(a),{datasetElementType:h,dataElementType:c}=et.datasets[a];Object.assign(l,{dataElementType:Mt.getElement(c),datasetElementType:h&&Mt.getElement(h)}),o.controller=new l(this,s),t.push(o.controller)}}return this._updateMetasets(),t}_resetElements(){Y(this.data.datasets,(t,e)=>{this.getDatasetMeta(e).controller.reset()},this)}reset(){this._resetElements(),this.notifyPlugins("reset")}update(t){const e=this.config;e.update();const s=this._options=e.createResolver(e.chartOptionScopes(),this.getContext()),n=this._animationsDisabled=!s.animation;if(this._updateScales(),this._checkEventBindings(),this._updateHiddenIndices(),this._plugins.invalidate(),this.notifyPlugins("beforeUpdate",{mode:t,cancelable:!0})===!1)return;const r=this.buildOrUpdateControllers();this.notifyPlugins("beforeElementsUpdate");let o=0;for(let h=0,c=this.data.datasets.length;h<c;h++){const{controller:u}=this.getDatasetMeta(h),d=!n&&r.indexOf(u)===-1;u.buildOrUpdateElements(d),o=Math.max(+u.getMaxOverflow(),o)}o=this._minPadding=s.layout.autoPadding?o:0,this._updateLayout(o),n||Y(r,h=>{h.reset()}),this._updateDatasets(t),this.notifyPlugins("afterUpdate",{mode:t}),this._layers.sort(Ln("z","_idx"));const{_active:a,_lastEvent:l}=this;l?this._eventHandler(l,!0):a.length&&this._updateHoverStyles(a,a,!0),this.render()}_updateScales(){Y(this.scales,t=>{mt.removeBox(this,t)}),this.ensureScalesHaveIDs(),this.buildOrUpdateScales()}_checkEventBindings(){const t=this.options,e=new Set(Object.keys(this._listeners)),s=new Set(t.events);(!Us(e,s)||!!this._responsiveListeners!==t.responsive)&&(this.unbindEvents(),this.bindEvents())}_updateHiddenIndices(){const{_hiddenIndices:t}=this,e=this._getUniformDataChanges()||[];for(const{method:s,start:n,count:r}of e){const o=s==="_removeElements"?-r:r;Lc(t,n,o)}}_getUniformDataChanges(){const t=this._dataChanges;if(!t||!t.length)return;this._dataChanges=[];const e=this.data.datasets.length,s=r=>new Set(t.filter(o=>o[0]===r).map((o,a)=>a+","+o.splice(1).join(","))),n=s(0);for(let r=1;r<e;r++)if(!Us(n,s(r)))return;return Array.from(n).map(r=>r.split(",")).map(r=>({method:r[1],start:+r[2],count:+r[3]}))}_updateLayout(t){if(this.notifyPlugins("beforeLayout",{cancelable:!0})===!1)return;mt.update(this,this.width,this.height,t);const e=this.chartArea,s=e.width<=0||e.height<=0;this._layers=[],Y(this.boxes,n=>{s&&n.position==="chartArea"||(n.configure&&n.configure(),this._layers.push(...n._layers()))},this),this._layers.forEach((n,r)=>{n._idx=r}),this.notifyPlugins("afterLayout")}_updateDatasets(t){if(this.notifyPlugins("beforeDatasetsUpdate",{mode:t,cancelable:!0})!==!1){for(let e=0,s=this.data.datasets.length;e<s;++e)this.getDatasetMeta(e).controller.configure();for(let e=0,s=this.data.datasets.length;e<s;++e)this._updateDataset(e,Wt(t)?t({datasetIndex:e}):t);this.notifyPlugins("afterDatasetsUpdate",{mode:t})}}_updateDataset(t,e){const s=this.getDatasetMeta(t),n={meta:s,index:t,mode:e,cancelable:!0};this.notifyPlugins("beforeDatasetUpdate",n)!==!1&&(s.controller._update(e),n.cancelable=!1,this.notifyPlugins("afterDatasetUpdate",n))}render(){this.notifyPlugins("beforeRender",{cancelable:!0})!==!1&&(At.has(this)?this.attached&&!At.running(this)&&At.start(this):(this.draw(),Nn({chart:this})))}draw(){let t;if(this._resizeBeforeDraw){const{width:s,height:n}=this._resizeBeforeDraw;this._resizeBeforeDraw=null,this._resize(s,n)}if(this.clear(),this.width<=0||this.height<=0||this.notifyPlugins("beforeDraw",{cancelable:!0})===!1)return;const e=this._layers;for(t=0;t<e.length&&e[t].z<=0;++t)e[t].draw(this.chartArea);for(this._drawDatasets();t<e.length;++t)e[t].draw(this.chartArea);this.notifyPlugins("afterDraw")}_getSortedDatasetMetas(t){const e=this._sortedMetasets,s=[];let n,r;for(n=0,r=e.length;n<r;++n){const o=e[n];(!t||o.visible)&&s.push(o)}return s}getSortedVisibleDatasetMetas(){return this._getSortedDatasetMetas(!0)}_drawDatasets(){if(this.notifyPlugins("beforeDatasetsDraw",{cancelable:!0})===!1)return;const t=this.getSortedVisibleDatasetMetas();for(let e=t.length-1;e>=0;--e)this._drawDataset(t[e]);this.notifyPlugins("afterDatasetsDraw")}_drawDataset(t){const e=this.ctx,s={meta:t,index:t.index,cancelable:!0},n=ih(this,t);this.notifyPlugins("beforeDatasetDraw",s)!==!1&&(n&&ls(e,n),t.controller.draw(),n&&hs(e),s.cancelable=!1,this.notifyPlugins("afterDatasetDraw",s))}isPointInArea(t){return Ie(t,this.chartArea,this._minPadding)}getElementsAtEventForMode(t,e,s,n){const r=Th.modes[e];return typeof r=="function"?r(this,t,s,n):[]}getDatasetMeta(t){const e=this.data.datasets[t],s=this._metasets;let n=s.filter(r=>r&&r._dataset===e).pop();return n||(n={type:null,data:[],dataset:null,controller:null,hidden:null,xAxisID:null,yAxisID:null,order:e&&e.order||0,index:t,_dataset:e,_parsed:[],_sorted:!1},s.push(n)),n}getContext(){return this.$context||(this.$context=se(null,{chart:this,type:"chart"}))}getVisibleDatasetCount(){return this.getSortedVisibleDatasetMetas().length}isDatasetVisible(t){const e=this.data.datasets[t];if(!e)return!1;const s=this.getDatasetMeta(t);return typeof s.hidden=="boolean"?!s.hidden:!e.hidden}setDatasetVisibility(t,e){const s=this.getDatasetMeta(t);s.hidden=!e}toggleDataVisibility(t){this._hiddenIndices[t]=!this._hiddenIndices[t]}getDataVisibility(t){return!this._hiddenIndices[t]}_updateVisibility(t,e,s){const n=s?"show":"hide",r=this.getDatasetMeta(t),o=r.controller._resolveAnimations(void 0,n);Ee(e)?(r.data[e].hidden=!s,this.update()):(this.setDatasetVisibility(t,s),o.update(r,{visible:s}),this.update(a=>a.datasetIndex===t?n:void 0))}hide(t,e){this._updateVisibility(t,e,!1)}show(t,e){this._updateVisibility(t,e,!0)}_destroyDatasetMeta(t){const e=this._metasets[t];e&&e.controller&&e.controller._destroy(),delete this._metasets[t]}_stop(){let t,e;for(this.stop(),At.remove(this),t=0,e=this.data.datasets.length;t<e;++t)this._destroyDatasetMeta(t)}destroy(){this.notifyPlugins("beforeDestroy");const{canvas:t,ctx:e}=this;this._stop(),this.config.clearCache(),t&&(this.unbindEvents(),sn(t,e),this.platform.releaseContext(e),this.canvas=null,this.ctx=null),delete ci[this.id],this.notifyPlugins("afterDestroy")}toBase64Image(...t){return this.canvas.toDataURL(...t)}bindEvents(){this.bindUserEvents(),this.options.responsive?this.bindResponsiveEvents():this.attached=!0}bindUserEvents(){const t=this._listeners,e=this.platform,s=(r,o)=>{e.addEventListener(this,r,o),t[r]=o},n=(r,o,a)=>{r.offsetX=o,r.offsetY=a,this._eventHandler(r)};Y(this.options.events,r=>s(r,n))}bindResponsiveEvents(){this._responsiveListeners||(this._responsiveListeners={});const t=this._responsiveListeners,e=this.platform,s=(l,h)=>{e.addEventListener(this,l,h),t[l]=h},n=(l,h)=>{t[l]&&(e.removeEventListener(this,l,h),delete t[l])},r=(l,h)=>{this.canvas&&this.resize(l,h)};let o;const a=()=>{n("attach",a),this.attached=!0,this.resize(),s("resize",r),s("detach",o)};o=()=>{this.attached=!1,n("resize",r),this._stop(),this._resize(0,0),s("attach",a)},e.isAttached(this.canvas)?a():o()}unbindEvents(){Y(this._listeners,(t,e)=>{this.platform.removeEventListener(this,e,t)}),this._listeners={},Y(this._responsiveListeners,(t,e)=>{this.platform.removeEventListener(this,e,t)}),this._responsiveListeners=void 0}updateHoverStyle(t,e,s){const n=s?"set":"remove";let r,o,a,l;for(e==="dataset"&&(r=this.getDatasetMeta(t[0].datasetIndex),r.controller["_"+n+"DatasetHoverStyle"]()),a=0,l=t.length;a<l;++a){o=t[a];const h=o&&this.getDatasetMeta(o.datasetIndex).controller;h&&h[n+"HoverStyle"](o.element,o.datasetIndex,o.index)}}getActiveElements(){return this._active||[]}setActiveElements(t){const e=this._active||[],s=t.map(({datasetIndex:r,index:o})=>{const a=this.getDatasetMeta(r);if(!a)throw new Error("No dataset found at index "+r);return{datasetIndex:r,element:a.data[o],index:o}});!bi(s,e)&&(this._active=s,this._lastEvent=null,this._updateHoverStyles(s,e))}notifyPlugins(t,e,s){return this._plugins.notify(this,t,e,s)}isPluginEnabled(t){return this._plugins._cache.filter(e=>e.plugin.id===t).length===1}_updateHoverStyles(t,e,s){const n=this.options.hover,r=(l,h)=>l.filter(c=>!h.some(u=>c.datasetIndex===u.datasetIndex&&c.index===u.index)),o=r(e,t),a=s?t:r(t,e);o.length&&this.updateHoverStyle(o,n.mode,!1),a.length&&n.mode&&this.updateHoverStyle(a,n.mode,!0)}_eventHandler(t,e){const s={event:t,replay:e,cancelable:!0,inChartArea:this.isPointInArea(t)},n=o=>(o.options.events||this.options.events).includes(t.native.type);if(this.notifyPlugins("beforeEvent",s,n)===!1)return;const r=this._handleEvent(t,e,s.inChartArea);return s.cancelable=!1,this.notifyPlugins("afterEvent",s,n),(r||s.changed)&&this.render(),this}_handleEvent(t,e,s){const{_active:n=[],options:r}=this,o=e,a=this._getActiveElements(t,n,s,o),l=Ia(t),h=Nc(t,this._lastEvent,s,l);s&&(this._lastEvent=null,G(r.onHover,[t,a,this],this),l&&G(r.onClick,[t,a,this],this));const c=!bi(a,n);return(c||e)&&(this._active=a,this._updateHoverStyles(a,n,e)),this._lastEvent=h,c}_getActiveElements(t,e,s,n){if(t.type==="mouseout")return[];if(!s)return e;const r=this.options.hover;return this.getElementsAtEventForMode(t,r.mode,r,n)}},j(It,"defaults",et),j(It,"instances",ci),j(It,"overrides",ie),j(It,"registry",Mt),j(It,"version",Dc),j(It,"getChart",In),It);function Fn(){return Y(be.instances,i=>i._plugins.invalidate())}function Ic(i,t,e){const{startAngle:s,x:n,y:r,outerRadius:o,innerRadius:a,options:l}=t,{borderWidth:h,borderJoinStyle:c}=l,u=Math.min(h/o,vt(s-e));if(i.beginPath(),i.arc(n,r,o-h/2,s+u/2,e-u/2),a>0){const d=Math.min(h/a,vt(s-e));i.arc(n,r,a+h/2,e-d/2,s+d/2,!0)}else{const d=Math.min(h/2,o*vt(s-e));if(c==="round")i.arc(n,r,d,e-U/2,s+U/2,!0);else if(c==="bevel"){const b=2*d*d,g=-b*Math.cos(e+U/2)+n,p=-b*Math.sin(e+U/2)+r,x=b*Math.cos(s+U/2)+n,y=b*Math.sin(s+U/2)+r;i.lineTo(g,p),i.lineTo(x,y)}}i.closePath(),i.moveTo(0,0),i.rect(0,0,i.canvas.width,i.canvas.height),i.clip("evenodd")}function Fc(i,t,e){const{startAngle:s,pixelMargin:n,x:r,y:o,outerRadius:a,innerRadius:l}=t;let h=n/a;i.beginPath(),i.arc(r,o,a,s-h,e+h),l>n?(h=n/l,i.arc(r,o,l,e+h,s-h,!0)):i.arc(r,o,n,e+rt,s-rt),i.closePath(),i.clip()}function zc(i){return cs(i,["outerStart","outerEnd","innerStart","innerEnd"])}function Bc(i,t,e,s){const n=zc(i.options.borderRadius),r=(e-t)/2,o=Math.min(r,s*t/2),a=l=>{const h=(e-Math.min(r,l))*s/2;return lt(l,0,Math.min(r,h))};return{outerStart:a(n.outerStart),outerEnd:a(n.outerEnd),innerStart:lt(n.innerStart,0,o),innerEnd:lt(n.innerEnd,0,o)}}function ae(i,t,e,s){return{x:e+i*Math.cos(t),y:s+i*Math.sin(t)}}function yi(i,t,e,s,n,r){const{x:o,y:a,startAngle:l,pixelMargin:h,innerRadius:c}=t,u=Math.max(t.outerRadius+s+e-h,0),d=c>0?c+s+e+h:0;let b=0;const g=n-l;if(s){const z=c>0?c-s:0,q=u>0?u-s:0,Z=(z+q)/2,ut=Z!==0?g*Z/(Z+s):g;b=(g-ut)/2}const p=Math.max(.001,g*u-e/U)/u,x=(g-p)/2,y=l+x+b,_=n-x-b,{outerStart:w,outerEnd:M,innerStart:v,innerEnd:O}=Bc(t,d,u,_-y),S=u-w,C=u-M,R=y+w/S,T=_-M/C,E=d+v,L=d+O,H=y+v/E,J=_-O/L;if(i.beginPath(),r){const z=(R+T)/2;if(i.arc(o,a,u,R,z),i.arc(o,a,u,z,T),M>0){const st=ae(C,T,o,a);i.arc(st.x,st.y,M,T,_+rt)}const q=ae(L,_,o,a);if(i.lineTo(q.x,q.y),O>0){const st=ae(L,J,o,a);i.arc(st.x,st.y,O,_+rt,J+Math.PI)}const Z=(_-O/d+(y+v/d))/2;if(i.arc(o,a,d,_-O/d,Z,!0),i.arc(o,a,d,Z,y+v/d,!0),v>0){const st=ae(E,H,o,a);i.arc(st.x,st.y,v,H+Math.PI,y-rt)}const ut=ae(S,y,o,a);if(i.lineTo(ut.x,ut.y),w>0){const st=ae(S,R,o,a);i.arc(st.x,st.y,w,y-rt,R)}}else{i.moveTo(o,a);const z=Math.cos(R)*u+o,q=Math.sin(R)*u+a;i.lineTo(z,q);const Z=Math.cos(T)*u+o,ut=Math.sin(T)*u+a;i.lineTo(Z,ut)}i.closePath()}function Hc(i,t,e,s,n){const{fullCircles:r,startAngle:o,circumference:a}=t;let l=t.endAngle;if(r){yi(i,t,e,s,l,n);for(let h=0;h<r;++h)i.fill();isNaN(a)||(l=o+(a%Q||Q))}return yi(i,t,e,s,l,n),i.fill(),l}function Wc(i,t,e,s,n){const{fullCircles:r,startAngle:o,circumference:a,options:l}=t,{borderWidth:h,borderJoinStyle:c,borderDash:u,borderDashOffset:d,borderRadius:b}=l,g=l.borderAlign==="inner";if(!h)return;i.setLineDash(u||[]),i.lineDashOffset=d,g?(i.lineWidth=h*2,i.lineJoin=c||"round"):(i.lineWidth=h,i.lineJoin=c||"bevel");let p=t.endAngle;if(r){yi(i,t,e,s,p,n);for(let x=0;x<r;++x)i.stroke();isNaN(a)||(p=o+(a%Q||Q))}g&&Fc(i,t,p),l.selfJoin&&p-o>=U&&b===0&&c!=="miter"&&Ic(i,t,p),r||(yi(i,t,e,s,p,n),i.stroke())}class Me extends kt{constructor(e){super();j(this,"circumference");j(this,"endAngle");j(this,"fullCircles");j(this,"innerRadius");j(this,"outerRadius");j(this,"pixelMargin");j(this,"startAngle");this.options=void 0,this.circumference=void 0,this.startAngle=void 0,this.endAngle=void 0,this.innerRadius=void 0,this.outerRadius=void 0,this.pixelMargin=0,this.fullCircles=0,e&&Object.assign(this,e)}inRange(e,s,n){const r=this.getProps(["x","y"],n),{angle:o,distance:a}=cr(r,{x:e,y:s}),{startAngle:l,endAngle:h,innerRadius:c,outerRadius:u,circumference:d}=this.getProps(["startAngle","endAngle","innerRadius","outerRadius","circumference"],n),b=(this.options.spacing+this.options.borderWidth)/2,g=N(d,h-l),p=Ne(o,l,h)&&l!==h,x=g>=Q||p,y=zt(a,c+b,u+b);return x&&y}getCenterPoint(e){const{x:s,y:n,startAngle:r,endAngle:o,innerRadius:a,outerRadius:l}=this.getProps(["x","y","startAngle","endAngle","innerRadius","outerRadius"],e),{offset:h,spacing:c}=this.options,u=(r+o)/2,d=(a+l+c+h)/2;return{x:s+Math.cos(u)*d,y:n+Math.sin(u)*d}}tooltipPosition(e){return this.getCenterPoint(e)}draw(e){const{options:s,circumference:n}=this,r=(s.offset||0)/4,o=(s.spacing||0)/2,a=s.circular;if(this.pixelMargin=s.borderAlign==="inner"?.33:0,this.fullCircles=n>Q?Math.floor(n/Q):0,n===0||this.innerRadius<0||this.outerRadius<0)return;e.save();const l=(this.startAngle+this.endAngle)/2;e.translate(Math.cos(l)*r,Math.sin(l)*r);const h=1-Math.sin(Math.min(U,n||0)),c=r*h;e.fillStyle=s.backgroundColor,e.strokeStyle=s.borderColor,Hc(e,this,c,o,a),Wc(e,this,c,o,a),e.restore()}}j(Me,"id","arc"),j(Me,"defaults",{borderAlign:"center",borderColor:"#fff",borderDash:[],borderDashOffset:0,borderJoinStyle:void 0,borderRadius:0,borderWidth:2,offset:0,spacing:0,angle:void 0,circular:!0,selfJoin:!1}),j(Me,"defaultRoutes",{backgroundColor:"backgroundColor"}),j(Me,"descriptors",{_scriptable:!0,_indexable:e=>e!=="borderDash"});function Fr(i,t,e=t){i.lineCap=N(e.borderCapStyle,t.borderCapStyle),i.setLineDash(N(e.borderDash,t.borderDash)),i.lineDashOffset=N(e.borderDashOffset,t.borderDashOffset),i.lineJoin=N(e.borderJoinStyle,t.borderJoinStyle),i.lineWidth=N(e.borderWidth,t.borderWidth),i.strokeStyle=N(e.borderColor,t.borderColor)}function Vc(i,t,e){i.lineTo(e.x,e.y)}function $c(i){return i.stepped?cl:i.tension||i.cubicInterpolationMode==="monotone"?ul:Vc}function zr(i,t,e={}){const s=i.length,{start:n=0,end:r=s-1}=e,{start:o,end:a}=t,l=Math.max(n,o),h=Math.min(r,a),c=n<o&&r<o||n>a&&r>a;return{count:s,start:l,loop:t.loop,ilen:h<l&&!c?s+h-l:h-l}}function Yc(i,t,e,s){const{points:n,options:r}=t,{count:o,start:a,loop:l,ilen:h}=zr(n,e,s),c=$c(r);let{move:u=!0,reverse:d}=s||{},b,g,p;for(b=0;b<=h;++b)g=n[(a+(d?h-b:b))%o],!g.skip&&(u?(i.moveTo(g.x,g.y),u=!1):c(i,p,g,d,r.stepped),p=g);return l&&(g=n[(a+(d?h:0))%o],c(i,p,g,d,r.stepped)),!!l}function Uc(i,t,e,s){const n=t.points,{count:r,start:o,ilen:a}=zr(n,e,s),{move:l=!0,reverse:h}=s||{};let c=0,u=0,d,b,g,p,x,y;const _=M=>(o+(h?a-M:M))%r,w=()=>{p!==x&&(i.lineTo(c,x),i.lineTo(c,p),i.lineTo(c,y))};for(l&&(b=n[_(0)],i.moveTo(b.x,b.y)),d=0;d<=a;++d){if(b=n[_(d)],b.skip)continue;const M=b.x,v=b.y,O=M|0;O===g?(v<p?p=v:v>x&&(x=v),c=(u*c+M)/++u):(w(),i.lineTo(M,v),g=O,u=0,p=x=v),y=v}w()}function Zi(i){const t=i.options,e=t.borderDash&&t.borderDash.length;return!i._decimated&&!i._loop&&!t.tension&&t.cubicInterpolationMode!=="monotone"&&!t.stepped&&!e?Uc:Yc}function Xc(i){return i.stepped?Vl:i.tension||i.cubicInterpolationMode==="monotone"?$l:Gt}function qc(i,t,e,s){let n=t._path;n||(n=t._path=new Path2D,t.path(n,e,s)&&n.closePath()),Fr(i,t.options),i.stroke(n)}function Kc(i,t,e,s){const{segments:n,options:r}=t,o=Zi(t);for(const a of n)Fr(i,r,a.style),i.beginPath(),o(i,t,a,{start:e,end:e+s-1})&&i.closePath(),i.stroke()}const Gc=typeof Path2D=="function";function Zc(i,t,e,s){Gc&&!t.options.segment?qc(i,t,e,s):Kc(i,t,e,s)}class Ce extends kt{constructor(t){super(),this.animated=!0,this.options=void 0,this._chart=void 0,this._loop=void 0,this._fullLoop=void 0,this._path=void 0,this._points=void 0,this._segments=void 0,this._decimated=!1,this._pointsUpdated=!1,this._datasetIndex=void 0,t&&Object.assign(this,t)}updateControlPoints(t,e){const s=this.options;if((s.tension||s.cubicInterpolationMode==="monotone")&&!s.stepped&&!this._pointsUpdated){const n=s.spanGaps?this._loop:this._fullLoop;Ll(this._points,s,t,n,e),this._pointsUpdated=!0}}set points(t){this._points=t,delete this._segments,delete this._path,this._pointsUpdated=!1}get points(){return this._points}get segments(){return this._segments||(this._segments=Jl(this,this.options.segment))}first(){const t=this.segments,e=this.points;return t.length&&e[t[0].start]}last(){const t=this.segments,e=this.points,s=t.length;return s&&e[t[s-1].end]}interpolate(t,e){const s=this.options,n=t[e],r=this.points,o=Kl(this,{property:e,start:n,end:n});if(!o.length)return;const a=[],l=Xc(s);let h,c;for(h=0,c=o.length;h<c;++h){const{start:u,end:d}=o[h],b=r[u],g=r[d];if(b===g){a.push(b);continue}const p=Math.abs((n-b[e])/(g[e]-b[e])),x=l(b,g,p,s.stepped);x[e]=t[e],a.push(x)}return a.length===1?a[0]:a}pathSegment(t,e,s){return Zi(this)(t,this,e,s)}path(t,e,s){const n=this.segments,r=Zi(this);let o=this._loop;e=e||0,s=s||this.points.length-e;for(const a of n)o&=r(t,this,a,{start:e,end:e+s-1});return!!o}draw(t,e,s,n){const r=this.options||{};(this.points||[]).length&&r.borderWidth&&(t.save(),Zc(t,this,s,n),t.restore()),this.animated&&(this._pointsUpdated=!1,this._path=void 0)}}j(Ce,"id","line"),j(Ce,"defaults",{borderCapStyle:"butt",borderDash:[],borderDashOffset:0,borderJoinStyle:"miter",borderWidth:3,capBezierPoints:!0,cubicInterpolationMode:"default",fill:!1,spanGaps:!1,stepped:!1,tension:0}),j(Ce,"defaultRoutes",{backgroundColor:"backgroundColor",borderColor:"borderColor"}),j(Ce,"descriptors",{_scriptable:!0,_indexable:t=>t!=="borderDash"&&t!=="fill"});function zn(i,t,e,s){const n=i.options,{[e]:r}=i.getProps([e],s);return Math.abs(t-r)<n.radius+n.hitRadius}class ui extends kt{constructor(e){super();j(this,"parsed");j(this,"skip");j(this,"stop");this.options=void 0,this.parsed=void 0,this.skip=void 0,this.stop=void 0,e&&Object.assign(this,e)}inRange(e,s,n){const r=this.options,{x:o,y:a}=this.getProps(["x","y"],n);return Math.pow(e-o,2)+Math.pow(s-a,2)<Math.pow(r.hitRadius+r.radius,2)}inXRange(e,s){return zn(this,e,"x",s)}inYRange(e,s){return zn(this,e,"y",s)}getCenterPoint(e){const{x:s,y:n}=this.getProps(["x","y"],e);return{x:s,y:n}}size(e){e=e||this.options||{};let s=e.radius||0;s=Math.max(s,s&&e.hoverRadius||0);const n=s&&e.borderWidth||0;return(s+n)*2}draw(e,s){const n=this.options;this.skip||n.radius<.1||!Ie(this,s,this.size(n)/2)||(e.strokeStyle=n.borderColor,e.lineWidth=n.borderWidth,e.fillStyle=n.backgroundColor,qi(e,n,this.x,this.y))}getRange(){const e=this.options||{};return e.radius+e.hitRadius}}j(ui,"id","point"),j(ui,"defaults",{borderWidth:1,hitRadius:1,hoverBorderWidth:1,hoverRadius:4,pointStyle:"circle",radius:3,rotation:0}),j(ui,"defaultRoutes",{backgroundColor:"backgroundColor",borderColor:"borderColor"});function Br(i,t){const{x:e,y:s,base:n,width:r,height:o}=i.getProps(["x","y","base","width","height"],t);let a,l,h,c,u;return i.horizontal?(u=o/2,a=Math.min(e,n),l=Math.max(e,n),h=s-u,c=s+u):(u=r/2,a=e-u,l=e+u,h=Math.min(s,n),c=Math.max(s,n)),{left:a,top:h,right:l,bottom:c}}function Bt(i,t,e,s){return i?0:lt(t,e,s)}function Jc(i,t,e){const s=i.options.borderWidth,n=i.borderSkipped,r=mr(s);return{t:Bt(n.top,r.top,0,e),r:Bt(n.right,r.right,0,t),b:Bt(n.bottom,r.bottom,0,e),l:Bt(n.left,r.left,0,t)}}function Qc(i,t,e){const{enableBorderRadius:s}=i.getProps(["enableBorderRadius"]),n=i.options.borderRadius,r=le(n),o=Math.min(t,e),a=i.borderSkipped,l=s||W(n);return{topLeft:Bt(!l||a.top||a.left,r.topLeft,0,o),topRight:Bt(!l||a.top||a.right,r.topRight,0,o),bottomLeft:Bt(!l||a.bottom||a.left,r.bottomLeft,0,o),bottomRight:Bt(!l||a.bottom||a.right,r.bottomRight,0,o)}}function tu(i){const t=Br(i),e=t.right-t.left,s=t.bottom-t.top,n=Jc(i,e/2,s/2),r=Qc(i,e/2,s/2);return{outer:{x:t.left,y:t.top,w:e,h:s,radius:r},inner:{x:t.left+n.l,y:t.top+n.t,w:e-n.l-n.r,h:s-n.t-n.b,radius:{topLeft:Math.max(0,r.topLeft-Math.max(n.t,n.l)),topRight:Math.max(0,r.topRight-Math.max(n.t,n.r)),bottomLeft:Math.max(0,r.bottomLeft-Math.max(n.b,n.l)),bottomRight:Math.max(0,r.bottomRight-Math.max(n.b,n.r))}}}}function Vi(i,t,e,s){const n=t===null,r=e===null,a=i&&!(n&&r)&&Br(i,s);return a&&(n||zt(t,a.left,a.right))&&(r||zt(e,a.top,a.bottom))}function eu(i){return i.topLeft||i.topRight||i.bottomLeft||i.bottomRight}function iu(i,t){i.rect(t.x,t.y,t.w,t.h)}function $i(i,t,e={}){const s=i.x!==e.x?-t:0,n=i.y!==e.y?-t:0,r=(i.x+i.w!==e.x+e.w?t:0)-s,o=(i.y+i.h!==e.y+e.h?t:0)-n;return{x:i.x+s,y:i.y+n,w:i.w+r,h:i.h+o,radius:i.radius}}class di extends kt{constructor(t){super(),this.options=void 0,this.horizontal=void 0,this.base=void 0,this.width=void 0,this.height=void 0,this.inflateAmount=void 0,t&&Object.assign(this,t)}draw(t){const{inflateAmount:e,options:{borderColor:s,backgroundColor:n}}=this,{inner:r,outer:o}=tu(this),a=eu(o.radius)?pi:iu;t.save(),(o.w!==r.w||o.h!==r.h)&&(t.beginPath(),a(t,$i(o,e,r)),t.clip(),a(t,$i(r,-e,o)),t.fillStyle=s,t.fill("evenodd")),t.beginPath(),a(t,$i(r,e)),t.fillStyle=n,t.fill(),t.restore()}inRange(t,e,s){return Vi(this,t,e,s)}inXRange(t,e){return Vi(this,t,null,e)}inYRange(t,e){return Vi(this,null,t,e)}getCenterPoint(t){const{x:e,y:s,base:n,horizontal:r}=this.getProps(["x","y","base","horizontal"],t);return{x:r?(e+n)/2:e,y:r?s:(s+n)/2}}getRange(t){return t==="x"?this.width/2:this.height/2}}j(di,"id","bar"),j(di,"defaults",{borderSkipped:"start",borderWidth:0,borderRadius:0,inflateAmount:"auto",pointStyle:void 0}),j(di,"defaultRoutes",{backgroundColor:"backgroundColor",borderColor:"borderColor"});const Bn=(i,t)=>{let{boxHeight:e=t,boxWidth:s=t}=i;return i.usePointStyle&&(e=Math.min(e,t),s=i.pointStyleWidth||Math.min(s,t)),{boxWidth:s,boxHeight:e,itemHeight:Math.max(t,e)}},su=(i,t)=>i!==null&&t!==null&&i.datasetIndex===t.datasetIndex&&i.index===t.index;class Hn extends kt{constructor(t){super(),this._added=!1,this.legendHitBoxes=[],this._hoveredItem=null,this.doughnutMode=!1,this.chart=t.chart,this.options=t.options,this.ctx=t.ctx,this.legendItems=void 0,this.columnSizes=void 0,this.lineWidths=void 0,this.maxHeight=void 0,this.maxWidth=void 0,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.height=void 0,this.width=void 0,this._margins=void 0,this.position=void 0,this.weight=void 0,this.fullSize=void 0}update(t,e,s){this.maxWidth=t,this.maxHeight=e,this._margins=s,this.setDimensions(),this.buildLabels(),this.fit()}setDimensions(){this.isHorizontal()?(this.width=this.maxWidth,this.left=this._margins.left,this.right=this.width):(this.height=this.maxHeight,this.top=this._margins.top,this.bottom=this.height)}buildLabels(){const t=this.options.labels||{};let e=G(t.generateLabels,[this.chart],this)||[];t.filter&&(e=e.filter(s=>t.filter(s,this.chart.data))),t.sort&&(e=e.sort((s,n)=>t.sort(s,n,this.chart.data))),this.options.reverse&&e.reverse(),this.legendItems=e}fit(){const{options:t,ctx:e}=this;if(!t.display){this.width=this.height=0;return}const s=t.labels,n=ht(s.font),r=n.size,o=this._computeTitleHeight(),{boxWidth:a,itemHeight:l}=Bn(s,r);let h,c;e.font=n.string,this.isHorizontal()?(h=this.maxWidth,c=this._fitRows(o,r,a,l)+10):(c=this.maxHeight,h=this._fitCols(o,n,a,l)+10),this.width=Math.min(h,t.maxWidth||this.maxWidth),this.height=Math.min(c,t.maxHeight||this.maxHeight)}_fitRows(t,e,s,n){const{ctx:r,maxWidth:o,options:{labels:{padding:a}}}=this,l=this.legendHitBoxes=[],h=this.lineWidths=[0],c=n+a;let u=t;r.textAlign="left",r.textBaseline="middle";let d=-1,b=-c;return this.legendItems.forEach((g,p)=>{const x=s+e/2+r.measureText(g.text).width;(p===0||h[h.length-1]+x+2*a>o)&&(u+=c,h[h.length-(p>0?0:1)]=0,b+=c,d++),l[p]={left:0,top:b,row:d,width:x,height:n},h[h.length-1]+=x+a}),u}_fitCols(t,e,s,n){const{ctx:r,maxHeight:o,options:{labels:{padding:a}}}=this,l=this.legendHitBoxes=[],h=this.columnSizes=[],c=o-t;let u=a,d=0,b=0,g=0,p=0;return this.legendItems.forEach((x,y)=>{const{itemWidth:_,itemHeight:w}=nu(s,e,r,x,n);y>0&&b+w+2*a>c&&(u+=d+a,h.push({width:d,height:b}),g+=d+a,p++,d=b=0),l[y]={left:g,top:b,col:p,width:_,height:w},d=Math.max(d,_),b+=w+a}),u+=d,h.push({width:d,height:b}),u}adjustHitBoxes(){if(!this.options.display)return;const t=this._computeTitleHeight(),{legendHitBoxes:e,options:{align:s,labels:{padding:n},rtl:r}}=this,o=he(r,this.left,this.width);if(this.isHorizontal()){let a=0,l=at(s,this.left+n,this.right-this.lineWidths[a]);for(const h of e)a!==h.row&&(a=h.row,l=at(s,this.left+n,this.right-this.lineWidths[a])),h.top+=this.top+t+n,h.left=o.leftForLtr(o.x(l),h.width),l+=h.width+n}else{let a=0,l=at(s,this.top+t+n,this.bottom-this.columnSizes[a].height);for(const h of e)h.col!==a&&(a=h.col,l=at(s,this.top+t+n,this.bottom-this.columnSizes[a].height)),h.top=l,h.left+=this.left+n,h.left=o.leftForLtr(o.x(h.left),h.width),l+=h.height+n}}isHorizontal(){return this.options.position==="top"||this.options.position==="bottom"}draw(){if(this.options.display){const t=this.ctx;ls(t,this),this._draw(),hs(t)}}_draw(){const{options:t,columnSizes:e,lineWidths:s,ctx:n}=this,{align:r,labels:o}=t,a=et.color,l=he(t.rtl,this.left,this.width),h=ht(o.font),{padding:c}=o,u=h.size,d=u/2;let b;this.drawTitle(),n.textAlign=l.textAlign("left"),n.textBaseline="middle",n.lineWidth=.5,n.font=h.string;const{boxWidth:g,boxHeight:p,itemHeight:x}=Bn(o,u),y=function(O,S,C){if(isNaN(g)||g<=0||isNaN(p)||p<0)return;n.save();const R=N(C.lineWidth,1);if(n.fillStyle=N(C.fillStyle,a),n.lineCap=N(C.lineCap,"butt"),n.lineDashOffset=N(C.lineDashOffset,0),n.lineJoin=N(C.lineJoin,"miter"),n.lineWidth=R,n.strokeStyle=N(C.strokeStyle,a),n.setLineDash(N(C.lineDash,[])),o.usePointStyle){const T={radius:p*Math.SQRT2/2,pointStyle:C.pointStyle,rotation:C.rotation,borderWidth:R},E=l.xPlus(O,g/2),L=S+d;pr(n,T,E,L,o.pointStyleWidth&&g)}else{const T=S+Math.max((u-p)/2,0),E=l.leftForLtr(O,g),L=le(C.borderRadius);n.beginPath(),Object.values(L).some(H=>H!==0)?pi(n,{x:E,y:T,w:g,h:p,radius:L}):n.rect(E,T,g,p),n.fill(),R!==0&&n.stroke()}n.restore()},_=function(O,S,C){Fe(n,C.text,O,S+x/2,h,{strikethrough:C.hidden,textAlign:l.textAlign(C.textAlign)})},w=this.isHorizontal(),M=this._computeTitleHeight();w?b={x:at(r,this.left+c,this.right-s[0]),y:this.top+c+M,line:0}:b={x:this.left+c,y:at(r,this.top+M+c,this.bottom-e[0].height),line:0},wr(this.ctx,t.textDirection);const v=x+c;this.legendItems.forEach((O,S)=>{n.strokeStyle=O.fontColor,n.fillStyle=O.fontColor;const C=n.measureText(O.text).width,R=l.textAlign(O.textAlign||(O.textAlign=o.textAlign)),T=g+d+C;let E=b.x,L=b.y;l.setWidth(this.width),w?S>0&&E+T+c>this.right&&(L=b.y+=v,b.line++,E=b.x=at(r,this.left+c,this.right-s[b.line])):S>0&&L+v>this.bottom&&(E=b.x=E+e[b.line].width+c,b.line++,L=b.y=at(r,this.top+M+c,this.bottom-e[b.line].height));const H=l.x(E);if(y(H,L,O),E=Za(R,E+g+d,w?E+T:this.right,t.rtl),_(l.x(E),L,O),w)b.x+=T+c;else if(typeof O.text!="string"){const J=h.lineHeight;b.y+=Hr(O,J)+c}else b.y+=v}),Sr(this.ctx,t.textDirection)}drawTitle(){const t=this.options,e=t.title,s=ht(e.font),n=yt(e.padding);if(!e.display)return;const r=he(t.rtl,this.left,this.width),o=this.ctx,a=e.position,l=s.size/2,h=n.top+l;let c,u=this.left,d=this.width;if(this.isHorizontal())d=Math.max(...this.lineWidths),c=this.top+h,u=at(t.align,u,this.right-d);else{const g=this.columnSizes.reduce((p,x)=>Math.max(p,x.height),0);c=h+at(t.align,this.top,this.bottom-g-t.labels.padding-this._computeTitleHeight())}const b=at(a,u,u+d);o.textAlign=r.textAlign(rs(a)),o.textBaseline="middle",o.strokeStyle=e.color,o.fillStyle=e.color,o.font=s.string,Fe(o,e.text,b,c,s)}_computeTitleHeight(){const t=this.options.title,e=ht(t.font),s=yt(t.padding);return t.display?e.lineHeight+s.height:0}_getLegendItemAt(t,e){let s,n,r;if(zt(t,this.left,this.right)&&zt(e,this.top,this.bottom)){for(r=this.legendHitBoxes,s=0;s<r.length;++s)if(n=r[s],zt(t,n.left,n.left+n.width)&&zt(e,n.top,n.top+n.height))return this.legendItems[s]}return null}handleEvent(t){const e=this.options;if(!au(t.type,e))return;const s=this._getLegendItemAt(t.x,t.y);if(t.type==="mousemove"||t.type==="mouseout"){const n=this._hoveredItem,r=su(n,s);n&&!r&&G(e.onLeave,[t,n,this],this),this._hoveredItem=s,s&&!r&&G(e.onHover,[t,s,this],this)}else s&&G(e.onClick,[t,s,this],this)}}function nu(i,t,e,s,n){const r=ru(s,i,t,e),o=ou(n,s,t.lineHeight);return{itemWidth:r,itemHeight:o}}function ru(i,t,e,s){let n=i.text;return n&&typeof n!="string"&&(n=n.reduce((r,o)=>r.length>o.length?r:o)),t+e.size/2+s.measureText(n).width}function ou(i,t,e){let s=i;return typeof t.text!="string"&&(s=Hr(t,e)),s}function Hr(i,t){const e=i.text?i.text.length:0;return t*e}function au(i,t){return!!((i==="mousemove"||i==="mouseout")&&(t.onHover||t.onLeave)||t.onClick&&(i==="click"||i==="mouseup"))}var ms={id:"legend",_element:Hn,start(i,t,e){const s=i.legend=new Hn({ctx:i.ctx,options:e,chart:i});mt.configure(i,s,e),mt.addBox(i,s)},stop(i){mt.removeBox(i,i.legend),delete i.legend},beforeUpdate(i,t,e){const s=i.legend;mt.configure(i,s,e),s.options=e},afterUpdate(i){const t=i.legend;t.buildLabels(),t.adjustHitBoxes()},afterEvent(i,t){t.replay||i.legend.handleEvent(t.event)},defaults:{display:!0,position:"top",align:"center",fullSize:!0,reverse:!1,weight:1e3,onClick(i,t,e){const s=t.datasetIndex,n=e.chart;n.isDatasetVisible(s)?(n.hide(s),t.hidden=!0):(n.show(s),t.hidden=!1)},onHover:null,onLeave:null,labels:{color:i=>i.chart.options.color,boxWidth:40,padding:10,generateLabels(i){const t=i.data.datasets,{labels:{usePointStyle:e,pointStyle:s,textAlign:n,color:r,useBorderRadius:o,borderRadius:a}}=i.legend.options;return i._getSortedDatasetMetas().map(l=>{const h=l.controller.getStyle(e?0:void 0),c=yt(h.borderWidth);return{text:t[l.index].label,fillStyle:h.backgroundColor,fontColor:r,hidden:!l.visible,lineCap:h.borderCapStyle,lineDash:h.borderDash,lineDashOffset:h.borderDashOffset,lineJoin:h.borderJoinStyle,lineWidth:(c.width+c.height)/4,strokeStyle:h.borderColor,pointStyle:s||h.pointStyle,rotation:h.rotation,textAlign:n||h.textAlign,borderRadius:o&&(a||h.borderRadius),datasetIndex:l.index}},this)}},title:{color:i=>i.chart.options.color,display:!1,position:"center",text:""}},descriptors:{_scriptable:i=>!i.startsWith("on"),labels:{_scriptable:i=>!["generateLabels","filter","sort"].includes(i)}}};class Wr extends kt{constructor(t){super(),this.chart=t.chart,this.options=t.options,this.ctx=t.ctx,this._padding=void 0,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.width=void 0,this.height=void 0,this.position=void 0,this.weight=void 0,this.fullSize=void 0}update(t,e){const s=this.options;if(this.left=0,this.top=0,!s.display){this.width=this.height=this.right=this.bottom=0;return}this.width=this.right=t,this.height=this.bottom=e;const n=nt(s.text)?s.text.length:1;this._padding=yt(s.padding);const r=n*ht(s.font).lineHeight+this._padding.height;this.isHorizontal()?this.height=r:this.width=r}isHorizontal(){const t=this.options.position;return t==="top"||t==="bottom"}_drawArgs(t){const{top:e,left:s,bottom:n,right:r,options:o}=this,a=o.align;let l=0,h,c,u;return this.isHorizontal()?(c=at(a,s,r),u=e+t,h=r-s):(o.position==="left"?(c=s+t,u=at(a,n,e),l=U*-.5):(c=r-t,u=at(a,e,n),l=U*.5),h=n-e),{titleX:c,titleY:u,maxWidth:h,rotation:l}}draw(){const t=this.ctx,e=this.options;if(!e.display)return;const s=ht(e.font),r=s.lineHeight/2+this._padding.top,{titleX:o,titleY:a,maxWidth:l,rotation:h}=this._drawArgs(r);Fe(t,e.text,0,0,s,{color:e.color,maxWidth:l,rotation:h,textAlign:rs(e.align),textBaseline:"middle",translation:[o,a]})}}function lu(i,t){const e=new Wr({ctx:i.ctx,options:t,chart:i});mt.configure(i,e,t),mt.addBox(i,e),i.titleBlock=e}var Vr={id:"title",_element:Wr,start(i,t,e){lu(i,e)},stop(i){const t=i.titleBlock;mt.removeBox(i,t),delete i.titleBlock},beforeUpdate(i,t,e){const s=i.titleBlock;mt.configure(i,s,e),s.options=e},defaults:{align:"center",display:!1,font:{weight:"bold"},fullSize:!0,padding:10,position:"top",text:"",weight:2e3},defaultRoutes:{color:"color"},descriptors:{_scriptable:!0,_indexable:!1}};const Pe={average(i){if(!i.length)return!1;let t,e,s=new Set,n=0,r=0;for(t=0,e=i.length;t<e;++t){const a=i[t].element;if(a&&a.hasValue()){const l=a.tooltipPosition();s.add(l.x),n+=l.y,++r}}return r===0||s.size===0?!1:{x:[...s].reduce((a,l)=>a+l)/s.size,y:n/r}},nearest(i,t){if(!i.length)return!1;let e=t.x,s=t.y,n=Number.POSITIVE_INFINITY,r,o,a;for(r=0,o=i.length;r<o;++r){const l=i[r].element;if(l&&l.hasValue()){const h=l.getCenterPoint(),c=Ui(t,h);c<n&&(n=c,a=l)}}if(a){const l=a.tooltipPosition();e=l.x,s=l.y}return{x:e,y:s}}};function St(i,t){return t&&(nt(t)?Array.prototype.push.apply(i,t):i.push(t)),i}function Dt(i){return(typeof i=="string"||i instanceof String)&&i.indexOf(`
|
|
46
46
|
`)>-1?i.split(`
|
|
47
|
-
`):i}function lu(i,t){const{element:e,datasetIndex:s,index:n}=t,r=i.getDatasetMeta(s).controller,{label:o,value:a}=r.getLabelAndValue(n);return{chart:i,label:o,parsed:r.getParsed(n),raw:i.data.datasets[s].data[n],formattedValue:a,dataset:r.getDataset(),dataIndex:n,datasetIndex:s,element:e}}function Wn(i,t){const e=i.chart.ctx,{body:s,footer:n,title:r}=i,{boxWidth:o,boxHeight:a}=t,l=ht(t.bodyFont),h=ht(t.titleFont),c=ht(t.footerFont),u=r.length,d=n.length,b=s.length,g=yt(t.padding);let p=g.height,x=0,y=s.reduce((M,v)=>M+v.before.length+v.lines.length+v.after.length,0);if(y+=i.beforeBody.length+i.afterBody.length,u&&(p+=u*h.lineHeight+(u-1)*t.titleSpacing+t.titleMarginBottom),y){const M=t.displayColors?Math.max(a,l.lineHeight):l.lineHeight;p+=b*M+(y-b)*l.lineHeight+(y-1)*t.bodySpacing}d&&(p+=t.footerMarginTop+d*c.lineHeight+(d-1)*t.footerSpacing);let _=0;const w=function(M){x=Math.max(x,e.measureText(M).width+_)};return e.save(),e.font=h.string,Y(i.title,w),e.font=l.string,Y(i.beforeBody.concat(i.afterBody),w),_=t.displayColors?o+2+t.boxPadding:0,Y(s,M=>{Y(M.before,w),Y(M.lines,w),Y(M.after,w)}),_=0,e.font=c.string,Y(i.footer,w),e.restore(),x+=g.width,{width:x,height:p}}function hu(i,t){const{y:e,height:s}=t;return e<s/2?"top":e>i.height-s/2?"bottom":"center"}function cu(i,t,e,s){const{x:n,width:r}=s,o=e.caretSize+e.caretPadding;if(i==="left"&&n+r+o>t.width||i==="right"&&n-r-o<0)return!0}function uu(i,t,e,s){const{x:n,width:r}=e,{width:o,chartArea:{left:a,right:l}}=i;let h="center";return s==="center"?h=n<=(a+l)/2?"left":"right":n<=r/2?h="left":n>=o-r/2&&(h="right"),cu(h,i,t,e)&&(h="center"),h}function Vn(i,t,e){const s=e.yAlign||t.yAlign||hu(i,e);return{xAlign:e.xAlign||t.xAlign||uu(i,t,e,s),yAlign:s}}function du(i,t){let{x:e,width:s}=i;return t==="right"?e-=s:t==="center"&&(e-=s/2),e}function bu(i,t,e){let{y:s,height:n}=i;return t==="top"?s+=e:t==="bottom"?s-=n+e:s-=n/2,s}function $n(i,t,e,s){const{caretSize:n,caretPadding:r,cornerRadius:o}=i,{xAlign:a,yAlign:l}=e,h=n+r,{topLeft:c,topRight:u,bottomLeft:d,bottomRight:b}=le(o);let g=du(t,a);const p=bu(t,l,h);return l==="center"?a==="left"?g+=h:a==="right"&&(g-=h):a==="left"?g-=Math.max(c,d)+n:a==="right"&&(g+=Math.max(u,b)+n),{x:lt(g,0,s.width-t.width),y:lt(p,0,s.height-t.height)}}function ri(i,t,e){const s=yt(e.padding);return t==="center"?i.x+i.width/2:t==="right"?i.x+i.width-s.right:i.x+s.left}function Yn(i){return St([],Dt(i))}function fu(i,t,e){return se(i,{tooltip:t,tooltipItems:e,type:"tooltip"})}function Un(i,t){const e=t&&t.dataset&&t.dataset.tooltip&&t.dataset.tooltip.callbacks;return e?i.override(e):i}const $r={beforeTitle:At,title(i){if(i.length>0){const t=i[0],e=t.chart.data.labels,s=e?e.length:0;if(this&&this.options&&this.options.mode==="dataset")return t.dataset.label||"";if(t.label)return t.label;if(s>0&&t.dataIndex<s)return e[t.dataIndex]}return""},afterTitle:At,beforeBody:At,beforeLabel:At,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 $(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:At,afterBody:At,beforeFooter:At,footer:At,afterFooter:At};function bt(i,t,e,s){const n=i[t].call(e,s);return typeof n>"u"?$r[t].call(e,s):n}class Ji extends kt{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.footer=void 0,this.xAlign=void 0,this.yAlign=void 0,this.x=void 0,this.y=void 0,this.height=void 0,this.width=void 0,this.caretX=void 0,this.caretY=void 0,this.labelColors=void 0,this.labelPointStyles=void 0,this.labelTextColors=void 0}initialize(t){this.options=t,this._cachedAnimations=void 0,this.$context=void 0}_resolveAnimations(){const t=this._cachedAnimations;if(t)return t;const e=this.chart,s=this.options.setContext(this.getContext()),n=s.enabled&&e.options.animation&&s.animations,r=new Cr(this.chart,n);return n._cacheable&&(this._cachedAnimations=Object.freeze(r)),r}getContext(){return this.$context||(this.$context=fu(this.chart.getContext(),this,this._tooltipItems))}getTitle(t,e){const{callbacks:s}=e,n=bt(s,"beforeTitle",this,t),r=bt(s,"title",this,t),o=bt(s,"afterTitle",this,t);let a=[];return a=St(a,Dt(n)),a=St(a,Dt(r)),a=St(a,Dt(o)),a}getBeforeBody(t,e){return Yn(bt(e.callbacks,"beforeBody",this,t))}getBody(t,e){const{callbacks:s}=e,n=[];return Y(t,r=>{const o={before:[],lines:[],after:[]},a=Un(s,r);St(o.before,Dt(bt(a,"beforeLabel",this,r))),St(o.lines,bt(a,"label",this,r)),St(o.after,Dt(bt(a,"afterLabel",this,r))),n.push(o)}),n}getAfterBody(t,e){return Yn(bt(e.callbacks,"afterBody",this,t))}getFooter(t,e){const{callbacks:s}=e,n=bt(s,"beforeFooter",this,t),r=bt(s,"footer",this,t),o=bt(s,"afterFooter",this,t);let a=[];return a=St(a,Dt(n)),a=St(a,Dt(r)),a=St(a,Dt(o)),a}_createItems(t){const e=this._active,s=this.chart.data,n=[],r=[],o=[];let a=[],l,h;for(l=0,h=e.length;l<h;++l)a.push(lu(this.chart,e[l]));return t.filter&&(a=a.filter((c,u,d)=>t.filter(c,u,d,s))),t.itemSort&&(a=a.sort((c,u)=>t.itemSort(c,u,s))),Y(a,c=>{const u=Un(t.callbacks,c);n.push(bt(u,"labelColor",this,c)),r.push(bt(u,"labelPointStyle",this,c)),o.push(bt(u,"labelTextColor",this,c))}),this.labelColors=n,this.labelPointStyles=r,this.labelTextColors=o,this.dataPoints=a,a}update(t,e){const s=this.options.setContext(this.getContext()),n=this._active;let r,o=[];if(!n.length)this.opacity!==0&&(r={opacity:0});else{const a=Pe[s.position].call(this,n,this._eventPosition);o=this._createItems(s),this.title=this.getTitle(o,s),this.beforeBody=this.getBeforeBody(o,s),this.body=this.getBody(o,s),this.afterBody=this.getAfterBody(o,s),this.footer=this.getFooter(o,s);const l=this._size=Wn(this,s),h=Object.assign({},a,l),c=Vn(this.chart,s,h),u=$n(s,h,c,this.chart);this.xAlign=c.xAlign,this.yAlign=c.yAlign,r={opacity:1,x:u.x,y:u.y,width:l.width,height:l.height,caretX:a.x,caretY:a.y}}this._tooltipItems=o,this.$context=void 0,r&&this._resolveAnimations().update(this,r),t&&s.external&&s.external.call(this,{chart:this.chart,tooltip:this,replay:e})}drawCaret(t,e,s,n){const r=this.getCaretPosition(t,s,n);e.lineTo(r.x1,r.y1),e.lineTo(r.x2,r.y2),e.lineTo(r.x3,r.y3)}getCaretPosition(t,e,s){const{xAlign:n,yAlign:r}=this,{caretSize:o,cornerRadius:a}=s,{topLeft:l,topRight:h,bottomLeft:c,bottomRight:u}=le(a),{x:d,y:b}=t,{width:g,height:p}=e;let x,y,_,w,M,v;return r==="center"?(M=b+p/2,n==="left"?(x=d,y=x-o,w=M+o,v=M-o):(x=d+g,y=x+o,w=M-o,v=M+o),_=x):(n==="left"?y=d+Math.max(l,c)+o:n==="right"?y=d+g-Math.max(h,u)-o:y=this.caretX,r==="top"?(w=b,M=w-o,x=y-o,_=y+o):(w=b+p,M=w+o,x=y+o,_=y-o),v=w),{x1:x,x2:y,x3:_,y1:w,y2:M,y3:v}}drawTitle(t,e,s){const n=this.title,r=n.length;let o,a,l;if(r){const h=he(s.rtl,this.x,this.width);for(t.x=ri(this,s.titleAlign,s),e.textAlign=h.textAlign(s.titleAlign),e.textBaseline="middle",o=ht(s.titleFont),a=s.titleSpacing,e.fillStyle=s.titleColor,e.font=o.string,l=0;l<r;++l)e.fillText(n[l],h.x(t.x),t.y+o.lineHeight/2),t.y+=o.lineHeight+a,l+1===r&&(t.y+=s.titleMarginBottom-a)}}_drawColorBox(t,e,s,n,r){const o=this.labelColors[s],a=this.labelPointStyles[s],{boxHeight:l,boxWidth:h}=r,c=ht(r.bodyFont),u=ri(this,"left",r),d=n.x(u),b=l<c.lineHeight?(c.lineHeight-l)/2:0,g=e.y+b;if(r.usePointStyle){const p={radius:Math.min(h,l)/2,pointStyle:a.pointStyle,rotation:a.rotation,borderWidth:1},x=n.leftForLtr(d,h)+h/2,y=g+l/2;t.strokeStyle=r.multiKeyBackground,t.fillStyle=r.multiKeyBackground,qi(t,p,x,y),t.strokeStyle=o.borderColor,t.fillStyle=o.backgroundColor,qi(t,p,x,y)}else{t.lineWidth=W(o.borderWidth)?Math.max(...Object.values(o.borderWidth)):o.borderWidth||1,t.strokeStyle=o.borderColor,t.setLineDash(o.borderDash||[]),t.lineDashOffset=o.borderDashOffset||0;const p=n.leftForLtr(d,h),x=n.leftForLtr(n.xPlus(d,1),h-2),y=le(o.borderRadius);Object.values(y).some(_=>_!==0)?(t.beginPath(),t.fillStyle=r.multiKeyBackground,pi(t,{x:p,y:g,w:h,h:l,radius:y}),t.fill(),t.stroke(),t.fillStyle=o.backgroundColor,t.beginPath(),pi(t,{x,y:g+1,w:h-2,h:l-2,radius:y}),t.fill()):(t.fillStyle=r.multiKeyBackground,t.fillRect(p,g,h,l),t.strokeRect(p,g,h,l),t.fillStyle=o.backgroundColor,t.fillRect(x,g+1,h-2,l-2))}t.fillStyle=this.labelTextColors[s]}drawBody(t,e,s){const{body:n}=this,{bodySpacing:r,bodyAlign:o,displayColors:a,boxHeight:l,boxWidth:h,boxPadding:c}=s,u=ht(s.bodyFont);let d=u.lineHeight,b=0;const g=he(s.rtl,this.x,this.width),p=function(C){e.fillText(C,g.x(t.x+b),t.y+d/2),t.y+=d+r},x=g.textAlign(o);let y,_,w,M,v,O,S;for(e.textAlign=o,e.textBaseline="middle",e.font=u.string,t.x=ri(this,x,s),e.fillStyle=s.bodyColor,Y(this.beforeBody,p),b=a&&x!=="right"?o==="center"?h/2+c:h+2+c:0,M=0,O=n.length;M<O;++M){for(y=n[M],_=this.labelTextColors[M],e.fillStyle=_,Y(y.before,p),w=y.lines,a&&w.length&&(this._drawColorBox(e,t,M,g,s),d=Math.max(u.lineHeight,l)),v=0,S=w.length;v<S;++v)p(w[v]),d=u.lineHeight;Y(y.after,p)}b=0,d=u.lineHeight,Y(this.afterBody,p),t.y-=r}drawFooter(t,e,s){const n=this.footer,r=n.length;let o,a;if(r){const l=he(s.rtl,this.x,this.width);for(t.x=ri(this,s.footerAlign,s),t.y+=s.footerMarginTop,e.textAlign=l.textAlign(s.footerAlign),e.textBaseline="middle",o=ht(s.footerFont),e.fillStyle=s.footerColor,e.font=o.string,a=0;a<r;++a)e.fillText(n[a],l.x(t.x),t.y+o.lineHeight/2),t.y+=o.lineHeight+s.footerSpacing}}drawBackground(t,e,s,n){const{xAlign:r,yAlign:o}=this,{x:a,y:l}=t,{width:h,height:c}=s,{topLeft:u,topRight:d,bottomLeft:b,bottomRight:g}=le(n.cornerRadius);e.fillStyle=n.backgroundColor,e.strokeStyle=n.borderColor,e.lineWidth=n.borderWidth,e.beginPath(),e.moveTo(a+u,l),o==="top"&&this.drawCaret(t,e,s,n),e.lineTo(a+h-d,l),e.quadraticCurveTo(a+h,l,a+h,l+d),o==="center"&&r==="right"&&this.drawCaret(t,e,s,n),e.lineTo(a+h,l+c-g),e.quadraticCurveTo(a+h,l+c,a+h-g,l+c),o==="bottom"&&this.drawCaret(t,e,s,n),e.lineTo(a+b,l+c),e.quadraticCurveTo(a,l+c,a,l+c-b),o==="center"&&r==="left"&&this.drawCaret(t,e,s,n),e.lineTo(a,l+u),e.quadraticCurveTo(a,l,a+u,l),e.closePath(),e.fill(),n.borderWidth>0&&e.stroke()}_updateAnimationTarget(t){const e=this.chart,s=this.$animations,n=s&&s.x,r=s&&s.y;if(n||r){const o=Pe[t.position].call(this,this._active,this._eventPosition);if(!o)return;const a=this._size=Wn(this,t),l=Object.assign({},o,this._size),h=Vn(e,t,l),c=$n(t,l,h,e);(n._to!==c.x||r._to!==c.y)&&(this.xAlign=h.xAlign,this.yAlign=h.yAlign,this.width=a.width,this.height=a.height,this.caretX=o.x,this.caretY=o.y,this._resolveAnimations().update(this,c))}}_willRender(){return!!this.opacity}draw(t){const e=this.options.setContext(this.getContext());let s=this.opacity;if(!s)return;this._updateAnimationTarget(e);const n={width:this.width,height:this.height},r={x:this.x,y:this.y};s=Math.abs(s)<.001?0:s;const o=yt(e.padding),a=this.title.length||this.beforeBody.length||this.body.length||this.afterBody.length||this.footer.length;e.enabled&&a&&(t.save(),t.globalAlpha=s,this.drawBackground(r,t,n,e),wr(t,e.textDirection),r.y+=o.top,this.drawTitle(r,t,e),this.drawBody(r,t,e),this.drawFooter(r,t,e),Sr(t,e.textDirection),t.restore())}getActiveElements(){return this._active||[]}setActiveElements(t,e){const s=this._active,n=t.map(({datasetIndex:a,index:l})=>{const h=this.chart.getDatasetMeta(a);if(!h)throw new Error("Cannot find a dataset at index "+a);return{datasetIndex:a,element:h.data[l],index:l}}),r=!bi(s,n),o=this._positionChanged(n,e);(r||o)&&(this._active=n,this._eventPosition=e,this._ignoreReplayEvents=!0,this.update(!0))}handleEvent(t,e,s=!0){if(e&&this._ignoreReplayEvents)return!1;this._ignoreReplayEvents=!1;const n=this.options,r=this._active||[],o=this._getActiveElements(t,r,e,s),a=this._positionChanged(o,t),l=e||!bi(o,r)||a;return l&&(this._active=o,(n.enabled||n.external)&&(this._eventPosition={x:t.x,y:t.y},this.update(!0,e))),l}_getActiveElements(t,e,s,n){const r=this.options;if(t.type==="mouseout")return[];if(!n)return e.filter(a=>this.chart.data.datasets[a.datasetIndex]&&this.chart.getDatasetMeta(a.datasetIndex).controller.getParsed(a.index)!==void 0);const o=this.chart.getElementsAtEventForMode(t,r.mode,r,s);return r.reverse&&o.reverse(),o}_positionChanged(t,e){const{caretX:s,caretY:n,options:r}=this,o=Pe[r.position].call(this,t,e);return o!==!1&&(s!==o.x||n!==o.y)}}R(Ji,"positioners",Pe);var xs={id:"tooltip",_element:Ji,positioners:Pe,afterInit(i,t,e){e&&(i.tooltip=new Ji({chart:i,options:e}))},beforeUpdate(i,t,e){i.tooltip&&i.tooltip.initialize(e)},reset(i,t,e){i.tooltip&&i.tooltip.initialize(e)},afterDraw(i){const t=i.tooltip;if(t&&t._willRender()){const e={tooltip:t};if(i.notifyPlugins("beforeTooltipDraw",{...e,cancelable:!0})===!1)return;t.draw(i.ctx),i.notifyPlugins("afterTooltipDraw",e)}},afterEvent(i,t){if(i.tooltip){const e=t.replay;i.tooltip.handleEvent(t.event,e,t.inChartArea)&&(t.changed=!0)}},defaults:{enabled:!0,external:null,position:"average",backgroundColor:"rgba(0,0,0,0.8)",titleColor:"#fff",titleFont:{weight:"bold"},titleSpacing:2,titleMarginBottom:6,titleAlign:"left",bodyColor:"#fff",bodySpacing:2,bodyFont:{},bodyAlign:"left",footerColor:"#fff",footerSpacing:2,footerMarginTop:6,footerFont:{weight:"bold"},footerAlign:"left",padding:6,caretPadding:2,caretSize:5,cornerRadius:6,boxHeight:(i,t)=>t.bodyFont.size,boxWidth:(i,t)=>t.bodyFont.size,multiKeyBackground:"#fff",displayColors:!0,boxPadding:0,borderColor:"rgba(0,0,0,0)",borderWidth:0,animation:{duration:400,easing:"easeOutQuart"},animations:{numbers:{type:"number",properties:["x","y","width","height","caretX","caretY"]},opacity:{easing:"linear",duration:200}},callbacks:$r},defaultRoutes:{bodyFont:"font",footerFont:"font",titleFont:"font"},descriptors:{_scriptable:i=>i!=="filter"&&i!=="itemSort"&&i!=="external",_indexable:!1,callbacks:{_scriptable:!1,_indexable:!1},animation:{_fallback:!1},animations:{_fallback:"animation"}},additionalOptionScopes:["interaction"]};const gu=(i,t,e,s)=>(typeof t=="string"?(e=i.push(t)-1,s.unshift({index:e,label:t})):isNaN(t)&&(e=null),e);function pu(i,t,e,s){const n=i.indexOf(t);if(n===-1)return gu(i,t,e,s);const r=i.lastIndexOf(t);return n!==r?e:n}const mu=(i,t)=>i===null?null:lt(Math.round(i),0,t);function Xn(i){const t=this.getLabels();return i>=0&&i<t.length?t[i]:i}class _i extends de{constructor(t){super(t),this._startValue=void 0,this._valueRange=0,this._addedLabels=[]}init(t){const e=this._addedLabels;if(e.length){const s=this.getLabels();for(const{index:n,label:r}of e)s[n]===r&&s.splice(n,1);this._addedLabels=[]}super.init(t)}parse(t,e){if($(t))return null;const s=this.getLabels();return e=isFinite(e)&&s[e]===t?e:pu(s,t,N(e,t),this._addedLabels),mu(e,s.length-1)}determineDataLimits(){const{minDefined:t,maxDefined:e}=this.getUserBounds();let{min:s,max:n}=this.getMinMax(!0);this.options.bounds==="ticks"&&(t||(s=0),e||(n=this.getLabels().length-1)),this.min=s,this.max=n}buildTicks(){const t=this.min,e=this.max,s=this.options.offset,n=[];let r=this.getLabels();r=t===0&&e===r.length-1?r:r.slice(t,e+1),this._valueRange=Math.max(r.length-(s?0:1),1),this._startValue=this.min-(s?.5:0);for(let o=t;o<=e;o++)n.push({value:o});return n}getLabelForValue(t){return Xn.call(this,t)}configure(){super.configure(),this.isHorizontal()||(this._reversePixels=!this._reversePixels)}getPixelForValue(t){return typeof t!="number"&&(t=this.parse(t)),t===null?NaN:this.getPixelForDecimal((t-this._startValue)/this._valueRange)}getPixelForTick(t){const e=this.ticks;return t<0||t>e.length-1?null:this.getPixelForValue(e[t].value)}getValueForPixel(t){return Math.round(this._startValue+this.getDecimalForPixel(t)*this._valueRange)}getBasePixel(){return this.bottom}}R(_i,"id","category"),R(_i,"defaults",{ticks:{callback:Xn}});function xu(i,t){const e=[],{bounds:n,step:r,min:o,max:a,precision:l,count:h,maxTicks:c,maxDigits:u,includeBounds:d}=i,b=r||1,g=c-1,{min:p,max:x}=t,y=!$(o),_=!$(a),w=!$(h),M=(x-p)/(u+1);let v=qs((x-p)/g/b)*b,O,S,C,A;if(v<1e-14&&!y&&!_)return[{value:p},{value:x}];A=Math.ceil(x/v)-Math.floor(p/v),A>g&&(v=qs(A*v/g/b)*b),$(l)||(O=Math.pow(10,l),v=Math.ceil(v*O)/O),n==="ticks"?(S=Math.floor(p/v)*v,C=Math.ceil(x/v)*v):(S=p,C=x),y&&_&&r&&Ha((a-o)/r,v/1e3)?(A=Math.round(Math.min((a-o)/v,c)),v=(a-o)/A,S=o,C=a):w?(S=y?o:S,C=_?a:C,A=h-1,v=(C-S)/A):(A=(C-S)/v,Re(A,Math.round(A),v/1e3)?A=Math.round(A):A=Math.ceil(A));const T=Math.max(Ks(v),Ks(S));O=Math.pow(10,$(l)?T:l),S=Math.round(S*O)/O,C=Math.round(C*O)/O;let E=0;for(y&&(d&&S!==o?(e.push({value:o}),S<o&&E++,Re(Math.round((S+E*v)*O)/O,o,qn(o,M,i))&&E++):S<o&&E++);E<A;++E){const L=Math.round((S+E*v)*O)/O;if(_&&L>a)break;e.push({value:L})}return _&&d&&C!==a?e.length&&Re(e[e.length-1].value,a,qn(a,M,i))?e[e.length-1].value=a:e.push({value:a}):(!_||C===a)&&e.push({value:C}),e}function qn(i,t,{horizontal:e,minRotation:s}){const n=Et(s),r=(e?Math.sin(n):Math.cos(n))||.001,o=.75*t*(""+i).length;return Math.min(t/r,o)}class yu extends de{constructor(t){super(t),this.start=void 0,this.end=void 0,this._startValue=void 0,this._endValue=void 0,this._valueRange=0}parse(t,e){return $(t)||(typeof t=="number"||t instanceof Number)&&!isFinite(+t)?null:+t}handleTickRangeOptions(){const{beginAtZero:t}=this.options,{minDefined:e,maxDefined:s}=this.getUserBounds();let{min:n,max:r}=this;const o=l=>n=e?n:l,a=l=>r=s?r:l;if(t){const l=Ct(n),h=Ct(r);l<0&&h<0?a(0):l>0&&h>0&&o(0)}if(n===r){let l=r===0?1:Math.abs(r*.05);a(r+l),t||o(n-l)}this.min=n,this.max=r}getTickLimit(){const t=this.options.ticks;let{maxTicksLimit:e,stepSize:s}=t,n;return s?(n=Math.ceil(this.max/s)-Math.floor(this.min/s)+1,n>1e3&&(console.warn(`scales.${this.id}.ticks.stepSize: ${s} would result generating up to ${n} ticks. Limiting to 1000.`),n=1e3)):(n=this.computeTickLimit(),e=e||11),e&&(n=Math.min(e,n)),n}computeTickLimit(){return Number.POSITIVE_INFINITY}buildTicks(){const t=this.options,e=t.ticks;let s=this.getTickLimit();s=Math.max(2,s);const n={maxTicks:s,bounds:t.bounds,min:t.min,max:t.max,precision:e.precision,step:e.stepSize,count:e.count,maxDigits:this._maxDigits(),horizontal:this.isHorizontal(),minRotation:e.minRotation||0,includeBounds:e.includeBounds!==!1},r=this._range||this,o=xu(n,r);return t.bounds==="ticks"&&Wa(o,this,"value"),t.reverse?(o.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max),o}configure(){const t=this.ticks;let e=this.min,s=this.max;if(super.configure(),this.options.offset&&t.length){const n=(s-e)/Math.max(t.length-1,1)/2;e-=n,s+=n}this._startValue=e,this._endValue=s,this._valueRange=s-e}getLabelForValue(t){return as(t,this.chart.options.locale,this.options.ticks.format)}}class vi extends yu{determineDataLimits(){const{min:t,max:e}=this.getMinMax(!0);this.min=xt(t)?t:0,this.max=xt(e)?e:1,this.handleTickRangeOptions()}computeTickLimit(){const t=this.isHorizontal(),e=t?this.width:this.height,s=Et(this.options.ticks.minRotation),n=(t?Math.sin(s):Math.cos(s))||.001,r=this._resolveTickFontOptions(0);return Math.ceil(e/Math.min(40,r.lineHeight/n))}getPixelForValue(t){return t===null?NaN:this.getPixelForDecimal((t-this._startValue)/this._valueRange)}getValueForPixel(t){return this._startValue+this.getDecimalForPixel(t)*this._valueRange}}R(vi,"id","linear"),R(vi,"defaults",{ticks:{callback:gr.formatters.numeric}});const Mi={millisecond:{common:!0,size:1,steps:1e3},second:{common:!0,size:1e3,steps:60},minute:{common:!0,size:6e4,steps:60},hour:{common:!0,size:36e5,steps:24},day:{common:!0,size:864e5,steps:30},week:{common:!1,size:6048e5,steps:4},month:{common:!0,size:2628e6,steps:12},quarter:{common:!1,size:7884e6,steps:4},year:{common:!0,size:3154e7}},ft=Object.keys(Mi);function Kn(i,t){return i-t}function Gn(i,t){if($(t))return null;const e=i._adapter,{parser:s,round:n,isoWeekday:r}=i._parseOpts;let o=t;return typeof s=="function"&&(o=s(o)),xt(o)||(o=typeof s=="string"?e.parse(o,s):e.parse(o)),o===null?null:(n&&(o=n==="week"&&(Le(r)||r===!0)?e.startOf(o,"isoWeek",r):e.startOf(o,n)),+o)}function Zn(i,t,e,s){const n=ft.length;for(let r=ft.indexOf(i);r<n-1;++r){const o=Mi[ft[r]],a=o.steps?o.steps:Number.MAX_SAFE_INTEGER;if(o.common&&Math.ceil((e-t)/(a*o.size))<=s)return ft[r]}return ft[n-1]}function _u(i,t,e,s,n){for(let r=ft.length-1;r>=ft.indexOf(e);r--){const o=ft[r];if(Mi[o].common&&i._adapter.diff(n,s,o)>=t-1)return o}return ft[e?ft.indexOf(e):0]}function vu(i){for(let t=ft.indexOf(i)+1,e=ft.length;t<e;++t)if(Mi[ft[t]].common)return ft[t]}function Jn(i,t,e){if(!e)i[t]=!0;else if(e.length){const{lo:s,hi:n}=ns(e,t),r=e[s]>=t?e[s]:e[n];i[r]=!0}}function ku(i,t,e,s){const n=i._adapter,r=+n.startOf(t[0].value,s),o=t[t.length-1].value;let a,l;for(a=r;a<=o;a=+n.add(a,1,s))l=e[a],l>=0&&(t[l].major=!0);return t}function Qn(i,t,e){const s=[],n={},r=t.length;let o,a;for(o=0;o<r;++o)a=t[o],n[a]=o,s.push({value:a,major:!1});return r===0||!e?s:ku(i,s,n,e)}class ki extends de{constructor(t){super(t),this._cache={data:[],labels:[],all:[]},this._unit="day",this._majorUnit=void 0,this._offsets={},this._normalized=!1,this._parseOpts=void 0}init(t,e={}){const s=t.time||(t.time={}),n=this._adapter=new Ph._date(t.adapters.date);n.init(e),Oe(s.displayFormats,n.formats()),this._parseOpts={parser:s.parser,round:s.round,isoWeekday:s.isoWeekday},super.init(t),this._normalized=e.normalized}parse(t,e){return t===void 0?null:Gn(this,t)}beforeLayout(){super.beforeLayout(),this._cache={data:[],labels:[],all:[]}}determineDataLimits(){const t=this.options,e=this._adapter,s=t.time.unit||"day";let{min:n,max:r,minDefined:o,maxDefined:a}=this.getUserBounds();function l(h){!o&&!isNaN(h.min)&&(n=Math.min(n,h.min)),!a&&!isNaN(h.max)&&(r=Math.max(r,h.max))}(!o||!a)&&(l(this._getLabelBounds()),(t.bounds!=="ticks"||t.ticks.source!=="labels")&&l(this.getMinMax(!1))),n=xt(n)&&!isNaN(n)?n:+e.startOf(Date.now(),s),r=xt(r)&&!isNaN(r)?r:+e.endOf(Date.now(),s)+1,this.min=Math.min(n,r-1),this.max=Math.max(n+1,r)}_getLabelBounds(){const t=this.getLabelTimestamps();let e=Number.POSITIVE_INFINITY,s=Number.NEGATIVE_INFINITY;return t.length&&(e=t[0],s=t[t.length-1]),{min:e,max:s}}buildTicks(){const t=this.options,e=t.time,s=t.ticks,n=s.source==="labels"?this.getLabelTimestamps():this._generate();t.bounds==="ticks"&&n.length&&(this.min=this._userMin||n[0],this.max=this._userMax||n[n.length-1]);const r=this.min,o=this.max,a=Xa(n,r,o);return this._unit=e.unit||(s.autoSkip?Zn(e.minUnit,this.min,this.max,this._getLabelCapacity(r)):_u(this,a.length,e.minUnit,this.min,this.max)),this._majorUnit=!s.major.enabled||this._unit==="year"?void 0:vu(this._unit),this.initOffsets(n),t.reverse&&a.reverse(),Qn(this,a,this._majorUnit)}afterAutoSkip(){this.options.offsetAfterAutoskip&&this.initOffsets(this.ticks.map(t=>+t.value))}initOffsets(t=[]){let e=0,s=0,n,r;this.options.offset&&t.length&&(n=this.getDecimalForValue(t[0]),t.length===1?e=1-n:e=(this.getDecimalForValue(t[1])-n)/2,r=this.getDecimalForValue(t[t.length-1]),t.length===1?s=r:s=(r-this.getDecimalForValue(t[t.length-2]))/2);const o=t.length<3?.5:.25;e=lt(e,0,o),s=lt(s,0,o),this._offsets={start:e,end:s,factor:1/(e+1+s)}}_generate(){const t=this._adapter,e=this.min,s=this.max,n=this.options,r=n.time,o=r.unit||Zn(r.minUnit,e,s,this._getLabelCapacity(e)),a=N(n.ticks.stepSize,1),l=o==="week"?r.isoWeekday:!1,h=Le(l)||l===!0,c={};let u=e,d,b;if(h&&(u=+t.startOf(u,"isoWeek",l)),u=+t.startOf(u,h?"day":o),t.diff(s,e,o)>1e5*a)throw new Error(e+" and "+s+" are too far apart with stepSize of "+a+" "+o);const g=n.ticks.source==="data"&&this.getDataTimestamps();for(d=u,b=0;d<s;d=+t.add(d,a,o),b++)Jn(c,d,g);return(d===s||n.bounds==="ticks"||b===1)&&Jn(c,d,g),Object.keys(c).sort(Kn).map(p=>+p)}getLabelForValue(t){const e=this._adapter,s=this.options.time;return s.tooltipFormat?e.format(t,s.tooltipFormat):e.format(t,s.displayFormats.datetime)}format(t,e){const n=this.options.time.displayFormats,r=this._unit,o=e||n[r];return this._adapter.format(t,o)}_tickFormatFunction(t,e,s,n){const r=this.options,o=r.ticks.callback;if(o)return K(o,[t,e,s],this);const a=r.time.displayFormats,l=this._unit,h=this._majorUnit,c=l&&a[l],u=h&&a[h],d=s[e],b=h&&u&&d&&d.major;return this._adapter.format(t,n||(b?u:c))}generateTickLabels(t){let e,s,n;for(e=0,s=t.length;e<s;++e)n=t[e],n.label=this._tickFormatFunction(n.value,e,t)}getDecimalForValue(t){return t===null?NaN:(t-this.min)/(this.max-this.min)}getPixelForValue(t){const e=this._offsets,s=this.getDecimalForValue(t);return this.getPixelForDecimal((e.start+s)*e.factor)}getValueForPixel(t){const e=this._offsets,s=this.getDecimalForPixel(t)/e.factor-e.end;return this.min+s*(this.max-this.min)}_getLabelSize(t){const e=this.options.ticks,s=this.ctx.measureText(t).width,n=Et(this.isHorizontal()?e.maxRotation:e.minRotation),r=Math.cos(n),o=Math.sin(n),a=this._resolveTickFontOptions(0).size;return{w:s*r+a*o,h:s*o+a*r}}_getLabelCapacity(t){const e=this.options.time,s=e.displayFormats,n=s[e.unit]||s.millisecond,r=this._tickFormatFunction(t,0,Qn(this,[t],this._majorUnit),n),o=this._getLabelSize(r),a=Math.floor(this.isHorizontal()?this.width/o.w:this.height/o.h)-1;return a>0?a:1}getDataTimestamps(){let t=this._cache.data||[],e,s;if(t.length)return t;const n=this.getMatchingVisibleMetas();if(this._normalized&&n.length)return this._cache.data=n[0].controller.getAllParsedValues(this);for(e=0,s=n.length;e<s;++e)t=t.concat(n[e].controller.getAllParsedValues(this));return this._cache.data=this.normalize(t)}getLabelTimestamps(){const t=this._cache.labels||[];let e,s;if(t.length)return t;const n=this.getLabels();for(e=0,s=n.length;e<s;++e)t.push(Gn(this,n[e]));return this._cache.labels=this._normalized?t:this.normalize(t)}normalize(t){return dr(t.sort(Kn))}}R(ki,"id","time"),R(ki,"defaults",{bounds:"data",adapters:{},time:{parser:!1,unit:!1,round:!1,isoWeekday:!1,minUnit:"millisecond",displayFormats:{}},ticks:{source:"auto",callback:!1,major:{enabled:!1}}});function oi(i,t,e){let s=0,n=i.length-1,r,o,a,l;e?(t>=i[s].pos&&t<=i[n].pos&&({lo:s,hi:n}=Zt(i,"pos",t)),{pos:r,time:a}=i[s],{pos:o,time:l}=i[n]):(t>=i[s].time&&t<=i[n].time&&({lo:s,hi:n}=Zt(i,"time",t)),{time:r,pos:a}=i[s],{time:o,pos:l}=i[n]);const h=o-r;return h?a+(l-a)*(t-r)/h:a}class tr extends ki{constructor(t){super(t),this._table=[],this._minPos=void 0,this._tableRange=void 0}initOffsets(){const t=this._getTimestampsForTable(),e=this._table=this.buildLookupTable(t);this._minPos=oi(e,this.min),this._tableRange=oi(e,this.max)-this._minPos,super.initOffsets(t)}buildLookupTable(t){const{min:e,max:s}=this,n=[],r=[];let o,a,l,h,c;for(o=0,a=t.length;o<a;++o)h=t[o],h>=e&&h<=s&&n.push(h);if(n.length<2)return[{time:e,pos:0},{time:s,pos:1}];for(o=0,a=n.length;o<a;++o)c=n[o+1],l=n[o-1],h=n[o],Math.round((c+l)/2)!==h&&r.push({time:h,pos:o/(a-1)});return r}_generate(){const t=this.min,e=this.max;let s=super.getDataTimestamps();return(!s.includes(t)||!s.length)&&s.splice(0,0,t),(!s.includes(e)||s.length===1)&&s.push(e),s.sort((n,r)=>n-r)}_getTimestampsForTable(){let t=this._cache.all||[];if(t.length)return t;const e=this.getDataTimestamps(),s=this.getLabelTimestamps();return e.length&&s.length?t=this.normalize(e.concat(s)):t=e.length?e:s,t=this._cache.all=t,t}getDecimalForValue(t){return(oi(this._table,t)-this._minPos)/this._tableRange}getValueForPixel(t){const e=this._offsets,s=this.getDecimalForPixel(t)/e.factor-e.end;return oi(this._table,s*this._tableRange+this._minPos,!0)}}R(tr,"id","timeseries"),R(tr,"defaults",ki.defaults);const Yr="label";function er(i,t){typeof i=="function"?i(t):i&&(i.current=t)}function wu(i,t){const e=i.options;e&&t&&Object.assign(e,t)}function Ur(i,t){i.labels=t}function Xr(i,t){let e=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Yr;const s=[];i.datasets=t.map(n=>{const r=i.datasets.find(o=>o[e]===n[e]);return!r||!n.data||s.includes(r)?{...n}:(s.push(r),Object.assign(r,n),r)})}function Su(i){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Yr;const e={labels:[],datasets:[]};return Ur(e,i.labels),Xr(e,i.datasets,t),e}function Mu(i,t){const{height:e=150,width:s=300,redraw:n=!1,datasetIdKey:r,type:o,data:a,options:l,plugins:h=[],fallbackContent:c,updateMode:u,...d}=i,b=G.useRef(null),g=G.useRef(null),p=()=>{b.current&&(g.current=new be(b.current,{type:o,data:Su(a,r),options:l&&{...l},plugins:h}),er(t,g.current))},x=()=>{er(t,null),g.current&&(g.current.destroy(),g.current=null)};return G.useEffect(()=>{!n&&g.current&&l&&wu(g.current,l)},[n,l]),G.useEffect(()=>{!n&&g.current&&Ur(g.current.config.data,a.labels)},[n,a.labels]),G.useEffect(()=>{!n&&g.current&&a.datasets&&Xr(g.current.config.data,a.datasets,r)},[n,a.datasets]),G.useEffect(()=>{g.current&&(n?(x(),setTimeout(p)):g.current.update(u))},[n,l,a.labels,a.datasets,u]),G.useEffect(()=>{g.current&&(x(),setTimeout(p))},[o]),G.useEffect(()=>(p(),()=>x()),[]),G.createElement("canvas",{ref:b,role:"img",height:e,width:s,...d},c)}const Cu=G.forwardRef(Mu);function ys(i,t){return be.register(t),G.forwardRef((e,s)=>G.createElement(Cu,{...e,ref:s,type:i}))}const Pu=ys("line",li),Ou=ys("bar",ai),Ru=ys("doughnut",we);be.register(_i,vi,di,Vr,xs,ms);const Au=({data:i,options:t={},orientation:e="vertical",className:s})=>{const n={indexAxis:e==="horizontal"?"y":"x",responsive:!0,maintainAspectRatio:!1,plugins:{legend:{display:!0},...t.plugins},...t};return f.jsx("div",{className:s,style:{position:"relative",width:"100%",height:"100%",minHeight:"20rem"},children:f.jsx(Ou,{data:i,options:n})})};be.register(Me,xs,ms);const ju=({data:i,options:t={},className:e})=>{const s={responsive:!0,maintainAspectRatio:!1,plugins:{legend:{position:"bottom",labels:{boxWidth:12,padding:15,font:{size:typeof window<"u"&&window.innerWidth<768?10:12}}},...t.plugins},...t};return f.jsx("div",{className:e,style:{position:"relative",width:"100%",height:"100%",minHeight:"20rem"},children:f.jsx(Ru,{data:i,options:s})})};be.register(_i,vi,ui,Ce,Vr,xs,ms);const Du=({data:i,options:t={},className:e})=>{const s={responsive:!0,maintainAspectRatio:!1,plugins:{legend:{display:!0},...t.plugins},...t};return f.jsx("div",{className:e,style:{position:"relative",width:"100%",height:"100%",minHeight:"20rem"},children:f.jsx(Pu,{data:i,options:s})})};exports.Accordion=Mo;exports.Alert=Co;exports.BarGraph=Au;exports.Button=Lt;exports.Card=ir;exports.ContentTabs=oa;exports.DoughnutGraph=ju;exports.FileDropzone=Lo;exports.Header=No;exports.InfoCard=Ro;exports.Input=Io;exports.LineGraph=Du;exports.MaskedInput=Fo;exports.MetricCard=Vo;exports.Modal=$o;exports.NavButton=Yo;exports.Navigation=Xo;exports.Popover=qo;exports.RadioButton=Ko;exports.Selector=Go;exports.Sheets=ea;exports.Sidebar=ra;exports.Spinner=Qi;exports.StatusButton=Po;exports.StatusLabel=Ho;exports.Tabs=aa;exports.Text=Jt;exports.UtilizationLabel=Wo;exports.Wrapper=sr;
|
|
47
|
+
`):i}function hu(i,t){const{element:e,datasetIndex:s,index:n}=t,r=i.getDatasetMeta(s).controller,{label:o,value:a}=r.getLabelAndValue(n);return{chart:i,label:o,parsed:r.getParsed(n),raw:i.data.datasets[s].data[n],formattedValue:a,dataset:r.getDataset(),dataIndex:n,datasetIndex:s,element:e}}function Wn(i,t){const e=i.chart.ctx,{body:s,footer:n,title:r}=i,{boxWidth:o,boxHeight:a}=t,l=ht(t.bodyFont),h=ht(t.titleFont),c=ht(t.footerFont),u=r.length,d=n.length,b=s.length,g=yt(t.padding);let p=g.height,x=0,y=s.reduce((M,v)=>M+v.before.length+v.lines.length+v.after.length,0);if(y+=i.beforeBody.length+i.afterBody.length,u&&(p+=u*h.lineHeight+(u-1)*t.titleSpacing+t.titleMarginBottom),y){const M=t.displayColors?Math.max(a,l.lineHeight):l.lineHeight;p+=b*M+(y-b)*l.lineHeight+(y-1)*t.bodySpacing}d&&(p+=t.footerMarginTop+d*c.lineHeight+(d-1)*t.footerSpacing);let _=0;const w=function(M){x=Math.max(x,e.measureText(M).width+_)};return e.save(),e.font=h.string,Y(i.title,w),e.font=l.string,Y(i.beforeBody.concat(i.afterBody),w),_=t.displayColors?o+2+t.boxPadding:0,Y(s,M=>{Y(M.before,w),Y(M.lines,w),Y(M.after,w)}),_=0,e.font=c.string,Y(i.footer,w),e.restore(),x+=g.width,{width:x,height:p}}function cu(i,t){const{y:e,height:s}=t;return e<s/2?"top":e>i.height-s/2?"bottom":"center"}function uu(i,t,e,s){const{x:n,width:r}=s,o=e.caretSize+e.caretPadding;if(i==="left"&&n+r+o>t.width||i==="right"&&n-r-o<0)return!0}function du(i,t,e,s){const{x:n,width:r}=e,{width:o,chartArea:{left:a,right:l}}=i;let h="center";return s==="center"?h=n<=(a+l)/2?"left":"right":n<=r/2?h="left":n>=o-r/2&&(h="right"),uu(h,i,t,e)&&(h="center"),h}function Vn(i,t,e){const s=e.yAlign||t.yAlign||cu(i,e);return{xAlign:e.xAlign||t.xAlign||du(i,t,e,s),yAlign:s}}function bu(i,t){let{x:e,width:s}=i;return t==="right"?e-=s:t==="center"&&(e-=s/2),e}function fu(i,t,e){let{y:s,height:n}=i;return t==="top"?s+=e:t==="bottom"?s-=n+e:s-=n/2,s}function $n(i,t,e,s){const{caretSize:n,caretPadding:r,cornerRadius:o}=i,{xAlign:a,yAlign:l}=e,h=n+r,{topLeft:c,topRight:u,bottomLeft:d,bottomRight:b}=le(o);let g=bu(t,a);const p=fu(t,l,h);return l==="center"?a==="left"?g+=h:a==="right"&&(g-=h):a==="left"?g-=Math.max(c,d)+n:a==="right"&&(g+=Math.max(u,b)+n),{x:lt(g,0,s.width-t.width),y:lt(p,0,s.height-t.height)}}function ri(i,t,e){const s=yt(e.padding);return t==="center"?i.x+i.width/2:t==="right"?i.x+i.width-s.right:i.x+s.left}function Yn(i){return St([],Dt(i))}function gu(i,t,e){return se(i,{tooltip:t,tooltipItems:e,type:"tooltip"})}function Un(i,t){const e=t&&t.dataset&&t.dataset.tooltip&&t.dataset.tooltip.callbacks;return e?i.override(e):i}const $r={beforeTitle:Rt,title(i){if(i.length>0){const t=i[0],e=t.chart.data.labels,s=e?e.length:0;if(this&&this.options&&this.options.mode==="dataset")return t.dataset.label||"";if(t.label)return t.label;if(s>0&&t.dataIndex<s)return e[t.dataIndex]}return""},afterTitle:Rt,beforeBody:Rt,beforeLabel:Rt,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 $(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:Rt,afterBody:Rt,beforeFooter:Rt,footer:Rt,afterFooter:Rt};function bt(i,t,e,s){const n=i[t].call(e,s);return typeof n>"u"?$r[t].call(e,s):n}class Ji extends kt{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.footer=void 0,this.xAlign=void 0,this.yAlign=void 0,this.x=void 0,this.y=void 0,this.height=void 0,this.width=void 0,this.caretX=void 0,this.caretY=void 0,this.labelColors=void 0,this.labelPointStyles=void 0,this.labelTextColors=void 0}initialize(t){this.options=t,this._cachedAnimations=void 0,this.$context=void 0}_resolveAnimations(){const t=this._cachedAnimations;if(t)return t;const e=this.chart,s=this.options.setContext(this.getContext()),n=s.enabled&&e.options.animation&&s.animations,r=new Cr(this.chart,n);return n._cacheable&&(this._cachedAnimations=Object.freeze(r)),r}getContext(){return this.$context||(this.$context=gu(this.chart.getContext(),this,this._tooltipItems))}getTitle(t,e){const{callbacks:s}=e,n=bt(s,"beforeTitle",this,t),r=bt(s,"title",this,t),o=bt(s,"afterTitle",this,t);let a=[];return a=St(a,Dt(n)),a=St(a,Dt(r)),a=St(a,Dt(o)),a}getBeforeBody(t,e){return Yn(bt(e.callbacks,"beforeBody",this,t))}getBody(t,e){const{callbacks:s}=e,n=[];return Y(t,r=>{const o={before:[],lines:[],after:[]},a=Un(s,r);St(o.before,Dt(bt(a,"beforeLabel",this,r))),St(o.lines,bt(a,"label",this,r)),St(o.after,Dt(bt(a,"afterLabel",this,r))),n.push(o)}),n}getAfterBody(t,e){return Yn(bt(e.callbacks,"afterBody",this,t))}getFooter(t,e){const{callbacks:s}=e,n=bt(s,"beforeFooter",this,t),r=bt(s,"footer",this,t),o=bt(s,"afterFooter",this,t);let a=[];return a=St(a,Dt(n)),a=St(a,Dt(r)),a=St(a,Dt(o)),a}_createItems(t){const e=this._active,s=this.chart.data,n=[],r=[],o=[];let a=[],l,h;for(l=0,h=e.length;l<h;++l)a.push(hu(this.chart,e[l]));return t.filter&&(a=a.filter((c,u,d)=>t.filter(c,u,d,s))),t.itemSort&&(a=a.sort((c,u)=>t.itemSort(c,u,s))),Y(a,c=>{const u=Un(t.callbacks,c);n.push(bt(u,"labelColor",this,c)),r.push(bt(u,"labelPointStyle",this,c)),o.push(bt(u,"labelTextColor",this,c))}),this.labelColors=n,this.labelPointStyles=r,this.labelTextColors=o,this.dataPoints=a,a}update(t,e){const s=this.options.setContext(this.getContext()),n=this._active;let r,o=[];if(!n.length)this.opacity!==0&&(r={opacity:0});else{const a=Pe[s.position].call(this,n,this._eventPosition);o=this._createItems(s),this.title=this.getTitle(o,s),this.beforeBody=this.getBeforeBody(o,s),this.body=this.getBody(o,s),this.afterBody=this.getAfterBody(o,s),this.footer=this.getFooter(o,s);const l=this._size=Wn(this,s),h=Object.assign({},a,l),c=Vn(this.chart,s,h),u=$n(s,h,c,this.chart);this.xAlign=c.xAlign,this.yAlign=c.yAlign,r={opacity:1,x:u.x,y:u.y,width:l.width,height:l.height,caretX:a.x,caretY:a.y}}this._tooltipItems=o,this.$context=void 0,r&&this._resolveAnimations().update(this,r),t&&s.external&&s.external.call(this,{chart:this.chart,tooltip:this,replay:e})}drawCaret(t,e,s,n){const r=this.getCaretPosition(t,s,n);e.lineTo(r.x1,r.y1),e.lineTo(r.x2,r.y2),e.lineTo(r.x3,r.y3)}getCaretPosition(t,e,s){const{xAlign:n,yAlign:r}=this,{caretSize:o,cornerRadius:a}=s,{topLeft:l,topRight:h,bottomLeft:c,bottomRight:u}=le(a),{x:d,y:b}=t,{width:g,height:p}=e;let x,y,_,w,M,v;return r==="center"?(M=b+p/2,n==="left"?(x=d,y=x-o,w=M+o,v=M-o):(x=d+g,y=x+o,w=M-o,v=M+o),_=x):(n==="left"?y=d+Math.max(l,c)+o:n==="right"?y=d+g-Math.max(h,u)-o:y=this.caretX,r==="top"?(w=b,M=w-o,x=y-o,_=y+o):(w=b+p,M=w+o,x=y+o,_=y-o),v=w),{x1:x,x2:y,x3:_,y1:w,y2:M,y3:v}}drawTitle(t,e,s){const n=this.title,r=n.length;let o,a,l;if(r){const h=he(s.rtl,this.x,this.width);for(t.x=ri(this,s.titleAlign,s),e.textAlign=h.textAlign(s.titleAlign),e.textBaseline="middle",o=ht(s.titleFont),a=s.titleSpacing,e.fillStyle=s.titleColor,e.font=o.string,l=0;l<r;++l)e.fillText(n[l],h.x(t.x),t.y+o.lineHeight/2),t.y+=o.lineHeight+a,l+1===r&&(t.y+=s.titleMarginBottom-a)}}_drawColorBox(t,e,s,n,r){const o=this.labelColors[s],a=this.labelPointStyles[s],{boxHeight:l,boxWidth:h}=r,c=ht(r.bodyFont),u=ri(this,"left",r),d=n.x(u),b=l<c.lineHeight?(c.lineHeight-l)/2:0,g=e.y+b;if(r.usePointStyle){const p={radius:Math.min(h,l)/2,pointStyle:a.pointStyle,rotation:a.rotation,borderWidth:1},x=n.leftForLtr(d,h)+h/2,y=g+l/2;t.strokeStyle=r.multiKeyBackground,t.fillStyle=r.multiKeyBackground,qi(t,p,x,y),t.strokeStyle=o.borderColor,t.fillStyle=o.backgroundColor,qi(t,p,x,y)}else{t.lineWidth=W(o.borderWidth)?Math.max(...Object.values(o.borderWidth)):o.borderWidth||1,t.strokeStyle=o.borderColor,t.setLineDash(o.borderDash||[]),t.lineDashOffset=o.borderDashOffset||0;const p=n.leftForLtr(d,h),x=n.leftForLtr(n.xPlus(d,1),h-2),y=le(o.borderRadius);Object.values(y).some(_=>_!==0)?(t.beginPath(),t.fillStyle=r.multiKeyBackground,pi(t,{x:p,y:g,w:h,h:l,radius:y}),t.fill(),t.stroke(),t.fillStyle=o.backgroundColor,t.beginPath(),pi(t,{x,y:g+1,w:h-2,h:l-2,radius:y}),t.fill()):(t.fillStyle=r.multiKeyBackground,t.fillRect(p,g,h,l),t.strokeRect(p,g,h,l),t.fillStyle=o.backgroundColor,t.fillRect(x,g+1,h-2,l-2))}t.fillStyle=this.labelTextColors[s]}drawBody(t,e,s){const{body:n}=this,{bodySpacing:r,bodyAlign:o,displayColors:a,boxHeight:l,boxWidth:h,boxPadding:c}=s,u=ht(s.bodyFont);let d=u.lineHeight,b=0;const g=he(s.rtl,this.x,this.width),p=function(C){e.fillText(C,g.x(t.x+b),t.y+d/2),t.y+=d+r},x=g.textAlign(o);let y,_,w,M,v,O,S;for(e.textAlign=o,e.textBaseline="middle",e.font=u.string,t.x=ri(this,x,s),e.fillStyle=s.bodyColor,Y(this.beforeBody,p),b=a&&x!=="right"?o==="center"?h/2+c:h+2+c:0,M=0,O=n.length;M<O;++M){for(y=n[M],_=this.labelTextColors[M],e.fillStyle=_,Y(y.before,p),w=y.lines,a&&w.length&&(this._drawColorBox(e,t,M,g,s),d=Math.max(u.lineHeight,l)),v=0,S=w.length;v<S;++v)p(w[v]),d=u.lineHeight;Y(y.after,p)}b=0,d=u.lineHeight,Y(this.afterBody,p),t.y-=r}drawFooter(t,e,s){const n=this.footer,r=n.length;let o,a;if(r){const l=he(s.rtl,this.x,this.width);for(t.x=ri(this,s.footerAlign,s),t.y+=s.footerMarginTop,e.textAlign=l.textAlign(s.footerAlign),e.textBaseline="middle",o=ht(s.footerFont),e.fillStyle=s.footerColor,e.font=o.string,a=0;a<r;++a)e.fillText(n[a],l.x(t.x),t.y+o.lineHeight/2),t.y+=o.lineHeight+s.footerSpacing}}drawBackground(t,e,s,n){const{xAlign:r,yAlign:o}=this,{x:a,y:l}=t,{width:h,height:c}=s,{topLeft:u,topRight:d,bottomLeft:b,bottomRight:g}=le(n.cornerRadius);e.fillStyle=n.backgroundColor,e.strokeStyle=n.borderColor,e.lineWidth=n.borderWidth,e.beginPath(),e.moveTo(a+u,l),o==="top"&&this.drawCaret(t,e,s,n),e.lineTo(a+h-d,l),e.quadraticCurveTo(a+h,l,a+h,l+d),o==="center"&&r==="right"&&this.drawCaret(t,e,s,n),e.lineTo(a+h,l+c-g),e.quadraticCurveTo(a+h,l+c,a+h-g,l+c),o==="bottom"&&this.drawCaret(t,e,s,n),e.lineTo(a+b,l+c),e.quadraticCurveTo(a,l+c,a,l+c-b),o==="center"&&r==="left"&&this.drawCaret(t,e,s,n),e.lineTo(a,l+u),e.quadraticCurveTo(a,l,a+u,l),e.closePath(),e.fill(),n.borderWidth>0&&e.stroke()}_updateAnimationTarget(t){const e=this.chart,s=this.$animations,n=s&&s.x,r=s&&s.y;if(n||r){const o=Pe[t.position].call(this,this._active,this._eventPosition);if(!o)return;const a=this._size=Wn(this,t),l=Object.assign({},o,this._size),h=Vn(e,t,l),c=$n(t,l,h,e);(n._to!==c.x||r._to!==c.y)&&(this.xAlign=h.xAlign,this.yAlign=h.yAlign,this.width=a.width,this.height=a.height,this.caretX=o.x,this.caretY=o.y,this._resolveAnimations().update(this,c))}}_willRender(){return!!this.opacity}draw(t){const e=this.options.setContext(this.getContext());let s=this.opacity;if(!s)return;this._updateAnimationTarget(e);const n={width:this.width,height:this.height},r={x:this.x,y:this.y};s=Math.abs(s)<.001?0:s;const o=yt(e.padding),a=this.title.length||this.beforeBody.length||this.body.length||this.afterBody.length||this.footer.length;e.enabled&&a&&(t.save(),t.globalAlpha=s,this.drawBackground(r,t,n,e),wr(t,e.textDirection),r.y+=o.top,this.drawTitle(r,t,e),this.drawBody(r,t,e),this.drawFooter(r,t,e),Sr(t,e.textDirection),t.restore())}getActiveElements(){return this._active||[]}setActiveElements(t,e){const s=this._active,n=t.map(({datasetIndex:a,index:l})=>{const h=this.chart.getDatasetMeta(a);if(!h)throw new Error("Cannot find a dataset at index "+a);return{datasetIndex:a,element:h.data[l],index:l}}),r=!bi(s,n),o=this._positionChanged(n,e);(r||o)&&(this._active=n,this._eventPosition=e,this._ignoreReplayEvents=!0,this.update(!0))}handleEvent(t,e,s=!0){if(e&&this._ignoreReplayEvents)return!1;this._ignoreReplayEvents=!1;const n=this.options,r=this._active||[],o=this._getActiveElements(t,r,e,s),a=this._positionChanged(o,t),l=e||!bi(o,r)||a;return l&&(this._active=o,(n.enabled||n.external)&&(this._eventPosition={x:t.x,y:t.y},this.update(!0,e))),l}_getActiveElements(t,e,s,n){const r=this.options;if(t.type==="mouseout")return[];if(!n)return e.filter(a=>this.chart.data.datasets[a.datasetIndex]&&this.chart.getDatasetMeta(a.datasetIndex).controller.getParsed(a.index)!==void 0);const o=this.chart.getElementsAtEventForMode(t,r.mode,r,s);return r.reverse&&o.reverse(),o}_positionChanged(t,e){const{caretX:s,caretY:n,options:r}=this,o=Pe[r.position].call(this,t,e);return o!==!1&&(s!==o.x||n!==o.y)}}j(Ji,"positioners",Pe);var xs={id:"tooltip",_element:Ji,positioners:Pe,afterInit(i,t,e){e&&(i.tooltip=new Ji({chart:i,options:e}))},beforeUpdate(i,t,e){i.tooltip&&i.tooltip.initialize(e)},reset(i,t,e){i.tooltip&&i.tooltip.initialize(e)},afterDraw(i){const t=i.tooltip;if(t&&t._willRender()){const e={tooltip:t};if(i.notifyPlugins("beforeTooltipDraw",{...e,cancelable:!0})===!1)return;t.draw(i.ctx),i.notifyPlugins("afterTooltipDraw",e)}},afterEvent(i,t){if(i.tooltip){const e=t.replay;i.tooltip.handleEvent(t.event,e,t.inChartArea)&&(t.changed=!0)}},defaults:{enabled:!0,external:null,position:"average",backgroundColor:"rgba(0,0,0,0.8)",titleColor:"#fff",titleFont:{weight:"bold"},titleSpacing:2,titleMarginBottom:6,titleAlign:"left",bodyColor:"#fff",bodySpacing:2,bodyFont:{},bodyAlign:"left",footerColor:"#fff",footerSpacing:2,footerMarginTop:6,footerFont:{weight:"bold"},footerAlign:"left",padding:6,caretPadding:2,caretSize:5,cornerRadius:6,boxHeight:(i,t)=>t.bodyFont.size,boxWidth:(i,t)=>t.bodyFont.size,multiKeyBackground:"#fff",displayColors:!0,boxPadding:0,borderColor:"rgba(0,0,0,0)",borderWidth:0,animation:{duration:400,easing:"easeOutQuart"},animations:{numbers:{type:"number",properties:["x","y","width","height","caretX","caretY"]},opacity:{easing:"linear",duration:200}},callbacks:$r},defaultRoutes:{bodyFont:"font",footerFont:"font",titleFont:"font"},descriptors:{_scriptable:i=>i!=="filter"&&i!=="itemSort"&&i!=="external",_indexable:!1,callbacks:{_scriptable:!1,_indexable:!1},animation:{_fallback:!1},animations:{_fallback:"animation"}},additionalOptionScopes:["interaction"]};const pu=(i,t,e,s)=>(typeof t=="string"?(e=i.push(t)-1,s.unshift({index:e,label:t})):isNaN(t)&&(e=null),e);function mu(i,t,e,s){const n=i.indexOf(t);if(n===-1)return pu(i,t,e,s);const r=i.lastIndexOf(t);return n!==r?e:n}const xu=(i,t)=>i===null?null:lt(Math.round(i),0,t);function Xn(i){const t=this.getLabels();return i>=0&&i<t.length?t[i]:i}class _i extends de{constructor(t){super(t),this._startValue=void 0,this._valueRange=0,this._addedLabels=[]}init(t){const e=this._addedLabels;if(e.length){const s=this.getLabels();for(const{index:n,label:r}of e)s[n]===r&&s.splice(n,1);this._addedLabels=[]}super.init(t)}parse(t,e){if($(t))return null;const s=this.getLabels();return e=isFinite(e)&&s[e]===t?e:mu(s,t,N(e,t),this._addedLabels),xu(e,s.length-1)}determineDataLimits(){const{minDefined:t,maxDefined:e}=this.getUserBounds();let{min:s,max:n}=this.getMinMax(!0);this.options.bounds==="ticks"&&(t||(s=0),e||(n=this.getLabels().length-1)),this.min=s,this.max=n}buildTicks(){const t=this.min,e=this.max,s=this.options.offset,n=[];let r=this.getLabels();r=t===0&&e===r.length-1?r:r.slice(t,e+1),this._valueRange=Math.max(r.length-(s?0:1),1),this._startValue=this.min-(s?.5:0);for(let o=t;o<=e;o++)n.push({value:o});return n}getLabelForValue(t){return Xn.call(this,t)}configure(){super.configure(),this.isHorizontal()||(this._reversePixels=!this._reversePixels)}getPixelForValue(t){return typeof t!="number"&&(t=this.parse(t)),t===null?NaN:this.getPixelForDecimal((t-this._startValue)/this._valueRange)}getPixelForTick(t){const e=this.ticks;return t<0||t>e.length-1?null:this.getPixelForValue(e[t].value)}getValueForPixel(t){return Math.round(this._startValue+this.getDecimalForPixel(t)*this._valueRange)}getBasePixel(){return this.bottom}}j(_i,"id","category"),j(_i,"defaults",{ticks:{callback:Xn}});function yu(i,t){const e=[],{bounds:n,step:r,min:o,max:a,precision:l,count:h,maxTicks:c,maxDigits:u,includeBounds:d}=i,b=r||1,g=c-1,{min:p,max:x}=t,y=!$(o),_=!$(a),w=!$(h),M=(x-p)/(u+1);let v=qs((x-p)/g/b)*b,O,S,C,R;if(v<1e-14&&!y&&!_)return[{value:p},{value:x}];R=Math.ceil(x/v)-Math.floor(p/v),R>g&&(v=qs(R*v/g/b)*b),$(l)||(O=Math.pow(10,l),v=Math.ceil(v*O)/O),n==="ticks"?(S=Math.floor(p/v)*v,C=Math.ceil(x/v)*v):(S=p,C=x),y&&_&&r&&Wa((a-o)/r,v/1e3)?(R=Math.round(Math.min((a-o)/v,c)),v=(a-o)/R,S=o,C=a):w?(S=y?o:S,C=_?a:C,R=h-1,v=(C-S)/R):(R=(C-S)/v,je(R,Math.round(R),v/1e3)?R=Math.round(R):R=Math.ceil(R));const T=Math.max(Ks(v),Ks(S));O=Math.pow(10,$(l)?T:l),S=Math.round(S*O)/O,C=Math.round(C*O)/O;let E=0;for(y&&(d&&S!==o?(e.push({value:o}),S<o&&E++,je(Math.round((S+E*v)*O)/O,o,qn(o,M,i))&&E++):S<o&&E++);E<R;++E){const L=Math.round((S+E*v)*O)/O;if(_&&L>a)break;e.push({value:L})}return _&&d&&C!==a?e.length&&je(e[e.length-1].value,a,qn(a,M,i))?e[e.length-1].value=a:e.push({value:a}):(!_||C===a)&&e.push({value:C}),e}function qn(i,t,{horizontal:e,minRotation:s}){const n=Et(s),r=(e?Math.sin(n):Math.cos(n))||.001,o=.75*t*(""+i).length;return Math.min(t/r,o)}class _u extends de{constructor(t){super(t),this.start=void 0,this.end=void 0,this._startValue=void 0,this._endValue=void 0,this._valueRange=0}parse(t,e){return $(t)||(typeof t=="number"||t instanceof Number)&&!isFinite(+t)?null:+t}handleTickRangeOptions(){const{beginAtZero:t}=this.options,{minDefined:e,maxDefined:s}=this.getUserBounds();let{min:n,max:r}=this;const o=l=>n=e?n:l,a=l=>r=s?r:l;if(t){const l=Ct(n),h=Ct(r);l<0&&h<0?a(0):l>0&&h>0&&o(0)}if(n===r){let l=r===0?1:Math.abs(r*.05);a(r+l),t||o(n-l)}this.min=n,this.max=r}getTickLimit(){const t=this.options.ticks;let{maxTicksLimit:e,stepSize:s}=t,n;return s?(n=Math.ceil(this.max/s)-Math.floor(this.min/s)+1,n>1e3&&(console.warn(`scales.${this.id}.ticks.stepSize: ${s} would result generating up to ${n} ticks. Limiting to 1000.`),n=1e3)):(n=this.computeTickLimit(),e=e||11),e&&(n=Math.min(e,n)),n}computeTickLimit(){return Number.POSITIVE_INFINITY}buildTicks(){const t=this.options,e=t.ticks;let s=this.getTickLimit();s=Math.max(2,s);const n={maxTicks:s,bounds:t.bounds,min:t.min,max:t.max,precision:e.precision,step:e.stepSize,count:e.count,maxDigits:this._maxDigits(),horizontal:this.isHorizontal(),minRotation:e.minRotation||0,includeBounds:e.includeBounds!==!1},r=this._range||this,o=yu(n,r);return t.bounds==="ticks"&&Va(o,this,"value"),t.reverse?(o.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max),o}configure(){const t=this.ticks;let e=this.min,s=this.max;if(super.configure(),this.options.offset&&t.length){const n=(s-e)/Math.max(t.length-1,1)/2;e-=n,s+=n}this._startValue=e,this._endValue=s,this._valueRange=s-e}getLabelForValue(t){return as(t,this.chart.options.locale,this.options.ticks.format)}}class vi extends _u{determineDataLimits(){const{min:t,max:e}=this.getMinMax(!0);this.min=xt(t)?t:0,this.max=xt(e)?e:1,this.handleTickRangeOptions()}computeTickLimit(){const t=this.isHorizontal(),e=t?this.width:this.height,s=Et(this.options.ticks.minRotation),n=(t?Math.sin(s):Math.cos(s))||.001,r=this._resolveTickFontOptions(0);return Math.ceil(e/Math.min(40,r.lineHeight/n))}getPixelForValue(t){return t===null?NaN:this.getPixelForDecimal((t-this._startValue)/this._valueRange)}getValueForPixel(t){return this._startValue+this.getDecimalForPixel(t)*this._valueRange}}j(vi,"id","linear"),j(vi,"defaults",{ticks:{callback:gr.formatters.numeric}});const Mi={millisecond:{common:!0,size:1,steps:1e3},second:{common:!0,size:1e3,steps:60},minute:{common:!0,size:6e4,steps:60},hour:{common:!0,size:36e5,steps:24},day:{common:!0,size:864e5,steps:30},week:{common:!1,size:6048e5,steps:4},month:{common:!0,size:2628e6,steps:12},quarter:{common:!1,size:7884e6,steps:4},year:{common:!0,size:3154e7}},ft=Object.keys(Mi);function Kn(i,t){return i-t}function Gn(i,t){if($(t))return null;const e=i._adapter,{parser:s,round:n,isoWeekday:r}=i._parseOpts;let o=t;return typeof s=="function"&&(o=s(o)),xt(o)||(o=typeof s=="string"?e.parse(o,s):e.parse(o)),o===null?null:(n&&(o=n==="week"&&(Le(r)||r===!0)?e.startOf(o,"isoWeek",r):e.startOf(o,n)),+o)}function Zn(i,t,e,s){const n=ft.length;for(let r=ft.indexOf(i);r<n-1;++r){const o=Mi[ft[r]],a=o.steps?o.steps:Number.MAX_SAFE_INTEGER;if(o.common&&Math.ceil((e-t)/(a*o.size))<=s)return ft[r]}return ft[n-1]}function vu(i,t,e,s,n){for(let r=ft.length-1;r>=ft.indexOf(e);r--){const o=ft[r];if(Mi[o].common&&i._adapter.diff(n,s,o)>=t-1)return o}return ft[e?ft.indexOf(e):0]}function ku(i){for(let t=ft.indexOf(i)+1,e=ft.length;t<e;++t)if(Mi[ft[t]].common)return ft[t]}function Jn(i,t,e){if(!e)i[t]=!0;else if(e.length){const{lo:s,hi:n}=ns(e,t),r=e[s]>=t?e[s]:e[n];i[r]=!0}}function wu(i,t,e,s){const n=i._adapter,r=+n.startOf(t[0].value,s),o=t[t.length-1].value;let a,l;for(a=r;a<=o;a=+n.add(a,1,s))l=e[a],l>=0&&(t[l].major=!0);return t}function Qn(i,t,e){const s=[],n={},r=t.length;let o,a;for(o=0;o<r;++o)a=t[o],n[a]=o,s.push({value:a,major:!1});return r===0||!e?s:wu(i,s,n,e)}class ki extends de{constructor(t){super(t),this._cache={data:[],labels:[],all:[]},this._unit="day",this._majorUnit=void 0,this._offsets={},this._normalized=!1,this._parseOpts=void 0}init(t,e={}){const s=t.time||(t.time={}),n=this._adapter=new Oh._date(t.adapters.date);n.init(e),Oe(s.displayFormats,n.formats()),this._parseOpts={parser:s.parser,round:s.round,isoWeekday:s.isoWeekday},super.init(t),this._normalized=e.normalized}parse(t,e){return t===void 0?null:Gn(this,t)}beforeLayout(){super.beforeLayout(),this._cache={data:[],labels:[],all:[]}}determineDataLimits(){const t=this.options,e=this._adapter,s=t.time.unit||"day";let{min:n,max:r,minDefined:o,maxDefined:a}=this.getUserBounds();function l(h){!o&&!isNaN(h.min)&&(n=Math.min(n,h.min)),!a&&!isNaN(h.max)&&(r=Math.max(r,h.max))}(!o||!a)&&(l(this._getLabelBounds()),(t.bounds!=="ticks"||t.ticks.source!=="labels")&&l(this.getMinMax(!1))),n=xt(n)&&!isNaN(n)?n:+e.startOf(Date.now(),s),r=xt(r)&&!isNaN(r)?r:+e.endOf(Date.now(),s)+1,this.min=Math.min(n,r-1),this.max=Math.max(n+1,r)}_getLabelBounds(){const t=this.getLabelTimestamps();let e=Number.POSITIVE_INFINITY,s=Number.NEGATIVE_INFINITY;return t.length&&(e=t[0],s=t[t.length-1]),{min:e,max:s}}buildTicks(){const t=this.options,e=t.time,s=t.ticks,n=s.source==="labels"?this.getLabelTimestamps():this._generate();t.bounds==="ticks"&&n.length&&(this.min=this._userMin||n[0],this.max=this._userMax||n[n.length-1]);const r=this.min,o=this.max,a=qa(n,r,o);return this._unit=e.unit||(s.autoSkip?Zn(e.minUnit,this.min,this.max,this._getLabelCapacity(r)):vu(this,a.length,e.minUnit,this.min,this.max)),this._majorUnit=!s.major.enabled||this._unit==="year"?void 0:ku(this._unit),this.initOffsets(n),t.reverse&&a.reverse(),Qn(this,a,this._majorUnit)}afterAutoSkip(){this.options.offsetAfterAutoskip&&this.initOffsets(this.ticks.map(t=>+t.value))}initOffsets(t=[]){let e=0,s=0,n,r;this.options.offset&&t.length&&(n=this.getDecimalForValue(t[0]),t.length===1?e=1-n:e=(this.getDecimalForValue(t[1])-n)/2,r=this.getDecimalForValue(t[t.length-1]),t.length===1?s=r:s=(r-this.getDecimalForValue(t[t.length-2]))/2);const o=t.length<3?.5:.25;e=lt(e,0,o),s=lt(s,0,o),this._offsets={start:e,end:s,factor:1/(e+1+s)}}_generate(){const t=this._adapter,e=this.min,s=this.max,n=this.options,r=n.time,o=r.unit||Zn(r.minUnit,e,s,this._getLabelCapacity(e)),a=N(n.ticks.stepSize,1),l=o==="week"?r.isoWeekday:!1,h=Le(l)||l===!0,c={};let u=e,d,b;if(h&&(u=+t.startOf(u,"isoWeek",l)),u=+t.startOf(u,h?"day":o),t.diff(s,e,o)>1e5*a)throw new Error(e+" and "+s+" are too far apart with stepSize of "+a+" "+o);const g=n.ticks.source==="data"&&this.getDataTimestamps();for(d=u,b=0;d<s;d=+t.add(d,a,o),b++)Jn(c,d,g);return(d===s||n.bounds==="ticks"||b===1)&&Jn(c,d,g),Object.keys(c).sort(Kn).map(p=>+p)}getLabelForValue(t){const e=this._adapter,s=this.options.time;return s.tooltipFormat?e.format(t,s.tooltipFormat):e.format(t,s.displayFormats.datetime)}format(t,e){const n=this.options.time.displayFormats,r=this._unit,o=e||n[r];return this._adapter.format(t,o)}_tickFormatFunction(t,e,s,n){const r=this.options,o=r.ticks.callback;if(o)return G(o,[t,e,s],this);const a=r.time.displayFormats,l=this._unit,h=this._majorUnit,c=l&&a[l],u=h&&a[h],d=s[e],b=h&&u&&d&&d.major;return this._adapter.format(t,n||(b?u:c))}generateTickLabels(t){let e,s,n;for(e=0,s=t.length;e<s;++e)n=t[e],n.label=this._tickFormatFunction(n.value,e,t)}getDecimalForValue(t){return t===null?NaN:(t-this.min)/(this.max-this.min)}getPixelForValue(t){const e=this._offsets,s=this.getDecimalForValue(t);return this.getPixelForDecimal((e.start+s)*e.factor)}getValueForPixel(t){const e=this._offsets,s=this.getDecimalForPixel(t)/e.factor-e.end;return this.min+s*(this.max-this.min)}_getLabelSize(t){const e=this.options.ticks,s=this.ctx.measureText(t).width,n=Et(this.isHorizontal()?e.maxRotation:e.minRotation),r=Math.cos(n),o=Math.sin(n),a=this._resolveTickFontOptions(0).size;return{w:s*r+a*o,h:s*o+a*r}}_getLabelCapacity(t){const e=this.options.time,s=e.displayFormats,n=s[e.unit]||s.millisecond,r=this._tickFormatFunction(t,0,Qn(this,[t],this._majorUnit),n),o=this._getLabelSize(r),a=Math.floor(this.isHorizontal()?this.width/o.w:this.height/o.h)-1;return a>0?a:1}getDataTimestamps(){let t=this._cache.data||[],e,s;if(t.length)return t;const n=this.getMatchingVisibleMetas();if(this._normalized&&n.length)return this._cache.data=n[0].controller.getAllParsedValues(this);for(e=0,s=n.length;e<s;++e)t=t.concat(n[e].controller.getAllParsedValues(this));return this._cache.data=this.normalize(t)}getLabelTimestamps(){const t=this._cache.labels||[];let e,s;if(t.length)return t;const n=this.getLabels();for(e=0,s=n.length;e<s;++e)t.push(Gn(this,n[e]));return this._cache.labels=this._normalized?t:this.normalize(t)}normalize(t){return dr(t.sort(Kn))}}j(ki,"id","time"),j(ki,"defaults",{bounds:"data",adapters:{},time:{parser:!1,unit:!1,round:!1,isoWeekday:!1,minUnit:"millisecond",displayFormats:{}},ticks:{source:"auto",callback:!1,major:{enabled:!1}}});function oi(i,t,e){let s=0,n=i.length-1,r,o,a,l;e?(t>=i[s].pos&&t<=i[n].pos&&({lo:s,hi:n}=Zt(i,"pos",t)),{pos:r,time:a}=i[s],{pos:o,time:l}=i[n]):(t>=i[s].time&&t<=i[n].time&&({lo:s,hi:n}=Zt(i,"time",t)),{time:r,pos:a}=i[s],{time:o,pos:l}=i[n]);const h=o-r;return h?a+(l-a)*(t-r)/h:a}class tr extends ki{constructor(t){super(t),this._table=[],this._minPos=void 0,this._tableRange=void 0}initOffsets(){const t=this._getTimestampsForTable(),e=this._table=this.buildLookupTable(t);this._minPos=oi(e,this.min),this._tableRange=oi(e,this.max)-this._minPos,super.initOffsets(t)}buildLookupTable(t){const{min:e,max:s}=this,n=[],r=[];let o,a,l,h,c;for(o=0,a=t.length;o<a;++o)h=t[o],h>=e&&h<=s&&n.push(h);if(n.length<2)return[{time:e,pos:0},{time:s,pos:1}];for(o=0,a=n.length;o<a;++o)c=n[o+1],l=n[o-1],h=n[o],Math.round((c+l)/2)!==h&&r.push({time:h,pos:o/(a-1)});return r}_generate(){const t=this.min,e=this.max;let s=super.getDataTimestamps();return(!s.includes(t)||!s.length)&&s.splice(0,0,t),(!s.includes(e)||s.length===1)&&s.push(e),s.sort((n,r)=>n-r)}_getTimestampsForTable(){let t=this._cache.all||[];if(t.length)return t;const e=this.getDataTimestamps(),s=this.getLabelTimestamps();return e.length&&s.length?t=this.normalize(e.concat(s)):t=e.length?e:s,t=this._cache.all=t,t}getDecimalForValue(t){return(oi(this._table,t)-this._minPos)/this._tableRange}getValueForPixel(t){const e=this._offsets,s=this.getDecimalForPixel(t)/e.factor-e.end;return oi(this._table,s*this._tableRange+this._minPos,!0)}}j(tr,"id","timeseries"),j(tr,"defaults",ki.defaults);const Yr="label";function er(i,t){typeof i=="function"?i(t):i&&(i.current=t)}function Su(i,t){const e=i.options;e&&t&&Object.assign(e,t)}function Ur(i,t){i.labels=t}function Xr(i,t){let e=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Yr;const s=[];i.datasets=t.map(n=>{const r=i.datasets.find(o=>o[e]===n[e]);return!r||!n.data||s.includes(r)?{...n}:(s.push(r),Object.assign(r,n),r)})}function Mu(i){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Yr;const e={labels:[],datasets:[]};return Ur(e,i.labels),Xr(e,i.datasets,t),e}function Cu(i,t){const{height:e=150,width:s=300,redraw:n=!1,datasetIdKey:r,type:o,data:a,options:l,plugins:h=[],fallbackContent:c,updateMode:u,...d}=i,b=X.useRef(null),g=X.useRef(null),p=()=>{b.current&&(g.current=new be(b.current,{type:o,data:Mu(a,r),options:l&&{...l},plugins:h}),er(t,g.current))},x=()=>{er(t,null),g.current&&(g.current.destroy(),g.current=null)};return X.useEffect(()=>{!n&&g.current&&l&&Su(g.current,l)},[n,l]),X.useEffect(()=>{!n&&g.current&&Ur(g.current.config.data,a.labels)},[n,a.labels]),X.useEffect(()=>{!n&&g.current&&a.datasets&&Xr(g.current.config.data,a.datasets,r)},[n,a.datasets]),X.useEffect(()=>{g.current&&(n?(x(),setTimeout(p)):g.current.update(u))},[n,l,a.labels,a.datasets,u]),X.useEffect(()=>{g.current&&(x(),setTimeout(p))},[o]),X.useEffect(()=>(p(),()=>x()),[]),X.createElement("canvas",{ref:b,role:"img",height:e,width:s,...d},c)}const Pu=X.forwardRef(Cu);function ys(i,t){return be.register(t),X.forwardRef((e,s)=>X.createElement(Pu,{...e,ref:s,type:i}))}const Ou=ys("line",li),ju=ys("bar",ai),Ru=ys("doughnut",we);be.register(_i,vi,di,Vr,xs,ms);const Au=({data:i,options:t={},orientation:e="vertical",className:s})=>{const n={indexAxis:e==="horizontal"?"y":"x",responsive:!0,maintainAspectRatio:!1,plugins:{legend:{display:!0},...t.plugins},...t};return f.jsx("div",{className:s,style:{position:"relative",width:"100%",height:"100%",minHeight:"20rem"},children:f.jsx(ju,{data:i,options:n})})};be.register(Me,xs,ms);const Du=({data:i,options:t={},className:e})=>{const s={responsive:!0,maintainAspectRatio:!1,plugins:{legend:{position:"bottom",labels:{boxWidth:12,padding:15,font:{size:typeof window<"u"&&window.innerWidth<768?10:12}}},...t.plugins},...t};return f.jsx("div",{className:e,style:{position:"relative",width:"100%",height:"100%",minHeight:"20rem"},children:f.jsx(Ru,{data:i,options:s})})};be.register(_i,vi,ui,Ce,Vr,xs,ms);const Tu=({data:i,options:t={},className:e})=>{const s={responsive:!0,maintainAspectRatio:!1,plugins:{legend:{display:!0},...t.plugins},...t};return f.jsx("div",{className:e,style:{position:"relative",width:"100%",height:"100%",minHeight:"20rem"},children:f.jsx(Ou,{data:i,options:s})})};exports.Accordion=Mo;exports.Alert=Co;exports.BarGraph=Au;exports.Button=Lt;exports.Card=ir;exports.ContentTabs=aa;exports.DoughnutGraph=Du;exports.FileDropzone=Lo;exports.Header=No;exports.InfoCard=jo;exports.Input=Io;exports.LineGraph=Tu;exports.MaskedInput=Fo;exports.MetricCard=Vo;exports.Modal=$o;exports.NavButton=Yo;exports.Navigation=Xo;exports.Popover=qo;exports.RadioButton=Ko;exports.Selector=Go;exports.SelectorMultiple=Zo;exports.Sheets=ia;exports.Sidebar=oa;exports.Spinner=Qi;exports.StatusButton=Po;exports.StatusLabel=Ho;exports.Tabs=la;exports.Text=Jt;exports.UtilizationLabel=Wo;exports.Wrapper=sr;
|