Вход Регистрация
Файл: public/build/assets/chartist-BsnN06Nv.js
Строк: 1258
<?php
var e={svg:`http://www.w3.org/2000/svg`,xmlns:`http://www.w3.org/2000/xmlns/`,xhtml:`http://www.w3.org/1999/xhtml`,xlink:`http://www.w3.org/1999/xlink`,ct:`http://gionkunz.github.com/chartist-js/ct`},t={"&":`&amp;`,"<":`&lt;`,">":`&gt;`,'"':`&quot;`,"'":`&#039;`};function n(e,t){return typeof e==`number`?e+t:e}function r(e){if(typeof e==`string`){let t=/^(d+)s*(.*)$/g.exec(e);return{value:t?+t[1]:0,unit:t?.[2]||void 0}}return{value:Number(e)}}function i(e){return String.fromCharCode(97+e%26)}var a=2221e-19;function o(e){return Math.floor(Math.log(Math.abs(e))/Math.LN10)}function s(e,t,n){return t/n.range*e}function c(e,t){let n=10**(t||8);return Math.round(e*n)/n}function l(e){if(e===1)return e;function t(e,n){return e%n===0?n:t(n,e%n)}function n(e){return e*e+1}let r=2,i=2,a;if(e%2==0)return 2;do r=n(r)%e,i=n(n(i))%e,a=t(Math.abs(r-i),e);while(a===1);return a}function u(e,t,n){let r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,i={high:t.high,low:t.low,valueRange:0,oom:0,step:0,min:0,max:0,range:0,numberOfSteps:0,values:[]};i.valueRange=i.high-i.low,i.oom=o(i.valueRange),i.step=10**i.oom,i.min=Math.floor(i.low/i.step)*i.step,i.max=Math.ceil(i.high/i.step)*i.step,i.range=i.max-i.min,i.numberOfSteps=Math.round(i.range/i.step);let u=s(e,i.step,i)<n,d=r?l(i.range):0;if(r&&s(e,1,i)>=n)i.step=1;else if(r&&d<i.step&&s(e,d,i)>=n)i.step=d;else{let t=0;for(;;){if(u&&s(e,i.step,i)<=n)i.step*=2;else if(!u&&s(e,i.step/2,i)>=n){if(i.step/=2,r&&i.step%1!=0){i.step*=2;break}}else break;if(t++>1e3)throw Error(`Exceeded maximum number of iterations while optimizing scale step!`)}}i.step=Math.max(i.step,a);function f(e,t){return e===(e+=t)&&(e*=1+(t>0?a:-2221e-19)),e}let p=i.min,m=i.max;for(;p+i.step<=i.low;)p=f(p,i.step);for(;m-i.step>=i.high;)m=f(m,-i.step);i.min=p,i.max=m,i.range=i.max-i.min;let h=[];for(let e=i.min;e<=i.max;e=f(e,i.step)){let t=c(e);t!==h[h.length-1]&&h.push(t)}return i.values=h,i}function d(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var t=[...arguments].slice(1);for(let n=0;n<t.length;n++){let r=t[n],i=Object.getPrototypeOf(e);for(let t in r){if(i!==null&&t in i)continue;let n=r[t];typeof n==`object`&&n&&!(instanceof Array)?e[t]=d(e[t],n):e[t]=n}}return e}var f=e=>e;function p(e,t){return Array.from({length:e},t?(e,n)=>t(n):()=>void 0)}function m(e,t){return typeof e==`object`&&!!e&&Reflect.has(e,t)}function h(e){return e!==null&&isFinite(e)}function g(e){return!e&&e!==0}function _(e){return h(e)?Number(e):void 0}function v(e){return Array.isArray(e)?e.every(Array.isArray):!1}function y(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,r=0;e[n?`reduceRight`:`reduce`]((e,n,i)=>t(n,r++,i),void 0)}function ee(e,t){let n=Array.isArray(e)?e[t]:m(e,`data`)?e.data[t]:null;return m(n,`meta`)?n.meta:void 0}function b(e){return e==null||typeof e==`number`&&isNaN(e)}function te(e){return Array.isArray(e)&&e.every(e=>Array.isArray(e)||m(e,`data`))}function x(e){return typeof e==`object`&&!!e&&(Reflect.has(e,`x`)||Reflect.has(e,`y`))}function S(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:`y`;return x(e)&&m(e,t)?_(e[t]):_(e)}function C(e,t,n){t={...t,...n?n===`x`?t.axisX:t.axisY:{}};let r={high:t.high===void 0?-Number.MAX_VALUE:+t.high,low:t.low===void 0?Number.MAX_VALUE:+t.low},i=t.high===void 0,a=t.low===void 0;function o(e){if(!b(e))if(Array.isArray(e))for(let t=0;t<e.length;t++)o(e[t]);else{let t=Number(n&&m(e,n)?e[n]:e);i&&t>r.high&&(r.high=t),a&&t<r.low&&(r.low=t)}}return(i||a)&&o(e),(t.referenceValue||t.referenceValue===0)&&(r.high=Math.max(t.referenceValue,r.high),r.low=Math.min(t.referenceValue,r.low)),r.high<=r.low&&(r.low===0?r.high=1:r.low<0?r.high=0:(r.high>0||(r.high=1),r.low=0)),r}function w(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,n=arguments.length>2?arguments[2]:void 0,r=arguments.length>3?arguments[3]:void 0,i,a={labels:(e.labels||[]).slice(),series:k(e.series,n,r)},o=a.labels.length;return v(a.series)?(i=Math.max(o,...a.series.map(e=>e.length)),a.series.forEach(e=>{e.push(...p(Math.max(0,i-e.length)))})):i=a.series.length,a.labels.push(...p(Math.max(0,i-o),()=>``)),t&&T(a),a}function T(e){var t;(t=e.labels)==null||t.reverse(),e.series.reverse();for(let t of e.series)m(t,`data`)?t.data.reverse():Array.isArray(t)&&t.reverse()}function E(e,t){let n,r;if(typeof e!=`object`){let i=_(e);t===`x`?n=i:r=i}else m(e,`x`)&&(n=_(e.x)),m(e,`y`)&&(r=_(e.y));if(!(n===void 0&&r===void 0))return{x:n,y:r}}function D(e,t){if(!b(e))return t?E(e,t):_(e)}function O(e,t){return Array.isArray(e)?e.map(e=>m(e,`value`)?D(e.value,t):D(e,t)):O(e.data,t)}function k(e,t,n){if(te(e))return e.map(e=>O(e,t));let r=O(e,t);return n?r.map(e=>[e]):r}function A(e,t,n){let r={increasingX:!1,fillHoles:!1,...n},i=[],a=!0;for(let n=0;n<e.length;n+=2)S(t[n/2].value)===void 0?r.fillHoles||(a=!0):(r.increasingX&&n>=2&&e[n]<=e[n-2]&&(a=!0),a&&=(i.push({pathCoordinates:[],valueData:[]}),!1),i[i.length-1].pathCoordinates.push(e[n],e[n+1]),i[i.length-1].valueData.push(t[n/2]));return i}function j(e){let n=``;return e==null?e:(n=typeof e==`number`?``+e:typeof e==`object`?JSON.stringify({data:e}):String(e),Object.keys(t).reduce((e,n)=>e.replaceAll(n,t[n]),n))}var M=class{call(e,t){return this.svgElements.forEach(n=>Reflect.apply(n[e],n,t)),this}attr(){var e=[...arguments];return this.call(`attr`,e)}elem(){var e=[...arguments];return this.call(`elem`,e)}root(){var e=[...arguments];return this.call(`root`,e)}getNode(){var e=[...arguments];return this.call(`getNode`,e)}foreignObject(){var e=[...arguments];return this.call(`foreignObject`,e)}text(){var e=[...arguments];return this.call(`text`,e)}empty(){var e=[...arguments];return this.call(`empty`,e)}remove(){var e=[...arguments];return this.call(`remove`,e)}addClass(){var e=[...arguments];return this.call(`addClass`,e)}removeClass(){var e=[...arguments];return this.call(`removeClass`,e)}removeAllClasses(){var e=[...arguments];return this.call(`removeAllClasses`,e)}animate(){var e=[...arguments];return this.call(`animate`,e)}constructor(e){this.svgElements=[];for(let t=0;t<e.length;t++)this.svgElements.push(new F(e[t]))}},N={easeInSine:[.47,0,.745,.715],easeOutSine:[.39,.575,.565,1],easeInOutSine:[.445,.05,.55,.95],easeInQuad:[.55,.085,.68,.53],easeOutQuad:[.25,.46,.45,.94],easeInOutQuad:[.455,.03,.515,.955],easeInCubic:[.55,.055,.675,.19],easeOutCubic:[.215,.61,.355,1],easeInOutCubic:[.645,.045,.355,1],easeInQuart:[.895,.03,.685,.22],easeOutQuart:[.165,.84,.44,1],easeInOutQuart:[.77,0,.175,1],easeInQuint:[.755,.05,.855,.06],easeOutQuint:[.23,1,.32,1],easeInOutQuint:[.86,0,.07,1],easeInExpo:[.95,.05,.795,.035],easeOutExpo:[.19,1,.22,1],easeInOutExpo:[1,0,0,1],easeInCirc:[.6,.04,.98,.335],easeOutCirc:[.075,.82,.165,1],easeInOutCirc:[.785,.135,.15,.86],easeInBack:[.6,-.28,.735,.045],easeOutBack:[.175,.885,.32,1.275],easeInOutBack:[.68,-.55,.265,1.55]};function P(e,t,i){let a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,o=arguments.length>4?arguments[4]:void 0,{easing:s,...c}=i,l={},u,d;s&&(u=Array.isArray(s)?s:N[s]),c.begin=n(c.begin,`ms`),c.dur=n(c.dur,`ms`),u&&(c.calcMode=`spline`,c.keySplines=u.join(` `),c.keyTimes=`0;1`),a&&(c.fill=`freeze`,l[t]=c.from,e.attr(l),d=r(c.begin||0).value,c.begin=`indefinite`);let f=e.elem(`animate`,{attributeName:t,...c});a&&setTimeout(()=>{try{f._node.beginElement()}catch{l[t]=c.to,e.attr(l),f.remove()}},d);let p=f.getNode();o&&p.addEventListener(`beginEvent`,()=>o.emit(`animationBegin`,{element:e,animate:p,params:i})),p.addEventListener(`endEvent`,()=>{o&&o.emit(`animationEnd`,{element:e,animate:p,params:i}),a&&(l[t]=c.to,e.attr(l),f.remove())})}var F=class t{attr(t,n){return typeof t==`string`?n?this._node.getAttributeNS(n,t):this._node.getAttribute(t):(Object.keys(t).forEach(n=>{if(t[n]!==void 0)if(n.indexOf(`:`)!==-1){let r=n.split(`:`);this._node.setAttributeNS(e[r[0]],n,String(t[n]))}else this._node.setAttribute(n,String(t[n]))}),this)}elem(e,n,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;return new t(e,n,r,this,i)}parent(){return this._node.parentNode instanceof SVGElement?new t(this._node.parentNode):null}root(){let e=this._node;for(;e.nodeName!==`svg`&&e.parentElement;)e=e.parentElement;return new t(e)}querySelector(e){let n=this._node.querySelector(e);return n?new t(n):null}querySelectorAll(e){return new M(this._node.querySelectorAll(e))}getNode(){return this._node}foreignObject(t,n,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,a;if(typeof t==`string`){let e=document.createElement(`div`);e.innerHTML=t,a=e.firstChild}else a=t;instanceof Element&&a.setAttribute(`xmlns`,e.xmlns);let o=this.elem(`foreignObject`,n,r,i);return o._node.appendChild(a),o}text(e){return this._node.appendChild(document.createTextNode(e)),this}empty(){for(;this._node.firstChild;)this._node.removeChild(this._node.firstChild);return this}remove(){var e;return(e=this._node.parentNode)==null||e.removeChild(this._node),this.parent()}replace(e){var t;return(t=this._node.parentNode)==null||t.replaceChild(e._node,this._node),e}append(e){return arguments.length>1&&arguments[1]!==void 0&&arguments[1]&&this._node.firstChild?this._node.insertBefore(e._node,this._node.firstChild):this._node.appendChild(e._node),this}classes(){let e=this._node.getAttribute(`class`);return e?e.trim().split(/s+/):[]}addClass(e){return this._node.setAttribute(`class`,this.classes().concat(e.trim().split(/s+/)).filter(function(e,t,n){return n.indexOf(e)===t}).join(` `)),this}removeClass(e){let t=e.trim().split(/s+/);return this._node.setAttribute(`class`,this.classes().filter(e=>t.indexOf(e)===-1).join(` `)),this}removeAllClasses(){return this._node.setAttribute(`class`,``),this}height(){return this._node.clientHeight}width(){return this._node.clientWidth}animate(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,n=arguments.length>2?arguments[2]:void 0;return Object.keys(e).forEach(r=>{let i=e[r];Array.isArray(i)?i.forEach(e=>P(this,r,e,!1,n)):P(this,r,i,t,n)}),this}constructor(t,n,r,i,a=!1){instanceof Element?this._node=t:(this._node=document.createElementNS(e.svg,t),t===`svg`&&this.attr({"xmlns:ct":e.ct})),n&&this.attr(n),r&&this.addClass(r),i&&(a&&i._node.firstChild?i._node.insertBefore(this._node,i._node.firstChild):i._node.appendChild(this._node))}};F.Easing=N;function I(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:`100%`,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:`100%`,i=arguments.length>3?arguments[3]:void 0,a=arguments.length>4?arguments[4]:void 0;if(!t)throw Error(`Container element is not found`);Array.from(t.querySelectorAll(`svg`)).filter(t=>t.getAttributeNS(e.xmlns,`ct`)).forEach(e=>t.removeChild(e));let o=new F(`svg`).attr({width:n,height:r}).attr({style:`width: ${n}; height: ${r};`});return i&&o.addClass(i),a&&o.attr({viewBox:`0 0 ${a.width} ${a.height}`}),t.appendChild(o.getNode()),o}function ne(e){return typeof e==`number`?{top:e,right:e,bottom:e,left:e}:e===void 0?{top:0,right:0,bottom:0,left:0}:{top:typeof e.top==`number`?e.top:0,right:typeof e.right==`number`?e.right:0,bottom:typeof e.bottom==`number`?e.bottom:0,left:typeof e.left==`number`?e.left:0}}function re(e,t){let n=!!(t.axisX||t.axisY),i=t.axisY?.offset||0,a=t.axisX?.offset||0,o=t.axisY?.position,s=t.axisX?.position,c=t.viewBox?.width||e.width()||r(t.width).value||0,l=t.viewBox?.height||e.height()||r(t.height).value||0,u=ne(t.chartPadding);c=Math.max(c,i+u.left+u.right),l=Math.max(l,a+u.top+u.bottom);let d={x1:0,x2:0,y1:0,y2:0,padding:u,width(){return this.x2-this.x1},height(){return this.y1-this.y2}};return n?(s===`start`?(d.y2=u.top+a,d.y1=Math.max(l-u.bottom,d.y2+1)):(d.y2=u.top,d.y1=Math.max(l-u.bottom-a,d.y2+1)),o===`start`?(d.x1=u.left+i,d.x2=Math.max(c-u.right,d.x1+1)):(d.x1=u.left,d.x2=Math.max(c-u.right-i,d.x1+1))):(d.x1=u.left,d.x2=Math.max(c-u.right,d.x1+1),d.y2=u.top,d.y1=Math.max(l-u.bottom,d.y2+1)),d}function L(e,t,n,r,i,a,o,s){let c={[`${n.units.pos}1`]:e,[`${n.units.pos}2`]:e,[`${n.counterUnits.pos}1`]:r,[`${n.counterUnits.pos}2`]:r+i},l=a.elem(`line`,c,o.join(` `));s.emit(`draw`,{type:`grid`,axis:n,index:t,group:a,element:l,...c})}function R(e,t,n,r){let i=e.elem(`rect`,{x:t.x1,y:t.y2,width:t.width(),height:t.height()},n,!0);r.emit(`draw`,{type:`gridBackground`,group:e,element:i})}function z(e,t,n,r,i,a,o,s,c,l){let u={[i.units.pos]:e+o[i.units.pos],[i.counterUnits.pos]:o[i.counterUnits.pos],[i.units.len]:t,[i.counterUnits.len]:Math.max(0,a-10)},d=Math.round(u[i.units.len]),f=Math.round(u[i.counterUnits.len]),p=document.createElement(`span`);p.className=c.join(` `),p.style[i.units.len]=d+`px`,p.style[i.counterUnits.len]=f+`px`,p.textContent=String(r);let m=s.foreignObject(p,{style:`overflow: visible;`,...u});l.emit(`draw`,{type:`label`,axis:i,index:n,group:s,element:m,text:r,...u})}function B(e,t,n){let r,i=[];function a(i){let a=r;r=d({},e),t&&t.forEach(e=>{window.matchMedia(e[0]).matches&&(r=d({},r,e[1]))}),n&&i&&n.emit(`optionsChanged`,{previousOptions:a,currentOptions:r})}function o(){i.forEach(e=>e.removeEventListener(`change`,a))}if(window.matchMedia)t&&t.forEach(e=>{let t=window.matchMedia(e[0]);t.addEventListener(`change`,a),i.push(t)});else throw Error(`window.matchMedia not found! Make sure you're using a polyfill.`);return a(),{removeMediaQueryListeners:o,getCurrentOptions(){return r}}}var V={m:[`x`,`y`],l:[`x`,`y`],c:[`x1`,`y1`,`x2`,`y2`,`x`,`y`],a:[`rx`,`ry`,`xAr`,`lAf`,`sf`,`x`,`y`]},H={accuracy:3};function U(e,t,n,r,i,a){let o={command:i?e.toLowerCase():e.toUpperCase(),...t,...a?{data:a}:{}};n.splice(r,0,o)}function W(e,t){e.forEach((n,r)=>{V[n.command.toLowerCase()].forEach((i,a)=>{t(n,i,r,a,e)})})}var G=class e{static join(t){let n=new e(arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,arguments.length>2?arguments[2]:void 0);for(let e=0;e<t.length;e++){let r=t[e];for(let e=0;e<r.pathElements.length;e++)n.pathElements.push(r.pathElements[e])}return n}position(e){return e===void 0?this.pos:(this.pos=Math.max(0,Math.min(this.pathElements.length,e)),this)}remove(e){return this.pathElements.splice(this.pos,e),this}move(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,r=arguments.length>3?arguments[3]:void 0;return U(`M`,{x:+e,y:+t},this.pathElements,this.pos++,n,r),this}line(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,r=arguments.length>3?arguments[3]:void 0;return U(`L`,{x:+e,y:+t},this.pathElements,this.pos++,n,r),this}curve(e,t,n,r,i,a){let o=arguments.length>6&&arguments[6]!==void 0?arguments[6]:!1,s=arguments.length>7?arguments[7]:void 0;return U(`C`,{x1:+e,y1:+t,x2:+n,y2:+r,x:+i,y:+a},this.pathElements,this.pos++,o,s),this}arc(e,t,n,r,i,a,o){let s=arguments.length>7&&arguments[7]!==void 0?arguments[7]:!1,c=arguments.length>8?arguments[8]:void 0;return U(`A`,{rx:e,ry:t,xAr:n,lAf:r,sf:i,x:a,y:o},this.pathElements,this.pos++,s,c),this}parse(e){let t=e.replace(/([A-Za-z])(-?[0-9])/g,`$1 $2`).replace(/([0-9])([A-Za-z])/g,`$1 $2`).split(/[s,]+/).reduce((e,t)=>(t.match(/[A-Za-z]/)&&e.push([]),e[e.length-1].push(t),e),[]);t[t.length-1][0].toUpperCase()===`Z`&&t.pop();let n=t.map(e=>{let t=e.shift();return{command:t,...V[t.toLowerCase()].reduce((t,n,r)=>(t[n]=+e[r],t),{})}});return this.pathElements.splice(this.pos,0,...n),this.pos+=n.length,this}stringify(){let e=10**this.options.accuracy;return this.pathElements.reduce((t,n)=>{let r=V[n.command.toLowerCase()].map(t=>{let r=n[t];return this.options.accuracy?Math.round(r*e)/e:r});return t+n.command+r.join(`,`)},``)+(this.close?`Z`:``)}scale(e,t){return W(this.pathElements,(n,r)=>{n[r]*=r[0]===`x`?e:t}),this}translate(e,t){return W(this.pathElements,(n,r)=>{n[r]+=r[0]===`x`?e:t}),this}transform(e){return W(this.pathElements,(t,n,r,i,a)=>{let o=e(t,n,r,i,a);(o||o===0)&&(t[n]=o)}),this}clone(){let t=new e((arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1)||this.close);return t.pos=this.pos,t.pathElements=this.pathElements.slice().map(e=>({...e})),t.options={...this.options},t}splitByCommand(t){let n=[new e];return this.pathElements.forEach(r=>{r.command===t.toUpperCase()&&n[n.length-1].pathElements.length!==0&&n.push(new e),n[n.length-1].pathElements.push(r)}),n}constructor(e=!1,t){this.close=e,this.pathElements=[],this.pos=0,this.options={...H,...t}}};function K(e){let t={fillHoles:!1,...e};return function(e,n){let r=new G,i=!0;for(let a=0;a<e.length;a+=2){let o=e[a],s=e[a+1],c=n[a/2];S(c.value)===void 0?t.fillHoles||(i=!0):(i?r.move(o,s,!1,c):r.line(o,s,!1,c),i=!1)}return r}}function q(e){let t={fillHoles:!1,...e};return function e(n,r){let i=A(n,r,{fillHoles:t.fillHoles,increasingX:!0});if(!i.length)return K()([],[]);if(i.length>1)return G.join(i.map(t=>e(t.pathCoordinates,t.valueData)));{if(n=i[0].pathCoordinates,r=i[0].valueData,n.length<=4)return K()(n,r);let e=[],t=[],a=n.length/2,o=[],s=[],c=[],l=[];for(let r=0;r<a;r++)e[r]=n[r*2],t[r]=n[r*2+1];for(let n=0;n<a-1;n++)c[n]=t[n+1]-t[n],l[n]=e[n+1]-e[n],s[n]=c[n]/l[n];o[0]=s[0],o[a-1]=s[a-2];for(let e=1;e<a-1;e++)s[e]===0||s[e-1]===0||s[e-1]>0!=s[e]>0?o[e]=0:(o[e]=3*(l[e-1]+l[e])/((2*l[e]+l[e-1])/s[e-1]+(l[e]+2*l[e-1])/s[e]),isFinite(o[e])||(o[e]=0));let u=new G().move(e[0],t[0],!1,r[0]);for(let n=0;n<a-1;n++)u.curve(e[n]+l[n]/3,t[n]+o[n]*l[n]/3,e[n+1]-l[n]/3,t[n+1]-o[n+1]*l[n]/3,e[n+1],t[n+1],!1,r[n+1]);return u}}}var J=class{on(e,t){let{allListeners:n,listeners:r}=this;e===`*`?n.add(t):(r.has(e)||r.set(e,new Set),r.get(e).add(t))}off(e,t){let{allListeners:n,listeners:r}=this;if(e===`*`)t?n.delete(t):n.clear();else if(r.has(e)){let n=r.get(e);t?n.delete(t):n.clear(),n.size||r.delete(e)}}emit(e,t){let{allListeners:n,listeners:r}=this;r.has(e)&&r.get(e).forEach(e=>e(t)),n.forEach(n=>n(e,t))}constructor(){this.listeners=new Map,this.allListeners=new Set}},Y=new WeakMap,ie=class{update(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;if(e&&(this.data=e||{},this.data.labels=this.data.labels||[],this.data.series=this.data.series||[],this.eventEmitter.emit(`data`,{type:`update`,data:this.data})),t&&(this.options=d({},n?this.options:this.defaultOptions,t),!this.initializeTimeoutId)){var r;(r=this.optionsProvider)==null||r.removeMediaQueryListeners(),this.optionsProvider=B(this.options,this.responsiveOptions,this.eventEmitter)}return!this.initializeTimeoutId&&this.optionsProvider&&this.createChart(this.optionsProvider.getCurrentOptions()),this}detach(){if(this.initializeTimeoutId)window.clearTimeout(this.initializeTimeoutId);else{var e;window.removeEventListener(`resize`,this.resizeListener),(e=this.optionsProvider)==null||e.removeMediaQueryListeners()}return Y.delete(this.container),this}on(e,t){return this.eventEmitter.on(e,t),this}off(e,t){return this.eventEmitter.off(e,t),this}initialize(){window.addEventListener(`resize`,this.resizeListener),this.optionsProvider=B(this.options,this.responsiveOptions,this.eventEmitter),this.eventEmitter.on(`optionsChanged`,()=>this.update()),this.options.plugins&&this.options.plugins.forEach(e=>{Array.isArray(e)?e[0](this,e[1]):e(this)}),this.eventEmitter.emit(`data`,{type:`initial`,data:this.data}),this.createChart(this.optionsProvider.getCurrentOptions()),this.initializeTimeoutId=null}constructor(e,t,n,r,i){this.data=t,this.defaultOptions=n,this.options=r,this.responsiveOptions=i,this.eventEmitter=new J,this.resizeListener=()=>this.update(),this.initializeTimeoutId=setTimeout(()=>this.initialize(),0);let a=typeof e==`string`?document.querySelector(e):e;if(!a)throw Error(`Target element ${typeof e==`string`?`"${e}"`:``} is not found`);this.container=a;let o=Y.get(a);o&&o.detach(),Y.set(a,this)}},X={x:{pos:`x`,len:`width`,dir:`horizontal`,rectStart:`x1`,rectEnd:`x2`,rectOffset:`y2`},y:{pos:`y`,len:`height`,dir:`vertical`,rectStart:`y2`,rectEnd:`y1`,rectOffset:`x1`}},Z=class{createGridAndLabels(e,t,n,r){let i=this.units.pos===`x`?n.axisX:n.axisY,a=this.ticks.map((e,t)=>this.projectValue(e,t)),o=this.ticks.map(i.labelInterpolationFnc);a.forEach((s,c)=>{let l=o[c],u={x:0,y:0},d;d=a[c+1]?a[c+1]-s:Math.max(this.axisLength-s,this.axisLength/this.ticks.length),!(l!==``&&g(l))&&(this.units.pos===`x`?(s=this.chartRect.x1+s,u.x=n.axisX.labelOffset.x,n.axisX.position===`start`?u.y=this.chartRect.padding.top+n.axisX.labelOffset.y+5:u.y=this.chartRect.y1+n.axisX.labelOffset.y+5):(s=this.chartRect.y1-s,u.y=n.axisY.labelOffset.y-d,n.axisY.position===`start`?u.x=this.chartRect.padding.left+n.axisY.labelOffset.x:u.x=this.chartRect.x2+n.axisY.labelOffset.x+10),i.showGrid&&L(s,c,this,this.gridOffset,this.chartRect[this.counterUnits.len](),e,[n.classNames.grid,n.classNames[this.units.dir]],r),i.showLabel&&z(s,d,c,l,this,i.offset,u,t,[n.classNames.label,n.classNames[this.units.dir],i.position===`start`?n.classNames[i.position]:n.classNames.end],r))})}constructor(e,t,n){this.units=e,this.chartRect=t,this.ticks=n,this.counterUnits=e===X.x?X.y:X.x,this.axisLength=t[this.units.rectEnd]-t[this.units.rectStart],this.gridOffset=t[this.units.rectOffset]}},ae=class extends Z{projectValue(e){let t=Number(S(e,this.units.pos));return this.axisLength*(t-this.bounds.min)/this.bounds.range}constructor(e,t,n,r){let i=r.highLow||C(t,r,e.pos),a=u(n[e.rectEnd]-n[e.rectStart],i,r.scaleMinSpace||20,r.onlyInteger),o={min:a.min,max:a.max};super(e,n,a.values),this.bounds=a,this.range=o}},oe=class extends Z{projectValue(e,t){return this.stepLength*t}constructor(e,t,n,r){let i=r.ticks||[];super(e,n,i);let a=Math.max(1,i.length-+!!r.stretch);this.stepLength=this.axisLength/a,this.stretch=!!r.stretch}};function Q(e,t,n){if(m(e,`name`)&&e.name&&t.series?.[e.name]){let r=(t?.series[e.name])[n];return r===void 0?t[n]:r}else return t[n]}var $={axisX:{offset:30,position:`end`,labelOffset:{x:0,y:0},showLabel:!0,showGrid:!0,labelInterpolationFnc:f,type:void 0},axisY:{offset:40,position:`start`,labelOffset:{x:0,y:0},showLabel:!0,showGrid:!0,labelInterpolationFnc:f,type:void 0,scaleMinSpace:20,onlyInteger:!1},width:void 0,height:void 0,showLine:!0,showPoint:!0,showArea:!1,areaBase:0,lineSmooth:!0,showGridBackground:!1,low:void 0,high:void 0,chartPadding:{top:15,right:15,bottom:5,left:10},fullWidth:!1,reverseData:!1,classNames:{chart:`ct-chart-line`,label:`ct-label`,labelGroup:`ct-labels`,series:`ct-series`,line:`ct-line`,point:`ct-point`,area:`ct-area`,grid:`ct-grid`,gridGroup:`ct-grids`,gridBackground:`ct-grid-background`,vertical:`ct-vertical`,horizontal:`ct-horizontal`,start:`ct-start`,end:`ct-end`}};window.LineChart=class extends ie{createChart(e){let{data:t}=this,n=w(t,e.reverseData,!0),r=I(this.container,e.width,e.height,e.classNames.chart,e.viewBox);this.svg=r;let a=r.elem(`g`).addClass(e.classNames.gridGroup),o=r.elem(`g`),s=r.elem(`g`).addClass(e.classNames.labelGroup),c=re(r,e),l,u;l=e.axisX.type===void 0?new oe(X.x,n.series,c,{...e.axisX,ticks:n.labels,stretch:e.fullWidth}):new e.axisX.type(X.x,n.series,c,e.axisX),u=e.axisY.type===void 0?new ae(X.y,n.series,c,{...e.axisY,high:h(e.high)?e.high:e.axisY.high,low:h(e.low)?e.low:e.axisY.low}):new e.axisY.type(X.y,n.series,c,e.axisY),l.createGridAndLabels(a,s,e,this.eventEmitter),u.createGridAndLabels(a,s,e,this.eventEmitter),e.showGridBackground&&R(a,c,e.classNames.gridBackground,this.eventEmitter),y(t.series,(t,r)=>{let a=o.elem(`g`),s=m(t,`name`)&&t.name,d=m(t,`className`)&&t.className,f=m(t,`meta`)?t.meta:void 0;s&&a.attr({"ct:series-name":s}),f&&a.attr({"ct:meta":j(f)}),a.addClass([e.classNames.series,d||`${e.classNames.series}-${i(r)}`].join(` `));let p=[],g=[];n.series[r].forEach((e,i)=>{let a={x:c.x1+l.projectValue(e,i,n.series[r]),y:c.y1-u.projectValue(e,i,n.series[r])};p.push(a.x,a.y),g.push({value:e,valueIndex:i,meta:ee(t,i)})});let _={lineSmooth:Q(t,e,`lineSmooth`),showPoint:Q(t,e,`showPoint`),showLine:Q(t,e,`showLine`),showArea:Q(t,e,`showArea`),areaBase:Q(t,e,`areaBase`)},v;v=typeof _.lineSmooth==`function`?_.lineSmooth:_.lineSmooth?q():K();let y=v(p,g);if(_.showPoint&&y.pathElements.forEach(n=>{let{data:i}=n,o=a.elem(`line`,{x1:n.x,y1:n.y,x2:n.x+.01,y2:n.y},e.classNames.point);if(i){let e,t;m(i.value,`x`)&&(e=i.value.x),m(i.value,`y`)&&(t=i.value.y),o.attr({"ct:value":[e,t].filter(h).join(`,`),"ct:meta":j(i.meta)})}this.eventEmitter.emit(`draw`,{type:`point`,value:i?.value,index:i?.valueIndex||0,meta:i?.meta,series:t,seriesIndex:r,axisX:l,axisY:u,group:a,element:o,x:n.x,y:n.y,chartRect:c})}),_.showLine){let i=a.elem(`path`,{d:y.stringify()},e.classNames.line,!0);this.eventEmitter.emit(`draw`,{type:`line`,values:n.series[r],path:y.clone(),chartRect:c,index:r,series:t,seriesIndex:r,meta:f,axisX:l,axisY:u,group:a,element:i})}if(_.showArea&&u.range){let i=Math.max(Math.min(_.areaBase,u.range.max),u.range.min),o=c.y1-u.projectValue(i);y.splitByCommand(`M`).filter(e=>e.pathElements.length>1).map(e=>{let t=e.pathElements[0],n=e.pathElements[e.pathElements.length-1];return e.clone(!0).position(0).remove(1).move(t.x,o).line(t.x,t.y).position(e.pathElements.length+1).line(n.x,o)}).forEach(i=>{let o=a.elem(`path`,{d:i.stringify()},e.classNames.area,!0);this.eventEmitter.emit(`draw`,{type:`area`,values:n.series[r],path:i.clone(),series:t,seriesIndex:r,axisX:l,axisY:u,chartRect:c,index:r,group:a,element:o,meta:f})})}},e.reverseData),this.eventEmitter.emit(`created`,{chartRect:c,axisX:l,axisY:u,svg:r,options:e})}constructor(e,t,n,r){super(e,t,$,d({},$,n),r),this.data=t}};
?>
Онлайн: 2
Реклама