2026-07-15 13:20:16 +03:30
/*! *****************************************************************************
Copyright (c) Microsoft Corporation.
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.
***************************************************************************** */ var Ad = function ( r , e ){ return Ad = Object . setPrototypeOf || { __proto__ : []} instanceof Array && function ( t , a ){ t . __proto__ = a } || function ( t , a ){ for ( var n in a ) Object . prototype . hasOwnProperty . call ( a , n ) && ( t [ n ] = a [ n ])}, Ad ( r , e )}; function B ( r , e ){ if ( typeof e != "function" && e !== null ) throw new TypeError ( "Class extends value " + String ( e ) + " is not a constructor or null" ); Ad ( r , e ); function t (){ this . constructor = r } r . prototype = e === null ? Object . create ( e ) : ( t . prototype = e . prototype , new t )} var kR = function (){ function r (){ this . firefox =! 1 , this . ie =! 1 , this . edge =! 1 , this . newEdge =! 1 , this . weChat =! 1 } return r }(), ER = function (){ function r (){ this . browser = new kR , this . node =! 1 , this . wxa =! 1 , this . worker =! 1 , this . svgSupported =! 1 , this . touchEventsSupported =! 1 , this . pointerEventsSupported =! 1 , this . domSupported =! 1 , this . transformSupported =! 1 , this . transform3dSupported =! 1 , this . hasGlobalWindow = typeof window < "u" } return r }(), Qa = new ER ; typeof wx == "object" && typeof wx . getSystemInfoSync == "function" ? ( Qa . wxa =! 0 , Qa . touchEventsSupported =! 0 ) : typeof document > "u" && typeof self < "u" ? Qa . worker =! 0 :! Qa . hasGlobalWindow || "Deno" in window || typeof navigator < "u" && typeof navigator . userAgent == "string" && navigator . userAgent . indexOf ( "Node.js" ) >- 1 ? ( Qa . node =! 0 , Qa . svgSupported =! 0 ) : OR ( navigator . userAgent , Qa ); function OR ( r , e ){ var t = e . browser , a = r . match ( /Firefox\/([\d.]+)/ ), n = r . match ( /MSIE\s([\d.]+)/ ) || r . match ( /Trident\/.+?rv:(([\d.]+))/ ), i = r . match ( /Edge?\/([\d.]+)/ ), o = /micromessenger/i . test ( r ); a && ( t . firefox =! 0 , t . version = a [ 1 ]), n && ( t . ie =! 0 , t . version = n [ 1 ]), i && ( t . edge =! 0 , t . version = i [ 1 ], t . newEdge =+ i [ 1 ]. split ( "." )[ 0 ] > 18 ), o && ( t . weChat =! 0 ), e . svgSupported = typeof SVGRect < "u" , e . touchEventsSupported = "ontouchstart" in window &&! t . ie &&! t . edge , e . pointerEventsSupported = "onpointerdown" in window && ( t . edge || t . ie &&+ t . version >= 11 ); var s = e . domSupported = typeof document < "u" ; if ( s ){ var l = document . documentElement . style ; e . transform3dSupported = ( t . ie && "transition" in l || t . edge || "WebKitCSSMatrix" in window && "m11" in new WebKitCSSMatrix || "MozPerspective" in l ) &&! ( "OTransition" in l ), e . transformSupported = e . transform3dSupported || t . ie &&+ t . version >= 9 }} const It = Qa ; var Ny = 12 , ZC = "sans-serif" , Ra = Ny + "px " + ZC , BR = 20 , NR = 100 , VR = "007LLmW'55;N0500LLLLLLLLLL00NNNLzWW\\\\WQb\\0FWLg\\bWb\\WQ\\WrWWQ000CL5LLFLL0LL**F*gLLLL5F0LF\\FFF5.5N" ; function zR ( r ){ var e = {}; if ( typeof JSON > "u" ) return e ; for ( var t = 0 ; t < r . length ; t ++ ){ var a = String . fromCharCode ( t + 32 ), n = ( r . charCodeAt ( t ) - BR ) / NR ; e [ a ] = n } return e } var GR = zR ( VR ), Er = { createCanvas : function (){ return typeof document < "u" && document . createElement ( "canvas" )}, measureText : function (){ var r , e ; return function ( t , a ){ if ( ! r ){ var n = Er . createCanvas (); r = n && n . getContext ( "2d" )} if ( r ) return e !== a && ( e = r . font = a || Ra ), r . measureText ( t ); t = t || "" , a = a || Ra ; var i = /((?:\d+)?\.?\d*)px/ . exec ( a ), o = i &&+ i [ 1 ] || Ny , s = 0 ; if ( a . indexOf ( "mono" ) >= 0 ) s = o * t . length ; else for ( var l = 0 ; l < t . length ; l ++ ){ var u = GR [ t [ l ]]; s += u == null ? o : u * o } return { width : s }}}(), loadImage : function ( r , e , t ){ var a = new Image ; return a . onload = e , a . onerror = t , a . src = r , a }}, XC = fa ([ "Function" , "RegExp" , "Date" , "Error" , "CanvasGradient" , "CanvasPattern" , "Image" , "Canvas" ], function ( r , e ){ return r [ "[object " + e + "]" ] =! 0 , r },{}), qC = fa ([ "Int8" , "Uint8" , "Uint8Clamped" , "Int16" , "Uint16" , "Int32" , "Uint32" , "Float32" , "Float64" ], function ( r , e ){ return r [ "[object " + e + "Array]" ] =! 0 , r },{}), os = Object . prototype . toString , uh = Array . prototype , FR = uh . forEach , HR = uh . filter , Vy = uh . slice , WR = uh . map , l_ = function (){}. constructor , Su = l_ ? l_ . prototype : null , zy = "__proto__" , $R = 2311 ; function KC (){ return $R ++ } function Gy (){ for ( var r = [], e = 0 ; e < arguments . length ; e ++ ) r [ e ] = arguments [ e ]; typeof console < "u" && console . error . apply ( console , r )} function rt ( r ){ if ( r == null || typeof r != "object" ) return r ; var e = r , t = os . call ( r ); if ( t === "[object Array]" ){ if ( ! pl ( r )){ e = []; for ( var a = 0 , n = r . length ; a < n ; a ++ ) e [ a ] = rt ( r [ a ])}} else if ( qC [ t ]){ if ( ! pl ( r )){ var i = r . constructor ; if ( i . from ) e = i . from ( r ); else { e = new i ( r . length ); for ( var a = 0 , n = r . length ; a < n ; a ++ ) e [ a ] = r [ a ]}}} else if ( ! XC [ t ] &&! pl ( r ) &&! Yo ( r )){ e = {}; for ( var o in r ) r . hasOwnProperty ( o ) && o !== zy && ( e [ o ] = rt ( r [ o ]))} return e } function yt ( r , e , t ){ if ( ! st ( e ) ||! st ( r )) return t ? rt ( e ) : r ; for ( var a in e ) if ( e . hasOwnProperty ( a ) &
`),i=n.length;if(i===1)return B_(n[0],e,t,a);for(var o=new lt(0,0,0,0),s=0;s<n.length;s++){var l=B_(n[s],e,t,a);s===0?o.copy(l):o.union(l)}return o}function Xo(r,e,t,a){return t==="right"?a?r+=e:r-=e:t==="center"&&(a?r+=e/2:r-=e/2),r}function Ci(r,e,t,a){return t==="middle"?a?r+=e/2:r-=e/2:t==="bottom"&&(a?r+=e:r-=e),r}function nu(r){return la(r).stWideCharWidth}function Br(r,e){return typeof r=="string"?r.lastIndexOf("%")>=0?parseFloat(r)/100*e:parseFloat(r):r}function hv(r,e,t){var a=e.position||"inside",n=e.distance!=null?e.distance:5,i=t.height,o=t.width,s=i/2,l=t.x,u=t.y,f="left",v="top";if(a instanceof Array)l+=Br(a[0],t.width),u+=Br(a[1],t.height),f=null,v=null;else switch(a){case"left":l-=n,u+=s,f="right",v="middle";break;case"right":l+=n+o,u+=s,v="middle";break;case"top":l+=o/2,u-=n,f="center",v="bottom";break;case"bottom":l+=o/2,u+=i+n,f="center";break;case"inside":l+=o/2,u+=s,f="center",v="middle";break;case"insideLeft":l+=n,u+=s,v="middle";break;case"insideRight":l+=o-n,u+=s,f="right",v="middle";break;case"insideTop":l+=o/2,u+=n,f="center";break;case"insideBottom":l+=o/2,u+=i-n,f="center",v="bottom";break;case"insideTopLeft":l+=n,u+=n;break;case"insideTopRight":l+=o-n,u+=n,f="right";break;case"insideBottomLeft":l+=n,u+=i-n,v="bottom";break;case"insideBottomRight":l+=o-n,u+=i-n,f="right",v="bottom";break}return r=r||{},r.x=l,r.y=u,r.align=f,r.verticalAlign=v,r}var dc="__zr_normal__",gc=ha.concat(["ignore"]),pE=fa(ha,function(r,e){return r[e]=!0,r},{ignore:!1}),oo={},dE=new lt(0,0,0,0),Lu=[],Ky=function(){function r(e){this.id=KC(),this.animators=[],this.currentStates=[],this.states={},this._init(e)}return r.prototype._init=function(e){this.attr(e)},r.prototype.drift=function(e,t,a){switch(this.draggable){case"horizontal":t=0;break;case"vertical":e=0;break}var n=this.transform;n||(n=this.transform=[1,0,0,1,0,0]),n[4]+=e,n[5]+=t,this.decomposeTransform(),this.markRedraw()},r.prototype.beforeUpdate=function(){},r.prototype.afterUpdate=function(){},r.prototype.update=function(){this.updateTransform(),this.__dirty&&this.updateInnerText()},r.prototype.updateInnerText=function(e){var t=this._textContent;if(t&&(!t.ignore||e)){this.textConfig||(this.textConfig={});var a=this.textConfig,n=a.local,i=t.innerTransformable,o=void 0,s=void 0,l=!1;i.parent=n?this:null;var u=!1;i.copyTransform(t);var f=a.position!=null,v=a.autoOverflowArea,h=void 0;if((v||f)&&(h=dE,a.layoutRect?h.copy(a.layoutRect):h.copy(this.getBoundingRect()),n||h.applyTransform(this.transform)),f){this.calculateTextPosition?this.calculateTextPosition(oo,a,h):hv(oo,a,h),i.x=oo.x,i.y=oo.y,o=oo.align,s=oo.verticalAlign;var c=a.origin;if(c&&a.rotation!=null){var p=void 0,d=void 0;c==="center"?(p=h.width*.5,d=h.height*.5):(p=Br(c[0],h.width),d=Br(c[1],h.height)),u=!0,i.originX=-i.x+p+(n?0:h.x),i.originY=-i.y+d+(n?0:h.y)}}a.rotation!=null&&(i.rotation=a.rotation);var g=a.offset;g&&(i.x+=g[0],i.y+=g[1],u||(i.originX=-g[0],i.originY=-g[1]));var y=this._innerTextDefaultStyle||(this._innerTextDefaultStyle={});if(v){var m=y.overflowRect=y.overflowRect||new lt(0,0,0,0);i.getLocalTransform(Lu),Or(Lu,Lu),lt.copy(m,h),m.applyTransform(Lu)}else y.overflowRect=null;var _=a.inside==null?typeof a.position=="string"&&a.position.indexOf("inside")>=0:a.inside,S=void 0,b=void 0,x=void 0;_&&this.canBeInsideText()?(S=a.insideFill,b=a.insideStroke,(S==null||S==="auto")&&(S=this.getInsideTextFill()),(b==null||b==="auto")&&(b=this.getInsideTextStroke(S),x=!0)):(S=a.outsideFill,b=a.outsideStroke,(S==null||S==="auto")&&(S=this.getOutsideFill()),(b==null||b==="auto")&&(b=this.getOutsideStroke(S),x=!0)),S=S||"#000",(S!==y.fill||b!==y.stroke||x!==y.autoStroke||o!==y.align||s!==y.verticalAlign)&&(l=!0,y.fill=S,y.stroke=b,y.autoStroke=x,y.align=o,y.verticalAlign=s,t.setDefaultTextStyle(y)),t.__dirty|=tr,l&&t.dirtyStyle(!0)}},r.prototype.canBeInsideText=function(){return!0},r.prototype.getInsideTextFill=function(){return"#fff"},r.prototype.getInsideTextStroke=function(e){return"#000"},r.prototype.getOutsideFill=function(){return this.__zr&&this.__zr.isDarkMode()?jd:Kd},r.prototype.getOutsid
* ZRender, a high performance 2d drawing library.
*
* Copyright (c) 2013, Baidu Inc.
* All rights reserved.
*
* LICENSE
* https://github.com/ecomfe/zrender/blob/master/LICENSE.txt
*/var Wf={},LA={};function SE(r){delete LA[r]}function xE(r){if(!r)return!1;if(typeof r=="string")return lv(r,1)<qd;if(r.colorStops){for(var e=r.colorStops,t=0,a=e.length,n=0;n<a;n++)t+=lv(e[n].color,1);return t/=a,t<qd}return!1}var bE=function(){function r(e,t,a){var n=this;this._sleepAfterStill=10,this._stillFrameAccum=0,this._needsRefresh=!0,this._needsRefreshHover=!0,this._darkMode=!1,a=a||{},this.dom=t,this.id=e;var i=new Pk,o=a.renderer||"canvas";Wf[o]||(o=bt(Wf)[0]),a.useDirtyRect=a.useDirtyRect==null?!1:a.useDirtyRect;var s=new Wf[o](t,i,a,e),l=a.ssr||s.ssrOnly;this.storage=i,this.painter=s;var u=!It.node&&!It.worker&&!l?new fE(s.getViewportRoot(),s.root):null,f=a.useCoarsePointer,v=f==null||f==="auto"?It.touchEventsSupported:!!f,h=44,c;v&&(c=Q(a.pointerSize,h)),this.handler=new Ak(i,s,u,s.root,c),this.animation=new rE({stage:{update:l?null:function(){return n._flush(!0)}}}),l||this.animation.start()}return r.prototype.add=function(e){this._disposed||!e||(this.storage.addRoot(e),e.addSelfToZr(this),this.refresh())},r.prototype.remove=function(e){this._disposed||!e||(this.storage.delRoot(e),e.removeSelfFromZr(this),this.refresh())},r.prototype.configLayer=function(e,t){this._disposed||(this.painter.configLayer&&this.painter.configLayer(e,t),this.refresh())},r.prototype.setBackgroundColor=function(e){this._disposed||(this.painter.setBackgroundColor&&this.painter.setBackgroundColor(e),this.refresh(),this._backgroundColor=e,this._darkMode=xE(e))},r.prototype.getBackgroundColor=function(){return this._backgroundColor},r.prototype.setDarkMode=function(e){this._darkMode=e},r.prototype.isDarkMode=function(){return this._darkMode},r.prototype.refreshImmediately=function(e){this._disposed||(e||this.animation.update(!0),this._needsRefresh=!1,this.painter.refresh(),this._needsRefresh=!1)},r.prototype.refresh=function(){this._disposed||(this._needsRefresh=!0,this.animation.start())},r.prototype.flush=function(){this._disposed||this._flush(!1)},r.prototype._flush=function(e){var t,a=Oo();this._needsRefresh&&(t=!0,this.refreshImmediately(e)),this._needsRefreshHover&&(t=!0,this.refreshHoverImmediately());var n=Oo();t?(this._stillFrameAccum=0,this.trigger("rendered",{elapsedTime:n-a})):this._sleepAfterStill>0&&(this._stillFrameAccum++,this._stillFrameAccum>this._sleepAfterStill&&this.animation.stop())},r.prototype.setSleepAfterStill=function(e){this._sleepAfterStill=e},r.prototype.wakeUp=function(){this._disposed||(this.animation.start(),this._stillFrameAccum=0)},r.prototype.refreshHover=function(){this._needsRefreshHover=!0},r.prototype.refreshHoverImmediately=function(){this._disposed||(this._needsRefreshHover=!1,this.painter.refreshHover&&this.painter.getType()==="canvas"&&this.painter.refreshHover())},r.prototype.resize=function(e){this._disposed||(e=e||{},this.painter.resize(e.width,e.height),this.handler.resize())},r.prototype.clearAnimation=function(){this._disposed||this.animation.clear()},r.prototype.getWidth=function(){if(!this._disposed)return this.painter.getWidth()},r.prototype.getHeight=function(){if(!this._disposed)return this.painter.getHeight()},r.prototype.setCursorStyle=function(e){this._disposed||this.handler.setCursorStyle(e)},r.prototype.findHover=function(e,t){if(!this._disposed)return this.handler.findHover(e,t)},r.prototype.on=function(e,t,a){return this._disposed||this.handler.on(e,t,a),this},r.prototype.off=function(e,t){this._disposed||this.handler.off(e,t)},r.prototype.trigger=function(e,t){this._disposed||this.handler.trigger(e,t)},r.prototype.clear=function(){if(!this._disposed){for(var e=this.storage.getRoots(),t=0;t<e.length;t++)e[t]instanceof at&&e[t].removeSelfFromZr(this);this.storage.delAllRoots(),this.painter.clear()}},r.prototype.dispose=function(){this._disposed||(this.animation.stop(),this.clear(),this.storage.dispose(),this.painter.dispose(),this.handler.dispose(),this.animation=this.storage=this.painter=this.handler=null,this._disposed=!0,SE(this.id))},r}();function N_(r,e){var t=new bE(KC(),r,e);return LA[t.id]=t,t}function wE(r,e){Wf[r]=e}var Jd;function TE(r){if(typeof Jd=="function"
` ); i = YA ( t , a , n , i ); for ( var s =! 1 , l = {}, u = 0 , f = o . length ; u < f ; u ++ ) ZA ( l , o [ u ], i ), o [ u ] = l . textLine , s = s || l . isTruncated ; r . text = o . join ( `
` ), r . isTruncated = s } function YA ( r , e , t , a ){ a = a || {}; var n = G ({}, a ); t = Q ( t , "..." ), n . maxIterations = Q ( a . maxIterations , 2 ); var i = n . minChar = Q ( a . minChar , 0 ), o = n . fontMeasureInfo = la ( e ), s = o . asciiCharWidth ; n . placeholder = Q ( a . placeholder , "" ); for ( var l = r = Math . max ( 0 , r - 1 ), u = 0 ; u < i && l >= s ; u ++ ) l -= s ; var f = ua ( o , t ); return f > l && ( t = "" , f = 0 ), l = r - f , n . ellipsis = t , n . ellipsisWidth = f , n . contentWidth = l , n . containerWidth = r , n } function ZA ( r , e , t ){ var a = t . containerWidth , n = t . contentWidth , i = t . fontMeasureInfo ; if ( ! a ){ r . textLine = "" , r . isTruncated =! 1 ; return } var o = ua ( i , e ); if ( o <= a ){ r . textLine = e , r . isTruncated =! 1 ; return } for ( var s = 0 ;; s ++ ){ if ( o <= n || s >= t . maxIterations ){ e += t . ellipsis ; break } var l = s === 0 ? fO ( e , n , i ) : o > 0 ? Math . floor ( e . length * n / o ) : 0 ; e = e . substr ( 0 , l ), o = ua ( i , e )} e === "" && ( e = t . placeholder ), r . textLine = e , r . isTruncated =! 0 } function fO ( r , e , t ){ for ( var a = 0 , n = 0 , i = r . length ; n < i && a < e ; n ++ ) a += CA ( t , r . charCodeAt ( n )); return n } function vO ( r , e , t , a ){ var n = rm ( r ), i = e . overflow , o = e . padding , s = o ? o [ 1 ] + o [ 3 ] : 0 , l = o ? o [ 0 ] + o [ 2 ] : 0 , u = e . font , f = i === "truncate" , v = nu ( u ), h = Q ( e . lineHeight , v ), c = e . lineOverflow === "truncate" , p =! 1 , d = e . width ; d == null && t != null && ( d = t - s ); var g = e . height ; g == null && a != null && ( g = a - l ); var y ; d != null && ( i === "break" || i === "breakAll" ) ? y = n ? XA ( n , e . font , d , i === "breakAll" , 0 ). lines : [] : y = n ? n . split ( `
` ) : []; var m = y . length * h ; if ( g == null && ( g = m ), m > g && c ){ var _ = Math . floor ( g / h ); p = p || y . length > _ , y = y . slice ( 0 , _ ), m = y . length * h } if ( n && f && d != null ) for ( var S = YA ( d , u , e . ellipsis ,{ minChar : e . truncateMinChar , placeholder : e . placeholder }), b = {}, x = 0 ; x < y . length ; x ++ ) ZA ( b , y [ x ], S ), y [ x ] = b . textLine , p = p || b . isTruncated ; for ( var w = g , T = 0 , C = la ( u ), x = 0 ; x < y . length ; x ++ ) T = Math . max ( ua ( C , y [ x ]), T ); d == null && ( d = T ); var M = d ; return w += l , M += s ,{ lines : y , height : g , outerWidth : M , outerHeight : w , lineHeight : h , calculatedLineHeight : v , contentWidth : T , contentHeight : m , width : d , isTruncated : p }} var hO = function (){ function r (){} return r }(), Y_ = function (){ function r ( e ){ this . tokens = [], e && ( this . tokens = e )} return r }(), cO = function (){ function r (){ this . width = 0 , this . height = 0 , this . contentWidth = 0 , this . contentHeight = 0 , this . outerWidth = 0 , this . outerHeight = 0 , this . lines = [], this . isTruncated =! 1 } return r }(); function pO ( r , e , t , a , n ){ var i = new cO , o = rm ( r ); if ( ! o ) return i ; var s = e . padding , l = s ? s [ 1 ] + s [ 3 ] : 0 , u = s ? s [ 0 ] + s [ 2 ] : 0 , f = e . width ; f == null && t != null && ( f = t - l ); var v = e . height ; v == null && a != null && ( v = a - u ); for ( var h = e . overflow , c = ( h === "break" || h === "breakAll" ) && f != null ? { width : f , accumWidth : 0 , breakAll : h === "breakAll" } : null , p = xc . lastIndex = 0 , d ;( d = xc . exec ( o )) != null ;){ var g = d . index ; g > p && bc ( i , o . substring ( p , g ), e , c ), bc ( i , d [ 2 ], e , c , d [ 1 ]), p = xc . lastIndex } p < o . length && bc ( i , o . substring ( p , o . length ), e , c ); var y = [], m = 0 , _ = 0 , S = h === "truncate" , b = e . lineOverflow === "truncate" , x = {}; function w ( At , Ot , vt ){ At . width = Ot , At . lineHeight = vt , m += vt , _ = Math . max ( _ , Ot )} t : for ( var T = 0 ; T < i . lines . length ; T ++ ){ for ( var C = i . lines [ T ], M = 0 , D = 0 , I = 0 ; I < C . tokens . length ; I ++ ){ var L = C . tokens [ I ], P = L . styleName && e . rich [ L . styleName ] || {}, k = L . textPadding = P . padding , R = k ? k [ 1 ] + k [ 3 ] : 0 , O = L . font = P . font || e . font ; L . contentHeight = nu ( O ); var E = Q ( P . height , L . contentHeight ); if ( L . innerHeight = E , k && ( E += k [ 0 ] + k [ 2 ]), L . height = E , L . lineHeight = ar ( P . lineHeight , e . lineHeight , E ), L . align = P && P . align || n , L . verticalAlign = P && P . verticalAlign || "middle" , b && v != null && m + L . lineHeight > v ){ var N = i . lines . length ; I > 0 ? ( C . tokens = C . tokens . slice ( 0 , I ), w ( C , D , M ), i . lines = i . lines . slice ( 0 , T + 1 )) : i . lines = i . lines . slice ( 0 , T ), i . isTruncated = i . isTruncated || i . lines . length < N ; break t } var z = P . width , F = z == null || z === "auto" ; if ( typeof z == "string" && z . charAt ( z . length - 1 ) === "%" ) L . percentWidth = z , y . push ( L ), L . contentWidth = ua ( la ( O ), L . text ); else { if ( F ){ var H = P . backgroundColor , U = H && H . image ; U && ( U = lO ( U ), mh ( U ) && ( L . width = Math . max ( L . width , U . width * E / U . height )))} var K = S && f != null ? f - D : null ; K != null && K < L . width ?! F || K < R ? ( L . text = "" , L . width = L . contentWidth = 0 ) : ( uO ( x , L . text , K - R , O , e . ellipsis ,{ minChar : e . truncateMinChar }), L . text = x . text , i . isTruncated = i . isTruncated || x . isTruncated , L . width = L . contentWidth = ua ( la ( O ), L . text )) : L . contentWidth = ua ( la ( O ), L . text )} L . width += R , D += L . width , P && ( M = Math . max ( M , L . lineHeight ))} w ( C , D , M )} i . outerWidth = i . width = Q ( f , _ ), i . outerHeight = i . height = Q ( v , m ), i . contentHeight = m , i . contentWidth = _ , i . outerWidth += l , i . outerHeight += u ; for ( var T = 0 ; T < y . length ; T ++ ){ var L = y [ T ], ft = L . percentWidth ; L . width = parseInt ( ft , 10 ) / 100 * i . width } return i } function bc ( r , e , t , a , n ){ var i = e === "" , o = n && t . rich [ n ] || {}, s = r . lines , l = o . font || t . font , u =! 1 , f , v ; if ( a ){ var h = o . padding , c = h ? h [ 1 ] + h [ 3 ] : 0 ; if ( o . width != null && o . width !== "auto" ){ var p = Br ( o . width , a . width ) + c ; s . length > 0 && p + a . accumWidth > a . width && ( f = e . split ( `
` ), u =! 0 ), a . accumWidth = p } else { var d = XA ( e , l , a . width , a . breakAll , a . accumWidth ); a . accumWidth = d . accumWidth + c , v = d . linesWidths , f = d . lines }} f || ( f = e . split ( `
` )); for ( var g = la ( l ), y = 0 ; y < f . length ; y ++ ){ var m = f [ y ], _ = new hO ; if ( _ . styleName = n , _ . text = m , _ . isLineHolder =! m &&! i , typeof o . width == "number" ? _ . width = o . width : _ . width = v ? v [ y ] : ua ( g , m ), ! y &&! u ){ var S = ( s [ s . length - 1 ] || ( s [ 0 ] = new Y_ )). tokens , b = S . length ; b === 1 && S [ 0 ]. isLineHolder ? S [ 0 ] = _ : ( m ||! b || i ) && S . push ( _ )} else s . push ( new Y_ ([ _ ]))}} function dO ( r ){ var e = r . charCodeAt ( 0 ); return e >= 32 && e <= 591 || e >= 880 && e <= 4351 || e >= 4608 && e <= 5119 || e >= 7680 && e <= 8303 } var gO = fa ( ",&?/;] " . split ( "" ), function ( r , e ){ return r [ e ] =! 0 , r },{}); function yO ( r ){ return dO ( r ) ?!! gO [ r ] :! 0 } function XA ( r , e , t , a , n ){ for ( var i = [], o = [], s = "" , l = "" , u = 0 , f = 0 , v = la ( e ), h = 0 ; h < r . length ; h ++ ){ var c = r . charAt ( h ); if ( c === `
2026-08-15 11:59:58 +03:30
` ){ l && ( s += l , f += u ), i . push ( s ), o . push ( f ), s = "" , l = "" , u = 0 , f = 0 ; continue } var p = CA ( v , c . charCodeAt ( 0 )), d = a ?! 1 :! yO ( c ); if ( i . length ? f + p > t : n + f + p > t ){ f ? ( s || l ) && ( d ? ( s || ( s = l , l = "" , u = 0 , f = u ), i . push ( s ), o . push ( f - u ), l += c , u += p , s = "" , f = u ) : ( l && ( s += l , l = "" , u = 0 ), i . push ( s ), o . push ( f ), s = c , f = p )) : d ? ( i . push ( l ), o . push ( u ), l = c , u = p ) : ( i . push ( c ), o . push ( p )); continue } f += p , d ? ( l += c , u += p ) : ( l && ( s += l , l = "" , u = 0 ), s += c )} return l && ( s += l ), s && ( i . push ( s ), o . push ( f )), i . length === 1 && ( f += n ),{ accumWidth : f , lines : i , linesWidths : o }} function Z_ ( r , e , t , a , n , i ){ if ( r . baseX = t , r . baseY = a , r . outerWidth = r . outerHeight = null , !! e ){ var o = e . width * 2 , s = e . height * 2 ; lt . set ( X_ , Xo ( t , o , n ), Ci ( a , s , i ), o , s ), lt . intersect ( e , X_ , null , q_ ); var l = q_ . outIntersectRect ; r . outerWidth = l . width , r . outerHeight = l . height , r . baseX = Xo ( l . x , l . width , n , ! 0 ), r . baseY = Ci ( l . y , l . height , i , ! 0 )}} var X_ = new lt ( 0 , 0 , 0 , 0 ), q_ = { outIntersectRect : {}, clamp :! 0 }; function rm ( r ){ return r != null ? r += "" : r = "" } function mO ( r ){ var e = rm ( r . text ), t = r . font , a = ua ( la ( t ), e ), n = nu ( t ); return eg ( r , a , n , null )} function eg ( r , e , t , a ){ var n = new lt ( Xo ( r . x || 0 , e , r . textAlign ), Ci ( r . y || 0 , t , r . textBaseline ), e , t ), i = a ?? ( qA ( r ) ? r . lineWidth : 0 ); return i > 0 && ( n . x -= i / 2 , n . y -= i / 2 , n . width += i , n . height += i ), n } function qA ( r ){ var e = r . stroke ; return e != null && e !== "none" && r . lineWidth > 0 } var rg = "__zr_style_" + Math . round ( Math . random () * 10 ), Ai = { shadowBlur : 0 , shadowOffsetX : 0 , shadowOffsetY : 0 , shadowColor : "#000" , opacity : 1 , blend : "source-over" }, _h = { style : { shadowBlur :! 0 , shadowOffsetX :! 0 , shadowOffsetY :! 0 , shadowColor :! 0 , opacity :! 0 }}; Ai [ rg ] =! 0 ; var K_ = [ "z" , "z2" , "invisible" ], _O = [ "invisible" ], SO = function ( r ){ B ( e , r ); function e ( t ){ return r . call ( this , t ) || this } return e . prototype . _init = function ( t ){ for ( var a = bt ( t ), n = 0 ; n < a . length ; n ++ ){ var i = a [ n ]; i === "style" ? this . useStyle ( t [ i ]) : r . prototype . attrKV . call ( this , i , t [ i ])} this . style || this . useStyle ({})}, e . prototype . beforeBrush = function (){}, e . prototype . afterBrush = function (){}, e . prototype . innerBeforeBrush = function (){}, e . prototype . innerAfterBrush = function (){}, e . prototype . shouldBePainted = function ( t , a , n , i ){ var o = this . transform ; if ( this . ignore || this . invisible || this . style . opacity === 0 || this . culling && xO ( this , t , a ) || o &&! o [ 0 ] &&! o [ 3 ]) return ! 1 ; if ( n && this . __clipPaths && this . __clipPaths . length ){ for ( var s = 0 ; s < this . __clipPaths . length ; ++ s ) if ( this . __clipPaths [ s ]. isZeroArea ()) return ! 1 } if ( i && this . parent ) for ( var l = this . parent ; l ;){ if ( l . ignore ) return ! 1 ; l = l . parent } return ! 0 }, e . prototype . contain = function ( t , a ){ return this . rectContain ( t , a )}, e . prototype . traverse = function ( t , a ){ t . call ( a , this )}, e . prototype . rectContain = function ( t , a ){ var n = this . transformCoordToLocal ( t , a ), i = this . getBoundingRect (); return i . contain ( n [ 0 ], n [ 1 ])}, e . prototype . getPaintRect = function (){ var t = this . _paintRect ; if ( ! this . _paintRect || this . __dirty ){ var a = this . transform , n = this . getBoundingRect (), i = this . style , o = i . shadowBlur || 0 , s = i . shadowOffsetX || 0 , l = i . shadowOffsetY || 0 ; t = this . _paintRect || ( this . _paintRect = new lt ( 0 , 0 , 0 , 0 )), a ? lt . applyTransform ( t , n , a ) : t . copy ( n ),( o || s || l ) && ( t . width += o * 2 + Math . abs ( s ), t . height += o * 2 + Math . abs ( l ), t . x = Math . min ( t . x , t . x + s - o ), t . y = Math . min ( t . y , t . y + l - o )); var u = this . dirtyRectTolerance ; t . isZero () || ( t . x = Math . floor ( t . x - u ), t . y = Math . floor ( t . y - u ), t . width = Math . ceil ( t . width + 1 + u * 2 ), t . height = Math . ceil ( t . height + 1 + u * 2 ))} return t }, e . prototype . setPrevPaintRect = function ( t ){ t ? ( this . _prevPaintRect = this . _prevPaintRect || new lt ( 0 , 0 , 0 , 0 ), this . _prevPaintRect . copy ( t )) : this . _prevPaintRect = null }, e . prototype . getPrevPaintRect = function (){ return this . _prevPaintRect }, e . prototype . animateStyle = function ( t ){ return this . animate ( "style" , t )}, e . prototype . updateDuringAnimation = function ( t ){ t === "style" ? this . dirtyStyle () : this . markRedraw ()}, e . prototype . attrKV = function ( t , a ){ t !== "style" ? r . prototype . attrKV . call ( this , t , a ) : this . style ? this . setStyle ( a ) : this . useStyle ( a )}, e . prototype . setStyle = function ( t , a ){ return typeof t == "string" ? this . style [ t ] = a : G ( this . style , t ), this . dirtyStyle (), this }, e . prototype . dirtyStyle = function ( t ){ t || this . markRedraw (), this . __dirty |= rl , this . _rect && ( this . _rect = null )}, e . prototype . dirty = function (){ this . dirtyStyle ()}, e . prototype . styleChanged = function (){ return !! ( this . __dirty & rl )}, e . prototype . styleUpdated = function (){ this . __dirty &=~ rl }, e . prototype . createStyle = function ( t ){ return hh ( Ai , t )}, e . prototype
2026-07-15 13:20:16 +03:30
`,`
`,`
2026-08-15 11:59:58 +03:30
`];function ie(r,e){return e.type=r,e}function wg(r){return r.type==="section"}function FD(r){return wg(r)?EV:OV}function HD(r){if(wg(r)){var e=0,t=r.blocks.length,a=t>1||t>0&&!r.noHeader;return A(r.blocks,function(n){var i=HD(n);i>=e&&(e=i+ +(a&&(!i||wg(n)&&!n.noHeader)))}),e}return 0}function EV(r,e,t,a){var n=e.noHeader,i=BV(HD(e)),o=[],s=e.blocks||[];ke(!s||W(s)),s=s||[];var l=r.orderMode;if(e.sortBlocks&&l){s=s.slice();var u={valueAsc:"asc",valueDesc:"desc"};if(q(u,l)){var f=new ED(u[l],null);s.sort(function(d,g){return f.evaluate(d.sortParam,g.sortParam)})}else l==="seriesDesc"&&s.reverse()}A(s,function(d,g){var y=e.valueFormatter,m=FD(d)(y?G(G({},r),{valueFormatter:y}):r,d,g>0?i.html:0,a);m!=null&&o.push(m)});var v=r.renderMode==="richText"?o.join(i.richText):Tg(a,o.join(""),n?t:i.html);if(n)return v;var h=yg(e.header,"ordinal",r.useUTC),c=GD(a,r.renderMode).nameStyle,p=zD(a);return r.renderMode==="richText"?WD(r,h,c)+i.richText+v:Tg(a,'<div style="'+c+";"+p+';">'+Ie(h)+"</div>"+v,t)}function OV(r,e,t,a){var n=r.renderMode,i=e.noName,o=e.noValue,s=!e.markerType,l=e.name,u=r.useUTC,f=e.valueFormatter||r.valueFormatter||function(S){return S=W(S)?S:[S],$(S,function(b,x){return yg(b,W(c)?c[x]:c,u)})};if(!(i&&o)){var v=s?"":r.markupStyleCreator.makeTooltipMarker(e.markerType,e.markerColor||V.color.secondary,n),h=i?"":yg(l,"ordinal",u),c=e.valueType,p=o?[]:f(e.value,e.dataIndex),d=!s||!i,g=!s&&i,y=GD(a,n),m=y.nameStyle,_=y.valueStyle;return n==="richText"?(s?"":v)+(i?"":WD(r,h,m))+(o?"":zV(r,p,d,g,_)):Tg(a,(s?"":v)+(i?"":NV(h,!s,m))+(o?"":VV(p,d,g,_)),t)}}function nS(r,e,t,a,n,i){if(r){var o=FD(r),s={useUTC:n,renderMode:t,orderMode:a,markupStyleCreator:e,valueFormatter:r.valueFormatter};return o(s,r,0,i)}}function BV(r){return{html:RV[r],richText:kV[r]}}function Tg(r,e,t){var a='<div style="clear:both"></div>',n="margin: "+t+"px 0 0",i=zD(r);return'<div style="'+n+";"+i+';">'+e+a+"</div>"}function NV(r,e,t){var a=e?"margin-left:2px":"";return'<span style="'+t+";"+a+'">'+Ie(r)+"</span>"}function VV(r,e,t,a){var n=t?"10px":"20px",i=e?"float:right;margin-left:"+n:"";return r=W(r)?r:[r],'<span style="'+i+";"+a+'">'+$(r,function(o){return Ie(o)}).join(" ")+"</span>"}function WD(r,e,t){return r.markupStyleCreator.wrapRichTextStyle(e,t)}function zV(r,e,t,a,n){var i=[n],o=a?10:20;return t&&i.push({padding:[0,0,0,o],align:"right"}),r.markupStyleCreator.wrapRichTextStyle(W(e)?e.join(" "):e,i)}function $D(r,e){var t=r.getData().getItemVisual(e,"style"),a=t[r.visualDrawType];return Gi(a)}function UD(r,e){var t=r.get("padding");return t??(e==="richText"?[8,10]:10)}var Yc=function(){function r(){this.richTextStyles={},this._nextStyleNameId=OA()}return r.prototype._generateStyleName=function(){return"__EC_aUTo_"+this._nextStyleNameId++},r.prototype.makeTooltipMarker=function(e,t,a){var n=a==="richText"?this._generateStyleName():null,i=wN({color:t,type:e,renderMode:a,markerId:n});return Z(i)?i:(this.richTextStyles[n]=i.style,i.content)},r.prototype.wrapRichTextStyle=function(e,t){var a={};W(t)?A(t,function(i){return G(a,i)}):G(a,t);var n=this._generateStyleName();return this.richTextStyles[n]=a,"{"+n+"|"+e+"}"},r}();function YD(r){var e=r.series,t=r.dataIndex,a=r.multipleSeries,n=e.getData(),i=n.mapDimensionsAll("defaultedTooltip"),o=i.length,s=e.getRawValue(t),l=W(s),u=$D(e,t),f,v,h,c;if(o>1||l&&!o){var p=GV(s,e,t,i,u);f=p.inlineValues,v=p.inlineValueTypes,h=p.blocks,c=p.inlineValues[0]}else if(o){var d=n.getDimensionInfo(i[0]);c=f=Ko(n,t,i[0]),v=d.type}else c=f=l?s[0]:s;var g=Jy(e),y=g&&e.name||"",m=n.getName(t),_=a?y:m;return ie("section",{header:y,noHeader:a||!g,sortParam:c,blocks:[ie("nameValue",{markerType:"item",markerColor:u,name:_,noName:!_r(_),value:f,valueType:v,dataIndex:t})].concat(h||[])})}function GV(r,e,t,a,n){var i=e.getData(),o=fa(r,function(v,h,c){var p=i.getDimensionInfo(c);return v=v||p&&p.tooltip!==!1&&p.displayName!=null},!1),s=[],l=[],u=[];a.length?A(a,function(v){f(Ko(i,t,v),v)}):A(r,f);function f(v,h){var c=i.getDimensionInfo(h);!c||c.otherDims.tooltip===!1||(o?u.push(ie("nameValue",{markerType:"s
` : "" ; function a ( n ){ var i = n . children , o = n . tag , s = n . attrs , l = n . text ; return fF ( o , s ) + ( o !== "style" ? Ie ( l ) : l || "" ) + ( i ? "" + t + $ ( i , function ( u ){ return a ( u )}). join ( t ) + t : "" ) + vF ( o )} return a ( r )} function hF ( r , e , t ){ t = t || {}; var a = t . newline ? `
` : "" , n = " {" + a , i = a + "}" , o = $ ( bt ( r ), function ( l ){ return l + n + $ ( bt ( r [ l ]), function ( u ){ return u + ":" + r [ l ][ u ] + ";" }). join ( a ) + i }). join ( a ), s = $ ( bt ( e ), function ( l ){ return "@keyframes " + l + n + $ ( bt ( e [ l ]), function ( u ){ return u + n + $ ( bt ( e [ l ][ u ]), function ( f ){ var v = e [ l ][ u ][ f ]; return f === "d" && ( v = 'path("' + v + '")' ), f + ":" + v + ";" }). join ( a ) + i }). join ( a ) + i }). join ( a ); return ! o &&! s ? "" : [ "<![CDATA[" , o , s , "]]>" ]. join ( a )} function Wg ( r ){ return { zrId : r , shadowCache : {}, patternCache : {}, gradientCache : {}, clipPathCache : {}, defs : {}, cssNodes : {}, cssAnims : {}, cssStyleCache : {}, cssAnimIdx : 0 , shadowIdx : 0 , gradientIdx : 0 , patternIdx : 0 , clipPathIdx : 0 }} function ex ( r , e , t , a ){ return ge ( "svg" , "root" ,{ width : r , height : e , xmlns : dI , "xmlns:xlink" : gI , version : "1.1" , baseProfile : "full" , viewBox : a ? "0 0 " + r + " " + e :! 1 }, t )} var cF = 0 ; function mI (){ return cF ++ } var rx = { cubicIn : "0.32,0,0.67,0" , cubicOut : "0.33,1,0.68,1" , cubicInOut : "0.65,0,0.35,1" , quadraticIn : "0.11,0,0.5,0" , quadraticOut : "0.5,1,0.89,1" , quadraticInOut : "0.45,0,0.55,1" , quarticIn : "0.5,0,0.75,0" , quarticOut : "0.25,1,0.5,1" , quarticInOut : "0.76,0,0.24,1" , quinticIn : "0.64,0,0.78,0" , quinticOut : "0.22,1,0.36,1" , quinticInOut : "0.83,0,0.17,1" , sinusoidalIn : "0.12,0,0.39,0" , sinusoidalOut : "0.61,1,0.88,1" , sinusoidalInOut : "0.37,0,0.63,1" , exponentialIn : "0.7,0,0.84,0" , exponentialOut : "0.16,1,0.3,1" , exponentialInOut : "0.87,0,0.13,1" , circularIn : "0.55,0,1,0.45" , circularOut : "0,0.55,0.45,1" , circularInOut : "0.85,0,0.15,1" }, oi = "transform-origin" ; function pF ( r , e , t ){ var a = G ({}, r . shape ); G ( a , e ), r . buildPath ( t , a ); var n = new pI ; return n . reset ( SA ( r )), t . rebuildPath ( n , 1 ), n . generateStr (), n . getStr ()} function dF ( r , e ){ var t = e . originX , a = e . originY ;( t || a ) && ( r [ oi ] = t + "px " + a + "px" )} var gF = { fill : "fill" , opacity : "opacity" , lineWidth : "stroke-width" , lineDashOffset : "stroke-dashoffset" }; function _I ( r , e ){ var t = e . zrId + "-ani-" + e . cssAnimIdx ++ ; return e . cssAnims [ t ] = r , t } function yF ( r , e , t ){ var a = r . shape . paths , n = {}, i , o ; if ( A ( a , function ( l ){ var u = Wg ( t . zrId ); u . animation =! 0 , Gh ( l ,{}, u , ! 0 ); var f = u . cssAnims , v = u . cssNodes , h = bt ( f ), c = h . length ; if ( c ){ o = h [ c - 1 ]; var p = f [ o ]; for ( var d in p ){ var g = p [ d ]; n [ d ] = n [ d ] || { d : "" }, n [ d ]. d += g . d || "" } for ( var y in v ){ var m = v [ y ]. animation ; m . indexOf ( o ) >= 0 && ( i = m )}}}), !! i ){ e . d =! 1 ; var s = _I ( n , t ); return i . replace ( o , s )}} function ax ( r ){ return Z ( r ) ? rx [ r ] ? "cubic-bezier(" + rx [ r ] + ")" : Zy ( r ) ? r : "" : "" } function Gh ( r , e , t , a ){ var n = r . animators , i = n . length , o = []; if ( r instanceof Mh ){ var s = yF ( r , e , t ); if ( s ) o . push ( s ); else if ( ! i ) return } else if ( ! i ) return ; for ( var l = {}, u = 0 ; u < i ; u ++ ){ var f = n [ u ], v = [ f . getMaxTime () / 1e3 + "s" ], h = ax ( f . getClip (). easing ), c = f . getDelay (); h ? v . push ( h ) : v . push ( "linear" ), c && v . push ( c / 1e3 + "s" ), f . getLoop () && v . push ( "infinite" ); var p = v . join ( " " ); l [ p ] = l [ p ] || [ p ,[]], l [ p ][ 1 ]. push ( f )} function d ( m ){ var _ = m [ 1 ], S = _ . length , b = {}, x = {}, w = {}, T = "animation-timing-function" ; function C ( vt , tt , pt ){ for ( var J = vt . getTracks (), ht = vt . getMaxTime (), Bt = 0 ; Bt < J . length ; Bt ++ ){ var Tt = J [ Bt ]; if ( Tt . needsAnimate ()){ var Et = Tt . keyframes , Nt = Tt . propName ; if ( pt && ( Nt = pt ( Nt )), Nt ) for ( var pe = 0 ; pe < Et . length ; pe ++ ){ var Ke = Et [ pe ], We = Math . round ( Ke . time / ht * 100 ) + "%" , kn = ax ( Ke . easing ), ro = Ke . rawValue ;( Z ( ro ) || wt ( ro )) && ( tt [ We ] = tt [ We ] || {}, tt [ We ][ Nt ] = Ke . rawValue , kn && ( tt [ We ][ T ] = kn ))}}}} for ( var M = 0 ; M < S ; M ++ ){ var D = _ [ M ], I = D . targetName ; I ? I === "shape" && C ( D , x ) :! a && C ( D , b )} for ( var L in b ){ var P = {}; vv ( P , r ), G ( P , b [ L ]); var k = xA ( P ), R = b [ L ][ T ]; w [ L ] = k ? { transform : k } : {}, dF ( w [ L ], P ), R && ( w [ L ][ T ] = R )} var O , E =! 0 ; for ( var L in x ){ w [ L ] = w [ L ] || {}; var N =! O , R = x [ L ][ T ]; N && ( O = new ca ); var z = O . len (); O . reset (), w [ L ]. d = pF ( r , x [ L ], O ); var F = O . len (); if ( ! N && z !== F ){ E =! 1 ; break } R && ( w [ L ][ T ] = R )} if ( ! E ) for ( var L in w ) delete w [ L ]. d ; if ( ! a ) for ( var M = 0 ; M < S ; M ++ ){ var D = _ [ M ], I = D . targetName ; I === "style" && C ( D , w , function ( J ){ return gF [ J ]})} for ( var H = bt ( w ), U =! 0 , K , M = 1 ; M < H . length ; M ++ ){ var ft = H [ M - 1 ], At = H [ M ]; if ( w [ ft ][ oi ] !== w [ At ][ oi ]){ U =! 1 ; break } K = w [ ft ][ oi ]} if ( U && K ){ for ( var L in w ) w [ L ][ oi ] && delete w [ L ][ oi ]; e [ oi ] = K } if ( kt ( H , function ( vt ){ return bt ( w [ vt ]). length > 0 }). length ){ var Ot = _I ( w , t ); return Ot + " " + m [ 0 ] + " both" }} for ( var g in l ){ var s = d ( l [ g ]); s && o . push ( s )} if ( o . length ){ var y = t . zrId + "-cls-" + mI (); t . cssNodes [ "." + y ] = { animation : o . join ( "," )}, e . class = y }} function mF ( r , e , t ){ if ( ! r . ignore ) if ( r . isSilent ()){ var a = { "pointer-events" : "none" }; nx ( a , e , t , ! 0 )} else { var n = r . states . emphasi
`+g.message)}var n=new at;n.add(a),n.isGeoSVGGraphicRoot=!0;var i=t.width,o=t.height,s=t.viewBoxRect,l=this._boundingRect;if(!l){var u=void 0,f=void 0,v=void 0,h=void 0;if(i!=null?(u=0,v=i):s&&(u=s.x,v=s.width),o!=null?(f=0,h=o):s&&(f=s.y,h=s.height),u==null||f==null){var c=a.getBoundingRect();u==null&&(u=c.x,v=c.width),f==null&&(f=c.y,h=c.height)}l=this._boundingRect=new lt(u,f,v,h)}if(s){var p=y2(s,l);a.scaleX=a.scaleY=p.scale,a.x=p.x,a.y=p.y}n.setClipPath(new _t({shape:l.plain()}));var d=[];return A(t.named,function(g){O4.get(g.svgNodeTagLower)!=null&&(d.push(g),N4(g.el))}),{root:n,boundingRect:l,named:d}},r.prototype.useGraphic=function(e){var t=this._usedGraphicMap,a=t.get(e);return a||(a=this._freedGraphics.pop()||this._buildGraphic(this._parsedXML),t.set(e,a),a)},r.prototype.freeGraphic=function(e){var t=this._usedGraphicMap,a=t.get(e);a&&(t.removeKey(e),this._freedGraphics.push(a))},r}();function N4(r){r.silent=!1,r.isGroup&&r.traverse(function(e){e.silent=!1})}function V4(r){var e=[],t=j();return A(r,function(a){if(a.namedFrom==null){var n=new bG(a.name,a.el);e.push(n),t.set(a.name,n)}}),{regions:e,regionsMap:t}}var ty=[126,25],ub="南海诸岛",si=[[[0,3.5],[7,11.2],[15,11.9],[30,7],[42,.7],[52,.7],[56,7.7],[59,.7],[64,.7],[64,0],[5,0],[0,3.5]],[[13,16.1],[19,14.7],[16,21.7],[11,23.1],[13,16.1]],[[12,32.2],[14,38.5],[15,38.5],[13,32.2],[12,32.2]],[[16,47.6],[12,53.2],[13,53.2],[18,47.6],[16,47.6]],[[6,64.4],[8,70],[9,70],[8,64.4],[6,64.4]],[[23,82.6],[29,79.8],[30,79.8],[25,82.6],[23,82.6]],[[37,70.7],[43,62.3],[44,62.3],[39,70.7],[37,70.7]],[[48,51.1],[51,45.5],[53,45.5],[50,51.1],[48,51.1]],[[51,35],[51,28.7],[53,28.7],[53,35],[51,35]],[[52,22.4],[55,17.5],[56,17.5],[53,22.4],[52,22.4]],[[58,12.6],[62,7],[63,7],[60,12.6],[58,12.6]],[[0,3.5],[0,93.1],[64,93.1],[64,0],[63,0],[63,92.4],[1,92.4],[1,3.5],[0,3.5]]];for(var ii=0;ii<si.length;ii++)for(var _o=0;_o<si[ii].length;_o++)si[ii][_o][0]/=10.5,si[ii][_o][1]/=-10.5/.75,si[ii][_o][0]+=ty[0],si[ii][_o][1]+=ty[1];function z4(r,e){if(r==="china"){for(var t=0;t<e.length;t++)if(e[t].name===ub)return;e.push(new JL(ub,$(si,function(a){return{type:"polygon",exterior:a}}),ty))}}var G4={南海诸岛:[32,80],广东:[0,-10],香港:[10,5],澳门:[-10,10],天津:[5,5]};function F4(r,e){if(r==="china"){var t=G4[e.name];if(t){var a=e.getCenter();a[0]+=t[0]/10.5,a[1]+=-t[1]/(10.5/.75),e.setCenter(a)}}}var H4=[[[123.45165252685547,25.73527164402261],[123.49731445312499,25.73527164402261],[123.49731445312499,25.750734064600884],[123.45165252685547,25.750734064600884],[123.45165252685547,25.73527164402261]]];function W4(r,e){r==="china"&&e.name==="台湾"&&e.geometries.push({type:"polygon",exterior:H4[0]})}var $4="name",U4=function(){function r(e,t,a){this.type="geoJSON",this._parsedMap=j(),this._mapName=e,this._specialAreas=a,this._geoJSON=Z4(t)}return r.prototype.load=function(e,t){t=t||$4;var a=this._parsedMap.get(t);if(!a){var n=this._parseToRegions(t);a=this._parsedMap.set(t,{regions:n,boundingRect:Y4(n)})}var i=j(),o=[];return A(a.regions,function(s){var l=s.name;e&&q(e,l)&&(s=s.cloneShallow(l=e[l])),o.push(s),i.set(l,s)}),{regions:o,boundingRect:a.boundingRect||new lt(0,0,0,0),regionsMap:i}},r.prototype._parseToRegions=function(e){var t=this._mapName,a=this._geoJSON,n;try{n=a?TG(a,e):[]}catch(i){throw new Error(` Invalid geoJson format
`+i.message)}return z4(t,n),A(n,function(i){var o=i.name;F4(t,i),W4(t,i);var s=this._specialAreas&&this._specialAreas[o];s&&i.transformTo(s.left,s.top,s.width,s.height)},this),n},r.prototype.getMapForUser=function(){return{geoJson:this._geoJSON,geoJSON:this._geoJSON,specialAreas:this._specialAreas}},r}();function Y4(r){for(var e,t=0;t<r.length;t++){var a=r[t].getBoundingRect();e=e||a.clone(),e.union(a)}return e}function Z4(r){return Z(r)?typeof JSON<"u"&&JSON.parse?JSON.parse(r):new Function("return ("+r+");")():r}var $s=j();const za={registerMap:function(r,e,t){if(e.svg){var a=new B4(r,e.svg);$s.set(r,a)}else{var n=e.geoJson||e.geoJSON;n&&!e.features?t=e.specialAreas:n=e;var a=new U4(r,n,t);$s.set(r,a)}},getGeoResource:function(r){return $s.get(r)},getMapForUser:function(r){var e=$s.get(r);return e&&e.type==="geoJSON"&&e.getMapForUser()},load:function(r,e,t){var a=$s.get(r);if(a)return a.load(e,t)}};var v0=["rect","circle","line","ellipse","polygon","polyline","path"],X4=j(v0),q4=j(v0.concat(["g"])),K4=j(v0.concat(["g"])),m2=St();function cf(r){var e=r.getItemStyle(),t=r.get("areaColor");return t!=null&&(e.fill=t),e}function fb(r){var e=r.style;e&&(e.stroke=e.stroke||e.fill,e.fill=null)}var j4=function(){function r(e){var t=this.group=new at,a=this._transformGroup=new at;t.add(a),this.uid=ps("ec_map_draw"),this._controller=new to(e.getZr()),this._controllerHost={target:a},a.add(this._regionsGroup=new at),a.add(this._svgGroup=new at)}return r.prototype.draw=function(e,t,a,n,i){var o=e.mainType==="geo",s=e.getData&&e.getData();o&&t.eachComponent({mainType:"series",subType:"map"},function(_){!s&&_.getHostGeoModel()===e&&(s=_.getData())});var l=e.coordinateSystem,u=this._regionsGroup,f=this._transformGroup,v=l.getTransformInfo(),h=v.raw,c=v.roam,p=!u.childAt(0)||i,d=e.getShallow("clip",!0),g;d?(g=l.getViewRect().clone(),this.group.setClipPath(new _t({shape:g.clone()}))):this.group.removeClipPath(),p?(f.x=c.x,f.y=c.y,f.scaleX=c.scaleX,f.scaleY=c.scaleY,f.dirty()):Dt(f,c,e);var y=s&&s.getVisual("visualMeta")&&s.getVisual("visualMeta").length>0,m={api:a,geo:l,mapOrGeoModel:e,data:s,isVisualEncodedByVisualMap:y,isGeo:o,transformInfoRaw:h};l.resourceType==="geoJSON"?this._buildGeoJSON(m):l.resourceType==="geoSVG"&&this._buildSVG(m),this._updateController(e,g,t,a),this._updateMapSelectHandler(e,u,a,n)},r.prototype._buildGeoJSON=function(e){var t=this._regionsGroupByName=j(),a=j(),n=this._regionsGroup,i=e.transformInfoRaw,o=e.mapOrGeoModel,s=e.data,l=e.geo.projection,u=l&&l.stream;function f(c,p){return p&&(c=p(c)),c&&[c[0]*i.scaleX+i.x,c[1]*i.scaleY+i.y]}function v(c){for(var p=[],d=!u&&l&&l.project,g=0;g<c.length;++g){var y=f(c[g],d);y&&p.push(y)}return p}function h(c){return{shape:{points:v(c)}}}n.removeAll(),A(e.geo.regions,function(c){var p=c.name,d=t.get(p),g=a.get(p)||{},y=g.dataIdx,m=g.regionModel;if(!d){d=t.set(p,new at),n.add(d),y=s?s.indexOfName(p):null,m=e.isGeo?o.getRegionModel(p):s?s.getItemModel(y):null;var _=m.get("silent",!0);_!=null&&(d.silent=_),a.set(p,{dataIdx:y,regionModel:m})}var S=[],b=[];A(c.geometries,function(T){if(T.type==="polygon"){var C=[T.exterior].concat(T.interiors||[]);u&&(C=gb(C,u)),A(C,function(D){S.push(new He(h(D)))})}else{var M=T.points;u&&(M=gb(M,u,!0)),A(M,function(D){b.push(new Ee(h(D)))})}});var x=f(c.getCenter(),l&&l.project);function w(T,C){if(T.length){var M=new Mh({culling:!0,segmentIgnoreThreshold:1,shape:{paths:T}});d.add(M),vb(e,M,y,m),hb(e,M,p,m,o,y,x),C&&(fb(M),A(M.states,fb))}}w(S),w(b,!0)}),t.each(function(c,p){var d=a.get(p),g=d.dataIdx,y=d.regionModel;cb(e,c,p,y,o,g),pb(e,c,p,y,o),db(e,c,p,y,o)},this)},r.prototype._buildSVG=function(e){var t=e.geo.map,a=e.transformInfoRaw;this._svgGroup.x=a.x,this._svgGroup.y=a.y,this._svgGroup.scaleX=a.scaleX,this._svgGroup.scaleY=a.scaleY,this._svgResourceChanged(t)&&(this._freeSVG(),this._useSVG(t));var n=this._svgDispatcherMap=j(),i=!1;A(this._svgGraphicRecord.named,function(o){var s=o.name,l=e.mapOrGeoModel,u=e.data,f=o.svgNodeTagLower,v=o.el,h=u?u.indexOfName(s):null,c=l.getRegionModel(s);X4.get(f)!=null&&v instanceof br&&vb(e,v,h,c),
2026-07-15 13:20:16 +03:30
` ))}), e . join ( `
` + qh + `
2026-08-15 11:59:58 +03:30
` )} function SX ( r ){ return $ ( r , function ( e ){ var t = e . getRawData (), a = [ e . name ], n = []; return t . each ( t . dimensions , function (){ for ( var i = arguments . length , o = arguments [ i - 1 ], s = t . getName ( o ), l = 0 ; l < i - 1 ; l ++ ) n [ l ] = arguments [ l ]; a . push (( s ? s + is : "" ) + n . join ( is ))}), a . join ( `
2026-07-15 13:20:16 +03:30
` )}). join ( `
` + qh + `
2026-08-15 11:59:58 +03:30
` )} function xX ( r ){ var e = mX ( r ); return { value : kt ([ _X ( e . seriesGroupByCategoryAxis ), SX ( e . other )], function ( t ){ return !! t . replace ( /[\n\t\s]/g , "" )}). join ( `
2026-07-15 13:20:16 +03:30
` + qh + `
2026-08-15 11:59:58 +03:30
` ), meta : e . meta }} function th ( r ){ return r . replace ( /^\s\s*/ , "" ). replace ( /\s\s*$/ , "" )} function bX ( r ){ var e = r . slice ( 0 , r . indexOf ( `
` )); if ( e . indexOf ( is ) >= 0 ) return ! 0 } var by = new RegExp ( "[" + is + "]+" , "g" ); function wX ( r ){ for ( var e = r . split ( /\n+/g ), t = th ( e . shift ()). split ( by ), a = [], n = $ ( t , function ( l ){ return { name : l , data : []}}), i = 0 ; i < e . length ; i ++ ){ var o = th ( e [ i ]). split ( by ); a . push ( o . shift ()); for ( var s = 0 ; s < o . length ; s ++ ) n [ s ] && ( n [ s ]. data [ i ] = o [ s ])} return { series : n , categories : a }} function TX ( r ){ for ( var e = r . split ( /\n+/g ), t = th ( e . shift ()), a = [], n = 0 ; n < e . length ; n ++ ){ var i = th ( e [ n ]); if ( i ){ var o = i . split ( by ), s = "" , l = void 0 , u =! 1 ; isNaN ( o [ 0 ]) ? ( u =! 0 , s = o [ 0 ], o = o . slice ( 1 ), a [ n ] = { name : s , value : []}, l = a [ n ]. value ) : l = a [ n ] = []; for ( var f = 0 ; f < o . length ; f ++ ) l . push ( + o [ f ]); l . length === 1 && ( u ? a [ n ]. value = l [ 0 ] : a [ n ] = l [ 0 ])}} return { name : t , data : a }} function CX ( r , e ){ var t = r . split ( new RegExp ( `
2026-07-15 13:20:16 +03:30
*` + qh + `
2026-08-15 11:59:58 +03:30
*` , "g" )), a = { series : []}; return A ( t , function ( n , i ){ if ( bX ( n )){ var o = wX ( n ), s = e [ i ], l = s . axisDim + "Axis" ; s && ( a [ l ] = a [ l ] || [], a [ l ][ s . axisIndex ] = { data : o . categories }, a . series = a . series . concat ( o . series ))} else { var o = TX ( n ); a . series . push ( o )}}), a } var AX = function ( r ){ B ( e , r ); function e (){ return r !== null && r . apply ( this , arguments ) || this } return e . prototype . onclick = function ( t , a ){ setTimeout ( function (){ a . dispatchAction ({ type : "hideTip" })}); var n = a . getDom (), i = this . model ; this . _dom && n . removeChild ( this . _dom ); var o = document . createElement ( "div" ); o . style . cssText = "position:absolute;top:0;bottom:0;left:0;right:0;padding:5px" , o . style . backgroundColor = i . get ( "backgroundColor" ) || V . color . neutral00 ; var s = document . createElement ( "h4" ), l = i . get ( "lang" ) || []; s . innerHTML = l [ 0 ] || i . get ( "title" ), s . style . cssText = "margin:10px 20px" , s . style . color = i . get ( "textColor" ); var u = document . createElement ( "div" ), f = document . createElement ( "textarea" ); u . style . cssText = "overflow:auto" ; var v = i . get ( "optionToContent" ), h = i . get ( "contentToOption" ), c = xX ( t ); if ( et ( v )){ var p = v ( a . getOption ()); Z ( p ) ? u . innerHTML = p : Yo ( p ) && u . appendChild ( p )} else { f . readOnly = i . get ( "readOnly" ); var d = f . style ; d . cssText = "display:block;width:100%;height:100%;font-family:monospace;font-size:14px;line-height:1.6rem;resize:none;box-sizing:border-box;outline:none" , d . color = i . get ( "textColor" ), d . borderColor = i . get ( "textareaBorderColor" ), d . backgroundColor = i . get ( "textareaColor" ), f . value = c . value , u . appendChild ( f )} var g = c . meta , y = document . createElement ( "div" ); y . style . cssText = "position:absolute;bottom:5px;left:0;right:0" ; var m = "float:right;margin-right:20px;border:none;cursor:pointer;padding:2px 5px;font-size:12px;border-radius:3px" , _ = document . createElement ( "div" ), S = document . createElement ( "div" ); m += ";background-color:" + i . get ( "buttonColor" ), m += ";color:" + i . get ( "buttonTextColor" ); var b = this ; function x (){ n . removeChild ( o ), b . _dom = null } Ed ( _ , "click" , x ), Ed ( S , "click" , function (){ if ( h == null && v != null || h != null && v == null ){ x (); return } var w ; try { et ( h ) ? w = h ( u , a . getOption ()) : w = CX ( f . value , g )} catch ( T ){ throw x (), new Error ( "Data view format error " + T )} w && a . dispatchAction ({ type : "changeDataView" , newOption : w }), x ()}), _ . innerHTML = l [ 1 ], S . innerHTML = l [ 2 ], S . style . cssText = _ . style . cssText = m , ! i . get ( "readOnly" ) && y . appendChild ( S ), y . appendChild ( _ ), o . appendChild ( s ), o . appendChild ( u ), o . appendChild ( y ), u . style . height = n . clientHeight - 80 + "px" , n . appendChild ( o ), this . _dom = o }, e . prototype . remove = function ( t , a ){ this . _dom && a . getDom (). removeChild ( this . _dom )}, e . prototype . dispose = function ( t , a ){ this . remove ( t , a )}, e . getDefaultOption = function ( t ){ var a = { show :! 0 , readOnly :! 1 , optionToContent : null , contentToOption : null , icon : "M17.5,17.3H33 M17.5,17.3H33 M45.4,29.5h-28 M11.5,2v56H51V14.8L38.4,2H11.5z M38.4,2.2v12.7H51 M45.4,41.7h-28" , title : t . getLocaleModel (). get ([ "toolbox" , "dataView" , "title" ]), lang : t . getLocaleModel (). get ([ "toolbox" , "dataView" , "lang" ]), backgroundColor : V . color . background , textColor : V . color . primary , textareaColor : V . color . background , textareaBorderColor : V . color . border , buttonColor : V . color . accent50 , buttonTextColor : V . color . neutral00 }; return a }, e }( gr ); function MX ( r , e ){ return $ ( r , function ( t , a ){ var n = e && e [ a ]; if ( st ( n ) &&! W ( n )){ var i = st ( t ) &&! W ( t ); i || ( t = { value : t }); var o = n . name != null && t . name == null ; return t = ot ( t , n ), o && delete t . name , t } else return t })} ga ({ type : "changeDataView" , event : "dataViewChanged" , update : "prepareAndUpdate" }, function ( r , e ){ var t = []; A ( r . newOption . series , function ( a ){ var n = e . getSeriesByName ( a . name )[ 0 ]; if ( ! n ) t . push ( G ({ type : "scatter" }, a )); else { var i = n . get ( "data" ); t . push ({ name : a . name , data : MX ( a . data , i )})}}), e . mergeOption ( ot ({ series : t }, r . newOption ))}); const DX = AX ; var rR = A , aR = St (); function LX ( r , e ){ var t = j0 ( r ); rR ( e , function ( a , n ){ for ( var i = t . length - 1 ; i >= 0 ; i -- ){ var o = t [ i ]; if ( o [ n ]) break } if ( i < 0 ){ var s = r . queryComponents ({ mainType : "dataZoom" , subType : "select" , id : n })[ 0 ]; if ( s ){ var l = s . getPercentRange (); t [ 0 ][ n ] = { dataZoomId : n , start : l [ 0 ], end : l [ 1 ]}}}}), t . push ( e )} function IX ( r ){ var e = j0 ( r ), t = e [ e . length - 1 ]; e . length > 1 && e . pop (); var a = {}; return rR ( t , function ( n , i ){ for ( var o = e . length - 1 ; o >= 0 ; o -- ) if ( n = e [ o ][ i ], n ){ a [ i ] = n ; break }}), a } function PX ( r ){ aR ( r ). snapshots = null } function RX ( r ){ return j0 ( r ). length } function j0 ( r ){ var e = aR ( r ); return e . snap
2026-07-15 13:20:16 +03:30
2026-08-15 11:59:58 +03:30
`:"<br/>",y=v.join(g);this._showOrMove(s,function(){this._updateContentNotChangedOnAxis(t,u)?this._updatePosition(s,c,o[0],o[1],this._tooltipContent,u):this._showTooltipContent(s,y,u,Math.random()+"",o[0],o[1],c,null,h)})},e.prototype._showSeriesItemTooltip=function(t,a,n){var i=this._ecModel,o=ut(a),s=o.seriesIndex,l=i.getSeriesByIndex(s),u=o.dataModel||l,f=o.dataIndex,v=o.dataType,h=u.getData(v),c=this._renderMode,p=t.positionDefault,d=Ks([h.getItemModel(f),u,l&&(l.coordinateSystem||{}).model],this._tooltipModel,p?{position:p}:null),g=d.get("trigger");if(!(g!=null&&g!=="item")){var y=u.getDataParams(f,v),m=new Yc;y.marker=m.makeTooltipMarker("item",Gi(y.color),c);var _=J1(u.formatTooltip(f,!1,v)),S=d.get("order"),b=d.get("valueFormatter"),x=_.frag,w=x?nS(b?G({valueFormatter:b},x):x,m,c,S,i.get("useUTC"),d.get("textStyle")):_.text,T="item_"+u.name+"_"+f;this._showOrMove(d,function(){this._showTooltipContent(d,w,y,T,t.offsetX,t.offsetY,t.position,t.target,m)}),n({type:"showTip",dataIndexInside:f,dataIndex:h.getRawIndex(f),seriesIndex:s,from:this.uid})}},e.prototype._showComponentItemTooltip=function(t,a,n){var i=this._renderMode==="html",o=ut(a),s=o.tooltipConfig,l=s.option||{},u=l.encodeHTMLContent;if(Z(l)){var f=l;l={content:f,formatter:f},u=!0}u&&i&&l.content&&(l=rt(l),l.content=Ie(l.content));var v=[l],h=this._ecModel.getComponent(o.componentMainType,o.componentIndex);h&&v.push(h),v.push({formatter:l.content});var c=t.positionDefault,p=Ks(v,this._tooltipModel,c?{position:c}:null),d=p.get("content"),g=Math.random()+"",y=new Yc;this._showOrMove(p,function(){var m=rt(p.get("formatterParams")||{});this._showTooltipContent(p,d,m,g,t.offsetX,t.offsetY,t.position,a,y)}),n({type:"showTip",from:this.uid})},e.prototype._showTooltipContent=function(t,a,n,i,o,s,l,u,f){if(this._ticket="",!(!t.get("showContent")||!t.get("show"))){var v=this._tooltipContent;v.setEnterable(t.get("enterable"));var h=t.get("formatter");l=l||t.get("position");var c=a,p=this._getNearestPoint([o,s],n,t.get("trigger"),t.get("borderColor"),t.get("defaultBorderColor",!0)),d=p.color;if(h)if(Z(h)){var g=t.ecModel.get("useUTC"),y=W(n)?n[0]:n,m=y&&y.axisType&&y.axisType.indexOf("time")>=0;c=h,m&&(c=Ph(y.axisValue,c,g)),c=aD(c,n,!0)}else if(et(h)){var _=X(function(S,b){S===this._ticket&&(v.setContent(b,f,t,d,l),this._updatePosition(t,l,o,s,v,n,u))},this);this._ticket=i,c=h(n,i,_)}else c=h;v.setContent(c,f,t,d,l),v.show(t,d),this._updatePosition(t,l,o,s,v,n,u)}},e.prototype._getNearestPoint=function(t,a,n,i,o){if(n==="axis"||W(a))return{color:i||o};if(!W(a))return{color:i||a.color||a.borderColor}},e.prototype._updatePosition=function(t,a,n,i,o,s,l){var u=this._api.getWidth(),f=this._api.getHeight();a=a||t.get("position");var v=o.getSize(),h=t.get("align"),c=t.get("verticalAlign"),p=l&&l.getBoundingRect().clone();if(l&&p.applyTransform(l.transform),et(a)&&(a=a([n,i],s,o.el,p,{viewSize:[u,f],contentSize:v.slice()})),W(a))n=Y(a[0],u),i=Y(a[1],f);else if(st(a)){var d=a;d.width=v[0],d.height=v[1];var g=Ut(d,{width:u,height:f});n=g.x,i=g.y,h=null,c=null}else if(Z(a)&&l){var y=vq(a,p,v,t.get("borderWidth"));n=y[0],i=y[1]}else{var y=uq(n,i,o,u,f,h?null:20,c?null:20);n=y[0],i=y[1]}if(h&&(n-=FT(h)?v[0]/2:h==="right"?v[0]:0),c&&(i-=FT(c)?v[1]/2:c==="bottom"?v[1]:0),nR(t)){var y=fq(n,i,o,u,f);n=y[0],i=y[1]}o.moveTo(n,i)},e.prototype._updateContentNotChangedOnAxis=function(t,a){var n=this._lastDataByCoordSys,i=this._cbParamsList,o=!!n&&n.length===t.length;return o&&A(n,function(s,l){var u=s.dataByAxis||[],f=t[l]||{},v=f.dataByAxis||[];o=o&&u.length===v.length,o&&A(u,function(h,c){var p=v[c]||{},d=h.seriesDataIndices||[],g=p.seriesDataIndices||[];o=o&&h.value===p.value&&h.axisType===p.axisType&&h.axisId===p.axisId&&d.length===g.length,o&&A(d,function(y,m){var _=g[m];o=o&&y.seriesIndex===_.seriesIndex&&y.dataIndex===_.dataIndex}),i&&A(h.seriesDataIndices,function(y){var m=y.seriesIndex,_=a[m],S=i[m];_&&S&&S.data!==_.data&&(o=!1)})})}),this._lastDataByCoordSys=t,this._cbParamsList=a,!!o},e.prototype._hide=function(t){this._lastDataByCoordSys=null,t({type:"hideTip",from:this.uid
` )){ var m = new Ef ; m . newline =! 0 , u . add ( m ); return } var _ = n . getSeriesByName ( y )[ 0 ]; if ( ! f . get ( y )) if ( _ ){ var S = _ . getData (), b = S . getVisual ( "legendLineStyle" ) || {}, x = S . getVisual ( "legendIcon" ), w = S . getVisual ( "style" ), T = this . _createItem ( _ , y , d , p , a , t , b , w , x , v , i ); T . on ( "click" , Ao ( oC , y , null , i , c )). on ( "mouseover" , Ao ( Iy , _ . name , null , i , c )). on ( "mouseout" , Ao ( Py , _ . name , null , i , c )), n . ssr && T . eachChild ( function ( C ){ var M = ut ( C ); M . seriesIndex = _ . seriesIndex , M . dataIndex = d , M . ssrType = "legend" }), h && T . eachChild ( function ( C ){ g . packEventData ( C , a , _ , d , y )}), f . set ( y , ! 0 )} else n . eachRawSeries ( function ( C ){ var M = this ; if ( ! f . get ( y ) && C . legendVisualProvider ){ var D = C . legendVisualProvider ; if ( ! D . containName ( y )) return ; var I = D . indexOfName ( y ), L = D . getItemVisual ( I , "style" ), P = D . getItemVisual ( I , "legendIcon" ), k = Xe ( L . fill ); k && k [ 3 ] === 0 && ( k [ 3 ] = . 2 , L = G ( G ({}, L ),{ fill : sa ( k , "rgba" )})); var R = this . _createItem ( C , y , d , p , a , t ,{}, L , P , v , i ); R . on ( "click" , Ao ( oC , null , y , i , c )). on ( "mouseover" , Ao ( Iy , null , y , i , c )). on ( "mouseout" , Ao ( Py , null , y , i , c )), n . ssr && R . eachChild ( function ( O ){ var E = ut ( O ); E . seriesIndex = C . seriesIndex , E . dataIndex = d , E . ssrType = "legend" }), h && R . eachChild ( function ( O ){ M . packEventData ( O , a , C , d , y )}), f . set ( y , ! 0 )}}, this )}, this ), o && this . _createSelector ( o , a , i , s , l )}, e . prototype . packEventData = function ( t , a , n , i , o ){ var s = { componentType : "legend" , componentIndex : a . componentIndex , dataIndex : i , value : o , seriesIndex : n . seriesIndex }; ut ( t ). eventData = s }, e . prototype . _createSelector = function ( t , a , n , i , o ){ var s = this . getSelectorGroup (); Ly ( t , function ( u ){ var f = u . type , v = new Mt ({ style : { x : 0 , y : 0 , align : "center" , verticalAlign : "middle" }, onclick : function (){ n . dispatchAction ({ type : f === "all" ? "legendAllSelect" : "legendInverseSelect" , legendId : a . id })}}); s . add ( v ); var h = a . getModel ( "selectorLabel" ), c = a . getModel ([ "emphasis" , "selectorLabel" ]); ye ( v ,{ normal : h , emphasis : c },{ defaultText : u . title }), Di ( v )})}, e . prototype . _createItem = function ( t , a , n , i , o , s , l , u , f , v , h ){ var c = t . visualDrawType , p = o . get ( "itemWidth" ), d = o . get ( "itemHeight" ), g = o . isSelected ( a ), y = i . get ( "symbolRotate" ), m = i . get ( "symbolKeepAspect" ), _ = i . get ( "icon" ); f = _ || f || "roundRect" ; var S = DK ( f , i , l , u , c , g , h ), b = new Ef , x = i . getModel ( "textStyle" ); if ( et ( t . getLegendIcon ) && ( ! _ || _ === "inherit" )) b . add ( t . getLegendIcon ({ itemWidth : p , itemHeight : d , icon : f , iconRotate : y , itemStyle : S . itemStyle , lineStyle : S . lineStyle , symbolKeepAspect : m })); else { var w = _ === "inherit" && t . getData (). getVisual ( "symbol" ) ? y === "inherit" ? t . getData (). getVisual ( "symbolRotate" ) : y : 0 ; b . add ( LK ({ itemWidth : p , itemHeight : d , icon : f , iconRotate : w , itemStyle : S . itemStyle , lineStyle : S . lineStyle , symbolKeepAspect : m }))} var T = s === "left" ? p + 5 :- 5 , C = s , M = o . get ( "formatter" ), D = a ; Z ( M ) && M ? D = M . replace ( "{name}" , a ?? "" ) : et ( M ) && ( D = M ( a )); var I = g ? x . getTextColor () : i . get ( "inactiveColor" ); b . add ( new Mt ({ style : Gt ( x ,{ text : D , x : T , y : d / 2 , fill : I , align : C , verticalAlign : "middle" },{ inheritColor : I })})); var L = new _t ({ shape : b . getBoundingRect (), style : { fill : "transparent" }}), P = i . getModel ( "tooltip" ); return P . get ( "show" ) && Ha ({ el : L , componentModel : o , itemName : a , itemTooltipOption : P . option }), b . add ( L ), b . eachChild ( function ( k ){ k . silent =! 0 }), L . silent =! v , this . getContentGroup (). add ( b ), Di ( b ), b . __legendDataIndex = n , b }, e . prototype . layoutInner = function ( t , a , n , i , o , s ){ var l = this . getContentGroup (), u = this . getSelectorGroup (); Ii ( t . get ( "orient" ), l , t . get ( "itemGap" ), n . width , n . height ); var f = l . getBoundingRect (), v = [ - f . x , - f . y ]; if ( u . markRedraw (), l . markRedraw (), o ){ Ii ( "horizontal" , u , t . get ( "selectorItemGap" , ! 0 )); var h = u . getBoundingRect (), c = [ - h . x , - h . y ], p = t . get ( "selectorButtonGap" , ! 0 ), d = t . getOrient (). index , g = d === 0 ? "width" : "height" , y = d === 0 ? "height" : "width" , m = d === 0 ? "y" : "x" ; s === "end" ? c [ d ] += f [ g ] + p : v [ d ] += h [ g ] + p , c [ 1 - d ] += f [ y ] / 2 - h [ y ] / 2 , u . x = c [ 0 ], u . y = c [ 1 ], l . x = v [ 0 ], l . y = v [ 1 ]; var _ = { x : 0 , y : 0 }; return _ [ g ] = f [ g ] + p + h [ g ], _ [ y ] = Math . max ( f [ y ], h [ y ]), _ [ m ] = Math . min ( 0 , h [ m ] + c [ 1 - d ]), _ } else return l . x = v [ 0 ], l . y = v [ 1 ], this . group . getBoundingRect ()}, e . prototype . remove = function (){ this . getContentGroup (). removeAll (), this . _isFirstRender =! 0 }, e . type = "legend.plain" , e }( Xt ); function DK ( r , e , t , a , n , i , o ){ function s ( g , y ){ g . lineWidth === "auto" && ( g . lineWidth = y . lineWidth > 0 ? 2 : 0 ), Ly ( g , function ( m , _ ){ g [ _ ] === "inherit" && ( g [ _ ] = y [ _ ])})} var l = e . getModel ( "itemStyle" ), u = l . getItemStyle (), f = r . lastIndexOf ( "empty" , 0 ) === 0 ? "fill" : "s
`||n==="")){var i=r.isSelected(n);q(t,n)?t[n]=t[n]&&i:t[n]=i}}),t}function PK(r){r.registerAction(" legendToggleSelect "," legendselectchanged ",dt(Js," toggleSelected ")),r.registerAction(" legendAllSelect "," legendselectall ",dt(Js," allSelect ")),r.registerAction(" legendInverseSelect "," legendinverseselect ",dt(Js," inverseSelect ")),r.registerAction(" legendSelect "," legendselected ",dt(Js," select ")),r.registerAction(" legendUnSelect "," legendunselected ",dt(Js," unSelect "))}function gR(r){r.registerComponentModel(Dy),r.registerComponentView(dR),r.registerProcessor(r.PRIORITY.PROCESSOR.SERIES_FILTER,IK),r.registerSubTypeDefaulter(" legend ",function(){return" plain "}),PK(r)}var RK=function(r){B(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.prototype.setScrollDataIndex=function(t){this.option.scrollDataIndex=t},e.prototype.init=function(t,a,n){var i=Xi(t);r.prototype.init.call(this,t,a,n),lC(this,t,i)},e.prototype.mergeOption=function(t,a){r.prototype.mergeOption.call(this,t,a),lC(this,this.option,t)},e.type=" legend . scroll ",e.defaultOption=Rn(Dy.defaultOption,{scrollDataIndex:0,pageButtonItemGap:5,pageButtonGap:null,pageButtonPosition:" end ",pageFormatter:" { current } / { total } ",pageIcons:{horizontal:[" M0 , 0 L12 , - 10 L12 , 10 z "," M0 , 0 L - 12 , - 10 L - 12 , 10 z "],vertical:[" M0 , 0 L20 , 0 L10 , - 20 z "," M0 , 0 L20 , 0 L10 , 20 z "]},pageIconColor:V.color.accent50,pageIconInactiveColor:V.color.accent10,pageIconSize:15,pageTextStyle:{color:V.color.tertiary},animationDurationUpdate:800}),e}(Dy);function lC(r,e,t){var a=r.getOrient(),n=[1,1];n[a.index]=0,pa(e,t,{type:" box ",ignoreSize:!!n})}const kK=RK;var uC=at,yd=[" width "," height "],md=[" x "," y "],EK=function(r){B(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t.newlineDisabled=!0,t._currentIndex=0,t}return e.prototype.init=function(){r.prototype.init.call(this),this.group.add(this._containerGroup=new uC),this._containerGroup.add(this.getContentGroup()),this.group.add(this._controllerGroup=new uC)},e.prototype.resetInner=function(){r.prototype.resetInner.call(this),this._controllerGroup.removeAll(),this._containerGroup.removeClipPath(),this._containerGroup.__rectSize=null},e.prototype.renderInner=function(t,a,n,i,o,s,l){var u=this;r.prototype.renderInner.call(this,t,a,n,i,o,s,l);var f=this._controllerGroup,v=a.get(" pageIconSize ",!0),h=W(v)?v:[v,v];p(" pagePrev ",0);var c=a.getModel(" pageTextStyle ");f.add(new Mt({name:" pageText ",style:{text:" xx / xx ",fill:c.getTextColor(),font:c.getFont(),verticalAlign:" middle ",align:" center "},silent:!0})),p(" pageNext ",1);function p(d,g){var y=d+" DataIndex ",m=su(a.get(" pageIcons ",!0)[a.getOrient().name][g],{onclick:X(u._pageGo,u,y,a,i)},{x:-h[0]/2,y:-h[1]/2,width:h[0],height:h[1]});m.name=d,f.add(m)}},e.prototype.layoutInner=function(t,a,n,i,o,s){var l=this.getSelectorGroup(),u=t.getOrient().index,f=yd[u],v=md[u],h=yd[1-u],c=md[1-u];o&&Ii(" horizontal ",l,t.get(" selectorItemGap ",!0));var p=t.get(" selectorButtonGap ",!0),d=l.getBoundingRect(),g=[-d.x,-d.y],y=rt(n);o&&(y[f]=n[f]-d[f]-p);var m=this._layoutContentAndController(t,i,y,u,f,h,c,v);if(o){if(s===" end ")g[u]+=m[f]+p;else{var _=d[f]+p;g[u]-=_,m[v]-=_}m[f]+=d[f]+p,g[1-u]+=m[c]+m[h]/2-d[h]/2,m[h]=Math.max(m[h],d[h]),m[c]=Math.min(m[c],d[c]+g[1-u]),l.x=g[0],l.y=g[1],l.markRedraw()}return m},e.prototype._layoutContentAndController=function(t,a,n,i,o,s,l,u){var f=this.getContentGroup(),v=this._containerGroup,h=this._controllerGroup;Ii(t.get(" orient "),f,t.get(" itemGap "),i?n.width:null,i?null:n.height),Ii(" horizontal ",h,t.get(" pageButtonItemGap ",!0));var c=f.getBoundingRect(),p=h.getBoundingRect(),d=this._showController=c[o]>n[o],g=[-c.x,-c.y];a||(g[i]=f[u]);var y=[0,0],m=[-p.x,-p.y],_=Q(t.get(" pageButtonGap ",!0),t.get(" itemGap ",!0));if(d){var S=t.get(" pageButtonPosition ",!0);S===" end " ? m [ i ] += n [ o ] - p [ o ] : y [ i ] += p [ o ] + _ } m [ 1 - i ] += c [ s ] / 2 - p [ s ] / 2 , f . setPosition ( g ), v . setPosition ( y ), h . setPosition ( m ); var b = { x : 0 , y : 0 }; if ( b [ o ] = d ? n [ o ] : c [ o ], b [ s ] = Math . max ( c [ s ], p [ s ]), b [ l ] = Math . min ( 0 , p [ l ] + m [ 1 - i ]), v . __rectSize = n [ o ], d ){ var x = { x : 0 , y : 0 }; x [ o ] = Math . max ( n [ o ] - p [ o ] - _ , 0 ), x [ s ] = b [ s ], v . setClipPath ( new _t ({ shape : x }))