import {
d as pS,
aE as Vv,
g as Pi,
a as E,
C as gS,
z as mS,
A as Fe,
j as rt,
P as yS,
V as _S,
B as eo,
ae as SS
} from './vendor.3506a68e.js'
/* empty css */ /* empty css */ /* empty css */ import {
r as xS,
o as Ae,
k as wS
} from './index.9e4b607f.js'
var bS =
'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAAAXNSR0IArs4c6QAAA2JJREFUWEftl9tLFHEUxz9n1FoqS4IkpNtDQaYlGd3snlYrhgTdifoT6jGqh9CgepCgx3qIHopKuqA+lElZDyph1ENUpoHQhei5pDJ3Tszorjuzl5ndVZHYeZv5nd+cz3zP+Z7frjDJL5nkfGQBM61QVsGsgpkqEG+/tpNLEeswqUIoRHkixdyLFzthPag9FBEiiEEQZQdQ4AAS6qWYs27IcQPUl+QxhQpyCALVwAo06Vj7xTvy5QChaMgxBdQ+5vGLasSGqkKZaSeLzqJR6a3n4XvhDwFmyRL+jBmgvmUKQ2y0y2baYCUeKiVr6dtSxuGMS6yvWDjSRxbQdpT8yEujFXHLEK1ceG00fgCDpVLGl5QBtY+p/GDTSB9ZpVs2Ds4+JeVcTMnF+poKTE4ClSjTI70UT4l4n50sztl7PQQokxIGfQNqN8eA66729hbOgkrddjtlNW2JXh7zOm1nBtP4BszwJooTIbxByfHZCndlLfuT5YkF7GYNIV5E2d+5f3QsjD4fVu4tQh0m3UALUGqrmTjeMkaxrOFzaoAdtkv7HeMiWemE9wj1PKKRKrZgcAeY40P901LBBa+4uB2jHTSh1DoUcA9c6EE4x3pui2BqJycwaQByPQez8IECViQyhueg1k5mY9KBsjTOF/ZicI6v3LKOJW0nQC5XgaNeakTWDXbJBh77iU/oOe1iEYN0AXNHFPloK/aNm+HzUttYwFTuo6xyJEs0sIercE82s88PXGzRXLv0OStRrmFwmRA3ZBtD4RBtZytCo89+C28bQCiWLcmN4Vlir6/TZxxHaUDJSxrrVtLgtGz1NkbagHa/hbiCcCzhGIpIHJVmuJF6mctyP8ZIC1CfM5+/PIjpNy+5w+uWMSr9GSNlQH1KCUM8BQodPO75GG8oD2+4LzvZ6/dbUgds5RDKrXQSIFgnxjLZwad09vs62vXhCKC76f3cC2ckyPl04DzHTKTfLUAzDQWFXhambozUS9zMboSWmKMP+w+O9cvFeYWVzSUo1bSmq55/BRuZRYBel0m+Y1CDUodSY0M4TdMotRzMBM43oJ27mXKUSyilQCcGJ6SWfm1lOr+5gnIkCuYJg+yRA/ycMECvRNrEYkzKyKFfannlFe933ZeL/b5sPOKygJmqmlXwv1fwH9at6ylMGY7gAAAAAElFTkSuQmCC',
TS = Object.freeze({
__proto__: null,
[Symbol.toStringTag]: 'Module',
default: bS
}),
CS =
'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAAAXNSR0IArs4c6QAABDFJREFUWEftmF9oW3UUx7/n3mTt/INaxUEiU1zrHKnaJsW0nVazFbWbxYW6TREEEWT6sBdBfPDNB/Ft4ItTEMZAtKFUzdSuLbVOu3Zp1jSldWPWP3OzdXSCUu1s19wjN7lpbm7u3f3d22UUNA+BXM7vez58z+93fueGsMY/tMb58N8BbJ9JXleZWe/zyBnPcuXSbKyq4c+rUZ1VObibO2VpNvAMMe8DIwywl3NUTEQTIBz6G1UH4z7fgltY14C7z437iaQYGE02yX+SJLnjI38g5QbSFWD0/KlbvXz5BDNvsk/KANG8xGj+eOMDk/bxxRGuADvOjn9G4PaslKbAWm2NgtpjEGGa5tcFYoHAkhNIx4DRn8eaiHB8JUmeIP8gr2jynAgvd20MvltmwJMfAHihJMkKkIGMdBZLNNZ9ZyhUVsBdP46eY8IdBcOsLNOOs46GQEqmAhvivoaLopCOShydTt+ekRYviIrnGo4WrWVSoDx+5O7GXlENR4DtZxMBLPMVTyJrp4XypdVIWCMlmZ6L3xX+sCyAO84MtRBJX+tPr2giXdz+z6ub3hFd58jBtu9HGgnKsKi4aRzJ+76oDh8U1XAE+OQPIzXLmcwZXfsrdBvL0hpQiPb01DTHygIYSia9t914Sb1XPaIJjHEKSfV992wdF13vyEFV9LHTx5IAHPWygs20cF6ZveW7wB7h28Q54Klv3lKgvG68OKwcKW7b1NO/paVN1D2zrWS7dvvpY/dDyaRtA00CJJme79v86GEnax07qIpvm/pqAOCIWSJDXy6EEGaUC7RpMBL5p+yAkakBdTgdYoYsmkwCXhqo3f6+aLzoFrLUe2Sy/20wvyaSkIiODgZa20ArF5/IsmyMqxJnVzJLLZP9nQB35H7mcpYISpSSLv+1bbA++ocwlS7QPaAq0tkpP7z5pgQDQdPkhHled71/6N6H5t3Arc5BzcWtE72/AOxfsVBPQsReT4VvMBD57ZoDqrdKhXfuAJhfKUpeOkn3LvDi3vFrVeK6VPfN66lyL7PyKoAaS2eKJmyag0wHiDOHhuvaf3Xipu0ebBg9Uit5lEYwbSGiB7Pvv8ze0tOQkyrMgwYMFZhI/U4zMAyJ0sw4MVq/84r3siVgOBWvYYUPM9QXct1kvOoGpQnkTz3Rt1iWXkyEd2anJOPHFLBpqqdq6dLiBAGFzW+YkJ2USSD2d4XQOBZ6aloIMJT89E0wv6EPzo/spQbalNaSzuAN4ejJhl1PCAEGE93HGWz3l4aAMQ5C1P0pV2xIBXfMFXUqM4m6ka4+EFodyOtCLccFk1NTjELeJX8q+OyMLeB9o12tksJfMrPt5Ew2t6Vxa1iWkOiTdPjpqFCJ1aDaRKxZUmg/g6vVe9fKTStAezACiJkVXISMeOYGvGc2adv2QXdlvnqr/gdcrZdr3sF/AWQ0XDiCWwUIAAAAAElFTkSuQmCC',
AS = Object.freeze({
__proto__: null,
[Symbol.toStringTag]: 'Module',
default: CS
})
const MS = '_incomeConsus_7nw9z_1',
DS = '_income_7nw9z_1',
IS = '_countPrice_7nw9z_10',
LS = '_searchTime_7nw9z_20',
PS = '_section_7nw9z_37',
RS = '_numberCount_7nw9z_45',
ES = '_color1_7nw9z_60',
OS = '_color2_7nw9z_63',
kS = '_color3_7nw9z_66',
BS = '_color4_7nw9z_69',
NS = '_color5_7nw9z_72',
FS = '_color6_7nw9z_75',
zS = '_color7_7nw9z_78',
VS = '_color8_7nw9z_81',
GS = '_color9_7nw9z_84',
HS = '_type_7nw9z_87',
WS = '_price_7nw9z_90',
US = '_incomeTitle_7nw9z_105',
YS = '_incomeLine_7nw9z_122',
ZS = '_pieSection_7nw9z_126',
$S = '_pieIncome_7nw9z_132',
XS = '_rateAll_7nw9z_136',
qS = '_rate_7nw9z_136',
KS = '_pieData_7nw9z_161',
QS = '_pieTitle_7nw9z_178',
JS = '_pieLive_7nw9z_191',
jS = '_pieVideo_7nw9z_194',
tx = '_pieMusic_7nw9z_197',
ex = '_pie1_7nw9z_200',
rx = '_pie2_7nw9z_203',
nx = '_pie3_7nw9z_206',
ix = '_pie4_7nw9z_209',
ax = '_pie5_7nw9z_212',
ox = '_pie6_7nw9z_215',
sx = '_timePopup_7nw9z_226',
lx = '_timeMonth_7nw9z_232',
ux = '_timeYear_7nw9z_233'
var V = {
incomeConsus: MS,
income: DS,
countPrice: IS,
searchTime: LS,
section: PS,
numberCount: RS,
color1: ES,
color2: OS,
color3: kS,
color4: BS,
color5: NS,
color6: FS,
color7: zS,
color8: VS,
color9: GS,
type: HS,
price: WS,
incomeTitle: US,
incomeLine: YS,
pieSection: ZS,
pieIncome: $S,
rateAll: XS,
rate: qS,
pieData: KS,
pieTitle: QS,
pieLive: JS,
pieVideo: jS,
pieMusic: tx,
pie1: ex,
pie2: rx,
pie3: nx,
pie4: ix,
pie5: ax,
pie6: ox,
timePopup: sx,
timeMonth: lx,
timeYear: ux
}
/*! *****************************************************************************
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 Ml =
function (r, t) {
return (
(Ml =
Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array &&
function (e, n) {
e.__proto__ = n
}) ||
function (e, n) {
for (var i in n)
Object.prototype.hasOwnProperty.call(n, i) && (e[i] = n[i])
}),
Ml(r, t)
)
}
function B(r, t) {
if (typeof t != 'function' && t !== null)
throw new TypeError(
'Class extends value ' + String(t) + ' is not a constructor or null'
)
Ml(r, t)
function e() {
this.constructor = r
}
r.prototype =
t === null ? Object.create(t) : ((e.prototype = t.prototype), new e())
}
var fx = (function () {
function r() {
;(this.firefox = !1),
(this.ie = !1),
(this.edge = !1),
(this.newEdge = !1),
(this.weChat = !1)
}
return r
})(),
hx = (function () {
function r() {
;(this.browser = new fx()),
(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 != 'undefined')
}
return r
})(),
Ur = new hx()
typeof wx == 'object' && typeof wx.getSystemInfoSync == 'function'
? ((Ur.wxa = !0), (Ur.touchEventsSupported = !0))
: typeof document == 'undefined' && typeof self != 'undefined'
? (Ur.worker = !0)
: typeof navigator == 'undefined'
? ((Ur.node = !0), (Ur.svgSupported = !0))
: vx(navigator.userAgent, Ur)
function vx(r, t) {
var e = t.browser,
n = r.match(/Firefox\/([\d.]+)/),
i = r.match(/MSIE\s([\d.]+)/) || r.match(/Trident\/.+?rv:(([\d.]+))/),
a = r.match(/Edge?\/([\d.]+)/),
o = /micromessenger/i.test(r)
n && ((e.firefox = !0), (e.version = n[1])),
i && ((e.ie = !0), (e.version = i[1])),
a &&
((e.edge = !0),
(e.version = a[1]),
(e.newEdge = +a[1].split('.')[0] > 18)),
o && (e.weChat = !0),
(t.svgSupported = typeof SVGRect != 'undefined'),
(t.touchEventsSupported = 'ontouchstart' in window && !e.ie && !e.edge),
(t.pointerEventsSupported =
'onpointerdown' in window && (e.edge || (e.ie && +e.version >= 11))),
(t.domSupported = typeof document != 'undefined')
var s = document.documentElement.style
;(t.transform3dSupported =
((e.ie && 'transition' in s) ||
e.edge ||
('WebKitCSSMatrix' in window && 'm11' in new WebKitCSSMatrix()) ||
'MozPerspective' in s) &&
!('OTransition' in s)),
(t.transformSupported = t.transform3dSupported || (e.ie && +e.version >= 9))
}
var at = Ur,
Dl = 12,
cx = 'sans-serif',
Yr = Dl + 'px ' + cx,
dx = 20,
px = 100,
gx =
"007LLmW'55;N0500LLLLLLLLLL00NNNLzWW\\\\WQb\\0FWLg\\bWb\\WQ\\WrWWQ000CL5LLFLL0LL**F*gLLLL5F0LF\\FFF5.5N"
function mx(r) {
var t = {}
if (typeof JSON == 'undefined') return t
for (var e = 0; e < r.length; e++) {
var n = String.fromCharCode(e + 32),
i = (r.charCodeAt(e) - dx) / px
t[n] = i
}
return t
}
var yx = mx(gx),
kn = {
createCanvas: function () {
return typeof document != 'undefined' && document.createElement('canvas')
},
measureText: (function () {
var r, t
return function (e, n) {
if (!r) {
var i = kn.createCanvas()
r = i && i.getContext('2d')
}
if (r) return t !== n && (t = r.font = n || Yr), r.measureText(e)
;(e = e || ''), (n = n || Yr)
var a = /^([0-9]*?)px$/.exec(n),
o = +(a && a[1]) || Dl,
s = 0
if (n.indexOf('mono') >= 0) s = o * e.length
else
for (var l = 0; l < e.length; l++) {
var u = yx[e[l]]
s += u == null ? o : u * o
}
return { width: s }
}
})(),
loadImage: function (r, t, e) {
var n = new Image()
return (n.onload = t), (n.onerror = e), (n.src = r), n
}
},
Gv = Sr(
[
'Function',
'RegExp',
'Date',
'Error',
'CanvasGradient',
'CanvasPattern',
'Image',
'Canvas'
],
function (r, t) {
return (r['[object ' + t + ']'] = !0), r
},
{}
),
Hv = Sr(
[
'Int8',
'Uint8',
'Uint8Clamped',
'Int16',
'Uint16',
'Int32',
'Uint32',
'Float32',
'Float64'
],
function (r, t) {
return (r['[object ' + t + 'Array]'] = !0), r
},
{}
),
Bn = Object.prototype.toString,
ro = Array.prototype,
_x = ro.forEach,
Sx = ro.filter,
Il = ro.slice,
xx = ro.map,
Wv = function () {}.constructor,
no = Wv ? Wv.prototype : null,
Ll = '__proto__',
bx = 2311
function Uv() {
return bx++
}
function Pl() {
for (var r = [], t = 0; t < arguments.length; t++) r[t] = arguments[t]
typeof console != 'undefined' && console.error.apply(console, r)
}
function tt(r) {
if (r == null || typeof r != 'object') return r
var t = r,
e = Bn.call(r)
if (e === '[object Array]') {
if (!ki(r)) {
t = []
for (var n = 0, i = r.length; n < i; n++) t[n] = tt(r[n])
}
} else if (Hv[e]) {
if (!ki(r)) {
var a = r.constructor
if (a.from) t = a.from(r)
else {
t = new a(r.length)
for (var n = 0, i = r.length; n < i; n++) t[n] = r[n]
}
}
} else if (!Gv[e] && !ki(r) && !Ri(r)) {
t = {}
for (var o in r) r.hasOwnProperty(o) && o !== Ll && (t[o] = tt(r[o]))
}
return t
}
function nt(r, t, e) {
if (!Y(t) || !Y(r)) return e ? tt(t) : r
for (var n in t)
if (t.hasOwnProperty(n) && n !== Ll) {
var i = r[n],
a = t[n]
Y(a) &&
Y(i) &&
!z(a) &&
!z(i) &&
!Ri(a) &&
!Ri(i) &&
!Yv(a) &&
!Yv(i) &&
!ki(a) &&
!ki(i)
? nt(i, a, e)
: (e || !(n in r)) && (r[n] = tt(t[n]))
}
return r
}
function N(r, t) {
if (Object.assign) Object.assign(r, t)
else for (var e in t) t.hasOwnProperty(e) && e !== Ll && (r[e] = t[e])
return r
}
function j(r, t, e) {
for (var n = xt(t), i = 0; i < n.length; i++) {
var a = n[i]
;(e ? t[a] != null : r[a] == null) && (r[a] = t[a])
}
return r
}
function ot(r, t) {
if (r) {
if (r.indexOf) return r.indexOf(t)
for (var e = 0, n = r.length; e < n; e++) if (r[e] === t) return e
}
return -1
}
function Tx(r, t) {
var e = r.prototype
function n() {}
;(n.prototype = t.prototype), (r.prototype = new n())
for (var i in e) e.hasOwnProperty(i) && (r.prototype[i] = e[i])
;(r.prototype.constructor = r), (r.superClass = t)
}
function ze(r, t, e) {
if (
((r = 'prototype' in r ? r.prototype : r),
(t = 'prototype' in t ? t.prototype : t),
Object.getOwnPropertyNames)
)
for (var n = Object.getOwnPropertyNames(t), i = 0; i < n.length; i++) {
var a = n[i]
a !== 'constructor' && (e ? t[a] != null : r[a] == null) && (r[a] = t[a])
}
else j(r, t, e)
}
function Zt(r) {
return !r || typeof r == 'string' ? !1 : typeof r.length == 'number'
}
function A(r, t, e) {
if (!!(r && t))
if (r.forEach && r.forEach === _x) r.forEach(t, e)
else if (r.length === +r.length)
for (var n = 0, i = r.length; n < i; n++) t.call(e, r[n], n, r)
else for (var a in r) r.hasOwnProperty(a) && t.call(e, r[a], a, r)
}
function G(r, t, e) {
if (!r) return []
if (!t) return El(r)
if (r.map && r.map === xx) return r.map(t, e)
for (var n = [], i = 0, a = r.length; i < a; i++)
n.push(t.call(e, r[i], i, r))
return n
}
function Sr(r, t, e, n) {
if (!!(r && t)) {
for (var i = 0, a = r.length; i < a; i++) e = t.call(n, e, r[i], i, r)
return e
}
}
function Lt(r, t, e) {
if (!r) return []
if (!t) return El(r)
if (r.filter && r.filter === Sx) return r.filter(t, e)
for (var n = [], i = 0, a = r.length; i < a; i++)
t.call(e, r[i], i, r) && n.push(r[i])
return n
}
function xt(r) {
if (!r) return []
if (Object.keys) return Object.keys(r)
var t = []
for (var e in r) r.hasOwnProperty(e) && t.push(e)
return t
}
function Cx(r, t) {
for (var e = [], n = 2; n < arguments.length; n++) e[n - 2] = arguments[n]
return function () {
return r.apply(t, e.concat(Il.call(arguments)))
}
}
var X = no && Q(no.bind) ? no.call.bind(no.bind) : Cx
function lt(r) {
for (var t = [], e = 1; e < arguments.length; e++) t[e - 1] = arguments[e]
return function () {
return r.apply(this, t.concat(Il.call(arguments)))
}
}
function z(r) {
return Array.isArray ? Array.isArray(r) : Bn.call(r) === '[object Array]'
}
function Q(r) {
return typeof r == 'function'
}
function W(r) {
return typeof r == 'string'
}
function Rl(r) {
return Bn.call(r) === '[object String]'
}
function dt(r) {
return typeof r == 'number'
}
function Y(r) {
var t = typeof r
return t === 'function' || (!!r && t === 'object')
}
function Yv(r) {
return !!Gv[Bn.call(r)]
}
function ie(r) {
return !!Hv[Bn.call(r)]
}
function Ri(r) {
return (
typeof r == 'object' &&
typeof r.nodeType == 'number' &&
typeof r.ownerDocument == 'object'
)
}
function io(r) {
return r.colorStops != null
}
function Ax(r) {
return r.image != null
}
function Mx(r) {
return Bn.call(r) === '[object RegExp]'
}
function ao(r) {
return r !== r
}
function Ei() {
for (var r = [], t = 0; t < arguments.length; t++) r[t] = arguments[t]
for (var e = 0, n = r.length; e < n; e++) if (r[e] != null) return r[e]
}
function ht(r, t) {
return r != null ? r : t
}
function Oi(r, t, e) {
return r != null ? r : t != null ? t : e
}
function El(r) {
for (var t = [], e = 1; e < arguments.length; e++) t[e - 1] = arguments[e]
return Il.apply(r, t)
}
function Zv(r) {
if (typeof r == 'number') return [r, r, r, r]
var t = r.length
return t === 2
? [r[0], r[1], r[0], r[1]]
: t === 3
? [r[0], r[1], r[2], r[1]]
: r
}
function Ve(r, t) {
if (!r) throw new Error(t)
}
function Ge(r) {
return r == null
? null
: typeof r.trim == 'function'
? r.trim()
: r.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, '')
}
var $v = '__ec_primitive__'
function oo(r) {
r[$v] = !0
}
function ki(r) {
return r[$v]
}
var Dx = (function () {
function r(t) {
this.data = {}
var e = z(t)
this.data = {}
var n = this
t instanceof r ? t.each(i) : t && A(t, i)
function i(a, o) {
e ? n.set(a, o) : n.set(o, a)
}
}
return (
(r.prototype.get = function (t) {
return this.data.hasOwnProperty(t) ? this.data[t] : null
}),
(r.prototype.set = function (t, e) {
return (this.data[t] = e)
}),
(r.prototype.each = function (t, e) {
for (var n in this.data)
this.data.hasOwnProperty(n) && t.call(e, this.data[n], n)
}),
(r.prototype.keys = function () {
return xt(this.data)
}),
(r.prototype.removeKey = function (t) {
delete this.data[t]
}),
r
)
})()
function q(r) {
return new Dx(r)
}
function Ix(r, t) {
for (var e = new r.constructor(r.length + t.length), n = 0; n < r.length; n++)
e[n] = r[n]
for (var i = r.length, n = 0; n < t.length; n++) e[n + i] = t[n]
return e
}
function so(r, t) {
var e
if (Object.create) e = Object.create(r)
else {
var n = function () {}
;(n.prototype = r), (e = new n())
}
return t && N(e, t), e
}
function Xv(r) {
var t = r.style
;(t.webkitUserSelect = 'none'),
(t.userSelect = 'none'),
(t.webkitTapHighlightColor = 'rgba(0,0,0,0)'),
(t['-webkit-touch-callout'] = 'none')
}
function nr(r, t) {
return r.hasOwnProperty(t)
}
function $t() {}
var Lx = 180 / Math.PI
function Nn(r, t) {
return r == null && (r = 0), t == null && (t = 0), [r, t]
}
function Px(r) {
return [r[0], r[1]]
}
function qv(r, t, e) {
return (r[0] = t[0] + e[0]), (r[1] = t[1] + e[1]), r
}
function Rx(r, t, e) {
return (r[0] = t[0] - e[0]), (r[1] = t[1] - e[1]), r
}
function Ex(r) {
return Math.sqrt(Ox(r))
}
function Ox(r) {
return r[0] * r[0] + r[1] * r[1]
}
function Ol(r, t, e) {
return (r[0] = t[0] * e), (r[1] = t[1] * e), r
}
function kx(r, t) {
var e = Ex(t)
return (
e === 0 ? ((r[0] = 0), (r[1] = 0)) : ((r[0] = t[0] / e), (r[1] = t[1] / e)),
r
)
}
function kl(r, t) {
return Math.sqrt(
(r[0] - t[0]) * (r[0] - t[0]) + (r[1] - t[1]) * (r[1] - t[1])
)
}
var Bl = kl
function Bx(r, t) {
return (r[0] - t[0]) * (r[0] - t[0]) + (r[1] - t[1]) * (r[1] - t[1])
}
var Fn = Bx
function lo(r, t, e, n) {
return (r[0] = t[0] + n * (e[0] - t[0])), (r[1] = t[1] + n * (e[1] - t[1])), r
}
function ue(r, t, e) {
var n = t[0],
i = t[1]
return (
(r[0] = e[0] * n + e[2] * i + e[4]), (r[1] = e[1] * n + e[3] * i + e[5]), r
)
}
function zn(r, t, e) {
return (r[0] = Math.min(t[0], e[0])), (r[1] = Math.min(t[1], e[1])), r
}
function Vn(r, t, e) {
return (r[0] = Math.max(t[0], e[0])), (r[1] = Math.max(t[1], e[1])), r
}
var Gn = (function () {
function r(t, e) {
;(this.target = t), (this.topTarget = e && e.topTarget)
}
return r
})(),
Nx = (function () {
function r(t) {
;(this.handler = t),
t.on('mousedown', this._dragStart, this),
t.on('mousemove', this._drag, this),
t.on('mouseup', this._dragEnd, this)
}
return (
(r.prototype._dragStart = function (t) {
for (var e = t.target; e && !e.draggable; )
e = e.parent || e.__hostTarget
e &&
((this._draggingTarget = e),
(e.dragging = !0),
(this._x = t.offsetX),
(this._y = t.offsetY),
this.handler.dispatchToElement(new Gn(e, t), 'dragstart', t.event))
}),
(r.prototype._drag = function (t) {
var e = this._draggingTarget
if (e) {
var n = t.offsetX,
i = t.offsetY,
a = n - this._x,
o = i - this._y
;(this._x = n),
(this._y = i),
e.drift(a, o, t),
this.handler.dispatchToElement(new Gn(e, t), 'drag', t.event)
var s = this.handler.findHover(n, i, e).target,
l = this._dropTarget
;(this._dropTarget = s),
e !== s &&
(l &&
s !== l &&
this.handler.dispatchToElement(
new Gn(l, t),
'dragleave',
t.event
),
s &&
s !== l &&
this.handler.dispatchToElement(
new Gn(s, t),
'dragenter',
t.event
))
}
}),
(r.prototype._dragEnd = function (t) {
var e = this._draggingTarget
e && (e.dragging = !1),
this.handler.dispatchToElement(new Gn(e, t), 'dragend', t.event),
this._dropTarget &&
this.handler.dispatchToElement(
new Gn(this._dropTarget, t),
'drop',
t.event
),
(this._draggingTarget = null),
(this._dropTarget = null)
}),
r
)
})(),
Fx = Nx,
zx = (function () {
function r(t) {
t && (this._$eventProcessor = t)
}
return (
(r.prototype.on = function (t, e, n, i) {
this._$handlers || (this._$handlers = {})
var a = this._$handlers
if (
(typeof e == 'function' && ((i = n), (n = e), (e = null)), !n || !t)
)
return this
var o = this._$eventProcessor
e != null && o && o.normalizeQuery && (e = o.normalizeQuery(e)),
a[t] || (a[t] = [])
for (var s = 0; s < a[t].length; s++) if (a[t][s].h === n) return this
var l = {
h: n,
query: e,
ctx: i || this,
callAtLast: n.zrEventfulCallAtLast
},
u = a[t].length - 1,
f = a[t][u]
return f && f.callAtLast ? a[t].splice(u, 0, l) : a[t].push(l), this
}),
(r.prototype.isSilent = function (t) {
var e = this._$handlers
return !e || !e[t] || !e[t].length
}),
(r.prototype.off = function (t, e) {
var n = this._$handlers
if (!n) return this
if (!t) return (this._$handlers = {}), this
if (e) {
if (n[t]) {
for (var i = [], a = 0, o = n[t].length; a < o; a++)
n[t][a].h !== e && i.push(n[t][a])
n[t] = i
}
n[t] && n[t].length === 0 && delete n[t]
} else delete n[t]
return this
}),
(r.prototype.trigger = function (t) {
for (var e = [], n = 1; n < arguments.length; n++)
e[n - 1] = arguments[n]
if (!this._$handlers) return this
var i = this._$handlers[t],
a = this._$eventProcessor
if (i)
for (var o = e.length, s = i.length, l = 0; l < s; l++) {
var u = i[l]
if (!(a && a.filter && u.query != null && !a.filter(t, u.query)))
switch (o) {
case 0:
u.h.call(u.ctx)
break
case 1:
u.h.call(u.ctx, e[0])
break
case 2:
u.h.call(u.ctx, e[0], e[1])
break
default:
u.h.apply(u.ctx, e)
break
}
}
return a && a.afterTrigger && a.afterTrigger(t), this
}),
(r.prototype.triggerWithContext = function (t) {
for (var e = [], n = 1; n < arguments.length; n++)
e[n - 1] = arguments[n]
if (!this._$handlers) return this
var i = this._$handlers[t],
a = this._$eventProcessor
if (i)
for (
var o = e.length, s = e[o - 1], l = i.length, u = 0;
u < l;
u++
) {
var f = i[u]
if (!(a && a.filter && f.query != null && !a.filter(t, f.query)))
switch (o) {
case 0:
f.h.call(s)
break
case 1:
f.h.call(s, e[0])
break
case 2:
f.h.call(s, e[0], e[1])
break
default:
f.h.apply(s, e.slice(1, o - 1))
break
}
}
return a && a.afterTrigger && a.afterTrigger(t), this
}),
r
)
})(),
fe = zx,
Vx = Math.log(2)
function Nl(r, t, e, n, i, a) {
var o = n + '-' + i,
s = r.length
if (a.hasOwnProperty(o)) return a[o]
if (t === 1) {
var l = Math.round(Math.log(((1 << s) - 1) & ~i) / Vx)
return r[e][l]
}
for (var u = n | (1 << e), f = e + 1; n & (1 << f); ) f++
for (var h = 0, c = 0, v = 0; c < s; c++) {
var d = 1 << c
d & i ||
((h += (v % 2 ? -1 : 1) * r[e][c] * Nl(r, t - 1, f, u, i | d, a)), v++)
}
return (a[o] = h), h
}
function Kv(r, t) {
var e = [
[r[0], r[1], 1, 0, 0, 0, -t[0] * r[0], -t[0] * r[1]],
[0, 0, 0, r[0], r[1], 1, -t[1] * r[0], -t[1] * r[1]],
[r[2], r[3], 1, 0, 0, 0, -t[2] * r[2], -t[2] * r[3]],
[0, 0, 0, r[2], r[3], 1, -t[3] * r[2], -t[3] * r[3]],
[r[4], r[5], 1, 0, 0, 0, -t[4] * r[4], -t[4] * r[5]],
[0, 0, 0, r[4], r[5], 1, -t[5] * r[4], -t[5] * r[5]],
[r[6], r[7], 1, 0, 0, 0, -t[6] * r[6], -t[6] * r[7]],
[0, 0, 0, r[6], r[7], 1, -t[7] * r[6], -t[7] * r[7]]
],
n = {},
i = Nl(e, 8, 0, 0, 0, n)
if (i !== 0) {
for (var a = [], o = 0; o < 8; o++)
for (var s = 0; s < 8; s++)
a[s] == null && (a[s] = 0),
(a[s] +=
((((o + s) % 2 ? -1 : 1) *
Nl(e, 7, o === 0 ? 1 : 0, 1 << o, 1 << s, n)) /
i) *
t[o])
return function (l, u, f) {
var h = u * a[6] + f * a[7] + 1
;(l[0] = (u * a[0] + f * a[1] + a[2]) / h),
(l[1] = (u * a[3] + f * a[4] + a[5]) / h)
}
}
}
var Qv = '___zrEVENTSAVED',
Fl = []
function Gx(r, t, e, n, i) {
return zl(Fl, t, n, i, !0) && zl(r, e, Fl[0], Fl[1])
}
function zl(r, t, e, n, i) {
if (t.getBoundingClientRect && at.domSupported && !Jv(t)) {
var a = t[Qv] || (t[Qv] = {}),
o = Hx(t, a),
s = Wx(o, a, i)
if (s) return s(r, e, n), !0
}
return !1
}
function Hx(r, t) {
var e = t.markers
if (e) return e
e = t.markers = []
for (var n = ['left', 'right'], i = ['top', 'bottom'], a = 0; a < 4; a++) {
var o = document.createElement('div'),
s = o.style,
l = a % 2,
u = (a >> 1) % 2
;(s.cssText = [
'position: absolute',
'visibility: hidden',
'padding: 0',
'margin: 0',
'border-width: 0',
'user-select: none',
'width:0',
'height:0',
n[l] + ':0',
i[u] + ':0',
n[1 - l] + ':auto',
i[1 - u] + ':auto',
''
].join('!important;')),
r.appendChild(o),
e.push(o)
}
return e
}
function Wx(r, t, e) {
for (
var n = e ? 'invTrans' : 'trans',
i = t[n],
a = t.srcCoords,
o = [],
s = [],
l = !0,
u = 0;
u < 4;
u++
) {
var f = r[u].getBoundingClientRect(),
h = 2 * u,
c = f.left,
v = f.top
o.push(c, v),
(l = l && a && c === a[h] && v === a[h + 1]),
s.push(r[u].offsetLeft, r[u].offsetTop)
}
return l && i ? i : ((t.srcCoords = o), (t[n] = e ? Kv(s, o) : Kv(o, s)))
}
function Jv(r) {
return r.nodeName.toUpperCase() === 'CANVAS'
}
var Ux = /^(?:mouse|pointer|contextmenu|drag|drop)|click/,
Vl = [],
Yx = at.browser.firefox && +at.browser.version.split('.')[0] < 39
function Gl(r, t, e, n) {
return (
(e = e || {}),
n
? jv(r, t, e)
: Yx && t.layerX != null && t.layerX !== t.offsetX
? ((e.zrX = t.layerX), (e.zrY = t.layerY))
: t.offsetX != null
? ((e.zrX = t.offsetX), (e.zrY = t.offsetY))
: jv(r, t, e),
e
)
}
function jv(r, t, e) {
if (at.domSupported && r.getBoundingClientRect) {
var n = t.clientX,
i = t.clientY
if (Jv(r)) {
var a = r.getBoundingClientRect()
;(e.zrX = n - a.left), (e.zrY = i - a.top)
return
} else if (zl(Vl, r, n, i)) {
;(e.zrX = Vl[0]), (e.zrY = Vl[1])
return
}
}
e.zrX = e.zrY = 0
}
function Hl(r) {
return r || window.event
}
function he(r, t, e) {
if (((t = Hl(t)), t.zrX != null)) return t
var n = t.type,
i = n && n.indexOf('touch') >= 0
if (i) {
var o = n !== 'touchend' ? t.targetTouches[0] : t.changedTouches[0]
o && Gl(r, o, t, e)
} else {
Gl(r, t, t, e)
var a = Zx(t)
t.zrDelta = a ? a / 120 : -(t.detail || 0) / 3
}
var s = t.button
return (
t.which == null &&
s !== void 0 &&
Ux.test(t.type) &&
(t.which = s & 1 ? 1 : s & 2 ? 3 : s & 4 ? 2 : 0),
t
)
}
function Zx(r) {
var t = r.wheelDelta
if (t) return t
var e = r.deltaX,
n = r.deltaY
if (e == null || n == null) return t
var i = Math.abs(n !== 0 ? n : e),
a = n > 0 ? -1 : n < 0 ? 1 : e > 0 ? -1 : 1
return 3 * i * a
}
function Wl(r, t, e, n) {
r.addEventListener(t, e, n)
}
function $x(r, t, e, n) {
r.removeEventListener(t, e, n)
}
var Hn = function (r) {
r.preventDefault(), r.stopPropagation(), (r.cancelBubble = !0)
}
function tc(r) {
return r.which === 2 || r.which === 3
}
var Xx = (function () {
function r() {
this._track = []
}
return (
(r.prototype.recognize = function (t, e, n) {
return this._doTrack(t, e, n), this._recognize(t)
}),
(r.prototype.clear = function () {
return (this._track.length = 0), this
}),
(r.prototype._doTrack = function (t, e, n) {
var i = t.touches
if (!!i) {
for (
var a = { points: [], touches: [], target: e, event: t },
o = 0,
s = i.length;
o < s;
o++
) {
var l = i[o],
u = Gl(n, l, {})
a.points.push([u.zrX, u.zrY]), a.touches.push(l)
}
this._track.push(a)
}
}),
(r.prototype._recognize = function (t) {
for (var e in Ul)
if (Ul.hasOwnProperty(e)) {
var n = Ul[e](this._track, t)
if (n) return n
}
}),
r
)
})()
function ec(r) {
var t = r[1][0] - r[0][0],
e = r[1][1] - r[0][1]
return Math.sqrt(t * t + e * e)
}
function qx(r) {
return [(r[0][0] + r[1][0]) / 2, (r[0][1] + r[1][1]) / 2]
}
var Ul = {
pinch: function (r, t) {
var e = r.length
if (!!e) {
var n = (r[e - 1] || {}).points,
i = (r[e - 2] || {}).points || n
if (i && i.length > 1 && n && n.length > 1) {
var a = ec(n) / ec(i)
!isFinite(a) && (a = 1), (t.pinchScale = a)
var o = qx(n)
return (
(t.pinchX = o[0]),
(t.pinchY = o[1]),
{ type: 'pinch', target: r[0].target, event: t }
)
}
}
}
},
rc = 'silent'
function Kx(r, t, e) {
return {
type: r,
event: e,
target: t.target,
topTarget: t.topTarget,
cancelBubble: !1,
offsetX: e.zrX,
offsetY: e.zrY,
gestureEvent: e.gestureEvent,
pinchX: e.pinchX,
pinchY: e.pinchY,
pinchScale: e.pinchScale,
wheelDelta: e.zrDelta,
zrByTouch: e.zrByTouch,
which: e.which,
stop: Qx
}
}
function Qx() {
Hn(this.event)
}
var Jx = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (e.handler = null), e
}
return (
(t.prototype.dispose = function () {}),
(t.prototype.setCursor = function () {}),
t
)
})(fe),
Bi = (function () {
function r(t, e) {
;(this.x = t), (this.y = e)
}
return r
})(),
jx = [
'click',
'dblclick',
'mousewheel',
'mouseout',
'mouseup',
'mousedown',
'mousemove',
'contextmenu'
],
nc = (function (r) {
B(t, r)
function t(e, n, i, a) {
var o = r.call(this) || this
return (
(o._hovered = new Bi(0, 0)),
(o.storage = e),
(o.painter = n),
(o.painterRoot = a),
(i = i || new Jx()),
(o.proxy = null),
o.setHandlerProxy(i),
(o._draggingMgr = new Fx(o)),
o
)
}
return (
(t.prototype.setHandlerProxy = function (e) {
this.proxy && this.proxy.dispose(),
e &&
(A(
jx,
function (n) {
e.on && e.on(n, this[n], this)
},
this
),
(e.handler = this)),
(this.proxy = e)
}),
(t.prototype.mousemove = function (e) {
var n = e.zrX,
i = e.zrY,
a = ic(this, n, i),
o = this._hovered,
s = o.target
s && !s.__zr && ((o = this.findHover(o.x, o.y)), (s = o.target))
var l = (this._hovered = a ? new Bi(n, i) : this.findHover(n, i)),
u = l.target,
f = this.proxy
f.setCursor && f.setCursor(u ? u.cursor : 'default'),
s && u !== s && this.dispatchToElement(o, 'mouseout', e),
this.dispatchToElement(l, 'mousemove', e),
u && u !== s && this.dispatchToElement(l, 'mouseover', e)
}),
(t.prototype.mouseout = function (e) {
var n = e.zrEventControl
n !== 'only_globalout' &&
this.dispatchToElement(this._hovered, 'mouseout', e),
n !== 'no_globalout' &&
this.trigger('globalout', { type: 'globalout', event: e })
}),
(t.prototype.resize = function () {
this._hovered = new Bi(0, 0)
}),
(t.prototype.dispatch = function (e, n) {
var i = this[e]
i && i.call(this, n)
}),
(t.prototype.dispose = function () {
this.proxy.dispose(),
(this.storage = null),
(this.proxy = null),
(this.painter = null)
}),
(t.prototype.setCursorStyle = function (e) {
var n = this.proxy
n.setCursor && n.setCursor(e)
}),
(t.prototype.dispatchToElement = function (e, n, i) {
e = e || {}
var a = e.target
if (!(a && a.silent)) {
for (
var o = 'on' + n, s = Kx(n, e, i);
a &&
(a[o] && (s.cancelBubble = !!a[o].call(a, s)),
a.trigger(n, s),
(a = a.__hostTarget ? a.__hostTarget : a.parent),
!s.cancelBubble);
);
s.cancelBubble ||
(this.trigger(n, s),
this.painter &&
this.painter.eachOtherLayer &&
this.painter.eachOtherLayer(function (l) {
typeof l[o] == 'function' && l[o].call(l, s),
l.trigger && l.trigger(n, s)
}))
}
}),
(t.prototype.findHover = function (e, n, i) {
for (
var a = this.storage.getDisplayList(),
o = new Bi(e, n),
s = a.length - 1;
s >= 0;
s--
) {
var l = void 0
if (
a[s] !== i &&
!a[s].ignore &&
(l = tw(a[s], e, n)) &&
(!o.topTarget && (o.topTarget = a[s]), l !== rc)
) {
o.target = a[s]
break
}
}
return o
}),
(t.prototype.processGesture = function (e, n) {
this._gestureMgr || (this._gestureMgr = new Xx())
var i = this._gestureMgr
n === 'start' && i.clear()
var a = i.recognize(
e,
this.findHover(e.zrX, e.zrY, null).target,
this.proxy.dom
)
if ((n === 'end' && i.clear(), a)) {
var o = a.type
e.gestureEvent = o
var s = new Bi()
;(s.target = a.target), this.dispatchToElement(s, o, a.event)
}
}),
t
)
})(fe)
A(
['click', 'mousedown', 'mouseup', 'mousewheel', 'dblclick', 'contextmenu'],
function (r) {
nc.prototype[r] = function (t) {
var e = t.zrX,
n = t.zrY,
i = ic(this, e, n),
a,
o
if (
((r !== 'mouseup' || !i) &&
((a = this.findHover(e, n)), (o = a.target)),
r === 'mousedown')
)
(this._downEl = o), (this._downPoint = [t.zrX, t.zrY]), (this._upEl = o)
else if (r === 'mouseup') this._upEl = o
else if (r === 'click') {
if (
this._downEl !== this._upEl ||
!this._downPoint ||
Bl(this._downPoint, [t.zrX, t.zrY]) > 4
)
return
this._downPoint = null
}
this.dispatchToElement(a, r, t)
}
}
)
function tw(r, t, e) {
if (r[r.rectHover ? 'rectContain' : 'contain'](t, e)) {
for (var n = r, i = void 0, a = !1; n; ) {
if ((n.ignoreClip && (a = !0), !a)) {
var o = n.getClipPath()
if (o && !o.contain(t, e)) return !1
n.silent && (i = !0)
}
var s = n.__hostTarget
n = s || n.parent
}
return i ? rc : !0
}
return !1
}
function ic(r, t, e) {
var n = r.painter
return t < 0 || t > n.getWidth() || e < 0 || e > n.getHeight()
}
var ew = nc,
ac = 32,
Ni = 7
function rw(r) {
for (var t = 0; r >= ac; ) (t |= r & 1), (r >>= 1)
return r + t
}
function oc(r, t, e, n) {
var i = t + 1
if (i === e) return 1
if (n(r[i++], r[t]) < 0) {
for (; i < e && n(r[i], r[i - 1]) < 0; ) i++
nw(r, t, i)
} else for (; i < e && n(r[i], r[i - 1]) >= 0; ) i++
return i - t
}
function nw(r, t, e) {
for (e--; t < e; ) {
var n = r[t]
;(r[t++] = r[e]), (r[e--] = n)
}
}
function sc(r, t, e, n, i) {
for (n === t && n++; n < e; n++) {
for (var a = r[n], o = t, s = n, l; o < s; )
(l = (o + s) >>> 1), i(a, r[l]) < 0 ? (s = l) : (o = l + 1)
var u = n - o
switch (u) {
case 3:
r[o + 3] = r[o + 2]
case 2:
r[o + 2] = r[o + 1]
case 1:
r[o + 1] = r[o]
break
default:
for (; u > 0; ) (r[o + u] = r[o + u - 1]), u--
}
r[o] = a
}
}
function Yl(r, t, e, n, i, a) {
var o = 0,
s = 0,
l = 1
if (a(r, t[e + i]) > 0) {
for (s = n - i; l < s && a(r, t[e + i + l]) > 0; )
(o = l), (l = (l << 1) + 1), l <= 0 && (l = s)
l > s && (l = s), (o += i), (l += i)
} else {
for (s = i + 1; l < s && a(r, t[e + i - l]) <= 0; )
(o = l), (l = (l << 1) + 1), l <= 0 && (l = s)
l > s && (l = s)
var u = o
;(o = i - l), (l = i - u)
}
for (o++; o < l; ) {
var f = o + ((l - o) >>> 1)
a(r, t[e + f]) > 0 ? (o = f + 1) : (l = f)
}
return l
}
function Zl(r, t, e, n, i, a) {
var o = 0,
s = 0,
l = 1
if (a(r, t[e + i]) < 0) {
for (s = i + 1; l < s && a(r, t[e + i - l]) < 0; )
(o = l), (l = (l << 1) + 1), l <= 0 && (l = s)
l > s && (l = s)
var u = o
;(o = i - l), (l = i - u)
} else {
for (s = n - i; l < s && a(r, t[e + i + l]) >= 0; )
(o = l), (l = (l << 1) + 1), l <= 0 && (l = s)
l > s && (l = s), (o += i), (l += i)
}
for (o++; o < l; ) {
var f = o + ((l - o) >>> 1)
a(r, t[e + f]) < 0 ? (l = f) : (o = f + 1)
}
return l
}
function iw(r, t) {
var e = Ni,
n,
i,
a = 0,
o = []
;(n = []), (i = [])
function s(v, d) {
;(n[a] = v), (i[a] = d), (a += 1)
}
function l() {
for (; a > 1; ) {
var v = a - 2
if (
(v >= 1 && i[v - 1] <= i[v] + i[v + 1]) ||
(v >= 2 && i[v - 2] <= i[v] + i[v - 1])
)
i[v - 1] < i[v + 1] && v--
else if (i[v] > i[v + 1]) break
f(v)
}
}
function u() {
for (; a > 1; ) {
var v = a - 2
v > 0 && i[v - 1] < i[v + 1] && v--, f(v)
}
}
function f(v) {
var d = n[v],
p = i[v],
g = n[v + 1],
m = i[v + 1]
;(i[v] = p + m),
v === a - 3 && ((n[v + 1] = n[v + 2]), (i[v + 1] = i[v + 2])),
a--
var y = Zl(r[g], r, d, p, 0, t)
;(d += y),
(p -= y),
p !== 0 &&
((m = Yl(r[d + p - 1], r, g, m, m - 1, t)),
m !== 0 && (p <= m ? h(d, p, g, m) : c(d, p, g, m)))
}
function h(v, d, p, g) {
var m = 0
for (m = 0; m < d; m++) o[m] = r[v + m]
var y = 0,
_ = p,
S = v
if (((r[S++] = r[_++]), --g == 0)) {
for (m = 0; m < d; m++) r[S + m] = o[y + m]
return
}
if (d === 1) {
for (m = 0; m < g; m++) r[S + m] = r[_ + m]
r[S + g] = o[y]
return
}
for (var w = e, x, b, T; ; ) {
;(x = 0), (b = 0), (T = !1)
do
if (t(r[_], o[y]) < 0) {
if (((r[S++] = r[_++]), b++, (x = 0), --g == 0)) {
T = !0
break
}
} else if (((r[S++] = o[y++]), x++, (b = 0), --d == 1)) {
T = !0
break
}
while ((x | b) < w)
if (T) break
do {
if (((x = Zl(r[_], o, y, d, 0, t)), x !== 0)) {
for (m = 0; m < x; m++) r[S + m] = o[y + m]
if (((S += x), (y += x), (d -= x), d <= 1)) {
T = !0
break
}
}
if (((r[S++] = r[_++]), --g == 0)) {
T = !0
break
}
if (((b = Yl(o[y], r, _, g, 0, t)), b !== 0)) {
for (m = 0; m < b; m++) r[S + m] = r[_ + m]
if (((S += b), (_ += b), (g -= b), g === 0)) {
T = !0
break
}
}
if (((r[S++] = o[y++]), --d == 1)) {
T = !0
break
}
w--
} while (x >= Ni || b >= Ni)
if (T) break
w < 0 && (w = 0), (w += 2)
}
if (((e = w), e < 1 && (e = 1), d === 1)) {
for (m = 0; m < g; m++) r[S + m] = r[_ + m]
r[S + g] = o[y]
} else {
if (d === 0) throw new Error()
for (m = 0; m < d; m++) r[S + m] = o[y + m]
}
}
function c(v, d, p, g) {
var m = 0
for (m = 0; m < g; m++) o[m] = r[p + m]
var y = v + d - 1,
_ = g - 1,
S = p + g - 1,
w = 0,
x = 0
if (((r[S--] = r[y--]), --d == 0)) {
for (w = S - (g - 1), m = 0; m < g; m++) r[w + m] = o[m]
return
}
if (g === 1) {
for (S -= d, y -= d, x = S + 1, w = y + 1, m = d - 1; m >= 0; m--)
r[x + m] = r[w + m]
r[S] = o[_]
return
}
for (var b = e; ; ) {
var T = 0,
C = 0,
M = !1
do
if (t(o[_], r[y]) < 0) {
if (((r[S--] = r[y--]), T++, (C = 0), --d == 0)) {
M = !0
break
}
} else if (((r[S--] = o[_--]), C++, (T = 0), --g == 1)) {
M = !0
break
}
while ((T | C) < b)
if (M) break
do {
if (((T = d - Zl(o[_], r, v, d, d - 1, t)), T !== 0)) {
for (
S -= T, y -= T, d -= T, x = S + 1, w = y + 1, m = T - 1;
m >= 0;
m--
)
r[x + m] = r[w + m]
if (d === 0) {
M = !0
break
}
}
if (((r[S--] = o[_--]), --g == 1)) {
M = !0
break
}
if (((C = g - Yl(r[y], o, 0, g, g - 1, t)), C !== 0)) {
for (S -= C, _ -= C, g -= C, x = S + 1, w = _ + 1, m = 0; m < C; m++)
r[x + m] = o[w + m]
if (g <= 1) {
M = !0
break
}
}
if (((r[S--] = r[y--]), --d == 0)) {
M = !0
break
}
b--
} while (T >= Ni || C >= Ni)
if (M) break
b < 0 && (b = 0), (b += 2)
}
if (((e = b), e < 1 && (e = 1), g === 1)) {
for (S -= d, y -= d, x = S + 1, w = y + 1, m = d - 1; m >= 0; m--)
r[x + m] = r[w + m]
r[S] = o[_]
} else {
if (g === 0) throw new Error()
for (w = S - (g - 1), m = 0; m < g; m++) r[w + m] = o[m]
}
}
return { mergeRuns: l, forceMergeRuns: u, pushRun: s }
}
function uo(r, t, e, n) {
e || (e = 0), n || (n = r.length)
var i = n - e
if (!(i < 2)) {
var a = 0
if (i < ac) {
;(a = oc(r, e, n, t)), sc(r, e, n, e + a, t)
return
}
var o = iw(r, t),
s = rw(i)
do {
if (((a = oc(r, e, n, t)), a < s)) {
var l = i
l > s && (l = s), sc(r, e, e + l, e + a, t), (a = l)
}
o.pushRun(e, a), o.mergeRuns(), (i -= a), (e += a)
} while (i !== 0)
o.forceMergeRuns()
}
}
var ae = 1,
Fi = 2,
Wn = 4,
lc = !1
function $l() {
lc ||
((lc = !0),
console.warn(
'z / z2 / zlevel of displayable is invalid, which may cause unexpected errors'
))
}
function uc(r, t) {
return r.zlevel === t.zlevel
? r.z === t.z
? r.z2 - t.z2
: r.z - t.z
: r.zlevel - t.zlevel
}
var aw = (function () {
function r() {
;(this._roots = []),
(this._displayList = []),
(this._displayListLen = 0),
(this.displayableSortFunc = uc)
}
return (
(r.prototype.traverse = function (t, e) {
for (var n = 0; n < this._roots.length; n++)
this._roots[n].traverse(t, e)
}),
(r.prototype.getDisplayList = function (t, e) {
e = e || !1
var n = this._displayList
return (t || !n.length) && this.updateDisplayList(e), n
}),
(r.prototype.updateDisplayList = function (t) {
this._displayListLen = 0
for (
var e = this._roots, n = this._displayList, i = 0, a = e.length;
i < a;
i++
)
this._updateAndAddDisplayable(e[i], null, t)
;(n.length = this._displayListLen), uo(n, uc)
}),
(r.prototype._updateAndAddDisplayable = function (t, e, n) {
if (!(t.ignore && !n)) {
t.beforeUpdate(), t.update(), t.afterUpdate()
var i = t.getClipPath()
if (t.ignoreClip) e = null
else if (i) {
e ? (e = e.slice()) : (e = [])
for (var a = i, o = t; a; )
(a.parent = o),
a.updateTransform(),
e.push(a),
(o = a),
(a = a.getClipPath())
}
if (t.childrenRef) {
for (var s = t.childrenRef(), l = 0; l < s.length; l++) {
var u = s[l]
t.__dirty && (u.__dirty |= ae),
this._updateAndAddDisplayable(u, e, n)
}
t.__dirty = 0
} else {
var f = t
e && e.length
? (f.__clipPaths = e)
: f.__clipPaths &&
f.__clipPaths.length > 0 &&
(f.__clipPaths = []),
isNaN(f.z) && ($l(), (f.z = 0)),
isNaN(f.z2) && ($l(), (f.z2 = 0)),
isNaN(f.zlevel) && ($l(), (f.zlevel = 0)),
(this._displayList[this._displayListLen++] = f)
}
var h = t.getDecalElement && t.getDecalElement()
h && this._updateAndAddDisplayable(h, e, n)
var c = t.getTextGuideLine()
c && this._updateAndAddDisplayable(c, e, n)
var v = t.getTextContent()
v && this._updateAndAddDisplayable(v, e, n)
}
}),
(r.prototype.addRoot = function (t) {
;(t.__zr && t.__zr.storage === this) || this._roots.push(t)
}),
(r.prototype.delRoot = function (t) {
if (t instanceof Array) {
for (var e = 0, n = t.length; e < n; e++) this.delRoot(t[e])
return
}
var i = ot(this._roots, t)
i >= 0 && this._roots.splice(i, 1)
}),
(r.prototype.delAllRoots = function () {
;(this._roots = []),
(this._displayList = []),
(this._displayListLen = 0)
}),
(r.prototype.getRoots = function () {
return this._roots
}),
(r.prototype.dispose = function () {
;(this._displayList = null), (this._roots = null)
}),
r
)
})(),
ow = aw,
fc
fc =
(at.hasGlobalWindow &&
((window.requestAnimationFrame &&
window.requestAnimationFrame.bind(window)) ||
(window.msRequestAnimationFrame &&
window.msRequestAnimationFrame.bind(window)) ||
window.mozRequestAnimationFrame ||
window.webkitRequestAnimationFrame)) ||
function (r) {
return setTimeout(r, 16)
}
var Xl = fc,
fo = {
linear: function (r) {
return r
},
quadraticIn: function (r) {
return r * r
},
quadraticOut: function (r) {
return r * (2 - r)
},
quadraticInOut: function (r) {
return (r *= 2) < 1 ? 0.5 * r * r : -0.5 * (--r * (r - 2) - 1)
},
cubicIn: function (r) {
return r * r * r
},
cubicOut: function (r) {
return --r * r * r + 1
},
cubicInOut: function (r) {
return (r *= 2) < 1 ? 0.5 * r * r * r : 0.5 * ((r -= 2) * r * r + 2)
},
quarticIn: function (r) {
return r * r * r * r
},
quarticOut: function (r) {
return 1 - --r * r * r * r
},
quarticInOut: function (r) {
return (r *= 2) < 1
? 0.5 * r * r * r * r
: -0.5 * ((r -= 2) * r * r * r - 2)
},
quinticIn: function (r) {
return r * r * r * r * r
},
quinticOut: function (r) {
return --r * r * r * r * r + 1
},
quinticInOut: function (r) {
return (r *= 2) < 1
? 0.5 * r * r * r * r * r
: 0.5 * ((r -= 2) * r * r * r * r + 2)
},
sinusoidalIn: function (r) {
return 1 - Math.cos((r * Math.PI) / 2)
},
sinusoidalOut: function (r) {
return Math.sin((r * Math.PI) / 2)
},
sinusoidalInOut: function (r) {
return 0.5 * (1 - Math.cos(Math.PI * r))
},
exponentialIn: function (r) {
return r === 0 ? 0 : Math.pow(1024, r - 1)
},
exponentialOut: function (r) {
return r === 1 ? 1 : 1 - Math.pow(2, -10 * r)
},
exponentialInOut: function (r) {
return r === 0
? 0
: r === 1
? 1
: (r *= 2) < 1
? 0.5 * Math.pow(1024, r - 1)
: 0.5 * (-Math.pow(2, -10 * (r - 1)) + 2)
},
circularIn: function (r) {
return 1 - Math.sqrt(1 - r * r)
},
circularOut: function (r) {
return Math.sqrt(1 - --r * r)
},
circularInOut: function (r) {
return (r *= 2) < 1
? -0.5 * (Math.sqrt(1 - r * r) - 1)
: 0.5 * (Math.sqrt(1 - (r -= 2) * r) + 1)
},
elasticIn: function (r) {
var t,
e = 0.1,
n = 0.4
return r === 0
? 0
: r === 1
? 1
: (!e || e < 1
? ((e = 1), (t = n / 4))
: (t = (n * Math.asin(1 / e)) / (2 * Math.PI)),
-(
e *
Math.pow(2, 10 * (r -= 1)) *
Math.sin(((r - t) * (2 * Math.PI)) / n)
))
},
elasticOut: function (r) {
var t,
e = 0.1,
n = 0.4
return r === 0
? 0
: r === 1
? 1
: (!e || e < 1
? ((e = 1), (t = n / 4))
: (t = (n * Math.asin(1 / e)) / (2 * Math.PI)),
e * Math.pow(2, -10 * r) * Math.sin(((r - t) * (2 * Math.PI)) / n) +
1)
},
elasticInOut: function (r) {
var t,
e = 0.1,
n = 0.4
return r === 0
? 0
: r === 1
? 1
: (!e || e < 1
? ((e = 1), (t = n / 4))
: (t = (n * Math.asin(1 / e)) / (2 * Math.PI)),
(r *= 2) < 1
? -0.5 *
(e *
Math.pow(2, 10 * (r -= 1)) *
Math.sin(((r - t) * (2 * Math.PI)) / n))
: e *
Math.pow(2, -10 * (r -= 1)) *
Math.sin(((r - t) * (2 * Math.PI)) / n) *
0.5 +
1)
},
backIn: function (r) {
var t = 1.70158
return r * r * ((t + 1) * r - t)
},
backOut: function (r) {
var t = 1.70158
return --r * r * ((t + 1) * r + t) + 1
},
backInOut: function (r) {
var t = 1.70158 * 1.525
return (r *= 2) < 1
? 0.5 * (r * r * ((t + 1) * r - t))
: 0.5 * ((r -= 2) * r * ((t + 1) * r + t) + 2)
},
bounceIn: function (r) {
return 1 - fo.bounceOut(1 - r)
},
bounceOut: function (r) {
return r < 1 / 2.75
? 7.5625 * r * r
: r < 2 / 2.75
? 7.5625 * (r -= 1.5 / 2.75) * r + 0.75
: r < 2.5 / 2.75
? 7.5625 * (r -= 2.25 / 2.75) * r + 0.9375
: 7.5625 * (r -= 2.625 / 2.75) * r + 0.984375
},
bounceInOut: function (r) {
return r < 0.5
? fo.bounceIn(r * 2) * 0.5
: fo.bounceOut(r * 2 - 1) * 0.5 + 0.5
}
},
hc = fo,
ho = Math.pow,
xr = Math.sqrt,
vo = 1e-8,
vc = 1e-4,
cc = xr(3),
co = 1 / 3,
He = Nn(),
ve = Nn(),
Un = Nn()
function wr(r) {
return r > -vo && r < vo
}
function dc(r) {
return r > vo || r < -vo
}
function Rt(r, t, e, n, i) {
var a = 1 - i
return a * a * (a * r + 3 * i * t) + i * i * (i * n + 3 * a * e)
}
function pc(r, t, e, n, i) {
var a = 1 - i
return 3 * (((t - r) * a + 2 * (e - t) * i) * a + (n - e) * i * i)
}
function po(r, t, e, n, i, a) {
var o = n + 3 * (t - e) - r,
s = 3 * (e - t * 2 + r),
l = 3 * (t - r),
u = r - i,
f = s * s - 3 * o * l,
h = s * l - 9 * o * u,
c = l * l - 3 * s * u,
v = 0
if (wr(f) && wr(h))
if (wr(s)) a[0] = 0
else {
var d = -l / s
d >= 0 && d <= 1 && (a[v++] = d)
}
else {
var p = h * h - 4 * f * c
if (wr(p)) {
var g = h / f,
d = -s / o + g,
m = -g / 2
d >= 0 && d <= 1 && (a[v++] = d), m >= 0 && m <= 1 && (a[v++] = m)
} else if (p > 0) {
var y = xr(p),
_ = f * s + 1.5 * o * (-h + y),
S = f * s + 1.5 * o * (-h - y)
_ < 0 ? (_ = -ho(-_, co)) : (_ = ho(_, co)),
S < 0 ? (S = -ho(-S, co)) : (S = ho(S, co))
var d = (-s - (_ + S)) / (3 * o)
d >= 0 && d <= 1 && (a[v++] = d)
} else {
var w = (2 * f * s - 3 * o * h) / (2 * xr(f * f * f)),
x = Math.acos(w) / 3,
b = xr(f),
T = Math.cos(x),
d = (-s - 2 * b * T) / (3 * o),
m = (-s + b * (T + cc * Math.sin(x))) / (3 * o),
C = (-s + b * (T - cc * Math.sin(x))) / (3 * o)
d >= 0 && d <= 1 && (a[v++] = d),
m >= 0 && m <= 1 && (a[v++] = m),
C >= 0 && C <= 1 && (a[v++] = C)
}
}
return v
}
function gc(r, t, e, n, i) {
var a = 6 * e - 12 * t + 6 * r,
o = 9 * t + 3 * n - 3 * r - 9 * e,
s = 3 * t - 3 * r,
l = 0
if (wr(o)) {
if (dc(a)) {
var u = -s / a
u >= 0 && u <= 1 && (i[l++] = u)
}
} else {
var f = a * a - 4 * o * s
if (wr(f)) i[0] = -a / (2 * o)
else if (f > 0) {
var h = xr(f),
u = (-a + h) / (2 * o),
c = (-a - h) / (2 * o)
u >= 0 && u <= 1 && (i[l++] = u), c >= 0 && c <= 1 && (i[l++] = c)
}
}
return l
}
function br(r, t, e, n, i, a) {
var o = (t - r) * i + r,
s = (e - t) * i + t,
l = (n - e) * i + e,
u = (s - o) * i + o,
f = (l - s) * i + s,
h = (f - u) * i + u
;(a[0] = r),
(a[1] = o),
(a[2] = u),
(a[3] = h),
(a[4] = h),
(a[5] = f),
(a[6] = l),
(a[7] = n)
}
function mc(r, t, e, n, i, a, o, s, l, u, f) {
var h,
c = 0.005,
v = 1 / 0,
d,
p,
g,
m
;(He[0] = l), (He[1] = u)
for (var y = 0; y < 1; y += 0.05)
(ve[0] = Rt(r, e, i, o, y)),
(ve[1] = Rt(t, n, a, s, y)),
(g = Fn(He, ve)),
g < v && ((h = y), (v = g))
v = 1 / 0
for (var _ = 0; _ < 32 && !(c < vc); _++)
(d = h - c),
(p = h + c),
(ve[0] = Rt(r, e, i, o, d)),
(ve[1] = Rt(t, n, a, s, d)),
(g = Fn(ve, He)),
d >= 0 && g < v
? ((h = d), (v = g))
: ((Un[0] = Rt(r, e, i, o, p)),
(Un[1] = Rt(t, n, a, s, p)),
(m = Fn(Un, He)),
p <= 1 && m < v ? ((h = p), (v = m)) : (c *= 0.5))
return f && ((f[0] = Rt(r, e, i, o, h)), (f[1] = Rt(t, n, a, s, h))), xr(v)
}
function sw(r, t, e, n, i, a, o, s, l) {
for (var u = r, f = t, h = 0, c = 1 / l, v = 1; v <= l; v++) {
var d = v * c,
p = Rt(r, e, i, o, d),
g = Rt(t, n, a, s, d),
m = p - u,
y = g - f
;(h += Math.sqrt(m * m + y * y)), (u = p), (f = g)
}
return h
}
function Gt(r, t, e, n) {
var i = 1 - n
return i * (i * r + 2 * n * t) + n * n * e
}
function yc(r, t, e, n) {
return 2 * ((1 - n) * (t - r) + n * (e - t))
}
function lw(r, t, e, n, i) {
var a = r - 2 * t + e,
o = 2 * (t - r),
s = r - n,
l = 0
if (wr(a)) {
if (dc(o)) {
var u = -s / o
u >= 0 && u <= 1 && (i[l++] = u)
}
} else {
var f = o * o - 4 * a * s
if (wr(f)) {
var u = -o / (2 * a)
u >= 0 && u <= 1 && (i[l++] = u)
} else if (f > 0) {
var h = xr(f),
u = (-o + h) / (2 * a),
c = (-o - h) / (2 * a)
u >= 0 && u <= 1 && (i[l++] = u), c >= 0 && c <= 1 && (i[l++] = c)
}
}
return l
}
function _c(r, t, e) {
var n = r + e - 2 * t
return n === 0 ? 0.5 : (r - t) / n
}
function go(r, t, e, n, i) {
var a = (t - r) * n + r,
o = (e - t) * n + t,
s = (o - a) * n + a
;(i[0] = r), (i[1] = a), (i[2] = s), (i[3] = s), (i[4] = o), (i[5] = e)
}
function Sc(r, t, e, n, i, a, o, s, l) {
var u,
f = 0.005,
h = 1 / 0
;(He[0] = o), (He[1] = s)
for (var c = 0; c < 1; c += 0.05) {
;(ve[0] = Gt(r, e, i, c)), (ve[1] = Gt(t, n, a, c))
var v = Fn(He, ve)
v < h && ((u = c), (h = v))
}
h = 1 / 0
for (var d = 0; d < 32 && !(f < vc); d++) {
var p = u - f,
g = u + f
;(ve[0] = Gt(r, e, i, p)), (ve[1] = Gt(t, n, a, p))
var v = Fn(ve, He)
if (p >= 0 && v < h) (u = p), (h = v)
else {
;(Un[0] = Gt(r, e, i, g)), (Un[1] = Gt(t, n, a, g))
var m = Fn(Un, He)
g <= 1 && m < h ? ((u = g), (h = m)) : (f *= 0.5)
}
}
return l && ((l[0] = Gt(r, e, i, u)), (l[1] = Gt(t, n, a, u))), xr(h)
}
function uw(r, t, e, n, i, a, o) {
for (var s = r, l = t, u = 0, f = 1 / o, h = 1; h <= o; h++) {
var c = h * f,
v = Gt(r, e, i, c),
d = Gt(t, n, a, c),
p = v - s,
g = d - l
;(u += Math.sqrt(p * p + g * g)), (s = v), (l = d)
}
return u
}
var fw = /cubic-bezier\(([0-9,\.e ]+)\)/
function xc(r) {
var t = r && fw.exec(r)
if (t) {
var e = t[1].split(','),
n = +Ge(e[0]),
i = +Ge(e[1]),
a = +Ge(e[2]),
o = +Ge(e[3])
if (isNaN(n + i + a + o)) return
var s = []
return function (l) {
return l <= 0
? 0
: l >= 1
? 1
: po(0, n, a, 1, l, s) && Rt(0, i, o, 1, s[0])
}
}
}
var hw = (function () {
function r(t) {
;(this._inited = !1),
(this._startTime = 0),
(this._pausedTime = 0),
(this._paused = !1),
(this._life = t.life || 1e3),
(this._delay = t.delay || 0),
(this.loop = t.loop || !1),
(this.onframe = t.onframe || $t),
(this.ondestroy = t.ondestroy || $t),
(this.onrestart = t.onrestart || $t),
t.easing && this.setEasing(t.easing)
}
return (
(r.prototype.step = function (t, e) {
if (
(this._inited ||
((this._startTime = t + this._delay), (this._inited = !0)),
this._paused)
) {
this._pausedTime += e
return
}
var n = this._life,
i = t - this._startTime - this._pausedTime,
a = i / n
a < 0 && (a = 0), (a = Math.min(a, 1))
var o = this.easingFunc,
s = o ? o(a) : a
if ((this.onframe(s), a === 1))
if (this.loop) {
var l = i % n
;(this._startTime = t - l), (this._pausedTime = 0), this.onrestart()
} else return !0
return !1
}),
(r.prototype.pause = function () {
this._paused = !0
}),
(r.prototype.resume = function () {
this._paused = !1
}),
(r.prototype.setEasing = function (t) {
;(this.easing = t), (this.easingFunc = Q(t) ? t : hc[t] || xc(t))
}),
r
)
})(),
vw = hw,
wc = (function () {
function r(t) {
this.value = t
}
return r
})(),
cw = (function () {
function r() {
this._len = 0
}
return (
(r.prototype.insert = function (t) {
var e = new wc(t)
return this.insertEntry(e), e
}),
(r.prototype.insertEntry = function (t) {
this.head
? ((this.tail.next = t),
(t.prev = this.tail),
(t.next = null),
(this.tail = t))
: (this.head = this.tail = t),
this._len++
}),
(r.prototype.remove = function (t) {
var e = t.prev,
n = t.next
e ? (e.next = n) : (this.head = n),
n ? (n.prev = e) : (this.tail = e),
(t.next = t.prev = null),
this._len--
}),
(r.prototype.len = function () {
return this._len
}),
(r.prototype.clear = function () {
;(this.head = this.tail = null), (this._len = 0)
}),
r
)
})(),
dw = (function () {
function r(t) {
;(this._list = new cw()),
(this._maxSize = 10),
(this._map = {}),
(this._maxSize = t)
}
return (
(r.prototype.put = function (t, e) {
var n = this._list,
i = this._map,
a = null
if (i[t] == null) {
var o = n.len(),
s = this._lastRemovedEntry
if (o >= this._maxSize && o > 0) {
var l = n.head
n.remove(l),
delete i[l.key],
(a = l.value),
(this._lastRemovedEntry = l)
}
s ? (s.value = e) : (s = new wc(e)),
(s.key = t),
n.insertEntry(s),
(i[t] = s)
}
return a
}),
(r.prototype.get = function (t) {
var e = this._map[t],
n = this._list
if (e != null)
return e !== n.tail && (n.remove(e), n.insertEntry(e)), e.value
}),
(r.prototype.clear = function () {
this._list.clear(), (this._map = {})
}),
(r.prototype.len = function () {
return this._list.len()
}),
r
)
})(),
zi = dw,
bc = {
transparent: [0, 0, 0, 0],
aliceblue: [240, 248, 255, 1],
antiquewhite: [250, 235, 215, 1],
aqua: [0, 255, 255, 1],
aquamarine: [127, 255, 212, 1],
azure: [240, 255, 255, 1],
beige: [245, 245, 220, 1],
bisque: [255, 228, 196, 1],
black: [0, 0, 0, 1],
blanchedalmond: [255, 235, 205, 1],
blue: [0, 0, 255, 1],
blueviolet: [138, 43, 226, 1],
brown: [165, 42, 42, 1],
burlywood: [222, 184, 135, 1],
cadetblue: [95, 158, 160, 1],
chartreuse: [127, 255, 0, 1],
chocolate: [210, 105, 30, 1],
coral: [255, 127, 80, 1],
cornflowerblue: [100, 149, 237, 1],
cornsilk: [255, 248, 220, 1],
crimson: [220, 20, 60, 1],
cyan: [0, 255, 255, 1],
darkblue: [0, 0, 139, 1],
darkcyan: [0, 139, 139, 1],
darkgoldenrod: [184, 134, 11, 1],
darkgray: [169, 169, 169, 1],
darkgreen: [0, 100, 0, 1],
darkgrey: [169, 169, 169, 1],
darkkhaki: [189, 183, 107, 1],
darkmagenta: [139, 0, 139, 1],
darkolivegreen: [85, 107, 47, 1],
darkorange: [255, 140, 0, 1],
darkorchid: [153, 50, 204, 1],
darkred: [139, 0, 0, 1],
darksalmon: [233, 150, 122, 1],
darkseagreen: [143, 188, 143, 1],
darkslateblue: [72, 61, 139, 1],
darkslategray: [47, 79, 79, 1],
darkslategrey: [47, 79, 79, 1],
darkturquoise: [0, 206, 209, 1],
darkviolet: [148, 0, 211, 1],
deeppink: [255, 20, 147, 1],
deepskyblue: [0, 191, 255, 1],
dimgray: [105, 105, 105, 1],
dimgrey: [105, 105, 105, 1],
dodgerblue: [30, 144, 255, 1],
firebrick: [178, 34, 34, 1],
floralwhite: [255, 250, 240, 1],
forestgreen: [34, 139, 34, 1],
fuchsia: [255, 0, 255, 1],
gainsboro: [220, 220, 220, 1],
ghostwhite: [248, 248, 255, 1],
gold: [255, 215, 0, 1],
goldenrod: [218, 165, 32, 1],
gray: [128, 128, 128, 1],
green: [0, 128, 0, 1],
greenyellow: [173, 255, 47, 1],
grey: [128, 128, 128, 1],
honeydew: [240, 255, 240, 1],
hotpink: [255, 105, 180, 1],
indianred: [205, 92, 92, 1],
indigo: [75, 0, 130, 1],
ivory: [255, 255, 240, 1],
khaki: [240, 230, 140, 1],
lavender: [230, 230, 250, 1],
lavenderblush: [255, 240, 245, 1],
lawngreen: [124, 252, 0, 1],
lemonchiffon: [255, 250, 205, 1],
lightblue: [173, 216, 230, 1],
lightcoral: [240, 128, 128, 1],
lightcyan: [224, 255, 255, 1],
lightgoldenrodyellow: [250, 250, 210, 1],
lightgray: [211, 211, 211, 1],
lightgreen: [144, 238, 144, 1],
lightgrey: [211, 211, 211, 1],
lightpink: [255, 182, 193, 1],
lightsalmon: [255, 160, 122, 1],
lightseagreen: [32, 178, 170, 1],
lightskyblue: [135, 206, 250, 1],
lightslategray: [119, 136, 153, 1],
lightslategrey: [119, 136, 153, 1],
lightsteelblue: [176, 196, 222, 1],
lightyellow: [255, 255, 224, 1],
lime: [0, 255, 0, 1],
limegreen: [50, 205, 50, 1],
linen: [250, 240, 230, 1],
magenta: [255, 0, 255, 1],
maroon: [128, 0, 0, 1],
mediumaquamarine: [102, 205, 170, 1],
mediumblue: [0, 0, 205, 1],
mediumorchid: [186, 85, 211, 1],
mediumpurple: [147, 112, 219, 1],
mediumseagreen: [60, 179, 113, 1],
mediumslateblue: [123, 104, 238, 1],
mediumspringgreen: [0, 250, 154, 1],
mediumturquoise: [72, 209, 204, 1],
mediumvioletred: [199, 21, 133, 1],
midnightblue: [25, 25, 112, 1],
mintcream: [245, 255, 250, 1],
mistyrose: [255, 228, 225, 1],
moccasin: [255, 228, 181, 1],
navajowhite: [255, 222, 173, 1],
navy: [0, 0, 128, 1],
oldlace: [253, 245, 230, 1],
olive: [128, 128, 0, 1],
olivedrab: [107, 142, 35, 1],
orange: [255, 165, 0, 1],
orangered: [255, 69, 0, 1],
orchid: [218, 112, 214, 1],
palegoldenrod: [238, 232, 170, 1],
palegreen: [152, 251, 152, 1],
paleturquoise: [175, 238, 238, 1],
palevioletred: [219, 112, 147, 1],
papayawhip: [255, 239, 213, 1],
peachpuff: [255, 218, 185, 1],
peru: [205, 133, 63, 1],
pink: [255, 192, 203, 1],
plum: [221, 160, 221, 1],
powderblue: [176, 224, 230, 1],
purple: [128, 0, 128, 1],
red: [255, 0, 0, 1],
rosybrown: [188, 143, 143, 1],
royalblue: [65, 105, 225, 1],
saddlebrown: [139, 69, 19, 1],
salmon: [250, 128, 114, 1],
sandybrown: [244, 164, 96, 1],
seagreen: [46, 139, 87, 1],
seashell: [255, 245, 238, 1],
sienna: [160, 82, 45, 1],
silver: [192, 192, 192, 1],
skyblue: [135, 206, 235, 1],
slateblue: [106, 90, 205, 1],
slategray: [112, 128, 144, 1],
slategrey: [112, 128, 144, 1],
snow: [255, 250, 250, 1],
springgreen: [0, 255, 127, 1],
steelblue: [70, 130, 180, 1],
tan: [210, 180, 140, 1],
teal: [0, 128, 128, 1],
thistle: [216, 191, 216, 1],
tomato: [255, 99, 71, 1],
turquoise: [64, 224, 208, 1],
violet: [238, 130, 238, 1],
wheat: [245, 222, 179, 1],
white: [255, 255, 255, 1],
whitesmoke: [245, 245, 245, 1],
yellow: [255, 255, 0, 1],
yellowgreen: [154, 205, 50, 1]
}
function Tr(r) {
return (r = Math.round(r)), r < 0 ? 0 : r > 255 ? 255 : r
}
function ql(r) {
return r < 0 ? 0 : r > 1 ? 1 : r
}
function Kl(r) {
var t = r
return t.length && t.charAt(t.length - 1) === '%'
? Tr((parseFloat(t) / 100) * 255)
: Tr(parseInt(t, 10))
}
function mo(r) {
var t = r
return t.length && t.charAt(t.length - 1) === '%'
? ql(parseFloat(t) / 100)
: ql(parseFloat(t))
}
function Ql(r, t, e) {
return (
e < 0 ? (e += 1) : e > 1 && (e -= 1),
e * 6 < 1
? r + (t - r) * e * 6
: e * 2 < 1
? t
: e * 3 < 2
? r + (t - r) * (2 / 3 - e) * 6
: r
)
}
function yo(r, t, e) {
return r + (t - r) * e
}
function ce(r, t, e, n, i) {
return (r[0] = t), (r[1] = e), (r[2] = n), (r[3] = i), r
}
function Jl(r, t) {
return (r[0] = t[0]), (r[1] = t[1]), (r[2] = t[2]), (r[3] = t[3]), r
}
var Tc = new zi(20),
_o = null
function Yn(r, t) {
_o && Jl(_o, t), (_o = Tc.put(r, _o || t.slice()))
}
function ir(r, t) {
if (!!r) {
t = t || []
var e = Tc.get(r)
if (e) return Jl(t, e)
r = r + ''
var n = r.replace(/ /g, '').toLowerCase()
if (n in bc) return Jl(t, bc[n]), Yn(r, t), t
var i = n.length
if (n.charAt(0) === '#') {
if (i === 4 || i === 5) {
var a = parseInt(n.slice(1, 4), 16)
if (!(a >= 0 && a <= 4095)) {
ce(t, 0, 0, 0, 1)
return
}
return (
ce(
t,
((a & 3840) >> 4) | ((a & 3840) >> 8),
(a & 240) | ((a & 240) >> 4),
(a & 15) | ((a & 15) << 4),
i === 5 ? parseInt(n.slice(4), 16) / 15 : 1
),
Yn(r, t),
t
)
} else if (i === 7 || i === 9) {
var a = parseInt(n.slice(1, 7), 16)
if (!(a >= 0 && a <= 16777215)) {
ce(t, 0, 0, 0, 1)
return
}
return (
ce(
t,
(a & 16711680) >> 16,
(a & 65280) >> 8,
a & 255,
i === 9 ? parseInt(n.slice(7), 16) / 255 : 1
),
Yn(r, t),
t
)
}
return
}
var o = n.indexOf('('),
s = n.indexOf(')')
if (o !== -1 && s + 1 === i) {
var l = n.substr(0, o),
u = n.substr(o + 1, s - (o + 1)).split(','),
f = 1
switch (l) {
case 'rgba':
if (u.length !== 4)
return u.length === 3
? ce(t, +u[0], +u[1], +u[2], 1)
: ce(t, 0, 0, 0, 1)
f = mo(u.pop())
case 'rgb':
if (u.length !== 3) {
ce(t, 0, 0, 0, 1)
return
}
return ce(t, Kl(u[0]), Kl(u[1]), Kl(u[2]), f), Yn(r, t), t
case 'hsla':
if (u.length !== 4) {
ce(t, 0, 0, 0, 1)
return
}
return (u[3] = mo(u[3])), Cc(u, t), Yn(r, t), t
case 'hsl':
if (u.length !== 3) {
ce(t, 0, 0, 0, 1)
return
}
return Cc(u, t), Yn(r, t), t
default:
return
}
}
ce(t, 0, 0, 0, 1)
}
}
function Cc(r, t) {
var e = (((parseFloat(r[0]) % 360) + 360) % 360) / 360,
n = mo(r[1]),
i = mo(r[2]),
a = i <= 0.5 ? i * (n + 1) : i + n - i * n,
o = i * 2 - a
return (
(t = t || []),
ce(
t,
Tr(Ql(o, a, e + 1 / 3) * 255),
Tr(Ql(o, a, e) * 255),
Tr(Ql(o, a, e - 1 / 3) * 255),
1
),
r.length === 4 && (t[3] = r[3]),
t
)
}
function Ac(r, t) {
var e = ir(r)
if (e) {
for (var n = 0; n < 3; n++)
t < 0
? (e[n] = (e[n] * (1 - t)) | 0)
: (e[n] = ((255 - e[n]) * t + e[n]) | 0),
e[n] > 255 ? (e[n] = 255) : e[n] < 0 && (e[n] = 0)
return So(e, e.length === 4 ? 'rgba' : 'rgb')
}
}
function pw(r, t, e) {
if (!(!(t && t.length) || !(r >= 0 && r <= 1))) {
var n = r * (t.length - 1),
i = Math.floor(n),
a = Math.ceil(n),
o = ir(t[i]),
s = ir(t[a]),
l = n - i,
u = So(
[
Tr(yo(o[0], s[0], l)),
Tr(yo(o[1], s[1], l)),
Tr(yo(o[2], s[2], l)),
ql(yo(o[3], s[3], l))
],
'rgba'
)
return e ? { color: u, leftIndex: i, rightIndex: a, value: n } : u
}
}
function So(r, t) {
if (!(!r || !r.length)) {
var e = r[0] + ',' + r[1] + ',' + r[2]
return (
(t === 'rgba' || t === 'hsva' || t === 'hsla') && (e += ',' + r[3]),
t + '(' + e + ')'
)
}
}
function xo(r, t) {
var e = ir(r)
return e
? ((0.299 * e[0] + 0.587 * e[1] + 0.114 * e[2]) * e[3]) / 255 +
(1 - e[3]) * t
: 0
}
function gw(r) {
return r.type === 'linear'
}
function mw(r) {
return r.type === 'radial'
}
;(function () {
return at.hasGlobalWindow && Q(window.btoa)
? function (r) {
return window.btoa(unescape(r))
}
: typeof Buffer != 'undefined'
? function (r) {
return Buffer.from(r).toString('base64')
}
: function (r) {
return null
}
})()
var jl = Array.prototype.slice
function ar(r, t, e) {
return (t - r) * e + r
}
function tu(r, t, e, n) {
for (var i = t.length, a = 0; a < i; a++) r[a] = ar(t[a], e[a], n)
return r
}
function yw(r, t, e, n) {
for (var i = t.length, a = i && t[0].length, o = 0; o < i; o++) {
r[o] || (r[o] = [])
for (var s = 0; s < a; s++) r[o][s] = ar(t[o][s], e[o][s], n)
}
return r
}
function wo(r, t, e, n) {
for (var i = t.length, a = 0; a < i; a++) r[a] = t[a] + e[a] * n
return r
}
function Mc(r, t, e, n) {
for (var i = t.length, a = i && t[0].length, o = 0; o < i; o++) {
r[o] || (r[o] = [])
for (var s = 0; s < a; s++) r[o][s] = t[o][s] + e[o][s] * n
}
return r
}
function _w(r, t) {
for (
var e = r.length,
n = t.length,
i = e > n ? t : r,
a = Math.min(e, n),
o = i[a - 1] || { color: [0, 0, 0, 0], offset: 0 },
s = a;
s < Math.max(e, n);
s++
)
i.push({ offset: o.offset, color: o.color.slice() })
}
function Sw(r, t, e) {
var n = r,
i = t
if (!(!n.push || !i.push)) {
var a = n.length,
o = i.length
if (a !== o) {
var s = a > o
if (s) n.length = o
else for (var l = a; l < o; l++) n.push(e === 1 ? i[l] : jl.call(i[l]))
}
for (var u = n[0] && n[0].length, l = 0; l < n.length; l++)
if (e === 1) isNaN(n[l]) && (n[l] = i[l])
else for (var f = 0; f < u; f++) isNaN(n[l][f]) && (n[l][f] = i[l][f])
}
}
function bo(r) {
if (Zt(r)) {
var t = r.length
if (Zt(r[0])) {
for (var e = [], n = 0; n < t; n++) e.push(jl.call(r[n]))
return e
}
return jl.call(r)
}
return r
}
function To(r) {
return (
(r[0] = Math.floor(r[0]) || 0),
(r[1] = Math.floor(r[1]) || 0),
(r[2] = Math.floor(r[2]) || 0),
(r[3] = r[3] == null ? 1 : r[3]),
'rgba(' + r.join(',') + ')'
)
}
function xw(r) {
return Zt(r && r[0]) ? 2 : 1
}
var Co = 0,
Ao = 1,
Dc = 2,
Vi = 3,
eu = 4,
ru = 5,
Ic = 6
function Lc(r) {
return r === eu || r === ru
}
function Mo(r) {
return r === Ao || r === Dc
}
var Gi = [0, 0, 0, 0],
ww = (function () {
function r(t) {
;(this.keyframes = []),
(this.discrete = !1),
(this._invalid = !1),
(this._needsSort = !1),
(this._lastFr = 0),
(this._lastFrP = 0),
(this.propName = t)
}
return (
(r.prototype.isFinished = function () {
return this._finished
}),
(r.prototype.setFinished = function () {
;(this._finished = !0),
this._additiveTrack && this._additiveTrack.setFinished()
}),
(r.prototype.needsAnimate = function () {
return this.keyframes.length >= 1
}),
(r.prototype.getAdditiveTrack = function () {
return this._additiveTrack
}),
(r.prototype.addKeyframe = function (t, e, n) {
this._needsSort = !0
var i = this.keyframes,
a = i.length,
o = !1,
s = Ic,
l = e
if (Zt(e)) {
var u = xw(e)
;(s = u),
((u === 1 && !dt(e[0])) || (u === 2 && !dt(e[0][0]))) && (o = !0)
} else if (dt(e) && !ao(e)) s = Co
else if (W(e))
if (!isNaN(+e)) s = Co
else {
var f = ir(e)
f && ((l = f), (s = Vi))
}
else if (io(e)) {
var h = N({}, l)
;(h.colorStops = G(e.colorStops, function (v) {
return { offset: v.offset, color: ir(v.color) }
})),
gw(e) ? (s = eu) : mw(e) && (s = ru),
(l = h)
}
a === 0
? (this.valType = s)
: (s !== this.valType || s === Ic) && (o = !0),
(this.discrete = this.discrete || o)
var c = { time: t, value: l, rawValue: e, percent: 0 }
return (
n && ((c.easing = n), (c.easingFunc = Q(n) ? n : hc[n] || xc(n))),
i.push(c),
c
)
}),
(r.prototype.prepare = function (t, e) {
var n = this.keyframes
this._needsSort &&
n.sort(function (p, g) {
return p.time - g.time
})
for (
var i = this.valType,
a = n.length,
o = n[a - 1],
s = this.discrete,
l = Mo(i),
u = Lc(i),
f = 0;
f < a;
f++
) {
var h = n[f],
c = h.value,
v = o.value
;(h.percent = h.time / t),
s ||
(l && f !== a - 1
? Sw(c, v, i)
: u && _w(c.colorStops, v.colorStops))
}
if (
!s &&
i !== ru &&
e &&
this.needsAnimate() &&
e.needsAnimate() &&
i === e.valType &&
!e._finished
) {
this._additiveTrack = e
for (var d = n[0].value, f = 0; f < a; f++)
i === Co
? (n[f].additiveValue = n[f].value - d)
: i === Vi
? (n[f].additiveValue = wo([], n[f].value, d, -1))
: Mo(i) &&
(n[f].additiveValue =
i === Ao
? wo([], n[f].value, d, -1)
: Mc([], n[f].value, d, -1))
}
}),
(r.prototype.step = function (t, e) {
if (!this._finished) {
this._additiveTrack &&
this._additiveTrack._finished &&
(this._additiveTrack = null)
var n = this._additiveTrack != null,
i = n ? 'additiveValue' : 'value',
a = this.valType,
o = this.keyframes,
s = o.length,
l = this.propName,
u = a === Vi,
f,
h = this._lastFr,
c = Math.min,
v,
d
if (s === 1) v = d = o[0]
else {
if (e < 0) f = 0
else if (e < this._lastFrP) {
var p = c(h + 1, s - 1)
for (f = p; f >= 0 && !(o[f].percent <= e); f--);
f = c(f, s - 2)
} else {
for (f = h; f < s && !(o[f].percent > e); f++);
f = c(f - 1, s - 2)
}
;(d = o[f + 1]), (v = o[f])
}
if (!!(v && d)) {
;(this._lastFr = f), (this._lastFrP = e)
var g = d.percent - v.percent,
m = g === 0 ? 1 : c((e - v.percent) / g, 1)
d.easingFunc && (m = d.easingFunc(m))
var y = n ? this._additiveValue : u ? Gi : t[l]
if (
((Mo(a) || u) && !y && (y = this._additiveValue = []),
this.discrete)
)
t[l] = m < 1 ? v.rawValue : d.rawValue
else if (Mo(a))
a === Ao ? tu(y, v[i], d[i], m) : yw(y, v[i], d[i], m)
else if (Lc(a)) {
var _ = v[i],
S = d[i],
w = a === eu
;(t[l] = {
type: w ? 'linear' : 'radial',
x: ar(_.x, S.x, m),
y: ar(_.y, S.y, m),
colorStops: G(_.colorStops, function (b, T) {
var C = S.colorStops[T]
return {
offset: ar(b.offset, C.offset, m),
color: To(tu([], b.color, C.color, m))
}
}),
global: S.global
}),
w
? ((t[l].x2 = ar(_.x2, S.x2, m)),
(t[l].y2 = ar(_.y2, S.y2, m)))
: (t[l].r = ar(_.r, S.r, m))
} else if (u) tu(y, v[i], d[i], m), n || (t[l] = To(y))
else {
var x = ar(v[i], d[i], m)
n ? (this._additiveValue = x) : (t[l] = x)
}
n && this._addToTarget(t)
}
}
}),
(r.prototype._addToTarget = function (t) {
var e = this.valType,
n = this.propName,
i = this._additiveValue
e === Co
? (t[n] = t[n] + i)
: e === Vi
? (ir(t[n], Gi), wo(Gi, Gi, i, 1), (t[n] = To(Gi)))
: e === Ao
? wo(t[n], t[n], i, 1)
: e === Dc && Mc(t[n], t[n], i, 1)
}),
r
)
})(),
bw = (function () {
function r(t, e, n, i) {
if (
((this._tracks = {}),
(this._trackKeys = []),
(this._maxTime = 0),
(this._started = 0),
(this._clip = null),
(this._target = t),
(this._loop = e),
e && i)
) {
Pl("Can' use additive animation on looped animation.")
return
}
;(this._additiveAnimators = i), (this._allowDiscrete = n)
}
return (
(r.prototype.getMaxTime = function () {
return this._maxTime
}),
(r.prototype.getDelay = function () {
return this._delay
}),
(r.prototype.getLoop = function () {
return this._loop
}),
(r.prototype.getTarget = function () {
return this._target
}),
(r.prototype.changeTarget = function (t) {
this._target = t
}),
(r.prototype.when = function (t, e, n) {
return this.whenWithKeys(t, e, xt(e), n)
}),
(r.prototype.whenWithKeys = function (t, e, n, i) {
for (var a = this._tracks, o = 0; o < n.length; o++) {
var s = n[o],
l = a[s]
if (!l) {
l = a[s] = new ww(s)
var u = void 0,
f = this._getAdditiveTrack(s)
if (f) {
var h = f.keyframes,
c = h[h.length - 1]
;(u = c && c.value), f.valType === Vi && u && (u = To(u))
} else u = this._target[s]
if (u == null) continue
t > 0 && l.addKeyframe(0, bo(u), i), this._trackKeys.push(s)
}
l.addKeyframe(t, bo(e[s]), i)
}
return (this._maxTime = Math.max(this._maxTime, t)), this
}),
(r.prototype.pause = function () {
this._clip.pause(), (this._paused = !0)
}),
(r.prototype.resume = function () {
this._clip.resume(), (this._paused = !1)
}),
(r.prototype.isPaused = function () {
return !!this._paused
}),
(r.prototype.duration = function (t) {
return (this._maxTime = t), (this._force = !0), this
}),
(r.prototype._doneCallback = function () {
this._setTracksFinished(), (this._clip = null)
var t = this._doneCbs
if (t) for (var e = t.length, n = 0; n < e; n++) t[n].call(this)
}),
(r.prototype._abortedCallback = function () {
this._setTracksFinished()
var t = this.animation,
e = this._abortedCbs
if ((t && t.removeClip(this._clip), (this._clip = null), e))
for (var n = 0; n < e.length; n++) e[n].call(this)
}),
(r.prototype._setTracksFinished = function () {
for (
var t = this._tracks, e = this._trackKeys, n = 0;
n < e.length;
n++
)
t[e[n]].setFinished()
}),
(r.prototype._getAdditiveTrack = function (t) {
var e,
n = this._additiveAnimators
if (n)
for (var i = 0; i < n.length; i++) {
var a = n[i].getTrack(t)
a && (e = a)
}
return e
}),
(r.prototype.start = function (t) {
if (!(this._started > 0)) {
this._started = 1
for (
var e = this, n = [], i = this._maxTime || 0, a = 0;
a < this._trackKeys.length;
a++
) {
var o = this._trackKeys[a],
s = this._tracks[o],
l = this._getAdditiveTrack(o),
u = s.keyframes,
f = u.length
if ((s.prepare(i, l), s.needsAnimate()))
if (!this._allowDiscrete && s.discrete) {
var h = u[f - 1]
h && (e._target[s.propName] = h.rawValue), s.setFinished()
} else n.push(s)
}
if (n.length || this._force) {
var c = new vw({
life: i,
loop: this._loop,
delay: this._delay || 0,
onframe: function (v) {
e._started = 2
var d = e._additiveAnimators
if (d) {
for (var p = !1, g = 0; g < d.length; g++)
if (d[g]._clip) {
p = !0
break
}
p || (e._additiveAnimators = null)
}
for (var g = 0; g < n.length; g++) n[g].step(e._target, v)
var m = e._onframeCbs
if (m) for (var g = 0; g < m.length; g++) m[g](e._target, v)
},
ondestroy: function () {
e._doneCallback()
}
})
;(this._clip = c),
this.animation && this.animation.addClip(c),
t && c.setEasing(t)
} else this._doneCallback()
return this
}
}),
(r.prototype.stop = function (t) {
if (!!this._clip) {
var e = this._clip
t && e.onframe(1), this._abortedCallback()
}
}),
(r.prototype.delay = function (t) {
return (this._delay = t), this
}),
(r.prototype.during = function (t) {
return (
t &&
(this._onframeCbs || (this._onframeCbs = []),
this._onframeCbs.push(t)),
this
)
}),
(r.prototype.done = function (t) {
return (
t && (this._doneCbs || (this._doneCbs = []), this._doneCbs.push(t)),
this
)
}),
(r.prototype.aborted = function (t) {
return (
t &&
(this._abortedCbs || (this._abortedCbs = []),
this._abortedCbs.push(t)),
this
)
}),
(r.prototype.getClip = function () {
return this._clip
}),
(r.prototype.getTrack = function (t) {
return this._tracks[t]
}),
(r.prototype.getTracks = function () {
var t = this
return G(this._trackKeys, function (e) {
return t._tracks[e]
})
}),
(r.prototype.stopTracks = function (t, e) {
if (!t.length || !this._clip) return !0
for (
var n = this._tracks, i = this._trackKeys, a = 0;
a < t.length;
a++
) {
var o = n[t[a]]
o &&
!o.isFinished() &&
(e
? o.step(this._target, 1)
: this._started === 1 && o.step(this._target, 0),
o.setFinished())
}
for (var s = !0, a = 0; a < i.length; a++)
if (!n[i[a]].isFinished()) {
s = !1
break
}
return s && this._abortedCallback(), s
}),
(r.prototype.saveTo = function (t, e, n) {
if (!!t) {
e = e || this._trackKeys
for (var i = 0; i < e.length; i++) {
var a = e[i],
o = this._tracks[a]
if (!(!o || o.isFinished())) {
var s = o.keyframes,
l = s[n ? 0 : s.length - 1]
l && (t[a] = bo(l.rawValue))
}
}
}
}),
(r.prototype.__changeFinalValue = function (t, e) {
e = e || xt(t)
for (var n = 0; n < e.length; n++) {
var i = e[n],
a = this._tracks[i]
if (!!a) {
var o = a.keyframes
if (o.length > 1) {
var s = o.pop()
a.addKeyframe(s.time, t[i]),
a.prepare(this._maxTime, a.getAdditiveTrack())
}
}
}
}),
r
)
})(),
nu = bw
function Zn() {
return new Date().getTime()
}
var Tw = (function (r) {
B(t, r)
function t(e) {
var n = r.call(this) || this
return (
(n._running = !1),
(n._time = 0),
(n._pausedTime = 0),
(n._pauseStart = 0),
(n._paused = !1),
(e = e || {}),
(n.stage = e.stage || {}),
n
)
}
return (
(t.prototype.addClip = function (e) {
e.animation && this.removeClip(e),
this._head
? ((this._tail.next = e),
(e.prev = this._tail),
(e.next = null),
(this._tail = e))
: (this._head = this._tail = e),
(e.animation = this)
}),
(t.prototype.addAnimator = function (e) {
e.animation = this
var n = e.getClip()
n && this.addClip(n)
}),
(t.prototype.removeClip = function (e) {
if (!!e.animation) {
var n = e.prev,
i = e.next
n ? (n.next = i) : (this._head = i),
i ? (i.prev = n) : (this._tail = n),
(e.next = e.prev = e.animation = null)
}
}),
(t.prototype.removeAnimator = function (e) {
var n = e.getClip()
n && this.removeClip(n), (e.animation = null)
}),
(t.prototype.update = function (e) {
for (
var n = Zn() - this._pausedTime, i = n - this._time, a = this._head;
a;
) {
var o = a.next,
s = a.step(n, i)
s && (a.ondestroy(), this.removeClip(a)), (a = o)
}
;(this._time = n),
e ||
(this.trigger('frame', i), this.stage.update && this.stage.update())
}),
(t.prototype._startLoop = function () {
var e = this
this._running = !0
function n() {
e._running && (Xl(n), !e._paused && e.update())
}
Xl(n)
}),
(t.prototype.start = function () {
this._running ||
((this._time = Zn()), (this._pausedTime = 0), this._startLoop())
}),
(t.prototype.stop = function () {
this._running = !1
}),
(t.prototype.pause = function () {
this._paused || ((this._pauseStart = Zn()), (this._paused = !0))
}),
(t.prototype.resume = function () {
this._paused &&
((this._pausedTime += Zn() - this._pauseStart), (this._paused = !1))
}),
(t.prototype.clear = function () {
for (var e = this._head; e; ) {
var n = e.next
;(e.prev = e.next = e.animation = null), (e = n)
}
this._head = this._tail = null
}),
(t.prototype.isFinished = function () {
return this._head == null
}),
(t.prototype.animate = function (e, n) {
;(n = n || {}), this.start()
var i = new nu(e, n.loop)
return this.addAnimator(i), i
}),
t
)
})(fe),
Cw = Tw,
Aw = 300,
iu = at.domSupported,
au = (function () {
var r = [
'click',
'dblclick',
'mousewheel',
'wheel',
'mouseout',
'mouseup',
'mousedown',
'mousemove',
'contextmenu'
],
t = ['touchstart', 'touchend', 'touchmove'],
e = { pointerdown: 1, pointerup: 1, pointermove: 1, pointerout: 1 },
n = G(r, function (i) {
var a = i.replace('mouse', 'pointer')
return e.hasOwnProperty(a) ? a : i
})
return { mouse: r, touch: t, pointer: n }
})(),
Pc = {
mouse: ['mousemove', 'mouseup'],
pointer: ['pointermove', 'pointerup']
},
Rc = !1
function ou(r) {
var t = r.pointerType
return t === 'pen' || t === 'touch'
}
function Mw(r) {
;(r.touching = !0),
r.touchTimer != null && (clearTimeout(r.touchTimer), (r.touchTimer = null)),
(r.touchTimer = setTimeout(function () {
;(r.touching = !1), (r.touchTimer = null)
}, 700))
}
function su(r) {
r && (r.zrByTouch = !0)
}
function Dw(r, t) {
return he(r.dom, new Iw(r, t), !0)
}
function Ec(r, t) {
for (
var e = t, n = !1;
e &&
e.nodeType !== 9 &&
!(n = e.domBelongToZr || (e !== t && e === r.painterRoot));
)
e = e.parentNode
return n
}
var Iw = (function () {
function r(t, e) {
;(this.stopPropagation = $t),
(this.stopImmediatePropagation = $t),
(this.preventDefault = $t),
(this.type = e.type),
(this.target = this.currentTarget = t.dom),
(this.pointerType = e.pointerType),
(this.clientX = e.clientX),
(this.clientY = e.clientY)
}
return r
})(),
Me = {
mousedown: function (r) {
;(r = he(this.dom, r)),
(this.__mayPointerCapture = [r.zrX, r.zrY]),
this.trigger('mousedown', r)
},
mousemove: function (r) {
r = he(this.dom, r)
var t = this.__mayPointerCapture
t &&
(r.zrX !== t[0] || r.zrY !== t[1]) &&
this.__togglePointerCapture(!0),
this.trigger('mousemove', r)
},
mouseup: function (r) {
;(r = he(this.dom, r)),
this.__togglePointerCapture(!1),
this.trigger('mouseup', r)
},
mouseout: function (r) {
r = he(this.dom, r)
var t = r.toElement || r.relatedTarget
Ec(this, t) ||
(this.__pointerCapturing && (r.zrEventControl = 'no_globalout'),
this.trigger('mouseout', r))
},
wheel: function (r) {
;(Rc = !0), (r = he(this.dom, r)), this.trigger('mousewheel', r)
},
mousewheel: function (r) {
Rc || ((r = he(this.dom, r)), this.trigger('mousewheel', r))
},
touchstart: function (r) {
;(r = he(this.dom, r)),
su(r),
(this.__lastTouchMoment = new Date()),
this.handler.processGesture(r, 'start'),
Me.mousemove.call(this, r),
Me.mousedown.call(this, r)
},
touchmove: function (r) {
;(r = he(this.dom, r)),
su(r),
this.handler.processGesture(r, 'change'),
Me.mousemove.call(this, r)
},
touchend: function (r) {
;(r = he(this.dom, r)),
su(r),
this.handler.processGesture(r, 'end'),
Me.mouseup.call(this, r),
+new Date() - +this.__lastTouchMoment < Aw && Me.click.call(this, r)
},
pointerdown: function (r) {
Me.mousedown.call(this, r)
},
pointermove: function (r) {
ou(r) || Me.mousemove.call(this, r)
},
pointerup: function (r) {
Me.mouseup.call(this, r)
},
pointerout: function (r) {
ou(r) || Me.mouseout.call(this, r)
}
}
A(['click', 'dblclick', 'contextmenu'], function (r) {
Me[r] = function (t) {
;(t = he(this.dom, t)), this.trigger(r, t)
}
})
var lu = {
pointermove: function (r) {
ou(r) || lu.mousemove.call(this, r)
},
pointerup: function (r) {
lu.mouseup.call(this, r)
},
mousemove: function (r) {
this.trigger('mousemove', r)
},
mouseup: function (r) {
var t = this.__pointerCapturing
this.__togglePointerCapture(!1),
this.trigger('mouseup', r),
t && ((r.zrEventControl = 'only_globalout'), this.trigger('mouseout', r))
}
}
function Lw(r, t) {
var e = t.domHandlers
at.pointerEventsSupported
? A(au.pointer, function (n) {
Do(t, n, function (i) {
e[n].call(r, i)
})
})
: (at.touchEventsSupported &&
A(au.touch, function (n) {
Do(t, n, function (i) {
e[n].call(r, i), Mw(t)
})
}),
A(au.mouse, function (n) {
Do(t, n, function (i) {
;(i = Hl(i)), t.touching || e[n].call(r, i)
})
}))
}
function Pw(r, t) {
at.pointerEventsSupported
? A(Pc.pointer, e)
: at.touchEventsSupported || A(Pc.mouse, e)
function e(n) {
function i(a) {
;(a = Hl(a)),
Ec(r, a.target) || ((a = Dw(r, a)), t.domHandlers[n].call(r, a))
}
Do(t, n, i, { capture: !0 })
}
}
function Do(r, t, e, n) {
;(r.mounted[t] = e), (r.listenerOpts[t] = n), Wl(r.domTarget, t, e, n)
}
function uu(r) {
var t = r.mounted
for (var e in t)
t.hasOwnProperty(e) && $x(r.domTarget, e, t[e], r.listenerOpts[e])
r.mounted = {}
}
var Oc = (function () {
function r(t, e) {
;(this.mounted = {}),
(this.listenerOpts = {}),
(this.touching = !1),
(this.domTarget = t),
(this.domHandlers = e)
}
return r
})(),
Rw = (function (r) {
B(t, r)
function t(e, n) {
var i = r.call(this) || this
return (
(i.__pointerCapturing = !1),
(i.dom = e),
(i.painterRoot = n),
(i._localHandlerScope = new Oc(e, Me)),
iu && (i._globalHandlerScope = new Oc(document, lu)),
Lw(i, i._localHandlerScope),
i
)
}
return (
(t.prototype.dispose = function () {
uu(this._localHandlerScope), iu && uu(this._globalHandlerScope)
}),
(t.prototype.setCursor = function (e) {
this.dom.style && (this.dom.style.cursor = e || 'default')
}),
(t.prototype.__togglePointerCapture = function (e) {
if (
((this.__mayPointerCapture = null),
iu && +this.__pointerCapturing ^ +e)
) {
this.__pointerCapturing = e
var n = this._globalHandlerScope
e ? Pw(this, n) : uu(n)
}
}),
t
)
})(fe),
Ew = Rw,
kc = 1
at.hasGlobalWindow &&
(kc = Math.max(
window.devicePixelRatio ||
(window.screen && window.screen.deviceXDPI / window.screen.logicalXDPI) ||
1,
1
))
var Io = kc,
fu = 0.4,
hu = '#333',
vu = '#ccc',
Ow = '#eee'
function Hi() {
return [1, 0, 0, 1, 0, 0]
}
function cu(r) {
return (
(r[0] = 1), (r[1] = 0), (r[2] = 0), (r[3] = 1), (r[4] = 0), (r[5] = 0), r
)
}
function kw(r, t) {
return (
(r[0] = t[0]),
(r[1] = t[1]),
(r[2] = t[2]),
(r[3] = t[3]),
(r[4] = t[4]),
(r[5] = t[5]),
r
)
}
function $n(r, t, e) {
var n = t[0] * e[0] + t[2] * e[1],
i = t[1] * e[0] + t[3] * e[1],
a = t[0] * e[2] + t[2] * e[3],
o = t[1] * e[2] + t[3] * e[3],
s = t[0] * e[4] + t[2] * e[5] + t[4],
l = t[1] * e[4] + t[3] * e[5] + t[5]
return (
(r[0] = n), (r[1] = i), (r[2] = a), (r[3] = o), (r[4] = s), (r[5] = l), r
)
}
function du(r, t, e) {
return (
(r[0] = t[0]),
(r[1] = t[1]),
(r[2] = t[2]),
(r[3] = t[3]),
(r[4] = t[4] + e[0]),
(r[5] = t[5] + e[1]),
r
)
}
function pu(r, t, e) {
var n = t[0],
i = t[2],
a = t[4],
o = t[1],
s = t[3],
l = t[5],
u = Math.sin(e),
f = Math.cos(e)
return (
(r[0] = n * f + o * u),
(r[1] = -n * u + o * f),
(r[2] = i * f + s * u),
(r[3] = -i * u + f * s),
(r[4] = f * a + u * l),
(r[5] = f * l - u * a),
r
)
}
function Bw(r, t, e) {
var n = e[0],
i = e[1]
return (
(r[0] = t[0] * n),
(r[1] = t[1] * i),
(r[2] = t[2] * n),
(r[3] = t[3] * i),
(r[4] = t[4] * n),
(r[5] = t[5] * i),
r
)
}
function Lo(r, t) {
var e = t[0],
n = t[2],
i = t[4],
a = t[1],
o = t[3],
s = t[5],
l = e * o - a * n
return l
? ((l = 1 / l),
(r[0] = o * l),
(r[1] = -a * l),
(r[2] = -n * l),
(r[3] = e * l),
(r[4] = (n * s - o * i) * l),
(r[5] = (a * i - e * s) * l),
r)
: null
}
var Bc = cu,
Nc = 5e-5
function Zr(r) {
return r > Nc || r < -Nc
}
var $r = [],
Xn = [],
gu = Hi(),
mu = Math.abs,
Wi = (function () {
function r() {}
return (
(r.prototype.getLocalTransform = function (t) {
return r.getLocalTransform(this, t)
}),
(r.prototype.setPosition = function (t) {
;(this.x = t[0]), (this.y = t[1])
}),
(r.prototype.setScale = function (t) {
;(this.scaleX = t[0]), (this.scaleY = t[1])
}),
(r.prototype.setSkew = function (t) {
;(this.skewX = t[0]), (this.skewY = t[1])
}),
(r.prototype.setOrigin = function (t) {
;(this.originX = t[0]), (this.originY = t[1])
}),
(r.prototype.needLocalTransform = function () {
return (
Zr(this.rotation) ||
Zr(this.x) ||
Zr(this.y) ||
Zr(this.scaleX - 1) ||
Zr(this.scaleY - 1) ||
Zr(this.skewX) ||
Zr(this.skewY)
)
}),
(r.prototype.updateTransform = function () {
var t = this.parent && this.parent.transform,
e = this.needLocalTransform(),
n = this.transform
if (!(e || t)) {
n && Bc(n)
return
}
;(n = n || Hi()),
e ? this.getLocalTransform(n) : Bc(n),
t && (e ? $n(n, t, n) : kw(n, t)),
(this.transform = n),
this._resolveGlobalScaleRatio(n)
}),
(r.prototype._resolveGlobalScaleRatio = function (t) {
var e = this.globalScaleRatio
if (e != null && e !== 1) {
this.getGlobalScale($r)
var n = $r[0] < 0 ? -1 : 1,
i = $r[1] < 0 ? -1 : 1,
a = (($r[0] - n) * e + n) / $r[0] || 0,
o = (($r[1] - i) * e + i) / $r[1] || 0
;(t[0] *= a), (t[1] *= a), (t[2] *= o), (t[3] *= o)
}
;(this.invTransform = this.invTransform || Hi()),
Lo(this.invTransform, t)
}),
(r.prototype.getComputedTransform = function () {
for (var t = this, e = []; t; ) e.push(t), (t = t.parent)
for (; (t = e.pop()); ) t.updateTransform()
return this.transform
}),
(r.prototype.setLocalTransform = function (t) {
if (!!t) {
var e = t[0] * t[0] + t[1] * t[1],
n = t[2] * t[2] + t[3] * t[3],
i = Math.atan2(t[1], t[0]),
a = Math.PI / 2 + i - Math.atan2(t[3], t[2])
;(n = Math.sqrt(n) * Math.cos(a)),
(e = Math.sqrt(e)),
(this.skewX = a),
(this.skewY = 0),
(this.rotation = -i),
(this.x = +t[4]),
(this.y = +t[5]),
(this.scaleX = e),
(this.scaleY = n),
(this.originX = 0),
(this.originY = 0)
}
}),
(r.prototype.decomposeTransform = function () {
if (!!this.transform) {
var t = this.parent,
e = this.transform
t && t.transform && ($n(Xn, t.invTransform, e), (e = Xn))
var n = this.originX,
i = this.originY
;(n || i) &&
((gu[4] = n),
(gu[5] = i),
$n(Xn, e, gu),
(Xn[4] -= n),
(Xn[5] -= i),
(e = Xn)),
this.setLocalTransform(e)
}
}),
(r.prototype.getGlobalScale = function (t) {
var e = this.transform
return (
(t = t || []),
e
? ((t[0] = Math.sqrt(e[0] * e[0] + e[1] * e[1])),
(t[1] = Math.sqrt(e[2] * e[2] + e[3] * e[3])),
e[0] < 0 && (t[0] = -t[0]),
e[3] < 0 && (t[1] = -t[1]),
t)
: ((t[0] = 1), (t[1] = 1), t)
)
}),
(r.prototype.transformCoordToLocal = function (t, e) {
var n = [t, e],
i = this.invTransform
return i && ue(n, n, i), n
}),
(r.prototype.transformCoordToGlobal = function (t, e) {
var n = [t, e],
i = this.transform
return i && ue(n, n, i), n
}),
(r.prototype.getLineScale = function () {
var t = this.transform
return t && mu(t[0] - 1) > 1e-10 && mu(t[3] - 1) > 1e-10
? Math.sqrt(mu(t[0] * t[3] - t[2] * t[1]))
: 1
}),
(r.prototype.copyTransform = function (t) {
Nw(this, t)
}),
(r.getLocalTransform = function (t, e) {
e = e || []
var n = t.originX || 0,
i = t.originY || 0,
a = t.scaleX,
o = t.scaleY,
s = t.anchorX,
l = t.anchorY,
u = t.rotation || 0,
f = t.x,
h = t.y,
c = t.skewX ? Math.tan(t.skewX) : 0,
v = t.skewY ? Math.tan(-t.skewY) : 0
if (n || i || s || l) {
var d = n + s,
p = i + l
;(e[4] = -d * a - c * p * o), (e[5] = -p * o - v * d * a)
} else e[4] = e[5] = 0
return (
(e[0] = a),
(e[3] = o),
(e[1] = v * a),
(e[2] = c * o),
u && pu(e, e, u),
(e[4] += n + f),
(e[5] += i + h),
e
)
}),
(r.initDefaultProps = (function () {
var t = r.prototype
;(t.scaleX = t.scaleY = t.globalScaleRatio = 1),
(t.x =
t.y =
t.originX =
t.originY =
t.skewX =
t.skewY =
t.rotation =
t.anchorX =
t.anchorY =
0)
})()),
r
)
})(),
Ui = [
'x',
'y',
'originX',
'originY',
'anchorX',
'anchorY',
'rotation',
'scaleX',
'scaleY',
'skewX',
'skewY'
]
function Nw(r, t) {
for (var e = 0; e < Ui.length; e++) {
var n = Ui[e]
r[n] = t[n]
}
}
var Fw = (function () {
function r(t, e) {
;(this.x = t || 0), (this.y = e || 0)
}
return (
(r.prototype.copy = function (t) {
return (this.x = t.x), (this.y = t.y), this
}),
(r.prototype.clone = function () {
return new r(this.x, this.y)
}),
(r.prototype.set = function (t, e) {
return (this.x = t), (this.y = e), this
}),
(r.prototype.equal = function (t) {
return t.x === this.x && t.y === this.y
}),
(r.prototype.add = function (t) {
return (this.x += t.x), (this.y += t.y), this
}),
(r.prototype.scale = function (t) {
;(this.x *= t), (this.y *= t)
}),
(r.prototype.scaleAndAdd = function (t, e) {
;(this.x += t.x * e), (this.y += t.y * e)
}),
(r.prototype.sub = function (t) {
return (this.x -= t.x), (this.y -= t.y), this
}),
(r.prototype.dot = function (t) {
return this.x * t.x + this.y * t.y
}),
(r.prototype.len = function () {
return Math.sqrt(this.x * this.x + this.y * this.y)
}),
(r.prototype.lenSquare = function () {
return this.x * this.x + this.y * this.y
}),
(r.prototype.normalize = function () {
var t = this.len()
return (this.x /= t), (this.y /= t), this
}),
(r.prototype.distance = function (t) {
var e = this.x - t.x,
n = this.y - t.y
return Math.sqrt(e * e + n * n)
}),
(r.prototype.distanceSquare = function (t) {
var e = this.x - t.x,
n = this.y - t.y
return e * e + n * n
}),
(r.prototype.negate = function () {
return (this.x = -this.x), (this.y = -this.y), this
}),
(r.prototype.transform = function (t) {
if (!!t) {
var e = this.x,
n = this.y
return (
(this.x = t[0] * e + t[2] * n + t[4]),
(this.y = t[1] * e + t[3] * n + t[5]),
this
)
}
}),
(r.prototype.toArray = function (t) {
return (t[0] = this.x), (t[1] = this.y), t
}),
(r.prototype.fromArray = function (t) {
;(this.x = t[0]), (this.y = t[1])
}),
(r.set = function (t, e, n) {
;(t.x = e), (t.y = n)
}),
(r.copy = function (t, e) {
;(t.x = e.x), (t.y = e.y)
}),
(r.len = function (t) {
return Math.sqrt(t.x * t.x + t.y * t.y)
}),
(r.lenSquare = function (t) {
return t.x * t.x + t.y * t.y
}),
(r.dot = function (t, e) {
return t.x * e.x + t.y * e.y
}),
(r.add = function (t, e, n) {
;(t.x = e.x + n.x), (t.y = e.y + n.y)
}),
(r.sub = function (t, e, n) {
;(t.x = e.x - n.x), (t.y = e.y - n.y)
}),
(r.scale = function (t, e, n) {
;(t.x = e.x * n), (t.y = e.y * n)
}),
(r.scaleAndAdd = function (t, e, n, i) {
;(t.x = e.x + n.x * i), (t.y = e.y + n.y * i)
}),
(r.lerp = function (t, e, n, i) {
var a = 1 - i
;(t.x = a * e.x + i * n.x), (t.y = a * e.y + i * n.y)
}),
r
)
})(),
Z = Fw,
Po = Math.min,
Ro = Math.max,
Xr = new Z(),
qr = new Z(),
Kr = new Z(),
Qr = new Z(),
Yi = new Z(),
Zi = new Z(),
zw = (function () {
function r(t, e, n, i) {
n < 0 && ((t = t + n), (n = -n)),
i < 0 && ((e = e + i), (i = -i)),
(this.x = t),
(this.y = e),
(this.width = n),
(this.height = i)
}
return (
(r.prototype.union = function (t) {
var e = Po(t.x, this.x),
n = Po(t.y, this.y)
isFinite(this.x) && isFinite(this.width)
? (this.width = Ro(t.x + t.width, this.x + this.width) - e)
: (this.width = t.width),
isFinite(this.y) && isFinite(this.height)
? (this.height = Ro(t.y + t.height, this.y + this.height) - n)
: (this.height = t.height),
(this.x = e),
(this.y = n)
}),
(r.prototype.applyTransform = function (t) {
r.applyTransform(this, this, t)
}),
(r.prototype.calculateTransform = function (t) {
var e = this,
n = t.width / e.width,
i = t.height / e.height,
a = Hi()
return du(a, a, [-e.x, -e.y]), Bw(a, a, [n, i]), du(a, a, [t.x, t.y]), a
}),
(r.prototype.intersect = function (t, e) {
if (!t) return !1
t instanceof r || (t = r.create(t))
var n = this,
i = n.x,
a = n.x + n.width,
o = n.y,
s = n.y + n.height,
l = t.x,
u = t.x + t.width,
f = t.y,
h = t.y + t.height,
c = !(a < l || u < i || s < f || h < o)
if (e) {
var v = 1 / 0,
d = 0,
p = Math.abs(a - l),
g = Math.abs(u - i),
m = Math.abs(s - f),
y = Math.abs(h - o),
_ = Math.min(p, g),
S = Math.min(m, y)
a < l || u < i
? _ > d && ((d = _), p < g ? Z.set(Zi, -p, 0) : Z.set(Zi, g, 0))
: _ < v && ((v = _), p < g ? Z.set(Yi, p, 0) : Z.set(Yi, -g, 0)),
s < f || h < o
? S > d && ((d = S), m < y ? Z.set(Zi, 0, -m) : Z.set(Zi, 0, y))
: _ < v && ((v = _), m < y ? Z.set(Yi, 0, m) : Z.set(Yi, 0, -y))
}
return e && Z.copy(e, c ? Yi : Zi), c
}),
(r.prototype.contain = function (t, e) {
var n = this
return t >= n.x && t <= n.x + n.width && e >= n.y && e <= n.y + n.height
}),
(r.prototype.clone = function () {
return new r(this.x, this.y, this.width, this.height)
}),
(r.prototype.copy = function (t) {
r.copy(this, t)
}),
(r.prototype.plain = function () {
return { x: this.x, y: this.y, width: this.width, height: this.height }
}),
(r.prototype.isFinite = function () {
return (
isFinite(this.x) &&
isFinite(this.y) &&
isFinite(this.width) &&
isFinite(this.height)
)
}),
(r.prototype.isZero = function () {
return this.width === 0 || this.height === 0
}),
(r.create = function (t) {
return new r(t.x, t.y, t.width, t.height)
}),
(r.copy = function (t, e) {
;(t.x = e.x), (t.y = e.y), (t.width = e.width), (t.height = e.height)
}),
(r.applyTransform = function (t, e, n) {
if (!n) {
t !== e && r.copy(t, e)
return
}
if (n[1] < 1e-5 && n[1] > -1e-5 && n[2] < 1e-5 && n[2] > -1e-5) {
var i = n[0],
a = n[3],
o = n[4],
s = n[5]
;(t.x = e.x * i + o),
(t.y = e.y * a + s),
(t.width = e.width * i),
(t.height = e.height * a),
t.width < 0 && ((t.x += t.width), (t.width = -t.width)),
t.height < 0 && ((t.y += t.height), (t.height = -t.height))
return
}
;(Xr.x = Kr.x = e.x),
(Xr.y = Qr.y = e.y),
(qr.x = Qr.x = e.x + e.width),
(qr.y = Kr.y = e.y + e.height),
Xr.transform(n),
Qr.transform(n),
qr.transform(n),
Kr.transform(n),
(t.x = Po(Xr.x, qr.x, Kr.x, Qr.x)),
(t.y = Po(Xr.y, qr.y, Kr.y, Qr.y))
var l = Ro(Xr.x, qr.x, Kr.x, Qr.x),
u = Ro(Xr.y, qr.y, Kr.y, Qr.y)
;(t.width = l - t.x), (t.height = u - t.y)
}),
r
)
})(),
vt = zw,
Fc = {}
function oe(r, t) {
t = t || Yr
var e = Fc[t]
e || (e = Fc[t] = new zi(500))
var n = e.get(r)
return n == null && ((n = kn.measureText(r, t).width), e.put(r, n)), n
}
function zc(r, t, e, n) {
var i = oe(r, t),
a = yu(t),
o = $i(0, i, e),
s = qn(0, a, n),
l = new vt(o, s, i, a)
return l
}
function Eo(r, t, e, n) {
var i = ((r || '') + '').split(`
`),
a = i.length
if (a === 1) return zc(i[0], t, e, n)
for (var o = new vt(0, 0, 0, 0), s = 0; s < i.length; s++) {
var l = zc(i[s], t, e, n)
s === 0 ? o.copy(l) : o.union(l)
}
return o
}
function $i(r, t, e) {
return e === 'right' ? (r -= t) : e === 'center' && (r -= t / 2), r
}
function qn(r, t, e) {
return e === 'middle' ? (r -= t / 2) : e === 'bottom' && (r -= t), r
}
function yu(r) {
return oe('\u56FD', r)
}
function Cr(r, t) {
return typeof r == 'string'
? r.lastIndexOf('%') >= 0
? (parseFloat(r) / 100) * t
: parseFloat(r)
: r
}
function Oo(r, t, e) {
var n = t.position || 'inside',
i = t.distance != null ? t.distance : 5,
a = e.height,
o = e.width,
s = a / 2,
l = e.x,
u = e.y,
f = 'left',
h = 'top'
if (n instanceof Array)
(l += Cr(n[0], e.width)), (u += Cr(n[1], e.height)), (f = null), (h = null)
else
switch (n) {
case 'left':
;(l -= i), (u += s), (f = 'right'), (h = 'middle')
break
case 'right':
;(l += i + o), (u += s), (h = 'middle')
break
case 'top':
;(l += o / 2), (u -= i), (f = 'center'), (h = 'bottom')
break
case 'bottom':
;(l += o / 2), (u += a + i), (f = 'center')
break
case 'inside':
;(l += o / 2), (u += s), (f = 'center'), (h = 'middle')
break
case 'insideLeft':
;(l += i), (u += s), (h = 'middle')
break
case 'insideRight':
;(l += o - i), (u += s), (f = 'right'), (h = 'middle')
break
case 'insideTop':
;(l += o / 2), (u += i), (f = 'center')
break
case 'insideBottom':
;(l += o / 2), (u += a - i), (f = 'center'), (h = 'bottom')
break
case 'insideTopLeft':
;(l += i), (u += i)
break
case 'insideTopRight':
;(l += o - i), (u += i), (f = 'right')
break
case 'insideBottomLeft':
;(l += i), (u += a - i), (h = 'bottom')
break
case 'insideBottomRight':
;(l += o - i), (u += a - i), (f = 'right'), (h = 'bottom')
break
}
return (
(r = r || {}), (r.x = l), (r.y = u), (r.align = f), (r.verticalAlign = h), r
)
}
var _u = '__zr_normal__',
Su = Ui.concat(['ignore']),
Vw = Sr(
Ui,
function (r, t) {
return (r[t] = !0), r
},
{ ignore: !1 }
),
Kn = {},
Gw = new vt(0, 0, 0, 0),
xu = (function () {
function r(t) {
;(this.id = Uv()),
(this.animators = []),
(this.currentStates = []),
(this.states = {}),
this._init(t)
}
return (
(r.prototype._init = function (t) {
this.attr(t)
}),
(r.prototype.drift = function (t, e, n) {
switch (this.draggable) {
case 'horizontal':
e = 0
break
case 'vertical':
t = 0
break
}
var i = this.transform
i || (i = this.transform = [1, 0, 0, 1, 0, 0]),
(i[4] += t),
(i[5] += e),
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 (t) {
var e = this._textContent
if (e && (!e.ignore || t)) {
this.textConfig || (this.textConfig = {})
var n = this.textConfig,
i = n.local,
a = e.innerTransformable,
o = void 0,
s = void 0,
l = !1
a.parent = i ? this : null
var u = !1
if ((a.copyTransform(e), n.position != null)) {
var f = Gw
n.layoutRect
? f.copy(n.layoutRect)
: f.copy(this.getBoundingRect()),
i || f.applyTransform(this.transform),
this.calculateTextPosition
? this.calculateTextPosition(Kn, n, f)
: Oo(Kn, n, f),
(a.x = Kn.x),
(a.y = Kn.y),
(o = Kn.align),
(s = Kn.verticalAlign)
var h = n.origin
if (h && n.rotation != null) {
var c = void 0,
v = void 0
h === 'center'
? ((c = f.width * 0.5), (v = f.height * 0.5))
: ((c = Cr(h[0], f.width)), (v = Cr(h[1], f.height))),
(u = !0),
(a.originX = -a.x + c + (i ? 0 : f.x)),
(a.originY = -a.y + v + (i ? 0 : f.y))
}
}
n.rotation != null && (a.rotation = n.rotation)
var d = n.offset
d &&
((a.x += d[0]),
(a.y += d[1]),
u || ((a.originX = -d[0]), (a.originY = -d[1])))
var p =
n.inside == null
? typeof n.position == 'string' &&
n.position.indexOf('inside') >= 0
: n.inside,
g =
this._innerTextDefaultStyle || (this._innerTextDefaultStyle = {}),
m = void 0,
y = void 0,
_ = void 0
p && this.canBeInsideText()
? ((m = n.insideFill),
(y = n.insideStroke),
(m == null || m === 'auto') && (m = this.getInsideTextFill()),
(y == null || y === 'auto') &&
((y = this.getInsideTextStroke(m)), (_ = !0)))
: ((m = n.outsideFill),
(y = n.outsideStroke),
(m == null || m === 'auto') && (m = this.getOutsideFill()),
(y == null || y === 'auto') &&
((y = this.getOutsideStroke(m)), (_ = !0))),
(m = m || '#000'),
(m !== g.fill ||
y !== g.stroke ||
_ !== g.autoStroke ||
o !== g.align ||
s !== g.verticalAlign) &&
((l = !0),
(g.fill = m),
(g.stroke = y),
(g.autoStroke = _),
(g.align = o),
(g.verticalAlign = s),
e.setDefaultTextStyle(g)),
(e.__dirty |= ae),
l && e.dirtyStyle(!0)
}
}),
(r.prototype.canBeInsideText = function () {
return !0
}),
(r.prototype.getInsideTextFill = function () {
return '#fff'
}),
(r.prototype.getInsideTextStroke = function (t) {
return '#000'
}),
(r.prototype.getOutsideFill = function () {
return this.__zr && this.__zr.isDarkMode() ? vu : hu
}),
(r.prototype.getOutsideStroke = function (t) {
var e = this.__zr && this.__zr.getBackgroundColor(),
n = typeof e == 'string' && ir(e)
n || (n = [255, 255, 255, 1])
for (var i = n[3], a = this.__zr.isDarkMode(), o = 0; o < 3; o++)
n[o] = n[o] * i + (a ? 0 : 255) * (1 - i)
return (n[3] = 1), So(n, 'rgba')
}),
(r.prototype.traverse = function (t, e) {}),
(r.prototype.attrKV = function (t, e) {
t === 'textConfig'
? this.setTextConfig(e)
: t === 'textContent'
? this.setTextContent(e)
: t === 'clipPath'
? this.setClipPath(e)
: t === 'extra'
? ((this.extra = this.extra || {}), N(this.extra, e))
: (this[t] = e)
}),
(r.prototype.hide = function () {
;(this.ignore = !0), this.markRedraw()
}),
(r.prototype.show = function () {
;(this.ignore = !1), this.markRedraw()
}),
(r.prototype.attr = function (t, e) {
if (typeof t == 'string') this.attrKV(t, e)
else if (Y(t))
for (var n = t, i = xt(n), a = 0; a < i.length; a++) {
var o = i[a]
this.attrKV(o, t[o])
}
return this.markRedraw(), this
}),
(r.prototype.saveCurrentToNormalState = function (t) {
this._innerSaveToNormal(t)
for (var e = this._normalState, n = 0; n < this.animators.length; n++) {
var i = this.animators[n],
a = i.__fromStateTransition
if (!(i.getLoop() || (a && a !== _u))) {
var o = i.targetName,
s = o ? e[o] : e
i.saveTo(s)
}
}
}),
(r.prototype._innerSaveToNormal = function (t) {
var e = this._normalState
e || (e = this._normalState = {}),
t.textConfig && !e.textConfig && (e.textConfig = this.textConfig),
this._savePrimaryToNormal(t, e, Su)
}),
(r.prototype._savePrimaryToNormal = function (t, e, n) {
for (var i = 0; i < n.length; i++) {
var a = n[i]
t[a] != null && !(a in e) && (e[a] = this[a])
}
}),
(r.prototype.hasState = function () {
return this.currentStates.length > 0
}),
(r.prototype.getState = function (t) {
return this.states[t]
}),
(r.prototype.ensureState = function (t) {
var e = this.states
return e[t] || (e[t] = {}), e[t]
}),
(r.prototype.clearStates = function (t) {
this.useState(_u, !1, t)
}),
(r.prototype.useState = function (t, e, n, i) {
var a = t === _u,
o = this.hasState()
if (!(!o && a)) {
var s = this.currentStates,
l = this.stateTransition
if (!(ot(s, t) >= 0 && (e || s.length === 1))) {
var u
if (
(this.stateProxy && !a && (u = this.stateProxy(t)),
u || (u = this.states && this.states[t]),
!u && !a)
) {
Pl('State ' + t + ' not exists.')
return
}
a || this.saveCurrentToNormalState(u)
var f = !!((u && u.hoverLayer) || i)
f && this._toggleHoverLayerFlag(!0),
this._applyStateObj(
t,
u,
this._normalState,
e,
!n && !this.__inHover && l && l.duration > 0,
l
)
var h = this._textContent,
c = this._textGuide
return (
h && h.useState(t, e, n, f),
c && c.useState(t, e, n, f),
a
? ((this.currentStates = []), (this._normalState = {}))
: e
? this.currentStates.push(t)
: (this.currentStates = [t]),
this._updateAnimationTargets(),
this.markRedraw(),
!f &&
this.__inHover &&
(this._toggleHoverLayerFlag(!1), (this.__dirty &= ~ae)),
u
)
}
}
}),
(r.prototype.useStates = function (t, e, n) {
if (!t.length) this.clearStates()
else {
var i = [],
a = this.currentStates,
o = t.length,
s = o === a.length
if (s) {
for (var l = 0; l < o; l++)
if (t[l] !== a[l]) {
s = !1
break
}
}
if (s) return
for (var l = 0; l < o; l++) {
var u = t[l],
f = void 0
this.stateProxy && (f = this.stateProxy(u, t)),
f || (f = this.states[u]),
f && i.push(f)
}
var h = i[o - 1],
c = !!((h && h.hoverLayer) || n)
c && this._toggleHoverLayerFlag(!0)
var v = this._mergeStates(i),
d = this.stateTransition
this.saveCurrentToNormalState(v),
this._applyStateObj(
t.join(','),
v,
this._normalState,
!1,
!e && !this.__inHover && d && d.duration > 0,
d
)
var p = this._textContent,
g = this._textGuide
p && p.useStates(t, e, c),
g && g.useStates(t, e, c),
this._updateAnimationTargets(),
(this.currentStates = t.slice()),
this.markRedraw(),
!c &&
this.__inHover &&
(this._toggleHoverLayerFlag(!1), (this.__dirty &= ~ae))
}
}),
(r.prototype._updateAnimationTargets = function () {
for (var t = 0; t < this.animators.length; t++) {
var e = this.animators[t]
e.targetName && e.changeTarget(this[e.targetName])
}
}),
(r.prototype.removeState = function (t) {
var e = ot(this.currentStates, t)
if (e >= 0) {
var n = this.currentStates.slice()
n.splice(e, 1), this.useStates(n)
}
}),
(r.prototype.replaceState = function (t, e, n) {
var i = this.currentStates.slice(),
a = ot(i, t),
o = ot(i, e) >= 0
a >= 0 ? (o ? i.splice(a, 1) : (i[a] = e)) : n && !o && i.push(e),
this.useStates(i)
}),
(r.prototype.toggleState = function (t, e) {
e ? this.useState(t, !0) : this.removeState(t)
}),
(r.prototype._mergeStates = function (t) {
for (var e = {}, n, i = 0; i < t.length; i++) {
var a = t[i]
N(e, a), a.textConfig && ((n = n || {}), N(n, a.textConfig))
}
return n && (e.textConfig = n), e
}),
(r.prototype._applyStateObj = function (t, e, n, i, a, o) {
var s = !(e && i)
e && e.textConfig
? ((this.textConfig = N({}, i ? this.textConfig : n.textConfig)),
N(this.textConfig, e.textConfig))
: s && n.textConfig && (this.textConfig = n.textConfig)
for (var l = {}, u = !1, f = 0; f < Su.length; f++) {
var h = Su[f],
c = a && Vw[h]
e && e[h] != null
? c
? ((u = !0), (l[h] = e[h]))
: (this[h] = e[h])
: s &&
n[h] != null &&
(c ? ((u = !0), (l[h] = n[h])) : (this[h] = n[h]))
}
if (!a)
for (var f = 0; f < this.animators.length; f++) {
var v = this.animators[f],
d = v.targetName
v.getLoop() || v.__changeFinalValue(d ? (e || n)[d] : e || n)
}
u && this._transitionState(t, l, o)
}),
(r.prototype._attachComponent = function (t) {
if (!(t.__zr && !t.__hostTarget) && t !== this) {
var e = this.__zr
e && t.addSelfToZr(e), (t.__zr = e), (t.__hostTarget = this)
}
}),
(r.prototype._detachComponent = function (t) {
t.__zr && t.removeSelfFromZr(t.__zr),
(t.__zr = null),
(t.__hostTarget = null)
}),
(r.prototype.getClipPath = function () {
return this._clipPath
}),
(r.prototype.setClipPath = function (t) {
this._clipPath && this._clipPath !== t && this.removeClipPath(),
this._attachComponent(t),
(this._clipPath = t),
this.markRedraw()
}),
(r.prototype.removeClipPath = function () {
var t = this._clipPath
t &&
(this._detachComponent(t), (this._clipPath = null), this.markRedraw())
}),
(r.prototype.getTextContent = function () {
return this._textContent
}),
(r.prototype.setTextContent = function (t) {
var e = this._textContent
e !== t &&
(e && e !== t && this.removeTextContent(),
(t.innerTransformable = new Wi()),
this._attachComponent(t),
(this._textContent = t),
this.markRedraw())
}),
(r.prototype.setTextConfig = function (t) {
this.textConfig || (this.textConfig = {}),
N(this.textConfig, t),
this.markRedraw()
}),
(r.prototype.removeTextConfig = function () {
;(this.textConfig = null), this.markRedraw()
}),
(r.prototype.removeTextContent = function () {
var t = this._textContent
t &&
((t.innerTransformable = null),
this._detachComponent(t),
(this._textContent = null),
(this._innerTextDefaultStyle = null),
this.markRedraw())
}),
(r.prototype.getTextGuideLine = function () {
return this._textGuide
}),
(r.prototype.setTextGuideLine = function (t) {
this._textGuide && this._textGuide !== t && this.removeTextGuideLine(),
this._attachComponent(t),
(this._textGuide = t),
this.markRedraw()
}),
(r.prototype.removeTextGuideLine = function () {
var t = this._textGuide
t &&
(this._detachComponent(t),
(this._textGuide = null),
this.markRedraw())
}),
(r.prototype.markRedraw = function () {
this.__dirty |= ae
var t = this.__zr
t && (this.__inHover ? t.refreshHover() : t.refresh()),
this.__hostTarget && this.__hostTarget.markRedraw()
}),
(r.prototype.dirty = function () {
this.markRedraw()
}),
(r.prototype._toggleHoverLayerFlag = function (t) {
this.__inHover = t
var e = this._textContent,
n = this._textGuide
e && (e.__inHover = t), n && (n.__inHover = t)
}),
(r.prototype.addSelfToZr = function (t) {
if (this.__zr !== t) {
this.__zr = t
var e = this.animators
if (e)
for (var n = 0; n < e.length; n++) t.animation.addAnimator(e[n])
this._clipPath && this._clipPath.addSelfToZr(t),
this._textContent && this._textContent.addSelfToZr(t),
this._textGuide && this._textGuide.addSelfToZr(t)
}
}),
(r.prototype.removeSelfFromZr = function (t) {
if (!!this.__zr) {
this.__zr = null
var e = this.animators
if (e)
for (var n = 0; n < e.length; n++) t.animation.removeAnimator(e[n])
this._clipPath && this._clipPath.removeSelfFromZr(t),
this._textContent && this._textContent.removeSelfFromZr(t),
this._textGuide && this._textGuide.removeSelfFromZr(t)
}
}),
(r.prototype.animate = function (t, e, n) {
var i = t ? this[t] : this,
a = new nu(i, e, n)
return t && (a.targetName = t), this.addAnimator(a, t), a
}),
(r.prototype.addAnimator = function (t, e) {
var n = this.__zr,
i = this
t
.during(function () {
i.updateDuringAnimation(e)
})
.done(function () {
var a = i.animators,
o = ot(a, t)
o >= 0 && a.splice(o, 1)
}),
this.animators.push(t),
n && n.animation.addAnimator(t),
n && n.wakeUp()
}),
(r.prototype.updateDuringAnimation = function (t) {
this.markRedraw()
}),
(r.prototype.stopAnimation = function (t, e) {
for (var n = this.animators, i = n.length, a = [], o = 0; o < i; o++) {
var s = n[o]
!t || t === s.scope ? s.stop(e) : a.push(s)
}
return (this.animators = a), this
}),
(r.prototype.animateTo = function (t, e, n) {
wu(this, t, e, n)
}),
(r.prototype.animateFrom = function (t, e, n) {
wu(this, t, e, n, !0)
}),
(r.prototype._transitionState = function (t, e, n, i) {
for (var a = wu(this, e, n, i), o = 0; o < a.length; o++)
a[o].__fromStateTransition = t
}),
(r.prototype.getBoundingRect = function () {
return null
}),
(r.prototype.getPaintRect = function () {
return null
}),
(r.initDefaultProps = (function () {
var t = r.prototype
;(t.type = 'element'),
(t.name = ''),
(t.ignore =
t.silent =
t.isGroup =
t.draggable =
t.dragging =
t.ignoreClip =
t.__inHover =
!1),
(t.__dirty = ae)
function e(n, i, a, o) {
Object.defineProperty(t, n, {
get: function () {
if (!this[i]) {
var l = (this[i] = [])
s(this, l)
}
return this[i]
},
set: function (l) {
;(this[a] = l[0]), (this[o] = l[1]), (this[i] = l), s(this, l)
}
})
function s(l, u) {
Object.defineProperty(u, 0, {
get: function () {
return l[a]
},
set: function (f) {
l[a] = f
}
}),
Object.defineProperty(u, 1, {
get: function () {
return l[o]
},
set: function (f) {
l[o] = f
}
})
}
}
Object.defineProperty &&
(e('position', '_legacyPos', 'x', 'y'),
e('scale', '_legacyScale', 'scaleX', 'scaleY'),
e('origin', '_legacyOrigin', 'originX', 'originY'))
})()),
r
)
})()
ze(xu, fe)
ze(xu, Wi)
function wu(r, t, e, n, i) {
e = e || {}
var a = []
Vc(r, '', r, t, e, n, a, i)
var o = a.length,
s = !1,
l = e.done,
u = e.aborted,
f = function () {
;(s = !0), o--, o <= 0 && (s ? l && l() : u && u())
},
h = function () {
o--, o <= 0 && (s ? l && l() : u && u())
}
o || (l && l()),
a.length > 0 &&
e.during &&
a[0].during(function (d, p) {
e.during(p)
})
for (var c = 0; c < a.length; c++) {
var v = a[c]
f && v.done(f),
h && v.aborted(h),
e.force && v.duration(e.duration),
v.start(e.easing)
}
return a
}
function bu(r, t, e) {
for (var n = 0; n < e; n++) r[n] = t[n]
}
function Hw(r) {
return Zt(r[0])
}
function Ww(r, t, e) {
if (Zt(t[e]))
if ((Zt(r[e]) || (r[e] = []), ie(t[e]))) {
var n = t[e].length
r[e].length !== n && ((r[e] = new t[e].constructor(n)), bu(r[e], t[e], n))
} else {
var i = t[e],
a = r[e],
o = i.length
if (Hw(i))
for (var s = i[0].length, l = 0; l < o; l++)
a[l] ? bu(a[l], i[l], s) : (a[l] = Array.prototype.slice.call(i[l]))
else bu(a, i, o)
a.length = i.length
}
else r[e] = t[e]
}
function Uw(r, t) {
return r === t || (Zt(r) && Zt(t) && Yw(r, t))
}
function Yw(r, t) {
var e = r.length
if (e !== t.length) return !1
for (var n = 0; n < e; n++) if (r[n] !== t[n]) return !1
return !0
}
function Vc(r, t, e, n, i, a, o, s) {
for (
var l = xt(n),
u = i.duration,
f = i.delay,
h = i.additive,
c = i.setToFinal,
v = !Y(a),
d = r.animators,
p = [],
g = 0;
g < l.length;
g++
) {
var m = l[g],
y = n[m]
if (y != null && e[m] != null && (v || a[m]))
if (Y(y) && !Zt(y) && !io(y)) {
if (t) {
s || ((e[m] = y), r.updateDuringAnimation(t))
continue
}
Vc(r, m, e[m], y, i, a && a[m], o, s)
} else p.push(m)
else s || ((e[m] = y), r.updateDuringAnimation(t), p.push(m))
}
var _ = p.length
if (!h && _)
for (var S = 0; S < d.length; S++) {
var w = d[S]
if (w.targetName === t) {
var x = w.stopTracks(p)
if (x) {
var b = ot(d, w)
d.splice(b, 1)
}
}
}
if (
(i.force ||
((p = Lt(p, function (D) {
return !Uw(n[D], e[D])
})),
(_ = p.length)),
_ > 0 || (i.force && !o.length))
) {
var T = void 0,
C = void 0,
M = void 0
if (s) {
;(C = {}), c && (T = {})
for (var S = 0; S < _; S++) {
var m = p[S]
;(C[m] = e[m]), c ? (T[m] = n[m]) : (e[m] = n[m])
}
} else if (c) {
M = {}
for (var S = 0; S < _; S++) {
var m = p[S]
;(M[m] = bo(e[m])), Ww(e, n, m)
}
}
var w = new nu(
e,
!1,
!1,
h
? Lt(d, function (I) {
return I.targetName === t
})
: null
)
;(w.targetName = t),
i.scope && (w.scope = i.scope),
c && T && w.whenWithKeys(0, T, p),
M && w.whenWithKeys(0, M, p),
w.whenWithKeys(u == null ? 500 : u, s ? C : n, p).delay(f || 0),
r.addAnimator(w, t),
o.push(w)
}
}
var Gc = xu,
Hc = (function (r) {
B(t, r)
function t(e) {
var n = r.call(this) || this
return (n.isGroup = !0), (n._children = []), n.attr(e), n
}
return (
(t.prototype.childrenRef = function () {
return this._children
}),
(t.prototype.children = function () {
return this._children.slice()
}),
(t.prototype.childAt = function (e) {
return this._children[e]
}),
(t.prototype.childOfName = function (e) {
for (var n = this._children, i = 0; i < n.length; i++)
if (n[i].name === e) return n[i]
}),
(t.prototype.childCount = function () {
return this._children.length
}),
(t.prototype.add = function (e) {
return (
e &&
e !== this &&
e.parent !== this &&
(this._children.push(e), this._doAdd(e)),
this
)
}),
(t.prototype.addBefore = function (e, n) {
if (e && e !== this && e.parent !== this && n && n.parent === this) {
var i = this._children,
a = i.indexOf(n)
a >= 0 && (i.splice(a, 0, e), this._doAdd(e))
}
return this
}),
(t.prototype.replace = function (e, n) {
var i = ot(this._children, e)
return i >= 0 && this.replaceAt(n, i), this
}),
(t.prototype.replaceAt = function (e, n) {
var i = this._children,
a = i[n]
if (e && e !== this && e.parent !== this && e !== a) {
;(i[n] = e), (a.parent = null)
var o = this.__zr
o && a.removeSelfFromZr(o), this._doAdd(e)
}
return this
}),
(t.prototype._doAdd = function (e) {
e.parent && e.parent.remove(e), (e.parent = this)
var n = this.__zr
n && n !== e.__zr && e.addSelfToZr(n), n && n.refresh()
}),
(t.prototype.remove = function (e) {
var n = this.__zr,
i = this._children,
a = ot(i, e)
return a < 0
? this
: (i.splice(a, 1),
(e.parent = null),
n && e.removeSelfFromZr(n),
n && n.refresh(),
this)
}),
(t.prototype.removeAll = function () {
for (var e = this._children, n = this.__zr, i = 0; i < e.length; i++) {
var a = e[i]
n && a.removeSelfFromZr(n), (a.parent = null)
}
return (e.length = 0), this
}),
(t.prototype.eachChild = function (e, n) {
for (var i = this._children, a = 0; a < i.length; a++) {
var o = i[a]
e.call(n, o, a)
}
return this
}),
(t.prototype.traverse = function (e, n) {
for (var i = 0; i < this._children.length; i++) {
var a = this._children[i],
o = e.call(n, a)
a.isGroup && !o && a.traverse(e, n)
}
return this
}),
(t.prototype.addSelfToZr = function (e) {
r.prototype.addSelfToZr.call(this, e)
for (var n = 0; n < this._children.length; n++) {
var i = this._children[n]
i.addSelfToZr(e)
}
}),
(t.prototype.removeSelfFromZr = function (e) {
r.prototype.removeSelfFromZr.call(this, e)
for (var n = 0; n < this._children.length; n++) {
var i = this._children[n]
i.removeSelfFromZr(e)
}
}),
(t.prototype.getBoundingRect = function (e) {
for (
var n = new vt(0, 0, 0, 0),
i = e || this._children,
a = [],
o = null,
s = 0;
s < i.length;
s++
) {
var l = i[s]
if (!(l.ignore || l.invisible)) {
var u = l.getBoundingRect(),
f = l.getLocalTransform(a)
f
? (vt.applyTransform(n, u, f), (o = o || n.clone()), o.union(n))
: ((o = o || u.clone()), o.union(u))
}
}
return o || n
}),
t
)
})(Gc)
Hc.prototype.type = 'group'
var At = Hc
/*!
* 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 ko = {},
Wc = {}
function Zw(r) {
delete Wc[r]
}
function $w(r) {
if (!r) return !1
if (typeof r == 'string') return xo(r, 1) < fu
if (r.colorStops) {
for (var t = r.colorStops, e = 0, n = t.length, i = 0; i < n; i++)
e += xo(t[i].color, 1)
return (e /= n), e < fu
}
return !1
}
var Xw = (function () {
function r(t, e, n) {
var i = this
;(this._sleepAfterStill = 10),
(this._stillFrameAccum = 0),
(this._needsRefresh = !0),
(this._needsRefreshHover = !0),
(this._darkMode = !1),
(n = n || {}),
(this.dom = e),
(this.id = t)
var a = new ow(),
o = n.renderer || 'canvas'
ko[o] || (o = xt(ko)[0]),
(n.useDirtyRect = n.useDirtyRect == null ? !1 : n.useDirtyRect)
var s = new ko[o](e, a, n, t),
l = n.ssr || s.ssrOnly
;(this.storage = a), (this.painter = s)
var u =
!at.node && !at.worker && !l ? new Ew(s.getViewportRoot(), s.root) : null
;(this.handler = new ew(a, s, u, s.root)),
(this.animation = new Cw({
stage: {
update: l
? null
: function () {
return i._flush(!0)
}
}
})),
l || this.animation.start()
}
return (
(r.prototype.add = function (t) {
!t || (this.storage.addRoot(t), t.addSelfToZr(this), this.refresh())
}),
(r.prototype.remove = function (t) {
!t || (this.storage.delRoot(t), t.removeSelfFromZr(this), this.refresh())
}),
(r.prototype.configLayer = function (t, e) {
this.painter.configLayer && this.painter.configLayer(t, e), this.refresh()
}),
(r.prototype.setBackgroundColor = function (t) {
this.painter.setBackgroundColor && this.painter.setBackgroundColor(t),
this.refresh(),
(this._backgroundColor = t),
(this._darkMode = $w(t))
}),
(r.prototype.getBackgroundColor = function () {
return this._backgroundColor
}),
(r.prototype.setDarkMode = function (t) {
this._darkMode = t
}),
(r.prototype.isDarkMode = function () {
return this._darkMode
}),
(r.prototype.refreshImmediately = function (t) {
t || this.animation.update(!0),
(this._needsRefresh = !1),
this.painter.refresh(),
(this._needsRefresh = !1)
}),
(r.prototype.refresh = function () {
;(this._needsRefresh = !0), this.animation.start()
}),
(r.prototype.flush = function () {
this._flush(!1)
}),
(r.prototype._flush = function (t) {
var e,
n = Zn()
this._needsRefresh && ((e = !0), this.refreshImmediately(t)),
this._needsRefreshHover && ((e = !0), this.refreshHoverImmediately())
var i = Zn()
e
? ((this._stillFrameAccum = 0),
this.trigger('rendered', { elapsedTime: i - n }))
: this._sleepAfterStill > 0 &&
(this._stillFrameAccum++,
this._stillFrameAccum > this._sleepAfterStill &&
this.animation.stop())
}),
(r.prototype.setSleepAfterStill = function (t) {
this._sleepAfterStill = t
}),
(r.prototype.wakeUp = function () {
this.animation.start(), (this._stillFrameAccum = 0)
}),
(r.prototype.refreshHover = function () {
this._needsRefreshHover = !0
}),
(r.prototype.refreshHoverImmediately = function () {
;(this._needsRefreshHover = !1),
this.painter.refreshHover &&
this.painter.getType() === 'canvas' &&
this.painter.refreshHover()
}),
(r.prototype.resize = function (t) {
;(t = t || {}),
this.painter.resize(t.width, t.height),
this.handler.resize()
}),
(r.prototype.clearAnimation = function () {
this.animation.clear()
}),
(r.prototype.getWidth = function () {
return this.painter.getWidth()
}),
(r.prototype.getHeight = function () {
return this.painter.getHeight()
}),
(r.prototype.setCursorStyle = function (t) {
this.handler.setCursorStyle(t)
}),
(r.prototype.findHover = function (t, e) {
return this.handler.findHover(t, e)
}),
(r.prototype.on = function (t, e, n) {
return this.handler.on(t, e, n), this
}),
(r.prototype.off = function (t, e) {
this.handler.off(t, e)
}),
(r.prototype.trigger = function (t, e) {
this.handler.trigger(t, e)
}),
(r.prototype.clear = function () {
for (var t = this.storage.getRoots(), e = 0; e < t.length; e++)
t[e] instanceof At && t[e].removeSelfFromZr(this)
this.storage.delAllRoots(), this.painter.clear()
}),
(r.prototype.dispose = function () {
this.animation.stop(),
this.clear(),
this.storage.dispose(),
this.painter.dispose(),
this.handler.dispose(),
(this.animation = this.storage = this.painter = this.handler = null),
Zw(this.id)
}),
r
)
})()
function Uc(r, t) {
var e = new Xw(Uv(), r, t)
return (Wc[e.id] = e), e
}
function qw(r, t) {
ko[r] = t
}
var Yc = 1e-4,
Zc = 20
function Kw(r) {
return r.replace(/^\s+|\s+$/g, '')
}
function Bt(r, t, e, n) {
var i = t[0],
a = t[1],
o = e[0],
s = e[1],
l = a - i,
u = s - o
if (l === 0) return u === 0 ? o : (o + s) / 2
if (n)
if (l > 0) {
if (r <= i) return o
if (r >= a) return s
} else {
if (r >= i) return o
if (r <= a) return s
}
else {
if (r === i) return o
if (r === a) return s
}
return ((r - i) / l) * u + o
}
function yt(r, t) {
switch (r) {
case 'center':
case 'middle':
r = '50%'
break
case 'left':
case 'top':
r = '0%'
break
case 'right':
case 'bottom':
r = '100%'
break
}
return W(r)
? Kw(r).match(/%$/)
? (parseFloat(r) / 100) * t
: parseFloat(r)
: r == null
? NaN
: +r
}
function Pt(r, t, e) {
return (
t == null && (t = 10),
(t = Math.min(Math.max(0, t), Zc)),
(r = (+r).toFixed(t)),
e ? r : +r
)
}
function Xi(r) {
return (
r.sort(function (t, e) {
return t - e
}),
r
)
}
function or(r) {
if (((r = +r), isNaN(r))) return 0
if (r > 1e-14) {
for (var t = 1, e = 0; e < 15; e++, t *= 10)
if (Math.round(r * t) / t === r) return e
}
return Qw(r)
}
function Qw(r) {
var t = r.toString().toLowerCase(),
e = t.indexOf('e'),
n = e > 0 ? +t.slice(e + 1) : 0,
i = e > 0 ? e : t.length,
a = t.indexOf('.'),
o = a < 0 ? 0 : i - 1 - a
return Math.max(0, o - n)
}
function $c(r, t) {
var e = Math.log,
n = Math.LN10,
i = Math.floor(e(r[1] - r[0]) / n),
a = Math.round(e(Math.abs(t[1] - t[0])) / n),
o = Math.min(Math.max(-i + a, 0), 20)
return isFinite(o) ? o : 20
}
function Jw(r, t, e) {
if (!r[t]) return 0
var n = Sr(
r,
function (d, p) {
return d + (isNaN(p) ? 0 : p)
},
0
)
if (n === 0) return 0
for (
var i = Math.pow(10, e),
a = G(r, function (d) {
return ((isNaN(d) ? 0 : d) / n) * i * 100
}),
o = i * 100,
s = G(a, function (d) {
return Math.floor(d)
}),
l = Sr(
s,
function (d, p) {
return d + p
},
0
),
u = G(a, function (d, p) {
return d - s[p]
});
l < o;
) {
for (
var f = Number.NEGATIVE_INFINITY, h = null, c = 0, v = u.length;
c < v;
++c
)
u[c] > f && ((f = u[c]), (h = c))
++s[h], (u[h] = 0), ++l
}
return s[t] / i
}
function jw(r, t) {
var e = Math.max(or(r), or(t)),
n = r + t
return e > Zc ? n : Pt(n, e)
}
function Xc(r) {
var t = Math.PI * 2
return ((r % t) + t) % t
}
function Bo(r) {
return r > -Yc && r < Yc
}
var tb =
/^(?:(\d{4})(?:[-\/](\d{1,2})(?:[-\/](\d{1,2})(?:[T ](\d{1,2})(?::(\d{1,2})(?::(\d{1,2})(?:[.,](\d+))?)?)?(Z|[\+\-]\d\d:?\d\d)?)?)?)?)?$/
function sr(r) {
if (r instanceof Date) return r
if (W(r)) {
var t = tb.exec(r)
if (!t) return new Date(NaN)
if (t[8]) {
var e = +t[4] || 0
return (
t[8].toUpperCase() !== 'Z' && (e -= +t[8].slice(0, 3)),
new Date(
Date.UTC(
+t[1],
+(t[2] || 1) - 1,
+t[3] || 1,
e,
+(t[5] || 0),
+t[6] || 0,
t[7] ? +t[7].substring(0, 3) : 0
)
)
)
} else
return new Date(
+t[1],
+(t[2] || 1) - 1,
+t[3] || 1,
+t[4] || 0,
+(t[5] || 0),
+t[6] || 0,
t[7] ? +t[7].substring(0, 3) : 0
)
} else if (r == null) return new Date(NaN)
return new Date(Math.round(r))
}
function eb(r) {
return Math.pow(10, Tu(r))
}
function Tu(r) {
if (r === 0) return 0
var t = Math.floor(Math.log(r) / Math.LN10)
return r / Math.pow(10, t) >= 10 && t++, t
}
function qc(r, t) {
var e = Tu(r),
n = Math.pow(10, e),
i = r / n,
a
return (
t
? i < 1.5
? (a = 1)
: i < 2.5
? (a = 2)
: i < 4
? (a = 3)
: i < 7
? (a = 5)
: (a = 10)
: i < 1
? (a = 1)
: i < 2
? (a = 2)
: i < 3
? (a = 3)
: i < 5
? (a = 5)
: (a = 10),
(r = a * n),
e >= -20 ? +r.toFixed(e < 0 ? -e : 0) : r
)
}
function Ar(r) {
var t = parseFloat(r)
return t == r && (t !== 0 || !W(r) || r.indexOf('x') <= 0) ? t : NaN
}
function rb(r) {
return !isNaN(Ar(r))
}
function Kc() {
return Math.round(Math.random() * 9)
}
function Qc(r, t) {
return t === 0 ? r : Qc(t, r % t)
}
function Jc(r, t) {
return r == null ? t : t == null ? r : (r * t) / Qc(r, t)
}
function ut(r) {
throw new Error(r)
}
function jc(r, t, e) {
return (t - r) * e + r
}
var td = 'series\0',
ed = '\0_ec_\0'
function Mt(r) {
return r instanceof Array ? r : r == null ? [] : [r]
}
function Cu(r, t, e) {
if (r) {
;(r[t] = r[t] || {}),
(r.emphasis = r.emphasis || {}),
(r.emphasis[t] = r.emphasis[t] || {})
for (var n = 0, i = e.length; n < i; n++) {
var a = e[n]
!r.emphasis[t].hasOwnProperty(a) &&
r[t].hasOwnProperty(a) &&
(r.emphasis[t][a] = r[t][a])
}
}
}
var rd = [
'fontStyle',
'fontWeight',
'fontSize',
'fontFamily',
'rich',
'tag',
'color',
'textBorderColor',
'textBorderWidth',
'width',
'height',
'lineHeight',
'align',
'verticalAlign',
'baseline',
'shadowColor',
'shadowBlur',
'shadowOffsetX',
'shadowOffsetY',
'textShadowColor',
'textShadowBlur',
'textShadowOffsetX',
'textShadowOffsetY',
'backgroundColor',
'borderColor',
'borderWidth',
'borderRadius',
'padding'
]
function qi(r) {
return Y(r) && !z(r) && !(r instanceof Date) ? r.value : r
}
function nb(r) {
return Y(r) && !(r instanceof Array)
}
function ib(r, t, e) {
var n = e === 'normalMerge',
i = e === 'replaceMerge',
a = e === 'replaceAll'
;(r = r || []), (t = (t || []).slice())
var o = q()
A(t, function (l, u) {
if (!Y(l)) {
t[u] = null
return
}
})
var s = ab(r, o, e)
return (
(n || i) && ob(s, r, o, t),
n && sb(s, t),
n || i ? lb(s, t, i) : a && ub(s, t),
fb(s),
s
)
}
function ab(r, t, e) {
var n = []
if (e === 'replaceAll') return n
for (var i = 0; i < r.length; i++) {
var a = r[i]
a && a.id != null && t.set(a.id, i),
n.push({
existing: e === 'replaceMerge' || Qi(a) ? null : a,
newOption: null,
keyInfo: null,
brandNew: null
})
}
return n
}
function ob(r, t, e, n) {
A(n, function (i, a) {
if (!(!i || i.id == null)) {
var o = Ki(i.id),
s = e.get(o)
if (s != null) {
var l = r[s]
Ve(!l.newOption, 'Duplicated option on id "' + o + '".'),
(l.newOption = i),
(l.existing = t[s]),
(n[a] = null)
}
}
})
}
function sb(r, t) {
A(t, function (e, n) {
if (!(!e || e.name == null))
for (var i = 0; i < r.length; i++) {
var a = r[i].existing
if (
!r[i].newOption &&
a &&
(a.id == null || e.id == null) &&
!Qi(e) &&
!Qi(a) &&
nd('name', a, e)
) {
;(r[i].newOption = e), (t[n] = null)
return
}
}
})
}
function lb(r, t, e) {
A(t, function (n) {
if (!!n) {
for (
var i, a = 0;
(i = r[a]) &&
(i.newOption ||
Qi(i.existing) ||
(i.existing && n.id != null && !nd('id', n, i.existing)));
)
a++
i
? ((i.newOption = n), (i.brandNew = e))
: r.push({ newOption: n, brandNew: e, existing: null, keyInfo: null }),
a++
}
})
}
function ub(r, t) {
A(t, function (e) {
r.push({ newOption: e, brandNew: !0, existing: null, keyInfo: null })
})
}
function fb(r) {
var t = q()
A(r, function (e) {
var n = e.existing
n && t.set(n.id, e)
}),
A(r, function (e) {
var n = e.newOption
Ve(
!n || n.id == null || !t.get(n.id) || t.get(n.id) === e,
'id duplicates: ' + (n && n.id)
),
n && n.id != null && t.set(n.id, e),
!e.keyInfo && (e.keyInfo = {})
}),
A(r, function (e, n) {
var i = e.existing,
a = e.newOption,
o = e.keyInfo
if (!!Y(a)) {
if (((o.name = a.name != null ? Ki(a.name) : i ? i.name : td + n), i))
o.id = Ki(i.id)
else if (a.id != null) o.id = Ki(a.id)
else {
var s = 0
do o.id = '\0' + o.name + '\0' + s++
while (t.get(o.id))
}
t.set(o.id, e)
}
})
}
function nd(r, t, e) {
var n = We(t[r], null),
i = We(e[r], null)
return n != null && i != null && n === i
}
function Ki(r) {
return We(r, '')
}
function We(r, t) {
return r == null ? t : W(r) ? r : dt(r) || Rl(r) ? r + '' : t
}
function Au(r) {
var t = r.name
return !!(t && t.indexOf(td))
}
function Qi(r) {
return r && r.id != null && Ki(r.id).indexOf(ed) === 0
}
function hb(r) {
return ed + r
}
function vb(r, t, e) {
A(r, function (n) {
var i = n.newOption
Y(i) &&
((n.keyInfo.mainType = t), (n.keyInfo.subType = cb(t, i, n.existing, e)))
})
}
function cb(r, t, e, n) {
var i = t.type ? t.type : e ? e.subType : n.determineSubType(r, t)
return i
}
function Jr(r, t) {
if (t.dataIndexInside != null) return t.dataIndexInside
if (t.dataIndex != null)
return z(t.dataIndex)
? G(t.dataIndex, function (e) {
return r.indexOfRawIndex(e)
})
: r.indexOfRawIndex(t.dataIndex)
if (t.name != null)
return z(t.name)
? G(t.name, function (e) {
return r.indexOfName(e)
})
: r.indexOfName(t.name)
}
function wt() {
var r = '__ec_inner_' + db++
return function (t) {
return t[r] || (t[r] = {})
}
}
var db = Kc()
function Ji(r, t, e) {
var n = Mu(t, e),
i = n.mainTypeSpecified,
a = n.queryOptionMap,
o = n.others,
s = o,
l = e ? e.defaultMainType : null
return (
!i && l && a.set(l, {}),
a.each(function (u, f) {
var h = ji(r, f, u, {
useDefault: l === f,
enableAll: e && e.enableAll != null ? e.enableAll : !0,
enableNone: e && e.enableNone != null ? e.enableNone : !0
})
;(s[f + 'Models'] = h.models), (s[f + 'Model'] = h.models[0])
}),
s
)
}
function Mu(r, t) {
var e
if (W(r)) {
var n = {}
;(n[r + 'Index'] = 0), (e = n)
} else e = r
var i = q(),
a = {},
o = !1
return (
A(e, function (s, l) {
if (l === 'dataIndex' || l === 'dataIndexInside') {
a[l] = s
return
}
var u = l.match(/^(\w+)(Index|Id|Name)$/) || [],
f = u[1],
h = (u[2] || '').toLowerCase()
if (
!(
!f ||
!h ||
(t && t.includeMainTypes && ot(t.includeMainTypes, f) < 0)
)
) {
o = o || !!f
var c = i.get(f) || i.set(f, {})
c[h] = s
}
}),
{ mainTypeSpecified: o, queryOptionMap: i, others: a }
)
}
var Xt = { useDefault: !0, enableAll: !1, enableNone: !1 },
pb = { useDefault: !1, enableAll: !0, enableNone: !0 }
function ji(r, t, e, n) {
n = n || Xt
var i = e.index,
a = e.id,
o = e.name,
s = { models: null, specified: i != null || a != null || o != null }
if (!s.specified) {
var l = void 0
return (s.models = n.useDefault && (l = r.getComponent(t)) ? [l] : []), s
}
return i === 'none' || i === !1
? (Ve(
n.enableNone,
'`"none"` or `false` is not a valid value on index option.'
),
(s.models = []),
s)
: (i === 'all' &&
(Ve(n.enableAll, '`"all"` is not a valid value on index option.'),
(i = a = o = null)),
(s.models = r.queryComponents({ mainType: t, index: i, id: a, name: o })),
s)
}
function id(r, t, e) {
r.setAttribute ? r.setAttribute(t, e) : (r[t] = e)
}
function gb(r, t) {
return r.getAttribute ? r.getAttribute(t) : r[t]
}
function mb(r) {
return r === 'auto' ? (at.domSupported ? 'html' : 'richText') : r || 'html'
}
function ad(r, t, e, n, i) {
var a = t == null || t === 'auto'
if (n == null) return n
if (dt(n)) {
var o = jc(e || 0, n, i)
return Pt(o, a ? Math.max(or(e || 0), or(n)) : t)
} else {
if (W(n)) return i < 1 ? e : n
for (
var s = [], l = e, u = n, f = Math.max(l ? l.length : 0, u.length), h = 0;
h < f;
++h
) {
var c = r.getDimensionInfo(h)
if (c && c.type === 'ordinal') s[h] = (i < 1 && l ? l : u)[h]
else {
var v = l && l[h] ? l[h] : 0,
d = u[h],
o = jc(v, d, i)
s[h] = Pt(o, a ? Math.max(or(v), or(d)) : t)
}
}
return s
}
}
var yb = '.',
jr = '___EC__COMPONENT__CONTAINER___',
od = '___EC__EXTENDED_CLASS___'
function Ue(r) {
var t = { main: '', sub: '' }
if (r) {
var e = r.split(yb)
;(t.main = e[0] || ''), (t.sub = e[1] || '')
}
return t
}
function _b(r) {
Ve(
/^[a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)?$/.test(r),
'componentType "' + r + '" illegal'
)
}
function Sb(r) {
return !!(r && r[od])
}
function Du(r, t) {
;(r.$constructor = r),
(r.extend = function (e) {
var n = this,
i
return (
xb(n)
? (i = (function (a) {
B(o, a)
function o() {
return a.apply(this, arguments) || this
}
return o
})(n))
: ((i = function () {
;(e.$constructor || n).apply(this, arguments)
}),
Tx(i, this)),
N(i.prototype, e),
(i[od] = !0),
(i.extend = this.extend),
(i.superCall = Tb),
(i.superApply = Cb),
(i.superClass = n),
i
)
})
}
function xb(r) {
return Q(r) && /^class\s/.test(Function.prototype.toString.call(r))
}
function sd(r, t) {
r.extend = t.extend
}
var wb = Math.round(Math.random() * 10)
function bb(r) {
var t = ['__\0is_clz', wb++].join('_')
;(r.prototype[t] = !0),
(r.isInstance = function (e) {
return !!(e && e[t])
})
}
function Tb(r, t) {
for (var e = [], n = 2; n < arguments.length; n++) e[n - 2] = arguments[n]
return this.superClass.prototype[t].apply(r, e)
}
function Cb(r, t, e) {
return this.superClass.prototype[t].apply(r, e)
}
function No(r) {
var t = {}
;(r.registerClass = function (n) {
var i = n.type || n.prototype.type
if (i) {
_b(i), (n.prototype.type = i)
var a = Ue(i)
if (!a.sub) t[a.main] = n
else if (a.sub !== jr) {
var o = e(a)
o[a.sub] = n
}
}
return n
}),
(r.getClass = function (n, i, a) {
var o = t[n]
if ((o && o[jr] && (o = i ? o[i] : null), a && !o))
throw new Error(
i
? 'Component ' + n + '.' + (i || '') + ' is used but not imported.'
: n + '.type should be specified.'
)
return o
}),
(r.getClassesByMainType = function (n) {
var i = Ue(n),
a = [],
o = t[i.main]
return (
o && o[jr]
? A(o, function (s, l) {
l !== jr && a.push(s)
})
: a.push(o),
a
)
}),
(r.hasClass = function (n) {
var i = Ue(n)
return !!t[i.main]
}),
(r.getAllClassMainTypes = function () {
var n = []
return (
A(t, function (i, a) {
n.push(a)
}),
n
)
}),
(r.hasSubTypes = function (n) {
var i = Ue(n),
a = t[i.main]
return a && a[jr]
})
function e(n) {
var i = t[n.main]
return (!i || !i[jr]) && ((i = t[n.main] = {}), (i[jr] = !0)), i
}
}
function ta(r, t) {
for (var e = 0; e < r.length; e++) r[e][1] || (r[e][1] = r[e][0])
return (
(t = t || !1),
function (n, i, a) {
for (var o = {}, s = 0; s < r.length; s++) {
var l = r[s][1]
if (!((i && ot(i, l) >= 0) || (a && ot(a, l) < 0))) {
var u = n.getShallow(l, t)
u != null && (o[r[s][0]] = u)
}
}
return o
}
)
}
var Ab = [
['fill', 'color'],
['shadowBlur'],
['shadowOffsetX'],
['shadowOffsetY'],
['opacity'],
['shadowColor']
],
Mb = ta(Ab),
Db = (function () {
function r() {}
return (
(r.prototype.getAreaStyle = function (t, e) {
return Mb(this, t, e)
}),
r
)
})(),
Iu = new zi(50)
function Ib(r) {
if (typeof r == 'string') {
var t = Iu.get(r)
return t && t.image
} else return r
}
function ld(r, t, e, n, i) {
if (r)
if (typeof r == 'string') {
if ((t && t.__zrImageSrc === r) || !e) return t
var a = Iu.get(r),
o = { hostEl: e, cb: n, cbPayload: i }
return (
a
? ((t = a.image), !Fo(t) && a.pending.push(o))
: ((t = kn.loadImage(r, ud, ud)),
(t.__zrImageSrc = r),
Iu.put(r, (t.__cachedImgObj = { image: t, pending: [o] }))),
t
)
} else return r
else return t
}
function ud() {
var r = this.__cachedImgObj
this.onload = this.onerror = this.__cachedImgObj = null
for (var t = 0; t < r.pending.length; t++) {
var e = r.pending[t],
n = e.cb
n && n(this, e.cbPayload), e.hostEl.dirty()
}
r.pending.length = 0
}
function Fo(r) {
return r && r.width && r.height
}
var Lu = /\{([a-zA-Z0-9_]+)\|([^}]*)\}/g
function Lb(r, t, e, n, i) {
if (!t) return ''
var a = (r + '').split(`
`)
i = fd(t, e, n, i)
for (var o = 0, s = a.length; o < s; o++) a[o] = hd(a[o], i)
return a.join(`
`)
}
function fd(r, t, e, n) {
n = n || {}
var i = N({}, n)
;(i.font = t), (e = ht(e, '...')), (i.maxIterations = ht(n.maxIterations, 2))
var a = (i.minChar = ht(n.minChar, 0))
i.cnCharWidth = oe('\u56FD', t)
var o = (i.ascCharWidth = oe('a', t))
i.placeholder = ht(n.placeholder, '')
for (var s = (r = Math.max(0, r - 1)), l = 0; l < a && s >= o; l++) s -= o
var u = oe(e, t)
return (
u > s && ((e = ''), (u = 0)),
(s = r - u),
(i.ellipsis = e),
(i.ellipsisWidth = u),
(i.contentWidth = s),
(i.containerWidth = r),
i
)
}
function hd(r, t) {
var e = t.containerWidth,
n = t.font,
i = t.contentWidth
if (!e) return ''
var a = oe(r, n)
if (a <= e) return r
for (var o = 0; ; o++) {
if (a <= i || o >= t.maxIterations) {
r += t.ellipsis
break
}
var s =
o === 0
? Pb(r, i, t.ascCharWidth, t.cnCharWidth)
: a > 0
? Math.floor((r.length * i) / a)
: 0
;(r = r.substr(0, s)), (a = oe(r, n))
}
return r === '' && (r = t.placeholder), r
}
function Pb(r, t, e, n) {
for (var i = 0, a = 0, o = r.length; a < o && i < t; a++) {
var s = r.charCodeAt(a)
i += 0 <= s && s <= 127 ? e : n
}
return a
}
function Rb(r, t) {
r != null && (r += '')
var e = t.overflow,
n = t.padding,
i = t.font,
a = e === 'truncate',
o = yu(i),
s = ht(t.lineHeight, o),
l = !!t.backgroundColor,
u = t.lineOverflow === 'truncate',
f = t.width,
h
f != null && (e === 'break' || e === 'breakAll')
? (h = r ? cd(r, t.font, f, e === 'breakAll', 0).lines : [])
: (h = r
? r.split(`
`)
: [])
var c = h.length * s,
v = ht(t.height, c)
if (c > v && u) {
var d = Math.floor(v / s)
h = h.slice(0, d)
}
if (r && a && f != null)
for (
var p = fd(f, i, t.ellipsis, {
minChar: t.truncateMinChar,
placeholder: t.placeholder
}),
g = 0;
g < h.length;
g++
)
h[g] = hd(h[g], p)
for (var m = v, y = 0, g = 0; g < h.length; g++) y = Math.max(oe(h[g], i), y)
f == null && (f = y)
var _ = y
return (
n && ((m += n[0] + n[2]), (_ += n[1] + n[3]), (f += n[1] + n[3])),
l && (_ = f),
{
lines: h,
height: v,
outerWidth: _,
outerHeight: m,
lineHeight: s,
calculatedLineHeight: o,
contentWidth: y,
contentHeight: c,
width: f
}
)
}
var Eb = (function () {
function r() {}
return r
})(),
vd = (function () {
function r(t) {
;(this.tokens = []), t && (this.tokens = t)
}
return r
})(),
Ob = (function () {
function r() {
;(this.width = 0),
(this.height = 0),
(this.contentWidth = 0),
(this.contentHeight = 0),
(this.outerWidth = 0),
(this.outerHeight = 0),
(this.lines = [])
}
return r
})()
function kb(r, t) {
var e = new Ob()
if ((r != null && (r += ''), !r)) return e
for (
var n = t.width,
i = t.height,
a = t.overflow,
o =
(a === 'break' || a === 'breakAll') && n != null
? { width: n, accumWidth: 0, breakAll: a === 'breakAll' }
: null,
s = (Lu.lastIndex = 0),
l;
(l = Lu.exec(r)) != null;
) {
var u = l.index
u > s && Pu(e, r.substring(s, u), t, o),
Pu(e, l[2], t, o, l[1]),
(s = Lu.lastIndex)
}
s < r.length && Pu(e, r.substring(s, r.length), t, o)
var f = [],
h = 0,
c = 0,
v = t.padding,
d = a === 'truncate',
p = t.lineOverflow === 'truncate'
function g(k, F, H) {
;(k.width = F), (k.lineHeight = H), (h += H), (c = Math.max(c, F))
}
t: for (var m = 0; m < e.lines.length; m++) {
for (var y = e.lines[m], _ = 0, S = 0, w = 0; w < y.tokens.length; w++) {
var x = y.tokens[w],
b = (x.styleName && t.rich[x.styleName]) || {},
T = (x.textPadding = b.padding),
C = T ? T[1] + T[3] : 0,
M = (x.font = b.font || t.font)
x.contentHeight = yu(M)
var D = ht(b.height, x.contentHeight)
if (
((x.innerHeight = D),
T && (D += T[0] + T[2]),
(x.height = D),
(x.lineHeight = Oi(b.lineHeight, t.lineHeight, D)),
(x.align = (b && b.align) || t.align),
(x.verticalAlign = (b && b.verticalAlign) || 'middle'),
p && i != null && h + x.lineHeight > i)
) {
w > 0
? ((y.tokens = y.tokens.slice(0, w)),
g(y, S, _),
(e.lines = e.lines.slice(0, m + 1)))
: (e.lines = e.lines.slice(0, m))
break t
}
var I = b.width,
L = I == null || I === 'auto'
if (typeof I == 'string' && I.charAt(I.length - 1) === '%')
(x.percentWidth = I), f.push(x), (x.contentWidth = oe(x.text, M))
else {
if (L) {
var P = b.backgroundColor,
R = P && P.image
R &&
((R = Ib(R)),
Fo(R) && (x.width = Math.max(x.width, (R.width * D) / R.height)))
}
var O = d && n != null ? n - S : null
O != null && O < x.width
? !L || O < C
? ((x.text = ''), (x.width = x.contentWidth = 0))
: ((x.text = Lb(x.text, O - C, M, t.ellipsis, {
minChar: t.truncateMinChar
})),
(x.width = x.contentWidth = oe(x.text, M)))
: (x.contentWidth = oe(x.text, M))
}
;(x.width += C), (S += x.width), b && (_ = Math.max(_, x.lineHeight))
}
g(y, S, _)
}
;(e.outerWidth = e.width = ht(n, c)),
(e.outerHeight = e.height = ht(i, h)),
(e.contentHeight = h),
(e.contentWidth = c),
v && ((e.outerWidth += v[1] + v[3]), (e.outerHeight += v[0] + v[2]))
for (var m = 0; m < f.length; m++) {
var x = f[m],
U = x.percentWidth
x.width = (parseInt(U, 10) / 100) * e.width
}
return e
}
function Pu(r, t, e, n, i) {
var a = t === '',
o = (i && e.rich[i]) || {},
s = r.lines,
l = o.font || e.font,
u = !1,
f,
h
if (n) {
var c = o.padding,
v = c ? c[1] + c[3] : 0
if (o.width != null && o.width !== 'auto') {
var d = Cr(o.width, n.width) + v
s.length > 0 &&
d + n.accumWidth > n.width &&
((f = t.split(`
`)),
(u = !0)),
(n.accumWidth = d)
} else {
var p = cd(t, l, n.width, n.breakAll, n.accumWidth)
;(n.accumWidth = p.accumWidth + v), (h = p.linesWidths), (f = p.lines)
}
} else
f = t.split(`
`)
for (var g = 0; g < f.length; g++) {
var m = f[g],
y = new Eb()
if (
((y.styleName = i),
(y.text = m),
(y.isLineHolder = !m && !a),
typeof o.width == 'number'
? (y.width = o.width)
: (y.width = h ? h[g] : oe(m, l)),
!g && !u)
) {
var _ = (s[s.length - 1] || (s[0] = new vd())).tokens,
S = _.length
S === 1 && _[0].isLineHolder ? (_[0] = y) : (m || !S || a) && _.push(y)
} else s.push(new vd([y]))
}
}
function Bb(r) {
var t = r.charCodeAt(0)
return t >= 33 && t <= 383
}
var Nb = Sr(
',&?/;] '.split(''),
function (r, t) {
return (r[t] = !0), r
},
{}
)
function Fb(r) {
return Bb(r) ? !!Nb[r] : !0
}
function cd(r, t, e, n, i) {
for (
var a = [], o = [], s = '', l = '', u = 0, f = 0, h = 0;
h < r.length;
h++
) {
var c = r.charAt(h)
if (
c ===
`
`
) {
l && ((s += l), (f += u)),
a.push(s),
o.push(f),
(s = ''),
(l = ''),
(u = 0),
(f = 0)
continue
}
var v = oe(c, t),
d = n ? !1 : !Fb(c)
if (a.length ? f + v > e : i + f + v > e) {
f
? (s || l) &&
(d
? (s || ((s = l), (l = ''), (u = 0), (f = u)),
a.push(s),
o.push(f - u),
(l += c),
(u += v),
(s = ''),
(f = u))
: (l && ((s += l), (l = ''), (u = 0)),
a.push(s),
o.push(f),
(s = c),
(f = v)))
: d
? (a.push(l), o.push(u), (l = c), (u = v))
: (a.push(c), o.push(v))
continue
}
;(f += v),
d ? ((l += c), (u += v)) : (l && ((s += l), (l = ''), (u = 0)), (s += c))
}
return (
!a.length && !s && ((s = r), (l = ''), (u = 0)),
l && (s += l),
s && (a.push(s), o.push(f)),
a.length === 1 && (f += i),
{ accumWidth: f, lines: a, linesWidths: o }
)
}
var Ru = '__zr_style_' + Math.round(Math.random() * 10),
tn = {
shadowBlur: 0,
shadowOffsetX: 0,
shadowOffsetY: 0,
shadowColor: '#000',
opacity: 1,
blend: 'source-over'
},
zo = {
style: {
shadowBlur: !0,
shadowOffsetX: !0,
shadowOffsetY: !0,
shadowColor: !0,
opacity: !0
}
}
tn[Ru] = !0
var dd = ['z', 'z2', 'invisible'],
zb = ['invisible'],
Vb = (function (r) {
B(t, r)
function t(e) {
return r.call(this, e) || this
}
return (
(t.prototype._init = function (e) {
for (var n = xt(e), i = 0; i < n.length; i++) {
var a = n[i]
a === 'style'
? this.useStyle(e[a])
: r.prototype.attrKV.call(this, a, e[a])
}
this.style || this.useStyle({})
}),
(t.prototype.beforeBrush = function () {}),
(t.prototype.afterBrush = function () {}),
(t.prototype.innerBeforeBrush = function () {}),
(t.prototype.innerAfterBrush = function () {}),
(t.prototype.shouldBePainted = function (e, n, i, a) {
var o = this.transform
if (
this.ignore ||
this.invisible ||
this.style.opacity === 0 ||
(this.culling && Gb(this, e, n)) ||
(o && !o[0] && !o[3])
)
return !1
if (i && this.__clipPaths) {
for (var s = 0; s < this.__clipPaths.length; ++s)
if (this.__clipPaths[s].isZeroArea()) return !1
}
if (a && this.parent)
for (var l = this.parent; l; ) {
if (l.ignore) return !1
l = l.parent
}
return !0
}),
(t.prototype.contain = function (e, n) {
return this.rectContain(e, n)
}),
(t.prototype.traverse = function (e, n) {
e.call(n, this)
}),
(t.prototype.rectContain = function (e, n) {
var i = this.transformCoordToLocal(e, n),
a = this.getBoundingRect()
return a.contain(i[0], i[1])
}),
(t.prototype.getPaintRect = function () {
var e = this._paintRect
if (!this._paintRect || this.__dirty) {
var n = this.transform,
i = this.getBoundingRect(),
a = this.style,
o = a.shadowBlur || 0,
s = a.shadowOffsetX || 0,
l = a.shadowOffsetY || 0
;(e = this._paintRect || (this._paintRect = new vt(0, 0, 0, 0))),
n ? vt.applyTransform(e, i, n) : e.copy(i),
(o || s || l) &&
((e.width += o * 2 + Math.abs(s)),
(e.height += o * 2 + Math.abs(l)),
(e.x = Math.min(e.x, e.x + s - o)),
(e.y = Math.min(e.y, e.y + l - o)))
var u = this.dirtyRectTolerance
e.isZero() ||
((e.x = Math.floor(e.x - u)),
(e.y = Math.floor(e.y - u)),
(e.width = Math.ceil(e.width + 1 + u * 2)),
(e.height = Math.ceil(e.height + 1 + u * 2)))
}
return e
}),
(t.prototype.setPrevPaintRect = function (e) {
e
? ((this._prevPaintRect = this._prevPaintRect || new vt(0, 0, 0, 0)),
this._prevPaintRect.copy(e))
: (this._prevPaintRect = null)
}),
(t.prototype.getPrevPaintRect = function () {
return this._prevPaintRect
}),
(t.prototype.animateStyle = function (e) {
return this.animate('style', e)
}),
(t.prototype.updateDuringAnimation = function (e) {
e === 'style' ? this.dirtyStyle() : this.markRedraw()
}),
(t.prototype.attrKV = function (e, n) {
e !== 'style'
? r.prototype.attrKV.call(this, e, n)
: this.style
? this.setStyle(n)
: this.useStyle(n)
}),
(t.prototype.setStyle = function (e, n) {
return (
typeof e == 'string' ? (this.style[e] = n) : N(this.style, e),
this.dirtyStyle(),
this
)
}),
(t.prototype.dirtyStyle = function (e) {
e || this.markRedraw(),
(this.__dirty |= Fi),
this._rect && (this._rect = null)
}),
(t.prototype.dirty = function () {
this.dirtyStyle()
}),
(t.prototype.styleChanged = function () {
return !!(this.__dirty & Fi)
}),
(t.prototype.styleUpdated = function () {
this.__dirty &= ~Fi
}),
(t.prototype.createStyle = function (e) {
return so(tn, e)
}),
(t.prototype.useStyle = function (e) {
e[Ru] || (e = this.createStyle(e)),
this.__inHover ? (this.__hoverStyle = e) : (this.style = e),
this.dirtyStyle()
}),
(t.prototype.isStyleObject = function (e) {
return e[Ru]
}),
(t.prototype._innerSaveToNormal = function (e) {
r.prototype._innerSaveToNormal.call(this, e)
var n = this._normalState
e.style &&
!n.style &&
(n.style = this._mergeStyle(this.createStyle(), this.style)),
this._savePrimaryToNormal(e, n, dd)
}),
(t.prototype._applyStateObj = function (e, n, i, a, o, s) {
r.prototype._applyStateObj.call(this, e, n, i, a, o, s)
var l = !(n && a),
u
if (
(n && n.style
? o
? a
? (u = n.style)
: ((u = this._mergeStyle(this.createStyle(), i.style)),
this._mergeStyle(u, n.style))
: ((u = this._mergeStyle(
this.createStyle(),
a ? this.style : i.style
)),
this._mergeStyle(u, n.style))
: l && (u = i.style),
u)
)
if (o) {
var f = this.style
if (((this.style = this.createStyle(l ? {} : f)), l))
for (var h = xt(f), c = 0; c < h.length; c++) {
var v = h[c]
v in u && ((u[v] = u[v]), (this.style[v] = f[v]))
}
for (var d = xt(u), c = 0; c < d.length; c++) {
var v = d[c]
this.style[v] = this.style[v]
}
this._transitionState(
e,
{ style: u },
s,
this.getAnimationStyleProps()
)
} else this.useStyle(u)
for (var p = this.__inHover ? zb : dd, c = 0; c < p.length; c++) {
var v = p[c]
n && n[v] != null
? (this[v] = n[v])
: l && i[v] != null && (this[v] = i[v])
}
}),
(t.prototype._mergeStates = function (e) {
for (
var n = r.prototype._mergeStates.call(this, e), i, a = 0;
a < e.length;
a++
) {
var o = e[a]
o.style && ((i = i || {}), this._mergeStyle(i, o.style))
}
return i && (n.style = i), n
}),
(t.prototype._mergeStyle = function (e, n) {
return N(e, n), e
}),
(t.prototype.getAnimationStyleProps = function () {
return zo
}),
(t.initDefaultProps = (function () {
var e = t.prototype
;(e.type = 'displayable'),
(e.invisible = !1),
(e.z = 0),
(e.z2 = 0),
(e.zlevel = 0),
(e.culling = !1),
(e.cursor = 'pointer'),
(e.rectHover = !1),
(e.incremental = !1),
(e._rect = null),
(e.dirtyRectTolerance = 0),
(e.__dirty = ae | Fi)
})()),
t
)
})(Gc),
Eu = new vt(0, 0, 0, 0),
Ou = new vt(0, 0, 0, 0)
function Gb(r, t, e) {
return (
Eu.copy(r.getBoundingRect()),
r.transform && Eu.applyTransform(r.transform),
(Ou.width = t),
(Ou.height = e),
!Eu.intersect(Ou)
)
}
var Qn = Vb,
jt = Math.min,
te = Math.max,
ku = Math.sin,
Bu = Math.cos,
en = Math.PI * 2,
Vo = Nn(),
Go = Nn(),
Ho = Nn()
function pd(r, t, e) {
if (r.length !== 0) {
for (
var n = r[0], i = n[0], a = n[0], o = n[1], s = n[1], l = 1;
l < r.length;
l++
)
(n = r[l]),
(i = jt(i, n[0])),
(a = te(a, n[0])),
(o = jt(o, n[1])),
(s = te(s, n[1]))
;(t[0] = i), (t[1] = o), (e[0] = a), (e[1] = s)
}
}
function gd(r, t, e, n, i, a) {
;(i[0] = jt(r, e)), (i[1] = jt(t, n)), (a[0] = te(r, e)), (a[1] = te(t, n))
}
var md = [],
yd = []
function Hb(r, t, e, n, i, a, o, s, l, u) {
var f = gc,
h = Rt,
c = f(r, e, i, o, md)
;(l[0] = 1 / 0), (l[1] = 1 / 0), (u[0] = -1 / 0), (u[1] = -1 / 0)
for (var v = 0; v < c; v++) {
var d = h(r, e, i, o, md[v])
;(l[0] = jt(d, l[0])), (u[0] = te(d, u[0]))
}
c = f(t, n, a, s, yd)
for (var v = 0; v < c; v++) {
var p = h(t, n, a, s, yd[v])
;(l[1] = jt(p, l[1])), (u[1] = te(p, u[1]))
}
;(l[0] = jt(r, l[0])),
(u[0] = te(r, u[0])),
(l[0] = jt(o, l[0])),
(u[0] = te(o, u[0])),
(l[1] = jt(t, l[1])),
(u[1] = te(t, u[1])),
(l[1] = jt(s, l[1])),
(u[1] = te(s, u[1]))
}
function Wb(r, t, e, n, i, a, o, s) {
var l = _c,
u = Gt,
f = te(jt(l(r, e, i), 1), 0),
h = te(jt(l(t, n, a), 1), 0),
c = u(r, e, i, f),
v = u(t, n, a, h)
;(o[0] = jt(r, i, c)),
(o[1] = jt(t, a, v)),
(s[0] = te(r, i, c)),
(s[1] = te(t, a, v))
}
function Ub(r, t, e, n, i, a, o, s, l) {
var u = zn,
f = Vn,
h = Math.abs(i - a)
if (h % en < 1e-4 && h > 1e-4) {
;(s[0] = r - e), (s[1] = t - n), (l[0] = r + e), (l[1] = t + n)
return
}
if (
((Vo[0] = Bu(i) * e + r),
(Vo[1] = ku(i) * n + t),
(Go[0] = Bu(a) * e + r),
(Go[1] = ku(a) * n + t),
u(s, Vo, Go),
f(l, Vo, Go),
(i = i % en),
i < 0 && (i = i + en),
(a = a % en),
a < 0 && (a = a + en),
i > a && !o ? (a += en) : i < a && o && (i += en),
o)
) {
var c = a
;(a = i), (i = c)
}
for (var v = 0; v < a; v += Math.PI / 2)
v > i &&
((Ho[0] = Bu(v) * e + r),
(Ho[1] = ku(v) * n + t),
u(s, Ho, s),
f(l, Ho, l))
}
var pt = { M: 1, L: 2, C: 3, Q: 4, A: 5, Z: 6, R: 7 },
rn = [],
nn = [],
Ye = [],
Mr = [],
Ze = [],
$e = [],
Nu = Math.min,
Fu = Math.max,
an = Math.cos,
on = Math.sin,
lr = Math.abs,
zu = Math.PI,
Dr = zu * 2,
Vu = typeof Float32Array != 'undefined',
ea = []
function Gu(r) {
var t = Math.round((r / zu) * 1e8) / 1e8
return (t % 2) * zu
}
function Yb(r, t) {
var e = Gu(r[0])
e < 0 && (e += Dr)
var n = e - r[0],
i = r[1]
;(i += n),
!t && i - e >= Dr
? (i = e + Dr)
: t && e - i >= Dr
? (i = e - Dr)
: !t && e > i
? (i = e + (Dr - Gu(e - i)))
: t && e < i && (i = e - (Dr - Gu(i - e))),
(r[0] = e),
(r[1] = i)
}
var Zb = (function () {
function r(t) {
;(this.dpr = 1),
(this._xi = 0),
(this._yi = 0),
(this._x0 = 0),
(this._y0 = 0),
(this._len = 0),
t && (this._saveData = !1),
this._saveData && (this.data = [])
}
return (
(r.prototype.increaseVersion = function () {
this._version++
}),
(r.prototype.getVersion = function () {
return this._version
}),
(r.prototype.setScale = function (t, e, n) {
;(n = n || 0),
n > 0 &&
((this._ux = lr(n / Io / t) || 0), (this._uy = lr(n / Io / e) || 0))
}),
(r.prototype.setDPR = function (t) {
this.dpr = t
}),
(r.prototype.setContext = function (t) {
this._ctx = t
}),
(r.prototype.getContext = function () {
return this._ctx
}),
(r.prototype.beginPath = function () {
return this._ctx && this._ctx.beginPath(), this.reset(), this
}),
(r.prototype.reset = function () {
this._saveData && (this._len = 0),
this._pathSegLen && ((this._pathSegLen = null), (this._pathLen = 0)),
this._version++
}),
(r.prototype.moveTo = function (t, e) {
return (
this._drawPendingPt(),
this.addData(pt.M, t, e),
this._ctx && this._ctx.moveTo(t, e),
(this._x0 = t),
(this._y0 = e),
(this._xi = t),
(this._yi = e),
this
)
}),
(r.prototype.lineTo = function (t, e) {
var n = lr(t - this._xi),
i = lr(e - this._yi),
a = n > this._ux || i > this._uy
if (
(this.addData(pt.L, t, e),
this._ctx && a && this._ctx.lineTo(t, e),
a)
)
(this._xi = t), (this._yi = e), (this._pendingPtDist = 0)
else {
var o = n * n + i * i
o > this._pendingPtDist &&
((this._pendingPtX = t),
(this._pendingPtY = e),
(this._pendingPtDist = o))
}
return this
}),
(r.prototype.bezierCurveTo = function (t, e, n, i, a, o) {
return (
this._drawPendingPt(),
this.addData(pt.C, t, e, n, i, a, o),
this._ctx && this._ctx.bezierCurveTo(t, e, n, i, a, o),
(this._xi = a),
(this._yi = o),
this
)
}),
(r.prototype.quadraticCurveTo = function (t, e, n, i) {
return (
this._drawPendingPt(),
this.addData(pt.Q, t, e, n, i),
this._ctx && this._ctx.quadraticCurveTo(t, e, n, i),
(this._xi = n),
(this._yi = i),
this
)
}),
(r.prototype.arc = function (t, e, n, i, a, o) {
this._drawPendingPt(),
(ea[0] = i),
(ea[1] = a),
Yb(ea, o),
(i = ea[0]),
(a = ea[1])
var s = a - i
return (
this.addData(pt.A, t, e, n, n, i, s, 0, o ? 0 : 1),
this._ctx && this._ctx.arc(t, e, n, i, a, o),
(this._xi = an(a) * n + t),
(this._yi = on(a) * n + e),
this
)
}),
(r.prototype.arcTo = function (t, e, n, i, a) {
return (
this._drawPendingPt(),
this._ctx && this._ctx.arcTo(t, e, n, i, a),
this
)
}),
(r.prototype.rect = function (t, e, n, i) {
return (
this._drawPendingPt(),
this._ctx && this._ctx.rect(t, e, n, i),
this.addData(pt.R, t, e, n, i),
this
)
}),
(r.prototype.closePath = function () {
this._drawPendingPt(), this.addData(pt.Z)
var t = this._ctx,
e = this._x0,
n = this._y0
return t && t.closePath(), (this._xi = e), (this._yi = n), this
}),
(r.prototype.fill = function (t) {
t && t.fill(), this.toStatic()
}),
(r.prototype.stroke = function (t) {
t && t.stroke(), this.toStatic()
}),
(r.prototype.len = function () {
return this._len
}),
(r.prototype.setData = function (t) {
var e = t.length
!(this.data && this.data.length === e) &&
Vu &&
(this.data = new Float32Array(e))
for (var n = 0; n < e; n++) this.data[n] = t[n]
this._len = e
}),
(r.prototype.appendPath = function (t) {
t instanceof Array || (t = [t])
for (var e = t.length, n = 0, i = this._len, a = 0; a < e; a++)
n += t[a].len()
Vu &&
this.data instanceof Float32Array &&
(this.data = new Float32Array(i + n))
for (var a = 0; a < e; a++)
for (var o = t[a].data, s = 0; s < o.length; s++)
this.data[i++] = o[s]
this._len = i
}),
(r.prototype.addData = function (t, e, n, i, a, o, s, l, u) {
if (!!this._saveData) {
var f = this.data
this._len + arguments.length > f.length &&
(this._expandData(), (f = this.data))
for (var h = 0; h < arguments.length; h++)
f[this._len++] = arguments[h]
}
}),
(r.prototype._drawPendingPt = function () {
this._pendingPtDist > 0 &&
(this._ctx && this._ctx.lineTo(this._pendingPtX, this._pendingPtY),
(this._pendingPtDist = 0))
}),
(r.prototype._expandData = function () {
if (!(this.data instanceof Array)) {
for (var t = [], e = 0; e < this._len; e++) t[e] = this.data[e]
this.data = t
}
}),
(r.prototype.toStatic = function () {
if (!!this._saveData) {
this._drawPendingPt()
var t = this.data
t instanceof Array &&
((t.length = this._len),
Vu && this._len > 11 && (this.data = new Float32Array(t)))
}
}),
(r.prototype.getBoundingRect = function () {
;(Ye[0] = Ye[1] = Ze[0] = Ze[1] = Number.MAX_VALUE),
(Mr[0] = Mr[1] = $e[0] = $e[1] = -Number.MAX_VALUE)
var t = this.data,
e = 0,
n = 0,
i = 0,
a = 0,
o
for (o = 0; o < this._len; ) {
var s = t[o++],
l = o === 1
switch ((l && ((e = t[o]), (n = t[o + 1]), (i = e), (a = n)), s)) {
case pt.M:
;(e = i = t[o++]),
(n = a = t[o++]),
(Ze[0] = i),
(Ze[1] = a),
($e[0] = i),
($e[1] = a)
break
case pt.L:
gd(e, n, t[o], t[o + 1], Ze, $e), (e = t[o++]), (n = t[o++])
break
case pt.C:
Hb(e, n, t[o++], t[o++], t[o++], t[o++], t[o], t[o + 1], Ze, $e),
(e = t[o++]),
(n = t[o++])
break
case pt.Q:
Wb(e, n, t[o++], t[o++], t[o], t[o + 1], Ze, $e),
(e = t[o++]),
(n = t[o++])
break
case pt.A:
var u = t[o++],
f = t[o++],
h = t[o++],
c = t[o++],
v = t[o++],
d = t[o++] + v
o += 1
var p = !t[o++]
l && ((i = an(v) * h + u), (a = on(v) * c + f)),
Ub(u, f, h, c, v, d, p, Ze, $e),
(e = an(d) * h + u),
(n = on(d) * c + f)
break
case pt.R:
;(i = e = t[o++]), (a = n = t[o++])
var g = t[o++],
m = t[o++]
gd(i, a, i + g, a + m, Ze, $e)
break
case pt.Z:
;(e = i), (n = a)
break
}
zn(Ye, Ye, Ze), Vn(Mr, Mr, $e)
}
return (
o === 0 && (Ye[0] = Ye[1] = Mr[0] = Mr[1] = 0),
new vt(Ye[0], Ye[1], Mr[0] - Ye[0], Mr[1] - Ye[1])
)
}),
(r.prototype._calculateLength = function () {
var t = this.data,
e = this._len,
n = this._ux,
i = this._uy,
a = 0,
o = 0,
s = 0,
l = 0
this._pathSegLen || (this._pathSegLen = [])
for (var u = this._pathSegLen, f = 0, h = 0, c = 0; c < e; ) {
var v = t[c++],
d = c === 1
d && ((a = t[c]), (o = t[c + 1]), (s = a), (l = o))
var p = -1
switch (v) {
case pt.M:
;(a = s = t[c++]), (o = l = t[c++])
break
case pt.L: {
var g = t[c++],
m = t[c++],
y = g - a,
_ = m - o
;(lr(y) > n || lr(_) > i || c === e - 1) &&
((p = Math.sqrt(y * y + _ * _)), (a = g), (o = m))
break
}
case pt.C: {
var S = t[c++],
w = t[c++],
g = t[c++],
m = t[c++],
x = t[c++],
b = t[c++]
;(p = sw(a, o, S, w, g, m, x, b, 10)), (a = x), (o = b)
break
}
case pt.Q: {
var S = t[c++],
w = t[c++],
g = t[c++],
m = t[c++]
;(p = uw(a, o, S, w, g, m, 10)), (a = g), (o = m)
break
}
case pt.A:
var T = t[c++],
C = t[c++],
M = t[c++],
D = t[c++],
I = t[c++],
L = t[c++],
P = L + I
;(c += 1),
t[c++],
d && ((s = an(I) * M + T), (l = on(I) * D + C)),
(p = Fu(M, D) * Nu(Dr, Math.abs(L))),
(a = an(P) * M + T),
(o = on(P) * D + C)
break
case pt.R: {
;(s = a = t[c++]), (l = o = t[c++])
var R = t[c++],
O = t[c++]
p = R * 2 + O * 2
break
}
case pt.Z: {
var y = s - a,
_ = l - o
;(p = Math.sqrt(y * y + _ * _)), (a = s), (o = l)
break
}
}
p >= 0 && ((u[h++] = p), (f += p))
}
return (this._pathLen = f), f
}),
(r.prototype.rebuildPath = function (t, e) {
var n = this.data,
i = this._ux,
a = this._uy,
o = this._len,
s,
l,
u,
f,
h,
c,
v = e < 1,
d,
p,
g = 0,
m = 0,
y,
_ = 0,
S,
w
if (
v &&
(this._pathSegLen || this._calculateLength(),
(d = this._pathSegLen),
(p = this._pathLen),
(y = e * p),
!y)
)
return
t: for (var x = 0; x < o; ) {
var b = n[x++],
T = x === 1
switch (
(T && ((u = n[x]), (f = n[x + 1]), (s = u), (l = f)),
b !== pt.L && _ > 0 && (t.lineTo(S, w), (_ = 0)),
b)
) {
case pt.M:
;(s = u = n[x++]), (l = f = n[x++]), t.moveTo(u, f)
break
case pt.L: {
;(h = n[x++]), (c = n[x++])
var C = lr(h - u),
M = lr(c - f)
if (C > i || M > a) {
if (v) {
var D = d[m++]
if (g + D > y) {
var I = (y - g) / D
t.lineTo(u * (1 - I) + h * I, f * (1 - I) + c * I)
break t
}
g += D
}
t.lineTo(h, c), (u = h), (f = c), (_ = 0)
} else {
var L = C * C + M * M
L > _ && ((S = h), (w = c), (_ = L))
}
break
}
case pt.C: {
var P = n[x++],
R = n[x++],
O = n[x++],
U = n[x++],
k = n[x++],
F = n[x++]
if (v) {
var D = d[m++]
if (g + D > y) {
var I = (y - g) / D
br(u, P, O, k, I, rn),
br(f, R, U, F, I, nn),
t.bezierCurveTo(rn[1], nn[1], rn[2], nn[2], rn[3], nn[3])
break t
}
g += D
}
t.bezierCurveTo(P, R, O, U, k, F), (u = k), (f = F)
break
}
case pt.Q: {
var P = n[x++],
R = n[x++],
O = n[x++],
U = n[x++]
if (v) {
var D = d[m++]
if (g + D > y) {
var I = (y - g) / D
go(u, P, O, I, rn),
go(f, R, U, I, nn),
t.quadraticCurveTo(rn[1], nn[1], rn[2], nn[2])
break t
}
g += D
}
t.quadraticCurveTo(P, R, O, U), (u = O), (f = U)
break
}
case pt.A:
var H = n[x++],
$ = n[x++],
J = n[x++],
et = n[x++],
ft = n[x++],
Ct = n[x++],
mt = n[x++],
zt = !n[x++],
Vt = J > et ? J : et,
It = lr(J - et) > 0.001,
bt = ft + Ct,
K = !1
if (v) {
var D = d[m++]
g + D > y && ((bt = ft + (Ct * (y - g)) / D), (K = !0)),
(g += D)
}
if (
(It && t.ellipse
? t.ellipse(H, $, J, et, mt, ft, bt, zt)
: t.arc(H, $, Vt, ft, bt, zt),
K)
)
break t
T && ((s = an(ft) * J + H), (l = on(ft) * et + $)),
(u = an(bt) * J + H),
(f = on(bt) * et + $)
break
case pt.R:
;(s = u = n[x]), (l = f = n[x + 1]), (h = n[x++]), (c = n[x++])
var it = n[x++],
Ne = n[x++]
if (v) {
var D = d[m++]
if (g + D > y) {
var Ot = y - g
t.moveTo(h, c),
t.lineTo(h + Nu(Ot, it), c),
(Ot -= it),
Ot > 0 && t.lineTo(h + it, c + Nu(Ot, Ne)),
(Ot -= Ne),
Ot > 0 && t.lineTo(h + Fu(it - Ot, 0), c + Ne),
(Ot -= it),
Ot > 0 && t.lineTo(h, c + Fu(Ne - Ot, 0))
break t
}
g += D
}
t.rect(h, c, it, Ne)
break
case pt.Z:
if (v) {
var D = d[m++]
if (g + D > y) {
var I = (y - g) / D
t.lineTo(u * (1 - I) + s * I, f * (1 - I) + l * I)
break t
}
g += D
}
t.closePath(), (u = s), (f = l)
}
}
}),
(r.prototype.clone = function () {
var t = new r(),
e = this.data
return (
(t.data = e.slice ? e.slice() : Array.prototype.slice.call(e)),
(t._len = this._len),
t
)
}),
(r.CMD = pt),
(r.initDefaultProps = (function () {
var t = r.prototype
;(t._saveData = !0),
(t._ux = 0),
(t._uy = 0),
(t._pendingPtDist = 0),
(t._version = 0)
})()),
r
)
})(),
ur = Zb
function Jn(r, t, e, n, i, a, o) {
if (i === 0) return !1
var s = i,
l = 0,
u = r
if (
(o > t + s && o > n + s) ||
(o < t - s && o < n - s) ||
(a > r + s && a > e + s) ||
(a < r - s && a < e - s)
)
return !1
if (r !== e) (l = (t - n) / (r - e)), (u = (r * n - e * t) / (r - e))
else return Math.abs(a - r) <= s / 2
var f = l * a - o + u,
h = (f * f) / (l * l + 1)
return h <= ((s / 2) * s) / 2
}
function $b(r, t, e, n, i, a, o, s, l, u, f) {
if (l === 0) return !1
var h = l
if (
(f > t + h && f > n + h && f > a + h && f > s + h) ||
(f < t - h && f < n - h && f < a - h && f < s - h) ||
(u > r + h && u > e + h && u > i + h && u > o + h) ||
(u < r - h && u < e - h && u < i - h && u < o - h)
)
return !1
var c = mc(r, t, e, n, i, a, o, s, u, f, null)
return c <= h / 2
}
function Xb(r, t, e, n, i, a, o, s, l) {
if (o === 0) return !1
var u = o
if (
(l > t + u && l > n + u && l > a + u) ||
(l < t - u && l < n - u && l < a - u) ||
(s > r + u && s > e + u && s > i + u) ||
(s < r - u && s < e - u && s < i - u)
)
return !1
var f = Sc(r, t, e, n, i, a, s, l, null)
return f <= u / 2
}
var _d = Math.PI * 2
function Ir(r) {
return (r %= _d), r < 0 && (r += _d), r
}
var ra = Math.PI * 2
function qb(r, t, e, n, i, a, o, s, l) {
if (o === 0) return !1
var u = o
;(s -= r), (l -= t)
var f = Math.sqrt(s * s + l * l)
if (f - u > e || f + u < e) return !1
if (Math.abs(n - i) % ra < 1e-4) return !0
if (a) {
var h = n
;(n = Ir(i)), (i = Ir(h))
} else (n = Ir(n)), (i = Ir(i))
n > i && (i += ra)
var c = Math.atan2(l, s)
return c < 0 && (c += ra), (c >= n && c <= i) || (c + ra >= n && c + ra <= i)
}
function sn(r, t, e, n, i, a) {
if ((a > t && a > n) || (a < t && a < n) || n === t) return 0
var o = (a - t) / (n - t),
s = n < t ? 1 : -1
;(o === 1 || o === 0) && (s = n < t ? 0.5 : -0.5)
var l = o * (e - r) + r
return l === i ? 1 / 0 : l > i ? s : 0
}
var Lr = ur.CMD,
ln = Math.PI * 2,
Kb = 1e-4
function Qb(r, t) {
return Math.abs(r - t) < Kb
}
var qt = [-1, -1, -1],
de = [-1, -1]
function Jb() {
var r = de[0]
;(de[0] = de[1]), (de[1] = r)
}
function jb(r, t, e, n, i, a, o, s, l, u) {
if ((u > t && u > n && u > a && u > s) || (u < t && u < n && u < a && u < s))
return 0
var f = po(t, n, a, s, u, qt)
if (f === 0) return 0
for (var h = 0, c = -1, v = void 0, d = void 0, p = 0; p < f; p++) {
var g = qt[p],
m = g === 0 || g === 1 ? 0.5 : 1,
y = Rt(r, e, i, o, g)
y < l ||
(c < 0 &&
((c = gc(t, n, a, s, de)),
de[1] < de[0] && c > 1 && Jb(),
(v = Rt(t, n, a, s, de[0])),
c > 1 && (d = Rt(t, n, a, s, de[1]))),
c === 2
? g < de[0]
? (h += v < t ? m : -m)
: g < de[1]
? (h += d < v ? m : -m)
: (h += s < d ? m : -m)
: g < de[0]
? (h += v < t ? m : -m)
: (h += s < v ? m : -m))
}
return h
}
function tT(r, t, e, n, i, a, o, s) {
if ((s > t && s > n && s > a) || (s < t && s < n && s < a)) return 0
var l = lw(t, n, a, s, qt)
if (l === 0) return 0
var u = _c(t, n, a)
if (u >= 0 && u <= 1) {
for (var f = 0, h = Gt(t, n, a, u), c = 0; c < l; c++) {
var v = qt[c] === 0 || qt[c] === 1 ? 0.5 : 1,
d = Gt(r, e, i, qt[c])
d < o || (qt[c] < u ? (f += h < t ? v : -v) : (f += a < h ? v : -v))
}
return f
} else {
var v = qt[0] === 0 || qt[0] === 1 ? 0.5 : 1,
d = Gt(r, e, i, qt[0])
return d < o ? 0 : a < t ? v : -v
}
}
function eT(r, t, e, n, i, a, o, s) {
if (((s -= t), s > e || s < -e)) return 0
var l = Math.sqrt(e * e - s * s)
;(qt[0] = -l), (qt[1] = l)
var u = Math.abs(n - i)
if (u < 1e-4) return 0
if (u >= ln - 1e-4) {
;(n = 0), (i = ln)
var f = a ? 1 : -1
return o >= qt[0] + r && o <= qt[1] + r ? f : 0
}
if (n > i) {
var h = n
;(n = i), (i = h)
}
n < 0 && ((n += ln), (i += ln))
for (var c = 0, v = 0; v < 2; v++) {
var d = qt[v]
if (d + r > o) {
var p = Math.atan2(s, d),
f = a ? 1 : -1
p < 0 && (p = ln + p),
((p >= n && p <= i) || (p + ln >= n && p + ln <= i)) &&
(p > Math.PI / 2 && p < Math.PI * 1.5 && (f = -f), (c += f))
}
}
return c
}
function Sd(r, t, e, n, i) {
for (
var a = r.data, o = r.len(), s = 0, l = 0, u = 0, f = 0, h = 0, c, v, d = 0;
d < o;
) {
var p = a[d++],
g = d === 1
switch (
(p === Lr.M && d > 1 && (e || (s += sn(l, u, f, h, n, i))),
g && ((l = a[d]), (u = a[d + 1]), (f = l), (h = u)),
p)
) {
case Lr.M:
;(f = a[d++]), (h = a[d++]), (l = f), (u = h)
break
case Lr.L:
if (e) {
if (Jn(l, u, a[d], a[d + 1], t, n, i)) return !0
} else s += sn(l, u, a[d], a[d + 1], n, i) || 0
;(l = a[d++]), (u = a[d++])
break
case Lr.C:
if (e) {
if ($b(l, u, a[d++], a[d++], a[d++], a[d++], a[d], a[d + 1], t, n, i))
return !0
} else
s +=
jb(l, u, a[d++], a[d++], a[d++], a[d++], a[d], a[d + 1], n, i) || 0
;(l = a[d++]), (u = a[d++])
break
case Lr.Q:
if (e) {
if (Xb(l, u, a[d++], a[d++], a[d], a[d + 1], t, n, i)) return !0
} else s += tT(l, u, a[d++], a[d++], a[d], a[d + 1], n, i) || 0
;(l = a[d++]), (u = a[d++])
break
case Lr.A:
var m = a[d++],
y = a[d++],
_ = a[d++],
S = a[d++],
w = a[d++],
x = a[d++]
d += 1
var b = !!(1 - a[d++])
;(c = Math.cos(w) * _ + m),
(v = Math.sin(w) * S + y),
g ? ((f = c), (h = v)) : (s += sn(l, u, c, v, n, i))
var T = ((n - m) * S) / _ + m
if (e) {
if (qb(m, y, S, w, w + x, b, t, T, i)) return !0
} else s += eT(m, y, S, w, w + x, b, T, i)
;(l = Math.cos(w + x) * _ + m), (u = Math.sin(w + x) * S + y)
break
case Lr.R:
;(f = l = a[d++]), (h = u = a[d++])
var C = a[d++],
M = a[d++]
if (((c = f + C), (v = h + M), e)) {
if (
Jn(f, h, c, h, t, n, i) ||
Jn(c, h, c, v, t, n, i) ||
Jn(c, v, f, v, t, n, i) ||
Jn(f, v, f, h, t, n, i)
)
return !0
} else (s += sn(c, h, c, v, n, i)), (s += sn(f, v, f, h, n, i))
break
case Lr.Z:
if (e) {
if (Jn(l, u, f, h, t, n, i)) return !0
} else s += sn(l, u, f, h, n, i)
;(l = f), (u = h)
break
}
}
return !e && !Qb(u, h) && (s += sn(l, u, f, h, n, i) || 0), s !== 0
}
function rT(r, t, e) {
return Sd(r, 0, !1, t, e)
}
function nT(r, t, e, n) {
return Sd(r, t, !0, e, n)
}
var xd = j(
{
fill: '#000',
stroke: null,
strokePercent: 1,
fillOpacity: 1,
strokeOpacity: 1,
lineDashOffset: 0,
lineWidth: 1,
lineCap: 'butt',
miterLimit: 10,
strokeNoScale: !1,
strokeFirst: !1
},
tn
),
iT = {
style: j(
{
fill: !0,
stroke: !0,
strokePercent: !0,
fillOpacity: !0,
strokeOpacity: !0,
lineDashOffset: !0,
lineWidth: !0,
miterLimit: !0
},
zo.style
)
},
Hu = Ui.concat(['invisible', 'culling', 'z', 'z2', 'zlevel', 'parent']),
aT = (function (r) {
B(t, r)
function t(e) {
return r.call(this, e) || this
}
return (
(t.prototype.update = function () {
var e = this
r.prototype.update.call(this)
var n = this.style
if (n.decal) {
var i = (this._decalEl = this._decalEl || new t())
i.buildPath === t.prototype.buildPath &&
(i.buildPath = function (l) {
e.buildPath(l, e.shape)
}),
(i.silent = !0)
var a = i.style
for (var o in n) a[o] !== n[o] && (a[o] = n[o])
;(a.fill = n.fill ? n.decal : null),
(a.decal = null),
(a.shadowColor = null),
n.strokeFirst && (a.stroke = null)
for (var s = 0; s < Hu.length; ++s) i[Hu[s]] = this[Hu[s]]
i.__dirty |= ae
} else this._decalEl && (this._decalEl = null)
}),
(t.prototype.getDecalElement = function () {
return this._decalEl
}),
(t.prototype._init = function (e) {
var n = xt(e)
this.shape = this.getDefaultShape()
var i = this.getDefaultStyle()
i && this.useStyle(i)
for (var a = 0; a < n.length; a++) {
var o = n[a],
s = e[o]
o === 'style'
? this.style
? N(this.style, s)
: this.useStyle(s)
: o === 'shape'
? N(this.shape, s)
: r.prototype.attrKV.call(this, o, s)
}
this.style || this.useStyle({})
}),
(t.prototype.getDefaultStyle = function () {
return null
}),
(t.prototype.getDefaultShape = function () {
return {}
}),
(t.prototype.canBeInsideText = function () {
return this.hasFill()
}),
(t.prototype.getInsideTextFill = function () {
var e = this.style.fill
if (e !== 'none') {
if (W(e)) {
var n = xo(e, 0)
return n > 0.5 ? hu : n > 0.2 ? Ow : vu
} else if (e) return vu
}
return hu
}),
(t.prototype.getInsideTextStroke = function (e) {
var n = this.style.fill
if (W(n)) {
var i = this.__zr,
a = !!(i && i.isDarkMode()),
o = xo(e, 0) < fu
if (a === o) return n
}
}),
(t.prototype.buildPath = function (e, n, i) {}),
(t.prototype.pathUpdated = function () {
this.__dirty &= ~Wn
}),
(t.prototype.getUpdatedPathProxy = function (e) {
return (
!this.path && this.createPathProxy(),
this.path.beginPath(),
this.buildPath(this.path, this.shape, e),
this.path
)
}),
(t.prototype.createPathProxy = function () {
this.path = new ur(!1)
}),
(t.prototype.hasStroke = function () {
var e = this.style,
n = e.stroke
return !(n == null || n === 'none' || !(e.lineWidth > 0))
}),
(t.prototype.hasFill = function () {
var e = this.style,
n = e.fill
return n != null && n !== 'none'
}),
(t.prototype.getBoundingRect = function () {
var e = this._rect,
n = this.style,
i = !e
if (i) {
var a = !1
this.path || ((a = !0), this.createPathProxy())
var o = this.path
;(a || this.__dirty & Wn) &&
(o.beginPath(),
this.buildPath(o, this.shape, !1),
this.pathUpdated()),
(e = o.getBoundingRect())
}
if (
((this._rect = e),
this.hasStroke() && this.path && this.path.len() > 0)
) {
var s = this._rectStroke || (this._rectStroke = e.clone())
if (this.__dirty || i) {
s.copy(e)
var l = n.strokeNoScale ? this.getLineScale() : 1,
u = n.lineWidth
if (!this.hasFill()) {
var f = this.strokeContainThreshold
u = Math.max(u, f == null ? 4 : f)
}
l > 1e-10 &&
((s.width += u / l),
(s.height += u / l),
(s.x -= u / l / 2),
(s.y -= u / l / 2))
}
return s
}
return e
}),
(t.prototype.contain = function (e, n) {
var i = this.transformCoordToLocal(e, n),
a = this.getBoundingRect(),
o = this.style
if (((e = i[0]), (n = i[1]), a.contain(e, n))) {
var s = this.path
if (this.hasStroke()) {
var l = o.lineWidth,
u = o.strokeNoScale ? this.getLineScale() : 1
if (
u > 1e-10 &&
(this.hasFill() || (l = Math.max(l, this.strokeContainThreshold)),
nT(s, l / u, e, n))
)
return !0
}
if (this.hasFill()) return rT(s, e, n)
}
return !1
}),
(t.prototype.dirtyShape = function () {
;(this.__dirty |= Wn),
this._rect && (this._rect = null),
this._decalEl && this._decalEl.dirtyShape(),
this.markRedraw()
}),
(t.prototype.dirty = function () {
this.dirtyStyle(), this.dirtyShape()
}),
(t.prototype.animateShape = function (e) {
return this.animate('shape', e)
}),
(t.prototype.updateDuringAnimation = function (e) {
e === 'style'
? this.dirtyStyle()
: e === 'shape'
? this.dirtyShape()
: this.markRedraw()
}),
(t.prototype.attrKV = function (e, n) {
e === 'shape' ? this.setShape(n) : r.prototype.attrKV.call(this, e, n)
}),
(t.prototype.setShape = function (e, n) {
var i = this.shape
return (
i || (i = this.shape = {}),
typeof e == 'string' ? (i[e] = n) : N(i, e),
this.dirtyShape(),
this
)
}),
(t.prototype.shapeChanged = function () {
return !!(this.__dirty & Wn)
}),
(t.prototype.createStyle = function (e) {
return so(xd, e)
}),
(t.prototype._innerSaveToNormal = function (e) {
r.prototype._innerSaveToNormal.call(this, e)
var n = this._normalState
e.shape && !n.shape && (n.shape = N({}, this.shape))
}),
(t.prototype._applyStateObj = function (e, n, i, a, o, s) {
r.prototype._applyStateObj.call(this, e, n, i, a, o, s)
var l = !(n && a),
u
if (
(n && n.shape
? o
? a
? (u = n.shape)
: ((u = N({}, i.shape)), N(u, n.shape))
: ((u = N({}, a ? this.shape : i.shape)), N(u, n.shape))
: l && (u = i.shape),
u)
)
if (o) {
this.shape = N({}, this.shape)
for (var f = {}, h = xt(u), c = 0; c < h.length; c++) {
var v = h[c]
typeof u[v] == 'object' ? (this.shape[v] = u[v]) : (f[v] = u[v])
}
this._transitionState(e, { shape: f }, s)
} else (this.shape = u), this.dirtyShape()
}),
(t.prototype._mergeStates = function (e) {
for (
var n = r.prototype._mergeStates.call(this, e), i, a = 0;
a < e.length;
a++
) {
var o = e[a]
o.shape && ((i = i || {}), this._mergeStyle(i, o.shape))
}
return i && (n.shape = i), n
}),
(t.prototype.getAnimationStyleProps = function () {
return iT
}),
(t.prototype.isZeroArea = function () {
return !1
}),
(t.extend = function (e) {
var n = (function (a) {
B(o, a)
function o(s) {
var l = a.call(this, s) || this
return e.init && e.init.call(l, s), l
}
return (
(o.prototype.getDefaultStyle = function () {
return tt(e.style)
}),
(o.prototype.getDefaultShape = function () {
return tt(e.shape)
}),
o
)
})(t)
for (var i in e) typeof e[i] == 'function' && (n.prototype[i] = e[i])
return n
}),
(t.initDefaultProps = (function () {
var e = t.prototype
;(e.type = 'path'),
(e.strokeContainThreshold = 5),
(e.segmentIgnoreThreshold = 0),
(e.subPixelOptimize = !1),
(e.autoBatch = !1),
(e.__dirty = ae | Fi | Wn)
})()),
t
)
})(Qn),
st = aT,
oT = j(
{
strokeFirst: !0,
font: Yr,
x: 0,
y: 0,
textAlign: 'left',
textBaseline: 'top',
miterLimit: 2
},
xd
),
wd = (function (r) {
B(t, r)
function t() {
return (r !== null && r.apply(this, arguments)) || this
}
return (
(t.prototype.hasStroke = function () {
var e = this.style,
n = e.stroke
return n != null && n !== 'none' && e.lineWidth > 0
}),
(t.prototype.hasFill = function () {
var e = this.style,
n = e.fill
return n != null && n !== 'none'
}),
(t.prototype.createStyle = function (e) {
return so(oT, e)
}),
(t.prototype.setBoundingRect = function (e) {
this._rect = e
}),
(t.prototype.getBoundingRect = function () {
var e = this.style
if (!this._rect) {
var n = e.text
n != null ? (n += '') : (n = '')
var i = Eo(n, e.font, e.textAlign, e.textBaseline)
if (((i.x += e.x || 0), (i.y += e.y || 0), this.hasStroke())) {
var a = e.lineWidth
;(i.x -= a / 2), (i.y -= a / 2), (i.width += a), (i.height += a)
}
this._rect = i
}
return this._rect
}),
(t.initDefaultProps = (function () {
var e = t.prototype
e.dirtyRectTolerance = 10
})()),
t
)
})(Qn)
wd.prototype.type = 'tspan'
var Wu = wd,
sT = j({ x: 0, y: 0 }, tn),
lT = {
style: j(
{
x: !0,
y: !0,
width: !0,
height: !0,
sx: !0,
sy: !0,
sWidth: !0,
sHeight: !0
},
zo.style
)
}
function uT(r) {
return !!(r && typeof r != 'string' && r.width && r.height)
}
var bd = (function (r) {
B(t, r)
function t() {
return (r !== null && r.apply(this, arguments)) || this
}
return (
(t.prototype.createStyle = function (e) {
return so(sT, e)
}),
(t.prototype._getSize = function (e) {
var n = this.style,
i = n[e]
if (i != null) return i
var a = uT(n.image) ? n.image : this.__image
if (!a) return 0
var o = e === 'width' ? 'height' : 'width',
s = n[o]
return s == null ? a[e] : (a[e] / a[o]) * s
}),
(t.prototype.getWidth = function () {
return this._getSize('width')
}),
(t.prototype.getHeight = function () {
return this._getSize('height')
}),
(t.prototype.getAnimationStyleProps = function () {
return lT
}),
(t.prototype.getBoundingRect = function () {
var e = this.style
return (
this._rect ||
(this._rect = new vt(
e.x || 0,
e.y || 0,
this.getWidth(),
this.getHeight()
)),
this._rect
)
}),
t
)
})(Qn)
bd.prototype.type = 'image'
var un = bd
function fT(r, t) {
var e = t.x,
n = t.y,
i = t.width,
a = t.height,
o = t.r,
s,
l,
u,
f
i < 0 && ((e = e + i), (i = -i)),
a < 0 && ((n = n + a), (a = -a)),
typeof o == 'number'
? (s = l = u = f = o)
: o instanceof Array
? o.length === 1
? (s = l = u = f = o[0])
: o.length === 2
? ((s = u = o[0]), (l = f = o[1]))
: o.length === 3
? ((s = o[0]), (l = f = o[1]), (u = o[2]))
: ((s = o[0]), (l = o[1]), (u = o[2]), (f = o[3]))
: (s = l = u = f = 0)
var h
s + l > i && ((h = s + l), (s *= i / h), (l *= i / h)),
u + f > i && ((h = u + f), (u *= i / h), (f *= i / h)),
l + u > a && ((h = l + u), (l *= a / h), (u *= a / h)),
s + f > a && ((h = s + f), (s *= a / h), (f *= a / h)),
r.moveTo(e + s, n),
r.lineTo(e + i - l, n),
l !== 0 && r.arc(e + i - l, n + l, l, -Math.PI / 2, 0),
r.lineTo(e + i, n + a - u),
u !== 0 && r.arc(e + i - u, n + a - u, u, 0, Math.PI / 2),
r.lineTo(e + f, n + a),
f !== 0 && r.arc(e + f, n + a - f, f, Math.PI / 2, Math.PI),
r.lineTo(e, n + s),
s !== 0 && r.arc(e + s, n + s, s, Math.PI, Math.PI * 1.5)
}
var jn = Math.round
function Td(r, t, e) {
if (!!t) {
var n = t.x1,
i = t.x2,
a = t.y1,
o = t.y2
;(r.x1 = n), (r.x2 = i), (r.y1 = a), (r.y2 = o)
var s = e && e.lineWidth
return (
s &&
(jn(n * 2) === jn(i * 2) && (r.x1 = r.x2 = fn(n, s, !0)),
jn(a * 2) === jn(o * 2) && (r.y1 = r.y2 = fn(a, s, !0))),
r
)
}
}
function Cd(r, t, e) {
if (!!t) {
var n = t.x,
i = t.y,
a = t.width,
o = t.height
;(r.x = n), (r.y = i), (r.width = a), (r.height = o)
var s = e && e.lineWidth
return (
s &&
((r.x = fn(n, s, !0)),
(r.y = fn(i, s, !0)),
(r.width = Math.max(fn(n + a, s, !1) - r.x, a === 0 ? 0 : 1)),
(r.height = Math.max(fn(i + o, s, !1) - r.y, o === 0 ? 0 : 1))),
r
)
}
}
function fn(r, t, e) {
if (!t) return r
var n = jn(r * 2)
return (n + jn(t)) % 2 == 0 ? n / 2 : (n + (e ? 1 : -1)) / 2
}
var hT = (function () {
function r() {
;(this.x = 0), (this.y = 0), (this.width = 0), (this.height = 0)
}
return r
})(),
vT = {},
Ad = (function (r) {
B(t, r)
function t(e) {
return r.call(this, e) || this
}
return (
(t.prototype.getDefaultShape = function () {
return new hT()
}),
(t.prototype.buildPath = function (e, n) {
var i, a, o, s
if (this.subPixelOptimize) {
var l = Cd(vT, n, this.style)
;(i = l.x),
(a = l.y),
(o = l.width),
(s = l.height),
(l.r = n.r),
(n = l)
} else (i = n.x), (a = n.y), (o = n.width), (s = n.height)
n.r ? fT(e, n) : e.rect(i, a, o, s)
}),
(t.prototype.isZeroArea = function () {
return !this.shape.width || !this.shape.height
}),
t
)
})(st)
Ad.prototype.type = 'rect'
var St = Ad,
Md = { fill: '#000' },
Dd = 2,
cT = {
style: j(
{
fill: !0,
stroke: !0,
fillOpacity: !0,
strokeOpacity: !0,
lineWidth: !0,
fontSize: !0,
lineHeight: !0,
width: !0,
height: !0,
textShadowColor: !0,
textShadowBlur: !0,
textShadowOffsetX: !0,
textShadowOffsetY: !0,
backgroundColor: !0,
padding: !0,
borderColor: !0,
borderWidth: !0,
borderRadius: !0
},
zo.style
)
},
Id = (function (r) {
B(t, r)
function t(e) {
var n = r.call(this) || this
return (
(n.type = 'text'),
(n._children = []),
(n._defaultStyle = Md),
n.attr(e),
n
)
}
return (
(t.prototype.childrenRef = function () {
return this._children
}),
(t.prototype.update = function () {
r.prototype.update.call(this),
this.styleChanged() && this._updateSubTexts()
for (var e = 0; e < this._children.length; e++) {
var n = this._children[e]
;(n.zlevel = this.zlevel),
(n.z = this.z),
(n.z2 = this.z2),
(n.culling = this.culling),
(n.cursor = this.cursor),
(n.invisible = this.invisible)
}
}),
(t.prototype.updateTransform = function () {
var e = this.innerTransformable
e
? (e.updateTransform(), e.transform && (this.transform = e.transform))
: r.prototype.updateTransform.call(this)
}),
(t.prototype.getLocalTransform = function (e) {
var n = this.innerTransformable
return n
? n.getLocalTransform(e)
: r.prototype.getLocalTransform.call(this, e)
}),
(t.prototype.getComputedTransform = function () {
return (
this.__hostTarget &&
(this.__hostTarget.getComputedTransform(),
this.__hostTarget.updateInnerText(!0)),
r.prototype.getComputedTransform.call(this)
)
}),
(t.prototype._updateSubTexts = function () {
;(this._childCursor = 0),
yT(this.style),
this.style.rich ? this._updateRichTexts() : this._updatePlainTexts(),
(this._children.length = this._childCursor),
this.styleUpdated()
}),
(t.prototype.addSelfToZr = function (e) {
r.prototype.addSelfToZr.call(this, e)
for (var n = 0; n < this._children.length; n++)
this._children[n].__zr = e
}),
(t.prototype.removeSelfFromZr = function (e) {
r.prototype.removeSelfFromZr.call(this, e)
for (var n = 0; n < this._children.length; n++)
this._children[n].__zr = null
}),
(t.prototype.getBoundingRect = function () {
if ((this.styleChanged() && this._updateSubTexts(), !this._rect)) {
for (
var e = new vt(0, 0, 0, 0),
n = this._children,
i = [],
a = null,
o = 0;
o < n.length;
o++
) {
var s = n[o],
l = s.getBoundingRect(),
u = s.getLocalTransform(i)
u
? (e.copy(l),
e.applyTransform(u),
(a = a || e.clone()),
a.union(e))
: ((a = a || l.clone()), a.union(l))
}
this._rect = a || e
}
return this._rect
}),
(t.prototype.setDefaultTextStyle = function (e) {
this._defaultStyle = e || Md
}),
(t.prototype.setTextContent = function (e) {}),
(t.prototype._mergeStyle = function (e, n) {
if (!n) return e
var i = n.rich,
a = e.rich || (i && {})
return (
N(e, n),
i && a ? (this._mergeRich(a, i), (e.rich = a)) : a && (e.rich = a),
e
)
}),
(t.prototype._mergeRich = function (e, n) {
for (var i = xt(n), a = 0; a < i.length; a++) {
var o = i[a]
;(e[o] = e[o] || {}), N(e[o], n[o])
}
}),
(t.prototype.getAnimationStyleProps = function () {
return cT
}),
(t.prototype._getOrCreateChild = function (e) {
var n = this._children[this._childCursor]
return (
(!n || !(n instanceof e)) && (n = new e()),
(this._children[this._childCursor++] = n),
(n.__zr = this.__zr),
(n.parent = this),
n
)
}),
(t.prototype._updatePlainTexts = function () {
var e = this.style,
n = e.font || Yr,
i = e.padding,
a = Bd(e),
o = Rb(a, e),
s = Uu(e),
l = !!e.backgroundColor,
u = o.outerHeight,
f = o.outerWidth,
h = o.contentWidth,
c = o.lines,
v = o.lineHeight,
d = this._defaultStyle,
p = e.x || 0,
g = e.y || 0,
m = e.align || d.align || 'left',
y = e.verticalAlign || d.verticalAlign || 'top',
_ = p,
S = qn(g, o.contentHeight, y)
if (s || i) {
var w = $i(p, f, m),
x = qn(g, u, y)
s && this._renderBackground(e, e, w, x, f, u)
}
;(S += v / 2),
i &&
((_ = kd(p, m, i)),
y === 'top' ? (S += i[0]) : y === 'bottom' && (S -= i[2]))
for (
var b = 0,
T = !1,
C = Od(('fill' in e) ? e.fill : ((T = !0), d.fill)),
M = Ed(
('stroke' in e)
? e.stroke
: !l && (!d.autoStroke || T)
? ((b = Dd), d.stroke)
: null
),
D = e.textShadowBlur > 0,
I =
e.width != null &&
(e.overflow === 'truncate' ||
e.overflow === 'break' ||
e.overflow === 'breakAll'),
L = o.calculatedLineHeight,
P = 0;
P < c.length;
P++
) {
var R = this._getOrCreateChild(Wu),
O = R.createStyle()
R.useStyle(O),
(O.text = c[P]),
(O.x = _),
(O.y = S),
m && (O.textAlign = m),
(O.textBaseline = 'middle'),
(O.opacity = e.opacity),
(O.strokeFirst = !0),
D &&
((O.shadowBlur = e.textShadowBlur || 0),
(O.shadowColor = e.textShadowColor || 'transparent'),
(O.shadowOffsetX = e.textShadowOffsetX || 0),
(O.shadowOffsetY = e.textShadowOffsetY || 0)),
(O.stroke = M),
(O.fill = C),
M &&
((O.lineWidth = e.lineWidth || b),
(O.lineDash = e.lineDash),
(O.lineDashOffset = e.lineDashOffset || 0)),
(O.font = n),
Pd(O, e),
(S += v),
I &&
R.setBoundingRect(
new vt(
$i(O.x, e.width, O.textAlign),
qn(O.y, L, O.textBaseline),
h,
L
)
)
}
}),
(t.prototype._updateRichTexts = function () {
var e = this.style,
n = Bd(e),
i = kb(n, e),
a = i.width,
o = i.outerWidth,
s = i.outerHeight,
l = e.padding,
u = e.x || 0,
f = e.y || 0,
h = this._defaultStyle,
c = e.align || h.align,
v = e.verticalAlign || h.verticalAlign,
d = $i(u, o, c),
p = qn(f, s, v),
g = d,
m = p
l && ((g += l[3]), (m += l[0]))
var y = g + a
Uu(e) && this._renderBackground(e, e, d, p, o, s)
for (var _ = !!e.backgroundColor, S = 0; S < i.lines.length; S++) {
for (
var w = i.lines[S],
x = w.tokens,
b = x.length,
T = w.lineHeight,
C = w.width,
M = 0,
D = g,
I = y,
L = b - 1,
P = void 0;
M < b && ((P = x[M]), !P.align || P.align === 'left');
)
this._placeToken(P, e, T, m, D, 'left', _),
(C -= P.width),
(D += P.width),
M++
for (; L >= 0 && ((P = x[L]), P.align === 'right'); )
this._placeToken(P, e, T, m, I, 'right', _),
(C -= P.width),
(I -= P.width),
L--
for (D += (a - (D - g) - (y - I) - C) / 2; M <= L; )
(P = x[M]),
this._placeToken(P, e, T, m, D + P.width / 2, 'center', _),
(D += P.width),
M++
m += T
}
}),
(t.prototype._placeToken = function (e, n, i, a, o, s, l) {
var u = n.rich[e.styleName] || {}
u.text = e.text
var f = e.verticalAlign,
h = a + i / 2
f === 'top'
? (h = a + e.height / 2)
: f === 'bottom' && (h = a + i - e.height / 2)
var c = !e.isLineHolder && Uu(u)
c &&
this._renderBackground(
u,
n,
s === 'right' ? o - e.width : s === 'center' ? o - e.width / 2 : o,
h - e.height / 2,
e.width,
e.height
)
var v = !!u.backgroundColor,
d = e.textPadding
d && ((o = kd(o, s, d)), (h -= e.height / 2 - d[0] - e.innerHeight / 2))
var p = this._getOrCreateChild(Wu),
g = p.createStyle()
p.useStyle(g)
var m = this._defaultStyle,
y = !1,
_ = 0,
S = Od(
'fill' in u ? u.fill : 'fill' in n ? n.fill : ((y = !0), m.fill)
),
w = Ed(
'stroke' in u
? u.stroke
: 'stroke' in n
? n.stroke
: !v && !l && (!m.autoStroke || y)
? ((_ = Dd), m.stroke)
: null
),
x = u.textShadowBlur > 0 || n.textShadowBlur > 0
;(g.text = e.text),
(g.x = o),
(g.y = h),
x &&
((g.shadowBlur = u.textShadowBlur || n.textShadowBlur || 0),
(g.shadowColor =
u.textShadowColor || n.textShadowColor || 'transparent'),
(g.shadowOffsetX = u.textShadowOffsetX || n.textShadowOffsetX || 0),
(g.shadowOffsetY =
u.textShadowOffsetY || n.textShadowOffsetY || 0)),
(g.textAlign = s),
(g.textBaseline = 'middle'),
(g.font = e.font || Yr),
(g.opacity = Oi(u.opacity, n.opacity, 1)),
Pd(g, u),
w &&
((g.lineWidth = Oi(u.lineWidth, n.lineWidth, _)),
(g.lineDash = ht(u.lineDash, n.lineDash)),
(g.lineDashOffset = n.lineDashOffset || 0),
(g.stroke = w)),
S && (g.fill = S)
var b = e.contentWidth,
T = e.contentHeight
p.setBoundingRect(
new vt($i(g.x, b, g.textAlign), qn(g.y, T, g.textBaseline), b, T)
)
}),
(t.prototype._renderBackground = function (e, n, i, a, o, s) {
var l = e.backgroundColor,
u = e.borderWidth,
f = e.borderColor,
h = l && l.image,
c = l && !h,
v = e.borderRadius,
d = this,
p,
g
if (c || e.lineHeight || (u && f)) {
;(p = this._getOrCreateChild(St)),
p.useStyle(p.createStyle()),
(p.style.fill = null)
var m = p.shape
;(m.x = i),
(m.y = a),
(m.width = o),
(m.height = s),
(m.r = v),
p.dirtyShape()
}
if (c) {
var y = p.style
;(y.fill = l || null), (y.fillOpacity = ht(e.fillOpacity, 1))
} else if (h) {
;(g = this._getOrCreateChild(un)),
(g.onload = function () {
d.dirtyStyle()
})
var _ = g.style
;(_.image = l.image),
(_.x = i),
(_.y = a),
(_.width = o),
(_.height = s)
}
if (u && f) {
var y = p.style
;(y.lineWidth = u),
(y.stroke = f),
(y.strokeOpacity = ht(e.strokeOpacity, 1)),
(y.lineDash = e.borderDash),
(y.lineDashOffset = e.borderDashOffset || 0),
(p.strokeContainThreshold = 0),
p.hasFill() &&
p.hasStroke() &&
((y.strokeFirst = !0), (y.lineWidth *= 2))
}
var S = (p || g).style
;(S.shadowBlur = e.shadowBlur || 0),
(S.shadowColor = e.shadowColor || 'transparent'),
(S.shadowOffsetX = e.shadowOffsetX || 0),
(S.shadowOffsetY = e.shadowOffsetY || 0),
(S.opacity = Oi(e.opacity, n.opacity, 1))
}),
(t.makeFont = function (e) {
var n = ''
return (
mT(e) &&
(n = [
e.fontStyle,
e.fontWeight,
gT(e.fontSize),
e.fontFamily || 'sans-serif'
].join(' ')),
(n && Ge(n)) || e.textFont || e.font
)
}),
t
)
})(Qn),
dT = { left: !0, right: 1, center: 1 },
pT = { top: 1, bottom: 1, middle: 1 },
Ld = ['fontStyle', 'fontWeight', 'fontSize', 'fontFamily']
function gT(r) {
return typeof r == 'string' &&
(r.indexOf('px') !== -1 ||
r.indexOf('rem') !== -1 ||
r.indexOf('em') !== -1)
? r
: isNaN(+r)
? Dl + 'px'
: r + 'px'
}
function Pd(r, t) {
for (var e = 0; e < Ld.length; e++) {
var n = Ld[e],
i = t[n]
i != null && (r[n] = i)
}
}
function mT(r) {
return r.fontSize != null || r.fontFamily || r.fontWeight
}
function yT(r) {
return Rd(r), A(r.rich, Rd), r
}
function Rd(r) {
if (r) {
r.font = Id.makeFont(r)
var t = r.align
t === 'middle' && (t = 'center'),
(r.align = t == null || dT[t] ? t : 'left')
var e = r.verticalAlign
e === 'center' && (e = 'middle'),
(r.verticalAlign = e == null || pT[e] ? e : 'top')
var n = r.padding
n && (r.padding = Zv(r.padding))
}
}
function Ed(r, t) {
return r == null || t <= 0 || r === 'transparent' || r === 'none'
? null
: r.image || r.colorStops
? '#000'
: r
}
function Od(r) {
return r == null || r === 'none' ? null : r.image || r.colorStops ? '#000' : r
}
function kd(r, t, e) {
return t === 'right'
? r - e[1]
: t === 'center'
? r + e[3] / 2 - e[1] / 2
: r + e[3]
}
function Bd(r) {
var t = r.text
return t != null && (t += ''), t
}
function Uu(r) {
return !!(
r.backgroundColor ||
r.lineHeight ||
(r.borderWidth && r.borderColor)
)
}
var Et = Id,
ct = wt(),
_T = function (r, t, e, n) {
if (n) {
var i = ct(n)
;(i.dataIndex = e),
(i.dataType = t),
(i.seriesIndex = r),
n.type === 'group' &&
n.traverse(function (a) {
var o = ct(a)
;(o.seriesIndex = r), (o.dataIndex = e), (o.dataType = t)
})
}
},
Nd = 1,
Fd = {},
zd = wt(),
Yu = wt(),
Zu = 0,
Wo = 1,
Uo = 2,
pe = ['emphasis', 'blur', 'select'],
Yo = ['normal', 'emphasis', 'blur', 'select'],
ST = 10,
xT = 9,
hn = 'highlight',
Zo = 'downplay',
na = 'select',
$o = 'unselect',
ia = 'toggleSelect'
function ti(r) {
return r != null && r !== 'none'
}
var Vd = new zi(100)
function Gd(r) {
if (W(r)) {
var t = Vd.get(r)
return t || ((t = Ac(r, -0.1)), Vd.put(r, t)), t
} else if (io(r)) {
var e = N({}, r)
return (
(e.colorStops = G(r.colorStops, function (n) {
return { offset: n.offset, color: Ac(n.color, -0.1) }
})),
e
)
}
return r
}
function Xo(r, t, e) {
r.onHoverStateChange && (r.hoverState || 0) !== e && r.onHoverStateChange(t),
(r.hoverState = e)
}
function Hd(r) {
Xo(r, 'emphasis', Uo)
}
function Wd(r) {
r.hoverState === Uo && Xo(r, 'normal', Zu)
}
function $u(r) {
Xo(r, 'blur', Wo)
}
function Ud(r) {
r.hoverState === Wo && Xo(r, 'normal', Zu)
}
function wT(r) {
r.selected = !0
}
function bT(r) {
r.selected = !1
}
function Yd(r, t, e) {
t(r, e)
}
function fr(r, t, e) {
Yd(r, t, e),
r.isGroup &&
r.traverse(function (n) {
Yd(n, t, e)
})
}
function Zd(r, t) {
switch (t) {
case 'emphasis':
r.hoverState = Uo
break
case 'normal':
r.hoverState = Zu
break
case 'blur':
r.hoverState = Wo
break
case 'select':
r.selected = !0
}
}
function TT(r, t, e, n) {
for (var i = r.style, a = {}, o = 0; o < t.length; o++) {
var s = t[o],
l = i[s]
a[s] = l == null ? n && n[s] : l
}
for (var o = 0; o < r.animators.length; o++) {
var u = r.animators[o]
u.__fromStateTransition &&
u.__fromStateTransition.indexOf(e) < 0 &&
u.targetName === 'style' &&
u.saveTo(a, t)
}
return a
}
function CT(r, t, e, n) {
var i = e && ot(e, 'select') >= 0,
a = !1
if (r instanceof st) {
var o = zd(r),
s = (i && o.selectFill) || o.normalFill,
l = (i && o.selectStroke) || o.normalStroke
if (ti(s) || ti(l)) {
n = n || {}
var u = n.style || {}
u.fill === 'inherit'
? ((a = !0), (n = N({}, n)), (u = N({}, u)), (u.fill = s))
: !ti(u.fill) && ti(s)
? ((a = !0), (n = N({}, n)), (u = N({}, u)), (u.fill = Gd(s)))
: !ti(u.stroke) &&
ti(l) &&
(a || ((n = N({}, n)), (u = N({}, u))), (u.stroke = Gd(l))),
(n.style = u)
}
}
if (n && n.z2 == null) {
a || (n = N({}, n))
var f = r.z2EmphasisLift
n.z2 = r.z2 + (f != null ? f : ST)
}
return n
}
function AT(r, t, e) {
if (e && e.z2 == null) {
e = N({}, e)
var n = r.z2SelectLift
e.z2 = r.z2 + (n != null ? n : xT)
}
return e
}
function MT(r, t, e) {
var n = ot(r.currentStates, t) >= 0,
i = r.style.opacity,
a = n ? null : TT(r, ['opacity'], t, { opacity: 1 })
e = e || {}
var o = e.style || {}
return (
o.opacity == null &&
((e = N({}, e)),
(o = N({ opacity: n ? i : a.opacity * 0.1 }, o)),
(e.style = o)),
e
)
}
function Xu(r, t) {
var e = this.states[r]
if (this.style) {
if (r === 'emphasis') return CT(this, r, t, e)
if (r === 'blur') return MT(this, r, e)
if (r === 'select') return AT(this, r, e)
}
return e
}
function DT(r) {
r.stateProxy = Xu
var t = r.getTextContent(),
e = r.getTextGuideLine()
t && (t.stateProxy = Xu), e && (e.stateProxy = Xu)
}
function $d(r, t) {
!Jd(r, t) && !r.__highByOuter && fr(r, Hd)
}
function Xd(r, t) {
!Jd(r, t) && !r.__highByOuter && fr(r, Wd)
}
function ei(r, t) {
;(r.__highByOuter |= 1 << (t || 0)), fr(r, Hd)
}
function ri(r, t) {
!(r.__highByOuter &= ~(1 << (t || 0))) && fr(r, Wd)
}
function IT(r) {
fr(r, $u)
}
function qd(r) {
fr(r, Ud)
}
function Kd(r) {
fr(r, wT)
}
function Qd(r) {
fr(r, bT)
}
function Jd(r, t) {
return r.__highDownSilentOnTouch && t.zrByTouch
}
function jd(r) {
var t = r.getModel(),
e = [],
n = []
t.eachComponent(function (i, a) {
var o = Yu(a),
s = i === 'series',
l = s ? r.getViewOfSeriesModel(a) : r.getViewOfComponentModel(a)
!s && n.push(l),
o.isBlured &&
(l.group.traverse(function (u) {
Ud(u)
}),
s && e.push(a)),
(o.isBlured = !1)
}),
A(n, function (i) {
i && i.toggleBlurSeries && i.toggleBlurSeries(e, !1, t)
})
}
function qu(r, t, e, n) {
var i = n.getModel()
e = e || 'coordinateSystem'
function a(u, f) {
for (var h = 0; h < f.length; h++) {
var c = u.getItemGraphicEl(f[h])
c && qd(c)
}
}
if (r != null && !(!t || t === 'none')) {
var o = i.getSeriesByIndex(r),
s = o.coordinateSystem
s && s.master && (s = s.master)
var l = []
i.eachSeries(function (u) {
var f = o === u,
h = u.coordinateSystem
h && h.master && (h = h.master)
var c = h && s ? h === s : f
if (
!(
(e === 'series' && !f) ||
(e === 'coordinateSystem' && !c) ||
(t === 'series' && f)
)
) {
var v = n.getViewOfSeriesModel(u)
if (
(v.group.traverse(function (g) {
$u(g)
}),
Zt(t))
)
a(u.getData(), t)
else if (Y(t))
for (var d = xt(t), p = 0; p < d.length; p++)
a(u.getData(d[p]), t[d[p]])
l.push(u), (Yu(u).isBlured = !0)
}
}),
i.eachComponent(function (u, f) {
if (u !== 'series') {
var h = n.getViewOfComponentModel(f)
h && h.toggleBlurSeries && h.toggleBlurSeries(l, !0, i)
}
})
}
}
function Ku(r, t, e) {
if (!(r == null || t == null)) {
var n = e.getModel().getComponent(r, t)
if (!!n) {
Yu(n).isBlured = !0
var i = e.getViewOfComponentModel(n)
!i ||
!i.focusBlurEnabled ||
i.group.traverse(function (a) {
$u(a)
})
}
}
}
function LT(r, t, e) {
var n = r.seriesIndex,
i = r.getData(t.dataType)
if (!!i) {
var a = Jr(i, t)
a = (z(a) ? a[0] : a) || 0
var o = i.getItemGraphicEl(a)
if (!o)
for (var s = i.count(), l = 0; !o && l < s; ) o = i.getItemGraphicEl(l++)
if (o) {
var u = ct(o)
qu(n, u.focus, u.blurScope, e)
} else {
var f = r.get(['emphasis', 'focus']),
h = r.get(['emphasis', 'blurScope'])
f != null && qu(n, f, h, e)
}
}
}
function Qu(r, t, e, n) {
var i = { focusSelf: !1, dispatchers: null }
if (r == null || r === 'series' || t == null || e == null) return i
var a = n.getModel().getComponent(r, t)
if (!a) return i
var o = n.getViewOfComponentModel(a)
if (!o || !o.findHighDownDispatchers) return i
for (var s = o.findHighDownDispatchers(e), l, u = 0; u < s.length; u++)
if (ct(s[u]).focus === 'self') {
l = !0
break
}
return { focusSelf: l, dispatchers: s }
}
function PT(r, t, e) {
var n = ct(r),
i = Qu(n.componentMainType, n.componentIndex, n.componentHighDownName, e),
a = i.dispatchers,
o = i.focusSelf
a
? (o && Ku(n.componentMainType, n.componentIndex, e),
A(a, function (s) {
return $d(s, t)
}))
: (qu(n.seriesIndex, n.focus, n.blurScope, e),
n.focus === 'self' && Ku(n.componentMainType, n.componentIndex, e),
$d(r, t))
}
function RT(r, t, e) {
jd(e)
var n = ct(r),
i = Qu(
n.componentMainType,
n.componentIndex,
n.componentHighDownName,
e
).dispatchers
i
? A(i, function (a) {
return Xd(a, t)
})
: Xd(r, t)
}
function ET(r, t, e) {
if (!!ju(t)) {
var n = t.dataType,
i = r.getData(n),
a = Jr(i, t)
z(a) || (a = [a]),
r[t.type === ia ? 'toggleSelect' : t.type === na ? 'select' : 'unselect'](
a,
n
)
}
}
function tp(r) {
var t = r.getAllData()
A(t, function (e) {
var n = e.data,
i = e.type
n.eachItemGraphicEl(function (a, o) {
r.isSelected(o, i) ? Kd(a) : Qd(a)
})
})
}
function OT(r) {
var t = []
return (
r.eachSeries(function (e) {
var n = e.getAllData()
A(n, function (i) {
i.data
var a = i.type,
o = e.getSelectedDataIndices()
if (o.length > 0) {
var s = { dataIndex: o, seriesIndex: e.seriesIndex }
a != null && (s.dataType = a), t.push(s)
}
})
}),
t
)
}
function qo(r, t, e) {
rp(r, !0), fr(r, DT), BT(r, t, e)
}
function kT(r) {
rp(r, !1)
}
function aa(r, t, e, n) {
n ? kT(r) : qo(r, t, e)
}
function BT(r, t, e) {
var n = ct(r)
t != null ? ((n.focus = t), (n.blurScope = e)) : n.focus && (n.focus = null)
}
var ep = ['emphasis', 'blur', 'select'],
NT = {
itemStyle: 'getItemStyle',
lineStyle: 'getLineStyle',
areaStyle: 'getAreaStyle'
}
function Ko(r, t, e, n) {
e = e || 'itemStyle'
for (var i = 0; i < ep.length; i++) {
var a = ep[i],
o = t.getModel([a, e]),
s = r.ensureState(a)
s.style = n ? n(o) : o[NT[e]]()
}
}
function rp(r, t) {
var e = t === !1,
n = r
r.highDownSilentOnTouch &&
(n.__highDownSilentOnTouch = r.highDownSilentOnTouch),
(!e || n.__highDownDispatcher) &&
((n.__highByOuter = n.__highByOuter || 0), (n.__highDownDispatcher = !e))
}
function Ju(r) {
return !!(r && r.__highDownDispatcher)
}
function FT(r) {
var t = Fd[r]
return t == null && Nd <= 32 && (t = Fd[r] = Nd++), t
}
function ju(r) {
var t = r.type
return t === na || t === $o || t === ia
}
function np(r) {
var t = r.type
return t === hn || t === Zo
}
function zT(r) {
var t = zd(r)
;(t.normalFill = r.style.fill), (t.normalStroke = r.style.stroke)
var e = r.states.select || {}
;(t.selectFill = (e.style && e.style.fill) || null),
(t.selectStroke = (e.style && e.style.stroke) || null)
}
var ni = ur.CMD,
VT = [[], [], []],
ip = Math.sqrt,
GT = Math.atan2
function ap(r, t) {
if (!!t) {
var e = r.data,
n = r.len(),
i,
a,
o,
s,
l,
u,
f = ni.M,
h = ni.C,
c = ni.L,
v = ni.R,
d = ni.A,
p = ni.Q
for (o = 0, s = 0; o < n; ) {
switch (((i = e[o++]), (s = o), (a = 0), i)) {
case f:
a = 1
break
case c:
a = 1
break
case h:
a = 3
break
case p:
a = 2
break
case d:
var g = t[4],
m = t[5],
y = ip(t[0] * t[0] + t[1] * t[1]),
_ = ip(t[2] * t[2] + t[3] * t[3]),
S = GT(-t[1] / _, t[0] / y)
;(e[o] *= y),
(e[o++] += g),
(e[o] *= _),
(e[o++] += m),
(e[o++] *= y),
(e[o++] *= _),
(e[o++] += S),
(e[o++] += S),
(o += 2),
(s = o)
break
case v:
;(u[0] = e[o++]),
(u[1] = e[o++]),
ue(u, u, t),
(e[s++] = u[0]),
(e[s++] = u[1]),
(u[0] += e[o++]),
(u[1] += e[o++]),
ue(u, u, t),
(e[s++] = u[0]),
(e[s++] = u[1])
}
for (l = 0; l < a; l++) {
var w = VT[l]
;(w[0] = e[o++]),
(w[1] = e[o++]),
ue(w, w, t),
(e[s++] = w[0]),
(e[s++] = w[1])
}
}
r.increaseVersion()
}
}
var tf = Math.sqrt,
Qo = Math.sin,
Jo = Math.cos,
oa = Math.PI
function op(r) {
return Math.sqrt(r[0] * r[0] + r[1] * r[1])
}
function ef(r, t) {
return (r[0] * t[0] + r[1] * t[1]) / (op(r) * op(t))
}
function sp(r, t) {
return (r[0] * t[1] < r[1] * t[0] ? -1 : 1) * Math.acos(ef(r, t))
}
function lp(r, t, e, n, i, a, o, s, l, u, f) {
var h = l * (oa / 180),
c = (Jo(h) * (r - e)) / 2 + (Qo(h) * (t - n)) / 2,
v = (-1 * Qo(h) * (r - e)) / 2 + (Jo(h) * (t - n)) / 2,
d = (c * c) / (o * o) + (v * v) / (s * s)
d > 1 && ((o *= tf(d)), (s *= tf(d)))
var p =
(i === a ? -1 : 1) *
tf(
(o * o * (s * s) - o * o * (v * v) - s * s * (c * c)) /
(o * o * (v * v) + s * s * (c * c))
) || 0,
g = (p * o * v) / s,
m = (p * -s * c) / o,
y = (r + e) / 2 + Jo(h) * g - Qo(h) * m,
_ = (t + n) / 2 + Qo(h) * g + Jo(h) * m,
S = sp([1, 0], [(c - g) / o, (v - m) / s]),
w = [(c - g) / o, (v - m) / s],
x = [(-1 * c - g) / o, (-1 * v - m) / s],
b = sp(w, x)
if ((ef(w, x) <= -1 && (b = oa), ef(w, x) >= 1 && (b = 0), b < 0)) {
var T = Math.round((b / oa) * 1e6) / 1e6
b = oa * 2 + (T % 2) * oa
}
f.addData(u, y, _, o, s, S, b, h, a)
}
var HT = /([mlvhzcqtsa])([^mlvhzcqtsa]*)/gi,
WT = /-?([0-9]*\.)?[0-9]+([eE]-?[0-9]+)?/g
function UT(r) {
var t = new ur()
if (!r) return t
var e = 0,
n = 0,
i = e,
a = n,
o,
s = ur.CMD,
l = r.match(HT)
if (!l) return t
for (var u = 0; u < l.length; u++) {
for (
var f = l[u],
h = f.charAt(0),
c = void 0,
v = f.match(WT) || [],
d = v.length,
p = 0;
p < d;
p++
)
v[p] = parseFloat(v[p])
for (var g = 0; g < d; ) {
var m = void 0,
y = void 0,
_ = void 0,
S = void 0,
w = void 0,
x = void 0,
b = void 0,
T = e,
C = n,
M = void 0,
D = void 0
switch (h) {
case 'l':
;(e += v[g++]), (n += v[g++]), (c = s.L), t.addData(c, e, n)
break
case 'L':
;(e = v[g++]), (n = v[g++]), (c = s.L), t.addData(c, e, n)
break
case 'm':
;(e += v[g++]),
(n += v[g++]),
(c = s.M),
t.addData(c, e, n),
(i = e),
(a = n),
(h = 'l')
break
case 'M':
;(e = v[g++]),
(n = v[g++]),
(c = s.M),
t.addData(c, e, n),
(i = e),
(a = n),
(h = 'L')
break
case 'h':
;(e += v[g++]), (c = s.L), t.addData(c, e, n)
break
case 'H':
;(e = v[g++]), (c = s.L), t.addData(c, e, n)
break
case 'v':
;(n += v[g++]), (c = s.L), t.addData(c, e, n)
break
case 'V':
;(n = v[g++]), (c = s.L), t.addData(c, e, n)
break
case 'C':
;(c = s.C),
t.addData(c, v[g++], v[g++], v[g++], v[g++], v[g++], v[g++]),
(e = v[g - 2]),
(n = v[g - 1])
break
case 'c':
;(c = s.C),
t.addData(
c,
v[g++] + e,
v[g++] + n,
v[g++] + e,
v[g++] + n,
v[g++] + e,
v[g++] + n
),
(e += v[g - 2]),
(n += v[g - 1])
break
case 'S':
;(m = e),
(y = n),
(M = t.len()),
(D = t.data),
o === s.C && ((m += e - D[M - 4]), (y += n - D[M - 3])),
(c = s.C),
(T = v[g++]),
(C = v[g++]),
(e = v[g++]),
(n = v[g++]),
t.addData(c, m, y, T, C, e, n)
break
case 's':
;(m = e),
(y = n),
(M = t.len()),
(D = t.data),
o === s.C && ((m += e - D[M - 4]), (y += n - D[M - 3])),
(c = s.C),
(T = e + v[g++]),
(C = n + v[g++]),
(e += v[g++]),
(n += v[g++]),
t.addData(c, m, y, T, C, e, n)
break
case 'Q':
;(T = v[g++]),
(C = v[g++]),
(e = v[g++]),
(n = v[g++]),
(c = s.Q),
t.addData(c, T, C, e, n)
break
case 'q':
;(T = v[g++] + e),
(C = v[g++] + n),
(e += v[g++]),
(n += v[g++]),
(c = s.Q),
t.addData(c, T, C, e, n)
break
case 'T':
;(m = e),
(y = n),
(M = t.len()),
(D = t.data),
o === s.Q && ((m += e - D[M - 4]), (y += n - D[M - 3])),
(e = v[g++]),
(n = v[g++]),
(c = s.Q),
t.addData(c, m, y, e, n)
break
case 't':
;(m = e),
(y = n),
(M = t.len()),
(D = t.data),
o === s.Q && ((m += e - D[M - 4]), (y += n - D[M - 3])),
(e += v[g++]),
(n += v[g++]),
(c = s.Q),
t.addData(c, m, y, e, n)
break
case 'A':
;(_ = v[g++]),
(S = v[g++]),
(w = v[g++]),
(x = v[g++]),
(b = v[g++]),
(T = e),
(C = n),
(e = v[g++]),
(n = v[g++]),
(c = s.A),
lp(T, C, e, n, x, b, _, S, w, c, t)
break
case 'a':
;(_ = v[g++]),
(S = v[g++]),
(w = v[g++]),
(x = v[g++]),
(b = v[g++]),
(T = e),
(C = n),
(e += v[g++]),
(n += v[g++]),
(c = s.A),
lp(T, C, e, n, x, b, _, S, w, c, t)
break
}
}
;(h === 'z' || h === 'Z') && ((c = s.Z), t.addData(c), (e = i), (n = a)),
(o = c)
}
return t.toStatic(), t
}
var up = (function (r) {
B(t, r)
function t() {
return (r !== null && r.apply(this, arguments)) || this
}
return (t.prototype.applyTransform = function (e) {}), t
})(st)
function fp(r) {
return r.setData != null
}
function hp(r, t) {
var e = UT(r),
n = N({}, t)
return (
(n.buildPath = function (i) {
if (fp(i)) {
i.setData(e.data)
var a = i.getContext()
a && i.rebuildPath(a, 1)
} else {
var a = i
e.rebuildPath(a, 1)
}
}),
(n.applyTransform = function (i) {
ap(e, i), this.dirtyShape()
}),
n
)
}
function YT(r, t) {
return new up(hp(r, t))
}
function ZT(r, t) {
var e = hp(r, t),
n = (function (i) {
B(a, i)
function a(o) {
var s = i.call(this, o) || this
return (
(s.applyTransform = e.applyTransform), (s.buildPath = e.buildPath), s
)
}
return a
})(up)
return n
}
function $T(r, t) {
for (var e = [], n = r.length, i = 0; i < n; i++) {
var a = r[i]
e.push(a.getUpdatedPathProxy(!0))
}
var o = new st(t)
return (
o.createPathProxy(),
(o.buildPath = function (s) {
if (fp(s)) {
s.appendPath(e)
var l = s.getContext()
l && s.rebuildPath(l, 1)
}
}),
o
)
}
function rf(r, t) {
t = t || {}
var e = new st()
return (
r.shape && e.setShape(r.shape),
e.setStyle(r.style),
t.bakeTransform
? ap(e.path, r.getComputedTransform())
: t.toLocal
? e.setLocalTransform(r.getComputedTransform())
: e.copyTransform(r),
(e.buildPath = r.buildPath),
(e.applyTransform = e.applyTransform),
(e.z = r.z),
(e.z2 = r.z2),
(e.zlevel = r.zlevel),
e
)
}
var XT = (function () {
function r() {
;(this.cx = 0), (this.cy = 0), (this.r = 0)
}
return r
})(),
vp = (function (r) {
B(t, r)
function t(e) {
return r.call(this, e) || this
}
return (
(t.prototype.getDefaultShape = function () {
return new XT()
}),
(t.prototype.buildPath = function (e, n) {
e.moveTo(n.cx + n.r, n.cy), e.arc(n.cx, n.cy, n.r, 0, Math.PI * 2)
}),
t
)
})(st)
vp.prototype.type = 'circle'
var nf = vp,
qT = (function () {
function r() {
;(this.cx = 0), (this.cy = 0), (this.rx = 0), (this.ry = 0)
}
return r
})(),
cp = (function (r) {
B(t, r)
function t(e) {
return r.call(this, e) || this
}
return (
(t.prototype.getDefaultShape = function () {
return new qT()
}),
(t.prototype.buildPath = function (e, n) {
var i = 0.5522848,
a = n.cx,
o = n.cy,
s = n.rx,
l = n.ry,
u = s * i,
f = l * i
e.moveTo(a - s, o),
e.bezierCurveTo(a - s, o - f, a - u, o - l, a, o - l),
e.bezierCurveTo(a + u, o - l, a + s, o - f, a + s, o),
e.bezierCurveTo(a + s, o + f, a + u, o + l, a, o + l),
e.bezierCurveTo(a - u, o + l, a - s, o + f, a - s, o),
e.closePath()
}),
t
)
})(st)
cp.prototype.type = 'ellipse'
var dp = cp,
pp = Math.PI,
af = pp * 2,
vn = Math.sin,
ii = Math.cos,
KT = Math.acos,
Ht = Math.atan2,
gp = Math.abs,
sa = Math.sqrt,
la = Math.max,
Xe = Math.min,
De = 1e-4
function QT(r, t, e, n, i, a, o, s) {
var l = e - r,
u = n - t,
f = o - i,
h = s - a,
c = h * l - f * u
if (!(c * c < De))
return (c = (f * (t - a) - h * (r - i)) / c), [r + c * l, t + c * u]
}
function jo(r, t, e, n, i, a, o) {
var s = r - e,
l = t - n,
u = (o ? a : -a) / sa(s * s + l * l),
f = u * l,
h = -u * s,
c = r + f,
v = t + h,
d = e + f,
p = n + h,
g = (c + d) / 2,
m = (v + p) / 2,
y = d - c,
_ = p - v,
S = y * y + _ * _,
w = i - a,
x = c * p - d * v,
b = (_ < 0 ? -1 : 1) * sa(la(0, w * w * S - x * x)),
T = (x * _ - y * b) / S,
C = (-x * y - _ * b) / S,
M = (x * _ + y * b) / S,
D = (-x * y + _ * b) / S,
I = T - g,
L = C - m,
P = M - g,
R = D - m
return (
I * I + L * L > P * P + R * R && ((T = M), (C = D)),
{ cx: T, cy: C, x0: -f, y0: -h, x1: T * (i / w - 1), y1: C * (i / w - 1) }
)
}
function JT(r) {
var t
if (z(r)) {
var e = r.length
if (!e) return r
e === 1
? (t = [r[0], r[0], 0, 0])
: e === 2
? (t = [r[0], r[0], r[1], r[1]])
: e === 3
? (t = r.concat(r[2]))
: (t = r)
} else t = [r, r, r, r]
return t
}
function jT(r, t) {
var e,
n = la(t.r, 0),
i = la(t.r0 || 0, 0),
a = n > 0,
o = i > 0
if (!(!a && !o)) {
if ((a || ((n = i), (i = 0)), i > n)) {
var s = n
;(n = i), (i = s)
}
var l = t.startAngle,
u = t.endAngle
if (!(isNaN(l) || isNaN(u))) {
var f = t.cx,
h = t.cy,
c = !!t.clockwise,
v = gp(u - l),
d = v > af && v % af
if ((d > De && (v = d), !(n > De))) r.moveTo(f, h)
else if (v > af - De)
r.moveTo(f + n * ii(l), h + n * vn(l)),
r.arc(f, h, n, l, u, !c),
i > De &&
(r.moveTo(f + i * ii(u), h + i * vn(u)), r.arc(f, h, i, u, l, c))
else {
var p = void 0,
g = void 0,
m = void 0,
y = void 0,
_ = void 0,
S = void 0,
w = void 0,
x = void 0,
b = void 0,
T = void 0,
C = void 0,
M = void 0,
D = void 0,
I = void 0,
L = void 0,
P = void 0,
R = n * ii(l),
O = n * vn(l),
U = i * ii(u),
k = i * vn(u),
F = v > De
if (F) {
var H = t.cornerRadius
H && ((e = JT(H)), (p = e[0]), (g = e[1]), (m = e[2]), (y = e[3]))
var $ = gp(n - i) / 2
if (
((_ = Xe($, m)),
(S = Xe($, y)),
(w = Xe($, p)),
(x = Xe($, g)),
(C = b = la(_, S)),
(M = T = la(w, x)),
(b > De || T > De) &&
((D = n * ii(u)),
(I = n * vn(u)),
(L = i * ii(l)),
(P = i * vn(l)),
v < pp))
) {
var J = QT(R, O, L, P, D, I, U, k)
if (J) {
var et = R - J[0],
ft = O - J[1],
Ct = D - J[0],
mt = I - J[1],
zt =
1 /
vn(
KT(
(et * Ct + ft * mt) /
(sa(et * et + ft * ft) * sa(Ct * Ct + mt * mt))
) / 2
),
Vt = sa(J[0] * J[0] + J[1] * J[1])
;(C = Xe(b, (n - Vt) / (zt + 1))),
(M = Xe(T, (i - Vt) / (zt - 1)))
}
}
}
if (!F) r.moveTo(f + R, h + O)
else if (C > De) {
var It = Xe(m, C),
bt = Xe(y, C),
K = jo(L, P, R, O, n, It, c),
it = jo(D, I, U, k, n, bt, c)
r.moveTo(f + K.cx + K.x0, h + K.cy + K.y0),
C < b && It === bt
? r.arc(
f + K.cx,
h + K.cy,
C,
Ht(K.y0, K.x0),
Ht(it.y0, it.x0),
!c
)
: (It > 0 &&
r.arc(
f + K.cx,
h + K.cy,
It,
Ht(K.y0, K.x0),
Ht(K.y1, K.x1),
!c
),
r.arc(
f,
h,
n,
Ht(K.cy + K.y1, K.cx + K.x1),
Ht(it.cy + it.y1, it.cx + it.x1),
!c
),
bt > 0 &&
r.arc(
f + it.cx,
h + it.cy,
bt,
Ht(it.y1, it.x1),
Ht(it.y0, it.x0),
!c
))
} else r.moveTo(f + R, h + O), r.arc(f, h, n, l, u, !c)
if (!(i > De) || !F) r.lineTo(f + U, h + k)
else if (M > De) {
var It = Xe(p, M),
bt = Xe(g, M),
K = jo(U, k, D, I, i, -bt, c),
it = jo(R, O, L, P, i, -It, c)
r.lineTo(f + K.cx + K.x0, h + K.cy + K.y0),
M < T && It === bt
? r.arc(
f + K.cx,
h + K.cy,
M,
Ht(K.y0, K.x0),
Ht(it.y0, it.x0),
!c
)
: (bt > 0 &&
r.arc(
f + K.cx,
h + K.cy,
bt,
Ht(K.y0, K.x0),
Ht(K.y1, K.x1),
!c
),
r.arc(
f,
h,
i,
Ht(K.cy + K.y1, K.cx + K.x1),
Ht(it.cy + it.y1, it.cx + it.x1),
c
),
It > 0 &&
r.arc(
f + it.cx,
h + it.cy,
It,
Ht(it.y1, it.x1),
Ht(it.y0, it.x0),
!c
))
} else r.lineTo(f + U, h + k), r.arc(f, h, i, u, l, c)
}
r.closePath()
}
}
}
var tC = (function () {
function r() {
;(this.cx = 0),
(this.cy = 0),
(this.r0 = 0),
(this.r = 0),
(this.startAngle = 0),
(this.endAngle = Math.PI * 2),
(this.clockwise = !0),
(this.cornerRadius = 0)
}
return r
})(),
mp = (function (r) {
B(t, r)
function t(e) {
return r.call(this, e) || this
}
return (
(t.prototype.getDefaultShape = function () {
return new tC()
}),
(t.prototype.buildPath = function (e, n) {
jT(e, n)
}),
(t.prototype.isZeroArea = function () {
return (
this.shape.startAngle === this.shape.endAngle ||
this.shape.r === this.shape.r0
)
}),
t
)
})(st)
mp.prototype.type = 'sector'
var hr = mp,
eC = (function () {
function r() {
;(this.cx = 0), (this.cy = 0), (this.r = 0), (this.r0 = 0)
}
return r
})(),
yp = (function (r) {
B(t, r)
function t(e) {
return r.call(this, e) || this
}
return (
(t.prototype.getDefaultShape = function () {
return new eC()
}),
(t.prototype.buildPath = function (e, n) {
var i = n.cx,
a = n.cy,
o = Math.PI * 2
e.moveTo(i + n.r, a),
e.arc(i, a, n.r, 0, o, !1),
e.moveTo(i + n.r0, a),
e.arc(i, a, n.r0, 0, o, !0)
}),
t
)
})(st)
yp.prototype.type = 'ring'
var _p = yp
function rC(r, t, e, n) {
var i = [],
a = [],
o = [],
s = [],
l,
u,
f,
h
if (n) {
;(f = [1 / 0, 1 / 0]), (h = [-1 / 0, -1 / 0])
for (var c = 0, v = r.length; c < v; c++) zn(f, f, r[c]), Vn(h, h, r[c])
zn(f, f, n[0]), Vn(h, h, n[1])
}
for (var c = 0, v = r.length; c < v; c++) {
var d = r[c]
if (e) (l = r[c ? c - 1 : v - 1]), (u = r[(c + 1) % v])
else if (c === 0 || c === v - 1) {
i.push(Px(r[c]))
continue
} else (l = r[c - 1]), (u = r[c + 1])
Rx(a, u, l), Ol(a, a, t)
var p = kl(d, l),
g = kl(d, u),
m = p + g
m !== 0 && ((p /= m), (g /= m)), Ol(o, a, -p), Ol(s, a, g)
var y = qv([], d, o),
_ = qv([], d, s)
n && (Vn(y, y, f), zn(y, y, h), Vn(_, _, f), zn(_, _, h)),
i.push(y),
i.push(_)
}
return e && i.push(i.shift()), i
}
function Sp(r, t, e) {
var n = t.smooth,
i = t.points
if (i && i.length >= 2) {
if (n) {
var a = rC(i, n, e, t.smoothConstraint)
r.moveTo(i[0][0], i[0][1])
for (var o = i.length, s = 0; s < (e ? o : o - 1); s++) {
var l = a[s * 2],
u = a[s * 2 + 1],
f = i[(s + 1) % o]
r.bezierCurveTo(l[0], l[1], u[0], u[1], f[0], f[1])
}
} else {
r.moveTo(i[0][0], i[0][1])
for (var s = 1, h = i.length; s < h; s++) r.lineTo(i[s][0], i[s][1])
}
e && r.closePath()
}
}
var nC = (function () {
function r() {
;(this.points = null), (this.smooth = 0), (this.smoothConstraint = null)
}
return r
})(),
xp = (function (r) {
B(t, r)
function t(e) {
return r.call(this, e) || this
}
return (
(t.prototype.getDefaultShape = function () {
return new nC()
}),
(t.prototype.buildPath = function (e, n) {
Sp(e, n, !0)
}),
t
)
})(st)
xp.prototype.type = 'polygon'
var ua = xp,
iC = (function () {
function r() {
;(this.points = null),
(this.percent = 1),
(this.smooth = 0),
(this.smoothConstraint = null)
}
return r
})(),
wp = (function (r) {
B(t, r)
function t(e) {
return r.call(this, e) || this
}
return (
(t.prototype.getDefaultStyle = function () {
return { stroke: '#000', fill: null }
}),
(t.prototype.getDefaultShape = function () {
return new iC()
}),
(t.prototype.buildPath = function (e, n) {
Sp(e, n, !1)
}),
t
)
})(st)
wp.prototype.type = 'polyline'
var ai = wp,
aC = {},
oC = (function () {
function r() {
;(this.x1 = 0),
(this.y1 = 0),
(this.x2 = 0),
(this.y2 = 0),
(this.percent = 1)
}
return r
})(),
bp = (function (r) {
B(t, r)
function t(e) {
return r.call(this, e) || this
}
return (
(t.prototype.getDefaultStyle = function () {
return { stroke: '#000', fill: null }
}),
(t.prototype.getDefaultShape = function () {
return new oC()
}),
(t.prototype.buildPath = function (e, n) {
var i, a, o, s
if (this.subPixelOptimize) {
var l = Td(aC, n, this.style)
;(i = l.x1), (a = l.y1), (o = l.x2), (s = l.y2)
} else (i = n.x1), (a = n.y1), (o = n.x2), (s = n.y2)
var u = n.percent
u !== 0 &&
(e.moveTo(i, a),
u < 1 && ((o = i * (1 - u) + o * u), (s = a * (1 - u) + s * u)),
e.lineTo(o, s))
}),
(t.prototype.pointAt = function (e) {
var n = this.shape
return [n.x1 * (1 - e) + n.x2 * e, n.y1 * (1 - e) + n.y2 * e]
}),
t
)
})(st)
bp.prototype.type = 'line'
var cn = bp,
ee = [],
sC = (function () {
function r() {
;(this.x1 = 0),
(this.y1 = 0),
(this.x2 = 0),
(this.y2 = 0),
(this.cpx1 = 0),
(this.cpy1 = 0),
(this.percent = 1)
}
return r
})()
function Tp(r, t, e) {
var n = r.cpx2,
i = r.cpy2
return n != null || i != null
? [
(e ? pc : Rt)(r.x1, r.cpx1, r.cpx2, r.x2, t),
(e ? pc : Rt)(r.y1, r.cpy1, r.cpy2, r.y2, t)
]
: [
(e ? yc : Gt)(r.x1, r.cpx1, r.x2, t),
(e ? yc : Gt)(r.y1, r.cpy1, r.y2, t)
]
}
var Cp = (function (r) {
B(t, r)
function t(e) {
return r.call(this, e) || this
}
return (
(t.prototype.getDefaultStyle = function () {
return { stroke: '#000', fill: null }
}),
(t.prototype.getDefaultShape = function () {
return new sC()
}),
(t.prototype.buildPath = function (e, n) {
var i = n.x1,
a = n.y1,
o = n.x2,
s = n.y2,
l = n.cpx1,
u = n.cpy1,
f = n.cpx2,
h = n.cpy2,
c = n.percent
c !== 0 &&
(e.moveTo(i, a),
f == null || h == null
? (c < 1 &&
(go(i, l, o, c, ee),
(l = ee[1]),
(o = ee[2]),
go(a, u, s, c, ee),
(u = ee[1]),
(s = ee[2])),
e.quadraticCurveTo(l, u, o, s))
: (c < 1 &&
(br(i, l, f, o, c, ee),
(l = ee[1]),
(f = ee[2]),
(o = ee[3]),
br(a, u, h, s, c, ee),
(u = ee[1]),
(h = ee[2]),
(s = ee[3])),
e.bezierCurveTo(l, u, f, h, o, s)))
}),
(t.prototype.pointAt = function (e) {
return Tp(this.shape, e, !1)
}),
(t.prototype.tangentAt = function (e) {
var n = Tp(this.shape, e, !0)
return kx(n, n)
}),
t
)
})(st)
Cp.prototype.type = 'bezier-curve'
var Ap = Cp,
lC = (function () {
function r() {
;(this.cx = 0),
(this.cy = 0),
(this.r = 0),
(this.startAngle = 0),
(this.endAngle = Math.PI * 2),
(this.clockwise = !0)
}
return r
})(),
Mp = (function (r) {
B(t, r)
function t(e) {
return r.call(this, e) || this
}
return (
(t.prototype.getDefaultStyle = function () {
return { stroke: '#000', fill: null }
}),
(t.prototype.getDefaultShape = function () {
return new lC()
}),
(t.prototype.buildPath = function (e, n) {
var i = n.cx,
a = n.cy,
o = Math.max(n.r, 0),
s = n.startAngle,
l = n.endAngle,
u = n.clockwise,
f = Math.cos(s),
h = Math.sin(s)
e.moveTo(f * o + i, h * o + a), e.arc(i, a, o, s, l, !u)
}),
t
)
})(st)
Mp.prototype.type = 'arc'
var of = Mp,
uC = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (e.type = 'compound'), e
}
return (
(t.prototype._updatePathDirty = function () {
for (
var e = this.shape.paths, n = this.shapeChanged(), i = 0;
i < e.length;
i++
)
n = n || e[i].shapeChanged()
n && this.dirtyShape()
}),
(t.prototype.beforeBrush = function () {
this._updatePathDirty()
for (
var e = this.shape.paths || [], n = this.getGlobalScale(), i = 0;
i < e.length;
i++
)
e[i].path || e[i].createPathProxy(),
e[i].path.setScale(n[0], n[1], e[i].segmentIgnoreThreshold)
}),
(t.prototype.buildPath = function (e, n) {
for (var i = n.paths || [], a = 0; a < i.length; a++)
i[a].buildPath(e, i[a].shape, !0)
}),
(t.prototype.afterBrush = function () {
for (var e = this.shape.paths || [], n = 0; n < e.length; n++)
e[n].pathUpdated()
}),
(t.prototype.getBoundingRect = function () {
return (
this._updatePathDirty.call(this),
st.prototype.getBoundingRect.call(this)
)
}),
t
)
})(st),
fC = uC,
hC = (function () {
function r(t) {
this.colorStops = t || []
}
return (
(r.prototype.addColorStop = function (t, e) {
this.colorStops.push({ offset: t, color: e })
}),
r
)
})(),
Dp = hC,
vC = (function (r) {
B(t, r)
function t(e, n, i, a, o, s) {
var l = r.call(this, o) || this
return (
(l.x = e == null ? 0 : e),
(l.y = n == null ? 0 : n),
(l.x2 = i == null ? 1 : i),
(l.y2 = a == null ? 0 : a),
(l.type = 'linear'),
(l.global = s || !1),
l
)
}
return t
})(Dp),
Ip = vC,
cC = (function (r) {
B(t, r)
function t(e, n, i, a, o) {
var s = r.call(this, a) || this
return (
(s.x = e == null ? 0.5 : e),
(s.y = n == null ? 0.5 : n),
(s.r = i == null ? 0.5 : i),
(s.type = 'radial'),
(s.global = o || !1),
s
)
}
return t
})(Dp),
dC = cC,
dn = [0, 0],
pn = [0, 0],
ts = new Z(),
es = new Z(),
pC = (function () {
function r(t, e) {
;(this._corners = []), (this._axes = []), (this._origin = [0, 0])
for (var n = 0; n < 4; n++) this._corners[n] = new Z()
for (var n = 0; n < 2; n++) this._axes[n] = new Z()
t && this.fromBoundingRect(t, e)
}
return (
(r.prototype.fromBoundingRect = function (t, e) {
var n = this._corners,
i = this._axes,
a = t.x,
o = t.y,
s = a + t.width,
l = o + t.height
if ((n[0].set(a, o), n[1].set(s, o), n[2].set(s, l), n[3].set(a, l), e))
for (var u = 0; u < 4; u++) n[u].transform(e)
Z.sub(i[0], n[1], n[0]),
Z.sub(i[1], n[3], n[0]),
i[0].normalize(),
i[1].normalize()
for (var u = 0; u < 2; u++) this._origin[u] = i[u].dot(n[0])
}),
(r.prototype.intersect = function (t, e) {
var n = !0,
i = !e
return (
ts.set(1 / 0, 1 / 0),
es.set(0, 0),
(!this._intersectCheckOneSide(this, t, ts, es, i, 1) &&
((n = !1), i)) ||
(!this._intersectCheckOneSide(t, this, ts, es, i, -1) &&
((n = !1), i)) ||
i ||
Z.copy(e, n ? ts : es),
n
)
}),
(r.prototype._intersectCheckOneSide = function (t, e, n, i, a, o) {
for (var s = !0, l = 0; l < 2; l++) {
var u = this._axes[l]
if (
(this._getProjMinMaxOnAxis(l, t._corners, dn),
this._getProjMinMaxOnAxis(l, e._corners, pn),
dn[1] < pn[0] || dn[0] > pn[1])
) {
if (((s = !1), a)) return s
var f = Math.abs(pn[0] - dn[1]),
h = Math.abs(dn[0] - pn[1])
Math.min(f, h) > i.len() &&
(f < h ? Z.scale(i, u, -f * o) : Z.scale(i, u, h * o))
} else if (n) {
var f = Math.abs(pn[0] - dn[1]),
h = Math.abs(dn[0] - pn[1])
Math.min(f, h) < n.len() &&
(f < h ? Z.scale(n, u, f * o) : Z.scale(n, u, -h * o))
}
}
return s
}),
(r.prototype._getProjMinMaxOnAxis = function (t, e, n) {
for (
var i = this._axes[t],
a = this._origin,
o = e[0].dot(i) + a[t],
s = o,
l = o,
u = 1;
u < e.length;
u++
) {
var f = e[u].dot(i) + a[t]
;(s = Math.min(f, s)), (l = Math.max(f, l))
}
;(n[0] = s), (n[1] = l)
}),
r
)
})(),
rs = pC,
gC = [],
mC = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (
(e.notClear = !0),
(e.incremental = !0),
(e._displayables = []),
(e._temporaryDisplayables = []),
(e._cursor = 0),
e
)
}
return (
(t.prototype.traverse = function (e, n) {
e.call(n, this)
}),
(t.prototype.useStyle = function () {
this.style = {}
}),
(t.prototype.getCursor = function () {
return this._cursor
}),
(t.prototype.innerAfterBrush = function () {
this._cursor = this._displayables.length
}),
(t.prototype.clearDisplaybles = function () {
;(this._displayables = []),
(this._temporaryDisplayables = []),
(this._cursor = 0),
this.markRedraw(),
(this.notClear = !1)
}),
(t.prototype.clearTemporalDisplayables = function () {
this._temporaryDisplayables = []
}),
(t.prototype.addDisplayable = function (e, n) {
n ? this._temporaryDisplayables.push(e) : this._displayables.push(e),
this.markRedraw()
}),
(t.prototype.addDisplayables = function (e, n) {
n = n || !1
for (var i = 0; i < e.length; i++) this.addDisplayable(e[i], n)
}),
(t.prototype.getDisplayables = function () {
return this._displayables
}),
(t.prototype.getTemporalDisplayables = function () {
return this._temporaryDisplayables
}),
(t.prototype.eachPendingDisplayable = function (e) {
for (var n = this._cursor; n < this._displayables.length; n++)
e && e(this._displayables[n])
for (var n = 0; n < this._temporaryDisplayables.length; n++)
e && e(this._temporaryDisplayables[n])
}),
(t.prototype.update = function () {
this.updateTransform()
for (var e = this._cursor; e < this._displayables.length; e++) {
var n = this._displayables[e]
;(n.parent = this), n.update(), (n.parent = null)
}
for (var e = 0; e < this._temporaryDisplayables.length; e++) {
var n = this._temporaryDisplayables[e]
;(n.parent = this), n.update(), (n.parent = null)
}
}),
(t.prototype.getBoundingRect = function () {
if (!this._rect) {
for (
var e = new vt(1 / 0, 1 / 0, -1 / 0, -1 / 0), n = 0;
n < this._displayables.length;
n++
) {
var i = this._displayables[n],
a = i.getBoundingRect().clone()
i.needLocalTransform() && a.applyTransform(i.getLocalTransform(gC)),
e.union(a)
}
this._rect = e
}
return this._rect
}),
(t.prototype.contain = function (e, n) {
var i = this.transformCoordToLocal(e, n),
a = this.getBoundingRect()
if (a.contain(i[0], i[1]))
for (var o = 0; o < this._displayables.length; o++) {
var s = this._displayables[o]
if (s.contain(e, n)) return !0
}
return !1
}),
t
)
})(Qn),
yC = mC,
Lp = wt()
function ns(r, t, e, n, i) {
var a
if (t && t.ecModel) {
var o = t.ecModel.getUpdatePayload()
a = o && o.animation
}
var s = t && t.isAnimationEnabled(),
l = r === 'update'
if (s) {
var u = void 0,
f = void 0,
h = void 0
n
? ((u = ht(n.duration, 200)), (f = ht(n.easing, 'cubicOut')), (h = 0))
: ((u = t.getShallow(
l ? 'animationDurationUpdate' : 'animationDuration'
)),
(f = t.getShallow(l ? 'animationEasingUpdate' : 'animationEasing')),
(h = t.getShallow(l ? 'animationDelayUpdate' : 'animationDelay'))),
a &&
(a.duration != null && (u = a.duration),
a.easing != null && (f = a.easing),
a.delay != null && (h = a.delay)),
Q(h) && (h = h(e, i)),
Q(u) && (u = u(e))
var c = { duration: u || 0, delay: h, easing: f }
return c
} else return null
}
function sf(r, t, e, n, i, a, o) {
var s = !1,
l
Q(i)
? ((o = a), (a = i), (i = null))
: Y(i) &&
((a = i.cb),
(o = i.during),
(s = i.isFrom),
(l = i.removeOpt),
(i = i.dataIndex))
var u = r === 'leave'
u || t.stopAnimation('leave')
var f = ns(
r,
n,
i,
u ? l || {} : null,
n && n.getAnimationDelayParams ? n.getAnimationDelayParams(t, i) : null
)
if (f && f.duration > 0) {
var h = f.duration,
c = f.delay,
v = f.easing,
d = {
duration: h,
delay: c || 0,
easing: v,
done: a,
force: !!a || !!o,
setToFinal: !u,
scope: r,
during: o
}
s ? t.animateFrom(e, d) : t.animateTo(e, d)
} else t.stopAnimation(), !s && t.attr(e), o && o(1), a && a()
}
function kt(r, t, e, n, i, a) {
sf('update', r, t, e, n, i, a)
}
function Wt(r, t, e, n, i, a) {
sf('enter', r, t, e, n, i, a)
}
function oi(r) {
if (!r.__zr) return !0
for (var t = 0; t < r.animators.length; t++) {
var e = r.animators[t]
if (e.scope === 'leave') return !0
}
return !1
}
function is(r, t, e, n, i, a) {
oi(r) || sf('leave', r, t, e, n, i, a)
}
function Pp(r, t, e, n) {
r.removeTextContent(),
r.removeTextGuideLine(),
is(r, { style: { opacity: 0 } }, t, e, n)
}
function as(r, t, e) {
function n() {
r.parent && r.parent.remove(r)
}
r.isGroup
? r.traverse(function (i) {
i.isGroup || Pp(i, t, e, n)
})
: Pp(r, t, e, n)
}
function lf(r) {
Lp(r).oldStyle = r.style
}
function _C(r) {
return Lp(r).oldStyle
}
var os = Math.max,
ss = Math.min,
uf = {}
function SC(r) {
return st.extend(r)
}
var xC = ZT
function wC(r, t) {
return xC(r, t)
}
function Ie(r, t) {
uf[r] = t
}
function bC(r) {
if (uf.hasOwnProperty(r)) return uf[r]
}
function ff(r, t, e, n) {
var i = YT(r, t)
return e && (n === 'center' && (e = Ep(e, i.getBoundingRect())), Op(i, e)), i
}
function Rp(r, t, e) {
var n = new un({
style: { image: r, x: t.x, y: t.y, width: t.width, height: t.height },
onload: function (i) {
if (e === 'center') {
var a = { width: i.width, height: i.height }
n.setStyle(Ep(t, a))
}
}
})
return n
}
function Ep(r, t) {
var e = t.width / t.height,
n = r.height * e,
i
n <= r.width ? (i = r.height) : ((n = r.width), (i = n / e))
var a = r.x + r.width / 2,
o = r.y + r.height / 2
return { x: a - n / 2, y: o - i / 2, width: n, height: i }
}
var TC = $T
function Op(r, t) {
if (!!r.applyTransform) {
var e = r.getBoundingRect(),
n = e.calculateTransform(t)
r.applyTransform(n)
}
}
function CC(r) {
return Td(r.shape, r.shape, r.style), r
}
function AC(r) {
return Cd(r.shape, r.shape, r.style), r
}
var MC = fn
function ls(r, t) {
for (var e = cu([]); r && r !== t; )
$n(e, r.getLocalTransform(), e), (r = r.parent)
return e
}
function fa(r, t, e) {
return (
t && !Zt(t) && (t = Wi.getLocalTransform(t)),
e && (t = Lo([], t)),
ue([], r, t)
)
}
function hf(r, t, e) {
var n =
t[4] === 0 || t[5] === 0 || t[0] === 0 ? 1 : Math.abs((2 * t[4]) / t[0]),
i =
t[4] === 0 || t[5] === 0 || t[2] === 0 ? 1 : Math.abs((2 * t[4]) / t[2]),
a = [
r === 'left' ? -n : r === 'right' ? n : 0,
r === 'top' ? -i : r === 'bottom' ? i : 0
]
return (
(a = fa(a, t, e)),
Math.abs(a[0]) > Math.abs(a[1])
? a[0] > 0
? 'right'
: 'left'
: a[1] > 0
? 'bottom'
: 'top'
)
}
function kp(r) {
return !r.isGroup
}
function DC(r) {
return r.shape != null
}
function Bp(r, t, e) {
if (!r || !t) return
function n(o) {
var s = {}
return (
o.traverse(function (l) {
kp(l) && l.anid && (s[l.anid] = l)
}),
s
)
}
function i(o) {
var s = { x: o.x, y: o.y, rotation: o.rotation }
return DC(o) && (s.shape = N({}, o.shape)), s
}
var a = n(r)
t.traverse(function (o) {
if (kp(o) && o.anid) {
var s = a[o.anid]
if (s) {
var l = i(o)
o.attr(i(s)), kt(o, l, e, ct(o).dataIndex)
}
}
})
}
function Np(r, t) {
return G(r, function (e) {
var n = e[0]
;(n = os(n, t.x)), (n = ss(n, t.x + t.width))
var i = e[1]
return (i = os(i, t.y)), (i = ss(i, t.y + t.height)), [n, i]
})
}
function IC(r, t) {
var e = os(r.x, t.x),
n = ss(r.x + r.width, t.x + t.width),
i = os(r.y, t.y),
a = ss(r.y + r.height, t.y + t.height)
if (n >= e && a >= i) return { x: e, y: i, width: n - e, height: a - i }
}
function us(r, t, e) {
var n = N({ rectHover: !0 }, t),
i = (n.style = { strokeNoScale: !0 })
if (((e = e || { x: -1, y: -1, width: 2, height: 2 }), r))
return r.indexOf('image://') === 0
? ((i.image = r.slice(8)), j(i, e), new un(n))
: ff(r.replace('path://', ''), n, e, 'center')
}
function LC(r, t, e, n, i) {
for (var a = 0, o = i[i.length - 1]; a < i.length; a++) {
var s = i[a]
if (Fp(r, t, e, n, s[0], s[1], o[0], o[1])) return !0
o = s
}
}
function Fp(r, t, e, n, i, a, o, s) {
var l = e - r,
u = n - t,
f = o - i,
h = s - a,
c = vf(f, h, l, u)
if (PC(c)) return !1
var v = r - i,
d = t - a,
p = vf(v, d, l, u) / c
if (p < 0 || p > 1) return !1
var g = vf(v, d, f, h) / c
return !(g < 0 || g > 1)
}
function vf(r, t, e, n) {
return r * n - e * t
}
function PC(r) {
return r <= 1e-6 && r >= -1e-6
}
function fs(r) {
var t = r.itemTooltipOption,
e = r.componentModel,
n = r.itemName,
i = W(t) ? { formatter: t } : t,
a = e.mainType,
o = e.componentIndex,
s = { componentType: a, name: n, $vars: ['name'] }
s[a + 'Index'] = o
var l = r.formatterParamsExtra
l &&
A(xt(l), function (f) {
nr(s, f) || ((s[f] = l[f]), s.$vars.push(f))
})
var u = ct(r.el)
;(u.componentMainType = a),
(u.componentIndex = o),
(u.tooltipConfig = {
name: n,
option: j({ content: n, formatterParams: s }, i)
})
}
function zp(r, t) {
var e
r.isGroup && (e = t(r)), e || r.traverse(t)
}
function hs(r, t) {
if (r)
if (z(r)) for (var e = 0; e < r.length; e++) zp(r[e], t)
else zp(r, t)
}
Ie('circle', nf)
Ie('ellipse', dp)
Ie('sector', hr)
Ie('ring', _p)
Ie('polygon', ua)
Ie('polyline', ai)
Ie('rect', St)
Ie('line', cn)
Ie('bezierCurve', Ap)
Ie('arc', of)
var RC = Object.freeze({
__proto__: null,
[Symbol.toStringTag]: 'Module',
updateProps: kt,
initProps: Wt,
removeElement: is,
removeElementWithFadeOut: as,
isElementRemoved: oi,
extendShape: SC,
extendPath: wC,
registerShape: Ie,
getShapeClass: bC,
makePath: ff,
makeImage: Rp,
mergePath: TC,
resizePath: Op,
subPixelOptimizeLine: CC,
subPixelOptimizeRect: AC,
subPixelOptimize: MC,
getTransform: ls,
applyTransform: fa,
transformDirection: hf,
groupTransition: Bp,
clipPointsByRect: Np,
clipRectByRect: IC,
createIcon: us,
linePolygonIntersect: LC,
lineLineIntersect: Fp,
setTooltipConfig: fs,
traverseElements: hs,
Group: At,
Image: un,
Text: Et,
Circle: nf,
Ellipse: dp,
Sector: hr,
Ring: _p,
Polygon: ua,
Polyline: ai,
Rect: St,
Line: cn,
BezierCurve: Ap,
Arc: of,
IncrementalDisplayable: yC,
CompoundPath: fC,
LinearGradient: Ip,
RadialGradient: dC,
BoundingRect: vt,
OrientedBoundingRect: rs,
Point: Z,
Path: st
}),
vs = {}
function Vp(r, t) {
for (var e = 0; e < pe.length; e++) {
var n = pe[e],
i = t[n],
a = r.ensureState(n)
;(a.style = a.style || {}), (a.style.text = i)
}
var o = r.currentStates.slice()
r.clearStates(!0), r.setStyle({ text: t.normal }), r.useStates(o, !0)
}
function cf(r, t, e) {
var n = r.labelFetcher,
i = r.labelDataIndex,
a = r.labelDimIndex,
o = t.normal,
s
n &&
(s = n.getFormattedLabel(
i,
'normal',
null,
a,
o && o.get('formatter'),
e != null ? { interpolatedValue: e } : null
)),
s == null && (s = Q(r.defaultText) ? r.defaultText(i, r, e) : r.defaultText)
for (var l = { normal: s }, u = 0; u < pe.length; u++) {
var f = pe[u],
h = t[f]
l[f] = ht(
n ? n.getFormattedLabel(i, f, null, a, h && h.get('formatter')) : null,
s
)
}
return l
}
function ha(r, t, e, n) {
e = e || vs
for (var i = r instanceof Et, a = !1, o = 0; o < Yo.length; o++) {
var s = t[Yo[o]]
if (s && s.getShallow('show')) {
a = !0
break
}
}
var l = i ? r : r.getTextContent()
if (a) {
i ||
(l || ((l = new Et()), r.setTextContent(l)),
r.stateProxy && (l.stateProxy = r.stateProxy))
var u = cf(e, t),
f = t.normal,
h = !!f.getShallow('show'),
c = vr(f, n && n.normal, e, !1, !i)
;(c.text = u.normal), i || r.setTextConfig(Gp(f, e, !1))
for (var o = 0; o < pe.length; o++) {
var v = pe[o],
s = t[v]
if (s) {
var d = l.ensureState(v),
p = !!ht(s.getShallow('show'), h)
if (
(p !== h && (d.ignore = !p),
(d.style = vr(s, n && n[v], e, !0, !i)),
(d.style.text = u[v]),
!i)
) {
var g = r.ensureState(v)
g.textConfig = Gp(s, e, !0)
}
}
}
;(l.silent = !!f.getShallow('silent')),
l.style.x != null && (c.x = l.style.x),
l.style.y != null && (c.y = l.style.y),
(l.ignore = !h),
l.useStyle(c),
l.dirty(),
e.enableTextSetter &&
(si(l).setLabelText = function (m) {
var y = cf(e, t, m)
Vp(l, y)
})
} else l && (l.ignore = !0)
r.dirty()
}
function va(r, t) {
t = t || 'label'
for (var e = { normal: r.getModel(t) }, n = 0; n < pe.length; n++) {
var i = pe[n]
e[i] = r.getModel([i, t])
}
return e
}
function vr(r, t, e, n, i) {
var a = {}
return EC(a, r, e, n, i), t && N(a, t), a
}
function Gp(r, t, e) {
t = t || {}
var n = {},
i,
a = r.getShallow('rotate'),
o = ht(r.getShallow('distance'), e ? null : 5),
s = r.getShallow('offset')
return (
(i = r.getShallow('position') || (e ? null : 'inside')),
i === 'outside' && (i = t.defaultOutsidePosition || 'top'),
i != null && (n.position = i),
s != null && (n.offset = s),
a != null && ((a *= Math.PI / 180), (n.rotation = a)),
o != null && (n.distance = o),
(n.outsideFill =
r.get('color') === 'inherit' ? t.inheritColor || null : 'auto'),
n
)
}
function EC(r, t, e, n, i) {
e = e || vs
var a = t.ecModel,
o = a && a.option.textStyle,
s = OC(t),
l
if (s) {
l = {}
for (var u in s)
if (s.hasOwnProperty(u)) {
var f = t.getModel(['rich', u])
Yp((l[u] = {}), f, o, e, n, i, !1, !0)
}
}
l && (r.rich = l)
var h = t.get('overflow')
h && (r.overflow = h)
var c = t.get('minMargin')
c != null && (r.margin = c), Yp(r, t, o, e, n, i, !0, !1)
}
function OC(r) {
for (var t; r && r !== r.ecModel; ) {
var e = (r.option || vs).rich
if (e) {
t = t || {}
for (var n = xt(e), i = 0; i < n.length; i++) {
var a = n[i]
t[a] = 1
}
}
r = r.parentModel
}
return t
}
var Hp = [
'fontStyle',
'fontWeight',
'fontSize',
'fontFamily',
'textShadowColor',
'textShadowBlur',
'textShadowOffsetX',
'textShadowOffsetY'
],
Wp = ['align', 'lineHeight', 'width', 'height', 'tag', 'verticalAlign'],
Up = [
'padding',
'borderWidth',
'borderRadius',
'borderDashOffset',
'backgroundColor',
'borderColor',
'shadowColor',
'shadowBlur',
'shadowOffsetX',
'shadowOffsetY'
]
function Yp(r, t, e, n, i, a, o, s) {
e = (!i && e) || vs
var l = n && n.inheritColor,
u = t.getShallow('color'),
f = t.getShallow('textBorderColor'),
h = ht(t.getShallow('opacity'), e.opacity)
;(u === 'inherit' || u === 'auto') && (l ? (u = l) : (u = null)),
(f === 'inherit' || f === 'auto') && (l ? (f = l) : (f = null)),
a || ((u = u || e.color), (f = f || e.textBorderColor)),
u != null && (r.fill = u),
f != null && (r.stroke = f)
var c = ht(t.getShallow('textBorderWidth'), e.textBorderWidth)
c != null && (r.lineWidth = c)
var v = ht(t.getShallow('textBorderType'), e.textBorderType)
v != null && (r.lineDash = v)
var d = ht(t.getShallow('textBorderDashOffset'), e.textBorderDashOffset)
d != null && (r.lineDashOffset = d),
!i && h == null && !s && (h = n && n.defaultOpacity),
h != null && (r.opacity = h),
!i && !a && r.fill == null && n.inheritColor && (r.fill = n.inheritColor)
for (var p = 0; p < Hp.length; p++) {
var g = Hp[p],
m = ht(t.getShallow(g), e[g])
m != null && (r[g] = m)
}
for (var p = 0; p < Wp.length; p++) {
var g = Wp[p],
m = t.getShallow(g)
m != null && (r[g] = m)
}
if (r.verticalAlign == null) {
var y = t.getShallow('baseline')
y != null && (r.verticalAlign = y)
}
if (!o || !n.disableBox) {
for (var p = 0; p < Up.length; p++) {
var g = Up[p],
m = t.getShallow(g)
m != null && (r[g] = m)
}
var _ = t.getShallow('borderType')
_ != null && (r.borderDash = _),
(r.backgroundColor === 'auto' || r.backgroundColor === 'inherit') &&
l &&
(r.backgroundColor = l),
(r.borderColor === 'auto' || r.borderColor === 'inherit') &&
l &&
(r.borderColor = l)
}
}
function kC(r, t) {
var e = t && t.getModel('textStyle')
return Ge(
[
r.fontStyle || (e && e.getShallow('fontStyle')) || '',
r.fontWeight || (e && e.getShallow('fontWeight')) || '',
(r.fontSize || (e && e.getShallow('fontSize')) || 12) + 'px',
r.fontFamily || (e && e.getShallow('fontFamily')) || 'sans-serif'
].join(' ')
)
}
var si = wt()
function BC(r, t, e, n) {
if (!!r) {
var i = si(r)
;(i.prevValue = i.value), (i.value = e)
var a = t.normal
;(i.valueAnimation = a.get('valueAnimation')),
i.valueAnimation &&
((i.precision = a.get('precision')),
(i.defaultInterpolatedText = n),
(i.statesModels = t))
}
}
function NC(r, t, e, n, i) {
var a = si(r)
if (!a.valueAnimation || a.prevValue === a.value) return
var o = a.defaultInterpolatedText,
s = ht(a.interpolatedValue, a.prevValue),
l = a.value
function u(f) {
var h = ad(e, a.precision, s, l, f)
a.interpolatedValue = f === 1 ? null : h
var c = cf(
{ labelDataIndex: t, labelFetcher: i, defaultText: o ? o(h) : h + '' },
a.statesModels,
h
)
Vp(r, c)
}
;(r.percent = 0),
(a.prevValue == null ? Wt : kt)(r, { percent: 1 }, n, t, null, u)
}
var FC = ['textStyle', 'color'],
df = [
'fontStyle',
'fontWeight',
'fontSize',
'fontFamily',
'padding',
'lineHeight',
'rich',
'width',
'height',
'overflow'
],
pf = new Et(),
zC = (function () {
function r() {}
return (
(r.prototype.getTextColor = function (t) {
var e = this.ecModel
return this.getShallow('color') || (!t && e ? e.get(FC) : null)
}),
(r.prototype.getFont = function () {
return kC(
{
fontStyle: this.getShallow('fontStyle'),
fontWeight: this.getShallow('fontWeight'),
fontSize: this.getShallow('fontSize'),
fontFamily: this.getShallow('fontFamily')
},
this.ecModel
)
}),
(r.prototype.getTextRect = function (t) {
for (
var e = {
text: t,
verticalAlign:
this.getShallow('verticalAlign') || this.getShallow('baseline')
},
n = 0;
n < df.length;
n++
)
e[df[n]] = this.getShallow(df[n])
return pf.useStyle(e), pf.update(), pf.getBoundingRect()
}),
r
)
})(),
VC = zC,
Zp = [
['lineWidth', 'width'],
['stroke', 'color'],
['opacity'],
['shadowBlur'],
['shadowOffsetX'],
['shadowOffsetY'],
['shadowColor'],
['lineDash', 'type'],
['lineDashOffset', 'dashOffset'],
['lineCap', 'cap'],
['lineJoin', 'join'],
['miterLimit']
],
GC = ta(Zp),
HC = (function () {
function r() {}
return (
(r.prototype.getLineStyle = function (t) {
return GC(this, t)
}),
r
)
})(),
$p = [
['fill', 'color'],
['stroke', 'borderColor'],
['lineWidth', 'borderWidth'],
['opacity'],
['shadowBlur'],
['shadowOffsetX'],
['shadowOffsetY'],
['shadowColor'],
['lineDash', 'borderType'],
['lineDashOffset', 'borderDashOffset'],
['lineCap', 'borderCap'],
['lineJoin', 'borderJoin'],
['miterLimit', 'borderMiterLimit']
],
WC = ta($p),
UC = (function () {
function r() {}
return (
(r.prototype.getItemStyle = function (t, e) {
return WC(this, t, e)
}),
r
)
})(),
gn = (function () {
function r(t, e, n) {
;(this.parentModel = e), (this.ecModel = n), (this.option = t)
}
return (
(r.prototype.init = function (t, e, n) {
for (var i = [], a = 3; a < arguments.length; a++)
i[a - 3] = arguments[a]
}),
(r.prototype.mergeOption = function (t, e) {
nt(this.option, t, !0)
}),
(r.prototype.get = function (t, e) {
return t == null
? this.option
: this._doGet(this.parsePath(t), !e && this.parentModel)
}),
(r.prototype.getShallow = function (t, e) {
var n = this.option,
i = n == null ? n : n[t]
if (i == null && !e) {
var a = this.parentModel
a && (i = a.getShallow(t))
}
return i
}),
(r.prototype.getModel = function (t, e) {
var n = t != null,
i = n ? this.parsePath(t) : null,
a = n ? this._doGet(i) : this.option
return (
(e =
e ||
(this.parentModel &&
this.parentModel.getModel(this.resolveParentPath(i)))),
new r(a, e, this.ecModel)
)
}),
(r.prototype.isEmpty = function () {
return this.option == null
}),
(r.prototype.restoreData = function () {}),
(r.prototype.clone = function () {
var t = this.constructor
return new t(tt(this.option))
}),
(r.prototype.parsePath = function (t) {
return typeof t == 'string' ? t.split('.') : t
}),
(r.prototype.resolveParentPath = function (t) {
return t
}),
(r.prototype.isAnimationEnabled = function () {
if (!at.node && this.option) {
if (this.option.animation != null) return !!this.option.animation
if (this.parentModel) return this.parentModel.isAnimationEnabled()
}
}),
(r.prototype._doGet = function (t, e) {
var n = this.option
if (!t) return n
for (
var i = 0;
i < t.length &&
!(
!!t[i] &&
((n = n && typeof n == 'object' ? n[t[i]] : null), n == null)
);
i++
);
return (
n == null &&
e &&
(n = e._doGet(this.resolveParentPath(t), e.parentModel)),
n
)
}),
r
)
})()
Du(gn)
bb(gn)
ze(gn, HC)
ze(gn, UC)
ze(gn, Db)
ze(gn, VC)
var Nt = gn,
YC = Math.round(Math.random() * 10)
function ca(r) {
return [r || '', YC++].join('_')
}
function ZC(r) {
var t = {}
;(r.registerSubTypeDefaulter = function (e, n) {
var i = Ue(e)
t[i.main] = n
}),
(r.determineSubType = function (e, n) {
var i = n.type
if (!i) {
var a = Ue(e).main
r.hasSubTypes(e) && t[a] && (i = t[a](n))
}
return i
})
}
function $C(r, t) {
r.topologicalTravel = function (a, o, s, l) {
if (!a.length) return
var u = e(o),
f = u.graph,
h = u.noEntryList,
c = {}
for (
A(a, function (y) {
c[y] = !0
});
h.length;
) {
var v = h.pop(),
d = f[v],
p = !!c[v]
p && (s.call(l, v, d.originalDeps.slice()), delete c[v]),
A(d.successor, p ? m : g)
}
A(c, function () {
var y = ''
throw new Error(y)
})
function g(y) {
f[y].entryCount--, f[y].entryCount === 0 && h.push(y)
}
function m(y) {
;(c[y] = !0), g(y)
}
}
function e(a) {
var o = {},
s = []
return (
A(a, function (l) {
var u = n(o, l),
f = (u.originalDeps = t(l)),
h = i(f, a)
;(u.entryCount = h.length),
u.entryCount === 0 && s.push(l),
A(h, function (c) {
ot(u.predecessor, c) < 0 && u.predecessor.push(c)
var v = n(o, c)
ot(v.successor, c) < 0 && v.successor.push(l)
})
}),
{ graph: o, noEntryList: s }
)
}
function n(a, o) {
return a[o] || (a[o] = { predecessor: [], successor: [] }), a[o]
}
function i(a, o) {
var s = []
return (
A(a, function (l) {
ot(o, l) >= 0 && s.push(l)
}),
s
)
}
}
function cs(r, t) {
return nt(nt({}, r, !0), t, !0)
}
var XC = {
time: {
month: [
'January',
'February',
'March',
'April',
'May',
'June',
'July',
'August',
'September',
'October',
'November',
'December'
],
monthAbbr: [
'Jan',
'Feb',
'Mar',
'Apr',
'May',
'Jun',
'Jul',
'Aug',
'Sep',
'Oct',
'Nov',
'Dec'
],
dayOfWeek: [
'Sunday',
'Monday',
'Tuesday',
'Wednesday',
'Thursday',
'Friday',
'Saturday'
],
dayOfWeekAbbr: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']
},
legend: { selector: { all: 'All', inverse: 'Inv' } },
toolbox: {
brush: {
title: {
rect: 'Box Select',
polygon: 'Lasso Select',
lineX: 'Horizontally Select',
lineY: 'Vertically Select',
keep: 'Keep Selections',
clear: 'Clear Selections'
}
},
dataView: { title: 'Data View', lang: ['Data View', 'Close', 'Refresh'] },
dataZoom: { title: { zoom: 'Zoom', back: 'Zoom Reset' } },
magicType: {
title: {
line: 'Switch to Line Chart',
bar: 'Switch to Bar Chart',
stack: 'Stack',
tiled: 'Tile'
}
},
restore: { title: 'Restore' },
saveAsImage: {
title: 'Save as Image',
lang: ['Right Click to Save Image']
}
},
series: {
typeNames: {
pie: 'Pie chart',
bar: 'Bar chart',
line: 'Line chart',
scatter: 'Scatter plot',
effectScatter: 'Ripple scatter plot',
radar: 'Radar chart',
tree: 'Tree',
treemap: 'Treemap',
boxplot: 'Boxplot',
candlestick: 'Candlestick',
k: 'K line chart',
heatmap: 'Heat map',
map: 'Map',
parallel: 'Parallel coordinate map',
lines: 'Line graph',
graph: 'Relationship graph',
sankey: 'Sankey diagram',
funnel: 'Funnel chart',
gauge: 'Gauge',
pictorialBar: 'Pictorial bar',
themeRiver: 'Theme River Map',
sunburst: 'Sunburst'
}
},
aria: {
general: {
withTitle: 'This is a chart about "{title}"',
withoutTitle: 'This is a chart'
},
series: {
single: {
prefix: '',
withName: ' with type {seriesType} named {seriesName}.',
withoutName: ' with type {seriesType}.'
},
multiple: {
prefix: '. It consists of {seriesCount} series count.',
withName:
' The {seriesId} series is a {seriesType} representing {seriesName}.',
withoutName: ' The {seriesId} series is a {seriesType}.',
separator: { middle: '', end: '' }
}
},
data: {
allData: 'The data is as follows: ',
partialData: 'The first {displayCnt} items are: ',
withName: 'the data for {name} is {value}',
withoutName: '{value}',
separator: { middle: ', ', end: '. ' }
}
}
},
qC = {
time: {
month: [
'\u4E00\u6708',
'\u4E8C\u6708',
'\u4E09\u6708',
'\u56DB\u6708',
'\u4E94\u6708',
'\u516D\u6708',
'\u4E03\u6708',
'\u516B\u6708',
'\u4E5D\u6708',
'\u5341\u6708',
'\u5341\u4E00\u6708',
'\u5341\u4E8C\u6708'
],
monthAbbr: [
'1\u6708',
'2\u6708',
'3\u6708',
'4\u6708',
'5\u6708',
'6\u6708',
'7\u6708',
'8\u6708',
'9\u6708',
'10\u6708',
'11\u6708',
'12\u6708'
],
dayOfWeek: [
'\u661F\u671F\u65E5',
'\u661F\u671F\u4E00',
'\u661F\u671F\u4E8C',
'\u661F\u671F\u4E09',
'\u661F\u671F\u56DB',
'\u661F\u671F\u4E94',
'\u661F\u671F\u516D'
],
dayOfWeekAbbr: [
'\u65E5',
'\u4E00',
'\u4E8C',
'\u4E09',
'\u56DB',
'\u4E94',
'\u516D'
]
},
legend: { selector: { all: '\u5168\u9009', inverse: '\u53CD\u9009' } },
toolbox: {
brush: {
title: {
rect: '\u77E9\u5F62\u9009\u62E9',
polygon: '\u5708\u9009',
lineX: '\u6A2A\u5411\u9009\u62E9',
lineY: '\u7EB5\u5411\u9009\u62E9',
keep: '\u4FDD\u6301\u9009\u62E9',
clear: '\u6E05\u9664\u9009\u62E9'
}
},
dataView: {
title: '\u6570\u636E\u89C6\u56FE',
lang: ['\u6570\u636E\u89C6\u56FE', '\u5173\u95ED', '\u5237\u65B0']
},
dataZoom: {
title: {
zoom: '\u533A\u57DF\u7F29\u653E',
back: '\u533A\u57DF\u7F29\u653E\u8FD8\u539F'
}
},
magicType: {
title: {
line: '\u5207\u6362\u4E3A\u6298\u7EBF\u56FE',
bar: '\u5207\u6362\u4E3A\u67F1\u72B6\u56FE',
stack: '\u5207\u6362\u4E3A\u5806\u53E0',
tiled: '\u5207\u6362\u4E3A\u5E73\u94FA'
}
},
restore: { title: '\u8FD8\u539F' },
saveAsImage: {
title: '\u4FDD\u5B58\u4E3A\u56FE\u7247',
lang: ['\u53F3\u952E\u53E6\u5B58\u4E3A\u56FE\u7247']
}
},
series: {
typeNames: {
pie: '\u997C\u56FE',
bar: '\u67F1\u72B6\u56FE',
line: '\u6298\u7EBF\u56FE',
scatter: '\u6563\u70B9\u56FE',
effectScatter: '\u6D9F\u6F2A\u6563\u70B9\u56FE',
radar: '\u96F7\u8FBE\u56FE',
tree: '\u6811\u56FE',
treemap: '\u77E9\u5F62\u6811\u56FE',
boxplot: '\u7BB1\u578B\u56FE',
candlestick: 'K\u7EBF\u56FE',
k: 'K\u7EBF\u56FE',
heatmap: '\u70ED\u529B\u56FE',
map: '\u5730\u56FE',
parallel: '\u5E73\u884C\u5750\u6807\u56FE',
lines: '\u7EBF\u56FE',
graph: '\u5173\u7CFB\u56FE',
sankey: '\u6851\u57FA\u56FE',
funnel: '\u6F0F\u6597\u56FE',
gauge: '\u4EEA\u8868\u76D8\u56FE',
pictorialBar: '\u8C61\u5F62\u67F1\u56FE',
themeRiver: '\u4E3B\u9898\u6CB3\u6D41\u56FE',
sunburst: '\u65ED\u65E5\u56FE'
}
},
aria: {
general: {
withTitle:
'\u8FD9\u662F\u4E00\u4E2A\u5173\u4E8E\u201C{title}\u201D\u7684\u56FE\u8868\u3002',
withoutTitle: '\u8FD9\u662F\u4E00\u4E2A\u56FE\u8868\uFF0C'
},
series: {
single: {
prefix: '',
withName:
'\u56FE\u8868\u7C7B\u578B\u662F{seriesType}\uFF0C\u8868\u793A{seriesName}\u3002',
withoutName: '\u56FE\u8868\u7C7B\u578B\u662F{seriesType}\u3002'
},
multiple: {
prefix:
'\u5B83\u7531{seriesCount}\u4E2A\u56FE\u8868\u7CFB\u5217\u7EC4\u6210\u3002',
withName:
'\u7B2C{seriesId}\u4E2A\u7CFB\u5217\u662F\u4E00\u4E2A\u8868\u793A{seriesName}\u7684{seriesType}\uFF0C',
withoutName:
'\u7B2C{seriesId}\u4E2A\u7CFB\u5217\u662F\u4E00\u4E2A{seriesType}\uFF0C',
separator: { middle: '\uFF1B', end: '\u3002' }
}
},
data: {
allData: '\u5176\u6570\u636E\u662F\u2014\u2014',
partialData:
'\u5176\u4E2D\uFF0C\u524D{displayCnt}\u9879\u662F\u2014\u2014',
withName: '{name}\u7684\u6570\u636E\u662F{value}',
withoutName: '{value}',
separator: { middle: '\uFF0C', end: '' }
}
}
},
ds = 'ZH',
gf = 'EN',
da = gf,
ps = {},
mf = {},
Xp = at.domSupported
? (function () {
var r = (
document.documentElement.lang ||
navigator.language ||
navigator.browserLanguage
).toUpperCase()
return r.indexOf(ds) > -1 ? ds : da
})()
: da
function qp(r, t) {
;(r = r.toUpperCase()), (mf[r] = new Nt(t)), (ps[r] = t)
}
function KC(r) {
if (W(r)) {
var t = ps[r.toUpperCase()] || {}
return r === ds || r === gf ? tt(t) : nt(tt(t), tt(ps[da]), !1)
} else return nt(tt(r), tt(ps[da]), !1)
}
function QC(r) {
return mf[r]
}
function JC() {
return mf[da]
}
qp(gf, XC)
qp(ds, qC)
var yf = 1e3,
_f = yf * 60,
pa = _f * 60,
ge = pa * 24,
Kp = ge * 365,
ga = {
year: '{yyyy}',
month: '{MMM}',
day: '{d}',
hour: '{HH}:{mm}',
minute: '{HH}:{mm}',
second: '{HH}:{mm}:{ss}',
millisecond: '{HH}:{mm}:{ss} {SSS}',
none: '{yyyy}-{MM}-{dd} {HH}:{mm}:{ss} {SSS}'
},
gs = '{yyyy}-{MM}-{dd}',
Qp = {
year: '{yyyy}',
month: '{yyyy}-{MM}',
day: gs,
hour: gs + ' ' + ga.hour,
minute: gs + ' ' + ga.minute,
second: gs + ' ' + ga.second,
millisecond: ga.none
},
Sf = ['year', 'month', 'day', 'hour', 'minute', 'second', 'millisecond'],
Jp = [
'year',
'half-year',
'quarter',
'month',
'week',
'half-week',
'day',
'half-day',
'quarter-day',
'hour',
'minute',
'second',
'millisecond'
]
function mn(r, t) {
return (r += ''), '0000'.substr(0, t - r.length) + r
}
function li(r) {
switch (r) {
case 'half-year':
case 'quarter':
return 'month'
case 'week':
case 'half-week':
return 'day'
case 'half-day':
case 'quarter-day':
return 'hour'
default:
return r
}
}
function jC(r) {
return r === li(r)
}
function tA(r) {
switch (r) {
case 'year':
case 'month':
return 'day'
case 'millisecond':
return 'millisecond'
default:
return 'second'
}
}
function ms(r, t, e, n) {
var i = sr(r),
a = i[xf(e)](),
o = i[ui(e)]() + 1,
s = Math.floor((o - 1) / 3) + 1,
l = i[ys(e)](),
u = i['get' + (e ? 'UTC' : '') + 'Day'](),
f = i[ma(e)](),
h = ((f - 1) % 12) + 1,
c = i[_s(e)](),
v = i[Ss(e)](),
d = i[xs(e)](),
p = n instanceof Nt ? n : QC(n || Xp) || JC(),
g = p.getModel('time'),
m = g.get('month'),
y = g.get('monthAbbr'),
_ = g.get('dayOfWeek'),
S = g.get('dayOfWeekAbbr')
return (t || '')
.replace(/{yyyy}/g, a + '')
.replace(/{yy}/g, (a % 100) + '')
.replace(/{Q}/g, s + '')
.replace(/{MMMM}/g, m[o - 1])
.replace(/{MMM}/g, y[o - 1])
.replace(/{MM}/g, mn(o, 2))
.replace(/{M}/g, o + '')
.replace(/{dd}/g, mn(l, 2))
.replace(/{d}/g, l + '')
.replace(/{eeee}/g, _[u])
.replace(/{ee}/g, S[u])
.replace(/{e}/g, u + '')
.replace(/{HH}/g, mn(f, 2))
.replace(/{H}/g, f + '')
.replace(/{hh}/g, mn(h + '', 2))
.replace(/{h}/g, h + '')
.replace(/{mm}/g, mn(c, 2))
.replace(/{m}/g, c + '')
.replace(/{ss}/g, mn(v, 2))
.replace(/{s}/g, v + '')
.replace(/{SSS}/g, mn(d, 3))
.replace(/{S}/g, d + '')
}
function eA(r, t, e, n, i) {
var a = null
if (W(e)) a = e
else if (Q(e)) a = e(r.value, t, { level: r.level })
else {
var o = N({}, ga)
if (r.level > 0)
for (var s = 0; s < Sf.length; ++s)
o[Sf[s]] = '{primary|' + o[Sf[s]] + '}'
var l = e ? (e.inherit === !1 ? e : j(e, o)) : o,
u = jp(r.value, i)
if (l[u]) a = l[u]
else if (l.inherit) {
for (var f = Jp.indexOf(u), s = f - 1; s >= 0; --s)
if (l[u]) {
a = l[u]
break
}
a = a || o.none
}
if (z(a)) {
var h = r.level == null ? 0 : r.level >= 0 ? r.level : a.length + r.level
;(h = Math.min(h, a.length - 1)), (a = a[h])
}
}
return ms(new Date(r.value), a, i, n)
}
function jp(r, t) {
var e = sr(r),
n = e[ui(t)]() + 1,
i = e[ys(t)](),
a = e[ma(t)](),
o = e[_s(t)](),
s = e[Ss(t)](),
l = e[xs(t)](),
u = l === 0,
f = u && s === 0,
h = f && o === 0,
c = h && a === 0,
v = c && i === 1,
d = v && n === 1
return d
? 'year'
: v
? 'month'
: c
? 'day'
: h
? 'hour'
: f
? 'minute'
: u
? 'second'
: 'millisecond'
}
function tg(r, t, e) {
var n = dt(r) ? sr(r) : r
switch (((t = t || jp(r, e)), t)) {
case 'year':
return n[xf(e)]()
case 'half-year':
return n[ui(e)]() >= 6 ? 1 : 0
case 'quarter':
return Math.floor((n[ui(e)]() + 1) / 4)
case 'month':
return n[ui(e)]()
case 'day':
return n[ys(e)]()
case 'half-day':
return n[ma(e)]() / 24
case 'hour':
return n[ma(e)]()
case 'minute':
return n[_s(e)]()
case 'second':
return n[Ss(e)]()
case 'millisecond':
return n[xs(e)]()
}
}
function xf(r) {
return r ? 'getUTCFullYear' : 'getFullYear'
}
function ui(r) {
return r ? 'getUTCMonth' : 'getMonth'
}
function ys(r) {
return r ? 'getUTCDate' : 'getDate'
}
function ma(r) {
return r ? 'getUTCHours' : 'getHours'
}
function _s(r) {
return r ? 'getUTCMinutes' : 'getMinutes'
}
function Ss(r) {
return r ? 'getUTCSeconds' : 'getSeconds'
}
function xs(r) {
return r ? 'getUTCMilliseconds' : 'getMilliseconds'
}
function rA(r) {
return r ? 'setUTCFullYear' : 'setFullYear'
}
function eg(r) {
return r ? 'setUTCMonth' : 'setMonth'
}
function rg(r) {
return r ? 'setUTCDate' : 'setDate'
}
function ng(r) {
return r ? 'setUTCHours' : 'setHours'
}
function ig(r) {
return r ? 'setUTCMinutes' : 'setMinutes'
}
function ag(r) {
return r ? 'setUTCSeconds' : 'setSeconds'
}
function og(r) {
return r ? 'setUTCMilliseconds' : 'setMilliseconds'
}
function sg(r) {
if (!rb(r)) return W(r) ? r : '-'
var t = (r + '').split('.')
return (
t[0].replace(/(\d{1,3})(?=(?:\d{3})+(?!\d))/g, '$1,') +
(t.length > 1 ? '.' + t[1] : '')
)
}
function lg(r, t) {
return (
(r = (r || '').toLowerCase().replace(/-(.)/g, function (e, n) {
return n.toUpperCase()
})),
t && r && (r = r.charAt(0).toUpperCase() + r.slice(1)),
r
)
}
var ws = Zv,
nA = /([&<>"'])/g,
iA = { '&': '&', '<': '<', '>': '>', '"': '"', "'": ''' }
function me(r) {
return r == null
? ''
: (r + '').replace(nA, function (t, e) {
return iA[e]
})
}
function wf(r, t, e) {
var n = '{yyyy}-{MM}-{dd} {HH}:{mm}:{ss}'
function i(f) {
return f && Ge(f) ? f : '-'
}
function a(f) {
return !!(f != null && !isNaN(f) && isFinite(f))
}
var o = t === 'time',
s = r instanceof Date
if (o || s) {
var l = o ? sr(r) : r
if (isNaN(+l)) {
if (s) return '-'
} else return ms(l, n, e)
}
if (t === 'ordinal') return Rl(r) ? i(r) : dt(r) && a(r) ? r + '' : '-'
var u = Ar(r)
return a(u) ? sg(u) : Rl(r) ? i(r) : typeof r == 'boolean' ? r + '' : '-'
}
var ug = ['a', 'b', 'c', 'd', 'e', 'f', 'g'],
bf = function (r, t) {
return '{' + r + (t == null ? '' : t) + '}'
}
function fg(r, t, e) {
z(t) || (t = [t])
var n = t.length
if (!n) return ''
for (var i = t[0].$vars || [], a = 0; a < i.length; a++) {
var o = ug[a]
r = r.replace(bf(o), bf(o, 0))
}
for (var s = 0; s < n; s++)
for (var l = 0; l < i.length; l++) {
var u = t[s][i[l]]
r = r.replace(bf(ug[l], s), e ? me(u) : u)
}
return r
}
function aA(r, t) {
var e = W(r) ? { color: r, extraCssText: t } : r || {},
n = e.color,
i = e.type
t = e.extraCssText
var a = e.renderMode || 'html'
if (!n) return ''
if (a === 'html')
return i === 'subItem'
? ''
: ''
var o = e.markerId || 'markerX'
return {
renderMode: a,
content: '{' + o + '|} ',
style:
i === 'subItem'
? { width: 4, height: 4, borderRadius: 2, backgroundColor: n }
: { width: 10, height: 10, borderRadius: 5, backgroundColor: n }
}
}
function yn(r, t) {
return (
(t = t || 'transparent'),
W(r) ? r : (Y(r) && r.colorStops && (r.colorStops[0] || {}).color) || t
)
}
function hg(r, t) {
if (t === '_blank' || t === 'blank') {
var e = window.open()
;(e.opener = null), (e.location.href = r)
} else window.open(r, t)
}
var bs = A,
oA = ['left', 'right', 'top', 'bottom', 'width', 'height'],
Ts = [
['width', 'left', 'right'],
['height', 'top', 'bottom']
]
function Tf(r, t, e, n, i) {
var a = 0,
o = 0
n == null && (n = 1 / 0), i == null && (i = 1 / 0)
var s = 0
t.eachChild(function (l, u) {
var f = l.getBoundingRect(),
h = t.childAt(u + 1),
c = h && h.getBoundingRect(),
v,
d
if (r === 'horizontal') {
var p = f.width + (c ? -c.x + f.x : 0)
;(v = a + p),
v > n || l.newline
? ((a = 0), (v = p), (o += s + e), (s = f.height))
: (s = Math.max(s, f.height))
} else {
var g = f.height + (c ? -c.y + f.y : 0)
;(d = o + g),
d > i || l.newline
? ((a += s + e), (o = 0), (d = g), (s = f.width))
: (s = Math.max(s, f.width))
}
l.newline ||
((l.x = a),
(l.y = o),
l.markRedraw(),
r === 'horizontal' ? (a = v + e) : (o = d + e))
})
}
var fi = Tf
lt(Tf, 'vertical')
lt(Tf, 'horizontal')
function cr(r, t, e) {
e = ws(e || 0)
var n = t.width,
i = t.height,
a = yt(r.left, n),
o = yt(r.top, i),
s = yt(r.right, n),
l = yt(r.bottom, i),
u = yt(r.width, n),
f = yt(r.height, i),
h = e[2] + e[0],
c = e[1] + e[3],
v = r.aspect
switch (
(isNaN(u) && (u = n - s - c - a),
isNaN(f) && (f = i - l - h - o),
v != null &&
(isNaN(u) && isNaN(f) && (v > n / i ? (u = n * 0.8) : (f = i * 0.8)),
isNaN(u) && (u = v * f),
isNaN(f) && (f = u / v)),
isNaN(a) && (a = n - s - u - c),
isNaN(o) && (o = i - l - f - h),
r.left || r.right)
) {
case 'center':
a = n / 2 - u / 2 - e[3]
break
case 'right':
a = n - u - c
break
}
switch (r.top || r.bottom) {
case 'middle':
case 'center':
o = i / 2 - f / 2 - e[0]
break
case 'bottom':
o = i - f - h
break
}
;(a = a || 0),
(o = o || 0),
isNaN(u) && (u = n - c - a - (s || 0)),
isNaN(f) && (f = i - h - o - (l || 0))
var d = new vt(a + e[3], o + e[0], u, f)
return (d.margin = e), d
}
function sA(r, t, e, n, i, a) {
var o = !i || !i.hv || i.hv[0],
s = !i || !i.hv || i.hv[1],
l = (i && i.boundingMode) || 'all'
if (((a = a || r), (a.x = r.x), (a.y = r.y), !o && !s)) return !1
var u
if (l === 'raw')
u =
r.type === 'group'
? new vt(0, 0, +t.width || 0, +t.height || 0)
: r.getBoundingRect()
else if (((u = r.getBoundingRect()), r.needLocalTransform())) {
var f = r.getLocalTransform()
;(u = u.clone()), u.applyTransform(f)
}
var h = cr(j({ width: u.width, height: u.height }, t), e, n),
c = o ? h.x - u.x : 0,
v = s ? h.y - u.y : 0
return (
l === 'raw' ? ((a.x = c), (a.y = v)) : ((a.x += c), (a.y += v)),
a === r && r.markRedraw(),
!0
)
}
function ya(r) {
var t = r.layoutMode || r.constructor.layoutMode
return Y(t) ? t : t ? { type: t } : null
}
function hi(r, t, e) {
var n = e && e.ignoreSize
!z(n) && (n = [n, n])
var i = o(Ts[0], 0),
a = o(Ts[1], 1)
u(Ts[0], r, i), u(Ts[1], r, a)
function o(f, h) {
var c = {},
v = 0,
d = {},
p = 0,
g = 2
if (
(bs(f, function (_) {
d[_] = r[_]
}),
bs(f, function (_) {
s(t, _) && (c[_] = d[_] = t[_]), l(c, _) && v++, l(d, _) && p++
}),
n[h])
)
return l(t, f[1]) ? (d[f[2]] = null) : l(t, f[2]) && (d[f[1]] = null), d
if (p === g || !v) return d
if (v >= g) return c
for (var m = 0; m < f.length; m++) {
var y = f[m]
if (!s(c, y) && s(r, y)) {
c[y] = r[y]
break
}
}
return c
}
function s(f, h) {
return f.hasOwnProperty(h)
}
function l(f, h) {
return f[h] != null && f[h] !== 'auto'
}
function u(f, h, c) {
bs(f, function (v) {
h[v] = c[v]
})
}
}
function _a(r) {
return lA({}, r)
}
function lA(r, t) {
return (
t &&
r &&
bs(oA, function (e) {
t.hasOwnProperty(e) && (r[e] = t[e])
}),
r
)
}
var uA = wt(),
vi = (function (r) {
B(t, r)
function t(e, n, i) {
var a = r.call(this, e, n, i) || this
return (a.uid = ca('ec_cpt_model')), a
}
return (
(t.prototype.init = function (e, n, i) {
this.mergeDefaultAndTheme(e, i)
}),
(t.prototype.mergeDefaultAndTheme = function (e, n) {
var i = ya(this),
a = i ? _a(e) : {},
o = n.getTheme()
nt(e, o.get(this.mainType)),
nt(e, this.getDefaultOption()),
i && hi(e, a, i)
}),
(t.prototype.mergeOption = function (e, n) {
nt(this.option, e, !0)
var i = ya(this)
i && hi(this.option, e, i)
}),
(t.prototype.optionUpdated = function (e, n) {}),
(t.prototype.getDefaultOption = function () {
var e = this.constructor
if (!Sb(e)) return e.defaultOption
var n = uA(this)
if (!n.defaultOption) {
for (var i = [], a = e; a; ) {
var o = a.prototype.defaultOption
o && i.push(o), (a = a.superClass)
}
for (var s = {}, l = i.length - 1; l >= 0; l--) s = nt(s, i[l], !0)
n.defaultOption = s
}
return n.defaultOption
}),
(t.prototype.getReferringComponents = function (e, n) {
var i = e + 'Index',
a = e + 'Id'
return ji(
this.ecModel,
e,
{ index: this.get(i, !0), id: this.get(a, !0) },
n
)
}),
(t.prototype.getBoxLayoutParams = function () {
var e = this
return {
left: e.get('left'),
top: e.get('top'),
right: e.get('right'),
bottom: e.get('bottom'),
width: e.get('width'),
height: e.get('height')
}
}),
(t.prototype.getZLevelKey = function () {
return ''
}),
(t.prototype.setZLevel = function (e) {
this.option.zlevel = e
}),
(t.protoInitialize = (function () {
var e = t.prototype
;(e.type = 'component'),
(e.id = ''),
(e.name = ''),
(e.mainType = ''),
(e.subType = ''),
(e.componentIndex = 0)
})()),
t
)
})(Nt)
sd(vi, Nt)
No(vi)
ZC(vi)
$C(vi, fA)
function fA(r) {
var t = []
return (
A(vi.getClassesByMainType(r), function (e) {
t = t.concat(e.dependencies || e.prototype.dependencies || [])
}),
(t = G(t, function (e) {
return Ue(e).main
})),
r !== 'dataset' && ot(t, 'dataset') <= 0 && t.unshift('dataset'),
t
)
}
var _t = vi,
vg = ''
typeof navigator != 'undefined' && (vg = navigator.platform || '')
var ci = 'rgba(0, 0, 0, 0.2)',
hA = {
darkMode: 'auto',
colorBy: 'series',
color: [
'#5470c6',
'#91cc75',
'#fac858',
'#ee6666',
'#73c0de',
'#3ba272',
'#fc8452',
'#9a60b4',
'#ea7ccc'
],
gradientColor: ['#f6efa6', '#d88273', '#bf444c'],
aria: {
decal: {
decals: [
{
color: ci,
dashArrayX: [1, 0],
dashArrayY: [2, 5],
symbolSize: 1,
rotation: Math.PI / 6
},
{
color: ci,
symbol: 'circle',
dashArrayX: [
[8, 8],
[0, 8, 8, 0]
],
dashArrayY: [6, 0],
symbolSize: 0.8
},
{
color: ci,
dashArrayX: [1, 0],
dashArrayY: [4, 3],
rotation: -Math.PI / 4
},
{
color: ci,
dashArrayX: [
[6, 6],
[0, 6, 6, 0]
],
dashArrayY: [6, 0]
},
{
color: ci,
dashArrayX: [
[1, 0],
[1, 6]
],
dashArrayY: [1, 0, 6, 0],
rotation: Math.PI / 4
},
{
color: ci,
symbol: 'triangle',
dashArrayX: [
[9, 9],
[0, 9, 9, 0]
],
dashArrayY: [7, 2],
symbolSize: 0.75
}
]
}
},
textStyle: {
fontFamily: vg.match(/^Win/) ? 'Microsoft YaHei' : 'sans-serif',
fontSize: 12,
fontStyle: 'normal',
fontWeight: 'normal'
},
blendMode: null,
stateAnimation: { duration: 300, easing: 'cubicOut' },
animation: 'auto',
animationDuration: 1e3,
animationDurationUpdate: 500,
animationEasing: 'cubicInOut',
animationEasingUpdate: 'cubicInOut',
animationThreshold: 2e3,
progressiveThreshold: 3e3,
progressive: 400,
hoverLayerThreshold: 3e3,
useUTC: !1
},
cg = q([
'tooltip',
'label',
'itemName',
'itemId',
'itemGroupId',
'seriesName'
]),
ye = 'original',
Kt = 'arrayRows',
_e = 'objectRows',
qe = 'keyedColumns',
Pr = 'typedArray',
dg = 'unknown',
Ke = 'column',
di = 'row',
Ft = { Must: 1, Might: 2, Not: 3 },
pg = wt()
function vA(r) {
pg(r).datasetMap = q()
}
function cA(r, t, e) {
var n = {},
i = Cf(t)
if (!i || !r) return n
var a = [],
o = [],
s = t.ecModel,
l = pg(s).datasetMap,
u = i.uid + '_' + e.seriesLayoutBy,
f,
h
;(r = r.slice()),
A(r, function (p, g) {
var m = Y(p) ? p : (r[g] = { name: p })
m.type === 'ordinal' && f == null && ((f = g), (h = d(m))),
(n[m.name] = [])
})
var c = l.get(u) || l.set(u, { categoryWayDim: h, valueWayDim: 0 })
A(r, function (p, g) {
var m = p.name,
y = d(p)
if (f == null) {
var _ = c.valueWayDim
v(n[m], _, y), v(o, _, y), (c.valueWayDim += y)
} else if (f === g) v(n[m], 0, y), v(a, 0, y)
else {
var _ = c.categoryWayDim
v(n[m], _, y), v(o, _, y), (c.categoryWayDim += y)
}
})
function v(p, g, m) {
for (var y = 0; y < m; y++) p.push(g + y)
}
function d(p) {
var g = p.dimsDef
return g ? g.length : 1
}
return a.length && (n.itemName = a), o.length && (n.seriesName = o), n
}
function dA(r, t, e) {
var n = {},
i = Cf(r)
if (!i) return n
var a = t.sourceFormat,
o = t.dimensionsDefine,
s
;(a === _e || a === qe) &&
A(o, function (f, h) {
;(Y(f) ? f.name : f) === 'name' && (s = h)
})
var l = (function () {
for (var f = {}, h = {}, c = [], v = 0, d = Math.min(5, e); v < d; v++) {
var p = mg(t.data, a, t.seriesLayoutBy, o, t.startIndex, v)
c.push(p)
var g = p === Ft.Not
if (
(g && f.v == null && v !== s && (f.v = v),
(f.n == null || f.n === f.v || (!g && c[f.n] === Ft.Not)) && (f.n = v),
m(f) && c[f.n] !== Ft.Not)
)
return f
g ||
(p === Ft.Might && h.v == null && v !== s && (h.v = v),
(h.n == null || h.n === h.v) && (h.n = v))
}
function m(y) {
return y.v != null && y.n != null
}
return m(f) ? f : m(h) ? h : null
})()
if (l) {
n.value = [l.v]
var u = s != null ? s : l.n
;(n.itemName = [u]), (n.seriesName = [u])
}
return n
}
function Cf(r) {
var t = r.get('data', !0)
if (!t)
return ji(
r.ecModel,
'dataset',
{ index: r.get('datasetIndex', !0), id: r.get('datasetId', !0) },
Xt
).models[0]
}
function pA(r) {
return !r.get('transform', !0) && !r.get('fromTransformResult', !0)
? []
: ji(
r.ecModel,
'dataset',
{
index: r.get('fromDatasetIndex', !0),
id: r.get('fromDatasetId', !0)
},
Xt
).models
}
function gg(r, t) {
return mg(
r.data,
r.sourceFormat,
r.seriesLayoutBy,
r.dimensionsDefine,
r.startIndex,
t
)
}
function mg(r, t, e, n, i, a) {
var o,
s = 5
if (ie(r)) return Ft.Not
var l, u
if (n) {
var f = n[a]
Y(f) ? ((l = f.name), (u = f.type)) : W(f) && (l = f)
}
if (u != null) return u === 'ordinal' ? Ft.Must : Ft.Not
if (t === Kt) {
var h = r
if (e === di) {
for (var c = h[a], v = 0; v < (c || []).length && v < s; v++)
if ((o = S(c[i + v])) != null) return o
} else
for (var v = 0; v < h.length && v < s; v++) {
var d = h[i + v]
if (d && (o = S(d[a])) != null) return o
}
} else if (t === _e) {
var p = r
if (!l) return Ft.Not
for (var v = 0; v < p.length && v < s; v++) {
var g = p[v]
if (g && (o = S(g[l])) != null) return o
}
} else if (t === qe) {
var m = r
if (!l) return Ft.Not
var c = m[l]
if (!c || ie(c)) return Ft.Not
for (var v = 0; v < c.length && v < s; v++)
if ((o = S(c[v])) != null) return o
} else if (t === ye)
for (var y = r, v = 0; v < y.length && v < s; v++) {
var g = y[v],
_ = qi(g)
if (!z(_)) return Ft.Not
if ((o = S(_[a])) != null) return o
}
function S(w) {
var x = W(w)
if (w != null && isFinite(w) && w !== '') return x ? Ft.Might : Ft.Not
if (x && w !== '-') return Ft.Must
}
return Ft.Not
}
var Af = q()
function gA(r, t) {
Ve(Af.get(r) == null && t), Af.set(r, t)
}
function mA(r, t, e) {
var n = Af.get(t)
if (!n) return e
var i = n(r)
return i ? e.concat(i) : e
}
var yg = wt()
wt()
var Mf = (function () {
function r() {}
return (
(r.prototype.getColorFromPalette = function (t, e, n) {
var i = Mt(this.get('color', !0)),
a = this.get('colorLayer', !0)
return _A(this, yg, i, a, t, e, n)
}),
(r.prototype.clearColorPalette = function () {
SA(this, yg)
}),
r
)
})()
function yA(r, t) {
for (var e = r.length, n = 0; n < e; n++) if (r[n].length > t) return r[n]
return r[e - 1]
}
function _A(r, t, e, n, i, a, o) {
a = a || r
var s = t(a),
l = s.paletteIdx || 0,
u = (s.paletteNameMap = s.paletteNameMap || {})
if (u.hasOwnProperty(i)) return u[i]
var f = o == null || !n ? e : yA(n, o)
if (((f = f || e), !(!f || !f.length))) {
var h = f[l]
return i && (u[i] = h), (s.paletteIdx = (l + 1) % f.length), h
}
}
function SA(r, t) {
;(t(r).paletteIdx = 0), (t(r).paletteNameMap = {})
}
var Cs,
Sa,
_g,
Sg = '\0_ec_inner',
xA = 1,
xg = (function (r) {
B(t, r)
function t() {
return (r !== null && r.apply(this, arguments)) || this
}
return (
(t.prototype.init = function (e, n, i, a, o, s) {
;(a = a || {}),
(this.option = null),
(this._theme = new Nt(a)),
(this._locale = new Nt(o)),
(this._optionManager = s)
}),
(t.prototype.setOption = function (e, n, i) {
var a = Tg(n)
this._optionManager.setOption(e, i, a), this._resetOption(null, a)
}),
(t.prototype.resetOption = function (e, n) {
return this._resetOption(e, Tg(n))
}),
(t.prototype._resetOption = function (e, n) {
var i = !1,
a = this._optionManager
if (!e || e === 'recreate') {
var o = a.mountOption(e === 'recreate')
!this.option || e === 'recreate'
? _g(this, o)
: (this.restoreData(), this._mergeOption(o, n)),
(i = !0)
}
if (
((e === 'timeline' || e === 'media') && this.restoreData(),
!e || e === 'recreate' || e === 'timeline')
) {
var s = a.getTimelineOption(this)
s && ((i = !0), this._mergeOption(s, n))
}
if (!e || e === 'recreate' || e === 'media') {
var l = a.getMediaOption(this)
l.length &&
A(
l,
function (u) {
;(i = !0), this._mergeOption(u, n)
},
this
)
}
return i
}),
(t.prototype.mergeOption = function (e) {
this._mergeOption(e, null)
}),
(t.prototype._mergeOption = function (e, n) {
var i = this.option,
a = this._componentsMap,
o = this._componentsCount,
s = [],
l = q(),
u = n && n.replaceMergeMainTypeMap
vA(this),
A(e, function (h, c) {
h != null &&
(_t.hasClass(c)
? c && (s.push(c), l.set(c, !0))
: (i[c] = i[c] == null ? tt(h) : nt(i[c], h, !0)))
}),
u &&
u.each(function (h, c) {
_t.hasClass(c) && !l.get(c) && (s.push(c), l.set(c, !0))
}),
_t.topologicalTravel(s, _t.getAllClassMainTypes(), f, this)
function f(h) {
var c = mA(this, h, Mt(e[h])),
v = a.get(h),
d = v
? u && u.get(h)
? 'replaceMerge'
: 'normalMerge'
: 'replaceAll',
p = ib(v, c, d)
vb(p, h, _t), (i[h] = null), a.set(h, null), o.set(h, 0)
var g = [],
m = [],
y = 0,
_
A(
p,
function (S, w) {
var x = S.existing,
b = S.newOption
if (!b) x && (x.mergeOption({}, this), x.optionUpdated({}, !1))
else {
var T = h === 'series',
C = _t.getClass(h, S.keyInfo.subType, !T)
if (!C) return
if (h === 'tooltip') {
if (_) return
_ = !0
}
if (x && x.constructor === C)
(x.name = S.keyInfo.name),
x.mergeOption(b, this),
x.optionUpdated(b, !1)
else {
var M = N({ componentIndex: w }, S.keyInfo)
;(x = new C(b, this, this, M)),
N(x, M),
S.brandNew && (x.__requireNewView = !0),
x.init(b, this, this),
x.optionUpdated(null, !0)
}
}
x
? (g.push(x.option), m.push(x), y++)
: (g.push(void 0), m.push(void 0))
},
this
),
(i[h] = g),
a.set(h, m),
o.set(h, y),
h === 'series' && Cs(this)
}
this._seriesIndices || Cs(this)
}),
(t.prototype.getOption = function () {
var e = tt(this.option)
return (
A(e, function (n, i) {
if (_t.hasClass(i)) {
for (var a = Mt(n), o = a.length, s = !1, l = o - 1; l >= 0; l--)
a[l] && !Qi(a[l]) ? (s = !0) : ((a[l] = null), !s && o--)
;(a.length = o), (e[i] = a)
}
}),
delete e[Sg],
e
)
}),
(t.prototype.getTheme = function () {
return this._theme
}),
(t.prototype.getLocaleModel = function () {
return this._locale
}),
(t.prototype.setUpdatePayload = function (e) {
this._payload = e
}),
(t.prototype.getUpdatePayload = function () {
return this._payload
}),
(t.prototype.getComponent = function (e, n) {
var i = this._componentsMap.get(e)
if (i) {
var a = i[n || 0]
if (a) return a
if (n == null) {
for (var o = 0; o < i.length; o++) if (i[o]) return i[o]
}
}
}),
(t.prototype.queryComponents = function (e) {
var n = e.mainType
if (!n) return []
var i = e.index,
a = e.id,
o = e.name,
s = this._componentsMap.get(n)
if (!s || !s.length) return []
var l
return (
i != null
? ((l = []),
A(Mt(i), function (u) {
s[u] && l.push(s[u])
}))
: a != null
? (l = wg('id', a, s))
: o != null
? (l = wg('name', o, s))
: (l = Lt(s, function (u) {
return !!u
})),
bg(l, e)
)
}),
(t.prototype.findComponents = function (e) {
var n = e.query,
i = e.mainType,
a = s(n),
o = a
? this.queryComponents(a)
: Lt(this._componentsMap.get(i), function (u) {
return !!u
})
return l(bg(o, e))
function s(u) {
var f = i + 'Index',
h = i + 'Id',
c = i + 'Name'
return u && (u[f] != null || u[h] != null || u[c] != null)
? { mainType: i, index: u[f], id: u[h], name: u[c] }
: null
}
function l(u) {
return e.filter ? Lt(u, e.filter) : u
}
}),
(t.prototype.eachComponent = function (e, n, i) {
var a = this._componentsMap
if (Q(e)) {
var o = n,
s = e
a.each(function (h, c) {
for (var v = 0; h && v < h.length; v++) {
var d = h[v]
d && s.call(o, c, d, d.componentIndex)
}
})
} else
for (
var l = W(e) ? a.get(e) : Y(e) ? this.findComponents(e) : null,
u = 0;
l && u < l.length;
u++
) {
var f = l[u]
f && n.call(i, f, f.componentIndex)
}
}),
(t.prototype.getSeriesByName = function (e) {
var n = We(e, null)
return Lt(this._componentsMap.get('series'), function (i) {
return !!i && n != null && i.name === n
})
}),
(t.prototype.getSeriesByIndex = function (e) {
return this._componentsMap.get('series')[e]
}),
(t.prototype.getSeriesByType = function (e) {
return Lt(this._componentsMap.get('series'), function (n) {
return !!n && n.subType === e
})
}),
(t.prototype.getSeries = function () {
return Lt(this._componentsMap.get('series'), function (e) {
return !!e
})
}),
(t.prototype.getSeriesCount = function () {
return this._componentsCount.get('series')
}),
(t.prototype.eachSeries = function (e, n) {
Sa(this),
A(
this._seriesIndices,
function (i) {
var a = this._componentsMap.get('series')[i]
e.call(n, a, i)
},
this
)
}),
(t.prototype.eachRawSeries = function (e, n) {
A(this._componentsMap.get('series'), function (i) {
i && e.call(n, i, i.componentIndex)
})
}),
(t.prototype.eachSeriesByType = function (e, n, i) {
Sa(this),
A(
this._seriesIndices,
function (a) {
var o = this._componentsMap.get('series')[a]
o.subType === e && n.call(i, o, a)
},
this
)
}),
(t.prototype.eachRawSeriesByType = function (e, n, i) {
return A(this.getSeriesByType(e), n, i)
}),
(t.prototype.isSeriesFiltered = function (e) {
return Sa(this), this._seriesIndicesMap.get(e.componentIndex) == null
}),
(t.prototype.getCurrentSeriesIndices = function () {
return (this._seriesIndices || []).slice()
}),
(t.prototype.filterSeries = function (e, n) {
Sa(this)
var i = []
A(
this._seriesIndices,
function (a) {
var o = this._componentsMap.get('series')[a]
e.call(n, o, a) && i.push(a)
},
this
),
(this._seriesIndices = i),
(this._seriesIndicesMap = q(i))
}),
(t.prototype.restoreData = function (e) {
Cs(this)
var n = this._componentsMap,
i = []
n.each(function (a, o) {
_t.hasClass(o) && i.push(o)
}),
_t.topologicalTravel(i, _t.getAllClassMainTypes(), function (a) {
A(n.get(a), function (o) {
o && (a !== 'series' || !wA(o, e)) && o.restoreData()
})
})
}),
(t.internalField = (function () {
;(Cs = function (e) {
var n = (e._seriesIndices = [])
A(e._componentsMap.get('series'), function (i) {
i && n.push(i.componentIndex)
}),
(e._seriesIndicesMap = q(n))
}),
(Sa = function (e) {}),
(_g = function (e, n) {
;(e.option = {}),
(e.option[Sg] = xA),
(e._componentsMap = q({ series: [] })),
(e._componentsCount = q())
var i = n.aria
Y(i) && i.enabled == null && (i.enabled = !0),
bA(n, e._theme.option),
nt(n, hA, !1),
e._mergeOption(n, null)
})
})()),
t
)
})(Nt)
function wA(r, t) {
if (t) {
var e = t.seriesIndex,
n = t.seriesId,
i = t.seriesName
return (
(e != null && r.componentIndex !== e) ||
(n != null && r.id !== n) ||
(i != null && r.name !== i)
)
}
}
function bA(r, t) {
var e = r.color && !r.colorLayer
A(t, function (n, i) {
;(i === 'colorLayer' && e) ||
_t.hasClass(i) ||
(typeof n == 'object'
? (r[i] = r[i] ? nt(r[i], n, !1) : tt(n))
: r[i] == null && (r[i] = n))
})
}
function wg(r, t, e) {
if (z(t)) {
var n = q()
return (
A(t, function (a) {
if (a != null) {
var o = We(a, null)
o != null && n.set(a, !0)
}
}),
Lt(e, function (a) {
return a && n.get(a[r])
})
)
} else {
var i = We(t, null)
return Lt(e, function (a) {
return a && i != null && a[r] === i
})
}
}
function bg(r, t) {
return t.hasOwnProperty('subType')
? Lt(r, function (e) {
return e && e.subType === t.subType
})
: r
}
function Tg(r) {
var t = q()
return (
r &&
A(Mt(r.replaceMerge), function (e) {
t.set(e, !0)
}),
{ replaceMergeMainTypeMap: t }
)
}
ze(xg, Mf)
var Cg = xg,
TA = [
'getDom',
'getZr',
'getWidth',
'getHeight',
'getDevicePixelRatio',
'dispatchAction',
'isSSR',
'isDisposed',
'on',
'off',
'getDataURL',
'getConnectedDataURL',
'getOption',
'getId',
'updateLabelLayout'
],
CA = (function () {
function r(t) {
A(
TA,
function (e) {
this[e] = X(t[e], t)
},
this
)
}
return r
})(),
Ag = CA,
Df = {},
AA = (function () {
function r() {
this._coordinateSystems = []
}
return (
(r.prototype.create = function (t, e) {
var n = []
A(Df, function (i, a) {
var o = i.create(t, e)
n = n.concat(o || [])
}),
(this._coordinateSystems = n)
}),
(r.prototype.update = function (t, e) {
A(this._coordinateSystems, function (n) {
n.update && n.update(t, e)
})
}),
(r.prototype.getCoordinateSystems = function () {
return this._coordinateSystems.slice()
}),
(r.register = function (t, e) {
Df[t] = e
}),
(r.get = function (t) {
return Df[t]
}),
r
)
})(),
If = AA,
MA = /^(min|max)?(.+)$/,
DA = (function () {
function r(t) {
;(this._timelineOptions = []),
(this._mediaList = []),
(this._currentMediaIndices = []),
(this._api = t)
}
return (
(r.prototype.setOption = function (t, e, n) {
t &&
(A(Mt(t.series), function (o) {
o && o.data && ie(o.data) && oo(o.data)
}),
A(Mt(t.dataset), function (o) {
o && o.source && ie(o.source) && oo(o.source)
})),
(t = tt(t))
var i = this._optionBackup,
a = IA(t, e, !i)
;(this._newBaseOption = a.baseOption),
i
? (a.timelineOptions.length &&
(i.timelineOptions = a.timelineOptions),
a.mediaList.length && (i.mediaList = a.mediaList),
a.mediaDefault && (i.mediaDefault = a.mediaDefault))
: (this._optionBackup = a)
}),
(r.prototype.mountOption = function (t) {
var e = this._optionBackup
return (
(this._timelineOptions = e.timelineOptions),
(this._mediaList = e.mediaList),
(this._mediaDefault = e.mediaDefault),
(this._currentMediaIndices = []),
tt(t ? e.baseOption : this._newBaseOption)
)
}),
(r.prototype.getTimelineOption = function (t) {
var e,
n = this._timelineOptions
if (n.length) {
var i = t.getComponent('timeline')
i && (e = tt(n[i.getCurrentIndex()]))
}
return e
}),
(r.prototype.getMediaOption = function (t) {
var e = this._api.getWidth(),
n = this._api.getHeight(),
i = this._mediaList,
a = this._mediaDefault,
o = [],
s = []
if (!i.length && !a) return s
for (var l = 0, u = i.length; l < u; l++)
LA(i[l].query, e, n) && o.push(l)
return (
!o.length && a && (o = [-1]),
o.length &&
!RA(o, this._currentMediaIndices) &&
(s = G(o, function (f) {
return tt(f === -1 ? a.option : i[f].option)
})),
(this._currentMediaIndices = o),
s
)
}),
r
)
})()
function IA(r, t, e) {
var n = [],
i,
a,
o = r.baseOption,
s = r.timeline,
l = r.options,
u = r.media,
f = !!r.media,
h = !!(l || s || (o && o.timeline))
o
? ((a = o), a.timeline || (a.timeline = s))
: ((h || f) && (r.options = r.media = null), (a = r)),
f &&
z(u) &&
A(u, function (v) {
v && v.option && (v.query ? n.push(v) : i || (i = v))
}),
c(a),
A(l, function (v) {
return c(v)
}),
A(n, function (v) {
return c(v.option)
})
function c(v) {
A(t, function (d) {
d(v, e)
})
}
return {
baseOption: a,
timelineOptions: l || [],
mediaDefault: i,
mediaList: n
}
}
function LA(r, t, e) {
var n = { width: t, height: e, aspectratio: t / e },
i = !0
return (
A(r, function (a, o) {
var s = o.match(MA)
if (!(!s || !s[1] || !s[2])) {
var l = s[1],
u = s[2].toLowerCase()
PA(n[u], a, l) || (i = !1)
}
}),
i
)
}
function PA(r, t, e) {
return e === 'min' ? r >= t : e === 'max' ? r <= t : r === t
}
function RA(r, t) {
return r.join(',') === t.join(',')
}
var EA = DA,
Le = A,
xa = Y,
Mg = [
'areaStyle',
'lineStyle',
'nodeStyle',
'linkStyle',
'chordStyle',
'label',
'labelLine'
]
function Lf(r) {
var t = r && r.itemStyle
if (!!t)
for (var e = 0, n = Mg.length; e < n; e++) {
var i = Mg[e],
a = t.normal,
o = t.emphasis
a &&
a[i] &&
((r[i] = r[i] || {}),
r[i].normal ? nt(r[i].normal, a[i]) : (r[i].normal = a[i]),
(a[i] = null)),
o &&
o[i] &&
((r[i] = r[i] || {}),
r[i].emphasis ? nt(r[i].emphasis, o[i]) : (r[i].emphasis = o[i]),
(o[i] = null))
}
}
function Ut(r, t, e) {
if (r && r[t] && (r[t].normal || r[t].emphasis)) {
var n = r[t].normal,
i = r[t].emphasis
n && (e ? ((r[t].normal = r[t].emphasis = null), j(r[t], n)) : (r[t] = n)),
i &&
((r.emphasis = r.emphasis || {}),
(r.emphasis[t] = i),
i.focus && (r.emphasis.focus = i.focus),
i.blurScope && (r.emphasis.blurScope = i.blurScope))
}
}
function wa(r) {
Ut(r, 'itemStyle'),
Ut(r, 'lineStyle'),
Ut(r, 'areaStyle'),
Ut(r, 'label'),
Ut(r, 'labelLine'),
Ut(r, 'upperLabel'),
Ut(r, 'edgeLabel')
}
function Dt(r, t) {
var e = xa(r) && r[t],
n = xa(e) && e.textStyle
if (n)
for (var i = 0, a = rd.length; i < a; i++) {
var o = rd[i]
n.hasOwnProperty(o) && (e[o] = n[o])
}
}
function Se(r) {
r && (wa(r), Dt(r, 'label'), r.emphasis && Dt(r.emphasis, 'label'))
}
function OA(r) {
if (!!xa(r)) {
Lf(r),
wa(r),
Dt(r, 'label'),
Dt(r, 'upperLabel'),
Dt(r, 'edgeLabel'),
r.emphasis &&
(Dt(r.emphasis, 'label'),
Dt(r.emphasis, 'upperLabel'),
Dt(r.emphasis, 'edgeLabel'))
var t = r.markPoint
t && (Lf(t), Se(t))
var e = r.markLine
e && (Lf(e), Se(e))
var n = r.markArea
n && Se(n)
var i = r.data
if (r.type === 'graph') {
i = i || r.nodes
var a = r.links || r.edges
if (a && !ie(a)) for (var o = 0; o < a.length; o++) Se(a[o])
A(r.categories, function (u) {
wa(u)
})
}
if (i && !ie(i)) for (var o = 0; o < i.length; o++) Se(i[o])
if (((t = r.markPoint), t && t.data))
for (var s = t.data, o = 0; o < s.length; o++) Se(s[o])
if (((e = r.markLine), e && e.data))
for (var l = e.data, o = 0; o < l.length; o++)
z(l[o]) ? (Se(l[o][0]), Se(l[o][1])) : Se(l[o])
r.type === 'gauge'
? (Dt(r, 'axisLabel'), Dt(r, 'title'), Dt(r, 'detail'))
: r.type === 'treemap'
? (Ut(r.breadcrumb, 'itemStyle'),
A(r.levels, function (u) {
wa(u)
}))
: r.type === 'tree' && wa(r.leaves)
}
}
function dr(r) {
return z(r) ? r : r ? [r] : []
}
function Dg(r) {
return (z(r) ? r[0] : r) || {}
}
function kA(r, t) {
Le(dr(r.series), function (n) {
xa(n) && OA(n)
})
var e = [
'xAxis',
'yAxis',
'radiusAxis',
'angleAxis',
'singleAxis',
'parallelAxis',
'radar'
]
t && e.push('valueAxis', 'categoryAxis', 'logAxis', 'timeAxis'),
Le(e, function (n) {
Le(dr(r[n]), function (i) {
i && (Dt(i, 'axisLabel'), Dt(i.axisPointer, 'label'))
})
}),
Le(dr(r.parallel), function (n) {
var i = n && n.parallelAxisDefault
Dt(i, 'axisLabel'), Dt(i && i.axisPointer, 'label')
}),
Le(dr(r.calendar), function (n) {
Ut(n, 'itemStyle'),
Dt(n, 'dayLabel'),
Dt(n, 'monthLabel'),
Dt(n, 'yearLabel')
}),
Le(dr(r.radar), function (n) {
Dt(n, 'name'),
n.name && n.axisName == null && ((n.axisName = n.name), delete n.name),
n.nameGap != null &&
n.axisNameGap == null &&
((n.axisNameGap = n.nameGap), delete n.nameGap)
}),
Le(dr(r.geo), function (n) {
xa(n) &&
(Se(n),
Le(dr(n.regions), function (i) {
Se(i)
}))
}),
Le(dr(r.timeline), function (n) {
Se(n), Ut(n, 'label'), Ut(n, 'itemStyle'), Ut(n, 'controlStyle', !0)
var i = n.data
z(i) &&
A(i, function (a) {
Y(a) && (Ut(a, 'label'), Ut(a, 'itemStyle'))
})
}),
Le(dr(r.toolbox), function (n) {
Ut(n, 'iconStyle'),
Le(n.feature, function (i) {
Ut(i, 'iconStyle')
})
}),
Dt(Dg(r.axisPointer), 'label'),
Dt(Dg(r.tooltip).axisPointer, 'label')
}
function BA(r, t) {
for (
var e = t.split(','), n = r, i = 0;
i < e.length && ((n = n && n[e[i]]), n != null);
i++
);
return n
}
function NA(r, t, e, n) {
for (var i = t.split(','), a = r, o, s = 0; s < i.length - 1; s++)
(o = i[s]), a[o] == null && (a[o] = {}), (a = a[o])
;(n || a[i[s]] == null) && (a[i[s]] = e)
}
function Ig(r) {
r &&
A(FA, function (t) {
t[0] in r && !(t[1] in r) && (r[t[1]] = r[t[0]])
})
}
var FA = [
['x', 'left'],
['y', 'top'],
['x2', 'right'],
['y2', 'bottom']
],
zA = [
'grid',
'geo',
'parallel',
'legend',
'toolbox',
'title',
'visualMap',
'dataZoom',
'timeline'
],
Pf = [
['borderRadius', 'barBorderRadius'],
['borderColor', 'barBorderColor'],
['borderWidth', 'barBorderWidth']
]
function ba(r) {
var t = r && r.itemStyle
if (t)
for (var e = 0; e < Pf.length; e++) {
var n = Pf[e][1],
i = Pf[e][0]
t[n] != null && (t[i] = t[n])
}
}
function Lg(r) {
!r ||
(r.alignTo === 'edge' &&
r.margin != null &&
r.edgeDistance == null &&
(r.edgeDistance = r.margin))
}
function Pg(r) {
!r || (r.downplay && !r.blur && (r.blur = r.downplay))
}
function VA(r) {
!r ||
(r.focusNodeAdjacency != null &&
((r.emphasis = r.emphasis || {}),
r.emphasis.focus == null && (r.emphasis.focus = 'adjacency')))
}
function Rg(r, t) {
if (r)
for (var e = 0; e < r.length; e++) t(r[e]), r[e] && Rg(r[e].children, t)
}
function Eg(r, t) {
kA(r, t),
(r.series = Mt(r.series)),
A(r.series, function (e) {
if (!!Y(e)) {
var n = e.type
if (n === 'line') e.clipOverflow != null && (e.clip = e.clipOverflow)
else if (n === 'pie' || n === 'gauge') {
e.clockWise != null && (e.clockwise = e.clockWise), Lg(e.label)
var i = e.data
if (i && !ie(i)) for (var a = 0; a < i.length; a++) Lg(i[a])
e.hoverOffset != null &&
((e.emphasis = e.emphasis || {}),
(e.emphasis.scaleSize = null) &&
(e.emphasis.scaleSize = e.hoverOffset))
} else if (n === 'gauge') {
var o = BA(e, 'pointer.color')
o != null && NA(e, 'itemStyle.color', o)
} else if (n === 'bar') {
ba(e), ba(e.backgroundStyle), ba(e.emphasis)
var i = e.data
if (i && !ie(i))
for (var a = 0; a < i.length; a++)
typeof i[a] == 'object' && (ba(i[a]), ba(i[a] && i[a].emphasis))
} else if (n === 'sunburst') {
var s = e.highlightPolicy
s &&
((e.emphasis = e.emphasis || {}),
e.emphasis.focus || (e.emphasis.focus = s)),
Pg(e),
Rg(e.data, Pg)
} else
n === 'graph' || n === 'sankey'
? VA(e)
: n === 'map' &&
(e.mapType && !e.map && (e.map = e.mapType),
e.mapLocation && j(e, e.mapLocation))
e.hoverAnimation != null &&
((e.emphasis = e.emphasis || {}),
e.emphasis &&
e.emphasis.scale == null &&
(e.emphasis.scale = e.hoverAnimation)),
Ig(e)
}
}),
r.dataRange && (r.visualMap = r.dataRange),
A(zA, function (e) {
var n = r[e]
n &&
(z(n) || (n = [n]),
A(n, function (i) {
Ig(i)
}))
})
}
function GA(r) {
var t = q()
r.eachSeries(function (e) {
var n = e.get('stack')
if (n) {
var i = t.get(n) || t.set(n, []),
a = e.getData(),
o = {
stackResultDimension: a.getCalculationInfo('stackResultDimension'),
stackedOverDimension: a.getCalculationInfo('stackedOverDimension'),
stackedDimension: a.getCalculationInfo('stackedDimension'),
stackedByDimension: a.getCalculationInfo('stackedByDimension'),
isStackedByIndex: a.getCalculationInfo('isStackedByIndex'),
data: a,
seriesModel: e
}
if (!o.stackedDimension || !(o.isStackedByIndex || o.stackedByDimension))
return
i.length &&
a.setCalculationInfo('stackedOnSeries', i[i.length - 1].seriesModel),
i.push(o)
}
}),
t.each(HA)
}
function HA(r) {
A(r, function (t, e) {
var n = [],
i = [NaN, NaN],
a = [t.stackResultDimension, t.stackedOverDimension],
o = t.data,
s = t.isStackedByIndex,
l = t.seriesModel.get('stackStrategy') || 'samesign'
o.modify(a, function (u, f, h) {
var c = o.get(t.stackedDimension, h)
if (isNaN(c)) return i
var v, d
s ? (d = o.getRawIndex(h)) : (v = o.get(t.stackedByDimension, h))
for (var p = NaN, g = e - 1; g >= 0; g--) {
var m = r[g]
if ((s || (d = m.data.rawIndexOf(m.stackedByDimension, v)), d >= 0)) {
var y = m.data.getByRawIndex(m.stackResultDimension, d)
if (
l === 'all' ||
(l === 'positive' && y > 0) ||
(l === 'negative' && y < 0) ||
(l === 'samesign' && c >= 0 && y > 0) ||
(l === 'samesign' && c <= 0 && y < 0)
) {
;(c = jw(c, y)), (p = y)
break
}
}
}
return (n[0] = c), (n[1] = p), n
})
})
}
var As = (function () {
function r(t) {
;(this.data = t.data || (t.sourceFormat === qe ? {} : [])),
(this.sourceFormat = t.sourceFormat || dg),
(this.seriesLayoutBy = t.seriesLayoutBy || Ke),
(this.startIndex = t.startIndex || 0),
(this.dimensionsDetectedCount = t.dimensionsDetectedCount),
(this.metaRawOption = t.metaRawOption)
var e = (this.dimensionsDefine = t.dimensionsDefine)
if (e)
for (var n = 0; n < e.length; n++) {
var i = e[n]
i.type == null && gg(this, n) === Ft.Must && (i.type = 'ordinal')
}
}
return r
})()
function Rf(r) {
return r instanceof As
}
function Ef(r, t, e) {
e = e || Og(r)
var n = t.seriesLayoutBy,
i = UA(r, e, n, t.sourceHeader, t.dimensions),
a = new As({
data: r,
sourceFormat: e,
seriesLayoutBy: n,
dimensionsDefine: i.dimensionsDefine,
startIndex: i.startIndex,
dimensionsDetectedCount: i.dimensionsDetectedCount,
metaRawOption: tt(t)
})
return a
}
function Of(r) {
return new As({ data: r, sourceFormat: ie(r) ? Pr : ye })
}
function WA(r) {
return new As({
data: r.data,
sourceFormat: r.sourceFormat,
seriesLayoutBy: r.seriesLayoutBy,
dimensionsDefine: tt(r.dimensionsDefine),
startIndex: r.startIndex,
dimensionsDetectedCount: r.dimensionsDetectedCount
})
}
function Og(r) {
var t = dg
if (ie(r)) t = Pr
else if (z(r)) {
r.length === 0 && (t = Kt)
for (var e = 0, n = r.length; e < n; e++) {
var i = r[e]
if (i != null) {
if (z(i)) {
t = Kt
break
} else if (Y(i)) {
t = _e
break
}
}
}
} else if (Y(r)) {
for (var a in r)
if (nr(r, a) && Zt(r[a])) {
t = qe
break
}
}
return t
}
function UA(r, t, e, n, i) {
var a, o
if (!r)
return {
dimensionsDefine: kg(i),
startIndex: o,
dimensionsDetectedCount: a
}
if (t === Kt) {
var s = r
n === 'auto' || n == null
? Bg(
function (u) {
u != null && u !== '-' && (W(u) ? o == null && (o = 1) : (o = 0))
},
e,
s,
10
)
: (o = dt(n) ? n : n ? 1 : 0),
!i &&
o === 1 &&
((i = []),
Bg(
function (u, f) {
i[f] = u != null ? u + '' : ''
},
e,
s,
1 / 0
)),
(a = i ? i.length : e === di ? s.length : s[0] ? s[0].length : null)
} else if (t === _e) i || (i = YA(r))
else if (t === qe)
i ||
((i = []),
A(r, function (u, f) {
i.push(f)
}))
else if (t === ye) {
var l = qi(r[0])
a = (z(l) && l.length) || 1
}
return { startIndex: o, dimensionsDefine: kg(i), dimensionsDetectedCount: a }
}
function YA(r) {
for (var t = 0, e; t < r.length && !(e = r[t++]); );
if (e) {
var n = []
return (
A(e, function (i, a) {
n.push(a)
}),
n
)
}
}
function kg(r) {
if (!!r) {
var t = q()
return G(r, function (e, n) {
e = Y(e) ? e : { name: e }
var i = { name: e.name, displayName: e.displayName, type: e.type }
if (i.name == null) return i
;(i.name += ''), i.displayName == null && (i.displayName = i.name)
var a = t.get(i.name)
return a ? (i.name += '-' + a.count++) : t.set(i.name, { count: 1 }), i
})
}
}
function Bg(r, t, e, n) {
if (t === di)
for (var i = 0; i < e.length && i < n; i++) r(e[i] ? e[i][0] : null, i)
else for (var a = e[0] || [], i = 0; i < a.length && i < n; i++) r(a[i], i)
}
function Ng(r) {
var t = r.sourceFormat
return t === _e || t === qe
}
var _n,
Sn,
xn,
Fg,
zg,
Vg = (function () {
function r(t, e) {
var n = Rf(t) ? t : Of(t)
this._source = n
var i = (this._data = n.data)
n.sourceFormat === Pr &&
((this._offset = 0), (this._dimSize = e), (this._data = i)),
zg(this, i, n)
}
return (
(r.prototype.getSource = function () {
return this._source
}),
(r.prototype.count = function () {
return 0
}),
(r.prototype.getItem = function (t, e) {}),
(r.prototype.appendData = function (t) {}),
(r.prototype.clean = function () {}),
(r.protoInitialize = (function () {
var t = r.prototype
;(t.pure = !1), (t.persistent = !0)
})()),
(r.internalField = (function () {
var t
zg = function (o, s, l) {
var u = l.sourceFormat,
f = l.seriesLayoutBy,
h = l.startIndex,
c = l.dimensionsDefine,
v = Fg[Bf(u, f)]
if ((N(o, v), u === Pr))
(o.getItem = e), (o.count = i), (o.fillStorage = n)
else {
var d = Hg(u, f)
o.getItem = X(d, null, s, h, c)
var p = Ug(u, f)
o.count = X(p, null, s, h, c)
}
}
var e = function (o, s) {
;(o = o - this._offset), (s = s || [])
for (
var l = this._data, u = this._dimSize, f = u * o, h = 0;
h < u;
h++
)
s[h] = l[f + h]
return s
},
n = function (o, s, l, u) {
for (var f = this._data, h = this._dimSize, c = 0; c < h; c++) {
for (
var v = u[c],
d = v[0] == null ? 1 / 0 : v[0],
p = v[1] == null ? -1 / 0 : v[1],
g = s - o,
m = l[c],
y = 0;
y < g;
y++
) {
var _ = f[y * h + c]
;(m[o + y] = _), _ < d && (d = _), _ > p && (p = _)
}
;(v[0] = d), (v[1] = p)
}
},
i = function () {
return this._data ? this._data.length / this._dimSize : 0
}
Fg =
((t = {}),
(t[Kt + '_' + Ke] = { pure: !0, appendData: a }),
(t[Kt + '_' + di] = {
pure: !0,
appendData: function () {
throw new Error(
'Do not support appendData when set seriesLayoutBy: "row".'
)
}
}),
(t[_e] = { pure: !0, appendData: a }),
(t[qe] = {
pure: !0,
appendData: function (o) {
var s = this._data
A(o, function (l, u) {
for (
var f = s[u] || (s[u] = []), h = 0;
h < (l || []).length;
h++
)
f.push(l[h])
})
}
}),
(t[ye] = { appendData: a }),
(t[Pr] = {
persistent: !1,
pure: !0,
appendData: function (o) {
this._data = o
},
clean: function () {
;(this._offset += this.count()), (this._data = null)
}
}),
t)
function a(o) {
for (var s = 0; s < o.length; s++) this._data.push(o[s])
}
})()),
r
)
})(),
Gg = function (r, t, e, n) {
return r[n]
},
ZA =
((_n = {}),
(_n[Kt + '_' + Ke] = function (r, t, e, n) {
return r[n + t]
}),
(_n[Kt + '_' + di] = function (r, t, e, n, i) {
n += t
for (var a = i || [], o = r, s = 0; s < o.length; s++) {
var l = o[s]
a[s] = l ? l[n] : null
}
return a
}),
(_n[_e] = Gg),
(_n[qe] = function (r, t, e, n, i) {
for (var a = i || [], o = 0; o < e.length; o++) {
var s = e[o].name,
l = r[s]
a[o] = l ? l[n] : null
}
return a
}),
(_n[ye] = Gg),
_n)
function Hg(r, t) {
var e = ZA[Bf(r, t)]
return e
}
var Wg = function (r, t, e) {
return r.length
},
$A =
((Sn = {}),
(Sn[Kt + '_' + Ke] = function (r, t, e) {
return Math.max(0, r.length - t)
}),
(Sn[Kt + '_' + di] = function (r, t, e) {
var n = r[0]
return n ? Math.max(0, n.length - t) : 0
}),
(Sn[_e] = Wg),
(Sn[qe] = function (r, t, e) {
var n = e[0].name,
i = r[n]
return i ? i.length : 0
}),
(Sn[ye] = Wg),
Sn)
function Ug(r, t) {
var e = $A[Bf(r, t)]
return e
}
var kf = function (r, t, e) {
return r[t]
},
XA =
((xn = {}),
(xn[Kt] = kf),
(xn[_e] = function (r, t, e) {
return r[e]
}),
(xn[qe] = kf),
(xn[ye] = function (r, t, e) {
var n = qi(r)
return n instanceof Array ? n[t] : n
}),
(xn[Pr] = kf),
xn)
function Yg(r) {
var t = XA[r]
return t
}
function Bf(r, t) {
return r === Kt ? r + '_' + t : r
}
function pi(r, t, e) {
if (!!r) {
var n = r.getRawDataItem(t)
if (n != null) {
var i = r.getStore(),
a = i.getSource().sourceFormat
if (e != null) {
var o = r.getDimensionIndex(e),
s = i.getDimensionProperty(o)
return Yg(a)(n, o, s)
} else {
var l = n
return a === ye && (l = qi(n)), l
}
}
}
}
var qA = /\{@(.+?)\}/g,
KA = (function () {
function r() {}
return (
(r.prototype.getDataParams = function (t, e) {
var n = this.getData(e),
i = this.getRawValue(t, e),
a = n.getRawIndex(t),
o = n.getName(t),
s = n.getRawDataItem(t),
l = n.getItemVisual(t, 'style'),
u = l && l[n.getItemVisual(t, 'drawType') || 'fill'],
f = l && l.stroke,
h = this.mainType,
c = h === 'series',
v = n.userOutput && n.userOutput.get()
return {
componentType: h,
componentSubType: this.subType,
componentIndex: this.componentIndex,
seriesType: c ? this.subType : null,
seriesIndex: this.seriesIndex,
seriesId: c ? this.id : null,
seriesName: c ? this.name : null,
name: o,
dataIndex: a,
data: s,
dataType: e,
value: i,
color: u,
borderColor: f,
dimensionNames: v ? v.fullDimensions : null,
encode: v ? v.encode : null,
$vars: ['seriesName', 'name', 'value']
}
}),
(r.prototype.getFormattedLabel = function (t, e, n, i, a, o) {
e = e || 'normal'
var s = this.getData(n),
l = this.getDataParams(t, n)
if (
(o && (l.value = o.interpolatedValue),
i != null && z(l.value) && (l.value = l.value[i]),
!a)
) {
var u = s.getItemModel(t)
a = u.get(
e === 'normal' ? ['label', 'formatter'] : [e, 'label', 'formatter']
)
}
if (Q(a)) return (l.status = e), (l.dimensionIndex = i), a(l)
if (W(a)) {
var f = fg(a, l)
return f.replace(qA, function (h, c) {
var v = c.length,
d = c
d.charAt(0) === '[' &&
d.charAt(v - 1) === ']' &&
(d = +d.slice(1, v - 1))
var p = pi(s, t, d)
if (o && z(o.interpolatedValue)) {
var g = s.getDimensionIndex(d)
g >= 0 && (p = o.interpolatedValue[g])
}
return p != null ? p + '' : ''
})
}
}),
(r.prototype.getRawValue = function (t, e) {
return pi(this.getData(e), t)
}),
(r.prototype.formatTooltip = function (t, e, n) {}),
r
)
})()
function Zg(r) {
var t, e
return Y(r) ? r.type && (e = r) : (t = r), { text: t, frag: e }
}
function Ta(r) {
return new QA(r)
}
var QA = (function () {
function r(t) {
;(t = t || {}),
(this._reset = t.reset),
(this._plan = t.plan),
(this._count = t.count),
(this._onDirty = t.onDirty),
(this._dirty = !0)
}
return (
(r.prototype.perform = function (t) {
var e = this._upstream,
n = t && t.skip
if (this._dirty && e) {
var i = this.context
i.data = i.outputData = e.context.outputData
}
this.__pipeline && (this.__pipeline.currentTask = this)
var a
this._plan && !n && (a = this._plan(this.context))
var o = f(this._modBy),
s = this._modDataCount || 0,
l = f(t && t.modBy),
u = (t && t.modDataCount) || 0
;(o !== l || s !== u) && (a = 'reset')
function f(y) {
return !(y >= 1) && (y = 1), y
}
var h
;(this._dirty || a === 'reset') &&
((this._dirty = !1), (h = this._doReset(n))),
(this._modBy = l),
(this._modDataCount = u)
var c = t && t.step
if (
(e
? (this._dueEnd = e._outputDueEnd)
: (this._dueEnd = this._count ? this._count(this.context) : 1 / 0),
this._progress)
) {
var v = this._dueIndex,
d = Math.min(c != null ? this._dueIndex + c : 1 / 0, this._dueEnd)
if (!n && (h || v < d)) {
var p = this._progress
if (z(p))
for (var g = 0; g < p.length; g++)
this._doProgress(p[g], v, d, l, u)
else this._doProgress(p, v, d, l, u)
}
this._dueIndex = d
var m = this._settedOutputEnd != null ? this._settedOutputEnd : d
this._outputDueEnd = m
} else
this._dueIndex = this._outputDueEnd =
this._settedOutputEnd != null ? this._settedOutputEnd : this._dueEnd
return this.unfinished()
}),
(r.prototype.dirty = function () {
;(this._dirty = !0), this._onDirty && this._onDirty(this.context)
}),
(r.prototype._doProgress = function (t, e, n, i, a) {
$g.reset(e, n, i, a),
(this._callingProgress = t),
this._callingProgress(
{ start: e, end: n, count: n - e, next: $g.next },
this.context
)
}),
(r.prototype._doReset = function (t) {
;(this._dueIndex = this._outputDueEnd = this._dueEnd = 0),
(this._settedOutputEnd = null)
var e, n
!t &&
this._reset &&
((e = this._reset(this.context)),
e && e.progress && ((n = e.forceFirstProgress), (e = e.progress)),
z(e) && !e.length && (e = null)),
(this._progress = e),
(this._modBy = this._modDataCount = null)
var i = this._downstream
return i && i.dirty(), n
}),
(r.prototype.unfinished = function () {
return this._progress && this._dueIndex < this._dueEnd
}),
(r.prototype.pipe = function (t) {
;(this._downstream !== t || this._dirty) &&
((this._downstream = t), (t._upstream = this), t.dirty())
}),
(r.prototype.dispose = function () {
this._disposed ||
(this._upstream && (this._upstream._downstream = null),
this._downstream && (this._downstream._upstream = null),
(this._dirty = !1),
(this._disposed = !0))
}),
(r.prototype.getUpstream = function () {
return this._upstream
}),
(r.prototype.getDownstream = function () {
return this._downstream
}),
(r.prototype.setOutputEnd = function (t) {
this._outputDueEnd = this._settedOutputEnd = t
}),
r
)
})(),
$g = (function () {
var r,
t,
e,
n,
i,
a = {
reset: function (l, u, f, h) {
;(t = l),
(r = u),
(e = f),
(n = h),
(i = Math.ceil(n / e)),
(a.next = e > 1 && n > 0 ? s : o)
}
}
return a
function o() {
return t < r ? t++ : null
}
function s() {
var l = (t % i) * e + Math.ceil(t / i),
u = t >= r ? null : l < n ? l : t
return t++, u
}
})()
function Ms(r, t) {
var e = t && t.type
return e === 'ordinal'
? r
: (e === 'time' && !dt(r) && r != null && r !== '-' && (r = +sr(r)),
r == null || r === '' ? NaN : +r)
}
var JA = q({
number: function (r) {
return parseFloat(r)
},
time: function (r) {
return +sr(r)
},
trim: function (r) {
return W(r) ? Ge(r) : r
}
})
function Xg(r) {
return JA.get(r)
}
var qg = {
lt: function (r, t) {
return r < t
},
lte: function (r, t) {
return r <= t
},
gt: function (r, t) {
return r > t
},
gte: function (r, t) {
return r >= t
}
},
jA = (function () {
function r(t, e) {
if (!dt(e)) {
var n = ''
ut(n)
}
;(this._opFn = qg[t]), (this._rvalFloat = Ar(e))
}
return (
(r.prototype.evaluate = function (t) {
return dt(t)
? this._opFn(t, this._rvalFloat)
: this._opFn(Ar(t), this._rvalFloat)
}),
r
)
})(),
Kg = (function () {
function r(t, e) {
var n = t === 'desc'
;(this._resultLT = n ? 1 : -1),
e == null && (e = n ? 'min' : 'max'),
(this._incomparable = e === 'min' ? -1 / 0 : 1 / 0)
}
return (
(r.prototype.evaluate = function (t, e) {
var n = dt(t) ? t : Ar(t),
i = dt(e) ? e : Ar(e),
a = isNaN(n),
o = isNaN(i)
if (
(a && (n = this._incomparable), o && (i = this._incomparable), a && o)
) {
var s = W(t),
l = W(e)
s && (n = l ? t : 0), l && (i = s ? e : 0)
}
return n < i ? this._resultLT : n > i ? -this._resultLT : 0
}),
r
)
})(),
tM = (function () {
function r(t, e) {
;(this._rval = e),
(this._isEQ = t),
(this._rvalTypeof = typeof e),
(this._rvalFloat = Ar(e))
}
return (
(r.prototype.evaluate = function (t) {
var e = t === this._rval
if (!e) {
var n = typeof t
n !== this._rvalTypeof &&
(n === 'number' || this._rvalTypeof === 'number') &&
(e = Ar(t) === this._rvalFloat)
}
return this._isEQ ? e : !e
}),
r
)
})()
function eM(r, t) {
return r === 'eq' || r === 'ne'
? new tM(r === 'eq', t)
: nr(qg, r)
? new jA(r, t)
: null
}
var rM = (function () {
function r() {}
return (
(r.prototype.getRawData = function () {
throw new Error('not supported')
}),
(r.prototype.getRawDataItem = function (t) {
throw new Error('not supported')
}),
(r.prototype.cloneRawData = function () {}),
(r.prototype.getDimensionInfo = function (t) {}),
(r.prototype.cloneAllDimensionInfo = function () {}),
(r.prototype.count = function () {}),
(r.prototype.retrieveValue = function (t, e) {}),
(r.prototype.retrieveValueFromItem = function (t, e) {}),
(r.prototype.convertValue = function (t, e) {
return Ms(t, e)
}),
r
)
})()
function nM(r, t) {
var e = new rM(),
n = r.data,
i = (e.sourceFormat = r.sourceFormat),
a = r.startIndex,
o = ''
r.seriesLayoutBy !== Ke && ut(o)
var s = [],
l = {},
u = r.dimensionsDefine
if (u)
A(u, function (p, g) {
var m = p.name,
y = { index: g, name: m, displayName: p.displayName }
if ((s.push(y), m != null)) {
var _ = ''
nr(l, m) && ut(_), (l[m] = y)
}
})
else for (var f = 0; f < r.dimensionsDetectedCount; f++) s.push({ index: f })
var h = Hg(i, Ke)
t.__isBuiltIn &&
((e.getRawDataItem = function (p) {
return h(n, a, s, p)
}),
(e.getRawData = X(iM, null, r))),
(e.cloneRawData = X(aM, null, r))
var c = Ug(i, Ke)
e.count = X(c, null, n, a, s)
var v = Yg(i)
e.retrieveValue = function (p, g) {
var m = h(n, a, s, p)
return d(m, g)
}
var d = (e.retrieveValueFromItem = function (p, g) {
if (p != null) {
var m = s[g]
if (m) return v(p, g, m.name)
}
})
return (
(e.getDimensionInfo = X(oM, null, s, l)),
(e.cloneAllDimensionInfo = X(sM, null, s)),
e
)
}
function iM(r) {
var t = r.sourceFormat
if (!Nf(t)) {
var e = ''
ut(e)
}
return r.data
}
function aM(r) {
var t = r.sourceFormat,
e = r.data
if (!Nf(t)) {
var n = ''
ut(n)
}
if (t === Kt) {
for (var i = [], a = 0, o = e.length; a < o; a++) i.push(e[a].slice())
return i
} else if (t === _e) {
for (var i = [], a = 0, o = e.length; a < o; a++) i.push(N({}, e[a]))
return i
}
}
function oM(r, t, e) {
if (e != null) {
if (dt(e) || (!isNaN(e) && !nr(t, e))) return r[e]
if (nr(t, e)) return t[e]
}
}
function sM(r) {
return tt(r)
}
var Qg = q()
function lM(r) {
r = tt(r)
var t = r.type,
e = ''
t || ut(e)
var n = t.split(':')
n.length !== 2 && ut(e)
var i = !1
n[0] === 'echarts' && ((t = n[1]), (i = !0)),
(r.__isBuiltIn = i),
Qg.set(t, r)
}
function uM(r, t, e) {
var n = Mt(r),
i = n.length,
a = ''
i || ut(a)
for (var o = 0, s = i; o < s; o++) {
var l = n[o]
;(t = fM(l, t)), o !== s - 1 && (t.length = Math.max(t.length, 1))
}
return t
}
function fM(r, t, e, n) {
var i = ''
t.length || ut(i), Y(r) || ut(i)
var a = r.type,
o = Qg.get(a)
o || ut(i)
var s = G(t, function (u) {
return nM(u, o)
}),
l = Mt(
o.transform({ upstream: s[0], upstreamList: s, config: tt(r.config) })
)
return G(l, function (u, f) {
var h = ''
Y(u) || ut(h), u.data || ut(h)
var c = Og(u.data)
Nf(c) || ut(h)
var v,
d = t[0]
if (d && f === 0 && !u.dimensions) {
var p = d.startIndex
p && (u.data = d.data.slice(0, p).concat(u.data)),
(v = {
seriesLayoutBy: Ke,
sourceHeader: p,
dimensions: d.metaRawOption.dimensions
})
} else v = { seriesLayoutBy: Ke, sourceHeader: 0, dimensions: u.dimensions }
return Ef(u.data, v, null)
})
}
function Nf(r) {
return r === Kt || r === _e
}
var Ds = 'undefined',
hM = typeof Uint32Array === Ds ? Array : Uint32Array,
vM = typeof Uint16Array === Ds ? Array : Uint16Array,
Jg = typeof Int32Array === Ds ? Array : Int32Array,
jg = typeof Float64Array === Ds ? Array : Float64Array,
tm = { float: jg, int: Jg, ordinal: Array, number: Array, time: jg },
Ff
function Ca(r) {
return r > 65535 ? hM : vM
}
function gi() {
return [1 / 0, -1 / 0]
}
function cM(r) {
var t = r.constructor
return t === Array ? r.slice() : new t(r)
}
function em(r, t, e, n, i) {
var a = tm[e || 'float']
if (i) {
var o = r[t],
s = o && o.length
if (s !== n) {
for (var l = new a(n), u = 0; u < s; u++) l[u] = o[u]
r[t] = l
}
} else r[t] = new a(n)
}
var zf = (function () {
function r() {
;(this._chunks = []),
(this._rawExtent = []),
(this._extent = []),
(this._count = 0),
(this._rawCount = 0),
(this._calcDimNameToIdx = q())
}
return (
(r.prototype.initData = function (t, e, n) {
;(this._provider = t),
(this._chunks = []),
(this._indices = null),
(this.getRawIndex = this._getRawIdxIdentity)
var i = t.getSource(),
a = (this.defaultDimValueGetter = Ff[i.sourceFormat])
;(this._dimValueGetter = n || a),
(this._rawExtent = []),
Ng(i),
(this._dimensions = G(e, function (o) {
return { type: o.type, property: o.property }
})),
this._initDataFromProvider(0, t.count())
}),
(r.prototype.getProvider = function () {
return this._provider
}),
(r.prototype.getSource = function () {
return this._provider.getSource()
}),
(r.prototype.ensureCalculationDimension = function (t, e) {
var n = this._calcDimNameToIdx,
i = this._dimensions,
a = n.get(t)
if (a != null) {
if (i[a].type === e) return a
} else a = i.length
return (
(i[a] = { type: e }),
n.set(t, a),
(this._chunks[a] = new tm[e || 'float'](this._rawCount)),
(this._rawExtent[a] = gi()),
a
)
}),
(r.prototype.collectOrdinalMeta = function (t, e) {
var n = this._chunks[t],
i = this._dimensions[t],
a = this._rawExtent,
o = i.ordinalOffset || 0,
s = n.length
o === 0 && (a[t] = gi())
for (var l = a[t], u = o; u < s; u++) {
var f = (n[u] = e.parseAndCollect(n[u]))
isNaN(f) || ((l[0] = Math.min(f, l[0])), (l[1] = Math.max(f, l[1])))
}
;(i.ordinalMeta = e), (i.ordinalOffset = s), (i.type = 'ordinal')
}),
(r.prototype.getOrdinalMeta = function (t) {
var e = this._dimensions[t],
n = e.ordinalMeta
return n
}),
(r.prototype.getDimensionProperty = function (t) {
var e = this._dimensions[t]
return e && e.property
}),
(r.prototype.appendData = function (t) {
var e = this._provider,
n = this.count()
e.appendData(t)
var i = e.count()
return (
e.persistent || (i += n),
n < i && this._initDataFromProvider(n, i, !0),
[n, i]
)
}),
(r.prototype.appendValues = function (t, e) {
for (
var n = this._chunks,
i = this._dimensions,
a = i.length,
o = this._rawExtent,
s = this.count(),
l = s + Math.max(t.length, e || 0),
u = 0;
u < a;
u++
) {
var f = i[u]
em(n, u, f.type, l, !0)
}
for (var h = [], c = s; c < l; c++)
for (var v = c - s, d = 0; d < a; d++) {
var f = i[d],
p = Ff.arrayRows.call(this, t[v] || h, f.property, v, d)
n[d][c] = p
var g = o[d]
p < g[0] && (g[0] = p), p > g[1] && (g[1] = p)
}
return (this._rawCount = this._count = l), { start: s, end: l }
}),
(r.prototype._initDataFromProvider = function (t, e, n) {
for (
var i = this._provider,
a = this._chunks,
o = this._dimensions,
s = o.length,
l = this._rawExtent,
u = G(o, function (y) {
return y.property
}),
f = 0;
f < s;
f++
) {
var h = o[f]
l[f] || (l[f] = gi()), em(a, f, h.type, e, n)
}
if (i.fillStorage) i.fillStorage(t, e, a, l)
else
for (var c = [], v = t; v < e; v++) {
c = i.getItem(v, c)
for (var d = 0; d < s; d++) {
var p = a[d],
g = this._dimValueGetter(c, u[d], v, d)
p[v] = g
var m = l[d]
g < m[0] && (m[0] = g), g > m[1] && (m[1] = g)
}
}
!i.persistent && i.clean && i.clean(),
(this._rawCount = this._count = e),
(this._extent = [])
}),
(r.prototype.count = function () {
return this._count
}),
(r.prototype.get = function (t, e) {
if (!(e >= 0 && e < this._count)) return NaN
var n = this._chunks[t]
return n ? n[this.getRawIndex(e)] : NaN
}),
(r.prototype.getValues = function (t, e) {
var n = [],
i = []
if (e == null) {
;(e = t), (t = [])
for (var a = 0; a < this._dimensions.length; a++) i.push(a)
} else i = t
for (var a = 0, o = i.length; a < o; a++) n.push(this.get(i[a], e))
return n
}),
(r.prototype.getByRawIndex = function (t, e) {
if (!(e >= 0 && e < this._rawCount)) return NaN
var n = this._chunks[t]
return n ? n[e] : NaN
}),
(r.prototype.getSum = function (t) {
var e = this._chunks[t],
n = 0
if (e)
for (var i = 0, a = this.count(); i < a; i++) {
var o = this.get(t, i)
isNaN(o) || (n += o)
}
return n
}),
(r.prototype.getMedian = function (t) {
var e = []
this.each([t], function (a) {
isNaN(a) || e.push(a)
})
var n = e.sort(function (a, o) {
return a - o
}),
i = this.count()
return i === 0
? 0
: i % 2 == 1
? n[(i - 1) / 2]
: (n[i / 2] + n[i / 2 - 1]) / 2
}),
(r.prototype.indexOfRawIndex = function (t) {
if (t >= this._rawCount || t < 0) return -1
if (!this._indices) return t
var e = this._indices,
n = e[t]
if (n != null && n < this._count && n === t) return t
for (var i = 0, a = this._count - 1; i <= a; ) {
var o = ((i + a) / 2) | 0
if (e[o] < t) i = o + 1
else if (e[o] > t) a = o - 1
else return o
}
return -1
}),
(r.prototype.indicesOfNearest = function (t, e, n) {
var i = this._chunks,
a = i[t],
o = []
if (!a) return o
n == null && (n = 1 / 0)
for (
var s = 1 / 0, l = -1, u = 0, f = 0, h = this.count();
f < h;
f++
) {
var c = this.getRawIndex(f),
v = e - a[c],
d = Math.abs(v)
d <= n &&
((d < s || (d === s && v >= 0 && l < 0)) &&
((s = d), (l = v), (u = 0)),
v === l && (o[u++] = f))
}
return (o.length = u), o
}),
(r.prototype.getIndices = function () {
var t,
e = this._indices
if (e) {
var n = e.constructor,
i = this._count
if (n === Array) {
t = new n(i)
for (var a = 0; a < i; a++) t[a] = e[a]
} else t = new n(e.buffer, 0, i)
} else {
var n = Ca(this._rawCount)
t = new n(this.count())
for (var a = 0; a < t.length; a++) t[a] = a
}
return t
}),
(r.prototype.filter = function (t, e) {
if (!this._count) return this
for (
var n = this.clone(),
i = n.count(),
a = Ca(n._rawCount),
o = new a(i),
s = [],
l = t.length,
u = 0,
f = t[0],
h = n._chunks,
c = 0;
c < i;
c++
) {
var v = void 0,
d = n.getRawIndex(c)
if (l === 0) v = e(c)
else if (l === 1) {
var p = h[f][d]
v = e(p, c)
} else {
for (var g = 0; g < l; g++) s[g] = h[t[g]][d]
;(s[g] = c), (v = e.apply(null, s))
}
v && (o[u++] = d)
}
return (
u < i && (n._indices = o),
(n._count = u),
(n._extent = []),
n._updateGetRawIdx(),
n
)
}),
(r.prototype.selectRange = function (t) {
var e = this.clone(),
n = e._count
if (!n) return this
var i = xt(t),
a = i.length
if (!a) return this
var o = e.count(),
s = Ca(e._rawCount),
l = new s(o),
u = 0,
f = i[0],
h = t[f][0],
c = t[f][1],
v = e._chunks,
d = !1
if (!e._indices) {
var p = 0
if (a === 1) {
for (var g = v[i[0]], m = 0; m < n; m++) {
var y = g[m]
;((y >= h && y <= c) || isNaN(y)) && (l[u++] = p), p++
}
d = !0
} else if (a === 2) {
for (
var g = v[i[0]],
_ = v[i[1]],
S = t[i[1]][0],
w = t[i[1]][1],
m = 0;
m < n;
m++
) {
var y = g[m],
x = _[m]
;((y >= h && y <= c) || isNaN(y)) &&
((x >= S && x <= w) || isNaN(x)) &&
(l[u++] = p),
p++
}
d = !0
}
}
if (!d)
if (a === 1)
for (var m = 0; m < o; m++) {
var b = e.getRawIndex(m),
y = v[i[0]][b]
;((y >= h && y <= c) || isNaN(y)) && (l[u++] = b)
}
else
for (var m = 0; m < o; m++) {
for (var T = !0, b = e.getRawIndex(m), C = 0; C < a; C++) {
var M = i[C],
y = v[M][b]
;(y < t[M][0] || y > t[M][1]) && (T = !1)
}
T && (l[u++] = e.getRawIndex(m))
}
return (
u < o && (e._indices = l),
(e._count = u),
(e._extent = []),
e._updateGetRawIdx(),
e
)
}),
(r.prototype.map = function (t, e) {
var n = this.clone(t)
return this._updateDims(n, t, e), n
}),
(r.prototype.modify = function (t, e) {
this._updateDims(this, t, e)
}),
(r.prototype._updateDims = function (t, e, n) {
for (
var i = t._chunks,
a = [],
o = e.length,
s = t.count(),
l = [],
u = t._rawExtent,
f = 0;
f < e.length;
f++
)
u[e[f]] = gi()
for (var h = 0; h < s; h++) {
for (var c = t.getRawIndex(h), v = 0; v < o; v++) l[v] = i[e[v]][c]
l[o] = h
var d = n && n.apply(null, l)
if (d != null) {
typeof d != 'object' && ((a[0] = d), (d = a))
for (var f = 0; f < d.length; f++) {
var p = e[f],
g = d[f],
m = u[p],
y = i[p]
y && (y[c] = g), g < m[0] && (m[0] = g), g > m[1] && (m[1] = g)
}
}
}
}),
(r.prototype.lttbDownSample = function (t, e) {
var n = this.clone([t], !0),
i = n._chunks,
a = i[t],
o = this.count(),
s = 0,
l = Math.floor(1 / e),
u = this.getRawIndex(0),
f,
h,
c,
v = new (Ca(this._rawCount))(Math.min((Math.ceil(o / l) + 2) * 2, o))
v[s++] = u
for (var d = 1; d < o - 1; d += l) {
for (
var p = Math.min(d + l, o - 1),
g = Math.min(d + l * 2, o),
m = (g + p) / 2,
y = 0,
_ = p;
_ < g;
_++
) {
var S = this.getRawIndex(_),
w = a[S]
isNaN(w) || (y += w)
}
y /= g - p
var x = d,
b = Math.min(d + l, o),
T = d - 1,
C = a[u]
;(f = -1), (c = x)
for (var M = -1, D = 0, _ = x; _ < b; _++) {
var S = this.getRawIndex(_),
w = a[S]
if (isNaN(w)) {
D++, M < 0 && (M = S)
continue
}
;(h = Math.abs((T - m) * (w - C) - (T - _) * (y - C))),
h > f && ((f = h), (c = S))
}
D > 0 &&
D < b - x &&
((v[s++] = Math.min(M, c)), (c = Math.max(M, c))),
(v[s++] = c),
(u = c)
}
return (
(v[s++] = this.getRawIndex(o - 1)),
(n._count = s),
(n._indices = v),
(n.getRawIndex = this._getRawIdx),
n
)
}),
(r.prototype.downSample = function (t, e, n, i) {
for (
var a = this.clone([t], !0),
o = a._chunks,
s = [],
l = Math.floor(1 / e),
u = o[t],
f = this.count(),
h = (a._rawExtent[t] = gi()),
c = new (Ca(this._rawCount))(Math.ceil(f / l)),
v = 0,
d = 0;
d < f;
d += l
) {
l > f - d && ((l = f - d), (s.length = l))
for (var p = 0; p < l; p++) {
var g = this.getRawIndex(d + p)
s[p] = u[g]
}
var m = n(s),
y = this.getRawIndex(Math.min(d + i(s, m) || 0, f - 1))
;(u[y] = m),
m < h[0] && (h[0] = m),
m > h[1] && (h[1] = m),
(c[v++] = y)
}
return (a._count = v), (a._indices = c), a._updateGetRawIdx(), a
}),
(r.prototype.each = function (t, e) {
if (!!this._count)
for (
var n = t.length, i = this._chunks, a = 0, o = this.count();
a < o;
a++
) {
var s = this.getRawIndex(a)
switch (n) {
case 0:
e(a)
break
case 1:
e(i[t[0]][s], a)
break
case 2:
e(i[t[0]][s], i[t[1]][s], a)
break
default:
for (var l = 0, u = []; l < n; l++) u[l] = i[t[l]][s]
;(u[l] = a), e.apply(null, u)
}
}
}),
(r.prototype.getDataExtent = function (t) {
var e = this._chunks[t],
n = gi()
if (!e) return n
var i = this.count(),
a = !this._indices,
o
if (a) return this._rawExtent[t].slice()
if (((o = this._extent[t]), o)) return o.slice()
o = n
for (var s = o[0], l = o[1], u = 0; u < i; u++) {
var f = this.getRawIndex(u),
h = e[f]
h < s && (s = h), h > l && (l = h)
}
return (o = [s, l]), (this._extent[t] = o), o
}),
(r.prototype.getRawDataItem = function (t) {
var e = this.getRawIndex(t)
if (this._provider.persistent) return this._provider.getItem(e)
for (var n = [], i = this._chunks, a = 0; a < i.length; a++)
n.push(i[a][e])
return n
}),
(r.prototype.clone = function (t, e) {
var n = new r(),
i = this._chunks,
a =
t &&
Sr(
t,
function (s, l) {
return (s[l] = !0), s
},
{}
)
if (a)
for (var o = 0; o < i.length; o++)
n._chunks[o] = a[o] ? cM(i[o]) : i[o]
else n._chunks = i
return (
this._copyCommonProps(n),
e || (n._indices = this._cloneIndices()),
n._updateGetRawIdx(),
n
)
}),
(r.prototype._copyCommonProps = function (t) {
;(t._count = this._count),
(t._rawCount = this._rawCount),
(t._provider = this._provider),
(t._dimensions = this._dimensions),
(t._extent = tt(this._extent)),
(t._rawExtent = tt(this._rawExtent))
}),
(r.prototype._cloneIndices = function () {
if (this._indices) {
var t = this._indices.constructor,
e = void 0
if (t === Array) {
var n = this._indices.length
e = new t(n)
for (var i = 0; i < n; i++) e[i] = this._indices[i]
} else e = new t(this._indices)
return e
}
return null
}),
(r.prototype._getRawIdxIdentity = function (t) {
return t
}),
(r.prototype._getRawIdx = function (t) {
return t < this._count && t >= 0 ? this._indices[t] : -1
}),
(r.prototype._updateGetRawIdx = function () {
this.getRawIndex = this._indices
? this._getRawIdx
: this._getRawIdxIdentity
}),
(r.internalField = (function () {
function t(e, n, i, a) {
return Ms(e[a], this._dimensions[a])
}
Ff = {
arrayRows: t,
objectRows: function (e, n, i, a) {
return Ms(e[n], this._dimensions[a])
},
keyedColumns: t,
original: function (e, n, i, a) {
var o = e && (e.value == null ? e : e.value)
return Ms(o instanceof Array ? o[a] : o, this._dimensions[a])
},
typedArray: function (e, n, i, a) {
return e[a]
}
}
})()),
r
)
})(),
rm = (function () {
function r(t) {
;(this._sourceList = []),
(this._storeList = []),
(this._upstreamSignList = []),
(this._versionSignBase = 0),
(this._dirty = !0),
(this._sourceHost = t)
}
return (
(r.prototype.dirty = function () {
this._setLocalSource([], []), (this._storeList = []), (this._dirty = !0)
}),
(r.prototype._setLocalSource = function (t, e) {
;(this._sourceList = t),
(this._upstreamSignList = e),
this._versionSignBase++,
this._versionSignBase > 9e10 && (this._versionSignBase = 0)
}),
(r.prototype._getVersionSign = function () {
return this._sourceHost.uid + '_' + this._versionSignBase
}),
(r.prototype.prepareSource = function () {
this._isDirty() && (this._createSource(), (this._dirty = !1))
}),
(r.prototype._createSource = function () {
this._setLocalSource([], [])
var t = this._sourceHost,
e = this._getUpstreamSourceManagers(),
n = !!e.length,
i,
a
if (Is(t)) {
var o = t,
s = void 0,
l = void 0,
u = void 0
if (n) {
var f = e[0]
f.prepareSource(),
(u = f.getSource()),
(s = u.data),
(l = u.sourceFormat),
(a = [f._getVersionSign()])
} else (s = o.get('data', !0)), (l = ie(s) ? Pr : ye), (a = [])
var h = this._getSourceMetaRawOption() || {},
c = (u && u.metaRawOption) || {},
v = ht(h.seriesLayoutBy, c.seriesLayoutBy) || null,
d = ht(h.sourceHeader, c.sourceHeader),
p = ht(h.dimensions, c.dimensions),
g = v !== c.seriesLayoutBy || !!d != !!c.sourceHeader || p
i = g
? [Ef(s, { seriesLayoutBy: v, sourceHeader: d, dimensions: p }, l)]
: []
} else {
var m = t
if (n) {
var y = this._applyTransform(e)
;(i = y.sourceList), (a = y.upstreamSignList)
} else {
var _ = m.get('source', !0)
;(i = [Ef(_, this._getSourceMetaRawOption(), null)]), (a = [])
}
}
this._setLocalSource(i, a)
}),
(r.prototype._applyTransform = function (t) {
var e = this._sourceHost,
n = e.get('transform', !0),
i = e.get('fromTransformResult', !0)
if (i != null) {
var a = ''
t.length !== 1 && im(a)
}
var o,
s = [],
l = []
return (
A(t, function (u) {
u.prepareSource()
var f = u.getSource(i || 0),
h = ''
i != null && !f && im(h), s.push(f), l.push(u._getVersionSign())
}),
n
? (o = uM(n, s, { datasetIndex: e.componentIndex }))
: i != null && (o = [WA(s[0])]),
{ sourceList: o, upstreamSignList: l }
)
}),
(r.prototype._isDirty = function () {
if (this._dirty) return !0
for (
var t = this._getUpstreamSourceManagers(), e = 0;
e < t.length;
e++
) {
var n = t[e]
if (n._isDirty() || this._upstreamSignList[e] !== n._getVersionSign())
return !0
}
}),
(r.prototype.getSource = function (t) {
t = t || 0
var e = this._sourceList[t]
if (!e) {
var n = this._getUpstreamSourceManagers()
return n[0] && n[0].getSource(t)
}
return e
}),
(r.prototype.getSharedDataStore = function (t) {
var e = t.makeStoreSchema()
return this._innerGetDataStore(e.dimensions, t.source, e.hash)
}),
(r.prototype._innerGetDataStore = function (t, e, n) {
var i = 0,
a = this._storeList,
o = a[i]
o || (o = a[i] = {})
var s = o[n]
if (!s) {
var l = this._getUpstreamSourceManagers()[0]
Is(this._sourceHost) && l
? (s = l._innerGetDataStore(t, e, n))
: ((s = new zf()), s.initData(new Vg(e, t.length), t)),
(o[n] = s)
}
return s
}),
(r.prototype._getUpstreamSourceManagers = function () {
var t = this._sourceHost
if (Is(t)) {
var e = Cf(t)
return e ? [e.getSourceManager()] : []
} else
return G(pA(t), function (n) {
return n.getSourceManager()
})
}),
(r.prototype._getSourceMetaRawOption = function () {
var t = this._sourceHost,
e,
n,
i
if (Is(t))
(e = t.get('seriesLayoutBy', !0)),
(n = t.get('sourceHeader', !0)),
(i = t.get('dimensions', !0))
else if (!this._getUpstreamSourceManagers().length) {
var a = t
;(e = a.get('seriesLayoutBy', !0)),
(n = a.get('sourceHeader', !0)),
(i = a.get('dimensions', !0))
}
return { seriesLayoutBy: e, sourceHeader: n, dimensions: i }
}),
r
)
})()
function nm(r) {
var t = r.option.transform
t && oo(r.option.transform)
}
function Is(r) {
return r.mainType === 'series'
}
function im(r) {
throw new Error(r)
}
var am = 'line-height:1'
function om(r, t) {
var e = r.color || '#6e7079',
n = r.fontSize || 12,
i = r.fontWeight || '400',
a = r.color || '#464646',
o = r.fontSize || 14,
s = r.fontWeight || '900'
return t === 'html'
? {
nameStyle:
'font-size:' +
me(n + '') +
'px;color:' +
me(e) +
';font-weight:' +
me(i + ''),
valueStyle:
'font-size:' +
me(o + '') +
'px;color:' +
me(a) +
';font-weight:' +
me(s + '')
}
: {
nameStyle: { fontSize: n, fill: e, fontWeight: i },
valueStyle: { fontSize: o, fill: a, fontWeight: s }
}
}
var dM = [0, 10, 20, 30],
pM = [
'',
`
`,
`
`,
`
`
]
function Aa(r, t) {
return (t.type = r), t
}
function Vf(r) {
return r.type === 'section'
}
function sm(r) {
return Vf(r) ? gM : mM
}
function lm(r) {
if (Vf(r)) {
var t = 0,
e = r.blocks.length,
n = e > 1 || (e > 0 && !r.noHeader)
return (
A(r.blocks, function (i) {
var a = lm(i)
a >= t && (t = a + +(n && (!a || (Vf(i) && !i.noHeader))))
}),
t
)
}
return 0
}
function gM(r, t, e, n) {
var i = t.noHeader,
a = yM(lm(t)),
o = [],
s = t.blocks || []
Ve(!s || z(s)), (s = s || [])
var l = r.orderMode
if (t.sortBlocks && l) {
s = s.slice()
var u = { valueAsc: 'asc', valueDesc: 'desc' }
if (nr(u, l)) {
var f = new Kg(u[l], null)
s.sort(function (d, p) {
return f.evaluate(d.sortParam, p.sortParam)
})
} else l === 'seriesDesc' && s.reverse()
}
A(s, function (d, p) {
var g = t.valueFormatter,
m = sm(d)(
g ? N(N({}, r), { valueFormatter: g }) : r,
d,
p > 0 ? a.html : 0,
n
)
m != null && o.push(m)
})
var h =
r.renderMode === 'richText'
? o.join(a.richText)
: Gf(o.join(''), i ? e : a.html)
if (i) return h
var c = wf(t.header, 'ordinal', r.useUTC),
v = om(n, r.renderMode).nameStyle
return r.renderMode === 'richText'
? fm(r, c, v) + a.richText + h
: Gf('
' + me(c) + '
' + h, e)
}
function mM(r, t, e, n) {
var i = r.renderMode,
a = t.noName,
o = t.noValue,
s = !t.markerType,
l = t.name,
u = r.useUTC,
f =
t.valueFormatter ||
r.valueFormatter ||
function (S) {
return (
(S = z(S) ? S : [S]),
G(S, function (w, x) {
return wf(w, z(v) ? v[x] : v, u)
})
)
}
if (!(a && o)) {
var h = s
? ''
: r.markupStyleCreator.makeTooltipMarker(
t.markerType,
t.markerColor || '#333',
i
),
c = a ? '' : wf(l, 'ordinal', u),
v = t.valueType,
d = o ? [] : f(t.value),
p = !s || !a,
g = !s && a,
m = om(n, i),
y = m.nameStyle,
_ = m.valueStyle
return i === 'richText'
? (s ? '' : h) + (a ? '' : fm(r, c, y)) + (o ? '' : xM(r, d, p, g, _))
: Gf(
(s ? '' : h) + (a ? '' : _M(c, !s, y)) + (o ? '' : SM(d, p, g, _)),
e
)
}
}
function um(r, t, e, n, i, a) {
if (!!r) {
var o = sm(r),
s = {
useUTC: i,
renderMode: e,
orderMode: n,
markupStyleCreator: t,
valueFormatter: r.valueFormatter
}
return o(s, r, 0, a)
}
}
function yM(r) {
return { html: dM[r], richText: pM[r] }
}
function Gf(r, t) {
var e = '',
n = 'margin: ' + t + 'px 0 0'
return '' + r + e + '
'
}
function _M(r, t, e) {
var n = t ? 'margin-left:2px' : ''
return '' + me(r) + ''
}
function SM(r, t, e, n) {
var i = e ? '10px' : '20px',
a = t ? 'float:right;margin-left:' + i : ''
return (
(r = z(r) ? r : [r]),
'' +
G(r, function (o) {
return me(o)
}).join(' ') +
''
)
}
function fm(r, t, e) {
return r.markupStyleCreator.wrapRichTextStyle(t, e)
}
function xM(r, t, e, n, i) {
var a = [i],
o = n ? 10 : 20
return (
e && a.push({ padding: [0, 0, 0, o], align: 'right' }),
r.markupStyleCreator.wrapRichTextStyle(z(t) ? t.join(' ') : t, a)
)
}
function wM(r, t) {
var e = r.getData().getItemVisual(t, 'style'),
n = e[r.visualDrawType]
return yn(n)
}
function hm(r, t) {
var e = r.get('padding')
return e != null ? e : t === 'richText' ? [8, 10] : 10
}
var Hf = (function () {
function r() {
;(this.richTextStyles = {}), (this._nextStyleNameId = Kc())
}
return (
(r.prototype._generateStyleName = function () {
return '__EC_aUTo_' + this._nextStyleNameId++
}),
(r.prototype.makeTooltipMarker = function (t, e, n) {
var i = n === 'richText' ? this._generateStyleName() : null,
a = aA({ color: e, type: t, renderMode: n, markerId: i })
return W(a) ? a : ((this.richTextStyles[i] = a.style), a.content)
}),
(r.prototype.wrapRichTextStyle = function (t, e) {
var n = {}
z(e)
? A(e, function (a) {
return N(n, a)
})
: N(n, e)
var i = this._generateStyleName()
return (this.richTextStyles[i] = n), '{' + i + '|' + t + '}'
}),
r
)
})()
function bM(r) {
var t = r.series,
e = r.dataIndex,
n = r.multipleSeries,
i = t.getData(),
a = i.mapDimensionsAll('defaultedTooltip'),
o = a.length,
s = t.getRawValue(e),
l = z(s),
u = wM(t, e),
f,
h,
c,
v
if (o > 1 || (l && !o)) {
var d = TM(s, t, e, a, u)
;(f = d.inlineValues),
(h = d.inlineValueTypes),
(c = d.blocks),
(v = d.inlineValues[0])
} else if (o) {
var p = i.getDimensionInfo(a[0])
;(v = f = pi(i, e, a[0])), (h = p.type)
} else v = f = l ? s[0] : s
var g = Au(t),
m = (g && t.name) || '',
y = i.getName(e),
_ = n ? m : y
return Aa('section', {
header: m,
noHeader: n || !g,
sortParam: v,
blocks: [
Aa('nameValue', {
markerType: 'item',
markerColor: u,
name: _,
noName: !Ge(_),
value: f,
valueType: h
})
].concat(c || [])
})
}
function TM(r, t, e, n, i) {
var a = t.getData(),
o = Sr(
r,
function (h, c, v) {
var d = a.getDimensionInfo(v)
return (h = h || (d && d.tooltip !== !1 && d.displayName != null))
},
!1
),
s = [],
l = [],
u = []
n.length
? A(n, function (h) {
f(pi(a, e, h), h)
})
: A(r, f)
function f(h, c) {
var v = a.getDimensionInfo(c)
!v ||
v.otherDims.tooltip === !1 ||
(o
? u.push(
Aa('nameValue', {
markerType: 'subItem',
markerColor: i,
name: v.displayName,
value: h,
valueType: v.type
})
)
: (s.push(h), l.push(v.type)))
}
return { inlineValues: s, inlineValueTypes: l, blocks: u }
}
var Rr = wt()
function Ls(r, t) {
return r.getName(t) || r.getId(t)
}
var Ps = '__universalTransitionEnabled',
Rs = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (e._selectedDataIndicesMap = {}), e
}
return (
(t.prototype.init = function (e, n, i) {
;(this.seriesIndex = this.componentIndex),
(this.dataTask = Ta({ count: AM, reset: MM })),
(this.dataTask.context = { model: this }),
this.mergeDefaultAndTheme(e, i)
var a = (Rr(this).sourceManager = new rm(this))
a.prepareSource()
var o = this.getInitialData(e, i)
cm(o, this),
(this.dataTask.context.data = o),
(Rr(this).dataBeforeProcessed = o),
vm(this),
this._initSelectedMapFromData(o)
}),
(t.prototype.mergeDefaultAndTheme = function (e, n) {
var i = ya(this),
a = i ? _a(e) : {},
o = this.subType
_t.hasClass(o) && (o += 'Series'),
nt(e, n.getTheme().get(this.subType)),
nt(e, this.getDefaultOption()),
Cu(e, 'label', ['show']),
this.fillDataTextStyle(e.data),
i && hi(e, a, i)
}),
(t.prototype.mergeOption = function (e, n) {
;(e = nt(this.option, e, !0)), this.fillDataTextStyle(e.data)
var i = ya(this)
i && hi(this.option, e, i)
var a = Rr(this).sourceManager
a.dirty(), a.prepareSource()
var o = this.getInitialData(e, n)
cm(o, this),
this.dataTask.dirty(),
(this.dataTask.context.data = o),
(Rr(this).dataBeforeProcessed = o),
vm(this),
this._initSelectedMapFromData(o)
}),
(t.prototype.fillDataTextStyle = function (e) {
if (e && !ie(e))
for (var n = ['show'], i = 0; i < e.length; i++)
e[i] && e[i].label && Cu(e[i], 'label', n)
}),
(t.prototype.getInitialData = function (e, n) {}),
(t.prototype.appendData = function (e) {
var n = this.getRawData()
n.appendData(e.data)
}),
(t.prototype.getData = function (e) {
var n = Wf(this)
if (n) {
var i = n.context.data
return e == null ? i : i.getLinkedData(e)
} else return Rr(this).data
}),
(t.prototype.getAllData = function () {
var e = this.getData()
return e && e.getLinkedDataAll ? e.getLinkedDataAll() : [{ data: e }]
}),
(t.prototype.setData = function (e) {
var n = Wf(this)
if (n) {
var i = n.context
;(i.outputData = e), n !== this.dataTask && (i.data = e)
}
Rr(this).data = e
}),
(t.prototype.getEncode = function () {
var e = this.get('encode', !0)
if (e) return q(e)
}),
(t.prototype.getSourceManager = function () {
return Rr(this).sourceManager
}),
(t.prototype.getSource = function () {
return this.getSourceManager().getSource()
}),
(t.prototype.getRawData = function () {
return Rr(this).dataBeforeProcessed
}),
(t.prototype.getColorBy = function () {
var e = this.get('colorBy')
return e || 'series'
}),
(t.prototype.isColorBySeries = function () {
return this.getColorBy() === 'series'
}),
(t.prototype.getBaseAxis = function () {
var e = this.coordinateSystem
return e && e.getBaseAxis && e.getBaseAxis()
}),
(t.prototype.formatTooltip = function (e, n, i) {
return bM({ series: this, dataIndex: e, multipleSeries: n })
}),
(t.prototype.isAnimationEnabled = function () {
var e = this.ecModel
if (at.node && !(e && e.ssr)) return !1
var n = this.getShallow('animation')
return (
n &&
this.getData().count() > this.getShallow('animationThreshold') &&
(n = !1),
!!n
)
}),
(t.prototype.restoreData = function () {
this.dataTask.dirty()
}),
(t.prototype.getColorFromPalette = function (e, n, i) {
var a = this.ecModel,
o = Mf.prototype.getColorFromPalette.call(this, e, n, i)
return o || (o = a.getColorFromPalette(e, n, i)), o
}),
(t.prototype.coordDimToDataDim = function (e) {
return this.getRawData().mapDimensionsAll(e)
}),
(t.prototype.getProgressive = function () {
return this.get('progressive')
}),
(t.prototype.getProgressiveThreshold = function () {
return this.get('progressiveThreshold')
}),
(t.prototype.select = function (e, n) {
this._innerSelect(this.getData(n), e)
}),
(t.prototype.unselect = function (e, n) {
var i = this.option.selectedMap
if (!!i) {
var a = this.option.selectedMode,
o = this.getData(n)
if (a === 'series' || i === 'all') {
;(this.option.selectedMap = {}), (this._selectedDataIndicesMap = {})
return
}
for (var s = 0; s < e.length; s++) {
var l = e[s],
u = Ls(o, l)
;(i[u] = !1), (this._selectedDataIndicesMap[u] = -1)
}
}
}),
(t.prototype.toggleSelect = function (e, n) {
for (var i = [], a = 0; a < e.length; a++)
(i[0] = e[a]),
this.isSelected(e[a], n) ? this.unselect(i, n) : this.select(i, n)
}),
(t.prototype.getSelectedDataIndices = function () {
if (this.option.selectedMap === 'all')
return [].slice.call(this.getData().getIndices())
for (
var e = this._selectedDataIndicesMap, n = xt(e), i = [], a = 0;
a < n.length;
a++
) {
var o = e[n[a]]
o >= 0 && i.push(o)
}
return i
}),
(t.prototype.isSelected = function (e, n) {
var i = this.option.selectedMap
if (!i) return !1
var a = this.getData(n)
return (
(i === 'all' || i[Ls(a, e)]) &&
!a.getItemModel(e).get(['select', 'disabled'])
)
}),
(t.prototype.isUniversalTransitionEnabled = function () {
if (this[Ps]) return !0
var e = this.option.universalTransition
return e ? (e === !0 ? !0 : e && e.enabled) : !1
}),
(t.prototype._innerSelect = function (e, n) {
var i,
a,
o = this.option,
s = o.selectedMode,
l = n.length
if (!(!s || !l)) {
if (s === 'series') o.selectedMap = 'all'
else if (s === 'multiple') {
Y(o.selectedMap) || (o.selectedMap = {})
for (var u = o.selectedMap, f = 0; f < l; f++) {
var h = n[f],
c = Ls(e, h)
;(u[c] = !0), (this._selectedDataIndicesMap[c] = e.getRawIndex(h))
}
} else if (s === 'single' || s === !0) {
var v = n[l - 1],
c = Ls(e, v)
;(o.selectedMap = ((i = {}), (i[c] = !0), i)),
(this._selectedDataIndicesMap =
((a = {}), (a[c] = e.getRawIndex(v)), a))
}
}
}),
(t.prototype._initSelectedMapFromData = function (e) {
if (!this.option.selectedMap) {
var n = []
e.hasItemOption &&
e.each(function (i) {
var a = e.getRawDataItem(i)
a && a.selected && n.push(i)
}),
n.length > 0 && this._innerSelect(e, n)
}
}),
(t.registerClass = function (e) {
return _t.registerClass(e)
}),
(t.protoInitialize = (function () {
var e = t.prototype
;(e.type = 'series.__base__'),
(e.seriesIndex = 0),
(e.ignoreStyleOnData = !1),
(e.hasSymbolVisual = !1),
(e.defaultSymbol = 'circle'),
(e.visualStyleAccessPath = 'itemStyle'),
(e.visualDrawType = 'fill')
})()),
t
)
})(_t)
ze(Rs, KA)
ze(Rs, Mf)
sd(Rs, _t)
function vm(r) {
var t = r.name
Au(r) || (r.name = CM(r) || t)
}
function CM(r) {
var t = r.getRawData(),
e = t.mapDimensionsAll('seriesName'),
n = []
return (
A(e, function (i) {
var a = t.getDimensionInfo(i)
a.displayName && n.push(a.displayName)
}),
n.join(' ')
)
}
function AM(r) {
return r.model.getRawData().count()
}
function MM(r) {
var t = r.model
return t.setData(t.getRawData().cloneShallow()), DM
}
function DM(r, t) {
t.outputData &&
r.end > t.outputData.count() &&
t.model.getRawData().cloneShallow(t.outputData)
}
function cm(r, t) {
A(Ix(r.CHANGABLE_METHODS, r.DOWNSAMPLE_METHODS), function (e) {
r.wrapMethod(e, lt(IM, t))
})
}
function IM(r, t) {
var e = Wf(r)
return e && e.setOutputEnd((t || this).count()), t
}
function Wf(r) {
var t = (r.ecModel || {}).scheduler,
e = t && t.getPipeline(r.uid)
if (e) {
var n = e.currentTask
if (n) {
var i = n.agentStubMap
i && (n = i.get(r.uid))
}
return n
}
}
var Er = Rs,
Uf = (function () {
function r() {
;(this.group = new At()), (this.uid = ca('viewComponent'))
}
return (
(r.prototype.init = function (t, e) {}),
(r.prototype.render = function (t, e, n, i) {}),
(r.prototype.dispose = function (t, e) {}),
(r.prototype.updateView = function (t, e, n, i) {}),
(r.prototype.updateLayout = function (t, e, n, i) {}),
(r.prototype.updateVisual = function (t, e, n, i) {}),
(r.prototype.toggleBlurSeries = function (t, e, n) {}),
(r.prototype.eachRendered = function (t) {
var e = this.group
e && e.traverse(t)
}),
r
)
})()
Du(Uf)
No(Uf)
var xe = Uf
function Yf() {
var r = wt()
return function (t) {
var e = r(t),
n = t.pipelineContext,
i = !!e.large,
a = !!e.progressiveRender,
o = (e.large = !!(n && n.large)),
s = (e.progressiveRender = !!(n && n.progressiveRender))
return (i !== o || a !== s) && 'reset'
}
}
var dm = wt(),
LM = Yf(),
Zf = (function () {
function r() {
;(this.group = new At()),
(this.uid = ca('viewChart')),
(this.renderTask = Ta({ plan: PM, reset: RM })),
(this.renderTask.context = { view: this })
}
return (
(r.prototype.init = function (t, e) {}),
(r.prototype.render = function (t, e, n, i) {}),
(r.prototype.highlight = function (t, e, n, i) {
var a = t.getData(i && i.dataType)
!a || gm(a, i, 'emphasis')
}),
(r.prototype.downplay = function (t, e, n, i) {
var a = t.getData(i && i.dataType)
!a || gm(a, i, 'normal')
}),
(r.prototype.remove = function (t, e) {
this.group.removeAll()
}),
(r.prototype.dispose = function (t, e) {}),
(r.prototype.updateView = function (t, e, n, i) {
this.render(t, e, n, i)
}),
(r.prototype.updateLayout = function (t, e, n, i) {
this.render(t, e, n, i)
}),
(r.prototype.updateVisual = function (t, e, n, i) {
this.render(t, e, n, i)
}),
(r.prototype.eachRendered = function (t) {
hs(this.group, t)
}),
(r.markUpdateMethod = function (t, e) {
dm(t).updateMethod = e
}),
(r.protoInitialize = (function () {
var t = r.prototype
t.type = 'chart'
})()),
r
)
})()
function pm(r, t, e) {
r && Ju(r) && (t === 'emphasis' ? ei : ri)(r, e)
}
function gm(r, t, e) {
var n = Jr(r, t),
i = t && t.highlightKey != null ? FT(t.highlightKey) : null
n != null
? A(Mt(n), function (a) {
pm(r.getItemGraphicEl(a), e, i)
})
: r.eachItemGraphicEl(function (a) {
pm(a, e, i)
})
}
Du(Zf)
No(Zf)
function PM(r) {
return LM(r.model)
}
function RM(r) {
var t = r.model,
e = r.ecModel,
n = r.api,
i = r.payload,
a = t.pipelineContext.progressiveRender,
o = r.view,
s = i && dm(i).updateMethod,
l = a ? 'incrementalPrepareRender' : s && o[s] ? s : 'render'
return l !== 'render' && o[l](t, e, n, i), EM[l]
}
var EM = {
incrementalPrepareRender: {
progress: function (r, t) {
t.view.incrementalRender(r, t.model, t.ecModel, t.api, t.payload)
}
},
render: {
forceFirstProgress: !0,
progress: function (r, t) {
t.view.render(t.model, t.ecModel, t.api, t.payload)
}
}
},
Qe = Zf,
Es = '\0__throttleOriginMethod',
mm = '\0__throttleRate',
ym = '\0__throttleType'
function $f(r, t, e) {
var n,
i = 0,
a = 0,
o = null,
s,
l,
u,
f
t = t || 0
function h() {
;(a = new Date().getTime()), (o = null), r.apply(l, u || [])
}
var c = function () {
for (var v = [], d = 0; d < arguments.length; d++) v[d] = arguments[d]
;(n = new Date().getTime()), (l = this), (u = v)
var p = f || t,
g = f || e
;(f = null),
(s = n - (g ? i : a) - p),
clearTimeout(o),
g ? (o = setTimeout(h, p)) : s >= 0 ? h() : (o = setTimeout(h, -s)),
(i = n)
}
return (
(c.clear = function () {
o && (clearTimeout(o), (o = null))
}),
(c.debounceNextCall = function (v) {
f = v
}),
c
)
}
function Os(r, t, e, n) {
var i = r[t]
if (!!i) {
var a = i[Es] || i,
o = i[ym],
s = i[mm]
if (s !== e || o !== n) {
if (e == null || !n) return (r[t] = a)
;(i = r[t] = $f(a, e, n === 'debounce')),
(i[Es] = a),
(i[ym] = n),
(i[mm] = e)
}
return i
}
}
function ks(r, t) {
var e = r[t]
e && e[Es] && (e.clear && e.clear(), (r[t] = e[Es]))
}
var _m = wt(),
Sm = { itemStyle: ta($p, !0), lineStyle: ta(Zp, !0) },
OM = { lineStyle: 'stroke', itemStyle: 'fill' }
function xm(r, t) {
var e = r.visualStyleMapper || Sm[t]
return e || (console.warn("Unkown style type '" + t + "'."), Sm.itemStyle)
}
function wm(r, t) {
var e = r.visualDrawType || OM[t]
return e || (console.warn("Unkown style type '" + t + "'."), 'fill')
}
var kM = {
createOnAllSeries: !0,
performRawSeries: !0,
reset: function (r, t) {
var e = r.getData(),
n = r.visualStyleAccessPath || 'itemStyle',
i = r.getModel(n),
a = xm(r, n),
o = a(i),
s = i.getShallow('decal')
s && (e.setVisual('decal', s), (s.dirty = !0))
var l = wm(r, n),
u = o[l],
f = Q(u) ? u : null,
h = o.fill === 'auto' || o.stroke === 'auto'
if (!o[l] || f || h) {
var c = r.getColorFromPalette(r.name, null, t.getSeriesCount())
o[l] || ((o[l] = c), e.setVisual('colorFromPalette', !0)),
(o.fill = o.fill === 'auto' || Q(o.fill) ? c : o.fill),
(o.stroke = o.stroke === 'auto' || Q(o.stroke) ? c : o.stroke)
}
if (
(e.setVisual('style', o),
e.setVisual('drawType', l),
!t.isSeriesFiltered(r) && f)
)
return (
e.setVisual('colorFromPalette', !1),
{
dataEach: function (v, d) {
var p = r.getDataParams(d),
g = N({}, o)
;(g[l] = f(p)), v.setItemVisual(d, 'style', g)
}
}
)
}
},
Ma = new Nt(),
BM = {
createOnAllSeries: !0,
performRawSeries: !0,
reset: function (r, t) {
if (!(r.ignoreStyleOnData || t.isSeriesFiltered(r))) {
var e = r.getData(),
n = r.visualStyleAccessPath || 'itemStyle',
i = xm(r, n),
a = e.getVisual('drawType')
return {
dataEach: e.hasItemOption
? function (o, s) {
var l = o.getRawDataItem(s)
if (l && l[n]) {
Ma.option = l[n]
var u = i(Ma),
f = o.ensureUniqueItemVisual(s, 'style')
N(f, u),
Ma.option.decal &&
(o.setItemVisual(s, 'decal', Ma.option.decal),
(Ma.option.decal.dirty = !0)),
a in u && o.setItemVisual(s, 'colorFromPalette', !1)
}
}
: null
}
}
}
},
NM = {
performRawSeries: !0,
overallReset: function (r) {
var t = q()
r.eachSeries(function (e) {
var n = e.getColorBy()
if (!e.isColorBySeries()) {
var i = e.type + '-' + n,
a = t.get(i)
a || ((a = {}), t.set(i, a)), (_m(e).scope = a)
}
}),
r.eachSeries(function (e) {
if (!(e.isColorBySeries() || r.isSeriesFiltered(e))) {
var n = e.getRawData(),
i = {},
a = e.getData(),
o = _m(e).scope,
s = e.visualStyleAccessPath || 'itemStyle',
l = wm(e, s)
a.each(function (u) {
var f = a.getRawIndex(u)
i[f] = u
}),
n.each(function (u) {
var f = i[u],
h = a.getItemVisual(f, 'colorFromPalette')
if (h) {
var c = a.ensureUniqueItemVisual(f, 'style'),
v = n.getName(u) || u + '',
d = n.count()
c[l] = e.getColorFromPalette(v, o, d)
}
})
}
})
}
},
Bs = Math.PI
function FM(r, t) {
;(t = t || {}),
j(t, {
text: 'loading',
textColor: '#000',
fontSize: 12,
fontWeight: 'normal',
fontStyle: 'normal',
fontFamily: 'sans-serif',
maskColor: 'rgba(255, 255, 255, 0.8)',
showSpinner: !0,
color: '#5470c6',
spinnerRadius: 10,
lineWidth: 5,
zlevel: 0
})
var e = new At(),
n = new St({ style: { fill: t.maskColor }, zlevel: t.zlevel, z: 1e4 })
e.add(n)
var i = new Et({
style: {
text: t.text,
fill: t.textColor,
fontSize: t.fontSize,
fontWeight: t.fontWeight,
fontStyle: t.fontStyle,
fontFamily: t.fontFamily
},
zlevel: t.zlevel,
z: 10001
}),
a = new St({
style: { fill: 'none' },
textContent: i,
textConfig: { position: 'right', distance: 10 },
zlevel: t.zlevel,
z: 10001
})
e.add(a)
var o
return (
t.showSpinner &&
((o = new of({
shape: {
startAngle: -Bs / 2,
endAngle: -Bs / 2 + 0.1,
r: t.spinnerRadius
},
style: { stroke: t.color, lineCap: 'round', lineWidth: t.lineWidth },
zlevel: t.zlevel,
z: 10001
})),
o
.animateShape(!0)
.when(1e3, { endAngle: (Bs * 3) / 2 })
.start('circularInOut'),
o
.animateShape(!0)
.when(1e3, { startAngle: (Bs * 3) / 2 })
.delay(300)
.start('circularInOut'),
e.add(o)),
(e.resize = function () {
var s = i.getBoundingRect().width,
l = t.showSpinner ? t.spinnerRadius : 0,
u =
(r.getWidth() - l * 2 - (t.showSpinner && s ? 10 : 0) - s) / 2 -
(t.showSpinner && s ? 0 : 5 + s / 2) +
(t.showSpinner ? 0 : s / 2) +
(s ? 0 : l),
f = r.getHeight() / 2
t.showSpinner && o.setShape({ cx: u, cy: f }),
a.setShape({ x: u - l, y: f - l, width: l * 2, height: l * 2 }),
n.setShape({ x: 0, y: 0, width: r.getWidth(), height: r.getHeight() })
}),
e.resize(),
e
)
}
var zM = (function () {
function r(t, e, n, i) {
;(this._stageTaskMap = q()),
(this.ecInstance = t),
(this.api = e),
(n = this._dataProcessorHandlers = n.slice()),
(i = this._visualHandlers = i.slice()),
(this._allHandlers = n.concat(i))
}
return (
(r.prototype.restoreData = function (t, e) {
t.restoreData(e),
this._stageTaskMap.each(function (n) {
var i = n.overallTask
i && i.dirty()
})
}),
(r.prototype.getPerformArgs = function (t, e) {
if (!!t.__pipeline) {
var n = this._pipelineMap.get(t.__pipeline.id),
i = n.context,
a =
!e &&
n.progressiveEnabled &&
(!i || i.progressiveRender) &&
t.__idxInPipeline > n.blockIndex,
o = a ? n.step : null,
s = i && i.modDataCount,
l = s != null ? Math.ceil(s / o) : null
return { step: o, modBy: l, modDataCount: s }
}
}),
(r.prototype.getPipeline = function (t) {
return this._pipelineMap.get(t)
}),
(r.prototype.updateStreamModes = function (t, e) {
var n = this._pipelineMap.get(t.uid),
i = t.getData(),
a = i.count(),
o =
n.progressiveEnabled &&
e.incrementalPrepareRender &&
a >= n.threshold,
s = t.get('large') && a >= t.get('largeThreshold'),
l = t.get('progressiveChunkMode') === 'mod' ? a : null
t.pipelineContext = n.context = {
progressiveRender: o,
modDataCount: l,
large: s
}
}),
(r.prototype.restorePipelines = function (t) {
var e = this,
n = (e._pipelineMap = q())
t.eachSeries(function (i) {
var a = i.getProgressive(),
o = i.uid
n.set(o, {
id: o,
head: null,
tail: null,
threshold: i.getProgressiveThreshold(),
progressiveEnabled:
a && !(i.preventIncremental && i.preventIncremental()),
blockIndex: -1,
step: Math.round(a || 700),
count: 0
}),
e._pipe(i, i.dataTask)
})
}),
(r.prototype.prepareStageTasks = function () {
var t = this._stageTaskMap,
e = this.api.getModel(),
n = this.api
A(
this._allHandlers,
function (i) {
var a = t.get(i.uid) || t.set(i.uid, {}),
o = ''
Ve(!(i.reset && i.overallReset), o),
i.reset && this._createSeriesStageTask(i, a, e, n),
i.overallReset && this._createOverallStageTask(i, a, e, n)
},
this
)
}),
(r.prototype.prepareView = function (t, e, n, i) {
var a = t.renderTask,
o = a.context
;(o.model = e),
(o.ecModel = n),
(o.api = i),
(a.__block = !t.incrementalPrepareRender),
this._pipe(e, a)
}),
(r.prototype.performDataProcessorTasks = function (t, e) {
this._performStageTasks(this._dataProcessorHandlers, t, e, { block: !0 })
}),
(r.prototype.performVisualTasks = function (t, e, n) {
this._performStageTasks(this._visualHandlers, t, e, n)
}),
(r.prototype._performStageTasks = function (t, e, n, i) {
i = i || {}
var a = !1,
o = this
A(t, function (l, u) {
if (!(i.visualType && i.visualType !== l.visualType)) {
var f = o._stageTaskMap.get(l.uid),
h = f.seriesTaskMap,
c = f.overallTask
if (c) {
var v,
d = c.agentStubMap
d.each(function (g) {
s(i, g) && (g.dirty(), (v = !0))
}),
v && c.dirty(),
o.updatePayload(c, n)
var p = o.getPerformArgs(c, i.block)
d.each(function (g) {
g.perform(p)
}),
c.perform(p) && (a = !0)
} else
h &&
h.each(function (g, m) {
s(i, g) && g.dirty()
var y = o.getPerformArgs(g, i.block)
;(y.skip =
!l.performRawSeries && e.isSeriesFiltered(g.context.model)),
o.updatePayload(g, n),
g.perform(y) && (a = !0)
})
}
})
function s(l, u) {
return l.setDirty && (!l.dirtyMap || l.dirtyMap.get(u.__pipeline.id))
}
this.unfinished = a || this.unfinished
}),
(r.prototype.performSeriesTasks = function (t) {
var e
t.eachSeries(function (n) {
e = n.dataTask.perform() || e
}),
(this.unfinished = e || this.unfinished)
}),
(r.prototype.plan = function () {
this._pipelineMap.each(function (t) {
var e = t.tail
do {
if (e.__block) {
t.blockIndex = e.__idxInPipeline
break
}
e = e.getUpstream()
} while (e)
})
}),
(r.prototype.updatePayload = function (t, e) {
e !== 'remain' && (t.context.payload = e)
}),
(r.prototype._createSeriesStageTask = function (t, e, n, i) {
var a = this,
o = e.seriesTaskMap,
s = (e.seriesTaskMap = q()),
l = t.seriesType,
u = t.getTargetSeries
t.createOnAllSeries
? n.eachRawSeries(f)
: l
? n.eachRawSeriesByType(l, f)
: u && u(n, i).each(f)
function f(h) {
var c = h.uid,
v = s.set(
c,
(o && o.get(c)) || Ta({ plan: UM, reset: YM, count: $M })
)
;(v.context = {
model: h,
ecModel: n,
api: i,
useClearVisual: t.isVisual && !t.isLayout,
plan: t.plan,
reset: t.reset,
scheduler: a
}),
a._pipe(h, v)
}
}),
(r.prototype._createOverallStageTask = function (t, e, n, i) {
var a = this,
o = (e.overallTask = e.overallTask || Ta({ reset: VM }))
o.context = {
ecModel: n,
api: i,
overallReset: t.overallReset,
scheduler: a
}
var s = o.agentStubMap,
l = (o.agentStubMap = q()),
u = t.seriesType,
f = t.getTargetSeries,
h = !0,
c = !1,
v = ''
Ve(!t.createOnAllSeries, v),
u
? n.eachRawSeriesByType(u, d)
: f
? f(n, i).each(d)
: ((h = !1), A(n.getSeries(), d))
function d(p) {
var g = p.uid,
m = l.set(
g,
(s && s.get(g)) || ((c = !0), Ta({ reset: GM, onDirty: WM }))
)
;(m.context = { model: p, overallProgress: h }),
(m.agent = o),
(m.__block = h),
a._pipe(p, m)
}
c && o.dirty()
}),
(r.prototype._pipe = function (t, e) {
var n = t.uid,
i = this._pipelineMap.get(n)
!i.head && (i.head = e),
i.tail && i.tail.pipe(e),
(i.tail = e),
(e.__idxInPipeline = i.count++),
(e.__pipeline = i)
}),
(r.wrapStageHandler = function (t, e) {
return (
Q(t) && (t = { overallReset: t, seriesType: XM(t) }),
(t.uid = ca('stageHandler')),
e && (t.visualType = e),
t
)
}),
r
)
})()
function VM(r) {
r.overallReset(r.ecModel, r.api, r.payload)
}
function GM(r) {
return r.overallProgress && HM
}
function HM() {
this.agent.dirty(), this.getDownstream().dirty()
}
function WM() {
this.agent && this.agent.dirty()
}
function UM(r) {
return r.plan ? r.plan(r.model, r.ecModel, r.api, r.payload) : null
}
function YM(r) {
r.useClearVisual && r.data.clearAllVisual()
var t = (r.resetDefines = Mt(r.reset(r.model, r.ecModel, r.api, r.payload)))
return t.length > 1
? G(t, function (e, n) {
return bm(n)
})
: ZM
}
var ZM = bm(0)
function bm(r) {
return function (t, e) {
var n = e.data,
i = e.resetDefines[r]
if (i && i.dataEach) for (var a = t.start; a < t.end; a++) i.dataEach(n, a)
else i && i.progress && i.progress(t, n)
}
}
function $M(r) {
return r.data.count()
}
function XM(r) {
Ns = null
try {
r(Da, Tm)
} catch {}
return Ns
}
var Da = {},
Tm = {},
Ns
Cm(Da, Cg)
Cm(Tm, Ag)
Da.eachSeriesByType = Da.eachRawSeriesByType = function (r) {
Ns = r
}
Da.eachComponent = function (r) {
r.mainType === 'series' && r.subType && (Ns = r.subType)
}
function Cm(r, t) {
for (var e in t.prototype) r[e] = $t
}
var Am = zM,
Mm = [
'#37A2DA',
'#32C5E9',
'#67E0E3',
'#9FE6B8',
'#FFDB5C',
'#ff9f7f',
'#fb7293',
'#E062AE',
'#E690D1',
'#e7bcf3',
'#9d96f5',
'#8378EA',
'#96BFFF'
],
qM = {
color: Mm,
colorLayer: [
['#37A2DA', '#ffd85c', '#fd7b5f'],
['#37A2DA', '#67E0E3', '#FFDB5C', '#ff9f7f', '#E062AE', '#9d96f5'],
[
'#37A2DA',
'#32C5E9',
'#9FE6B8',
'#FFDB5C',
'#ff9f7f',
'#fb7293',
'#e7bcf3',
'#8378EA',
'#96BFFF'
],
Mm
]
},
Qt = '#B9B8CE',
Dm = '#100C2A',
Fs = function () {
return {
axisLine: { lineStyle: { color: Qt } },
splitLine: { lineStyle: { color: '#484753' } },
splitArea: {
areaStyle: {
color: ['rgba(255,255,255,0.02)', 'rgba(255,255,255,0.05)']
}
},
minorSplitLine: { lineStyle: { color: '#20203B' } }
}
},
Im = [
'#4992ff',
'#7cffb2',
'#fddd60',
'#ff6e76',
'#58d9f9',
'#05c091',
'#ff8a45',
'#8d48e3',
'#dd79ff'
],
Lm = {
darkMode: !0,
color: Im,
backgroundColor: Dm,
axisPointer: {
lineStyle: { color: '#817f91' },
crossStyle: { color: '#817f91' },
label: { color: '#fff' }
},
legend: { textStyle: { color: Qt } },
textStyle: { color: Qt },
title: {
textStyle: { color: '#EEF1FA' },
subtextStyle: { color: '#B9B8CE' }
},
toolbox: { iconStyle: { borderColor: Qt } },
dataZoom: {
borderColor: '#71708A',
textStyle: { color: Qt },
brushStyle: { color: 'rgba(135,163,206,0.3)' },
handleStyle: { color: '#353450', borderColor: '#C5CBE3' },
moveHandleStyle: { color: '#B0B6C3', opacity: 0.3 },
fillerColor: 'rgba(135,163,206,0.2)',
emphasis: {
handleStyle: { borderColor: '#91B7F2', color: '#4D587D' },
moveHandleStyle: { color: '#636D9A', opacity: 0.7 }
},
dataBackground: {
lineStyle: { color: '#71708A', width: 1 },
areaStyle: { color: '#71708A' }
},
selectedDataBackground: {
lineStyle: { color: '#87A3CE' },
areaStyle: { color: '#87A3CE' }
}
},
visualMap: { textStyle: { color: Qt } },
timeline: {
lineStyle: { color: Qt },
label: { color: Qt },
controlStyle: { color: Qt, borderColor: Qt }
},
calendar: {
itemStyle: { color: Dm },
dayLabel: { color: Qt },
monthLabel: { color: Qt },
yearLabel: { color: Qt }
},
timeAxis: Fs(),
logAxis: Fs(),
valueAxis: Fs(),
categoryAxis: Fs(),
line: { symbol: 'circle' },
graph: { color: Im },
gauge: {
title: { color: Qt },
axisLine: { lineStyle: { color: [[1, 'rgba(207,212,219,0.2)']] } },
axisLabel: { color: Qt },
detail: { color: '#EEF1FA' }
},
candlestick: {
itemStyle: {
color: '#f64e56',
color0: '#54ea92',
borderColor: '#f64e56',
borderColor0: '#54ea92'
}
}
}
Lm.categoryAxis.splitLine.show = !1
var KM = Lm,
QM = (function () {
function r() {}
return (
(r.prototype.normalizeQuery = function (t) {
var e = {},
n = {},
i = {}
if (W(t)) {
var a = Ue(t)
;(e.mainType = a.main || null), (e.subType = a.sub || null)
} else {
var o = ['Index', 'Name', 'Id'],
s = { name: 1, dataIndex: 1, dataType: 1 }
A(t, function (l, u) {
for (var f = !1, h = 0; h < o.length; h++) {
var c = o[h],
v = u.lastIndexOf(c)
if (v > 0 && v === u.length - c.length) {
var d = u.slice(0, v)
d !== 'data' &&
((e.mainType = d), (e[c.toLowerCase()] = l), (f = !0))
}
}
s.hasOwnProperty(u) && ((n[u] = l), (f = !0)), f || (i[u] = l)
})
}
return { cptQuery: e, dataQuery: n, otherQuery: i }
}),
(r.prototype.filter = function (t, e) {
var n = this.eventInfo
if (!n) return !0
var i = n.targetEl,
a = n.packedEvent,
o = n.model,
s = n.view
if (!o || !s) return !0
var l = e.cptQuery,
u = e.dataQuery
return (
f(l, o, 'mainType') &&
f(l, o, 'subType') &&
f(l, o, 'index', 'componentIndex') &&
f(l, o, 'name') &&
f(l, o, 'id') &&
f(u, a, 'name') &&
f(u, a, 'dataIndex') &&
f(u, a, 'dataType') &&
(!s.filterForExposedEvent ||
s.filterForExposedEvent(t, e.otherQuery, i, a))
)
function f(h, c, v, d) {
return h[v] == null || c[d || v] === h[v]
}
}),
(r.prototype.afterTrigger = function () {
this.eventInfo = null
}),
r
)
})(),
Xf = ['symbol', 'symbolSize', 'symbolRotate', 'symbolOffset'],
Pm = Xf.concat(['symbolKeepAspect']),
JM = {
createOnAllSeries: !0,
performRawSeries: !0,
reset: function (r, t) {
var e = r.getData()
if (
(r.legendIcon && e.setVisual('legendIcon', r.legendIcon),
!r.hasSymbolVisual)
)
return
for (var n = {}, i = {}, a = !1, o = 0; o < Xf.length; o++) {
var s = Xf[o],
l = r.get(s)
Q(l) ? ((a = !0), (i[s] = l)) : (n[s] = l)
}
if (
((n.symbol = n.symbol || r.defaultSymbol),
e.setVisual(
N(
{
legendIcon: r.legendIcon || n.symbol,
symbolKeepAspect: r.get('symbolKeepAspect')
},
n
)
),
t.isSeriesFiltered(r))
)
return
var u = xt(i)
function f(h, c) {
for (
var v = r.getRawValue(c), d = r.getDataParams(c), p = 0;
p < u.length;
p++
) {
var g = u[p]
h.setItemVisual(c, g, i[g](v, d))
}
}
return { dataEach: a ? f : null }
}
},
jM = {
createOnAllSeries: !0,
performRawSeries: !0,
reset: function (r, t) {
if (!r.hasSymbolVisual || t.isSeriesFiltered(r)) return
var e = r.getData()
function n(i, a) {
for (var o = i.getItemModel(a), s = 0; s < Pm.length; s++) {
var l = Pm[s],
u = o.getShallow(l, !0)
u != null && i.setItemVisual(a, l, u)
}
}
return { dataEach: e.hasItemOption ? n : null }
}
}
function tD(r, t, e) {
switch (e) {
case 'color':
var n = r.getItemVisual(t, 'style')
return n[r.getVisual('drawType')]
case 'opacity':
return r.getItemVisual(t, 'style').opacity
case 'symbol':
case 'symbolSize':
case 'liftZ':
return r.getItemVisual(t, e)
}
}
function eD(r, t) {
switch (t) {
case 'color':
var e = r.getVisual('style')
return e[r.getVisual('drawType')]
case 'opacity':
return r.getVisual('style').opacity
case 'symbol':
case 'symbolSize':
case 'liftZ':
return r.getVisual(t)
}
}
function rD(r, t) {
function e(n, i) {
var a = []
return (
n.eachComponent(
{ mainType: 'series', subType: r, query: i },
function (o) {
a.push(o.seriesIndex)
}
),
a
)
}
A(
[
[r + 'ToggleSelect', 'toggleSelect'],
[r + 'Select', 'select'],
[r + 'UnSelect', 'unselect']
],
function (n) {
t(n[0], function (i, a, o) {
;(i = N({}, i)),
o.dispatchAction(N(i, { type: n[1], seriesIndex: e(a, i) }))
})
}
)
}
function mi(r, t, e, n, i) {
var a = r + t
e.isSilent(a) ||
n.eachComponent({ mainType: 'series', subType: 'pie' }, function (o) {
for (
var s = o.seriesIndex, l = o.option.selectedMap, u = i.selected, f = 0;
f < u.length;
f++
)
if (u[f].seriesIndex === s) {
var h = o.getData(),
c = Jr(h, i.fromActionPayload)
e.trigger(a, {
type: a,
seriesId: o.id,
name: z(c) ? h.getName(c[0]) : h.getName(c),
selected: W(l) ? l : N({}, l)
})
}
})
}
function nD(r, t, e) {
r.on('selectchanged', function (n) {
var i = e.getModel()
n.isFromClick
? (mi('map', 'selectchanged', t, i, n),
mi('pie', 'selectchanged', t, i, n))
: n.fromAction === 'select'
? (mi('map', 'selected', t, i, n), mi('pie', 'selected', t, i, n))
: n.fromAction === 'unselect' &&
(mi('map', 'unselected', t, i, n), mi('pie', 'unselected', t, i, n))
})
}
function Ia(r, t, e) {
for (var n; r && !(t(r) && ((n = r), e)); ) r = r.__hostTarget || r.parent
return n
}
var iD = Math.round(Math.random() * 9),
aD = typeof Object.defineProperty == 'function',
oD = (function () {
function r() {
this._id = '__ec_inner_' + iD++
}
return (
(r.prototype.get = function (t) {
return this._guard(t)[this._id]
}),
(r.prototype.set = function (t, e) {
var n = this._guard(t)
return (
aD
? Object.defineProperty(n, this._id, {
value: e,
enumerable: !1,
configurable: !0
})
: (n[this._id] = e),
this
)
}),
(r.prototype.delete = function (t) {
return this.has(t) ? (delete this._guard(t)[this._id], !0) : !1
}),
(r.prototype.has = function (t) {
return !!this._guard(t)[this._id]
}),
(r.prototype._guard = function (t) {
if (t !== Object(t))
throw TypeError('Value of WeakMap is not a non-null object.')
return t
}),
r
)
})(),
sD = oD,
lD = st.extend({
type: 'triangle',
shape: { cx: 0, cy: 0, width: 0, height: 0 },
buildPath: function (r, t) {
var e = t.cx,
n = t.cy,
i = t.width / 2,
a = t.height / 2
r.moveTo(e, n - a),
r.lineTo(e + i, n + a),
r.lineTo(e - i, n + a),
r.closePath()
}
}),
uD = st.extend({
type: 'diamond',
shape: { cx: 0, cy: 0, width: 0, height: 0 },
buildPath: function (r, t) {
var e = t.cx,
n = t.cy,
i = t.width / 2,
a = t.height / 2
r.moveTo(e, n - a),
r.lineTo(e + i, n),
r.lineTo(e, n + a),
r.lineTo(e - i, n),
r.closePath()
}
}),
fD = st.extend({
type: 'pin',
shape: { x: 0, y: 0, width: 0, height: 0 },
buildPath: function (r, t) {
var e = t.x,
n = t.y,
i = (t.width / 5) * 3,
a = Math.max(i, t.height),
o = i / 2,
s = (o * o) / (a - o),
l = n - a + o + s,
u = Math.asin(s / o),
f = Math.cos(u) * o,
h = Math.sin(u),
c = Math.cos(u),
v = o * 0.6,
d = o * 0.7
r.moveTo(e - f, l + s),
r.arc(e, l, o, Math.PI - u, Math.PI * 2 + u),
r.bezierCurveTo(e + f - h * v, l + s + c * v, e, n - d, e, n),
r.bezierCurveTo(e, n - d, e - f + h * v, l + s + c * v, e - f, l + s),
r.closePath()
}
}),
hD = st.extend({
type: 'arrow',
shape: { x: 0, y: 0, width: 0, height: 0 },
buildPath: function (r, t) {
var e = t.height,
n = t.width,
i = t.x,
a = t.y,
o = (n / 3) * 2
r.moveTo(i, a),
r.lineTo(i + o, a + e),
r.lineTo(i, a + (e / 4) * 3),
r.lineTo(i - o, a + e),
r.lineTo(i, a),
r.closePath()
}
}),
vD = {
line: cn,
rect: St,
roundRect: St,
square: St,
circle: nf,
diamond: uD,
pin: fD,
arrow: hD,
triangle: lD
},
cD = {
line: function (r, t, e, n, i) {
;(i.x1 = r), (i.y1 = t + n / 2), (i.x2 = r + e), (i.y2 = t + n / 2)
},
rect: function (r, t, e, n, i) {
;(i.x = r), (i.y = t), (i.width = e), (i.height = n)
},
roundRect: function (r, t, e, n, i) {
;(i.x = r),
(i.y = t),
(i.width = e),
(i.height = n),
(i.r = Math.min(e, n) / 4)
},
square: function (r, t, e, n, i) {
var a = Math.min(e, n)
;(i.x = r), (i.y = t), (i.width = a), (i.height = a)
},
circle: function (r, t, e, n, i) {
;(i.cx = r + e / 2), (i.cy = t + n / 2), (i.r = Math.min(e, n) / 2)
},
diamond: function (r, t, e, n, i) {
;(i.cx = r + e / 2), (i.cy = t + n / 2), (i.width = e), (i.height = n)
},
pin: function (r, t, e, n, i) {
;(i.x = r + e / 2), (i.y = t + n / 2), (i.width = e), (i.height = n)
},
arrow: function (r, t, e, n, i) {
;(i.x = r + e / 2), (i.y = t + n / 2), (i.width = e), (i.height = n)
},
triangle: function (r, t, e, n, i) {
;(i.cx = r + e / 2), (i.cy = t + n / 2), (i.width = e), (i.height = n)
}
},
zs = {}
A(vD, function (r, t) {
zs[t] = new r()
})
var dD = st.extend({
type: 'symbol',
shape: { symbolType: '', x: 0, y: 0, width: 0, height: 0 },
calculateTextPosition: function (r, t, e) {
var n = Oo(r, t, e),
i = this.shape
return (
i &&
i.symbolType === 'pin' &&
t.position === 'inside' &&
(n.y = e.y + e.height * 0.4),
n
)
},
buildPath: function (r, t, e) {
var n = t.symbolType
if (n !== 'none') {
var i = zs[n]
i || ((n = 'rect'), (i = zs[n])),
cD[n](t.x, t.y, t.width, t.height, i.shape),
i.buildPath(r, i.shape, e)
}
}
})
function pD(r, t) {
if (this.type !== 'image') {
var e = this.style
this.__isEmptyBrush
? ((e.stroke = r), (e.fill = t || '#fff'), (e.lineWidth = 2))
: this.shape.symbolType === 'line'
? (e.stroke = r)
: (e.fill = r),
this.markRedraw()
}
}
function Or(r, t, e, n, i, a, o) {
var s = r.indexOf('empty') === 0
s && (r = r.substr(5, 1).toLowerCase() + r.substr(6))
var l
return (
r.indexOf('image://') === 0
? (l = Rp(r.slice(8), new vt(t, e, n, i), o ? 'center' : 'cover'))
: r.indexOf('path://') === 0
? (l = ff(r.slice(7), {}, new vt(t, e, n, i), o ? 'center' : 'cover'))
: (l = new dD({
shape: { symbolType: r, x: t, y: e, width: n, height: i }
})),
(l.__isEmptyBrush = s),
(l.setColor = pD),
a && l.setColor(a),
l
)
}
function gD(r) {
return z(r) || (r = [+r, +r]), [r[0] || 0, r[1] || 0]
}
function Rm(r, t) {
if (r != null)
return (
z(r) || (r = [r, r]), [yt(r[0], t[0]) || 0, yt(ht(r[1], r[0]), t[1]) || 0]
)
}
function wn(r) {
return isFinite(r)
}
function mD(r, t, e) {
var n = t.x == null ? 0 : t.x,
i = t.x2 == null ? 1 : t.x2,
a = t.y == null ? 0 : t.y,
o = t.y2 == null ? 0 : t.y2
t.global ||
((n = n * e.width + e.x),
(i = i * e.width + e.x),
(a = a * e.height + e.y),
(o = o * e.height + e.y)),
(n = wn(n) ? n : 0),
(i = wn(i) ? i : 1),
(a = wn(a) ? a : 0),
(o = wn(o) ? o : 0)
var s = r.createLinearGradient(n, a, i, o)
return s
}
function yD(r, t, e) {
var n = e.width,
i = e.height,
a = Math.min(n, i),
o = t.x == null ? 0.5 : t.x,
s = t.y == null ? 0.5 : t.y,
l = t.r == null ? 0.5 : t.r
t.global || ((o = o * n + e.x), (s = s * i + e.y), (l = l * a)),
(o = wn(o) ? o : 0.5),
(s = wn(s) ? s : 0.5),
(l = l >= 0 && wn(l) ? l : 0.5)
var u = r.createRadialGradient(o, s, 0, o, s, l)
return u
}
function qf(r, t, e) {
for (
var n = t.type === 'radial' ? yD(r, t, e) : mD(r, t, e),
i = t.colorStops,
a = 0;
a < i.length;
a++
)
n.addColorStop(i[a].offset, i[a].color)
return n
}
function _D(r, t) {
if (r === t || (!r && !t)) return !1
if (!r || !t || r.length !== t.length) return !0
for (var e = 0; e < r.length; e++) if (r[e] !== t[e]) return !0
return !1
}
function Vs(r) {
return parseInt(r, 10)
}
function Gs(r, t, e) {
var n = ['width', 'height'][t],
i = ['clientWidth', 'clientHeight'][t],
a = ['paddingLeft', 'paddingTop'][t],
o = ['paddingRight', 'paddingBottom'][t]
if (e[n] != null && e[n] !== 'auto') return parseFloat(e[n])
var s = document.defaultView.getComputedStyle(r)
return (
((r[i] || Vs(s[n]) || Vs(r.style[n])) - (Vs(s[a]) || 0) - (Vs(s[o]) || 0)) |
0
)
}
function SD(r, t) {
return !r || r === 'solid' || !(t > 0)
? null
: r === 'dashed'
? [4 * t, 2 * t]
: r === 'dotted'
? [t]
: dt(r)
? [r]
: z(r)
? r
: null
}
function Em(r) {
var t = r.style,
e = t.lineDash && t.lineWidth > 0 && SD(t.lineDash, t.lineWidth),
n = t.lineDashOffset
if (e) {
var i = t.strokeNoScale && r.getLineScale ? r.getLineScale() : 1
i &&
i !== 1 &&
((e = G(e, function (a) {
return a / i
})),
(n /= i))
}
return [e, n]
}
var xD = new ur(!0)
function Hs(r) {
var t = r.stroke
return !(t == null || t === 'none' || !(r.lineWidth > 0))
}
function Om(r) {
return typeof r == 'string' && r !== 'none'
}
function Ws(r) {
var t = r.fill
return t != null && t !== 'none'
}
function km(r, t) {
if (t.fillOpacity != null && t.fillOpacity !== 1) {
var e = r.globalAlpha
;(r.globalAlpha = t.fillOpacity * t.opacity), r.fill(), (r.globalAlpha = e)
} else r.fill()
}
function Bm(r, t) {
if (t.strokeOpacity != null && t.strokeOpacity !== 1) {
var e = r.globalAlpha
;(r.globalAlpha = t.strokeOpacity * t.opacity),
r.stroke(),
(r.globalAlpha = e)
} else r.stroke()
}
function Kf(r, t, e) {
var n = ld(t.image, t.__image, e)
if (Fo(n)) {
var i = r.createPattern(n, t.repeat || 'repeat')
if (typeof DOMMatrix == 'function' && i && i.setTransform) {
var a = new DOMMatrix()
a.translateSelf(t.x || 0, t.y || 0),
a.rotateSelf(0, 0, (t.rotation || 0) * Lx),
a.scaleSelf(t.scaleX || 1, t.scaleY || 1),
i.setTransform(a)
}
return i
}
}
function wD(r, t, e, n) {
var i,
a = Hs(e),
o = Ws(e),
s = e.strokePercent,
l = s < 1,
u = !t.path
;(!t.silent || l) && u && t.createPathProxy()
var f = t.path || xD,
h = t.__dirty
if (!n) {
var c = e.fill,
v = e.stroke,
d = o && !!c.colorStops,
p = a && !!v.colorStops,
g = o && !!c.image,
m = a && !!v.image,
y = void 0,
_ = void 0,
S = void 0,
w = void 0,
x = void 0
;(d || p) && (x = t.getBoundingRect()),
d &&
((y = h ? qf(r, c, x) : t.__canvasFillGradient),
(t.__canvasFillGradient = y)),
p &&
((_ = h ? qf(r, v, x) : t.__canvasStrokeGradient),
(t.__canvasStrokeGradient = _)),
g &&
((S =
h || !t.__canvasFillPattern ? Kf(r, c, t) : t.__canvasFillPattern),
(t.__canvasFillPattern = S)),
m &&
((w =
h || !t.__canvasStrokePattern
? Kf(r, v, t)
: t.__canvasStrokePattern),
(t.__canvasStrokePattern = S)),
d ? (r.fillStyle = y) : g && (S ? (r.fillStyle = S) : (o = !1)),
p ? (r.strokeStyle = _) : m && (w ? (r.strokeStyle = w) : (a = !1))
}
var b = t.getGlobalScale()
f.setScale(b[0], b[1], t.segmentIgnoreThreshold)
var T, C
r.setLineDash && e.lineDash && ((i = Em(t)), (T = i[0]), (C = i[1]))
var M = !0
;(u || h & Wn) &&
(f.setDPR(r.dpr),
l ? f.setContext(null) : (f.setContext(r), (M = !1)),
f.reset(),
t.buildPath(f, t.shape, n),
f.toStatic(),
t.pathUpdated()),
M && f.rebuildPath(r, l ? s : 1),
T && (r.setLineDash(T), (r.lineDashOffset = C)),
n ||
(e.strokeFirst
? (a && Bm(r, e), o && km(r, e))
: (o && km(r, e), a && Bm(r, e))),
T && r.setLineDash([])
}
function bD(r, t, e) {
var n = (t.__image = ld(e.image, t.__image, t, t.onload))
if (!(!n || !Fo(n))) {
var i = e.x || 0,
a = e.y || 0,
o = t.getWidth(),
s = t.getHeight(),
l = n.width / n.height
if (
(o == null && s != null
? (o = s * l)
: s == null && o != null
? (s = o / l)
: o == null && s == null && ((o = n.width), (s = n.height)),
e.sWidth && e.sHeight)
) {
var u = e.sx || 0,
f = e.sy || 0
r.drawImage(n, u, f, e.sWidth, e.sHeight, i, a, o, s)
} else if (e.sx && e.sy) {
var u = e.sx,
f = e.sy,
h = o - u,
c = s - f
r.drawImage(n, u, f, h, c, i, a, o, s)
} else r.drawImage(n, i, a, o, s)
}
}
function TD(r, t, e) {
var n,
i = e.text
if ((i != null && (i += ''), i)) {
;(r.font = e.font || Yr),
(r.textAlign = e.textAlign),
(r.textBaseline = e.textBaseline)
var a = void 0,
o = void 0
r.setLineDash && e.lineDash && ((n = Em(t)), (a = n[0]), (o = n[1])),
a && (r.setLineDash(a), (r.lineDashOffset = o)),
e.strokeFirst
? (Hs(e) && r.strokeText(i, e.x, e.y), Ws(e) && r.fillText(i, e.x, e.y))
: (Ws(e) && r.fillText(i, e.x, e.y),
Hs(e) && r.strokeText(i, e.x, e.y)),
a && r.setLineDash([])
}
}
var Nm = ['shadowBlur', 'shadowOffsetX', 'shadowOffsetY'],
Fm = [
['lineCap', 'butt'],
['lineJoin', 'miter'],
['miterLimit', 10]
]
function zm(r, t, e, n, i) {
var a = !1
if (!n && ((e = e || {}), t === e)) return !1
if (n || t.opacity !== e.opacity) {
re(r, i), (a = !0)
var o = Math.max(Math.min(t.opacity, 1), 0)
r.globalAlpha = isNaN(o) ? tn.opacity : o
}
;(n || t.blend !== e.blend) &&
(a || (re(r, i), (a = !0)),
(r.globalCompositeOperation = t.blend || tn.blend))
for (var s = 0; s < Nm.length; s++) {
var l = Nm[s]
;(n || t[l] !== e[l]) &&
(a || (re(r, i), (a = !0)), (r[l] = r.dpr * (t[l] || 0)))
}
return (
(n || t.shadowColor !== e.shadowColor) &&
(a || (re(r, i), (a = !0)),
(r.shadowColor = t.shadowColor || tn.shadowColor)),
a
)
}
function Vm(r, t, e, n, i) {
var a = La(t, i.inHover),
o = n ? null : (e && La(e, i.inHover)) || {}
if (a === o) return !1
var s = zm(r, a, o, n, i)
if (
((n || a.fill !== o.fill) &&
(s || (re(r, i), (s = !0)), Om(a.fill) && (r.fillStyle = a.fill)),
(n || a.stroke !== o.stroke) &&
(s || (re(r, i), (s = !0)), Om(a.stroke) && (r.strokeStyle = a.stroke)),
(n || a.opacity !== o.opacity) &&
(s || (re(r, i), (s = !0)),
(r.globalAlpha = a.opacity == null ? 1 : a.opacity)),
t.hasStroke())
) {
var l = a.lineWidth,
u = l / (a.strokeNoScale && t.getLineScale ? t.getLineScale() : 1)
r.lineWidth !== u && (s || (re(r, i), (s = !0)), (r.lineWidth = u))
}
for (var f = 0; f < Fm.length; f++) {
var h = Fm[f],
c = h[0]
;(n || a[c] !== o[c]) && (s || (re(r, i), (s = !0)), (r[c] = a[c] || h[1]))
}
return s
}
function CD(r, t, e, n, i) {
return zm(r, La(t, i.inHover), e && La(e, i.inHover), n, i)
}
function Gm(r, t) {
var e = t.transform,
n = r.dpr || 1
e
? r.setTransform(n * e[0], n * e[1], n * e[2], n * e[3], n * e[4], n * e[5])
: r.setTransform(n, 0, 0, n, 0, 0)
}
function AD(r, t, e) {
for (var n = !1, i = 0; i < r.length; i++) {
var a = r[i]
;(n = n || a.isZeroArea()),
Gm(t, a),
t.beginPath(),
a.buildPath(t, a.shape),
t.clip()
}
e.allClipped = n
}
function MD(r, t) {
return r && t
? r[0] !== t[0] ||
r[1] !== t[1] ||
r[2] !== t[2] ||
r[3] !== t[3] ||
r[4] !== t[4] ||
r[5] !== t[5]
: !(!r && !t)
}
var Hm = 1,
Wm = 2,
Um = 3,
Ym = 4
function DD(r) {
var t = Ws(r),
e = Hs(r)
return !(
r.lineDash ||
!(+t ^ +e) ||
(t && typeof r.fill != 'string') ||
(e && typeof r.stroke != 'string') ||
r.strokePercent < 1 ||
r.strokeOpacity < 1 ||
r.fillOpacity < 1
)
}
function re(r, t) {
t.batchFill && r.fill(),
t.batchStroke && r.stroke(),
(t.batchFill = ''),
(t.batchStroke = '')
}
function La(r, t) {
return (t && r.__hoverStyle) || r.style
}
function Zm(r, t) {
bn(r, t, { inHover: !1, viewWidth: 0, viewHeight: 0 }, !0)
}
function bn(r, t, e, n) {
var i = t.transform
if (!t.shouldBePainted(e.viewWidth, e.viewHeight, !1, !1)) {
;(t.__dirty &= ~ae), (t.__isRendered = !1)
return
}
var a = t.__clipPaths,
o = e.prevElClipPaths,
s = !1,
l = !1
if (
((!o || _D(a, o)) &&
(o &&
o.length &&
(re(r, e),
r.restore(),
(l = s = !0),
(e.prevElClipPaths = null),
(e.allClipped = !1),
(e.prevEl = null)),
a && a.length && (re(r, e), r.save(), AD(a, r, e), (s = !0)),
(e.prevElClipPaths = a)),
e.allClipped)
) {
t.__isRendered = !1
return
}
t.beforeBrush && t.beforeBrush(), t.innerBeforeBrush()
var u = e.prevEl
u || (l = s = !0)
var f = t instanceof st && t.autoBatch && DD(t.style)
s || MD(i, u.transform) ? (re(r, e), Gm(r, t)) : f || re(r, e)
var h = La(t, e.inHover)
t instanceof st
? (e.lastDrawType !== Hm && ((l = !0), (e.lastDrawType = Hm)),
Vm(r, t, u, l, e),
(!f || (!e.batchFill && !e.batchStroke)) && r.beginPath(),
wD(r, t, h, f),
f && ((e.batchFill = h.fill || ''), (e.batchStroke = h.stroke || '')))
: t instanceof Wu
? (e.lastDrawType !== Um && ((l = !0), (e.lastDrawType = Um)),
Vm(r, t, u, l, e),
TD(r, t, h))
: t instanceof un
? (e.lastDrawType !== Wm && ((l = !0), (e.lastDrawType = Wm)),
CD(r, t, u, l, e),
bD(r, t, h))
: t.getTemporalDisplayables &&
(e.lastDrawType !== Ym && ((l = !0), (e.lastDrawType = Ym)), ID(r, t, e)),
f && n && re(r, e),
t.innerAfterBrush(),
t.afterBrush && t.afterBrush(),
(e.prevEl = t),
(t.__dirty = 0),
(t.__isRendered = !0)
}
function ID(r, t, e) {
var n = t.getDisplayables(),
i = t.getTemporalDisplayables()
r.save()
var a = {
prevElClipPaths: null,
prevEl: null,
allClipped: !1,
viewWidth: e.viewWidth,
viewHeight: e.viewHeight,
inHover: e.inHover
},
o,
s
for (o = t.getCursor(), s = n.length; o < s; o++) {
var l = n[o]
l.beforeBrush && l.beforeBrush(),
l.innerBeforeBrush(),
bn(r, l, a, o === s - 1),
l.innerAfterBrush(),
l.afterBrush && l.afterBrush(),
(a.prevEl = l)
}
for (var u = 0, f = i.length; u < f; u++) {
var l = i[u]
l.beforeBrush && l.beforeBrush(),
l.innerBeforeBrush(),
bn(r, l, a, u === f - 1),
l.innerAfterBrush(),
l.afterBrush && l.afterBrush(),
(a.prevEl = l)
}
t.clearTemporalDisplayables(), (t.notClear = !0), r.restore()
}
var Qf = new sD(),
$m = new zi(100),
Xm = [
'symbol',
'symbolSize',
'symbolKeepAspect',
'color',
'backgroundColor',
'dashArrayX',
'dashArrayY',
'maxTileWidth',
'maxTileHeight'
]
function Jf(r, t) {
if (r === 'none') return null
var e = t.getDevicePixelRatio(),
n = t.getZr(),
i = n.painter.type === 'svg'
r.dirty && Qf.delete(r)
var a = Qf.get(r)
if (a) return a
var o = j(r, {
symbol: 'rect',
symbolSize: 1,
symbolKeepAspect: !0,
color: 'rgba(0, 0, 0, 0.2)',
backgroundColor: null,
dashArrayX: 5,
dashArrayY: 5,
rotation: 0,
maxTileWidth: 512,
maxTileHeight: 512
})
o.backgroundColor === 'none' && (o.backgroundColor = null)
var s = { repeat: 'repeat' }
return (
l(s),
(s.rotation = o.rotation),
(s.scaleX = s.scaleY = i ? 1 : 1 / e),
Qf.set(r, s),
(r.dirty = !1),
s
)
function l(u) {
for (var f = [e], h = !0, c = 0; c < Xm.length; ++c) {
var v = o[Xm[c]]
if (v != null && !z(v) && !W(v) && !dt(v) && typeof v != 'boolean') {
h = !1
break
}
f.push(v)
}
var d
if (h) {
d = f.join(',') + (i ? '-svg' : '')
var p = $m.get(d)
p && (i ? (u.svgElement = p) : (u.image = p))
}
var g = Km(o.dashArrayX),
m = LD(o.dashArrayY),
y = qm(o.symbol),
_ = PD(g),
S = Qm(m),
w = !i && kn.createCanvas(),
x = i && { tag: 'g', attrs: {}, key: 'dcl', children: [] },
b = C(),
T
w &&
((w.width = b.width * e),
(w.height = b.height * e),
(T = w.getContext('2d'))),
M(),
h && $m.put(d, w || x),
(u.image = w),
(u.svgElement = x),
(u.svgWidth = b.width),
(u.svgHeight = b.height)
function C() {
for (var D = 1, I = 0, L = _.length; I < L; ++I) D = Jc(D, _[I])
for (var P = 1, I = 0, L = y.length; I < L; ++I) P = Jc(P, y[I].length)
D *= P
var R = S * _.length * y.length
return {
width: Math.max(1, Math.min(D, o.maxTileWidth)),
height: Math.max(1, Math.min(R, o.maxTileHeight))
}
}
function M() {
T &&
(T.clearRect(0, 0, w.width, w.height),
o.backgroundColor &&
((T.fillStyle = o.backgroundColor),
T.fillRect(0, 0, w.width, w.height)))
for (var D = 0, I = 0; I < m.length; ++I) D += m[I]
if (D <= 0) return
for (var L = -S, P = 0, R = 0, O = 0; L < b.height; ) {
if (P % 2 == 0) {
for (
var U = (R / 2) % y.length, k = 0, F = 0, H = 0;
k < b.width * 2;
) {
for (var $ = 0, I = 0; I < g[O].length; ++I) $ += g[O][I]
if ($ <= 0) break
if (F % 2 == 0) {
var J = (1 - o.symbolSize) * 0.5,
et = k + g[O][F] * J,
ft = L + m[P] * J,
Ct = g[O][F] * o.symbolSize,
mt = m[P] * o.symbolSize,
zt = (H / 2) % y[U].length
Vt(et, ft, Ct, mt, y[U][zt])
}
;(k += g[O][F]), ++H, ++F, F === g[O].length && (F = 0)
}
++O, O === g.length && (O = 0)
}
;(L += m[P]), ++R, ++P, P === m.length && (P = 0)
}
function Vt(It, bt, K, it, Ne) {
var Ot = i ? 1 : e,
_r = Or(
Ne,
It * Ot,
bt * Ot,
K * Ot,
it * Ot,
o.color,
o.symbolKeepAspect
)
if (i) {
var rr = n.painter.renderOneToVNode(_r)
rr && x.children.push(rr)
} else Zm(T, _r)
}
}
}
}
function qm(r) {
if (!r || r.length === 0) return [['rect']]
if (W(r)) return [[r]]
for (var t = !0, e = 0; e < r.length; ++e)
if (!W(r[e])) {
t = !1
break
}
if (t) return qm([r])
for (var n = [], e = 0; e < r.length; ++e)
W(r[e]) ? n.push([r[e]]) : n.push(r[e])
return n
}
function Km(r) {
if (!r || r.length === 0) return [[0, 0]]
if (dt(r)) {
var t = Math.ceil(r)
return [[t, t]]
}
for (var e = !0, n = 0; n < r.length; ++n)
if (!dt(r[n])) {
e = !1
break
}
if (e) return Km([r])
for (var i = [], n = 0; n < r.length; ++n)
if (dt(r[n])) {
var t = Math.ceil(r[n])
i.push([t, t])
} else {
var t = G(r[n], function (s) {
return Math.ceil(s)
})
t.length % 2 == 1 ? i.push(t.concat(t)) : i.push(t)
}
return i
}
function LD(r) {
if (!r || (typeof r == 'object' && r.length === 0)) return [0, 0]
if (dt(r)) {
var t = Math.ceil(r)
return [t, t]
}
var e = G(r, function (n) {
return Math.ceil(n)
})
return r.length % 2 ? e.concat(e) : e
}
function PD(r) {
return G(r, function (t) {
return Qm(t)
})
}
function Qm(r) {
for (var t = 0, e = 0; e < r.length; ++e) t += r[e]
return r.length % 2 == 1 ? t * 2 : t
}
function RD(r, t) {
r.eachRawSeries(function (e) {
if (!r.isSeriesFiltered(e)) {
var n = e.getData()
n.hasItemVisual() &&
n.each(function (o) {
var s = n.getItemVisual(o, 'decal')
if (s) {
var l = n.ensureUniqueItemVisual(o, 'style')
l.decal = Jf(s, t)
}
})
var i = n.getVisual('decal')
if (i) {
var a = n.getVisual('style')
a.decal = Jf(i, t)
}
}
})
}
var ED = new fe(),
Pe = ED,
Jm = {}
function OD(r, t) {
Jm[r] = t
}
function kD(r) {
return Jm[r]
}
var BD = typeof window != 'undefined',
ND = 1,
FD = 800,
zD = 900,
VD = 1e3,
GD = 2e3,
HD = 5e3,
jm = 1e3,
WD = 1100,
jf = 2e3,
t0 = 3e3,
UD = 4e3,
Us = 4500,
YD = 4600,
ZD = 5e3,
$D = 6e3,
e0 = 7e3,
XD = {
PROCESSOR: { FILTER: VD, SERIES_FILTER: FD, STATISTIC: HD },
VISUAL: {
LAYOUT: jm,
PROGRESSIVE_LAYOUT: WD,
GLOBAL: jf,
CHART: t0,
POST_CHART_LAYOUT: YD,
COMPONENT: UD,
BRUSH: ZD,
CHART_ITEM: Us,
ARIA: $D,
DECAL: e0
}
},
Yt = '__flagInMainProcess',
ne = '__pendingUpdate',
th = '__needsUpdateStatus',
r0 = /^[a-zA-Z0-9_]+$/,
eh = '__connectUpdateStatus',
n0 = 0,
qD = 1,
KD = 2
function i0(r) {
return function () {
for (var t = [], e = 0; e < arguments.length; e++) t[e] = arguments[e]
if (this.isDisposed()) {
se(this.id)
return
}
return o0(this, r, t)
}
}
function a0(r) {
return function () {
for (var t = [], e = 0; e < arguments.length; e++) t[e] = arguments[e]
return o0(this, r, t)
}
}
function o0(r, t, e) {
return (e[0] = e[0] && e[0].toLowerCase()), fe.prototype[t].apply(r, e)
}
var s0 = (function (r) {
B(t, r)
function t() {
return (r !== null && r.apply(this, arguments)) || this
}
return t
})(fe),
l0 = s0.prototype
l0.on = a0('on')
l0.off = a0('off')
var yi,
rh,
Ys,
kr,
nh,
ih,
ah,
Pa,
Ra,
u0,
f0,
oh,
h0,
Zs,
v0,
c0,
we,
d0,
p0 = (function (r) {
B(t, r)
function t(e, n, i) {
var a = r.call(this, new QM()) || this
;(a._chartsViews = []),
(a._chartsMap = {}),
(a._componentsViews = []),
(a._componentsMap = {}),
(a._pendingActions = []),
(i = i || {}),
W(n) && (n = g0[n]),
(a._dom = e)
var o = 'canvas',
s = !1,
l = (a._zr = Uc(e, {
renderer: i.renderer || o,
devicePixelRatio: i.devicePixelRatio,
width: i.width,
height: i.height,
ssr: i.ssr,
useDirtyRect: i.useDirtyRect == null ? s : i.useDirtyRect
}))
;(a._ssr = i.ssr),
(a._throttledZrFlush = $f(X(l.flush, l), 17)),
(n = tt(n)),
n && Eg(n, !0),
(a._theme = n),
(a._locale = KC(i.locale || Xp)),
(a._coordSysMgr = new If())
var u = (a._api = v0(a))
function f(h, c) {
return h.__prio - c.__prio
}
return (
uo(Xs, f),
uo(lh, f),
(a._scheduler = new Am(a, u, lh, Xs)),
(a._messageCenter = new s0()),
a._initEvents(),
(a.resize = X(a.resize, a)),
l.animation.on('frame', a._onframe, a),
u0(l, a),
f0(l, a),
oo(a),
a
)
}
return (
(t.prototype._onframe = function () {
if (!this._disposed) {
d0(this)
var e = this._scheduler
if (this[ne]) {
var n = this[ne].silent
this[Yt] = !0
try {
yi(this), kr.update.call(this, null, this[ne].updateParams)
} catch (l) {
throw ((this[Yt] = !1), (this[ne] = null), l)
}
this._zr.flush(),
(this[Yt] = !1),
(this[ne] = null),
Pa.call(this, n),
Ra.call(this, n)
} else if (e.unfinished) {
var i = ND,
a = this._model,
o = this._api
e.unfinished = !1
do {
var s = +new Date()
e.performSeriesTasks(a),
e.performDataProcessorTasks(a),
ih(this, a),
e.performVisualTasks(a),
Zs(this, this._model, o, 'remain', {}),
(i -= +new Date() - s)
} while (i > 0 && e.unfinished)
e.unfinished || this._zr.flush()
}
}
}),
(t.prototype.getDom = function () {
return this._dom
}),
(t.prototype.getId = function () {
return this.id
}),
(t.prototype.getZr = function () {
return this._zr
}),
(t.prototype.isSSR = function () {
return this._ssr
}),
(t.prototype.setOption = function (e, n, i) {
if (!this[Yt]) {
if (this._disposed) {
se(this.id)
return
}
var a, o, s
if (
(Y(n) &&
((i = n.lazyUpdate),
(a = n.silent),
(o = n.replaceMerge),
(s = n.transition),
(n = n.notMerge)),
(this[Yt] = !0),
!this._model || n)
) {
var l = new EA(this._api),
u = this._theme,
f = (this._model = new Cg())
;(f.scheduler = this._scheduler),
(f.ssr = this._ssr),
f.init(null, null, null, u, this._locale, l)
}
this._model.setOption(e, { replaceMerge: o }, uh)
var h = { seriesTransition: s, optionChanged: !0 }
if (i)
(this[ne] = { silent: a, updateParams: h }),
(this[Yt] = !1),
this.getZr().wakeUp()
else {
try {
yi(this), kr.update.call(this, null, h)
} catch (c) {
throw ((this[ne] = null), (this[Yt] = !1), c)
}
this._ssr || this._zr.flush(),
(this[ne] = null),
(this[Yt] = !1),
Pa.call(this, a),
Ra.call(this, a)
}
}
}),
(t.prototype.setTheme = function () {}),
(t.prototype.getModel = function () {
return this._model
}),
(t.prototype.getOption = function () {
return this._model && this._model.getOption()
}),
(t.prototype.getWidth = function () {
return this._zr.getWidth()
}),
(t.prototype.getHeight = function () {
return this._zr.getHeight()
}),
(t.prototype.getDevicePixelRatio = function () {
return this._zr.painter.dpr || (BD && window.devicePixelRatio) || 1
}),
(t.prototype.getRenderedCanvas = function (e) {
return this.renderToCanvas(e)
}),
(t.prototype.renderToCanvas = function (e) {
e = e || {}
var n = this._zr.painter
return n.getRenderedCanvas({
backgroundColor:
e.backgroundColor || this._model.get('backgroundColor'),
pixelRatio: e.pixelRatio || this.getDevicePixelRatio()
})
}),
(t.prototype.renderToSVGString = function (e) {
e = e || {}
var n = this._zr.painter
return n.renderToString({ useViewBox: e.useViewBox })
}),
(t.prototype.getSvgDataURL = function () {
if (!!at.svgSupported) {
var e = this._zr,
n = e.storage.getDisplayList()
return (
A(n, function (i) {
i.stopAnimation(null, !0)
}),
e.painter.toDataURL()
)
}
}),
(t.prototype.getDataURL = function (e) {
if (this._disposed) {
se(this.id)
return
}
e = e || {}
var n = e.excludeComponents,
i = this._model,
a = [],
o = this
A(n, function (l) {
i.eachComponent({ mainType: l }, function (u) {
var f = o._componentsMap[u.__viewId]
f.group.ignore || (a.push(f), (f.group.ignore = !0))
})
})
var s =
this._zr.painter.getType() === 'svg'
? this.getSvgDataURL()
: this.renderToCanvas(e).toDataURL(
'image/' + ((e && e.type) || 'png')
)
return (
A(a, function (l) {
l.group.ignore = !1
}),
s
)
}),
(t.prototype.getConnectedDataURL = function (e) {
if (this._disposed) {
se(this.id)
return
}
var n = e.type === 'svg',
i = this.group,
a = Math.min,
o = Math.max,
s = 1 / 0
if (m0[i]) {
var l = s,
u = s,
f = -s,
h = -s,
c = [],
v = (e && e.pixelRatio) || this.getDevicePixelRatio()
A(Oa, function (_, S) {
if (_.group === i) {
var w = n
? _.getZr().painter.getSvgDom().innerHTML
: _.renderToCanvas(tt(e)),
x = _.getDom().getBoundingClientRect()
;(l = a(x.left, l)),
(u = a(x.top, u)),
(f = o(x.right, f)),
(h = o(x.bottom, h)),
c.push({ dom: w, left: x.left, top: x.top })
}
}),
(l *= v),
(u *= v),
(f *= v),
(h *= v)
var d = f - l,
p = h - u,
g = kn.createCanvas(),
m = Uc(g, { renderer: n ? 'svg' : 'canvas' })
if ((m.resize({ width: d, height: p }), n)) {
var y = ''
return (
A(c, function (_) {
var S = _.left - l,
w = _.top - u
y +=
'' +
_.dom +
''
}),
(m.painter.getSvgRoot().innerHTML = y),
e.connectedBackgroundColor &&
m.painter.setBackgroundColor(e.connectedBackgroundColor),
m.refreshImmediately(),
m.painter.toDataURL()
)
} else
return (
e.connectedBackgroundColor &&
m.add(
new St({
shape: { x: 0, y: 0, width: d, height: p },
style: { fill: e.connectedBackgroundColor }
})
),
A(c, function (_) {
var S = new un({
style: { x: _.left * v - l, y: _.top * v - u, image: _.dom }
})
m.add(S)
}),
m.refreshImmediately(),
g.toDataURL('image/' + ((e && e.type) || 'png'))
)
} else return this.getDataURL(e)
}),
(t.prototype.convertToPixel = function (e, n) {
return nh(this, 'convertToPixel', e, n)
}),
(t.prototype.convertFromPixel = function (e, n) {
return nh(this, 'convertFromPixel', e, n)
}),
(t.prototype.containPixel = function (e, n) {
if (this._disposed) {
se(this.id)
return
}
var i = this._model,
a,
o = Ji(i, e)
return (
A(
o,
function (s, l) {
l.indexOf('Models') >= 0 &&
A(
s,
function (u) {
var f = u.coordinateSystem
if (f && f.containPoint) a = a || !!f.containPoint(n)
else if (l === 'seriesModels') {
var h = this._chartsMap[u.__viewId]
h && h.containPoint && (a = a || h.containPoint(n, u))
}
},
this
)
},
this
),
!!a
)
}),
(t.prototype.getVisual = function (e, n) {
var i = this._model,
a = Ji(i, e, { defaultMainType: 'series' }),
o = a.seriesModel,
s = o.getData(),
l = a.hasOwnProperty('dataIndexInside')
? a.dataIndexInside
: a.hasOwnProperty('dataIndex')
? s.indexOfRawIndex(a.dataIndex)
: null
return l != null ? tD(s, l, n) : eD(s, n)
}),
(t.prototype.getViewOfComponentModel = function (e) {
return this._componentsMap[e.__viewId]
}),
(t.prototype.getViewOfSeriesModel = function (e) {
return this._chartsMap[e.__viewId]
}),
(t.prototype._initEvents = function () {
var e = this
A(QD, function (n) {
var i = function (a) {
var o = e.getModel(),
s = a.target,
l,
u = n === 'globalout'
if (
(u
? (l = {})
: s &&
Ia(
s,
function (d) {
var p = ct(d)
if (p && p.dataIndex != null) {
var g = p.dataModel || o.getSeriesByIndex(p.seriesIndex)
return (
(l =
(g && g.getDataParams(p.dataIndex, p.dataType)) ||
{}),
!0
)
} else if (p.eventData)
return (l = N({}, p.eventData)), !0
},
!0
),
l)
) {
var f = l.componentType,
h = l.componentIndex
;(f === 'markLine' || f === 'markPoint' || f === 'markArea') &&
((f = 'series'), (h = l.seriesIndex))
var c = f && h != null && o.getComponent(f, h),
v =
c &&
e[c.mainType === 'series' ? '_chartsMap' : '_componentsMap'][
c.__viewId
]
;(l.event = a),
(l.type = n),
(e._$eventProcessor.eventInfo = {
targetEl: s,
packedEvent: l,
model: c,
view: v
}),
e.trigger(n, l)
}
}
;(i.zrEventfulCallAtLast = !0), e._zr.on(n, i, e)
}),
A(Ea, function (n, i) {
e._messageCenter.on(
i,
function (a) {
this.trigger(i, a)
},
e
)
}),
A(['selectchanged'], function (n) {
e._messageCenter.on(
n,
function (i) {
this.trigger(n, i)
},
e
)
}),
nD(this._messageCenter, this, this._api)
}),
(t.prototype.isDisposed = function () {
return this._disposed
}),
(t.prototype.clear = function () {
if (this._disposed) {
se(this.id)
return
}
this.setOption({ series: [] }, !0)
}),
(t.prototype.dispose = function () {
if (this._disposed) {
se(this.id)
return
}
this._disposed = !0
var e = this.getDom()
e && id(this.getDom(), hh, '')
var n = this,
i = n._api,
a = n._model
A(n._componentsViews, function (o) {
o.dispose(a, i)
}),
A(n._chartsViews, function (o) {
o.dispose(a, i)
}),
n._zr.dispose(),
(n._dom =
n._model =
n._chartsMap =
n._componentsMap =
n._chartsViews =
n._componentsViews =
n._scheduler =
n._api =
n._zr =
n._throttledZrFlush =
n._theme =
n._coordSysMgr =
n._messageCenter =
null),
delete Oa[n.id]
}),
(t.prototype.resize = function (e) {
if (!this[Yt]) {
if (this._disposed) {
se(this.id)
return
}
this._zr.resize(e)
var n = this._model
if ((this._loadingFX && this._loadingFX.resize(), !!n)) {
var i = n.resetOption('media'),
a = e && e.silent
this[ne] &&
(a == null && (a = this[ne].silent), (i = !0), (this[ne] = null)),
(this[Yt] = !0)
try {
i && yi(this),
kr.update.call(this, {
type: 'resize',
animation: N({ duration: 0 }, e && e.animation)
})
} catch (o) {
throw ((this[Yt] = !1), o)
}
;(this[Yt] = !1), Pa.call(this, a), Ra.call(this, a)
}
}
}),
(t.prototype.showLoading = function (e, n) {
if (this._disposed) {
se(this.id)
return
}
if (
(Y(e) && ((n = e), (e = '')),
(e = e || 'default'),
this.hideLoading(),
!!fh[e])
) {
var i = fh[e](this._api, n),
a = this._zr
;(this._loadingFX = i), a.add(i)
}
}),
(t.prototype.hideLoading = function () {
if (this._disposed) {
se(this.id)
return
}
this._loadingFX && this._zr.remove(this._loadingFX),
(this._loadingFX = null)
}),
(t.prototype.makeActionFromEvent = function (e) {
var n = N({}, e)
return (n.type = Ea[e.type]), n
}),
(t.prototype.dispatchAction = function (e, n) {
if (this._disposed) {
se(this.id)
return
}
if ((Y(n) || (n = { silent: !!n }), !!$s[e.type] && !!this._model)) {
if (this[Yt]) {
this._pendingActions.push(e)
return
}
var i = n.silent
ah.call(this, e, i)
var a = n.flush
a
? this._zr.flush()
: a !== !1 && at.browser.weChat && this._throttledZrFlush(),
Pa.call(this, i),
Ra.call(this, i)
}
}),
(t.prototype.updateLabelLayout = function () {
Pe.trigger('series:layoutlabels', this._model, this._api, {
updatedSeries: []
})
}),
(t.prototype.appendData = function (e) {
if (this._disposed) {
se(this.id)
return
}
var n = e.seriesIndex,
i = this.getModel(),
a = i.getSeriesByIndex(n)
a.appendData(e),
(this._scheduler.unfinished = !0),
this.getZr().wakeUp()
}),
(t.internalField = (function () {
;(yi = function (h) {
var c = h._scheduler
c.restorePipelines(h._model),
c.prepareStageTasks(),
rh(h, !0),
rh(h, !1),
c.plan()
}),
(rh = function (h, c) {
for (
var v = h._model,
d = h._scheduler,
p = c ? h._componentsViews : h._chartsViews,
g = c ? h._componentsMap : h._chartsMap,
m = h._zr,
y = h._api,
_ = 0;
_ < p.length;
_++
)
p[_].__alive = !1
c
? v.eachComponent(function (x, b) {
x !== 'series' && S(b)
})
: v.eachSeries(S)
function S(x) {
var b = x.__requireNewView
x.__requireNewView = !1
var T = '_ec_' + x.id + '_' + x.type,
C = !b && g[T]
if (!C) {
var M = Ue(x.type),
D = c ? xe.getClass(M.main, M.sub) : Qe.getClass(M.sub)
;(C = new D()),
C.init(v, y),
(g[T] = C),
p.push(C),
m.add(C.group)
}
;(x.__viewId = C.__id = T),
(C.__alive = !0),
(C.__model = x),
(C.group.__ecComponentInfo = {
mainType: x.mainType,
index: x.componentIndex
}),
!c && d.prepareView(C, x, v, y)
}
for (var _ = 0; _ < p.length; ) {
var w = p[_]
w.__alive
? _++
: (!c && w.renderTask.dispose(),
m.remove(w.group),
w.dispose(v, y),
p.splice(_, 1),
g[w.__id] === w && delete g[w.__id],
(w.__id = w.group.__ecComponentInfo = null))
}
}),
(Ys = function (h, c, v, d, p) {
var g = h._model
if ((g.setUpdatePayload(v), !d)) {
A([].concat(h._componentsViews).concat(h._chartsViews), w)
return
}
var m = {}
;(m[d + 'Id'] = v[d + 'Id']),
(m[d + 'Index'] = v[d + 'Index']),
(m[d + 'Name'] = v[d + 'Name'])
var y = { mainType: d, query: m }
p && (y.subType = p)
var _ = v.excludeSeriesId,
S
_ != null &&
((S = q()),
A(Mt(_), function (x) {
var b = We(x, null)
b != null && S.set(b, !0)
})),
g &&
g.eachComponent(
y,
function (x) {
var b = S && S.get(x.id) !== null
if (!b)
if (np(v))
if (x instanceof Er)
v.type === hn &&
!v.notBlur &&
!x.get(['emphasis', 'disabled']) &&
LT(x, v, h._api)
else {
var T = Qu(
x.mainType,
x.componentIndex,
v.name,
h._api
),
C = T.focusSelf,
M = T.dispatchers
v.type === hn &&
C &&
!v.notBlur &&
Ku(x.mainType, x.componentIndex, h._api),
M &&
A(M, function (D) {
v.type === hn ? ei(D) : ri(D)
})
}
else
ju(v) &&
x instanceof Er &&
(ET(x, v, h._api), tp(x), we(h))
},
h
),
g &&
g.eachComponent(
y,
function (x) {
var b = S && S.get(x.id) !== null
b ||
w(
h[d === 'series' ? '_chartsMap' : '_componentsMap'][
x.__viewId
]
)
},
h
)
function w(x) {
x && x.__alive && x[c] && x[c](x.__model, g, h._api, v)
}
}),
(kr = {
prepareAndUpdate: function (h) {
yi(this),
kr.update.call(this, h, { optionChanged: h.newOption != null })
},
update: function (h, c) {
var v = this._model,
d = this._api,
p = this._zr,
g = this._coordSysMgr,
m = this._scheduler
if (!!v) {
v.setUpdatePayload(h),
m.restoreData(v, h),
m.performSeriesTasks(v),
g.create(v, d),
m.performDataProcessorTasks(v, h),
ih(this, v),
g.update(v, d),
e(v),
m.performVisualTasks(v, h),
oh(this, v, d, h, c)
var y = v.get('backgroundColor') || 'transparent',
_ = v.get('darkMode')
p.setBackgroundColor(y),
_ != null && _ !== 'auto' && p.setDarkMode(_),
Pe.trigger('afterupdate', v, d)
}
},
updateTransform: function (h) {
var c = this,
v = this._model,
d = this._api
if (!!v) {
v.setUpdatePayload(h)
var p = []
v.eachComponent(function (m, y) {
if (m !== 'series') {
var _ = c.getViewOfComponentModel(y)
if (_ && _.__alive)
if (_.updateTransform) {
var S = _.updateTransform(y, v, d, h)
S && S.update && p.push(_)
} else p.push(_)
}
})
var g = q()
v.eachSeries(function (m) {
var y = c._chartsMap[m.__viewId]
if (y.updateTransform) {
var _ = y.updateTransform(m, v, d, h)
_ && _.update && g.set(m.uid, 1)
} else g.set(m.uid, 1)
}),
e(v),
this._scheduler.performVisualTasks(v, h, {
setDirty: !0,
dirtyMap: g
}),
Zs(this, v, d, h, {}, g),
Pe.trigger('afterupdate', v, d)
}
},
updateView: function (h) {
var c = this._model
!c ||
(c.setUpdatePayload(h),
Qe.markUpdateMethod(h, 'updateView'),
e(c),
this._scheduler.performVisualTasks(c, h, { setDirty: !0 }),
oh(this, c, this._api, h, {}),
Pe.trigger('afterupdate', c, this._api))
},
updateVisual: function (h) {
var c = this,
v = this._model
!v ||
(v.setUpdatePayload(h),
v.eachSeries(function (d) {
d.getData().clearAllVisual()
}),
Qe.markUpdateMethod(h, 'updateVisual'),
e(v),
this._scheduler.performVisualTasks(v, h, {
visualType: 'visual',
setDirty: !0
}),
v.eachComponent(function (d, p) {
if (d !== 'series') {
var g = c.getViewOfComponentModel(p)
g && g.__alive && g.updateVisual(p, v, c._api, h)
}
}),
v.eachSeries(function (d) {
var p = c._chartsMap[d.__viewId]
p.updateVisual(d, v, c._api, h)
}),
Pe.trigger('afterupdate', v, this._api))
},
updateLayout: function (h) {
kr.update.call(this, h)
}
}),
(nh = function (h, c, v, d) {
if (h._disposed) {
se(h.id)
return
}
for (
var p = h._model,
g = h._coordSysMgr.getCoordinateSystems(),
m,
y = Ji(p, v),
_ = 0;
_ < g.length;
_++
) {
var S = g[_]
if (S[c] && (m = S[c](p, y, d)) != null) return m
}
}),
(ih = function (h, c) {
var v = h._chartsMap,
d = h._scheduler
c.eachSeries(function (p) {
d.updateStreamModes(p, v[p.__viewId])
})
}),
(ah = function (h, c) {
var v = this,
d = this.getModel(),
p = h.type,
g = h.escapeConnect,
m = $s[p],
y = m.actionInfo,
_ = (y.update || 'update').split(':'),
S = _.pop(),
w = _[0] != null && Ue(_[0])
this[Yt] = !0
var x = [h],
b = !1
h.batch &&
((b = !0),
(x = G(h.batch, function (P) {
return (P = j(N({}, P), h)), (P.batch = null), P
})))
var T = [],
C,
M = ju(h),
D = np(h)
if (
(D && jd(this._api),
A(x, function (P) {
if (
((C = m.action(P, v._model, v._api)),
(C = C || N({}, P)),
(C.type = y.event || C.type),
T.push(C),
D)
) {
var R = Mu(h),
O = R.queryOptionMap,
U = R.mainTypeSpecified,
k = U ? O.keys()[0] : 'series'
Ys(v, S, P, k), we(v)
} else M ? (Ys(v, S, P, 'series'), we(v)) : w && Ys(v, S, P, w.main, w.sub)
}),
S !== 'none' && !D && !M && !w)
)
try {
this[ne]
? (yi(this), kr.update.call(this, h), (this[ne] = null))
: kr[S].call(this, h)
} catch (P) {
throw ((this[Yt] = !1), P)
}
if (
(b
? (C = { type: y.event || p, escapeConnect: g, batch: T })
: (C = T[0]),
(this[Yt] = !1),
!c)
) {
var I = this._messageCenter
if ((I.trigger(C.type, C), M)) {
var L = {
type: 'selectchanged',
escapeConnect: g,
selected: OT(d),
isFromClick: h.isFromClick || !1,
fromAction: h.type,
fromActionPayload: h
}
I.trigger(L.type, L)
}
}
}),
(Pa = function (h) {
for (var c = this._pendingActions; c.length; ) {
var v = c.shift()
ah.call(this, v, h)
}
}),
(Ra = function (h) {
!h && this.trigger('updated')
}),
(u0 = function (h, c) {
h.on('rendered', function (v) {
c.trigger('rendered', v),
h.animation.isFinished() &&
!c[ne] &&
!c._scheduler.unfinished &&
!c._pendingActions.length &&
c.trigger('finished')
})
}),
(f0 = function (h, c) {
h.on('mouseover', function (v) {
var d = v.target,
p = Ia(d, Ju)
p && (PT(p, v, c._api), we(c))
})
.on('mouseout', function (v) {
var d = v.target,
p = Ia(d, Ju)
p && (RT(p, v, c._api), we(c))
})
.on('click', function (v) {
var d = v.target,
p = Ia(
d,
function (y) {
return ct(y).dataIndex != null
},
!0
)
if (p) {
var g = p.selected ? 'unselect' : 'select',
m = ct(p)
c._api.dispatchAction({
type: g,
dataType: m.dataType,
dataIndexInside: m.dataIndex,
seriesIndex: m.seriesIndex,
isFromClick: !0
})
}
})
})
function e(h) {
h.clearColorPalette(),
h.eachSeries(function (c) {
c.clearColorPalette()
})
}
function n(h) {
var c = [],
v = [],
d = !1
if (
(h.eachComponent(function (y, _) {
var S = _.get('zlevel') || 0,
w = _.get('z') || 0,
x = _.getZLevelKey()
;(d = d || !!x),
(y === 'series' ? v : c).push({
zlevel: S,
z: w,
idx: _.componentIndex,
type: y,
key: x
})
}),
d)
) {
var p = c.concat(v),
g,
m
uo(p, function (y, _) {
return y.zlevel === _.zlevel ? y.z - _.z : y.zlevel - _.zlevel
}),
A(p, function (y) {
var _ = h.getComponent(y.type, y.idx),
S = y.zlevel,
w = y.key
g != null && (S = Math.max(g, S)),
w
? (S === g && w !== m && S++, (m = w))
: m && (S === g && S++, (m = '')),
(g = S),
_.setZLevel(S)
})
}
}
;(oh = function (h, c, v, d, p) {
n(c),
h0(h, c, v, d, p),
A(h._chartsViews, function (g) {
g.__alive = !1
}),
Zs(h, c, v, d, p),
A(h._chartsViews, function (g) {
g.__alive || g.remove(c, v)
})
}),
(h0 = function (h, c, v, d, p, g) {
A(g || h._componentsViews, function (m) {
var y = m.__model
u(y, m), m.render(y, c, v, d), s(y, m), f(y, m)
})
}),
(Zs = function (h, c, v, d, p, g) {
var m = h._scheduler
;(p = N(p || {}, { updatedSeries: c.getSeries() })),
Pe.trigger('series:beforeupdate', c, v, p)
var y = !1
c.eachSeries(function (_) {
var S = h._chartsMap[_.__viewId]
S.__alive = !0
var w = S.renderTask
m.updatePayload(w, d),
u(_, S),
g && g.get(_.uid) && w.dirty(),
w.perform(m.getPerformArgs(w)) && (y = !0),
(S.group.silent = !!_.get('silent')),
o(_, S),
tp(_)
}),
(m.unfinished = y || m.unfinished),
Pe.trigger('series:layoutlabels', c, v, p),
Pe.trigger('series:transition', c, v, p),
c.eachSeries(function (_) {
var S = h._chartsMap[_.__viewId]
s(_, S), f(_, S)
}),
a(h, c),
Pe.trigger('series:afterupdate', c, v, p)
}),
(we = function (h) {
;(h[th] = !0), h.getZr().wakeUp()
}),
(d0 = function (h) {
!h[th] ||
(h.getZr().storage.traverse(function (c) {
oi(c) || i(c)
}),
(h[th] = !1))
})
function i(h) {
for (var c = [], v = h.currentStates, d = 0; d < v.length; d++) {
var p = v[d]
p === 'emphasis' || p === 'blur' || p === 'select' || c.push(p)
}
h.selected && h.states.select && c.push('select'),
h.hoverState === Uo && h.states.emphasis
? c.push('emphasis')
: h.hoverState === Wo && h.states.blur && c.push('blur'),
h.useStates(c)
}
function a(h, c) {
var v = h._zr,
d = v.storage,
p = 0
d.traverse(function (g) {
g.isGroup || p++
}),
p > c.get('hoverLayerThreshold') &&
!at.node &&
!at.worker &&
c.eachSeries(function (g) {
if (!g.preventUsingHoverLayer) {
var m = h._chartsMap[g.__viewId]
m.__alive &&
m.eachRendered(function (y) {
y.states.emphasis && (y.states.emphasis.hoverLayer = !0)
})
}
})
}
function o(h, c) {
var v = h.get('blendMode') || null
c.eachRendered(function (d) {
d.isGroup || (d.style.blend = v)
})
}
function s(h, c) {
if (!h.preventAutoZ) {
var v = h.get('z') || 0,
d = h.get('zlevel') || 0
c.eachRendered(function (p) {
return l(p, v, d, -1 / 0), !0
})
}
}
function l(h, c, v, d) {
var p = h.getTextContent(),
g = h.getTextGuideLine(),
m = h.isGroup
if (m)
for (var y = h.childrenRef(), _ = 0; _ < y.length; _++)
d = Math.max(l(y[_], c, v, d), d)
else (h.z = c), (h.zlevel = v), (d = Math.max(h.z2, d))
if (
(p && ((p.z = c), (p.zlevel = v), isFinite(d) && (p.z2 = d + 2)), g)
) {
var S = h.textGuideLineConfig
;(g.z = c),
(g.zlevel = v),
isFinite(d) && (g.z2 = d + (S && S.showAbove ? 1 : -1))
}
return d
}
function u(h, c) {
c.eachRendered(function (v) {
if (!oi(v)) {
var d = v.getTextContent(),
p = v.getTextGuideLine()
v.stateTransition && (v.stateTransition = null),
d && d.stateTransition && (d.stateTransition = null),
p && p.stateTransition && (p.stateTransition = null),
v.hasState()
? ((v.prevStates = v.currentStates), v.clearStates())
: v.prevStates && (v.prevStates = null)
}
})
}
function f(h, c) {
var v = h.getModel('stateAnimation'),
d = h.isAnimationEnabled(),
p = v.get('duration'),
g =
p > 0
? {
duration: p,
delay: v.get('delay'),
easing: v.get('easing')
}
: null
c.eachRendered(function (m) {
if (m.states && m.states.emphasis) {
if (oi(m)) return
if ((m instanceof st && zT(m), m.__dirty)) {
var y = m.prevStates
y && m.useStates(y)
}
if (d) {
m.stateTransition = g
var _ = m.getTextContent(),
S = m.getTextGuideLine()
_ && (_.stateTransition = g), S && (S.stateTransition = g)
}
m.__dirty && i(m)
}
})
}
;(v0 = function (h) {
return new ((function (c) {
B(v, c)
function v() {
return (c !== null && c.apply(this, arguments)) || this
}
return (
(v.prototype.getCoordinateSystems = function () {
return h._coordSysMgr.getCoordinateSystems()
}),
(v.prototype.getComponentByElement = function (d) {
for (; d; ) {
var p = d.__ecComponentInfo
if (p != null)
return h._model.getComponent(p.mainType, p.index)
d = d.parent
}
}),
(v.prototype.enterEmphasis = function (d, p) {
ei(d, p), we(h)
}),
(v.prototype.leaveEmphasis = function (d, p) {
ri(d, p), we(h)
}),
(v.prototype.enterBlur = function (d) {
IT(d), we(h)
}),
(v.prototype.leaveBlur = function (d) {
qd(d), we(h)
}),
(v.prototype.enterSelect = function (d) {
Kd(d), we(h)
}),
(v.prototype.leaveSelect = function (d) {
Qd(d), we(h)
}),
(v.prototype.getModel = function () {
return h.getModel()
}),
(v.prototype.getViewOfComponentModel = function (d) {
return h.getViewOfComponentModel(d)
}),
(v.prototype.getViewOfSeriesModel = function (d) {
return h.getViewOfSeriesModel(d)
}),
v
)
})(Ag))(h)
}),
(c0 = function (h) {
function c(v, d) {
for (var p = 0; p < v.length; p++) {
var g = v[p]
g[eh] = d
}
}
A(Ea, function (v, d) {
h._messageCenter.on(d, function (p) {
if (m0[h.group] && h[eh] !== n0) {
if (p && p.escapeConnect) return
var g = h.makeActionFromEvent(p),
m = []
A(Oa, function (y) {
y !== h && y.group === h.group && m.push(y)
}),
c(m, n0),
A(m, function (y) {
y[eh] !== qD && y.dispatchAction(g)
}),
c(m, KD)
}
})
})
})
})()),
t
)
})(fe),
sh = p0.prototype
sh.on = i0('on')
sh.off = i0('off')
sh.one = function (r, t, e) {
var n = this
function i() {
for (var a = [], o = 0; o < arguments.length; o++) a[o] = arguments[o]
t && t.apply && t.apply(this, a), n.off(r, i)
}
this.on.call(this, r, i, e)
}
var QD = [
'click',
'dblclick',
'mouseover',
'mouseout',
'mousemove',
'mousedown',
'mouseup',
'globalout',
'contextmenu'
]
function se(r) {}
var $s = {},
Ea = {},
lh = [],
uh = [],
Xs = [],
g0 = {},
fh = {},
Oa = {},
m0 = {},
JD = +new Date() - 0,
hh = '_echarts_instance_'
function y0(r, t, e) {
var n = !(e && e.ssr)
if (n) {
var i = jD(r)
if (i) return i
}
var a = new p0(r, t, e)
return (
(a.id = 'ec_' + JD++),
(Oa[a.id] = a),
n && id(r, hh, a.id),
c0(a),
Pe.trigger('afterinit', a),
a
)
}
function jD(r) {
return Oa[gb(r, hh)]
}
function _0(r, t) {
g0[r] = t
}
function S0(r) {
ot(uh, r) < 0 && uh.push(r)
}
function x0(r, t) {
ch(lh, r, t, GD)
}
function t2(r) {
vh('afterinit', r)
}
function e2(r) {
vh('afterupdate', r)
}
function vh(r, t) {
Pe.on(r, t)
}
function Je(r, t, e) {
Q(t) && ((e = t), (t = ''))
var n = Y(r) ? r.type : [r, (r = { event: t })][0]
;(r.event = (r.event || n).toLowerCase()),
(t = r.event),
!Ea[t] &&
(Ve(r0.test(n) && r0.test(t)),
$s[n] || ($s[n] = { action: e, actionInfo: r }),
(Ea[t] = n))
}
function r2(r, t) {
If.register(r, t)
}
function n2(r, t) {
ch(Xs, r, t, jm, 'layout')
}
function Tn(r, t) {
ch(Xs, r, t, t0, 'visual')
}
var w0 = []
function ch(r, t, e, n, i) {
if (((Q(t) || Y(t)) && ((e = t), (t = n)), !(ot(w0, e) >= 0))) {
w0.push(e)
var a = Am.wrapStageHandler(e, i)
;(a.__prio = t), (a.__raw = e), r.push(a)
}
}
function b0(r, t) {
fh[r] = t
}
function i2(r, t, e) {
var n = kD('registerMap')
n && n(r, t, e)
}
var a2 = lM
Tn(jf, kM)
Tn(Us, BM)
Tn(Us, NM)
Tn(jf, JM)
Tn(Us, jM)
Tn(e0, RD)
S0(Eg)
x0(zD, GA)
b0('default', FM)
Je({ type: hn, event: hn, update: hn }, $t)
Je({ type: Zo, event: Zo, update: Zo }, $t)
Je({ type: na, event: na, update: na }, $t)
Je({ type: $o, event: $o, update: $o }, $t)
Je({ type: ia, event: ia, update: ia }, $t)
_0('light', qM)
_0('dark', KM)
function ka(r) {
return r == null ? 0 : r.length || 1
}
function T0(r) {
return r
}
var o2 = (function () {
function r(t, e, n, i, a, o) {
;(this._old = t),
(this._new = e),
(this._oldKeyGetter = n || T0),
(this._newKeyGetter = i || T0),
(this.context = a),
(this._diffModeMultiple = o === 'multiple')
}
return (
(r.prototype.add = function (t) {
return (this._add = t), this
}),
(r.prototype.update = function (t) {
return (this._update = t), this
}),
(r.prototype.updateManyToOne = function (t) {
return (this._updateManyToOne = t), this
}),
(r.prototype.updateOneToMany = function (t) {
return (this._updateOneToMany = t), this
}),
(r.prototype.updateManyToMany = function (t) {
return (this._updateManyToMany = t), this
}),
(r.prototype.remove = function (t) {
return (this._remove = t), this
}),
(r.prototype.execute = function () {
this[this._diffModeMultiple ? '_executeMultiple' : '_executeOneToOne']()
}),
(r.prototype._executeOneToOne = function () {
var t = this._old,
e = this._new,
n = {},
i = new Array(t.length),
a = new Array(e.length)
this._initIndexMap(t, null, i, '_oldKeyGetter'),
this._initIndexMap(e, n, a, '_newKeyGetter')
for (var o = 0; o < t.length; o++) {
var s = i[o],
l = n[s],
u = ka(l)
if (u > 1) {
var f = l.shift()
l.length === 1 && (n[s] = l[0]), this._update && this._update(f, o)
} else
u === 1
? ((n[s] = null), this._update && this._update(l, o))
: this._remove && this._remove(o)
}
this._performRestAdd(a, n)
}),
(r.prototype._executeMultiple = function () {
var t = this._old,
e = this._new,
n = {},
i = {},
a = [],
o = []
this._initIndexMap(t, n, a, '_oldKeyGetter'),
this._initIndexMap(e, i, o, '_newKeyGetter')
for (var s = 0; s < a.length; s++) {
var l = a[s],
u = n[l],
f = i[l],
h = ka(u),
c = ka(f)
if (h > 1 && c === 1)
this._updateManyToOne && this._updateManyToOne(f, u), (i[l] = null)
else if (h === 1 && c > 1)
this._updateOneToMany && this._updateOneToMany(f, u), (i[l] = null)
else if (h === 1 && c === 1)
this._update && this._update(f, u), (i[l] = null)
else if (h > 1 && c > 1)
this._updateManyToMany && this._updateManyToMany(f, u),
(i[l] = null)
else if (h > 1)
for (var v = 0; v < h; v++) this._remove && this._remove(u[v])
else this._remove && this._remove(u)
}
this._performRestAdd(o, i)
}),
(r.prototype._performRestAdd = function (t, e) {
for (var n = 0; n < t.length; n++) {
var i = t[n],
a = e[i],
o = ka(a)
if (o > 1) for (var s = 0; s < o; s++) this._add && this._add(a[s])
else o === 1 && this._add && this._add(a)
e[i] = null
}
}),
(r.prototype._initIndexMap = function (t, e, n, i) {
for (var a = this._diffModeMultiple, o = 0; o < t.length; o++) {
var s = '_ec_' + this[i](t[o], o)
if ((a || (n[o] = s), !!e)) {
var l = e[s],
u = ka(l)
u === 0
? ((e[s] = o), a && n.push(s))
: u === 1
? (e[s] = [l, o])
: l.push(o)
}
}
}),
r
)
})(),
Ba = o2,
s2 = (function () {
function r(t, e) {
;(this._encode = t), (this._schema = e)
}
return (
(r.prototype.get = function () {
return {
fullDimensions: this._getFullDimensionNames(),
encode: this._encode
}
}),
(r.prototype._getFullDimensionNames = function () {
return (
this._cachedDimNames ||
(this._cachedDimNames = this._schema
? this._schema.makeOutputDimensionNames()
: []),
this._cachedDimNames
)
}),
r
)
})()
function l2(r, t) {
var e = {},
n = (e.encode = {}),
i = q(),
a = [],
o = [],
s = {}
A(r.dimensions, function (c) {
var v = r.getDimensionInfo(c),
d = v.coordDim
if (d) {
var p = v.coordDimIndex
;(dh(n, d)[p] = c),
v.isExtraCoord ||
(i.set(d, 1),
f2(v.type) && (a[0] = c),
(dh(s, d)[p] = r.getDimensionIndex(v.name))),
v.defaultTooltip && o.push(c)
}
cg.each(function (g, m) {
var y = dh(n, m),
_ = v.otherDims[m]
_ != null && _ !== !1 && (y[_] = v.name)
})
})
var l = [],
u = {}
i.each(function (c, v) {
var d = n[v]
;(u[v] = d[0]), (l = l.concat(d))
}),
(e.dataDimsOnCoord = l),
(e.dataDimIndicesOnCoord = G(l, function (c) {
return r.getDimensionInfo(c).storeDimIndex
})),
(e.encodeFirstDimNotExtra = u)
var f = n.label
f && f.length && (a = f.slice())
var h = n.tooltip
return (
h && h.length ? (o = h.slice()) : o.length || (o = a.slice()),
(n.defaultedLabel = a),
(n.defaultedTooltip = o),
(e.userOutput = new s2(s, t)),
e
)
}
function dh(r, t) {
return r.hasOwnProperty(t) || (r[t] = []), r[t]
}
function u2(r) {
return r === 'category' ? 'ordinal' : r === 'time' ? 'time' : 'float'
}
function f2(r) {
return !(r === 'ordinal' || r === 'time')
}
var h2 = (function () {
function r(t) {
;(this.otherDims = {}), t != null && N(this, t)
}
return r
})(),
qs = h2,
v2 = wt(),
c2 = { float: 'f', int: 'i', ordinal: 'o', number: 'n', time: 't' },
C0 = (function () {
function r(t) {
;(this.dimensions = t.dimensions),
(this._dimOmitted = t.dimensionOmitted),
(this.source = t.source),
(this._fullDimCount = t.fullDimensionCount),
this._updateDimOmitted(t.dimensionOmitted)
}
return (
(r.prototype.isDimensionOmitted = function () {
return this._dimOmitted
}),
(r.prototype._updateDimOmitted = function (t) {
;(this._dimOmitted = t),
!!t && (this._dimNameMap || (this._dimNameMap = D0(this.source)))
}),
(r.prototype.getSourceDimensionIndex = function (t) {
return ht(this._dimNameMap.get(t), -1)
}),
(r.prototype.getSourceDimension = function (t) {
var e = this.source.dimensionsDefine
if (e) return e[t]
}),
(r.prototype.makeStoreSchema = function () {
for (
var t = this._fullDimCount,
e = Ng(this.source),
n = !I0(t),
i = '',
a = [],
o = 0,
s = 0;
o < t;
o++
) {
var l = void 0,
u = void 0,
f = void 0,
h = this.dimensions[s]
if (h && h.storeDimIndex === o)
(l = e ? h.name : null), (u = h.type), (f = h.ordinalMeta), s++
else {
var c = this.getSourceDimension(o)
c && ((l = e ? c.name : null), (u = c.type))
}
a.push({ property: l, type: u, ordinalMeta: f }),
e &&
l != null &&
(!h || !h.isCalculationCoord) &&
(i += n ? l.replace(/\`/g, '`1').replace(/\$/g, '`2') : l),
(i += '$'),
(i += c2[u] || 'f'),
f && (i += f.uid),
(i += '$')
}
var v = this.source,
d = [v.seriesLayoutBy, v.startIndex, i].join('$$')
return { dimensions: a, hash: d }
}),
(r.prototype.makeOutputDimensionNames = function () {
for (var t = [], e = 0, n = 0; e < this._fullDimCount; e++) {
var i = void 0,
a = this.dimensions[n]
if (a && a.storeDimIndex === e)
a.isCalculationCoord || (i = a.name), n++
else {
var o = this.getSourceDimension(e)
o && (i = o.name)
}
t.push(i)
}
return t
}),
(r.prototype.appendCalculationDimension = function (t) {
this.dimensions.push(t),
(t.isCalculationCoord = !0),
this._fullDimCount++,
this._updateDimOmitted(!0)
}),
r
)
})()
function A0(r) {
return r instanceof C0
}
function M0(r) {
for (var t = q(), e = 0; e < (r || []).length; e++) {
var n = r[e],
i = Y(n) ? n.name : n
i != null && t.get(i) == null && t.set(i, e)
}
return t
}
function D0(r) {
var t = v2(r)
return t.dimNameMap || (t.dimNameMap = M0(r.dimensionsDefine))
}
function I0(r) {
return r > 30
}
var Na = Y,
Br = G,
d2 = typeof Int32Array == 'undefined' ? Array : Int32Array,
p2 = 'e\0\0',
L0 = -1,
g2 = [
'hasItemOption',
'_nameList',
'_idList',
'_invertedIndicesMap',
'_dimSummary',
'userOutput',
'_rawData',
'_dimValueGetter',
'_nameDimIdx',
'_idDimIdx',
'_nameRepeatCount'
],
m2 = ['_approximateExtent'],
P0,
Ks,
Fa,
za,
ph,
Qs,
gh,
y2 = (function () {
function r(t, e) {
;(this.type = 'list'),
(this._dimOmitted = !1),
(this._nameList = []),
(this._idList = []),
(this._visual = {}),
(this._layout = {}),
(this._itemVisuals = []),
(this._itemLayouts = []),
(this._graphicEls = []),
(this._approximateExtent = {}),
(this._calculationInfo = {}),
(this.hasItemOption = !1),
(this.TRANSFERABLE_METHODS = [
'cloneShallow',
'downSample',
'lttbDownSample',
'map'
]),
(this.CHANGABLE_METHODS = ['filterSelf', 'selectRange']),
(this.DOWNSAMPLE_METHODS = ['downSample', 'lttbDownSample'])
var n,
i = !1
A0(t)
? ((n = t.dimensions),
(this._dimOmitted = t.isDimensionOmitted()),
(this._schema = t))
: ((i = !0), (n = t)),
(n = n || ['x', 'y'])
for (
var a = {}, o = [], s = {}, l = !1, u = {}, f = 0;
f < n.length;
f++
) {
var h = n[f],
c = W(h) ? new qs({ name: h }) : h instanceof qs ? h : new qs(h),
v = c.name
;(c.type = c.type || 'float'),
c.coordDim || ((c.coordDim = v), (c.coordDimIndex = 0))
var d = (c.otherDims = c.otherDims || {})
o.push(v),
(a[v] = c),
u[v] != null && (l = !0),
c.createInvertedIndices && (s[v] = []),
d.itemName === 0 && (this._nameDimIdx = f),
d.itemId === 0 && (this._idDimIdx = f),
i && (c.storeDimIndex = f)
}
if (
((this.dimensions = o),
(this._dimInfos = a),
this._initGetDimensionInfo(l),
(this.hostModel = e),
(this._invertedIndicesMap = s),
this._dimOmitted)
) {
var p = (this._dimIdxToName = q())
A(o, function (g) {
p.set(a[g].storeDimIndex, g)
})
}
}
return (
(r.prototype.getDimension = function (t) {
var e = this._recognizeDimIndex(t)
if (e == null) return t
if (((e = t), !this._dimOmitted)) return this.dimensions[e]
var n = this._dimIdxToName.get(e)
if (n != null) return n
var i = this._schema.getSourceDimension(e)
if (i) return i.name
}),
(r.prototype.getDimensionIndex = function (t) {
var e = this._recognizeDimIndex(t)
if (e != null) return e
if (t == null) return -1
var n = this._getDimInfo(t)
return n
? n.storeDimIndex
: this._dimOmitted
? this._schema.getSourceDimensionIndex(t)
: -1
}),
(r.prototype._recognizeDimIndex = function (t) {
if (
dt(t) ||
(t != null &&
!isNaN(t) &&
!this._getDimInfo(t) &&
(!this._dimOmitted || this._schema.getSourceDimensionIndex(t) < 0))
)
return +t
}),
(r.prototype._getStoreDimIndex = function (t) {
var e = this.getDimensionIndex(t)
return e
}),
(r.prototype.getDimensionInfo = function (t) {
return this._getDimInfo(this.getDimension(t))
}),
(r.prototype._initGetDimensionInfo = function (t) {
var e = this._dimInfos
this._getDimInfo = t
? function (n) {
return e.hasOwnProperty(n) ? e[n] : void 0
}
: function (n) {
return e[n]
}
}),
(r.prototype.getDimensionsOnCoord = function () {
return this._dimSummary.dataDimsOnCoord.slice()
}),
(r.prototype.mapDimension = function (t, e) {
var n = this._dimSummary
if (e == null) return n.encodeFirstDimNotExtra[t]
var i = n.encode[t]
return i ? i[e] : null
}),
(r.prototype.mapDimensionsAll = function (t) {
var e = this._dimSummary,
n = e.encode[t]
return (n || []).slice()
}),
(r.prototype.getStore = function () {
return this._store
}),
(r.prototype.initData = function (t, e, n) {
var i = this,
a
if ((t instanceof zf && (a = t), !a)) {
var o = this.dimensions,
s = Rf(t) || Zt(t) ? new Vg(t, o.length) : t
a = new zf()
var l = Br(o, function (u) {
return { type: i._dimInfos[u].type, property: u }
})
a.initData(s, l, n)
}
;(this._store = a),
(this._nameList = (e || []).slice()),
(this._idList = []),
(this._nameRepeatCount = {}),
this._doInit(0, a.count()),
(this._dimSummary = l2(this, this._schema)),
(this.userOutput = this._dimSummary.userOutput)
}),
(r.prototype.appendData = function (t) {
var e = this._store.appendData(t)
this._doInit(e[0], e[1])
}),
(r.prototype.appendValues = function (t, e) {
var n = this._store.appendValues(t, e.length),
i = n.start,
a = n.end,
o = this._shouldMakeIdFromName()
if ((this._updateOrdinalMeta(), e))
for (var s = i; s < a; s++) {
var l = s - i
;(this._nameList[s] = e[l]), o && gh(this, s)
}
}),
(r.prototype._updateOrdinalMeta = function () {
for (
var t = this._store, e = this.dimensions, n = 0;
n < e.length;
n++
) {
var i = this._dimInfos[e[n]]
i.ordinalMeta && t.collectOrdinalMeta(i.storeDimIndex, i.ordinalMeta)
}
}),
(r.prototype._shouldMakeIdFromName = function () {
var t = this._store.getProvider()
return (
this._idDimIdx == null &&
t.getSource().sourceFormat !== Pr &&
!t.fillStorage
)
}),
(r.prototype._doInit = function (t, e) {
if (!(t >= e)) {
var n = this._store,
i = n.getProvider()
this._updateOrdinalMeta()
var a = this._nameList,
o = this._idList,
s = i.getSource().sourceFormat,
l = s === ye
if (l && !i.pure)
for (var u = [], f = t; f < e; f++) {
var h = i.getItem(f, u)
if (
(!this.hasItemOption && nb(h) && (this.hasItemOption = !0), h)
) {
var c = h.name
a[f] == null && c != null && (a[f] = We(c, null))
var v = h.id
o[f] == null && v != null && (o[f] = We(v, null))
}
}
if (this._shouldMakeIdFromName())
for (var f = t; f < e; f++) gh(this, f)
P0(this)
}
}),
(r.prototype.getApproximateExtent = function (t) {
return (
this._approximateExtent[t] ||
this._store.getDataExtent(this._getStoreDimIndex(t))
)
}),
(r.prototype.setApproximateExtent = function (t, e) {
;(e = this.getDimension(e)), (this._approximateExtent[e] = t.slice())
}),
(r.prototype.getCalculationInfo = function (t) {
return this._calculationInfo[t]
}),
(r.prototype.setCalculationInfo = function (t, e) {
Na(t) ? N(this._calculationInfo, t) : (this._calculationInfo[t] = e)
}),
(r.prototype.getName = function (t) {
var e = this.getRawIndex(t),
n = this._nameList[e]
return (
n == null &&
this._nameDimIdx != null &&
(n = Fa(this, this._nameDimIdx, e)),
n == null && (n = ''),
n
)
}),
(r.prototype._getCategory = function (t, e) {
var n = this._store.get(t, e),
i = this._store.getOrdinalMeta(t)
return i ? i.categories[n] : n
}),
(r.prototype.getId = function (t) {
return Ks(this, this.getRawIndex(t))
}),
(r.prototype.count = function () {
return this._store.count()
}),
(r.prototype.get = function (t, e) {
var n = this._store,
i = this._dimInfos[t]
if (i) return n.get(i.storeDimIndex, e)
}),
(r.prototype.getByRawIndex = function (t, e) {
var n = this._store,
i = this._dimInfos[t]
if (i) return n.getByRawIndex(i.storeDimIndex, e)
}),
(r.prototype.getIndices = function () {
return this._store.getIndices()
}),
(r.prototype.getDataExtent = function (t) {
return this._store.getDataExtent(this._getStoreDimIndex(t))
}),
(r.prototype.getSum = function (t) {
return this._store.getSum(this._getStoreDimIndex(t))
}),
(r.prototype.getMedian = function (t) {
return this._store.getMedian(this._getStoreDimIndex(t))
}),
(r.prototype.getValues = function (t, e) {
var n = this,
i = this._store
return z(t)
? i.getValues(
Br(t, function (a) {
return n._getStoreDimIndex(a)
}),
e
)
: i.getValues(t)
}),
(r.prototype.hasValue = function (t) {
for (
var e = this._dimSummary.dataDimIndicesOnCoord, n = 0, i = e.length;
n < i;
n++
)
if (isNaN(this._store.get(e[n], t))) return !1
return !0
}),
(r.prototype.indexOfName = function (t) {
for (var e = 0, n = this._store.count(); e < n; e++)
if (this.getName(e) === t) return e
return -1
}),
(r.prototype.getRawIndex = function (t) {
return this._store.getRawIndex(t)
}),
(r.prototype.indexOfRawIndex = function (t) {
return this._store.indexOfRawIndex(t)
}),
(r.prototype.rawIndexOf = function (t, e) {
var n = t && this._invertedIndicesMap[t],
i = n[e]
return i == null || isNaN(i) ? L0 : i
}),
(r.prototype.indicesOfNearest = function (t, e, n) {
return this._store.indicesOfNearest(this._getStoreDimIndex(t), e, n)
}),
(r.prototype.each = function (t, e, n) {
Q(t) && ((n = e), (e = t), (t = []))
var i = n || this,
a = Br(za(t), this._getStoreDimIndex, this)
this._store.each(a, i ? X(e, i) : e)
}),
(r.prototype.filterSelf = function (t, e, n) {
Q(t) && ((n = e), (e = t), (t = []))
var i = n || this,
a = Br(za(t), this._getStoreDimIndex, this)
return (this._store = this._store.filter(a, i ? X(e, i) : e)), this
}),
(r.prototype.selectRange = function (t) {
var e = this,
n = {},
i = xt(t)
return (
A(i, function (a) {
var o = e._getStoreDimIndex(a)
n[o] = t[a]
}),
(this._store = this._store.selectRange(n)),
this
)
}),
(r.prototype.mapArray = function (t, e, n) {
Q(t) && ((n = e), (e = t), (t = [])), (n = n || this)
var i = []
return (
this.each(
t,
function () {
i.push(e && e.apply(this, arguments))
},
n
),
i
)
}),
(r.prototype.map = function (t, e, n, i) {
var a = n || i || this,
o = Br(za(t), this._getStoreDimIndex, this),
s = Qs(this)
return (s._store = this._store.map(o, a ? X(e, a) : e)), s
}),
(r.prototype.modify = function (t, e, n, i) {
var a = n || i || this,
o = Br(za(t), this._getStoreDimIndex, this)
this._store.modify(o, a ? X(e, a) : e)
}),
(r.prototype.downSample = function (t, e, n, i) {
var a = Qs(this)
return (
(a._store = this._store.downSample(
this._getStoreDimIndex(t),
e,
n,
i
)),
a
)
}),
(r.prototype.lttbDownSample = function (t, e) {
var n = Qs(this)
return (
(n._store = this._store.lttbDownSample(this._getStoreDimIndex(t), e)),
n
)
}),
(r.prototype.getRawDataItem = function (t) {
return this._store.getRawDataItem(t)
}),
(r.prototype.getItemModel = function (t) {
var e = this.hostModel,
n = this.getRawDataItem(t)
return new Nt(n, e, e && e.ecModel)
}),
(r.prototype.diff = function (t) {
var e = this
return new Ba(
t ? t.getStore().getIndices() : [],
this.getStore().getIndices(),
function (n) {
return Ks(t, n)
},
function (n) {
return Ks(e, n)
}
)
}),
(r.prototype.getVisual = function (t) {
var e = this._visual
return e && e[t]
}),
(r.prototype.setVisual = function (t, e) {
;(this._visual = this._visual || {}),
Na(t) ? N(this._visual, t) : (this._visual[t] = e)
}),
(r.prototype.getItemVisual = function (t, e) {
var n = this._itemVisuals[t],
i = n && n[e]
return i == null ? this.getVisual(e) : i
}),
(r.prototype.hasItemVisual = function () {
return this._itemVisuals.length > 0
}),
(r.prototype.ensureUniqueItemVisual = function (t, e) {
var n = this._itemVisuals,
i = n[t]
i || (i = n[t] = {})
var a = i[e]
return (
a == null &&
((a = this.getVisual(e)),
z(a) ? (a = a.slice()) : Na(a) && (a = N({}, a)),
(i[e] = a)),
a
)
}),
(r.prototype.setItemVisual = function (t, e, n) {
var i = this._itemVisuals[t] || {}
;(this._itemVisuals[t] = i), Na(e) ? N(i, e) : (i[e] = n)
}),
(r.prototype.clearAllVisual = function () {
;(this._visual = {}), (this._itemVisuals = [])
}),
(r.prototype.setLayout = function (t, e) {
Na(t) ? N(this._layout, t) : (this._layout[t] = e)
}),
(r.prototype.getLayout = function (t) {
return this._layout[t]
}),
(r.prototype.getItemLayout = function (t) {
return this._itemLayouts[t]
}),
(r.prototype.setItemLayout = function (t, e, n) {
this._itemLayouts[t] = n ? N(this._itemLayouts[t] || {}, e) : e
}),
(r.prototype.clearItemLayouts = function () {
this._itemLayouts.length = 0
}),
(r.prototype.setItemGraphicEl = function (t, e) {
var n = this.hostModel && this.hostModel.seriesIndex
_T(n, this.dataType, t, e), (this._graphicEls[t] = e)
}),
(r.prototype.getItemGraphicEl = function (t) {
return this._graphicEls[t]
}),
(r.prototype.eachItemGraphicEl = function (t, e) {
A(this._graphicEls, function (n, i) {
n && t && t.call(e, n, i)
})
}),
(r.prototype.cloneShallow = function (t) {
return (
t ||
(t = new r(
this._schema
? this._schema
: Br(this.dimensions, this._getDimInfo, this),
this.hostModel
)),
ph(t, this),
(t._store = this._store),
t
)
}),
(r.prototype.wrapMethod = function (t, e) {
var n = this[t]
!Q(n) ||
((this.__wrappedMethods = this.__wrappedMethods || []),
this.__wrappedMethods.push(t),
(this[t] = function () {
var i = n.apply(this, arguments)
return e.apply(this, [i].concat(El(arguments)))
}))
}),
(r.internalField = (function () {
;(P0 = function (t) {
var e = t._invertedIndicesMap
A(e, function (n, i) {
var a = t._dimInfos[i],
o = a.ordinalMeta,
s = t._store
if (o) {
n = e[i] = new d2(o.categories.length)
for (var l = 0; l < n.length; l++) n[l] = L0
for (var l = 0; l < s.count(); l++)
n[s.get(a.storeDimIndex, l)] = l
}
})
}),
(Fa = function (t, e, n) {
return We(t._getCategory(e, n), null)
}),
(Ks = function (t, e) {
var n = t._idList[e]
return (
n == null && t._idDimIdx != null && (n = Fa(t, t._idDimIdx, e)),
n == null && (n = p2 + e),
n
)
}),
(za = function (t) {
return z(t) || (t = t != null ? [t] : []), t
}),
(Qs = function (t) {
var e = new r(
t._schema ? t._schema : Br(t.dimensions, t._getDimInfo, t),
t.hostModel
)
return ph(e, t), e
}),
(ph = function (t, e) {
A(g2.concat(e.__wrappedMethods || []), function (n) {
e.hasOwnProperty(n) && (t[n] = e[n])
}),
(t.__wrappedMethods = e.__wrappedMethods),
A(m2, function (n) {
t[n] = tt(e[n])
}),
(t._calculationInfo = N({}, e._calculationInfo))
}),
(gh = function (t, e) {
var n = t._nameList,
i = t._idList,
a = t._nameDimIdx,
o = t._idDimIdx,
s = n[e],
l = i[e]
if (
(s == null && a != null && (n[e] = s = Fa(t, a, e)),
l == null && o != null && (i[e] = l = Fa(t, o, e)),
l == null && s != null)
) {
var u = t._nameRepeatCount,
f = (u[s] = (u[s] || 0) + 1)
;(l = s), f > 1 && (l += '__ec__' + f), (i[e] = l)
}
})
})()),
r
)
})(),
R0 = y2
function E0(r, t) {
Rf(r) || (r = Of(r)), (t = t || {})
var e = t.coordDimensions || [],
n = t.dimensionsDefine || r.dimensionsDefine || [],
i = q(),
a = [],
o = S2(r, e, n, t.dimensionsCount),
s = t.canOmitUnusedDimensions && I0(o),
l = n === r.dimensionsDefine,
u = l ? D0(r) : M0(n),
f = t.encodeDefine
!f && t.encodeDefaulter && (f = t.encodeDefaulter(r, o))
for (var h = q(f), c = new Jg(o), v = 0; v < c.length; v++) c[v] = -1
function d(C) {
var M = c[C]
if (M < 0) {
var D = n[C],
I = Y(D) ? D : { name: D },
L = new qs(),
P = I.name
P != null && u.get(P) != null && (L.name = L.displayName = P),
I.type != null && (L.type = I.type),
I.displayName != null && (L.displayName = I.displayName)
var R = a.length
return (c[C] = R), (L.storeDimIndex = C), a.push(L), L
}
return a[M]
}
if (!s) for (var v = 0; v < o; v++) d(v)
h.each(function (C, M) {
var D = Mt(C).slice()
if (D.length === 1 && !W(D[0]) && D[0] < 0) {
h.set(M, !1)
return
}
var I = h.set(M, [])
A(D, function (L, P) {
var R = W(L) ? u.get(L) : L
R != null && R < o && ((I[P] = R), g(d(R), M, P))
})
})
var p = 0
A(e, function (C) {
var M, D, I, L
if (W(C)) (M = C), (L = {})
else {
;(L = C), (M = L.name)
var P = L.ordinalMeta
;(L.ordinalMeta = null),
(L = N({}, L)),
(L.ordinalMeta = P),
(D = L.dimsDef),
(I = L.otherDims),
(L.name = L.coordDim = L.coordDimIndex = L.dimsDef = L.otherDims = null)
}
var R = h.get(M)
if (R !== !1) {
if (((R = Mt(R)), !R.length))
for (var O = 0; O < ((D && D.length) || 1); O++) {
for (; p < o && d(p).coordDim != null; ) p++
p < o && R.push(p++)
}
A(R, function (U, k) {
var F = d(U)
if (
(l && L.type != null && (F.type = L.type),
g(j(F, L), M, k),
F.name == null && D)
) {
var H = D[k]
!Y(H) && (H = { name: H }),
(F.name = F.displayName = H.name),
(F.defaultTooltip = H.defaultTooltip)
}
I && j(F.otherDims, I)
})
}
})
function g(C, M, D) {
cg.get(M) != null
? (C.otherDims[M] = D)
: ((C.coordDim = M), (C.coordDimIndex = D), i.set(M, !0))
}
var m = t.generateCoord,
y = t.generateCoordCount,
_ = y != null
y = m ? y || 1 : 0
var S = m || 'value'
function w(C) {
C.name == null && (C.name = C.coordDim)
}
if (s)
A(a, function (C) {
w(C)
}),
a.sort(function (C, M) {
return C.storeDimIndex - M.storeDimIndex
})
else
for (var x = 0; x < o; x++) {
var b = d(x),
T = b.coordDim
T == null &&
((b.coordDim = x2(S, i, _)),
(b.coordDimIndex = 0),
(!m || y <= 0) && (b.isExtraCoord = !0),
y--),
w(b),
b.type == null &&
(gg(r, x) === Ft.Must ||
(b.isExtraCoord &&
(b.otherDims.itemName != null ||
b.otherDims.seriesName != null))) &&
(b.type = 'ordinal')
}
return (
_2(a),
new C0({
source: r,
dimensions: a,
fullDimensionCount: o,
dimensionOmitted: s
})
)
}
function _2(r) {
for (var t = q(), e = 0; e < r.length; e++) {
var n = r[e],
i = n.name,
a = t.get(i) || 0
a > 0 && (n.name = i + (a - 1)), a++, t.set(i, a)
}
}
function S2(r, t, e, n) {
var i = Math.max(r.dimensionsDetectedCount || 1, t.length, e.length, n || 0)
return (
A(t, function (a) {
var o
Y(a) && (o = a.dimsDef) && (i = Math.max(i, o.length))
}),
i
)
}
function x2(r, t, e) {
var n = t.data
if (e || n.hasOwnProperty(r)) {
for (var i = 0; n.hasOwnProperty(r + i); ) i++
r += i
}
return t.set(r, !0), r
}
var w2 = (function () {
function r(t) {
;(this.coordSysDims = []),
(this.axisMap = q()),
(this.categoryAxisMap = q()),
(this.coordSysName = t)
}
return r
})()
function b2(r) {
var t = r.get('coordinateSystem'),
e = new w2(t),
n = T2[t]
if (n) return n(r, e, e.axisMap, e.categoryAxisMap), e
}
var T2 = {
cartesian2d: function (r, t, e, n) {
var i = r.getReferringComponents('xAxis', Xt).models[0],
a = r.getReferringComponents('yAxis', Xt).models[0]
;(t.coordSysDims = ['x', 'y']),
e.set('x', i),
e.set('y', a),
_i(i) && (n.set('x', i), (t.firstCategoryDimIndex = 0)),
_i(a) &&
(n.set('y', a),
t.firstCategoryDimIndex == null && (t.firstCategoryDimIndex = 1))
},
singleAxis: function (r, t, e, n) {
var i = r.getReferringComponents('singleAxis', Xt).models[0]
;(t.coordSysDims = ['single']),
e.set('single', i),
_i(i) && (n.set('single', i), (t.firstCategoryDimIndex = 0))
},
polar: function (r, t, e, n) {
var i = r.getReferringComponents('polar', Xt).models[0],
a = i.findAxisModel('radiusAxis'),
o = i.findAxisModel('angleAxis')
;(t.coordSysDims = ['radius', 'angle']),
e.set('radius', a),
e.set('angle', o),
_i(a) && (n.set('radius', a), (t.firstCategoryDimIndex = 0)),
_i(o) &&
(n.set('angle', o),
t.firstCategoryDimIndex == null && (t.firstCategoryDimIndex = 1))
},
geo: function (r, t, e, n) {
t.coordSysDims = ['lng', 'lat']
},
parallel: function (r, t, e, n) {
var i = r.ecModel,
a = i.getComponent('parallel', r.get('parallelIndex')),
o = (t.coordSysDims = a.dimensions.slice())
A(a.parallelAxisIndex, function (s, l) {
var u = i.getComponent('parallelAxis', s),
f = o[l]
e.set(f, u),
_i(u) &&
(n.set(f, u),
t.firstCategoryDimIndex == null && (t.firstCategoryDimIndex = l))
})
}
}
function _i(r) {
return r.get('type') === 'category'
}
function C2(r, t, e) {
e = e || {}
var n = e.byIndex,
i = e.stackedCoordDimension,
a,
o,
s
A2(t) ? (a = t) : ((o = t.schema), (a = o.dimensions), (s = t.store))
var l = !!(r && r.get('stack')),
u,
f,
h,
c
if (
(A(a, function (y, _) {
W(y) && (a[_] = y = { name: y }),
l &&
!y.isExtraCoord &&
(!n && !u && y.ordinalMeta && (u = y),
!f &&
y.type !== 'ordinal' &&
y.type !== 'time' &&
(!i || i === y.coordDim) &&
(f = y))
}),
f && !n && !u && (n = !0),
f)
) {
;(h = '__\0ecstackresult_' + r.id),
(c = '__\0ecstackedover_' + r.id),
u && (u.createInvertedIndices = !0)
var v = f.coordDim,
d = f.type,
p = 0
A(a, function (y) {
y.coordDim === v && p++
})
var g = {
name: h,
coordDim: v,
coordDimIndex: p,
type: d,
isExtraCoord: !0,
isCalculationCoord: !0,
storeDimIndex: a.length
},
m = {
name: c,
coordDim: c,
coordDimIndex: p + 1,
type: d,
isExtraCoord: !0,
isCalculationCoord: !0,
storeDimIndex: a.length + 1
}
o
? (s &&
((g.storeDimIndex = s.ensureCalculationDimension(c, d)),
(m.storeDimIndex = s.ensureCalculationDimension(h, d))),
o.appendCalculationDimension(g),
o.appendCalculationDimension(m))
: (a.push(g), a.push(m))
}
return {
stackedDimension: f && f.name,
stackedByDimension: u && u.name,
isStackedByIndex: n,
stackedOverDimension: c,
stackResultDimension: h
}
}
function A2(r) {
return !A0(r.schema)
}
function Si(r, t) {
return !!t && t === r.getCalculationInfo('stackedDimension')
}
function M2(r, t) {
return Si(r, t) ? r.getCalculationInfo('stackResultDimension') : t
}
function D2(r, t) {
var e = r.get('coordinateSystem'),
n = If.get(e),
i
return (
t &&
t.coordSysDims &&
(i = G(t.coordSysDims, function (a) {
var o = { name: a },
s = t.axisMap.get(a)
if (s) {
var l = s.get('type')
o.type = u2(l)
}
return o
})),
i ||
(i = (n &&
(n.getDimensionsInfo
? n.getDimensionsInfo()
: n.dimensions.slice())) || ['x', 'y']),
i
)
}
function I2(r, t, e) {
var n, i
return (
e &&
A(r, function (a, o) {
var s = a.coordDim,
l = e.categoryAxisMap.get(s)
l &&
(n == null && (n = o),
(a.ordinalMeta = l.getOrdinalMeta()),
t && (a.createInvertedIndices = !0)),
a.otherDims.itemName != null && (i = !0)
}),
!i && n != null && (r[n].otherDims.itemName = 0),
n
)
}
function mh(r, t, e) {
e = e || {}
var n = t.getSourceManager(),
i,
a = !1
r
? ((a = !0), (i = Of(r)))
: ((i = n.getSource()), (a = i.sourceFormat === ye))
var o = b2(t),
s = D2(t, o),
l = e.useEncodeDefaulter,
u = Q(l) ? l : l ? lt(cA, s, t) : null,
f = {
coordDimensions: s,
generateCoord: e.generateCoord,
encodeDefine: t.getEncode(),
encodeDefaulter: u,
canOmitUnusedDimensions: !a
},
h = E0(i, f),
c = I2(h.dimensions, e.createInvertedIndices, o),
v = a ? null : n.getSharedDataStore(h),
d = C2(t, { schema: h, store: v }),
p = new R0(h, t)
p.setCalculationInfo(d)
var g =
c != null && L2(i)
? function (m, y, _, S) {
return S === c ? _ : this.defaultDimValueGetter(m, y, _, S)
}
: null
return (p.hasItemOption = !1), p.initData(a ? i : v, null, g), p
}
function L2(r) {
if (r.sourceFormat === ye) {
var t = P2(r.data || [])
return !z(qi(t))
}
}
function P2(r) {
for (var t = 0; t < r.length && r[t] == null; ) t++
return r[t]
}
var O0 = (function () {
function r(t) {
;(this._setting = t || {}), (this._extent = [1 / 0, -1 / 0])
}
return (
(r.prototype.getSetting = function (t) {
return this._setting[t]
}),
(r.prototype.unionExtent = function (t) {
var e = this._extent
t[0] < e[0] && (e[0] = t[0]), t[1] > e[1] && (e[1] = t[1])
}),
(r.prototype.unionExtentFromData = function (t, e) {
this.unionExtent(t.getApproximateExtent(e))
}),
(r.prototype.getExtent = function () {
return this._extent.slice()
}),
(r.prototype.setExtent = function (t, e) {
var n = this._extent
isNaN(t) || (n[0] = t), isNaN(e) || (n[1] = e)
}),
(r.prototype.isInExtentRange = function (t) {
return this._extent[0] <= t && this._extent[1] >= t
}),
(r.prototype.isBlank = function () {
return this._isBlank
}),
(r.prototype.setBlank = function (t) {
this._isBlank = t
}),
r
)
})()
No(O0)
var pr = O0,
R2 = 0,
E2 = (function () {
function r(t) {
;(this.categories = t.categories || []),
(this._needCollect = t.needCollect),
(this._deduplication = t.deduplication),
(this.uid = ++R2)
}
return (
(r.createByAxisModel = function (t) {
var e = t.option,
n = e.data,
i = n && G(n, O2)
return new r({
categories: i,
needCollect: !i,
deduplication: e.dedplication !== !1
})
}),
(r.prototype.getOrdinal = function (t) {
return this._getOrCreateMap().get(t)
}),
(r.prototype.parseAndCollect = function (t) {
var e,
n = this._needCollect
if (!W(t) && !n) return t
if (n && !this._deduplication)
return (e = this.categories.length), (this.categories[e] = t), e
var i = this._getOrCreateMap()
return (
(e = i.get(t)),
e == null &&
(n
? ((e = this.categories.length),
(this.categories[e] = t),
i.set(t, e))
: (e = NaN)),
e
)
}),
(r.prototype._getOrCreateMap = function () {
return this._map || (this._map = q(this.categories))
}),
r
)
})()
function O2(r) {
return Y(r) && r.value != null ? r.value : r + ''
}
var yh = E2
function _h(r) {
return r.type === 'interval' || r.type === 'log'
}
function k2(r, t, e, n) {
var i = {},
a = r[1] - r[0],
o = (i.interval = qc(a / t, !0))
e != null && o < e && (o = i.interval = e),
n != null && o > n && (o = i.interval = n)
var s = (i.intervalPrecision = k0(o)),
l = (i.niceTickExtent = [
Pt(Math.ceil(r[0] / o) * o, s),
Pt(Math.floor(r[1] / o) * o, s)
])
return B2(l, r), i
}
function Sh(r) {
var t = Math.pow(10, Tu(r)),
e = r / t
return (
e ? (e === 2 ? (e = 3) : e === 3 ? (e = 5) : (e *= 2)) : (e = 1), Pt(e * t)
)
}
function k0(r) {
return or(r) + 2
}
function B0(r, t, e) {
r[t] = Math.max(Math.min(r[t], e[1]), e[0])
}
function B2(r, t) {
!isFinite(r[0]) && (r[0] = t[0]),
!isFinite(r[1]) && (r[1] = t[1]),
B0(r, 0, t),
B0(r, 1, t),
r[0] > r[1] && (r[0] = r[1])
}
function Js(r, t) {
return r >= t[0] && r <= t[1]
}
function js(r, t) {
return t[1] === t[0] ? 0.5 : (r - t[0]) / (t[1] - t[0])
}
function tl(r, t) {
return r * (t[1] - t[0]) + t[0]
}
var N0 = (function (r) {
B(t, r)
function t(e) {
var n = r.call(this, e) || this
n.type = 'ordinal'
var i = n.getSetting('ordinalMeta')
return (
i || (i = new yh({})),
z(i) &&
(i = new yh({
categories: G(i, function (a) {
return Y(a) ? a.value : a
})
})),
(n._ordinalMeta = i),
(n._extent = n.getSetting('extent') || [0, i.categories.length - 1]),
n
)
}
return (
(t.prototype.parse = function (e) {
return e == null
? NaN
: W(e)
? this._ordinalMeta.getOrdinal(e)
: Math.round(e)
}),
(t.prototype.contain = function (e) {
return (
(e = this.parse(e)),
Js(e, this._extent) && this._ordinalMeta.categories[e] != null
)
}),
(t.prototype.normalize = function (e) {
return (e = this._getTickNumber(this.parse(e))), js(e, this._extent)
}),
(t.prototype.scale = function (e) {
return (e = Math.round(tl(e, this._extent))), this.getRawOrdinalNumber(e)
}),
(t.prototype.getTicks = function () {
for (var e = [], n = this._extent, i = n[0]; i <= n[1]; )
e.push({ value: i }), i++
return e
}),
(t.prototype.getMinorTicks = function (e) {}),
(t.prototype.setSortInfo = function (e) {
if (e == null) {
this._ordinalNumbersByTick = this._ticksByOrdinalNumber = null
return
}
for (
var n = e.ordinalNumbers,
i = (this._ordinalNumbersByTick = []),
a = (this._ticksByOrdinalNumber = []),
o = 0,
s = this._ordinalMeta.categories.length,
l = Math.min(s, n.length);
o < l;
++o
) {
var u = n[o]
;(i[o] = u), (a[u] = o)
}
for (var f = 0; o < s; ++o) {
for (; a[f] != null; ) f++
i.push(f), (a[f] = o)
}
}),
(t.prototype._getTickNumber = function (e) {
var n = this._ticksByOrdinalNumber
return n && e >= 0 && e < n.length ? n[e] : e
}),
(t.prototype.getRawOrdinalNumber = function (e) {
var n = this._ordinalNumbersByTick
return n && e >= 0 && e < n.length ? n[e] : e
}),
(t.prototype.getLabel = function (e) {
if (!this.isBlank()) {
var n = this.getRawOrdinalNumber(e.value),
i = this._ordinalMeta.categories[n]
return i == null ? '' : i + ''
}
}),
(t.prototype.count = function () {
return this._extent[1] - this._extent[0] + 1
}),
(t.prototype.unionExtentFromData = function (e, n) {
this.unionExtent(e.getApproximateExtent(n))
}),
(t.prototype.isInExtentRange = function (e) {
return (
(e = this._getTickNumber(e)),
this._extent[0] <= e && this._extent[1] >= e
)
}),
(t.prototype.getOrdinalMeta = function () {
return this._ordinalMeta
}),
(t.prototype.calcNiceTicks = function () {}),
(t.prototype.calcNiceExtent = function () {}),
(t.type = 'ordinal'),
t
)
})(pr)
pr.registerClass(N0)
var F0 = N0,
Cn = Pt,
z0 = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (
(e.type = 'interval'), (e._interval = 0), (e._intervalPrecision = 2), e
)
}
return (
(t.prototype.parse = function (e) {
return e
}),
(t.prototype.contain = function (e) {
return Js(e, this._extent)
}),
(t.prototype.normalize = function (e) {
return js(e, this._extent)
}),
(t.prototype.scale = function (e) {
return tl(e, this._extent)
}),
(t.prototype.setExtent = function (e, n) {
var i = this._extent
isNaN(e) || (i[0] = parseFloat(e)), isNaN(n) || (i[1] = parseFloat(n))
}),
(t.prototype.unionExtent = function (e) {
var n = this._extent
e[0] < n[0] && (n[0] = e[0]),
e[1] > n[1] && (n[1] = e[1]),
this.setExtent(n[0], n[1])
}),
(t.prototype.getInterval = function () {
return this._interval
}),
(t.prototype.setInterval = function (e) {
;(this._interval = e),
(this._niceExtent = this._extent.slice()),
(this._intervalPrecision = k0(e))
}),
(t.prototype.getTicks = function (e) {
var n = this._interval,
i = this._extent,
a = this._niceExtent,
o = this._intervalPrecision,
s = []
if (!n) return s
var l = 1e4
i[0] < a[0] &&
(e ? s.push({ value: Cn(a[0] - n, o) }) : s.push({ value: i[0] }))
for (
var u = a[0];
u <= a[1] &&
(s.push({ value: u }),
(u = Cn(u + n, o)),
u !== s[s.length - 1].value);
)
if (s.length > l) return []
var f = s.length ? s[s.length - 1].value : a[1]
return (
i[1] > f &&
(e ? s.push({ value: Cn(f + n, o) }) : s.push({ value: i[1] })),
s
)
}),
(t.prototype.getMinorTicks = function (e) {
for (
var n = this.getTicks(!0), i = [], a = this.getExtent(), o = 1;
o < n.length;
o++
) {
for (
var s = n[o],
l = n[o - 1],
u = 0,
f = [],
h = s.value - l.value,
c = h / e;
u < e - 1;
) {
var v = Cn(l.value + (u + 1) * c)
v > a[0] && v < a[1] && f.push(v), u++
}
i.push(f)
}
return i
}),
(t.prototype.getLabel = function (e, n) {
if (e == null) return ''
var i = n && n.precision
i == null
? (i = or(e.value) || 0)
: i === 'auto' && (i = this._intervalPrecision)
var a = Cn(e.value, i, !0)
return sg(a)
}),
(t.prototype.calcNiceTicks = function (e, n, i) {
e = e || 5
var a = this._extent,
o = a[1] - a[0]
if (!!isFinite(o)) {
o < 0 && ((o = -o), a.reverse())
var s = k2(a, e, n, i)
;(this._intervalPrecision = s.intervalPrecision),
(this._interval = s.interval),
(this._niceExtent = s.niceTickExtent)
}
}),
(t.prototype.calcNiceExtent = function (e) {
var n = this._extent
if (n[0] === n[1])
if (n[0] !== 0) {
var i = n[0]
e.fixMax || (n[1] += i / 2), (n[0] -= i / 2)
} else n[1] = 1
var a = n[1] - n[0]
isFinite(a) || ((n[0] = 0), (n[1] = 1)),
this.calcNiceTicks(e.splitNumber, e.minInterval, e.maxInterval)
var o = this._interval
e.fixMin || (n[0] = Cn(Math.floor(n[0] / o) * o)),
e.fixMax || (n[1] = Cn(Math.ceil(n[1] / o) * o))
}),
(t.prototype.setNiceExtent = function (e, n) {
this._niceExtent = [e, n]
}),
(t.type = 'interval'),
t
)
})(pr)
pr.registerClass(z0)
var Va = z0,
V0 = typeof Float32Array != 'undefined',
N2 = V0 ? Float32Array : Array
function gr(r) {
return z(r) ? (V0 ? new Float32Array(r) : r) : new N2(r)
}
var F2 = '__ec_stack_'
function xh(r) {
return r.get('stack') || F2 + r.seriesIndex
}
function wh(r) {
return r.dim + r.index
}
function G0(r, t) {
var e = []
return (
t.eachSeriesByType(r, function (n) {
W0(n) && e.push(n)
}),
e
)
}
function z2(r) {
var t = {}
A(r, function (l) {
var u = l.coordinateSystem,
f = u.getBaseAxis()
if (!(f.type !== 'time' && f.type !== 'value'))
for (
var h = l.getData(),
c = f.dim + '_' + f.index,
v = h.getDimensionIndex(h.mapDimension(f.dim)),
d = h.getStore(),
p = 0,
g = d.count();
p < g;
++p
) {
var m = d.get(v, p)
t[c] ? t[c].push(m) : (t[c] = [m])
}
})
var e = {}
for (var n in t)
if (t.hasOwnProperty(n)) {
var i = t[n]
if (i) {
i.sort(function (l, u) {
return l - u
})
for (var a = null, o = 1; o < i.length; ++o) {
var s = i[o] - i[o - 1]
s > 0 && (a = a === null ? s : Math.min(a, s))
}
e[n] = a
}
}
return e
}
function H0(r) {
var t = z2(r),
e = []
return (
A(r, function (n) {
var i = n.coordinateSystem,
a = i.getBaseAxis(),
o = a.getExtent(),
s
if (a.type === 'category') s = a.getBandWidth()
else if (a.type === 'value' || a.type === 'time') {
var l = a.dim + '_' + a.index,
u = t[l],
f = Math.abs(o[1] - o[0]),
h = a.scale.getExtent(),
c = Math.abs(h[1] - h[0])
s = u ? (f / c) * u : f
} else {
var v = n.getData()
s = Math.abs(o[1] - o[0]) / v.count()
}
var d = yt(n.get('barWidth'), s),
p = yt(n.get('barMaxWidth'), s),
g = yt(n.get('barMinWidth') || (U0(n) ? 0.5 : 1), s),
m = n.get('barGap'),
y = n.get('barCategoryGap')
e.push({
bandWidth: s,
barWidth: d,
barMaxWidth: p,
barMinWidth: g,
barGap: m,
barCategoryGap: y,
axisKey: wh(a),
stackId: xh(n)
})
}),
V2(e)
)
}
function V2(r) {
var t = {}
A(r, function (n, i) {
var a = n.axisKey,
o = n.bandWidth,
s = t[a] || {
bandWidth: o,
remainedWidth: o,
autoWidthCount: 0,
categoryGap: null,
gap: '20%',
stacks: {}
},
l = s.stacks
t[a] = s
var u = n.stackId
l[u] || s.autoWidthCount++, (l[u] = l[u] || { width: 0, maxWidth: 0 })
var f = n.barWidth
f &&
!l[u].width &&
((l[u].width = f),
(f = Math.min(s.remainedWidth, f)),
(s.remainedWidth -= f))
var h = n.barMaxWidth
h && (l[u].maxWidth = h)
var c = n.barMinWidth
c && (l[u].minWidth = c)
var v = n.barGap
v != null && (s.gap = v)
var d = n.barCategoryGap
d != null && (s.categoryGap = d)
})
var e = {}
return (
A(t, function (n, i) {
e[i] = {}
var a = n.stacks,
o = n.bandWidth,
s = n.categoryGap
if (s == null) {
var l = xt(a).length
s = Math.max(35 - l * 4, 15) + '%'
}
var u = yt(s, o),
f = yt(n.gap, 1),
h = n.remainedWidth,
c = n.autoWidthCount,
v = (h - u) / (c + (c - 1) * f)
;(v = Math.max(v, 0)),
A(a, function (m) {
var y = m.maxWidth,
_ = m.minWidth
if (m.width) {
var S = m.width
y && (S = Math.min(S, y)),
_ && (S = Math.max(S, _)),
(m.width = S),
(h -= S + f * S),
c--
} else {
var S = v
y && y < S && (S = Math.min(y, h)),
_ && _ > S && (S = _),
S !== v && ((m.width = S), (h -= S + f * S), c--)
}
}),
(v = (h - u) / (c + (c - 1) * f)),
(v = Math.max(v, 0))
var d = 0,
p
A(a, function (m, y) {
m.width || (m.width = v), (p = m), (d += m.width * (1 + f))
}),
p && (d -= p.width * f)
var g = -d / 2
A(a, function (m, y) {
;(e[i][y] = e[i][y] || { bandWidth: o, offset: g, width: m.width }),
(g += m.width * (1 + f))
})
}),
e
)
}
function G2(r, t, e) {
if (r && t) {
var n = r[wh(t)]
return n != null && e != null ? n[xh(e)] : n
}
}
function H2(r, t) {
var e = G0(r, t),
n = H0(e)
A(e, function (i) {
var a = i.getData(),
o = i.coordinateSystem,
s = o.getBaseAxis(),
l = xh(i),
u = n[wh(s)][l],
f = u.offset,
h = u.width
a.setLayout({ bandWidth: u.bandWidth, offset: f, size: h })
})
}
function W2(r) {
return {
seriesType: r,
plan: Yf(),
reset: function (t) {
if (!!W0(t)) {
var e = t.getData(),
n = t.coordinateSystem,
i = n.getBaseAxis(),
a = n.getOtherAxis(i),
o = e.getDimensionIndex(e.mapDimension(a.dim)),
s = e.getDimensionIndex(e.mapDimension(i.dim)),
l = t.get('showBackground', !0),
u = e.mapDimension(a.dim),
f = e.getCalculationInfo('stackResultDimension'),
h = Si(e, u) && !!e.getCalculationInfo('stackedOnSeries'),
c = a.isHorizontal(),
v = U2(i, a),
d = U0(t),
p = t.get('barMinHeight') || 0,
g = f && e.getDimensionIndex(f),
m = e.getLayout('size'),
y = e.getLayout('offset')
return {
progress: function (_, S) {
for (
var w = _.count,
x = d && gr(w * 3),
b = d && l && gr(w * 3),
T = d && gr(w),
C = n.master.getRect(),
M = c ? C.width : C.height,
D,
I = S.getStore(),
L = 0;
(D = _.next()) != null;
) {
var P = I.get(h ? g : o, D),
R = I.get(s, D),
O = v,
U = void 0
h && (U = +P - I.get(o, D))
var k = void 0,
F = void 0,
H = void 0,
$ = void 0
if (c) {
var J = n.dataToPoint([P, R])
if (h) {
var et = n.dataToPoint([U, R])
O = et[0]
}
;(k = O),
(F = J[1] + y),
(H = J[0] - O),
($ = m),
Math.abs(H) < p && (H = (H < 0 ? -1 : 1) * p)
} else {
var J = n.dataToPoint([R, P])
if (h) {
var et = n.dataToPoint([R, U])
O = et[1]
}
;(k = J[0] + y),
(F = O),
(H = m),
($ = J[1] - O),
Math.abs($) < p && ($ = ($ <= 0 ? -1 : 1) * p)
}
d
? ((x[L] = k),
(x[L + 1] = F),
(x[L + 2] = c ? H : $),
b &&
((b[L] = c ? C.x : k),
(b[L + 1] = c ? F : C.y),
(b[L + 2] = M)),
(T[D] = D))
: S.setItemLayout(D, { x: k, y: F, width: H, height: $ }),
(L += 3)
}
d &&
S.setLayout({
largePoints: x,
largeDataIndices: T,
largeBackgroundPoints: b,
valueAxisHorizontal: c
})
}
}
}
}
}
}
function W0(r) {
return r.coordinateSystem && r.coordinateSystem.type === 'cartesian2d'
}
function U0(r) {
return r.pipelineContext && r.pipelineContext.large
}
function U2(r, t) {
return t.toGlobalCoord(t.dataToCoord(t.type === 'log' ? 1 : 0))
}
var Y2 = function (r, t, e, n) {
for (; e < n; ) {
var i = (e + n) >>> 1
r[i][1] < t ? (e = i + 1) : (n = i)
}
return e
},
Y0 = (function (r) {
B(t, r)
function t(e) {
var n = r.call(this, e) || this
return (n.type = 'time'), n
}
return (
(t.prototype.getLabel = function (e) {
var n = this.getSetting('useUTC')
return ms(
e.value,
Qp[tA(li(this._minLevelUnit))] || Qp.second,
n,
this.getSetting('locale')
)
}),
(t.prototype.getFormattedLabel = function (e, n, i) {
var a = this.getSetting('useUTC'),
o = this.getSetting('locale')
return eA(e, n, i, o, a)
}),
(t.prototype.getTicks = function () {
var e = this._interval,
n = this._extent,
i = []
if (!e) return i
i.push({ value: n[0], level: 0 })
var a = this.getSetting('useUTC'),
o = J2(this._minLevelUnit, this._approxInterval, a, n)
return (i = i.concat(o)), i.push({ value: n[1], level: 0 }), i
}),
(t.prototype.calcNiceExtent = function (e) {
var n = this._extent
if (
(n[0] === n[1] && ((n[0] -= ge), (n[1] += ge)),
n[1] === -1 / 0 && n[0] === 1 / 0)
) {
var i = new Date()
;(n[1] = +new Date(i.getFullYear(), i.getMonth(), i.getDate())),
(n[0] = n[1] - ge)
}
this.calcNiceTicks(e.splitNumber, e.minInterval, e.maxInterval)
}),
(t.prototype.calcNiceTicks = function (e, n, i) {
e = e || 10
var a = this._extent,
o = a[1] - a[0]
;(this._approxInterval = o / e),
n != null && this._approxInterval < n && (this._approxInterval = n),
i != null && this._approxInterval > i && (this._approxInterval = i)
var s = el.length,
l = Math.min(Y2(el, this._approxInterval, 0, s), s - 1)
;(this._interval = el[l][1]),
(this._minLevelUnit = el[Math.max(l - 1, 0)][0])
}),
(t.prototype.parse = function (e) {
return dt(e) ? e : +sr(e)
}),
(t.prototype.contain = function (e) {
return Js(this.parse(e), this._extent)
}),
(t.prototype.normalize = function (e) {
return js(this.parse(e), this._extent)
}),
(t.prototype.scale = function (e) {
return tl(e, this._extent)
}),
(t.type = 'time'),
t
)
})(Va),
el = [
['second', yf],
['minute', _f],
['hour', pa],
['quarter-day', pa * 6],
['half-day', pa * 12],
['day', ge * 1.2],
['half-week', ge * 3.5],
['week', ge * 7],
['month', ge * 31],
['quarter', ge * 95],
['half-year', Kp / 2],
['year', Kp]
]
function Z2(r, t, e, n) {
var i = sr(t),
a = sr(e),
o = function (d) {
return tg(i, d, n) === tg(a, d, n)
},
s = function () {
return o('year')
},
l = function () {
return s() && o('month')
},
u = function () {
return l() && o('day')
},
f = function () {
return u() && o('hour')
},
h = function () {
return f() && o('minute')
},
c = function () {
return h() && o('second')
},
v = function () {
return c() && o('millisecond')
}
switch (r) {
case 'year':
return s()
case 'month':
return l()
case 'day':
return u()
case 'hour':
return f()
case 'minute':
return h()
case 'second':
return c()
case 'millisecond':
return v()
}
}
function $2(r, t) {
return (r /= ge), r > 16 ? 16 : r > 7.5 ? 7 : r > 3.5 ? 4 : r > 1.5 ? 2 : 1
}
function X2(r) {
var t = 30 * ge
return (r /= t), r > 6 ? 6 : r > 3 ? 3 : r > 2 ? 2 : 1
}
function q2(r) {
return (r /= pa), r > 12 ? 12 : r > 6 ? 6 : r > 3.5 ? 4 : r > 2 ? 2 : 1
}
function Z0(r, t) {
return (
(r /= t ? _f : yf),
r > 30
? 30
: r > 20
? 20
: r > 15
? 15
: r > 10
? 10
: r > 5
? 5
: r > 2
? 2
: 1
)
}
function K2(r) {
return qc(r, !0)
}
function Q2(r, t, e) {
var n = new Date(r)
switch (li(t)) {
case 'year':
case 'month':
n[eg(e)](0)
case 'day':
n[rg(e)](1)
case 'hour':
n[ng(e)](0)
case 'minute':
n[ig(e)](0)
case 'second':
n[ag(e)](0), n[og(e)](0)
}
return n.getTime()
}
function J2(r, t, e, n) {
var i = 1e4,
a = Jp,
o = 0
function s(M, D, I, L, P, R, O) {
for (var U = new Date(D), k = D, F = U[L](); k < I && k <= n[1]; )
O.push({ value: k }), (F += M), U[P](F), (k = U.getTime())
O.push({ value: k, notAdd: !0 })
}
function l(M, D, I) {
var L = [],
P = !D.length
if (!Z2(li(M), n[0], n[1], e)) {
P && (D = [{ value: Q2(new Date(n[0]), M, e) }, { value: n[1] }])
for (var R = 0; R < D.length - 1; R++) {
var O = D[R].value,
U = D[R + 1].value
if (O !== U) {
var k = void 0,
F = void 0,
H = void 0,
$ = !1
switch (M) {
case 'year':
;(k = Math.max(1, Math.round(t / ge / 365))),
(F = xf(e)),
(H = rA(e))
break
case 'half-year':
case 'quarter':
case 'month':
;(k = X2(t)), (F = ui(e)), (H = eg(e))
break
case 'week':
case 'half-week':
case 'day':
;(k = $2(t)), (F = ys(e)), (H = rg(e)), ($ = !0)
break
case 'half-day':
case 'quarter-day':
case 'hour':
;(k = q2(t)), (F = ma(e)), (H = ng(e))
break
case 'minute':
;(k = Z0(t, !0)), (F = _s(e)), (H = ig(e))
break
case 'second':
;(k = Z0(t, !1)), (F = Ss(e)), (H = ag(e))
break
case 'millisecond':
;(k = K2(t)), (F = xs(e)), (H = og(e))
break
}
s(k, O, U, F, H, $, L),
M === 'year' &&
I.length > 1 &&
R === 0 &&
I.unshift({ value: I[0].value - k })
}
}
for (var R = 0; R < L.length; R++) I.push(L[R])
return L
}
}
for (var u = [], f = [], h = 0, c = 0, v = 0; v < a.length && o++ < i; ++v) {
var d = li(a[v])
if (!!jC(a[v])) {
l(a[v], u[u.length - 1] || [], f)
var p = a[v + 1] ? li(a[v + 1]) : null
if (d !== p) {
if (f.length) {
;(c = h),
f.sort(function (M, D) {
return M.value - D.value
})
for (var g = [], m = 0; m < f.length; ++m) {
var y = f[m].value
;(m === 0 || f[m - 1].value !== y) &&
(g.push(f[m]), y >= n[0] && y <= n[1] && h++)
}
var _ = (n[1] - n[0]) / t
if ((h > _ * 1.5 && c > _ / 1.5) || (u.push(g), h > _ || r === a[v]))
break
}
f = []
}
}
}
for (
var S = Lt(
G(u, function (M) {
return Lt(M, function (D) {
return D.value >= n[0] && D.value <= n[1] && !D.notAdd
})
}),
function (M) {
return M.length > 0
}
),
w = [],
x = S.length - 1,
v = 0;
v < S.length;
++v
)
for (var b = S[v], T = 0; T < b.length; ++T)
w.push({ value: b[T].value, level: x - v })
w.sort(function (M, D) {
return M.value - D.value
})
for (var C = [], v = 0; v < w.length; ++v)
(v === 0 || w[v].value !== w[v - 1].value) && C.push(w[v])
return C
}
pr.registerClass(Y0)
var j2 = Y0,
$0 = pr.prototype,
Ga = Va.prototype,
tI = Pt,
eI = Math.floor,
rI = Math.ceil,
rl = Math.pow,
be = Math.log,
bh = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (
(e.type = 'log'),
(e.base = 10),
(e._originalScale = new Va()),
(e._interval = 0),
e
)
}
return (
(t.prototype.getTicks = function (e) {
var n = this._originalScale,
i = this._extent,
a = n.getExtent(),
o = Ga.getTicks.call(this, e)
return G(
o,
function (s) {
var l = s.value,
u = Pt(rl(this.base, l))
return (
(u = l === i[0] && this._fixMin ? nl(u, a[0]) : u),
(u = l === i[1] && this._fixMax ? nl(u, a[1]) : u),
{ value: u }
)
},
this
)
}),
(t.prototype.setExtent = function (e, n) {
var i = this.base
;(e = be(e) / be(i)), (n = be(n) / be(i)), Ga.setExtent.call(this, e, n)
}),
(t.prototype.getExtent = function () {
var e = this.base,
n = $0.getExtent.call(this)
;(n[0] = rl(e, n[0])), (n[1] = rl(e, n[1]))
var i = this._originalScale,
a = i.getExtent()
return (
this._fixMin && (n[0] = nl(n[0], a[0])),
this._fixMax && (n[1] = nl(n[1], a[1])),
n
)
}),
(t.prototype.unionExtent = function (e) {
this._originalScale.unionExtent(e)
var n = this.base
;(e[0] = be(e[0]) / be(n)),
(e[1] = be(e[1]) / be(n)),
$0.unionExtent.call(this, e)
}),
(t.prototype.unionExtentFromData = function (e, n) {
this.unionExtent(e.getApproximateExtent(n))
}),
(t.prototype.calcNiceTicks = function (e) {
e = e || 10
var n = this._extent,
i = n[1] - n[0]
if (!(i === 1 / 0 || i <= 0)) {
var a = eb(i),
o = (e / i) * a
for (
o <= 0.5 && (a *= 10);
!isNaN(a) && Math.abs(a) < 1 && Math.abs(a) > 0;
)
a *= 10
var s = [Pt(rI(n[0] / a) * a), Pt(eI(n[1] / a) * a)]
;(this._interval = a), (this._niceExtent = s)
}
}),
(t.prototype.calcNiceExtent = function (e) {
Ga.calcNiceExtent.call(this, e),
(this._fixMin = e.fixMin),
(this._fixMax = e.fixMax)
}),
(t.prototype.parse = function (e) {
return e
}),
(t.prototype.contain = function (e) {
return (e = be(e) / be(this.base)), Js(e, this._extent)
}),
(t.prototype.normalize = function (e) {
return (e = be(e) / be(this.base)), js(e, this._extent)
}),
(t.prototype.scale = function (e) {
return (e = tl(e, this._extent)), rl(this.base, e)
}),
(t.type = 'log'),
t
)
})(pr),
X0 = bh.prototype
X0.getMinorTicks = Ga.getMinorTicks
X0.getLabel = Ga.getLabel
function nl(r, t) {
return tI(r, or(t))
}
pr.registerClass(bh)
var nI = bh,
iI = (function () {
function r(t, e, n) {
this._prepareParams(t, e, n)
}
return (
(r.prototype._prepareParams = function (t, e, n) {
n[1] < n[0] && (n = [NaN, NaN]),
(this._dataMin = n[0]),
(this._dataMax = n[1])
var i = (this._isOrdinal = t.type === 'ordinal')
this._needCrossZero =
t.type === 'interval' && e.getNeedCrossZero && e.getNeedCrossZero()
var a = (this._modelMinRaw = e.get('min', !0))
Q(a)
? (this._modelMinNum = il(t, a({ min: n[0], max: n[1] })))
: a !== 'dataMin' && (this._modelMinNum = il(t, a))
var o = (this._modelMaxRaw = e.get('max', !0))
if (
(Q(o)
? (this._modelMaxNum = il(t, o({ min: n[0], max: n[1] })))
: o !== 'dataMax' && (this._modelMaxNum = il(t, o)),
i)
)
this._axisDataLen = e.getCategories().length
else {
var s = e.get('boundaryGap'),
l = z(s) ? s : [s || 0, s || 0]
typeof l[0] == 'boolean' || typeof l[1] == 'boolean'
? (this._boundaryGapInner = [0, 0])
: (this._boundaryGapInner = [Cr(l[0], 1), Cr(l[1], 1)])
}
}),
(r.prototype.calculate = function () {
var t = this._isOrdinal,
e = this._dataMin,
n = this._dataMax,
i = this._axisDataLen,
a = this._boundaryGapInner,
o = t ? null : n - e || Math.abs(e),
s = this._modelMinRaw === 'dataMin' ? e : this._modelMinNum,
l = this._modelMaxRaw === 'dataMax' ? n : this._modelMaxNum,
u = s != null,
f = l != null
s == null && (s = t ? (i ? 0 : NaN) : e - a[0] * o),
l == null && (l = t ? (i ? i - 1 : NaN) : n + a[1] * o),
(s == null || !isFinite(s)) && (s = NaN),
(l == null || !isFinite(l)) && (l = NaN)
var h = ao(s) || ao(l) || (t && !i)
this._needCrossZero &&
(s > 0 && l > 0 && !u && (s = 0), s < 0 && l < 0 && !f && (l = 0))
var c = this._determinedMin,
v = this._determinedMax
return (
c != null && ((s = c), (u = !0)),
v != null && ((l = v), (f = !0)),
{ min: s, max: l, minFixed: u, maxFixed: f, isBlank: h }
)
}),
(r.prototype.modifyDataMinMax = function (t, e) {
this[oI[t]] = e
}),
(r.prototype.setDeterminedMinMax = function (t, e) {
var n = aI[t]
this[n] = e
}),
(r.prototype.freeze = function () {
this.frozen = !0
}),
r
)
})(),
aI = { min: '_determinedMin', max: '_determinedMax' },
oI = { min: '_dataMin', max: '_dataMax' }
function q0(r, t, e) {
var n = r.rawExtentInfo
return n || ((n = new iI(r, t, e)), (r.rawExtentInfo = n), n)
}
function il(r, t) {
return t == null ? null : ao(t) ? NaN : r.parse(t)
}
function K0(r, t) {
var e = r.type,
n = q0(r, t, r.getExtent()).calculate()
r.setBlank(n.isBlank)
var i = n.min,
a = n.max,
o = t.ecModel
if (o && e === 'time') {
var s = G0('bar', o),
l = !1
if (
(A(s, function (h) {
l = l || h.getBaseAxis() === t.axis
}),
l)
) {
var u = H0(s),
f = sI(i, a, t, u)
;(i = f.min), (a = f.max)
}
}
return { extent: [i, a], fixMin: n.minFixed, fixMax: n.maxFixed }
}
function sI(r, t, e, n) {
var i = e.axis.getExtent(),
a = i[1] - i[0],
o = G2(n, e.axis)
if (o === void 0) return { min: r, max: t }
var s = 1 / 0
A(o, function (v) {
s = Math.min(v.offset, s)
})
var l = -1 / 0
A(o, function (v) {
l = Math.max(v.offset + v.width, l)
}),
(s = Math.abs(s)),
(l = Math.abs(l))
var u = s + l,
f = t - r,
h = 1 - (s + l) / a,
c = f / h - f
return (t += c * (l / u)), (r -= c * (s / u)), { min: r, max: t }
}
function Q0(r, t) {
var e = t,
n = K0(r, e),
i = n.extent,
a = e.get('splitNumber')
r instanceof nI && (r.base = e.get('logBase'))
var o = r.type,
s = e.get('interval'),
l = o === 'interval' || o === 'time'
r.setExtent(i[0], i[1]),
r.calcNiceExtent({
splitNumber: a,
fixMin: n.fixMin,
fixMax: n.fixMax,
minInterval: l ? e.get('minInterval') : null,
maxInterval: l ? e.get('maxInterval') : null
}),
s != null && r.setInterval && r.setInterval(s)
}
function lI(r, t) {
if (((t = t || r.get('type')), t))
switch (t) {
case 'category':
return new F0({
ordinalMeta: r.getOrdinalMeta
? r.getOrdinalMeta()
: r.getCategories(),
extent: [1 / 0, -1 / 0]
})
case 'time':
return new j2({
locale: r.ecModel.getLocaleModel(),
useUTC: r.ecModel.get('useUTC')
})
default:
return new (pr.getClass(t) || Va)()
}
}
function uI(r) {
var t = r.scale.getExtent(),
e = t[0],
n = t[1]
return !((e > 0 && n > 0) || (e < 0 && n < 0))
}
function Ha(r) {
var t = r.getLabelModel().get('formatter'),
e = r.type === 'category' ? r.scale.getExtent()[0] : null
return r.scale.type === 'time'
? (function (n) {
return function (i, a) {
return r.scale.getFormattedLabel(i, a, n)
}
})(t)
: W(t)
? (function (n) {
return function (i) {
var a = r.scale.getLabel(i),
o = n.replace('{value}', a != null ? a : '')
return o
}
})(t)
: Q(t)
? (function (n) {
return function (i, a) {
return (
e != null && (a = i.value - e),
n(Th(r, i), a, i.level != null ? { level: i.level } : null)
)
}
})(t)
: function (n) {
return r.scale.getLabel(n)
}
}
function Th(r, t) {
return r.type === 'category' ? r.scale.getLabel(t) : t.value
}
function fI(r) {
var t = r.model,
e = r.scale
if (!(!t.get(['axisLabel', 'show']) || e.isBlank())) {
var n,
i,
a = e.getExtent()
e instanceof F0 ? (i = e.count()) : ((n = e.getTicks()), (i = n.length))
var o = r.getLabelModel(),
s = Ha(r),
l,
u = 1
i > 40 && (u = Math.ceil(i / 40))
for (var f = 0; f < i; f += u) {
var h = n ? n[f] : { value: a[0] + f },
c = s(h, f),
v = o.getTextRect(c),
d = hI(v, o.get('rotate') || 0)
l ? l.union(d) : (l = d)
}
return l
}
}
function hI(r, t) {
var e = (t * Math.PI) / 180,
n = r.width,
i = r.height,
a = n * Math.abs(Math.cos(e)) + Math.abs(i * Math.sin(e)),
o = n * Math.abs(Math.sin(e)) + Math.abs(i * Math.cos(e)),
s = new vt(r.x, r.y, a, o)
return s
}
function Ch(r) {
var t = r.get('interval')
return t == null ? 'auto' : t
}
function J0(r) {
return r.type === 'category' && Ch(r.getLabelModel()) === 0
}
function j0(r, t) {
var e = {}
return (
A(r.mapDimensionsAll(t), function (n) {
e[M2(r, n)] = !0
}),
xt(e)
)
}
function vI(r, t, e) {
t &&
A(j0(t, e), function (n) {
var i = t.getApproximateExtent(n)
i[0] < r[0] && (r[0] = i[0]), i[1] > r[1] && (r[1] = i[1])
})
}
var cI = (function () {
function r() {}
return (
(r.prototype.getNeedCrossZero = function () {
var t = this.option
return !t.scale
}),
(r.prototype.getCoordSysModel = function () {}),
r
)
})(),
ty = [],
dI = {
registerPreprocessor: S0,
registerProcessor: x0,
registerPostInit: t2,
registerPostUpdate: e2,
registerUpdateLifecycle: vh,
registerAction: Je,
registerCoordinateSystem: r2,
registerLayout: n2,
registerVisual: Tn,
registerTransform: a2,
registerLoading: b0,
registerMap: i2,
registerImpl: OD,
PRIORITY: XD,
ComponentModel: _t,
ComponentView: xe,
SeriesModel: Er,
ChartView: Qe,
registerComponentModel: function (r) {
_t.registerClass(r)
},
registerComponentView: function (r) {
xe.registerClass(r)
},
registerSeriesModel: function (r) {
Er.registerClass(r)
},
registerChartView: function (r) {
Qe.registerClass(r)
},
registerSubTypeDefaulter: function (r, t) {
_t.registerSubTypeDefaulter(r, t)
},
registerPainter: function (r, t) {
qw(r, t)
}
}
function Re(r) {
if (z(r)) {
A(r, function (t) {
Re(t)
})
return
}
ot(ty, r) >= 0 || (ty.push(r), Q(r) && (r = { install: r }), r.install(dI))
}
var Wa = wt()
function pI(r) {
return r.type === 'category' ? mI(r) : _I(r)
}
function gI(r, t) {
return r.type === 'category'
? yI(r, t)
: {
ticks: G(r.scale.getTicks(), function (e) {
return e.value
})
}
}
function mI(r) {
var t = r.getLabelModel(),
e = ey(r, t)
return !t.get('show') || r.scale.isBlank()
? { labels: [], labelCategoryInterval: e.labelCategoryInterval }
: e
}
function ey(r, t) {
var e = ry(r, 'labels'),
n = Ch(t),
i = ny(e, n)
if (i) return i
var a, o
return (
Q(n) ? (a = oy(r, n)) : ((o = n === 'auto' ? SI(r) : n), (a = ay(r, o))),
iy(e, n, { labels: a, labelCategoryInterval: o })
)
}
function yI(r, t) {
var e = ry(r, 'ticks'),
n = Ch(t),
i = ny(e, n)
if (i) return i
var a, o
if (((!t.get('show') || r.scale.isBlank()) && (a = []), Q(n)))
a = oy(r, n, !0)
else if (n === 'auto') {
var s = ey(r, r.getLabelModel())
;(o = s.labelCategoryInterval),
(a = G(s.labels, function (l) {
return l.tickValue
}))
} else (o = n), (a = ay(r, o, !0))
return iy(e, n, { ticks: a, tickCategoryInterval: o })
}
function _I(r) {
var t = r.scale.getTicks(),
e = Ha(r)
return {
labels: G(t, function (n, i) {
return {
level: n.level,
formattedLabel: e(n, i),
rawLabel: r.scale.getLabel(n),
tickValue: n.value
}
})
}
}
function ry(r, t) {
return Wa(r)[t] || (Wa(r)[t] = [])
}
function ny(r, t) {
for (var e = 0; e < r.length; e++) if (r[e].key === t) return r[e].value
}
function iy(r, t, e) {
return r.push({ key: t, value: e }), e
}
function SI(r) {
var t = Wa(r).autoInterval
return t != null ? t : (Wa(r).autoInterval = r.calculateCategoryInterval())
}
function xI(r) {
var t = wI(r),
e = Ha(r),
n = ((t.axisRotate - t.labelRotate) / 180) * Math.PI,
i = r.scale,
a = i.getExtent(),
o = i.count()
if (a[1] - a[0] < 1) return 0
var s = 1
o > 40 && (s = Math.max(1, Math.floor(o / 40)))
for (
var l = a[0],
u = r.dataToCoord(l + 1) - r.dataToCoord(l),
f = Math.abs(u * Math.cos(n)),
h = Math.abs(u * Math.sin(n)),
c = 0,
v = 0;
l <= a[1];
l += s
) {
var d = 0,
p = 0,
g = Eo(e({ value: l }), t.font, 'center', 'top')
;(d = g.width * 1.3),
(p = g.height * 1.3),
(c = Math.max(c, d, 7)),
(v = Math.max(v, p, 7))
}
var m = c / f,
y = v / h
isNaN(m) && (m = 1 / 0), isNaN(y) && (y = 1 / 0)
var _ = Math.max(0, Math.floor(Math.min(m, y))),
S = Wa(r.model),
w = r.getExtent(),
x = S.lastAutoInterval,
b = S.lastTickCount
return (
x != null &&
b != null &&
Math.abs(x - _) <= 1 &&
Math.abs(b - o) <= 1 &&
x > _ &&
S.axisExtent0 === w[0] &&
S.axisExtent1 === w[1]
? (_ = x)
: ((S.lastTickCount = o),
(S.lastAutoInterval = _),
(S.axisExtent0 = w[0]),
(S.axisExtent1 = w[1])),
_
)
}
function wI(r) {
var t = r.getLabelModel()
return {
axisRotate: r.getRotate
? r.getRotate()
: r.isHorizontal && !r.isHorizontal()
? 90
: 0,
labelRotate: t.get('rotate') || 0,
font: t.getFont()
}
}
function ay(r, t, e) {
var n = Ha(r),
i = r.scale,
a = i.getExtent(),
o = r.getLabelModel(),
s = [],
l = Math.max((t || 0) + 1, 1),
u = a[0],
f = i.count()
u !== 0 && l > 1 && f / l > 2 && (u = Math.round(Math.ceil(u / l) * l))
var h = J0(r),
c = o.get('showMinLabel') || h,
v = o.get('showMaxLabel') || h
c && u !== a[0] && p(a[0])
for (var d = u; d <= a[1]; d += l) p(d)
v && d - l !== a[1] && p(a[1])
function p(g) {
var m = { value: g }
s.push(
e ? g : { formattedLabel: n(m), rawLabel: i.getLabel(m), tickValue: g }
)
}
return s
}
function oy(r, t, e) {
var n = r.scale,
i = Ha(r),
a = []
return (
A(n.getTicks(), function (o) {
var s = n.getLabel(o),
l = o.value
t(o.value, s) &&
a.push(e ? l : { formattedLabel: i(o), rawLabel: s, tickValue: l })
}),
a
)
}
var sy = [0, 1],
bI = (function () {
function r(t, e, n) {
;(this.onBand = !1),
(this.inverse = !1),
(this.dim = t),
(this.scale = e),
(this._extent = n || [0, 0])
}
return (
(r.prototype.contain = function (t) {
var e = this._extent,
n = Math.min(e[0], e[1]),
i = Math.max(e[0], e[1])
return t >= n && t <= i
}),
(r.prototype.containData = function (t) {
return this.scale.contain(t)
}),
(r.prototype.getExtent = function () {
return this._extent.slice()
}),
(r.prototype.getPixelPrecision = function (t) {
return $c(t || this.scale.getExtent(), this._extent)
}),
(r.prototype.setExtent = function (t, e) {
var n = this._extent
;(n[0] = t), (n[1] = e)
}),
(r.prototype.dataToCoord = function (t, e) {
var n = this._extent,
i = this.scale
return (
(t = i.normalize(t)),
this.onBand &&
i.type === 'ordinal' &&
((n = n.slice()), ly(n, i.count())),
Bt(t, sy, n, e)
)
}),
(r.prototype.coordToData = function (t, e) {
var n = this._extent,
i = this.scale
this.onBand &&
i.type === 'ordinal' &&
((n = n.slice()), ly(n, i.count()))
var a = Bt(t, n, sy, e)
return this.scale.scale(a)
}),
(r.prototype.pointToData = function (t, e) {}),
(r.prototype.getTicksCoords = function (t) {
t = t || {}
var e = t.tickModel || this.getTickModel(),
n = gI(this, e),
i = n.ticks,
a = G(
i,
function (s) {
return {
coord: this.dataToCoord(
this.scale.type === 'ordinal'
? this.scale.getRawOrdinalNumber(s)
: s
),
tickValue: s
}
},
this
),
o = e.get('alignWithLabel')
return TI(this, a, o, t.clamp), a
}),
(r.prototype.getMinorTicksCoords = function () {
if (this.scale.type === 'ordinal') return []
var t = this.model.getModel('minorTick'),
e = t.get('splitNumber')
;(e > 0 && e < 100) || (e = 5)
var n = this.scale.getMinorTicks(e),
i = G(
n,
function (a) {
return G(
a,
function (o) {
return { coord: this.dataToCoord(o), tickValue: o }
},
this
)
},
this
)
return i
}),
(r.prototype.getViewLabels = function () {
return pI(this).labels
}),
(r.prototype.getLabelModel = function () {
return this.model.getModel('axisLabel')
}),
(r.prototype.getTickModel = function () {
return this.model.getModel('axisTick')
}),
(r.prototype.getBandWidth = function () {
var t = this._extent,
e = this.scale.getExtent(),
n = e[1] - e[0] + (this.onBand ? 1 : 0)
n === 0 && (n = 1)
var i = Math.abs(t[1] - t[0])
return Math.abs(i) / n
}),
(r.prototype.calculateCategoryInterval = function () {
return xI(this)
}),
r
)
})()
function ly(r, t) {
var e = r[1] - r[0],
n = t,
i = e / n / 2
;(r[0] += i), (r[1] -= i)
}
function TI(r, t, e, n) {
var i = t.length
if (!r.onBand || e || !i) return
var a = r.getExtent(),
o,
s
if (i === 1) (t[0].coord = a[0]), (o = t[1] = { coord: a[0] })
else {
var l = t[i - 1].tickValue - t[0].tickValue,
u = (t[i - 1].coord - t[0].coord) / l
A(t, function (v) {
v.coord -= u / 2
})
var f = r.scale.getExtent()
;(s = 1 + f[1] - t[i - 1].tickValue),
(o = { coord: t[i - 1].coord + u * s }),
t.push(o)
}
var h = a[0] > a[1]
c(t[0].coord, a[0]) && (n ? (t[0].coord = a[0]) : t.shift()),
n && c(a[0], t[0].coord) && t.unshift({ coord: a[0] }),
c(a[1], o.coord) && (n ? (o.coord = a[1]) : t.pop()),
n && c(o.coord, a[1]) && t.push({ coord: a[1] })
function c(v, d) {
return (v = Pt(v)), (d = Pt(d)), h ? v > d : v < d
}
}
var CI = bI,
Ua = Math.PI * 2,
An = ur.CMD,
AI = ['top', 'right', 'bottom', 'left']
function MI(r, t, e, n, i) {
var a = e.width,
o = e.height
switch (r) {
case 'top':
n.set(e.x + a / 2, e.y - t), i.set(0, -1)
break
case 'bottom':
n.set(e.x + a / 2, e.y + o + t), i.set(0, 1)
break
case 'left':
n.set(e.x - t, e.y + o / 2), i.set(-1, 0)
break
case 'right':
n.set(e.x + a + t, e.y + o / 2), i.set(1, 0)
break
}
}
function DI(r, t, e, n, i, a, o, s, l) {
;(o -= r), (s -= t)
var u = Math.sqrt(o * o + s * s)
;(o /= u), (s /= u)
var f = o * e + r,
h = s * e + t
if (Math.abs(n - i) % Ua < 1e-4) return (l[0] = f), (l[1] = h), u - e
if (a) {
var c = n
;(n = Ir(i)), (i = Ir(c))
} else (n = Ir(n)), (i = Ir(i))
n > i && (i += Ua)
var v = Math.atan2(s, o)
if ((v < 0 && (v += Ua), (v >= n && v <= i) || (v + Ua >= n && v + Ua <= i)))
return (l[0] = f), (l[1] = h), u - e
var d = e * Math.cos(n) + r,
p = e * Math.sin(n) + t,
g = e * Math.cos(i) + r,
m = e * Math.sin(i) + t,
y = (d - o) * (d - o) + (p - s) * (p - s),
_ = (g - o) * (g - o) + (m - s) * (m - s)
return y < _
? ((l[0] = d), (l[1] = p), Math.sqrt(y))
: ((l[0] = g), (l[1] = m), Math.sqrt(_))
}
function al(r, t, e, n, i, a, o, s) {
var l = i - r,
u = a - t,
f = e - r,
h = n - t,
c = Math.sqrt(f * f + h * h)
;(f /= c), (h /= c)
var v = l * f + u * h,
d = v / c
s && (d = Math.min(Math.max(d, 0), 1)), (d *= c)
var p = (o[0] = r + d * f),
g = (o[1] = t + d * h)
return Math.sqrt((p - i) * (p - i) + (g - a) * (g - a))
}
function uy(r, t, e, n, i, a, o) {
e < 0 && ((r = r + e), (e = -e)), n < 0 && ((t = t + n), (n = -n))
var s = r + e,
l = t + n,
u = (o[0] = Math.min(Math.max(i, r), s)),
f = (o[1] = Math.min(Math.max(a, t), l))
return Math.sqrt((u - i) * (u - i) + (f - a) * (f - a))
}
var Ee = []
function II(r, t, e) {
var n = uy(t.x, t.y, t.width, t.height, r.x, r.y, Ee)
return e.set(Ee[0], Ee[1]), n
}
function LI(r, t, e) {
for (
var n = 0,
i = 0,
a = 0,
o = 0,
s,
l,
u = 1 / 0,
f = t.data,
h = r.x,
c = r.y,
v = 0;
v < f.length;
) {
var d = f[v++]
v === 1 && ((n = f[v]), (i = f[v + 1]), (a = n), (o = i))
var p = u
switch (d) {
case An.M:
;(a = f[v++]), (o = f[v++]), (n = a), (i = o)
break
case An.L:
;(p = al(n, i, f[v], f[v + 1], h, c, Ee, !0)),
(n = f[v++]),
(i = f[v++])
break
case An.C:
;(p = mc(
n,
i,
f[v++],
f[v++],
f[v++],
f[v++],
f[v],
f[v + 1],
h,
c,
Ee
)),
(n = f[v++]),
(i = f[v++])
break
case An.Q:
;(p = Sc(n, i, f[v++], f[v++], f[v], f[v + 1], h, c, Ee)),
(n = f[v++]),
(i = f[v++])
break
case An.A:
var g = f[v++],
m = f[v++],
y = f[v++],
_ = f[v++],
S = f[v++],
w = f[v++]
v += 1
var x = !!(1 - f[v++])
;(s = Math.cos(S) * y + g),
(l = Math.sin(S) * _ + m),
v <= 1 && ((a = s), (o = l))
var b = ((h - g) * _) / y + g
;(p = DI(g, m, _, S, S + w, x, b, c, Ee)),
(n = Math.cos(S + w) * y + g),
(i = Math.sin(S + w) * _ + m)
break
case An.R:
;(a = n = f[v++]), (o = i = f[v++])
var T = f[v++],
C = f[v++]
p = uy(a, o, T, C, h, c, Ee)
break
case An.Z:
;(p = al(n, i, a, o, h, c, Ee, !0)), (n = a), (i = o)
break
}
p < u && ((u = p), e.set(Ee[0], Ee[1]))
}
return u
}
var Oe = new Z(),
gt = new Z(),
Tt = new Z(),
je = new Z(),
tr = new Z()
function fy(r, t) {
if (!!r) {
var e = r.getTextGuideLine(),
n = r.getTextContent()
if (!!(n && e)) {
var i = r.textGuideLineConfig || {},
a = [
[0, 0],
[0, 0],
[0, 0]
],
o = i.candidates || AI,
s = n.getBoundingRect().clone()
s.applyTransform(n.getComputedTransform())
var l = 1 / 0,
u = i.anchor,
f = r.getComputedTransform(),
h = f && Lo([], f),
c = t.get('length2') || 0
u && Tt.copy(u)
for (var v = 0; v < o.length; v++) {
var d = o[v]
MI(d, 0, s, Oe, je), Z.scaleAndAdd(gt, Oe, je, c), gt.transform(h)
var p = r.getBoundingRect(),
g = u
? u.distance(gt)
: r instanceof st
? LI(gt, r.path, Tt)
: II(gt, p, Tt)
g < l &&
((l = g),
gt.transform(f),
Tt.transform(f),
Tt.toArray(a[0]),
gt.toArray(a[1]),
Oe.toArray(a[2]))
}
hy(a, t.get('minTurnAngle')), e.setShape({ points: a })
}
}
}
var ol = [],
Jt = new Z()
function hy(r, t) {
if (t <= 180 && t > 0) {
;(t = (t / 180) * Math.PI),
Oe.fromArray(r[0]),
gt.fromArray(r[1]),
Tt.fromArray(r[2]),
Z.sub(je, Oe, gt),
Z.sub(tr, Tt, gt)
var e = je.len(),
n = tr.len()
if (!(e < 0.001 || n < 0.001)) {
je.scale(1 / e), tr.scale(1 / n)
var i = je.dot(tr),
a = Math.cos(t)
if (a < i) {
var o = al(gt.x, gt.y, Tt.x, Tt.y, Oe.x, Oe.y, ol, !1)
Jt.fromArray(ol), Jt.scaleAndAdd(tr, o / Math.tan(Math.PI - t))
var s =
Tt.x !== gt.x
? (Jt.x - gt.x) / (Tt.x - gt.x)
: (Jt.y - gt.y) / (Tt.y - gt.y)
if (isNaN(s)) return
s < 0 ? Z.copy(Jt, gt) : s > 1 && Z.copy(Jt, Tt), Jt.toArray(r[1])
}
}
}
}
function PI(r, t, e) {
if (e <= 180 && e > 0) {
;(e = (e / 180) * Math.PI),
Oe.fromArray(r[0]),
gt.fromArray(r[1]),
Tt.fromArray(r[2]),
Z.sub(je, gt, Oe),
Z.sub(tr, Tt, gt)
var n = je.len(),
i = tr.len()
if (!(n < 0.001 || i < 0.001)) {
je.scale(1 / n), tr.scale(1 / i)
var a = je.dot(t),
o = Math.cos(e)
if (a < o) {
var s = al(gt.x, gt.y, Tt.x, Tt.y, Oe.x, Oe.y, ol, !1)
Jt.fromArray(ol)
var l = Math.PI / 2,
u = Math.acos(tr.dot(t)),
f = l + u - e
if (f >= l) Z.copy(Jt, Tt)
else {
Jt.scaleAndAdd(tr, s / Math.tan(Math.PI / 2 - f))
var h =
Tt.x !== gt.x
? (Jt.x - gt.x) / (Tt.x - gt.x)
: (Jt.y - gt.y) / (Tt.y - gt.y)
if (isNaN(h)) return
h < 0 ? Z.copy(Jt, gt) : h > 1 && Z.copy(Jt, Tt)
}
Jt.toArray(r[1])
}
}
}
}
function vy(r, t, e, n) {
var i = e === 'normal',
a = i ? r : r.ensureState(e)
a.ignore = t
var o = n.get('smooth')
o && o === !0 && (o = 0.3),
(a.shape = a.shape || {}),
o > 0 && (a.shape.smooth = o)
var s = n.getModel('lineStyle').getLineStyle()
i ? r.useStyle(s) : (a.style = s)
}
function RI(r, t) {
var e = t.smooth,
n = t.points
if (!!n)
if ((r.moveTo(n[0][0], n[0][1]), e > 0 && n.length >= 3)) {
var i = Bl(n[0], n[1]),
a = Bl(n[1], n[2])
if (!i || !a) {
r.lineTo(n[1][0], n[1][1]), r.lineTo(n[2][0], n[2][1])
return
}
var o = Math.min(i, a) * e,
s = lo([], n[1], n[0], o / i),
l = lo([], n[1], n[2], o / a),
u = lo([], s, l, 0.5)
r.bezierCurveTo(s[0], s[1], s[0], s[1], u[0], u[1]),
r.bezierCurveTo(l[0], l[1], l[0], l[1], n[2][0], n[2][1])
} else for (var f = 1; f < n.length; f++) r.lineTo(n[f][0], n[f][1])
}
function cy(r, t, e) {
var n = r.getTextGuideLine(),
i = r.getTextContent()
if (!i) {
n && r.removeTextGuideLine()
return
}
for (
var a = t.normal, o = a.get('show'), s = i.ignore, l = 0;
l < Yo.length;
l++
) {
var u = Yo[l],
f = t[u],
h = u === 'normal'
if (f) {
var c = f.get('show'),
v = h ? s : ht(i.states[u] && i.states[u].ignore, s)
if (v || !ht(c, o)) {
var d = h ? n : n && n.states[u]
d && (d.ignore = !0)
continue
}
n ||
((n = new ai()),
r.setTextGuideLine(n),
!h && (s || !o) && vy(n, !0, 'normal', t.normal),
r.stateProxy && (n.stateProxy = r.stateProxy)),
vy(n, !1, u, f)
}
}
if (n) {
j(n.style, e), (n.style.fill = null)
var p = a.get('showAbove'),
g = (r.textGuideLineConfig = r.textGuideLineConfig || {})
;(g.showAbove = p || !1), (n.buildPath = RI)
}
}
function dy(r, t) {
t = t || 'labelLine'
for (var e = { normal: r.getModel(t) }, n = 0; n < pe.length; n++) {
var i = pe[n]
e[i] = r.getModel([i, t])
}
return e
}
function py(r) {
for (var t = [], e = 0; e < r.length; e++) {
var n = r[e]
if (!n.defaultAttr.ignore) {
var i = n.label,
a = i.getComputedTransform(),
o = i.getBoundingRect(),
s = !a || (a[1] < 1e-5 && a[2] < 1e-5),
l = i.style.margin || 0,
u = o.clone()
u.applyTransform(a),
(u.x -= l / 2),
(u.y -= l / 2),
(u.width += l),
(u.height += l)
var f = s ? new rs(o, a) : null
t.push({
label: i,
labelLine: n.labelLine,
rect: u,
localRect: o,
obb: f,
priority: n.priority,
defaultAttr: n.defaultAttr,
layoutOption: n.computedLayoutOption,
axisAligned: s,
transform: a
})
}
}
return t
}
function gy(r, t, e, n, i, a) {
var o = r.length
if (o < 2) return
r.sort(function (T, C) {
return T.rect[t] - C.rect[t]
})
for (var s = 0, l, u = !1, f = 0, h = 0; h < o; h++) {
var c = r[h],
v = c.rect
;(l = v[t] - s), l < 0 && ((v[t] -= l), (c.label[t] -= l), (u = !0))
var d = Math.max(-l, 0)
;(f += d), (s = v[t] + v[e])
}
f > 0 && a && w(-f / o, 0, o)
var p = r[0],
g = r[o - 1],
m,
y
_(),
m < 0 && x(-m, 0.8),
y < 0 && x(y, 0.8),
_(),
S(m, y, 1),
S(y, m, -1),
_(),
m < 0 && b(-m),
y < 0 && b(y)
function _() {
;(m = p.rect[t] - n), (y = i - g.rect[t] - g.rect[e])
}
function S(T, C, M) {
if (T < 0) {
var D = Math.min(C, -T)
if (D > 0) {
w(D * M, 0, o)
var I = D + T
I < 0 && x(-I * M, 1)
} else x(-T * M, 1)
}
}
function w(T, C, M) {
T !== 0 && (u = !0)
for (var D = C; D < M; D++) {
var I = r[D],
L = I.rect
;(L[t] += T), (I.label[t] += T)
}
}
function x(T, C) {
for (var M = [], D = 0, I = 1; I < o; I++) {
var L = r[I - 1].rect,
P = Math.max(r[I].rect[t] - L[t] - L[e], 0)
M.push(P), (D += P)
}
if (!!D) {
var R = Math.min(Math.abs(T) / D, C)
if (T > 0)
for (var I = 0; I < o - 1; I++) {
var O = M[I] * R
w(O, 0, I + 1)
}
else
for (var I = o - 1; I > 0; I--) {
var O = M[I - 1] * R
w(-O, I, o)
}
}
}
function b(T) {
var C = T < 0 ? -1 : 1
T = Math.abs(T)
for (var M = Math.ceil(T / (o - 1)), D = 0; D < o - 1; D++)
if ((C > 0 ? w(M, 0, D + 1) : w(-M, o - D - 1, o), (T -= M), T <= 0))
return
}
return u
}
function EI(r, t, e, n) {
return gy(r, 'x', 'width', t, e, n)
}
function my(r, t, e, n) {
return gy(r, 'y', 'height', t, e, n)
}
function yy(r) {
var t = []
r.sort(function (p, g) {
return g.priority - p.priority
})
var e = new vt(0, 0, 0, 0)
function n(p) {
if (!p.ignore) {
var g = p.ensureState('emphasis')
g.ignore == null && (g.ignore = !1)
}
p.ignore = !0
}
for (var i = 0; i < r.length; i++) {
var a = r[i],
o = a.axisAligned,
s = a.localRect,
l = a.transform,
u = a.label,
f = a.labelLine
e.copy(a.rect),
(e.width -= 0.1),
(e.height -= 0.1),
(e.x += 0.05),
(e.y += 0.05)
for (var h = a.obb, c = !1, v = 0; v < t.length; v++) {
var d = t[v]
if (!!e.intersect(d.rect)) {
if (o && d.axisAligned) {
c = !0
break
}
if (
(d.obb || (d.obb = new rs(d.localRect, d.transform)),
h || (h = new rs(s, l)),
h.intersect(d.obb))
) {
c = !0
break
}
}
}
c
? (n(u), f && n(f))
: (u.attr('ignore', a.defaultAttr.ignore),
f && f.attr('ignore', a.defaultAttr.labelGuideIgnore),
t.push(a))
}
}
function OI(r) {
if (r) {
for (var t = [], e = 0; e < r.length; e++) t.push(r[e].slice())
return t
}
}
function kI(r, t) {
var e = r.label,
n = t && t.getTextGuideLine()
return {
dataIndex: r.dataIndex,
dataType: r.dataType,
seriesIndex: r.seriesModel.seriesIndex,
text: r.label.style.text,
rect: r.hostRect,
labelRect: r.rect,
align: e.style.align,
verticalAlign: e.style.verticalAlign,
labelLinePoints: OI(n && n.shape.points)
}
}
var _y = ['align', 'verticalAlign', 'width', 'height', 'fontSize'],
le = new Wi(),
Ah = wt(),
BI = wt()
function sl(r, t, e) {
for (var n = 0; n < e.length; n++) {
var i = e[n]
t[i] != null && (r[i] = t[i])
}
}
var ll = ['x', 'y', 'rotation'],
NI = (function () {
function r() {
;(this._labelList = []), (this._chartViewList = [])
}
return (
(r.prototype.clearLabels = function () {
;(this._labelList = []), (this._chartViewList = [])
}),
(r.prototype._addLabel = function (t, e, n, i, a) {
var o = i.style,
s = i.__hostTarget,
l = s.textConfig || {},
u = i.getComputedTransform(),
f = i.getBoundingRect().plain()
vt.applyTransform(f, f, u),
u
? le.setLocalTransform(u)
: ((le.x = le.y = le.rotation = le.originX = le.originY = 0),
(le.scaleX = le.scaleY = 1))
var h = i.__hostTarget,
c
if (h) {
c = h.getBoundingRect().plain()
var v = h.getComputedTransform()
vt.applyTransform(c, c, v)
}
var d = c && h.getTextGuideLine()
this._labelList.push({
label: i,
labelLine: d,
seriesModel: n,
dataIndex: t,
dataType: e,
layoutOption: a,
computedLayoutOption: null,
rect: f,
hostRect: c,
priority: c ? c.width * c.height : 0,
defaultAttr: {
ignore: i.ignore,
labelGuideIgnore: d && d.ignore,
x: le.x,
y: le.y,
scaleX: le.scaleX,
scaleY: le.scaleY,
rotation: le.rotation,
style: {
x: o.x,
y: o.y,
align: o.align,
verticalAlign: o.verticalAlign,
width: o.width,
height: o.height,
fontSize: o.fontSize
},
cursor: i.cursor,
attachedPos: l.position,
attachedRot: l.rotation
}
})
}),
(r.prototype.addLabelsOfSeries = function (t) {
var e = this
this._chartViewList.push(t)
var n = t.__model,
i = n.get('labelLayout')
!(Q(i) || xt(i).length) ||
t.group.traverse(function (a) {
if (a.ignore) return !0
var o = a.getTextContent(),
s = ct(a)
o &&
!o.disableLabelLayout &&
e._addLabel(s.dataIndex, s.dataType, n, o, i)
})
}),
(r.prototype.updateLayoutConfig = function (t) {
var e = t.getWidth(),
n = t.getHeight()
function i(_, S) {
return function () {
fy(_, S)
}
}
for (var a = 0; a < this._labelList.length; a++) {
var o = this._labelList[a],
s = o.label,
l = s.__hostTarget,
u = o.defaultAttr,
f = void 0
Q(o.layoutOption)
? (f = o.layoutOption(kI(o, l)))
: (f = o.layoutOption),
(f = f || {}),
(o.computedLayoutOption = f)
var h = Math.PI / 180
l &&
l.setTextConfig({
local: !1,
position: f.x != null || f.y != null ? null : u.attachedPos,
rotation: f.rotate != null ? f.rotate * h : u.attachedRot,
offset: [f.dx || 0, f.dy || 0]
})
var c = !1
if (
(f.x != null
? ((s.x = yt(f.x, e)), s.setStyle('x', 0), (c = !0))
: ((s.x = u.x), s.setStyle('x', u.style.x)),
f.y != null
? ((s.y = yt(f.y, n)), s.setStyle('y', 0), (c = !0))
: ((s.y = u.y), s.setStyle('y', u.style.y)),
f.labelLinePoints)
) {
var v = l.getTextGuideLine()
v && (v.setShape({ points: f.labelLinePoints }), (c = !1))
}
var d = Ah(s)
;(d.needsUpdateLabelLine = c),
(s.rotation = f.rotate != null ? f.rotate * h : u.rotation),
(s.scaleX = u.scaleX),
(s.scaleY = u.scaleY)
for (var p = 0; p < _y.length; p++) {
var g = _y[p]
s.setStyle(g, f[g] != null ? f[g] : u.style[g])
}
if (f.draggable) {
if (((s.draggable = !0), (s.cursor = 'move'), l)) {
var m = o.seriesModel
if (o.dataIndex != null) {
var y = o.seriesModel.getData(o.dataType)
m = y.getItemModel(o.dataIndex)
}
s.on('drag', i(l, m.getModel('labelLine')))
}
} else s.off('drag'), (s.cursor = u.cursor)
}
}),
(r.prototype.layout = function (t) {
var e = t.getWidth(),
n = t.getHeight(),
i = py(this._labelList),
a = Lt(i, function (l) {
return l.layoutOption.moveOverlap === 'shiftX'
}),
o = Lt(i, function (l) {
return l.layoutOption.moveOverlap === 'shiftY'
})
EI(a, 0, e), my(o, 0, n)
var s = Lt(i, function (l) {
return l.layoutOption.hideOverlap
})
yy(s)
}),
(r.prototype.processLabelsOverall = function () {
var t = this
A(this._chartViewList, function (e) {
var n = e.__model,
i = e.ignoreLabelLineUpdate,
a = n.isAnimationEnabled()
e.group.traverse(function (o) {
if (o.ignore && !o.forceLabelAnimation) return !0
var s = !i,
l = o.getTextContent()
!s && l && (s = Ah(l).needsUpdateLabelLine),
s && t._updateLabelLine(o, n),
a && t._animateLabels(o, n)
})
})
}),
(r.prototype._updateLabelLine = function (t, e) {
var n = t.getTextContent(),
i = ct(t),
a = i.dataIndex
if (n && a != null) {
var o = e.getData(i.dataType),
s = o.getItemModel(a),
l = {},
u = o.getItemVisual(a, 'style'),
f = o.getVisual('drawType')
l.stroke = u[f]
var h = s.getModel('labelLine')
cy(t, dy(s), l), fy(t, h)
}
}),
(r.prototype._animateLabels = function (t, e) {
var n = t.getTextContent(),
i = t.getTextGuideLine()
if (
n &&
(t.forceLabelAnimation ||
(!n.ignore && !n.invisible && !t.disableLabelAnimation && !oi(t)))
) {
var a = Ah(n),
o = a.oldLayout,
s = ct(t),
l = s.dataIndex,
u = { x: n.x, y: n.y, rotation: n.rotation },
f = e.getData(s.dataType)
if (o) {
n.attr(o)
var c = t.prevStates
c &&
(ot(c, 'select') >= 0 && n.attr(a.oldLayoutSelect),
ot(c, 'emphasis') >= 0 && n.attr(a.oldLayoutEmphasis)),
kt(n, u, e, l)
} else if ((n.attr(u), !si(n).valueAnimation)) {
var h = ht(n.style.opacity, 1)
;(n.style.opacity = 0), Wt(n, { style: { opacity: h } }, e, l)
}
if (((a.oldLayout = u), n.states.select)) {
var v = (a.oldLayoutSelect = {})
sl(v, u, ll), sl(v, n.states.select, ll)
}
if (n.states.emphasis) {
var d = (a.oldLayoutEmphasis = {})
sl(d, u, ll), sl(d, n.states.emphasis, ll)
}
NC(n, l, f, e, e)
}
if (i && !i.ignore && !i.invisible) {
var a = BI(i),
o = a.oldLayout,
p = { points: i.shape.points }
o
? (i.attr({ shape: o }), kt(i, { shape: p }, e))
: (i.setShape(p),
(i.style.strokePercent = 0),
Wt(i, { style: { strokePercent: 1 } }, e)),
(a.oldLayout = p)
}
}),
r
)
})(),
FI = NI,
Mh = wt()
function zI(r) {
r.registerUpdateLifecycle('series:beforeupdate', function (t, e, n) {
var i = Mh(e).labelManager
i || (i = Mh(e).labelManager = new FI()), i.clearLabels()
}),
r.registerUpdateLifecycle('series:layoutlabels', function (t, e, n) {
var i = Mh(e).labelManager
n.updatedSeries.forEach(function (a) {
i.addLabelsOfSeries(e.getViewOfSeriesModel(a))
}),
i.updateLayoutConfig(e),
i.layout(e),
i.processLabelsOverall()
})
}
var VI = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (e.type = t.type), (e.hasSymbolVisual = !0), e
}
return (
(t.prototype.getInitialData = function (e) {
return mh(null, this, { useEncodeDefaulter: !0 })
}),
(t.prototype.getLegendIcon = function (e) {
var n = new At(),
i = Or(
'line',
0,
e.itemHeight / 2,
e.itemWidth,
0,
e.lineStyle.stroke,
!1
)
n.add(i), i.setStyle(e.lineStyle)
var a = this.getData().getVisual('symbol'),
o = this.getData().getVisual('symbolRotate'),
s = a === 'none' ? 'circle' : a,
l = e.itemHeight * 0.8,
u = Or(
s,
(e.itemWidth - l) / 2,
(e.itemHeight - l) / 2,
l,
l,
e.itemStyle.fill
)
n.add(u), u.setStyle(e.itemStyle)
var f = e.iconRotate === 'inherit' ? o : e.iconRotate || 0
return (
(u.rotation = (f * Math.PI) / 180),
u.setOrigin([e.itemWidth / 2, e.itemHeight / 2]),
s.indexOf('empty') > -1 &&
((u.style.stroke = u.style.fill),
(u.style.fill = '#fff'),
(u.style.lineWidth = 2)),
n
)
}),
(t.type = 'series.line'),
(t.dependencies = ['grid', 'polar']),
(t.defaultOption = {
z: 3,
coordinateSystem: 'cartesian2d',
legendHoverLink: !0,
clip: !0,
label: { position: 'top' },
endLabel: { show: !1, valueAnimation: !0, distance: 8 },
lineStyle: { width: 2, type: 'solid' },
emphasis: { scale: !0 },
step: !1,
smooth: !1,
smoothMonotone: null,
symbol: 'emptyCircle',
symbolSize: 4,
symbolRotate: null,
showSymbol: !0,
showAllSymbol: 'auto',
connectNulls: !1,
sampling: 'none',
animationEasing: 'linear',
progressive: 0,
hoverLayerThreshold: 1 / 0,
universalTransition: { divideShape: 'clone' },
triggerLineEvent: !1
}),
t
)
})(Er),
GI = VI
function Dh(r, t) {
var e = r.mapDimensionsAll('defaultedLabel'),
n = e.length
if (n === 1) {
var i = pi(r, t, e[0])
return i != null ? i + '' : null
} else if (n) {
for (var a = [], o = 0; o < e.length; o++) a.push(pi(r, t, e[o]))
return a.join(' ')
}
}
function Sy(r, t) {
var e = r.mapDimensionsAll('defaultedLabel')
if (!z(t)) return t + ''
for (var n = [], i = 0; i < e.length; i++) {
var a = r.getDimensionIndex(e[i])
a >= 0 && n.push(t[a])
}
return n.join(' ')
}
var HI = (function (r) {
B(t, r)
function t(e, n, i, a) {
var o = r.call(this) || this
return o.updateData(e, n, i, a), o
}
return (
(t.prototype._createSymbol = function (e, n, i, a, o) {
this.removeAll()
var s = Or(e, -1, -1, 2, 2, null, o)
s.attr({ z2: 100, culling: !0, scaleX: a[0] / 2, scaleY: a[1] / 2 }),
(s.drift = WI),
(this._symbolType = e),
this.add(s)
}),
(t.prototype.stopSymbolAnimation = function (e) {
this.childAt(0).stopAnimation(null, e)
}),
(t.prototype.getSymbolType = function () {
return this._symbolType
}),
(t.prototype.getSymbolPath = function () {
return this.childAt(0)
}),
(t.prototype.highlight = function () {
ei(this.childAt(0))
}),
(t.prototype.downplay = function () {
ri(this.childAt(0))
}),
(t.prototype.setZ = function (e, n) {
var i = this.childAt(0)
;(i.zlevel = e), (i.z = n)
}),
(t.prototype.setDraggable = function (e, n) {
var i = this.childAt(0)
;(i.draggable = e), (i.cursor = !n && e ? 'move' : i.cursor)
}),
(t.prototype.updateData = function (e, n, i, a) {
this.silent = !1
var o = e.getItemVisual(n, 'symbol') || 'circle',
s = e.hostModel,
l = t.getSymbolSize(e, n),
u = o !== this._symbolType,
f = a && a.disableAnimation
if (u) {
var h = e.getItemVisual(n, 'symbolKeepAspect')
this._createSymbol(o, e, n, l, h)
} else {
var c = this.childAt(0)
c.silent = !1
var v = { scaleX: l[0] / 2, scaleY: l[1] / 2 }
f ? c.attr(v) : kt(c, v, s, n), lf(c)
}
if ((this._updateCommon(e, n, l, i, a), u)) {
var c = this.childAt(0)
if (!f) {
var v = {
scaleX: this._sizeX,
scaleY: this._sizeY,
style: { opacity: c.style.opacity }
}
;(c.scaleX = c.scaleY = 0), (c.style.opacity = 0), Wt(c, v, s, n)
}
}
f && this.childAt(0).stopAnimation('leave')
}),
(t.prototype._updateCommon = function (e, n, i, a, o) {
var s = this.childAt(0),
l = e.hostModel,
u,
f,
h,
c,
v,
d,
p,
g,
m
if (
(a &&
((u = a.emphasisItemStyle),
(f = a.blurItemStyle),
(h = a.selectItemStyle),
(c = a.focus),
(v = a.blurScope),
(p = a.labelStatesModels),
(g = a.hoverScale),
(m = a.cursorStyle),
(d = a.emphasisDisabled)),
!a || e.hasItemOption)
) {
var y = a && a.itemModel ? a.itemModel : e.getItemModel(n),
_ = y.getModel('emphasis')
;(u = _.getModel('itemStyle').getItemStyle()),
(h = y.getModel(['select', 'itemStyle']).getItemStyle()),
(f = y.getModel(['blur', 'itemStyle']).getItemStyle()),
(c = _.get('focus')),
(v = _.get('blurScope')),
(d = _.get('disabled')),
(p = va(y)),
(g = _.getShallow('scale')),
(m = y.getShallow('cursor'))
}
var S = e.getItemVisual(n, 'symbolRotate')
s.attr('rotation', ((S || 0) * Math.PI) / 180 || 0)
var w = Rm(e.getItemVisual(n, 'symbolOffset'), i)
w && ((s.x = w[0]), (s.y = w[1])), m && s.attr('cursor', m)
var x = e.getItemVisual(n, 'style'),
b = x.fill
if (s instanceof un) {
var T = s.style
s.useStyle(
N(
{
image: T.image,
x: T.x,
y: T.y,
width: T.width,
height: T.height
},
x
)
)
} else
s.__isEmptyBrush ? s.useStyle(N({}, x)) : s.useStyle(x),
(s.style.decal = null),
s.setColor(b, o && o.symbolInnerColor),
(s.style.strokeNoScale = !0)
var C = e.getItemVisual(n, 'liftZ'),
M = this._z2
C != null
? M == null && ((this._z2 = s.z2), (s.z2 += C))
: M != null && ((s.z2 = M), (this._z2 = null))
var D = o && o.useNameLabel
ha(s, p, {
labelFetcher: l,
labelDataIndex: n,
defaultText: I,
inheritColor: b,
defaultOpacity: x.opacity
})
function I(R) {
return D ? e.getName(R) : Dh(e, R)
}
;(this._sizeX = i[0] / 2), (this._sizeY = i[1] / 2)
var L = s.ensureState('emphasis')
if (
((L.style = u),
(s.ensureState('select').style = h),
(s.ensureState('blur').style = f),
g)
) {
var P = Math.max(dt(g) ? g : 1.1, 3 / this._sizeY)
;(L.scaleX = this._sizeX * P), (L.scaleY = this._sizeY * P)
}
this.setSymbolScale(1), aa(this, c, v, d)
}),
(t.prototype.setSymbolScale = function (e) {
this.scaleX = this.scaleY = e
}),
(t.prototype.fadeOut = function (e, n, i) {
var a = this.childAt(0),
o = ct(this).dataIndex,
s = i && i.animation
if (((this.silent = a.silent = !0), i && i.fadeLabel)) {
var l = a.getTextContent()
l &&
is(l, { style: { opacity: 0 } }, n, {
dataIndex: o,
removeOpt: s,
cb: function () {
a.removeTextContent()
}
})
} else a.removeTextContent()
is(a, { style: { opacity: 0 }, scaleX: 0, scaleY: 0 }, n, {
dataIndex: o,
cb: e,
removeOpt: s
})
}),
(t.getSymbolSize = function (e, n) {
return gD(e.getItemVisual(n, 'symbolSize'))
}),
t
)
})(At)
function WI(r, t) {
this.parent.drift(r, t)
}
var Ih = HI
function Lh(r, t, e, n) {
return (
t &&
!isNaN(t[0]) &&
!isNaN(t[1]) &&
!(n.isIgnore && n.isIgnore(e)) &&
!(n.clipShape && !n.clipShape.contain(t[0], t[1])) &&
r.getItemVisual(e, 'symbol') !== 'none'
)
}
function xy(r) {
return r != null && !Y(r) && (r = { isIgnore: r }), r || {}
}
function wy(r) {
var t = r.hostModel,
e = t.getModel('emphasis')
return {
emphasisItemStyle: e.getModel('itemStyle').getItemStyle(),
blurItemStyle: t.getModel(['blur', 'itemStyle']).getItemStyle(),
selectItemStyle: t.getModel(['select', 'itemStyle']).getItemStyle(),
focus: e.get('focus'),
blurScope: e.get('blurScope'),
emphasisDisabled: e.get('disabled'),
hoverScale: e.get('scale'),
labelStatesModels: va(t),
cursorStyle: t.get('cursor')
}
}
var UI = (function () {
function r(t) {
;(this.group = new At()), (this._SymbolCtor = t || Ih)
}
return (
(r.prototype.updateData = function (t, e) {
;(this._progressiveEls = null), (e = xy(e))
var n = this.group,
i = t.hostModel,
a = this._data,
o = this._SymbolCtor,
s = e.disableAnimation,
l = wy(t),
u = { disableAnimation: s },
f =
e.getSymbolPoint ||
function (h) {
return t.getItemLayout(h)
}
a || n.removeAll(),
t
.diff(a)
.add(function (h) {
var c = f(h)
if (Lh(t, c, h, e)) {
var v = new o(t, h, l, u)
v.setPosition(c), t.setItemGraphicEl(h, v), n.add(v)
}
})
.update(function (h, c) {
var v = a.getItemGraphicEl(c),
d = f(h)
if (!Lh(t, d, h, e)) {
n.remove(v)
return
}
var p = t.getItemVisual(h, 'symbol') || 'circle',
g = v && v.getSymbolType && v.getSymbolType()
if (!v || (g && g !== p))
n.remove(v), (v = new o(t, h, l, u)), v.setPosition(d)
else {
v.updateData(t, h, l, u)
var m = { x: d[0], y: d[1] }
s ? v.attr(m) : kt(v, m, i)
}
n.add(v), t.setItemGraphicEl(h, v)
})
.remove(function (h) {
var c = a.getItemGraphicEl(h)
c &&
c.fadeOut(function () {
n.remove(c)
}, i)
})
.execute(),
(this._getSymbolPoint = f),
(this._data = t)
}),
(r.prototype.updateLayout = function () {
var t = this,
e = this._data
e &&
e.eachItemGraphicEl(function (n, i) {
var a = t._getSymbolPoint(i)
n.setPosition(a), n.markRedraw()
})
}),
(r.prototype.incrementalPrepareUpdate = function (t) {
;(this._seriesScope = wy(t)),
(this._data = null),
this.group.removeAll()
}),
(r.prototype.incrementalUpdate = function (t, e, n) {
;(this._progressiveEls = []), (n = xy(n))
function i(l) {
l.isGroup ||
((l.incremental = !0), (l.ensureState('emphasis').hoverLayer = !0))
}
for (var a = t.start; a < t.end; a++) {
var o = e.getItemLayout(a)
if (Lh(e, o, a, n)) {
var s = new this._SymbolCtor(e, a, this._seriesScope)
s.traverse(i),
s.setPosition(o),
this.group.add(s),
e.setItemGraphicEl(a, s),
this._progressiveEls.push(s)
}
}
}),
(r.prototype.eachRendered = function (t) {
hs(this._progressiveEls || this.group, t)
}),
(r.prototype.remove = function (t) {
var e = this.group,
n = this._data
n && t
? n.eachItemGraphicEl(function (i) {
i.fadeOut(function () {
e.remove(i)
}, n.hostModel)
})
: e.removeAll()
}),
r
)
})(),
YI = UI
function by(r, t, e) {
var n = r.getBaseAxis(),
i = r.getOtherAxis(n),
a = ZI(i, e),
o = n.dim,
s = i.dim,
l = t.mapDimension(s),
u = t.mapDimension(o),
f = s === 'x' || s === 'radius' ? 1 : 0,
h = G(r.dimensions, function (d) {
return t.mapDimension(d)
}),
c = !1,
v = t.getCalculationInfo('stackResultDimension')
return (
Si(t, h[0]) && ((c = !0), (h[0] = v)),
Si(t, h[1]) && ((c = !0), (h[1] = v)),
{
dataDimsForPoint: h,
valueStart: a,
valueAxisDim: s,
baseAxisDim: o,
stacked: !!c,
valueDim: l,
baseDim: u,
baseDataOffset: f,
stackedOverDimension: t.getCalculationInfo('stackedOverDimension')
}
)
}
function ZI(r, t) {
var e = 0,
n = r.scale.getExtent()
return (
t === 'start'
? (e = n[0])
: t === 'end'
? (e = n[1])
: dt(t) && !isNaN(t)
? (e = t)
: n[0] > 0
? (e = n[0])
: n[1] < 0 && (e = n[1]),
e
)
}
function Ty(r, t, e, n) {
var i = NaN
r.stacked && (i = e.get(e.getCalculationInfo('stackedOverDimension'), n)),
isNaN(i) && (i = r.valueStart)
var a = r.baseDataOffset,
o = []
return (o[a] = e.get(r.baseDim, n)), (o[1 - a] = i), t.dataToPoint(o)
}
function $I(r, t) {
var e = []
return (
t
.diff(r)
.add(function (n) {
e.push({ cmd: '+', idx: n })
})
.update(function (n, i) {
e.push({ cmd: '=', idx: i, idx1: n })
})
.remove(function (n) {
e.push({ cmd: '-', idx: n })
})
.execute(),
e
)
}
function XI(r, t, e, n, i, a, o, s) {
for (
var l = $I(r, t),
u = [],
f = [],
h = [],
c = [],
v = [],
d = [],
p = [],
g = by(i, t, o),
m = r.getLayout('points') || [],
y = t.getLayout('points') || [],
_ = 0;
_ < l.length;
_++
) {
var S = l[_],
w = !0,
x = void 0,
b = void 0
switch (S.cmd) {
case '=':
;(x = S.idx * 2), (b = S.idx1 * 2)
var T = m[x],
C = m[x + 1],
M = y[b],
D = y[b + 1]
;(isNaN(T) || isNaN(C)) && ((T = M), (C = D)),
u.push(T, C),
f.push(M, D),
h.push(e[x], e[x + 1]),
c.push(n[b], n[b + 1]),
p.push(t.getRawIndex(S.idx1))
break
case '+':
var I = S.idx,
L = g.dataDimsForPoint,
P = i.dataToPoint([t.get(L[0], I), t.get(L[1], I)])
;(b = I * 2), u.push(P[0], P[1]), f.push(y[b], y[b + 1])
var R = Ty(g, i, t, I)
h.push(R[0], R[1]), c.push(n[b], n[b + 1]), p.push(t.getRawIndex(I))
break
case '-':
w = !1
}
w && (v.push(S), d.push(d.length))
}
d.sort(function (Ct, mt) {
return p[Ct] - p[mt]
})
for (
var O = u.length, U = gr(O), k = gr(O), F = gr(O), H = gr(O), $ = [], _ = 0;
_ < d.length;
_++
) {
var J = d[_],
et = _ * 2,
ft = J * 2
;(U[et] = u[ft]),
(U[et + 1] = u[ft + 1]),
(k[et] = f[ft]),
(k[et + 1] = f[ft + 1]),
(F[et] = h[ft]),
(F[et + 1] = h[ft + 1]),
(H[et] = c[ft]),
(H[et + 1] = c[ft + 1]),
($[_] = v[J])
}
return {
current: U,
next: k,
stackedOnCurrent: F,
stackedOnNext: H,
status: $
}
}
var Nr = Math.min,
Fr = Math.max
function Mn(r, t) {
return isNaN(r) || isNaN(t)
}
function Ph(r, t, e, n, i, a, o, s, l) {
for (var u, f, h, c, v, d, p = e, g = 0; g < n; g++) {
var m = t[p * 2],
y = t[p * 2 + 1]
if (p >= i || p < 0) break
if (Mn(m, y)) {
if (l) {
p += a
continue
}
break
}
if (p === e) r[a > 0 ? 'moveTo' : 'lineTo'](m, y), (h = m), (c = y)
else {
var _ = m - u,
S = y - f
if (_ * _ + S * S < 0.5) {
p += a
continue
}
if (o > 0) {
for (
var w = p + a, x = t[w * 2], b = t[w * 2 + 1];
x === m && b === y && g < n;
)
g++,
(w += a),
(p += a),
(x = t[w * 2]),
(b = t[w * 2 + 1]),
(m = t[p * 2]),
(y = t[p * 2 + 1]),
(_ = m - u),
(S = y - f)
var T = g + 1
if (l)
for (; Mn(x, b) && T < n; )
T++, (w += a), (x = t[w * 2]), (b = t[w * 2 + 1])
var C = 0.5,
M = 0,
D = 0,
I = void 0,
L = void 0
if (T >= n || Mn(x, b)) (v = m), (d = y)
else {
;(M = x - u), (D = b - f)
var P = m - u,
R = x - m,
O = y - f,
U = b - y,
k = void 0,
F = void 0
if (s === 'x') {
;(k = Math.abs(P)), (F = Math.abs(R))
var H = M > 0 ? 1 : -1
;(v = m - H * k * o), (d = y), (I = m + H * F * o), (L = y)
} else if (s === 'y') {
;(k = Math.abs(O)), (F = Math.abs(U))
var $ = D > 0 ? 1 : -1
;(v = m), (d = y - $ * k * o), (I = m), (L = y + $ * F * o)
} else
(k = Math.sqrt(P * P + O * O)),
(F = Math.sqrt(R * R + U * U)),
(C = F / (F + k)),
(v = m - M * o * (1 - C)),
(d = y - D * o * (1 - C)),
(I = m + M * o * C),
(L = y + D * o * C),
(I = Nr(I, Fr(x, m))),
(L = Nr(L, Fr(b, y))),
(I = Fr(I, Nr(x, m))),
(L = Fr(L, Nr(b, y))),
(M = I - m),
(D = L - y),
(v = m - (M * k) / F),
(d = y - (D * k) / F),
(v = Nr(v, Fr(u, m))),
(d = Nr(d, Fr(f, y))),
(v = Fr(v, Nr(u, m))),
(d = Fr(d, Nr(f, y))),
(M = m - v),
(D = y - d),
(I = m + (M * F) / k),
(L = y + (D * F) / k)
}
r.bezierCurveTo(h, c, v, d, m, y), (h = I), (c = L)
} else r.lineTo(m, y)
}
;(u = m), (f = y), (p += a)
}
return g
}
var Cy = (function () {
function r() {
;(this.smooth = 0), (this.smoothConstraint = !0)
}
return r
})(),
qI = (function (r) {
B(t, r)
function t(e) {
var n = r.call(this, e) || this
return (n.type = 'ec-polyline'), n
}
return (
(t.prototype.getDefaultStyle = function () {
return { stroke: '#000', fill: null }
}),
(t.prototype.getDefaultShape = function () {
return new Cy()
}),
(t.prototype.buildPath = function (e, n) {
var i = n.points,
a = 0,
o = i.length / 2
if (n.connectNulls) {
for (; o > 0 && Mn(i[o * 2 - 2], i[o * 2 - 1]); o--);
for (; a < o && Mn(i[a * 2], i[a * 2 + 1]); a++);
}
for (; a < o; )
a +=
Ph(e, i, a, o, o, 1, n.smooth, n.smoothMonotone, n.connectNulls) + 1
}),
(t.prototype.getPointOn = function (e, n) {
this.path ||
(this.createPathProxy(), this.buildPath(this.path, this.shape))
for (
var i = this.path,
a = i.data,
o = ur.CMD,
s,
l,
u = n === 'x',
f = [],
h = 0;
h < a.length;
) {
var c = a[h++],
v = void 0,
d = void 0,
p = void 0,
g = void 0,
m = void 0,
y = void 0,
_ = void 0
switch (c) {
case o.M:
;(s = a[h++]), (l = a[h++])
break
case o.L:
if (
((v = a[h++]),
(d = a[h++]),
(_ = u ? (e - s) / (v - s) : (e - l) / (d - l)),
_ <= 1 && _ >= 0)
) {
var S = u ? (d - l) * _ + l : (v - s) * _ + s
return u ? [e, S] : [S, e]
}
;(s = v), (l = d)
break
case o.C:
;(v = a[h++]),
(d = a[h++]),
(p = a[h++]),
(g = a[h++]),
(m = a[h++]),
(y = a[h++])
var w = u ? po(s, v, p, m, e, f) : po(l, d, g, y, e, f)
if (w > 0)
for (var x = 0; x < w; x++) {
var b = f[x]
if (b <= 1 && b >= 0) {
var S = u ? Rt(l, d, g, y, b) : Rt(s, v, p, m, b)
return u ? [e, S] : [S, e]
}
}
;(s = m), (l = y)
break
}
}
}),
t
)
})(st),
KI = (function (r) {
B(t, r)
function t() {
return (r !== null && r.apply(this, arguments)) || this
}
return t
})(Cy),
QI = (function (r) {
B(t, r)
function t(e) {
var n = r.call(this, e) || this
return (n.type = 'ec-polygon'), n
}
return (
(t.prototype.getDefaultShape = function () {
return new KI()
}),
(t.prototype.buildPath = function (e, n) {
var i = n.points,
a = n.stackedOnPoints,
o = 0,
s = i.length / 2,
l = n.smoothMonotone
if (n.connectNulls) {
for (; s > 0 && Mn(i[s * 2 - 2], i[s * 2 - 1]); s--);
for (; o < s && Mn(i[o * 2], i[o * 2 + 1]); o++);
}
for (; o < s; ) {
var u = Ph(e, i, o, s, s, 1, n.smooth, l, n.connectNulls)
Ph(e, a, o + u - 1, u, s, -1, n.stackedOnSmooth, l, n.connectNulls),
(o += u + 1),
e.closePath()
}
}),
t
)
})(st)
function Ay(r, t, e, n, i) {
var a = r.getArea(),
o = a.x,
s = a.y,
l = a.width,
u = a.height,
f = e.get(['lineStyle', 'width']) || 2
;(o -= f / 2),
(s -= f / 2),
(l += f),
(u += f),
(o = Math.floor(o)),
(l = Math.round(l))
var h = new St({ shape: { x: o, y: s, width: l, height: u } })
if (t) {
var c = r.getBaseAxis(),
v = c.isHorizontal(),
d = c.inverse
v
? (d && (h.shape.x += l), (h.shape.width = 0))
: (d || (h.shape.y += u), (h.shape.height = 0))
var p = Q(i)
? function (g) {
i(g, h)
}
: null
Wt(h, { shape: { width: l, height: u, x: o, y: s } }, e, null, n, p)
}
return h
}
function My(r, t, e) {
var n = r.getArea(),
i = Pt(n.r0, 1),
a = Pt(n.r, 1),
o = new hr({
shape: {
cx: Pt(r.cx, 1),
cy: Pt(r.cy, 1),
r0: i,
r: a,
startAngle: n.startAngle,
endAngle: n.endAngle,
clockwise: n.clockwise
}
})
if (t) {
var s = r.getBaseAxis().dim === 'angle'
s ? (o.shape.endAngle = n.startAngle) : (o.shape.r = i),
Wt(o, { shape: { endAngle: n.endAngle, r: a } }, e)
}
return o
}
function JI(r, t, e, n, i) {
if (r) {
if (r.type === 'polar') return My(r, t, e)
if (r.type === 'cartesian2d') return Ay(r, t, e, n, i)
} else return null
return null
}
function Rh(r, t) {
return r.type === t
}
function Dy(r, t) {
if (r.length === t.length) {
for (var e = 0; e < r.length; e++) if (r[e] !== t[e]) return
return !0
}
}
function Iy(r) {
for (
var t = 1 / 0, e = 1 / 0, n = -1 / 0, i = -1 / 0, a = 0;
a < r.length;
) {
var o = r[a++],
s = r[a++]
isNaN(o) || ((t = Math.min(o, t)), (n = Math.max(o, n))),
isNaN(s) || ((e = Math.min(s, e)), (i = Math.max(s, i)))
}
return [
[t, e],
[n, i]
]
}
function Ly(r, t) {
var e = Iy(r),
n = e[0],
i = e[1],
a = Iy(t),
o = a[0],
s = a[1]
return Math.max(
Math.abs(n[0] - o[0]),
Math.abs(n[1] - o[1]),
Math.abs(i[0] - s[0]),
Math.abs(i[1] - s[1])
)
}
function Py(r) {
return dt(r) ? r : r ? 0.5 : 0
}
function jI(r, t, e) {
if (!e.valueDim) return []
for (var n = t.count(), i = gr(n * 2), a = 0; a < n; a++) {
var o = Ty(e, r, t, a)
;(i[a * 2] = o[0]), (i[a * 2 + 1] = o[1])
}
return i
}
function zr(r, t, e, n) {
var i = t.getBaseAxis(),
a = i.dim === 'x' || i.dim === 'radius' ? 0 : 1,
o = [],
s = 0,
l = [],
u = [],
f = [],
h = []
if (n) {
for (s = 0; s < r.length; s += 2)
!isNaN(r[s]) && !isNaN(r[s + 1]) && h.push(r[s], r[s + 1])
r = h
}
for (s = 0; s < r.length - 2; s += 2)
switch (
((f[0] = r[s + 2]),
(f[1] = r[s + 3]),
(u[0] = r[s]),
(u[1] = r[s + 1]),
o.push(u[0], u[1]),
e)
) {
case 'end':
;(l[a] = f[a]), (l[1 - a] = u[1 - a]), o.push(l[0], l[1])
break
case 'middle':
var c = (u[a] + f[a]) / 2,
v = []
;(l[a] = v[a] = c),
(l[1 - a] = u[1 - a]),
(v[1 - a] = f[1 - a]),
o.push(l[0], l[1]),
o.push(v[0], v[1])
break
default:
;(l[a] = u[a]), (l[1 - a] = f[1 - a]), o.push(l[0], l[1])
}
return o.push(r[s++], r[s++]), o
}
function tL(r, t) {
var e = [],
n = r.length,
i,
a
function o(f, h, c) {
var v = f.coord,
d = (c - v) / (h.coord - v),
p = pw(d, [f.color, h.color])
return { coord: c, color: p }
}
for (var s = 0; s < n; s++) {
var l = r[s],
u = l.coord
if (u < 0) i = l
else if (u > t) {
a ? e.push(o(a, l, t)) : i && e.push(o(i, l, 0), o(i, l, t))
break
} else i && (e.push(o(i, l, 0)), (i = null)), e.push(l), (a = l)
}
return e
}
function eL(r, t, e) {
var n = r.getVisual('visualMeta')
if (!(!n || !n.length || !r.count()) && t.type === 'cartesian2d') {
for (var i, a, o = n.length - 1; o >= 0; o--) {
var s = r.getDimensionInfo(n[o].dimension)
if (((i = s && s.coordDim), i === 'x' || i === 'y')) {
a = n[o]
break
}
}
if (!!a) {
var l = t.getAxis(i),
u = G(a.stops, function (_) {
return {
coord: l.toGlobalCoord(l.dataToCoord(_.value)),
color: _.color
}
}),
f = u.length,
h = a.outerColors.slice()
f && u[0].coord > u[f - 1].coord && (u.reverse(), h.reverse())
var c = tL(u, i === 'x' ? e.getWidth() : e.getHeight()),
v = c.length
if (!v && f)
return u[0].coord < 0
? h[1]
? h[1]
: u[f - 1].color
: h[0]
? h[0]
: u[0].color
var d = 10,
p = c[0].coord - d,
g = c[v - 1].coord + d,
m = g - p
if (m < 0.001) return 'transparent'
A(c, function (_) {
_.offset = (_.coord - p) / m
}),
c.push({
offset: v ? c[v - 1].offset : 0.5,
color: h[1] || 'transparent'
}),
c.unshift({
offset: v ? c[0].offset : 0.5,
color: h[0] || 'transparent'
})
var y = new Ip(0, 0, 0, 0, c, !0)
return (y[i] = p), (y[i + '2'] = g), y
}
}
}
function rL(r, t, e) {
var n = r.get('showAllSymbol'),
i = n === 'auto'
if (!(n && !i)) {
var a = e.getAxesByScale('ordinal')[0]
if (!!a && !(i && nL(a, t))) {
var o = t.mapDimension(a.dim),
s = {}
return (
A(a.getViewLabels(), function (l) {
var u = a.scale.getRawOrdinalNumber(l.tickValue)
s[u] = 1
}),
function (l) {
return !s.hasOwnProperty(t.get(o, l))
}
)
}
}
}
function nL(r, t) {
var e = r.getExtent(),
n = Math.abs(e[1] - e[0]) / r.scale.count()
isNaN(n) && (n = 0)
for (
var i = t.count(), a = Math.max(1, Math.round(i / 5)), o = 0;
o < i;
o += a
)
if (Ih.getSymbolSize(t, o)[r.isHorizontal() ? 1 : 0] * 1.5 > n) return !1
return !0
}
function iL(r, t) {
return isNaN(r) || isNaN(t)
}
function aL(r) {
for (var t = r.length / 2; t > 0 && iL(r[t * 2 - 2], r[t * 2 - 1]); t--);
return t - 1
}
function Ry(r, t) {
return [r[t * 2], r[t * 2 + 1]]
}
function oL(r, t, e) {
for (
var n = r.length / 2, i = e === 'x' ? 0 : 1, a, o, s = 0, l = -1, u = 0;
u < n;
u++
)
if (((o = r[u * 2 + i]), !(isNaN(o) || isNaN(r[u * 2 + 1 - i])))) {
if (u === 0) {
a = o
continue
}
if ((a <= t && o >= t) || (a >= t && o <= t)) {
l = u
break
}
;(s = u), (a = o)
}
return { range: [s, l], t: (t - a) / (o - a) }
}
function Ey(r) {
if (r.get(['endLabel', 'show'])) return !0
for (var t = 0; t < pe.length; t++)
if (r.get([pe[t], 'endLabel', 'show'])) return !0
return !1
}
function Eh(r, t, e, n) {
if (Rh(t, 'cartesian2d')) {
var i = n.getModel('endLabel'),
a = i.get('valueAnimation'),
o = n.getData(),
s = { lastFrameIndex: 0 },
l = Ey(n)
? function (v, d) {
r._endLabelOnDuring(v, d, o, s, a, i, t)
}
: null,
u = t.getBaseAxis().isHorizontal(),
f = Ay(
t,
e,
n,
function () {
var v = r._endLabel
v &&
e &&
s.originalX != null &&
v.attr({ x: s.originalX, y: s.originalY })
},
l
)
if (!n.get('clip', !0)) {
var h = f.shape,
c = Math.max(h.width, h.height)
u ? ((h.y -= c), (h.height += c * 2)) : ((h.x -= c), (h.width += c * 2))
}
return l && l(1, f), f
} else return My(t, e, n)
}
function sL(r, t) {
var e = t.getBaseAxis(),
n = e.isHorizontal(),
i = e.inverse,
a = n ? (i ? 'right' : 'left') : 'center',
o = n ? 'middle' : i ? 'top' : 'bottom'
return {
normal: {
align: r.get('align') || a,
verticalAlign: r.get('verticalAlign') || o
}
}
}
var lL = (function (r) {
B(t, r)
function t() {
return (r !== null && r.apply(this, arguments)) || this
}
return (
(t.prototype.init = function () {
var e = new At(),
n = new YI()
this.group.add(n.group), (this._symbolDraw = n), (this._lineGroup = e)
}),
(t.prototype.render = function (e, n, i) {
var a = this,
o = e.coordinateSystem,
s = this.group,
l = e.getData(),
u = e.getModel('lineStyle'),
f = e.getModel('areaStyle'),
h = l.getLayout('points') || [],
c = o.type === 'polar',
v = this._coordSys,
d = this._symbolDraw,
p = this._polyline,
g = this._polygon,
m = this._lineGroup,
y = e.get('animation'),
_ = !f.isEmpty(),
S = f.get('origin'),
w = by(o, l, S),
x = _ && jI(o, l, w),
b = e.get('showSymbol'),
T = e.get('connectNulls'),
C = b && !c && rL(e, l, o),
M = this._data
M &&
M.eachItemGraphicEl(function (mt, zt) {
mt.__temp && (s.remove(mt), M.setItemGraphicEl(zt, null))
}),
b || d.remove(),
s.add(m)
var D = c ? !1 : e.get('step'),
I
o &&
o.getArea &&
e.get('clip', !0) &&
((I = o.getArea()),
I.width != null
? ((I.x -= 0.1), (I.y -= 0.1), (I.width += 0.2), (I.height += 0.2))
: I.r0 && ((I.r0 -= 0.5), (I.r += 0.5))),
(this._clipShapeForSymbol = I)
var L = eL(l, o, i) || l.getVisual('style')[l.getVisual('drawType')]
if (!(p && v.type === o.type && D === this._step))
b &&
d.updateData(l, {
isIgnore: C,
clipShape: I,
disableAnimation: !0,
getSymbolPoint: function (mt) {
return [h[mt * 2], h[mt * 2 + 1]]
}
}),
y && this._initSymbolLabelAnimation(l, o, I),
D && ((h = zr(h, o, D, T)), x && (x = zr(x, o, D, T))),
(p = this._newPolyline(h)),
_
? (g = this._newPolygon(h, x))
: g && (m.remove(g), (g = this._polygon = null)),
c || this._initOrUpdateEndLabel(e, o, yn(L)),
m.setClipPath(Eh(this, o, !0, e))
else {
_ && !g
? (g = this._newPolygon(h, x))
: g && !_ && (m.remove(g), (g = this._polygon = null)),
c || this._initOrUpdateEndLabel(e, o, yn(L))
var P = m.getClipPath()
if (P) {
var R = Eh(this, o, !1, e)
Wt(P, { shape: R.shape }, e)
} else m.setClipPath(Eh(this, o, !0, e))
b &&
d.updateData(l, {
isIgnore: C,
clipShape: I,
disableAnimation: !0,
getSymbolPoint: function (mt) {
return [h[mt * 2], h[mt * 2 + 1]]
}
}),
(!Dy(this._stackedOnPoints, x) || !Dy(this._points, h)) &&
(y
? this._doUpdateAnimation(l, x, o, i, D, S, T)
: (D && ((h = zr(h, o, D, T)), x && (x = zr(x, o, D, T))),
p.setShape({ points: h }),
g && g.setShape({ points: h, stackedOnPoints: x })))
}
var O = e.getModel('emphasis'),
U = O.get('focus'),
k = O.get('blurScope'),
F = O.get('disabled')
if (
(p.useStyle(
j(u.getLineStyle(), { fill: 'none', stroke: L, lineJoin: 'bevel' })
),
Ko(p, e, 'lineStyle'),
p.style.lineWidth > 0 &&
e.get(['emphasis', 'lineStyle', 'width']) === 'bolder')
) {
var H = p.getState('emphasis').style
H.lineWidth = +p.style.lineWidth + 1
}
;(ct(p).seriesIndex = e.seriesIndex), aa(p, U, k, F)
var $ = Py(e.get('smooth')),
J = e.get('smoothMonotone')
if (
(p.setShape({ smooth: $, smoothMonotone: J, connectNulls: T }), g)
) {
var et = l.getCalculationInfo('stackedOnSeries'),
ft = 0
g.useStyle(
j(f.getAreaStyle(), {
fill: L,
opacity: 0.7,
lineJoin: 'bevel',
decal: l.getVisual('style').decal
})
),
et && (ft = Py(et.get('smooth'))),
g.setShape({
smooth: $,
stackedOnSmooth: ft,
smoothMonotone: J,
connectNulls: T
}),
Ko(g, e, 'areaStyle'),
(ct(g).seriesIndex = e.seriesIndex),
aa(g, U, k, F)
}
var Ct = function (mt) {
a._changePolyState(mt)
}
l.eachItemGraphicEl(function (mt) {
mt && (mt.onHoverStateChange = Ct)
}),
(this._polyline.onHoverStateChange = Ct),
(this._data = l),
(this._coordSys = o),
(this._stackedOnPoints = x),
(this._points = h),
(this._step = D),
(this._valueOrigin = S),
e.get('triggerLineEvent') &&
(this.packEventData(e, p), g && this.packEventData(e, g))
}),
(t.prototype.packEventData = function (e, n) {
ct(n).eventData = {
componentType: 'series',
componentSubType: 'line',
componentIndex: e.componentIndex,
seriesIndex: e.seriesIndex,
seriesName: e.name,
seriesType: 'line'
}
}),
(t.prototype.highlight = function (e, n, i, a) {
var o = e.getData(),
s = Jr(o, a)
if (
(this._changePolyState('emphasis'),
!(s instanceof Array) && s != null && s >= 0)
) {
var l = o.getLayout('points'),
u = o.getItemGraphicEl(s)
if (!u) {
var f = l[s * 2],
h = l[s * 2 + 1]
if (
isNaN(f) ||
isNaN(h) ||
(this._clipShapeForSymbol &&
!this._clipShapeForSymbol.contain(f, h))
)
return
var c = e.get('zlevel'),
v = e.get('z')
;(u = new Ih(o, s)), (u.x = f), (u.y = h), u.setZ(c, v)
var d = u.getSymbolPath().getTextContent()
d && ((d.zlevel = c), (d.z = v), (d.z2 = this._polyline.z2 + 1)),
(u.__temp = !0),
o.setItemGraphicEl(s, u),
u.stopSymbolAnimation(!0),
this.group.add(u)
}
u.highlight()
} else Qe.prototype.highlight.call(this, e, n, i, a)
}),
(t.prototype.downplay = function (e, n, i, a) {
var o = e.getData(),
s = Jr(o, a)
if ((this._changePolyState('normal'), s != null && s >= 0)) {
var l = o.getItemGraphicEl(s)
l &&
(l.__temp
? (o.setItemGraphicEl(s, null), this.group.remove(l))
: l.downplay())
} else Qe.prototype.downplay.call(this, e, n, i, a)
}),
(t.prototype._changePolyState = function (e) {
var n = this._polygon
Zd(this._polyline, e), n && Zd(n, e)
}),
(t.prototype._newPolyline = function (e) {
var n = this._polyline
return (
n && this._lineGroup.remove(n),
(n = new qI({
shape: { points: e },
segmentIgnoreThreshold: 2,
z2: 10
})),
this._lineGroup.add(n),
(this._polyline = n),
n
)
}),
(t.prototype._newPolygon = function (e, n) {
var i = this._polygon
return (
i && this._lineGroup.remove(i),
(i = new QI({
shape: { points: e, stackedOnPoints: n },
segmentIgnoreThreshold: 2
})),
this._lineGroup.add(i),
(this._polygon = i),
i
)
}),
(t.prototype._initSymbolLabelAnimation = function (e, n, i) {
var a,
o,
s = n.getBaseAxis(),
l = s.inverse
n.type === 'cartesian2d'
? ((a = s.isHorizontal()), (o = !1))
: n.type === 'polar' && ((a = s.dim === 'angle'), (o = !0))
var u = e.hostModel,
f = u.get('animationDuration')
Q(f) && (f = f(null))
var h = u.get('animationDelay') || 0,
c = Q(h) ? h(null) : h
e.eachItemGraphicEl(function (v, d) {
var p = v
if (p) {
var g = [v.x, v.y],
m = void 0,
y = void 0,
_ = void 0
if (i)
if (o) {
var S = i,
w = n.pointToCoord(g)
a
? ((m = S.startAngle),
(y = S.endAngle),
(_ = (-w[1] / 180) * Math.PI))
: ((m = S.r0), (y = S.r), (_ = w[0]))
} else {
var x = i
a
? ((m = x.x), (y = x.x + x.width), (_ = v.x))
: ((m = x.y + x.height), (y = x.y), (_ = v.y))
}
var b = y === m ? 0 : (_ - m) / (y - m)
l && (b = 1 - b)
var T = Q(h) ? h(d) : f * b + c,
C = p.getSymbolPath(),
M = C.getTextContent()
p.attr({ scaleX: 0, scaleY: 0 }),
p.animateTo(
{ scaleX: 1, scaleY: 1 },
{ duration: 200, setToFinal: !0, delay: T }
),
M &&
M.animateFrom(
{ style: { opacity: 0 } },
{ duration: 300, delay: T }
),
(C.disableLabelAnimation = !0)
}
})
}),
(t.prototype._initOrUpdateEndLabel = function (e, n, i) {
var a = e.getModel('endLabel')
if (Ey(e)) {
var o = e.getData(),
s = this._polyline,
l = o.getLayout('points')
if (!l) {
s.removeTextContent(), (this._endLabel = null)
return
}
var u = this._endLabel
u ||
((u = this._endLabel = new Et({ z2: 200 })),
(u.ignoreClip = !0),
s.setTextContent(this._endLabel),
(s.disableLabelAnimation = !0))
var f = aL(l)
f >= 0 &&
(ha(
s,
va(e, 'endLabel'),
{
inheritColor: i,
labelFetcher: e,
labelDataIndex: f,
defaultText: function (h, c, v) {
return v != null ? Sy(o, v) : Dh(o, h)
},
enableTextSetter: !0
},
sL(a, n)
),
(s.textConfig.position = null))
} else
this._endLabel &&
(this._polyline.removeTextContent(), (this._endLabel = null))
}),
(t.prototype._endLabelOnDuring = function (e, n, i, a, o, s, l) {
var u = this._endLabel,
f = this._polyline
if (u) {
e < 1 &&
a.originalX == null &&
((a.originalX = u.x), (a.originalY = u.y))
var h = i.getLayout('points'),
c = i.hostModel,
v = c.get('connectNulls'),
d = s.get('precision'),
p = s.get('distance') || 0,
g = l.getBaseAxis(),
m = g.isHorizontal(),
y = g.inverse,
_ = n.shape,
S = y ? (m ? _.x : _.y + _.height) : m ? _.x + _.width : _.y,
w = (m ? p : 0) * (y ? -1 : 1),
x = (m ? 0 : -p) * (y ? -1 : 1),
b = m ? 'x' : 'y',
T = oL(h, S, b),
C = T.range,
M = C[1] - C[0],
D = void 0
if (M >= 1) {
if (M > 1 && !v) {
var I = Ry(h, C[0])
u.attr({ x: I[0] + w, y: I[1] + x }),
o && (D = c.getRawValue(C[0]))
} else {
var I = f.getPointOn(S, b)
I && u.attr({ x: I[0] + w, y: I[1] + x })
var L = c.getRawValue(C[0]),
P = c.getRawValue(C[1])
o && (D = ad(i, d, L, P, T.t))
}
a.lastFrameIndex = C[0]
} else {
var R = e === 1 || a.lastFrameIndex > 0 ? C[0] : 0,
I = Ry(h, R)
o && (D = c.getRawValue(R)), u.attr({ x: I[0] + w, y: I[1] + x })
}
o && si(u).setLabelText(D)
}
}),
(t.prototype._doUpdateAnimation = function (e, n, i, a, o, s, l) {
var u = this._polyline,
f = this._polygon,
h = e.hostModel,
c = XI(
this._data,
e,
this._stackedOnPoints,
n,
this._coordSys,
i,
this._valueOrigin
),
v = c.current,
d = c.stackedOnCurrent,
p = c.next,
g = c.stackedOnNext
if (
(o &&
((v = zr(c.current, i, o, l)),
(d = zr(c.stackedOnCurrent, i, o, l)),
(p = zr(c.next, i, o, l)),
(g = zr(c.stackedOnNext, i, o, l))),
Ly(v, p) > 3e3 || (f && Ly(d, g) > 3e3))
) {
u.stopAnimation(),
u.setShape({ points: p }),
f &&
(f.stopAnimation(), f.setShape({ points: p, stackedOnPoints: g }))
return
}
;(u.shape.__points = c.current), (u.shape.points = v)
var m = { shape: { points: p } }
c.current !== v && (m.shape.__points = c.next),
u.stopAnimation(),
kt(u, m, h),
f &&
(f.setShape({ points: v, stackedOnPoints: d }),
f.stopAnimation(),
kt(f, { shape: { stackedOnPoints: g } }, h),
u.shape.points !== f.shape.points &&
(f.shape.points = u.shape.points))
for (var y = [], _ = c.status, S = 0; S < _.length; S++) {
var w = _[S].cmd
if (w === '=') {
var x = e.getItemGraphicEl(_[S].idx1)
x && y.push({ el: x, ptIdx: S })
}
}
u.animators &&
u.animators.length &&
u.animators[0].during(function () {
f && f.dirtyShape()
for (var b = u.shape.__points, T = 0; T < y.length; T++) {
var C = y[T].el,
M = y[T].ptIdx * 2
;(C.x = b[M]), (C.y = b[M + 1]), C.markRedraw()
}
})
}),
(t.prototype.remove = function (e) {
var n = this.group,
i = this._data
this._lineGroup.removeAll(),
this._symbolDraw.remove(!0),
i &&
i.eachItemGraphicEl(function (a, o) {
a.__temp && (n.remove(a), i.setItemGraphicEl(o, null))
}),
(this._polyline =
this._polygon =
this._coordSys =
this._points =
this._stackedOnPoints =
this._endLabel =
this._data =
null)
}),
(t.type = 'line'),
t
)
})(Qe),
uL = lL
function fL(r, t) {
return {
seriesType: r,
plan: Yf(),
reset: function (e) {
var n = e.getData(),
i = e.coordinateSystem,
a = e.pipelineContext,
o = t || a.large
if (!!i) {
var s = G(i.dimensions, function (v) {
return n.mapDimension(v)
}).slice(0, 2),
l = s.length,
u = n.getCalculationInfo('stackResultDimension')
Si(n, s[0]) && (s[0] = u), Si(n, s[1]) && (s[1] = u)
var f = n.getStore(),
h = n.getDimensionIndex(s[0]),
c = n.getDimensionIndex(s[1])
return (
l && {
progress: function (v, d) {
for (
var p = v.end - v.start,
g = o && gr(p * l),
m = [],
y = [],
_ = v.start,
S = 0;
_ < v.end;
_++
) {
var w = void 0
if (l === 1) {
var x = f.get(h, _)
w = i.dataToPoint(x, null, y)
} else
(m[0] = f.get(h, _)),
(m[1] = f.get(c, _)),
(w = i.dataToPoint(m, null, y))
o
? ((g[S++] = w[0]), (g[S++] = w[1]))
: d.setItemLayout(_, w.slice())
}
o && d.setLayout('points', g)
}
}
)
}
}
}
}
var hL = {
average: function (r) {
for (var t = 0, e = 0, n = 0; n < r.length; n++)
isNaN(r[n]) || ((t += r[n]), e++)
return e === 0 ? NaN : t / e
},
sum: function (r) {
for (var t = 0, e = 0; e < r.length; e++) t += r[e] || 0
return t
},
max: function (r) {
for (var t = -1 / 0, e = 0; e < r.length; e++) r[e] > t && (t = r[e])
return isFinite(t) ? t : NaN
},
min: function (r) {
for (var t = 1 / 0, e = 0; e < r.length; e++) r[e] < t && (t = r[e])
return isFinite(t) ? t : NaN
},
nearest: function (r) {
return r[0]
}
},
vL = function (r) {
return Math.round(r.length / 2)
}
function Oy(r) {
return {
seriesType: r,
reset: function (t, e, n) {
var i = t.getData(),
a = t.get('sampling'),
o = t.coordinateSystem,
s = i.count()
if (s > 10 && o.type === 'cartesian2d' && a) {
var l = o.getBaseAxis(),
u = o.getOtherAxis(l),
f = l.getExtent(),
h = n.getDevicePixelRatio(),
c = Math.abs(f[1] - f[0]) * (h || 1),
v = Math.round(s / c)
if (isFinite(v) && v > 1) {
a === 'lttb' &&
t.setData(i.lttbDownSample(i.mapDimension(u.dim), 1 / v))
var d = void 0
W(a) ? (d = hL[a]) : Q(a) && (d = a),
d && t.setData(i.downSample(i.mapDimension(u.dim), 1 / v, d, vL))
}
}
}
}
}
function cL(r) {
r.registerChartView(uL),
r.registerSeriesModel(GI),
r.registerLayout(fL('line', !0)),
r.registerVisual({
seriesType: 'line',
reset: function (t) {
var e = t.getData(),
n = t.getModel('lineStyle').getLineStyle()
n && !n.stroke && (n.stroke = e.getVisual('style').fill),
e.setVisual('legendLineStyle', n)
}
}),
r.registerProcessor(r.PRIORITY.PROCESSOR.STATISTIC, Oy('line'))
}
var ky = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (e.type = t.type), e
}
return (
(t.prototype.getInitialData = function (e, n) {
return mh(null, this, { useEncodeDefaulter: !0 })
}),
(t.prototype.getMarkerPosition = function (e) {
var n = this.coordinateSystem
if (n && n.clampData) {
var i = n.dataToPoint(n.clampData(e)),
a = this.getData(),
o = a.getLayout('offset'),
s = a.getLayout('size'),
l = n.getBaseAxis().isHorizontal() ? 0 : 1
return (i[l] += o + s / 2), i
}
return [NaN, NaN]
}),
(t.type = 'series.__base_bar__'),
(t.defaultOption = {
z: 2,
coordinateSystem: 'cartesian2d',
legendHoverLink: !0,
barMinHeight: 0,
barMinAngle: 0,
large: !1,
largeThreshold: 400,
progressive: 3e3,
progressiveChunkMode: 'mod'
}),
t
)
})(Er)
Er.registerClass(ky)
var By = ky,
dL = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (e.type = t.type), e
}
return (
(t.prototype.getInitialData = function () {
return mh(null, this, {
useEncodeDefaulter: !0,
createInvertedIndices: !!this.get('realtimeSort', !0) || null
})
}),
(t.prototype.getProgressive = function () {
return this.get('large') ? this.get('progressive') : !1
}),
(t.prototype.getProgressiveThreshold = function () {
var e = this.get('progressiveThreshold'),
n = this.get('largeThreshold')
return n > e && (e = n), e
}),
(t.prototype.brushSelector = function (e, n, i) {
return i.rect(n.getItemLayout(e))
}),
(t.type = 'series.bar'),
(t.dependencies = ['grid', 'polar']),
(t.defaultOption = cs(By.defaultOption, {
clip: !0,
roundCap: !1,
showBackground: !1,
backgroundStyle: {
color: 'rgba(180, 180, 180, 0.2)',
borderColor: null,
borderWidth: 0,
borderType: 'solid',
borderRadius: 0,
shadowBlur: 0,
shadowColor: null,
shadowOffsetX: 0,
shadowOffsetY: 0,
opacity: 1
},
select: { itemStyle: { borderColor: '#212121' } },
realtimeSort: !1
})),
t
)
})(By),
pL = dL,
gL = (function () {
function r() {
;(this.cx = 0),
(this.cy = 0),
(this.r0 = 0),
(this.r = 0),
(this.startAngle = 0),
(this.endAngle = Math.PI * 2),
(this.clockwise = !0)
}
return r
})(),
mL = (function (r) {
B(t, r)
function t(e) {
var n = r.call(this, e) || this
return (n.type = 'sausage'), n
}
return (
(t.prototype.getDefaultShape = function () {
return new gL()
}),
(t.prototype.buildPath = function (e, n) {
var i = n.cx,
a = n.cy,
o = Math.max(n.r0 || 0, 0),
s = Math.max(n.r, 0),
l = (s - o) * 0.5,
u = o + l,
f = n.startAngle,
h = n.endAngle,
c = n.clockwise,
v = Math.PI * 2,
d = c ? h - f < v : f - h < v
d || (f = h - (c ? v : -v))
var p = Math.cos(f),
g = Math.sin(f),
m = Math.cos(h),
y = Math.sin(h)
d
? (e.moveTo(p * o + i, g * o + a),
e.arc(p * u + i, g * u + a, l, -Math.PI + f, f, !c))
: e.moveTo(p * s + i, g * s + a),
e.arc(i, a, s, f, h, !c),
e.arc(m * u + i, y * u + a, l, h - Math.PI * 2, h - Math.PI, !c),
o !== 0 && e.arc(i, a, o, h, f, c)
}),
t
)
})(st),
Ny = mL
function yL(r, t) {
t = t || {}
var e = t.isRoundCap
return function (n, i, a) {
var o = i.position
if (!o || o instanceof Array) return Oo(n, i, a)
var s = r(o),
l = i.distance != null ? i.distance : 5,
u = this.shape,
f = u.cx,
h = u.cy,
c = u.r,
v = u.r0,
d = (c + v) / 2,
p = u.startAngle,
g = u.endAngle,
m = (p + g) / 2,
y = e ? Math.abs(c - v) / 2 : 0,
_ = Math.cos,
S = Math.sin,
w = f + c * _(p),
x = h + c * S(p),
b = 'left',
T = 'top'
switch (s) {
case 'startArc':
;(w = f + (v - l) * _(m)),
(x = h + (v - l) * S(m)),
(b = 'center'),
(T = 'top')
break
case 'insideStartArc':
;(w = f + (v + l) * _(m)),
(x = h + (v + l) * S(m)),
(b = 'center'),
(T = 'bottom')
break
case 'startAngle':
;(w = f + d * _(p) + ul(p, l + y, !1)),
(x = h + d * S(p) + fl(p, l + y, !1)),
(b = 'right'),
(T = 'middle')
break
case 'insideStartAngle':
;(w = f + d * _(p) + ul(p, -l + y, !1)),
(x = h + d * S(p) + fl(p, -l + y, !1)),
(b = 'left'),
(T = 'middle')
break
case 'middle':
;(w = f + d * _(m)), (x = h + d * S(m)), (b = 'center'), (T = 'middle')
break
case 'endArc':
;(w = f + (c + l) * _(m)),
(x = h + (c + l) * S(m)),
(b = 'center'),
(T = 'bottom')
break
case 'insideEndArc':
;(w = f + (c - l) * _(m)),
(x = h + (c - l) * S(m)),
(b = 'center'),
(T = 'top')
break
case 'endAngle':
;(w = f + d * _(g) + ul(g, l + y, !0)),
(x = h + d * S(g) + fl(g, l + y, !0)),
(b = 'left'),
(T = 'middle')
break
case 'insideEndAngle':
;(w = f + d * _(g) + ul(g, -l + y, !0)),
(x = h + d * S(g) + fl(g, -l + y, !0)),
(b = 'right'),
(T = 'middle')
break
default:
return Oo(n, i, a)
}
return (
(n = n || {}),
(n.x = w),
(n.y = x),
(n.align = b),
(n.verticalAlign = T),
n
)
}
}
function _L(r, t, e, n) {
if (dt(n)) {
r.setTextConfig({ rotation: n })
return
} else if (z(t)) {
r.setTextConfig({ rotation: 0 })
return
}
var i = r.shape,
a = i.clockwise ? i.startAngle : i.endAngle,
o = i.clockwise ? i.endAngle : i.startAngle,
s = (a + o) / 2,
l,
u = e(t)
switch (u) {
case 'startArc':
case 'insideStartArc':
case 'middle':
case 'insideEndArc':
case 'endArc':
l = s
break
case 'startAngle':
case 'insideStartAngle':
l = a
break
case 'endAngle':
case 'insideEndAngle':
l = o
break
default:
r.setTextConfig({ rotation: 0 })
return
}
var f = Math.PI * 1.5 - l
u === 'middle' && f > Math.PI / 2 && f < Math.PI * 1.5 && (f -= Math.PI),
r.setTextConfig({ rotation: f })
}
function ul(r, t, e) {
return t * Math.sin(r) * (e ? -1 : 1)
}
function fl(r, t, e) {
return t * Math.cos(r) * (e ? 1 : -1)
}
var Oh = Math.max,
kh = Math.min
function SL(r, t) {
var e = r.getArea && r.getArea()
if (Rh(r, 'cartesian2d')) {
var n = r.getBaseAxis()
if (n.type !== 'category' || !n.onBand) {
var i = t.getLayout('bandWidth')
n.isHorizontal()
? ((e.x -= i), (e.width += i * 2))
: ((e.y -= i), (e.height += i * 2))
}
}
return e
}
var xL = (function (r) {
B(t, r)
function t() {
var e = r.call(this) || this
return (e.type = t.type), (e._isFirstFrame = !0), e
}
return (
(t.prototype.render = function (e, n, i, a) {
;(this._model = e),
this._removeOnRenderedListener(i),
this._updateDrawMode(e)
var o = e.get('coordinateSystem')
;(o === 'cartesian2d' || o === 'polar') &&
((this._progressiveEls = null),
this._isLargeDraw
? this._renderLarge(e, n, i)
: this._renderNormal(e, n, i, a))
}),
(t.prototype.incrementalPrepareRender = function (e) {
this._clear(), this._updateDrawMode(e), this._updateLargeClip(e)
}),
(t.prototype.incrementalRender = function (e, n) {
;(this._progressiveEls = []), this._incrementalRenderLarge(e, n)
}),
(t.prototype.eachRendered = function (e) {
hs(this._progressiveEls || this.group, e)
}),
(t.prototype._updateDrawMode = function (e) {
var n = e.pipelineContext.large
;(this._isLargeDraw == null || n !== this._isLargeDraw) &&
((this._isLargeDraw = n), this._clear())
}),
(t.prototype._renderNormal = function (e, n, i, a) {
var o = this.group,
s = e.getData(),
l = this._data,
u = e.coordinateSystem,
f = u.getBaseAxis(),
h
u.type === 'cartesian2d'
? (h = f.isHorizontal())
: u.type === 'polar' && (h = f.dim === 'angle')
var c = e.isAnimationEnabled() ? e : null,
v = wL(e, u)
v && this._enableRealtimeSort(v, s, i)
var d = e.get('clip', !0) || v,
p = SL(u, s)
o.removeClipPath()
var g = e.get('roundCap', !0),
m = e.get('showBackground', !0),
y = e.getModel('backgroundStyle'),
_ = y.get('borderRadius') || 0,
S = [],
w = this._backgroundEls,
x = a && a.isInitSort,
b = a && a.type === 'changeAxisOrder'
function T(D) {
var I = hl[u.type](s, D),
L = IL(u, h, I)
return (
L.useStyle(y.getItemStyle()),
u.type === 'cartesian2d' && L.setShape('r', _),
(S[D] = L),
L
)
}
s.diff(l)
.add(function (D) {
var I = s.getItemModel(D),
L = hl[u.type](s, D, I)
if ((m && T(D), !(!s.hasValue(D) || !Hy[u.type](L)))) {
var P = !1
d && (P = Fy[u.type](p, L))
var R = zy[u.type](e, s, D, L, h, c, f.model, !1, g)
v && (R.forceLabelAnimation = !0),
Uy(R, s, D, I, L, e, h, u.type === 'polar'),
x
? R.attr({ shape: L })
: v
? Vy(v, c, R, L, D, h, !1, !1)
: Wt(R, { shape: L }, e, D),
s.setItemGraphicEl(D, R),
o.add(R),
(R.ignore = P)
}
})
.update(function (D, I) {
var L = s.getItemModel(D),
P = hl[u.type](s, D, L)
if (m) {
var R = void 0
w.length === 0
? (R = T(I))
: ((R = w[I]),
R.useStyle(y.getItemStyle()),
u.type === 'cartesian2d' && R.setShape('r', _),
(S[D] = R))
var O = hl[u.type](s, D),
U = Xy(h, O, u)
kt(R, { shape: U }, c, D)
}
var k = l.getItemGraphicEl(I)
if (!s.hasValue(D) || !Hy[u.type](P)) {
o.remove(k)
return
}
var F = !1
if (
(d && ((F = Fy[u.type](p, P)), F && o.remove(k)),
k ? lf(k) : (k = zy[u.type](e, s, D, P, h, c, f.model, !!k, g)),
v && (k.forceLabelAnimation = !0),
b)
) {
var H = k.getTextContent()
if (H) {
var $ = si(H)
$.prevValue != null && ($.prevValue = $.value)
}
} else Uy(k, s, D, L, P, e, h, u.type === 'polar')
x
? k.attr({ shape: P })
: v
? Vy(v, c, k, P, D, h, !0, b)
: kt(k, { shape: P }, e, D, null),
s.setItemGraphicEl(D, k),
(k.ignore = F),
o.add(k)
})
.remove(function (D) {
var I = l.getItemGraphicEl(D)
I && as(I, e, D)
})
.execute()
var C = this._backgroundGroup || (this._backgroundGroup = new At())
C.removeAll()
for (var M = 0; M < S.length; ++M) C.add(S[M])
o.add(C), (this._backgroundEls = S), (this._data = s)
}),
(t.prototype._renderLarge = function (e, n, i) {
this._clear(), Zy(e, this.group), this._updateLargeClip(e)
}),
(t.prototype._incrementalRenderLarge = function (e, n) {
this._removeBackground(), Zy(n, this.group, this._progressiveEls, !0)
}),
(t.prototype._updateLargeClip = function (e) {
var n = e.get('clip', !0) && JI(e.coordinateSystem, !1, e),
i = this.group
n ? i.setClipPath(n) : i.removeClipPath()
}),
(t.prototype._enableRealtimeSort = function (e, n, i) {
var a = this
if (!!n.count()) {
var o = e.baseAxis
if (this._isFirstFrame)
this._dispatchInitSort(n, e, i), (this._isFirstFrame = !1)
else {
var s = function (l) {
var u = n.getItemGraphicEl(l),
f = u && u.shape
return (f && Math.abs(o.isHorizontal() ? f.height : f.width)) || 0
}
;(this._onRendered = function () {
a._updateSortWithinSameData(n, s, o, i)
}),
i.getZr().on('rendered', this._onRendered)
}
}
}),
(t.prototype._dataSort = function (e, n, i) {
var a = []
return (
e.each(e.mapDimension(n.dim), function (o, s) {
var l = i(s)
;(l = l == null ? NaN : l),
a.push({ dataIndex: s, mappedValue: l, ordinalNumber: o })
}),
a.sort(function (o, s) {
return s.mappedValue - o.mappedValue
}),
{
ordinalNumbers: G(a, function (o) {
return o.ordinalNumber
})
}
)
}),
(t.prototype._isOrderChangedWithinSameData = function (e, n, i) {
for (
var a = i.scale,
o = e.mapDimension(i.dim),
s = Number.MAX_VALUE,
l = 0,
u = a.getOrdinalMeta().categories.length;
l < u;
++l
) {
var f = e.rawIndexOf(o, a.getRawOrdinalNumber(l)),
h = f < 0 ? Number.MIN_VALUE : n(e.indexOfRawIndex(f))
if (h > s) return !0
s = h
}
return !1
}),
(t.prototype._isOrderDifferentInView = function (e, n) {
for (
var i = n.scale,
a = i.getExtent(),
o = Math.max(0, a[0]),
s = Math.min(a[1], i.getOrdinalMeta().categories.length - 1);
o <= s;
++o
)
if (e.ordinalNumbers[o] !== i.getRawOrdinalNumber(o)) return !0
}),
(t.prototype._updateSortWithinSameData = function (e, n, i, a) {
if (!!this._isOrderChangedWithinSameData(e, n, i)) {
var o = this._dataSort(e, i, n)
this._isOrderDifferentInView(o, i) &&
(this._removeOnRenderedListener(a),
a.dispatchAction({
type: 'changeAxisOrder',
componentType: i.dim + 'Axis',
axisId: i.index,
sortInfo: o
}))
}
}),
(t.prototype._dispatchInitSort = function (e, n, i) {
var a = n.baseAxis,
o = this._dataSort(e, a, function (s) {
return e.get(e.mapDimension(n.otherAxis.dim), s)
})
i.dispatchAction({
type: 'changeAxisOrder',
componentType: a.dim + 'Axis',
isInitSort: !0,
axisId: a.index,
sortInfo: o
})
}),
(t.prototype.remove = function (e, n) {
this._clear(this._model), this._removeOnRenderedListener(n)
}),
(t.prototype.dispose = function (e, n) {
this._removeOnRenderedListener(n)
}),
(t.prototype._removeOnRenderedListener = function (e) {
this._onRendered &&
(e.getZr().off('rendered', this._onRendered),
(this._onRendered = null))
}),
(t.prototype._clear = function (e) {
var n = this.group,
i = this._data
e && e.isAnimationEnabled() && i && !this._isLargeDraw
? (this._removeBackground(),
(this._backgroundEls = []),
i.eachItemGraphicEl(function (a) {
as(a, e, ct(a).dataIndex)
}))
: n.removeAll(),
(this._data = null),
(this._isFirstFrame = !0)
}),
(t.prototype._removeBackground = function () {
this.group.remove(this._backgroundGroup), (this._backgroundGroup = null)
}),
(t.type = 'bar'),
t
)
})(Qe),
Fy = {
cartesian2d: function (r, t) {
var e = t.width < 0 ? -1 : 1,
n = t.height < 0 ? -1 : 1
e < 0 && ((t.x += t.width), (t.width = -t.width)),
n < 0 && ((t.y += t.height), (t.height = -t.height))
var i = r.x + r.width,
a = r.y + r.height,
o = Oh(t.x, r.x),
s = kh(t.x + t.width, i),
l = Oh(t.y, r.y),
u = kh(t.y + t.height, a),
f = s < o,
h = u < l
return (
(t.x = f && o > i ? s : o),
(t.y = h && l > a ? u : l),
(t.width = f ? 0 : s - o),
(t.height = h ? 0 : u - l),
e < 0 && ((t.x += t.width), (t.width = -t.width)),
n < 0 && ((t.y += t.height), (t.height = -t.height)),
f || h
)
},
polar: function (r, t) {
var e = t.r0 <= t.r ? 1 : -1
if (e < 0) {
var n = t.r
;(t.r = t.r0), (t.r0 = n)
}
var i = kh(t.r, r.r),
a = Oh(t.r0, r.r0)
;(t.r = i), (t.r0 = a)
var o = i - a < 0
if (e < 0) {
var n = t.r
;(t.r = t.r0), (t.r0 = n)
}
return o
}
},
zy = {
cartesian2d: function (r, t, e, n, i, a, o, s, l) {
var u = new St({ shape: N({}, n), z2: 1 })
if (((u.__dataIndex = e), (u.name = 'item'), a)) {
var f = u.shape,
h = i ? 'height' : 'width'
f[h] = 0
}
return u
},
polar: function (r, t, e, n, i, a, o, s, l) {
var u = !i && l ? Ny : hr,
f = new u({ shape: n, z2: 1 })
f.name = 'item'
var h = Wy(i)
if (((f.calculateTextPosition = yL(h, { isRoundCap: u === Ny })), a)) {
var c = f.shape,
v = i ? 'r' : 'endAngle',
d = {}
;(c[v] = i ? 0 : n.startAngle),
(d[v] = n[v]),
(s ? kt : Wt)(f, { shape: d }, a)
}
return f
}
}
function wL(r, t) {
var e = r.get('realtimeSort', !0),
n = t.getBaseAxis()
if (e && n.type === 'category' && t.type === 'cartesian2d')
return { baseAxis: n, otherAxis: t.getOtherAxis(n) }
}
function Vy(r, t, e, n, i, a, o, s) {
var l, u
a
? ((u = { x: n.x, width: n.width }), (l = { y: n.y, height: n.height }))
: ((u = { y: n.y, height: n.height }), (l = { x: n.x, width: n.width })),
s || (o ? kt : Wt)(e, { shape: l }, t, i, null)
var f = t ? r.baseAxis.model : null
;(o ? kt : Wt)(e, { shape: u }, f, i)
}
function Gy(r, t) {
for (var e = 0; e < t.length; e++) if (!isFinite(r[t[e]])) return !0
return !1
}
var bL = ['x', 'y', 'width', 'height'],
TL = ['cx', 'cy', 'r', 'startAngle', 'endAngle'],
Hy = {
cartesian2d: function (r) {
return !Gy(r, bL)
},
polar: function (r) {
return !Gy(r, TL)
}
},
hl = {
cartesian2d: function (r, t, e) {
var n = r.getItemLayout(t),
i = e ? AL(e, n) : 0,
a = n.width > 0 ? 1 : -1,
o = n.height > 0 ? 1 : -1
return {
x: n.x + (a * i) / 2,
y: n.y + (o * i) / 2,
width: n.width - a * i,
height: n.height - o * i
}
},
polar: function (r, t, e) {
var n = r.getItemLayout(t)
return {
cx: n.cx,
cy: n.cy,
r0: n.r0,
r: n.r,
startAngle: n.startAngle,
endAngle: n.endAngle,
clockwise: n.clockwise
}
}
}
function CL(r) {
return (
r.startAngle != null && r.endAngle != null && r.startAngle === r.endAngle
)
}
function Wy(r) {
return (function (t) {
var e = t ? 'Arc' : 'Angle'
return function (n) {
switch (n) {
case 'start':
case 'insideStart':
case 'end':
case 'insideEnd':
return n + e
default:
return n
}
}
})(r)
}
function Uy(r, t, e, n, i, a, o, s) {
var l = t.getItemVisual(e, 'style')
s || r.setShape('r', n.get(['itemStyle', 'borderRadius']) || 0), r.useStyle(l)
var u = n.getShallow('cursor')
u && r.attr('cursor', u)
var f = s
? o
? i.r >= i.r0
? 'endArc'
: 'startArc'
: i.endAngle >= i.startAngle
? 'endAngle'
: 'startAngle'
: o
? i.height >= 0
? 'bottom'
: 'top'
: i.width >= 0
? 'right'
: 'left',
h = va(n)
ha(r, h, {
labelFetcher: a,
labelDataIndex: e,
defaultText: Dh(a.getData(), e),
inheritColor: l.fill,
defaultOpacity: l.opacity,
defaultOutsidePosition: f
})
var c = r.getTextContent()
if (s && c) {
var v = n.get(['label', 'position'])
;(r.textConfig.inside = v === 'middle' ? !0 : null),
_L(r, v === 'outside' ? f : v, Wy(o), n.get(['label', 'rotate']))
}
BC(c, h, a.getRawValue(e), function (p) {
return Sy(t, p)
})
var d = n.getModel(['emphasis'])
aa(r, d.get('focus'), d.get('blurScope'), d.get('disabled')),
Ko(r, n),
CL(i) &&
((r.style.fill = 'none'),
(r.style.stroke = 'none'),
A(r.states, function (p) {
p.style && (p.style.fill = p.style.stroke = 'none')
}))
}
function AL(r, t) {
var e = r.get(['itemStyle', 'borderColor'])
if (!e || e === 'none') return 0
var n = r.get(['itemStyle', 'borderWidth']) || 0,
i = isNaN(t.width) ? Number.MAX_VALUE : Math.abs(t.width),
a = isNaN(t.height) ? Number.MAX_VALUE : Math.abs(t.height)
return Math.min(n, i, a)
}
var ML = (function () {
function r() {}
return r
})(),
Yy = (function (r) {
B(t, r)
function t(e) {
var n = r.call(this, e) || this
return (n.type = 'largeBar'), n
}
return (
(t.prototype.getDefaultShape = function () {
return new ML()
}),
(t.prototype.buildPath = function (e, n) {
for (
var i = n.points,
a = this.baseDimIdx,
o = 1 - this.baseDimIdx,
s = [],
l = [],
u = this.barWidth,
f = 0;
f < i.length;
f += 3
)
(l[a] = u),
(l[o] = i[f + 2]),
(s[a] = i[f + a]),
(s[o] = i[f + o]),
e.rect(s[0], s[1], l[0], l[1])
}),
t
)
})(st)
function Zy(r, t, e, n) {
var i = r.getData(),
a = i.getLayout('valueAxisHorizontal') ? 1 : 0,
o = i.getLayout('largeDataIndices'),
s = i.getLayout('size'),
l = r.getModel('backgroundStyle'),
u = i.getLayout('largeBackgroundPoints')
if (u) {
var f = new Yy({
shape: { points: u },
incremental: !!n,
silent: !0,
z2: 0
})
;(f.baseDimIdx = a),
(f.largeDataIndices = o),
(f.barWidth = s),
f.useStyle(l.getItemStyle()),
t.add(f),
e && e.push(f)
}
var h = new Yy({
shape: { points: i.getLayout('largePoints') },
incremental: !!n,
z2: 1
})
;(h.baseDimIdx = a),
(h.largeDataIndices = o),
(h.barWidth = s),
t.add(h),
h.useStyle(i.getVisual('style')),
(ct(h).seriesIndex = r.seriesIndex),
r.get('silent') || (h.on('mousedown', $y), h.on('mousemove', $y)),
e && e.push(h)
}
var $y = $f(
function (r) {
var t = this,
e = DL(t, r.offsetX, r.offsetY)
ct(t).dataIndex = e >= 0 ? e : null
},
30,
!1
)
function DL(r, t, e) {
for (
var n = r.baseDimIdx,
i = 1 - n,
a = r.shape.points,
o = r.largeDataIndices,
s = [],
l = [],
u = r.barWidth,
f = 0,
h = a.length / 3;
f < h;
f++
) {
var c = f * 3
if (
((l[n] = u),
(l[i] = a[c + 2]),
(s[n] = a[c + n]),
(s[i] = a[c + i]),
l[i] < 0 && ((s[i] += l[i]), (l[i] = -l[i])),
t >= s[0] && t <= s[0] + l[0] && e >= s[1] && e <= s[1] + l[1])
)
return o[f]
}
return -1
}
function Xy(r, t, e) {
if (Rh(e, 'cartesian2d')) {
var n = t,
i = e.getArea()
return {
x: r ? n.x : i.x,
y: r ? i.y : n.y,
width: r ? n.width : i.width,
height: r ? i.height : n.height
}
} else {
var i = e.getArea(),
a = t
return {
cx: i.cx,
cy: i.cy,
r0: r ? i.r0 : a.r0,
r: r ? i.r : a.r,
startAngle: r ? a.startAngle : 0,
endAngle: r ? a.endAngle : Math.PI * 2
}
}
}
function IL(r, t, e) {
var n = r.type === 'polar' ? hr : St
return new n({ shape: Xy(t, e, r), silent: !0, z2: 0 })
}
var LL = xL
function PL(r) {
r.registerChartView(LL),
r.registerSeriesModel(pL),
r.registerLayout(r.PRIORITY.VISUAL.LAYOUT, lt(H2, 'bar')),
r.registerLayout(r.PRIORITY.VISUAL.PROGRESSIVE_LAYOUT, W2('bar')),
r.registerProcessor(r.PRIORITY.PROCESSOR.STATISTIC, Oy('bar')),
r.registerAction(
{ type: 'changeAxisOrder', event: 'changeAxisOrder', update: 'update' },
function (t, e) {
var n = t.componentType || 'series'
e.eachComponent({ mainType: n, query: t }, function (i) {
t.sortInfo && i.axis.setCategorySortInfo(t.sortInfo)
})
}
)
}
var vl = Math.PI * 2,
qy = Math.PI / 180
function Ky(r, t) {
return cr(r.getBoxLayoutParams(), {
width: t.getWidth(),
height: t.getHeight()
})
}
function Qy(r, t) {
var e = Ky(r, t),
n = r.get('center'),
i = r.get('radius')
z(i) || (i = [0, i]), z(n) || (n = [n, n])
var a = yt(e.width, t.getWidth()),
o = yt(e.height, t.getHeight()),
s = Math.min(a, o),
l = yt(n[0], a) + e.x,
u = yt(n[1], o) + e.y,
f = yt(i[0], s / 2),
h = yt(i[1], s / 2)
return { cx: l, cy: u, r0: f, r: h }
}
function RL(r, t, e) {
t.eachSeriesByType(r, function (n) {
var i = n.getData(),
a = i.mapDimension('value'),
o = Ky(n, e),
s = Qy(n, e),
l = s.cx,
u = s.cy,
f = s.r,
h = s.r0,
c = -n.get('startAngle') * qy,
v = n.get('minAngle') * qy,
d = 0
i.each(a, function (M) {
!isNaN(M) && d++
})
var p = i.getSum(a),
g = (Math.PI / (p || d)) * 2,
m = n.get('clockwise'),
y = n.get('roseType'),
_ = n.get('stillShowZeroSum'),
S = i.getDataExtent(a)
S[0] = 0
var w = vl,
x = 0,
b = c,
T = m ? 1 : -1
if (
(i.setLayout({ viewRect: o, r: f }),
i.each(a, function (M, D) {
var I
if (isNaN(M)) {
i.setItemLayout(D, {
angle: NaN,
startAngle: NaN,
endAngle: NaN,
clockwise: m,
cx: l,
cy: u,
r0: h,
r: y ? NaN : f
})
return
}
y !== 'area' ? (I = p === 0 && _ ? g : M * g) : (I = vl / d),
I < v ? ((I = v), (w -= v)) : (x += M)
var L = b + T * I
i.setItemLayout(D, {
angle: I,
startAngle: b,
endAngle: L,
clockwise: m,
cx: l,
cy: u,
r0: h,
r: y ? Bt(M, S, [h, f]) : f
}),
(b = L)
}),
w < vl && d)
)
if (w <= 0.001) {
var C = vl / d
i.each(a, function (M, D) {
if (!isNaN(M)) {
var I = i.getItemLayout(D)
;(I.angle = C),
(I.startAngle = c + T * D * C),
(I.endAngle = c + T * (D + 1) * C)
}
})
} else
(g = w / x),
(b = c),
i.each(a, function (M, D) {
if (!isNaN(M)) {
var I = i.getItemLayout(D),
L = I.angle === v ? v : M * g
;(I.startAngle = b), (I.endAngle = b + T * L), (b += T * L)
}
})
})
}
function EL(r) {
return {
seriesType: r,
reset: function (t, e) {
var n = e.findComponents({ mainType: 'legend' })
if (!(!n || !n.length)) {
var i = t.getData()
i.filterSelf(function (a) {
for (var o = i.getName(a), s = 0; s < n.length; s++)
if (!n[s].isSelected(o)) return !1
return !0
})
}
}
}
}
var OL = Math.PI / 180
function Jy(r, t, e, n, i, a, o, s, l, u) {
if (r.length < 2) return
function f(p) {
for (var g = p.rB, m = g * g, y = 0; y < p.list.length; y++) {
var _ = p.list[y],
S = Math.abs(_.label.y - e),
w = n + _.len,
x = w * w,
b = Math.sqrt((1 - Math.abs((S * S) / m)) * x),
T = t + (b + _.len2) * i,
C = T - _.label.x,
M = _.targetTextWidth - C * i
jy(_, M, !0), (_.label.x = T)
}
}
function h(p) {
for (
var g = { list: [], maxY: 0 }, m = { list: [], maxY: 0 }, y = 0;
y < p.length;
y++
)
if (p[y].labelAlignTo === 'none') {
var _ = p[y],
S = _.label.y > e ? m : g,
w = Math.abs(_.label.y - e)
if (w >= S.maxY) {
var x = _.label.x - t - _.len2 * i,
b = n + _.len,
T = Math.abs(x) < b ? Math.sqrt((w * w) / (1 - (x * x) / b / b)) : b
;(S.rB = T), (S.maxY = w)
}
S.list.push(_)
}
f(g), f(m)
}
for (var c = r.length, v = 0; v < c; v++)
if (r[v].position === 'outer' && r[v].labelAlignTo === 'labelLine') {
var d = r[v].label.x - u
;(r[v].linePoints[1][0] += d), (r[v].label.x = u)
}
my(r, l, l + o) && h(r)
}
function kL(r, t, e, n, i, a, o, s) {
for (
var l = [], u = [], f = Number.MAX_VALUE, h = -Number.MAX_VALUE, c = 0;
c < r.length;
c++
) {
var v = r[c].label
Bh(r[c]) ||
(v.x < t
? ((f = Math.min(f, v.x)), l.push(r[c]))
: ((h = Math.max(h, v.x)), u.push(r[c])))
}
for (var c = 0; c < r.length; c++) {
var d = r[c]
if (!Bh(d) && d.linePoints) {
if (d.labelStyleWidth != null) continue
var v = d.label,
p = d.linePoints,
g = void 0
d.labelAlignTo === 'edge'
? v.x < t
? (g = p[2][0] - d.labelDistance - o - d.edgeDistance)
: (g = o + i - d.edgeDistance - p[2][0] - d.labelDistance)
: d.labelAlignTo === 'labelLine'
? v.x < t
? (g = f - o - d.bleedMargin)
: (g = o + i - h - d.bleedMargin)
: v.x < t
? (g = v.x - o - d.bleedMargin)
: (g = o + i - v.x - d.bleedMargin),
(d.targetTextWidth = g),
jy(d, g)
}
}
Jy(u, t, e, n, 1, i, a, o, s, h), Jy(l, t, e, n, -1, i, a, o, s, f)
for (var c = 0; c < r.length; c++) {
var d = r[c]
if (!Bh(d) && d.linePoints) {
var v = d.label,
p = d.linePoints,
m = d.labelAlignTo === 'edge',
y = v.style.padding,
_ = y ? y[1] + y[3] : 0,
S = v.style.backgroundColor ? 0 : _,
w = d.rect.width + S,
x = p[1][0] - p[2][0]
m
? v.x < t
? (p[2][0] = o + d.edgeDistance + w + d.labelDistance)
: (p[2][0] = o + i - d.edgeDistance - w - d.labelDistance)
: (v.x < t
? (p[2][0] = v.x + d.labelDistance)
: (p[2][0] = v.x - d.labelDistance),
(p[1][0] = p[2][0] + x)),
(p[1][1] = p[2][1] = v.y)
}
}
}
function jy(r, t, e) {
if ((e === void 0 && (e = !1), r.labelStyleWidth == null)) {
var n = r.label,
i = n.style,
a = r.rect,
o = i.backgroundColor,
s = i.padding,
l = s ? s[1] + s[3] : 0,
u = i.overflow,
f = a.width + (o ? 0 : l)
if (t < f || e) {
var h = a.height
if (u && u.match('break')) {
n.setStyle('backgroundColor', null), n.setStyle('width', t - l)
var c = n.getBoundingRect()
n.setStyle('width', Math.ceil(c.width)),
n.setStyle('backgroundColor', o)
} else {
var v = t - l,
d = t < f ? v : e ? (v > r.unconstrainedWidth ? null : v) : null
n.setStyle('width', d)
}
var p = n.getBoundingRect()
a.width = p.width
var g = (n.style.margin || 0) + 2.1
;(a.height = p.height + g), (a.y -= (a.height - h) / 2)
}
}
}
function Bh(r) {
return r.position === 'center'
}
function BL(r) {
var t = r.getData(),
e = [],
n,
i,
a = !1,
o = (r.get('minShowLabelAngle') || 0) * OL,
s = t.getLayout('viewRect'),
l = t.getLayout('r'),
u = s.width,
f = s.x,
h = s.y,
c = s.height
function v(x) {
x.ignore = !0
}
function d(x) {
if (!x.ignore) return !0
for (var b in x.states) if (x.states[b].ignore === !1) return !0
return !1
}
t.each(function (x) {
var b = t.getItemGraphicEl(x),
T = b.shape,
C = b.getTextContent(),
M = b.getTextGuideLine(),
D = t.getItemModel(x),
I = D.getModel('label'),
L = I.get('position') || D.get(['emphasis', 'label', 'position']),
P = I.get('distanceToLabelLine'),
R = I.get('alignTo'),
O = yt(I.get('edgeDistance'), u),
U = I.get('bleedMargin'),
k = D.getModel('labelLine'),
F = k.get('length')
F = yt(F, u)
var H = k.get('length2')
if (((H = yt(H, u)), Math.abs(T.endAngle - T.startAngle) < o)) {
A(C.states, v), (C.ignore = !0)
return
}
if (!!d(C)) {
var $ = (T.startAngle + T.endAngle) / 2,
J = Math.cos($),
et = Math.sin($),
ft,
Ct,
mt,
zt
;(n = T.cx), (i = T.cy)
var Vt = L === 'inside' || L === 'inner'
if (L === 'center') (ft = T.cx), (Ct = T.cy), (zt = 'center')
else {
var It = (Vt ? ((T.r + T.r0) / 2) * J : T.r * J) + n,
bt = (Vt ? ((T.r + T.r0) / 2) * et : T.r * et) + i
if (((ft = It + J * 3), (Ct = bt + et * 3), !Vt)) {
var K = It + J * (F + l - T.r),
it = bt + et * (F + l - T.r),
Ne = K + (J < 0 ? -1 : 1) * H,
Ot = it
R === 'edge'
? (ft = J < 0 ? f + O : f + u - O)
: (ft = Ne + (J < 0 ? -P : P)),
(Ct = Ot),
(mt = [
[It, bt],
[K, it],
[Ne, Ot]
])
}
zt = Vt
? 'center'
: R === 'edge'
? J > 0
? 'right'
: 'left'
: J > 0
? 'left'
: 'right'
}
var _r = Math.PI,
rr = 0,
Ii = I.get('rotate')
if (dt(Ii)) rr = Ii * (_r / 180)
else if (L === 'center') rr = 0
else if (Ii === 'radial' || Ii === !0) {
var cS = J < 0 ? -$ + _r : -$
rr = cS
} else if (Ii === 'tangential' && L !== 'outside' && L !== 'outer') {
var On = Math.atan2(J, et)
On < 0 && (On = _r * 2 + On)
var dS = et > 0
dS && (On = _r + On), (rr = On - _r)
}
if (
((a = !!rr),
(C.x = ft),
(C.y = Ct),
(C.rotation = rr),
C.setStyle({ verticalAlign: 'middle' }),
Vt)
) {
C.setStyle({ align: zt })
var Al = C.states.select
Al && ((Al.x += C.x), (Al.y += C.y))
} else {
var Li = C.getBoundingRect().clone()
Li.applyTransform(C.getComputedTransform())
var zv = (C.style.margin || 0) + 2.1
;(Li.y -= zv / 2),
(Li.height += zv),
e.push({
label: C,
labelLine: M,
position: L,
len: F,
len2: H,
minTurnAngle: k.get('minTurnAngle'),
maxSurfaceAngle: k.get('maxSurfaceAngle'),
surfaceNormal: new Z(J, et),
linePoints: mt,
textAlign: zt,
labelDistance: P,
labelAlignTo: R,
edgeDistance: O,
bleedMargin: U,
rect: Li,
unconstrainedWidth: Li.width,
labelStyleWidth: C.style.width
})
}
b.setTextConfig({ inside: Vt })
}
}),
!a && r.get('avoidLabelOverlap') && kL(e, n, i, l, u, c, f, h)
for (var p = 0; p < e.length; p++) {
var g = e[p],
m = g.label,
y = g.labelLine,
_ = isNaN(m.x) || isNaN(m.y)
if (m) {
m.setStyle({ align: g.textAlign }), _ && (A(m.states, v), (m.ignore = !0))
var S = m.states.select
S && ((S.x += m.x), (S.y += m.y))
}
if (y) {
var w = g.linePoints
_ || !w
? (A(y.states, v), (y.ignore = !0))
: (hy(w, g.minTurnAngle),
PI(w, g.surfaceNormal, g.maxSurfaceAngle),
y.setShape({ points: w }),
(m.__hostTarget.textGuideLineConfig = {
anchor: new Z(w[0][0], w[0][1])
}))
}
}
}
function cl(r, t, e) {
var n = r.get('borderRadius')
if (n == null) return e ? { cornerRadius: 0 } : null
z(n) || (n = [n, n, n, n])
var i = Math.abs(t.r || 0 - t.r0 || 0)
return {
cornerRadius: G(n, function (a) {
return Cr(a, i)
})
}
}
var NL = (function (r) {
B(t, r)
function t(e, n, i) {
var a = r.call(this) || this
a.z2 = 2
var o = new Et()
return a.setTextContent(o), a.updateData(e, n, i, !0), a
}
return (
(t.prototype.updateData = function (e, n, i, a) {
var o = this,
s = e.hostModel,
l = e.getItemModel(n),
u = l.getModel('emphasis'),
f = e.getItemLayout(n),
h = N(cl(l.getModel('itemStyle'), f, !0), f)
if (isNaN(h.startAngle)) {
o.setShape(h)
return
}
if (a) {
o.setShape(h)
var c = s.getShallow('animationType')
s.ecModel.ssr
? (Wt(o, { scaleX: 0, scaleY: 0 }, s, { dataIndex: n, isFrom: !0 }),
(o.originX = h.cx),
(o.originY = h.cy))
: c === 'scale'
? ((o.shape.r = f.r0), Wt(o, { shape: { r: f.r } }, s, n))
: i != null
? (o.setShape({ startAngle: i, endAngle: i }),
Wt(
o,
{ shape: { startAngle: f.startAngle, endAngle: f.endAngle } },
s,
n
))
: ((o.shape.endAngle = f.startAngle),
kt(o, { shape: { endAngle: f.endAngle } }, s, n))
} else lf(o), kt(o, { shape: h }, s, n)
o.useStyle(e.getItemVisual(n, 'style')), Ko(o, l)
var v = (f.startAngle + f.endAngle) / 2,
d = s.get('selectedOffset'),
p = Math.cos(v) * d,
g = Math.sin(v) * d,
m = l.getShallow('cursor')
m && o.attr('cursor', m),
this._updateLabel(s, e, n),
(o.ensureState('emphasis').shape = N(
{ r: f.r + ((u.get('scale') && u.get('scaleSize')) || 0) },
cl(u.getModel('itemStyle'), f)
)),
N(o.ensureState('select'), {
x: p,
y: g,
shape: cl(l.getModel(['select', 'itemStyle']), f)
}),
N(o.ensureState('blur'), {
shape: cl(l.getModel(['blur', 'itemStyle']), f)
})
var y = o.getTextGuideLine(),
_ = o.getTextContent()
y && N(y.ensureState('select'), { x: p, y: g }),
N(_.ensureState('select'), { x: p, y: g }),
aa(this, u.get('focus'), u.get('blurScope'), u.get('disabled'))
}),
(t.prototype._updateLabel = function (e, n, i) {
var a = this,
o = n.getItemModel(i),
s = o.getModel('labelLine'),
l = n.getItemVisual(i, 'style'),
u = l && l.fill,
f = l && l.opacity
ha(a, va(o), {
labelFetcher: n.hostModel,
labelDataIndex: i,
inheritColor: u,
defaultOpacity: f,
defaultText: e.getFormattedLabel(i, 'normal') || n.getName(i)
})
var h = a.getTextContent()
a.setTextConfig({ position: null, rotation: null }), h.attr({ z2: 10 })
var c = e.get(['label', 'position'])
if (c !== 'outside' && c !== 'outer') a.removeTextGuideLine()
else {
var v = this.getTextGuideLine()
v || ((v = new ai()), this.setTextGuideLine(v)),
cy(this, dy(o), {
stroke: u,
opacity: Oi(s.get(['lineStyle', 'opacity']), f, 1)
})
}
}),
t
)
})(hr),
FL = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (e.ignoreLabelLineUpdate = !0), e
}
return (
(t.prototype.render = function (e, n, i, a) {
var o = e.getData(),
s = this._data,
l = this.group,
u
if (!s && o.count() > 0) {
for (
var f = o.getItemLayout(0), h = 1;
isNaN(f && f.startAngle) && h < o.count();
++h
)
f = o.getItemLayout(h)
f && (u = f.startAngle)
}
if (
(this._emptyCircleSector && l.remove(this._emptyCircleSector),
o.count() === 0 && e.get('showEmptyCircle'))
) {
var c = new hr({ shape: Qy(e, i) })
c.useStyle(e.getModel('emptyCircleStyle').getItemStyle()),
(this._emptyCircleSector = c),
l.add(c)
}
o
.diff(s)
.add(function (v) {
var d = new NL(o, v, u)
o.setItemGraphicEl(v, d), l.add(d)
})
.update(function (v, d) {
var p = s.getItemGraphicEl(d)
p.updateData(o, v, u),
p.off('click'),
l.add(p),
o.setItemGraphicEl(v, p)
})
.remove(function (v) {
var d = s.getItemGraphicEl(v)
as(d, e, v)
})
.execute(),
BL(e),
e.get('animationTypeUpdate') !== 'expansion' && (this._data = o)
}),
(t.prototype.dispose = function () {}),
(t.prototype.containPoint = function (e, n) {
var i = n.getData(),
a = i.getItemLayout(0)
if (a) {
var o = e[0] - a.cx,
s = e[1] - a.cy,
l = Math.sqrt(o * o + s * s)
return l <= a.r && l >= a.r0
}
}),
(t.type = 'pie'),
t
)
})(Qe),
zL = FL
function VL(r, t, e) {
t = (z(t) && { coordDimensions: t }) || N({ encodeDefine: r.getEncode() }, t)
var n = r.getSource(),
i = E0(n, t).dimensions,
a = new R0(i, r)
return a.initData(n, e), a
}
var GL = (function () {
function r(t, e) {
;(this._getDataWithEncodedVisual = t), (this._getRawData = e)
}
return (
(r.prototype.getAllNames = function () {
var t = this._getRawData()
return t.mapArray(t.getName)
}),
(r.prototype.containName = function (t) {
var e = this._getRawData()
return e.indexOfName(t) >= 0
}),
(r.prototype.indexOfName = function (t) {
var e = this._getDataWithEncodedVisual()
return e.indexOfName(t)
}),
(r.prototype.getItemVisual = function (t, e) {
var n = this._getDataWithEncodedVisual()
return n.getItemVisual(t, e)
}),
r
)
})(),
HL = GL,
WL = (function (r) {
B(t, r)
function t() {
return (r !== null && r.apply(this, arguments)) || this
}
return (
(t.prototype.init = function (e) {
r.prototype.init.apply(this, arguments),
(this.legendVisualProvider = new HL(
X(this.getData, this),
X(this.getRawData, this)
)),
this._defaultLabelLine(e)
}),
(t.prototype.mergeOption = function () {
r.prototype.mergeOption.apply(this, arguments)
}),
(t.prototype.getInitialData = function () {
return VL(this, {
coordDimensions: ['value'],
encodeDefaulter: lt(dA, this)
})
}),
(t.prototype.getDataParams = function (e) {
var n = this.getData(),
i = r.prototype.getDataParams.call(this, e),
a = []
return (
n.each(n.mapDimension('value'), function (o) {
a.push(o)
}),
(i.percent = Jw(a, e, n.hostModel.get('percentPrecision'))),
i.$vars.push('percent'),
i
)
}),
(t.prototype._defaultLabelLine = function (e) {
Cu(e, 'labelLine', ['show'])
var n = e.labelLine,
i = e.emphasis.labelLine
;(n.show = n.show && e.label.show),
(i.show = i.show && e.emphasis.label.show)
}),
(t.type = 'series.pie'),
(t.defaultOption = {
z: 2,
legendHoverLink: !0,
colorBy: 'data',
center: ['50%', '50%'],
radius: [0, '75%'],
clockwise: !0,
startAngle: 90,
minAngle: 0,
minShowLabelAngle: 0,
selectedOffset: 10,
percentPrecision: 2,
stillShowZeroSum: !0,
left: 0,
top: 0,
right: 0,
bottom: 0,
width: null,
height: null,
label: {
rotate: 0,
show: !0,
overflow: 'truncate',
position: 'outer',
alignTo: 'none',
edgeDistance: '25%',
bleedMargin: 10,
distanceToLabelLine: 5
},
labelLine: {
show: !0,
length: 15,
length2: 15,
smooth: !1,
minTurnAngle: 90,
maxSurfaceAngle: 90,
lineStyle: { width: 1, type: 'solid' }
},
itemStyle: { borderWidth: 1, borderJoin: 'round' },
showEmptyCircle: !0,
emptyCircleStyle: { color: 'lightgray', opacity: 1 },
labelLayout: { hideOverlap: !0 },
emphasis: { scale: !0, scaleSize: 5 },
avoidLabelOverlap: !0,
animationType: 'expansion',
animationDuration: 1e3,
animationTypeUpdate: 'transition',
animationEasingUpdate: 'cubicInOut',
animationDurationUpdate: 500,
animationEasing: 'cubicInOut'
}),
t
)
})(Er),
UL = WL
function YL(r) {
return {
seriesType: r,
reset: function (t, e) {
var n = t.getData()
n.filterSelf(function (i) {
var a = n.mapDimension('value'),
o = n.get(a, i)
return !(dt(o) && !isNaN(o) && o < 0)
})
}
}
}
function ZL(r) {
r.registerChartView(zL),
r.registerSeriesModel(UL),
rD('pie', r.registerAction),
r.registerLayout(lt(RL, 'pie')),
r.registerProcessor(EL('pie')),
r.registerProcessor(YL('pie'))
}
var $L = (function (r) {
B(t, r)
function t() {
return (r !== null && r.apply(this, arguments)) || this
}
return (
(t.type = 'grid'),
(t.dependencies = ['xAxis', 'yAxis']),
(t.layoutMode = 'box'),
(t.defaultOption = {
show: !1,
z: 0,
left: '10%',
top: 60,
right: '10%',
bottom: 70,
containLabel: !1,
backgroundColor: 'rgba(0,0,0,0)',
borderWidth: 1,
borderColor: '#ccc'
}),
t
)
})(_t),
XL = $L,
Nh = (function (r) {
B(t, r)
function t() {
return (r !== null && r.apply(this, arguments)) || this
}
return (
(t.prototype.getCoordSysModel = function () {
return this.getReferringComponents('grid', Xt).models[0]
}),
(t.type = 'cartesian2dAxis'),
t
)
})(_t)
ze(Nh, cI)
var t_ = {
show: !0,
z: 0,
inverse: !1,
name: '',
nameLocation: 'end',
nameRotate: null,
nameTruncate: { maxWidth: null, ellipsis: '...', placeholder: '.' },
nameTextStyle: {},
nameGap: 15,
silent: !1,
triggerEvent: !1,
tooltip: { show: !1 },
axisPointer: {},
axisLine: {
show: !0,
onZero: !0,
onZeroAxisIndex: null,
lineStyle: { color: '#6E7079', width: 1, type: 'solid' },
symbol: ['none', 'none'],
symbolSize: [10, 15]
},
axisTick: { show: !0, inside: !1, length: 5, lineStyle: { width: 1 } },
axisLabel: {
show: !0,
inside: !1,
rotate: 0,
showMinLabel: null,
showMaxLabel: null,
margin: 8,
fontSize: 12
},
splitLine: {
show: !0,
lineStyle: { color: ['#E0E6F1'], width: 1, type: 'solid' }
},
splitArea: {
show: !1,
areaStyle: { color: ['rgba(250,250,250,0.2)', 'rgba(210,219,238,0.2)'] }
}
},
qL = nt(
{
boundaryGap: !0,
deduplication: null,
splitLine: { show: !1 },
axisTick: { alignWithLabel: !1, interval: 'auto' },
axisLabel: { interval: 'auto' }
},
t_
),
Fh = nt(
{
boundaryGap: [0, 0],
axisLine: { show: 'auto' },
axisTick: { show: 'auto' },
splitNumber: 5,
minorTick: { show: !1, splitNumber: 5, length: 3, lineStyle: {} },
minorSplitLine: { show: !1, lineStyle: { color: '#F4F7FD', width: 1 } }
},
t_
),
KL = nt(
{
splitNumber: 6,
axisLabel: {
showMinLabel: !1,
showMaxLabel: !1,
rich: { primary: { fontWeight: 'bold' } }
},
splitLine: { show: !1 }
},
Fh
),
QL = j({ logBase: 10 }, Fh),
JL = { category: qL, value: Fh, time: KL, log: QL },
jL = { value: 1, category: 1, time: 1, log: 1 }
function e_(r, t, e, n) {
A(jL, function (i, a) {
var o = nt(nt({}, JL[a], !0), n, !0),
s = (function (l) {
B(u, l)
function u() {
var f = (l !== null && l.apply(this, arguments)) || this
return (f.type = t + 'Axis.' + a), f
}
return (
(u.prototype.mergeDefaultAndTheme = function (f, h) {
var c = ya(this),
v = c ? _a(f) : {},
d = h.getTheme()
nt(f, d.get(a + 'Axis')),
nt(f, this.getDefaultOption()),
(f.type = r_(f)),
c && hi(f, v, c)
}),
(u.prototype.optionUpdated = function () {
var f = this.option
f.type === 'category' &&
(this.__ordinalMeta = yh.createByAxisModel(this))
}),
(u.prototype.getCategories = function (f) {
var h = this.option
if (h.type === 'category')
return f ? h.data : this.__ordinalMeta.categories
}),
(u.prototype.getOrdinalMeta = function () {
return this.__ordinalMeta
}),
(u.type = t + 'Axis.' + a),
(u.defaultOption = o),
u
)
})(e)
r.registerComponentModel(s)
}),
r.registerSubTypeDefaulter(t + 'Axis', r_)
}
function r_(r) {
return r.type || (r.data ? 'category' : 'value')
}
var tP = (function () {
function r(t) {
;(this.type = 'cartesian'),
(this._dimList = []),
(this._axes = {}),
(this.name = t || '')
}
return (
(r.prototype.getAxis = function (t) {
return this._axes[t]
}),
(r.prototype.getAxes = function () {
return G(
this._dimList,
function (t) {
return this._axes[t]
},
this
)
}),
(r.prototype.getAxesByScale = function (t) {
return (
(t = t.toLowerCase()),
Lt(this.getAxes(), function (e) {
return e.scale.type === t
})
)
}),
(r.prototype.addAxis = function (t) {
var e = t.dim
;(this._axes[e] = t), this._dimList.push(e)
}),
r
)
})(),
eP = tP,
zh = ['x', 'y']
function n_(r) {
return r.type === 'interval' || r.type === 'time'
}
var rP = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (e.type = 'cartesian2d'), (e.dimensions = zh), e
}
return (
(t.prototype.calcAffineTransform = function () {
this._transform = this._invTransform = null
var e = this.getAxis('x').scale,
n = this.getAxis('y').scale
if (!(!n_(e) || !n_(n))) {
var i = e.getExtent(),
a = n.getExtent(),
o = this.dataToPoint([i[0], a[0]]),
s = this.dataToPoint([i[1], a[1]]),
l = i[1] - i[0],
u = a[1] - a[0]
if (!(!l || !u)) {
var f = (s[0] - o[0]) / l,
h = (s[1] - o[1]) / u,
c = o[0] - i[0] * f,
v = o[1] - a[0] * h,
d = (this._transform = [f, 0, 0, h, c, v])
this._invTransform = Lo([], d)
}
}
}),
(t.prototype.getBaseAxis = function () {
return (
this.getAxesByScale('ordinal')[0] ||
this.getAxesByScale('time')[0] ||
this.getAxis('x')
)
}),
(t.prototype.containPoint = function (e) {
var n = this.getAxis('x'),
i = this.getAxis('y')
return (
n.contain(n.toLocalCoord(e[0])) && i.contain(i.toLocalCoord(e[1]))
)
}),
(t.prototype.containData = function (e) {
return (
this.getAxis('x').containData(e[0]) &&
this.getAxis('y').containData(e[1])
)
}),
(t.prototype.containZone = function (e, n) {
var i = this.dataToPoint(e),
a = this.dataToPoint(n),
o = this.getArea(),
s = new vt(i[0], i[1], a[0] - i[0], a[1] - i[1])
return o.intersect(s)
}),
(t.prototype.dataToPoint = function (e, n, i) {
i = i || []
var a = e[0],
o = e[1]
if (
this._transform &&
a != null &&
isFinite(a) &&
o != null &&
isFinite(o)
)
return ue(i, e, this._transform)
var s = this.getAxis('x'),
l = this.getAxis('y')
return (
(i[0] = s.toGlobalCoord(s.dataToCoord(a, n))),
(i[1] = l.toGlobalCoord(l.dataToCoord(o, n))),
i
)
}),
(t.prototype.clampData = function (e, n) {
var i = this.getAxis('x').scale,
a = this.getAxis('y').scale,
o = i.getExtent(),
s = a.getExtent(),
l = i.parse(e[0]),
u = a.parse(e[1])
return (
(n = n || []),
(n[0] = Math.min(
Math.max(Math.min(o[0], o[1]), l),
Math.max(o[0], o[1])
)),
(n[1] = Math.min(
Math.max(Math.min(s[0], s[1]), u),
Math.max(s[0], s[1])
)),
n
)
}),
(t.prototype.pointToData = function (e, n) {
var i = []
if (this._invTransform) return ue(i, e, this._invTransform)
var a = this.getAxis('x'),
o = this.getAxis('y')
return (
(i[0] = a.coordToData(a.toLocalCoord(e[0]), n)),
(i[1] = o.coordToData(o.toLocalCoord(e[1]), n)),
i
)
}),
(t.prototype.getOtherAxis = function (e) {
return this.getAxis(e.dim === 'x' ? 'y' : 'x')
}),
(t.prototype.getArea = function () {
var e = this.getAxis('x').getGlobalExtent(),
n = this.getAxis('y').getGlobalExtent(),
i = Math.min(e[0], e[1]),
a = Math.min(n[0], n[1]),
o = Math.max(e[0], e[1]) - i,
s = Math.max(n[0], n[1]) - a
return new vt(i, a, o, s)
}),
t
)
})(eP),
nP = rP,
iP = (function (r) {
B(t, r)
function t(e, n, i, a, o) {
var s = r.call(this, e, n, i) || this
return (
(s.index = 0), (s.type = a || 'value'), (s.position = o || 'bottom'), s
)
}
return (
(t.prototype.isHorizontal = function () {
var e = this.position
return e === 'top' || e === 'bottom'
}),
(t.prototype.getGlobalExtent = function (e) {
var n = this.getExtent()
return (
(n[0] = this.toGlobalCoord(n[0])),
(n[1] = this.toGlobalCoord(n[1])),
e && n[0] > n[1] && n.reverse(),
n
)
}),
(t.prototype.pointToData = function (e, n) {
return this.coordToData(
this.toLocalCoord(e[this.dim === 'x' ? 0 : 1]),
n
)
}),
(t.prototype.setCategorySortInfo = function (e) {
if (this.type !== 'category') return !1
;(this.model.option.categorySortInfo = e), this.scale.setSortInfo(e)
}),
t
)
})(CI),
aP = iP
function Vh(r, t, e) {
e = e || {}
var n = r.coordinateSystem,
i = t.axis,
a = {},
o = i.getAxesOnZeroOf()[0],
s = i.position,
l = o ? 'onZero' : s,
u = i.dim,
f = n.getRect(),
h = [f.x, f.x + f.width, f.y, f.y + f.height],
c = { left: 0, right: 1, top: 0, bottom: 1, onZero: 2 },
v = t.get('offset') || 0,
d = u === 'x' ? [h[2] - v, h[3] + v] : [h[0] - v, h[1] + v]
if (o) {
var p = o.toGlobalCoord(o.dataToCoord(0))
d[c.onZero] = Math.max(Math.min(p, d[1]), d[0])
}
;(a.position = [u === 'y' ? d[c[l]] : h[0], u === 'x' ? d[c[l]] : h[3]]),
(a.rotation = (Math.PI / 2) * (u === 'x' ? 0 : 1))
var g = { top: -1, bottom: 1, left: -1, right: 1 }
;(a.labelDirection = a.tickDirection = a.nameDirection = g[s]),
(a.labelOffset = o ? d[c[s]] - d[c.onZero] : 0),
t.get(['axisTick', 'inside']) && (a.tickDirection = -a.tickDirection),
Ei(e.labelInside, t.get(['axisLabel', 'inside'])) &&
(a.labelDirection = -a.labelDirection)
var m = t.get(['axisLabel', 'rotate'])
return (a.labelRotate = l === 'top' ? -m : m), (a.z2 = 1), a
}
function i_(r) {
return r.get('coordinateSystem') === 'cartesian2d'
}
function a_(r) {
var t = { xAxisModel: null, yAxisModel: null }
return (
A(t, function (e, n) {
var i = n.replace(/Model$/, ''),
a = r.getReferringComponents(i, Xt).models[0]
t[n] = a
}),
t
)
}
var Gh = Math.log
function oP(r, t, e) {
var n = Va.prototype,
i = n.getTicks.call(e),
a = n.getTicks.call(e, !0),
o = i.length - 1,
s = n.getInterval.call(e),
l = K0(r, t),
u = l.extent,
f = l.fixMin,
h = l.fixMax
if (r.type === 'log') {
var c = Gh(r.base)
u = [Gh(u[0]) / c, Gh(u[1]) / c]
}
r.setExtent(u[0], u[1]),
r.calcNiceExtent({ splitNumber: o, fixMin: f, fixMax: h })
var v = n.getExtent.call(r)
f && (u[0] = v[0]), h && (u[1] = v[1])
var d = n.getInterval.call(r),
p = u[0],
g = u[1]
if (f && h) d = (g - p) / o
else if (f)
for (g = u[0] + d * o; g < u[1] && isFinite(g) && isFinite(u[1]); )
(d = Sh(d)), (g = u[0] + d * o)
else if (h)
for (p = u[1] - d * o; p > u[0] && isFinite(p) && isFinite(u[0]); )
(d = Sh(d)), (p = u[1] - d * o)
else {
var m = r.getTicks().length - 1
m > o && (d = Sh(d))
var y = d * o
;(g = Math.ceil(u[1] / d) * d),
(p = Pt(g - y)),
p < 0 && u[0] >= 0
? ((p = 0), (g = Pt(y)))
: g > 0 && u[1] <= 0 && ((g = 0), (p = -Pt(y)))
}
var _ = (i[0].value - a[0].value) / s,
S = (i[o].value - a[o].value) / s
n.setExtent.call(r, p + d * _, g + d * S),
n.setInterval.call(r, d),
(_ || S) && n.setNiceExtent.call(r, p + d, g - d)
}
var sP = (function () {
function r(t, e, n) {
;(this.type = 'grid'),
(this._coordsMap = {}),
(this._coordsList = []),
(this._axesMap = {}),
(this._axesList = []),
(this.axisPointerEnabled = !0),
(this.dimensions = zh),
this._initCartesian(t, e, n),
(this.model = t)
}
return (
(r.prototype.getRect = function () {
return this._rect
}),
(r.prototype.update = function (t, e) {
var n = this._axesMap
this._updateScale(t, this.model)
function i(o) {
var s,
l = xt(o),
u = l.length
if (!!u) {
for (var f = [], h = u - 1; h >= 0; h--) {
var c = +l[h],
v = o[c],
d = v.model,
p = v.scale
_h(p) && d.get('alignTicks') && d.get('interval') == null
? f.push(v)
: (Q0(p, d), _h(p) && (s = v))
}
f.length &&
(s || ((s = f.pop()), Q0(s.scale, s.model)),
A(f, function (g) {
oP(g.scale, g.model, s.scale)
}))
}
}
i(n.x), i(n.y)
var a = {}
A(n.x, function (o) {
o_(n, 'y', o, a)
}),
A(n.y, function (o) {
o_(n, 'x', o, a)
}),
this.resize(this.model, e)
}),
(r.prototype.resize = function (t, e, n) {
var i = t.getBoxLayoutParams(),
a = !n && t.get('containLabel'),
o = cr(i, { width: e.getWidth(), height: e.getHeight() })
this._rect = o
var s = this._axesList
l(),
a &&
(A(s, function (u) {
if (!u.model.get(['axisLabel', 'inside'])) {
var f = fI(u)
if (f) {
var h = u.isHorizontal() ? 'height' : 'width',
c = u.model.get(['axisLabel', 'margin'])
;(o[h] -= f[h] + c),
u.position === 'top'
? (o.y += f.height + c)
: u.position === 'left' && (o.x += f.width + c)
}
}
}),
l()),
A(this._coordsList, function (u) {
u.calcAffineTransform()
})
function l() {
A(s, function (u) {
var f = u.isHorizontal(),
h = f ? [0, o.width] : [0, o.height],
c = u.inverse ? 1 : 0
u.setExtent(h[c], h[1 - c]), lP(u, f ? o.x : o.y)
})
}
}),
(r.prototype.getAxis = function (t, e) {
var n = this._axesMap[t]
if (n != null) return n[e || 0]
}),
(r.prototype.getAxes = function () {
return this._axesList.slice()
}),
(r.prototype.getCartesian = function (t, e) {
if (t != null && e != null) {
var n = 'x' + t + 'y' + e
return this._coordsMap[n]
}
Y(t) && ((e = t.yAxisIndex), (t = t.xAxisIndex))
for (var i = 0, a = this._coordsList; i < a.length; i++)
if (a[i].getAxis('x').index === t || a[i].getAxis('y').index === e)
return a[i]
}),
(r.prototype.getCartesians = function () {
return this._coordsList.slice()
}),
(r.prototype.convertToPixel = function (t, e, n) {
var i = this._findConvertTarget(e)
return i.cartesian
? i.cartesian.dataToPoint(n)
: i.axis
? i.axis.toGlobalCoord(i.axis.dataToCoord(n))
: null
}),
(r.prototype.convertFromPixel = function (t, e, n) {
var i = this._findConvertTarget(e)
return i.cartesian
? i.cartesian.pointToData(n)
: i.axis
? i.axis.coordToData(i.axis.toLocalCoord(n))
: null
}),
(r.prototype._findConvertTarget = function (t) {
var e = t.seriesModel,
n =
t.xAxisModel ||
(e && e.getReferringComponents('xAxis', Xt).models[0]),
i =
t.yAxisModel ||
(e && e.getReferringComponents('yAxis', Xt).models[0]),
a = t.gridModel,
o = this._coordsList,
s,
l
if (e) (s = e.coordinateSystem), ot(o, s) < 0 && (s = null)
else if (n && i) s = this.getCartesian(n.componentIndex, i.componentIndex)
else if (n) l = this.getAxis('x', n.componentIndex)
else if (i) l = this.getAxis('y', i.componentIndex)
else if (a) {
var u = a.coordinateSystem
u === this && (s = this._coordsList[0])
}
return { cartesian: s, axis: l }
}),
(r.prototype.containPoint = function (t) {
var e = this._coordsList[0]
if (e) return e.containPoint(t)
}),
(r.prototype._initCartesian = function (t, e, n) {
var i = this,
a = this,
o = { left: !1, right: !1, top: !1, bottom: !1 },
s = { x: {}, y: {} },
l = { x: 0, y: 0 }
if (
(e.eachComponent('xAxis', u('x'), this),
e.eachComponent('yAxis', u('y'), this),
!l.x || !l.y)
) {
;(this._axesMap = {}), (this._axesList = [])
return
}
;(this._axesMap = s),
A(s.x, function (f, h) {
A(s.y, function (c, v) {
var d = 'x' + h + 'y' + v,
p = new nP(d)
;(p.master = i),
(p.model = t),
(i._coordsMap[d] = p),
i._coordsList.push(p),
p.addAxis(f),
p.addAxis(c)
})
})
function u(f) {
return function (h, c) {
if (!!Hh(h, t)) {
var v = h.get('position')
f === 'x'
? v !== 'top' &&
v !== 'bottom' &&
(v = o.bottom ? 'top' : 'bottom')
: v !== 'left' &&
v !== 'right' &&
(v = o.left ? 'right' : 'left'),
(o[v] = !0)
var d = new aP(f, lI(h), [0, 0], h.get('type'), v),
p = d.type === 'category'
;(d.onBand = p && h.get('boundaryGap')),
(d.inverse = h.get('inverse')),
(h.axis = d),
(d.model = h),
(d.grid = a),
(d.index = c),
a._axesList.push(d),
(s[f][c] = d),
l[f]++
}
}
}
}),
(r.prototype._updateScale = function (t, e) {
A(this._axesList, function (i) {
if ((i.scale.setExtent(1 / 0, -1 / 0), i.type === 'category')) {
var a = i.model.get('categorySortInfo')
i.scale.setSortInfo(a)
}
}),
t.eachSeries(function (i) {
if (i_(i)) {
var a = a_(i),
o = a.xAxisModel,
s = a.yAxisModel
if (!Hh(o, e) || !Hh(s, e)) return
var l = this.getCartesian(o.componentIndex, s.componentIndex),
u = i.getData(),
f = l.getAxis('x'),
h = l.getAxis('y')
n(u, f), n(u, h)
}
}, this)
function n(i, a) {
A(j0(i, a.dim), function (o) {
a.scale.unionExtentFromData(i, o)
})
}
}),
(r.prototype.getTooltipAxes = function (t) {
var e = [],
n = []
return (
A(this.getCartesians(), function (i) {
var a = t != null && t !== 'auto' ? i.getAxis(t) : i.getBaseAxis(),
o = i.getOtherAxis(a)
ot(e, a) < 0 && e.push(a), ot(n, o) < 0 && n.push(o)
}),
{ baseAxes: e, otherAxes: n }
)
}),
(r.create = function (t, e) {
var n = []
return (
t.eachComponent('grid', function (i, a) {
var o = new r(i, t, e)
;(o.name = 'grid_' + a),
o.resize(i, e, !0),
(i.coordinateSystem = o),
n.push(o)
}),
t.eachSeries(function (i) {
if (!!i_(i)) {
var a = a_(i),
o = a.xAxisModel,
s = a.yAxisModel,
l = o.getCoordSysModel(),
u = l.coordinateSystem
i.coordinateSystem = u.getCartesian(
o.componentIndex,
s.componentIndex
)
}
}),
n
)
}),
(r.dimensions = zh),
r
)
})()
function Hh(r, t) {
return r.getCoordSysModel() === t
}
function o_(r, t, e, n) {
e.getAxesOnZeroOf = function () {
return a ? [a] : []
}
var i = r[t],
a,
o = e.model,
s = o.get(['axisLine', 'onZero']),
l = o.get(['axisLine', 'onZeroAxisIndex'])
if (!s) return
if (l != null) s_(i[l]) && (a = i[l])
else
for (var u in i)
if (i.hasOwnProperty(u) && s_(i[u]) && !n[f(i[u])]) {
a = i[u]
break
}
a && (n[f(a)] = !0)
function f(h) {
return h.dim + '_' + h.index
}
}
function s_(r) {
return r && r.type !== 'category' && r.type !== 'time' && uI(r)
}
function lP(r, t) {
var e = r.getExtent(),
n = e[0] + e[1]
;(r.toGlobalCoord =
r.dim === 'x'
? function (i) {
return i + t
}
: function (i) {
return n - i + t
}),
(r.toLocalCoord =
r.dim === 'x'
? function (i) {
return i - t
}
: function (i) {
return n - i + t
})
}
var uP = sP,
Vr = Math.PI,
Dn = (function () {
function r(t, e) {
;(this.group = new At()),
(this.opt = e),
(this.axisModel = t),
j(e, {
labelOffset: 0,
nameDirection: 1,
tickDirection: 1,
labelDirection: 1,
silent: !0,
handleAutoShown: function () {
return !0
}
})
var n = new At({
x: e.position[0],
y: e.position[1],
rotation: e.rotation
})
n.updateTransform(), (this._transformGroup = n)
}
return (
(r.prototype.hasBuilder = function (t) {
return !!l_[t]
}),
(r.prototype.add = function (t) {
l_[t](this.opt, this.axisModel, this.group, this._transformGroup)
}),
(r.prototype.getGroup = function () {
return this.group
}),
(r.innerTextLayout = function (t, e, n) {
var i = Xc(e - t),
a,
o
return (
Bo(i)
? ((o = n > 0 ? 'top' : 'bottom'), (a = 'center'))
: Bo(i - Vr)
? ((o = n > 0 ? 'bottom' : 'top'), (a = 'center'))
: ((o = 'middle'),
i > 0 && i < Vr
? (a = n > 0 ? 'right' : 'left')
: (a = n > 0 ? 'left' : 'right')),
{ rotation: i, textAlign: a, textVerticalAlign: o }
)
}),
(r.makeAxisEventDataBase = function (t) {
var e = { componentType: t.mainType, componentIndex: t.componentIndex }
return (e[t.mainType + 'Index'] = t.componentIndex), e
}),
(r.isLabelSilent = function (t) {
var e = t.get('tooltip')
return t.get('silent') || !(t.get('triggerEvent') || (e && e.show))
}),
r
)
})(),
l_ = {
axisLine: function (r, t, e, n) {
var i = t.get(['axisLine', 'show'])
if (
(i === 'auto' &&
r.handleAutoShown &&
(i = r.handleAutoShown('axisLine')),
!!i)
) {
var a = t.axis.getExtent(),
o = n.transform,
s = [a[0], 0],
l = [a[1], 0]
o && (ue(s, s, o), ue(l, l, o))
var u = N(
{ lineCap: 'round' },
t.getModel(['axisLine', 'lineStyle']).getLineStyle()
),
f = new cn({
subPixelOptimize: !0,
shape: { x1: s[0], y1: s[1], x2: l[0], y2: l[1] },
style: u,
strokeContainThreshold: r.strokeContainThreshold || 5,
silent: !0,
z2: 1
})
;(f.anid = 'line'), e.add(f)
var h = t.get(['axisLine', 'symbol'])
if (h != null) {
var c = t.get(['axisLine', 'symbolSize'])
W(h) && (h = [h, h]), (W(c) || dt(c)) && (c = [c, c])
var v = Rm(t.get(['axisLine', 'symbolOffset']) || 0, c),
d = c[0],
p = c[1]
A(
[
{ rotate: r.rotation + Math.PI / 2, offset: v[0], r: 0 },
{
rotate: r.rotation - Math.PI / 2,
offset: v[1],
r: Math.sqrt(
(s[0] - l[0]) * (s[0] - l[0]) + (s[1] - l[1]) * (s[1] - l[1])
)
}
],
function (g, m) {
if (h[m] !== 'none' && h[m] != null) {
var y = Or(h[m], -d / 2, -p / 2, d, p, u.stroke, !0),
_ = g.r + g.offset
y.attr({
rotation: g.rotate,
x: s[0] + _ * Math.cos(r.rotation),
y: s[1] - _ * Math.sin(r.rotation),
silent: !0,
z2: 11
}),
e.add(y)
}
}
)
}
}
},
axisTickLabel: function (r, t, e, n) {
var i = vP(e, n, t, r),
a = dP(e, n, t, r)
if (
(hP(t, a, i),
cP(e, n, t, r.tickDirection),
t.get(['axisLabel', 'hideOverlap']))
) {
var o = py(
G(a, function (s) {
return {
label: s,
priority: s.z2,
defaultAttr: { ignore: s.ignore }
}
})
)
yy(o)
}
},
axisName: function (r, t, e, n) {
var i = Ei(r.axisName, t.get('name'))
if (!!i) {
var a = t.get('nameLocation'),
o = r.nameDirection,
s = t.getModel('nameTextStyle'),
l = t.get('nameGap') || 0,
u = t.axis.getExtent(),
f = u[0] > u[1] ? -1 : 1,
h = [
a === 'start'
? u[0] - f * l
: a === 'end'
? u[1] + f * l
: (u[0] + u[1]) / 2,
f_(a) ? r.labelOffset + o * l : 0
],
c,
v = t.get('nameRotate')
v != null && (v = (v * Vr) / 180)
var d
f_(a)
? (c = Dn.innerTextLayout(r.rotation, v != null ? v : r.rotation, o))
: ((c = fP(r.rotation, a, v || 0, u)),
(d = r.axisNameAvailableWidth),
d != null &&
((d = Math.abs(d / Math.sin(c.rotation))),
!isFinite(d) && (d = null)))
var p = s.getFont(),
g = t.get('nameTruncate', !0) || {},
m = g.ellipsis,
y = Ei(r.nameTruncateMaxWidth, g.maxWidth, d),
_ = new Et({
x: h[0],
y: h[1],
rotation: c.rotation,
silent: Dn.isLabelSilent(t),
style: vr(s, {
text: i,
font: p,
overflow: 'truncate',
width: y,
ellipsis: m,
fill:
s.getTextColor() || t.get(['axisLine', 'lineStyle', 'color']),
align: s.get('align') || c.textAlign,
verticalAlign: s.get('verticalAlign') || c.textVerticalAlign
}),
z2: 1
})
if (
(fs({ el: _, componentModel: t, itemName: i }),
(_.__fullText = i),
(_.anid = 'name'),
t.get('triggerEvent'))
) {
var S = Dn.makeAxisEventDataBase(t)
;(S.targetType = 'axisName'), (S.name = i), (ct(_).eventData = S)
}
n.add(_), _.updateTransform(), e.add(_), _.decomposeTransform()
}
}
}
function fP(r, t, e, n) {
var i = Xc(e - r),
a,
o,
s = n[0] > n[1],
l = (t === 'start' && !s) || (t !== 'start' && s)
return (
Bo(i - Vr / 2)
? ((o = l ? 'bottom' : 'top'), (a = 'center'))
: Bo(i - Vr * 1.5)
? ((o = l ? 'top' : 'bottom'), (a = 'center'))
: ((o = 'middle'),
i < Vr * 1.5 && i > Vr / 2
? (a = l ? 'left' : 'right')
: (a = l ? 'right' : 'left')),
{ rotation: i, textAlign: a, textVerticalAlign: o }
)
}
function hP(r, t, e) {
if (!J0(r.axis)) {
var n = r.get(['axisLabel', 'showMinLabel']),
i = r.get(['axisLabel', 'showMaxLabel'])
;(t = t || []), (e = e || [])
var a = t[0],
o = t[1],
s = t[t.length - 1],
l = t[t.length - 2],
u = e[0],
f = e[1],
h = e[e.length - 1],
c = e[e.length - 2]
n === !1
? (Te(a), Te(u))
: u_(a, o) && (n ? (Te(o), Te(f)) : (Te(a), Te(u))),
i === !1
? (Te(s), Te(h))
: u_(l, s) && (i ? (Te(l), Te(c)) : (Te(s), Te(h)))
}
}
function Te(r) {
r && (r.ignore = !0)
}
function u_(r, t) {
var e = r && r.getBoundingRect().clone(),
n = t && t.getBoundingRect().clone()
if (!(!e || !n)) {
var i = cu([])
return (
pu(i, i, -r.rotation),
e.applyTransform($n([], i, r.getLocalTransform())),
n.applyTransform($n([], i, t.getLocalTransform())),
e.intersect(n)
)
}
}
function f_(r) {
return r === 'middle' || r === 'center'
}
function h_(r, t, e, n, i) {
for (var a = [], o = [], s = [], l = 0; l < r.length; l++) {
var u = r[l].coord
;(o[0] = u),
(o[1] = 0),
(s[0] = u),
(s[1] = e),
t && (ue(o, o, t), ue(s, s, t))
var f = new cn({
subPixelOptimize: !0,
shape: { x1: o[0], y1: o[1], x2: s[0], y2: s[1] },
style: n,
z2: 2,
autoBatch: !0,
silent: !0
})
;(f.anid = i + '_' + r[l].tickValue), a.push(f)
}
return a
}
function vP(r, t, e, n) {
var i = e.axis,
a = e.getModel('axisTick'),
o = a.get('show')
if (
(o === 'auto' && n.handleAutoShown && (o = n.handleAutoShown('axisTick')),
!(!o || i.scale.isBlank()))
) {
for (
var s = a.getModel('lineStyle'),
l = n.tickDirection * a.get('length'),
u = i.getTicksCoords(),
f = h_(
u,
t.transform,
l,
j(s.getLineStyle(), {
stroke: e.get(['axisLine', 'lineStyle', 'color'])
}),
'ticks'
),
h = 0;
h < f.length;
h++
)
r.add(f[h])
return f
}
}
function cP(r, t, e, n) {
var i = e.axis,
a = e.getModel('minorTick')
if (!(!a.get('show') || i.scale.isBlank())) {
var o = i.getMinorTicksCoords()
if (!!o.length)
for (
var s = a.getModel('lineStyle'),
l = n * a.get('length'),
u = j(
s.getLineStyle(),
j(e.getModel('axisTick').getLineStyle(), {
stroke: e.get(['axisLine', 'lineStyle', 'color'])
})
),
f = 0;
f < o.length;
f++
)
for (
var h = h_(o[f], t.transform, l, u, 'minorticks_' + f), c = 0;
c < h.length;
c++
)
r.add(h[c])
}
}
function dP(r, t, e, n) {
var i = e.axis,
a = Ei(n.axisLabelShow, e.get(['axisLabel', 'show']))
if (!(!a || i.scale.isBlank())) {
var o = e.getModel('axisLabel'),
s = o.get('margin'),
l = i.getViewLabels(),
u = ((Ei(n.labelRotate, o.get('rotate')) || 0) * Vr) / 180,
f = Dn.innerTextLayout(n.rotation, u, n.labelDirection),
h = e.getCategories && e.getCategories(!0),
c = [],
v = Dn.isLabelSilent(e),
d = e.get('triggerEvent')
return (
A(l, function (p, g) {
var m =
i.scale.type === 'ordinal'
? i.scale.getRawOrdinalNumber(p.tickValue)
: p.tickValue,
y = p.formattedLabel,
_ = p.rawLabel,
S = o
if (h && h[m]) {
var w = h[m]
Y(w) && w.textStyle && (S = new Nt(w.textStyle, o, e.ecModel))
}
var x = S.getTextColor() || e.get(['axisLine', 'lineStyle', 'color']),
b = i.dataToCoord(m),
T = new Et({
x: b,
y: n.labelOffset + n.labelDirection * s,
rotation: f.rotation,
silent: v,
z2: 10 + (p.level || 0),
style: vr(S, {
text: y,
align: S.getShallow('align', !0) || f.textAlign,
verticalAlign:
S.getShallow('verticalAlign', !0) ||
S.getShallow('baseline', !0) ||
f.textVerticalAlign,
fill: Q(x)
? x(
i.type === 'category' ? _ : i.type === 'value' ? m + '' : m,
g
)
: x
})
})
if (((T.anid = 'label_' + m), d)) {
var C = Dn.makeAxisEventDataBase(e)
;(C.targetType = 'axisLabel'),
(C.value = _),
(C.tickIndex = g),
i.type === 'category' && (C.dataIndex = m),
(ct(T).eventData = C)
}
t.add(T),
T.updateTransform(),
c.push(T),
r.add(T),
T.decomposeTransform()
}),
c
)
}
}
var v_ = Dn
function pP(r, t) {
var e = {
axesInfo: {},
seriesInvolved: !1,
coordSysAxesInfo: {},
coordSysMap: {}
}
return gP(e, r, t), e.seriesInvolved && yP(e, r), e
}
function gP(r, t, e) {
var n = t.getComponent('tooltip'),
i = t.getComponent('axisPointer'),
a = i.get('link', !0) || [],
o = []
A(e.getCoordinateSystems(), function (s) {
if (!s.axisPointerEnabled) return
var l = Ya(s.model),
u = (r.coordSysAxesInfo[l] = {})
r.coordSysMap[l] = s
var f = s.model,
h = f.getModel('tooltip', n)
if (
(A(s.getAxes(), lt(p, !1, null)), s.getTooltipAxes && n && h.get('show'))
) {
var c = h.get('trigger') === 'axis',
v = h.get(['axisPointer', 'type']) === 'cross',
d = s.getTooltipAxes(h.get(['axisPointer', 'axis']))
;(c || v) && A(d.baseAxes, lt(p, v ? 'cross' : !0, c)),
v && A(d.otherAxes, lt(p, 'cross', !1))
}
function p(g, m, y) {
var _ = y.model.getModel('axisPointer', i),
S = _.get('show')
if (!(!S || (S === 'auto' && !g && !Yh(_)))) {
m == null && (m = _.get('triggerTooltip')),
(_ = g ? mP(y, h, i, t, g, m) : _)
var w = _.get('snap'),
x = Ya(y.model),
b = m || w || y.type === 'category',
T = (r.axesInfo[x] = {
key: x,
axis: y,
coordSys: s,
axisPointerModel: _,
triggerTooltip: m,
involveSeries: b,
snap: w,
useHandle: Yh(_),
seriesModels: [],
linkGroup: null
})
;(u[x] = T), (r.seriesInvolved = r.seriesInvolved || b)
var C = _P(a, y)
if (C != null) {
var M = o[C] || (o[C] = { axesInfo: {} })
;(M.axesInfo[x] = T), (M.mapper = a[C].mapper), (T.linkGroup = M)
}
}
}
})
}
function mP(r, t, e, n, i, a) {
var o = t.getModel('axisPointer'),
s = [
'type',
'snap',
'lineStyle',
'shadowStyle',
'label',
'animation',
'animationDurationUpdate',
'animationEasingUpdate',
'z'
],
l = {}
A(s, function (c) {
l[c] = tt(o.get(c))
}),
(l.snap = r.type !== 'category' && !!a),
o.get('type') === 'cross' && (l.type = 'line')
var u = l.label || (l.label = {})
if ((u.show == null && (u.show = !1), i === 'cross')) {
var f = o.get(['label', 'show'])
if (((u.show = f != null ? f : !0), !a)) {
var h = (l.lineStyle = o.get('crossStyle'))
h && j(u, h.textStyle)
}
}
return r.model.getModel('axisPointer', new Nt(l, e, n))
}
function yP(r, t) {
t.eachSeries(function (e) {
var n = e.coordinateSystem,
i = e.get(['tooltip', 'trigger'], !0),
a = e.get(['tooltip', 'show'], !0)
!n ||
i === 'none' ||
i === !1 ||
i === 'item' ||
a === !1 ||
e.get(['axisPointer', 'show'], !0) === !1 ||
A(r.coordSysAxesInfo[Ya(n.model)], function (o) {
var s = o.axis
n.getAxis(s.dim) === s &&
(o.seriesModels.push(e),
o.seriesDataCount == null && (o.seriesDataCount = 0),
(o.seriesDataCount += e.getData().count()))
})
})
}
function _P(r, t) {
for (var e = t.model, n = t.dim, i = 0; i < r.length; i++) {
var a = r[i] || {}
if (
Wh(a[n + 'AxisId'], e.id) ||
Wh(a[n + 'AxisIndex'], e.componentIndex) ||
Wh(a[n + 'AxisName'], e.name)
)
return i
}
}
function Wh(r, t) {
return r === 'all' || (z(r) && ot(r, t) >= 0) || r === t
}
function SP(r) {
var t = Uh(r)
if (!!t) {
var e = t.axisPointerModel,
n = t.axis.scale,
i = e.option,
a = e.get('status'),
o = e.get('value')
o != null && (o = n.parse(o))
var s = Yh(e)
a == null && (i.status = s ? 'show' : 'hide')
var l = n.getExtent().slice()
l[0] > l[1] && l.reverse(),
(o == null || o > l[1]) && (o = l[1]),
o < l[0] && (o = l[0]),
(i.value = o),
s && (i.status = t.axis.scale.isBlank() ? 'hide' : 'show')
}
}
function Uh(r) {
var t = (r.ecModel.getComponent('axisPointer') || {}).coordSysAxesInfo
return t && t.axesInfo[Ya(r)]
}
function xP(r) {
var t = Uh(r)
return t && t.axisPointerModel
}
function Yh(r) {
return !!r.get(['handle', 'show'])
}
function Ya(r) {
return r.type + '||' + r.id
}
var c_ = {},
wP = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (e.type = t.type), e
}
return (
(t.prototype.render = function (e, n, i, a) {
this.axisPointerClass && SP(e),
r.prototype.render.apply(this, arguments),
this._doUpdateAxisPointerClass(e, i, !0)
}),
(t.prototype.updateAxisPointer = function (e, n, i, a) {
this._doUpdateAxisPointerClass(e, i, !1)
}),
(t.prototype.remove = function (e, n) {
var i = this._axisPointer
i && i.remove(n)
}),
(t.prototype.dispose = function (e, n) {
this._disposeAxisPointer(n), r.prototype.dispose.apply(this, arguments)
}),
(t.prototype._doUpdateAxisPointerClass = function (e, n, i) {
var a = t.getAxisPointerClass(this.axisPointerClass)
if (!!a) {
var o = xP(e)
o
? (this._axisPointer || (this._axisPointer = new a())).render(
e,
o,
n,
i
)
: this._disposeAxisPointer(n)
}
}),
(t.prototype._disposeAxisPointer = function (e) {
this._axisPointer && this._axisPointer.dispose(e),
(this._axisPointer = null)
}),
(t.registerAxisPointerClass = function (e, n) {
c_[e] = n
}),
(t.getAxisPointerClass = function (e) {
return e && c_[e]
}),
(t.type = 'axis'),
t
)
})(xe),
d_ = wP,
Zh = wt()
function bP(r, t, e, n) {
var i = e.axis
if (!i.scale.isBlank()) {
var a = e.getModel('splitArea'),
o = a.getModel('areaStyle'),
s = o.get('color'),
l = n.coordinateSystem.getRect(),
u = i.getTicksCoords({ tickModel: a, clamp: !0 })
if (!!u.length) {
var f = s.length,
h = Zh(r).splitAreaColors,
c = q(),
v = 0
if (h)
for (var d = 0; d < u.length; d++) {
var p = h.get(u[d].tickValue)
if (p != null) {
v = (p + (f - 1) * d) % f
break
}
}
var g = i.toGlobalCoord(u[0].coord),
m = o.getAreaStyle()
s = z(s) ? s : [s]
for (var d = 1; d < u.length; d++) {
var y = i.toGlobalCoord(u[d].coord),
_ = void 0,
S = void 0,
w = void 0,
x = void 0
i.isHorizontal()
? ((_ = g), (S = l.y), (w = y - _), (x = l.height), (g = _ + w))
: ((_ = l.x), (S = g), (w = l.width), (x = y - S), (g = S + x))
var b = u[d - 1].tickValue
b != null && c.set(b, v),
t.add(
new St({
anid: b != null ? 'area_' + b : null,
shape: { x: _, y: S, width: w, height: x },
style: j({ fill: s[v] }, m),
autoBatch: !0,
silent: !0
})
),
(v = (v + 1) % f)
}
Zh(r).splitAreaColors = c
}
}
}
function TP(r) {
Zh(r).splitAreaColors = null
}
var CP = ['axisLine', 'axisTickLabel', 'axisName'],
AP = ['splitArea', 'splitLine', 'minorSplitLine'],
p_ = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (e.type = t.type), (e.axisPointerClass = 'CartesianAxisPointer'), e
}
return (
(t.prototype.render = function (e, n, i, a) {
this.group.removeAll()
var o = this._axisGroup
if (
((this._axisGroup = new At()),
this.group.add(this._axisGroup),
!!e.get('show'))
) {
var s = e.getCoordSysModel(),
l = Vh(s, e),
u = new v_(
e,
N(
{
handleAutoShown: function (h) {
for (
var c = s.coordinateSystem.getCartesians(), v = 0;
v < c.length;
v++
)
if (_h(c[v].getOtherAxis(e.axis).scale)) return !0
return !1
}
},
l
)
)
A(CP, u.add, u),
this._axisGroup.add(u.getGroup()),
A(
AP,
function (h) {
e.get([h, 'show']) && MP[h](this, this._axisGroup, e, s)
},
this
)
var f = a && a.type === 'changeAxisOrder' && a.isInitSort
f || Bp(o, this._axisGroup, e),
r.prototype.render.call(this, e, n, i, a)
}
}),
(t.prototype.remove = function () {
TP(this)
}),
(t.type = 'cartesianAxis'),
t
)
})(d_),
MP = {
splitLine: function (r, t, e, n) {
var i = e.axis
if (!i.scale.isBlank()) {
var a = e.getModel('splitLine'),
o = a.getModel('lineStyle'),
s = o.get('color')
s = z(s) ? s : [s]
for (
var l = n.coordinateSystem.getRect(),
u = i.isHorizontal(),
f = 0,
h = i.getTicksCoords({ tickModel: a }),
c = [],
v = [],
d = o.getLineStyle(),
p = 0;
p < h.length;
p++
) {
var g = i.toGlobalCoord(h[p].coord)
u
? ((c[0] = g), (c[1] = l.y), (v[0] = g), (v[1] = l.y + l.height))
: ((c[0] = l.x), (c[1] = g), (v[0] = l.x + l.width), (v[1] = g))
var m = f++ % s.length,
y = h[p].tickValue
t.add(
new cn({
anid: y != null ? 'line_' + h[p].tickValue : null,
subPixelOptimize: !0,
autoBatch: !0,
shape: { x1: c[0], y1: c[1], x2: v[0], y2: v[1] },
style: j({ stroke: s[m] }, d),
silent: !0
})
)
}
}
},
minorSplitLine: function (r, t, e, n) {
var i = e.axis,
a = e.getModel('minorSplitLine'),
o = a.getModel('lineStyle'),
s = n.coordinateSystem.getRect(),
l = i.isHorizontal(),
u = i.getMinorTicksCoords()
if (!!u.length)
for (var f = [], h = [], c = o.getLineStyle(), v = 0; v < u.length; v++)
for (var d = 0; d < u[v].length; d++) {
var p = i.toGlobalCoord(u[v][d].coord)
l
? ((f[0] = p), (f[1] = s.y), (h[0] = p), (h[1] = s.y + s.height))
: ((f[0] = s.x), (f[1] = p), (h[0] = s.x + s.width), (h[1] = p)),
t.add(
new cn({
anid: 'minor_line_' + u[v][d].tickValue,
subPixelOptimize: !0,
autoBatch: !0,
shape: { x1: f[0], y1: f[1], x2: h[0], y2: h[1] },
style: c,
silent: !0
})
)
}
},
splitArea: function (r, t, e, n) {
bP(r, t, e, n)
}
},
g_ = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (e.type = t.type), e
}
return (t.type = 'xAxis'), t
})(p_),
DP = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (e.type = g_.type), e
}
return (t.type = 'yAxis'), t
})(p_),
IP = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (e.type = 'grid'), e
}
return (
(t.prototype.render = function (e, n) {
this.group.removeAll(),
e.get('show') &&
this.group.add(
new St({
shape: e.coordinateSystem.getRect(),
style: j({ fill: e.get('backgroundColor') }, e.getItemStyle()),
silent: !0,
z2: -1
})
)
}),
(t.type = 'grid'),
t
)
})(xe),
m_ = { offset: 0 }
function LP(r) {
r.registerComponentView(IP),
r.registerComponentModel(XL),
r.registerCoordinateSystem('cartesian2d', uP),
e_(r, 'x', Nh, m_),
e_(r, 'y', Nh, m_),
r.registerComponentView(g_),
r.registerComponentView(DP),
r.registerPreprocessor(function (t) {
t.xAxis && t.yAxis && !t.grid && (t.grid = {})
})
}
var y_ = '\0_ec_interaction_mutex'
function PP(r, t, e) {
var n = $h(r)
n[t] = e
}
function RP(r, t, e) {
var n = $h(r),
i = n[t]
i === e && (n[t] = null)
}
function __(r, t) {
return !!$h(r)[t]
}
function $h(r) {
return r[y_] || (r[y_] = {})
}
Je(
{ type: 'takeGlobalCursor', event: 'globalCursorTaken', update: 'update' },
$t
)
var EP = (function (r) {
B(t, r)
function t(e) {
var n = r.call(this) || this
n._zr = e
var i = X(n._mousedownHandler, n),
a = X(n._mousemoveHandler, n),
o = X(n._mouseupHandler, n),
s = X(n._mousewheelHandler, n),
l = X(n._pinchHandler, n)
return (
(n.enable = function (u, f) {
this.disable(),
(this._opt = j(tt(f) || {}, {
zoomOnMouseWheel: !0,
moveOnMouseMove: !0,
moveOnMouseWheel: !1,
preventDefaultMouseMove: !0
})),
u == null && (u = !0),
(u === !0 || u === 'move' || u === 'pan') &&
(e.on('mousedown', i), e.on('mousemove', a), e.on('mouseup', o)),
(u === !0 || u === 'scale' || u === 'zoom') &&
(e.on('mousewheel', s), e.on('pinch', l))
}),
(n.disable = function () {
e.off('mousedown', i),
e.off('mousemove', a),
e.off('mouseup', o),
e.off('mousewheel', s),
e.off('pinch', l)
}),
n
)
}
return (
(t.prototype.isDragging = function () {
return this._dragging
}),
(t.prototype.isPinching = function () {
return this._pinching
}),
(t.prototype.setPointerChecker = function (e) {
this.pointerChecker = e
}),
(t.prototype.dispose = function () {
this.disable()
}),
(t.prototype._mousedownHandler = function (e) {
if (!(tc(e) || (e.target && e.target.draggable))) {
var n = e.offsetX,
i = e.offsetY
this.pointerChecker &&
this.pointerChecker(e, n, i) &&
((this._x = n), (this._y = i), (this._dragging = !0))
}
}),
(t.prototype._mousemoveHandler = function (e) {
if (
!(
!this._dragging ||
!dl('moveOnMouseMove', e, this._opt) ||
e.gestureEvent === 'pinch' ||
__(this._zr, 'globalPan')
)
) {
var n = e.offsetX,
i = e.offsetY,
a = this._x,
o = this._y,
s = n - a,
l = i - o
;(this._x = n),
(this._y = i),
this._opt.preventDefaultMouseMove && Hn(e.event),
S_(this, 'pan', 'moveOnMouseMove', e, {
dx: s,
dy: l,
oldX: a,
oldY: o,
newX: n,
newY: i,
isAvailableBehavior: null
})
}
}),
(t.prototype._mouseupHandler = function (e) {
tc(e) || (this._dragging = !1)
}),
(t.prototype._mousewheelHandler = function (e) {
var n = dl('zoomOnMouseWheel', e, this._opt),
i = dl('moveOnMouseWheel', e, this._opt),
a = e.wheelDelta,
o = Math.abs(a),
s = e.offsetX,
l = e.offsetY
if (!(a === 0 || (!n && !i))) {
if (n) {
var u = o > 3 ? 1.4 : o > 1 ? 1.2 : 1.1,
f = a > 0 ? u : 1 / u
Xh(this, 'zoom', 'zoomOnMouseWheel', e, {
scale: f,
originX: s,
originY: l,
isAvailableBehavior: null
})
}
if (i) {
var h = Math.abs(a),
c = (a > 0 ? 1 : -1) * (h > 3 ? 0.4 : h > 1 ? 0.15 : 0.05)
Xh(this, 'scrollMove', 'moveOnMouseWheel', e, {
scrollDelta: c,
originX: s,
originY: l,
isAvailableBehavior: null
})
}
}
}),
(t.prototype._pinchHandler = function (e) {
if (!__(this._zr, 'globalPan')) {
var n = e.pinchScale > 1 ? 1.1 : 1 / 1.1
Xh(this, 'zoom', null, e, {
scale: n,
originX: e.pinchX,
originY: e.pinchY,
isAvailableBehavior: null
})
}
}),
t
)
})(fe)
function Xh(r, t, e, n, i) {
r.pointerChecker &&
r.pointerChecker(n, i.originX, i.originY) &&
(Hn(n.event), S_(r, t, e, n, i))
}
function S_(r, t, e, n, i) {
;(i.isAvailableBehavior = X(dl, null, e, n)), r.trigger(t, i)
}
function dl(r, t, e) {
var n = e[r]
return !r || (n && (!W(n) || t.event[n + 'Key']))
}
var OP = EP,
kP = { axisPointer: 1, tooltip: 1, brush: 1 }
function BP(r, t, e) {
var n = t.getComponentByElement(r.topTarget),
i = n && n.coordinateSystem
return n && n !== e && !kP.hasOwnProperty(n.mainType) && i && i.model !== e
}
function Za(r, t, e, n, i, a) {
r = r || 0
var o = e[1] - e[0]
if (
(i != null && (i = xi(i, [0, o])),
a != null && (a = Math.max(a, i != null ? i : 0)),
n === 'all')
) {
var s = Math.abs(t[1] - t[0])
;(s = xi(s, [0, o])), (i = a = xi(s, [i, a])), (n = 0)
}
;(t[0] = xi(t[0], e)), (t[1] = xi(t[1], e))
var l = qh(t, n)
t[n] += r
var u = i || 0,
f = e.slice()
l.sign < 0 ? (f[0] += u) : (f[1] -= u), (t[n] = xi(t[n], f))
var h
return (
(h = qh(t, n)),
i != null &&
(h.sign !== l.sign || h.span < i) &&
(t[1 - n] = t[n] + l.sign * i),
(h = qh(t, n)),
a != null && h.span > a && (t[1 - n] = t[n] + h.sign * a),
t
)
}
function qh(r, t) {
var e = r[t] - r[1 - t]
return { span: Math.abs(e), sign: e > 0 ? -1 : e < 0 ? 1 : t ? -1 : 1 }
}
function xi(r, t) {
return Math.min(
t[1] != null ? t[1] : 1 / 0,
Math.max(t[0] != null ? t[0] : -1 / 0, r)
)
}
var In = !0,
$a = Math.min,
wi = Math.max,
NP = Math.pow,
FP = 1e4,
zP = 6,
VP = 6,
x_ = 'globalPan',
GP = { w: [0, 0], e: [0, 1], n: [1, 0], s: [1, 1] },
HP = {
w: 'ew',
e: 'ew',
n: 'ns',
s: 'ns',
ne: 'nesw',
sw: 'nesw',
nw: 'nwse',
se: 'nwse'
},
w_ = {
brushStyle: {
lineWidth: 2,
stroke: 'rgba(210,219,238,0.3)',
fill: '#D2DBEE'
},
transformable: !0,
brushMode: 'single',
removeOnClick: !1
},
WP = 0,
UP = (function (r) {
B(t, r)
function t(e) {
var n = r.call(this) || this
return (
(n._track = []),
(n._covers = []),
(n._handlers = {}),
(n._zr = e),
(n.group = new At()),
(n._uid = 'brushController_' + WP++),
A(
QP,
function (i, a) {
this._handlers[a] = X(i, this)
},
n
),
n
)
}
return (
(t.prototype.enableBrush = function (e) {
return (
this._brushType && this._doDisableBrush(),
e.brushType && this._doEnableBrush(e),
this
)
}),
(t.prototype._doEnableBrush = function (e) {
var n = this._zr
this._enableGlobalPan || PP(n, x_, this._uid),
A(this._handlers, function (i, a) {
n.on(a, i)
}),
(this._brushType = e.brushType),
(this._brushOption = nt(tt(w_), e, !0))
}),
(t.prototype._doDisableBrush = function () {
var e = this._zr
RP(e, x_, this._uid),
A(this._handlers, function (n, i) {
e.off(i, n)
}),
(this._brushType = this._brushOption = null)
}),
(t.prototype.setPanels = function (e) {
if (e && e.length) {
var n = (this._panels = {})
A(e, function (i) {
n[i.panelId] = tt(i)
})
} else this._panels = null
return this
}),
(t.prototype.mount = function (e) {
;(e = e || {}), (this._enableGlobalPan = e.enableGlobalPan)
var n = this.group
return (
this._zr.add(n),
n.attr({
x: e.x || 0,
y: e.y || 0,
rotation: e.rotation || 0,
scaleX: e.scaleX || 1,
scaleY: e.scaleY || 1
}),
(this._transform = n.getLocalTransform()),
this
)
}),
(t.prototype.updateCovers = function (e) {
e = G(e, function (c) {
return nt(tt(w_), c, !0)
})
var n = '\0-brush-index-',
i = this._covers,
a = (this._covers = []),
o = this,
s = this._creatingCover
return new Ba(i, e, u, l).add(f).update(f).remove(h).execute(), this
function l(c, v) {
return (c.id != null ? c.id : n + v) + '-' + c.brushType
}
function u(c, v) {
return l(c.__brushOption, v)
}
function f(c, v) {
var d = e[c]
if (v != null && i[v] === s) a[c] = i[v]
else {
var p = (a[c] =
v != null ? ((i[v].__brushOption = d), i[v]) : T_(o, b_(o, d)))
Kh(o, p)
}
}
function h(c) {
i[c] !== s && o.group.remove(i[c])
}
}),
(t.prototype.unmount = function () {
return this.enableBrush(!1), jh(this), this._zr.remove(this.group), this
}),
(t.prototype.dispose = function () {
this.unmount(), this.off()
}),
t
)
})(fe)
function b_(r, t) {
var e = pl[t.brushType].createCover(r, t)
return (e.__brushOption = t), A_(e, t), r.group.add(e), e
}
function T_(r, t) {
var e = Qh(t)
return e.endCreating && (e.endCreating(r, t), A_(t, t.__brushOption)), t
}
function C_(r, t) {
var e = t.__brushOption
Qh(t).updateCoverShape(r, t, e.range, e)
}
function A_(r, t) {
var e = t.z
e == null && (e = FP),
r.traverse(function (n) {
;(n.z = e), (n.z2 = e)
})
}
function Kh(r, t) {
Qh(t).updateCommon(r, t), C_(r, t)
}
function Qh(r) {
return pl[r.__brushOption.brushType]
}
function Jh(r, t, e) {
var n = r._panels
if (!n) return In
var i,
a = r._transform
return (
A(n, function (o) {
o.isTargetByCursor(t, e, a) && (i = o)
}),
i
)
}
function M_(r, t) {
var e = r._panels
if (!e) return In
var n = t.__brushOption.panelId
return n != null ? e[n] : In
}
function jh(r) {
var t = r._covers,
e = t.length
return (
A(
t,
function (n) {
r.group.remove(n)
},
r
),
(t.length = 0),
!!e
)
}
function Ln(r, t) {
var e = G(r._covers, function (n) {
var i = n.__brushOption,
a = tt(i.range)
return { brushType: i.brushType, panelId: i.panelId, range: a }
})
r.trigger('brush', {
areas: e,
isEnd: !!t.isEnd,
removeOnClick: !!t.removeOnClick
})
}
function YP(r) {
var t = r._track
if (!t.length) return !1
var e = t[t.length - 1],
n = t[0],
i = e[0] - n[0],
a = e[1] - n[1],
o = NP(i * i + a * a, 0.5)
return o > zP
}
function D_(r) {
var t = r.length - 1
return t < 0 && (t = 0), [r[0], r[t]]
}
function I_(r, t, e, n) {
var i = new At()
return (
i.add(
new St({
name: 'main',
style: ev(e),
silent: !0,
draggable: !0,
cursor: 'move',
drift: lt(R_, r, t, i, ['n', 's', 'w', 'e']),
ondragend: lt(Ln, t, { isEnd: !0 })
})
),
A(n, function (a) {
i.add(
new St({
name: a.join(''),
style: { opacity: 0 },
draggable: !0,
silent: !0,
invisible: !0,
drift: lt(R_, r, t, i, a),
ondragend: lt(Ln, t, { isEnd: !0 })
})
)
}),
i
)
}
function L_(r, t, e, n) {
var i = n.brushStyle.lineWidth || 0,
a = wi(i, VP),
o = e[0][0],
s = e[1][0],
l = o - i / 2,
u = s - i / 2,
f = e[0][1],
h = e[1][1],
c = f - a + i / 2,
v = h - a + i / 2,
d = f - o,
p = h - s,
g = d + i,
m = p + i
mr(r, t, 'main', o, s, d, p),
n.transformable &&
(mr(r, t, 'w', l, u, a, m),
mr(r, t, 'e', c, u, a, m),
mr(r, t, 'n', l, u, g, a),
mr(r, t, 's', l, v, g, a),
mr(r, t, 'nw', l, u, a, a),
mr(r, t, 'ne', c, u, a, a),
mr(r, t, 'sw', l, v, a, a),
mr(r, t, 'se', c, v, a, a))
}
function tv(r, t) {
var e = t.__brushOption,
n = e.transformable,
i = t.childAt(0)
i.useStyle(ev(e)),
i.attr({ silent: !n, cursor: n ? 'move' : 'default' }),
A(
[
['w'],
['e'],
['n'],
['s'],
['s', 'e'],
['s', 'w'],
['n', 'e'],
['n', 'w']
],
function (a) {
var o = t.childOfName(a.join('')),
s = a.length === 1 ? rv(r, a[0]) : $P(r, a)
o &&
o.attr({
silent: !n,
invisible: !n,
cursor: n ? HP[s] + '-resize' : null
})
}
)
}
function mr(r, t, e, n, i, a, o) {
var s = t.childOfName(e)
s &&
s.setShape(
qP(
nv(r, t, [
[n, i],
[n + a, i + o]
])
)
)
}
function ev(r) {
return j({ strokeNoScale: !0 }, r.brushStyle)
}
function P_(r, t, e, n) {
var i = [$a(r, e), $a(t, n)],
a = [wi(r, e), wi(t, n)]
return [
[i[0], a[0]],
[i[1], a[1]]
]
}
function ZP(r) {
return ls(r.group)
}
function rv(r, t) {
var e = { w: 'left', e: 'right', n: 'top', s: 'bottom' },
n = { left: 'w', right: 'e', top: 'n', bottom: 's' },
i = hf(e[t], ZP(r))
return n[i]
}
function $P(r, t) {
var e = [rv(r, t[0]), rv(r, t[1])]
return (e[0] === 'e' || e[0] === 'w') && e.reverse(), e.join('')
}
function R_(r, t, e, n, i, a) {
var o = e.__brushOption,
s = r.toRectRange(o.range),
l = E_(t, i, a)
A(n, function (u) {
var f = GP[u]
s[f[0]][f[1]] += l[f[0]]
}),
(o.range = r.fromRectRange(P_(s[0][0], s[1][0], s[0][1], s[1][1]))),
Kh(t, e),
Ln(t, { isEnd: !1 })
}
function XP(r, t, e, n) {
var i = t.__brushOption.range,
a = E_(r, e, n)
A(i, function (o) {
;(o[0] += a[0]), (o[1] += a[1])
}),
Kh(r, t),
Ln(r, { isEnd: !1 })
}
function E_(r, t, e) {
var n = r.group,
i = n.transformCoordToLocal(t, e),
a = n.transformCoordToLocal(0, 0)
return [i[0] - a[0], i[1] - a[1]]
}
function nv(r, t, e) {
var n = M_(r, t)
return n && n !== In ? n.clipPath(e, r._transform) : tt(e)
}
function qP(r) {
var t = $a(r[0][0], r[1][0]),
e = $a(r[0][1], r[1][1]),
n = wi(r[0][0], r[1][0]),
i = wi(r[0][1], r[1][1])
return { x: t, y: e, width: n - t, height: i - e }
}
function KP(r, t, e) {
if (!(!r._brushType || JP(r, t.offsetX, t.offsetY))) {
var n = r._zr,
i = r._covers,
a = Jh(r, t, e)
if (!r._dragging)
for (var o = 0; o < i.length; o++) {
var s = i[o].__brushOption
if (
a &&
(a === In || s.panelId === a.panelId) &&
pl[s.brushType].contain(i[o], e[0], e[1])
)
return
}
a && n.setCursorStyle('crosshair')
}
}
function iv(r) {
var t = r.event
t.preventDefault && t.preventDefault()
}
function av(r, t, e) {
return r.childOfName('main').contain(t, e)
}
function O_(r, t, e, n) {
var i = r._creatingCover,
a = r._creatingPanel,
o = r._brushOption,
s
if ((r._track.push(e.slice()), YP(r) || i)) {
if (a && !i) {
o.brushMode === 'single' && jh(r)
var l = tt(o)
;(l.brushType = k_(l.brushType, a)),
(l.panelId = a === In ? null : a.panelId),
(i = r._creatingCover = b_(r, l)),
r._covers.push(i)
}
if (i) {
var u = pl[k_(r._brushType, a)],
f = i.__brushOption
;(f.range = u.getCreatingRange(nv(r, i, r._track))),
n && (T_(r, i), u.updateCommon(r, i)),
C_(r, i),
(s = { isEnd: n })
}
} else
n &&
o.brushMode === 'single' &&
o.removeOnClick &&
Jh(r, t, e) &&
jh(r) &&
(s = { isEnd: n, removeOnClick: !0 })
return s
}
function k_(r, t) {
return r === 'auto' ? t.defaultBrushType : r
}
var QP = {
mousedown: function (r) {
if (this._dragging) B_(this, r)
else if (!r.target || !r.target.draggable) {
iv(r)
var t = this.group.transformCoordToLocal(r.offsetX, r.offsetY)
this._creatingCover = null
var e = (this._creatingPanel = Jh(this, r, t))
e && ((this._dragging = !0), (this._track = [t.slice()]))
}
},
mousemove: function (r) {
var t = r.offsetX,
e = r.offsetY,
n = this.group.transformCoordToLocal(t, e)
if ((KP(this, r, n), this._dragging)) {
iv(r)
var i = O_(this, r, n, !1)
i && Ln(this, i)
}
},
mouseup: function (r) {
B_(this, r)
}
}
function B_(r, t) {
if (r._dragging) {
iv(t)
var e = t.offsetX,
n = t.offsetY,
i = r.group.transformCoordToLocal(e, n),
a = O_(r, t, i, !0)
;(r._dragging = !1),
(r._track = []),
(r._creatingCover = null),
a && Ln(r, a)
}
}
function JP(r, t, e) {
var n = r._zr
return t < 0 || t > n.getWidth() || e < 0 || e > n.getHeight()
}
var pl = {
lineX: N_(0),
lineY: N_(1),
rect: {
createCover: function (r, t) {
function e(n) {
return n
}
return I_({ toRectRange: e, fromRectRange: e }, r, t, [
['w'],
['e'],
['n'],
['s'],
['s', 'e'],
['s', 'w'],
['n', 'e'],
['n', 'w']
])
},
getCreatingRange: function (r) {
var t = D_(r)
return P_(t[1][0], t[1][1], t[0][0], t[0][1])
},
updateCoverShape: function (r, t, e, n) {
L_(r, t, e, n)
},
updateCommon: tv,
contain: av
},
polygon: {
createCover: function (r, t) {
var e = new At()
return e.add(new ai({ name: 'main', style: ev(t), silent: !0 })), e
},
getCreatingRange: function (r) {
return r
},
endCreating: function (r, t) {
t.remove(t.childAt(0)),
t.add(
new ua({
name: 'main',
draggable: !0,
drift: lt(XP, r, t),
ondragend: lt(Ln, r, { isEnd: !0 })
})
)
},
updateCoverShape: function (r, t, e, n) {
t.childAt(0).setShape({ points: nv(r, t, e) })
},
updateCommon: tv,
contain: av
}
}
function N_(r) {
return {
createCover: function (t, e) {
return I_(
{
toRectRange: function (n) {
var i = [n, [0, 100]]
return r && i.reverse(), i
},
fromRectRange: function (n) {
return n[r]
}
},
t,
e,
[
[['w'], ['e']],
[['n'], ['s']]
][r]
)
},
getCreatingRange: function (t) {
var e = D_(t),
n = $a(e[0][r], e[1][r]),
i = wi(e[0][r], e[1][r])
return [n, i]
},
updateCoverShape: function (t, e, n, i) {
var a,
o = M_(t, e)
if (o !== In && o.getLinearBrushOtherExtent)
a = o.getLinearBrushOtherExtent(r)
else {
var s = t._zr
a = [0, [s.getWidth(), s.getHeight()][1 - r]]
}
var l = [n, a]
r && l.reverse(), L_(t, e, l, i)
},
updateCommon: tv,
contain: av
}
}
var jP = UP
function tR(r) {
return (
(r = ov(r)),
function (t) {
return Np(t, r)
}
)
}
function eR(r, t) {
return (
(r = ov(r)),
function (e) {
var n = t != null ? t : e,
i = n ? r.width : r.height,
a = n ? r.x : r.y
return [a, a + (i || 0)]
}
)
}
function rR(r, t, e) {
var n = ov(r)
return function (i, a) {
return n.contain(a[0], a[1]) && !BP(i, t, e)
}
}
function ov(r) {
return vt.create(r)
}
var Pn = wt(),
F_ = tt,
sv = X,
nR = (function () {
function r() {
;(this._dragging = !1), (this.animationThreshold = 15)
}
return (
(r.prototype.render = function (t, e, n, i) {
var a = e.get('value'),
o = e.get('status')
if (
((this._axisModel = t),
(this._axisPointerModel = e),
(this._api = n),
!(!i && this._lastValue === a && this._lastStatus === o))
) {
;(this._lastValue = a), (this._lastStatus = o)
var s = this._group,
l = this._handle
if (!o || o === 'hide') {
s && s.hide(), l && l.hide()
return
}
s && s.show(), l && l.show()
var u = {}
this.makeElOption(u, a, t, e, n)
var f = u.graphicKey
f !== this._lastGraphicKey && this.clear(n),
(this._lastGraphicKey = f)
var h = (this._moveAnimation = this.determineAnimation(t, e))
if (!s)
(s = this._group = new At()),
this.createPointerEl(s, u, t, e),
this.createLabelEl(s, u, t, e),
n.getZr().add(s)
else {
var c = lt(z_, e, h)
this.updatePointerEl(s, u, c), this.updateLabelEl(s, u, c, e)
}
H_(s, e, !0), this._renderHandle(a)
}
}),
(r.prototype.remove = function (t) {
this.clear(t)
}),
(r.prototype.dispose = function (t) {
this.clear(t)
}),
(r.prototype.determineAnimation = function (t, e) {
var n = e.get('animation'),
i = t.axis,
a = i.type === 'category',
o = e.get('snap')
if (!o && !a) return !1
if (n === 'auto' || n == null) {
var s = this.animationThreshold
if (a && i.getBandWidth() > s) return !0
if (o) {
var l = Uh(t).seriesDataCount,
u = i.getExtent()
return Math.abs(u[0] - u[1]) / l > s
}
return !1
}
return n === !0
}),
(r.prototype.makeElOption = function (t, e, n, i, a) {}),
(r.prototype.createPointerEl = function (t, e, n, i) {
var a = e.pointer
if (a) {
var o = (Pn(t).pointerEl = new RC[a.type](F_(e.pointer)))
t.add(o)
}
}),
(r.prototype.createLabelEl = function (t, e, n, i) {
if (e.label) {
var a = (Pn(t).labelEl = new Et(F_(e.label)))
t.add(a), G_(a, i)
}
}),
(r.prototype.updatePointerEl = function (t, e, n) {
var i = Pn(t).pointerEl
i &&
e.pointer &&
(i.setStyle(e.pointer.style), n(i, { shape: e.pointer.shape }))
}),
(r.prototype.updateLabelEl = function (t, e, n, i) {
var a = Pn(t).labelEl
a &&
(a.setStyle(e.label.style),
n(a, { x: e.label.x, y: e.label.y }),
G_(a, i))
}),
(r.prototype._renderHandle = function (t) {
if (!(this._dragging || !this.updateHandleTransform)) {
var e = this._axisPointerModel,
n = this._api.getZr(),
i = this._handle,
a = e.getModel('handle'),
o = e.get('status')
if (!a.get('show') || !o || o === 'hide') {
i && n.remove(i), (this._handle = null)
return
}
var s
this._handle ||
((s = !0),
(i = this._handle =
us(a.get('icon'), {
cursor: 'move',
draggable: !0,
onmousemove: function (u) {
Hn(u.event)
},
onmousedown: sv(this._onHandleDragMove, this, 0, 0),
drift: sv(this._onHandleDragMove, this),
ondragend: sv(this._onHandleDragEnd, this)
})),
n.add(i)),
H_(i, e, !1),
i.setStyle(
a.getItemStyle(null, [
'color',
'borderColor',
'borderWidth',
'opacity',
'shadowColor',
'shadowBlur',
'shadowOffsetX',
'shadowOffsetY'
])
)
var l = a.get('size')
z(l) || (l = [l, l]),
(i.scaleX = l[0] / 2),
(i.scaleY = l[1] / 2),
Os(
this,
'_doDispatchAxisPointer',
a.get('throttle') || 0,
'fixRate'
),
this._moveHandleToValue(t, s)
}
}),
(r.prototype._moveHandleToValue = function (t, e) {
z_(
this._axisPointerModel,
!e && this._moveAnimation,
this._handle,
lv(
this.getHandleTransform(t, this._axisModel, this._axisPointerModel)
)
)
}),
(r.prototype._onHandleDragMove = function (t, e) {
var n = this._handle
if (!!n) {
this._dragging = !0
var i = this.updateHandleTransform(
lv(n),
[t, e],
this._axisModel,
this._axisPointerModel
)
;(this._payloadInfo = i),
n.stopAnimation(),
n.attr(lv(i)),
(Pn(n).lastProp = null),
this._doDispatchAxisPointer()
}
}),
(r.prototype._doDispatchAxisPointer = function () {
var t = this._handle
if (!!t) {
var e = this._payloadInfo,
n = this._axisModel
this._api.dispatchAction({
type: 'updateAxisPointer',
x: e.cursorPoint[0],
y: e.cursorPoint[1],
tooltipOption: e.tooltipOption,
axesInfo: [{ axisDim: n.axis.dim, axisIndex: n.componentIndex }]
})
}
}),
(r.prototype._onHandleDragEnd = function () {
this._dragging = !1
var t = this._handle
if (!!t) {
var e = this._axisPointerModel.get('value')
this._moveHandleToValue(e),
this._api.dispatchAction({ type: 'hideTip' })
}
}),
(r.prototype.clear = function (t) {
;(this._lastValue = null), (this._lastStatus = null)
var e = t.getZr(),
n = this._group,
i = this._handle
e &&
n &&
((this._lastGraphicKey = null),
n && e.remove(n),
i && e.remove(i),
(this._group = null),
(this._handle = null),
(this._payloadInfo = null)),
ks(this, '_doDispatchAxisPointer')
}),
(r.prototype.doClear = function () {}),
(r.prototype.buildLabel = function (t, e, n) {
return (
(n = n || 0), { x: t[n], y: t[1 - n], width: e[n], height: e[1 - n] }
)
}),
r
)
})()
function z_(r, t, e, n) {
V_(Pn(e).lastProp, n) ||
((Pn(e).lastProp = n), t ? kt(e, n, r) : (e.stopAnimation(), e.attr(n)))
}
function V_(r, t) {
if (Y(r) && Y(t)) {
var e = !0
return (
A(t, function (n, i) {
e = e && V_(r[i], n)
}),
!!e
)
} else return r === t
}
function G_(r, t) {
r[t.get(['label', 'show']) ? 'show' : 'hide']()
}
function lv(r) {
return { x: r.x || 0, y: r.y || 0, rotation: r.rotation || 0 }
}
function H_(r, t, e) {
var n = t.get('z'),
i = t.get('zlevel')
r &&
r.traverse(function (a) {
a.type !== 'group' &&
(n != null && (a.z = n), i != null && (a.zlevel = i), (a.silent = e))
})
}
var iR = nR
function aR(r) {
var t = r.get('type'),
e = r.getModel(t + 'Style'),
n
return (
t === 'line'
? ((n = e.getLineStyle()), (n.fill = null))
: t === 'shadow' && ((n = e.getAreaStyle()), (n.stroke = null)),
n
)
}
function oR(r, t, e, n, i) {
var a = e.get('value'),
o = W_(a, t.axis, t.ecModel, e.get('seriesDataIndices'), {
precision: e.get(['label', 'precision']),
formatter: e.get(['label', 'formatter'])
}),
s = e.getModel('label'),
l = ws(s.get('padding') || 0),
u = s.getFont(),
f = Eo(o, u),
h = i.position,
c = f.width + l[1] + l[3],
v = f.height + l[0] + l[2],
d = i.align
d === 'right' && (h[0] -= c), d === 'center' && (h[0] -= c / 2)
var p = i.verticalAlign
p === 'bottom' && (h[1] -= v),
p === 'middle' && (h[1] -= v / 2),
sR(h, c, v, n)
var g = s.get('backgroundColor')
;(!g || g === 'auto') && (g = t.get(['axisLine', 'lineStyle', 'color'])),
(r.label = {
x: h[0],
y: h[1],
style: vr(s, {
text: o,
font: u,
fill: s.getTextColor(),
padding: l,
backgroundColor: g
}),
z2: 10
})
}
function sR(r, t, e, n) {
var i = n.getWidth(),
a = n.getHeight()
;(r[0] = Math.min(r[0] + t, i) - t),
(r[1] = Math.min(r[1] + e, a) - e),
(r[0] = Math.max(r[0], 0)),
(r[1] = Math.max(r[1], 0))
}
function W_(r, t, e, n, i) {
r = t.scale.parse(r)
var a = t.scale.getLabel({ value: r }, { precision: i.precision }),
o = i.formatter
if (o) {
var s = {
value: Th(t, { value: r }),
axisDimension: t.dim,
axisIndex: t.index,
seriesData: []
}
A(n, function (l) {
var u = e.getSeriesByIndex(l.seriesIndex),
f = l.dataIndexInside,
h = u && u.getDataParams(f)
h && s.seriesData.push(h)
}),
W(o) ? (a = o.replace('{value}', a)) : Q(o) && (a = o(s))
}
return a
}
function U_(r, t, e) {
var n = Hi()
return (
pu(n, n, e.rotation),
du(n, n, e.position),
fa(
[
r.dataToCoord(t),
(e.labelOffset || 0) + (e.labelDirection || 1) * (e.labelMargin || 0)
],
n
)
)
}
function lR(r, t, e, n, i, a) {
var o = v_.innerTextLayout(e.rotation, 0, e.labelDirection)
;(e.labelMargin = i.get(['label', 'margin'])),
oR(t, n, i, a, {
position: U_(n.axis, r, e),
align: o.textAlign,
verticalAlign: o.textVerticalAlign
})
}
function uR(r, t, e) {
return (e = e || 0), { x1: r[e], y1: r[1 - e], x2: t[e], y2: t[1 - e] }
}
function fR(r, t, e) {
return (e = e || 0), { x: r[e], y: r[1 - e], width: t[e], height: t[1 - e] }
}
var hR = (function (r) {
B(t, r)
function t() {
return (r !== null && r.apply(this, arguments)) || this
}
return (
(t.prototype.makeElOption = function (e, n, i, a, o) {
var s = i.axis,
l = s.grid,
u = a.get('type'),
f = Y_(l, s).getOtherAxis(s).getGlobalExtent(),
h = s.toGlobalCoord(s.dataToCoord(n, !0))
if (u && u !== 'none') {
var c = aR(a),
v = vR[u](s, h, f)
;(v.style = c), (e.graphicKey = v.type), (e.pointer = v)
}
var d = Vh(l.model, i)
lR(n, e, d, i, a, o)
}),
(t.prototype.getHandleTransform = function (e, n, i) {
var a = Vh(n.axis.grid.model, n, { labelInside: !1 })
a.labelMargin = i.get(['handle', 'margin'])
var o = U_(n.axis, e, a)
return {
x: o[0],
y: o[1],
rotation: a.rotation + (a.labelDirection < 0 ? Math.PI : 0)
}
}),
(t.prototype.updateHandleTransform = function (e, n, i, a) {
var o = i.axis,
s = o.grid,
l = o.getGlobalExtent(!0),
u = Y_(s, o).getOtherAxis(o).getGlobalExtent(),
f = o.dim === 'x' ? 0 : 1,
h = [e.x, e.y]
;(h[f] += n[f]),
(h[f] = Math.min(l[1], h[f])),
(h[f] = Math.max(l[0], h[f]))
var c = (u[1] + u[0]) / 2,
v = [c, c]
v[f] = h[f]
var d = [{ verticalAlign: 'middle' }, { align: 'center' }]
return {
x: h[0],
y: h[1],
rotation: e.rotation,
cursorPoint: v,
tooltipOption: d[f]
}
}),
t
)
})(iR)
function Y_(r, t) {
var e = {}
return (e[t.dim + 'AxisIndex'] = t.index), r.getCartesian(e)
}
var vR = {
line: function (r, t, e) {
var n = uR([t, e[0]], [t, e[1]], Z_(r))
return { type: 'Line', subPixelOptimize: !0, shape: n }
},
shadow: function (r, t, e) {
var n = Math.max(1, r.getBandWidth()),
i = e[1] - e[0]
return { type: 'Rect', shape: fR([t - n / 2, e[0]], [n, i], Z_(r)) }
}
}
function Z_(r) {
return r.dim === 'x' ? 0 : 1
}
var cR = hR,
dR = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (e.type = t.type), e
}
return (
(t.type = 'axisPointer'),
(t.defaultOption = {
show: 'auto',
z: 50,
type: 'line',
snap: !1,
triggerTooltip: !0,
value: null,
status: null,
link: [],
animation: null,
animationDurationUpdate: 200,
lineStyle: { color: '#B9BEC9', width: 1, type: 'dashed' },
shadowStyle: { color: 'rgba(210,219,238,0.2)' },
label: {
show: !0,
formatter: null,
precision: 'auto',
margin: 3,
color: '#fff',
padding: [5, 7, 5, 7],
backgroundColor: 'auto',
borderColor: null,
borderWidth: 0,
borderRadius: 3
},
handle: {
show: !1,
icon: 'M10.7,11.9v-1.3H9.3v1.3c-4.9,0.3-8.8,4.4-8.8,9.4c0,5,3.9,9.1,8.8,9.4h1.3c4.9-0.3,8.8-4.4,8.8-9.4C19.5,16.3,15.6,12.2,10.7,11.9z M13.3,24.4H6.7v-1.2h6.6z M13.3,22H6.7v-1.2h6.6z M13.3,19.6H6.7v-1.2h6.6z',
size: 45,
margin: 50,
color: '#333',
shadowBlur: 3,
shadowColor: '#aaa',
shadowOffsetX: 0,
shadowOffsetY: 2,
throttle: 40
}
}),
t
)
})(_t),
pR = dR,
yr = wt(),
gR = A
function $_(r, t, e) {
if (!at.node) {
var n = t.getZr()
yr(n).records || (yr(n).records = {}), mR(n, t)
var i = yr(n).records[r] || (yr(n).records[r] = {})
i.handler = e
}
}
function mR(r, t) {
if (yr(r).initialized) return
;(yr(r).initialized = !0),
e('click', lt(X_, 'click')),
e('mousemove', lt(X_, 'mousemove')),
e('globalout', _R)
function e(n, i) {
r.on(n, function (a) {
var o = SR(t)
gR(yr(r).records, function (s) {
s && i(s, a, o.dispatchAction)
}),
yR(o.pendings, t)
})
}
}
function yR(r, t) {
var e = r.showTip.length,
n = r.hideTip.length,
i
e ? (i = r.showTip[e - 1]) : n && (i = r.hideTip[n - 1]),
i && ((i.dispatchAction = null), t.dispatchAction(i))
}
function _R(r, t, e) {
r.handler('leave', null, e)
}
function X_(r, t, e, n) {
t.handler(r, e, n)
}
function SR(r) {
var t = { showTip: [], hideTip: [] },
e = function (n) {
var i = t[n.type]
i ? i.push(n) : ((n.dispatchAction = e), r.dispatchAction(n))
}
return { dispatchAction: e, pendings: t }
}
function uv(r, t) {
if (!at.node) {
var e = t.getZr(),
n = (yr(e).records || {})[r]
n && (yr(e).records[r] = null)
}
}
var xR = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (e.type = t.type), e
}
return (
(t.prototype.render = function (e, n, i) {
var a = n.getComponent('tooltip'),
o =
e.get('triggerOn') || (a && a.get('triggerOn')) || 'mousemove|click'
$_('axisPointer', i, function (s, l, u) {
o !== 'none' &&
(s === 'leave' || o.indexOf(s) >= 0) &&
u({
type: 'updateAxisPointer',
currTrigger: s,
x: l && l.offsetX,
y: l && l.offsetY
})
})
}),
(t.prototype.remove = function (e, n) {
uv('axisPointer', n)
}),
(t.prototype.dispose = function (e, n) {
uv('axisPointer', n)
}),
(t.type = 'axisPointer'),
t
)
})(xe),
wR = xR
function q_(r, t) {
var e = [],
n = r.seriesIndex,
i
if (n == null || !(i = t.getSeriesByIndex(n))) return { point: [] }
var a = i.getData(),
o = Jr(a, r)
if (o == null || o < 0 || z(o)) return { point: [] }
var s = a.getItemGraphicEl(o),
l = i.coordinateSystem
if (i.getTooltipPosition) e = i.getTooltipPosition(o) || []
else if (l && l.dataToPoint)
if (r.isStacked) {
var u = l.getBaseAxis(),
f = l.getOtherAxis(u),
h = f.dim,
c = u.dim,
v = h === 'x' || h === 'radius' ? 1 : 0,
d = a.mapDimension(c),
p = []
;(p[v] = a.get(d, o)),
(p[1 - v] = a.get(a.getCalculationInfo('stackResultDimension'), o)),
(e = l.dataToPoint(p) || [])
} else
e =
l.dataToPoint(
a.getValues(
G(l.dimensions, function (m) {
return a.mapDimension(m)
}),
o
)
) || []
else if (s) {
var g = s.getBoundingRect().clone()
g.applyTransform(s.transform), (e = [g.x + g.width / 2, g.y + g.height / 2])
}
return { point: e, el: s }
}
var K_ = wt()
function bR(r, t, e) {
var n = r.currTrigger,
i = [r.x, r.y],
a = r,
o = r.dispatchAction || X(e.dispatchAction, e),
s = t.getComponent('axisPointer').coordSysAxesInfo
if (!!s) {
gl(i) &&
(i = q_({ seriesIndex: a.seriesIndex, dataIndex: a.dataIndex }, t).point)
var l = gl(i),
u = a.axesInfo,
f = s.axesInfo,
h = n === 'leave' || gl(i),
c = {},
v = {},
d = { list: [], map: {} },
p = { showPointer: lt(CR, v), showTooltip: lt(AR, d) }
A(s.coordSysMap, function (m, y) {
var _ = l || m.containPoint(i)
A(s.coordSysAxesInfo[y], function (S, w) {
var x = S.axis,
b = LR(u, S)
if (!h && _ && (!u || b)) {
var T = b && b.value
T == null && !l && (T = x.pointToData(i)),
T != null && Q_(S, T, p, !1, c)
}
})
})
var g = {}
return (
A(f, function (m, y) {
var _ = m.linkGroup
_ &&
!v[y] &&
A(_.axesInfo, function (S, w) {
var x = v[w]
if (S !== m && x) {
var b = x.value
_.mapper && (b = m.axis.scale.parse(_.mapper(b, J_(S), J_(m)))),
(g[m.key] = b)
}
})
}),
A(g, function (m, y) {
Q_(f[y], m, p, !0, c)
}),
MR(v, f, c),
DR(d, i, r, o),
IR(f, o, e),
c
)
}
}
function Q_(r, t, e, n, i) {
var a = r.axis
if (!(a.scale.isBlank() || !a.containData(t))) {
if (!r.involveSeries) {
e.showPointer(r, t)
return
}
var o = TR(t, r),
s = o.payloadBatch,
l = o.snapToValue
s[0] && i.seriesIndex == null && N(i, s[0]),
!n && r.snap && a.containData(l) && l != null && (t = l),
e.showPointer(r, t, s),
e.showTooltip(r, o, l)
}
}
function TR(r, t) {
var e = t.axis,
n = e.dim,
i = r,
a = [],
o = Number.MAX_VALUE,
s = -1
return (
A(t.seriesModels, function (l, u) {
var f = l.getData().mapDimensionsAll(n),
h,
c
if (l.getAxisTooltipData) {
var v = l.getAxisTooltipData(f, r, e)
;(c = v.dataIndices), (h = v.nestestValue)
} else {
if (
((c = l
.getData()
.indicesOfNearest(f[0], r, e.type === 'category' ? 0.5 : null)),
!c.length)
)
return
h = l.getData().get(f[0], c[0])
}
if (!(h == null || !isFinite(h))) {
var d = r - h,
p = Math.abs(d)
p <= o &&
((p < o || (d >= 0 && s < 0)) &&
((o = p), (s = d), (i = h), (a.length = 0)),
A(c, function (g) {
a.push({
seriesIndex: l.seriesIndex,
dataIndexInside: g,
dataIndex: l.getData().getRawIndex(g)
})
}))
}
}),
{ payloadBatch: a, snapToValue: i }
)
}
function CR(r, t, e, n) {
r[t.key] = { value: e, payloadBatch: n }
}
function AR(r, t, e, n) {
var i = e.payloadBatch,
a = t.axis,
o = a.model,
s = t.axisPointerModel
if (!(!t.triggerTooltip || !i.length)) {
var l = t.coordSys.model,
u = Ya(l),
f = r.map[u]
f ||
((f = r.map[u] =
{
coordSysId: l.id,
coordSysIndex: l.componentIndex,
coordSysType: l.type,
coordSysMainType: l.mainType,
dataByAxis: []
}),
r.list.push(f)),
f.dataByAxis.push({
axisDim: a.dim,
axisIndex: o.componentIndex,
axisType: o.type,
axisId: o.id,
value: n,
valueLabelOpt: {
precision: s.get(['label', 'precision']),
formatter: s.get(['label', 'formatter'])
},
seriesDataIndices: i.slice()
})
}
}
function MR(r, t, e) {
var n = (e.axesInfo = [])
A(t, function (i, a) {
var o = i.axisPointerModel.option,
s = r[a]
s
? (!i.useHandle && (o.status = 'show'),
(o.value = s.value),
(o.seriesDataIndices = (s.payloadBatch || []).slice()))
: !i.useHandle && (o.status = 'hide'),
o.status === 'show' &&
n.push({
axisDim: i.axis.dim,
axisIndex: i.axis.model.componentIndex,
value: o.value
})
})
}
function DR(r, t, e, n) {
if (gl(t) || !r.list.length) {
n({ type: 'hideTip' })
return
}
var i = ((r.list[0].dataByAxis[0] || {}).seriesDataIndices || [])[0] || {}
n({
type: 'showTip',
escapeConnect: !0,
x: t[0],
y: t[1],
tooltipOption: e.tooltipOption,
position: e.position,
dataIndexInside: i.dataIndexInside,
dataIndex: i.dataIndex,
seriesIndex: i.seriesIndex,
dataByCoordSys: r.list
})
}
function IR(r, t, e) {
var n = e.getZr(),
i = 'axisPointerLastHighlights',
a = K_(n)[i] || {},
o = (K_(n)[i] = {})
A(r, function (u, f) {
var h = u.axisPointerModel.option
h.status === 'show' &&
A(h.seriesDataIndices, function (c) {
var v = c.seriesIndex + ' | ' + c.dataIndex
o[v] = c
})
})
var s = [],
l = []
A(a, function (u, f) {
!o[f] && l.push(u)
}),
A(o, function (u, f) {
!a[f] && s.push(u)
}),
l.length &&
e.dispatchAction({
type: 'downplay',
escapeConnect: !0,
notBlur: !0,
batch: l
}),
s.length &&
e.dispatchAction({
type: 'highlight',
escapeConnect: !0,
notBlur: !0,
batch: s
})
}
function LR(r, t) {
for (var e = 0; e < (r || []).length; e++) {
var n = r[e]
if (t.axis.dim === n.axisDim && t.axis.model.componentIndex === n.axisIndex)
return n
}
}
function J_(r) {
var t = r.axis.model,
e = {},
n = (e.axisDim = r.axis.dim)
return (
(e.axisIndex = e[n + 'AxisIndex'] = t.componentIndex),
(e.axisName = e[n + 'AxisName'] = t.name),
(e.axisId = e[n + 'AxisId'] = t.id),
e
)
}
function gl(r) {
return !r || r[0] == null || isNaN(r[0]) || r[1] == null || isNaN(r[1])
}
function j_(r) {
d_.registerAxisPointerClass('CartesianAxisPointer', cR),
r.registerComponentModel(pR),
r.registerComponentView(wR),
r.registerPreprocessor(function (t) {
if (t) {
;(!t.axisPointer || t.axisPointer.length === 0) && (t.axisPointer = {})
var e = t.axisPointer.link
e && !z(e) && (t.axisPointer.link = [e])
}
}),
r.registerProcessor(r.PRIORITY.PROCESSOR.STATISTIC, function (t, e) {
t.getComponent('axisPointer').coordSysAxesInfo = pP(t, e)
}),
r.registerAction(
{
type: 'updateAxisPointer',
event: 'updateAxisPointer',
update: ':updateAxisPointer'
},
bR
)
}
function PR(r) {
Re(LP), Re(j_)
}
var t1 = ['x', 'y', 'radius', 'angle', 'single'],
RR = ['cartesian2d', 'polar', 'singleAxis']
function ER(r) {
var t = r.get('coordinateSystem')
return ot(RR, t) >= 0
}
function Gr(r) {
return r + 'Axis'
}
function OR(r, t) {
var e = q(),
n = [],
i = q()
r.eachComponent({ mainType: 'dataZoom', query: t }, function (f) {
i.get(f.uid) || s(f)
})
var a
do (a = !1), r.eachComponent('dataZoom', o)
while (a)
function o(f) {
!i.get(f.uid) && l(f) && (s(f), (a = !0))
}
function s(f) {
i.set(f.uid, !0), n.push(f), u(f)
}
function l(f) {
var h = !1
return (
f.eachTargetAxis(function (c, v) {
var d = e.get(c)
d && d[v] && (h = !0)
}),
h
)
}
function u(f) {
f.eachTargetAxis(function (h, c) {
;(e.get(h) || e.set(h, []))[c] = !0
})
}
return n
}
function e1(r) {
var t = r.ecModel,
e = { infoList: [], infoMap: q() }
return (
r.eachTargetAxis(function (n, i) {
var a = t.getComponent(Gr(n), i)
if (!!a) {
var o = a.getCoordSysModel()
if (!!o) {
var s = o.uid,
l = e.infoMap.get(s)
l ||
((l = { model: o, axisModels: [] }),
e.infoList.push(l),
e.infoMap.set(s, l)),
l.axisModels.push(a)
}
}
}),
e
)
}
var fv = (function () {
function r() {
;(this.indexList = []), (this.indexMap = [])
}
return (
(r.prototype.add = function (t) {
this.indexMap[t] || (this.indexList.push(t), (this.indexMap[t] = !0))
}),
r
)
})(),
kR = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (
(e.type = t.type),
(e._autoThrottle = !0),
(e._noTarget = !0),
(e._rangePropMode = ['percent', 'percent']),
e
)
}
return (
(t.prototype.init = function (e, n, i) {
var a = r1(e)
;(this.settledOption = a),
this.mergeDefaultAndTheme(e, i),
this._doInit(a)
}),
(t.prototype.mergeOption = function (e) {
var n = r1(e)
nt(this.option, e, !0), nt(this.settledOption, n, !0), this._doInit(n)
}),
(t.prototype._doInit = function (e) {
var n = this.option
this._setDefaultThrottle(e), this._updateRangeUse(e)
var i = this.settledOption
A(
[
['start', 'startValue'],
['end', 'endValue']
],
function (a, o) {
this._rangePropMode[o] === 'value' && (n[a[0]] = i[a[0]] = null)
},
this
),
this._resetTarget()
}),
(t.prototype._resetTarget = function () {
var e = this.get('orient', !0),
n = (this._targetAxisInfoMap = q()),
i = this._fillSpecifiedTargetAxis(n)
i
? (this._orient = e || this._makeAutoOrientByTargetAxis())
: ((this._orient = e || 'horizontal'),
this._fillAutoTargetAxisByOrient(n, this._orient)),
(this._noTarget = !0),
n.each(function (a) {
a.indexList.length && (this._noTarget = !1)
}, this)
}),
(t.prototype._fillSpecifiedTargetAxis = function (e) {
var n = !1
return (
A(
t1,
function (i) {
var a = this.getReferringComponents(Gr(i), pb)
if (!!a.specified) {
n = !0
var o = new fv()
A(a.models, function (s) {
o.add(s.componentIndex)
}),
e.set(i, o)
}
},
this
),
n
)
}),
(t.prototype._fillAutoTargetAxisByOrient = function (e, n) {
var i = this.ecModel,
a = !0
if (a) {
var o = n === 'vertical' ? 'y' : 'x',
s = i.findComponents({ mainType: o + 'Axis' })
l(s, o)
}
if (a) {
var s = i.findComponents({
mainType: 'singleAxis',
filter: function (f) {
return f.get('orient', !0) === n
}
})
l(s, 'single')
}
function l(u, f) {
var h = u[0]
if (!!h) {
var c = new fv()
if (
(c.add(h.componentIndex),
e.set(f, c),
(a = !1),
f === 'x' || f === 'y')
) {
var v = h.getReferringComponents('grid', Xt).models[0]
v &&
A(u, function (d) {
h.componentIndex !== d.componentIndex &&
v === d.getReferringComponents('grid', Xt).models[0] &&
c.add(d.componentIndex)
})
}
}
}
a &&
A(
t1,
function (u) {
if (!!a) {
var f = i.findComponents({
mainType: Gr(u),
filter: function (c) {
return c.get('type', !0) === 'category'
}
})
if (f[0]) {
var h = new fv()
h.add(f[0].componentIndex), e.set(u, h), (a = !1)
}
}
},
this
)
}),
(t.prototype._makeAutoOrientByTargetAxis = function () {
var e
return (
this.eachTargetAxis(function (n) {
!e && (e = n)
}, this),
e === 'y' ? 'vertical' : 'horizontal'
)
}),
(t.prototype._setDefaultThrottle = function (e) {
if (
(e.hasOwnProperty('throttle') && (this._autoThrottle = !1),
this._autoThrottle)
) {
var n = this.ecModel.option
this.option.throttle =
n.animation && n.animationDurationUpdate > 0 ? 100 : 20
}
}),
(t.prototype._updateRangeUse = function (e) {
var n = this._rangePropMode,
i = this.get('rangeMode')
A(
[
['start', 'startValue'],
['end', 'endValue']
],
function (a, o) {
var s = e[a[0]] != null,
l = e[a[1]] != null
s && !l
? (n[o] = 'percent')
: !s && l
? (n[o] = 'value')
: i
? (n[o] = i[o])
: s && (n[o] = 'percent')
}
)
}),
(t.prototype.noTarget = function () {
return this._noTarget
}),
(t.prototype.getFirstTargetAxisModel = function () {
var e
return (
this.eachTargetAxis(function (n, i) {
e == null && (e = this.ecModel.getComponent(Gr(n), i))
}, this),
e
)
}),
(t.prototype.eachTargetAxis = function (e, n) {
this._targetAxisInfoMap.each(function (i, a) {
A(i.indexList, function (o) {
e.call(n, a, o)
})
})
}),
(t.prototype.getAxisProxy = function (e, n) {
var i = this.getAxisModel(e, n)
if (i) return i.__dzAxisProxy
}),
(t.prototype.getAxisModel = function (e, n) {
var i = this._targetAxisInfoMap.get(e)
if (i && i.indexMap[n]) return this.ecModel.getComponent(Gr(e), n)
}),
(t.prototype.setRawRange = function (e) {
var n = this.option,
i = this.settledOption
A(
[
['start', 'startValue'],
['end', 'endValue']
],
function (a) {
;(e[a[0]] != null || e[a[1]] != null) &&
((n[a[0]] = i[a[0]] = e[a[0]]), (n[a[1]] = i[a[1]] = e[a[1]]))
},
this
),
this._updateRangeUse(e)
}),
(t.prototype.setCalculatedRange = function (e) {
var n = this.option
A(['start', 'startValue', 'end', 'endValue'], function (i) {
n[i] = e[i]
})
}),
(t.prototype.getPercentRange = function () {
var e = this.findRepresentativeAxisProxy()
if (e) return e.getDataPercentWindow()
}),
(t.prototype.getValueRange = function (e, n) {
if (e == null && n == null) {
var i = this.findRepresentativeAxisProxy()
if (i) return i.getDataValueWindow()
} else return this.getAxisProxy(e, n).getDataValueWindow()
}),
(t.prototype.findRepresentativeAxisProxy = function (e) {
if (e) return e.__dzAxisProxy
for (
var n, i = this._targetAxisInfoMap.keys(), a = 0;
a < i.length;
a++
)
for (
var o = i[a], s = this._targetAxisInfoMap.get(o), l = 0;
l < s.indexList.length;
l++
) {
var u = this.getAxisProxy(o, s.indexList[l])
if (u.hostedBy(this)) return u
n || (n = u)
}
return n
}),
(t.prototype.getRangePropMode = function () {
return this._rangePropMode.slice()
}),
(t.prototype.getOrient = function () {
return this._orient
}),
(t.type = 'dataZoom'),
(t.dependencies = [
'xAxis',
'yAxis',
'radiusAxis',
'angleAxis',
'singleAxis',
'series',
'toolbox'
]),
(t.defaultOption = { z: 4, filterMode: 'filter', start: 0, end: 100 }),
t
)
})(_t)
function r1(r) {
var t = {}
return (
A(['start', 'end', 'startValue', 'endValue', 'throttle'], function (e) {
r.hasOwnProperty(e) && (t[e] = r[e])
}),
t
)
}
var Xa = kR,
BR = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (e.type = t.type), e
}
return (t.type = 'dataZoom.select'), t
})(Xa),
NR = BR,
FR = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (e.type = t.type), e
}
return (
(t.prototype.render = function (e, n, i, a) {
;(this.dataZoomModel = e), (this.ecModel = n), (this.api = i)
}),
(t.type = 'dataZoom'),
t
)
})(xe),
hv = FR,
zR = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (e.type = t.type), e
}
return (t.type = 'dataZoom.select'), t
})(hv),
VR = zR,
bi = A,
n1 = Xi,
GR = (function () {
function r(t, e, n, i) {
;(this._dimName = t),
(this._axisIndex = e),
(this.ecModel = i),
(this._dataZoomModel = n)
}
return (
(r.prototype.hostedBy = function (t) {
return this._dataZoomModel === t
}),
(r.prototype.getDataValueWindow = function () {
return this._valueWindow.slice()
}),
(r.prototype.getDataPercentWindow = function () {
return this._percentWindow.slice()
}),
(r.prototype.getTargetSeriesModels = function () {
var t = []
return (
this.ecModel.eachSeries(function (e) {
if (ER(e)) {
var n = Gr(this._dimName),
i = e.getReferringComponents(n, Xt).models[0]
i && this._axisIndex === i.componentIndex && t.push(e)
}
}, this),
t
)
}),
(r.prototype.getAxisModel = function () {
return this.ecModel.getComponent(
this._dimName + 'Axis',
this._axisIndex
)
}),
(r.prototype.getMinMaxSpan = function () {
return tt(this._minMaxSpan)
}),
(r.prototype.calculateDataWindow = function (t) {
var e = this._dataExtent,
n = this.getAxisModel(),
i = n.axis.scale,
a = this._dataZoomModel.getRangePropMode(),
o = [0, 100],
s = [],
l = [],
u
bi(['start', 'end'], function (c, v) {
var d = t[c],
p = t[c + 'Value']
a[v] === 'percent'
? (d == null && (d = o[v]), (p = i.parse(Bt(d, o, e))))
: ((u = !0),
(p = p == null ? e[v] : i.parse(p)),
(d = Bt(p, e, o))),
(l[v] = p),
(s[v] = d)
}),
n1(l),
n1(s)
var f = this._minMaxSpan
u ? h(l, s, e, o, !1) : h(s, l, o, e, !0)
function h(c, v, d, p, g) {
var m = g ? 'Span' : 'ValueSpan'
Za(0, c, d, 'all', f['min' + m], f['max' + m])
for (var y = 0; y < 2; y++)
(v[y] = Bt(c[y], d, p, !0)), g && (v[y] = i.parse(v[y]))
}
return { valueWindow: l, percentWindow: s }
}),
(r.prototype.reset = function (t) {
if (t === this._dataZoomModel) {
var e = this.getTargetSeriesModels()
;(this._dataExtent = HR(this, this._dimName, e)),
this._updateMinMaxSpan()
var n = this.calculateDataWindow(t.settledOption)
;(this._valueWindow = n.valueWindow),
(this._percentWindow = n.percentWindow),
this._setAxisModel()
}
}),
(r.prototype.filterData = function (t, e) {
if (t !== this._dataZoomModel) return
var n = this._dimName,
i = this.getTargetSeriesModels(),
a = t.get('filterMode'),
o = this._valueWindow
if (a === 'none') return
bi(i, function (l) {
var u = l.getData(),
f = u.mapDimensionsAll(n)
if (!!f.length) {
if (a === 'weakFilter') {
var h = u.getStore(),
c = G(
f,
function (v) {
return u.getDimensionIndex(v)
},
u
)
u.filterSelf(function (v) {
for (var d, p, g, m = 0; m < f.length; m++) {
var y = h.get(c[m], v),
_ = !isNaN(y),
S = y < o[0],
w = y > o[1]
if (_ && !S && !w) return !0
_ && (g = !0), S && (d = !0), w && (p = !0)
}
return g && d && p
})
} else
bi(f, function (v) {
if (a === 'empty')
l.setData(
(u = u.map(v, function (p) {
return s(p) ? p : NaN
}))
)
else {
var d = {}
;(d[v] = o), u.selectRange(d)
}
})
bi(f, function (v) {
u.setApproximateExtent(o, v)
})
}
})
function s(l) {
return l >= o[0] && l <= o[1]
}
}),
(r.prototype._updateMinMaxSpan = function () {
var t = (this._minMaxSpan = {}),
e = this._dataZoomModel,
n = this._dataExtent
bi(
['min', 'max'],
function (i) {
var a = e.get(i + 'Span'),
o = e.get(i + 'ValueSpan')
o != null && (o = this.getAxisModel().axis.scale.parse(o)),
o != null
? (a = Bt(n[0] + o, n, [0, 100], !0))
: a != null && (o = Bt(a, [0, 100], n, !0) - n[0]),
(t[i + 'Span'] = a),
(t[i + 'ValueSpan'] = o)
},
this
)
}),
(r.prototype._setAxisModel = function () {
var t = this.getAxisModel(),
e = this._percentWindow,
n = this._valueWindow
if (!!e) {
var i = $c(n, [0, 500])
i = Math.min(i, 20)
var a = t.axis.scale.rawExtentInfo
e[0] !== 0 && a.setDeterminedMinMax('min', +n[0].toFixed(i)),
e[1] !== 100 && a.setDeterminedMinMax('max', +n[1].toFixed(i)),
a.freeze()
}
}),
r
)
})()
function HR(r, t, e) {
var n = [1 / 0, -1 / 0]
bi(e, function (o) {
vI(n, o.getData(), t)
})
var i = r.getAxisModel(),
a = q0(i.axis.scale, i, n).calculate()
return [a.min, a.max]
}
var WR = GR,
UR = {
getTargetSeries: function (r) {
function t(i) {
r.eachComponent('dataZoom', function (a) {
a.eachTargetAxis(function (o, s) {
var l = r.getComponent(Gr(o), s)
i(o, s, l, a)
})
})
}
t(function (i, a, o, s) {
o.__dzAxisProxy = null
})
var e = []
t(function (i, a, o, s) {
o.__dzAxisProxy ||
((o.__dzAxisProxy = new WR(i, a, s, r)), e.push(o.__dzAxisProxy))
})
var n = q()
return (
A(e, function (i) {
A(i.getTargetSeriesModels(), function (a) {
n.set(a.uid, a)
})
}),
n
)
},
overallReset: function (r, t) {
r.eachComponent('dataZoom', function (e) {
e.eachTargetAxis(function (n, i) {
e.getAxisProxy(n, i).reset(e)
}),
e.eachTargetAxis(function (n, i) {
e.getAxisProxy(n, i).filterData(e, t)
})
}),
r.eachComponent('dataZoom', function (e) {
var n = e.findRepresentativeAxisProxy()
if (n) {
var i = n.getDataPercentWindow(),
a = n.getDataValueWindow()
e.setCalculatedRange({
start: i[0],
end: i[1],
startValue: a[0],
endValue: a[1]
})
}
})
}
},
YR = UR
function ZR(r) {
r.registerAction('dataZoom', function (t, e) {
var n = OR(e, t)
A(n, function (i) {
i.setRawRange({
start: t.start,
end: t.end,
startValue: t.startValue,
endValue: t.endValue
})
})
})
}
var i1 = !1
function vv(r) {
i1 ||
((i1 = !0),
r.registerProcessor(r.PRIORITY.PROCESSOR.FILTER, YR),
ZR(r),
r.registerSubTypeDefaulter('dataZoom', function () {
return 'slider'
}))
}
function $R(r) {
r.registerComponentModel(NR), r.registerComponentView(VR), vv(r)
}
var ke = (function () {
function r() {}
return r
})(),
a1 = {}
function qa(r, t) {
a1[r] = t
}
function o1(r) {
return a1[r]
}
var XR = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (e.type = t.type), e
}
return (
(t.prototype.optionUpdated = function () {
r.prototype.optionUpdated.apply(this, arguments)
var e = this.ecModel
A(this.option.feature, function (n, i) {
var a = o1(i)
a &&
(a.getDefaultOption && (a.defaultOption = a.getDefaultOption(e)),
nt(n, a.defaultOption))
})
}),
(t.type = 'toolbox'),
(t.layoutMode = { type: 'box', ignoreSize: !0 }),
(t.defaultOption = {
show: !0,
z: 6,
orient: 'horizontal',
left: 'right',
top: 'top',
backgroundColor: 'transparent',
borderColor: '#ccc',
borderRadius: 0,
borderWidth: 0,
padding: 5,
itemSize: 15,
itemGap: 8,
showTitle: !0,
iconStyle: { borderColor: '#666', color: 'none' },
emphasis: { iconStyle: { borderColor: '#3E98C5' } },
tooltip: { show: !1, position: 'bottom' }
}),
t
)
})(_t),
qR = XR
function KR(r, t, e) {
var n = t.getBoxLayoutParams(),
i = t.get('padding'),
a = { width: e.getWidth(), height: e.getHeight() },
o = cr(n, a, i)
fi(t.get('orient'), r, t.get('itemGap'), o.width, o.height), sA(r, n, a, i)
}
function s1(r, t) {
var e = ws(t.get('padding')),
n = t.getItemStyle(['color', 'opacity'])
return (
(n.fill = t.get('backgroundColor')),
(r = new St({
shape: {
x: r.x - e[3],
y: r.y - e[0],
width: r.width + e[1] + e[3],
height: r.height + e[0] + e[2],
r: t.get('borderRadius')
},
style: n,
silent: !0,
z2: -1
})),
r
)
}
var QR = (function (r) {
B(t, r)
function t() {
return (r !== null && r.apply(this, arguments)) || this
}
return (
(t.prototype.render = function (e, n, i, a) {
var o = this.group
if ((o.removeAll(), !e.get('show'))) return
var s = +e.get('itemSize'),
l = e.get('orient') === 'vertical',
u = e.get('feature') || {},
f = this._features || (this._features = {}),
h = []
A(u, function (d, p) {
h.push(p)
}),
new Ba(this._featureNames || [], h)
.add(c)
.update(c)
.remove(lt(c, null))
.execute(),
(this._featureNames = h)
function c(d, p) {
var g = h[d],
m = h[p],
y = u[g],
_ = new Nt(y, e, e.ecModel),
S
if (
(a &&
a.newTitle != null &&
a.featureName === g &&
(y.title = a.newTitle),
g && !m)
) {
if (JR(g)) S = { onclick: _.option.onclick, featureName: g }
else {
var w = o1(g)
if (!w) return
S = new w()
}
f[g] = S
} else if (((S = f[m]), !S)) return
;(S.uid = ca('toolbox-feature')),
(S.model = _),
(S.ecModel = n),
(S.api = i)
var x = S instanceof ke
if (!g && m) {
x && S.dispose && S.dispose(n, i)
return
}
if (!_.get('show') || (x && S.unusable)) {
x && S.remove && S.remove(n, i)
return
}
v(_, S, g),
(_.setIconStatus = function (b, T) {
var C = this.option,
M = this.iconPaths
;(C.iconStatus = C.iconStatus || {}),
(C.iconStatus[b] = T),
M[b] && (T === 'emphasis' ? ei : ri)(M[b])
}),
S instanceof ke && S.render && S.render(_, n, i, a)
}
function v(d, p, g) {
var m = d.getModel('iconStyle'),
y = d.getModel(['emphasis', 'iconStyle']),
_ = p instanceof ke && p.getIcons ? p.getIcons() : d.get('icon'),
S = d.get('title') || {},
w,
x
W(_) ? ((w = {}), (w[g] = _)) : (w = _),
W(S) ? ((x = {}), (x[g] = S)) : (x = S)
var b = (d.iconPaths = {})
A(w, function (T, C) {
var M = us(T, {}, { x: -s / 2, y: -s / 2, width: s, height: s })
M.setStyle(m.getItemStyle())
var D = M.ensureState('emphasis')
D.style = y.getItemStyle()
var I = new Et({
style: {
text: x[C],
align: y.get('textAlign'),
borderRadius: y.get('textBorderRadius'),
padding: y.get('textPadding'),
fill: null
},
ignore: !0
})
M.setTextContent(I),
fs({
el: M,
componentModel: e,
itemName: C,
formatterParamsExtra: { title: x[C] }
}),
(M.__title = x[C]),
M.on('mouseover', function () {
var L = y.getItemStyle(),
P = l
? e.get('right') == null && e.get('left') !== 'right'
? 'right'
: 'left'
: e.get('bottom') == null && e.get('top') !== 'bottom'
? 'bottom'
: 'top'
I.setStyle({
fill: y.get('textFill') || L.fill || L.stroke || '#000',
backgroundColor: y.get('textBackgroundColor')
}),
M.setTextConfig({ position: y.get('textPosition') || P }),
(I.ignore = !e.get('showTitle')),
i.enterEmphasis(this)
}).on('mouseout', function () {
d.get(['iconStatus', C]) !== 'emphasis' && i.leaveEmphasis(this),
I.hide()
}),
(d.get(['iconStatus', C]) === 'emphasis' ? ei : ri)(M),
o.add(M),
M.on('click', X(p.onclick, p, n, i, C)),
(b[C] = M)
})
}
KR(o, e, i),
o.add(s1(o.getBoundingRect(), e)),
l ||
o.eachChild(function (d) {
var p = d.__title,
g = d.ensureState('emphasis'),
m = g.textConfig || (g.textConfig = {}),
y = d.getTextContent(),
_ = y && y.ensureState('emphasis')
if (_ && !Q(_) && p) {
var S = _.style || (_.style = {}),
w = Eo(p, Et.makeFont(S)),
x = d.x + o.x,
b = d.y + o.y + s,
T = !1
b + w.height > i.getHeight() && ((m.position = 'top'), (T = !0))
var C = T ? -5 - w.height : s + 10
x + w.width / 2 > i.getWidth()
? ((m.position = ['100%', C]), (S.align = 'right'))
: x - w.width / 2 < 0 &&
((m.position = [0, C]), (S.align = 'left'))
}
})
}),
(t.prototype.updateView = function (e, n, i, a) {
A(this._features, function (o) {
o instanceof ke && o.updateView && o.updateView(o.model, n, i, a)
})
}),
(t.prototype.remove = function (e, n) {
A(this._features, function (i) {
i instanceof ke && i.remove && i.remove(e, n)
}),
this.group.removeAll()
}),
(t.prototype.dispose = function (e, n) {
A(this._features, function (i) {
i instanceof ke && i.dispose && i.dispose(e, n)
})
}),
(t.type = 'toolbox'),
t
)
})(xe)
function JR(r) {
return r.indexOf('my') === 0
}
var jR = QR,
tE = (function (r) {
B(t, r)
function t() {
return (r !== null && r.apply(this, arguments)) || this
}
return (
(t.prototype.onclick = function (e, n) {
var i = this.model,
a = i.get('name') || e.get('title.0.text') || 'echarts',
o = n.getZr().painter.getType() === 'svg',
s = o ? 'svg' : i.get('type', !0) || 'png',
l = n.getConnectedDataURL({
type: s,
backgroundColor:
i.get('backgroundColor', !0) ||
e.get('backgroundColor') ||
'#fff',
connectedBackgroundColor: i.get('connectedBackgroundColor'),
excludeComponents: i.get('excludeComponents'),
pixelRatio: i.get('pixelRatio')
}),
u = at.browser
if (Q(MouseEvent) && (u.newEdge || (!u.ie && !u.edge))) {
var f = document.createElement('a')
;(f.download = a + '.' + s), (f.target = '_blank'), (f.href = l)
var h = new MouseEvent('click', {
view: document.defaultView,
bubbles: !0,
cancelable: !1
})
f.dispatchEvent(h)
} else if (window.navigator.msSaveOrOpenBlob || o) {
var c = l.split(','),
v = c[0].indexOf('base64') > -1,
d = o ? decodeURIComponent(c[1]) : c[1]
v && (d = window.atob(d))
var p = a + '.' + s
if (window.navigator.msSaveOrOpenBlob) {
for (var g = d.length, m = new Uint8Array(g); g--; )
m[g] = d.charCodeAt(g)
var y = new Blob([m])
window.navigator.msSaveOrOpenBlob(y, p)
} else {
var _ = document.createElement('iframe')
document.body.appendChild(_)
var S = _.contentWindow,
w = S.document
w.open('image/svg+xml', 'replace'),
w.write(d),
w.close(),
S.focus(),
w.execCommand('SaveAs', !0, p),
document.body.removeChild(_)
}
} else {
var x = i.get('lang'),
b =
'
',
T = window.open()
T.document.write(b), (T.document.title = a)
}
}),
(t.getDefaultOption = function (e) {
var n = {
show: !0,
icon: 'M4.7,22.9L29.3,45.5L54.7,23.4M4.6,43.6L4.6,58L53.8,58L53.8,43.6M29.2,45.1L29.2,0',
title: e.getLocaleModel().get(['toolbox', 'saveAsImage', 'title']),
type: 'png',
connectedBackgroundColor: '#fff',
name: '',
excludeComponents: ['toolbox'],
lang: e.getLocaleModel().get(['toolbox', 'saveAsImage', 'lang'])
}
return n
}),
t
)
})(ke),
eE = tE,
l1 = '__ec_magicType_stack__',
rE = [['line', 'bar'], ['stack']],
nE = (function (r) {
B(t, r)
function t() {
return (r !== null && r.apply(this, arguments)) || this
}
return (
(t.prototype.getIcons = function () {
var e = this.model,
n = e.get('icon'),
i = {}
return (
A(e.get('type'), function (a) {
n[a] && (i[a] = n[a])
}),
i
)
}),
(t.getDefaultOption = function (e) {
var n = {
show: !0,
type: [],
icon: {
line: 'M4.1,28.9h7.1l9.3-22l7.4,38l9.7-19.7l3,12.8h14.9M4.1,58h51.4',
bar: 'M6.7,22.9h10V48h-10V22.9zM24.9,13h10v35h-10V13zM43.2,2h10v46h-10V2zM3.1,58h53.7',
stack:
'M8.2,38.4l-8.4,4.1l30.6,15.3L60,42.5l-8.1-4.1l-21.5,11L8.2,38.4z M51.9,30l-8.1,4.2l-13.4,6.9l-13.9-6.9L8.2,30l-8.4,4.2l8.4,4.2l22.2,11l21.5-11l8.1-4.2L51.9,30z M51.9,21.7l-8.1,4.2L35.7,30l-5.3,2.8L24.9,30l-8.4-4.1l-8.3-4.2l-8.4,4.2L8.2,30l8.3,4.2l13.9,6.9l13.4-6.9l8.1-4.2l8.1-4.1L51.9,21.7zM30.4,2.2L-0.2,17.5l8.4,4.1l8.3,4.2l8.4,4.2l5.5,2.7l5.3-2.7l8.1-4.2l8.1-4.2l8.1-4.1L30.4,2.2z'
},
title: e.getLocaleModel().get(['toolbox', 'magicType', 'title']),
option: {},
seriesIndex: {}
}
return n
}),
(t.prototype.onclick = function (e, n, i) {
var a = this.model,
o = a.get(['seriesIndex', i])
if (!!u1[i]) {
var s = { series: [] },
l = function (h) {
var c = h.subType,
v = h.id,
d = u1[i](c, v, h, a)
d && (j(d, h.option), s.series.push(d))
var p = h.coordinateSystem
if (
p &&
p.type === 'cartesian2d' &&
(i === 'line' || i === 'bar')
) {
var g = p.getAxesByScale('ordinal')[0]
if (g) {
var m = g.dim,
y = m + 'Axis',
_ = h.getReferringComponents(y, Xt).models[0],
S = _.componentIndex
s[y] = s[y] || []
for (var w = 0; w <= S; w++) s[y][S] = s[y][S] || {}
s[y][S].boundaryGap = i === 'bar'
}
}
}
A(rE, function (h) {
ot(h, i) >= 0 &&
A(h, function (c) {
a.setIconStatus(c, 'normal')
})
}),
a.setIconStatus(i, 'emphasis'),
e.eachComponent(
{
mainType: 'series',
query: o == null ? null : { seriesIndex: o }
},
l
)
var u,
f = i
i === 'stack' &&
((u = nt(
{ stack: a.option.title.tiled, tiled: a.option.title.stack },
a.option.title
)),
a.get(['iconStatus', i]) !== 'emphasis' && (f = 'tiled')),
n.dispatchAction({
type: 'changeMagicType',
currentType: f,
newOption: s,
newTitle: u,
featureName: 'magicType'
})
}
}),
t
)
})(ke),
u1 = {
line: function (r, t, e, n) {
if (r === 'bar')
return nt(
{
id: t,
type: 'line',
data: e.get('data'),
stack: e.get('stack'),
markPoint: e.get('markPoint'),
markLine: e.get('markLine')
},
n.get(['option', 'line']) || {},
!0
)
},
bar: function (r, t, e, n) {
if (r === 'line')
return nt(
{
id: t,
type: 'bar',
data: e.get('data'),
stack: e.get('stack'),
markPoint: e.get('markPoint'),
markLine: e.get('markLine')
},
n.get(['option', 'bar']) || {},
!0
)
},
stack: function (r, t, e, n) {
var i = e.get('stack') === l1
if (r === 'line' || r === 'bar')
return (
n.setIconStatus('stack', i ? 'normal' : 'emphasis'),
nt(
{ id: t, stack: i ? '' : l1 },
n.get(['option', 'stack']) || {},
!0
)
)
}
}
Je(
{
type: 'changeMagicType',
event: 'magicTypeChanged',
update: 'prepareAndUpdate'
},
function (r, t) {
t.mergeOption(r.newOption)
}
)
var iE = nE,
ml = new Array(60).join('-'),
Ti = ' '
function aE(r) {
var t = {},
e = [],
n = []
return (
r.eachRawSeries(function (i) {
var a = i.coordinateSystem
if (a && (a.type === 'cartesian2d' || a.type === 'polar')) {
var o = a.getBaseAxis()
if (o.type === 'category') {
var s = o.dim + '_' + o.index
t[s] ||
((t[s] = {
categoryAxis: o,
valueAxis: a.getOtherAxis(o),
series: []
}),
n.push({ axisDim: o.dim, axisIndex: o.index })),
t[s].series.push(i)
} else e.push(i)
} else e.push(i)
}),
{ seriesGroupByCategoryAxis: t, other: e, meta: n }
)
}
function oE(r) {
var t = []
return (
A(r, function (e, n) {
var i = e.categoryAxis,
a = e.valueAxis,
o = a.dim,
s = [' '].concat(
G(e.series, function (v) {
return v.name
})
),
l = [i.model.getCategories()]
A(e.series, function (v) {
var d = v.getRawData()
l.push(
v.getRawData().mapArray(d.mapDimension(o), function (p) {
return p
})
)
})
for (var u = [s.join(Ti)], f = 0; f < l[0].length; f++) {
for (var h = [], c = 0; c < l.length; c++) h.push(l[c][f])
u.push(h.join(Ti))
}
t.push(
u.join(`
`)
)
}),
t.join(
`
` +
ml +
`
`
)
)
}
function sE(r) {
return G(r, function (t) {
var e = t.getRawData(),
n = [t.name],
i = []
return (
e.each(e.dimensions, function () {
for (
var a = arguments.length,
o = arguments[a - 1],
s = e.getName(o),
l = 0;
l < a - 1;
l++
)
i[l] = arguments[l]
n.push((s ? s + Ti : '') + i.join(Ti))
}),
n.join(`
`)
)
}).join(
`
` +
ml +
`
`
)
}
function lE(r) {
var t = aE(r)
return {
value: Lt([oE(t.seriesGroupByCategoryAxis), sE(t.other)], function (e) {
return !!e.replace(/[\n\t\s]/g, '')
}).join(
`
` +
ml +
`
`
),
meta: t.meta
}
}
function yl(r) {
return r.replace(/^\s\s*/, '').replace(/\s\s*$/, '')
}
function uE(r) {
var t = r.slice(
0,
r.indexOf(`
`)
)
if (t.indexOf(Ti) >= 0) return !0
}
var cv = new RegExp('[' + Ti + ']+', 'g')
function fE(r) {
for (
var t = r.split(/\n+/g),
e = yl(t.shift()).split(cv),
n = [],
i = G(e, function (l) {
return { name: l, data: [] }
}),
a = 0;
a < t.length;
a++
) {
var o = yl(t[a]).split(cv)
n.push(o.shift())
for (var s = 0; s < o.length; s++) i[s] && (i[s].data[a] = o[s])
}
return { series: i, categories: n }
}
function hE(r) {
for (
var t = r.split(/\n+/g), e = yl(t.shift()), n = [], i = 0;
i < t.length;
i++
) {
var a = yl(t[i])
if (!!a) {
var o = a.split(cv),
s = '',
l = void 0,
u = !1
isNaN(o[0])
? ((u = !0),
(s = o[0]),
(o = o.slice(1)),
(n[i] = { name: s, value: [] }),
(l = n[i].value))
: (l = n[i] = [])
for (var f = 0; f < o.length; f++) l.push(+o[f])
l.length === 1 && (u ? (n[i].value = l[0]) : (n[i] = l[0]))
}
}
return { name: e, data: n }
}
function vE(r, t) {
var e = r.split(
new RegExp(
`
*` +
ml +
`
*`,
'g'
)
),
n = { series: [] }
return (
A(e, function (i, a) {
if (uE(i)) {
var o = fE(i),
s = t[a],
l = s.axisDim + 'Axis'
s &&
((n[l] = n[l] || []),
(n[l][s.axisIndex] = { data: o.categories }),
(n.series = n.series.concat(o.series)))
} else {
var o = hE(i)
n.series.push(o)
}
}),
n
)
}
var cE = (function (r) {
B(t, r)
function t() {
return (r !== null && r.apply(this, arguments)) || this
}
return (
(t.prototype.onclick = function (e, n) {
setTimeout(function () {
n.dispatchAction({ type: 'hideTip' })
})
var i = n.getDom(),
a = this.model
this._dom && i.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 = a.get('backgroundColor') || '#fff')
var s = document.createElement('h4'),
l = a.get('lang') || []
;(s.innerHTML = l[0] || a.get('title')),
(s.style.cssText = 'margin:10px 20px'),
(s.style.color = a.get('textColor'))
var u = document.createElement('div'),
f = document.createElement('textarea')
u.style.cssText = 'overflow:auto'
var h = a.get('optionToContent'),
c = a.get('contentToOption'),
v = lE(e)
if (Q(h)) {
var d = h(n.getOption())
W(d) ? (u.innerHTML = d) : Ri(d) && u.appendChild(d)
} else {
f.readOnly = a.get('readOnly')
var p = f.style
;(p.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'),
(p.color = a.get('textColor')),
(p.borderColor = a.get('textareaBorderColor')),
(p.backgroundColor = a.get('textareaColor')),
(f.value = v.value),
u.appendChild(f)
}
var g = v.meta,
m = document.createElement('div')
m.style.cssText = 'position:absolute;bottom:5px;left:0;right:0'
var y =
'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')
;(y += ';background-color:' + a.get('buttonColor')),
(y += ';color:' + a.get('buttonTextColor'))
var w = this
function x() {
i.removeChild(o), (w._dom = null)
}
Wl(_, 'click', x),
Wl(S, 'click', function () {
if ((c == null && h != null) || (c != null && h == null)) {
x()
return
}
var b
try {
Q(c) ? (b = c(u, n.getOption())) : (b = vE(f.value, g))
} catch (T) {
throw (x(), new Error('Data view format error ' + T))
}
b && n.dispatchAction({ type: 'changeDataView', newOption: b }), x()
}),
(_.innerHTML = l[1]),
(S.innerHTML = l[2]),
(S.style.cssText = _.style.cssText = y),
!a.get('readOnly') && m.appendChild(S),
m.appendChild(_),
o.appendChild(s),
o.appendChild(u),
o.appendChild(m),
(u.style.height = i.clientHeight - 80 + 'px'),
i.appendChild(o),
(this._dom = o)
}),
(t.prototype.remove = function (e, n) {
this._dom && n.getDom().removeChild(this._dom)
}),
(t.prototype.dispose = function (e, n) {
this.remove(e, n)
}),
(t.getDefaultOption = function (e) {
var n = {
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: e.getLocaleModel().get(['toolbox', 'dataView', 'title']),
lang: e.getLocaleModel().get(['toolbox', 'dataView', 'lang']),
backgroundColor: '#fff',
textColor: '#000',
textareaColor: '#fff',
textareaBorderColor: '#333',
buttonColor: '#c23531',
buttonTextColor: '#fff'
}
return n
}),
t
)
})(ke)
function dE(r, t) {
return G(r, function (e, n) {
var i = t && t[n]
if (Y(i) && !z(i)) {
var a = Y(e) && !z(e)
a || (e = { value: e })
var o = i.name != null && e.name == null
return (e = j(e, i)), o && delete e.name, e
} else return e
})
}
Je(
{
type: 'changeDataView',
event: 'dataViewChanged',
update: 'prepareAndUpdate'
},
function (r, t) {
var e = []
A(r.newOption.series, function (n) {
var i = t.getSeriesByName(n.name)[0]
if (!i) e.push(N({ type: 'scatter' }, n))
else {
var a = i.get('data')
e.push({ name: n.name, data: dE(n.data, a) })
}
}),
t.mergeOption(j({ series: e }, r.newOption))
}
)
var pE = cE,
f1 = A,
h1 = wt()
function gE(r, t) {
var e = dv(r)
f1(t, function (n, i) {
for (var a = e.length - 1; a >= 0; a--) {
var o = e[a]
if (o[i]) break
}
if (a < 0) {
var s = r.queryComponents({
mainType: 'dataZoom',
subType: 'select',
id: i
})[0]
if (s) {
var l = s.getPercentRange()
e[0][i] = { dataZoomId: i, start: l[0], end: l[1] }
}
}
}),
e.push(t)
}
function mE(r) {
var t = dv(r),
e = t[t.length - 1]
t.length > 1 && t.pop()
var n = {}
return (
f1(e, function (i, a) {
for (var o = t.length - 1; o >= 0; o--)
if (((i = t[o][a]), i)) {
n[a] = i
break
}
}),
n
)
}
function yE(r) {
h1(r).snapshots = null
}
function _E(r) {
return dv(r).length
}
function dv(r) {
var t = h1(r)
return t.snapshots || (t.snapshots = [{}]), t.snapshots
}
var SE = (function (r) {
B(t, r)
function t() {
return (r !== null && r.apply(this, arguments)) || this
}
return (
(t.prototype.onclick = function (e, n) {
yE(e), n.dispatchAction({ type: 'restore', from: this.uid })
}),
(t.getDefaultOption = function (e) {
var n = {
show: !0,
icon: 'M3.8,33.4 M47,18.9h9.8V8.7 M56.3,20.1 C52.1,9,40.5,0.6,26.8,2.1C12.6,3.7,1.6,16.2,2.1,30.6 M13,41.1H3.1v10.2 M3.7,39.9c4.2,11.1,15.8,19.5,29.5,18 c14.2-1.6,25.2-14.1,24.7-28.5',
title: e.getLocaleModel().get(['toolbox', 'restore', 'title'])
}
return n
}),
t
)
})(ke)
Je(
{ type: 'restore', event: 'restore', update: 'prepareAndUpdate' },
function (r, t) {
t.resetOption('recreate')
}
)
var xE = SE,
wE = [
'grid',
'xAxis',
'yAxis',
'geo',
'graph',
'polar',
'radiusAxis',
'angleAxis',
'bmap'
],
bE = (function () {
function r(t, e, n) {
var i = this
this._targetInfoList = []
var a = v1(e, t)
A(TE, function (o, s) {
;(!n || !n.include || ot(n.include, s) >= 0) && o(a, i._targetInfoList)
})
}
return (
(r.prototype.setOutputRanges = function (t, e) {
return (
this.matchOutputRanges(t, e, function (n, i, a) {
if (
((n.coordRanges || (n.coordRanges = [])).push(i), !n.coordRange)
) {
n.coordRange = i
var o = gv[n.brushType](0, a, i)
n.__rangeOffset = {
offset: g1[n.brushType](o.values, n.range, [1, 1]),
xyMinMax: o.xyMinMax
}
}
}),
t
)
}),
(r.prototype.matchOutputRanges = function (t, e, n) {
A(
t,
function (i) {
var a = this.findTargetInfo(i, e)
a &&
a !== !0 &&
A(a.coordSyses, function (o) {
var s = gv[i.brushType](1, o, i.range, !0)
n(i, s.values, o, e)
})
},
this
)
}),
(r.prototype.setInputRanges = function (t, e) {
A(
t,
function (n) {
var i = this.findTargetInfo(n, e)
if (((n.range = n.range || []), i && i !== !0)) {
n.panelId = i.panelId
var a = gv[n.brushType](0, i.coordSys, n.coordRange),
o = n.__rangeOffset
n.range = o
? g1[n.brushType](
a.values,
o.offset,
CE(a.xyMinMax, o.xyMinMax)
)
: a.values
}
},
this
)
}),
(r.prototype.makePanelOpts = function (t, e) {
return G(this._targetInfoList, function (n) {
var i = n.getPanelRect()
return {
panelId: n.panelId,
defaultBrushType: e ? e(n) : null,
clipPath: tR(i),
isTargetByCursor: rR(i, t, n.coordSysModel),
getLinearBrushOtherExtent: eR(i)
}
})
}),
(r.prototype.controlSeries = function (t, e, n) {
var i = this.findTargetInfo(t, n)
return i === !0 || (i && ot(i.coordSyses, e.coordinateSystem) >= 0)
}),
(r.prototype.findTargetInfo = function (t, e) {
for (
var n = this._targetInfoList, i = v1(e, t), a = 0;
a < n.length;
a++
) {
var o = n[a],
s = t.panelId
if (s) {
if (o.panelId === s) return o
} else for (var l = 0; l < c1.length; l++) if (c1[l](i, o)) return o
}
return !0
}),
r
)
})()
function pv(r) {
return r[0] > r[1] && r.reverse(), r
}
function v1(r, t) {
return Ji(r, t, { includeMainTypes: wE })
}
var TE = {
grid: function (r, t) {
var e = r.xAxisModels,
n = r.yAxisModels,
i = r.gridModels,
a = q(),
o = {},
s = {}
;(!e && !n && !i) ||
(A(e, function (l) {
var u = l.axis.grid.model
a.set(u.id, u), (o[u.id] = !0)
}),
A(n, function (l) {
var u = l.axis.grid.model
a.set(u.id, u), (s[u.id] = !0)
}),
A(i, function (l) {
a.set(l.id, l), (o[l.id] = !0), (s[l.id] = !0)
}),
a.each(function (l) {
var u = l.coordinateSystem,
f = []
A(u.getCartesians(), function (h, c) {
;(ot(e, h.getAxis('x').model) >= 0 ||
ot(n, h.getAxis('y').model) >= 0) &&
f.push(h)
}),
t.push({
panelId: 'grid--' + l.id,
gridModel: l,
coordSysModel: l,
coordSys: f[0],
coordSyses: f,
getPanelRect: d1.grid,
xAxisDeclared: o[l.id],
yAxisDeclared: s[l.id]
})
}))
},
geo: function (r, t) {
A(r.geoModels, function (e) {
var n = e.coordinateSystem
t.push({
panelId: 'geo--' + e.id,
geoModel: e,
coordSysModel: e,
coordSys: n,
coordSyses: [n],
getPanelRect: d1.geo
})
})
}
},
c1 = [
function (r, t) {
var e = r.xAxisModel,
n = r.yAxisModel,
i = r.gridModel
return (
!i && e && (i = e.axis.grid.model),
!i && n && (i = n.axis.grid.model),
i && i === t.gridModel
)
},
function (r, t) {
var e = r.geoModel
return e && e === t.geoModel
}
],
d1 = {
grid: function () {
return this.coordSys.master.getRect().clone()
},
geo: function () {
var r = this.coordSys,
t = r.getBoundingRect().clone()
return t.applyTransform(ls(r)), t
}
},
gv = {
lineX: lt(p1, 0),
lineY: lt(p1, 1),
rect: function (r, t, e, n) {
var i = r
? t.pointToData([e[0][0], e[1][0]], n)
: t.dataToPoint([e[0][0], e[1][0]], n),
a = r
? t.pointToData([e[0][1], e[1][1]], n)
: t.dataToPoint([e[0][1], e[1][1]], n),
o = [pv([i[0], a[0]]), pv([i[1], a[1]])]
return { values: o, xyMinMax: o }
},
polygon: function (r, t, e, n) {
var i = [
[1 / 0, -1 / 0],
[1 / 0, -1 / 0]
],
a = G(e, function (o) {
var s = r ? t.pointToData(o, n) : t.dataToPoint(o, n)
return (
(i[0][0] = Math.min(i[0][0], s[0])),
(i[1][0] = Math.min(i[1][0], s[1])),
(i[0][1] = Math.max(i[0][1], s[0])),
(i[1][1] = Math.max(i[1][1], s[1])),
s
)
})
return { values: a, xyMinMax: i }
}
}
function p1(r, t, e, n) {
var i = e.getAxis(['x', 'y'][r]),
a = pv(
G([0, 1], function (s) {
return t
? i.coordToData(i.toLocalCoord(n[s]), !0)
: i.toGlobalCoord(i.dataToCoord(n[s]))
})
),
o = []
return (o[r] = a), (o[1 - r] = [NaN, NaN]), { values: a, xyMinMax: o }
}
var g1 = {
lineX: lt(m1, 0),
lineY: lt(m1, 1),
rect: function (r, t, e) {
return [
[r[0][0] - e[0] * t[0][0], r[0][1] - e[0] * t[0][1]],
[r[1][0] - e[1] * t[1][0], r[1][1] - e[1] * t[1][1]]
]
},
polygon: function (r, t, e) {
return G(r, function (n, i) {
return [n[0] - e[0] * t[i][0], n[1] - e[1] * t[i][1]]
})
}
}
function m1(r, t, e, n) {
return [t[0] - n[r] * e[0], t[1] - n[r] * e[1]]
}
function CE(r, t) {
var e = y1(r),
n = y1(t),
i = [e[0] / n[0], e[1] / n[1]]
return isNaN(i[0]) && (i[0] = 1), isNaN(i[1]) && (i[1] = 1), i
}
function y1(r) {
return r ? [r[0][1] - r[0][0], r[1][1] - r[1][0]] : [NaN, NaN]
}
var _1 = bE,
mv = A,
AE = hb('toolbox-dataZoom_'),
ME = (function (r) {
B(t, r)
function t() {
return (r !== null && r.apply(this, arguments)) || this
}
return (
(t.prototype.render = function (e, n, i, a) {
this._brushController ||
((this._brushController = new jP(i.getZr())),
this._brushController.on('brush', X(this._onBrush, this)).mount()),
LE(e, n, this, a, i),
IE(e, n)
}),
(t.prototype.onclick = function (e, n, i) {
DE[i].call(this)
}),
(t.prototype.remove = function (e, n) {
this._brushController && this._brushController.unmount()
}),
(t.prototype.dispose = function (e, n) {
this._brushController && this._brushController.dispose()
}),
(t.prototype._onBrush = function (e) {
var n = e.areas
if (!e.isEnd || !n.length) return
var i = {},
a = this.ecModel
this._brushController.updateCovers([])
var o = new _1(yv(this.model), a, { include: ['grid'] })
o.matchOutputRanges(n, a, function (u, f, h) {
if (h.type === 'cartesian2d') {
var c = u.brushType
c === 'rect'
? (s('x', h, f[0]), s('y', h, f[1]))
: s({ lineX: 'x', lineY: 'y' }[c], h, f)
}
}),
gE(a, i),
this._dispatchZoomAction(i)
function s(u, f, h) {
var c = f.getAxis(u),
v = c.model,
d = l(u, v, a),
p = d.findRepresentativeAxisProxy(v).getMinMaxSpan()
;(p.minValueSpan != null || p.maxValueSpan != null) &&
(h = Za(
0,
h.slice(),
c.scale.getExtent(),
0,
p.minValueSpan,
p.maxValueSpan
)),
d &&
(i[d.id] = { dataZoomId: d.id, startValue: h[0], endValue: h[1] })
}
function l(u, f, h) {
var c
return (
h.eachComponent(
{ mainType: 'dataZoom', subType: 'select' },
function (v) {
var d = v.getAxisModel(u, f.componentIndex)
d && (c = v)
}
),
c
)
}
}),
(t.prototype._dispatchZoomAction = function (e) {
var n = []
mv(e, function (i, a) {
n.push(tt(i))
}),
n.length &&
this.api.dispatchAction({
type: 'dataZoom',
from: this.uid,
batch: n
})
}),
(t.getDefaultOption = function (e) {
var n = {
show: !0,
filterMode: 'filter',
icon: {
zoom: 'M0,13.5h26.9 M13.5,26.9V0 M32.1,13.5H58V58H13.5 V32.1',
back: 'M22,1.4L9.9,13.5l12.3,12.3 M10.3,13.5H54.9v44.6 H10.3v-26'
},
title: e.getLocaleModel().get(['toolbox', 'dataZoom', 'title']),
brushStyle: { borderWidth: 0, color: 'rgba(210,219,238,0.2)' }
}
return n
}),
t
)
})(ke),
DE = {
zoom: function () {
var r = !this._isZoomActive
this.api.dispatchAction({
type: 'takeGlobalCursor',
key: 'dataZoomSelect',
dataZoomSelectActive: r
})
},
back: function () {
this._dispatchZoomAction(mE(this.ecModel))
}
}
function yv(r) {
var t = {
xAxisIndex: r.get('xAxisIndex', !0),
yAxisIndex: r.get('yAxisIndex', !0),
xAxisId: r.get('xAxisId', !0),
yAxisId: r.get('yAxisId', !0)
}
return (
t.xAxisIndex == null && t.xAxisId == null && (t.xAxisIndex = 'all'),
t.yAxisIndex == null && t.yAxisId == null && (t.yAxisIndex = 'all'),
t
)
}
function IE(r, t) {
r.setIconStatus('back', _E(t) > 1 ? 'emphasis' : 'normal')
}
function LE(r, t, e, n, i) {
var a = e._isZoomActive
n &&
n.type === 'takeGlobalCursor' &&
(a = n.key === 'dataZoomSelect' ? n.dataZoomSelectActive : !1),
(e._isZoomActive = a),
r.setIconStatus('zoom', a ? 'emphasis' : 'normal')
var o = new _1(yv(r), t, { include: ['grid'] }),
s = o.makePanelOpts(i, function (l) {
return l.xAxisDeclared && !l.yAxisDeclared
? 'lineX'
: !l.xAxisDeclared && l.yAxisDeclared
? 'lineY'
: 'rect'
})
e._brushController
.setPanels(s)
.enableBrush(
a && s.length
? {
brushType: 'auto',
brushStyle: r.getModel('brushStyle').getItemStyle()
}
: !1
)
}
gA('dataZoom', function (r) {
var t = r.getComponent('toolbox', 0),
e = ['feature', 'dataZoom']
if (!t || t.get(e) == null) return
var n = t.getModel(e),
i = [],
a = yv(n),
o = Ji(r, a)
mv(o.xAxisModels, function (l) {
return s(l, 'xAxis', 'xAxisIndex')
}),
mv(o.yAxisModels, function (l) {
return s(l, 'yAxis', 'yAxisIndex')
})
function s(l, u, f) {
var h = l.componentIndex,
c = {
type: 'select',
$fromToolbox: !0,
filterMode: n.get('filterMode', !0) || 'filter',
id: AE + u + h
}
;(c[f] = h), i.push(c)
}
return i
})
var PE = ME
function RE(r) {
r.registerComponentModel(qR),
r.registerComponentView(jR),
qa('saveAsImage', eE),
qa('magicType', iE),
qa('dataView', pE),
qa('dataZoom', PE),
qa('restore', xE),
Re($R)
}
var EE = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (e.type = t.type), e
}
return (
(t.type = 'tooltip'),
(t.dependencies = ['axisPointer']),
(t.defaultOption = {
z: 60,
show: !0,
showContent: !0,
trigger: 'item',
triggerOn: 'mousemove|click',
alwaysShowContent: !1,
displayMode: 'single',
renderMode: 'auto',
confine: null,
showDelay: 0,
hideDelay: 100,
transitionDuration: 0.4,
enterable: !1,
backgroundColor: '#fff',
shadowBlur: 10,
shadowColor: 'rgba(0, 0, 0, .2)',
shadowOffsetX: 1,
shadowOffsetY: 2,
borderRadius: 4,
borderWidth: 1,
padding: null,
extraCssText: '',
axisPointer: {
type: 'line',
axis: 'auto',
animation: 'auto',
animationDurationUpdate: 200,
animationEasingUpdate: 'exponentialOut',
crossStyle: { color: '#999', width: 1, type: 'dashed', textStyle: {} }
},
textStyle: { color: '#666', fontSize: 14 }
}),
t
)
})(_t),
OE = EE
function S1(r) {
var t = r.get('confine')
return t != null ? !!t : r.get('renderMode') === 'richText'
}
function x1(r) {
if (!!at.domSupported) {
for (
var t = document.documentElement.style, e = 0, n = r.length;
e < n;
e++
)
if (r[e] in t) return r[e]
}
}
var w1 = x1([
'transform',
'webkitTransform',
'OTransform',
'MozTransform',
'msTransform'
]),
kE = x1([
'webkitTransition',
'transition',
'OTransition',
'MozTransition',
'msTransition'
])
function b1(r, t) {
if (!r) return t
t = lg(t, !0)
var e = r.indexOf(t)
return (r = e === -1 ? t : '-' + r.slice(0, e) + '-' + t), r.toLowerCase()
}
function BE(r, t) {
var e =
r.currentStyle ||
(document.defaultView && document.defaultView.getComputedStyle(r))
return e ? (t ? e[t] : e) : null
}
var NE = b1(kE, 'transition'),
_v = b1(w1, 'transform'),
FE =
'position:absolute;display:block;border-style:solid;white-space:nowrap;z-index:9999999;' +
(at.transform3dSupported ? 'will-change:transform;' : '')
function zE(r) {
return (
(r =
r === 'left'
? 'right'
: r === 'right'
? 'left'
: r === 'top'
? 'bottom'
: 'top'),
r
)
}
function VE(r, t, e) {
if (!W(e) || e === 'inside') return ''
var n = r.get('backgroundColor'),
i = r.get('borderWidth')
t = yn(t)
var a = zE(e),
o = Math.max(Math.round(i) * 1.5, 6),
s = '',
l = _v + ':',
u
ot(['left', 'right'], a) > -1
? ((s += 'top:50%'),
(l +=
'translateY(-50%) rotate(' + (u = a === 'left' ? -225 : -45) + 'deg)'))
: ((s += 'left:50%'),
(l += 'translateX(-50%) rotate(' + (u = a === 'top' ? 225 : 45) + 'deg)'))
var f = (u * Math.PI) / 180,
h = o + i,
c = h * Math.abs(Math.cos(f)) + h * Math.abs(Math.sin(f)),
v =
Math.round(
((c - Math.SQRT2 * i) / 2 + Math.SQRT2 * i - (c - h) / 2) * 100
) / 100
s += ';' + a + ':-' + v + 'px'
var d = t + ' solid ' + i + 'px;',
p = [
'position:absolute;width:' + o + 'px;height:' + o + 'px;',
s + ';' + l + ';',
'border-bottom:' + d,
'border-right:' + d,
'background-color:' + n + ';'
]
return ''
}
function GE(r, t) {
var e = 'cubic-bezier(0.23,1,0.32,1)',
n = ' ' + r / 2 + 's ' + e,
i = 'opacity' + n + ',visibility' + n
return (
t ||
((n = ' ' + r + 's ' + e),
(i += at.transformSupported ? ',' + _v + n : ',left' + n + ',top' + n)),
NE + ':' + i
)
}
function T1(r, t, e) {
var n = r.toFixed(0) + 'px',
i = t.toFixed(0) + 'px'
if (!at.transformSupported)
return e
? 'top:' + i + ';left:' + n + ';'
: [
['top', i],
['left', n]
]
var a = at.transform3dSupported,
o =
'translate' + (a ? '3d' : '') + '(' + n + ',' + i + (a ? ',0' : '') + ')'
return e
? 'top:0;left:0;' + _v + ':' + o + ';'
: [
['top', 0],
['left', 0],
[w1, o]
]
}
function HE(r) {
var t = [],
e = r.get('fontSize'),
n = r.getTextColor()
n && t.push('color:' + n),
t.push('font:' + r.getFont()),
e && t.push('line-height:' + Math.round((e * 3) / 2) + 'px')
var i = r.get('textShadowColor'),
a = r.get('textShadowBlur') || 0,
o = r.get('textShadowOffsetX') || 0,
s = r.get('textShadowOffsetY') || 0
return (
i && a && t.push('text-shadow:' + o + 'px ' + s + 'px ' + a + 'px ' + i),
A(['decoration', 'align'], function (l) {
var u = r.get(l)
u && t.push('text-' + l + ':' + u)
}),
t.join(';')
)
}
function WE(r, t, e) {
var n = [],
i = r.get('transitionDuration'),
a = r.get('backgroundColor'),
o = r.get('shadowBlur'),
s = r.get('shadowColor'),
l = r.get('shadowOffsetX'),
u = r.get('shadowOffsetY'),
f = r.getModel('textStyle'),
h = hm(r, 'html'),
c = l + 'px ' + u + 'px ' + o + 'px ' + s
return (
n.push('box-shadow:' + c),
t && i && n.push(GE(i, e)),
a && n.push('background-color:' + a),
A(['width', 'color', 'radius'], function (v) {
var d = 'border-' + v,
p = lg(d),
g = r.get(p)
g != null && n.push(d + ':' + g + (v === 'color' ? '' : 'px'))
}),
n.push(HE(f)),
h != null && n.push('padding:' + ws(h).join('px ') + 'px'),
n.join(';') + ';'
)
}
function C1(r, t, e, n, i) {
var a = t && t.painter
if (e) {
var o = a && a.getViewportRoot()
o && Gx(r, o, document.body, n, i)
} else {
;(r[0] = n), (r[1] = i)
var s = a && a.getViewportRootOffset()
s && ((r[0] += s.offsetLeft), (r[1] += s.offsetTop))
}
;(r[2] = r[0] / t.getWidth()), (r[3] = r[1] / t.getHeight())
}
var UE = (function () {
function r(t, e, n) {
if (
((this._show = !1),
(this._styleCoord = [0, 0, 0, 0]),
(this._enterable = !0),
(this._firstShow = !0),
(this._longHide = !0),
at.wxa)
)
return null
var i = document.createElement('div')
;(i.domBelongToZr = !0), (this.el = i)
var a = (this._zr = e.getZr()),
o = (this._appendToBody = n && n.appendToBody)
C1(this._styleCoord, a, o, e.getWidth() / 2, e.getHeight() / 2),
o ? document.body.appendChild(i) : t.appendChild(i),
(this._container = t)
var s = this
;(i.onmouseenter = function () {
s._enterable && (clearTimeout(s._hideTimeout), (s._show = !0)),
(s._inContent = !0)
}),
(i.onmousemove = function (l) {
if (((l = l || window.event), !s._enterable)) {
var u = a.handler,
f = a.painter.getViewportRoot()
he(f, l, !0), u.dispatch('mousemove', l)
}
}),
(i.onmouseleave = function () {
;(s._inContent = !1),
s._enterable && s._show && s.hideLater(s._hideDelay)
})
}
return (
(r.prototype.update = function (t) {
var e = this._container,
n = BE(e, 'position'),
i = e.style
i.position !== 'absolute' &&
n !== 'absolute' &&
(i.position = 'relative')
var a = t.get('alwaysShowContent')
a && this._moveIfResized(),
(this.el.className = t.get('className') || '')
}),
(r.prototype.show = function (t, e) {
clearTimeout(this._hideTimeout), clearTimeout(this._longHideTimeout)
var n = this.el,
i = n.style,
a = this._styleCoord
n.innerHTML
? (i.cssText =
FE +
WE(t, !this._firstShow, this._longHide) +
T1(a[0], a[1], !0) +
('border-color:' + yn(e) + ';') +
(t.get('extraCssText') || '') +
(';pointer-events:' + (this._enterable ? 'auto' : 'none')))
: (i.display = 'none'),
(this._show = !0),
(this._firstShow = !1),
(this._longHide = !1)
}),
(r.prototype.setContent = function (t, e, n, i, a) {
var o = this.el
if (t == null) {
o.innerHTML = ''
return
}
var s = ''
if (
(W(a) && n.get('trigger') === 'item' && !S1(n) && (s = VE(n, i, a)),
W(t))
)
o.innerHTML = t + s
else if (t) {
;(o.innerHTML = ''), z(t) || (t = [t])
for (var l = 0; l < t.length; l++)
Ri(t[l]) && t[l].parentNode !== o && o.appendChild(t[l])
if (s && o.childNodes.length) {
var u = document.createElement('div')
;(u.innerHTML = s), o.appendChild(u)
}
}
}),
(r.prototype.setEnterable = function (t) {
this._enterable = t
}),
(r.prototype.getSize = function () {
var t = this.el
return [t.offsetWidth, t.offsetHeight]
}),
(r.prototype.moveTo = function (t, e) {
var n = this._styleCoord
if (
(C1(n, this._zr, this._appendToBody, t, e),
n[0] != null && n[1] != null)
) {
var i = this.el.style,
a = T1(n[0], n[1])
A(a, function (o) {
i[o[0]] = o[1]
})
}
}),
(r.prototype._moveIfResized = function () {
var t = this._styleCoord[2],
e = this._styleCoord[3]
this.moveTo(t * this._zr.getWidth(), e * this._zr.getHeight())
}),
(r.prototype.hide = function () {
var t = this,
e = this.el.style
;(e.visibility = 'hidden'),
(e.opacity = '0'),
at.transform3dSupported && (e.willChange = ''),
(this._show = !1),
(this._longHideTimeout = setTimeout(function () {
return (t._longHide = !0)
}, 500))
}),
(r.prototype.hideLater = function (t) {
this._show &&
!(this._inContent && this._enterable) &&
(t
? ((this._hideDelay = t),
(this._show = !1),
(this._hideTimeout = setTimeout(X(this.hide, this), t)))
: this.hide())
}),
(r.prototype.isShow = function () {
return this._show
}),
(r.prototype.dispose = function () {
this.el.parentNode.removeChild(this.el)
}),
r
)
})(),
YE = UE,
ZE = (function () {
function r(t) {
;(this._show = !1),
(this._styleCoord = [0, 0, 0, 0]),
(this._enterable = !0),
(this._zr = t.getZr()),
M1(this._styleCoord, this._zr, t.getWidth() / 2, t.getHeight() / 2)
}
return (
(r.prototype.update = function (t) {
var e = t.get('alwaysShowContent')
e && this._moveIfResized()
}),
(r.prototype.show = function () {
this._hideTimeout && clearTimeout(this._hideTimeout),
this.el.show(),
(this._show = !0)
}),
(r.prototype.setContent = function (t, e, n, i, a) {
var o = this
Y(t) && ut(''), this.el && this._zr.remove(this.el)
var s = n.getModel('textStyle')
;(this.el = new Et({
style: {
rich: e.richTextStyles,
text: t,
lineHeight: 22,
borderWidth: 1,
borderColor: i,
textShadowColor: s.get('textShadowColor'),
fill: n.get(['textStyle', 'color']),
padding: hm(n, 'richText'),
verticalAlign: 'top',
align: 'left'
},
z: n.get('z')
})),
A(
[
'backgroundColor',
'borderRadius',
'shadowColor',
'shadowBlur',
'shadowOffsetX',
'shadowOffsetY'
],
function (u) {
o.el.style[u] = n.get(u)
}
),
A(
['textShadowBlur', 'textShadowOffsetX', 'textShadowOffsetY'],
function (u) {
o.el.style[u] = s.get(u) || 0
}
),
this._zr.add(this.el)
var l = this
this.el.on('mouseover', function () {
l._enterable && (clearTimeout(l._hideTimeout), (l._show = !0)),
(l._inContent = !0)
}),
this.el.on('mouseout', function () {
l._enterable && l._show && l.hideLater(l._hideDelay),
(l._inContent = !1)
})
}),
(r.prototype.setEnterable = function (t) {
this._enterable = t
}),
(r.prototype.getSize = function () {
var t = this.el,
e = this.el.getBoundingRect(),
n = A1(t.style)
return [e.width + n.left + n.right, e.height + n.top + n.bottom]
}),
(r.prototype.moveTo = function (t, e) {
var n = this.el
if (n) {
var i = this._styleCoord
M1(i, this._zr, t, e), (t = i[0]), (e = i[1])
var a = n.style,
o = Hr(a.borderWidth || 0),
s = A1(a)
;(n.x = t + o + s.left), (n.y = e + o + s.top), n.markRedraw()
}
}),
(r.prototype._moveIfResized = function () {
var t = this._styleCoord[2],
e = this._styleCoord[3]
this.moveTo(t * this._zr.getWidth(), e * this._zr.getHeight())
}),
(r.prototype.hide = function () {
this.el && this.el.hide(), (this._show = !1)
}),
(r.prototype.hideLater = function (t) {
this._show &&
!(this._inContent && this._enterable) &&
(t
? ((this._hideDelay = t),
(this._show = !1),
(this._hideTimeout = setTimeout(X(this.hide, this), t)))
: this.hide())
}),
(r.prototype.isShow = function () {
return this._show
}),
(r.prototype.dispose = function () {
this._zr.remove(this.el)
}),
r
)
})()
function Hr(r) {
return Math.max(0, r)
}
function A1(r) {
var t = Hr(r.shadowBlur || 0),
e = Hr(r.shadowOffsetX || 0),
n = Hr(r.shadowOffsetY || 0)
return {
left: Hr(t - e),
right: Hr(t + e),
top: Hr(t - n),
bottom: Hr(t + n)
}
}
function M1(r, t, e, n) {
;(r[0] = e),
(r[1] = n),
(r[2] = r[0] / t.getWidth()),
(r[3] = r[1] / t.getHeight())
}
var $E = ZE,
XE = new St({ shape: { x: -1, y: -1, width: 2, height: 2 } }),
qE = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (e.type = t.type), e
}
return (
(t.prototype.init = function (e, n) {
if (!(at.node || !n.getDom())) {
var i = e.getComponent('tooltip'),
a = (this._renderMode = mb(i.get('renderMode')))
this._tooltipContent =
a === 'richText'
? new $E(n)
: new YE(n.getDom(), n, {
appendToBody: i.get('appendToBody', !0)
})
}
}),
(t.prototype.render = function (e, n, i) {
if (!(at.node || !i.getDom())) {
this.group.removeAll(),
(this._tooltipModel = e),
(this._ecModel = n),
(this._api = i),
(this._alwaysShowContent = e.get('alwaysShowContent'))
var a = this._tooltipContent
a.update(e),
a.setEnterable(e.get('enterable')),
this._initGlobalListener(),
this._keepShow(),
this._renderMode !== 'richText' && e.get('transitionDuration')
? Os(this, '_updatePosition', 50, 'fixRate')
: ks(this, '_updatePosition')
}
}),
(t.prototype._initGlobalListener = function () {
var e = this._tooltipModel,
n = e.get('triggerOn')
$_(
'itemTooltip',
this._api,
X(function (i, a, o) {
n !== 'none' &&
(n.indexOf(i) >= 0
? this._tryShow(a, o)
: i === 'leave' && this._hide(o))
}, this)
)
}),
(t.prototype._keepShow = function () {
var e = this._tooltipModel,
n = this._ecModel,
i = this._api,
a = e.get('triggerOn')
if (
this._lastX != null &&
this._lastY != null &&
a !== 'none' &&
a !== 'click'
) {
var o = this
clearTimeout(this._refreshUpdateTimeout),
(this._refreshUpdateTimeout = setTimeout(function () {
!i.isDisposed() &&
o.manuallyShowTip(e, n, i, {
x: o._lastX,
y: o._lastY,
dataByCoordSys: o._lastDataByCoordSys
})
}))
}
}),
(t.prototype.manuallyShowTip = function (e, n, i, a) {
if (!(a.from === this.uid || at.node || !i.getDom())) {
var o = D1(a, i)
this._ticket = ''
var s = a.dataByCoordSys,
l = jE(a, n, i)
if (l) {
var u = l.el.getBoundingRect().clone()
u.applyTransform(l.el.transform),
this._tryShow(
{
offsetX: u.x + u.width / 2,
offsetY: u.y + u.height / 2,
target: l.el,
position: a.position,
positionDefault: 'bottom'
},
o
)
} else if (a.tooltip && a.x != null && a.y != null) {
var f = XE
;(f.x = a.x),
(f.y = a.y),
f.update(),
(ct(f).tooltipConfig = { name: null, option: a.tooltip }),
this._tryShow({ offsetX: a.x, offsetY: a.y, target: f }, o)
} else if (s)
this._tryShow(
{
offsetX: a.x,
offsetY: a.y,
position: a.position,
dataByCoordSys: s,
tooltipOption: a.tooltipOption
},
o
)
else if (a.seriesIndex != null) {
if (this._manuallyAxisShowTip(e, n, i, a)) return
var h = q_(a, n),
c = h.point[0],
v = h.point[1]
c != null &&
v != null &&
this._tryShow(
{
offsetX: c,
offsetY: v,
target: h.el,
position: a.position,
positionDefault: 'bottom'
},
o
)
} else
a.x != null &&
a.y != null &&
(i.dispatchAction({ type: 'updateAxisPointer', x: a.x, y: a.y }),
this._tryShow(
{
offsetX: a.x,
offsetY: a.y,
position: a.position,
target: i.getZr().findHover(a.x, a.y).target
},
o
))
}
}),
(t.prototype.manuallyHideTip = function (e, n, i, a) {
var o = this._tooltipContent
!this._alwaysShowContent &&
this._tooltipModel &&
o.hideLater(this._tooltipModel.get('hideDelay')),
(this._lastX = this._lastY = this._lastDataByCoordSys = null),
a.from !== this.uid && this._hide(D1(a, i))
}),
(t.prototype._manuallyAxisShowTip = function (e, n, i, a) {
var o = a.seriesIndex,
s = a.dataIndex,
l = n.getComponent('axisPointer').coordSysAxesInfo
if (!(o == null || s == null || l == null)) {
var u = n.getSeriesByIndex(o)
if (!!u) {
var f = u.getData(),
h = Ka(
[f.getItemModel(s), u, (u.coordinateSystem || {}).model],
this._tooltipModel
)
if (h.get('trigger') === 'axis')
return (
i.dispatchAction({
type: 'updateAxisPointer',
seriesIndex: o,
dataIndex: s,
position: a.position
}),
!0
)
}
}
}),
(t.prototype._tryShow = function (e, n) {
var i = e.target,
a = this._tooltipModel
if (!!a) {
;(this._lastX = e.offsetX), (this._lastY = e.offsetY)
var o = e.dataByCoordSys
if (o && o.length) this._showAxisTooltip(o, e)
else if (i) {
this._lastDataByCoordSys = null
var s, l
Ia(
i,
function (u) {
if (ct(u).dataIndex != null) return (s = u), !0
if (ct(u).tooltipConfig != null) return (l = u), !0
},
!0
),
s
? this._showSeriesItemTooltip(e, s, n)
: l
? this._showComponentItemTooltip(e, l, n)
: this._hide(n)
} else (this._lastDataByCoordSys = null), this._hide(n)
}
}),
(t.prototype._showOrMove = function (e, n) {
var i = e.get('showDelay')
;(n = X(n, this)),
clearTimeout(this._showTimout),
i > 0 ? (this._showTimout = setTimeout(n, i)) : n()
}),
(t.prototype._showAxisTooltip = function (e, n) {
var i = this._ecModel,
a = this._tooltipModel,
o = [n.offsetX, n.offsetY],
s = Ka([n.tooltipOption], a),
l = this._renderMode,
u = [],
f = Aa('section', { blocks: [], noHeader: !0 }),
h = [],
c = new Hf()
A(e, function (y) {
A(y.dataByAxis, function (_) {
var S = i.getComponent(_.axisDim + 'Axis', _.axisIndex),
w = _.value
if (!(!S || w == null)) {
var x = W_(w, S.axis, i, _.seriesDataIndices, _.valueLabelOpt),
b = Aa('section', {
header: x,
noHeader: !Ge(x),
sortBlocks: !0,
blocks: []
})
f.blocks.push(b),
A(_.seriesDataIndices, function (T) {
var C = i.getSeriesByIndex(T.seriesIndex),
M = T.dataIndexInside,
D = C.getDataParams(M)
if (!(D.dataIndex < 0)) {
;(D.axisDim = _.axisDim),
(D.axisIndex = _.axisIndex),
(D.axisType = _.axisType),
(D.axisId = _.axisId),
(D.axisValue = Th(S.axis, { value: w })),
(D.axisValueLabel = x),
(D.marker = c.makeTooltipMarker('item', yn(D.color), l))
var I = Zg(C.formatTooltip(M, !0, null)),
L = I.frag
if (L) {
var P = Ka([C], a).get('valueFormatter')
b.blocks.push(P ? N({ valueFormatter: P }, L) : L)
}
I.text && h.push(I.text), u.push(D)
}
})
}
})
}),
f.blocks.reverse(),
h.reverse()
var v = n.position,
d = s.get('order'),
p = um(f, c, l, d, i.get('useUTC'), s.get('textStyle'))
p && h.unshift(p)
var g =
l === 'richText'
? `
`
: '
',
m = h.join(g)
this._showOrMove(s, function () {
this._updateContentNotChangedOnAxis(e, u)
? this._updatePosition(s, v, o[0], o[1], this._tooltipContent, u)
: this._showTooltipContent(
s,
m,
u,
Math.random() + '',
o[0],
o[1],
v,
null,
c
)
})
}),
(t.prototype._showSeriesItemTooltip = function (e, n, i) {
var a = this._ecModel,
o = ct(n),
s = o.seriesIndex,
l = a.getSeriesByIndex(s),
u = o.dataModel || l,
f = o.dataIndex,
h = o.dataType,
c = u.getData(h),
v = this._renderMode,
d = e.positionDefault,
p = Ka(
[c.getItemModel(f), u, l && (l.coordinateSystem || {}).model],
this._tooltipModel,
d ? { position: d } : null
),
g = p.get('trigger')
if (!(g != null && g !== 'item')) {
var m = u.getDataParams(f, h),
y = new Hf()
m.marker = y.makeTooltipMarker('item', yn(m.color), v)
var _ = Zg(u.formatTooltip(f, !1, h)),
S = p.get('order'),
w = p.get('valueFormatter'),
x = _.frag,
b = x
? um(
w ? N({ valueFormatter: w }, x) : x,
y,
v,
S,
a.get('useUTC'),
p.get('textStyle')
)
: _.text,
T = 'item_' + u.name + '_' + f
this._showOrMove(p, function () {
this._showTooltipContent(
p,
b,
m,
T,
e.offsetX,
e.offsetY,
e.position,
e.target,
y
)
}),
i({
type: 'showTip',
dataIndexInside: f,
dataIndex: c.getRawIndex(f),
seriesIndex: s,
from: this.uid
})
}
}),
(t.prototype._showComponentItemTooltip = function (e, n, i) {
var a = ct(n),
o = a.tooltipConfig,
s = o.option || {}
if (W(s)) {
var l = s
s = { content: l, formatter: l }
}
var u = [s],
f = this._ecModel.getComponent(a.componentMainType, a.componentIndex)
f && u.push(f), u.push({ formatter: s.content })
var h = e.positionDefault,
c = Ka(u, this._tooltipModel, h ? { position: h } : null),
v = c.get('content'),
d = Math.random() + '',
p = new Hf()
this._showOrMove(c, function () {
var g = tt(c.get('formatterParams') || {})
this._showTooltipContent(
c,
v,
g,
d,
e.offsetX,
e.offsetY,
e.position,
n,
p
)
}),
i({ type: 'showTip', from: this.uid })
}),
(t.prototype._showTooltipContent = function (e, n, i, a, o, s, l, u, f) {
if (((this._ticket = ''), !(!e.get('showContent') || !e.get('show')))) {
var h = this._tooltipContent
h.setEnterable(e.get('enterable'))
var c = e.get('formatter')
l = l || e.get('position')
var v = n,
d = this._getNearestPoint(
[o, s],
i,
e.get('trigger'),
e.get('borderColor')
),
p = d.color
if (c)
if (W(c)) {
var g = e.ecModel.get('useUTC'),
m = z(i) ? i[0] : i,
y = m && m.axisType && m.axisType.indexOf('time') >= 0
;(v = c), y && (v = ms(m.axisValue, v, g)), (v = fg(v, i, !0))
} else if (Q(c)) {
var _ = X(function (S, w) {
S === this._ticket &&
(h.setContent(w, f, e, p, l),
this._updatePosition(e, l, o, s, h, i, u))
}, this)
;(this._ticket = a), (v = c(i, a, _))
} else v = c
h.setContent(v, f, e, p, l),
h.show(e, p),
this._updatePosition(e, l, o, s, h, i, u)
}
}),
(t.prototype._getNearestPoint = function (e, n, i, a) {
if (i === 'axis' || z(n))
return { color: a || (this._renderMode === 'html' ? '#fff' : 'none') }
if (!z(n)) return { color: a || n.color || n.borderColor }
}),
(t.prototype._updatePosition = function (e, n, i, a, o, s, l) {
var u = this._api.getWidth(),
f = this._api.getHeight()
n = n || e.get('position')
var h = o.getSize(),
c = e.get('align'),
v = e.get('verticalAlign'),
d = l && l.getBoundingRect().clone()
if (
(l && d.applyTransform(l.transform),
Q(n) &&
(n = n([i, a], s, o.el, d, {
viewSize: [u, f],
contentSize: h.slice()
})),
z(n))
)
(i = yt(n[0], u)), (a = yt(n[1], f))
else if (Y(n)) {
var p = n
;(p.width = h[0]), (p.height = h[1])
var g = cr(p, { width: u, height: f })
;(i = g.x), (a = g.y), (c = null), (v = null)
} else if (W(n) && l) {
var m = JE(n, d, h, e.get('borderWidth'))
;(i = m[0]), (a = m[1])
} else {
var m = KE(i, a, o, u, f, c ? null : 20, v ? null : 20)
;(i = m[0]), (a = m[1])
}
if (
(c && (i -= I1(c) ? h[0] / 2 : c === 'right' ? h[0] : 0),
v && (a -= I1(v) ? h[1] / 2 : v === 'bottom' ? h[1] : 0),
S1(e))
) {
var m = QE(i, a, o, u, f)
;(i = m[0]), (a = m[1])
}
o.moveTo(i, a)
}),
(t.prototype._updateContentNotChangedOnAxis = function (e, n) {
var i = this._lastDataByCoordSys,
a = this._cbParamsList,
o = !!i && i.length === e.length
return (
o &&
A(i, function (s, l) {
var u = s.dataByAxis || [],
f = e[l] || {},
h = f.dataByAxis || []
;(o = o && u.length === h.length),
o &&
A(u, function (c, v) {
var d = h[v] || {},
p = c.seriesDataIndices || [],
g = d.seriesDataIndices || []
;(o =
o &&
c.value === d.value &&
c.axisType === d.axisType &&
c.axisId === d.axisId &&
p.length === g.length),
o &&
A(p, function (m, y) {
var _ = g[y]
o =
o &&
m.seriesIndex === _.seriesIndex &&
m.dataIndex === _.dataIndex
}),
a &&
A(c.seriesDataIndices, function (m) {
var y = m.seriesIndex,
_ = n[y],
S = a[y]
_ && S && S.data !== _.data && (o = !1)
})
})
}),
(this._lastDataByCoordSys = e),
(this._cbParamsList = n),
!!o
)
}),
(t.prototype._hide = function (e) {
;(this._lastDataByCoordSys = null),
e({ type: 'hideTip', from: this.uid })
}),
(t.prototype.dispose = function (e, n) {
at.node ||
!n.getDom() ||
(ks(this, '_updatePosition'),
this._tooltipContent.dispose(),
uv('itemTooltip', n))
}),
(t.type = 'tooltip'),
t
)
})(xe)
function Ka(r, t, e) {
var n = t.ecModel,
i
e ? ((i = new Nt(e, n, n)), (i = new Nt(t.option, i, n))) : (i = t)
for (var a = r.length - 1; a >= 0; a--) {
var o = r[a]
o &&
(o instanceof Nt && (o = o.get('tooltip', !0)),
W(o) && (o = { formatter: o }),
o && (i = new Nt(o, i, n)))
}
return i
}
function D1(r, t) {
return r.dispatchAction || X(t.dispatchAction, t)
}
function KE(r, t, e, n, i, a, o) {
var s = e.getSize(),
l = s[0],
u = s[1]
return (
a != null && (r + l + a + 2 > n ? (r -= l + a) : (r += a)),
o != null && (t + u + o > i ? (t -= u + o) : (t += o)),
[r, t]
)
}
function QE(r, t, e, n, i) {
var a = e.getSize(),
o = a[0],
s = a[1]
return (
(r = Math.min(r + o, n) - o),
(t = Math.min(t + s, i) - s),
(r = Math.max(r, 0)),
(t = Math.max(t, 0)),
[r, t]
)
}
function JE(r, t, e, n) {
var i = e[0],
a = e[1],
o = Math.ceil(Math.SQRT2 * n) + 8,
s = 0,
l = 0,
u = t.width,
f = t.height
switch (r) {
case 'inside':
;(s = t.x + u / 2 - i / 2), (l = t.y + f / 2 - a / 2)
break
case 'top':
;(s = t.x + u / 2 - i / 2), (l = t.y - a - o)
break
case 'bottom':
;(s = t.x + u / 2 - i / 2), (l = t.y + f + o)
break
case 'left':
;(s = t.x - i - o), (l = t.y + f / 2 - a / 2)
break
case 'right':
;(s = t.x + u + o), (l = t.y + f / 2 - a / 2)
}
return [s, l]
}
function I1(r) {
return r === 'center' || r === 'middle'
}
function jE(r, t, e) {
var n = Mu(r).queryOptionMap,
i = n.keys()[0]
if (!(!i || i === 'series')) {
var a = ji(t, i, n.get(i), {
useDefault: !1,
enableAll: !1,
enableNone: !1
}),
o = a.models[0]
if (!!o) {
var s = e.getViewOfComponentModel(o),
l
if (
(s.group.traverse(function (u) {
var f = ct(u).tooltipConfig
if (f && f.name === r.name) return (l = u), !0
}),
l)
)
return { componentMainType: i, componentIndex: o.componentIndex, el: l }
}
}
}
var tO = qE
function eO(r) {
Re(j_),
r.registerComponentModel(OE),
r.registerComponentView(tO),
r.registerAction(
{ type: 'showTip', event: 'showTip', update: 'tooltip:manuallyShowTip' },
$t
),
r.registerAction(
{ type: 'hideTip', event: 'hideTip', update: 'tooltip:manuallyHideTip' },
$t
)
}
var rO = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (
(e.type = t.type), (e.layoutMode = { type: 'box', ignoreSize: !0 }), e
)
}
return (
(t.type = 'title'),
(t.defaultOption = {
z: 6,
show: !0,
text: '',
target: 'blank',
subtext: '',
subtarget: 'blank',
left: 0,
top: 0,
backgroundColor: 'rgba(0,0,0,0)',
borderColor: '#ccc',
borderWidth: 0,
padding: 5,
itemGap: 10,
textStyle: { fontSize: 18, fontWeight: 'bold', color: '#464646' },
subtextStyle: { fontSize: 12, color: '#6E7079' }
}),
t
)
})(_t),
nO = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (e.type = t.type), e
}
return (
(t.prototype.render = function (e, n, i) {
if ((this.group.removeAll(), !!e.get('show'))) {
var a = this.group,
o = e.getModel('textStyle'),
s = e.getModel('subtextStyle'),
l = e.get('textAlign'),
u = ht(e.get('textBaseline'), e.get('textVerticalAlign')),
f = new Et({
style: vr(
o,
{ text: e.get('text'), fill: o.getTextColor() },
{ disableBox: !0 }
),
z2: 10
}),
h = f.getBoundingRect(),
c = e.get('subtext'),
v = new Et({
style: vr(
s,
{
text: c,
fill: s.getTextColor(),
y: h.height + e.get('itemGap'),
verticalAlign: 'top'
},
{ disableBox: !0 }
),
z2: 10
}),
d = e.get('link'),
p = e.get('sublink'),
g = e.get('triggerEvent', !0)
;(f.silent = !d && !g),
(v.silent = !p && !g),
d &&
f.on('click', function () {
hg(d, '_' + e.get('target'))
}),
p &&
v.on('click', function () {
hg(p, '_' + e.get('subtarget'))
}),
(ct(f).eventData = ct(v).eventData =
g
? { componentType: 'title', componentIndex: e.componentIndex }
: null),
a.add(f),
c && a.add(v)
var m = a.getBoundingRect(),
y = e.getBoxLayoutParams()
;(y.width = m.width), (y.height = m.height)
var _ = cr(
y,
{ width: i.getWidth(), height: i.getHeight() },
e.get('padding')
)
l ||
((l = e.get('left') || e.get('right')),
l === 'middle' && (l = 'center'),
l === 'right'
? (_.x += _.width)
: l === 'center' && (_.x += _.width / 2)),
u ||
((u = e.get('top') || e.get('bottom')),
u === 'center' && (u = 'middle'),
u === 'bottom'
? (_.y += _.height)
: u === 'middle' && (_.y += _.height / 2),
(u = u || 'top')),
(a.x = _.x),
(a.y = _.y),
a.markRedraw()
var S = { align: l, verticalAlign: u }
f.setStyle(S), v.setStyle(S), (m = a.getBoundingRect())
var w = _.margin,
x = e.getItemStyle(['color', 'opacity'])
x.fill = e.get('backgroundColor')
var b = new St({
shape: {
x: m.x - w[3],
y: m.y - w[0],
width: m.width + w[1] + w[3],
height: m.height + w[0] + w[2],
r: e.get('borderRadius')
},
style: x,
subPixelOptimize: !0,
silent: !0
})
a.add(b)
}
}),
(t.type = 'title'),
t
)
})(xe)
function iO(r) {
r.registerComponentModel(rO), r.registerComponentView(nO)
}
var aO = function (r, t) {
if (t === 'all')
return {
type: 'all',
title: r.getLocaleModel().get(['legend', 'selector', 'all'])
}
if (t === 'inverse')
return {
type: 'inverse',
title: r.getLocaleModel().get(['legend', 'selector', 'inverse'])
}
},
oO = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (
(e.type = t.type), (e.layoutMode = { type: 'box', ignoreSize: !0 }), e
)
}
return (
(t.prototype.init = function (e, n, i) {
this.mergeDefaultAndTheme(e, i),
(e.selected = e.selected || {}),
this._updateSelector(e)
}),
(t.prototype.mergeOption = function (e, n) {
r.prototype.mergeOption.call(this, e, n), this._updateSelector(e)
}),
(t.prototype._updateSelector = function (e) {
var n = e.selector,
i = this.ecModel
n === !0 && (n = e.selector = ['all', 'inverse']),
z(n) &&
A(n, function (a, o) {
W(a) && (a = { type: a }), (n[o] = nt(a, aO(i, a.type)))
})
}),
(t.prototype.optionUpdated = function () {
this._updateData(this.ecModel)
var e = this._data
if (e[0] && this.get('selectedMode') === 'single') {
for (var n = !1, i = 0; i < e.length; i++) {
var a = e[i].get('name')
if (this.isSelected(a)) {
this.select(a), (n = !0)
break
}
}
!n && this.select(e[0].get('name'))
}
}),
(t.prototype._updateData = function (e) {
var n = [],
i = []
e.eachRawSeries(function (s) {
var l = s.name
i.push(l)
var u
if (s.legendVisualProvider) {
var f = s.legendVisualProvider,
h = f.getAllNames()
e.isSeriesFiltered(s) || (i = i.concat(h)),
h.length ? (n = n.concat(h)) : (u = !0)
} else u = !0
u && Au(s) && n.push(s.name)
}),
(this._availableNames = i)
var a = this.get('data') || n,
o = G(
a,
function (s) {
return (
(W(s) || dt(s)) && (s = { name: s }),
new Nt(s, this, this.ecModel)
)
},
this
)
this._data = o
}),
(t.prototype.getData = function () {
return this._data
}),
(t.prototype.select = function (e) {
var n = this.option.selected,
i = this.get('selectedMode')
if (i === 'single') {
var a = this._data
A(a, function (o) {
n[o.get('name')] = !1
})
}
n[e] = !0
}),
(t.prototype.unSelect = function (e) {
this.get('selectedMode') !== 'single' && (this.option.selected[e] = !1)
}),
(t.prototype.toggleSelected = function (e) {
var n = this.option.selected
n.hasOwnProperty(e) || (n[e] = !0),
this[n[e] ? 'unSelect' : 'select'](e)
}),
(t.prototype.allSelect = function () {
var e = this._data,
n = this.option.selected
A(e, function (i) {
n[i.get('name', !0)] = !0
})
}),
(t.prototype.inverseSelect = function () {
var e = this._data,
n = this.option.selected
A(e, function (i) {
var a = i.get('name', !0)
n.hasOwnProperty(a) || (n[a] = !0), (n[a] = !n[a])
})
}),
(t.prototype.isSelected = function (e) {
var n = this.option.selected
return (
!(n.hasOwnProperty(e) && !n[e]) && ot(this._availableNames, e) >= 0
)
}),
(t.prototype.getOrient = function () {
return this.get('orient') === 'vertical'
? { index: 1, name: 'vertical' }
: { index: 0, name: 'horizontal' }
}),
(t.type = 'legend.plain'),
(t.dependencies = ['series']),
(t.defaultOption = {
z: 4,
show: !0,
orient: 'horizontal',
left: 'center',
top: 0,
align: 'auto',
backgroundColor: 'rgba(0,0,0,0)',
borderColor: '#ccc',
borderRadius: 0,
borderWidth: 0,
padding: 5,
itemGap: 10,
itemWidth: 25,
itemHeight: 14,
symbolRotate: 'inherit',
symbolKeepAspect: !0,
inactiveColor: '#ccc',
inactiveBorderColor: '#ccc',
inactiveBorderWidth: 'auto',
itemStyle: {
color: 'inherit',
opacity: 'inherit',
borderColor: 'inherit',
borderWidth: 'auto',
borderCap: 'inherit',
borderJoin: 'inherit',
borderDashOffset: 'inherit',
borderMiterLimit: 'inherit'
},
lineStyle: {
width: 'auto',
color: 'inherit',
inactiveColor: '#ccc',
inactiveWidth: 2,
opacity: 'inherit',
type: 'inherit',
cap: 'inherit',
join: 'inherit',
dashOffset: 'inherit',
miterLimit: 'inherit'
},
textStyle: { color: '#333' },
selectedMode: !0,
selector: !1,
selectorLabel: {
show: !0,
borderRadius: 10,
padding: [3, 5, 3, 5],
fontSize: 12,
fontFamily: 'sans-serif',
color: '#666',
borderWidth: 1,
borderColor: '#666'
},
emphasis: {
selectorLabel: { show: !0, color: '#eee', backgroundColor: '#666' }
},
selectorPosition: 'auto',
selectorItemGap: 7,
selectorButtonGap: 10,
tooltip: { show: !1 }
}),
t
)
})(_t),
Sv = oO,
Ci = lt,
xv = A,
_l = At,
sO = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (e.type = t.type), (e.newlineDisabled = !1), e
}
return (
(t.prototype.init = function () {
this.group.add((this._contentGroup = new _l())),
this.group.add((this._selectorGroup = new _l())),
(this._isFirstRender = !0)
}),
(t.prototype.getContentGroup = function () {
return this._contentGroup
}),
(t.prototype.getSelectorGroup = function () {
return this._selectorGroup
}),
(t.prototype.render = function (e, n, i) {
var a = this._isFirstRender
if (
((this._isFirstRender = !1), this.resetInner(), !!e.get('show', !0))
) {
var o = e.get('align'),
s = e.get('orient')
;(!o || o === 'auto') &&
(o =
e.get('left') === 'right' && s === 'vertical' ? 'right' : 'left')
var l = e.get('selector', !0),
u = e.get('selectorPosition', !0)
l &&
(!u || u === 'auto') &&
(u = s === 'horizontal' ? 'end' : 'start'),
this.renderInner(o, e, n, i, l, s, u)
var f = e.getBoxLayoutParams(),
h = { width: i.getWidth(), height: i.getHeight() },
c = e.get('padding'),
v = cr(f, h, c),
d = this.layoutInner(e, o, v, a, l, u),
p = cr(j({ width: d.width, height: d.height }, f), h, c)
;(this.group.x = p.x - d.x),
(this.group.y = p.y - d.y),
this.group.markRedraw(),
this.group.add((this._backgroundEl = s1(d, e)))
}
}),
(t.prototype.resetInner = function () {
this.getContentGroup().removeAll(),
this._backgroundEl && this.group.remove(this._backgroundEl),
this.getSelectorGroup().removeAll()
}),
(t.prototype.renderInner = function (e, n, i, a, o, s, l) {
var u = this.getContentGroup(),
f = q(),
h = n.get('selectedMode'),
c = []
i.eachRawSeries(function (v) {
!v.get('legendHoverLink') && c.push(v.id)
}),
xv(
n.getData(),
function (v, d) {
var p = v.get('name')
if (
!this.newlineDisabled &&
(p === '' ||
p ===
`
`)
) {
var g = new _l()
;(g.newline = !0), u.add(g)
return
}
var m = i.getSeriesByName(p)[0]
if (!f.get(p))
if (m) {
var y = m.getData(),
_ = y.getVisual('legendLineStyle') || {},
S = y.getVisual('legendIcon'),
w = y.getVisual('style'),
x = this._createItem(m, p, d, v, n, e, _, w, S, h, a)
x
.on('click', Ci(L1, p, null, a, c))
.on('mouseover', Ci(wv, m.name, null, a, c))
.on('mouseout', Ci(bv, m.name, null, a, c)),
f.set(p, !0)
} else
i.eachRawSeries(function (b) {
if (!f.get(p) && b.legendVisualProvider) {
var T = b.legendVisualProvider
if (!T.containName(p)) return
var C = T.indexOfName(p),
M = T.getItemVisual(C, 'style'),
D = T.getItemVisual(C, 'legendIcon'),
I = ir(M.fill)
I &&
I[3] === 0 &&
((I[3] = 0.2),
(M = N(N({}, M), { fill: So(I, 'rgba') })))
var L = this._createItem(b, p, d, v, n, e, {}, M, D, h, a)
L.on('click', Ci(L1, null, p, a, c))
.on('mouseover', Ci(wv, null, p, a, c))
.on('mouseout', Ci(bv, null, p, a, c)),
f.set(p, !0)
}
}, this)
},
this
),
o && this._createSelector(o, n, a, s, l)
}),
(t.prototype._createSelector = function (e, n, i, a, o) {
var s = this.getSelectorGroup()
xv(e, function (u) {
var f = u.type,
h = new Et({
style: { x: 0, y: 0, align: 'center', verticalAlign: 'middle' },
onclick: function () {
i.dispatchAction({
type: f === 'all' ? 'legendAllSelect' : 'legendInverseSelect'
})
}
})
s.add(h)
var c = n.getModel('selectorLabel'),
v = n.getModel(['emphasis', 'selectorLabel'])
ha(h, { normal: c, emphasis: v }, { defaultText: u.title }), qo(h)
})
}),
(t.prototype._createItem = function (e, n, i, a, o, s, l, u, f, h, c) {
var v = e.visualDrawType,
d = o.get('itemWidth'),
p = o.get('itemHeight'),
g = o.isSelected(n),
m = a.get('symbolRotate'),
y = a.get('symbolKeepAspect'),
_ = a.get('icon')
f = _ || f || 'roundRect'
var S = lO(f, a, l, u, v, g, c),
w = new _l(),
x = a.getModel('textStyle')
if (Q(e.getLegendIcon) && (!_ || _ === 'inherit'))
w.add(
e.getLegendIcon({
itemWidth: d,
itemHeight: p,
icon: f,
iconRotate: m,
itemStyle: S.itemStyle,
lineStyle: S.lineStyle,
symbolKeepAspect: y
})
)
else {
var b =
_ === 'inherit' && e.getData().getVisual('symbol')
? m === 'inherit'
? e.getData().getVisual('symbolRotate')
: m
: 0
w.add(
uO({
itemWidth: d,
itemHeight: p,
icon: f,
iconRotate: b,
itemStyle: S.itemStyle,
lineStyle: S.lineStyle,
symbolKeepAspect: y
})
)
}
var T = s === 'left' ? d + 5 : -5,
C = s,
M = o.get('formatter'),
D = n
W(M) && M
? (D = M.replace('{name}', n != null ? n : ''))
: Q(M) && (D = M(n))
var I = a.get('inactiveColor')
w.add(
new Et({
style: vr(x, {
text: D,
x: T,
y: p / 2,
fill: g ? x.getTextColor() : I,
align: C,
verticalAlign: 'middle'
})
})
)
var L = new St({ shape: w.getBoundingRect(), invisible: !0 }),
P = a.getModel('tooltip')
return (
P.get('show') &&
fs({
el: L,
componentModel: o,
itemName: n,
itemTooltipOption: P.option
}),
w.add(L),
w.eachChild(function (R) {
R.silent = !0
}),
(L.silent = !h),
this.getContentGroup().add(w),
qo(w),
(w.__legendDataIndex = i),
w
)
}),
(t.prototype.layoutInner = function (e, n, i, a, o, s) {
var l = this.getContentGroup(),
u = this.getSelectorGroup()
fi(e.get('orient'), l, e.get('itemGap'), i.width, i.height)
var f = l.getBoundingRect(),
h = [-f.x, -f.y]
if ((u.markRedraw(), l.markRedraw(), o)) {
fi('horizontal', u, e.get('selectorItemGap', !0))
var c = u.getBoundingRect(),
v = [-c.x, -c.y],
d = e.get('selectorButtonGap', !0),
p = e.getOrient().index,
g = p === 0 ? 'width' : 'height',
m = p === 0 ? 'height' : 'width',
y = p === 0 ? 'y' : 'x'
s === 'end' ? (v[p] += f[g] + d) : (h[p] += c[g] + d),
(v[1 - p] += f[m] / 2 - c[m] / 2),
(u.x = v[0]),
(u.y = v[1]),
(l.x = h[0]),
(l.y = h[1])
var _ = { x: 0, y: 0 }
return (
(_[g] = f[g] + d + c[g]),
(_[m] = Math.max(f[m], c[m])),
(_[y] = Math.min(0, c[y] + v[1 - p])),
_
)
} else return (l.x = h[0]), (l.y = h[1]), this.group.getBoundingRect()
}),
(t.prototype.remove = function () {
this.getContentGroup().removeAll(), (this._isFirstRender = !0)
}),
(t.type = 'legend.plain'),
t
)
})(xe)
function lO(r, t, e, n, i, a, o) {
function s(g, m) {
g.lineWidth === 'auto' && (g.lineWidth = m.lineWidth > 0 ? 2 : 0),
xv(g, function (y, _) {
g[_] === 'inherit' && (g[_] = m[_])
})
}
var l = t.getModel('itemStyle'),
u = l.getItemStyle(),
f = r.lastIndexOf('empty', 0) === 0 ? 'fill' : 'stroke',
h = l.getShallow('decal')
;(u.decal = !h || h === 'inherit' ? n.decal : Jf(h, o)),
u.fill === 'inherit' && (u.fill = n[i]),
u.stroke === 'inherit' && (u.stroke = n[f]),
u.opacity === 'inherit' && (u.opacity = (i === 'fill' ? n : e).opacity),
s(u, n)
var c = t.getModel('lineStyle'),
v = c.getLineStyle()
if (
(s(v, e),
u.fill === 'auto' && (u.fill = n.fill),
u.stroke === 'auto' && (u.stroke = n.fill),
v.stroke === 'auto' && (v.stroke = n.fill),
!a)
) {
var d = t.get('inactiveBorderWidth'),
p = u[f]
;(u.lineWidth =
d === 'auto' ? (n.lineWidth > 0 && p ? 2 : 0) : u.lineWidth),
(u.fill = t.get('inactiveColor')),
(u.stroke = t.get('inactiveBorderColor')),
(v.stroke = c.get('inactiveColor')),
(v.lineWidth = c.get('inactiveWidth'))
}
return { itemStyle: u, lineStyle: v }
}
function uO(r) {
var t = r.icon || 'roundRect',
e = Or(
t,
0,
0,
r.itemWidth,
r.itemHeight,
r.itemStyle.fill,
r.symbolKeepAspect
)
return (
e.setStyle(r.itemStyle),
(e.rotation = ((r.iconRotate || 0) * Math.PI) / 180),
e.setOrigin([r.itemWidth / 2, r.itemHeight / 2]),
t.indexOf('empty') > -1 &&
((e.style.stroke = e.style.fill),
(e.style.fill = '#fff'),
(e.style.lineWidth = 2)),
e
)
}
function L1(r, t, e, n) {
bv(r, t, e, n),
e.dispatchAction({ type: 'legendToggleSelect', name: r != null ? r : t }),
wv(r, t, e, n)
}
function P1(r) {
for (
var t = r.getZr().storage.getDisplayList(), e, n = 0, i = t.length;
n < i && !(e = t[n].states.emphasis);
)
n++
return e && e.hoverLayer
}
function wv(r, t, e, n) {
P1(e) ||
e.dispatchAction({
type: 'highlight',
seriesName: r,
name: t,
excludeSeriesId: n
})
}
function bv(r, t, e, n) {
P1(e) ||
e.dispatchAction({
type: 'downplay',
seriesName: r,
name: t,
excludeSeriesId: n
})
}
var R1 = sO
function fO(r) {
var t = r.findComponents({ mainType: 'legend' })
t &&
t.length &&
r.filterSeries(function (e) {
for (var n = 0; n < t.length; n++) if (!t[n].isSelected(e.name)) return !1
return !0
})
}
function Qa(r, t, e) {
var n = {},
i = r === 'toggleSelected',
a
return (
e.eachComponent('legend', function (o) {
i && a != null
? o[a ? 'select' : 'unSelect'](t.name)
: r === 'allSelect' || r === 'inverseSelect'
? o[r]()
: (o[r](t.name), (a = o.isSelected(t.name)))
var s = o.getData()
A(s, function (l) {
var u = l.get('name')
if (
!(
u ===
`
` || u === ''
)
) {
var f = o.isSelected(u)
n.hasOwnProperty(u) ? (n[u] = n[u] && f) : (n[u] = f)
}
})
}),
r === 'allSelect' || r === 'inverseSelect'
? { selected: n }
: { name: t.name, selected: n }
)
}
function hO(r) {
r.registerAction(
'legendToggleSelect',
'legendselectchanged',
lt(Qa, 'toggleSelected')
),
r.registerAction('legendAllSelect', 'legendselectall', lt(Qa, 'allSelect')),
r.registerAction(
'legendInverseSelect',
'legendinverseselect',
lt(Qa, 'inverseSelect')
),
r.registerAction('legendSelect', 'legendselected', lt(Qa, 'select')),
r.registerAction('legendUnSelect', 'legendunselected', lt(Qa, 'unSelect'))
}
function E1(r) {
r.registerComponentModel(Sv),
r.registerComponentView(R1),
r.registerProcessor(r.PRIORITY.PROCESSOR.SERIES_FILTER, fO),
r.registerSubTypeDefaulter('legend', function () {
return 'plain'
}),
hO(r)
}
var vO = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (e.type = t.type), e
}
return (
(t.prototype.setScrollDataIndex = function (e) {
this.option.scrollDataIndex = e
}),
(t.prototype.init = function (e, n, i) {
var a = _a(e)
r.prototype.init.call(this, e, n, i), O1(this, e, a)
}),
(t.prototype.mergeOption = function (e, n) {
r.prototype.mergeOption.call(this, e, n), O1(this, this.option, e)
}),
(t.type = 'legend.scroll'),
(t.defaultOption = cs(Sv.defaultOption, {
scrollDataIndex: 0,
pageButtonItemGap: 5,
pageButtonGap: null,
pageButtonPosition: 'end',
pageFormatter: '{current}/{total}',
pageIcons: {
horizontal: ['M0,0L12,-10L12,10z', 'M0,0L-12,-10L-12,10z'],
vertical: ['M0,0L20,0L10,-20z', 'M0,0L20,0L10,20z']
},
pageIconColor: '#2f4554',
pageIconInactiveColor: '#aaa',
pageIconSize: 15,
pageTextStyle: { color: '#333' },
animationDurationUpdate: 800
})),
t
)
})(Sv)
function O1(r, t, e) {
var n = r.getOrient(),
i = [1, 1]
;(i[n.index] = 0), hi(t, e, { type: 'box', ignoreSize: !!i })
}
var cO = vO,
k1 = At,
Tv = ['width', 'height'],
Cv = ['x', 'y'],
dO = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (
(e.type = t.type), (e.newlineDisabled = !0), (e._currentIndex = 0), e
)
}
return (
(t.prototype.init = function () {
r.prototype.init.call(this),
this.group.add((this._containerGroup = new k1())),
this._containerGroup.add(this.getContentGroup()),
this.group.add((this._controllerGroup = new k1()))
}),
(t.prototype.resetInner = function () {
r.prototype.resetInner.call(this),
this._controllerGroup.removeAll(),
this._containerGroup.removeClipPath(),
(this._containerGroup.__rectSize = null)
}),
(t.prototype.renderInner = function (e, n, i, a, o, s, l) {
var u = this
r.prototype.renderInner.call(this, e, n, i, a, o, s, l)
var f = this._controllerGroup,
h = n.get('pageIconSize', !0),
c = z(h) ? h : [h, h]
d('pagePrev', 0)
var v = n.getModel('pageTextStyle')
f.add(
new Et({
name: 'pageText',
style: {
text: 'xx/xx',
fill: v.getTextColor(),
font: v.getFont(),
verticalAlign: 'middle',
align: 'center'
},
silent: !0
})
),
d('pageNext', 1)
function d(p, g) {
var m = p + 'DataIndex',
y = us(
n.get('pageIcons', !0)[n.getOrient().name][g],
{ onclick: X(u._pageGo, u, m, n, a) },
{ x: -c[0] / 2, y: -c[1] / 2, width: c[0], height: c[1] }
)
;(y.name = p), f.add(y)
}
}),
(t.prototype.layoutInner = function (e, n, i, a, o, s) {
var l = this.getSelectorGroup(),
u = e.getOrient().index,
f = Tv[u],
h = Cv[u],
c = Tv[1 - u],
v = Cv[1 - u]
o && fi('horizontal', l, e.get('selectorItemGap', !0))
var d = e.get('selectorButtonGap', !0),
p = l.getBoundingRect(),
g = [-p.x, -p.y],
m = tt(i)
o && (m[f] = i[f] - p[f] - d)
var y = this._layoutContentAndController(e, a, m, u, f, c, v, h)
if (o) {
if (s === 'end') g[u] += y[f] + d
else {
var _ = p[f] + d
;(g[u] -= _), (y[h] -= _)
}
;(y[f] += p[f] + d),
(g[1 - u] += y[v] + y[c] / 2 - p[c] / 2),
(y[c] = Math.max(y[c], p[c])),
(y[v] = Math.min(y[v], p[v] + g[1 - u])),
(l.x = g[0]),
(l.y = g[1]),
l.markRedraw()
}
return y
}),
(t.prototype._layoutContentAndController = function (
e,
n,
i,
a,
o,
s,
l,
u
) {
var f = this.getContentGroup(),
h = this._containerGroup,
c = this._controllerGroup
fi(
e.get('orient'),
f,
e.get('itemGap'),
a ? i.width : null,
a ? null : i.height
),
fi('horizontal', c, e.get('pageButtonItemGap', !0))
var v = f.getBoundingRect(),
d = c.getBoundingRect(),
p = (this._showController = v[o] > i[o]),
g = [-v.x, -v.y]
n || (g[a] = f[u])
var m = [0, 0],
y = [-d.x, -d.y],
_ = ht(e.get('pageButtonGap', !0), e.get('itemGap', !0))
if (p) {
var S = e.get('pageButtonPosition', !0)
S === 'end' ? (y[a] += i[o] - d[o]) : (m[a] += d[o] + _)
}
;(y[1 - a] += v[s] / 2 - d[s] / 2),
f.setPosition(g),
h.setPosition(m),
c.setPosition(y)
var w = { x: 0, y: 0 }
if (
((w[o] = p ? i[o] : v[o]),
(w[s] = Math.max(v[s], d[s])),
(w[l] = Math.min(0, d[l] + y[1 - a])),
(h.__rectSize = i[o]),
p)
) {
var x = { x: 0, y: 0 }
;(x[o] = Math.max(i[o] - d[o] - _, 0)),
(x[s] = w[s]),
h.setClipPath(new St({ shape: x })),
(h.__rectSize = x[o])
} else
c.eachChild(function (T) {
T.attr({ invisible: !0, silent: !0 })
})
var b = this._getPageInfo(e)
return (
b.pageIndex != null &&
kt(
f,
{ x: b.contentPosition[0], y: b.contentPosition[1] },
p ? e : null
),
this._updatePageInfoView(e, b),
w
)
}),
(t.prototype._pageGo = function (e, n, i) {
var a = this._getPageInfo(n)[e]
a != null &&
i.dispatchAction({
type: 'legendScroll',
scrollDataIndex: a,
legendId: n.id
})
}),
(t.prototype._updatePageInfoView = function (e, n) {
var i = this._controllerGroup
A(['pagePrev', 'pageNext'], function (f) {
var h = f + 'DataIndex',
c = n[h] != null,
v = i.childOfName(f)
v &&
(v.setStyle(
'fill',
c
? e.get('pageIconColor', !0)
: e.get('pageIconInactiveColor', !0)
),
(v.cursor = c ? 'pointer' : 'default'))
})
var a = i.childOfName('pageText'),
o = e.get('pageFormatter'),
s = n.pageIndex,
l = s != null ? s + 1 : 0,
u = n.pageCount
a &&
o &&
a.setStyle(
'text',
W(o)
? o
.replace('{current}', l == null ? '' : l + '')
.replace('{total}', u == null ? '' : u + '')
: o({ current: l, total: u })
)
}),
(t.prototype._getPageInfo = function (e) {
var n = e.get('scrollDataIndex', !0),
i = this.getContentGroup(),
a = this._containerGroup.__rectSize,
o = e.getOrient().index,
s = Tv[o],
l = Cv[o],
u = this._findTargetItemIndex(n),
f = i.children(),
h = f[u],
c = f.length,
v = c ? 1 : 0,
d = {
contentPosition: [i.x, i.y],
pageCount: v,
pageIndex: v - 1,
pagePrevDataIndex: null,
pageNextDataIndex: null
}
if (!h) return d
var p = S(h)
d.contentPosition[o] = -p.s
for (var g = u + 1, m = p, y = p, _ = null; g <= c; ++g)
(_ = S(f[g])),
((!_ && y.e > m.s + a) || (_ && !w(_, m.s))) &&
(y.i > m.i ? (m = y) : (m = _),
m &&
(d.pageNextDataIndex == null && (d.pageNextDataIndex = m.i),
++d.pageCount)),
(y = _)
for (var g = u - 1, m = p, y = p, _ = null; g >= -1; --g)
(_ = S(f[g])),
(!_ || !w(y, _.s)) &&
m.i < y.i &&
((y = m),
d.pagePrevDataIndex == null && (d.pagePrevDataIndex = m.i),
++d.pageCount,
++d.pageIndex),
(m = _)
return d
function S(x) {
if (x) {
var b = x.getBoundingRect(),
T = b[l] + x[l]
return { s: T, e: T + b[s], i: x.__legendDataIndex }
}
}
function w(x, b) {
return x.e >= b && x.s <= b + a
}
}),
(t.prototype._findTargetItemIndex = function (e) {
if (!this._showController) return 0
var n,
i = this.getContentGroup(),
a
return (
i.eachChild(function (o, s) {
var l = o.__legendDataIndex
a == null && l != null && (a = s), l === e && (n = s)
}),
n != null ? n : a
)
}),
(t.type = 'legend.scroll'),
t
)
})(R1),
pO = dO
function gO(r) {
r.registerAction('legendScroll', 'legendscroll', function (t, e) {
var n = t.scrollDataIndex
n != null &&
e.eachComponent(
{ mainType: 'legend', subType: 'scroll', query: t },
function (i) {
i.setScrollDataIndex(n)
}
)
})
}
function mO(r) {
Re(E1), r.registerComponentModel(cO), r.registerComponentView(pO), gO(r)
}
function yO(r) {
Re(E1), Re(mO)
}
var _O = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (e.type = t.type), e
}
return (
(t.type = 'dataZoom.inside'),
(t.defaultOption = cs(Xa.defaultOption, {
disabled: !1,
zoomLock: !1,
zoomOnMouseWheel: !0,
moveOnMouseMove: !0,
moveOnMouseWheel: !1,
preventDefaultMouseMove: !0
})),
t
)
})(Xa),
SO = _O,
Av = wt()
function xO(r, t, e) {
Av(r).coordSysRecordMap.each(function (n) {
var i = n.dataZoomInfoMap.get(t.uid)
i && (i.getRange = e)
})
}
function wO(r, t) {
for (
var e = Av(r).coordSysRecordMap, n = e.keys(), i = 0;
i < n.length;
i++
) {
var a = n[i],
o = e.get(a),
s = o.dataZoomInfoMap
if (s) {
var l = t.uid,
u = s.get(l)
u && (s.removeKey(l), s.keys().length || B1(e, o))
}
}
}
function B1(r, t) {
if (t) {
r.removeKey(t.model.uid)
var e = t.controller
e && e.dispose()
}
}
function bO(r, t) {
var e = {
model: t,
containsPoint: lt(CO, t),
dispatchAction: lt(TO, r),
dataZoomInfoMap: null,
controller: null
},
n = (e.controller = new OP(r.getZr()))
return (
A(['pan', 'zoom', 'scrollMove'], function (i) {
n.on(i, function (a) {
var o = []
e.dataZoomInfoMap.each(function (s) {
if (!!a.isAvailableBehavior(s.model.option)) {
var l = (s.getRange || {})[i],
u =
l && l(s.dzReferCoordSysInfo, e.model.mainType, e.controller, a)
!s.model.get('disabled', !0) &&
u &&
o.push({ dataZoomId: s.model.id, start: u[0], end: u[1] })
}
}),
o.length && e.dispatchAction(o)
})
}),
e
)
}
function TO(r, t) {
r.isDisposed() ||
r.dispatchAction({
type: 'dataZoom',
animation: { easing: 'cubicOut', duration: 100 },
batch: t
})
}
function CO(r, t, e, n) {
return r.coordinateSystem.containPoint([e, n])
}
function AO(r) {
var t,
e = 'type_',
n = { type_true: 2, type_move: 1, type_false: 0, type_undefined: -1 },
i = !0
return (
r.each(function (a) {
var o = a.model,
s = o.get('disabled', !0) ? !1 : o.get('zoomLock', !0) ? 'move' : !0
n[e + s] > n[e + t] && (t = s),
(i = i && o.get('preventDefaultMouseMove', !0))
}),
{
controlType: t,
opt: {
zoomOnMouseWheel: !0,
moveOnMouseMove: !0,
moveOnMouseWheel: !0,
preventDefaultMouseMove: !!i
}
}
)
}
function MO(r) {
r.registerProcessor(r.PRIORITY.PROCESSOR.FILTER, function (t, e) {
var n = Av(e),
i = n.coordSysRecordMap || (n.coordSysRecordMap = q())
i.each(function (a) {
a.dataZoomInfoMap = null
}),
t.eachComponent(
{ mainType: 'dataZoom', subType: 'inside' },
function (a) {
var o = e1(a)
A(o.infoList, function (s) {
var l = s.model.uid,
u = i.get(l) || i.set(l, bO(e, s.model)),
f = u.dataZoomInfoMap || (u.dataZoomInfoMap = q())
f.set(a.uid, { dzReferCoordSysInfo: s, model: a, getRange: null })
})
}
),
i.each(function (a) {
var o = a.controller,
s,
l = a.dataZoomInfoMap
if (l) {
var u = l.keys()[0]
u != null && (s = l.get(u))
}
if (!s) {
B1(i, a)
return
}
var f = AO(l)
o.enable(f.controlType, f.opt),
o.setPointerChecker(a.containsPoint),
Os(a, 'dispatchAction', s.model.get('throttle', !0), 'fixRate')
})
})
}
var DO = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (e.type = 'dataZoom.inside'), e
}
return (
(t.prototype.render = function (e, n, i) {
if ((r.prototype.render.apply(this, arguments), e.noTarget())) {
this._clear()
return
}
;(this.range = e.getPercentRange()),
xO(i, e, {
pan: X(Mv.pan, this),
zoom: X(Mv.zoom, this),
scrollMove: X(Mv.scrollMove, this)
})
}),
(t.prototype.dispose = function () {
this._clear(), r.prototype.dispose.apply(this, arguments)
}),
(t.prototype._clear = function () {
wO(this.api, this.dataZoomModel), (this.range = null)
}),
(t.type = 'dataZoom.inside'),
t
)
})(hv),
Mv = {
zoom: function (r, t, e, n) {
var i = this.range,
a = i.slice(),
o = r.axisModels[0]
if (!!o) {
var s = Dv[t](null, [n.originX, n.originY], o, e, r),
l =
((s.signal > 0
? s.pixelStart + s.pixelLength - s.pixel
: s.pixel - s.pixelStart) /
s.pixelLength) *
(a[1] - a[0]) +
a[0],
u = Math.max(1 / n.scale, 0)
;(a[0] = (a[0] - l) * u + l), (a[1] = (a[1] - l) * u + l)
var f = this.dataZoomModel.findRepresentativeAxisProxy().getMinMaxSpan()
if (
(Za(0, a, [0, 100], 0, f.minSpan, f.maxSpan),
(this.range = a),
i[0] !== a[0] || i[1] !== a[1])
)
return a
}
},
pan: N1(function (r, t, e, n, i, a) {
var o = Dv[n]([a.oldX, a.oldY], [a.newX, a.newY], t, i, e)
return (o.signal * (r[1] - r[0]) * o.pixel) / o.pixelLength
}),
scrollMove: N1(function (r, t, e, n, i, a) {
var o = Dv[n]([0, 0], [a.scrollDelta, a.scrollDelta], t, i, e)
return o.signal * (r[1] - r[0]) * a.scrollDelta
})
}
function N1(r) {
return function (t, e, n, i) {
var a = this.range,
o = a.slice(),
s = t.axisModels[0]
if (!!s) {
var l = r(o, s, t, e, n, i)
if (
(Za(l, o, [0, 100], 'all'),
(this.range = o),
a[0] !== o[0] || a[1] !== o[1])
)
return o
}
}
}
var Dv = {
grid: function (r, t, e, n, i) {
var a = e.axis,
o = {},
s = i.model.coordinateSystem.getRect()
return (
(r = r || [0, 0]),
a.dim === 'x'
? ((o.pixel = t[0] - r[0]),
(o.pixelLength = s.width),
(o.pixelStart = s.x),
(o.signal = a.inverse ? 1 : -1))
: ((o.pixel = t[1] - r[1]),
(o.pixelLength = s.height),
(o.pixelStart = s.y),
(o.signal = a.inverse ? -1 : 1)),
o
)
},
polar: function (r, t, e, n, i) {
var a = e.axis,
o = {},
s = i.model.coordinateSystem,
l = s.getRadiusAxis().getExtent(),
u = s.getAngleAxis().getExtent()
return (
(r = r ? s.pointToCoord(r) : [0, 0]),
(t = s.pointToCoord(t)),
e.mainType === 'radiusAxis'
? ((o.pixel = t[0] - r[0]),
(o.pixelLength = l[1] - l[0]),
(o.pixelStart = l[0]),
(o.signal = a.inverse ? 1 : -1))
: ((o.pixel = t[1] - r[1]),
(o.pixelLength = u[1] - u[0]),
(o.pixelStart = u[0]),
(o.signal = a.inverse ? -1 : 1)),
o
)
},
singleAxis: function (r, t, e, n, i) {
var a = e.axis,
o = i.model.coordinateSystem.getRect(),
s = {}
return (
(r = r || [0, 0]),
a.orient === 'horizontal'
? ((s.pixel = t[0] - r[0]),
(s.pixelLength = o.width),
(s.pixelStart = o.x),
(s.signal = a.inverse ? 1 : -1))
: ((s.pixel = t[1] - r[1]),
(s.pixelLength = o.height),
(s.pixelStart = o.y),
(s.signal = a.inverse ? -1 : 1)),
s
)
}
},
IO = DO
function LO(r) {
vv(r), r.registerComponentModel(SO), r.registerComponentView(IO), MO(r)
}
var PO = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (e.type = t.type), e
}
return (
(t.type = 'dataZoom.slider'),
(t.layoutMode = 'box'),
(t.defaultOption = cs(Xa.defaultOption, {
show: !0,
right: 'ph',
top: 'ph',
width: 'ph',
height: 'ph',
left: null,
bottom: null,
borderColor: '#d2dbee',
borderRadius: 3,
backgroundColor: 'rgba(47,69,84,0)',
dataBackground: {
lineStyle: { color: '#d2dbee', width: 0.5 },
areaStyle: { color: '#d2dbee', opacity: 0.2 }
},
selectedDataBackground: {
lineStyle: { color: '#8fb0f7', width: 0.5 },
areaStyle: { color: '#8fb0f7', opacity: 0.2 }
},
fillerColor: 'rgba(135,175,274,0.2)',
handleIcon:
'path://M-9.35,34.56V42m0-40V9.5m-2,0h4a2,2,0,0,1,2,2v21a2,2,0,0,1-2,2h-4a2,2,0,0,1-2-2v-21A2,2,0,0,1-11.35,9.5Z',
handleSize: '100%',
handleStyle: { color: '#fff', borderColor: '#ACB8D1' },
moveHandleSize: 7,
moveHandleIcon:
'path://M-320.9-50L-320.9-50c18.1,0,27.1,9,27.1,27.1V85.7c0,18.1-9,27.1-27.1,27.1l0,0c-18.1,0-27.1-9-27.1-27.1V-22.9C-348-41-339-50-320.9-50z M-212.3-50L-212.3-50c18.1,0,27.1,9,27.1,27.1V85.7c0,18.1-9,27.1-27.1,27.1l0,0c-18.1,0-27.1-9-27.1-27.1V-22.9C-239.4-41-230.4-50-212.3-50z M-103.7-50L-103.7-50c18.1,0,27.1,9,27.1,27.1V85.7c0,18.1-9,27.1-27.1,27.1l0,0c-18.1,0-27.1-9-27.1-27.1V-22.9C-130.9-41-121.8-50-103.7-50z',
moveHandleStyle: { color: '#D2DBEE', opacity: 0.7 },
showDetail: !0,
showDataShadow: 'auto',
realtime: !0,
zoomLock: !1,
textStyle: { color: '#6E7079' },
brushSelect: !0,
brushStyle: { color: 'rgba(135,175,274,0.15)' },
emphasis: {
handleStyle: { borderColor: '#8FB0F7' },
moveHandleStyle: { color: '#8FB0F7' }
}
})),
t
)
})(Xa),
RO = PO,
Ja = St,
F1 = 7,
EO = 1,
Iv = 30,
OO = 7,
ja = 'horizontal',
z1 = 'vertical',
kO = 5,
BO = ['line', 'bar', 'candlestick', 'scatter'],
NO = { easing: 'cubicOut', duration: 100, delay: 0 },
FO = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (e.type = t.type), (e._displayables = {}), e
}
return (
(t.prototype.init = function (e, n) {
;(this.api = n),
(this._onBrush = X(this._onBrush, this)),
(this._onBrushEnd = X(this._onBrushEnd, this))
}),
(t.prototype.render = function (e, n, i, a) {
if (
(r.prototype.render.apply(this, arguments),
Os(this, '_dispatchZoomAction', e.get('throttle'), 'fixRate'),
(this._orient = e.getOrient()),
e.get('show') === !1)
) {
this.group.removeAll()
return
}
if (e.noTarget()) {
this._clear(), this.group.removeAll()
return
}
;(!a || a.type !== 'dataZoom' || a.from !== this.uid) &&
this._buildView(),
this._updateView()
}),
(t.prototype.dispose = function () {
this._clear(), r.prototype.dispose.apply(this, arguments)
}),
(t.prototype._clear = function () {
ks(this, '_dispatchZoomAction')
var e = this.api.getZr()
e.off('mousemove', this._onBrush), e.off('mouseup', this._onBrushEnd)
}),
(t.prototype._buildView = function () {
var e = this.group
e.removeAll(),
(this._brushing = !1),
(this._displayables.brushRect = null),
this._resetLocation(),
this._resetInterval()
var n = (this._displayables.sliderGroup = new At())
this._renderBackground(),
this._renderHandle(),
this._renderDataShadow(),
e.add(n),
this._positionGroup()
}),
(t.prototype._resetLocation = function () {
var e = this.dataZoomModel,
n = this.api,
i = e.get('brushSelect'),
a = i ? OO : 0,
o = this._findCoordRect(),
s = { width: n.getWidth(), height: n.getHeight() },
l =
this._orient === ja
? {
right: s.width - o.x - o.width,
top: s.height - Iv - F1 - a,
width: o.width,
height: Iv
}
: { right: F1, top: o.y, width: Iv, height: o.height },
u = _a(e.option)
A(['right', 'top', 'width', 'height'], function (h) {
u[h] === 'ph' && (u[h] = l[h])
})
var f = cr(u, s)
;(this._location = { x: f.x, y: f.y }),
(this._size = [f.width, f.height]),
this._orient === z1 && this._size.reverse()
}),
(t.prototype._positionGroup = function () {
var e = this.group,
n = this._location,
i = this._orient,
a = this.dataZoomModel.getFirstTargetAxisModel(),
o = a && a.get('inverse'),
s = this._displayables.sliderGroup,
l = (this._dataShadowInfo || {}).otherAxisInverse
s.attr(
i === ja && !o
? { scaleY: l ? 1 : -1, scaleX: 1 }
: i === ja && o
? { scaleY: l ? 1 : -1, scaleX: -1 }
: i === z1 && !o
? { scaleY: l ? -1 : 1, scaleX: 1, rotation: Math.PI / 2 }
: { scaleY: l ? -1 : 1, scaleX: -1, rotation: Math.PI / 2 }
)
var u = e.getBoundingRect([s])
;(e.x = n.x - u.x), (e.y = n.y - u.y), e.markRedraw()
}),
(t.prototype._getViewExtent = function () {
return [0, this._size[0]]
}),
(t.prototype._renderBackground = function () {
var e = this.dataZoomModel,
n = this._size,
i = this._displayables.sliderGroup,
a = e.get('brushSelect')
i.add(
new Ja({
silent: !0,
shape: { x: 0, y: 0, width: n[0], height: n[1] },
style: { fill: e.get('backgroundColor') },
z2: -40
})
)
var o = new Ja({
shape: { x: 0, y: 0, width: n[0], height: n[1] },
style: { fill: 'transparent' },
z2: 0,
onclick: X(this._onClickPanel, this)
}),
s = this.api.getZr()
a
? (o.on('mousedown', this._onBrushStart, this),
(o.cursor = 'crosshair'),
s.on('mousemove', this._onBrush),
s.on('mouseup', this._onBrushEnd))
: (s.off('mousemove', this._onBrush),
s.off('mouseup', this._onBrushEnd)),
i.add(o)
}),
(t.prototype._renderDataShadow = function () {
var e = (this._dataShadowInfo = this._prepareDataShadowInfo())
if (((this._displayables.dataShadowSegs = []), !e)) return
var n = this._size,
i = this._shadowSize || [],
a = e.series,
o = a.getRawData(),
s = a.getShadowDim ? a.getShadowDim() : e.otherDim
if (s == null) return
var l = this._shadowPolygonPts,
u = this._shadowPolylinePts
if (
o !== this._shadowData ||
s !== this._shadowDim ||
n[0] !== i[0] ||
n[1] !== i[1]
) {
var f = o.getDataExtent(s),
h = (f[1] - f[0]) * 0.3
f = [f[0] - h, f[1] + h]
var c = [0, n[1]],
v = [0, n[0]],
d = [
[n[0], 0],
[0, 0]
],
p = [],
g = v[1] / (o.count() - 1),
m = 0,
y = Math.round(o.count() / n[0]),
_
o.each([s], function (T, C) {
if (y > 0 && C % y) {
m += g
return
}
var M = T == null || isNaN(T) || T === '',
D = M ? 0 : Bt(T, f, c, !0)
M && !_ && C
? (d.push([d[d.length - 1][0], 0]),
p.push([p[p.length - 1][0], 0]))
: !M && _ && (d.push([m, 0]), p.push([m, 0])),
d.push([m, D]),
p.push([m, D]),
(m += g),
(_ = M)
}),
(l = this._shadowPolygonPts = d),
(u = this._shadowPolylinePts = p)
}
;(this._shadowData = o),
(this._shadowDim = s),
(this._shadowSize = [n[0], n[1]])
var S = this.dataZoomModel
function w(T) {
var C = S.getModel(T ? 'selectedDataBackground' : 'dataBackground'),
M = new At(),
D = new ua({
shape: { points: l },
segmentIgnoreThreshold: 1,
style: C.getModel('areaStyle').getAreaStyle(),
silent: !0,
z2: -20
}),
I = new ai({
shape: { points: u },
segmentIgnoreThreshold: 1,
style: C.getModel('lineStyle').getLineStyle(),
silent: !0,
z2: -19
})
return M.add(D), M.add(I), M
}
for (var x = 0; x < 3; x++) {
var b = w(x === 1)
this._displayables.sliderGroup.add(b),
this._displayables.dataShadowSegs.push(b)
}
}),
(t.prototype._prepareDataShadowInfo = function () {
var e = this.dataZoomModel,
n = e.get('showDataShadow')
if (n !== !1) {
var i,
a = this.ecModel
return (
e.eachTargetAxis(function (o, s) {
var l = e.getAxisProxy(o, s).getTargetSeriesModels()
A(
l,
function (u) {
if (!i && !(n !== !0 && ot(BO, u.get('type')) < 0)) {
var f = a.getComponent(Gr(o), s).axis,
h = zO(o),
c,
v = u.coordinateSystem
h != null &&
v.getOtherAxis &&
(c = v.getOtherAxis(f).inverse),
(h = u.getData().mapDimension(h)),
(i = {
thisAxis: f,
series: u,
thisDim: o,
otherDim: h,
otherAxisInverse: c
})
}
},
this
)
}, this),
i
)
}
}),
(t.prototype._renderHandle = function () {
var e = this.group,
n = this._displayables,
i = (n.handles = [null, null]),
a = (n.handleLabels = [null, null]),
o = this._displayables.sliderGroup,
s = this._size,
l = this.dataZoomModel,
u = this.api,
f = l.get('borderRadius') || 0,
h = l.get('brushSelect'),
c = (n.filler = new Ja({
silent: h,
style: { fill: l.get('fillerColor') },
textConfig: { position: 'inside' }
}))
o.add(c),
o.add(
new Ja({
silent: !0,
subPixelOptimize: !0,
shape: { x: 0, y: 0, width: s[0], height: s[1], r: f },
style: {
stroke: l.get('dataBackgroundColor') || l.get('borderColor'),
lineWidth: EO,
fill: 'rgba(0,0,0,0)'
}
})
),
A(
[0, 1],
function (_) {
var S = l.get('handleIcon')
!zs[S] &&
S.indexOf('path://') < 0 &&
S.indexOf('image://') < 0 &&
(S = 'path://' + S)
var w = Or(S, -1, 0, 2, 2, null, !0)
w.attr({
cursor: V1(this._orient),
draggable: !0,
drift: X(this._onDragMove, this, _),
ondragend: X(this._onDragEnd, this),
onmouseover: X(this._showDataInfo, this, !0),
onmouseout: X(this._showDataInfo, this, !1),
z2: 5
})
var x = w.getBoundingRect(),
b = l.get('handleSize')
;(this._handleHeight = yt(b, this._size[1])),
(this._handleWidth = (x.width / x.height) * this._handleHeight),
w.setStyle(l.getModel('handleStyle').getItemStyle()),
(w.style.strokeNoScale = !0),
(w.rectHover = !0),
(w.ensureState('emphasis').style = l
.getModel(['emphasis', 'handleStyle'])
.getItemStyle()),
qo(w)
var T = l.get('handleColor')
T != null && (w.style.fill = T), o.add((i[_] = w))
var C = l.getModel('textStyle')
e.add(
(a[_] = new Et({
silent: !0,
invisible: !0,
style: vr(C, {
x: 0,
y: 0,
text: '',
verticalAlign: 'middle',
align: 'center',
fill: C.getTextColor(),
font: C.getFont()
}),
z2: 10
}))
)
},
this
)
var v = c
if (h) {
var d = yt(l.get('moveHandleSize'), s[1]),
p = (n.moveHandle = new St({
style: l.getModel('moveHandleStyle').getItemStyle(),
silent: !0,
shape: { r: [0, 0, 2, 2], y: s[1] - 0.5, height: d }
})),
g = d * 0.8,
m = (n.moveHandleIcon = Or(
l.get('moveHandleIcon'),
-g / 2,
-g / 2,
g,
g,
'#fff',
!0
))
;(m.silent = !0),
(m.y = s[1] + d / 2 - 0.5),
(p.ensureState('emphasis').style = l
.getModel(['emphasis', 'moveHandleStyle'])
.getItemStyle())
var y = Math.min(s[1] / 2, Math.max(d, 10))
;(v = n.moveZone =
new St({ invisible: !0, shape: { y: s[1] - y, height: d + y } })),
v
.on('mouseover', function () {
u.enterEmphasis(p)
})
.on('mouseout', function () {
u.leaveEmphasis(p)
}),
o.add(p),
o.add(m),
o.add(v)
}
v.attr({
draggable: !0,
cursor: V1(this._orient),
drift: X(this._onDragMove, this, 'all'),
ondragstart: X(this._showDataInfo, this, !0),
ondragend: X(this._onDragEnd, this),
onmouseover: X(this._showDataInfo, this, !0),
onmouseout: X(this._showDataInfo, this, !1)
})
}),
(t.prototype._resetInterval = function () {
var e = (this._range = this.dataZoomModel.getPercentRange()),
n = this._getViewExtent()
this._handleEnds = [
Bt(e[0], [0, 100], n, !0),
Bt(e[1], [0, 100], n, !0)
]
}),
(t.prototype._updateInterval = function (e, n) {
var i = this.dataZoomModel,
a = this._handleEnds,
o = this._getViewExtent(),
s = i.findRepresentativeAxisProxy().getMinMaxSpan(),
l = [0, 100]
Za(
n,
a,
o,
i.get('zoomLock') ? 'all' : e,
s.minSpan != null ? Bt(s.minSpan, l, o, !0) : null,
s.maxSpan != null ? Bt(s.maxSpan, l, o, !0) : null
)
var u = this._range,
f = (this._range = Xi([Bt(a[0], o, l, !0), Bt(a[1], o, l, !0)]))
return !u || u[0] !== f[0] || u[1] !== f[1]
}),
(t.prototype._updateView = function (e) {
var n = this._displayables,
i = this._handleEnds,
a = Xi(i.slice()),
o = this._size
A(
[0, 1],
function (v) {
var d = n.handles[v],
p = this._handleHeight
d.attr({
scaleX: p / 2,
scaleY: p / 2,
x: i[v] + (v ? -1 : 1),
y: o[1] / 2 - p / 2
})
},
this
),
n.filler.setShape({ x: a[0], y: 0, width: a[1] - a[0], height: o[1] })
var s = { x: a[0], width: a[1] - a[0] }
n.moveHandle &&
(n.moveHandle.setShape(s),
n.moveZone.setShape(s),
n.moveZone.getBoundingRect(),
n.moveHandleIcon && n.moveHandleIcon.attr('x', s.x + s.width / 2))
for (
var l = n.dataShadowSegs, u = [0, a[0], a[1], o[0]], f = 0;
f < l.length;
f++
) {
var h = l[f],
c = h.getClipPath()
c || ((c = new St()), h.setClipPath(c)),
c.setShape({ x: u[f], y: 0, width: u[f + 1] - u[f], height: o[1] })
}
this._updateDataInfo(e)
}),
(t.prototype._updateDataInfo = function (e) {
var n = this.dataZoomModel,
i = this._displayables,
a = i.handleLabels,
o = this._orient,
s = ['', '']
if (n.get('showDetail')) {
var l = n.findRepresentativeAxisProxy()
if (l) {
var u = l.getAxisModel().axis,
f = this._range,
h = e
? l.calculateDataWindow({ start: f[0], end: f[1] }).valueWindow
: l.getDataValueWindow()
s = [this._formatLabel(h[0], u), this._formatLabel(h[1], u)]
}
}
var c = Xi(this._handleEnds.slice())
v.call(this, 0), v.call(this, 1)
function v(d) {
var p = ls(i.handles[d].parent, this.group),
g = hf(d === 0 ? 'right' : 'left', p),
m = this._handleWidth / 2 + kO,
y = fa([c[d] + (d === 0 ? -m : m), this._size[1] / 2], p)
a[d].setStyle({
x: y[0],
y: y[1],
verticalAlign: o === ja ? 'middle' : g,
align: o === ja ? g : 'center',
text: s[d]
})
}
}),
(t.prototype._formatLabel = function (e, n) {
var i = this.dataZoomModel,
a = i.get('labelFormatter'),
o = i.get('labelPrecision')
;(o == null || o === 'auto') && (o = n.getPixelPrecision())
var s =
e == null || isNaN(e)
? ''
: n.type === 'category' || n.type === 'time'
? n.scale.getLabel({ value: Math.round(e) })
: e.toFixed(Math.min(o, 20))
return Q(a) ? a(e, s) : W(a) ? a.replace('{value}', s) : s
}),
(t.prototype._showDataInfo = function (e) {
e = this._dragging || e
var n = this._displayables,
i = n.handleLabels
i[0].attr('invisible', !e),
i[1].attr('invisible', !e),
n.moveHandle &&
this.api[e ? 'enterEmphasis' : 'leaveEmphasis'](n.moveHandle, 1)
}),
(t.prototype._onDragMove = function (e, n, i, a) {
;(this._dragging = !0), Hn(a.event)
var o = this._displayables.sliderGroup.getLocalTransform(),
s = fa([n, i], o, !0),
l = this._updateInterval(e, s[0]),
u = this.dataZoomModel.get('realtime')
this._updateView(!u), l && u && this._dispatchZoomAction(!0)
}),
(t.prototype._onDragEnd = function () {
;(this._dragging = !1), this._showDataInfo(!1)
var e = this.dataZoomModel.get('realtime')
!e && this._dispatchZoomAction(!1)
}),
(t.prototype._onClickPanel = function (e) {
var n = this._size,
i = this._displayables.sliderGroup.transformCoordToLocal(
e.offsetX,
e.offsetY
)
if (!(i[0] < 0 || i[0] > n[0] || i[1] < 0 || i[1] > n[1])) {
var a = this._handleEnds,
o = (a[0] + a[1]) / 2,
s = this._updateInterval('all', i[0] - o)
this._updateView(), s && this._dispatchZoomAction(!1)
}
}),
(t.prototype._onBrushStart = function (e) {
var n = e.offsetX,
i = e.offsetY
;(this._brushStart = new Z(n, i)),
(this._brushing = !0),
(this._brushStartTime = +new Date())
}),
(t.prototype._onBrushEnd = function (e) {
if (!!this._brushing) {
var n = this._displayables.brushRect
if (((this._brushing = !1), !!n)) {
n.attr('ignore', !0)
var i = n.shape,
a = +new Date()
if (!(a - this._brushStartTime < 200 && Math.abs(i.width) < 5)) {
var o = this._getViewExtent(),
s = [0, 100]
;(this._range = Xi([
Bt(i.x, o, s, !0),
Bt(i.x + i.width, o, s, !0)
])),
(this._handleEnds = [i.x, i.x + i.width]),
this._updateView(),
this._dispatchZoomAction(!1)
}
}
}
}),
(t.prototype._onBrush = function (e) {
this._brushing &&
(Hn(e.event), this._updateBrushRect(e.offsetX, e.offsetY))
}),
(t.prototype._updateBrushRect = function (e, n) {
var i = this._displayables,
a = this.dataZoomModel,
o = i.brushRect
o ||
((o = i.brushRect =
new Ja({
silent: !0,
style: a.getModel('brushStyle').getItemStyle()
})),
i.sliderGroup.add(o)),
o.attr('ignore', !1)
var s = this._brushStart,
l = this._displayables.sliderGroup,
u = l.transformCoordToLocal(e, n),
f = l.transformCoordToLocal(s.x, s.y),
h = this._size
;(u[0] = Math.max(Math.min(h[0], u[0]), 0)),
o.setShape({ x: f[0], y: 0, width: u[0] - f[0], height: h[1] })
}),
(t.prototype._dispatchZoomAction = function (e) {
var n = this._range
this.api.dispatchAction({
type: 'dataZoom',
from: this.uid,
dataZoomId: this.dataZoomModel.id,
animation: e ? NO : null,
start: n[0],
end: n[1]
})
}),
(t.prototype._findCoordRect = function () {
var e,
n = e1(this.dataZoomModel).infoList
if (!e && n.length) {
var i = n[0].model.coordinateSystem
e = i.getRect && i.getRect()
}
if (!e) {
var a = this.api.getWidth(),
o = this.api.getHeight()
e = { x: a * 0.2, y: o * 0.2, width: a * 0.6, height: o * 0.6 }
}
return e
}),
(t.type = 'dataZoom.slider'),
t
)
})(hv)
function zO(r) {
var t = { x: 'y', y: 'x', radius: 'angle', angle: 'radius' }
return t[r]
}
function V1(r) {
return r === 'vertical' ? 'ns-resize' : 'ew-resize'
}
var VO = FO
function GO(r) {
r.registerComponentModel(RO), r.registerComponentView(VO), vv(r)
}
function HO(r) {
Re(LO), Re(GO)
}
var G1 = {
value: 'eq',
'<': 'lt',
'<=': 'lte',
'>': 'gt',
'>=': 'gte',
'=': 'eq',
'!=': 'ne',
'<>': 'ne'
},
WO = (function () {
function r(t) {
var e = (this._condVal = W(t) ? new RegExp(t) : Mx(t) ? t : null)
if (e == null) {
var n = ''
ut(n)
}
}
return (
(r.prototype.evaluate = function (t) {
var e = typeof t
return W(e)
? this._condVal.test(t)
: dt(e)
? this._condVal.test(t + '')
: !1
}),
r
)
})(),
UO = (function () {
function r() {}
return (
(r.prototype.evaluate = function () {
return this.value
}),
r
)
})(),
YO = (function () {
function r() {}
return (
(r.prototype.evaluate = function () {
for (var t = this.children, e = 0; e < t.length; e++)
if (!t[e].evaluate()) return !1
return !0
}),
r
)
})(),
ZO = (function () {
function r() {}
return (
(r.prototype.evaluate = function () {
for (var t = this.children, e = 0; e < t.length; e++)
if (t[e].evaluate()) return !0
return !1
}),
r
)
})(),
$O = (function () {
function r() {}
return (
(r.prototype.evaluate = function () {
return !this.child.evaluate()
}),
r
)
})(),
XO = (function () {
function r() {}
return (
(r.prototype.evaluate = function () {
for (
var t = !!this.valueParser,
e = this.getValue,
n = e(this.valueGetterParam),
i = t ? this.valueParser(n) : null,
a = 0;
a < this.subCondList.length;
a++
)
if (!this.subCondList[a].evaluate(t ? i : n)) return !1
return !0
}),
r
)
})()
function Lv(r, t) {
if (r === !0 || r === !1) {
var e = new UO()
return (e.value = r), e
}
var n = ''
return (
W1(r) || ut(n),
r.and
? H1('and', r, t)
: r.or
? H1('or', r, t)
: r.not
? qO(r, t)
: KO(r, t)
)
}
function H1(r, t, e) {
var n = t[r],
i = ''
z(n) || ut(i), n.length || ut(i)
var a = r === 'and' ? new YO() : new ZO()
return (
(a.children = G(n, function (o) {
return Lv(o, e)
})),
a.children.length || ut(i),
a
)
}
function qO(r, t) {
var e = r.not,
n = ''
W1(e) || ut(n)
var i = new $O()
return (i.child = Lv(e, t)), i.child || ut(n), i
}
function KO(r, t) {
for (
var e = '',
n = t.prepareGetValue(r),
i = [],
a = xt(r),
o = r.parser,
s = o ? Xg(o) : null,
l = 0;
l < a.length;
l++
) {
var u = a[l]
if (!(u === 'parser' || t.valueGetterAttrMap.get(u))) {
var f = nr(G1, u) ? G1[u] : u,
h = r[u],
c = s ? s(h) : h,
v = eM(f, c) || (f === 'reg' && new WO(c))
v || ut(e), i.push(v)
}
}
i.length || ut(e)
var d = new XO()
return (
(d.valueGetterParam = n),
(d.valueParser = s),
(d.getValue = t.getValue),
(d.subCondList = i),
d
)
}
function W1(r) {
return Y(r) && !Zt(r)
}
var QO = (function () {
function r(t, e) {
this._cond = Lv(t, e)
}
return (
(r.prototype.evaluate = function () {
return this._cond.evaluate()
}),
r
)
})()
function JO(r, t) {
return new QO(r, t)
}
var jO = {
type: 'echarts:filter',
transform: function (r) {
for (
var t = r.upstream,
e,
n = JO(r.config, {
valueGetterAttrMap: q({ dimension: !0 }),
prepareGetValue: function (s) {
var l = '',
u = s.dimension
nr(s, 'dimension') || ut(l)
var f = t.getDimensionInfo(u)
return f || ut(l), { dimIdx: f.index }
},
getValue: function (s) {
return t.retrieveValueFromItem(e, s.dimIdx)
}
}),
i = [],
a = 0,
o = t.count();
a < o;
a++
)
(e = t.getRawDataItem(a)), n.evaluate() && i.push(e)
return { data: i }
}
},
tk = {
type: 'echarts:sort',
transform: function (r) {
var t = r.upstream,
e = r.config,
n = '',
i = Mt(e)
i.length || ut(n)
var a = []
A(i, function (f) {
var h = f.dimension,
c = f.order,
v = f.parser,
d = f.incomparable
if (
(h == null && ut(n),
c !== 'asc' && c !== 'desc' && ut(n),
d && d !== 'min' && d !== 'max')
) {
var p = ''
ut(p)
}
if (c !== 'asc' && c !== 'desc') {
var g = ''
ut(g)
}
var m = t.getDimensionInfo(h)
m || ut(n)
var y = v ? Xg(v) : null
v && !y && ut(n),
a.push({ dimIdx: m.index, parser: y, comparator: new Kg(c, d) })
})
var o = t.sourceFormat
o !== Kt && o !== _e && ut(n)
for (var s = [], l = 0, u = t.count(); l < u; l++)
s.push(t.getRawDataItem(l))
return (
s.sort(function (f, h) {
for (var c = 0; c < a.length; c++) {
var v = a[c],
d = t.retrieveValueFromItem(f, v.dimIdx),
p = t.retrieveValueFromItem(h, v.dimIdx)
v.parser && ((d = v.parser(d)), (p = v.parser(p)))
var g = v.comparator.evaluate(d, p)
if (g !== 0) return g
}
return 0
}),
{ data: s }
)
}
}
function ek(r) {
r.registerTransform(jO), r.registerTransform(tk)
}
var rk = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (e.type = 'dataset'), e
}
return (
(t.prototype.init = function (e, n, i) {
r.prototype.init.call(this, e, n, i),
(this._sourceManager = new rm(this)),
nm(this)
}),
(t.prototype.mergeOption = function (e, n) {
r.prototype.mergeOption.call(this, e, n), nm(this)
}),
(t.prototype.optionUpdated = function () {
this._sourceManager.dirty()
}),
(t.prototype.getSourceManager = function () {
return this._sourceManager
}),
(t.type = 'dataset'),
(t.defaultOption = { seriesLayoutBy: Ke }),
t
)
})(_t),
nk = (function (r) {
B(t, r)
function t() {
var e = (r !== null && r.apply(this, arguments)) || this
return (e.type = 'dataset'), e
}
return (t.type = 'dataset'), t
})(xe)
function ik(r) {
r.registerComponentModel(rk), r.registerComponentView(nk)
}
var er = ur.CMD
function Ai(r, t) {
return Math.abs(r - t) < 1e-5
}
function Pv(r) {
var t = r.data,
e = r.len(),
n = [],
i,
a = 0,
o = 0,
s = 0,
l = 0
function u(L, P) {
i && i.length > 2 && n.push(i), (i = [L, P])
}
function f(L, P, R, O) {
;(Ai(L, R) && Ai(P, O)) || i.push(L, P, R, O, R, O)
}
function h(L, P, R, O, U, k) {
var F = Math.abs(P - L),
H = (Math.tan(F / 4) * 4) / 3,
$ = P < L ? -1 : 1,
J = Math.cos(L),
et = Math.sin(L),
ft = Math.cos(P),
Ct = Math.sin(P),
mt = J * U + R,
zt = et * k + O,
Vt = ft * U + R,
It = Ct * k + O,
bt = U * H * $,
K = k * H * $
i.push(mt - bt * et, zt + K * J, Vt + bt * Ct, It - K * ft, Vt, It)
}
for (var c, v, d, p, g = 0; g < e; ) {
var m = t[g++],
y = g === 1
switch (
(y &&
((a = t[g]),
(o = t[g + 1]),
(s = a),
(l = o),
(m === er.L || m === er.C || m === er.Q) && (i = [s, l])),
m)
) {
case er.M:
;(a = s = t[g++]), (o = l = t[g++]), u(s, l)
break
case er.L:
;(c = t[g++]), (v = t[g++]), f(a, o, c, v), (a = c), (o = v)
break
case er.C:
i.push(t[g++], t[g++], t[g++], t[g++], (a = t[g++]), (o = t[g++]))
break
case er.Q:
;(c = t[g++]),
(v = t[g++]),
(d = t[g++]),
(p = t[g++]),
i.push(
a + (2 / 3) * (c - a),
o + (2 / 3) * (v - o),
d + (2 / 3) * (c - d),
p + (2 / 3) * (v - p),
d,
p
),
(a = d),
(o = p)
break
case er.A:
var _ = t[g++],
S = t[g++],
w = t[g++],
x = t[g++],
b = t[g++],
T = t[g++] + b
g += 1
var C = !t[g++]
;(c = Math.cos(b) * w + _),
(v = Math.sin(b) * x + S),
y ? ((s = c), (l = v), u(s, l)) : f(a, o, c, v),
(a = Math.cos(T) * w + _),
(o = Math.sin(T) * x + S)
for (
var M = ((C ? -1 : 1) * Math.PI) / 2, D = b;
C ? D > T : D < T;
D += M
) {
var I = C ? Math.max(D + M, T) : Math.min(D + M, T)
h(D, I, _, S, w, x)
}
break
case er.R:
;(s = a = t[g++]),
(l = o = t[g++]),
(c = s + t[g++]),
(v = l + t[g++]),
u(c, l),
f(c, l, c, v),
f(c, v, s, v),
f(s, v, s, l),
f(s, l, c, l)
break
case er.Z:
i && f(a, o, s, l), (a = s), (o = l)
break
}
}
return i && i.length > 2 && n.push(i), n
}
function Rv(r, t, e, n, i, a, o, s, l, u) {
if (Ai(r, e) && Ai(t, n) && Ai(i, o) && Ai(a, s)) {
l.push(o, s)
return
}
var f = 2 / u,
h = f * f,
c = o - r,
v = s - t,
d = Math.sqrt(c * c + v * v)
;(c /= d), (v /= d)
var p = e - r,
g = n - t,
m = i - o,
y = a - s,
_ = p * p + g * g,
S = m * m + y * y
if (_ < h && S < h) {
l.push(o, s)
return
}
var w = c * p + v * g,
x = -c * m - v * y,
b = _ - w * w,
T = S - x * x
if (b < h && w >= 0 && T < h && x >= 0) {
l.push(o, s)
return
}
var C = [],
M = []
br(r, e, i, o, 0.5, C),
br(t, n, a, s, 0.5, M),
Rv(C[0], M[0], C[1], M[1], C[2], M[2], C[3], M[3], l, u),
Rv(C[4], M[4], C[5], M[5], C[6], M[6], C[7], M[7], l, u)
}
function ak(r, t) {
var e = Pv(r),
n = []
t = t || 1
for (var i = 0; i < e.length; i++) {
var a = e[i],
o = [],
s = a[0],
l = a[1]
o.push(s, l)
for (var u = 2; u < a.length; ) {
var f = a[u++],
h = a[u++],
c = a[u++],
v = a[u++],
d = a[u++],
p = a[u++]
Rv(s, l, f, h, c, v, d, p, o, t), (s = d), (l = p)
}
n.push(o)
}
return n
}
function U1(r, t, e) {
var n = r[t],
i = r[1 - t],
a = Math.abs(n / i),
o = Math.ceil(Math.sqrt(a * e)),
s = Math.floor(e / o)
s === 0 && ((s = 1), (o = e))
for (var l = [], u = 0; u < o; u++) l.push(s)
var f = o * s,
h = e - f
if (h > 0) for (var u = 0; u < h; u++) l[u % o] += 1
return l
}
function Y1(r, t, e) {
for (
var n = r.r0,
i = r.r,
a = r.startAngle,
o = r.endAngle,
s = Math.abs(o - a),
l = s * i,
u = i - n,
f = l > Math.abs(u),
h = U1([l, u], f ? 0 : 1, t),
c = (f ? s : u) / h.length,
v = 0;
v < h.length;
v++
)
for (var d = (f ? u : s) / h[v], p = 0; p < h[v]; p++) {
var g = {}
f
? ((g.startAngle = a + c * v),
(g.endAngle = a + c * (v + 1)),
(g.r0 = n + d * p),
(g.r = n + d * (p + 1)))
: ((g.startAngle = a + d * p),
(g.endAngle = a + d * (p + 1)),
(g.r0 = n + c * v),
(g.r = n + c * (v + 1))),
(g.clockwise = r.clockwise),
(g.cx = r.cx),
(g.cy = r.cy),
e.push(g)
}
}
function ok(r, t, e) {
for (
var n = r.width,
i = r.height,
a = n > i,
o = U1([n, i], a ? 0 : 1, t),
s = a ? 'width' : 'height',
l = a ? 'height' : 'width',
u = a ? 'x' : 'y',
f = a ? 'y' : 'x',
h = r[s] / o.length,
c = 0;
c < o.length;
c++
)
for (var v = r[l] / o[c], d = 0; d < o[c]; d++) {
var p = {}
;(p[u] = c * h),
(p[f] = d * v),
(p[s] = h),
(p[l] = v),
(p.x += r.x),
(p.y += r.y),
e.push(p)
}
}
function Z1(r, t, e, n) {
return r * n - e * t
}
function sk(r, t, e, n, i, a, o, s) {
var l = e - r,
u = n - t,
f = o - i,
h = s - a,
c = Z1(f, h, l, u)
if (Math.abs(c) < 1e-6) return null
var v = r - i,
d = t - a,
p = Z1(v, d, f, h) / c
return p < 0 || p > 1 ? null : new Z(p * l + r, p * u + t)
}
function lk(r, t, e) {
var n = new Z()
Z.sub(n, e, t), n.normalize()
var i = new Z()
Z.sub(i, r, t)
var a = i.dot(n)
return a
}
function Mi(r, t) {
var e = r[r.length - 1]
;(e && e[0] === t[0] && e[1] === t[1]) || r.push(t)
}
function uk(r, t, e) {
for (var n = r.length, i = [], a = 0; a < n; a++) {
var o = r[a],
s = r[(a + 1) % n],
l = sk(o[0], o[1], s[0], s[1], t.x, t.y, e.x, e.y)
l && i.push({ projPt: lk(l, t, e), pt: l, idx: a })
}
if (i.length < 2) return [{ points: r }, { points: r }]
i.sort(function (g, m) {
return g.projPt - m.projPt
})
var u = i[0],
f = i[i.length - 1]
if (f.idx < u.idx) {
var h = u
;(u = f), (f = h)
}
for (
var c = [u.pt.x, u.pt.y],
v = [f.pt.x, f.pt.y],
d = [c],
p = [v],
a = u.idx + 1;
a <= f.idx;
a++
)
Mi(d, r[a].slice())
Mi(d, v), Mi(d, c)
for (var a = f.idx + 1; a <= u.idx + n; a++) Mi(p, r[a % n].slice())
return Mi(p, c), Mi(p, v), [{ points: d }, { points: p }]
}
function $1(r) {
var t = r.points,
e = [],
n = []
pd(t, e, n)
var i = new vt(e[0], e[1], n[0] - e[0], n[1] - e[1]),
a = i.width,
o = i.height,
s = i.x,
l = i.y,
u = new Z(),
f = new Z()
return (
a > o
? ((u.x = f.x = s + a / 2), (u.y = l), (f.y = l + o))
: ((u.y = f.y = l + o / 2), (u.x = s), (f.x = s + a)),
uk(t, u, f)
)
}
function Sl(r, t, e, n) {
if (e === 1) n.push(t)
else {
var i = Math.floor(e / 2),
a = r(t)
Sl(r, a[0], i, n), Sl(r, a[1], e - i, n)
}
return n
}
function fk(r, t) {
for (var e = [], n = 0; n < t; n++) e.push(rf(r))
return e
}
function hk(r, t) {
t.setStyle(r.style), (t.z = r.z), (t.z2 = r.z2), (t.zlevel = r.zlevel)
}
function vk(r) {
for (var t = [], e = 0; e < r.length; ) t.push([r[e++], r[e++]])
return t
}
function ck(r, t) {
var e = [],
n = r.shape,
i
switch (r.type) {
case 'rect':
ok(n, t, e), (i = St)
break
case 'sector':
Y1(n, t, e), (i = hr)
break
case 'circle':
Y1(
{
r0: 0,
r: n.r,
startAngle: 0,
endAngle: Math.PI * 2,
cx: n.cx,
cy: n.cy
},
t,
e
),
(i = hr)
break
default:
var a = r.getComputedTransform(),
o = a
? Math.sqrt(
Math.max(a[0] * a[0] + a[1] * a[1], a[2] * a[2] + a[3] * a[3])
)
: 1,
s = G(ak(r.getUpdatedPathProxy(), o), function (m) {
return vk(m)
}),
l = s.length
if (l === 0) Sl($1, { points: s[0] }, t, e)
else if (l === t) for (var u = 0; u < l; u++) e.push({ points: s[u] })
else {
var f = 0,
h = G(s, function (m) {
var y = [],
_ = []
pd(m, y, _)
var S = (_[1] - y[1]) * (_[0] - y[0])
return (f += S), { poly: m, area: S }
})
h.sort(function (m, y) {
return y.area - m.area
})
for (var c = t, u = 0; u < l; u++) {
var v = h[u]
if (c <= 0) break
var d = u === l - 1 ? c : Math.ceil((v.area / f) * t)
d < 0 || (Sl($1, { points: v.poly }, d, e), (c -= d))
}
}
i = ua
break
}
if (!i) return fk(r, t)
for (var p = [], u = 0; u < e.length; u++) {
var g = new i()
g.setShape(e[u]), hk(r, g), p.push(g)
}
return p
}
function dk(r, t) {
var e = r.length,
n = t.length
if (e === n) return [r, t]
for (
var i = [],
a = [],
o = e < n ? r : t,
s = Math.min(e, n),
l = Math.abs(n - e) / 6,
u = (s - 2) / 6,
f = Math.ceil(l / u) + 1,
h = [o[0], o[1]],
c = l,
v = 2;
v < s;
) {
var d = o[v - 2],
p = o[v - 1],
g = o[v++],
m = o[v++],
y = o[v++],
_ = o[v++],
S = o[v++],
w = o[v++]
if (c <= 0) {
h.push(g, m, y, _, S, w)
continue
}
for (var x = Math.min(c, f - 1) + 1, b = 1; b <= x; b++) {
var T = b / x
br(d, g, y, S, T, i),
br(p, m, _, w, T, a),
(d = i[3]),
(p = a[3]),
h.push(i[1], a[1], i[2], a[2], d, p),
(g = i[5]),
(m = a[5]),
(y = i[6]),
(_ = a[6])
}
c -= x - 1
}
return o === r ? [h, t] : [r, h]
}
function X1(r, t) {
for (
var e = r.length, n = r[e - 2], i = r[e - 1], a = [], o = 0;
o < t.length;
)
(a[o++] = n), (a[o++] = i)
return a
}
function pk(r, t) {
for (
var e, n, i, a = [], o = [], s = 0;
s < Math.max(r.length, t.length);
s++
) {
var l = r[s],
u = t[s],
f = void 0,
h = void 0
l
? u
? ((e = dk(l, u)), (f = e[0]), (h = e[1]), (n = f), (i = h))
: ((h = X1(i || l, l)), (f = l))
: ((f = X1(n || u, u)), (h = u)),
a.push(f),
o.push(h)
}
return [a, o]
}
function q1(r) {
for (
var t = 0, e = 0, n = 0, i = r.length, a = 0, o = i - 2;
a < i;
o = a, a += 2
) {
var s = r[o],
l = r[o + 1],
u = r[a],
f = r[a + 1],
h = s * f - u * l
;(t += h), (e += (s + u) * h), (n += (l + f) * h)
}
return t === 0 ? [r[0] || 0, r[1] || 0] : [e / t / 3, n / t / 3, t]
}
function gk(r, t, e, n) {
for (
var i = (r.length - 2) / 6,
a = 1 / 0,
o = 0,
s = r.length,
l = s - 2,
u = 0;
u < i;
u++
) {
for (var f = u * 6, h = 0, c = 0; c < s; c += 2) {
var v = c === 0 ? f : ((f + c - 2) % l) + 2,
d = r[v] - e[0],
p = r[v + 1] - e[1],
g = t[c] - n[0],
m = t[c + 1] - n[1],
y = g - d,
_ = m - p
h += y * y + _ * _
}
h < a && ((a = h), (o = u))
}
return o
}
function mk(r) {
for (var t = [], e = r.length, n = 0; n < e; n += 2)
(t[n] = r[e - n - 2]), (t[n + 1] = r[e - n - 1])
return t
}
function yk(r, t, e, n) {
for (var i = [], a, o = 0; o < r.length; o++) {
var s = r[o],
l = t[o],
u = q1(s),
f = q1(l)
a == null && (a = u[2] < 0 != f[2] < 0)
var h = [],
c = [],
v = 0,
d = 1 / 0,
p = [],
g = s.length
a && (s = mk(s))
for (var m = gk(s, l, u, f) * 6, y = g - 2, _ = 0; _ < y; _ += 2) {
var S = ((m + _) % y) + 2
;(h[_ + 2] = s[S] - u[0]), (h[_ + 3] = s[S + 1] - u[1])
}
if (((h[0] = s[m] - u[0]), (h[1] = s[m + 1] - u[1]), e > 0))
for (var w = n / e, x = -n / 2; x <= n / 2; x += w) {
for (
var b = Math.sin(x), T = Math.cos(x), C = 0, _ = 0;
_ < s.length;
_ += 2
) {
var M = h[_],
D = h[_ + 1],
I = l[_] - f[0],
L = l[_ + 1] - f[1],
P = I * T - L * b,
R = I * b + L * T
;(p[_] = P), (p[_ + 1] = R)
var O = P - M,
U = R - D
C += O * O + U * U
}
if (C < d) {
;(d = C), (v = x)
for (var k = 0; k < p.length; k++) c[k] = p[k]
}
}
else
for (var F = 0; F < g; F += 2)
(c[F] = l[F] - f[0]), (c[F + 1] = l[F + 1] - f[1])
i.push({ from: h, to: c, fromCp: u, toCp: f, rotation: -v })
}
return i
}
function xl(r) {
return r.__isCombineMorphing
}
var K1 = '__mOriginal_'
function wl(r, t, e) {
var n = K1 + t,
i = r[n] || r[t]
r[n] || (r[n] = r[t])
var a = e.replace,
o = e.after,
s = e.before
r[t] = function () {
var l = arguments,
u
return (
s && s.apply(this, l),
a ? (u = a.apply(this, l)) : (u = i.apply(this, l)),
o && o.apply(this, l),
u
)
}
}
function to(r, t) {
var e = K1 + t
r[e] && ((r[t] = r[e]), (r[e] = null))
}
function Q1(r, t) {
for (var e = 0; e < r.length; e++)
for (var n = r[e], i = 0; i < n.length; ) {
var a = n[i],
o = n[i + 1]
;(n[i++] = t[0] * a + t[2] * o + t[4]),
(n[i++] = t[1] * a + t[3] * o + t[5])
}
}
function J1(r, t) {
var e = r.getUpdatedPathProxy(),
n = t.getUpdatedPathProxy(),
i = pk(Pv(e), Pv(n)),
a = i[0],
o = i[1],
s = r.getComputedTransform(),
l = t.getComputedTransform()
function u() {
this.transform = null
}
s && Q1(a, s),
l && Q1(o, l),
wl(t, 'updateTransform', { replace: u }),
(t.transform = null)
var f = yk(a, o, 10, Math.PI),
h = []
wl(t, 'buildPath', {
replace: function (c) {
for (var v = t.__morphT, d = 1 - v, p = [], g = 0; g < f.length; g++) {
var m = f[g],
y = m.from,
_ = m.to,
S = m.rotation * v,
w = m.fromCp,
x = m.toCp,
b = Math.sin(S),
T = Math.cos(S)
lo(p, w, x, v)
for (var C = 0; C < y.length; C += 2) {
var M = y[C],
D = y[C + 1],
I = _[C],
L = _[C + 1],
P = M * d + I * v,
R = D * d + L * v
;(h[C] = P * T - R * b + p[0]), (h[C + 1] = P * b + R * T + p[1])
}
var O = h[0],
U = h[1]
c.moveTo(O, U)
for (var C = 2; C < y.length; ) {
var I = h[C++],
L = h[C++],
k = h[C++],
F = h[C++],
H = h[C++],
$ = h[C++]
O === I && U === L && k === H && F === $
? c.lineTo(H, $)
: c.bezierCurveTo(I, L, k, F, H, $),
(O = H),
(U = $)
}
}
}
})
}
function Ev(r, t, e) {
if (!r || !t) return t
var n = e.done,
i = e.during
J1(r, t), (t.__morphT = 0)
function a() {
to(t, 'buildPath'),
to(t, 'updateTransform'),
(t.__morphT = -1),
t.createPathProxy(),
t.dirtyShape()
}
return (
t.animateTo(
{ __morphT: 1 },
j(
{
during: function (o) {
t.dirtyShape(), i && i(o)
},
done: function () {
a(), n && n()
}
},
e
)
),
t
)
}
function _k(r, t, e, n, i, a) {
var o = 16
;(r = i === e ? 0 : Math.round((32767 * (r - e)) / (i - e))),
(t = a === n ? 0 : Math.round((32767 * (t - n)) / (a - n)))
for (var s = 0, l, u = (1 << o) / 2; u > 0; u /= 2) {
var f = 0,
h = 0
;(r & u) > 0 && (f = 1),
(t & u) > 0 && (h = 1),
(s += u * u * ((3 * f) ^ h)),
h === 0 &&
(f === 1 && ((r = u - 1 - r), (t = u - 1 - t)),
(l = r),
(r = t),
(t = l))
}
return s
}
function bl(r) {
var t = 1 / 0,
e = 1 / 0,
n = -1 / 0,
i = -1 / 0,
a = G(r, function (s) {
var l = s.getBoundingRect(),
u = s.getComputedTransform(),
f = l.x + l.width / 2 + (u ? u[4] : 0),
h = l.y + l.height / 2 + (u ? u[5] : 0)
return (
(t = Math.min(f, t)),
(e = Math.min(h, e)),
(n = Math.max(f, n)),
(i = Math.max(h, i)),
[f, h]
)
}),
o = G(a, function (s, l) {
return { cp: s, z: _k(s[0], s[1], t, e, n, i), path: r[l] }
})
return o
.sort(function (s, l) {
return s.z - l.z
})
.map(function (s) {
return s.path
})
}
function j1(r) {
return ck(r.path, r.count)
}
function Ov() {
return { fromIndividuals: [], toIndividuals: [], count: 0 }
}
function Sk(r, t, e) {
var n = []
function i(w) {
for (var x = 0; x < w.length; x++) {
var b = w[x]
xl(b) ? i(b.childrenRef()) : b instanceof st && n.push(b)
}
}
i(r)
var a = n.length
if (!a) return Ov()
var o = e.dividePath || j1,
s = o({ path: t, count: a })
if (s.length !== a)
return console.error('Invalid morphing: unmatched splitted path'), Ov()
;(n = bl(n)), (s = bl(s))
for (
var l = e.done, u = e.during, f = e.individualDelay, h = new Wi(), c = 0;
c < a;
c++
) {
var v = n[c],
d = s[c]
;(d.parent = t), d.copyTransform(h), f || J1(v, d)
}
;(t.__isCombineMorphing = !0),
(t.childrenRef = function () {
return s
})
function p(w) {
for (var x = 0; x < s.length; x++) s[x].addSelfToZr(w)
}
wl(t, 'addSelfToZr', {
after: function (w) {
p(w)
}
}),
wl(t, 'removeSelfFromZr', {
after: function (w) {
for (var x = 0; x < s.length; x++) s[x].removeSelfFromZr(w)
}
})
function g() {
;(t.__isCombineMorphing = !1),
(t.__morphT = -1),
(t.childrenRef = null),
to(t, 'addSelfToZr'),
to(t, 'removeSelfFromZr')
}
var m = s.length
if (f)
for (
var y = m,
_ = function () {
y--, y === 0 && (g(), l && l())
},
c = 0;
c < m;
c++
) {
var S = f
? j({ delay: (e.delay || 0) + f(c, m, n[c], s[c]), done: _ }, e)
: e
Ev(n[c], s[c], S)
}
else
(t.__morphT = 0),
t.animateTo(
{ __morphT: 1 },
j(
{
during: function (w) {
for (var x = 0; x < m; x++) {
var b = s[x]
;(b.__morphT = t.__morphT), b.dirtyShape()
}
u && u(w)
},
done: function () {
g()
for (var w = 0; w < r.length; w++) to(r[w], 'updateTransform')
l && l()
}
},
e
)
)
return t.__zr && p(t.__zr), { fromIndividuals: n, toIndividuals: s, count: m }
}
function xk(r, t, e) {
var n = t.length,
i = [],
a = e.dividePath || j1
function o(v) {
for (var d = 0; d < v.length; d++) {
var p = v[d]
xl(p) ? o(p.childrenRef()) : p instanceof st && i.push(p)
}
}
if (xl(r)) {
o(r.childrenRef())
var s = i.length
if (s < n) for (var l = 0, u = s; u < n; u++) i.push(rf(i[l++ % s]))
i.length = n
} else {
i = a({ path: r, count: n })
for (var f = r.getComputedTransform(), u = 0; u < i.length; u++)
i[u].setLocalTransform(f)
if (i.length !== n)
return console.error('Invalid morphing: unmatched splitted path'), Ov()
}
;(i = bl(i)), (t = bl(t))
for (var h = e.individualDelay, u = 0; u < n; u++) {
var c = h ? j({ delay: (e.delay || 0) + h(u, n, i[u], t[u]) }, e) : e
Ev(i[u], t[u], c)
}
return { fromIndividuals: i, toIndividuals: t, count: t.length }
}
function tS(r) {
return z(r[0])
}
function eS(r, t) {
for (var e = [], n = r.length, i = 0; i < n; i++)
e.push({ one: r[i], many: [] })
for (var i = 0; i < t.length; i++) {
var a = t[i].length,
o = void 0
for (o = 0; o < a; o++) e[o % n].many.push(t[i][o])
}
for (var s = 0, i = n - 1; i >= 0; i--)
if (!e[i].many.length) {
var l = e[s].many
if (l.length <= 1)
if (s) s = 0
else return e
var a = l.length,
u = Math.ceil(a / 2)
;(e[i].many = l.slice(u, a)), (e[s].many = l.slice(0, u)), s++
}
return e
}
var wk = {
clone: function (r) {
for (
var t = [],
e = 1 - Math.pow(1 - r.path.style.opacity, 1 / r.count),
n = 0;
n < r.count;
n++
) {
var i = rf(r.path)
i.setStyle('opacity', e), t.push(i)
}
return t
},
split: null
}
function kv(r, t, e, n, i, a) {
if (!r.length || !t.length) return
var o = ns('update', n, i)
if (!(o && o.duration > 0)) return
var s = n.getModel('universalTransition').get('delay'),
l = Object.assign({ setToFinal: !0 }, o),
u,
f
tS(r) && ((u = r), (f = t)), tS(t) && ((u = t), (f = r))
function h(m, y, _, S, w) {
var x = m.many,
b = m.one
if (x.length === 1 && !w) {
var T = y ? x[0] : b,
C = y ? b : x[0]
if (xl(T)) h({ many: [T], one: C }, !0, _, S, !0)
else {
var M = s ? j({ delay: s(_, S) }, l) : l
Ev(T, C, M), a(T, C, T, C, M)
}
} else
for (
var D = j(
{
dividePath: wk[e],
individualDelay:
s &&
function (U, k, F, H) {
return s(U + _, S)
}
},
l
),
I = y ? Sk(x, b, D) : xk(b, x, D),
L = I.fromIndividuals,
P = I.toIndividuals,
R = L.length,
O = 0;
O < R;
O++
) {
var M = s ? j({ delay: s(O, R) }, l) : l
a(L[O], P[O], y ? x[O] : m.one, y ? m.one : x[O], M)
}
}
for (
var c = u ? u === r : r.length > t.length,
v = u ? eS(f, u) : eS(c ? t : r, [c ? r : t]),
d = 0,
p = 0;
p < v.length;
p++
)
d += v[p].many.length
for (var g = 0, p = 0; p < v.length; p++)
h(v[p], c, g, d), (g += v[p].many.length)
}
function Rn(r) {
if (!r) return []
if (z(r)) {
for (var t = [], e = 0; e < r.length; e++) t.push(Rn(r[e]))
return t
}
var n = []
return (
r.traverse(function (i) {
i instanceof st &&
!i.disableMorphing &&
!i.invisible &&
!i.ignore &&
n.push(i)
}),
n
)
}
var rS = 1e4,
bk = wt()
function Tk(r) {
for (var t = r.dimensions, e = 0; e < t.length; e++) {
var n = r.getDimensionInfo(t[e])
if (n && n.otherDims.itemGroupId === 0) return t[e]
}
}
function nS(r) {
var t = []
return (
A(r, function (e) {
var n = e.data
if (!(n.count() > rS))
for (var i = n.getIndices(), a = Tk(n), o = 0; o < i.length; o++)
t.push({ data: n, dim: e.dim || a, divide: e.divide, dataIndex: o })
}),
t
)
}
function Bv(r, t, e) {
r.traverse(function (n) {
n instanceof st &&
Wt(n, { style: { opacity: 0 } }, t, { dataIndex: e, isFrom: !0 })
})
}
function Nv(r) {
if (r.parent) {
var t = r.getComputedTransform()
r.setLocalTransform(t), r.parent.remove(r)
}
}
function Di(r) {
r.stopAnimation(),
r.isGroup &&
r.traverse(function (t) {
t.stopAnimation()
})
}
function Ck(r, t, e) {
var n = ns('update', e, t)
n &&
r.traverse(function (i) {
if (i instanceof Qn) {
var a = _C(i)
a && i.animateFrom({ style: a }, n)
}
})
}
function Ak(r, t) {
var e = r.length
if (e !== t.length) return !1
for (var n = 0; n < e; n++) {
var i = r[n],
a = t[n]
if (i.data.getId(i.dataIndex) !== a.data.getId(a.dataIndex)) return !1
}
return !0
}
function iS(r, t, e) {
var n = nS(r),
i = nS(t)
function a(m, y, _, S, w) {
;(_ || m) &&
y.animateFrom(
{ style: _ && _ !== m ? N(N({}, _.style), m.style) : m.style },
w
)
}
function o(m) {
for (var y = 0; y < m.length; y++) if (m[y].dim) return m[y].dim
}
var s = o(n),
l = o(i),
u = !1
function f(m, y) {
return function (_) {
var S = _.data,
w = _.dataIndex
if (y) return S.getId(w)
var x = S.hostModel && S.hostModel.get('dataGroupId'),
b = m ? s || l : l || s,
T = b && S.getDimensionInfo(b),
C = T && T.ordinalMeta
if (T) {
var M = S.get(T.name, w)
return (C && C.categories[M]) || M + ''
}
var D = S.getRawDataItem(w)
return D && D.groupId ? D.groupId + '' : x || S.getId(w)
}
}
var h = Ak(n, i),
c = {}
if (!h)
for (var v = 0; v < i.length; v++) {
var d = i[v],
p = d.data.getItemGraphicEl(d.dataIndex)
p && (c[p.id] = !0)
}
function g(m, y) {
var _ = n[y],
S = i[m],
w = S.data.hostModel,
x = _.data.getItemGraphicEl(_.dataIndex),
b = S.data.getItemGraphicEl(S.dataIndex)
if (x === b) {
b && Ck(b, S.dataIndex, w)
return
}
;(x && c[x.id]) ||
(b &&
(Di(b),
x
? (Di(x), Nv(x), (u = !0), kv(Rn(x), Rn(b), S.divide, w, m, a))
: Bv(b, w, m)))
}
new Ba(n, i, f(!0, h), f(!1, h), null, 'multiple')
.update(g)
.updateManyToOne(function (m, y) {
var _ = i[m],
S = _.data,
w = S.hostModel,
x = S.getItemGraphicEl(_.dataIndex),
b = Lt(
G(y, function (T) {
return n[T].data.getItemGraphicEl(n[T].dataIndex)
}),
function (T) {
return T && T !== x && !c[T.id]
}
)
x &&
(Di(x),
b.length
? (A(b, function (T) {
Di(T), Nv(T)
}),
(u = !0),
kv(Rn(b), Rn(x), _.divide, w, m, a))
: Bv(x, w, _.dataIndex))
})
.updateOneToMany(function (m, y) {
var _ = n[y],
S = _.data.getItemGraphicEl(_.dataIndex)
if (!(S && c[S.id])) {
var w = Lt(
G(m, function (b) {
return i[b].data.getItemGraphicEl(i[b].dataIndex)
}),
function (b) {
return b && b !== S
}
),
x = i[m[0]].data.hostModel
w.length &&
(A(w, function (b) {
return Di(b)
}),
S
? (Di(S), Nv(S), (u = !0), kv(Rn(S), Rn(w), _.divide, x, m[0], a))
: A(w, function (b) {
return Bv(b, x, m[0])
}))
}
})
.updateManyToMany(function (m, y) {
new Ba(
y,
m,
function (_) {
return n[_].data.getId(n[_].dataIndex)
},
function (_) {
return i[_].data.getId(i[_].dataIndex)
}
)
.update(function (_, S) {
g(m[_], y[S])
})
.execute()
})
.execute(),
u &&
A(t, function (m) {
var y = m.data,
_ = y.hostModel,
S = _ && e.getViewOfSeriesModel(_),
w = ns('update', _, 0)
S &&
_.isAnimationEnabled() &&
w &&
w.duration > 0 &&
S.group.traverse(function (x) {
x instanceof st &&
!x.animators.length &&
x.animateFrom({ style: { opacity: 0 } }, w)
})
})
}
function aS(r) {
var t = r.getModel('universalTransition').get('seriesKey')
return t || r.id
}
function oS(r) {
return z(r) ? r.sort().join(',') : r
}
function Wr(r) {
if (r.hostModel)
return r.hostModel.getModel('universalTransition').get('divideShape')
}
function Mk(r, t) {
var e = q(),
n = q(),
i = q()
return (
A(r.oldSeries, function (a, o) {
var s = r.oldData[o],
l = aS(a),
u = oS(l)
n.set(u, s),
z(l) &&
A(l, function (f) {
i.set(f, { data: s, key: u })
})
}),
A(t.updatedSeries, function (a) {
if (a.isUniversalTransitionEnabled() && a.isAnimationEnabled()) {
var o = a.getData(),
s = aS(a),
l = oS(s),
u = n.get(l)
if (u)
e.set(l, {
oldSeries: [{ divide: Wr(u), data: u }],
newSeries: [{ divide: Wr(o), data: o }]
})
else if (z(s)) {
var f = []
A(s, function (v) {
var d = n.get(v)
d && f.push({ divide: Wr(d), data: d })
}),
f.length &&
e.set(l, {
oldSeries: f,
newSeries: [{ data: o, divide: Wr(o) }]
})
} else {
var h = i.get(s)
if (h) {
var c = e.get(h.key)
c ||
((c = {
oldSeries: [{ data: h.data, divide: Wr(h.data) }],
newSeries: []
}),
e.set(h.key, c)),
c.newSeries.push({ data: o, divide: Wr(o) })
}
}
}
}),
e
)
}
function sS(r, t) {
for (var e = 0; e < r.length; e++) {
var n =
(t.seriesIndex != null && t.seriesIndex === r[e].seriesIndex) ||
(t.seriesId != null && t.seriesId === r[e].id)
if (n) return e
}
}
function Dk(r, t, e, n) {
var i = [],
a = []
A(Mt(r.from), function (o) {
var s = sS(t.oldSeries, o)
s >= 0 &&
i.push({ data: t.oldData[s], divide: Wr(t.oldData[s]), dim: o.dimension })
}),
A(Mt(r.to), function (o) {
var s = sS(e.updatedSeries, o)
if (s >= 0) {
var l = e.updatedSeries[s].getData()
a.push({ data: l, divide: Wr(l), dim: o.dimension })
}
}),
i.length > 0 && a.length > 0 && iS(i, a, n)
}
function Ik(r) {
r.registerUpdateLifecycle('series:beforeupdate', function (t, e, n) {
A(Mt(n.seriesTransition), function (i) {
A(Mt(i.to), function (a) {
for (var o = n.updatedSeries, s = 0; s < o.length; s++)
((a.seriesIndex != null && a.seriesIndex === o[s].seriesIndex) ||
(a.seriesId != null && a.seriesId === o[s].id)) &&
(o[s][Ps] = !0)
})
})
}),
r.registerUpdateLifecycle('series:transition', function (t, e, n) {
var i = bk(e)
if (i.oldSeries && n.updatedSeries && n.optionChanged) {
var a = n.seriesTransition
if (a)
A(Mt(a), function (c) {
Dk(c, i, n, e)
})
else {
var o = Mk(i, n)
A(o.keys(), function (c) {
var v = o.get(c)
iS(v.oldSeries, v.newSeries, e)
})
}
A(n.updatedSeries, function (c) {
c[Ps] && (c[Ps] = !1)
})
}
for (
var s = t.getSeries(),
l = (i.oldSeries = []),
u = (i.oldData = []),
f = 0;
f < s.length;
f++
) {
var h = s[f].getData()
h.count() < rS && (l.push(s[f]), u.push(h))
}
})
}
function lS(r, t, e) {
var n = kn.createCanvas(),
i = t.getWidth(),
a = t.getHeight(),
o = n.style
return (
o &&
((o.position = 'absolute'),
(o.left = '0'),
(o.top = '0'),
(o.width = i + 'px'),
(o.height = a + 'px'),
n.setAttribute('data-zr-dom-id', r)),
(n.width = i * e),
(n.height = a * e),
n
)
}
var Lk = (function (r) {
B(t, r)
function t(e, n, i) {
var a = r.call(this) || this
;(a.motionBlur = !1),
(a.lastFrameAlpha = 0.7),
(a.dpr = 1),
(a.virtual = !1),
(a.config = {}),
(a.incremental = !1),
(a.zlevel = 0),
(a.maxRepaintRectCount = 5),
(a.__dirty = !0),
(a.__firstTimePaint = !0),
(a.__used = !1),
(a.__drawIndex = 0),
(a.__startIndex = 0),
(a.__endIndex = 0),
(a.__prevStartIndex = null),
(a.__prevEndIndex = null)
var o
;(i = i || Io),
typeof e == 'string'
? (o = lS(e, n, i))
: Y(e) && ((o = e), (e = o.id)),
(a.id = e),
(a.dom = o)
var s = o.style
return (
s &&
(Xv(o),
(o.onselectstart = function () {
return !1
}),
(s.padding = '0'),
(s.margin = '0'),
(s.borderWidth = '0')),
(a.painter = n),
(a.dpr = i),
a
)
}
return (
(t.prototype.getElementCount = function () {
return this.__endIndex - this.__startIndex
}),
(t.prototype.afterBrush = function () {
;(this.__prevStartIndex = this.__startIndex),
(this.__prevEndIndex = this.__endIndex)
}),
(t.prototype.initContext = function () {
;(this.ctx = this.dom.getContext('2d')), (this.ctx.dpr = this.dpr)
}),
(t.prototype.setUnpainted = function () {
this.__firstTimePaint = !0
}),
(t.prototype.createBackBuffer = function () {
var e = this.dpr
;(this.domBack = lS('back-' + this.id, this.painter, e)),
(this.ctxBack = this.domBack.getContext('2d')),
e !== 1 && this.ctxBack.scale(e, e)
}),
(t.prototype.createRepaintRects = function (e, n, i, a) {
if (this.__firstTimePaint) return (this.__firstTimePaint = !1), null
var o = [],
s = this.maxRepaintRectCount,
l = !1,
u = new vt(0, 0, 0, 0)
function f(y) {
if (!(!y.isFinite() || y.isZero()))
if (o.length === 0) {
var _ = new vt(0, 0, 0, 0)
_.copy(y), o.push(_)
} else {
for (var S = !1, w = 1 / 0, x = 0, b = 0; b < o.length; ++b) {
var T = o[b]
if (T.intersect(y)) {
var C = new vt(0, 0, 0, 0)
C.copy(T), C.union(y), (o[b] = C), (S = !0)
break
} else if (l) {
u.copy(y), u.union(T)
var M = y.width * y.height,
D = T.width * T.height,
I = u.width * u.height,
L = I - M - D
L < w && ((w = L), (x = b))
}
}
if ((l && (o[x].union(y), (S = !0)), !S)) {
var _ = new vt(0, 0, 0, 0)
_.copy(y), o.push(_)
}
l || (l = o.length >= s)
}
}
for (var h = this.__startIndex; h < this.__endIndex; ++h) {
var c = e[h]
if (c) {
var v = c.shouldBePainted(i, a, !0, !0),
d =
c.__isRendered && (c.__dirty & ae || !v)
? c.getPrevPaintRect()
: null
d && f(d)
var p =
v && (c.__dirty & ae || !c.__isRendered) ? c.getPaintRect() : null
p && f(p)
}
}
for (var h = this.__prevStartIndex; h < this.__prevEndIndex; ++h) {
var c = n[h],
v = c.shouldBePainted(i, a, !0, !0)
if (c && (!v || !c.__zr) && c.__isRendered) {
var d = c.getPrevPaintRect()
d && f(d)
}
}
var g
do {
g = !1
for (var h = 0; h < o.length; ) {
if (o[h].isZero()) {
o.splice(h, 1)
continue
}
for (var m = h + 1; m < o.length; )
o[h].intersect(o[m])
? ((g = !0), o[h].union(o[m]), o.splice(m, 1))
: m++
h++
}
} while (g)
return (this._paintRects = o), o
}),
(t.prototype.debugGetPaintRects = function () {
return (this._paintRects || []).slice()
}),
(t.prototype.resize = function (e, n) {
var i = this.dpr,
a = this.dom,
o = a.style,
s = this.domBack
o && ((o.width = e + 'px'), (o.height = n + 'px')),
(a.width = e * i),
(a.height = n * i),
s &&
((s.width = e * i),
(s.height = n * i),
i !== 1 && this.ctxBack.scale(i, i))
}),
(t.prototype.clear = function (e, n, i) {
var a = this.dom,
o = this.ctx,
s = a.width,
l = a.height
n = n || this.clearColor
var u = this.motionBlur && !e,
f = this.lastFrameAlpha,
h = this.dpr,
c = this
u &&
(this.domBack || this.createBackBuffer(),
(this.ctxBack.globalCompositeOperation = 'copy'),
this.ctxBack.drawImage(a, 0, 0, s / h, l / h))
var v = this.domBack
function d(p, g, m, y) {
if ((o.clearRect(p, g, m, y), n && n !== 'transparent')) {
var _ = void 0
io(n)
? ((_ =
n.__canvasGradient ||
qf(o, n, { x: 0, y: 0, width: m, height: y })),
(n.__canvasGradient = _))
: Ax(n) &&
(_ = Kf(o, n, {
dirty: function () {
c.setUnpainted(), c.__painter.refresh()
}
})),
o.save(),
(o.fillStyle = _ || n),
o.fillRect(p, g, m, y),
o.restore()
}
u &&
(o.save(),
(o.globalAlpha = f),
o.drawImage(v, p, g, m, y),
o.restore())
}
!i || u
? d(0, 0, s, l)
: i.length &&
A(i, function (p) {
d(p.x * h, p.y * h, p.width * h, p.height * h)
})
}),
t
)
})(fe),
Fv = Lk,
uS = 1e5,
En = 314159,
Tl = 0.01,
Pk = 0.001
function Rk(r) {
return r
? r.__builtin__
? !0
: !(typeof r.resize != 'function' || typeof r.refresh != 'function')
: !1
}
function Ek(r, t) {
var e = document.createElement('div')
return (
(e.style.cssText =
[
'position:relative',
'width:' + r + 'px',
'height:' + t + 'px',
'padding:0',
'margin:0',
'border-width:0'
].join(';') + ';'),
e
)
}
var Ok = (function () {
function r(t, e, n, i) {
;(this.type = 'canvas'),
(this._zlevelList = []),
(this._prevDisplayList = []),
(this._layers = {}),
(this._layerConfig = {}),
(this._needsManuallyCompositing = !1),
(this.type = 'canvas')
var a = !t.nodeName || t.nodeName.toUpperCase() === 'CANVAS'
;(this._opts = n = N({}, n || {})),
(this.dpr = n.devicePixelRatio || Io),
(this._singleCanvas = a),
(this.root = t)
var o = t.style
o && (Xv(t), (t.innerHTML = '')), (this.storage = e)
var s = this._zlevelList
this._prevDisplayList = []
var l = this._layers
if (a) {
var f = t,
h = f.width,
c = f.height
n.width != null && (h = n.width),
n.height != null && (c = n.height),
(this.dpr = n.devicePixelRatio || 1),
(f.width = h * this.dpr),
(f.height = c * this.dpr),
(this._width = h),
(this._height = c)
var v = new Fv(f, this, this.dpr)
;(v.__builtin__ = !0),
v.initContext(),
(l[En] = v),
(v.zlevel = En),
s.push(En),
(this._domRoot = t)
} else {
;(this._width = Gs(t, 0, n)), (this._height = Gs(t, 1, n))
var u = (this._domRoot = Ek(this._width, this._height))
t.appendChild(u)
}
}
return (
(r.prototype.getType = function () {
return 'canvas'
}),
(r.prototype.isSingleCanvas = function () {
return this._singleCanvas
}),
(r.prototype.getViewportRoot = function () {
return this._domRoot
}),
(r.prototype.getViewportRootOffset = function () {
var t = this.getViewportRoot()
if (t)
return { offsetLeft: t.offsetLeft || 0, offsetTop: t.offsetTop || 0 }
}),
(r.prototype.refresh = function (t) {
var e = this.storage.getDisplayList(!0),
n = this._prevDisplayList,
i = this._zlevelList
;(this._redrawId = Math.random()),
this._paintList(e, n, t, this._redrawId)
for (var a = 0; a < i.length; a++) {
var o = i[a],
s = this._layers[o]
if (!s.__builtin__ && s.refresh) {
var l = a === 0 ? this._backgroundColor : null
s.refresh(l)
}
}
return (
this._opts.useDirtyRect && (this._prevDisplayList = e.slice()), this
)
}),
(r.prototype.refreshHover = function () {
this._paintHoverList(this.storage.getDisplayList(!1))
}),
(r.prototype._paintHoverList = function (t) {
var e = t.length,
n = this._hoverlayer
if ((n && n.clear(), !!e)) {
for (
var i = {
inHover: !0,
viewWidth: this._width,
viewHeight: this._height
},
a,
o = 0;
o < e;
o++
) {
var s = t[o]
s.__inHover &&
(n || (n = this._hoverlayer = this.getLayer(uS)),
a || ((a = n.ctx), a.save()),
bn(a, s, i, o === e - 1))
}
a && a.restore()
}
}),
(r.prototype.getHoverLayer = function () {
return this.getLayer(uS)
}),
(r.prototype.paintOne = function (t, e) {
Zm(t, e)
}),
(r.prototype._paintList = function (t, e, n, i) {
if (this._redrawId === i) {
;(n = n || !1), this._updateLayerStatus(t)
var a = this._doPaintList(t, e, n),
o = a.finished,
s = a.needsRefreshHover
if (
(this._needsManuallyCompositing && this._compositeManually(),
s && this._paintHoverList(t),
o)
)
this.eachLayer(function (u) {
u.afterBrush && u.afterBrush()
})
else {
var l = this
Xl(function () {
l._paintList(t, e, n, i)
})
}
}
}),
(r.prototype._compositeManually = function () {
var t = this.getLayer(En).ctx,
e = this._domRoot.width,
n = this._domRoot.height
t.clearRect(0, 0, e, n),
this.eachBuiltinLayer(function (i) {
i.virtual && t.drawImage(i.dom, 0, 0, e, n)
})
}),
(r.prototype._doPaintList = function (t, e, n) {
for (
var i = this, a = [], o = this._opts.useDirtyRect, s = 0;
s < this._zlevelList.length;
s++
) {
var l = this._zlevelList[s],
u = this._layers[l]
u.__builtin__ &&
u !== this._hoverlayer &&
(u.__dirty || n) &&
a.push(u)
}
for (
var f = !0,
h = !1,
c = function (p) {
var g = a[p],
m = g.ctx,
y = o && g.createRepaintRects(t, e, v._width, v._height),
_ = n ? g.__startIndex : g.__drawIndex,
S = !n && g.incremental && Date.now,
w = S && Date.now(),
x = g.zlevel === v._zlevelList[0] ? v._backgroundColor : null
if (g.__startIndex === g.__endIndex) g.clear(!1, x, y)
else if (_ === g.__startIndex) {
var b = t[_]
;(!b.incremental || !b.notClear || n) && g.clear(!1, x, y)
}
_ === -1 &&
(console.error('For some unknown reason. drawIndex is -1'),
(_ = g.__startIndex))
var T,
C = function (L) {
var P = {
inHover: !1,
allClipped: !1,
prevEl: null,
viewWidth: i._width,
viewHeight: i._height
}
for (T = _; T < g.__endIndex; T++) {
var R = t[T]
if (
(R.__inHover && (h = !0),
i._doPaintEl(R, g, o, L, P, T === g.__endIndex - 1),
S)
) {
var O = Date.now() - w
if (O > 15) break
}
}
P.prevElClipPaths && m.restore()
}
if (y)
if (y.length === 0) T = g.__endIndex
else
for (var M = v.dpr, D = 0; D < y.length; ++D) {
var I = y[D]
m.save(),
m.beginPath(),
m.rect(I.x * M, I.y * M, I.width * M, I.height * M),
m.clip(),
C(I),
m.restore()
}
else m.save(), C(), m.restore()
;(g.__drawIndex = T), g.__drawIndex < g.__endIndex && (f = !1)
},
v = this,
d = 0;
d < a.length;
d++
)
c(d)
return (
at.wxa &&
A(this._layers, function (p) {
p && p.ctx && p.ctx.draw && p.ctx.draw()
}),
{ finished: f, needsRefreshHover: h }
)
}),
(r.prototype._doPaintEl = function (t, e, n, i, a, o) {
var s = e.ctx
if (n) {
var l = t.getPaintRect()
;(!i || (l && l.intersect(i))) &&
(bn(s, t, a, o), t.setPrevPaintRect(l))
} else bn(s, t, a, o)
}),
(r.prototype.getLayer = function (t, e) {
this._singleCanvas && !this._needsManuallyCompositing && (t = En)
var n = this._layers[t]
return (
n ||
((n = new Fv('zr_' + t, this, this.dpr)),
(n.zlevel = t),
(n.__builtin__ = !0),
this._layerConfig[t]
? nt(n, this._layerConfig[t], !0)
: this._layerConfig[t - Tl] &&
nt(n, this._layerConfig[t - Tl], !0),
e && (n.virtual = e),
this.insertLayer(t, n),
n.initContext()),
n
)
}),
(r.prototype.insertLayer = function (t, e) {
var n = this._layers,
i = this._zlevelList,
a = i.length,
o = this._domRoot,
s = null,
l = -1
if (!n[t] && !!Rk(e)) {
if (a > 0 && t > i[0]) {
for (l = 0; l < a - 1 && !(i[l] < t && i[l + 1] > t); l++);
s = n[i[l]]
}
if ((i.splice(l + 1, 0, t), (n[t] = e), !e.virtual))
if (s) {
var u = s.dom
u.nextSibling
? o.insertBefore(e.dom, u.nextSibling)
: o.appendChild(e.dom)
} else
o.firstChild
? o.insertBefore(e.dom, o.firstChild)
: o.appendChild(e.dom)
e.__painter = this
}
}),
(r.prototype.eachLayer = function (t, e) {
for (var n = this._zlevelList, i = 0; i < n.length; i++) {
var a = n[i]
t.call(e, this._layers[a], a)
}
}),
(r.prototype.eachBuiltinLayer = function (t, e) {
for (var n = this._zlevelList, i = 0; i < n.length; i++) {
var a = n[i],
o = this._layers[a]
o.__builtin__ && t.call(e, o, a)
}
}),
(r.prototype.eachOtherLayer = function (t, e) {
for (var n = this._zlevelList, i = 0; i < n.length; i++) {
var a = n[i],
o = this._layers[a]
o.__builtin__ || t.call(e, o, a)
}
}),
(r.prototype.getLayers = function () {
return this._layers
}),
(r.prototype._updateLayerStatus = function (t) {
this.eachBuiltinLayer(function (h, c) {
h.__dirty = h.__used = !1
})
function e(h) {
a && (a.__endIndex !== h && (a.__dirty = !0), (a.__endIndex = h))
}
if (this._singleCanvas)
for (var n = 1; n < t.length; n++) {
var i = t[n]
if (i.zlevel !== t[n - 1].zlevel || i.incremental) {
this._needsManuallyCompositing = !0
break
}
}
var a = null,
o = 0,
s,
l
for (l = 0; l < t.length; l++) {
var i = t[l],
u = i.zlevel,
f = void 0
s !== u && ((s = u), (o = 0)),
i.incremental
? ((f = this.getLayer(u + Pk, this._needsManuallyCompositing)),
(f.incremental = !0),
(o = 1))
: (f = this.getLayer(
u + (o > 0 ? Tl : 0),
this._needsManuallyCompositing
)),
f.__builtin__ ||
Pl('ZLevel ' + u + ' has been used by unkown layer ' + f.id),
f !== a &&
((f.__used = !0),
f.__startIndex !== l && (f.__dirty = !0),
(f.__startIndex = l),
f.incremental ? (f.__drawIndex = -1) : (f.__drawIndex = l),
e(l),
(a = f)),
i.__dirty & ae &&
!i.__inHover &&
((f.__dirty = !0),
f.incremental && f.__drawIndex < 0 && (f.__drawIndex = l))
}
e(l),
this.eachBuiltinLayer(function (h, c) {
!h.__used &&
h.getElementCount() > 0 &&
((h.__dirty = !0),
(h.__startIndex = h.__endIndex = h.__drawIndex = 0)),
h.__dirty && h.__drawIndex < 0 && (h.__drawIndex = h.__startIndex)
})
}),
(r.prototype.clear = function () {
return this.eachBuiltinLayer(this._clearLayer), this
}),
(r.prototype._clearLayer = function (t) {
t.clear()
}),
(r.prototype.setBackgroundColor = function (t) {
;(this._backgroundColor = t),
A(this._layers, function (e) {
e.setUnpainted()
})
}),
(r.prototype.configLayer = function (t, e) {
if (e) {
var n = this._layerConfig
n[t] ? nt(n[t], e, !0) : (n[t] = e)
for (var i = 0; i < this._zlevelList.length; i++) {
var a = this._zlevelList[i]
if (a === t || a === t + Tl) {
var o = this._layers[a]
nt(o, n[t], !0)
}
}
}
}),
(r.prototype.delLayer = function (t) {
var e = this._layers,
n = this._zlevelList,
i = e[t]
!i ||
(i.dom.parentNode.removeChild(i.dom),
delete e[t],
n.splice(ot(n, t), 1))
}),
(r.prototype.resize = function (t, e) {
if (this._domRoot.style) {
var n = this._domRoot
n.style.display = 'none'
var i = this._opts,
a = this.root
if (
(t != null && (i.width = t),
e != null && (i.height = e),
(t = Gs(a, 0, i)),
(e = Gs(a, 1, i)),
(n.style.display = ''),
this._width !== t || e !== this._height)
) {
;(n.style.width = t + 'px'), (n.style.height = e + 'px')
for (var o in this._layers)
this._layers.hasOwnProperty(o) && this._layers[o].resize(t, e)
this.refresh(!0)
}
;(this._width = t), (this._height = e)
} else {
if (t == null || e == null) return
;(this._width = t), (this._height = e), this.getLayer(En).resize(t, e)
}
return this
}),
(r.prototype.clearLayer = function (t) {
var e = this._layers[t]
e && e.clear()
}),
(r.prototype.dispose = function () {
;(this.root.innerHTML = ''),
(this.root = this.storage = this._domRoot = this._layers = null)
}),
(r.prototype.getRenderedCanvas = function (t) {
if (((t = t || {}), this._singleCanvas && !this._compositeManually))
return this._layers[En].dom
var e = new Fv('image', this, t.pixelRatio || this.dpr)
e.initContext(), e.clear(!1, t.backgroundColor || this._backgroundColor)
var n = e.ctx
if (t.pixelRatio <= this.dpr) {
this.refresh()
var i = e.dom.width,
a = e.dom.height
this.eachLayer(function (h) {
h.__builtin__
? n.drawImage(h.dom, 0, 0, i, a)
: h.renderToCanvas && (n.save(), h.renderToCanvas(n), n.restore())
})
} else
for (
var o = {
inHover: !1,
viewWidth: this._width,
viewHeight: this._height
},
s = this.storage.getDisplayList(!0),
l = 0,
u = s.length;
l < u;
l++
) {
var f = s[l]
bn(n, f, o, l === u - 1)
}
return e.dom
}),
(r.prototype.getWidth = function () {
return this._width
}),
(r.prototype.getHeight = function () {
return this._height
}),
r
)
})(),
kk = Ok
function Bk(r) {
r.registerPainter('canvas', kk)
}
const Ce = {
legend: { show: !1 },
emphasis: { lineStyle: { width: 2 } },
xAxis: {
boundaryGap: !1,
data: [
'01\u6708',
'02\u6708',
'03\u6708',
'04\u6708',
'05\u6708',
'06\u6708',
'07\u6708',
'08\u6708',
'09\u6708',
'10\u6708',
'11\u6708',
'12\u6708'
],
type: 'category',
axisLine: { lineStyle: { color: '#8C8C8C' } }
},
color: [
'#5B8FF9',
'#01C1B5',
'#91DD1C',
'#FFA92C',
'#BE7E2E',
'#1C96DD',
'#D22CFF',
'#FF3C3C',
'#1AEE3E',
'#7c47ff'
],
series: [
{
lineStyle: { width: 1 },
data: [
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00'
],
symbol: 'circle',
name: '\u966A\u7EC3\u8BFE',
type: 'line',
emphasis: { lineStyle: { width: 1 } }
},
{
lineStyle: { width: 1 },
data: [
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00'
],
symbol: 'circle',
name: '\u76F4\u64AD\u8BFE',
type: 'line',
emphasis: { lineStyle: { width: 1 } }
},
{
lineStyle: { width: 1 },
data: [
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00'
],
symbol: 'circle',
name: '\u89C6\u9891\u8BFE',
type: 'line',
emphasis: { lineStyle: { width: 1 } }
},
{
lineStyle: { width: 1 },
data: [
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00'
],
symbol: 'circle',
name: '\u4E50\u8C31',
type: 'line',
emphasis: { lineStyle: { width: 1 } }
},
{
lineStyle: { width: 1 },
data: [
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00'
],
symbol: 'circle',
name: '\u5C0F\u9177Ai\u63A8\u5E7F',
type: 'line',
emphasis: { lineStyle: { width: 1 } }
},
{
lineStyle: { width: 1 },
data: [
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00'
],
symbol: 'circle',
name: '\u76F4\u64AD\u8BFE\u63A8\u8350',
type: 'line',
emphasis: { lineStyle: { width: 1 } }
},
{
lineStyle: { width: 1 },
data: [
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00'
],
symbol: 'circle',
name: '\u89C6\u9891\u8BFE\u63A8\u8350',
type: 'line',
emphasis: { lineStyle: { width: 1 } }
},
{
lineStyle: { width: 1 },
data: [
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00'
],
symbol: 'circle',
name: '\u5546\u54C1\u63A8\u8350',
type: 'line',
emphasis: { lineStyle: { width: 1 } }
},
{
lineStyle: { width: 1 },
data: [
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00'
],
symbol: 'circle',
name: '\u4E50\u8C31\u63A8\u8350',
type: 'line',
emphasis: { lineStyle: { width: 1 } }
},
{
lineStyle: { width: 1 },
data: [
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00',
'0.00'
],
symbol: 'circle',
name: '\u6D3B\u52A8\u62A5\u540D',
type: 'line',
emphasis: { lineStyle: { width: 1 } }
}
],
title: { show: !1 },
grid: {
bottom: '3%',
containLabel: !0,
left: '3%',
right: '5%',
top: '7%'
},
tooltip: { trigger: 'axis', confine: !0 },
yAxis: {
type: 'value',
splitLine: {
axisLine: { lineStyle: { color: '#8C8C8C' } },
lineStyle: { color: ['#E2E2E2'] }
}
},
dataZoom: [{ type: 'inside', throttle: 100 }],
toolbox: { feature: { saveAsImage: { show: !1 } } }
},
Be = {
tooltip: {
position: ['30%', '30%'],
trigger: 'item',
padding: 3,
textStyle: { fontSize: 12 },
borderWidth: 0,
formatter: '{b} : {c} ({d}%)'
},
series: [
{
avoidLabelOverlap: !1,
label: { show: !1 },
data: [
{ name: '\u966A\u7EC3\u8BFE', value: '0.00' },
{ name: '\u76F4\u64AD\u8BFE', value: '0.00' },
{ name: '\u89C6\u9891\u8BFE', value: '0.00' },
{ name: '\u4E50\u8C31', value: '0.00' },
{ name: '\u5C0F\u9177Ai\u63A8\u5E7F', value: '0.00' },
{ name: '\u76F4\u64AD\u8BFE\u63A8\u8350', value: '0.00' },
{ name: '\u89C6\u9891\u8BFE\u63A8\u8350', value: '0.00' },
{ name: '\u5546\u54C1\u63A8\u8350', value: '0.00' },
{ name: '\u4E50\u8C31\u63A8\u8350', value: '0.00' },
{ name: '\u6D3B\u52A8\u62A5\u540D', value: '0.00' }
],
type: 'pie',
radius: ['50%', '80%']
}
],
grid: {
bottom: '0%',
containLabel: !0,
left: '0%',
right: '0%',
top: '0%'
},
toolbox: { feature: { saveAsImage: { show: !1 } } },
color: [
'#5B8FF9',
'#01C1B5',
'#91DD1C',
'#FFA92C',
'#BE7E2E',
'#1C96DD',
'#D22CFF',
'#FF3C3C',
'#1AEE3E',
'#7c47ff'
]
}
Re([iO, eO, PR, ik, ek, PL, zI, Ik, Bk, ZL, RE, yO, HO, cL])
const fS = r => {
const t = `./images/${r}`
return { './images/icon_fly.png': TS, './images/icon_user.png': AS }[t]
.default
},
hS = [],
Cl = Pi().year()
let vS = 10
for (let r = Cl - 10; r <= Cl + 10; r++)
hS.push({ text: `${r}\u5E74`, value: r })
var Hk = pS({
name: 'IncomeConsus',
data() {
return {
moneyInfo: {
totalSingleRate: 0,
totalShareRate: 0,
totalInAmount: 0,
practiceAmount: 0,
practiceRate: 0,
liveAmount: 0,
liveRate: 0,
videoAmount: 0,
videoRate: 0,
musicAmount: 0,
musicRate: 0,
vipShareAmount: 0,
vipShareRate: 0,
liveShareAmount: 0,
liveShareRate: 0,
videoShareAmount: 0,
videoShareRate: 0,
mallShareAmount: 0,
mallShareRate: 0,
musicShareAmount: 0,
musicShareRate: 0,
actiRegistShareAmount: 0,
actiRegistShareRate: 0
},
params: { timeType: 'YEAR', dateTime: `${Cl}` },
dateTimeStr: `${Cl}\u5E74`,
myChart: null,
myChart2: null,
timerStatus: !1,
currentDate: new Date()
}
},
async mounted() {
;(this.myChart = Vv(y0(document.getElementById('incomeClass')))),
(this.myChart2 = Vv(y0(document.getElementById('structrueClass')))),
this.getList()
},
methods: {
async getList() {
try {
const r = this.params,
e =
(
await xS.post('/api-teacher/userAccount/accountTotal', {
data: r
})
).data || {}
this.moneyInfo = {
totalSingleRate:
e.practiceRate + e.liveRate + e.videoRate + e.musicRate,
totalShareRate:
e.vipShareRate +
e.liveShareRate +
e.videoShareRate +
e.musicShareRate +
e.mallShareRate +
e.actiRegistShareRate,
totalInAmount: e.totalInAmount || 0,
practiceAmount: e.practiceAmount || 0,
practiceRate: e.practiceRate || 0,
liveAmount: e.liveAmount || 0,
liveRate: e.liveRate || 0,
videoAmount: e.videoAmount || 0,
videoRate: e.videoRate || 0,
musicAmount: e.musicAmount || 0,
musicRate: e.musicRate || 0,
vipShareAmount: e.vipShareAmount || 0,
vipShareRate: e.vipShareRate || 0,
liveShareAmount: e.liveShareAmount || 0,
liveShareRate: e.liveShareRate || 0,
videoShareAmount: e.videoShareAmount || 0,
videoShareRate: e.videoShareRate || 0,
mallShareAmount: e.mallShareAmount || 0,
mallShareRate: e.mallShareRate || 0,
musicShareAmount: e.musicShareAmount || 0,
musicShareRate: e.musicShareRate || 0,
actiRegistShareAmount: e.actiRegistShareAmount || 0,
actiRegistShareRate: e.actiRegistShareRate || 0
}
const n = {
xAxis: [],
practiceAmount: [],
liveAmount: [],
videoAmount: [],
musicAmount: [],
vipShareAmount: [],
liveShareAmount: [],
videoShareAmount: [],
mallShareAmount: [],
musicShareAmount: [],
actiRegistShareAmount: []
}
;(e.infoList || []).forEach(i => {
r.timeType === 'YEAR'
? n.xAxis.push(Pi(i.timeStr).format('MM\u6708'))
: r.timeType === 'MONTH' &&
n.xAxis.push(Pi(i.timeStr).format('DD\u65E5')),
n.practiceAmount.push(i.practiceAmount),
n.liveAmount.push(i.liveAmount),
n.videoAmount.push(i.videoAmount),
n.musicAmount.push(i.musicAmount),
n.vipShareAmount.push(i.vipShareAmount),
n.liveShareAmount.push(i.liveShareAmount),
n.videoShareAmount.push(i.videoShareAmount),
n.mallShareAmount.push(i.mallShareAmount),
n.musicShareAmount.push(i.musicShareAmount),
n.actiRegistShareAmount.push(i.actiRegistShareAmount)
}),
(Ce.xAxis.data = n.xAxis),
(Ce.series[0].data = n.practiceAmount),
(Ce.series[1].data = n.liveAmount),
(Ce.series[2].data = n.videoAmount),
(Ce.series[3].data = n.musicAmount),
(Ce.series[4].data = n.vipShareAmount),
(Ce.series[5].data = n.liveShareAmount),
(Ce.series[6].data = n.videoShareAmount),
(Ce.series[7].data = n.mallShareAmount),
(Ce.series[8].data = n.musicShareAmount),
(Ce.series[9].data = n.actiRegistShareAmount),
this.myChart.clear(),
this.myChart.setOption(Ce),
(Be.series[0].data[0].value = e.practiceAmount),
(Be.series[0].data[1].value = e.liveAmount),
(Be.series[0].data[2].value = e.videoAmount),
(Be.series[0].data[3].value = e.musicAmount),
(Be.series[0].data[4].value = e.vipShareAmount),
(Be.series[0].data[5].value = e.liveShareAmount),
(Be.series[0].data[6].value = e.videoShareAmount),
(Be.series[0].data[7].value = e.mallShareAmount),
(Be.series[0].data[8].value = e.musicShareAmount),
(Be.series[0].data[9].value = e.actiRegistShareAmount),
this.myChart2.clear(),
this.myChart2.setOption(Be)
} catch {}
}
},
render() {
return E('div', { style: { overflow: 'hidden' } }, [
E('div', { class: V.incomeConsus }, [
E(
gS,
{ class: V.income, title: '\u603B\u6536\u5165(\u5143)' },
{
label: () =>
E('span', { class: V.countPrice }, [
Ae(this.moneyInfo.totalInAmount)
]),
value: () =>
E(
'span',
{ class: V.searchTime, onClick: () => (this.timerStatus = !0) },
[this.dateTimeStr]
)
}
),
E('div', { class: V.section }, [
E(
mS,
{ class: V.numberCount },
{
default: () => [
E(
Fe,
{ span: 6 },
{
default: () => [
E('i', null, null),
E('div', { class: V.type }, [
E('span', null, [rt('\u966A\u7EC3\u8BFE')]),
E('span', { class: V.price }, [
Ae(this.moneyInfo.practiceAmount)
])
])
]
}
),
E(
Fe,
{ span: 6 },
{
default: () => [
E('i', { class: V.color1 }, null),
E('div', { class: V.type }, [
E('span', null, [rt('\u76F4\u64AD\u8BFE')]),
E('span', { class: V.price }, [
Ae(this.moneyInfo.liveAmount)
])
])
]
}
),
E(
Fe,
{ span: 6 },
{
default: () => [
E('i', { class: V.color2 }, null),
E('div', { class: V.type }, [
E('span', null, [rt('\u89C6\u9891\u8BFE')]),
E('span', { class: V.price }, [
Ae(this.moneyInfo.videoAmount)
])
])
]
}
),
E(
Fe,
{ span: 6 },
{
default: () => [
E('i', { class: V.color3 }, null),
E('div', { class: V.type }, [
E('span', null, [rt('\u4E50\u8C31')]),
E('span', { class: V.price }, [
Ae(this.moneyInfo.musicAmount)
])
])
]
}
),
E(
Fe,
{ span: 6 },
{
default: () => [
E('i', { class: V.color4 }, null),
E('div', { class: V.type }, [
E('span', null, [rt('\u5C0F\u9177Ai\u63A8\u5E7F')]),
E('span', { class: V.price }, [
Ae(this.moneyInfo.vipShareAmount)
])
])
]
}
),
E(
Fe,
{ span: 6 },
{
default: () => [
E('i', { class: V.color5 }, null),
E('div', { class: V.type }, [
E('span', null, [rt('\u76F4\u64AD\u8BFE\u63A8\u8350')]),
E('span', { class: V.price }, [
Ae(this.moneyInfo.liveShareAmount)
])
])
]
}
),
E(
Fe,
{ span: 6 },
{
default: () => [
E('i', { class: V.color6 }, null),
E('div', { class: V.type }, [
E('span', null, [rt('\u89C6\u9891\u8BFE\u63A8\u8350')]),
E('span', { class: V.price }, [
Ae(this.moneyInfo.videoShareAmount)
])
])
]
}
),
E(
Fe,
{ span: 6 },
{
default: () => [
E('i', { class: V.color7 }, null),
E('div', { class: V.type }, [
E('span', null, [rt('\u5546\u54C1\u63A8\u8350')]),
E('span', { class: V.price }, [
Ae(this.moneyInfo.mallShareAmount)
])
])
]
}
),
E(
Fe,
{ span: 6 },
{
default: () => [
E('i', { class: V.color8 }, null),
E('div', { class: V.type }, [
E('span', null, [rt('\u4E50\u8C31\u63A8\u8350')]),
E('span', { class: V.price }, [
Ae(this.moneyInfo.musicShareAmount)
])
])
]
}
),
E(
Fe,
{ span: 6 },
{
default: () => [
E('i', { class: V.color9 }, null),
E('div', { class: V.type }, [
E('span', null, [rt('\u6D3B\u52A8\u62A5\u540D')]),
E('span', { class: V.price }, [
Ae(this.moneyInfo.actiRegistShareAmount)
])
])
]
}
)
]
}
)
]),
E('div', { id: 'incomeClass', class: V.incomeLine }, null),
E('div', { class: V.incomeTitle }, [
E('i', null, null),
rt('\u6536\u5165\u7ED3\u6784')
]),
E('div', { class: [V.pieSection, 'van-hairline--bottom'] }, [
E('div', { id: 'structrueClass', class: V.pieIncome }, null),
E('div', { class: V.rateAll }, [
E('div', null, [
E('img', { src: fS('icon_user.png') }, null),
E('span', null, [
rt('\u4E2A\u4EBA\u6536\u5165\u603B\u5360\u6BD4')
]),
E('span', { class: V.rate }, [
this.moneyInfo.totalSingleRate,
rt('%')
])
]),
E('div', null, [
E('img', { src: fS('icon_fly.png') }, null),
E('span', null, [
rt('\u63A8\u5E7F\u6536\u76CA\u603B\u5360\u6BD4')
]),
E('span', { class: V.rate }, [
this.moneyInfo.totalShareRate,
rt('%')
])
])
])
]),
E('div', { class: V.pieData }, [
E('div', null, [
E('i', { class: V.piePractice }, null),
E('span', { class: V.pieTitle }, [rt('\u966A\u7EC3\u8BFE')]),
E('span', null, [this.moneyInfo.practiceRate, rt('%')])
]),
E('div', null, [
E('i', { class: V.pie1 }, null),
E('span', { class: V.pieTitle }, [
rt('\u5C0F\u9177Ai\u63A8\u5E7F')
]),
E('span', null, [this.moneyInfo.vipShareRate, rt('%')])
]),
E('div', null, [
E('i', { class: V.pieLive }, null),
E('span', { class: V.pieTitle }, [rt('\u76F4\u64AD\u8BFE')]),
E('span', null, [this.moneyInfo.liveRate, rt('%')])
]),
E('div', null, [
E('i', { class: V.pie2 }, null),
E('span', { class: V.pieTitle }, [
rt('\u76F4\u64AD\u8BFE\u63A8\u8350')
]),
E('span', null, [this.moneyInfo.liveShareRate, rt('%')])
]),
E('div', null, [
E('i', { class: V.pieVideo }, null),
E('span', { class: V.pieTitle }, [rt('\u89C6\u9891\u8BFE')]),
E('span', null, [this.moneyInfo.videoRate, rt('%')])
]),
E('div', null, [
E('i', { class: V.pie3 }, null),
E('span', { class: V.pieTitle }, [
rt('\u89C6\u9891\u8BFE\u63A8\u8350')
]),
E('span', null, [this.moneyInfo.videoShareRate, rt('%')])
]),
E('div', null, [
E('i', { class: V.pieMusic }, null),
E('span', { class: V.pieTitle }, [rt('\u4E50\u8C31')]),
E('span', null, [this.moneyInfo.musicRate, rt('%')])
]),
E('div', null, [
E('i', { class: V.pie5 }, null),
E('span', { class: V.pieTitle }, [rt('\u4E50\u8C31\u63A8\u8350')]),
E('span', null, [this.moneyInfo.musicShareRate, rt('%')])
]),
E('div', null, [
E('i', { class: V.pie6 }, null),
E('span', { class: V.pieTitle }, [rt('\u6D3B\u52A8\u62A5\u540D')]),
E('span', null, [this.moneyInfo.actiRegistShareRate, rt('%')])
]),
E('div', null, [
E('i', { class: V.pie4 }, null),
E('span', { class: V.pieTitle }, [rt('\u5546\u54C1\u63A8\u8350')]),
E('span', null, [this.moneyInfo.mallShareRate, rt('%')])
])
])
]),
E(
yS,
{
show: this.timerStatus,
'onUpdate:show': r => (this.timerStatus = r),
position: 'bottom',
round: !0,
zIndex: 99999999
},
{
default: () => [
this.params.timeType === 'MONTH' &&
E(
_S,
{
modelValue: this.currentDate,
'onUpdate:modelValue': r => (this.currentDate = r),
type: 'year-month',
title: '\u9009\u62E9\u65F6\u95F4',
formatter: wS,
onCancle: () => (this.timerStatus = !1),
onConfirm: r => {
;(this.params.dateTime = Pi(r).format('YYYY-MM')),
(this.dateTimeStr = Pi(r).format('YYYY\u5E74MM\u6708')),
(this.timerStatus = !1),
this.getList()
}
},
{
'columns-top': () =>
E('div', { class: V.timePopup }, [
E(
eo,
{
type: 'primary',
plain: this.params.timeType !== 'MONTH',
size: 'mini',
class: V.timeMonth,
onClick: () => (this.params.timeType = 'MONTH')
},
{ default: () => [rt('\u6309\u6708')] }
),
E(
eo,
{
type: 'primary',
plain: this.params.timeType !== 'YEAR',
size: 'mini',
class: V.timeYear,
onClick: () => (this.params.timeType = 'YEAR')
},
{ default: () => [rt('\u6309\u5E74')] }
)
])
}
),
this.params.timeType === 'YEAR' &&
E(
SS,
{
modelValue: this.currentDate,
'onUpdate:modelValue': r => (this.currentDate = r),
title: '\u9009\u62E9\u65F6\u95F4',
columns: hS,
defaultIndex: vS,
onCancel: () => (this.timerStatus = !1),
onConfirm: (r, t) => {
;(this.params.dateTime = r.value),
(vS = t),
(this.dateTimeStr = r.text),
(this.timerStatus = !1),
this.getList()
}
},
{
'columns-top': () =>
E('div', { class: V.timePopup }, [
E(
eo,
{
type: 'primary',
plain: this.params.timeType !== 'MONTH',
size: 'mini',
class: V.timeMonth,
onClick: () => (this.params.timeType = 'MONTH')
},
{ default: () => [rt('\u6309\u6708')] }
),
E(
eo,
{
type: 'primary',
plain: this.params.timeType !== 'YEAR',
onClick: () => (this.params.timeType = 'YEAR'),
size: 'mini',
class: V.timeYear
},
{ default: () => [rt('\u6309\u5E74')] }
)
])
}
)
]
}
)
])
}
})
export { Hk as default, fS as getAssetsHomeFile }